@charset "utf-8";
@import url("https://use.typekit.net/wlm4dtm.css");
/*===============================================================================

	リセットCSS

===============================================================================*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,fieldset,input,textarea,p,blockquote,th,td, figcaption, figure {
	margin: 0;
	padding: 0;
}
address,em { font-style: normal; }
th { font-weight: normal; }
table {
	border-collapse: collapse;
	border-spacing: 0;
}
th { text-align: left;}
legend { display: none;}
h1,h2,h3,h4,h5,h6,small { font-size: 100%;font-weight: normal; }
img,fieldset { border: 0;}
img { vertical-align: bottom;}
li { list-style-type: none;}

address,body,dd,dl,dt,form,h1,h2,h3,h4,h5,h6,option,p,pre,select{margin:0;padding:0;-webkit-text-size-adjust:100%}
img{vertical-align:bottom}
ul,li{list-style:none;margin:0;padding:0}
a img{border:none}

@media screen and (max-width:640px) {
	img{max-width:100%;height:auto}
}

/*===============================================================================

	初期設定

===============================================================================*/

/* フォントデータの読み込み
************************************************************/
@font-face{
	font-family: 'AGaramondPro-Italic';
	src: url('../fonts/AGaramondPro-Italic.otf') format('opentype');
	font-weight: normal;
	font-style: normal;
}
@font-face{
	font-family: 'AGaramondPro-Regular';
	src: url('../fonts/AGaramondPro-Regular.otf') format('opentype');
	font-weight: normal;
	font-style: normal;
}


/* 基本設定
************************************************************/
body {
	position: relative;
	color: #595656;
	font-size: 15px;
	font-weight: 500;
	font-family: "noto-sans","游ゴシック体", "Yu Gothic", YuGothic, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	line-height: 1.75;
	letter-spacing: 0.05em;
	text-align: justify;
}
a {
	color: #8e7e59;
	text-decoration: none;
}
a:hover {
	color: #C0AB9A;
}
.anchor{
	display: block;
	padding-top: 120px;
	margin-top: -120px;
}
/*tel*/
[href^="tel"]:hover {
  cursor: default;
}
::selection{
	background-color: #99C1DA;
}
::-moz-selection{
	background-color: #99C1DA;
}
body,
header,
footer{
	min-width: 1240px;
}

.underline{
	border-bottom: solid 1px;
}

@media screen and (max-width:640px) {
	*,
	*:before,
	*:after {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
  body {
    font-size: 14px;
  }
  body, .page-header .inner, header, footer {
    min-width: 100%;
  }
}

/*===============================================================================

	共通レイアウト

===============================================================================*/

/* ヘッダー
************************************************************/
.header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 424px;
	background: -moz-linear-gradient(bottom, rgba(0, 0, 0 0) 50%, rgba(0, 0, 0, 0.5));
	background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5));
	background: linear-gradient(to top, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5));
}
.header .inner {
	position: relative;
	width: 100%;
	height: inherit;
	padding-top: 40px;
	margin: auto;
	box-sizing: border-box;
}
.header .header-logo {
	position: absolute;
	top: 0;
	left: 38px;
}
.header .header-logo,
.header img{
	width: 228px;
	height: 228px;
}
.header .fixed-contact,
.header .fixed-contact img {
	height: auto;
}
.header .address {
	display: block;
	position: absolute;
	top: 25px;
	right: 285px;
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.01em;
}
@media screen and (max-width:1500px) {
	.header .address {
		top: 40px;
		right: 40px;
		font-size: 10px;
	}	
}
.header .tel {
	display: block;
	position: absolute;
	top: 15px;
	right: 37px;
	color: #fff;
	font-size: 26px;
	font-family: "AGaramondPro-Regular",sans-serif;
	letter-spacing: 0.18em;
}
.header .tel:before {
	content: "";
	position: absolute;
	/* top: 7px; */
	top: 13px;
	left: -20px;
	width: 15px;
	height: 19px;
	background: url("../images/common/icon-tel-white.png") no-repeat top center;
}
@media screen and (max-width:1500px) {
	.header .tel {
		top: 5px;
		right: 40px;
	}	
}
.header .twitter {
	display: block;
	position: absolute;
	top: 20px;
	right:40px;
}
.header .twitter img {
	width: 30px;
	height: 30px;
}

@media screen and (max-width:640px) {
  header {
    display: none;
  }
}

/* ヘッダーナビ
************************************************************/
.header-navi {
	position: absolute;
	top: 340px;
	right: 0;
	width: 100%;
	min-width: 1200px;
	height: 100px;
	padding: 20px 0 0 0;
	padding-right: 38px;
	background-color: rgba(255,255,255,0.7);
	box-sizing: border-box;
	z-index: 9999;
}
.header-navi.top:not(.is-fixed) {
	top: 74px;
	height: 80px;
	padding-right: 38px;
	background: transparent;
}
.header-navi:after {
	content: "";
	display: block;
	clear: both;
}
.header-navi ul {
	display: flex;
	justify-content: space-between;
	width: 1100px;
	height: inherit;
	margin: auto;
	text-align: center;
}
.header-navi.top:not(.is-fixed) ul {
	float: right;
	width: 602px;
}
.header-navi li {
	position: relative;
	height: inherit;
}
.header-navi li a{
	display: block;
	position: relative;
	padding: 0 0;
	color: #8e7e59;
	font-size: 18px;
	font-weight: bold;
	font-family: "Noto Serif JP", sans-serif;
	text-align: center;
	/* vertical-align: middle; */
}
.header-navi.top:not(.is-fixed) li a{
	color: #fff;
}
.header-navi li a:hover,
.header-navi li.is-active a {
	color: #8e7e59;
}
.header-navi.top:not(.is-fixed) li a:hover,
.header-navi.top:not(.is-fixed) li.is-active a {
	color: #fff;
}
.header-navi.top:not(.is-fixed) li a:hover::before {
	content: "";
	position: absolute;
	top: -23px;
	left: 0;
	right: 0;
	width: 30px;
	height: 20px;
	margin: auto;
	/* background: url("../images/common/global-navi-hover.png") no-repeat top center; */
}
.header-navi li a span{
	display: block;
	position: relative;
	margin-top: 7px;
	color: #63a4c1;
	font-size: 13px;
	font-family: "AGaramondPro-Regular",sans-serif;
	line-height: 1;
	letter-spacing: 0.1em;
}
.header-navi.top:not(.is-fixed) li a span{
	color: #fff;
}
.header-navi li a span::before{
	content: "";
  position: absolute;
	left: 0;
	right: 0;
	bottom: -7px;
	width: 100%;
	height: 1px;
	margin: auto;
	background-color: #8e7e59;
	transition: 0.15s ease-out;
	transform: scaleX(0);
	z-index: 1;
}
.header-navi.top:not(.is-fixed) li a span::before{
	background-color: #fff;
}
.header-navi li a:hover span::before,
.header-navi li.is-active a span::before{
	transform: scaleX(1);
}
.header-navi ul li .sub-menu {
	display: none;
	position: absolute;
	top: 80%;
	/* top: 88%; */
	left: -50%;
	width: 200%;
	background-color: rgba(240,240,240,0.8);
}
.header-navi.is-fixed ul li .sub-menu {
	top: 88%;
}
.header-navi.top:not(.is-fixed) ul li .sub-menu {
	top: 88%;
}
.header-navi ul li .sub-menu a {
	display: block;
	position: relative;
	padding: 13px 20px;
	color: #565656!important;
	font-size: 13px;
	line-height: 1.4;
	text-align: left;
	border-bottom: 1px solid #ccc;
}
.header-navi ul li .sub-menu a::after,
.header-navi ul li .sub-menu a::before {
	display: none;
}
.header-navi ul li .sub-menu a:hover {
	background-color: rgba(99,164,193,0.3);
}
.is-fixed {
	position: fixed;
	top: 0;
	left: 0;
}
.header-navi.is-fixed {
	width: 100%;
	min-width: 1300px;
	height: 80px;
	padding-top: 10px;
	box-shadow: 0 2px 3px rgba(0,0,0,0.05);
	background-color: rgba(255,255,255,0.7);
	box-sizing: border-box;
}
.header-navi.is-fixed ul {
	float: none;
	width: 1100px;
	margin: auto;
}
.header-navi.is-fixed ul li {
	height: auto;
}
.header-navi.is-fixed ul li a {
	color: #555;
}
.header-navi.is-fixed li a:hover::before {
	display: none;
}
.header-navi.is-fixed li a span {
	color: #63a4c1;
}
.header-navi.is-fixed li a span::before{
	background-color: #63a4c1;
}

@media screen and (max-width:640px) {
  .header-navi {
    display: none;
  }
}

/* ヘッダー SP
************************************************************/
@media screen and (max-width:640px) {
  .is-fixed {
    position: fixed;
    width: 100%;
  }
  .is-fixed li {
    display: block;
  }
  .header-sp-button {
    display: flex;
		justify-content: flex-end;
		width: calc(100% - 66px - 43.5vw - 16px);
		height: 62px;
    z-index: 1;
  }
  .header-sp-button li{
    width: 30%;
		text-align: center;
  }
  .header-sp-button li a {
		display: flex;
		justify-content: center;
		align-items: center;
    height: 62px;
  }
  .header-sp-button li:nth-child(3) a {
    font-size: 3.2vw;
  }
  .header-sp-button li svg {
    position: relative;
    top: 0px;
    left: -5px;
    color: #fff;
    font-size: 1.1em !important;
  }
  .header-sp-button li i {
    font-size: 1.2em;
  }
  .header-sp-button li:nth-child(2) i {
    font-size: 1.2em !important;
  }
  .header-sp {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 62px;
    margin-bottom: 30px;
    font-size: 18px;
    font-weight: bold;
    -webkit-overflow-scrolling: touch;
    overflow-y: scroll;
    overflow-x: hidden;
    z-index: 9998;
  }
  .header-sp-content {
    z-index: 999;
		display: flex;
  }
  .header-sp .header-logo {
		width: 43.5vw;/*174*/
    height: auto;
		margin-left: 16px;
		display: flex;
		align-items: center;
  }
  .header-sp .header-logo span,
  .header-sp .header-logo img {
		display: block;
		margin: auto;
  }
  .header-sp .header-logo img {
    position: relative;
    z-index: 9999;
  }
  .header-sp-content {
    background-color: rgba(255,255,255,1.0);
		height: 62px;
  }
  .header-sp-navi {
    display: none;
		width: 100%;
		position: absolute;
		top: 62px;
  }
  .header-sp-navi li {
    display: block;
    float: left;
    width: 100%;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.4;
    text-align: center;
  }
  .header-sp-navi li i {
    position: relative;
    top: -1px;
    left: -6px;
    margin-right: 4%;
    color: #ba9275;
    font-size: 11px;
    vertical-align: middle;
  }
  .header-sp-navi i.fa-facebook-square,
  .header-sp ul li i.fa-home {
    font-size: 16px;
  }
  .header-sp-navi li a,
  .header-sp-navi li.has-child > .title {
    display: block;
    position: relative;
    width: 100%;
    height: 50px;
    color: #fff;
    font-size: 1.1em;
    font-weight: 500;
    font-family: 'Noto Sans JP',sans-serif;
    line-height: 50px;
    text-decoration: none;
    border-bottom: solid 1px #FFF;
    background: #63a4c1;
    vertical-align: middle;
  }
  .header-sp-navi .sub-menu li a {
    background: #a5cee0 !important;
  }
  .header-sp-navi li.has-child > .title::after {
    content: "\f067";
    position: absolute;
    right: 17px;
    font-size: 1.0em;
    font-weight: bold;
    font-family: 'Font Awesome 5 free';
  }
  .header-sp-navi li.has-child.is-active > .title::after {
    content: "\f068" !important;
    position: absolute;
    right: 17px;
    font-size: 1.0em;
    font-weight: bold;
    font-family: 'Font Awesome 5 free';
  }
  .header-sp-navi li a::after {
    content: ">";
    position: absolute;
    right: 20px;
  }
}

/* ハンバーガーメニュー
************************************************************/
@media screen and (max-width:640px) {
  .navi-toggle {
    display: block;
    position: relative;
		width: 62px;
    height: 62px;
    padding: 0 4%;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    line-height: 2;
		box-sizing: border-box;
  }
  .navi-toggle a {
    display: block;
    position: absolute;
    /*top: 5px;*/
    right: -5px;
    width: 62px;
    height: 62px;
    text-align: center;
    background-color: #63a4c1;
    z-index: 9999999;
  }
  .navi-toggle a i {
    position: relative;
    top: 25px;
    left: -2px;
    bottom: 6px;
    margin-right: 2%;
    color: #fff;
    font-size: 9px;
    font-weight: 600;
    font-style: normal;
  }
  .navi-toggle a span {
    display: block;
    position: absolute;
    left: 12px;
    width: 33px;
    height: 2px;
    background: #fff;
    transition: all 0.4s;
  }
  .navi-toggle a span:nth-child(1) {
    top: 14px;
  }
  .navi-toggle a span:nth-child(2) {
    top: 50%;
    margin-top: -8px;
  }
  .navi-toggle a span:nth-child(3) {
    bottom: 29px;
  }
  .navi-toggle a.is-active {
    background: #63a4c1;
  }
  .navi-toggle a.is-active i {
    color: #fff;
  }
  .navi-toggle a.is-active span {
    background: #fff;
  }
  .navi-toggle a.is-active span:nth-child(1) {
    transform: translateY(8px) rotate(225deg);
  }
  .navi-toggle a.is-active span:nth-child(2) {
    opacity: 0;
  }
  .navi-toggle a.is-active span:nth-child(3) {
    transform: translateY(-8px) rotate(-225deg);
  }
}

/* 固定CTA
************************************************************/
.fixed-contact {
	position: fixed;
	top: 290px;
	right: 0;
	transition: 0.2s ease-in-out;
	z-index: 99999;
}
.fixed-contact._pc {
	display: flex;
	justify-content: space-around;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
}
.fixed-contact li {
	margin-bottom: 10px;
}
.fixed-contact li a {
	display: block;
	position: relative;
	padding: 53px 20px 25px;
	color: #fff;
	font-size: 16px;
	font-family: "Noto Serif JP", sans-serif;
	border-radius: 15px 0 0 15px;
	background: #8BBCD9;
}
.fixed-contact li a::before{
	content: "";
	display: block;
	position: absolute;
	top: 15px;
	width: 24px;
	height: 23px;
	background-repeat: no-repeat no-repeat;
	background-position: center top;
	background-size: cover;
}
.fixed-contact li:nth-of-type(1) a::before{
	background-image: url('../images/common/calendar-icon.svg');
}
.fixed-contact li:nth-of-type(2) a::before{
	background-image: url('../images/common/fixed-contact-02-icon.png');
}
.fixed-contact li:nth-of-type(3) a::before{
	right: 17px;
	background-image: url('../images/common/fixed-contact-03-icon.png');
}
.fixed-contact li a:hover {
	opacity: 0.7;
}
.c-pageTop {
	position: fixed;
	bottom: 0px;
	right: 0;
	width: 60px;
	height: 60px;
	padding-top: 23px;
	box-sizing: border-box;
	text-align: center;
	background-color: #135072;
	color: white;
	opacity: 0;
	transition: 0.3s;
	z-index: 777;
	cursor: pointer;
}
.c-pageTop.is-show {
	opacity: 0.8;
}

