@charset "utf-8";

body {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
	color: #333;
	background-color: #FFF;
	margin: 0px;
	padding: 0px;
	line-height: 1em;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.8em;
	margin: 0px;
	padding: 0px;
	font-weight: bold;
}

p {
	line-height: 1.5em;
	margin: 1em 0px;
	padding: 0px;
	font-weight: normal;
	color: #3A4A9D;
}

a,
#nextSectionBtn {
	color: #333;
	text-decoration: none;
	word-break: break-all;
	-webkit-tap-highlight-color: transparent;
}

div {
	box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

table {
	border-collapse: collapse;
	width: 100%;
	margin-bottom: 32px;
}

table tr th,
table tr td {
	padding: 0.3em 1em;
	border: 1px solid #CCC;
}

table tr:nth-child(2n) {
	background-color: rgba(255, 255, 255, 0.5);
}

pre {
	padding: 1em;
	background-color: rgba(0, 0, 0, 0.05);
	border: 1px solid #CCC;
}

li {
	line-height: 1.8em;
}

section {
	clear: both;
	padding-top: 32px;
	padding-right: 0;
	padding-bottom: 32px;
	padding-left: 0;
}

section h2 {
	clear: both;
	text-align: center;
	margin-bottom: 20px;
	padding: 10px;
	font-size: 38px;
	line-height: 1.1em;
}


/*WordPress画像クラス*/

.alignleft {
	clear: both;
	float: left;
	margin-right: 32px;
	/* margin-bottom: 8px; */
}

.aligncenter {
	clear: both;
	margin-right: auto;
	margin-left: auto;
	display: block;
}

.alignright {
	clear: both;
	float: right;
	margin-left: 16px;
	/* margin-bottom: 8px; */
}

.alignnone {
	clear: both;
}


/* .size-thumbnail {
    width: 25%;
}

.size-medium {
    width: 50%;
}

.size-large {
    width: 100%;
    margin: 0 0 16px 0;
}

.size-full {
    max-width: 100%;
    margin-bottom: 16px;
} */


/* テンプレートCSSクラス */

.in100per {
	margin: 0px;
	padding: 0px;
	width: 100%;
	padding: 0px 1%;
}

.in400 {
	max-width: 400px;
	margin-right: auto;
	margin-left: auto;
	padding: 0px 1%;
}

.in600 {
	max-width: 600px;
	margin-right: auto;
	margin-left: auto;
	padding: 0px 1%;
}

.in960 {
	max-width: 960px;
	margin-right: auto;
	margin-left: auto;
	padding: 0px 1%;
}

.in1200 {
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
	padding: 0px 26px;
	overflow: hidden;
}

.cf:after {
	content: " ";
	display: block;
	clear: both;
}

.col16 {
	width: 15%;
	margin-top: .5em;
	margin-bottom: .5em;
	margin-left: 2%;
}

.col16:nth-child(6n+1) {
	margin-left: 0;
}

.col20 {
	width: 18%;
	margin-top: .5em;
	margin-bottom: .5em;
	margin-left: 2%;
}

.col20:nth-child(5n+1) {
	margin-left: 0;
}

.col25 {
	width: 23.5%;
	margin-top: .5em;
	margin-bottom: .5em;
	margin-left: 2%;
}

.col25:nth-child(4n+1) {
	margin-left: 0;
}

.col33 {
	width: 31.3333%;
	margin-top: .5em;
	margin-bottom: .5em;
	margin-left: 3%;
}

.col33:nth-child(3n+1) {
	margin-left: 0;
}

.col50 {
	width: 48%;
	margin-top: .5em;
	margin-bottom: .5em;
	margin-left: 2%
}

.col50:nth-child(2n+1) {
	margin-left: 0;
}


/*リード・セクションのバックカラー設定*/

.white {
	background-color: #FFF;
}

.lightbrown {
	background-color: #f6f3e1;
}

.lightgray {
	background-color: #f6f6f6;
}

.brown {
	background-color: #d1936e;
}

.yellow {
	background-color: #FFC;
}


/* Flexbox */

.flex-around {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}


/* 改行 */

.br-sm,
.br-tb {
	display: none;
}

.br-pc {
	display: block;
}


/* body */

#template {
	text-align: right;
	position: fixed;
	top: 0px;
	right: 0px;
	display: none;
}


/* ヘッダー */

#header {
	margin-bottom: 14px;
	/* padding-top: 14px; */
	position: relative;
	z-index: 1;
}

#header #g-navi {
	display: none;
}

#header>.in1200 {
	margin-top: 14px;
}

#header:after {
	content: " ";
	display: block;
	clear: both;
}

#header .logo {
	float: left;
	text-align: center;
}

#header .logo:hover {
	opacity: .8;
}

#header h1 {
	line-height: 1em;
	font-size: 12px;
	font-weight: normal;
}

#header .logo a {
	color: #4d4d4d;
}

#header .logo .img {
	font-size: 32px;
	font-weight: bold;
	padding-top: 1px;
	padding-bottom: 2px;
}

#header .contact {
	float: right;
	text-align: right;
	font-size: 15px;
	position: relative;
	line-height: 1.5em;
	color: #3A4A9D;
	padding-top: 10px;
	font-weight: bold;
}

#header .contact .header {
	display: inline-block;
}

#header .contact .tel {
	font-size: 28px;
	padding-top: 6px;
	display: inline-block;
}

#header .contact .tel a {
	color: #3A4A9D;
	pointer-events: none;
}


/* グローバルナビゲーション */

#g-navi {
	clear: both;
	text-align: center;
	position: relative;
	z-index: 100;
}

#g-navi ul {
	display: flex;
	justify-content: space-around;
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	align-items: stretch;
}

#g-navi ul li {
	overflow: hidden;
	flex-grow: 1;
	padding: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 26px;
	margin-left: 1px;
	/*line-height: 1em;*/
	line-height: 1em;
	background: url(../img/navi_ico.png) no-repeat center bottom;
}

/* #g-navi ul li.current-menu-item {
	background: url(../img/navi_ico_active.png) no-repeat center bottom;
} */

#g-navi ul li:first-child {
	margin-left: 0;
}

#g-navi ul li.last {
	width: 15%;
	background: none;
}

/* #g-navi ul li:before {
	content: '';
	display: flex;
	width: 1px;
	height: 30px;
	background-color: #B4B4B5;
	position: absolute;
	top: 8px;
} */

/* #g-navi ul li:last-of-type {
	background: none;
} */

/* #g-navi ul li:last-of-type a {
	background: #3A4A9D;
	color: #FFF;
} */

#g-navi ul li:last-of-type a:hover {
	opacity: .8;
}

#g-navi ul li a {
	position: relative;
	display: block;
	padding: 16px 0;
	height: 100%;
	color: #000;
	background: none;
}

/* #g-navi ul li a::before {
	position: absolute;
	bottom: 54px;
	left: 20%;
	content: '';
	width: 60%;
	height: 6px;
	background: #F6F6F6;
	transform: scale(0, 1);
	transform-origin: center top;
z-index: -1;
}*/

#g-navi ul li a:hover::before {
	transform: scale(1, 1);
}

#g-navi ul li:last-of-type a:hover::before {
	transform: scale(0, 1);
}

#s-menu,
#header .sp-header {
	display: none;
}


/* トップページ　メイン画像 */

#main {
	background-color: #eee;
	clear: both;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 35%;
}


/* リード文 */

#lead {
	padding: 26px 0 6px;
}

#lead:after {
	content: " ";
	display: block;
	clear: both;
}

#lead h1 {
	text-align: center;
	font-weight: normal;
	font-size: 32px;
	line-height: 1em;
}

#lead h1 img {
	margin-bottom: 0px;
}

#lead h2 {
	text-align: center;
	font-weight: normal;
	font-size: 32px;
	line-height: 1.4em;
	margin-bottom: 22px;
}

#lead h1 em,
#lead h2 em {
	font-size: 50%;
	font-style: normal;
	line-height: 1ex;
}

#top #lead ul {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}

#top #lead ul li .img {
	width: 100%;
	padding-top: 70%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

#page #lead h1 {
	color: #3A4A9D;
	font-weight: bold;
	font-size: 60px;
}

#page #lead .title {
	display: block;
	font-weight: normal;
	font-size: .4em;
	line-height: 1.5em;
}

body>article section .in1200,
body.news-page>.in1200>.flex-around {
	border: 1px solid #B5B5B6;
	max-width: calc(1200px - 52px);
	position: relative;
	padding: 0px 26px 20px;
}

body.news-page>.in1200>.flex-around {
	margin-top: 32px;
}

body>article section .in1200 h2,
body.news-page>.in1200>.flex-around h1,
body.news-page>.in1200>.flex-around h2 {
	position: relative;
	color: #3A4A9D;
	padding: 26px 0 10px;
	clear: both;
	text-align: center;
	margin-bottom: 20px;
	font-size: 38px;
	line-height: 1.1em;
}

body>article section .in1200>.title,
body.news-page>.in1200>.flex-around .title {
	display: block;
	font-weight: normal;
	font-size: .5em;
	line-height: 1.3em;
}

body>article section .in1200 h2::before,
body.news-page>.in1200>.flex-around h1::before,
body.news-page>.in1200>.flex-around h2::before {
	position: absolute;
	top: 0;
	left: calc(50% - 86px);
	content: '';
	width: 172px;
	height: 9px;
	background: #3A4A9D;
}

#top section .in1200 p>a:first-of-type {
	position: absolute;
	right: 26px;
	top: 26px;
	background: #3A4A9D;
	color: #FFF;
	padding: 6px 20px;
}

#top section .in1200 p>a:first-of-type:hover {
	opacity: .8;
}

.news_list {
	margin: 0px;
	list-style-type: none;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 1px;
	padding-left: 0px;
	justify-content: flex-start;
}

.news_list a {
	display: block;
	padding: 0;
	color: #333;
	overflow: hidden;
	min-width: 140px;
	/* height: 100%; */
}

.news_list .col16 h3,
.news_list .col33 h3 {
	padding-top: .5em;
	min-height: 1.5em;
}

.news_list a:hover {
	opacity: .8;
}

.news_list .img {
	height: 0px;
	width: 100%;
	padding-top: 60%;
	padding-bottom: 0%;
	background-image: url("../img/logo_eyecatch.png");
	/* background-size: cover; */
	background-repeat: no-repeat;
	background-position: center center;
	padding-right: 0px;
	padding-left: 0px;
	border: 1px solid #CCC;
	background-size: cover;
}

.news_list .img.none {
	background-size: auto;
}

.content {
	position: relative;
}

.news_list .content {
	font-size: 14px;
}

.news_list h3 {
	color: #3A4A9D;
	font-size: 17px;
	font-weight: bold;
	line-height: 1.3em;
	padding-top: 2em;
	min-height: 2.6em;
}

.news_list p {
	color: #333;
	line-height: 1.3em;
	margin-top: 4px;
	margin-bottom: 4px;
}

#top .news_list .more {
	display: none;
}

.more,
.news_list .more {
	background: #3A4A9D;
	color: #FFF;
	margin: 14px auto 0;
	padding: 8px 24px;
	display: block;
	text-align: center;
	width: fit-content;
	max-width: 176px;
}

.date {
	display: inline;
	position: absolute;
	top: .4em;
	right: 120px;
	line-height: 1em;
}

.news_list .date {
	font-size: 12px;
	top: 1em;
	left: 0;
}

.category {
	display: inline;
	font-size: 14px;
	line-height: 1em;
	position: absolute;
	right: 0;
	top: 0;
	background: #3A4A9D;
	color: #FFF;
	padding: 6px 16px;
}

.category.comp {
	background: #00913A;
}

.category.info {
	background: #00A29A;
}

.category.recruit {
	background: #EE7800;
}

/* .content_body {
	padding: 1.5em 1em 1em;
	min-height: 300px;
} */

.single .category,
.single .date,
.single .post-edit {
	position: relative;
	float: right;
	margin: 0;
}

.single .date {
	right: 22px;
}

.single .post-edit {
	right: 38px;
	margin-top: 2px;
}

#page table {
	max-width: 780px;
	margin: 0 auto 2em;
	color: #3A4A9D;
	line-height: 1.4em;
}

#page th {
	background: rgba(58, 74, 157, .1);
	width: 26%;
	border-right: 1px solid rgba(58, 74, 157, .1);
}

#page th,
#page td {
	padding: 12px 20px;
}

#page td p {
	margin: 0 0 6px;
}

#page td p:last-child {
	margin: 0;
}


/* Googleマップ */

#top #map_canvas {
	background-color: #C6B6AD;
	height: 500px;
	width: 100%;
	margin-top: 20px;
	position: relative;
	overflow: hidden;
	padding: 0;
}

