@charset "UTF-8";
/*
Theme Name: tanakahifuka
Theme URI: 
Description: tqanakahifuka.com 専用
Author: fu-mi.
Author URI: -
version: 1.0
*/
.clearfix:after {
	content: "";
	display: block;
	clear: both
}
li {
	list-style: none
}
a:hover img {
	-webkit-transition: all .7s;
	transition: all .7s;
	opacity: 0.6
}
img {
	max-width: 100%;
	height: auto
}
a {
	color: inherit;
	text-decoration: none
}
table {
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0
}
td input {
	max-width: 100%
}
i, em {
	font-style: normal
}
.inner {
	width: 100%;
	position: relative
}
@media (min-width: 961px) {
	.inner {
		max-width: calc(960px + 20px*2);
		padding: 0 20px;
		margin: 0 auto
	}
}
@media (min-width: 768px) and (max-width: 960px) {
	.inner {
		padding: 0 4vw
	}
}
@media (max-width: 767px) {
	.inner {
		padding: 0 5vw
	}
}
.pc-only {
	display: inherit
}
@media (min-width: 768px) and (max-width: 960px) {
	.pc-only {
		display: none
	}
}
@media (max-width: 767px) {
	.pc-only {
		display: none
	}
}
.tab-only {
	display: none
}
@media (min-width: 768px) and (max-width: 960px) {
	.tab-only {
		display: inherit
	}
}
@media (max-width: 767px) {
	.tab-only {
		display: none
	}
}
.sp-only {
	display: none
}
@media (min-width: 768px) and (max-width: 960px) {
	.sp-only {
		display: none
	}
}
@media (max-width: 767px) {
	.sp-only {
		display: inherit
	}
}
.pctab-only {
	display: inherit
}
@media (min-width: 768px) and (max-width: 960px) {
	.pctab-only {
		display: inherit
	}
}
@media (max-width: 767px) {
	.pctab-only {
		display: none
	}
}
.tabsp-only {
	display: none
}
@media (min-width: 768px) and (max-width: 960px) {
	.tabsp-only {
		display: inherit
	}
}
@media (max-width: 767px) {
	.tabsp-only {
		display: inherit
	}
}
.spacer:before {
	content: "0";
	color: #fff
}
a[href^="tel:"] {
	pointer-events: none
}
@media (max-width: 767px) {
	a[href^="tel:"] {
		pointer-events: inherit
	}
}
@media (max-width: 767px) {
	:root {
		font-size: 4.26666666667vw !important
	}
}
html, body {
	font-size: .9375rem;
	color: #2c3d41;
	line-height: 1.85;
	font-family: source-han-sans-japanese, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0.2em
}
@media (max-width: 767px) {
	html, body {
		font-size: .8125rem;
		line-height: 1.8;
		letter-spacing: 0
	}
}
.bold {
	font-weight: 700
}
.din {
	font-family: din-2014, sans-serif;
	font-weight: 600;
	font-style: italic
}
.min {
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	font-style: normal
}
@media (max-width: 767px) {
	#wrap {
		margin-top: 16vw
	}
}
header .head_main.main_home {
	height: 605px;
	background: url(images/index/main01.jpg) top center no-repeat;
	background-size: auto 100%
}
@media (min-width: 768px) and (max-width: 960px) {
	header .head_main.main_home {
		height: 60vw
	}
}
@media (max-width: 767px) {
	header .head_main.main_home {
		height: 77.33333vw;
		background-size: cover
	}
}
header .head_main h1 {
	font-size: .75rem;
	color: #e6e6e6;
	line-height: 1.5;
	font-weight: 400;
	padding-top: 1em
}
header .head_main .main_right {
	width: 660px;
	background: -webkit-gradient(linear, left top, right top, from(rgba(10, 70, 165, 0)), color-stop(20%, rgba(10, 70, 165, 0.7)), to(rgba(10, 70, 165, 0.7)));
	background: linear-gradient(90deg, rgba(10, 70, 165, 0), rgba(10, 70, 165, 0.7) 20%, rgba(10, 70, 165, 0.7));
	position: absolute;
	top: 230px;
	right: 0;
	padding: 1.2rem 0 1.8rem 140px
}
@media (max-width: 767px) {
	header .head_main .main_right {
		width: 90vw;
		top: 40vw;
		padding: 1.2rem 0 1.8rem 20vw
	}
}
header .head_main .main_right::after {
	content: "";
	width: calc((100vw - 1020px)/2);
	height: 100%;
	background-color: rgba(10, 70, 165, 0.7);
	position: absolute;
	top: 0;
	left: 100%
}
@media (min-width: 768px) and (max-width: 960px) {
	header .head_main .main_right::after {
		content: none
	}
}
@media (max-width: 767px) {
	header .head_main .main_right::after {
		content: none
	}
}
header .head_main .main_right h2 {
	font-size: 2.375rem;
	color: #ffffff;
	line-height: 1.52;
	letter-spacing: 0.26em;
	margin-bottom: 1rem
}
@media (max-width: 767px) {
	header .head_main .main_right h2 {
		font-size: 1.25rem
	}
}
header .head_main .main_right p {
	font-size: .9375rem;
	color: #ffffff;
	line-height: 1.65;
	letter-spacing: 0.2em
}
@media (max-width: 767px) {
	header .head_main .main_right p {
		font-size: .8125rem
	}
}
header .mainwave {
	width: 100%;
	height: 38px;
	background: url(images/index/mainwave.svg) top center/4800px auto no-repeat;
	margin-top: -38px
}
@media (max-width: 767px) {
	header .mainwave {
		display: none
	}
}
@media (max-width: 767px) {
	.fix_nav {
		position: fixed;
		background-color: #2a74be;
		border-right: 2px solid #2a74be;
		z-index: 11;
		top: 0;
		left: 0
	}
}
.fix_nav .wrap {
	width: 83.46667vw;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch
}
.fix_nav .btn_tel, .fix_nav .btn_access {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	width: 41.46667vw;
	height: 16vw;
	background-color: #fff;
	border-bottom: 1px solid #2a74be
}
.fix_nav .btn_tel p, .fix_nav .btn_access p {
	font-size: .875rem;
	letter-spacing: 0.07em
}
.fix_nav .btn_tel i, .fix_nav .btn_access i {
	margin-right: 0.5rem
}
.fix_nav .btn_tel i::before, .fix_nav .btn_access i::before {
	font-size: 1.125rem
}
.fix_nav .btn_tel i {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg)
}
.icn_menu {
	width: 16vw;
	height: 16vw;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 13
}
.icn_menu .menu-trigger, .icn_menu .menu-trigger span {
	display: inline-block;
	-webkit-transition: all .4s;
	transition: all .4s
}
.icn_menu .menu-trigger {
	width: 100%;
	height: 100%;
	background-color: #2a74be;
	padding: 1rem
}
.icn_menu .menu-trigger .spanwrap {
	height: 100%;
	position: relative
}
.icn_menu .menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 0.25rem;
	background-color: #fff;
	border-radius: 0.25rem
}
.icn_menu .menu-trigger span:nth-of-type(1) {
	top: 0
}
.icn_menu .menu-trigger span:nth-of-type(2) {
	top: calc(50% - 0.125rem)
}
.icn_menu .menu-trigger span:nth-of-type(3) {
	bottom: 0
}
.icn_menu .menu-trigger.active {
	background-color: #ffffff
}
.icn_menu .menu-trigger.active span {
	background-color: #2a74be
}
.icn_menu .menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(-50%) rotate(-45deg);
	transform: translateY(-50%) rotate(-45deg);
	top: 50%
}
.icn_menu .menu-trigger.active span:nth-of-type(2) {
	opacity: 0
}
.icn_menu .menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
	top: 50%
}
.logo_main_sp {
	background-color: #f8f9f8;
	text-align: center;
	padding-top: 10vw
}
.logo_main_sp img {
	width: 44vw
}
.gnav {
	position: relative;
	z-index: 0;
	padding-top: 115px
}
@media (max-width: 767px) {
	.gnav {
		display: none;
		background-color: #ffffff;
		padding: 10vw 0;
		width: 100%;
		height: 100vh;
		position: fixed;
		top: 0vw;
		right: 0;
		z-index: 12;
		padding: 7.73333vw 0
	}
}
@media (max-width: 767px) {
	.gnav.open {
		display: block
	}
}
@media (max-width: 767px) {
	.gnav .inner {
		padding: 0 5vw
	}
}
.gnav .logo_main {
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	top: -88px
}
@media (max-width: 767px) {
	.gnav .logo_main {
		width: 26.13333vw;
		position: unset;
		-webkit-transform: none;
		transform: none;
		margin: 0 auto 8vw
	}
}
.gnav ul {
	position: relative;
	padding-bottom: 45px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch
}
@media (max-width: 767px) {
	.gnav ul {
		display: block
	}
}
.gnav ul::after {
	content: "";
	width: 1100px;
	height: 2px;
	background-color: #46ae74;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	bottom: 0
}
@media (min-width: 768px) and (max-width: 960px) {
	.gnav ul::after {
		width: 100%
	}
}
@media (max-width: 767px) {
	.gnav ul::after {
		content: none
	}
}
.gnav ul li {
	height: 2.75rem;
	text-align: center;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	position: relative
}
@media (max-width: 767px) {
	.gnav ul li {
		height: auto;
		min-height: 50px;
	}
}
.gnav ul li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: unset;
	-ms-flex-align: unset;
	align-items: unset;
	-ms-flex-line-pack: center;
	align-content: center;
	width: 100%;
	height: 100%;
	min-height: 48px;
	position: relative
}
@media (max-width: 767px) {
	.gnav ul li a {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		align-items: center;
		padding: 0.6rem 0
	}
}
.gnav ul li a:hover::after, .gnav ul li a.current::after {
	content: "";
	width: 34px;
	height: 8px;
	background-image: url(images/index/gnavcurrent.svg);
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	bottom: -1rem
}
@media (max-width: 767px) {
	.gnav ul li a:hover::after, .gnav ul li a.current::after {
		content: none
	}
}
.gnav ul li a:hover {
	opacity: 0.7
}
@media (max-width: 767px) {
	.gnav ul li .img {
		width: 100%
	}
}
.gnav ul li p {
	font-size: .875rem;
	line-height: 1.3
}
@media (min-width: 768px) and (max-width: 960px) {
	.gnav ul li p {
		font-size: .8125rem
	}
}
@media (max-width: 767px) {
	.gnav ul li p {
		width: 100%;
		text-align: center
	}
}
.gnav ul li p span {
	display: block;
	font-size: .6875rem;
	color: #46ae74;
	margin-bottom: 1em
}
.gnav ul li::before, .gnav ul li:last-child::after {
	content: '';
	width: 1px;
	height: 100%;
	background-color: #46ae74;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%)
}
@media (max-width: 767px) {
	.gnav ul li::before, .gnav ul li:last-child::after {
		border-top: 1px solid #46ae74;
		width: 100%;
		height: 1px;
		-webkit-transform: none;
		transform: none
	}
}
.gnav ul li::before {
	left: 0
}
@media (max-width: 767px) {
	.gnav ul li::before {
		top: 0
	}
}
.gnav ul li:last-child::after {
	right: 0
}
@media (max-width: 767px) {
	.gnav ul li:last-child::after {
		top: unset;
		bottom: 0
	}
}
.ttl_wave {
	display: inline-block;
	background-position: left bottom 2.2rem;
	background-size: 227px auto;
	background-repeat: repeat-x;
	font-size: 1.625rem;
	line-height: 1.5;
	letter-spacing: 0.4em;
	font-feature-settings: "pkna";
}
@media (max-width: 767px) {
	.ttl_wave {
		font-size: 1.25rem;
		background-position: left bottom 1.5rem;
		background-size: 50vw auto
	}
}
.ttl_wave.ttl_wave_w {
	color: #ffffff;
	background-image: url(images/index/ttlwave_w.svg)
}
.ttl_wave.ttl_wave_b {
	color: #2a74be;
	background-image: url(images/index/ttlwave_b.svg)
}
.ttl_wave span {
	display: block;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0.4em;
	margin-top: 2rem;
}
@media (max-width: 767px) {
	.ttl_wave span {
		font-size: .8125rem;
		margin-top: 1rem
	}
}
.subttl {
	font-size: 1.5rem;
	color: #2a74be;
	line-height: 1.67;
	letter-spacing: 0.3em
}
@media (max-width: 767px) {
	.subttl {
		font-size: 1.125rem;
		letter-spacing: 0
	}
}
.box_disease {
	border: 1px solid #46ae74;
	background-color: #ffffff;
	padding: 1.1rem;
	overflow: hidden
}
@media (max-width: 767px) {
	.box_disease {
		padding: 0.8rem
	}
}
.box_disease h5 {
	background-color: #46ae74;
	font-size: 1.25rem;
	color: #ffffff;
	line-height: 1.8;
	font-weight: 400;
	letter-spacing: 0.06em;
	text-align: center;
	margin-bottom: 1rem
}
@media (max-width: 767px) {
	.box_disease h5 {
		font-size: .9375rem;
		line-height: 2.2
	}
}
.box_disease ul {
	-webkit-columns: auto 3;
	columns: auto 3;
	margin-right: -15rem
}
@media (max-width: 767px) {
	.box_disease ul {
		-webkit-columns: auto 2;
		columns: auto 2;
		margin-right: 0
	}
}
.box_disease ul li {
	font-size: 1.125rem;
	-webkit-column-break-inside: avoid;
	break-inside: avoid
}
@media (max-width: 767px) {
	.box_disease ul li {
		font-size: .75rem;
		letter-spacing: 0
	}
}
.box_disease ul li:nth-child(n+5) {
	margin-left: -5rem
}
@media (max-width: 767px) {
	.box_disease ul li:nth-child(n+5) {
		margin-left: unset
	}
}
.index_news {
	background-color: #f8f9f8;
	padding: 4rem 0 8rem
}
@media (max-width: 767px) {
	.index_news {
		padding: 3rem 0 5rem
	}
}
.index_news .colwrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	padding: 0 10%;
	margin-bottom: 3rem
}
@media (max-width: 767px) {
	.index_news .colwrap {
		display: block;
		padding: 0;
		margin-bottom: 2rem
	}
}
.index_news .colwrap .col_l, .index_news .colwrap .col_r {
	width: 336px;
	color: #2a74be
}
@media (max-width: 767px) {
	.index_news .colwrap .col_l, .index_news .colwrap .col_r {
		width: unset
	}
}
.index_news .colwrap .col_l {
	padding-top: 0.5rem
}
@media (max-width: 767px) {
	.index_news .colwrap .col_l {
		padding: 0 0 1rem
	}
}
.index_news .colwrap .col_l .tbl_home {
	text-align: center
}
.index_news .colwrap .col_l p {
	letter-spacing: 0.03em;
	text-align: center;
	margin-top: 0.5rem
}
.index_news .colwrap .col_r .tel_home {
	font-size: 2.625rem;
	line-height: 1.2;
	letter-spacing: 0.125em;
	text-align: center
}
@media (max-width: 767px) {
	.index_news .colwrap .col_r .tel_home {
		font-size: 1.875rem
	}
}
.index_news .colwrap .col_r .tel_home img {
	position: relative;
	top: -4px;
	margin-right: 0.2rem
}
.index_news .colwrap .col_r .address01 {
	font-size: 1.125rem;
	line-height: 1.35;
	text-align: center;
	letter-spacing: 0;
	margin-bottom: 0.5rem
}
@media (max-width: 767px) {
	.index_news .colwrap .col_r .address01 {
		font-size: 1rem
	}
}
.index_news .colwrap .col_r .address02 {
	font-size: .75rem;
	letter-spacing: 0.04em
}
.index_news .wrap_news {
	padding: 0 3rem
}
@media (max-width: 767px) {
	.index_news .wrap_news {
		padding: 0
	}
}
.index_news .wrap_news h3 {
	font-size: 1.25rem;
	color: #2a74be;
	letter-spacing: 0.4em;
	margin-bottom: 0.5rem
}
.index_news .wrap_news ul#morelist {
	border-top: 1px solid #46ae74;
	position: relative
}
.index_news .wrap_news ul#morelist li {
	border-bottom: 1px solid #46ae74
}
.index_news .wrap_news ul#morelist li .label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 0.8rem 1rem 0.8rem 4.5rem;
	letter-spacing: 0.15em;
	position: relative
}
@media (max-width: 767px) {
	.index_news .wrap_news ul#morelist li .label {
		padding: 0.8rem 1.5em 0.8rem 0
	}
}
.index_news .wrap_news ul#morelist li .label::after {
	content: '';
	width: 20px;
	height: 20px;
	background: url(images/index/icn_plus.svg) top center/20px auto no-repeat;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 30px
}
@media (max-width: 767px) {
	.index_news .wrap_news ul#morelist li .label::after {
		right: 0
	}
}
.index_news .wrap_news ul#morelist li.active .label::after {
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg)
}
.index_news .wrap_news ul#morelist li .content {
	display: none;
	padding: 0.8rem 1rem 0.8rem 4.5rem
}
@media (max-width: 767px) {
	.index_news .wrap_news ul#morelist li .content {
		padding: 0.4rem 1em 0.8rem 1.5em
	}
}
.index_news .wrap_news ul#morelist li.active .content {
	display: block
}
.index_news .wrap_news ul#morelist li .news_date {
	color: #2a74be
}
.index_news .wrap_news ul#morelist li .news_title {
	display: inline-block;
	padding-left: 3.5rem
}
@media (max-width: 767px) {
	.index_news .wrap_news ul#morelist li .news_title {
		padding-left: 1rem
	}
}
.index_news .wrap_news .morelink {
	display: inline-block;
	color: #46ae74;
	text-align: right;
	padding: 0 1rem 0 2rem;
	border-bottom: 1px solid #46ae74;
	position: absolute;
	right: 0;
	bottom: -2.5rem
}
.index_news .wrap_news .morelink::before {
	content: '';
	width: 20px;
	height: 14px;
	background: url(images/index/icn_arrow.svg) left center/20px auto no-repeat;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%)
}
.index_news .wrap_news .morelink:hover {
	cursor: pointer;
	opacity: 0.7
}
.index_medical {
	background: url(images/index/bg_deepblue.png) center top/auto 100% repeat-x;
	padding: 150px 0 175px;
	position: relative;
	z-index: 2;
	margin: -36px 0
}
@media (max-width: 767px) {
	.index_medical {
		background-size: auto 100%;
		padding: 20vw 0 16vw
	}
}
.index_medical h2 {
	margin-bottom: 1rem
}
.index_medical .txt01 {
	color: #ffffff;
	margin-bottom: 2rem
}
.index_medical ul.list_medical {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	margin-bottom: 1rem
}
.index_medical ul.list_medical li {
	width: 300px;
	color: #ffffff;
	margin-bottom: 4rem
}
@media (min-width: 768px) and (max-width: 960px) {
	.index_medical ul.list_medical li {
		width: 250px
	}
}
@media (max-width: 767px) {
	.index_medical ul.list_medical li {
		width: 42vw;
		margin-bottom: 6vw
	}
}
.index_medical ul.list_medical .img {
	text-align: center;
	margin-bottom: 1rem
}
.index_medical ul.list_medical h4 {
	font-size: 1.25rem;
	letter-spacing: 0.06em;
	text-align: center;
	font-weight: 400;
	margin-bottom: 2rem;
	position: relative
}
@media (max-width: 767px) {
	.index_medical ul.list_medical h4 {
		font-size: .9375rem;
		letter-spacing: 0;
		margin-bottom: 1rem
	}
}
.index_medical ul.list_medical h4::before {
	content: '';
	width: 90px;
	height: 2px;
	background-color: #ffffff;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	bottom: -1rem
}
@media (max-width: 767px) {
	.index_medical ul.list_medical h4::before {
		bottom: -0.5rem
	}
}
.index_medical ul.list_medical p {
	min-height: 120px;
	line-height: 1.7;
	letter-spacing: 0.1em
}
@media (max-width: 767px) {
	.index_medical ul.list_medical p {
		min-height: unset
	}
}
.index_medical ul.list_medical .more {
	font-size: 1rem;
	letter-spacing: 0.4em;
	text-align: center;
	text-decoration: underline;
	margin-top: 0.5rem
}
.index_medical ul.list_medical .more:hover {
	opacity: 0.7
}
.index_greeting {
	background: url(images/index/bg_greeting.jpg) top center no-repeat;
	padding: 120px 0 110px;
	position: relative;
	z-index: 1
}
@media (max-width: 767px) {
	.index_greeting {
		padding: 13.33333vw 0
	}
}
.index_greeting h2 {
	margin-bottom: 2rem
}
.index_greeting .contentbox {
	margin-top: -50px;
	padding-top: 50px;
	background: url(images/index/img_greeting01.jpg) top right 50px no-repeat
}
@media (max-width: 767px) {
	.index_greeting .contentbox {
		margin-top: 0;
		padding-top: 60vw;
		background-position: top center;
		background-size: auto 60vw
	}
}
.index_greeting .contentbox h3 {
	width: 560px;
	margin-bottom: 1.5rem
}
@media (max-width: 767px) {
	.index_greeting .contentbox h3 {
		width: unset;
		margin-top: -1rem;
		margin-bottom: 1rem
	}
}
.index_greeting .contentbox p {
	width: 460px;
	margin-bottom: 1.5rem
}
@media (max-width: 767px) {
	.index_greeting .contentbox p {
		width: unset
	}
}
.index_greeting .contentbox .btn_doctor a {
	width: 300px;
	display: inline-block;
	border: 1px solid #46ae74;
	background-color: #ffffff;
	font-size: 1.25rem;
	color: #46ae74;
	letter-spacing: 0.4em;
	text-align: center;
	padding: 0.3rem 0
}
@media (max-width: 767px) {
	.index_greeting .contentbox .btn_doctor a {
		width: 60vw;
		font-size: 1rem
	}
}
.index_greeting .contentbox .btn_doctor a:hover {
	opacity: 0.7
}
#loopslider {
	width: 100%;
	height: 220px;
	text-align: left;
	position: relative;
	overflow: hidden;
	top: 0;
	z-index: 4
}
@media (max-width: 767px) {
	#loopslider {
		height: 20vw
	}
}
#loopslider ul {
	height: 220px;
	float: left;
	display: inline;
	overflow: hidden
}
@media (max-width: 767px) {
	#loopslider ul {
		height: 20vw
	}
}
#loopslider ul li {
	width: 351px;
	height: 220px;
	float: left;
	display: inline;
	overflow: hidden
}
@media (max-width: 767px) {
	#loopslider ul li {
		width: 31.86667vw;
		height: 20vw
	}
}
.index_access {
	background-color: #f8f9f8;
	padding: 115px 0 100px
}
@media (max-width: 767px) {
	.index_access {
		padding: 8vw 0
	}
}
.index_access h2 {
	margin-bottom: 2rem
}
.index_access h3 {
	margin-bottom: 1rem
}
.index_access .txt01 {
	margin-bottom: 3rem
}
.index_access .txt01 b {
	color: #2a74be
}
.index_access .unit {
	margin-bottom: 2rem
}
.index_access .unit h4 {
	font-size: 1.5rem;
	color: #46ae74
}
@media (max-width: 767px) {
	.index_access .unit h4 {
		font-size: 1.125rem
	}
}
.index_access .btn_map a {
	width: 300px;
	border: 1px solid #46ae74;
	background-color: #ffffff;
	display: table;
	font-size: .9375rem;
	color: #46ae74;
	letter-spacing: 0.15em;
	text-align: center;
	padding: 0.4rem 0;
	margin: 3.5rem auto 0;
	position: relative
}
@media (max-width: 767px) {
	.index_access .btn_map a {
		width: 60vw;
		margin: 2rem auto 0
	}
}
.index_access .btn_map a::after {
	content: '';
	width: 14px;
	height: 14px;
	border-right: 1px solid #46ae74;
	border-bottom: 1px solid #46ae74;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%) rotate(-45deg);
	transform: translateY(-50%) rotate(-45deg);
	right: 1rem
}
@media (max-width: 767px) {
	.index_access .btn_map a::after {
		width: 10px;
		height: 10px
	}
}
.index_access .btn_map a:hover {
	opacity: 0.7
}
ul.tablist {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	margin-bottom: 2rem
}
@media (max-width: 767px) {
	ul.tablist {
		display: block
	}
}
ul.tablist li {
	width: 30.4%
}
@media (max-width: 767px) {
	ul.tablist li {
		width: unset;
		margin-bottom: 1rem
	}
}
ul.tablist li input[name="tab"] {
	display: none
}
ul.tablist li label {
	display: block;
	border: 1px solid #848d90;
	background-color: #ffffff;
	font-size: 1.0625rem;
	color: #848d90;
	line-height: 1.65;
	letter-spacing: 0.08em;
	padding: 1rem 1rem 1rem 5rem;
	position: relative
}
@media (max-width: 767px) {
	ul.tablist li label {
		font-size: .9375rem
	}
}
ul.tablist li label::before {
	width: 40px;
	height: 40px;
	background-color: #848d90;
	position: absolute;
	left: 12px;
	top: -12px;
	font-size: 1.875rem;
	color: #ffffff;
	line-height: 40px;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	font-style: normal;
	text-align: center
}
ul.tablist li label[for="tab_a"]::before {
	content: "A"
}
ul.tablist li label[for="tab_b"]::before {
	content: "B"
}
ul.tablist li label[for="tab_c"]::before {
	content: "C"
}
ul.tablist li label:hover {
	opacity: 0.7
}
ul.tablist li input:checked + label {
	border: 1px solid #2a74be;
	color: #2a74be
}
ul.tablist li input:checked + label::before {
	background-color: #2a74be
}
.mainview {
	border: 1px solid #2a74be;
	background-color: #ffffff;
	padding: 60px 0;
	margin-bottom: 2.5rem
}
@media (max-width: 767px) {
	.mainview {
		padding: 2rem 1rem
	}
}
.mainview .swiper-container {
	height: 0;
	width: 860px;
	margin: 0 auto
}
@media (max-width: 767px) {
	.mainview .swiper-container {
		width: unset;
		margin: unset
	}
}
.mainview .swiper-container.is-show {
	height: auto
}
.mainview figure figcaption {
	background-color: #eaebec;
	font-size: .9375rem;
	line-height: 50px;
	letter-spacing: 0.2em;
	text-align: center
}
@media (max-width: 767px) {
	.mainview figure figcaption {
		font-size: .75rem;
		line-height: 1.5;
		letter-spacing: 0;
		padding: 0.6rem 0
	}
}
.mainview .swiper-button-prev, .mainview .swiper-button-next {
	background-image: unset;
	width: 60px;
	height: 50px;
	font-size: 1.375rem;
	color: #ffffff;
	line-height: 50px;
	text-align: center;
	background: #2c3d41;
	position: absolute;
	bottom: 0;
	top: unset
}
@media (max-width: 767px) {
	.mainview .swiper-button-prev, .mainview .swiper-button-next {
		width: 8vw;
		height: unset;
		font-size: .8125rem;
		line-height: 1.5;
		padding: 0.6rem 0;
		bottom: 50%;
		-webkit-transform: translateY(50%);
		transform: translateY(50%)
	}
}
.mainview .swiper-button-prev:hover, .mainview .swiper-button-next:hover {
	opacity: 0.7
}
.mainview .swiper-button-prev {
	left: 0;
	right: unset
}
.mainview .swiper-button-next {
	right: 0;
	left: unset
}
footer .foot_main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch
}
@media (max-width: 767px) {
	footer .foot_main {
		display: block;
		padding: 8vw 0 0
	}
}
footer .foot_main .col_l {
	width: 50%;
	background-color: #ffffff;
	padding: 70px 0 1remtur
}
@media (max-width: 767px) {
	footer .foot_main .col_l {
		width: 100%;
		padding: 0 4vw;
		margin-bottom: 5.33333vw
	}
}
footer .foot_main .col_l .col_inner {
	float: right;
	max-width: 500px;
	padding: 0 1em
}
@media (max-width: 767px) {
	footer .foot_main .col_l .col_inner {
		float: unset;
		min-width: unset
	}
}
footer .foot_main .col_r {
	width: 50%;
	background: url(images/index/bg_foot.jpg) left top/cover no-repeat;
	padding: 75px 0 1rem
}
@media (max-width: 767px) {
	footer .foot_main .col_r {
		width: 100%;
		padding: 2rem 0 4rem
	}
}
footer .foot_main .col_r .col_inner {
	float: left;
	max-width: 500px;
	padding: 0 10%
}
@media (max-width: 767px) {
	footer .foot_main .col_r .col_inner {
		float: unset;
		min-width: unset;
		padding: 0% 5%
	}
}
footer .col_l h2 {
	text-align: center;
	margin-bottom: 3rem
}
@media (max-width: 767px) {
	footer .col_l h2 {
		margin-bottom: 2rem
	}
}
footer .col_l h2 img {
	margin-top: 0.5rem
}
@media (max-width: 767px) {
	footer .col_l h2 img {
		width: 60vw
	}
}
footer .col_l ul {
	-webkit-columns: auto 3;
	columns: auto 3;
	margin-bottom: 2rem
}
@media (max-width: 767px) {
	footer .col_l ul {
		-webkit-columns: auto 2;
		columns: auto 2;
		margin-bottom: 1.5rem
	}
}
footer .col_l ul li {
	color: #2a74be;
	line-height: 2.2;
	letter-spacing: 0.1em
}
footer .col_l ul li a {
	background: url(images/index/icn_right.svg) left 0.5rem center/12px 12px no-repeat;
	display: block;
	padding-left: 2em;
	border-left: 1px solid #2a74be
}
footer .col_l ul li a:hover {
	opacity: 0.7
}
footer .col_l .copyright {
	text-align: center
}
footer .col_l .copyright small {
	font-size: .75rem;
	letter-spacing: 0.15em
}
@media (max-width: 767px) {
	footer .col_l .copyright small {
		font-size: .625rem
	}
}
footer .col_r {
	color: #ffffff;
	text-align: center
}
@media (max-width: 767px) {
	footer .col_r .tbl_foot {
		padding: 0 4vw
	}
}
footer .col_r .tblcaption {
	letter-spacing: 0.03em;
	margin: 0.5rem 0 1rem
}
footer .col_r .tel_foot {
	font-size: 2.625rem;
	line-height: 1.2;
	letter-spacing: 0.125em;
	text-align: center
}
@media (max-width: 767px) {
	footer .col_r .tel_foot {
		font-size: 1.875rem
	}
}
footer .col_r .tel_foot img {
	position: relative;
	top: -4px;
	margin-right: 0.2rem
}
footer .col_r .address01 {
	font-size: 1.125rem;
	line-height: 1.35;
	text-align: center;
	letter-spacing: 0;
	margin-bottom: 0.5rem
}
@media (max-width: 767px) {
	footer .col_r .address01 {
		font-size: 1rem
	}
}
footer .col_r .address02 {
	font-size: .75rem;
	letter-spacing: 0.04em
}
footer .pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 5
}
@media (min-width: 768px) and (max-width: 960px) {
	footer .pagetop {
		right: 0
	}
}
@media (max-width: 767px) {
	footer .pagetop {
		bottom: 2vw;
		right: 2vw
	}
}
@media (max-width: 767px) {
	footer .pagetop img {
		width: 15vw
	}
}
/*# sourceMappingURL=style.css.map */
.footer_link {
	margin-top: 60px;
}
.footer_link a {
	width: 728px;
	margin-left: auto;
	margin-right: auto;
	display: block;
}
.footer_link a img {
	width: 100%;
	height: auto;
}
.fix_nav .wrap > div {
	width: calc((100% - 2px) / 3);
}
.btn_yoyaku {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	width: 41.46667vw;
	height: 16vw;
	background-color: #fff;
	border-bottom: 1px solid #2a74be;
}
.fix_nav .btn_yoyaku p {
	font-size: .875rem;
	letter-spacing: 0.07em;
}
@media (max-width: 767px) {
	.footer_link a {
		width: 320px;
	}
}
#news_feed {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	border-top: 1px solid #46ae74;
}
.topics_list {
	border-bottom: 1px solid #46ae74;
}
.topics_list:first-child {}
.topics_head {
	padding-top: 0.8rem;
	padding-right: 1rem;
	padding-bottom: 0.8rem;
	padding-left: 4.5rem;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.date {
	color: #2a74be;
	font-weight: 400;
	letter-spacing: 0.15em;
}
.topics_list h4 {
	padding-left: 3.5rem;
	font-weight: 400;
	color: #000;
	letter-spacing: 0.15em;
	width: calc(100% - 200px);
}
.topics_head figure {
	width: 20px;
	height: 20px;
	display: block;
	position: absolute;
	right: 30px;
	top: 50%;
	margin-top: -10px;
	background-image: url(images/index/icn_plus.svg);
	background-size: 20px auto;
}
.topics_head.active figure {
	transform: rotate(45deg);
}
.topics_head:hover {
	cursor: pointer;
}
.topics_head:hover .date, .topics_head:hover h4, .topics_head:hover figure {
	opacity: 0.7;
}
.topics_content {
	padding: 12px 100px 26px 60px;
	display: none;
}
.topics_head.active + .topics_content {
	display: block;
}
.topics_content {
	margin-top: 0;
}
.topics_content p {
	color: #000;
	margin-top: 1.65em;
}
.topics_content p:first-child {
	margin-top: 0;
}
.topics_content p strong {
	font-weight: 700;
}
.topics_content p em {
	font-style: italic;
}
.topics_content p a, .topics_content a {
	text-decoration: underline;
	color: #2a74be;
}
.topics_content p a:hover, .topics_content a:hover {
	text-decoration: none;
}
.topics_content p img {
	max-width: 100%;
	height: auto;
}
.aligncenter {
	display: block;
	margin: 0 auto;
}
.alignright {
	float: right;
}
.alignleft {
	float: left;
}
#loading {
	width: 100%;
	height: 100px;
	background: url(images/loading.svg) no-repeat center center;
	background-size: 30px auto;
	display: none;
}
.ajaxLoad {
	margin-top: 10px;
	text-align: right;
}
.ajaxLoad a {
	position: relative;
	z-index: 1;
	border-bottom: 1px solid #46ae74;
	padding-right: 1rem;
	padding-left: 2rem;
	padding-bottom: .4em;
	color: #46ae74;
	transition: all .3s;
}
.ajaxLoad a:hover {
	opacity: .7;
	border-bottom: none;
}
.ajaxLoad a::before {
	content: '';
	width: 20px;
	height: 14px;
	background: url(images/index/icn_arrow.svg) left center/20px auto no-repeat;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
@media (max-width: 767px) {
	.topics_head {
		padding-left: 0;
		padding-right: 1.5rem;
		align-items: flex-start;
	}
	.topics_content {
		padding-left: 0;
		padding-right: 0;
	}
	.topics_list h4 {
		padding-left: 1rem;
		width: calc(100% - 85px);
	}
	.topics_head figure {
		right: 0;
	}
}
.first-yoyaku-box p + p {
	margin-top: 24px;
	padding-left: 1.2em;
	position: relative;
}
.first-yoyaku-box p + p::before {
	content: "●";
	position: absolute;
	left: 0;
	top: 0;
}
.first-yoyaku-box p:last-child {
	padding-left: 0;
}
.first-yoyaku-box p:last-child::before {
	content: "";
}
.first-yoyaku-link {
	margin-top: 24px;
}
@media (max-width: 767px) {
	.first-yoyaku-link {
		margin-left: -75px;
	}
}
@media (max-width: 767px) {
	.fix_nav .wrap > div > a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.fix_nav .wrap > div > a > figure {
		display: block;
		height: 20px;
		margin-bottom: .25rem;
	}
	.fix_nav .wrap > div > a > figure > svg {
		vertical-align: top;
	}
	.fix_nav .btn_tel p, .fix_nav .btn_access p, .fix_nav .btn_yoyaku p {
		line-height: 1;
	}
}
.news-list {
	border-top: 1px solid #46ae74;
}
.news-box {
	border-bottom: 1px solid #46ae74;
}
.news-box > a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding-top: 0.8rem;
	padding-right: 4.5rem;
	padding-bottom: 0.8rem;
	padding-left: 4.5rem;
}
.news-box > a:hover {
	opacity: .8;
}
.news-box > a .date {
	color: #2a74be;
	font-weight: 400;
	letter-spacing: 0.15em;
}
.news-box > a h4 {
	padding-left: 3.5rem;
	font-weight: 400;
	color: #000;
	letter-spacing: 0.15em;
}
.news-box > a:hover h4 {
	text-decoration: underline;
}
@media (max-width: 767px) {
	.news-box > a {
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
		padding-top: 0.8rem;
		padding-right: 1rem;
		padding-bottom: 0.8rem;
		padding-left: 1rem;
	}
	.news-box > a h4 {
		padding-left: 0;
	}
}
.covid-news-list {
	border: 2px solid #2a74be;
	border-radius: 20px;
	padding-left: 3rem;
	padding-right: 3rem;
	padding-top: .8rem;
	padding-bottom: .8rem;
	margin-bottom: 3rem;
}
.covid-news-box {
	border-top: 1px solid #2a74be;
}
.covid-news-box:first-child {
	border-top: none;
}
.covid-news-box a {
	display: block;
	padding-top: 0.8rem;
	padding-bottom: 0.8rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.covid-news-box a:hover {
	opacity: .8;
}
.covid-news-box a h4 {
	font-weight: 400;
	color: #000;
	letter-spacing: 0.15em;
	padding-left: 2rem;
	position: relative;
}
.covid-news-box a:hover h4 {
	text-decoration: underline;
}
.covid-news-box a h4::before {
	content: '▶　';
	position: absolute;
	top: 0;
	left: 0;
	color: #2a74be;
}
.covid-news-box a:hover h4::before {
	text-decoration: none;
}
@media (max-width: 767px) {
	.covid-news-box a {
		padding-left: .5rem;
		padding-right: .5rem;
	}
	.covid-news-list {
		padding-left: 1rem;
		padding-right: 1rem;
		padding-top: .8rem;
		padding-bottom: .8rem;
		margin-bottom: 3rem;
	}
}
.topics-section {
	background-color: #f8f9f8;
	padding-top: 80px;
	padding-bottom: 114px;
}
.post-outer {
	margin-top: 40px;
}
.post_date {
	font-size: .8125rem;
}
.single_post_title {
	font-size: 1.25rem;
	font-weight: 400;
	color: #2a74be;
	margin-top: 10px;
	margin-bottom: 10px;
}
.pn_link {
	margin-top: 86px;
	display: flex;
	justify-content: space-between;
}
.pn_link > p {
	color: #adb4b6;
}
.pn_link a {
	color: #2a74be;
}
.pn_link a:hover {
	opacity: .8;
}
.topics-section .news-list {
	margin-top: 40px;
}
.nav-links {
	margin-top: 20px;
	display: flex;
	justify-content: space-between;
}
.nav-links p {
	color: #adb4b6;
}
.nav-links a {
	color: #2a74be;
}
.nav-links a:hover {
	opacity: .8;
}
.covid-news-box a {
}
.covid-news-box a h4 {
	font-weight: 400;
	color: #000;
	letter-spacing: 0.15em;
	padding-left: 2rem;
	position: relative;
}
.anti-covid-box a h4 {
	position: relative;
	padding-left: 2rem;
}
.anti-covid-box a:hover h4 {
	text-decoration: underline;
}
.anti-covid-box a h4::before {
	content: '▶　';
	position: absolute;
	top: 0;
	left: 0;
	color: #2a74be;
}
.anti-covid-box a:hover h4::before {
	text-decoration: none;
}
.go-news-list {
	margin-top: 40px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 300px;
	height: 50px;
	background-color: #fff;
	border: 1px solid #46ae74;
	border-radius: 8px;
	position: relative;
	color: #46ae74;
}
.go-news-list:hover {
	opacity: .8;
}
.go-news-list > i {
	width: 16px;
	height: 20px;
	display: block;
	position: absolute;
	right: 18px;
	top: 50%;
	margin-top: -10px;
}
.go-news-list > i svg {
	vertical-align: top;
}

.section_treat .unit_04 {
	background-image: url(images/acne/treat04.svg);
}

.main_page.main_tumor {
	background-image: url(images/tumor/main01.png);
}
.tumor_cause .causebox {
	background-image: url(images/tumor/img_tumor02.png),url(images/tumor/img_tumor01.png);
}
.tumor_cause {
	padding: 130px 0 80px;
}
.tumor02 {
	display: flex;
	justify-content: space-between;
	margin-top: 70px;
}
.tumor02 > div:first-child {
	width: 610px;
}
.tumor02 > div:last-child {
	width: 330px;
}
.tumor02 > div > figure + figure {
	margin-top: 28px;
}
.tumor02 h3, .tumor03 h3 {
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: .26em;
	color: #0d619e;
}
.tumor02 p, .tumor03 p, .tumor03 ol {
	margin-top: 10px;	
}
.tumor02 p + h3, .tumor03 p + h3, .tumor03 ol + h3 {
	margin-top: 40px;
	font-size: 1.125rem;
}
@media (max-width: 767px){
	.tumor02 {
		display: block;
		margin-top: 40px;
	}
	.tumor02 > div:first-child {
		width: 100%;
	}
	.tumor02 > div:last-child {
		width: 100%;
		text-align: center;
		margin-top: 40px;
	}
	.tumor02 h3, .tumor03 h3 {
		font-size: 1.125rem;
	}
	.tumor02 p {
		margin-top: 5px;	
	}
	.tumor02 p + h3, .tumor03 p + h3, .tumor03 ol + h3 {
		margin-top: 20px;
	}
}
.tumor03 {
	max-width: 800px;
}
.tumor03 ol li {
	position: relative;
	padding-left: 1.5em;
}
.tumor03 ol li::before {
	position: absolute;
	top: 0;
	left: 0;
}
.tumor03 ol li:first-child::before {
	content: "① ";
}
.tumor03 ol li:nth-child(2)::before {
	content: "② ";
}
.tumor03 ol li:nth-child(3)::before {
	content: "③ ";
}
.tumor03 ol li:nth-child(4)::before {
	content: "④ ";
}
.tumor03 p {
}