/* ページヘッダー
************************************************************/
.page-header {
	display: block;
	position: relative;
	min-width: 1240px;
	height: 440px;
	background-image: url('../images/common/bg-page-header.webp');
	background-color: #f0f0f0;
	background-position: center center;
	background-repeat: no-repeat no-repeat;
	background-size: cover;
	/*z-index: -1;*/
}
.page-header .inner {
	display: table;
	position: relative;
	width: 1200px;
	height: inherit;
	margin: 0 auto;
	background-repeat: no-repeat;
}
.page-header .ja {
	display: block;
	position: relative;
}
.page-header .title {
	display: table-cell;
	padding-bottom: 2px;
	letter-spacing: 0.15em;
	text-align: center;
	text-shadow: 0 0 5px rgba(255,255,255,0.7);
	vertical-align: middle;
}
.page-header .title .ja{
	font-weight: bold;
	color: #565656;
	font-size: 34px;
	font-family: "Noto Serif JP", sans-serif;
}
.page-header .title .en{
	display: block;
	color: #8e7e59;
	font-size: 15px;
	font-family: "AGaramondPro-Regular",sans-serif;
}
.page-header .title .en::before,
.page-header .title .en::after{
	content: "-";
	position: relative;
}
.page-header .title .en::before{
	left: -0.5em;
}
.page-header .title .en::after{
	right: -0.5em;
}

@media screen and (max-width:640px) {
  .page-header {
    background-position: center;
    background-attachment: scroll;
    min-width: 100%;
    height: 200px;
    margin-top: 62px;
  }
  .page-header .inner {
    width: auto;
    height: inherit;
  }
}

/* メインエリア
************************************************************/
main {
	display: block;
}
/* .top-wrapper {
	padding-top: 100px;
	padding-bottom: 100px;
} */
.main-content {
	position: relative;
	width: 1000px;
	padding-top: 70px;
	padding-bottom: 100px;
	margin: 0 auto;
}
.main-content::after {
	content: "";
	display: block;
	clear: both;
}

@media screen and (max-width:640px) {
  .main-content {
    width: auto;
    padding-bottom: 70px;
  }
}

/* パンくずリスト
************************************************************/
.breadcrumb {
	position: relative;
	width: auto;
	padding-top: 10px;
	padding-bottom: 10px;
	margin: 0 auto 30px;
	font-size: 14px;
	z-index: 998;
}
.breadcrumb:last-child {
	margin: 0 auto;
}
.breadcrumb i {
	margin-right: 5px;
}
.breadcrumb a:hover {
	text-decoration: underline;
}
.breadcrumb li {
	float: left;
	margin-right: 5px;
}
.breadcrumb li:after {
	content: ">";
	padding-left: 10px;
	font-family: FontAwesome;
}
.breadcrumb li:last-child:after {
	content: "";
}
.breadcrumb li:last-child a {
	color: #d04634 !important;
}

@media screen and (max-width:640px) {
  .breadcrumb {
    width: 92%;
    margin: -10px 4% 40px;
  }
  .breadcrumb li {
    display: inline-block;
  }
}

/* フッター
************************************************************/
footer {
	position: relative;
	width: 100%;
	background-color: #fff;
}

.footer-information .inner{
	display: flex;
	justify-content: space-between;
	width: 1000px;
	padding: 70px 0 100px 50px;
	margin: 0 auto;
}
.footer-information .content-left {
	width: 26.5%;
	padding: 11px 0 0 0;
}
.footer-information .content-left img{
	max-width: 100%;
}
.footer-information .content-center {
	width: 24%;
	padding: 0 0 0 27px;
	box-sizing: border-box;
}
.footer-information .content-right {
	width: 50.2%;
}

.footer-tel {
	display: flex;
}
.footer-tel .tel {
	display: block;
	position: relative;
	padding: 0 0 0 29px;
	margin-bottom: 3px;
	color: #595656;
	font-size: 30px;
	font-family: 'AGaramondPro-Regular',sans-serif;
	letter-spacing: 2px;
	/*letter-spacing: 0.17em;*/
}
.footer-tel .tel:after {
	content: "";
	position: absolute;
	/* top: 5px; */
	/* top: 10px; */
	top: 11px;
	left: 0;
	width: 16px;
	height: 21px;
	background: url("../images/common/icon-tel-blue.png") no-repeat top center;
}
.footer-tel .twitter {
	width: 30px;
	height: 30px;
	padding: 8px 0 0 7px;
}
.footer-tel .twitter img {
	width: 30px;
	height: 30px;
}

.footer-address {
	display: block;
	margin-bottom: 30px;
}

.footer-category .title {
	display: block;
	position: relative;
	margin-bottom: 20px;
	color: #595656;
	font-size: 16px;
	font-family: "Noto Serif JP", sans-serif;
}
.footer-category .title:after {
	content: "";
	position: absolute;
	top: 15px;
	right: 15px;
	width: 150px;
	height: 1px;
	background-color: #cccccc;
}
.footer-category ul {
	display: flex;
}
.footer-category ul li {
	font-size: 14px;
	font-weight: bold;
}
.footer-category ul li:first-child,
.footer-category ul li:nth-child(2) {
	margin-right: 20px;
}

.footer-information .schedule-table {
	width: 100%;
	color: #004e88;
}

.footer-navi .inner{
	width: 1000px;
	padding: 17px 0 33px;
	margin: 0 auto;
	box-sizing: border-box;
}
.footer-navi ul {
	display: flex;
	justify-content: space-between;
	position: relative;
	width: 610px;
	height: inherit;
	margin: 0 auto;
	text-align: center;
}
.footer-navi ul li {
	position: relative;
	height: inherit;
}
.footer-navi ul li a{
	display: block;
	position: relative;
	padding: 0;
	color: #8e7e59;
	font-size: 18px;
	font-weight: bold;
	font-family: "Noto Serif JP", sans-serif;
	text-align: center;
	vertical-align: middle;
}
.footer-navi ul li a:hover::before {
	content: "";
	position: absolute;
	top: -23px;
	left: 0;
	right: 0;
	width: 30px;
	height: 20px;
	margin: auto;
	/* background: url("../images/common/global-navi-hover.png") no-repeat top center; */
}
.footer-navi ul li a:hover {
	color: #8e7e59;
}
.footer-navi ul li a span{
	display: block;
	position: relative;
	margin-top: 7px;
	color: #63a4c1;
	font-size: 13px;
	font-family: "AGaramondPro-Regular",sans-serif;
	line-height: 1;
	letter-spacing: 0.1em;
}
.footer-navi ul li a span::before{
	content: "";
  position: absolute;
	left: 0;
	right: 0;
	bottom: -10px;
	width: 100%;
	height: 1px;
	margin: auto;
	background-color: #8e7e59;
	transition-duration: 0.15s;
	transition-timing-function: ease-out;
	transform: scaleX(0);
	z-index: 1;
}
.footer-navi ul li a:hover span::before {
	transform: scaleX(1);
}

.footer-copyright {
	padding: 55px 0 30px 0;
	text-align: center;
	background: #8BBCD9;
}
.footer-copyright small {
	color: #fff;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0.2em;
}
.footer-bnr-area {
	padding-bottom: 47px;
	display: flex;
	justify-content: center;
}
.btn_doctors {
	width: 300px;
}
.btn_doctors img{
	max-width: 100%;
}



@media screen and (max-width:640px) {
  .footer-information .inner {
    display: block;
    width: auto;
    padding: 40px 6%;
  }
  .footer-information .content-left {
    width: auto;
    padding: 0;
    margin-bottom: 30px;
    text-align: center;
  }
  .footer-information .content-center {
    width: auto;
    padding: 0;
  }
  .footer-information .content-right {
    width: auto;
  }
  .footer-information .content-left a img {
    width: 200px;
  }
  .footer-tel {
    justify-content: center;
  }
  .footer-tel .tel {
    margin-bottom: 20px;
    font-size: 24px;
    text-align: center;
  }
  .footer-tel .twitter {
    width: auto;
    height: auto;
    padding: 6px 0 0 7px;
  }
  .footer-category {
    margin-bottom: 20px;
  }
  .footer-navi {
    display: none;
  }
}


/*===============================================================================

	パーツ・コンポーネント

===============================================================================*/

/* タイトル
************************************************************/
h1 {
	position: absolute;
	top: 25px;
	left: 257px;
	color: rgba(255,255,255,0.5);
	font-size: 12px;
	z-index: 9990;
}

.section-title.-style-01 {
	position: relative;
	color: #D5E1E6;
	font-size: 100px;
	font-family: 'AGaramondPro-Regular',sans-serif;
	line-height: 1.2;
	letter-spacing: 0.1em;
	text-align: center;
}

.section-title.-style-01.-sm {
	color: #b5cdd6;
	font-size: 78px;
}

.section-title-ja {
	display: block;
	margin-bottom: 60px;
	color: #8e7e59;
	font-size: 26px;
	font-family: "Noto Serif JP", sans-serif;
	text-align: center;
}

.section-title.-style-02 {
	position: relative;
	margin-bottom: 30px;
	color: #63a4c1;
	font-size: 26px;
	font-weight: bold;
	font-family: "Noto Serif JP", sans-serif;
	line-height: 1.4;
	letter-spacing: 0.15em;
	text-align: left;
}

.section-title.-style-02.fs18 {
	margin-bottom: 10px;
	font-size: 18px;
}

.section-title.-style-03 {
	position: relative;
	padding: 5px 0 10px 15px;
	margin-bottom: 25px;
	color: #63a4c1;
	font-size: 20px;
	font-weight: bold;
	font-family: "Noto Serif JP", sans-serif;
	letter-spacing: 0.1em;
	border-left: 8px solid #63a4c1;
	border-bottom: 1px solid #63a4c1;
}

@media screen and (max-width:640px) {
  h1 {
    position: absolute;
    top: 10px;
    left: 10px;
    width: auto;
    color: #fff;
    font-size: 12px;
    z-index: 9990;
  }
    
  .section-title.-style-01,
  .section-title.-style-02,
  .section-title.-style-03 {
    width: 100%;
    margin-bottom: 25px;
    box-sizing: border-box;
  }
  .section-title.-style-01 {
    margin-bottom: 0;
    font-size: 50px;
  }
  .section-title.-style-01.-sm {
    font-size: 37px;
  }
  .section-title-ja {
    margin-bottom: 30px;
    font-size: 20px;
  }
  .section-title.-style-02::before {
		bottom: 0;
		left: 0;
		right: 0;
		width: 40px;
		height: 57px;
		margin: auto;
		background-image: url(../images/tit02_bg.png);
		background-repeat: no-repeat;
		background-size: cover;
  }
}

/* リスト
************************************************************/
ul.style-01 {
	padding: 35px 15px 25px 45px;
	background-color: #f7f7f7;
}
ul.style-01:after {
	content: "";
	display: block;
	clear: both;
}
ul.style-01._mt20 span {
	padding-left: 2em;
}
ul.style-01 li {
	float: left;
	position: relative;
	padding-left: 0.9em;
	padding-right: 5%;
	margin-bottom: 15px;
}
ul.style-01 li:before {
	content: '';
	display: block;
	position: absolute;
	top: 10px;
	left: 0;
	width: 3px;
	height: 3px;
	border: 1px solid #DAC58B;
	border-radius: 100%;
	background-color: #DAC58B;
}

ul.style-02 {
	padding: 30px;
	font-size: 14.5px;
	border: 3px solid #eee;
}
ul.style-02 li {
	position: relative;
	padding-left: 0.9em;
	margin-bottom: 10px;
}
ul.style-02 li:last-child {
	margin-bottom: 0;
}
ul.style-02 li:before {
	content: '';
	display: block;
	position: absolute;
	top: 10px;
	left: 0;
	width: 3px;
	height: 3px;
	border: 1px solid #E0D0BF;
	border-radius: 100%;
	background-color: #E0D0BF;
}
ul.style-02 li i {
	margin-right:8px;
}

/* ボタン
************************************************************/
.more-button.-style-01 {
	position: relative;
	margin-bottom: 10px;
}
.more-button.-style-01 a {
	display: inline-block;
	position: relative;
	padding: 10px 15px;
	color: #8e7e59;
	font-size: 13px;
	font-weight: bold;
	font-family: "AGaramondPro-Regular",sans-serif;
	line-height: 1;
	letter-spacing: 0.1em;
	text-align: center;
	border-top: 1px solid #bbb29b;
	border-bottom: 1px solid #bbb29b;
	transition: ease-in-out 0.1s;
}
.more-button.-style-01 a:hover {
	color: #fff;
	background-color: #bbb29b;
}

@media screen and (max-width:640px) {
  .more-button.-style-01 a {
    display: block;
  }
}

.more-button.-style-02 a{
	display: inline-block;
	position: relative;
	padding: 10px 15px;
	line-height: 1;
	border-top: 1px solid #8e7e59;
	border-bottom: 1px solid #8e7e59;
	text-align: center;
	color: #8e7e59;
	font-weight: bold;
	transition: ease-in-out 0.1s;
	font-size: 13px;
	font-family: "Noto Serif JP", sans-serif;
	letter-spacing: 0.1em;
}
.more-button.-style-02 a:hover{
	color: #fff;
	background-color: #8e7e59;
}

/* テーブル
************************************************************/
.schedule-table {
	margin-bottom: 21px;
	border-spacing: 0;
	border-collapse: collapse;
	white-space: nowrap;
}
.schedule-table td,
.schedule-table th{
	border-bottom: 1px solid #e4e4e4;
	vertical-align: middle;
}
.schedule-table th{
	padding: 10px 22px 8px 22px;
	font-weight: bold;
	line-height: 1;
	text-align: left;
	white-space: nowrap;
}
.schedule-table th span{
	background: rgba(0, 78, 136, 0.25);
	margin-right: 20px;
	padding: 3px 8px;
	color: #fff;
	font-size: 10px;
}
.schedule-table tr:first-of-type th:first-of-type{
	padding: 10px 10px 8px 0;
	font-size: 18px;
	font-weight: bold; 
}
.schedule-table tr:not(:first-of-type) th:first-of-type{
	padding: 10px 10px 8px 0;
	font-weight: normal;
}
.schedule-table td{
	padding: 10px 13px 10px 13px;
	color: #63a4c1;
}
.schedule-table tr:first-child td {
	color: #004e88;
	font-size: 14px;
	font-weight: bold;
}
.schedule-caption {

}
.schedule-caption li {
	display: inline-block;
	padding-left: 1em;
	color: #004E88;
	font-size: 14px;
	text-indent: -1em;
}