#map_canvas p {
	margin: 0;
	padding: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
}

/* お知らせ */

.bread {
	color: #666;
	margin: .5em 1em .5em 0;
}

.bread a {
	text-decoration: underline;
}

#category-nav {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 20px;
}

#category-nav h3 {
	color: #3A4A9D;
	font-size: 30px;
	font-size: 26px;
	margin-top: 24px;
	margin-bottom: 14px;
	border-bottom: 3px dotted #CCC;
}

#category-nav h3:first-child {
	margin-top: 0;
}

#category-nav a {
	color: #3A4A9D;
	text-decoration: underline;
	padding: 4px 10px;
	font-size: 18px;
	margin: 4px;
}

.single .pagination .next {
	float: left;
}

.single .pagination .prev {
	float: right;
}

.pagination {
	text-align: center;
	margin: 27px 0 0 0;
}

.pagination span,
.pagination a {
	padding: 0;
	font-weight: bold;
	margin: 0;
	display: inline-flex;
	border: unset;
	border-radius: 26px;
	width: 79px;
	height: 41px;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	background: unset;
}

.pagination span.dots,
.pagination span {
	color: #113478;
	background-color: #EBEBEB;
}

.pagination a {
	color: #ffffff;
	background-color: #6CB02F;
}

.pagination a:hover {
	opacity: .8;
}


/* 個別ページ */

#single #lead h1 {
	font-weight: normal;
}

#single #lead .img {
	max-width: 300px;
	background-size: cover;
	display: block;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 16px;
	clear: both;
	border: 1px solid #CCC;
	background-color: #FFF;
}

#single #lead .img img {
	width: 100%;
}

#single #lead .category {
	float: right;
	border-radius: 30px;
	margin-bottom: 16px;
	padding-top: 3px;
	padding-right: 1em;
	padding-bottom: 3px;
	padding-left: 1em;
	font-size: 12px;
}

#single #lead .date {
	float: right;
	padding-top: 3px;
	padding-bottom: 3px;
	padding-left: 16px;
	font-size: 12px;
}

#single #lead .content {
	clear: both;
}

#contact input,
#contact select,
#contact textarea {
	font-size: 16px;
}

.main_column {
	width: 75%;
}

.main_column .col25 {
	width: 32%;
}

.main_column .col25:nth-child(4n+1) {
	margin-left: 2%;
}

.main_column .col25:nth-child(3n+1) {
	margin-left: 0;
}

.main_column>article {
	position: relative;
}

.main_column>article>header {
	width: 133.33%;
}

.main_column>article>section {
	padding-top: 0;
}

.side_bar {
	width: 25%;
	margin-top: 80px;
}


/* フッター */

#footer {
	color: #FFF;
	clear: both;
	width: 100%;
	position: relative;
	margin-top: 70px;
}

#footer .flex-around {
	border-radius: 20px 20px 0 0;
}

#footer .flex-around>div {
	justify-content: center;
	padding: 20px;
}

#footer ul {
	list-style-type: none;
	font-weight: bold;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 50px 6px 0;
	padding-left: 0;
}

#footer li {
	padding: 0 1em;
}

#footer a {
	color: #FFF;
}

#footer p {
	color: #FFF;
	margin: 2px;
}

#gotop {
	/* position: fixed; */
	/* z-index: 100; */
	position: absolute;
	top: -35px;
	left: calc(50% - 36px);
}

@media (max-width: 1199px) {
	.in1200 {
		padding: 0 20px;
	}

	body>article section .in1200 {
		width: calc(100% - 40px);
	}

	#footer .in1200 {
		padding: 0;
	}

	#footer .flex-around {
		border-radius: 0;
	}

	.col16 {
		width: 32%;
		margin-bottom: 1em;
	}

	.col16:nth-child(6n+4) {
		margin-left: 0;
	}

	#main {
		padding-top: 35vw;
	}

	/* #top .description img {
		max-width: 50%;
		margin-bottom: 8px;
	} */

	#top section .in1200 p>a:first-of-type {
		right: 20px;
	}
}


/**
 * ワイド幅、全幅のスタイル定義
 */

.alignwide {
	width: calc(100% + 200px);
	margin: 0 0 1rem -100px;
}

.alignfull {
	width: calc(100% + 100vw);
	margin: 0 0 1rem -50vw;
}

.alignfull img {
	display: block;
	margin: 0 auto;
	max-width: 100vw;
	height: auto;
}

/* 20241031 ティザー */
/* 共通 */
.pc-only {
	display: block;
}

.sp-only {
	display: none;
}

#main {
	display: none;
	visibility: hidden;
}

#article {
	padding-top: 16vh;
	position: relative;
	background-color: #E7F1FE;
}

p,
#page #about ol li,
#page #first #sect3 ul li,
#page #faq .faq-answer li,
#page #top #faq-accord .faq-answer li {
	color: #113478;
}

.scdown {
	position: relative;
}

.lead-down .next_btn,
.scdown .next_btn {
	position: absolute;
	width: 50px;
	height: 230px;
	pointer-events: all;
	cursor: pointer;
	background-image: url(../img/teaser/scroll-down.svg);
	background-repeat: no-repeat;
}

.lead-down .next_btn {
	right: 4.5%;
	bottom: 97.3px;
}

.scdown .next_btn {
	right: -78px;
	bottom: 0;
}

#top #at-first .scdown .next_btn {
	top: 0;
	bottom: unset;
}

section:last-child .scdown .next_btn {
	display: none;
}

.upper1023 {
	line-height: 1rem;
}

.under1023 {
	display: none !important;
}

/* ヘッダー */
#top .sp-header,
#top .header-sp-tel {
	display: none !important;
}

#header>.in100per {
	margin: 0;
	padding: 0 0 0 32px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#header {
	margin-bottom: 0;
	height: calc(16.11vh - 2.59vh);
	padding-top: 2.59vh;
	position: fixed;
	top: 0;
	width: 100%;
	background-color: #ffffff;
	z-index: 2;
}

#header .header-flex {
	display: flex;
	align-items: center;
}

#header .logo {
	float: unset;
	text-align: unset;
	margin-right: 70px;
}

#header .logo img {
	height: 10.655vh;
}

#header .contact {
	float: unset;
	text-align: unset;
	color: #113478 !important;
}

#header .contact .tel a {
	color: #113478;
}

#header .contact .header {
	font-size: 2.25rem;
}

#header .contact .tel {
	font-size: 2.625rem;
	padding-top: unset;
}

#header .contact .footer {
	font-size: 2vh;
	font-weight: normal;
	margin: 5px 0 7px 0;
	text-align: justify;
	text-align-last: justify;
}

#header .head-gmap {
	color: #ffffff;
	font-size: 12px;
	width: 100%;
	max-width: 204px;
	height: 3.057vh;
	background-color: #113478;
	border-radius: 100px;
	display: flex;
	align-items: center;
	justify-content: space-evenly;
}

#header .head-gmap .larger {
	font-size: 18px;
	padding-top: 2px;
}

#header .mailer {
	width: fit-content;
	margin-right: 53px;
}

#header .open-hour {
	width: 41.58%;
	height: 8.43vh;
	border: 3px solid #113478;
	border-right: none;
	border-radius: 100px 0 0 100px;
	display: flex;
	align-items: center;
	box-shadow: 5px 10px 8px -5px rgb(0, 0, 0, 0.16);
	justify-content: center;
	padding-top: 6px;
}

#top #header .open-hour {
	/* ティザーのみ */
	display: none;
}

#header .open-hour .at-title {
	font-size: 1.5rem;
	font-weight: bold;
	color: #113478;
	font-family: Shin Maru Go Regular, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin-right: 37px;
}

#page #header .open-hour .at-title:first-child {
	margin-right: 0;
}

#header .open-hour .time-body,
#header .open-hour .hour-time {
	font-size: 1.967rem;
	font-weight: bold;
	color: #113478;
}

#header .open-hour .time-body {
	display: flex;
	align-items: center;
}

#header .open-hour .time-body p {
	margin: -4px 0 0 0;
}

/* ナビゲーション */
#top #g-navi,
#top #s-menu {
	display: none;
}

/* ヘッダー */
#gotop {
	right: 37px;
	left: unset;
	z-index: 3;
	top: -330px;
	bottom: 62px;
}

#footer {
	height: 174px;
	margin-top: 0;
	background-color: #113478;
	display: flex;
	align-items: flex-end;
}

#footer .in100per {
	padding: 0;
}

#footer .flex-around {
	background-color: #113478;
	justify-content: space-between;
	flex-wrap: nowrap;
}

#footer .flex-around>div {
	padding: 0;
	width: -webkit-fill-available;
}

#footer p {
	margin: 0 0 5px 0;
}

#footer .ft-flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin: 0 161px 19px 41px;
}

#footer .ft-flex .ft-left {
	display: flex;
	align-items: flex-end;
}

#footer .ft-flex .ft-left h4 {
	margin-right: 20px;
}

#footer .ft-flex .ft-left .ft-marginal {
	margin: 0 16px 5px 0;
}

/* リード */
#lead {
	padding: 0;
}

.teaser-top-lead {
	background-image: url(../img/teaser/aurora_bg.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: relative;
	background-color: rgba(255, 255, 255, 0.65);
	background-blend-mode: lighten;
	height: calc(1080px - 174px);
	padding: 45px 0 0 0;
}

.teaser-top-lead .lead-photo {
	position: relative;
}

.teaser-top-lead .lead-photo::before {
	content: '';
	position: absolute;
	bottom: 9vh;
	left: 70px;
	width: 27%;
	max-width: 501px;
	height: 30.325vh;
	background-image: url(../img/teaser/teaser-leadimg.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

.teaser-top-lead .lead-photo img {
	height: 40.649vh;
	display: block;
	width: 68%;
	max-width: calc(1318px - 17px);
	margin: 0 0 0 auto;
	border-radius: 61px 0 0 61px;
	object-fit: cover;
	object-position: 0 80%;
}

.teaser-top-lead .message_open {
	position: absolute;
	top: 34vh;
	right: 14%;
	max-width: 35.83%;
}

.teaser-top-lead .message_open img {
	width: 100%;
	height: auto;
}

.teaser-top-lead .message_open p {
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	margin: 28px 0 0 0;
	padding: 0 10px;
}

/* サイドメニュー */
.info-bar {
	position: fixed;
	z-index: 10;
	left: 0;
	bottom: 7vh;
	max-width: 38vw;
}

.info-bar .btn-close {
	position: absolute;
	width: 40px;
	height: 40px;
	right: -21px;
	background-color: #002867;
	border-radius: 100%;
	cursor: pointer;
}

/* サイドバー格納アニメ */
.info-bar #biz-hours.panelactive,
.info-bar #access-map.panelactive {
	left: -638px;
}

.info-bar #biz-hours .btn-close::before,
.info-bar #access-map .btn-close::before {
	content: '';
	position: absolute;
	top: 11px;
	right: 9px;
	width: 18px;
	height: 18px;
	background-image: url(../img/teaser/close-arrow.svg);
	background-repeat: no-repeat;
	background-size: cover;
}

.info-bar #biz-hours .btn-close.active::before,
.info-bar #access-map .btn-close.active::before {
	transform: translateX(-4px) rotate(-180deg);
}

/* アニメここまで */

.info-bar #biz-hours {
	border: 3px solid #113478;
	border-left: none;
	border-radius: 0 24px 24px 0;
	background-color: rgba(255, 255, 255, 0.95);
	padding: 19px 0 0 24px;
	display: flex;
	align-items: center;
	box-shadow: 5px 10px 8px -5px rgba(0, 0, 0, 0.16);
	position: relative;
	left: 0;
	transition: all 0.6s;
}

.info-bar #biz-hours table {
	margin-bottom: 0;
}

.info-bar #biz-hours table tr th,
.info-bar #biz-hours table tr td {
	border-top: none;
	border-right: none;
	border-left: none;
	padding: 0 13px;
	text-align: center;
}

.info-bar #biz-hours table tr:nth-child(2n) {
	background-color: unset;
}

.info-bar #biz-hours table tr:last-child td {
	border-bottom: none;
}

.info-bar #biz-hours .time_char {
	font-size: 26px;
	font-weight: bold;
	color: #113478;
}

.info-bar #biz-hours .weekdays,
.info-bar #biz-hours .weekend,
.info-bar #biz-hours .holiday {
	font-size: 24px;
	font-weight: bold;
	color: #113478;
	padding-top: 6px;
	padding-bottom: 20.7px;
}

.info-bar #biz-hours .weekdays {
	color: #113478;
}

.info-bar #biz-hours .weekend {
	color: #2693D2;
}

.info-bar #biz-hours .holiday {
	color: #B83232;
}

