@charset "utf-8";

/*共通*/

#under .catch,
.imglink_box_ttl,
.reason_line_text_ttl,
h2,
h3,
h4,
h5,
h6 {
	font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN",
		"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
		Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
	/* font-family: "Sawarabi Mincho","游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝","MS PMincho", serif; */
}
/* M PLUS Rounded || Sawarabi Mincho を使うときコメント外す */
.ttl_top_lv02 {
	/* font-weight: normal; */
}

#under .catch {
	margin: 9rem 0 6rem;
	font-size: 2.7rem;
	line-height: 1.6;
	color: #fe979e;
}

#gpress .header03 {
	position: relative;
}

#gpress .f_bnr_s01,
#gpress .f_bnr_s02,
#gpress .f_bnr_s03,
#gpress .f_bnr_s04 {
	/*border: 1px solid #d0d0d0;*/
}

.hm_txt {
	color: #66b821;
}

.kakomi {
	border: 8px solid #ffebde;
	padding: 40px;
}

.underheader {
	border-bottom: 0;
}

/*背景画像系*/
.before_footer_hasbg01:before {
	/*background: url(../images/f_bg01.jpg) center center no-repeat;*/
	/*background-size: cover;*/
}

.before_footer02:before {
	/*background: url(../images/footer_bg01.jpg) center top no-repeat;*/
}

.bg_opactiy:before {
	background: rgba(81, 46, 29, 0.75);
}