@media screen and (max-width:640px) {
  .schedule-table {
    white-space: inherit;
  }
  .schedule-table td,
  .schedule-table th {
    padding: 2% 1%;
  }
  .schedule-table th {
    width: 105px;
    font-size: 12.5px;
  }
  .schedule-table td {
    font-size: 13px;
  }
}

.footer-btn-area{
	background: url(../images/common/footer-btnarea-bg.png) repeat,#F2F9FD;
	margin-bottom: 80px;
	padding: 45px 0 40px;
}
.footer-btn-area .box{
	width: 1000px;
	margin: 0 auto;
	padding: 0 110px;
	display: flex;
	gap: 78px;
	box-sizing: border-box;
}
.footer-btn-area .btn_reserve{
	background: #fff;
	color: #8bbcd9;
	border: solid 2px #8bbcd9;
}
.footer-btn-area .box .item{
	width: calc((100% - 78px) / 2	);
}

.footer-description {
	width: 1000px;
	margin: 0 auto 60px;
	font-size: 14px;
}
@media screen and (max-width:640px) {
	.footer-btn-area{
		margin-bottom: 40px;
	}
	.footer-btn-area .box{
		width: 100%;
		padding: 0 6%;
		flex-direction: column;
		gap: 41px;
	}
	.footer-btn-area .box .item{
		width: 100%;
	}
	.footer-description {
		width: 88%;
		margin: 0 6% 40px;
	}
}

table.style-01 {
  width: 100%;
  border-spacing: 1px;
  border-collapse: separate;
  background-color: #ccc;
}
table.style-01 td,
table.style-01 th {
  padding: 8px 20px;
}
table.style-01 th {
  font-weight: bold;
  text-align: left;
  background-color: #FAFAFA;
}
table.style-01 th span {
  font-size: 13px;
}
table.style-01 td {
  text-align: center;
  background-color: #ffffff;
}
table.style-01.-smoke th {
  text-align: center;
}

@media screen and (max-width:640px) {
  table.style-01,
  table.style-01 th {
		white-space: inherit;
  }

  table.style-01.-smoke td,
  table.style-01.-smoke th {
		padding: 1%;
  }

  table.style-01 th.w20 {
    width: 20%;
  }
  table.style-01 th.w40 {
    width: 40%;
  }

  table.style-01.-medical-checkup-list td,
  table.style-01.-medical-checkup-list th {
    padding: 8px 10px;
  }
}


._image-fr {
	display: block;
	position: relative;
	float: right;
	margin-left: 30px;
	margin-bottom: 0 !important;
	text-align: center;
}
._image-fr img {
	max-width: 300px;
	height: auto;
	margin-bottom: 7px;
	border-radius: 3px;
}
._image-fr dd {
	padding-left: 20px;
	color: #1F2774;
	font-size: 15px; 
	font-weight: bold;
	line-height: 1.3;
	text-align: left;
}

@media screen and (max-width:640px) {
  ._image-fr {
    float: none;
    margin-left: 0;
    text-align: center;
  }
  ._image-fr img {
    width: auto;
    max-width: 100%;
    margin-bottom: 15px;
  }
}

._section-box-01 {
	position: relative;
	width: 1200px;
	margin: 0 auto 100px;
}
._section-box-02 {
	margin-bottom: 100px;
}
._text-box {
	position: relative;
	margin-bottom: 50px;
}
._text-box p {
	margin-bottom: 1em;
}

@media screen and (max-width:640px) {
  ._section-box-01 {
    width: auto;
    margin: 0 6% 80px;
  }
  ._section-box-02 {
    width: auto;
    margin: 0 6% 80px;
  }
  ._section-box-02:last-child {
    margin-bottom: 0;
  }
  ._text-box {
    float: none;
    width: auto;
    padding: 0;
    border: none;
  }
}


/*===============================================================================

	トップページ

===============================================================================*/

/* キービジュアル
************************************************************/
.top-branding {
	display: block;
	position: relative;
	min-width: 1240px;
	height: 850px;
}
.top-branding .inner {
	display: table;
	position: relative;
	width: 1200px;
	height: inherit;
	margin: 0 auto;
	background-repeat: no-repeat;
}
.top-branding .bg {
	height: 850px;
}
.top-branding .catch {
	position:absolute;
	top: 259px;
	left: 0;
}
.top-branding .catch h2 {
	color: #81959C;
	font-size: 28px;
	font-family: "Noto Serif JP", sans-serif;
	letter-spacing: 0.1em;
	/* text-shadow:2px 4px 17px #000000,-4px -4px 17px #000000; */
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;

}
.top-branding .catch h2 div{
	background: #fff;
	padding: 10px 3px;
	display: inline-block;
}
.top-branding .catch h2 div:not(:last-of-type){
	margin-left: 15px;
}
.top-branding .catch h2 span{
	text-combine-upright: all;
}
.top-branding .catch p {
	display:block;
	font-size: 18.2px;
	letter-spacing: 0.08em;
}
.top-branding .banner {
	position:absolute;
	right: -60px;
	bottom: -70px;
}

@media screen and (max-width:640px) {
	.top-branding {
		min-width: 100%;
		height:440px;
		margin-top: 62px;
		background-position: center;
		background-attachment: scroll;
  }
  .top-branding .inner {
		width: auto;
		min-width: 100%;
		height: inherit;
  }
	.top-branding .bg {
		height: 450px;
	}
  .top-branding h2 {
    margin: 0;
    font-size: 22px;
  }
  .top-branding .catch {
    position: absolute;
    top: 10vw;
    left: 8.75vw;
    width: 165px;
    margin: auto;
  }
  .top-branding .catch h2 {
		margin-bottom: 10px;
		font-size: 20px;
  }
  .top-branding .catch p {
		font-size: 15px;
  }
	.top-branding-banner-sp {
		padding: 40px 0 0;
		text-align: center;
	}
}

/* お知らせ
************************************************************/
.top-news {
	padding: 85px 0 79px 0; 
}
.top-news ._section-box-01 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 0;
}
.top-news .content-left {
	width: 15%;
	padding: 33px 0 0 12px;
	box-sizing: border-box;
}
.top-news .content-right {
	width: 83%;
	padding: 42px 0 0 6px;
	box-sizing: border-box;
}
.top-news .content-left h3 {
	margin-bottom: 6px;
	color: #8e7e59;
	font-size: 22px;
	font-family: "Noto Serif JP", sans-serif;
}
.top-news .content-left .title-en {
	margin-bottom: 30px;
	color: #b0a58d;
	font-size: 16px;
	font-family: "AGaramondPro-Regular",sans-serif;
	letter-spacing: 0.14em;
}
.top-news .content-left .bg {
	position: absolute;
	top: -3px;
	left: -24px;
	width:167px;
	height: 106px;
	z-index: -1;
}
.top-news .content-left .bg img{
	max-width: 100%;
}
.top-news .news-list li:not(:last-of-type) {
  margin-bottom: 29px!important;
}
.top-news .news-list li a {
	display: inline-block;
	/* width: fit-content; */
	position: relative;
	width: 68%;
	color: #8e7e59;
	line-height: 1;
	text-overflow: ellipsis;
	white-space: nowrap;
	/* border-bottom: 1px solid #8e7e59; */
	box-sizing: border-box;
	overflow: hidden;
}
.top-news .news-list .date {
	margin-right: 29px;
	color: #aaa18c;
}

@media screen and (max-width:640px) {
  .top-news ._section-box-01 {
    display: block;
  }
  .top-news .content-left {
    width: auto;
  }
  .top-news .content-right {
    width: auto;
  }
  .top-news .content-left h3 {
    text-align: center;
  }
  .top-news .content-left .title-en {
    text-align: center;
  }
  .top-news .content-left .bg {
    left: 0;
    right: 0;
    margin: auto;
  }
  .top-news .news-list li {
    text-align: left;
  }
  .top-news .news-list li a {
    width: 100%;
    padding-top: 15px;
  }
}

/* 当院の特徴
************************************************************/
.top-feature {
	padding: 0 0 133px 0;
}
.top-feature ._section-box-01 {
	width: 100%;
	max-width: 1680px;
	margin-bottom: 0;
}
@media screen and (max-width:1300px) {
	.top-feature ._section-box-01 {
		width: 100%;
	}
}
.top-feature .section-bg {
	position: absolute;
	top: 96px;
	left: 298px;
	z-index: 1;
}
.top-feature .section-title-ja {
	margin-bottom: 43px;
}
.top-feature-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	position: relative;
	list-style: none;
	z-index: 100;
}
.top-feature-list li {
	width: 16.66666666666667%;
	height: 430px;
	background-repeat: no-repeat;
	background-size: cover;
	box-sizing: border-box;
}

.top-feature-list li:nth-of-type(1) {
	background-image: url("../images/top/feature-01-bg.webp");
}
.top-feature-list li:nth-of-type(2) {
	margin-top: 40px;
	background-image: url("../images/top/feature-02-bg.webp");
}
.top-feature-list li:nth-of-type(3) {
	background-image: url("../images/top/feature-03-bg.webp");
}
.top-feature-list li:nth-of-type(4) {
	margin-top: 40px;
	background-image: url("../images/top/feature-04-bg.webp");
}
.top-feature-list li:nth-of-type(5) {
	background-image: url("../images/top/feature-05-bg.webp");
}
/* .top-feature-list li:nth-of-type(6) {
	margin-top: 40px;
	background-image: url("../images/top/feature-06-bg.webp");
} */
.top-feature-list li a {
	display: block;
	position: relative;
	padding: 10px 10px;
}	
.top-feature-list li a:hover:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(47, 100, 135,0.78);
	z-index: 0;
}
.top-feature-list li a .bg {
	position: relative;
	height: 410px;
	padding: 47px 0 39px 0;
	text-align: center;
	border: 1px solid rgba(255,255,255,0);
	box-sizing: border-box;
	z-index: 10;
}
.top-feature-list li a:hover .bg {
	border: 1px solid #bacfd8;
	background-color: rgba(113,161,182,0.3);
}
.top-feature-list li a i {
	display: block;
	width: 120px;
	height: 120px;
	margin: 0 auto 140px;
	color: #fff;
	font-size: 40px;
	/* font-family: "AGaramondPro-Italic",sans-serif; */
	font-family: "eb-garamond", serif;
	line-height: 120px;
	text-align: center;
	border: 1px solid #fff;
	border-radius: 100%;
	background-color: rgba(255,255,255,0.2);
}
.top-feature-list li a p {
	margin-bottom:33px;
	color: #fff;
	font-size: 14px;
	font-family: "Noto Serif JP", sans-serif;
}

.top-feature-list li a .button {
	display: inline-block;
	position: relative;
	padding: 10px 15px;
	margin: auto;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	font-family: "AGaramondPro-Regular",sans-serif;
	line-height: 1;
	letter-spacing: 0.1em;
	text-align: center;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transition: ease-in-out 0.1s;
}
@media screen and (max-width:1680px) {
	.top-feature-list li a p {
		font-size: 14px;
	}	
}
@media screen and (max-width:1200px) {
	.top-feature-list {
		width: 840px;
		margin: auto;
	}
	.top-feature-list li {
		width: 280px;
	}
	.top-feature-list li:nth-of-type(1),
	.top-feature-list li:nth-of-type(2),
	.top-feature-list li:nth-of-type(3) {
		margin-bottom: 20px;
	}
}

@media screen and (max-width:640px) {
  .top-feature {
    padding: 0 0 80px 0;
  }
  .top-feature ._section-box-01 {
    width: auto;
  }
  .top-feature-list {
    width: 100%;
  }
  .top-feature .section-bg {
    display: none;
  }
  .top-feature-list li {
    width: 50%;
  }
  .top-feature-list li:nth-of-type(2),
  .top-feature-list li:nth-of-type(4),
  .top-feature-list li:nth-of-type(6) {
    margin-top: 0;
  }
}

@media screen and (max-width:480px) {
  .top-feature-list li {
    width: 100%;
  }
  .top-feature-list li:nth-of-type(4),
  .top-feature-list li:nth-of-type(5),
  .top-feature-list li:nth-of-type(6) {
    margin-bottom: 20px;
  }
}

/* 診療のご案内
************************************************************/
.top-medical {
	padding: 0 0 166px 0;
}
.top-medical ._section-box-01 {
	position: relative;
	margin-bottom: 0;
}
.top-medical .bg-01 {
	position: absolute;
	left: -254px;
	bottom: -52px;
	z-index: 10;
}
.top-medical .section-title.-style-01 {
	margin-bottom: 10px;
	text-align: left;
}
.top-medical .section-title-ja {
	padding-left: 10px;
	margin-bottom: 55px;
	color: #8e7e59;
	font-size: 26px;
	text-align: left;
	font-family: "Noto Serif JP", sans-serif;
}
.top-medical-list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	position: relative;
	max-width: 1168px;
	margin: auto;
	z-index: 100;
}
.top-medical-list li {
	width: 25%;
}
.top-medical-list li a {
	display: block;
	width: 100%;
	height: 420px;
	padding: 155px 30px 0 30px;
	box-sizing: border-box;
	background-color: #fff;
}
.top-medical-list li:nth-of-type(1) a,
.top-medical-list li:nth-of-type(2) a {
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
	border-left: 1px solid #efefef;
}
.top-medical-list li:nth-of-type(3) a {
	border: 1px solid #efefef;
	border-right: 1px solid #efefef;
}
.top-medical-list li:nth-of-type(4) a {
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
	border-right: 1px solid #efefef;
}
.top-medical-list li:nth-of-type(5) a,
.top-medical-list li:nth-of-type(6) a {
	border-bottom: 1px solid #efefef;
	border-left: 1px solid #efefef;
}
.top-medical-list li:nth-of-type(7) a {
	border-bottom: 1px solid #efefef;
	border-left: 1px solid #efefef;
	border-right: 1px solid #efefef;
}