.info-bar #biz-hours table tr:nth-child(2) td,
.info-bar #biz-hours table tr:last-child td {
	padding-top: 36px;
	padding-bottom: 36px;
}

.info-bar #biz-hours .closed {
	font-size: 17px;
	color: #113478;
}

.info-bar #biz-hours .hours-title,
.info-bar #access-map .map-title2 {
	position: relative;
	font-size: 26px;
	font-weight: bold;
	color: #113478;
	writing-mode: tb;
	padding: 0 41px 0 22px;
}

.info-bar #biz-hours .hours-title::before {
	content: '';
	position: absolute;
	top: -33px;
	right: 36.2px;
	width: 25px;
	height: 25px;
	background-image: url(../img/teaser/clock.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

.info-bar #biz-hours .btn-close {
	top: 111px;
	transition: 0.3s;
}

.info-bar #access-map {
	margin-top: 15px;
	border: 3px solid #113478;
	border-left: none;
	border-radius: 0 30px 30px 0;
	position: relative;
	box-shadow: 5px 10px 8px -5px rgba(0, 0, 0, 0.16);
	line-height: 0;
	left: 0;
	transition: all 0.6s;
	background-color: rgba(255, 255, 255, 0.95);
}

.info-bar #access-map .map-title {
	position: absolute;
	top: -35px;
	left: 62px;
	display: flex;
	align-items: center;
	font-size: 19px;
	font-weight: bold;
	color: #113478;
	width: 100%;
}

.info-bar #access-map .map-title img {
	margin-right: 20.2px;
}

.info-bar #access-map .map-inner {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.info-bar #access-map .map-body {
	overflow: hidden;
	/* border-radius: 0 30px 30px 0; */
	position: relative;
	width: 100%;
	max-width: calc(100% - 79px);
}

.info-bar #access-map .map-body iframe {
	border: 0;
	width: 100%;
}

.info-bar #access-map .btn-close {
	top: 60px;
}



.info-bar #access-map .map-title2 {
	width: 79px;
	padding-right: 50px;
}

/* 本文 */
/* 共通 */
section {
	padding: 0 8.5% 0 0;
}

section .in100per {
	padding: 0;
}

.section-border {
	width: 55%;
	max-width: 940px;
	border: 5px solid #113478;
	border-radius: 30px;
	background-color: #ffffff;
	margin: 0 0 0 auto;
	position: relative;
}

#info {
	padding-top: 61.7px;
	padding-bottom: 92px;
}

/* ティザーの本文 */
#info .section-border {
	padding: 44.5px 88px 33.5px 88px;
}

#info .section-border::before {
	content: '';
	position: absolute;
	top: 0;
	left: -72%;
	width: 57%;
	max-width: 526px;
	height: 100%;
	max-height: 348px;
	background-image: url(../img/teaser/teaser_guidance.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#info .icon-clm {
	display: flex;
	flex-direction: column;
	align-items: center;
}

#info .icon-row {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	position: relative;
	width: 100%;
	justify-content: space-evenly;
	padding-bottom: 45px;
}

#info .icon-row:nth-child(n+2) {
	padding-top: 45px;
}

#info .icon-row::after {
	content: '';
	position: absolute;
	bottom: 0;
	background: radial-gradient(circle farthest-side, #B2B2B2, #B2B2B2 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#info .inner-icon,
#info .icon-other {
	font-size: 30px;
	font-weight: bold;
	color: #113478;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: fit-content;
	line-height: 2rem;
	text-align: center;
}

#info .inner-icon img {
	margin-top: 20px;
}

#info .icon-other {
	padding-top: 23px;
}

#at-first {
	padding-top: 118px;
	padding-bottom: 107.7px;
}

#at-first .section-border {
	padding: 53.3px 88px 94.7px 88px;
}

#at-first .section-border:before {
	content: '';
	position: absolute;
	top: -95px;
	left: -98.5%;
	width: 81%;
	max-width: 741.64px;
	height: 100%;
	max-height: 348.05px;
	background-image: url(../img/teaser/teaser_atfirst.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#at-first h3 {
	font-size: 40px;
	color: #113478;
	text-align: center;
	margin: 0 0 42px 0;
	position: relative;
}

#at-first h3:first-child:before {
	content: '';
	position: absolute;
	top: -180px;
	left: 46%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-46%);
	-ms-transform: translateX(-50%);
	width: 226px;
	height: 177px;
	background-image: url(../img/teaser/illust_beginner.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#at-first p {
	color: #113478;
	margin: 0 0 59px 0;
	font-size: 22px;
	font-weight: bold;
	line-height: 2.5rem;
}

#at-first .w490::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom: 0;
	background: radial-gradient(circle farthest-side, #113478, #113478 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	max-width: 490px;
	height: 5px;
}

#at-first .w310::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom: 0;
	background: radial-gradient(circle farthest-side, #113478, #113478 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	max-width: 310px;
	height: 5px;
}

#at-first .af-caution,
#page #first .af-caution {
	border: 2px solid #113478;
	border-radius: 20px;
	padding: 20px 25px;
	position: relative;
	margin: 99px auto 0 auto;
	width: 100%;
	max-width: 612px;
}

#at-first .af-caution::before,
#page #first .af-caution::before {
	content: '';
	position: absolute;
	top: -86px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width: 93px;
	height: 99px;
	background-image: url(../img/teaser/icon_exclamation.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#at-first .af-caution p,
#page #first .af-caution p {
	margin: 0;
}

#faq-accord {
	padding-top: 3px;
	padding-bottom: 111.7px;
}

.faq_list {
	width: 55%;
	max-width: 940px;
	margin: 0 0 0 auto;
	position: relative;
}

#faq-accord .faq_list:before {
	content: '';
	position: absolute;
	top: 35px;
	left: -68%;
	width: 45%;
	max-width: 415.4px;
	height: 351.25px;
	background-image: url(../img/teaser/teaser_faq.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

.faq_list,
.faq_list>li {
	padding-left: 0;
}

#faq-accord .faq_list>li {
	border: 5px solid #113478;
	border-radius: 42px;
	background-color: #ffffff;
	position: relative;
	list-style: none;
	transition: all .5s ease;
	margin-bottom: 16px;
}

#faq-accord .faq_list>li:last-child {
	margin-bottom: 0;
}

/* FAQアコーディオンアニメ */
.faq-box {
	position: relative;
	cursor: pointer;
	font-size: 24px;
	padding: 16px 37px 13px 105px;
}

/*アイコンの＋と×*/
.faq-box::after {
	content: '';
	position: absolute;
	top: 29px;
	right: 37px;
	width: 37px;
	height: 21px;
	background-image: url(../img/teaser/faq_triangle.svg);
	background-repeat: no-repeat;
	background-size: cover;
	transition: all .5s ease;
}

.faq-box.close::after {
	transform: rotate(180deg);
}

/*アコーディオンで現れるエリア*/
.faq-box-inner {
	display: none;
	padding: 0 60px 20px 0;
}

/* アニメここまで */
.faq-box h3 {
	font-size: 24px;
	color: #113478;
	position: relative;
	padding-right: 50px;
}

.faq-box h3::before {
	content: '';
	position: absolute;
	top: 2px;
	left: -54.83px;
	width: 37.43px;
	height: 30.7px;
	background-image: url(../img/teaser/question_char.svg);
	background-repeat: no-repeat;
	background-size: cover;
}

.answer-body {
	margin: 0;
	font-size: 18px;
	position: relative;
}

.answer-body::before {
	content: '';
	position: absolute;
	top: 2px;
	left: -54.83px;
	width: 35.43px;
	height: 27.34px;
	background-image: url(../img/teaser/answer_char.svg);
	background-repeat: no-repeat;
	background-size: cover;
}

/* アクセス */
#access {
	padding-top: 3px;
	margin-bottom: -98px;
	position: relative;
	z-index: 1;
}

#access .section-border {
	padding: 53px 86px 0 86px;
}

#access .section-border:before {
	content: '';
	position: absolute;
	top: 25px;
	left: -68%;
	width: 45%;
	max-width: 415.4px;
	height: 100%;
	max-height: 351.25px;
	background-image: url(../img/teaser/teaser_access.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#access .ac-adress img,
#about .ac-adress img {
	width: 100%;
	max-width: 768px;
	height: auto;
	max-height: 335px;
	object-fit: cover;
	object-position: 0 75%;
	border-radius: 25px;
}

#access h4 {
	border: 5px solid #113478;
	border-radius: 42px;
	color: #113478;
	font-size: 34px;
	width: 100%;
	max-width: 480px;
	margin: 0 auto;
	text-align: center;
	padding-top: 3px;
}

#access p,
#about .ac-adress p {
	font-size: 28px;
	font-weight: bold;
	text-align: center;
}

#access .g-map,
#about .g-map {
	color: #ffffff;
	font-size: 17px;
	font-weight: bold;
	width: 100%;
	max-width: calc(284px - 57.5px);
	height: 46px;
	background-color: #113478;
	border-radius: 100px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 20.5px 0 37px;
	margin: 29px auto 0 auto;
	cursor: pointer;
}

#access .g-map .larger,
#about .g-map .larger {
	font-size: 26px;
}

#access .ac-adress,
#access .ac-info,
#about .ac-adress,
#about .ac-info {
	position: relative;
	margin-bottom: 50px;
	padding-bottom: 25px;
}

#access .ac-adress::after,
#access .ac-info::after,
#about .ac-adress::after,
#about .ac-info::after {
	content: '';
	position: absolute;
	bottom: 0;
	background: radial-gradient(circle farthest-side, #B2B2B2, #B2B2B2 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page #access {
	display: none;
}

/* 共通パーツ（本番） */
#page #header .mailer {
	margin-right: 0;
	height: 9.35vh;
}

#page #header .mailer.upper1023 img {
	height: 9.35vh;
}

#g-navi {
	position: fixed;
	top: 16vh;
	width: 100%;
}

#g-navi ul li {
	flex-grow: unset;
	width: 20%;
	height: 5.371vh;
	margin-bottom: 0;
	margin-left: 0;
	line-height: 1em;
	background: unset;
}

#g-navi ul li.menu-item-has-children:hover,
#g-navi ul li.menu-item-204:hover {
	overflow: visible;
}

/* #g-navi ul li.current_page_item:hover {
	overflow: hidden;
} */

#g-navi .menu-item-has-children,
#g-navi ul li.menu-item-204 {
	position: relative;
}

#g-navi .menu-item-has-children ul,
#g-navi ul li.menu-item-204 ul {
	visibility: hidden;
	position: absolute;
	opacity: 0;
	top: 5.4vh;
	width: 100%;
	background: rgba(255, 255, 255, 0.95);
	padding: 8px 17px 0 17px;
	bottom: auto;
	border: 1px solid #113478;
	border-radius: 0 15px 15px 15px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#g-navi .menu-item-has-children:hover ul,
#g-navi ul li.menu-item-204:hover ul {
	visibility: visible;
	opacity: 1;
	width: 150%;
	left: 0;
	z-index: 1;
}

#g-navi .menu-item-has-children ul li,
#g-navi ul li.menu-item-204 ul li {
	margin-bottom: 0;
	margin-left: 0;
	position: relative;
}

#g-navi .menu-item-has-children ul a,
#g-navi ul li.menu-item-204 ul a {
	visibility: hidden;
	position: relative;
	opacity: 0;
	font-size: 24px;
	color: #fff;
	padding: 20px 0;
	transition: ease-in-out .3s;
}

#g-navi .menu-item-has-children:hover ul a,
#g-navi ul li.menu-item-204:hover ul a {
	visibility: visible;
	margin-right: 0;
	opacity: 1;
	text-align: left;
}

#g-navi ul li:nth-child(odd) {
	background-color: #0080CB;
}

#g-navi ul li:nth-child(even) {
	background-color: #113478;
}

#g-navi ul li .sub-menu li {
	background-color: unset;
	flex-grow: 1;
	width: fit-content;
	padding: 0 10px;
}

#g-navi ul li .sub-menu li::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	background: radial-gradient(circle farthest-side, #8CA9E1, #8CA9E1 40%, #ffffff 60%, #ffffff);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline;
	width: -webkit-fill-available;
	height: 5px;
}

#g-navi ul li .sub-menu li:last-child::after,
#g-navi ul li .sub-menu li.last-line::after,
#g-navi ul li.menu-item-204 .sub-menu li:nth-last-child(2)::after {
	content: none;
}

#g-navi ul li .sub-menu li a {
	color: #113478;
	font-size: 1.85vh;
	padding: 0 0 0 20px;
	position: relative;
	justify-content: flex-start;
}

#g-navi ul li .sub-menu li a::before {
	content: '';
	position: absolute;
	top: 49%;
	left: 0%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 14px;
	height: 12px;
	background-image: url(../img/submenu-icon.png);
	background-repeat: no-repeat;
	background-size: contain;
}