.parallax_title .h2box {
	background: rgba(102, 184, 33, 0.7);
}
.table_price td,
.table_price th {
	width: 50%;
}
/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
imglink
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.imglink_box .box:nth-of-type(1):after {
	/*background-image: url(../images/imglink01.jpg); */
}
.imglink_box .box:nth-of-type(2):after {
	/*background-image: url(../images/imglink02.jpg); */
}
.imglink_box .box:nth-of-type(3):after {
	/*background-image: url(../images/imglink03.jpg); */
}
.imglink_box .box:nth-of-type(4):after {
	/*background-image: url(../images/imglink04.jpg); */
}
.imglink_box .box:nth-of-type(5):after {
	/*background-image: url(../images/imglink05.jpg); */
}
.imglink_box .box:nth-of-type(6):after {
	/*background-image: url(../images/imglink06.jpg); */
}
.imglink_box .box:nth-of-type(7):after {
	/*background-image: url(../images/imglink07.jpg); */
}
.imglink_box .box:nth-of-type(8):after {
	/*background-image: url(../images/imglink08.jpg); */
}
.imglink_box .box:nth-of-type(9):after {
	/*background-image: url(../images/imglink09.jpg); */
}
/*.imglink_box.set01 .box,*/
.imglink_box .box {
	min-height: 230px;
}
.imglink_box .box .box_inner {
	height: 100%;
	width: 100%;
	display: block;
	min-height: auto;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_setbox
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_setbox .setbox_img {
	height: 250px;
}

.set01 .box:nth-of-type(1) .setbox_img {
	/*background-image: url(../images/top_setimg01.jpg);*/
}
.set01 .box:nth-of-type(2) .setbox_img {
	/*background-image: url(../images/top_setimg02.jpg);*/
}
.set01 .box:nth-of-type(3) .setbox_img {
	/*background-image: url(../images/top_setimg03.jpg);*/
}
.mod_setbox .box {
	background: #e6e6e6;
}
.mod_setbox .setbox_img:before {
	background: rgba(0, 0, 0, 0.43);
}
/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
bg系
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.parallax_bg {
	/*background: url(../images/bg01.jpg) center center no-repeat;*/
}

.img_bg_block.img_bg_block01:before {
	/*background-image: url('../images/top_bg01.jpg');*/
	/*background-size: cover;*/
}

.img_bg_stairs:before {
	/*	background-image: url('../images/stairs_bg.png');
	width: 1200px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-position: right bottom;*/
}

.mod_greeting .greeting_wrap {
	/*background: rgba(255,255,255,0.87);*/
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_color_box
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_color_box .color_box_item:nth-of-type(1) {
	background: #ccc;
	border: 1px solid #000;
}
.mod_color_box .color_box_item:nth-of-type(1) .color_box_ttl em {
	background: #ace;
}

.mod_color_box .color_box_item:nth-of-type(2) {
	background: #4ac;
	border: 1px solid #caa;
}
.mod_color_box .color_box_item:nth-of-type(2) .color_box_ttl em {
	background: #1ac;
}

.mod_color_box .color_box_item:nth-of-type(3) {
	background: #6ea;
	border: 1px solid #eea;
}
.mod_color_box .color_box_item:nth-of-type(3) .color_box_ttl em {
	background: #78a;
}

.pickup_check_box p:after,
.pickup_check_box p:before {
	background: #ffac43;
}

/*btn*/

.btn_width_auto {
	max-width: inherit !important;
	display: inline-block !important;
	width: auto !important;
}

/*その他の追加変更 ここから*/
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
btn05
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.btn_wrap {
	background: none;
	text-align: center;
	margin-top: 5rem;
}

.btn05 {
	border-radius: 30px;
	background: #fff;
	display: inline-block;
	text-align: center;
}

.btn05:hover {
	opacity: 1;
}

.btn05:hover span {
	opacity: 0.7;
}

.btn05 span {
	position: relative;
	display: inline-block;
	border-radius: 30px;
	background: #ff6600;
	font-size: 1.7rem;
	color: #fff;
	transition: 0.3s;
	padding: 15px 35px;
	min-width: 270px;
	letter-spacing: 0.075em;
}

.btn05 span:before,
.btn05 span:after {
	content: "";
	display: block;
	position: absolute;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.btn05 span:before {
	z-index: 1;
	width: 19px;
	height: 19px;
	background: #fff;
	border-radius: 50%;
	top: 50%;
	right: 0.5em;
	z-index: 9;
}

.btn05 span:after {
	top: 50%;
	right: 0.73em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 8px;
	border-color: transparent transparent transparent #66b821;
	z-index: 10;
}

.btn_reverse .btn05 span:before {
	left: 0.5em;
	right: auto;
}

.btn_reverse .btn05 span:after {
	left: 0.73em;
	right: auto;
	border-width: 4.5px 8px 4.5px 0;
	border-color: transparent #66b821 transparent transparent;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
table
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.table_border thead {
	background: #4faace;
}

.table_border tbody th {
	background: #d4eef9;
}

.eigyou01 thead th:first-of-type {
	letter-spacing: 0.3em;
}

.eigyou01 th,
.eigyou01 td {
	padding: 21px 5px;
}

.eigyou01 tbody td span {
	color: #ff6600;
	margin-right: 3px;
}

.eigyou01 tbody td em {
	color: #af4cd4;
}

.eigyou01 + .hosoku {
	margin-top: 5px;
}

.color_accent {
	color: #af4cd4;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ttl
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.ttl_top_lv02 {
	font-size: 3.8rem;
	letter-spacing: 0.14em;
	margin-bottom: 4rem;
}

.ttl_top_lv02 span {
	font-weight: normal;
	font-size: 1.3rem;
	letter-spacing: 0.36em;
	margin-top: 0.5em;
	font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3",
		"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", Osaka,
		"MS PGothic", arial, helvetica, sans-serif;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
footer
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.before_footer {
	padding-top: 80px;
}

footer .dotlist li:before {
	background: #4faace;
}

.before_footer .list_title {
	font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN",
		"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
		Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
	color: #66b821;
	font-size: 3.2rem;
	letter-spacing: 0.075em;
}

.table_flat th {
	background: #ff6600;
}

.table_flat th span:after {
	border-left-color: #ff6600;
}

.before_footer_hasbg01:before {
	background: #ebf6fa url(../images/footer_bg.jpg) center bottom no-repeat;
	background-size: 100% auto;
	opacity: 1;
}

.before_footer .mod_copy {
	padding-bottom: 25px;
	padding-top: 25px;
	margin-top: 80px;
	background: #66b821;
	color: #fff;
}

.table_flat th span {
	text-align: center;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_massage
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.img_bg_block.img_bg_block01:before {
	background-image: url("../images/top_message_bg.jpg");
	background-repeat: repeat;
	background-size: 135px auto;
}

.m_message {
	text-align: center;
}

.m_message_text {
	position: relative;
	background: url("../images/top_message_text_bg.png") center center no-repeat;
	background-size: 135px auto;
	text-align: center;
	display: inline-block;
	padding: 0 140px;
}

.m_message_text:before,
.m_message_text:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 234px;
	transform: translateY(-50%);
}

.m_message_text:before {
	background: url("../images/top_message_text_bg_left.png") left center
		no-repeat;
	background-size: 100px auto;
}

.m_message_text:after {
	background: url("../images/top_message_text_bg_right.png") right center
		no-repeat;
	background-size: 100px auto;
}

.m_message_text p + p {
	margin-top: 1em;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_menu
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.img_bg_block.img_bg_block02:before {
	/* background-image: url('../images/top_message_bg.jpg'); */
	/* background-size: 135px auto; */
}

.m_menu_list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -16px -32px;
}

.m_menu_item {
	width: calc(33.333333% - 32px);
	margin: 0 16px 32px;
	text-decoration: none;
}

.m_menu_head {
	position: relative;
	margin-bottom: 20%;
}

.m_menu_item:hover img {
	opacity: 1;
}

.m_menu_image {
	position: relative;
	z-index: 10;
}

.m_menu_image:before {
	content: "";
	width: 100%;
	height: 100%;
	background: #b4dc92;
	position: absolute;
	top: 5%;
	left: 0;
	z-index: 1;
	border-radius: 10px;
}

.m_menu_image img {
	position: relative;
	z-index: 10;
	border-radius: 10px;
}

.m_menu_item_ttl {
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translate(-50%, 50%);
	transform: translate(-50%, 50%);
	max-width: 112px;
	width: 37%;
	margin: 0;
	z-index: 10;
}

.m_menu_point li {
	padding-left: 1.2em;
	position: relative;
	font-size: 1.6rem;
}

.m_menu_point li:before {
	content: "";
	position: absolute;
	top: 0.6em;
	left: 0.1em;
	width: 7px;
	height: 7px;
	display: block;
	background: #46a6ca;
	border-radius: 50%;
}

.m_menu_etc {
	font-size: 1.3rem;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_check
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.img_bg_block.img_bg_block03:before {
	background-image: url("../images/top_check_bg.jpg");
	background-repeat: repeat;
	background-size: 500px auto;
}

.m_check_list {
	display: flex;
	justify-content: space-between;
}

.m_check_item {
	width: 48.2%;
	position: relative;
}

.m_check_item:hover img {
	opacity: 1;
}

.m_check_image {
	position: relative;
	z-index: 1;
}

.m_check_image img {
	max-width: 482px;
	width: 100%;
}

.m_check_item_ttl {
	position: relative;
	z-index: 10;
	font-size: 2.6rem;
	font-weight: bold;
	padding-left: 4rem;
	letter-spacing: 0.1em;
}

.m_check_item_ttl span {
	position: relative;
	display: inline-block;
	padding-right: 4rem;
}

.m_check_item_ttl span:before,
.m_check_item_ttl span:after {
	content: "";
	display: block;
	position: absolute;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.m_check_item_ttl span:before {
	z-index: 1;
	width: 19px;
	height: 19px;
	background: #fff;
	border-radius: 50%;
	top: 50%;
}

.m_check_item_ttl span:after {
	top: 50%;
	right: 0.4em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 8px;
	border-color: transparent transparent transparent #66b821;
	z-index: 10;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_reason
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.img_bg_block.img_bg_block04:before {
	background-image: url("../images/top_reason_bg.jpg");
	background-size: cover;
}

.m_reason_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: -50px;
}

.m_reason_item {
	width: 48%;
	overflow: hidden;
	margin-bottom: 50px;
}

.m_reason_item_ttl {
	width: 56.3%;
	margin-bottom: 1.5rem;
	float: left;
}

.m_reason_item_ttl span {
	font-size: 2.1rem;
	font-weight: 800;
	letter-spacing: 0.2em;
	display: block;
	color: #ff6600;
}

.m_reason_item_ttl em {
	font-size: 2.2rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	display: block;
	margin-top: 0.3em;
	font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3",
		"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", Osaka,
		"MS PGothic", arial, helvetica, sans-serif;
}

.m_reason_image {
	width: 41%;
	max-width: 195px;
	float: right;
}

.m_reason_text {
	width: 56.3%;
}

.m_reason_item:nth-of-type(n + 3) .m_reason_text {
	float: right;
}

.m_reason_item:nth-of-type(n + 3) .m_reason_item_ttl {
	float: right;
}

.m_reason_item:nth-of-type(n + 3) .m_reason_image {
	float: left;
}

.m_reason_btn {
	margin-top: 2.5rem;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_greeting
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.img_bg_block.img_bg_block05 {
	min-height: 625px;
}
.img_bg_block.img_bg_block05:before {
	background-image: url("../images/top_greeting_pc.png");
	background-size: 1400px auto;
	background-position: center bottom;
	z-index: 2;
}

.img_bg_block.img_bg_block05:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	background: url("../images/top_greeting_bg.jpg") top center repeat;
	background-size: 380px auto;
	z-index: 1;
}

.img_bg_block.img_bg_block05 .img_bg_box {
	width: 56%;
	float: right;
}

.m_greeting_content {
	margin-left: auto;
}

.m_greeting_btn {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.m_greeting_btn .btn05 span {
	width: 100%;
	min-width: auto;
}

.m_greeting_btn .btn05 {
	width: 49%;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_clinic
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_clinic_logo {
	text-align: center;
	margin-bottom: 5rem;
}

.m_clinic_logo span {
	display: inline-block;
}

.m_clinic_list {
	display: flex;
	justify-content: space-between;
}

.m_clinic_item {
	width: 48%;
}

.m_clinic_dots {
	position: relative;
	padding: 18px 0 15px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.m_clinic_dots:after,
.m_clinic_dots:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 8px;
	background-position: left center;
	background-size: 8px 8px;
	background-image: radial-gradient(#d4eef9 35%, transparent 38%);
}

.m_clinic_dots:after {
	top: auto;
	bottom: 0;
}

.m_clinic_tel {
	display: flex;
	align-items: center;
	letter-spacing: 0.3em;
	color: #4faace;
	line-height: 1;
}

.m_clinic_tel em {
	position: relative;
	top: 0.05em;
}

.m_clinic_tel .tel_link a {
	margin-left: 0.4em;
}

.m_clinic_tel .tel_link a,
.m_clinic_tel .tel_link {
	font-size: 3.6rem;
	font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN",
		"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
		Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
	font-weight: bold;
	letter-spacing: 0;
	color: #4faace;
	text-decoration: none;
}

.m_clinic_address {
	margin-top: 0.5em;
}

.m_clinic_access {
	margin-top: 0.5em;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_icon
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_icon_item {
	padding: 5px 0 5px 40px;
    line-height: 1.4;
	background-size: 30px auto;
}

.m_icon_train {
	background: url(../images/icon_train.png) left center no-repeat;
	background-size: 30px auto;
}

.m_icon_bus {
	background: url(../images/icon_bus.png) left center no-repeat;
	background-size: 30px auto;
}

.m_icon_car {
	background: url(../images/icon_car.png) left center no-repeat;
	background-size: 30px auto;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_news
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
#top_news .img_bg_block {
	padding-bottom: 0;
}
.m_news {
	display: flex;
	justify-content: space-between;
}

.m_news_item {
	width: 48%;
}

.m_news_ttl {
	font-size: 2.7rem;
	display: flex;
	align-items: center;
	letter-spacing: 0.14em;
	font-weight: bold;
	margin: 0;
}

.m_news_ttl span {
	font-size: 1.3rem;
	letter-spacing: 0.36em;
	margin-left: 0.5em;
	display: inline-block;
}

.m_news_head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 1.5em;
}

.m_news_link {
	position: relative;
	display: block;
	text-decoration: none;
	padding-left: 1em;
}

.m_news_link:before {
	content: "";
	display: block;
	position: absolute;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	top: 50%;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 8px;
	border-color: transparent transparent transparent #ff6600;
	z-index: 10;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_foot
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_foot {
	display: flex;
	align-items: center;
}

.m_foot_bnr {
	width: 76%;
}

.m_foot_sougei {
	width: 24%;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
カテゴリサイド
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
#under .custom_main_ttl {
	margin-top: 0;
}

.custom_wrap {
	margin-top: 50px;
}

.custom_side_cat {
    font-size: 1.8rem;
    color: #000000;
    position: relative;
    background: #fff0e6;
    padding: 5px 20px;
}

.custom_side_cat:before {
	content: '';
	height: 100%;
	width: 6px;
	position: absolute;
	left: 0;
	top: 0;
	background: #f8ab78;
}

.custom_cat {
	font-size: 1.6rem;
    vertical-align: middle;
    margin-left: 10px;
}


/*****************************
------------------------------
@media
------------------------------
*****************************/

/*pc*/
@media screen and (min-width: 1041px) {
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.header02 .header_main h1 {
		width: 290px;
		margin-top: 20px;
		margin-left: 20px;
	}
	.header02 .sub_menu_block {
		border-top: 1px solid #fff;
	}

	.header02 .header_info_other {
		width: 251px;
	}

	.header02 .nav_li {
		max-height: 100px;
	}

	.header02 .nav_li > a {
		height: 100px;
	}

	.header02 .header_main_home {
		width: 100px;
	}
	.header02 .header_info_other_mini {
		margin-right: 150px;
	}
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	vertical_ttl
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.vertical_ttl {
		font-size: 1.6vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	img_bg_greeting
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.img_bg_block.img_bg_greeting:before {
		background-size: 2000px;
	}

	/*その他の追加変更 ここから*/
	.eigyou01 thead th {
		font-size: 1.25rem;
	}
	
	#under .eigyou01 thead th {
		font-size: 1.5rem;
	}

	.eigyou01 tbody th:first-of-type {
		font-size: 1.3rem;
	}
}

/*pctb*/
@media all and (min-width: 768px) {
	.bnr_col03 .mod_bnr_box {
		width: 30%;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header01
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header01 h1 {
		width: 474px;
		float: none;
		margin: 20px auto;
	}

	.header01 .header_info {
		padding: 0;
	}

	.header01 .logo_center h1 {
		float: none;
		margin-left: auto;
		margin-right: auto;
	}

	.header01 .h_bnr {
		width: 190px;
		margin-right: 20px;
	}

	.header01 .h_info {
		width: 490px;
	}

	.header01 .has_child > .sub_menu_block > .sub_menu > .nav_li_child:hover > a {
		background: #8ecd59;
	}

	.header01
		.nav_li.has_child
		> .sub_menu_block
		> .sub_menu
		> .nav_li_child:first-of-type:before {
		top: -11px;
		border-width: 0 11px 11px 11px;
	}

	.header01 .has_child:hover > .sub_menu_block {
		border: 0;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.header02 .info_forth {
		border-top: 1px solid #fff;
		display: block;
	}

	.header02 .header_info_first {
		background: #99958d;
	}

	.header02 .header_info_second {
		background: #b3b0aa;
	}

	.header02 .header_info_big {
		background: #3990ad;
	}
	.header02 .info_forth {
		background: #207c9a;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header03
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.header03 .header_main {
		width: 216px;
		padding: 0;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	mod_sidebg
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.mod_side_bg:before {
		/*background-image: url(../images/side_bg01.png);*/
		background-position: right -390px center;
		background-size: cover;
	}

	.side_bg_box {
		width: 68%;
		padding: 40px;
		background: rgba(255, 255, 255, 0.7);
	}

	#fixed_side .contact {
		background: #ffffff;
	}

	#fixed_side .tel {
		background: #a43a35;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	キャッチ
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#under .catch {
		font-size: 2.8rem;
		color: #66b821;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	img_bg_greeting
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.img_bg_block.img_bg_greeting .img_bg_box {
		width: 60%;
	}

	/*その他の追加変更 ここから*/
	.bnr_col04,
	.bnr_col03,
	.bnr_col02 {
		padding: 1px 0;
	}

	.btn_left {
		text-align: left;
	}
	#under .eigyou01 thead th {
		font-size: 1.6rem;
	}
	#under .eigyou01 tbody th:first-of-type {
		font-size: 1.8rem;
	}

	/*______________________________________________________________________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	カテゴリサイド
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.custom_wrap {
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		margin-top: 60px;
	}

	.custom_main {
		width: calc(100% - 240px);
		flex: 1 1 0%;
	}

	.custom_side {
		width: 200px;
		margin-right: 40px;
	}
}

/*2000px 以上*/
@media screen and (min-width: 2000px) {
	.img_bg_block.img_bg_greeting:before {
		background-size: cover;
	}
	/*その他の追加変更 ここから*/
}

/*特殊*/
@media screen and (max-width: 1300px) and (min-width: 1041px) {
	.header03 {
		padding: 0 15px;
	}
	.header03 .nav_li > a {
		font-size: 1.4rem;
	}
	.header03 .header_main {
		width: 140px;
		padding: 10px 0;
	}

	.header03 .header_info_other {
		right: 15px;
		width: 150px;
	}

	.header03 nav {
		margin-right: 155px;
	}

	.header03 .nav_li > a {
		padding: 15px 10px;
	}

	.header03 .nav_li:first-of-type > a {
		padding: 15px 10px 15px 0;
	}

	.header03 .nav_li:not(:last-of-type) > a:before {
		top: 19px;
	}

	.header03 .has_child:before,
	.header03 .has_child:after {
		bottom: 8px;
	}

	.header03 .sub_menu_block {
		width: 160px;
		margin-left: -80px;
	}

	/*その他の追加変更 ここから*/
}

@media screen and (max-width: 1250px) and (min-width: 1041px) {
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header02 {
		position: relative;
		z-index: 1000;
	}
	.header02 .header_main h1 {
		width: 180px;
		margin-top: 18px;
		margin-left: 10px;
	}
	.header02 .nav_li > a {
		padding: 0 10px;
		font-size: 1.2rem;
		height: 70px;
		line-height: 1.5;
	}

	.header02 .header_main_home {
		width: 70px;
	}
	.header02 .header_info_big {
		width: 105px;
	}

	.header02 .header_info_other {
		width: 176px;
		overflow: hidden;
		height: 70px;
	}

	.header02 .nav_li {
		max-height: 70px;
	}
	.header02 .header_info_other_mini {
		margin-right: 106px;
	}

	.header02 .sub_menu_block {
		padding: 0 15px;
	}

	/*その他の追加変更 ここから*/
}

/*tbsp*/

@media screen and (max-width: 1040px) {
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header03
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header03 {
		height: 50px;
	}
	.header03 .header_main h1 {
		width: 170px;
		margin-top: 8px;
		margin-left: 10px;
	}

	.header03 .header03_nav_sp .list_parent {
		border-top: 1px solid #6fcdec;
	}

	.header03 .header03_nav_sp .nav_li {
		background: #3990ad;
		border-bottom: 1px solid #6fcdec;
	}

	.header03 .header03_nav_sp .has_child > a:before {
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}

	.header03 .header03_nav_sp .nav_li > a {
		color: #fff;
	}

	#under .catch {
		margin: 5rem 0 5rem;
		font-size: 2.5rem;
	}

	/*その他の追加変更 ここから*/
}

@media screen and (min-width: 768px) and (max-width: 1160px) {
	#under .inner,
	footer .inner,
	#toppage .inner {
		padding: 0 65px 0 15px;
		width: 100%;
	}

	#under .parallax_title .h2box .inner {
		padding: 15px 15px;
	}

	#fixed_side {
		width: 50px;
	}
}

/*tb*/
@media screen and (min-width: 768px) and (max-width: 1040px) {
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header01
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header01 h1 {
		width: 360px;
		margin: 20px auto;
	}

	.header01 .h_bnr {
		width: 145px;
		margin-right: 11px;
	}

	.header01 .h_info {
		width: 470px;
	}

	.header01 .nav_li > a {
		font-size: 1.9rem;
	}

	.header01 .nav_li {
		min-width: 120px;
	}

	.header01 .has_child:hover > .sub_menu_block {
		width: 140%;
		left: -20%;
	}
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header02 .header_main_home {
		width: 70px;
	}
	.header02 .header_info_big {
		width: 105px;
	}

	.header02 .header_info_other {
		width: 176px;
		overflow: hidden;
		height: 70px;
	}
	.header02 .header_info_other_mini {
		margin-right: 106px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.img_bg_block.img_bg_greeting:before {
		background-size: 200% auto;
	}

	/*その他の追加変更 ここから*/
	.img_bg_block.img_bg_block05 {
		min-height: auto;
		padding: 30px 0;
	}

	.img_bg_block.img_bg_block05:before {
		background-size: 1120px auto;
	}

	.m_greeting_btn {
		margin-top: 3rem;
		flex-wrap: wrap;
		justify-content: center;
	}

	.m_greeting_btn .btn05 {
		width: auto;
		min-width: 270px;
	}

	.m_greeting_btn .btn05 + .btn05 {
		margin-top: 1rem;
	}

	.m_greeting_ttl {
		margin-bottom: 2rem;
	}

	.eigyou01 th,
	.eigyou01 td {
		font-size: 1.2rem;
		padding: 21px 4px;
	}

	.m_clinic_logo span {
		display: inline-block;
		width: 360px;
	}

	.before_footer .mod_copy {
		padding-bottom: 15px;
		padding-top: 15px;
		margin-top: 60px;
	}

	.before_footer {
		padding-top: 60px;
	}
}

/*sp*/
@media screen and (max-width: 767px) {
	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header01
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header01 {
		height: 49px;
	}
	.header01.sp_header_big {
		height: 60px;
	}

	.header01 h1 {
		width: 170px;
		padding-top: 8px;
	}

	.logo_center h1 {
		width: 180px;
		margin-left: auto;
		margin-right: auto;
		padding-top: 8px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	header02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.header02 {
		height: 49px;
	}
	.header02 .header_main h1 {
		width: 170px;
		margin-top: 8px;
		margin-left: 10px;
	}

	.header02 .header02_nav_sp .nav_li {
		background: #3990ad;
		border-bottom: 1px solid #6fcdec;
	}

	.header02 .header02_nav_sp .has_child > a:before {
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}

	.header02 .header02_nav_sp .nav_li > a {
		color: #fff;
	}

	.header02 .header02_nav_sp .has_child > .sub_menu_block {
		background: #edf0ff;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	fixed_footer
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.fixed_footer .contact {
		background: #4faace;
	}

	.fixed_footer .tel {
		background: #66b821;
	}

	.mod_bnr_box img {
		width: 300px;
	}

	.news_box a {
		display: inline;
	}

	/*その他の追加変更 ここから*/

	.kakomi {
		padding: 20px;
	}
	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
btn05
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.btn_wrap {
		margin-top: 5rem;
	}

	.btn05 span {
		border-radius: 30px;
		padding: 15px 35px;
		min-width: 270px;
	}

	.btn05 span:before {
		width: 19px;
		height: 19px;
		right: 0.5em;
	}

	.btn05 span:after {
		right: 0.73em;
	}

	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
table
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.eigyou01 thead th:first-of-type {
		letter-spacing: 0.3em;
	}

	.eigyou01 th,
	.eigyou01 td {
		padding: 21px 5px;
	}

	.eigyou01 tbody td span {
		margin-right: 3px;
	}

	.eigyou01 + .hosoku {
		margin-top: 5px;
	}

	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ttl
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.ttl_top_lv02 {
		font-size: 3.1rem;
		margin-bottom: 2.5rem;
	}

	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
footer
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.before_footer_hasbg01:before {
		background-position: center bottom 25vw;
	}
	.before_footer {
		padding-top: 30px;
		padding-bottom: 0;
	}

	.before_footer .mod_copy {
		padding-bottom: 26vw;
		padding-top: 20px;
		margin-top: 50px;
	}

	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_massage
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	.m_message {
		text-align: center;
	}

	.m_message_text {
		text-align: left;
		padding: 0;
	}

	.m_message_text:before {
		display: none;
	}

	.m_message_text:after {
		display: none;
	}

	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_menu
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.m_menu_list {
		display: flex;
		flex-wrap: wrap;
		margin: 0 0 -3rem;
	}

	.m_menu_item {
		width: 100%;
		margin: 0 0 3rem;
		display: flex;
		align-items: center;
	}

	.m_menu_head {
		width: 47%;
		margin-right: 13%;
		margin-bottom: 0;
	}

	.m_menu_body {
		width: 40%;
	}

	.m_menu_item_ttl {
		bottom: auto;
		top: 50%;
		right: 0;
		left: auto;
		-webkit-transform: translate(50%, -50%);
		transform: translate(50%, -50%);
		width: 37%;
	}

	.m_menu_point li {
		font-size: 1.4rem;
	}

	.m_menu_point li:before {
		top: 0.6em;
		left: 0.1em;
		width: 5px;
		height: 5px;
	}

	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_check
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_reason
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.m_reason_list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-bottom: -3rem;
	}

	.m_reason_item {
		width: 100%;
		overflow: hidden;
		margin-bottom: 3rem;
		flex-wrap: wrap;
		display: flex;
		align-items: center;
	}

	.m_reason_item_ttl {
		width: 70%;
		margin-bottom: 1.5rem;
		float: none;
		order: 2;
	}

	.m_reason_image {
		width: 23%;
		margin-right: 3%;
		float: none;
		order: 1;
	}

	.m_reason_text {
		clear: both;
		width: 100%;
		order: 3;
	}

	.m_reason_item:nth-of-type(n) .m_reason_text {
		float: right;
	}

	.m_reason_item:nth-of-type(n) .m_reason_item_ttl {
		float: right;
	}

	.m_reason_item:nth-of-type(n) .m_reason_image {
		float: left;
	}

	.m_reason_btn {
		margin-top: 2.5rem;
	}

	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_greeting
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.img_bg_block.img_bg_block05 {
		min-height: auto;
	}

	.img_bg_block.img_bg_block05:before {
		background: none;
	}

	.img_bg_block.img_bg_block05 .img_bg_box {
		width: 100%;
		float: none;
	}

	.m_greeting_btn {
		display: block;
		margin-top: 3rem;
	}

	.m_greeting_btn .btn05 span {
		width: 100%;
		min-width: auto;
	}

	.m_greeting_btn .btn05 {
		min-width: 270px;
		width: auto;
	}

	.m_greeting_btn .btn05 + .btn05 {
		margin-top: 1rem;
	}

	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_clinic
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.m_clinic_logo {
		margin-bottom: 3rem;
	}

	.m_clinic_logo span {
		width: 237px;
	}

	.m_clinic_list {
		display: block;
	}

	.m_clinic_item {
		width: 100%;
	}

	.m_clinic_item + .m_clinic_item {
		margin-top: 3rem;
	}

	.m_clinic_dots {
		padding: 15px 0 18px;
	}

	.m_clinic_address {
		margin-top: 0;
	}

	.m_clinic_access {
		margin-top: 2rem;
	}
	/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_icon
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.m_icon_item {
		padding: 7px 0 7px 40px;
	}

	/*______________________________________________________________________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	m_news
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#top_news .img_bg_block {
		padding-bottom: 0;
	}
	.m_news {
		display: block;
	}

	.m_news_item {
		width: 100%;
	}

	.m_news_item + .m_news_item {
		margin-top: 3rem;
	}

	/*______________________________________________________________________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	m_foot
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.m_foot {
		display: block;
	}

	.m_foot_bnr {
		width: 100%;
	}

	.m_foot_sougei {
		margin-top: 2rem;
		width: 100%;
	}

	/*______________________________________________________________________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	カテゴリサイド
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	.custom_side {
		margin-top: 40px;
	}

	footer .dotlist li:before {
		background: none;
	}

	/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_fixed
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_fixed {
	display: flex;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 999;
	background: #d3884f;
}

.m_fixed_item {
	border-right: 1px solid #fff;
}
.m_fixed_item:last-of-type {
	background: #d3884f;
	border-right: 0;
}

}