.top-medical-list li a h4 {
	margin-bottom: 27px;
	min-height: 97px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.top-medical-list li a h4 .ja {
	display: block;
	position: relative;
	margin-bottom: 4px;
	color: #8e7e59;
	font-size: 20px;
	font-family: "Noto Serif JP", sans-serif;
	text-align: center;
}
.top-medical-list li a h4 .ja::before {
	content: "";
	position: absolute;
	left: 50%;
	/* right: 0; */
	margin: auto;
	background-repeat: no-repeat no-repeat;
	background-position: top center;
	transform: translateX(-50%);
}
.top-medical-list li:nth-of-type(1) a h4 .ja:before {
	top: -130px;
	width: 105px;
	height: 105px;
	background-image: url('../images/top/medical-icon-01.svg');
}
.top-medical-list li:nth-of-type(1) a:hover h4 .ja:before {
	background-image: url('../images/top/medical-icon-01-hover.svg');
}
.top-medical-list li:nth-of-type(2) a h4 .ja:before {
	top: -130px;
	width: 105px;
	height: 105px;
	background-image: url('../images/top/medical-icon-02.svg');
}
.top-medical-list li:nth-of-type(2) a:hover h4 .ja:before {
	background-image: url('../images/top/medical-icon-02-hover.svg');
}
.top-medical-list li:nth-of-type(3) a h4 .ja:before {
	top: -130px;
	width: 105px;
	height: 105px;
	background-image: url('../images/top/medical-icon-03.svg');
}
.top-medical-list li:nth-of-type(3) a:hover h4 .ja:before {
	background-image: url('../images/top/medical-icon-03-hover.svg');
}
.top-medical-list li:nth-of-type(4) a h4 .ja:before {
	top: -116px;
	width: 105px;
	height: 105px;
	background-image: url('../images/top/medical-icon-04.svg');
}
.top-medical-list li:nth-of-type(4) a:hover h4 .ja:before {
	background-image: url('../images/top/medical-icon-04-hover.svg');
}
.top-medical-list li:nth-of-type(5) a h4 .ja:before {
	top: -130px;
	width: 105px;
	height: 105px;
	background-image: url('../images/top/medical-icon-05.svg');
}
.top-medical-list li:nth-of-type(5) a:hover h4 .ja:before {
	background-image: url('../images/top/medical-icon-05-hover.svg');
}
.top-medical-list li:nth-of-type(6) a h4 .ja:before {
	top: -130px;
	width: 105px;
	height: 105px;
	background-image: url('../images/top/medical-icon-06.svg');
}
.top-medical-list li:nth-of-type(6) a:hover h4 .ja:before {
	background-image: url('../images/top/medical-icon-06-hover.svg');
}
.top-medical-list li:nth-of-type(7) a h4 .ja:before {
	top: -130px;
	width: 105px;
	height: 105px;
	background-image: url('../images/top/medical-icon-07.svg');
}
.top-medical-list li:nth-of-type(7) a:hover h4 .ja:before {
	background-image: url('../images/top/medical-icon-07-hover.svg');
}
.top-medical-list li a h4 .ja span.small{
	font-size: 18px;
}
.top-medical-list li a h4 .en {
	display: block;
	color: #8e7e59;
	font-size: 13px;
	font-family: 'AGaramondPro-Italic';
	text-align: center;
	letter-spacing: 0.1em;
}
.top-medical-list li a p {
	font-size: 16px;
	line-height: 2;
}
.top-medical-list li a:hover {
	background: #6CA1C3;
}
.top-medical-list li a:hover h4 .ja,
.top-medical-list li a:hover h4 .en,
.top-medical-list li a:hover p {
	color: #fff;
}

@media screen and (max-width: 1024px) and (orientation: portrait){
  .top-medical-list li:nth-of-type(1) a {
    border-right: 1px solid #efefef;
  }
  .top-medical-list li:nth-of-type(3) a,
  .top-medical-list li:nth-of-type(5) a {
    border-right: 1px solid #efefef;
  }
  .top-medical-list li:nth-of-type(4) a {
    border-left: 1px solid #efefef;
  }
}

@media screen and (max-width:640px) {
  .top-medical {
    padding: 0 0 40px 0;
  }
  .top-medical .section-title.-style-01 {
    text-align: center;
  }
  .top-medical .section-title-ja {
    font-size: 20px;
    text-align: center;
  }
  .top-medical-list li {
    width: 50%;
  }
  .top-medical-list li a {
    height: auto;
    padding: 145px 20px 40px 20px;
  }
  .top-medical-list li:nth-of-type(2) a,
  .top-medical-list li:nth-of-type(4) a {
    border-right: 1px solid #efefef;
  }
  .top-medical-list li:nth-of-type(1) a,
  .top-medical-list li:nth-of-type(2) a,
  .top-medical-list li:nth-of-type(3) a,
  .top-medical-list li:nth-of-type(4) a {
    border-bottom: none;
  }
  .top-medical-list li:nth-of-type(4) a {
    border-left: none;
  }
}

@media screen and (max-width:480px) {
	.top-medical {
		padding: 0 0 80px 0;
  }
	.top-medical-list li {
		width: 100%;
	}
	.top-medical-list li a {
		padding: 110px 20px 40px 20px;
	}
  .top-medical-list li:nth-of-type(1) a h4 .ja:before {
    top: -119px;
  }
  .top-medical-list li:nth-of-type(2) a h4 .ja:before {
    top: -117px;
  }
  .top-medical-list li:nth-of-type(3) a h4 .ja:before {
    top: -122px;
  }
  .top-medical-list li:nth-of-type(4) a h4 .ja:before {
    top: -106px;
  }
  .top-medical-list li:nth-of-type(5) a h4 .ja:before {
    top: -120px;
  }
  .top-medical-list li:nth-of-type(6) a h4 .ja:before {
    top: -112px;
  }
  .top-medical-list li:nth-of-type(1) a {
    border-right: 1px solid #efefef;
  }
  .top-medical-list li:nth-of-type(4) a {
    border-left: 1px solid #efefef;
  }
  .top-medical-list li:nth-of-type(5) a {
    border-top: 1px solid #efefef;
    border-right: 1px solid #efefef;
  }
  .top-medical-list li:nth-of-type(6) a {
    border-top: none;
    border-right: 1px solid #efefef;
  }
}

/* こんな症状はありませんか？
************************************************************/
.top-symtoms{
	background: url(../images/top/symptoms-bg.webp) no-repeat;
	background-size: contain;
	padding-bottom: 147px;
}
.top-symtoms .inner{
	width: 1200px;
	margin: 0 auto;
}
.top-symtoms .section-title-ja{
	margin-right: 174px;
	margin-bottom: 0;
	font-size: 35px;
	text-align: right;
}
.top-symtoms .section-title{
	margin-bottom: 75px;
	text-align: right;
	font-size: 80px;
}
.top-symptoms-list{
	margin-bottom: 107px;
	display: flex;
	flex-wrap: wrap;
	gap: 0 52px;
}
.top-symptoms-list .symptoms-box {
	background: #fff;
	max-height: 138px;
	width: calc((100% - 52px) / 2);
	border: solid 1px #E6E6E6;
	outline: solid 6px #fff;
	position: relative;
	box-sizing: border-box;
	flex-shrink: 0;
}
.top-symptoms-list .symptoms-box:nth-of-type(odd){
	padding: 30px 0 30px 142px;
}
.top-symptoms-list .symptoms-box:nth-of-type(even){
	margin-top: 45px;
	padding: 30px 142px 30px 56px;
}
.symptoms-box .img {
	position: absolute;
}
.symptoms-box .img img{
	max-width: 100%;
}
.symptoms-box.box01 .img{
	width: 115px;
	left: 10px;
	bottom: 1px;
}
.symptoms-box.box02 .img{
	width: 98px;
	right: 29px;
	bottom: -8px;
}
.symptoms-box.box03 .img{
	width: 143px;
	left: -15px;
	bottom: 8px;
}
.symptoms-box.box04 .img{
	width: 137px;
	right: 12px;
	bottom: 2px;
}
.symptoms-box.box05 .img{
	width: 143px;
	left: -30px;
	bottom: 0px;
}
.symptoms-box.box06 .img{
	width: 186px;
	right: -20px;
	bottom: 5px;
}
.symptoms-box.box07 .img{
	width: 113px;
	left: 0px;
	bottom: 0px;
}
.symptoms-box.box08 .img{
	width: 165px;
	right: 3px;
	bottom: 10px;
}

.symptoms-box ul li{
	padding-left: 25px;
	color: #3b4b55;
	font-weight: bold;
	line-height: 2.67;
	position: relative;
}
.symptoms-box ul li::before{
	content: '';
	background: url(../images/top/symptoms-icon-check.svg) no-repeat;
	background-size: cover;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 8px;
	left: 0;
}

.symptoms-text {
	margin-bottom: 75px;
	padding-left: 100px;
	display: flex;
	align-items: center;
	gap: 45px;
}
.symptoms-text .img {
	width: 361px;
}
.symptoms-text .img img{
	max-width: 100%;
}
.symptoms-text .text{
	width: calc(100% - 361px - 45px);
	font-size: 16px;
	line-height: 2.18;
}
.symptoms-text .text .heading{
	margin-bottom: 45px;
	color: #8f7e59;
	font-family: "Noto Serif JP", sans-serif;
	font-size: 30px;
	font-weight: 600;
	line-height: 1.67;
}
.symptoms-text .text p:not(:last-of-type){
	margin-bottom: 1.75em;
}

.symptoms-counsel {
	width: 74.83%;
	margin: 0 auto;
}

.counsel .heading,
.symptoms-counsel .heading {
	background: #fff;
	width: fit-content;
	margin: 0 auto;
	padding: 0 25px;
	color: #6da1c3;
	font-size: 26px;
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 600;
	letter-spacing: 0.1em;
	position: relative;
	z-index: 1;
}
.counsel .box,
.symptoms-counsel .box{
	margin-top: -20px;
	padding: 50px 60px 36px;
	border: solid 3px #8BBCD9;
	border-radius: 20px;
	display: flex;
	gap: 78px;
	justify-content: space-between;
	position: relative;
	z-index: 0;
}
.counsel  .box .item,
.symptoms-counsel .box .item{
	width: calc((100% - 78px) / 2);
	text-align: center;
}
.text_reserve{
	width: fit-content;
	margin: 0 auto 5px;
	margin-bottom: 5px;
	color: #6da1c3;
	font-size: 16px;
	font-family: "Noto Serif JP", sans-serif;
}
.text_reserve.tel{
	background: url(../images/common/icon-tel-blue.png) no-repeat center left;
	padding-left: 20px;
}
.text_reserve.schedule{
	background: url(../images/top/calendar-icon.svg) no-repeat center left;
	padding-left: 30px;
}
.symptoms-counsel a{
	display: block;
}
.btn_reserve{
	background: #8bbcd9;
	width: 100%;
	padding: 13px 10px 16px;
	color: #fff;
	font-size: 22px;
	font-family: "Noto Serif JP", sans-serif;
	text-align: center;
	letter-spacing: 0.1em;
	border: none;
	border-radius: 100px;
	cursor: pointer;
}
.btn_reserve.tel{
	padding: 7px 10px 9px;
	font-size: 30px;
}
.btn_reserve:hover{
	opacity: 0.7;
}
@media screen and (max-width:640px) {
	.top-symtoms{
		background: url(../images/top/sp/symptoms-bg.webp) no-repeat;
		background-size: contain;
		padding-bottom: 110px;
	}
	.top-symtoms .inner{
		width: 88%;
		margin: 0 6%;
	}
	.top-symtoms .section-title-ja{
		margin-right: 0;
		font-size: 24px;
	}
	.top-symtoms .section-title{
		margin-bottom: 145px;
		font-size: 30px;
	}
	.top-symptoms-list{
		margin-bottom: 107px;
		gap: 65px;
	}
	.top-symptoms-list .symptoms-box {
		width: 100%;
		max-height: inherit;
	}
	.top-symptoms-list .symptoms-box:nth-of-type(odd),
	.top-symptoms-list .symptoms-box:nth-of-type(even){
		margin-top: 0;
		padding: 97px 26px 26px;
	}
	.symptoms-box.box01 .img{
		width: 23.5vw;
		left: 50%;
		top: -23.1vw;
		bottom: auto;
		transform: translateX(-50%);
	}
	.symptoms-box.box02 .img{
		width: 18.25vw;
		right: 50%;
		top: -16.3vw;
		bottom: auto;
		transform: translateX(50%);
	}
	.symptoms-box.box03 .img{
		width: 32vw;
		left: 50%;
		top: -5.2vw;
		bottom: auto;
		transform: translateX(-50%);
	}
	.symptoms-box.box04 .img{
		width: 25.75vw;
		right: 50%;
		top: -8.6vw;
		bottom: auto;
		transform: translateX(50%);
	}
	.symptoms-box.box05 .img{
		width: 30.75vw;
		left: 50%;
		top: -12.6vw;
		bottom: auto;
		transform: translateX(-50%);
	}
	.symptoms-box.box06 .img{
		width: 35.75vw;
		right: 50%;
		top: -12vw;
		bottom: auto;
		transform: translateX(50%);
	}
	.symptoms-box.box07 .img{
		width: 23.5vw;
		left: 50%;
		top: -11.4vw;
		bottom: auto;
		transform: translateX(-50%);
	}
	.symptoms-box.box08 .img{
		width: 31.25vw;
		right: 50%;
		top: -8.1vw;
		bottom: auto;
		transform: translateX(50%);
	}
	.symptoms-text {
		margin-bottom: 25px;
		padding-left: 0;
		flex-direction: column-reverse;
		gap: 13px;
	}
	.symptoms-text .img {
		width: 53vw;
	}
	.symptoms-text .text{
		width: 100%;
		font-size: 16px;
		line-height: 2.18;
	}
	.symptoms-text .text .heading{
		margin-bottom: 35px;
		font-size: 24px;
	}

	.symptoms-counsel {
		width: 100%;
	}
	.counsel .heading .heading,
	.symptoms-counsel .heading {
		padding: 0 10px;
		font-size: 20px;
	}
	.counsel .box,
	.symptoms-counsel .box{
		margin-top: -18px;
		padding: 57px 27px 57px;
		flex-direction: column;
		gap: 41px;
	}
	.counsel .box{
		margin-right: 20px;
		margin-left: 20px;
	}
	.counsel .box .item,
	.symptoms-counsel .box .item{
		width: 100%;
	}
	.btn_reserve{
		padding: 13px 10px 16px;
		font-size: 19px;
	}
	.btn_reserve.tel{
		padding: 7px 10px 9px;
		font-size: 26px;
	}
}

/* ご挨拶
************************************************************/
.top-greeting {
	background: #fff;
	position: relative;
	padding: 122px 0 0 0;
}
.top-greeting .bg-01 {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
}
.top-greeting .bg-02 {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 261px;
	background-color: #ECF3F6;
	z-index: 5;
}
.top-greeting ._section-box-01 {
	position: relative;
	width: 1150px;
	height: 850px;
	padding: 85px 107px 0 515px;
	margin: auto;
	background: #fff;
	box-sizing: border-box;
	z-index: 100;
}
.top-greeting .image-01 {
	position: absolute;
	top: -44px;
	left: -185px;
	width: 604px;
	height: 439px;
	z-index: 200;
}
.top-greeting .image-02 {
	position: absolute;
	top: 486px;
	left: -145px;
	width: 314px;
	height: 228px;
	z-index: 200;
}
.top-greeting .profile {
	position: absolute;
	top: 441px;
	left: 210px;
	width: 170px;
	text-align: center;
}
.top-greeting .profile .image {
	width: 150px;
	margin: 0 auto 24px;
}
.top-greeting .profile .image img {
	width: 100%;
	height: auto;
}
.top-greeting .profile .name {
	margin-bottom: 13px;
	color: #8e7e59;
	font-size: 18px;
	font-weight: 400;
	font-style: normal;
	font-family: kozuka-gothic-pr6n, sans-serif;
	letter-spacing: 0.3em;
}
.top-greeting .profile .name span {
	font-size: 13px;
	letter-spacing: 0.1em;
}
.top-greeting .section-title.-style-01 {
	padding-right: 10px;
	margin-bottom: 9px;
	text-align: right;
}
.top-greeting .section-title-ja {
	padding-right: 27px;
	margin-bottom: 76px;
	text-align: right;
}
.top-greeting .message p {
	color: #3B4B55;
	font-size: 16px;
	line-height: 2.2;
	letter-spacing: 0;
}

@media screen and (max-width:640px) {
  .top-greeting {
    padding: 40px 0 0 0;
  }
	.top-greeting .bg-02 {
		background: #fff;
	}
  .top-greeting ._section-box-01 {
    width: auto;
    height: auto;
    padding: 0;
    margin: 0 6% 80px;
  }
  .top-greeting .section-title.-style-01 {
    padding-right: 0;
    text-align: center;
  }
  .top-greeting .section-title-ja {
    margin-bottom: 84vw;
		padding-right: 0;
    text-align: center;
  }
  .top-greeting .bg-01 {
    display: none;
  }
  /*.top-greeting .image-01,*/
  .top-greeting .image-02 {
    display: none; 
  }
	.top-greeting .image-01{
		width: 100vw;
		height: 25%;
		top: 31vw;
		left: -6.8%;
	}
  .top-greeting .profile {
    position: relative;
    top: 0;
    left: 0;
    width: 210px;
    margin: 0 auto 20px;
  }
  .top-greeting .profile .image {
    width: 100%;
		display: none;
  }
  .top-greeting .message p {
    margin-bottom: 16px;
    line-height: 1.75;
  }
}

/* 初めてクリニックをご利用いただく方へ
************************************************************/
.top-firstvisit {
	background: #ecf3f6;
	padding-top: 88px;
	padding-bottom: 135px;
}
.top-firstvisit .inner {
	width: 1200px;
	margin: 0 auto;
}
.top-firstvisit .section-title {
	text-align: left;
}
.top-firstvisit .section-title-ja {
	margin-left: 65px;
	margin-bottom: 80px;
	text-align: left;
}

.firstvisit-flow {
	margin-bottom: 73px;
	display: flex;
	flex-wrap: wrap;
	gap: 55px 60px;
}
.firstvisit-flow-box {
	background: #fff;
	width: calc((100% - 60px) / 2);
	padding: 26px 30px 39px;
	box-sizing: border-box;
}
.firstvisit-flow-box.full{
	width: 100%;
}
.firstvisit-flow-box h4.heading{
	margin-bottom: 20px;
	font-size: 22px;
	font-family: "Noto Serif JP", sans-serif;
	display: flex;
}
.num {
	background: #e0d183;
	width: 34px;
	height: 34px;
	margin-right: 15px;
	color: #fff;
	font-size: 22px;
	font-family: "游明朝","Noto Serif JP", sans-serif;
	font-weight: 600;
	display: flex;
	justify-content: center;
	align-items: center;
}

.table_price {
	margin-top: 30px;
	margin-bottom: 45px;
	border: none;
}
.table_price th{
	background: #f8f4de;
	padding: 36px 0 36px 50px;
	width: 20.83%;
	font-weight: bold;
	border: solid 1px #E0D183;
}
.table_price td{
	width: calc(100% - 20.83%);
	padding: 36px 42px;
	border: solid 1px #E0D183;
}
.firstvisit-flow-box .note{
	width: 89%;
	padding-left: 1em;
	text-indent: -1em;
}
.firstvisit-flow-box .note:not(:last-of-type){
	margin-bottom: 1.75em;
}

.top-firstvisit .pp{
	padding: 0 25px;
	color: #3b4b55;
}
.top-firstvisit .pp:not(:last-of-type){
	margin-bottom: 45px;
}
.top-firstvisit .pp .heading{
	margin-bottom: 20px;
	font-size: 18px;
	border-bottom: solid 1px #3B4B55;
}
.top-firstvisit .pp p{
	font-size: 13px;
}
br.sp{
	display: none;
}
@media screen and (max-width:640px) {
	.top-firstvisit {
		padding-top: 60px;
		padding-bottom: 135px;
	}
	.top-firstvisit .inner {
		width: 88%;
		margin: 0 6%;
	}
	.top-firstvisit .section-title {
		text-align: center;
	}
	.top-firstvisit .section-title-ja {
		margin-left: 0;
		margin-bottom: 60px;
		text-align: center;
	}
	.firstvisit-flow {
		margin-bottom: 62px;
		gap: 32px;
	}
	.firstvisit-flow-box {
		width: 100%;
		padding: 26px 30px 30px;
		font-size: 15px;
	}
	.table_price {
		margin-bottom: 40px;
	}
	.table_price tr{
		display: flex;
		flex-direction: column;
	}
	.table_price th{
		width: 100%;
		padding: 17px 0 19px;
		font-size: 16px;
		text-align: center;
		border-bottom: none;
	}
	.table_price td{
		width: 100%;
		padding: 30px 20px;
	}
	.table_price tr:not(:last-of-type) td{
		border-bottom: none;
	}
	.firstvisit-flow-box .note{
		width: 100%;
	}
	br.sp{
		display: inline;
	}
	.top-firstvisit .pp:not(:last-of-type){
		margin-bottom: 60px;
	}
}



/* コラム
************************************************************/
.top-column {
	padding: 145px 0 86px 0;
}
.top-column ._section-box-01 {
	margin-bottom: 0;
}
@media screen and (max-width:1400px) {
	.top-column ._section-box-01 {
		width: 1100px;
	}
}
.top-column .section-title.-style-01 {
	position: relative;
	font-size: 60px;
	text-align: left;
}
.top-column .section-title.-style-01:after {
	content: "";
	position: absolute;
	top: 39px;
	left: 288px;
	width: 200px;
	height: 1px;
	background-color: #8e7e59;
}
.top-column .section-title-ja {
	padding: 0 0 0 9px;
	margin: 0 0 49px 0;
	font-size: 18px;
	text-align: left;
}
.top-column .more-button {
	position: absolute;
	top: 24px;
	right: 0;
}
.top-column-list {
	display: flex;
	justify-content: space-between;
}
.top-column-list li {
	width: 44%;
}
.top-column-list li a {
	display: flex;
}
.top-column-list li .date {
	order: 2;
	width: 5%;
	box-sizing: border-box;
	padding: 9px 0 0 0;
}
.top-column-list li .date .text {
	display: block;
	color: #8e7e59;
	line-height: 1;
	letter-spacing: 0.08em;
	transform: rotate(90deg);
}
.top-column-list li .date .text time {
	padding-right: 19px;
}
.top-column-list li .content {
	order: 1;
	width: 95%;
	box-sizing: border-box;
}
.top-column-list li .image {
	position: relative;
	margin-bottom: 28px;
}
.top-column-list li .image img {
	width: 100%;
	height: auto;
}
.top-column-list li .button {
	display:inline-block;
	position:absolute;
	right: 20px;
	bottom: 13px;
	color:#63a4c1;
	font-size: 13px;
	font-family: "AGaramondPro-Regular",sans-serif;
	line-height:1;
	letter-spacing: 0.1em;
}
.top-column-list li .button span {
	position: relative;
}
.top-column-list li .button span:after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -11px;
	width: 30px;
	height: 3px;
	background-color: #63a4c1;
}
.top-column-list li .description {
	padding: 0 8px 0 8px;
}
.top-column-list li .description h4 {
	margin-bottom: 22px;
	color: #8e7e59;
	font-size: 20px;
	/*font-family: "Noto Serif JP", sans-serif;*/
}
.top-column-list li .description p {
	color: #8e7e59;
	font-size: 15px;
	line-height: 2;
}