#g-navi ul li a {
	position: relative;
	padding: 0;
	height: 100%;
	background: none;
	font-size: 1.852vh;
	font-weight: bold;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
}

#g-navi ul li:nth-child(1) a img {
	width: 3.057vh;
	height: auto;
	margin: -5px 10px 0 0;
}

#g-navi ul li:nth-child(2) a img {
	width: 2.964vh;
	height: auto;
	margin: -5px 13px 0 0;
}

#g-navi ul li:nth-child(3) a img {
	width: 2.778vh;
	height: auto;
	margin: -3px 9px 0 0;
}

#g-navi ul li:nth-child(4) a img {
	width: 2.038vh;
	height: auto;
	margin: -2px 10px 0 0;
}

#g-navi ul li:nth-child(5) a img {
	width: 2.223vh;
	height: auto;
	margin: -4px 5px 0 0;
}

#g-navi .news_list h3 {
	padding-top: 5px;
	min-height: unset;
	font-size: 2.0371vh;
	font-weight: normal;
	color: #113478;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#g-navi .global-bottom {
	display: flex;
	flex-direction: row;
	align-items: center;
	margin-top: 0;
}

#g-navi .global-bottom .category {
	display: flex;
	font-size: 2.2vh;
	font-weight: bold;
	line-height: 1em;
	position: relative;
	right: unset;
	top: unset;
	background: #0080CB;
	border-radius: 17px;
	padding: 3px 0 0 0;
	width: 140px;
	height: 3.056vh;
	align-items: center;
	justify-content: center;
}

#g-navi .global-bottom .date {
	display: inline-block;
	position: relative;
	top: unset;
	right: unset;
	line-height: 1em;
}

#g-navi .global-bottom .news_list .date {
	font-size: 1.667vh;
	top: unset;
	left: unset;
	color: #113478;
	margin: 6px 13px 0 17px;
}

#g-navi .global-bottom .global-news {
	background-color: #D3E2FC;
	width: 80%;
}

#g-navi .global-bottom .global-news .news_list .content {
	display: flex;
	align-items: center;
	text-align: left;
}

#g-navi .global-bottom .global-news .news_list {
	height: 5.186vh;
	display: flex;
	align-items: center;
	padding-left: 71px;
}

#g-navi .global-bottom .global-search {
	width: 20%;
	height: 5.186vh;
	background-color: #113478;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: -1px;
}

#g-navi .global-bottom .global-search form {
	width: 100%;
	height: 100%;
	position: relative;
}

#g-navi .global-bottom .global-search form input {
	width: calc(100% - 37px);
	height: calc(100% - 20px);
	margin: 8px 0;
	border-radius: 19px;
	border: none;
	font-size: 18px;
	padding: 4px 0 0 21px;
}

#g-navi .global-bottom .global-search form button {
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	border: none;
	background-color: unset;
	padding: 0;
	width: 2.034vh;
	height: 2.034vh;
}

article {
	padding-top: 26.7vh;
	position: relative;
	background-color: #E7F1FE;
}

#page article {
	background-image: url(../img/teaser/aurora_bg.svg);
	background-attachment: fixed;
	background-color: rgba(255, 255, 255, 0.65);
	background-blend-mode: lighten;
	background-size: cover;
}

.btn-green a {
	background-color: #6CB02F;
	border-radius: 24px;
	font-size: 20px;
	color: #ffffff;
	text-align: center;
	padding: 17px 18.5px 15px 44.5px;
	display: block;
	width: fit-content;
}

/* トップページ（本番） */
/* リード */
#page .true-top-lead {
	background-position: unset;
	position: relative;
	background-blend-mode: unset;
	height: 83.89vh;
	padding: 8.1vh 0 0 0;
	background: linear-gradient(180deg, rgba(255, 255, 255, 1) 91%, rgba(0, 0, 0, 0) 100%);
}

#page .true-top-lead .top-lead-img {
	position: relative;
}

#page .true-top-lead .top-lead-img::before {
	content: none;
	position: absolute;
	top: -2.1vh;
	left: -36%;
	width: 100%;
	max-width: 657px;
	height: 100%;
	max-height: 105.98px;
	background-image: url(../img/tagline_top.svg);
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 1;
}

#page .lead-down .next_btn {
	bottom: 9vh;
}

/* 本文 */
/* :root:has(#page article#about),
:root:has(#page article#guidance),
:root:has(#page article#first) {
	scroll-padding-top: 30svh;
}

html:has(#page article#about),
html:has(#page article#guidance),
html:has(#page article#first) {
	scroll-behavior: smooth;
} */

:root:has(#page article#guidance) {
	scroll-padding-top: 30svh;
}

/* 診療のご案内 */
#page #info {
	padding-top: 23px;
	padding-bottom: 192px;
}

#page #info .section-border {
	padding: 0;
	border: none;
	background-color: unset;
	border-radius: unset;
}

#page #info .section-border::before {
	/* top: -63px; */
	top: -115px;
	left: -73.8%;
	width: 67%;
	max-width: 621px;
	height: 100%;
	max-height: 486.45px;
}

#page #info .icon-row {
	justify-content: space-between;
	padding-bottom: 11px;
}

#page #info .icon-row:nth-child(n+2) {
	padding-top: 11px;
}

#page #info .icon-row::after {
	content: none;
}

#page #info .inner-icon {
	border: 5px solid #113478;
	border-radius: 30px;
	background-color: #ffffff;
	width: 100%;
	box-shadow: 5px 10px 8px 0px rgba(0, 0, 0, 0.16);
	justify-content: center;
}

#page #info .inner-icon a {
	display: flex;
	flex-direction: column;
	align-items: center;
	color: #113478;
}

#page #info .icon-large {
	max-width: 276px;
	height: 217px;
}

#page #info .icon-small {
	max-width: 209px;
	height: 195px;
}

/* 初診のかたへ */
#page #at-first {
	padding-top: 62px;
	padding-bottom: 191px;
}

#page #at-first .section-border {
	padding: 130px 85px 50px 85px;
}

#page #at-first .section-border:before {
	content: '';
	position: absolute;
	/* top: -125px; */
	top: -170px;
	left: -110.2%;
	width: 103%;
	max-width: 956.35px;
	height: 100%;
	max-height: 486.45px;
	background-image: url(../img/top_atfirst.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #at-first .section-border::after {
	content: '';
	position: absolute;
	top: -62px;
	left: 46%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-46%);
	-ms-transform: translateX(-50%);
	width: 226px;
	height: 177px;
	background-image: url(../img/teaser/illust_beginner.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #at-first ul {
	list-style: none;
	margin: 0;
	position: relative;
	padding: 32px 0;
}

#page #at-first ul::before,
#page #at-first ul::after {
	content: '';
	position: absolute;
	background: radial-gradient(circle farthest-side, #8CA9E1, #8CA9E1 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page #at-first ul::before {
	top: 0;
}

#page #at-first ul::after {
	bottom: 0;
}

#page #at-first ul li {
	font-size: 36px;
	font-weight: bold;
	color: #113478;
	padding: 0 60px;
	text-indent: -3rem;
	padding-left: calc(60px + 3rem);
}

#page #first ol li {
	font-size: 1.25rem;
	font-weight: bold;
	color: #113478;
}

#page #at-first ul li .li-icon {
	font-size: 43px;
	color: #0080CB;
	margin-right: 5px;
}

#page #at-first p {
	font-size: 28px;
	margin: 36px auto 0 auto;
	width: fit-content;
}

#page #top #at-first .scdown .next_btn {
	top: unset;
	bottom: 0;
}

#page #at-first .btn-green a {
	margin: 20px auto 0 auto;
}

/* お知らせ */
#page #newsletter {
	padding-top: 28px;
	padding-bottom: 175px;
}

#page #newsletter .newsletter-wrap,
#page.news-page .newsletter-wrap,
#page #news-list .newsletter-wrap,
#page #column-list .newsletter-wrap,
#page #recruit-list .newsletter-wrap {
	width: 55%;
	max-width: 940px;
	margin: 0 0 0 auto;
	position: relative;
}

#page #newsletter .newsletter-wrap:before {
	content: '';
	position: absolute;
	/* top: -60px; */
	top: -95px;
	left: -74.3%;
	width: 68%;
	max-width: 634px;
	height: 100%;
	max-height: 357.03px;
	background-image: url(../img/top_newsletter.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #newsletter article,
#page.news-page .newsletter-wrap article,
#page #news-list .newsletter-wrap article,
#page #column-list .newsletter-wrap article,
#page #recruit-list .newsletter-wrap article {
	padding-top: 0;
	background-image: unset;
	background-color: #ffffff;
	background-blend-mode: unset;
}

#page #newsletter article::before,
#page #newsletter article::after,
.news-page .newsletter-wrap article::before,
.news-page .newsletter-wrap article::after,
#page #news-list .newsletter-wrap article::before,
#page #news-list .newsletter-wrap article::after,
#page #column-list .newsletter-wrap article::before,
#page #column-list .newsletter-wrap article::after,
#page #recruit-list .newsletter-wrap article::before,
#page #recruit-list .newsletter-wrap article::after {
	content: '';
	position: absolute;
	background: radial-gradient(circle farthest-side, #8CA9E1, #8CA9E1 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page #at-first article::before {
	top: 0;
}

#page #at-first article::after {
	bottom: 0;
}

#page #newsletter h3,
#page.news-page .newsletter-wrap h3,
#page #news-list .newsletter-wrap h3,
#page #column-list .newsletter-wrap h3,
#page #recruit-list .newsletter-wrap h3,
#page.single .single-contents .single-body h3 {
	position: absolute;
	top: -41px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index: 1;
	background-color: #113478;
	color: #ffffff;
	font-size: 32px;
	border-radius: 16px;
	padding: 22px 0 18px 0;
	width: 100%;
	max-width: 357px;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: unset;
}

#page #news-list .newsletter-wrap h3,
#page #column-list .newsletter-wrap h3,
#page #recruit-list .newsletter-wrap h3 {
	top: -32px;
	min-height: calc(56px - 40px);
}

#page.single .single-contents .single-body h3 {
	top: -30px;
	padding: 14px 0 11px 0;
}

#page #newsletter h3 a,
.news-page .newsletter-wrap h3 a,
#page #news-list .newsletter-wrap h3 a,
#page #column-list .newsletter-wrap h3 a,
#page #recruit-list .newsletter-wrap h3 a,
#page.single .single-contents .single-body h3 a {
	font-size: 16px;
	font-weight: normal;
	color: #113478;
	background-color: #ffffff;
	border-radius: 20px;
	padding: 6.5px 0 2.5px 0;
	display: inline-flex;
	width: 160px;
	height: 26px;
	align-items: center;
	justify-content: center;
	margin: -4px 0 0 16.5px;
}

#page #newsletter h4,
.news-page .newsletter-wrap h4,
#page #news-list .newsletter-wrap h4,
#page #column-list .newsletter-wrap h4,
#page #recruit-list .newsletter-wrap h4 {
	font-size: 22px;
	font-weight: normal;
	color: #113478;
}

#page #newsletter .date,
.news-page .newsletter-wrap .date,
#page #news-list .newsletter-wrap .date,
#page #column-list .newsletter-wrap .date,
#page #recruit-list .newsletter-wrap .date,
#page.single .single-contents .single-body .date {
	display: block;
	position: relative;
	top: unset;
	right: unset;
	font-size: 18px;
	color: #113478;
	margin-right: 15px;
	min-width: 102px;
}

#page.single .single-contents .single-body .date {
	margin-right: 0;
}

#page #newsletter .category,
.news-page .newsletter-wrap .category,
#page #news-list .newsletter-wrap .category,
#page #column-list .newsletter-wrap .category,
#page #recruit-list .newsletter-wrap .category,
#page.single .single-contents .single-body .category {
	display: block;
	font-size: 16px;
	font-weight: bold;
	line-height: 1em;
	position: relative;
	right: unset;
	top: unset;
	color: #FFF;
	padding: 7.5px 14px 6px 14px;
	border-radius: 14px;
	width: 92px;
	text-align: center;
	background-color: #CB4D33;
	margin: 0 15px 0 0;
	min-width: 60px;
}

#page #newsletter .no-category,
.news-page .newsletter-wrap .no-category,
#page #news-list .newsletter-wrap .no-category,
#page #column-list .newsletter-wrap .no-category,
#page #recruit-list .newsletter-wrap .no-category,
#page.single .single-contents .single-body .no-category {
	display: none;
	visibility: hidden;
}

#page #newsletter .badge-wrap,
.news-page .newsletter-wrap .badge-wrap,
#page #news-list .newsletter-wrap .badge-wrap,
#page #column-list .newsletter-wrap .badge-wrap,
#page #recruit-list .newsletter-wrap .badge-wrap,
#page.single .single-contents .single-body .badge-wrap {
	display: flex;
	flex-direction: row;
	align-items: center;
}

#page #newsletter .new,
.news-page .newsletter-wrap .new,
#page #news-list .newsletter-wrap .new,
#page #column-list .newsletter-wrap .new,
#page #recruit-list .newsletter-wrap .new,
#page.single .single-contents .single-body .new {
	margin: 0 15px 0 0;
	color: #DF2121;
	font-size: 16px;
	font-weight: bold;
	border: 2px solid #DF2121;
	border-radius: 14px;
	padding: 7px 10px 6px 11px;
	line-height: 14px;
	min-width: calc(71.38px - 21px);
	text-align: center;
}

.news-container,
.column-container,
.recruit-container {
	max-width: 940px;
	border: 5px solid #113478;
	border-radius: 30px;
	background-color: #ffffff;
	position: relative;
	padding: 40px;
}

.news-container,
.column-container {
	margin-bottom: 50px;
}

#page #news-list .news-container,
#page #column-list .column-container,
#page #recruit-list .newsletter-wrap {
	margin-bottom: 0;
}

.news-container article a .content,
.recruit-container article a .content {
	padding: 25px 23px 19px 23px;
	display: flex;
	align-items: center;
}

.news-container article a .news-info-wrap {
	display: flex;
	align-items: center;
}

.recruit-container article a .recruit_info_wrap {
	display: flex;
	align-items: center;
}

.column-container .medical-thumb {
	display: flex;
	align-items: center;
	padding: 21px 40px 16px 40px;
}

.column-container .medical-thumb .medical-thumb-img img {
	width: 132px;
	height: 75px;
	object-fit: cover;
}

.column-container .medical-thumb .medical-thumb-content {
	margin-left: 17px;
}

.column-container .medical-thumb .medical-icon-wrap {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

#page #newsletter .next_btn {
	top: 0;
	bottom: unset;
}

/* よくあるご質問 */
#page #faq-accord {
	padding-top: 3px;
	padding-bottom: 26px;
}

#top #faq-accord .btn-green {
	display: none;
}

#page #faq-accord .faq_list:before {
	content: '';
	position: absolute;
	/* top: -45px; */
	top: -80px;
	left: -57.5%;
	width: 46%;
	max-width: 432.25px;
	height: 357.03px;
	background-image: url(../img/top_faq.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #faq-accord .btn-green {
	display: block;
	width: fit-content;
	margin: 22px auto 0 auto;
}

/* 下層ページ */
#page #about .in100per {
	padding: 0;
	position: relative;
}

#page #about section,
#page #first section {
	padding-top: 50px;
}

#page #about section:last-child,
#page #guidance .department-wrap section:last-child,
#page #first section:last-child,
.news-page .recruit-container,
#page #news-list .newsletter-wrap,
#page #column-list .newsletter-wrap,
#page #recruit-list .newsletter-wrap,
#page #contact .section-border {
	position: relative;
	margin-bottom: -98px;
	z-index: 1;
}

#page #about .lead-down .next_btn {
	right: -78px;
}

/* 医院の紹介 */
/* #page #about #lead {
	padding: 137px 8.5% 0 0;
}

#page #about #lead .section-border {
	padding: 50px 100px 90px 100px;
}

#page #about #lead .section-border:before {
	content: '';
	position: absolute;
	top: -160px;
	left: -89%;
	width: 100%;
	max-width: 642.69px;
	height: 100%;
	max-height: 373.85px;
	background-image: url(../img/pagetitle_about.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
 */

#page #about h3,
#page #guidance h3,
#page #first h3,
#page #result h3 {
	font-size: 40px;
	color: #113478;
	text-align: center;
	position: relative;
}

#page #about #sect2 {
	margin-top: 87px;
}

#page #about #sect2 h3:before {
	content: '';
	position: absolute;
	top: -180px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width: 226px;
	height: 177px;
	background-image: url(../img/male-doctor.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #about h3::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom: 0;
	background: radial-gradient(circle farthest-side, #113478, #113478 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	max-width: 397px;
	height: 5px;
}

#page #about p,
#page #about ol li,
#page #first #sect3 ul li,
#page #faq .faq-answer li,
#page #top #faq-accord .faq-answer li,
#page #guidance p,
#page #first p {
	font-size: 1.375rem;
	margin: 0;
	line-height: 2.5rem;
	font-weight: bold;
}

#page #about section#sect8 ol,
#page #first #sect3 ul {
	list-style-type: '□ ';
}

/*
#page #about #lead .section-border p {
	margin: 42px 0 0 0;
}

#page #about #lead .director-name {
	font-size: 2.5rem;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin: 50px 0 0 0;
}

#page #about #lead .director-title {
	font-size: 1.875rem;
	margin-right: 23px;
}
*/

#page #about section .section-border {
	padding: 62px 100px 73px 100px;
}

#page #about section .section-border:has(.accordion-content.hidden),
#page #first section .section-border:has(.accordion-content.hidden) {
	padding-bottom: 13.5px;
}

#page #about section#sect1 .section-border .accordion-header:before {
	content: '';
	position: absolute;
	top: -175px;
	left: -48.5vw;
	width: 100%;
	max-width: 642.69px;
	height: 374px;
	max-height: 373.85px;
	background-image: url(../img/pagetitle_about.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #about section .section-border h3,
#page #first section .section-border h3 {
	margin-bottom: 48.5px;
	line-height: 3.5rem;
	padding-bottom: 2.5rem;
}

#page #about section .section-border h4 {
	color: #113478;
	font-size: 2.125rem;
	text-align: center;
	border: 5px solid #113478;
	border-radius: 42px;
	max-width: calc(480px - 2rem);
	margin: 0 auto 38.5px auto;
	padding: 3px 1rem 0;
}

#page #about section .section-border .introduction {
	position: relative;
	padding-bottom: 50px;
	margin-bottom: 50px;
}

#page #about section .section-border .introduction::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom: 0;
	background: radial-gradient(circle farthest-side, #B2B2B2, #B2B2B2 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page #about #sect7 .section-border .introduction::after,
#page #about #sect8 .section-border .introduction::after {
	content: none;
}

#page #about #sect2 .section-border p,
#page #about #sect4 .section-border p {
	margin-bottom: 83.8px;
}

#page #about #sect2 .section-border p:last-child,
#page #about #sect4 .section-border p:last-child {
	margin-bottom: 0;
}

#page #about #sect2 .section-border .introduction {
	padding-bottom: 82.8px;
	margin-bottom: 48px;
}

#page #about #sect3 img {
	max-width: 338px;
	display: block;
	margin: 0 auto 85.5px auto;
}

#page #about #sect4 .section-border .introduction {
	padding-bottom: 66px;
	margin-bottom: 54px;
}

#page #about #sect5 {
	display: block;
	margin-bottom: unset;
}

#page #about #sect5 .ac-adress img {
	margin-bottom: 39px;
}

#page #about #sect5 .section-border:before {
	content: none;
}

#page #about #sect5 .g-map {
	margin: 29px auto 16px auto;
}

#page #about #sect5 .ac-parking h4 {
	margin: 0 auto 24.9px auto;
}

#about .ac-adress p,
#about .ac-info p,
#about .ac-parking p {
	text-align: center;
}

#about .fade-text .ac-adress p {
	text-align: left;
}

#page #about #sect4 p img {
	width: min(58vw, 300px);
	margin: 0 auto;
	display: flex;
}

#page #about #sect2 .section-border p.director-name {
	margin: 0 0 20px;
	text-align: right;
}

#page #about #sect5 h5 {
	font-size: 26px;
	background-color: #113478;
	color: #ffffff;
	padding-top: 3px;
	position: relative;
	margin: 100px 0 10px;
}

#page #about #sect5 h5.doc1::after,
#page #about #sect5 h5.doc2::after {
	content: '';
	position: absolute;
	width: 100%;
	background-repeat: no-repeat;
	background-size: contain;
	top: -84px;
	right: 27px;
	max-width: 169px;
	height: 134px;
	max-height: 134px;
}

#page #about #sect5 h5.doc1::after {
	background-image: url(../img/doc_1.svg);
}

#page #about #sect5 h5.doc2::after {
	background-image: url(../img/doc_2.svg);
}

#page #about #sect5 p>img {
	border-radius: calc(infinity * 1px);
	width: 300px;
	height: 300px;
	object-fit: cover;
	margin: 20px auto;
	display: block;
}

#page #about section .section-border h4.doc_margin {
	margin-top: 50px;
}

#page #about .hospital-informations {
	display: flex;
	align-items: center;
	border-left: 2px solid #113478;
	margin: 15px 0;
}

#page #about .hospital-informations .info-head {
	min-width: 10rem;
	padding: 0 1rem;
	text-align: center;
}

#page #about .hospital-informations .info-body {
	border-left: 2px solid;
	padding-left: 1rem;
}

#page #about section#sect8 .section-border h4 {
	font-size: 1.5rem;
}

/* 診療のご案内 */
#page #guidance #lead,
#page #first #lead,
#page #contact #lead,
#page #thanks #lead,
#page #article_404 #lead {
	display: none;
}

#page #guidance section,
#page #first section,
#page #about section,
#page #result section {
	padding: 0;
}

#page #guidance .department-wrap section,
#page #first .atfirst-wrap section,
#page #about .intro-wrap section,
#page #result .result-wrap #lead,
#page #result .result-wrap section {
	padding: 50px 8.5% 0 0;
}

#page #guidance section:last-child .scdown .next_btn {
	display: block;
}

#page #guidance .department-wrap section:last-child .scdown .next_btn {
	display: none;
}

#page #guidance .department-wrap .section-border,
#page #result .result-wrap .section-border {
	padding: 29px 64px 52px 64px;
	position: relative;
}

#page #guidance section#sect1 .section-border .accordion-header:before {
	content: '';
	position: absolute;
	top: -76px;
	left: -42.5vw;
	width: 100%;
	max-width: 565.59px;
	height: 373.6px;
	max-height: 373.6px;
	background-image: url(../img/pagetitle_guidance.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #guidance .section-border .guide_titleflex {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	padding-bottom: 1.5rem;
}

#page #guidance .section-border .guide_titleflex img {
	width: 60px;
}

#page #guidance .section-border .guide_titleflex h3 {
	padding-left: 60px;
}

#page #guidance .section-border .guide_titleflex.none h3 {
	padding-left: 0;
}

#page #guidance .section-border .guide_titleflex .stetho,
#page #guidance .section-border .guide_titleflex .bandage,
#page #guidance .section-border .guide_titleflex .aid-box,
#page #guidance .section-border .guide_titleflex .home,
#page #guidance .section-border .guide_titleflex .memoboard,
#page #guidance .section-border .guide_titleflex .injection,
#page #guidance .section-border .guide_titleflex .stomach,
#page #guidance .section-border .guide_titleflex .echo,
#page #guidance .section-border .guide_titleflex .thermometer,
#page #guidance .section-border .guide_titleflex .mask {
	position: absolute;
	top: 0;
	left: -25px;
	width: 100%;
	max-width: 60px;
	height: 100%;
	background-size: contain;
	background-repeat: no-repeat;
}

#page #guidance .section-border .guide_titleflex .none {
	display: none;
	visibility: hidden;
}

#page #guidance .section-border .guide_titleflex .stetho {
	background-image: url(../img/teaser/icon_internal.png);
}

#page #guidance .section-border .guide_titleflex .bandage {
	background-image: url(../img/teaser/icon_surgery.png);
}

#page #guidance .section-border .guide_titleflex .aid-box {
	background-image: url(../img/teaser/icon_intensive.png);
}

#page #guidance .section-border .guide_titleflex .home {
	background-image: url(../img/teaser/icon_home.png);
}

#page #guidance .section-border .guide_titleflex .memoboard {
	background-image: url(../img/teaser/icon_memoboard.png);
}

#page #guidance .section-border .guide_titleflex .injection {
	background-image: url(../img/teaser/icon_injection.png);
}

#page #guidance .section-border .guide_titleflex .stomach {
	background-image: url(../img/teaser/icon_stomach.png);
}

#page #guidance .section-border .guide_titleflex .echo {
	background-image: url(../img/teaser/icon_ultrasound.png);
}

#page #guidance .section-border .guide_titleflex .thermometer {
	background-image: url(../img/teaser/icon_thermometer.png);
}

#page #guidance .section-border .guide_titleflex .mask {
	background-image: url(../img/teaser/icon_mask.png);
}

#page #guidance .section-border .guide_titleflex p {
	display: none;
	visibility: hidden;
}