@media screen and (max-width:640px) {
  .top-column {
    padding: 40px 0 86px 0;
  }
  .top-column ._section-box-01	{
    width: auto;
  }
  .top-column .section-title.-style-01 {
    text-align: center;
  }
  .top-column .section-title.-style-01:after {
    display: none;
  }
  .top-column .section-title-ja {
    margin-bottom: 20px;
    text-align: center;
  }
  .top-column .more-button {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto 30px;
    text-align: center;
  }
	.top-column-list {
		display: block;
	}
  .top-column-list li {
    width: 48%;
    margin-bottom: 30px;
  }
  .top-column-list li .date {
    width: auto;
    margin: 0 0 10px 0;
  }
  .top-column-list li .date .text {
    transform: none;
  }
  .top-column-list li .content {
    width: auto;
  }
  .top-column-list li a {
    display: block;
  }
  .top-column-list li .image {
    margin-bottom: 10px;
  }
  .top-column-list li .description h4 {
    margin-bottom: 10px;
  }
}

@media screen and (max-width:550px) {
  .top-column-list {
    display: block;
  }
  .top-column-list li {
    width: 100%;
  }
}

/* アクセス
************************************************************/
.top-access {
	display: flex;
}
.top-access .content-left {
	position: relative;
	width: 62%;
}
.top-access .content-left iframe {
	width: 100%;
	height: 740px;
	vertical-align: bottom;
}
.top-access .content-right {
	position: relative;
	width: 38%;
	padding: 46px 0 0 0;
	background: #8BBCD9;
	box-sizing: border-box;
	overflow: hidden;
}
.top-access .content-right .section-title.-style-01 {
	position: relative;
	color: #fff;
	font-size: 60px;
	text-align: left;
}
.top-access .content-right .section-title.-style-01:after {
	content: "";
	position: absolute;
	top: 39px;
	right: 93px;
	width: 200px;
	height: 1px;
	background-color: #fff;
}
@media screen and (max-width:1420px) {
	.top-access .content-right .section-title.-style-01:after {
		width: 150px;
	}
}
.top-access .content-right .section-title-ja {
	padding: 0 0 0 9px;
	margin: 0 0 24px 0;
	color: #fff;
	font-size: 18px;
	text-align: left;
}
.top-access .bg {
	width: 319px;
	height: 405px;
	position: absolute;
	right: 0;
	bottom: -155px;
}
.top-access .bg img{
	max-width: 100%;
}
.top-access-info {
	max-width: 580px;
	padding: 0 0 0 50px;
	margin: 0 auto 0 0;
}
.top-access-info .item-01 {
	padding: 0 0 0 11px;
	margin: 0 0 15px 0;
}
.top-access-info .item-01 p {
	margin-bottom: 50px;
	color: #fff;
	font-size: 14px;
}
.top-access-info .item-01 p span {
	font-size: 16px;
	font-weight: bold;
}
.top-access-info .item-02 {
	padding: 30px 0 0 12px;
	border-top: 1px solid #fff;
}
.top-access-info .item-02 h4 {
	position: relative;
	color: #fff;
	padding: 0 0 0 35px;
	margin: 0 0 13px 0;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0;
}
.top-access-info .item-02 h4:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 23px;
	background: url("../images/top/access-info-02-icon.png") no-repeat top center;
}
.top-access-info .item-02 ul li {
	margin-bottom: 10px;
	color: #fff;
	font-size: 14px;
}
.top-access-info .item-02 ul li:last-child {
	margin-bottom: 15px;
}
.top-access-info .item-03 {
	padding: 20px 0 0 15px;
}
.top-access-info .item-03 h4 {
	position: relative;
	padding: 0 0 0 35px;
	margin: 0 0 13px 0;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0;
}
.top-access-info .item-03 h4:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	background: url("../images/top/access-info-03-icon.png") no-repeat top center;
}
.top-access-info .item-03 ul li {
	margin-bottom: 10px;
	color: #fff;
	font-size: 15px;
	font-weight: bold;
}
.top-access-info .item-03 ul li:last-child {
	margin-bottom: 15px;
}

@media screen and (max-width:640px) {
  .top-access {
    display: block;
  }
  .top-access .content-left {
    width:auto;
  }
  .top-access .content-right {
    width:auto;
  }
  .top-access .content-left iframe {
    height: 400px;
  }
  .top-access .content-right .section-title.-style-01:after {
    display: none;
  }
  .top-access-info {
    padding: 0 20px;
  }
}


/*===============================================================================

	お知らせページ

===============================================================================*/

/* お知らせ一覧
************************************************************/
.archives-news .news-list {
	
}
.archives-news .news-list > li {
	padding-bottom: 10px;
	margin-bottom: 30px;
	border-bottom: 1px solid #ccc;
}
.archives-news .news-list > li .title {
	margin-bottom: 10px;
	font-size: 17px;
	font-weight: bold;
}
.archives-news .news-list > li .content {
	
}
.archives-news .news-list > li .date {
	display: block;
}
.archives-news .news-list > li .content p strong {
	margin-left: 20px;
	color: #1F2774;
	font-size: 17.5px;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
}

/*下層共通*/
.u-content{
	width: 1000px;
	margin: 0 auto;
}
.p-pagelist{
	background: #f2f6f9;
}
.p-pagelist .inner{
	width: 1000px;
	margin: 0 auto;
	padding: 45px 0 25px;
}
.p-pagelist ul {
	margin: 0;
	padding-left: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 13px 13px;
	justify-content: center;
}
.p-pagelist ul li {
	background: #fff;
	width: calc((100% - (13px * 3)) / 4);
	border-radius: 8px;
	text-align: center;
}
.p-pagelist ul li a {
    background: url(../images/common/icon_arrow_b-b.svg) no-repeat center bottom 8px;
    width: 100%;
    padding: 5px 0 10px;
    color: #004e88;
    font-weight: bold;
		font-family: "Noto Serif JP", sans-serif;
    display: block;
    font-size: 13px;
}
@media screen and (max-width:640px) {
	.u-content{
		width: 100%;
	}
	.p-pagelist .inner{
		width: calc(100% - 40px);
		margin: 0 20px;
	}
	.p-pagelist ul li {
		width: calc((100% - (13px * 1)) / 2);
	}
}
.col2-box {
	display: flex;
}
.col2-box .box_img{
	flex-shrink: 0;
}
.col3-box {
	display: flex;
}
.heading_box{
	margin-bottom: 120px;
	text-align: center;
	line-height: 1.5;
}
.heading_box .en{
	margin-bottom: 15px;
	color: #b5cdd6;
	font-size: 78px;
	font-family: "eb-garamond",serif;
	font-weight: normal;
}
.heading_box .heading{
	color: #8f7e59;
	font-size: 26px;
	font-family: "Noto Serif JP", sans-serif;
	text-align: center;
}
@media screen and (max-width:640px) {
	.heading_box{
		margin-bottom: 60px;
	}
	.heading_box .en{
		font-size: 68px;
	}
}
.term_box{
	margin: 0 20px 60px;
}
.term_heading {
	background: #62a4c0;
	margin-bottom: 30px;
	padding: 10px 20px;
	color: #fff;
	font-size: 20px;
	font-family: "Noto Serif JP", sans-serif;
}
.item_box:not(:last-of-type){
	margin-bottom: 60px;
}
.item_heading{
	margin-bottom: 30px;
	padding-left: 20px;
	padding-bottom: 5px;
	color: #63a4c1;
	font-family: "Noto Serif JP", sans-serif;
	font-size: 18px;
	font-weight: 600;
	border-bottom: solid 1px #63A3C0;
	position: relative;
} 
.item_heading::before{
	content: '';
	background: #62a4c0;
	width: 8px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.sp{
	display: none;
}
@media screen and (max-width:640px) {
	br.sp{
		display: inline;
	}
}

/*===============================================================================

	うつ病ページ

===============================================================================*/
/*「うつかもしれない」と感じている方へ*/
#depression *{
	box-sizing: border-box;
}
#depression img{
	max-width: 100%;
	height: auto;
}
#dear.sec{
	width: 1000px;
	margin: 0 auto 110px;
	padding-top: 100px;
}
#dear .heading{
	margin-bottom: 80px;
	color: #6da1c3;
	font-size: 32px;
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 600;
	text-align: center;
}
#dear .col2-box{
	display: flex;
	gap: 13px;
}
#dear .col2-box .box_img{
	width: 409px;
	text-align: right;
}
#dear .col2-box .box_text {
	font-weight: bold;
	line-height: 2.13;
}
#dear .col2-box .box_text p:not(:last-of-type){
	margin-bottom: 1.75em;
}
@media screen and (max-width:640px) {
	#dear.sec{
		width: calc((100% - 40px));
		margin: 0 20px 110px;
		padding-top: 50px;
	}
#dear .heading{
	margin-bottom: 40px;
	font-size: 28px;
}
	#dear .col2-box{
		flex-direction: column;
	}
		#dear .col2-box .box_img{
		width: 80%;
		margin: 0 auto;
	}
}

/*院長先生のメッセージ*/
#message.sec{
	position: relative;
}
#message .u-content{
	position: relative;
}
#message .box{
	margin: 0 50px 128px 20px;
	position: relative;
}
#message .box_bg{
	width: 1400px;
	position: absolute;
	top: 236px;
	right: -100px;
}
#message .heading{
	background: #fff;
	width: fit-content;
	margin-right: -30px;
	margin-left: auto;
	padding-bottom: 63px;
	padding-left: 45px;
	color: #d5e1e6;
	font-size: 78px;
	font-family: "eb-garamond",serif;
	position: relative;
	z-index: 1;
}
#message .heading span{
	margin-right: 25px;
	color: #8f7e59;
	font-family: "Noto Serif JP", sans-serif;
	font-size: 20px;
	font-weight: 600;
	display: inline-block;
}
#message .col2-box {
	background: #fff;
	margin-top: -104px;
	padding: 95px 255px 85px 95px;
	border: solid 1px #8F7E59;
	flex-direction: column;
	position: relative;
}
#message .col2-box .box_img {
	width: 200px;
	position: absolute;
	top: 70px;
	right: -30px;
	z-index: 1;
}
#message .col2-box .box_text {
	line-height: 2.13;
	letter-spacing: 0.1em;
	z-index: 1;
}
#message .col2-box .box_text p:not(:last-of-type){
	margin-bottom: 1.5em;
}
@media screen and (max-width:640px) {
	#message .box{
		margin: 0 20px 60px 20px;
	}
	#message .box_bg{
		display: none;
	}
	#message .heading{
		background: transparent;
		width: fit-content;
		margin: 0 auto 30px;
		padding: 0;
		font-size: 68px;
		text-align: center;
		line-height: 1.2;
	}
	#message .heading span{
		margin-right: 0;
		font-size: 20px;
	}
	#message .col2-box {
		margin-top: 0;
		padding: 40px 30px 40px 30px;
	}
	#message .col2-box .box_img {
		margin: 0 auto 30px;
		position: static;
	}
}

/*3つの約束*/
#promise.sec{
	padding-top: 135px;
	padding-bottom: 186px;
}
#promise .u-content{
	width: 1200px;
}
#promise h2.heading {
	margin-bottom: 73px;
	color: #6da1c3;
	font-size: 32px;
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 600;
	text-align: center;
}
#promise .col3-box {
	margin: 0 20px;
	gap: 44px;
}
#promise .col3-box .box {
	width: calc((100% - 88px) / 3);
	position: relative;
}
#promise .col3-box .box:nth-of-type(2){
	margin-top: 50px;
}
#promise .col3-box .box:before{
	content: '';
	position: absolute;
	z-index: -1;
}
#promise .col3-box .box:nth-of-type(1):before{
	background: url(../images/depression/depression04-bg.webp) no-repeat;
	background-size: contain;
	width: 457px;
	height: 457px;
	top: 122px;
	left: -162px;
}
#promise .col3-box .box:nth-of-type(2):before{
	background: url(../images/depression/depression05-bg.webp) no-repeat;
	background-size: contain;
	width: 504px;
	height: 504px;
	top: -92px;
	right: -140px;
}
#promise .col3-box .box:nth-of-type(3):before{
	background: url(../images/depression/depression06-bg.webp) no-repeat;
	background-size: contain;
	width: 512px;
	height: 512px;
	bottom: -83px;
	right: -186px;
}
#promise .col3-box .number {
	background: #fff;
	width: 122px;
	height: 122px;
	margin: 0 auto 25px;
	color: #d5e1e6;
	font-size: 72px;
	font-family: "eb-garamond",serif;
	font-weight: 400;
	text-align: center;
	border: solid 1px #D5E1E6;
	border-radius: 100px;
	position: relative;
}
#promise .col3-box .number::before{
	content: 'promise';
	font-size: 18px;
	position: absolute;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
}
#promise .col3-box  h3.heading{
	margin-bottom: 42px;
	color: #8f7e59;
	font-size: 20px;
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 700;
	text-align: center;
	position: relative;
}
#promise .col3-box  h3.heading::before{
	content: '';
	background: #b5cdd6;
	width: 20px;
	height: 1px;
	position: absolute;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
}
#promise .col3-box .box_text {
	background: #fff;
	margin-top: -50px;
	padding: 52px 30px 20px;
}
@media screen and (max-width:640px) {
	#promise.sec{
		padding-top: 60px;
		padding-bottom: 90px;
	}
	#promise .u-content{
		width: 100%;
	}
	#promise h2.heading {
		margin-bottom: 40px;
		font-size: 28px;
	}
	#promise .col3-box {
		flex-direction: column;
		overflow: hidden;
	}
	#promise .col3-box .box {
		width: 100%;
	}
	#promise .col3-box .box:nth-of-type(2){
		margin-top: 0;
	}
}

/*うつ病について*/
#about.sec{
	background: #f2f6f9;
	padding-top: 120px;
	padding-bottom: 190px;
}
#about .col2-box{
	margin: 0 20px 90px;
	flex-direction: row-reverse;
	gap: 80px;
}
#about .col2-box .box_img{
	width: 400px;
}
@media screen and (max-width:640px) {
	#about.sec{
		padding-top: 60px;
		padding-bottom: 80px;
	}
	#about .heading_box .en{
		line-height: 1;
	}
	#about .heading_box .heading{
		margin-top: 10px;
	}
	#about .col2-box{
		flex-direction: column;
		gap: 30px;
	}
	#about .col2-box .box_img{
		width: 100%;
	}
}
.progress_flow{
	margin-bottom: 123px;
	position: relative;
}
.progress_flow::before{
	content: '';
	width: 1px;
	height: 100%;
	border-left: dotted 3px #6CA1C3;
	position: absolute;
	top: 0;
	left: 70px;
	z-index: 0;
}
.progress_flow_box{
	display: flex;
	gap: 44px;
}
.progress_flow_box:not(:last-of-type){
	margin-bottom: 100px;
}
.progress_flow .progress{
	width: 142px;
	height: 70px;
	font-size: 22px;
	font-family: "Noto Serif JP", sans-serif;
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
}
.progress_flow .progress.first{
	background: #fff;
	color: #6da1c3;
	border: solid 2px #8BBCD9;
}
.progress_flow .progress.middle{
	background: #8BBCD9;
	color: #fff;
}
.progress_flow .progress.severe{
	background: #487E9F;
	color: #fff;
}
@media screen and (max-width:640px) {
	.progress_flow{
		margin-bottom: 60px;
	}
	.progress_flow::before{
		left: 38px;
	}
	.progress_flow_box{
		gap: 20px;
	}
	.progress_flow_box:not(:last-of-type){
		margin-bottom: 50px;
	}
	.progress_flow .progress{
		width: 80px;
		height: 80px;
		font-size: 18px;
	}
}
.progress_flow .caption{
	margin-bottom: 20px;
	padding: 15px 0;
	color: #6da1c3;
	font-size: 22px;
	font-family: "Noto Serif JP", sans-serif;
	font-weight: bold;
	border-top: solid 1px #6CA1C3;
	border-bottom: solid 1px #6CA1C3
}
.progress_flow .caption + p{
	margin-bottom: 20px;
}
.progress_flow .list_table .list_title{
	background: #8bbcd9;
	padding: 10px 10px 12px 44px;
	color: #fff;
	font-size: 18px;
	font-family: "Noto Serif JP", sans-serif;
	position: relative;
}
.progress_flow .list_table .list_title::before{
	content: '';
	background: #fff;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 21px;
	left: 19px;
}
.progress_flow .list_table .normal_list_box{
	background: #fff;
	padding: 28px 10px 28px 30px;
}
.progress_flow .list_table .normal_list_box ul{
	display: flex;
	flex-wrap: wrap;
	gap: 25px 15px;
}
.progress_flow .list_table .normal_list_box ul li{
	min-width: fit-content;
	width: calc((100% - 60px) / 3);
	padding-left: 20px;
	font-weight: bold;
	position: relative;
}
.progress_flow .list_table .normal_list_box ul li::before{
	content: '';
	background: #8bbcd9;
	width: 10px;
	height: 10px;
	border-radius: 50px;
	position: absolute;
	top: 8px;
	left: 0;
}
@media screen and (max-width:640px) {

}

#about .list_box,
#about .checklist_box{
	background: #fff;
	margin: 0 20px;
	padding: 41px 95px 61px;
	border: solid 1px #8BBCD9;
	border-radius: 15px;
}
#about .list_box:not(:last-of-type){
	margin-bottom: 120px;
}
#about .checklist_box{
	margin-bottom: 60px;
}
#about .list_box .heading,
#about .checklist_box .heading{
	margin-bottom: 50px;
	color: #6da1c3;
	font-size: 26px;
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 600;
	text-align: center;
}
#about .checklist_box ul{
	margin-bottom: 50px;
	padding-bottom: 50px;
	display: flex;
	flex-wrap: wrap;
	gap: 20px 60px;
	position: relative;
}
#about .checklist_box ul::before{
	content: '';
	width: 70%;
	height: 3px;
	border-bottom: dotted 3px #6CA1C3;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
#developmental #about .checklist_box ul{
	margin-bottom: 0;
	padding-bottom: 0;
}
#developmental #about .checklist_box ul::before{
	border-bottom: none;
}
#about .checklist_box ul li{
	width: calc((100% - 60px) / 2);
	padding-left: 30px;
	font-size: 16px;
	font-weight: bold;
	position: relative;
}
#developmental #about .checklist_box ul li{
	width: 100%;
}
#about .checklist_box ul li::before{
	content: '';
	background: url(../images/common/check-icon.svg) no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 1px;
	left: 0;
}
#about .checklist_box .note{
	text-align: center;
	line-height: 2.67;
}
@media screen and (max-width:640px) {
	#about .checklist_box{
		margin: 0 20px 60px;
		padding: 20px 30px 30px;
	}
	#about .checklist_box ul{
		gap: 30px;
		flex-direction: column;
	}
	#about .checklist_box ul li{
		width: 100%;
	}
}

/*治療の流れ*/
#flow.sec{
	padding-top: 120px;
	padding-bottom: 150px;
}
.treatment_flow {
	margin-bottom: 65px;
	position: relative;
}
.treatment_flow::before{
	content: '';
	width: 3px;
	height: 100%;
	border-left: dotted 3px #6CA1C3;
	position: absolute;
	top: 0;
	left: 38px;
}

.treatment_flow_box {
	display: flex;
	gap: 50px;
}
.treatment_flow_box:not(:last-of-type){
	margin-bottom: 70px;
}
.treatment_flow_box .number {
	background: #6da1c3;
	width: 80px;
	height: 80px;
	color: #fff;
	font-size: 40px;
	font-family: "eb-garamond",serif;
	border-radius: 100px;
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
}
.treatment_flow_box .text {
	width: 100%;
}
.treatment_flow_box .caption {
	width: 100%;
	margin-bottom: 20px;
	padding-bottom: 5px;
	color: #6da1c3;
	font-size: 22px;
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 700;
	border-bottom: solid 1px #6CA1C3;
}
.treatment_flow_box .caption + p{
	line-height: 2.47;
}
@media screen and (max-width:640px) {
	#flow.sec{
		padding-top: 60px;
		padding-bottom: 70px;
	}
	#flow .heading_box .en{
		line-height: 1;
	}
	#flow .heading_box .heading{
		margin-top: 10px;
	}
	.treatment_flow {
		margin: 0 20px 65px;
	}
	.treatment_flow::before{
		left: 23px;
	}
	.treatment_flow_box{
		gap: 20px;
	}
	.treatment_flow_box .number {
		width: 50px;
		height: 50px;
		font-size: 30px;
	}
}

/*FAQ*/
#faq.sec{
	background: #f2f6f9;
	padding-top: 100px;
	padding-bottom: 160px;
}
.faq_box{
	background: #fff;
	margin: 0 20px;
	border-radius: 10px;
}
.faq_box:not(:last-of-type){
	margin-bottom: 30px;
}
.faq_box dt{
	padding: 22px 63px 23px 23px;
	color: #6da1c3;
	font-size: 18px;
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 600;
	border-radius: 10px;
	display: flex;
	align-items: center;
	position: relative;
	cursor: pointer;
}
.faq_box dt::before,
.faq_box dt::after{
	content: '';
	background: #6CA1C3;
	width: 26px;
	height: 1px;
	position: absolute;
	right: 22px;
	top: 50%;
	transition: all .5s ease;
}
.faq_box dt::after{
	transform: rotate(90deg);
}
.faq_box dt.close::after{
	transform: rotate(180deg);
}
.faq_box dt span{
	margin-right: 15px;
	color: #6da1c3;
	font-size: 35px;
	font-family: "eb-garamond",serif;
	font-weight: 500;
	line-height: 1;
	flex-shrink: 0;
}
.faq_box dd{
	display: none;
}
.faq_box dd div{
	padding: 0 63px 28px 23px;
	display: flex;
	align-items: flex-start;
}
.faq_box dd div span{
	margin-right: 15px;
	color: #e1882f;
	font-size: 35px;
	font-weight: bold;
	line-height: 1;
	font-family: "eb-garamond",serif;
}
.faq_box dd p{
	line-height: 2.27;
}
@media screen and (max-width:640px) {
	#faq.sec{
		padding-top: 50px;
		padding-bottom: 80px;
	}
}
/*===============================================================================

	発達障害ページ

===============================================================================*/
/*発達障害の分類*/
#developmental *{
	box-sizing: border-box;
}
#developmental img{
	max-width: 100%;
	height: auto;
}
.categorize_box .box_img{
	width: 811px;
	margin: 0 auto 100px;
}
#about .list_box ul{
	display: flex;
	flex-wrap: wrap;
	gap: 20px 60px;
}
#about .list_box ul li{
	width: 100%;
	padding-left: 30px;
	font-size: 16px;
	font-weight: bold;
	position: relative;
}
#about .list_box ul li::before{
    content: '';
    background: #8bbcd9;
    width: 10px;
    height: 10px;
    border-radius: 50px;
    position: absolute;
    top: 8px;
    left: 0;
}
@media screen and (max-width:640px) {
	#about .list_box{
		padding: 20px 30px 30px;
	}
	.categorize_box .box_img{
		width: 80%;
		margin: 0 auto 50px;
	}
}