#page #guidance .section-border .guide_titleflex::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom: 0;
	background: radial-gradient(circle farthest-side, #113478, #113478 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page #guidance .section-border p {
	padding: 0 51px;
	margin-top: 39px;
}

#page #guidance .section-border .guide-innerimg,
#page #first .section-border .guide-innerimg,
#page #about .section-border .guide-innerimg {
	display: block;
	max-width: 312px;
	max-height: 252px;
	margin: 0 auto;
	object-fit: cover;
	border-radius: 25px;
	margin-top: 45px;
}

/* 初診の方へ */
#page #first .section-border {
	padding: 67.6px 85px 80.8px 85px;
}

#page #first section#sect1 .section-border .accordion-header:before {
	content: '';
	position: absolute;
	top: -235px;
	left: -54vw;
	width: 100%;
	max-width: 798.12px;
	height: 374px;
	max-height: 374px;
	background-image: url(../img/pagetitle_first.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #first .w490::after,
#page #first .w310::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom: 0;
	background: radial-gradient(circle farthest-side, #113478, #113478 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page #first .w490::after {
	max-width: 490px;
}

#page #first .w310::after {
	max-width: 310px;
}

#page #first #sect1 {
	padding-top: 137px;
}

#page #first #sect1 h3:before {
	content: '';
	position: absolute;
	top: -200px;
	left: 46%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-46%);
	-ms-transform: translateX(-50%);
	width: 226px;
	height: 177px;
	background-image: url(../img/teaser/illust_beginner.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #first .first-flow h4 {
	position: relative;
	font-size: 1.875rem;
	color: #113478;
	padding: 0 0 25px 66px;
}

#page #first .first-flow h4::before {
	content: '';
	position: absolute;
	top: 11px;
	left: 24.5px;
	width: 29px;
	height: 29px;
	background-image: url(../img/icon_bluecircle.svg);
	background-repeat: no-repeat;
	background-size: cover;
}

#page #first .first-flow h4::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	background: radial-gradient(circle farthest-side, #B2B2B2, #B2B2B2 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page #first .first-flow p {
	margin-top: 35px;
}

#page #first #sect4 .flow-next {
	width: 66px;
	display: block;
	margin: 21px auto 32px auto;
}

/* お知らせ一覧 */
#page.news-page #lead {
	display: none;
}

#page.news-page .newsletter-wrap,
#page #news-list .newsletter-wrap,
#page #column-list .newsletter-wrap,
#page #recruit-list .newsletter-wrap {
	padding-top: 46px;
	min-height: calc(75.89vh - 103px);
}

#page.news-page .newsletter-wrap:before,
#page #news-list .newsletter-wrap::before,
#page #column-list .newsletter-wrap::before,
#page #recruit-list .newsletter-wrap::before,
#page.single .single-contents .single-body::before {
	content: '';
	position: absolute;
	top: 30px;
	left: -78%;
	width: 61%;
	max-width: 569.97px;
	height: 100%;
	max-height: 246.51px;
	background-image: url(../img/pagetitle_news.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page.single .single-contents .single-body::before {
	top: -20px;
}

/* お知らせ個別 */
#page.single .single-contents .article-body {
	width: 55%;
	max-width: 940px;
	margin: 0 0 0 auto;
	position: relative;
	margin-bottom: -98px;
	padding-top: 46px;
	min-height: calc(75.89vh - 103px);
}

#page.single .single-contents .single-body {
	max-width: 940px;
	border: 5px solid #113478;
	border-radius: 30px;
	background-color: #ffffff;
	position: relative;
	padding: 60px 32px;
	z-index: 1;
}

#page.single .single-contents .single-body .single-titlewrap {
	font-size: 30px;
	color: #113478;
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 0 36px;
}

#page.single .single-contents .single-body .single-titlewrap::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom: 0;
	background: radial-gradient(circle farthest-side, #113478, #113478 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page.single .single-contents .single-body .single-titlewrap .news-info-wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 23px;
}

#page.single .single-contents .single-body h4 {
	font-size: 1.875rem;
	color: #113478;
}

#page.single .single-contents .single-body p {
	font-size: 1.375rem;
	margin: 61px 0;
	line-height: 2.5rem;
	font-weight: bold;
	padding: 0 56px;
}

#page.single .single-contents .single-images {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

#page.single .single-contents .single-images img {
	display: inline-block;
	width: 312px;
	height: 252px;
	margin: 7.5px;
	object-fit: cover;
	border-radius: 25px;
}

#page.single .single-contents .post_pagebtn {
	margin-top: 73.5px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 36px;
}

#page.single .single-contents .post_pagebtn a {
	padding: 0;
	font-weight: bold;
	margin: 0;
	display: inline-flex;
	border: unset;
	border-radius: 24px;
	width: 196px;
	height: 48px;
	align-items: center;
	justify-content: center;
	font-size: 1.25rem;
	color: #ffffff;
	background-color: #6CB02F;
}

#page.single .single-contents .post_pagebtn .pagination_next {
	margin: 0 0 0 auto;
}

#page.single .single-contents .post_pagebtn .pagination_prev {
	margin: 0 auto 0 0;
}

#page.single .single-contents .post_pagebtn .pagination_next .pager-space,
#page.single .single-contents .post_pagebtn .post_next .pager-space {
	margin-left: 1rem;
}

#page.single .single-contents .post_pagebtn .pagination_prev .pager-space,
#page.single .single-contents .post_pagebtn .post_prev .pager-space {
	margin-right: 1rem;
}

#page.single .single-contents .content_body a {
	color: #0080CB;
	text-decoration-line: underline;
	text-underline-offset: 4px;
	text-decoration-thickness: 1px;
}

#page.single.recruit-info-page .single-contents .single-body p {
	margin: 20px auto;
	width: fit-content;
	display: block;
}

#page.single.recruit-info-page .single-contents .content_body h5 {
	background-color: #113478;
	color: #ffffff;
	font-size: 26px;
	width: 285px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 4px;
	border-radius: calc(infinity * 1px);
	margin: 35px auto 0;
}



/* よくあるご質問 */
#page #faq #faq-accord {
	padding-top: 0;
	padding-bottom: 0;
}

#page #faq .faq-wrap {
	padding-top: 46px;
	padding-bottom: 61px;
	min-height: calc(75.89vh - 201px);
}

#page #faq .faq-wrap .content-none-sorry {
	width: 55%;
	max-width: 940px;
	border: 5px solid #113478;
	border-radius: 30px;
	background-color: #ffffff;
	margin: 0 0 0 auto;
	position: relative;
	padding: 100px;
}

#page #faq .faq-wrap .content-none-sorry p {
	font-weight: bold;
	font-size: 2rem;
	text-align: center;
}

#page #faq .faq-wrap .content-none-sorry p span {
	font-weight: bold;
	font-size: 3rem;
}

#page #faq .faq-wrap .content-none-sorry a {
	display: flex;
	width: 220px;
	height: 48px;
	align-items: center;
	justify-content: center;
	border: 2px solid;
	border-radius: 24px;
	color: #113478;
	margin: 0 auto;
}

#page #faq #faq-accord .faq_list:before {
	content: '';
	position: absolute;
	top: -85px;
	left: -65.8%;
	width: 46%;
	max-width: 431.4px;
	height: 357.03px;
	background-image: url(../img/pagetitle_faq.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

/* お問い合わせ */
#page #contact section {
	padding-top: 34px;
}

#page #contact .section-border {
	padding: 55.6px 80px 80px 80px;
}

#page #contact .section-border:before,
#page #thanks .section-border:before {
	content: '';
	position: absolute;
	top: -50px;
	left: -67%;
	width: 100%;
	max-width: 432.24px;
	height: 100%;
	max-height: 328.19px;
	background-image: url(../img/pagetitle_contact.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#page #contact .contact-lead {
	position: relative;
	padding-bottom: 35.5px;
}

#page #contact h1 {
	font-size: 2.5rem;
	color: #113478;
	text-align: center;
	position: relative;
	padding-bottom: 15px;
}

#page #contact h1::after,
#page #contact .contact-lead::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom: 0;
	background: radial-gradient(circle farthest-side, #113478, #113478 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page #contact .contact-lead ul {
	margin: 0;
	padding: 25px 86px 0 86px;
	list-style: none;
}

#page #contact .contact-lead ul li,
#page #thanks ul li,
#page #article_404 ul li {
	color: #113478;
	font-size: 18px;
	text-indent: -18px;
	padding-left: 18px;
	font-weight: bold;
}

#page #contact .contact-lead ul li span,
#page #thanks ul li span,
#page #article_404 ul li span {
	color: #2693D2;
}

#page #contact .contact-lead a {
	font-size: 2.25rem;
	color: #113478;
	font-weight: bold;
	display: block;
	width: fit-content;
	margin: 10px auto 0 auto;
	line-height: 2.25rem;
}

#page #contact .contact-lead a span {
	font-size: 1.938rem;
}

#page #contact .section-border h4 {
	font-size: 1.25rem;
	color: #113478;
	text-align: left;
	display: flex;
	align-items: center;
	flex-direction: row;
}

#page #contact .section-border .must {
	background-color: #D92626;
	border: none;
	text-shadow: unset;
	padding: 2px 0 0 0;
	font-size: 0.875rem;
	float: unset;
	margin: 0 0 0 25px;
	border-radius: 5px;
	box-shadow: unset;
	background-image: unset;
	background-size: unset;
	width: 60px;
	height: calc(30px - 2px);
	display: flex;
	align-items: center;
	justify-content: center;
}

#page #contact .section-border form {
	padding: 49px 0 0 0;
}

#page #contact .section-border table.mailform {
	margin-bottom: 0;
	padding: 0 123.5px 0 123.5px;
}

#page #contact .section-border table,
#page #contact .section-border table tbody {
	display: block;
}

#page #contact .section-border table tr {
	display: flex;
	flex-direction: column;
}

#page #contact .section-border table th,
#page #contact .section-border table td {
	border: none;
	width: -webkit-fill-available;
}

#page #contact .section-border table th {
	padding: 0;
	background: unset;
	margin-top: 15px;
}

#page #contact .section-border table tr:first-child th {
	margin-top: 0;
}

#page #contact .section-border table td {
	padding: 9px 0 0 0;
}

#page #contact .section-border table td input,
#page #contact .section-border table td textarea {
	border: 1px solid #113478;
	border-radius: 5px;
	width: -webkit-fill-available;
	padding: 7px 17px;
	box-shadow: unset;
	margin: 0;
}

#page #contact .section-border input,
#page #contact .section-border select,
#page #contact .section-border textarea {
	font-size: 18px;
}

#page #contact .section-border textarea {
	resize: vertical;
	min-height: 162px;
}

#page #contact .section-border input::placeholder {
	color: #D2D2D2;
}

#page #contact .section-border .contact-check {
	margin-top: 52px;
}

#page #contact .section-border .contact-check .mfp {
	width: fit-content;
	margin: 0 auto;
}

#page #contact .section-border .contact-check label {
	cursor: pointer;
	border: none;
	padding: 0;
	margin: 0;
}

#page #contact .section-border .contact-check label,
#page #contact .section-border .contact-check a {
	color: #113478;
	font-size: 14px;
}

#page #contact .section-border .contact-check a {
	text-decoration: underline;
	text-decoration-color: #113478;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}

#page #contact .section-border .mfp_element_all:not(.mfp_element_checkbox) {
	width: 100% !important;
	max-width: calc(100% - 34px);
}

#page #contact .section-border .mfp_element_checkbox {
	max-width: 100%;
}

#page #contact .section-border input[type="checkbox"] {
	width: 24px;
	height: 24px;
	margin: 0;
	vertical-align: middle;
}

#page #contact .section-border form#mailformpro label.mfp_checked {
	background-color: unset;
	box-shadow: unset;
}

#page #contact .section-border .contact-check label {
	white-space: unset;
	width: fit-content;
	text-indent: -32px;
	padding-left: 27px;
}

#page #contact .section-border td:has(p) p {
	margin-top: 10px;
	font-size: 14px;
	text-indent: -21px;
	padding-left: 21px;
}

#page #contact .section-border .mfp_buttons {
	display: flex;
	justify-content: center;
	padding: 0;
	margin-top: 26px;
}

#page #contact .section-border .mfp_buttons button,
#page #contact .contact-lead a.tel-sp,
#page #thanks .page-return a,
#page #article_404 .page-return a {
	border-radius: 24px;
	font-size: 20px;
	color: #ffffff;
	text-align: center;
	padding: 9px 0 11px 10px;
	display: block;
	width: 100%;
	max-width: 304px;
	border: none;
}

#page #contact .section-border .mfp_buttons button:first-child,
#page #contact .contact-lead a.tel-sp,
#page #thanks .page-return a,
#page #article_404 .page-return a {
	background: unset;
	text-shadow: unset;
	background-color: #113478;
	margin-right: 43px;
}