/*===============================================================================

	適応障害ページ

===============================================================================*/
/*適応障害について*/
#adjustment *{
	box-sizing: border-box;
}
#adjustment img{
	max-width: 100%;
	height: auto;
}
#adjustment #about .col2-box.sm{
	flex-direction: row;
	gap: 40px;
}
#adjustment #about .col2-box.sm .box_img{
	width: 320px;
}
#adjustment #about .term_box .col2-box.sm {
	margin: 0;
}
#adjustment #about .list_box{
	margin: 0 auto 60px;
	padding: 41px 50px 51px;
}
#adjustment #about .list_box._mb60{
	margin: 0 auto 60px;
}
#adjustment #about .list_box._mb60 ul{
	width: fit-content;
	margin: 0 auto;
	flex-direction: column;
}
@media screen and (max-width:640px) {
	#adjustment #about .col2-box.sm{
		flex-direction: column;
		gap: 30px;
	}
	#adjustment #about .col2-box.sm .box_img{
		width: 100%;
	}
	#adjustment #about .list_box{
		padding: 20px 30px 30px;
	}
}

#adjustment .box_img.symptoms{
	width: 68.7%;
	margin: 0 auto 60px;
}
#adjustment h5.heading{
	margin-bottom: 5px;
	color: #63a4c1;
	font-size: 16px;
	font-weight: 700;
}
.symptoms_table{
	border: none;
}
.symptoms_table:not(:last-of-type){
	margin-bottom: 60px;
}
.symptoms_table tr{
	border: solid 1px #fff;
}
.symptoms_table tr th,
.symptoms_table tr td{
	padding: 10px 20px;
}
.symptoms_table tr th{
	background: #cbecf1;
	width: 30%;
	font-weight: bold;
}
.symptoms_table tr td{
	background: #fff;
	width: 70%;
}
@media screen and (max-width:640px) {
	#adjustment .box_img.symptoms{
		width: 100%;
	}
}

/*===============================================================================

	思春期・青年期カウンセリングページ

===============================================================================*/
#counselling *{
	box-sizing: border-box;
}
#counselling img{
	max-width: 100%;
	height: auto;
}
#counselling #sec_heading.sec{
	padding-top: 100px;
}
#counselling #sec_heading .col2-box{
	margin-bottom: 25px;
	flex-direction: row;
	align-items: center;
	gap: 42px;
}
#counselling #sec_heading .col2-box .box_img{
	width: 418px;
}
#counselling #sec_heading .col2-box .box_text{
	color: #6da1c3;
	font-size: 22px;
	font-family: "Noto Serif JP", sans-serif;
	line-height: 2.04;
}

#family .heading_box{
	margin-bottom: 0;
	display: flex;
	position: relative;
}
#family .heading_box::before{
	content: '';
	background: #8f7e59;
	width: 50%;
	height: 1px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
#family .heading_box .heading{
	background: #fff;
	margin-right: 10px;
	color: #d5e1e6;
	font-size: 78px;
	font-family: "eb-garamond", serif;
	font-weight: 400;
	position: relative;
	z-index: 1;
}
#family .heading_box .sub_heading{
	background: #fff;
	margin-top: 10px;
	color: #8f7e59;
	font-size: 32px;
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 600;
	text-align: left;
	line-height: 1.3;
	position: relative;
	z-index: 1;
}
#family .heading_box .sub_heading span{
	padding-right: 15px;
	font-size: 14px;
}
@media screen and (max-width:640px) {
	#counselling #sec_heading.sec{
		padding-top: 50px;
		margin-bottom: 60px;
	}
	#counselling #sec_heading .col2-box{
		margin: 0 20px;
		flex-direction: column;
		gap: 20px;
	}
	#counselling #sec_heading .col2-box .box_img{
		width: 100%;
	}
	#family.sec{
		margin-bottom: 100px;
	}
	#family .u-content{
		width: calc(100% - 40px);
		margin: 0 20px;
	}
	#family .heading_box{
		flex-direction: column;
	}
	#family .heading_box::before{
		content: none;
	}
	#family .heading_box .heading{
		font-size: 68px;
		text-align: left;
	}
	#family .heading_box .sub_heading{
		margin-top: -10px;
	}
	#family .heading_box .sub_heading::before{
		content: '';
		background: #8f7e59;
		width: 38%;
		height: 1px;
		position: absolute;
		right: 0;
		top: 77%;
		transform: translateY(-50%);
		z-index: 0;
	}
}

#family .col2-box.top{
	margin-top: -30px;
	align-items: center;
	flex-direction: row-reverse;
	gap: 20px;
}
#family .col2-box.top .box_img{
	width: 568px;
}
#family .col2-box.top .box_text{
	font-family: "Noto Serif JP", sans-serif;
}
#family .col2-box.top .box_text .heading{
	margin-bottom: 30px;
	color: #8f7e59;
	font-size: 24px;
	text-align: right;
	position: relative;
}
#family .col2-box.top .box_text .heading::before{
	content: '';
	background: #8F7E59;
	width: 35px;
	height: 1px;
	position: absolute;
	top: 22px;
	left: -50px;
}
#family .col2-box.top .box_text .note{
	width: fit-content;
	margin: 0 auto;
	font-size: 18px;
}
.highlighter{
	background: #f6f67f;
}
#family .box_body{
	margin-bottom: 40px;
	line-height: 2.13;
}
#family .box_body p:not(:last-of-type){
	margin-bottom: 1.5em;
}
#family .col2-box.bottom{
	line-height: 2.13;
	gap: 41px;
}
#family .col2-box.bottom .box_img{
	width: 393px;
}
@media screen and (max-width:640px) {
	#family .col2-box.top{
		margin-top: -10px;
		flex-direction: column;
		gap: 0;
	}
	#family .col2-box.top .box_img{
		width: 100%;
	}
	#family .col2-box.top .box_text{
		width: 100%;
		margin-bottom: 60px;
	}
	#family .col2-box.top .box_text .heading::before{
		left: 0;
	}
	#family .col2-box.bottom{
		flex-direction: column;
		gap: 20px;
	}
	#family .col2-box.bottom .box_img{
		width: 100%;
	}
	#family .box_body{
		margin-bottom: 100px;
	}
}

#counselling #message .box{
	margin-bottom: 224px;
}
#counselling #about .checklist_box ul{
	margin-bottom: 10px;
	padding-bottom: 0;
}
#counselling #about .checklist_box ul::before{
	border-bottom: none;
}
@media screen and (max-width:640px) {
	#counselling #message .box{
		margin-bottom: 60px;
	}
}
/*===============================================================================

	施設紹介ページ

===============================================================================*/
#clinic *{
	box-sizing: border-box;
}
#clinic img{
	max-width: 100%;
	height: auto;
}
/*当院の特徴*/
#feature.sec{
	padding-top: 100px;
	padding-bottom: 100px;
}
#feature .col2-box{
	gap: 45px;	
}
#feature .col2-box.reverse{
	flex-direction: row-reverse;
}
#feature .col2-box:not(:last-of-type){
	margin-bottom: 120px;
}
#feature .col2-box .box_img{
	width: 407px;
	position: relative;
}
#feature .col2-box .box_img .number{
	background: rgba(139, 188, 217,0.8);
	width: 78px;
	height: 78px;
	color: #fff;
	font-family: "eb-garamond", serif;
	font-size: 40px;
	font-weight: normal;
	border-radius: 100px;
	position: absolute;
	top: -40px;
	left: -40px;
	display: flex;
	justify-content: center;
	align-items: center;
}
#feature .col2-box .box_text{
	line-height: 2.13;
}
#feature .col2-box .box_text .heading{
	margin-bottom: 30px;
	color: #6da1c3;
	font-family: "Noto Serif JP", sans-serif;
	font-size: 28px;
	font-weight: 600;
	line-height: 1.5;
}
#feature .col2-box .box_text p:not(:last-of-type){
	margin-bottom: 1.5em;
}
@media screen and (max-width:640px) {
	#feature.sec{
		padding-top: 20px;
	}
	#feature .col2-box{
		margin: 0 20px;
		flex-direction: column;
		gap: 20px;	
	}
	#feature .col2-box.reverse{
		flex-direction: column;
	}
	#feature .col2-box .box_img{
		width: 100%;
	}
	#feature .col2-box .box_img .number{
		left: -20px;
	}
}

/*診察料金*/
#price.sec{}
#price .note{
	width: fit-content;
	margin: 0 auto 60px;
}
#price .feelist{
	border: none;
	border-collapse: collapse;
}
#price .feelist th{
	background: #f8f4de;
	padding: 20px 30px;
	width: 30%;
	font-weight: bold;
	border: solid 1px #E0D183;
}
#price .feelist td{
	padding: 20px 30px;
	border: solid 1px #E0D183;
}
#price .feelist td p:not(:last-of-type){
	margin-bottom: 1.5em;
}
#price .feelist td span{
	font-family: "游ゴシック体", "Yu Gothic", sans-serif;;
}
@media screen and (max-width:640px) {
	#price .heading_box .en{
		line-height: 1;
	}
	#price .note{
		margin: 0 20px 60px;
	}
	#price .feelist{
		margin: 0 20px;
	}
	#price .feelist th{
		padding: 20px 20px;
	}
	#price .feelist td{
		padding: 20px 20px;
	}
}

/*here*/

/*院内紹介*/
#introduction.sec{
	padding-top: 100px;
	padding-bottom: 160px;
}
#introduction .col2-box{
	flex-wrap: wrap;
	gap: 60px 40px;
}
#introduction .col2-box .box{
	width: calc((100% - 40px) / 2);
}
#introduction .col2-box .box_img{
	margin-bottom: 20px;
}
#introduction .col2-box .box_text .heading{
	margin-bottom: 20px;
	color: #63a4c1;
	font-size: 20px;
	font-family: "Noto Serif JP", sans-serif;
	text-align: center;
}
@media screen and (max-width:640px) {
	#introduction .col2-box{
		margin: 0 20px;
		flex-direction: column;
	}
	#introduction .col2-box .box{
		width: 100%;
	}
}

/*アクセス*/
#access.sec{
	padding-bottom: 160px;
}
#access .box_address{
	width: fit-content;
	margin: 0 auto 60px;
}
#access .box_map{
	width: 100%;
	height: 352px;
	margin-bottom: 120px;
}
#access .box_map iframe{
	width: 100%;
	height: 100%;
}
#access .term_box{
	margin: 0;
}
#access .term_box .note{
	margin-bottom: 10px;
	font-weight: bold;
	text-align: center;
}
#access .box_youtube{
	width: 62.3%;
	margin: 0 auto;
	border-radius: 20px;
	overflow: hidden;
	aspect-ratio: 16 / 9;
}
#access .box_youtube iframe{
	width: 100%;
	height: 100%;
}
@media screen and (max-width:640px) {
	#access.sec{
		padding-bottom: 80px;
	}
	#access .box_map{
		width: calc(100% - 40px);
		margin: 0 20px 60px;
	}
	#access .term_box{
		margin: 0 20px;
	}
	#access .box_youtube{
		width: 100%;
	}
}

/*===============================================================================

	院長紹介ページ

===============================================================================*/
#doctor *{
	box-sizing: border-box;
}
#doctor img{
	max-width: 100%;
	height: auto;
}

#greeting.sec{
	padding-top: 100px;
	padding-bottom: 160px;
}
#doctor #greeting .col2-box{
	margin-bottom: 30px;
	flex-direction: row-reverse;
	gap: 60px;
}
#doctor #greeting .col2-box .box_img{
	width: 350px;
}
#doctor #greeting .col2-box .box_text p:not(:last-of-type){
	margin-bottom: 1.5em;
}
#doctor dl.dotlist{
	margin-bottom: 30px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px 0;
}
#doctor .dotlist dt{
	width: 20%;
	padding-left: 18px;
	position: relative;
}
#doctor .dotlist dt::before,
#doctor .dotlist li:before{
	content: '';
	background: #8bbcd9;
	width: 10px;
	height: 10px;
	border-radius: 50px;
	position: absolute;
	top: 8px;
	left: 0;
}
#doctor .dotlist dd{
	width: 80%;
}

#doctor #biography .col2-box{
	flex-direction: row;
}
#doctor #biography .col2-box .item_box{
	width: calc((100% - 60px) / 2 );
}
#doctor #biography ul.dotlist li{
	padding-left: 18px;
	position: relative;
}
#doctor #biography ul.dotlist li:not(:last-of-type){
	margin-bottom: 10px;
}
@media screen and (max-width:640px) {
	#greeting.sec{
		padding-top: 50px;
		padding-bottom: 80px;
	}
	#doctor #greeting .col2-box{
		margin: 0 20px 30px;
		flex-direction: column;
		gap: 30px;
	}
	#doctor #greeting .col2-box .box_img{
		width: 80%;
		margin: 0 auto;
	}
	#biography{
		margin: 0 20px;
	}
	#doctor .dotlist dt{
		width: 32%;
	}
	#doctor .dotlist dd{
		width: 68%;
	}
	#doctor #biography .col2-box{
		margin: 0 auto 30px;
		flex-direction: column;
	}
	#doctor #biography .col2-box .item_box{
		width: 100%;
	}
	#doctor #biography ul.dotlist li{
		padding-left: 18px;
		position: relative;
	}
}

/*===============================================================================

	診療案内ページ

===============================================================================*/
#medical *{
	box-sizing: border-box;
}
#medical img{
	max-width: 100%;
	height: auto;
}

#information.sec{
	padding-top: 100px;
	padding-bottom: 160px;
}
#medical .term_box{
	margin-bottom: 60px;
}
#medical .col2-box{
	flex-direction: row-reverse;
	gap: 80px;
}
#medical .col2-box .box_img{
	width: 400px;
}
.txt_center{
	text-align: center;
}
#medical .btn_detail{
	background: #8bbcd9;
	width: 70%;
	margin-top: 30px;
	padding: 10px 10px 13px;
	color: #fff;
	font-size: 16px;
	font-family: "Noto Serif JP", sans-serif;
	text-align: center;
	letter-spacing: 0.1em;
	border: none;
	border-radius: 100px;
	cursor: pointer;
}
#medical .btn_detail:hover{
	opacity: 0.7;
}
@media screen and (max-width:640px) {
	#information.sec{
		padding-top: 50px;
		padding-bottom: 80px;
	}
	#medical .col2-box{
		flex-direction: column;
		gap: 30px;
	}
	#medical .col2-box .box_img{
		width: 100%;
	}
	#medical .btn_detail{
		width: 85%;
	}
}
/*===============================================================================

	予約フォームページ

===============================================================================*/
#form{
	padding-top: 100px;
	padding-bottom: 160px;
}
#form #form_box{
	width: 600px;
	margin: 0 auto;
}
#form #form_box .item{
	display: flex;
	flex-wrap: wrap;
}
#form #form_box .item:not(:last-of-type){
	margin-bottom: 1em;
}
#form #form_box .item .label{
	width: 40%;
	font-size: 16px;
	font-weight: bold;
}
#form #form_box .item .label .required{
	background: #d30000;
	margin-left: 1em;
	padding: 0.2em 0.25em;
	color: #fff;
	font-size: 11px;
	font-weight: bold;
	vertical-align: middle;
	border-radius: 3px;
}
#form #form_box .item .value{
	width: 60%;
}
#form #form_box .item .value input[type=text],
#form #form_box .item .value input[type=tel],
#form #form_box .item .value input[type=email],
#form #form_box .item .value textarea{
	width: 100%;
	padding: 0.25em 0.5em;
	font-size: 16px;
	box-sizing: border-box;
}
#form #form_box .item .value textarea{
	padding: 0.5em;
}
#form #form_box .item .value select{
	margin-right: 0.25em;
	padding: 0.25em 0.5em;
	font-size: 16px;
}
#form #form_box .confirmation span.wpcf7-list-item label{
	margin: 20px auto 0;
	text-align: center;
}
#form #form_box .btn{
	margin-top: 2em;
	text-align: center;
}
#form #form_box .btn input{
	background: #8bbcd9;
	width: 250px;
	height: 60px;
	margin: 0 auto;
	color: #fff;
	font-size: 18px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: none;
	border-radius: 100px;
	cursor: pointer;
}
#form #form_box .btn input:hover{
	opacity: 0.7;
}
@media screen and (max-width:640px) {
	#form #form_box{
		width: calc(100% - 40px);
		margin: 0 20px;
	}
	#form #form_box .item{
		flex-direction: column;
	}
	#form #form_box .item .label{
		width: 100%;
	}
	#form #form_box .item .value{
		width: 100%;
	}
}
.wpcf7-form-control.wpcf7-radio{
	display: flex;
}
.wpcf7-list-item{
	margin-left: 0;
	margin-right: 1em;
	font-size: 16px;
	display: flex;
}
.wpcf7-list-item input[type=radio]{
	margin-right: 0.25em;
}
.wpcf7-not-valid-tip{
	font-weight: bold;
}
.wpcf7 form #form_box .wpcf7-response-output{
	background: #d30000;
	color: #fff;
	font-weight: bold;
	text-align: center;
	border: none;
}


/*===============================================================================

	ショートコード

===============================================================================*/

/* 表示切り替え用 */
._pc{}._pc-inline{display:inline!important}._pc-table{display:none!important}._sp{display:none!important}._sp-inline{display:none!important}._sp-inline-ip{display:none!important}._sp-table{display:none!important}

@media screen and (max-width:640px) {
  ._pc{display:none!important}._pc-inline{display:none!important}._pc-table{display:table!important}._sp{display:block!important}._sp-inline{display:inline!important}._sp-table{display:table!important}._sp-center{text-align:center}
}

@media screen and (max-width:320px) {
  ._sp-inline-ip {
    display: inline!important;
  }
}

/* 汎用的なもの */
._left{text-align:left!important}._center{text-align:center!important}._right{text-align:right}._clear{clear:both}._clearfix:after{display:block;clear:both;content:""}._indent{margin-left:1em!important;text-indent:-1em}._vertical-top{vertical-align:top}._vertical-middle{vertical-align:middle}._vertical-bottom{vertical-align:bottom}._fr{float:right}._fl{float:left}._fr10{float:right;margin-left:10px}._fr15{float:right;margin-left:15px}._fr30{float:right;margin-left:15px}._fl10{float:left;margin-right:10px}._fl15{float:left;margin-right:15px}._fl30{float:left;margin-right:30px}

/* カラー */
._color-red{color:#f33}._color-pink{color:#ed8c96}._color-blue{color:#00408f}._color-green{color:#479f9d}._color-ore{color:#ff8327}._color-yellow{color:#ffeb8b}._color-beige{color:#dac58b}._color-brown{color:#9b8052}._color-navy{color:#1f2774}._color-black{color:#3e3a39}

/* フォントサイズ */
._text10{font-size:10px}._text11{font-size:11px}._text12{font-size:12px}._text13{font-size:13px}._text14{font-size:14px}._text15{font-size:15px}._text16{font-size:16px}._text17{font-size:17px}._text18{font-size:18px}._text19{font-size:19px}._text20{font-size:20px}._text21{font-size:21px}._text22{font-size:22px}._text23{font-size:23px}._text24{font-size:24px}._text25{font-size:25px}._text26{font-size:26px}._text27{font-size:27px}._text28{font-size:28px}._text29{font-size:29px}._text30{font-size:30px}._text31{font-size:31px}._text32{font-size:32px}._text33{font-size:33px}._text34{font-size:34px}._text35{font-size:35px}._text36{font-size:36px}._text37{font-size:37px}._text38{font-size:38px}._text39{font-size:39px}._text40{font-size:40px}

/* フォントウェイト */
._bold{font-weight:700}

/* 幅・余白 */
._w010par{width:10%}._w020par{width:20%}._w025par{width:25%}._w050par{width:50%}._w075par{width:75%}._w100par{width:100%}._w010{width:10px}._w020{width:20px}._w030{width:30px}._w040{width:40px}._w050{width:50px}._w060{width:60px}._w070{width:70px}._w080{width:80px}._w090{width:90px}._w100{width:100px}._w110{width:110px}._w120{width:120px}._w130{width:130px}._w140{width:140px}._w150{width:150px}._w160{width:160px}._w170{width:170px}._w180{width:180px}._w190{width:190px}._w200{width:200px}._w210{width:210px}._w220{width:220px}._w230{width:230px}._w240{width:240px}._w250{width:250px}._w255{width:255px}._w260{width:260px}._w270{width:270px}._w280{width:280px}._w290{width:290px}._w300{width:300px}._w305{width:305px}._w310{width:310px}._w320{width:320px}._w330{width:330px}._w340{width:340px}._w350{width:350px}._w360{width:360px}._w365{width:365px}._w370{width:370px}._w380{width:380px}._w390{width:390px}._w400{width:400px}._w410{width:400px}._w415{width:415px}._w420{width:420px}._w430{width:430px}._w435{width:435px}._w440{width:440px}._w450{width:450px}._w460{width:460px}._w470{width:470px}._w480{width:480px}._w490{width:490px}._w500{width:500px}._w510{width:510px}._w520{width:520px}._w530{width:530px}._w540{width:540px}._w550{width:550px}._w560{width:560px}._w570{width:570px}._w580{width:580px}._w590{width:590px}._w600{width:600px}._w610{width:610px}._w620{width:620px}._w630{width:630px}._w640{width:640px}._w650{width:650px}._w660{width:660px}._w670{width:670px}._w680{width:680px}._w690{width:690px}._w700{width:700px}._w710{width:710px}._w720{width:720px}._w730{width:730px}._w740{width:740px}._w750{width:750px}._w760{width:760px}._w765{width:765px}._w960{width:960px}._w980{width:980px}

._h030{height:30px}._h180{height:180px}._h190{height:190px}._h200{height:200px}._h240{height:240px}._h250{height:250px}._h280{height:280px}._h300{height:300px}._h350{height:350px}

._mt00{margin-top:0!important}._mt01{margin-top:1px}._mt02{margin-top:2px}._mt03{margin-top:3px}._mt04{margin-top:4px}._mt05{margin-top:5px}._mt06{margin-top:6px}._mt07{margin-top:7px}._mt08{margin-top:8px}._mt09{margin-top:9px}._mt10{margin-top:10px}._mt15{margin-top:15px}._mt20{margin-top:20px}._mt25{margin-top:25px}._mt30{margin-top:30px}._mt35{margin-top:35px}._mt40{margin-top:40px}._mt45{margin-top:45px}._mt50{margin-top:50px}._mt60{margin-top:60px}._mt70{margin-top:70px}._mt80{margin-top:80px}._mt90{margin-top:90px}._mt100{margin-top:100px}._mt110{margin-top:110px}._mt120{margin-top:120px}._mr00{margin-right:0!important}._mr01{margin-right:1px}._mr02{margin-right:2px}._mr03{margin-right:3px}._mr04{margin-right:4px}._mr05{margin-right:5px}._mr06{margin-right:6px}._mr07{margin-right:7px}._mr08{margin-right:8px}._mr09{margin-right:9px}._mr10{margin-right:10px}._mr15{margin-right:15px}._mr20{margin-right:20px}._mr25{margin-right:25px}._mr30{margin-right:30px}._mr35{margin-right:35px}._mr40{margin-right:40px}._mr45{margin-right:45px}._mr50{margin-right:50px}._mr60{margin-right:60px}._mr70{margin-right:70px}._mr80{margin-right:80px}._mr90{margin-right:90px}._mr100{margin-right:100px}._mb00{margin-bottom:0!important}._mb01{margin-bottom:1px}._mb02{margin-bottom:2px}._mb03{margin-bottom:3px}._mb04{margin-bottom:4px}._mb05{margin-bottom:5px}._mb06{margin-bottom:6px}._mb07{margin-bottom:7px}._mb08{margin-bottom:8px}._mb09{margin-bottom:9px}._mb10{margin-bottom:10px}._mb15{margin-bottom:15px}._mb20{margin-bottom:20px}._mb25{margin-bottom:25px}._mb30{margin-bottom:30px}._mb35{margin-bottom:35px}._mb40{margin-bottom:40px}._mb45{margin-bottom:45px}._mb50{margin-bottom:50px}._mb60{margin-bottom:60px}._mb70{margin-bottom:70px}._mb80{margin-bottom:80px}._mb90{margin-bottom:90px}._mb100{margin-bottom:100px}._ml00{margin-left:0!important}._ml01{margin-left:1px}._ml02{margin-left:2px}._ml03{margin-left:3px}._ml04{margin-left:4px}._ml05{margin-left:5px}._ml06{margin-left:6px}._ml07{margin-left:7px}._ml08{margin-left:8px}._ml09{margin-left:9px}._ml10{margin-left:10px}._ml12{margin-left:12px}._ml15{margin-left:15px}._ml20{margin-left:20px}._ml25{margin-left:25px}._ml30{margin-left:30px}._ml35{margin-left:35px}._ml40{margin-left:40px}._ml45{margin-left:45px}._ml50{margin-left:50px}._ml60{margin-left:60px}._ml70{margin-left:70px}._ml80{margin-left:80px}._ml90{margin-left:90px}._ml100{margin-left:100px}._ml140{margin-left:140px}._ml160{margin-left:160px}._ma10{margin:10px}._ma15{margin:15px}._ma-auto{margin-left:auto;margin-right:auto}

._pt00{padding-top:0!important}._pt01{padding-top:1px}._pt02{padding-top:2px}._pt03{padding-top:3px}._pt04{padding-top:4px}._pt05{padding-top:5px}._pt06{padding-top:6px}._pt07{padding-top:7px}._pt08{padding-top:8px}._pt09{padding-top:9px}._pt10{padding-top:10px}._pt15{padding-top:15px}._pt20{padding-top:20px}._pt25{padding-top:25px}._pt30{padding-top:30px}._pt35{padding-top:35px}._pt40{padding-top:40px}._pt45{padding-top:45px}._pt50{padding-top:50px}._pt60{padding-top:60px}._pt70{padding-top:70px}._pt80{padding-top:80px}._pt90{padding-top:90px}._pt100{padding-top:100px}._pt120{padding-top:120px}._pr00{padding-right:0!important}._pr01{padding-right:1px}._pr02{padding-right:2px}._pr03{padding-right:3px}._pr04{padding-right:4px}._pr05{padding-right:5px}._pr06{padding-right:6px}._pr07{padding-right:7px}._pr08{padding-right:8px}._pr09{padding-right:9px}._pr10{padding-right:10px}._pr15{padding-right:15px}._pr20{padding-right:20px}._pr25{padding-right:25px}._pr30{padding-right:30px}._pr35{padding-right:35px}._pr40{padding-right:40px!important}._pr45{padding-right:45px}._pr50{padding-right:50px}._pr60{padding-right:60px}._pr70{padding-right:70px}._pr80{padding-right:80px}._pr90{padding-right:90px}._pr100{padding-right:100px}._pb00{padding-bottom:0!important}._pb01{padding-bottom:1px}._pb02{padding-bottom:2px}._pb03{padding-bottom:3px}._pb04{padding-bottom:4px}._pb05{padding-bottom:5px}._pb06{padding-bottom:6px}._pb07{padding-bottom:7px}._pb08{padding-bottom:8px}._pb09{padding-bottom:9px}._pb10{padding-bottom:10px}._pb15{padding-bottom:15px}._pb20{padding-bottom:20px}._pb25{padding-bottom:25px}._pb30{padding-bottom:30px}._pb35{padding-bottom:35px}._pb40{padding-bottom:40px}._pb45{padding-bottom:45px}._pb50{padding-bottom:50px}._pb60{padding-bottom:60px}._pb70{padding-bottom:70px}._pb80{padding-bottom:80px}._pb90{padding-bottom:90px}._pb100{padding-bottom:100px}._pl00{padding-left:0!important}._pl01{padding-left:1px}._pl02{padding-left:2px}._pl03{padding-left:3px}._pl04{padding-left:4px}._pl05{padding-left:5px}._pl06{padding-left:6px}._pl07{padding-left:7px}._pl08{padding-left:8px}._pl09{padding-left:9px}._pl10{padding-left:10px}._pl15{padding-left:15px}._pl20{padding-left:20px}._pl25{padding-left:25px}._pl30{padding-left:30px}._pl35{padding-left:35px}._pl40{padding-left:40px}._pl45{padding-left:45px}._pl50{padding-left:50px}._pl60{padding-left:60px}._pl70{padding-left:70px}._pl80{padding-left:80px}._pl90{padding-left:90px}._pl100{padding-left:100px}._pa01{padding:1px}._pa02{padding:2px}._pa03{padding:3px}._pa04{padding:4px}._pa05{padding:5px}._pa10{padding:10px}._pa15{padding:15px}

@media screen and (max-width:640px) {
	._sp-mb00{margin-bottom:0!important}._sp-mr00{margin-right:0!important}._sp-ml00{margin-left:0!important}._sp-mt00{margin-top:0!important}._sp-pb00{padding-bottom:0!important}._sp-pr00{padding-right:0!important}._sp-pl00{padding-left:0!important}._sp-pt00{padding-top:0!important}
}