#page #contact .section-border .mfp_buttons button:last-child {
	background: unset;
	text-shadow: unset;
	background-color: #6CB02F;
}

#page #contact .contact-lead a.tel-sp {
	display: none;
}

.grecaptcha-badge {
	display: none;
}

/* サンクスページ */
#page #thanks .section-border,
#page #article_404 .section-border {
	margin: 50px 0 -84px auto;
	padding: 210px 130px 113px;
	z-index: 1;
}

#page #thanks .section-border:before {
	top: -65px;
}

#page #thanks .section-border img {
	position: absolute;
	top: -52px;
	left: 48%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	max-width: 317px;
}

#page #article_404 .section-border img {
	position: absolute;
	top: 0;
	left: 49%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	max-width: 317px;
}

#page #thanks section h2,
#page #article_404 section h1 {
	font-size: 2.5rem;
	line-height: 3.2rem;
	padding: 0 0 35px;
	margin-bottom: 0;
	color: #113478;
}

#page #article_404 section h1 {
	text-align: center;
}

#page #thanks .thanks-title,
#page #article_404 .thanks-title {
	position: relative;
}

#page #thanks .thanks-title::after,
#page #article_404 .thanks-title::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom: 0;
	background: radial-gradient(circle farthest-side, #113478, #113478 40%, transparent 60%, transparent);
	background-size: 8px 5px;
	background-repeat: repeat-x;
	display: inline-block;
	width: 100%;
	height: 5px;
}

#page #thanks section ul,
#page #article_404 section ul {
	margin: 35px 0 0;
	padding: 0;
	list-style: none;
}

#page #article_404 section p {
	font-size: 1.5rem;
	padding-bottom: 2rem;
}

#page #thanks .page-return,
#page #article_404 .page-return {
	margin-top: 40px;
}

#page #thanks .page-return a,
#page #article_404 .page-return a {
	padding-top: 15px;
	margin: 0 auto;
}

/* 20250912 アコーディオン機能追加 */
.accordion-header {
	cursor: pointer;
	position: relative;
	transition: background-color 0.3s ease;
	-webkit-tap-highlight-color: transparent;
}

.accordion-content {
	max-height: 3000px;
	overflow: hidden;
	transition: max-height 0.5s ease, opacity 0.5s ease;
	opacity: 1;
}

.accordion-content.hidden {
	max-height: 0;
	opacity: 0;
	border: none;
}

#page #first section .section-border h3 {
	padding-bottom: 1rem;
}

/* .accordion-header h3 span::before {
	content: '';
	position: absolute;
	bottom: 17px;
	left: 50%;
	translate: -50% 0;
	width: 37px;
	height: 21px;
	background-image: url(../img/teaser/accord_triangle.svg);
	background-repeat: no-repeat;
	background-size: cover;
	transition: all .3s ease;
	pointer-events: none;
}

#guidance .accordion-header h3 span::before {
	bottom: -22px;
}

.section-border.accordion:has(.accordion-content.hidden) .accordion-header h3 span::before {
	rotate: 180deg;
} */

/* アコーディオン透過 */
/* 本文にグラデーションをかけて隠す */
.fade-text-wrapper {
	overflow: hidden;
	max-height: 100px;
	/* ← 初期は100pxだけ見せる */
	transition: max-height 0.5s ease;
	position: relative;
}

.fade-text-wrapper.no-transition {
	transition: none !important;
}

.fade-text {
	position: relative;
	height: auto;
	overflow: visible;
}

/* 閉じているときだけグラデーションを表示 */
.fade-text-wrapper::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	background: linear-gradient(rgba(255, 255, 255, 0) 0%, #ffffff 100%);
	pointer-events: none;
	transition: background 0.3s ease;
	z-index: 1;
}

/* 開いているときはグラデーションを非表示に */
.fade-text-wrapper.open::before {
	background: none;
}

/* もっと見るボタン */
.toggle-button {
	background: none;
	cursor: pointer;
	font-size: 0.9em;
	display: block;
	margin: 1rem auto 0;
	border: 2px solid #113478;
	border-radius: calc(infinity * 1px);
	background-color: #ffffff;
	color: #113478;
	text-decoration: unset;
	font-weight: bold;
	padding: 0 1rem 2px;
	height: 35px;
}

/* 検索結果 */
#page #result>.in100per {
	min-height: calc(100vh - 26.7vh);
}

#page #result .result-wrap h2 {
	font-size: 3rem;
	font-weight: bold;
	color: #113478;
}

#page #result .result-wrap .section-border {
	padding: 29px 64px;
	border-radius: calc(infinity * 1px);
	margin-bottom: 30px;
}

#page #result .result-wrap .section-border.no-result {
	font-size: 1.5rem;
	border-radius: 30px;
}

/* スライド改修 */
#page #top #lead .top-lead-img {
	max-width: 68vw;
}

#page #top #lead .slick-list {
	height: auto;
}

#page #top #lead .slick-slide img {
	object-fit: contain;
	object-position: unset;
	height: auto;
}

#page #top #lead .top-slider button .button-inner {
	position: relative;
	width: 22px;
	height: 22px;
	transition: all .3s;
}

#page #top #lead .top-slider button[data-control="pause"] .button-inner::after,
#page #top #lead .top-slider button[data-control="play"] .button-inner::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 22px;
	height: 22px;
	background-repeat: no-repeat;
	background-size: contain;
}

#page #top #lead .top-slider button[data-control="pause"] .button-inner::after {
	background-image: url(../img/slide_play.svg);
}

#page #top #lead .top-slider button[data-control="play"] .button-inner::after {
	background-image: url(../img/slide_pause.svg);
}

#page #top #lead .swiper .js-slider-control {
	z-index: 1;
}

/* 施設スライド改修 */
#page #about section .hos-swiper-wrapper img {
	height: 568px;
}

/* トップページ次へボタン改修 */
.next_btn_fixed {
	position: fixed;
	right: 20px;
	bottom: 30px;
	color: white;
	font-weight: bold;
	border-radius: 4px;
	cursor: pointer;
	z-index: 9999;
	transition: opacity 0.3s ease;
	background-image: url(../img/teaser/scroll-down.svg);
	background-repeat: no-repeat;
}

.next_btn_fixed.hidden {
	opacity: 0;
	pointer-events: none;
}

.hidden {
	display: none;
}

/* モーダル改修 */
#page .lightbox .lb-image {
	width: 800px !important;
	height: 600px !important;
}

#page .lightbox .lb-dataContainer {
	width: fit-content !important;
	background-color: #ffffff;
	border: 2px solid #113478;
	padding: 16px 1rem 10px;
	margin-top: 10px;
	border-radius: 10px;
}

#page .lb-data .lb-details {
	width: auto;
	float: unset;
	text-align: center;
	line-height: normal;
}

#page .lb-data .lb-caption {
	font-size: 1.5rem;
	color: #113478;
	line-height: 1.5rem;
}

#page .lightbox .lb-number {
	display: none !important;
}

/* ニュースティッカー動作追加 */
.scrolling-text {
	display: inline-block;
	white-space: nowrap;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	animation-fill-mode: forwards;
	animation-name: scroll-left;
}

@keyframes scroll-left {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(calc(-1 * var(--scroll-distance)));
	}
}

#g-navi .global-news .news_list .content {
	overflow: hidden;
	position: relative;
	white-space: nowrap;
	max-width: 100%;
}









/* レスポンシブ */
/* リードとインフォバー */
@media (max-width: 1895px) {
	.info-bar #biz-hours .time_char {
		font-size: 20px;
		line-height: 1.5rem;
	}

	.info-bar #biz-hours.panelactive,
	.info-bar #access-map.panelactive {
		left: -88%;
	}

	.info-bar #biz-hours table tr:nth-child(2) td,
	.info-bar #biz-hours table tr:last-child td {
		padding-top: 4%;
		padding-bottom: 5%;
	}

	.info-bar #biz-hours .btn-close {
		top: 95px;
	}
}

@media (max-width: 1780px) {
	#page #header .logo {
		margin-right: 35px;
	}

	#page #header .contact .header {
		font-size: 30px;
	}

	#page #header .contact .tel {
		font-size: 36px;
	}

	#page #header .open-hour .at-title {
		font-size: 20px;
		margin-right: 30px;
	}

	#page #header .open-hour .time-body,
	#header .open-hour .hour-time {
		font-size: 28px;
	}

	.info-bar #biz-hours table tr th,
	.info-bar #biz-hours table tr td {
		padding: 0 10px;
	}

	.info-bar #biz-hours .btn-close {
		top: 86px;
	}

	#page #info .icon-large:nth-child(2),
	#page #info .icon-small:nth-child(2) {
		margin: 0 5px;
	}

	#page #info .icon-small:nth-child(3) {
		margin: 0 5px 0 0;
	}

	#page #first #sect1 .section-border:before {
		top: -125px;
		left: -109.5%;
	}
}

@media (max-width: 1710px) {
	.teaser-top-lead .lead-photo::before {
		left: 40px;
	}
}

@media (max-width: 1637px) {

	.info-bar #biz-hours table tr th,
	.info-bar #biz-hours table tr td {
		padding: 0 7px;
	}

	#page #first #sect1 .section-border:before {
		top: -114px;
		left: -102.5%;
	}
}

@media (max-width: 1590px) {
	#page #header .logo {
		margin-right: 25px;
		width: 45%;
	}

	#page #header>.in100per {
		padding: 0 0 0 22px;
	}

	#page #header .contact .header {
		font-size: 25px;
	}

	#page #header .contact .tel {
		font-size: 31px;
	}

	#page #header .open-hour {
		width: 50%;
	}

	#page #header .open-hour .at-title {
		margin-right: 20px;
	}

	#page #guidance section#sect1 .section-border .accordion-header:before {
		left: -46vw;
		max-width: 500px;
	}
}

@media (max-width: 1495px) {

	.info-bar #biz-hours .weekdays,
	.info-bar #biz-hours .weekend,
	.info-bar #biz-hours .holiday {
		font-size: 20px;
	}

	.info-bar #biz-hours table tr th,
	.info-bar #biz-hours table tr td {
		padding: 0 4px;
	}

	.info-bar #biz-hours.panelactive,
	.info-bar #access-map.panelactive {
		left: -84%;
	}

	.info-bar #biz-hours .btn-close {
		top: 75px;
	}

	#page #first #sect1 .section-border:before {
		top: -70px;
		left: -102.5%;
	}

}

@media (max-width: 1440px) {
	#g-navi ul li.menu-item-204 .sub-menu li:nth-last-child(2)::after {
		content: '';
	}

	#info .inner-icon,
	#info .icon-other {
		font-size: 25px;
	}

	#info .section-border {
		padding: 44.5px 50px 33.5px 50px;
	}

	#at-first h3 {
		font-size: 35px;
		line-height: 2.8rem;
	}

	#at-first h3:first-child {
		padding-top: 10px;
	}

	#at-first .section-border {
		padding: 53.3px 50px 94.7px 50px;
	}

	#at-first .section-border:before {
		top: -78px;
	}

	#faq-accord .faq_list:before {
		top: 50px;
	}

	#access .section-border:before {
		top: 100px;
	}

	.info-bar #biz-hours .hours-title,
	.info-bar #access-map .map-title2 {
		padding: 0 31px 0 32px;
	}

	.info-bar #access-map .map-title2 {
		padding-right: 41px;
	}

	.info-bar .btn-close {
		right: -25px;
	}

	.info-bar #biz-hours .hours-title::before {
		right: 26.2px;
	}

	#access p {
		font-size: 22px;
	}

	#access .section-border {
		padding: 53px 50px 0 50px;
	}

	#footer .ft-flex {
		margin: 0 41px 19px 41px;
	}

	#page .true-top-lead .top-lead-img::before {
		width: 70%;
	}

	#page #info .icon-large {
		height: 180px;
	}

	#page #info .icon-small {
		height: 170px;
	}

	#page #at-first .section-border {
		padding: 130px 50px 50px 50px;
	}

	#page #at-first ul li {
		font-size: 25px;
		padding: 0 30px;
		text-indent: -2.2rem;
		padding-left: calc(30px + 2.2rem);
	}

	#page #at-first ul li .li-icon {
		font-size: 30px;
	}

	#page #at-first p {
		font-size: 20px;
		margin: 28px auto 0 auto;
	}

	#page #newsletter h3,
	#page.news-page .newsletter-wrap h3,
	#page #news-list .newsletter-wrap h3,
	#page #column-list .newsletter-wrap h3,
	#page #recruit-list .newsletter-wrap h3,
	#page.single .single-contents .single-body h3 {
		position: absolute;
		top: -28px;
		font-size: 25px;
		padding: 10px 0 8px 0;
	}

	#page #newsletter h3 a,
	#page.news-page .newsletter-wrap h3 a,
	#page #news-list .newsletter-wrap h3 a,
	#page #column-list .newsletter-wrap h3 a,
	#page #recruit-list .newsletter-wrap h3 a,
	#page.single .single-contents .single-body h3 a {
		padding: 3.5px 0 2.5px 0;
	}

	#page #newsletter h4,
	#page.news-page .newsletter-wrap h4,
	#page #news-list .newsletter-wrap h4,
	#page #column-list .newsletter-wrap h4,
	#page #recruit-list .newsletter-wrap h4,
	#page.single .single-contents .single-body h4,
	#page.single.recruit-info-page .single-contents .content_body h5 {
		font-size: 20px;
	}

	#page #newsletter .new,
	#page.news-page .newsletter-wrap .new,
	#page #news-list .newsletter-wrap .new,
	#page #column-list .newsletter-wrap .new,
	#page #recruit-list .newsletter-wrap .new,
	#page.single .single-contents .single-body .new {
		font-size: 14px;
		line-height: 10px;
	}

	#page #newsletter .category,
	#page.news-page .newsletter-wrap .category,
	#page #news-list .newsletter-wrap .category,
	#page #column-list .newsletter-wrap .category,
	#page #recruit-list .newsletter-wrap .category,
	#page.single .single-contents .single-body .category {
		font-size: 14px;
		line-height: 14px;
	}

	#page #about #lead .section-border,
	#page #contact .section-border {
		padding: 50px 50px 90px 50px;
	}

	#page #about section .section-border {
		padding: 62px 50px 73px 50px;
	}

	#page #about #lead .section-border:before {
		top: -55px;
		left: -89%;
		width: 70%;
	}

	#page #about h3,
	#page #guidance h3,
	#page #first h3 {
		font-size: 1.563rem;
	}

	#page #first section .section-border h3 {
		margin-bottom: 48.5px;
		line-height: 2rem;
		padding-bottom: 2rem;
	}

	#page #about section .section-border h3 {
		margin-bottom: 33.5px;
		line-height: 2rem;
		padding-bottom: 2rem;
		font-size: 1.563rem;
	}

	.accordion-header h3 span::before {
		bottom: 15px;
		width: 21px;
		height: 12px;
	}

	#page #about section .section-border h4 {
		font-size: 1.3rem;
		border: 4px solid #113478;
	}

	#page #about p,
	#page #about ol li,
	#page #first #sect3 ul li,
	#page #faq .faq-answer li,
	#page #top #faq-accord .faq-answer li,
	#page #guidance p,
	#page #first p,
	#page.single .single-contents .single-body p {
		font-size: 1.25rem;
	}

	#page #about #lead .director-title {
		font-size: 1.563rem;
	}

	#page #about #lead .director-name {
		font-size: 2rem;
	}

	#page #about #lead h3:before {
		top: -159px;
		width: 190px;
		height: 149px;
	}

	#page #guidance .department-wrap section {
		padding: 29px 8.5% 0 0;
	}

	#page #guidance .department-wrap .section-border {
		padding: 29px 50px 52px 50px;
	}

	/* #page #guidance #sect1 .section-border:before {
		content: '';
		position: absolute;
		top: -2px;
		left: -78%;
		width: 61%;
		max-width: 565.59px;
		height: 100%;
		max-height: 373.6px;
		background-image: url(../img/pagetitle_guidance.svg);
		background-repeat: no-repeat;
		background-size: contain;
	} */

	#page #guidance .department-wrap section .guide_titleflex img {
		width: 40px;
		margin-right: 12px;
	}

	#page #guidance .section-border p {
		padding: 0 37px;
	}

	#page #guidance .section-border .guide_titleflex .stetho,
	#page #guidance .section-border .guide_titleflex .bandage,
	#page #guidance .section-border .guide_titleflex .aid-box,
	#page #guidance .section-border .guide_titleflex .home,
	#page #guidance .section-border .guide_titleflex .memoboard,
	#page #guidance .section-border .guide_titleflex .injection,
	#page #guidance .section-border .guide_titleflex .stomach,
	#page #guidance .section-border .guide_titleflex .echo,
	#page #guidance .section-border .guide_titleflex .thermometer,
	#page #guidance .section-border .guide_titleflex .mask {
		left: -8px;
		max-width: 43px;
	}

	#page #guidance .section-border .guide_titleflex h3 {
		padding-left: 43px;
	}

	#page #first section .section-border {
		padding: 62px 50px 73px 50px;
	}

	#page #first section .section-border h4 {
		font-size: 1.3rem;
		padding: 0 0 10px 66px;
	}

	#page #first .first-flow h4::before {
		top: 3px;
	}

	#page #first .first-flow p {
		margin-top: 10px;
	}

	#page #first section#sect1 .section-border .accordion-header:before {
		top: -190px;
		left: -55vw;
	}

	#page #header .open-hour .time-body,
	#header .open-hour .hour-time {
		font-size: 26px;
	}

	#page #news-list .newsletter-wrap h3,
	#page #column-list .newsletter-wrap h3,
	#page #recruit-list .newsletter-wrap h3 {
		top: -32px;
		min-height: calc(56px - 18px);
	}

	.pagination span,
	.pagination a {
		width: 60px;
		height: 35px;
		font-size: 20px;
	}

	#page.single .single-contents .single-body p {
		margin: 30px 0;
	}

	#page #faq .faq-wrap .content-none-sorry {
		padding: 100px 50px;
	}

	#page #faq .faq-wrap .content-none-sorry p span {
		font-size: 2.5rem;
	}

	#page #contact .contact-lead ul {
		padding: 25px 5px 0;
	}

	#page #contact .section-border table.mailform {
		padding: 0 5px;
	}

	#page #contact .section-border .mfp_buttons {
		flex-direction: column;
		align-items: center;
	}

	#page #contact .section-border .mfp_buttons button:first-child {
		margin-right: 0;
	}

	#page #contact .section-border .mfp_buttons button:last-child {
		margin-top: 21px;
	}

	#page #contact .section-border:before,
	#page #thanks .section-border:before {
		top: 0;
		left: -75%;
		width: 50%;
	}

	#page #thanks .section-border,
	#page #article_404 .section-border {
		padding: 210px 50px 113px;
	}
}

@media (max-width: 1440px) and (min-height: 1100px) {
	#g-navi ul li a {
		font-size: 1vh;
	}

	#g-navi ul li:nth-child(1) a img,
	#g-navi ul li:nth-child(2) a img,
	#g-navi ul li:nth-child(3) a img,
	#g-navi ul li:nth-child(4) a img,
	#g-navi ul li:nth-child(5) a img {
		width: 2vh;
	}

	#g-navi .menu-item-has-children:hover ul a,
	#g-navi ul li.menu-item-204:hover ul a {
		font-size: 1.2vh;
		line-height: 1.8rem;
	}

	#g-navi .global-bottom .category {
		font-size: 1.2vh;
		width: 80px;
		height: 2.056vh;
	}

	#g-navi .global-bottom .news_list .date {
		font-size: 1vh;
	}

	#g-navi .news_list h3 {
		font-size: 1.5vh;
	}

	#g-navi .menu-item-has-children ul a,
	#g-navi ul li.menu-item-204 ul a {
		transition: unset;
	}
}

@media (max-width: 1410px) and (min-width: 1390px) {
	#page #header .open-hour .at-title {
		margin-right: 10px;
	}
}

@media (max-width: 1390px) {
	#page #header .contact .header {
		font-size: 20px;
	}

	#page #header .contact .tel {
		font-size: 25px;
	}

	#page #header .open-hour {
		width: 60%;
	}
}

@media (max-width: 1329px) {

	.news-container article a .content,
	.recruit-container article a .content {
		align-items: flex-start;
		flex-direction: column;
	}

	#page #newsletter .badge-wrap,
	#page.news-page .newsletter-wrap .badge-wrap,
	#page #news-list .newsletter-wrap .badge-wrap,
	#page #column-list .newsletter-wrap .badge-wrap,
	#page #recruit-list .newsletter-wrap .badge-wrap,
	#page.single .single-contents .single-body .badge-wrap {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		margin: 5px 0 3px 0;
	}

	#page #guidance section#sect1 .section-border .accordion-header:before {
		top: -50px;
		left: -44vw;
		max-width: 400px;
	}

	#page #first section#sect1 .section-border .accordion-header:before {
		top: -180px;
	}
}

@media (max-width: 1316px) {

	.info-bar #biz-hours .weekdays,
	.info-bar #biz-hours .weekend,
	.info-bar #biz-hours .holiday {
		font-size: 18px;
	}

	.info-bar #biz-hours .time_char {
		font-size: 18px;
	}

	.info-bar #biz-hours .btn-close {
		top: 72px;
	}
}

@media (max-width: 1280px) {
	#page #header .open-hour .at-title {
		font-size: 17px;
		margin-right: 10px;
	}

	#page #header .open-hour p,
	#header .open-hour .hour-time {
		font-size: 23px;
	}

	#page #info .inner-icon {
		font-size: 20px;
	}
}

@media (max-width: 1268px) {
	.info-bar #biz-hours table tr td img {
		width: 18px;
	}

	.info-bar #biz-hours.panelactive,
	.info-bar #access-map.panelactive {
		left: -82%;
	}

	.info-bar #access-map .map-title {
		left: 40px;
	}
}

@media (max-width: 1200px) {
	#page #about section#sect1 .section-border .accordion-header:before {
		top: -160px;
	}

	#info .icon-row {
		justify-content: space-around;
	}

	#info .inner-icon,
	#info .icon-other {
		font-size: 20px;
	}

	#at-first h3 {
		font-size: 30px;
	}

	#at-first p {
		margin: 0 0 40px 0;
		font-size: 18px;
		line-height: 2rem;
	}

	#at-first .section-border:before {
		top: -65px;
	}

	#at-first .af-caution::before,
	#page #first .af-caution::before {
		top: -72px;
		width: 80px;
		height: 80px;
	}

	#faq-accord .faq_list:before {
		top: 60px;
	}

	#header .logo {
		margin-right: 43px;
	}

	#header .header-flex {
		width: 77%;
	}

	#header .contact .header {
		font-size: 30px;
	}

	#header .contact .tel {
		font-size: 25px;
	}

	#header .contact .footer {
		font-size: 17px;
	}

	#page #header .logo {
		margin-right: 20px;
		width: 40%;
	}

	#page #header .contact .header {
		font-size: 18px;
	}

	#page #header .contact .tel {
		font-size: 20px;
	}

	#page #header .contact .footer {
		font-size: 14px;
	}

	#page #header .open-hour {
		width: 75%;
	}

	#access h4 {
		font-size: 30px;
	}

	#access p {
		font-size: 18px;
	}

	#page #first #sect1 .section-border:before {
		top: -55px;
		left: -100.5%;
	}

	.pagination span,
	.pagination a {
		width: 50px;
		height: 30px;
		font-size: 16px;
	}

	#page.single .single-contents .post_pagebtn a {
		width: 150px;
		height: 41px;
		font-size: 1.1rem;
	}

	#g-navi .global-bottom .global-news .news_list {
		padding-left: 8px;
	}
}


@media (max-width: 1190px) {
	.teaser-top-lead .lead-photo::before {
		bottom: -10px;
	}

	.info-bar #biz-hours table tr th,
	.info-bar #biz-hours table tr td {
		padding: 0 2px;
	}

	.info-bar #biz-hours .btn-close {
		top: 68px;
	}

	.info-bar #access-map .map-title {
		left: 10px;
	}

	#page #guidance section#sect1 .section-border .accordion-header:before {
		top: -41px;
		left: -45vw;
		max-width: 370px;
	}

	#page #first section#sect1 .section-border .accordion-header:before {
		top: -150px;
		width: 500px;
		left: -59vw;
	}
}

@media (max-width: 1110px) {
	.teaser-top-lead .lead-photo::before {
		bottom: -25px;
	}
}

@media (max-width: 1094px) {

	.info-bar #biz-hours .weekdays,
	.info-bar #biz-hours .weekend,
	.info-bar #biz-hours .holiday {
		font-size: 16px;
	}

	.info-bar #biz-hours .time_char {
		font-size: 16px;
	}

	.info-bar #biz-hours table tr td img {
		width: 16px;
	}

	.info-bar #access-map .map-title {
		left: 0;
		font-size: 16px;
	}

	#page #header .open-hour .at-title {
		font-size: 16px;
	}

	#page #header .open-hour p,
	#header .open-hour .hour-time {
		font-size: 20px;
	}

	#page #info .inner-icon {
		font-size: 18px;
	}

}