@charset "utf-8";
@import url("https://fonts.googleapis.com/css2?family=Lora&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;600;700&family=Playfair+Display:wght@400;500&family=Sawarabi+Mincho&display=swap");

/*
Theme Name: 東邦大学医療センター大森病院 総合診療科｜研修医特設サイト
Theme URI: http://bckmn.com/naked-wordpress
Author: J Beckman rebuiled by m.yamagishi
Author URI: http://wtblue.jp/
Description: A super bare theme for designers who don't know Wordpress PHP but want to build with Wordpress.
Version: 1.0
License: GNU General Public License */

:root{
	--white:#ffffff;
	--text:#111111;
	--blue:#00abf1;
	--blue2:#33bcf4;
	--lightblue:#abe1f8;
	--paleblue:rgba(171,225,248,.6);
	--paler:rgba(171,225,248,.3);
	--caption:rgba(152,224,255,.9);
	--entry:#00abf1;
	--red:#ff726d;
	--green:#5ad891;
	--content:1180px;
}

body,
button,
input,
textarea,
select{
	margin:0;
	padding:0;
	color:var(--text);
	background:var(--white);
	font-family:"Noto Sans JP","Yu Gothic Medium","游ゴシック Medium",YuGothic,Meiryo,sans-serif;
	font-size:16px;
	line-height:1.5;
}

body{
	overflow-x:hidden;
}

html{
	scroll-padding-top:90px;
}

html:has(body.admin-bar){
	scroll-padding-top:122px;
}

@media screen and (max-width:782px){
	html:has(body.admin-bar){
		scroll-padding-top:136px;
	}
}

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

a{
	color:inherit;
	text-decoration:none;
	transition:opacity .3s ease;
}

a:hover{
	opacity:.75;
}

ul,li{
	margin:0;
	padding:0;
	list-style:none;
}

.container{
	width:calc(100% - 260px);
	max-width:var(--content);
	margin:0 auto;
}

.pc{display:block;}
.sp{display:none;}
.blue{color:var(--blue);}

/* header
-------------------------------------------------------------- */
.site-header{
	position:fixed;
	z-index:100;
	display:flex;
	width:100%;
	height:75px;
	align-items:center;
	background:rgba(255,255,255,.75);
}

.site-header_logo{
	display:flex;
	width:auto;
	max-width:520px;
	margin-left:20px;
	align-items:center;
	gap:10px;
	text-decoration:none;
}

.site-header_logo picture,
.site-header_logo img{
	display:block;
	width:307px;
	height:auto;
	flex-shrink:0;
}

.site-header_logo span{
	color:var(--blue);
	font-family:"Sawarabi Mincho",serif;
	font-size:12px;
	line-height:1.4;
	letter-spacing:.08em;
}

.global-menu{
	margin-left:auto;
}
#menu-global{
	display:flex;
	height:75px;
	align-items:center;
}

.global-menu_item-about{order:1;}
.global-menu_item-message{order:2;}
.global-menu_item-qa{order:3;}
.global-menu_item-news{order:4;}
.global-menu_item-research{order:5;}

.menu-item:not(:last-child) a{
	display:flex;
	height:75px;
	padding:0 18px;
	align-items:center;
	font-family:"Sawarabi Mincho",serif;
	font-size:18px;
	white-space:nowrap;
}

.menu-item:last-child{
	display:flex;
	width:180px;
	height:75px;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	margin: 0;
	color:var(--white);
	text-align: center;
	background:var(--blue);
	font-family:"Sawarabi Mincho",serif;
	font-size:16px;
	line-height:1.15;
}

.menu-item:last-child strong{
	display:block;
	font-size:22px;
	font-weight:400;
	letter-spacing:.04em;
}

.navbar-toggler{
	display:none;
}

.global-menu_item-sp,
.global-menu_item-sub,
.global-menu_entry-sp,
.navbar-toggler_close{
	display:none;
}

/* home mv
-------------------------------------------------------------- */
.home-mv{
	position:relative;
	height:980px;
	overflow:hidden;
	background:#d9eef7;
}

.home-mv_slider,
.home-mv_slider .slick-list,
.home-mv_slider .slick-track{
	height:100%;
}

.home-mv_slide{
	position:relative;
	height:100%;
}

.home-mv_slider .slick-slide{
	height:100%;
	position: relative;
}

.home-mv picture,
.home-mv img{
	width:100%;
	height:100%;
}

.home-mv img{
	object-fit:cover;
	object-position:center 45%;
}
.home-mv_slide::after{
	position:absolute;
	inset:75px 0 0;
	z-index:1;
	background:#abdaed;
	mix-blend-mode:multiply;
	content:"";
	pointer-events:none;
}

.home-mv_copy{
	position:absolute;
	top:466px;
	left:50%;
	z-index:2;
	width:100%;
	color:var(--white);
	font-family:"Sawarabi Mincho",serif;
	text-align:center;
	transform:translate(-50%,-50%);
	text-shadow:0 2px 20px rgba(0,0,0,.3);
}

.home-mv_copy h1{
	margin:0 0 24px;
	font-size:65px;
	font-weight:400;
	line-height:1.2;
}

.home-mv_copy p{
	margin:0;
	font-size:30px;
	line-height:50px;
	text-shadow:0 0 15px rgba(0,0,0,.5);
}

/* home news
-------------------------------------------------------------- */
#news-main .page-mv{
	height: 337px;
}
#news-main .page-mv picture {
  width: 100%;
  height: 100%;
}
.home-news{
	display:grid;
	width:calc(100% - 260px);
	max-width:var(--content);
	margin:80px auto 0;
	padding-bottom:80px;
	grid-template-columns:640px 606px;
	gap:64px;
	align-items:start;
}

.home-news_main{
	display:grid;
	grid-template-columns:1fr auto;
	grid-template-areas:
		"heading more"
		"list list";
	align-items:end;
	column-gap:16px;
}

.home-news_heading{
	grid-area:heading;
	display:block;
	margin-bottom:28px;
}

.home-news_title{
	position:relative;
	margin:0;
	font-family:Lora,serif;
	font-size:40px;
	font-weight:400;
	line-height:1;
}

.home-news_title::first-letter{
	margin-right:4px;
	color:var(--lightblue);
	font-size:64px;
	line-height:80px;
}

.home-news_more{
	grid-area:more;
	display:inline-flex;
	min-width:150px;
	height:46px;
	margin-bottom:28px;
	padding:0 18px;
	align-items:center;
	justify-content:center;
	justify-self:end;
	color:var(--white);
	background:rgba(0,171,241,.8);
	font-family:Lora,serif;
	font-size:22px;
}

.home-news_list{
	grid-area:list;
}

.home-news_list a{
	display:grid;
	padding:12px 0 10px 17px;
	border-top:1px solid #aaa;
	grid-template-columns:115px 1fr;
	gap:18px;
	font-family:"Noto Serif JP",serif;
	font-size:16px;
}

.home-news_list a:last-child{
	border-bottom:1px solid #aaa;
}

.home-news_photo{
	width:606px;
	height:344px;
	object-fit:cover;
}

/* home strengths
-------------------------------------------------------------- */
.home-strength{
	position: relative;
	width:calc(100% - 260px);
	max-width:var(--content);
	margin:130px auto 0;
	padding:0 50px 80px;
	border-radius:15px;
	background:var(--paleblue);
}

.home-strength_title{
	margin:0 auto;
	transform: translateY(-85px);
	font-family:"Noto Serif JP",serif;
	font-size:24px;
	font-weight:400;
	letter-spacing:.08em;
	text-align:center;
}

.home-strength_title span{
	font-size: 50px;
}
.home-strength_title b{
	margin-right:6px;
	color:var(--blue2);
	font-family:"Playfair Display",serif;
	font-size:70px;
	font-weight:400;
	line-height:1;
}

.home-strength_item{
	display:grid;
	min-height:320px;
	grid-template-columns:530px 1fr;
	gap:45px;
	align-items:center;
}

.home-strength_item + .home-strength_item{
	margin-top:80px;
}

.home-strength_item:nth-child(2n+1) .home-strength_photo{
	order:2;
}

.home-strength_photo,
.home-strength_photo img{
	width:530px;
	height:320px;
	object-fit:cover;
}

.home-strength_body{
	position:relative;
	width: calc(100% - 585px);
	min-height:280px;
	margin: 0;
	padding:20px 20px 145px 45px;
	overflow:hidden;
}

.home-strength_body h3{
	position:relative;
	z-index:1;
	margin:0 0 18px 0;
	font-family:"Noto Serif JP",serif;
	font-size:40px;
	font-weight:500;
	line-height:1.5;
}
.home-strength_num{
	color:var(--blue2);
	font-family:"Playfair Display",serif;
	font-size:70px;
	line-height:50px;
}

.home-strength_body p{
	position:relative;
	z-index:1;
	margin:0;
	font-family:"Noto Serif JP",serif;
	font-size:15px;
	line-height:2;
}

.home-strength_word{
	position:absolute;
	left:45px;
	bottom:20px;
	color:rgba(255,255,255,.95);
	font-family:"Playfair Display",serif;
	font-size:120px;
	line-height:1;
	pointer-events:none;
}

/* home concept / fields
-------------------------------------------------------------- */
.home-concept{
	display:flex;
	width:calc(100% - 260px);
	max-width:var(--content);
	margin:120px auto 136px;
	gap:60px;
	align-items:center;
}

.home-concept_copy h2{
	margin:0 0 30px;
	font-family:"Sawarabi Mincho",serif;
	font-size:36px;
	font-weight:400;
	line-height:1.8;
}

.home-concept_copy p{
	margin:0;
	font-family:"Noto Serif JP",serif;
	font-size:16px;
	line-height:2;
}

.home-concept_side{
	position:relative;
	height:500px;
}

.home-concept_side img{
	width:380px;
	height:500px;
	object-fit:cover;
	border-radius:10px;
	box-shadow: 55px 46px 0px 0px rgba(171, 225, 248, 0.3);
	-webkit-box-shadow: 55px 46px 0px 0px rgba(171, 225, 248, 0.3);
}

.home-concept_label{
	background-color:var(--blue);
	color: var(--white);
	font-family:"Sawarabi Mincho",serif;
	font-size:46px;
	writing-mode:vertical-rl;
	letter-spacing:.2em;
border-top-left-radius: 15px;
border-bottom-left-radius: 15px;
padding: 72px 34px 60px;
}

.home-field{
	width:calc(100% - 260px);
	max-width:var(--content);
	margin:0 auto 100px;
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:66px 33px;
}

.home-field_item{
	position:relative;
	padding-left:84px;
}

.home-field_label{
	position:absolute;
	top:0;
	left:27px;
	width:40px;
	color:var(--blue);
	font-family:"Sawarabi Mincho",serif;
	font-size:36px;
	line-height:1.2;
	writing-mode:vertical-rl;
}

.home-field_bar{
	position:absolute;
	top:0;
	left:0;
	width:10px;
	height:90px;
	background:var(--paler);
	margin-top: 0;
}

.home-field_item.is-tall .home-field_bar{
	height:165px;
}

.home-field_media{
	position:relative;
	width:480px;
	height:280px;
	overflow:hidden;
	margin-top: 0;
}

.home-field_media img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.home-field_link{
	position: relative;
	display:inline-block;
	margin-top: 0;
	margin-left:87px;
	padding-bottom:4px;
	border-bottom:1px solid var(--blue);
	font-family:"Noto Serif JP",serif;
	font-size:18px;
	color: var(--blue);
	padding: 18px 100px;
}
.home-field_link span{
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

/* entry banner
-------------------------------------------------------------- */
.home-entry{
	position:relative;
	height:382px;
	overflow:hidden;
}

.home-entry img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.home-entry_inner{
	position:absolute;
	bottom:50px;
	left:132px;
	color:var(--white);
}

.home-entry_inner p{
	margin:0 0 28px;
	font-family:"Sawarabi Mincho",serif;
	font-size:32px;
	line-height:1.6;
}

.home-entry_btn{
	display:inline-flex;
	min-width:300px;
	height:70px;
	padding:0 28px;
	align-items:center;
	justify-content:center;
	background-color: var(--white);
	color:var(--blue);
font-family: Noto Sans JP;
font-weight: 500;
font-style: Medium;
font-size: 24px;
line-height: 120%;
letter-spacing: 5%;
box-shadow: 0px 3px 10px 0px #00ABF14D;
}

/* doctor messages
-------------------------------------------------------------- */
.home-doctor{
	padding:0 0 80px;
	background:var(--paler);
}

.home-doctor_intro{
	background-color: var(--white);
	margin: 0 auto;
	padding: 130px 0 50px;
}
.home-doctor_intro-inner{
	max-width:700px;
	margin:0 auto;
	text-align:center;
}

.home-doctor_intro h2{
	margin:0 0 28px;
	font-family:"Sawarabi Mincho",serif;
	font-size:40px;
	font-weight:400;
}

.home-doctor_intro h2 span{
	color:var(--blue);
}

.home-doctor_intro p{
	margin:0;
	font-size:16px;
	line-height:2;
}

.home-doctor_list{
	display:grid;
	width:calc(100% - 260px);
	max-width:var(--content);
	margin:90px auto 0;
	grid-template-columns:1fr 1fr;
	gap:80px 100px;
}

.home-doctor_card{
	position:relative;
	display:block;
	padding-bottom:56px;
	color:inherit;
	text-decoration:none;
}

.home-doctor_photo{
	position:relative;
	width:100%;
	overflow:hidden;
}

.home-doctor_photo img{
	width:100%;
	height:auto;
	object-fit:cover;
	vertical-align:top;
}

.home-doctor_badge{
	position:absolute;
	top:10px;
	left:10px;
	display:inline-flex;
	min-height:36px;
	padding:0 14px;
	align-items:center;
	color:var(--white);
	background:rgba(0,171,241,.9);
	font-family:"Sawarabi Mincho",serif;
	font-size:14px;
}

.home-doctor_quote{
	position:absolute;
	left:33px;
	bottom:48px;
	max-width:320px;
	margin:0;
	padding:6px 12px;
	background:rgba(255,255,255,.7);
	font-family:"Sawarabi Mincho",serif;
	font-size:17px;
	line-height:2.2;
}

.home-doctor_name{
	display:block;
	margin-top:0;
	margin-bottom:-25px;
	color:#9adaf6;
	font-family:Lora,serif;
	font-size:59px;
	line-height:1;
	transform:translateY(-25px);
}

.home-doctor_more{
	display:inline-flex;
	float:right;
	min-width:150px;
	height:46px;
	margin-top:-60px;
	align-items:center;
	justify-content:center;
	color:var(--white);
	background:rgba(0,171,241,.8);
	font-family:Lora,serif;
	font-size:22px;
}

.home-doctor_card::after{
	display:block;
	clear:both;
	content:"";
}

/* page mv
-------------------------------------------------------------- */
.page-mv{
	position:relative;
	height:720px;
	overflow:hidden;
}

.page-mv img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.page-mv_title{
	position:absolute;
	bottom:60px;
	left:0;
	min-width:503px;
	margin:0;
	padding:13px 60px 13px 133px;
	color:var(--white);
	background:rgba(0,171,241,.82);
	font-family:"Sawarabi Mincho",serif;
	font-size:40px;
	font-weight:400;
	line-height:1.4;
}

.message .page-mv_title{
	padding-right:80px;
}

.common-section{
	padding:90px 0;
}

.common-section_pale{
	background:var(--paler);
}

.common-title{
	margin:0 0 50px;
	font-family:"Noto Serif JP",serif;
	font-size:42px;
	font-weight:500;
	line-height:1.5;
}

.common-title small{
	display:block;
	margin-bottom:8px;
	color:var(--blue);
	font-family:"Noto Sans JP",sans-serif;
	font-size:14px;
	letter-spacing:.15em;
}

.common-lead{
	max-width:780px;
	margin:0 auto;
	font-family:"Noto Serif JP",serif;
	font-size:19px;
	line-height:2.2;
}

.btn{
	display:inline-flex;
	min-width:250px;
	min-height:58px;
	padding:10px 28px;
	border:1px solid var(--blue);
	border-radius:100px;
	align-items:center;
	justify-content:center;
	color:var(--blue);
	background:transparent;
	font-size:16px;
	letter-spacing:.08em;
	cursor:pointer;
}

.contact .btn:hover{
	color:var(--white);
	background:#33bcf4;
	border-color:#33bcf4;
}

/* about
-------------------------------------------------------------- */
.about-lead-section{
	padding:110px 0 80px;
}

.about-lead_headline{
	margin:0 0 70px;
	text-align:center;
	font-family:"Sawarabi Mincho",serif;
	font-size:36px;
	font-weight:400;
	line-height:1.5;
}

.about-lead_row{
	display:grid;
	grid-template-columns:606fr 601fr;
	align-items:stretch;
	margin-top: 117px;
}

.about-lead_photo,
.about-lead_photo img{
	display:block;
	width: calc(100% + 20px);
	height:376px;
	object-fit:cover;
}
.about-lead_photo img{
	transform: translateY(-47px) scale(1.03);
	transform-origin: top left;
}

.about-lead_panel{
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:48px 40px;
	background: #ABE1F84D;
	font-family:"Noto Serif JP",serif;
	font-size:18px;
	line-height:2;
	text-align:center;
	border-radius: 10px;
}

.about-lead_panel p{
	margin:0 0 .6em;
}

.about-lead_panel p:last-child{
	margin-bottom:0;
}

.about-anchor{
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top:70px;
	gap:38px 20px;
	justify-items:center;
}

.about-anchor a{
	position: relative;
	width:100%;
	max-width:280px;
	padding:14px 8px;
	border-bottom:1px solid var(--blue);
	color: var(--blue);
	align-items:center;
	font-family:"Noto Serif JP",serif;
	font-size:18px;
	line-height:1.4;
	text-align: center;
}

.about-anchor a span{
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	color:var(--blue);
	font-size:22px;
}

.about-strength{
	padding:80px 0 100px;
}

.about-strength_header{
	display: flex;
	gap: 20px;
	justify-content: center;
	align-items: center;
	margin-bottom: 100px;
}

.about-strength_inner{
	display:grid;
	grid-template-columns:1.05fr .95fr;
	gap:40px;
	align-items:start;
}
.about-strength_title{
	margin:0;
	font-family:"Noto Serif JP",serif;
	font-size:28px;
	font-weight:500;
	line-height:1.6;
	text-align:center;
}

.about-strength_label{
	margin:0;
	text-align:center;
	font-family:"Noto Serif JP",serif;
	font-size:65px;
	letter-spacing:.08em;
}
.about-strength_label b{
	margin-right:6px;
	color:var(--blue);
	font-family:Lora,serif;
	font-size: 110px;
	font-weight:400;
	line-height:1;
	vertical-align:-4px;
}

.about-strength_list{
	margin:0;
	padding:0;
	list-style:none;
}

.about-strength_list li{
	display:grid;
	grid-template-columns:54px 1fr;
	gap:16px;
	align-items:start;
	margin-bottom:36px;
	padding-bottom:28px;
	border-bottom:1px solid #9ddcf6;
}

.about-strength_list li:last-child{
	margin-bottom:0;
	border-bottom:0;
}

/* WPの <br> / 余分なノードで2つ目以降のカラムがずれないように列を固定 */
.about-strength_list li > br{
	display:none;
}
.about-strength_list li > .about-strength_num{
	grid-column:1;
	grid-row:1;
}
.about-strength_list li > div{
	grid-column:2;
	grid-row:1;
}

.about-strength_num{
	color:var(--blue);
	font-family:Lora,serif;
	font-size:42px;
	line-height:1;
}

.about-strength_list h3{
	margin:8px 0 14px;
	font-family:"Noto Serif JP",serif;
	font-size:24px;
	font-weight:500;
}

.about-strength_list p{
	margin:0;
	font-size:15px;
	line-height:2;
}

.about-strength_photos{
	display:grid;
	gap:24px;
	justify-items:end;
	padding-top:90px;
}

.about-strength_photos-sp{
	display:none;
}

.about-strength_photos picture,
.about-strength_photos img{
	display:block;
	width:100%;
	max-width:484px;
	height:auto;
	object-fit:cover;
}

.about-strength_photos picture:last-child,
.about-strength_photos picture:last-child img{
	max-width:379px;
}

.about-banner{
	position:relative;
	height:471px;
	overflow:visible;
}

.about-banner > picture{
	display:block;
	height:100%;
	overflow:hidden;
}

.about-banner img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.about-banner_split{
	display:grid;
	grid-template-columns:1fr 1fr;
}

.about-banner_split picture{
	display:block;
	height:471px;
	overflow:hidden;
}

.about-banner_label{
	position:absolute;
	left:50%;
	bottom:-45px;
	z-index:2;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:20px;
	box-sizing:border-box;
	width:450px;
	min-width:0;
	height:90px;
	margin:0;
	padding:0 36px;
	transform:translateX(-50%);
	border-radius:60px;
	background:var(--blue2);
	color:var(--white);
	font-family:"Noto Serif JP",serif;
	font-size:50px;
	font-weight:700;
	line-height:65px;
	letter-spacing:.2em;
	text-align:center;
	text-shadow:0 3px 20px #76d6ff;
}

.about-banner_label::before{
	content:"";
	flex:0 0 auto;
	width:50px;
	height:56px;
	background-repeat:no-repeat;
	background-position:center;
	background-size:contain;
}

#clinical .about-banner_label::before{
	background-image:url("img/pc-about-icon-clinical.svg");
}
#career .about-banner_label::before{
	width:60px;
	height:49px;
	background-image:url("img/pc-about-icon-career.svg");
}
#education .about-banner_label::before{
	width:54px;
	height:60px;
	background-image:url("img/pc-about-icon-education.svg");
}
#research .about-banner_label::before{
	width:45px;
	height:60px;
	background-image:url("img/pc-about-icon-research.svg");
}
#qa .about-banner_label::before{
	width:45px;
	height:46px;
	background-image:url("img/pc-about-icon-qa.svg");
}
@media only screen and (min-width:1601px){
	#qa .about-banner img{
		object-position:center 30%;
	}
}

.about-block_body{
	padding:120px 0 100px;
}

.about-block_pale{
	background:var(--paler);
}

.about-block_pale .about-block_body{
	background:transparent;
}

.about-block_title{
	margin:0 0 28px;
	font-family:"Noto Serif JP",serif;
	font-size:32px;
	font-weight:500;
	line-height:1.6;
	text-align:center;
}

.about-block_title-choice{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
}

.about-block_title-choice b{
	color:var(--blue);
	font-family:Lora,serif;
	font-size:46px;
	font-weight:400;
	line-height:1;
}

.about-block_title-research{
	text-align:center;
}

.about-block_text{
	max-width:994px;
	margin:0 auto 50px;
	font-size:16px;
	line-height:2;
	text-align:center;
}

.about-accordion_toggle{
	display:none;
}

.about-accordion_panel{
	display:block;
}

.about-chart{
	margin:0 auto 40px;
	max-width:948px;
	text-align:center;
}

.about-chart_label{
	display:inline-block;
	min-width:430px;
	margin:24px 0 16px;
	padding:8px 24px;
	color:var(--white);
	background:var(--blue);
	font-family:"Noto Serif JP",serif;
	font-size:20px;
	text-align:center;
}

.about-block_body > .about-chart_label{
	display:block;
	width:fit-content;
	margin:0 auto 20px;
}

.about-chart img{
	width:100%;
	height:auto;
}

.about-chart_note{
	margin:16px 0 0;
	font-size:13px;
	text-align:right;
}

.about-chart_caption{
	margin:0;
	font-size:15px;
	line-height:2;
	text-align:center;
}

.about-textlink{
	display:flex;
	width:fit-content;
	min-width:280px;
	margin:30px auto 0;
	padding:0 8px 12px;
	border-bottom:1px solid #999;
	align-items:center;
	justify-content:space-between;
	gap:24px;
	font-family:"Noto Serif JP",serif;
	font-size:18px;
}

.about-textlink span{
	color:var(--blue);
}

/* clinical block body (Figma) */
#clinical .about-block_body{
	padding-top:120px;
}
#clinical .about-block_title{
	margin:0 0 36px;
	font-family:"Sawarabi Mincho",serif;
	font-size:40px;
	font-weight:400;
	line-height:50px;
	letter-spacing:0;
}
#clinical .about-block_title-accent{
	color:var(--blue2);
	font-size:50px;
	letter-spacing:.1em;
}
#clinical .about-block_text{
	max-width:994px;
	margin:0 auto 48px;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:2;
	text-align:center;
}
#clinical .about-block_em{
	color:var(--blue2);
	font-weight:700;
}

/* clinical performance block (Figma) */
#clinical .about-performance{
	margin:0 auto 50px;
	max-width:948px;
}
#clinical .about-performance_title{
	margin:0 0 16px;
	font-family:"Sawarabi Mincho",serif;
	font-size:26px;
	font-weight:400;
	line-height:50px;
	text-align:center;
}
#clinical .about-performance_lead{
	max-width:640px;
	margin:0 auto 40px;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:2;
	text-align:center;
}
#clinical .about-performance_figure{
	margin:0 auto 32px;
	max-width:632px;
}
#clinical .about-performance_figure img{
	display:block;
	width:100%;
	height:auto;
}
#clinical .about-performance_stats{
	margin:0;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:2;
	text-align:center;
}
#clinical .about-performance_stats-mark{
	background:linear-gradient(transparent 62%,#fff9a5 62%);
	box-decoration-break:clone;
	-webkit-box-decoration-break:clone;
	padding:0 4px;
}

#clinical .about-chart{
	margin:0 auto 28px;
}
#clinical .about-chart_note{
	margin:12px 0 0;
	font-size:13px;
	text-align:right;
}
#clinical .about-chart_label{
	display:flex;
	align-items:center;
	justify-content:center;
	box-sizing:border-box;
	width:430px;
	max-width:100%;
	min-width:0;
	height:40px;
	margin:62px auto 50px;
	padding:0 16px;
	border:1px solid #3cc6ff;
	color:#3cc6ff;
	background:none;
	font-family:"Noto Serif JP",serif;
	font-size:22px;
	font-weight:700;
	letter-spacing:.1em;
	line-height:1;
	text-align:center;
}
#clinical .about-chart_caption{
	margin:0 auto 8px;
	max-width:955px;
	font-size:15px;
	line-height:2;
	text-align:center;
}
#clinical .about-textlink{
	color:var(--blue2);
	border-bottom-color:var(--blue2);
	font-family:"Noto Sans JP",sans-serif;
	font-size:21px;
	font-weight:400;
	justify-content:center;
	gap:8px;
	min-width:280px;
}

/* career block body (Figma) */
#career .about-block_body{
	padding-top:120px;
}
#career .about-block_title{
	margin:0 0 36px;
	font-family:"Sawarabi Mincho",serif;
	font-size:40px;
	font-weight:400;
	line-height:50px;
	letter-spacing:0;
}
#career .about-block_title-accent{
	color:var(--blue2);
	font-size:50px;
	letter-spacing:.1em;
}
#career .about-block_title-choice{
	gap:4px;
}
#career .about-block_title-choice b{
	color:var(--blue2);
	font-family:"Sawarabi Mincho",serif;
	font-size:50px;
	font-weight:400;
	line-height:50px;
}
#career .about-block_text{
	max-width:1038px;
	margin:0 auto 48px;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:2;
	text-align:center;
}
#career .about-block_em{
	color:var(--blue2);
	font-weight:700;
}

/* education block title / lead text (Figma) */
#education .about-block_title{
	margin:0 0 36px;
	font-family:"Sawarabi Mincho",serif;
	font-size:40px;
	font-weight:400;
	line-height:50px;
	letter-spacing:0;
}
#education .about-block_title-accent{
	color:var(--blue2);
	font-size:50px;
	letter-spacing:.1em;
}
#education .about-block_text{
	max-width:994px;
	margin:0 auto 48px;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:2;
	text-align:center;
}
#education .about-block_em{
	color:var(--blue2);
	font-weight:700;
}

/* research block title / panel (Figma) */
#research .about-block_title{
	margin:0 0 36px;
	font-family:"Sawarabi Mincho",serif;
	font-size:40px;
	font-weight:400;
	line-height:1.8;
	letter-spacing:0;
	text-align:center;
}
#research .about-block_title-accent{
	color:var(--blue2);
	font-size:50px;
}
#research .about-block_text{
	max-width:1038px;
	margin:0 auto 48px;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:2;
	text-align:center;
}
#research .about-chart_label{
	display:flex;
	align-items:center;
	justify-content:center;
	box-sizing:border-box;
	width:430px;
	max-width:100%;
	min-width:0;
	height:40px;
	margin:0 auto 50px;
	padding:0 16px;
	border:1px solid #3cc6ff;
	color:#3cc6ff;
	background:none;
	font-family:"Noto Serif JP",serif;
	font-size:22px;
	font-weight:700;
	letter-spacing:.1em;
	line-height:1;
	text-align:center;
}
#research .about-research_item h4{
	margin:0 0 14px;
	min-height:3em; /* 2行分を確保し、画像の縦位置を揃える */
	font-family:"Noto Serif JP",serif;
	font-size:15px;
	font-weight:600;
	line-height:1.5;
	letter-spacing:.1em;
	text-align:center;
}
#research .about-research_links .about-textlink{
	display:flex;
	min-width:0;
	width:100%;
	max-width:295px;
	margin:0 auto;
	padding:0 0 12px;
	border-bottom:1px solid #33bcf4;
	align-items:center;
	justify-content:center;
	gap:8px;
	color:#33bcf4;
	font-family:"Noto Sans JP",sans-serif;
	font-size:21px;
	font-weight:400;
	line-height:1.5;
	text-align:center;
}
#research .about-research_links > br{
	display:none;
}

.about-career_diagram{
	margin:0 auto 70px;
	text-align:center;
}

.about-career_diagram img{
	width:100%;
	max-width:1180px;
	height:auto;
}

.about-career_diagram figcaption{
	margin-top:10px;
	font-size:13px;
	text-align:right;
}

.about-career_choice{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:40px 48px;
	margin:40px 0 80px;
	align-items:start;
}

.about-career_col{
	display:flex;
	flex-direction:column;
	align-items:center;
	box-sizing:border-box;
	width:100%;
	padding:36px 66px 48px;
	border-radius:10px;
	background:var(--paler);
}

.about-career_venn{
	position:relative;
	isolation:isolate;
	width:450px;
	max-width:100%;
	height:471px;
	margin:0 auto;
}

.about-career_fill{
	position:absolute;
	width:300px;
	height:300px;
	border-radius:50%;
}

.about-career_fill-a{
	top:0;
	left:0;
	background:#61d0ff;
}

.about-career_fill-b{
	right:0;
	bottom:0;
	background:#c9bafd;
	mix-blend-mode:multiply;
}

.about-career_circle{
	position:absolute;
	display:flex;
	width:300px;
	height:300px;
	border:0;
	border-radius:50%;
	align-items:center;
	justify-content:center;
	background:transparent;
	color:var(--white);
	font-family:"Noto Sans JP",sans-serif;
	font-size:35px;
	font-weight:700;
	line-height:1.45;
	text-align:center;
	z-index:1;
}

.about-career_circle-a{
	top:0;
	left:0;
}

.about-career_circle-b{
	right:0;
	bottom:0;
}

.about-career_or{
	position:absolute;
	top:50%;
	left:50%;
	z-index:2;
	color:var(--white);
	font-family:"Noto Sans JP",sans-serif;
	font-size:35px;
	font-weight:700;
	line-height:1.45;
	transform:translate(-50%,-50%);
}

.about-career_board-double{
	display:flex;
	align-items:center;
	justify-content:center;
	box-sizing:border-box;
	width:435px;
	max-width:100%;
	aspect-ratio:1;
	margin:0 auto;
	padding:40px 48px;
	border:0;
	border-radius:50%;
	background:linear-gradient(180deg,rgba(60,198,255,.8) 1%,rgba(222,177,255,.8) 100%);
}

.about-career_board-title{
	margin:0;
	color:var(--white);
	font-family:"Noto Sans JP",sans-serif;
	font-size:35px;
	font-weight:700;
	line-height:1.45;
	text-align:center;
}

.about-career_board-text{
	max-width:400px;
	margin:28px auto 0;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:2;
	text-align:center;
}

.about-career_boards{
	display:grid;
	gap:24px;
}

.about-career_board{
	padding:36px 32px;
	border:1px solid #9ddcf6;
	background:var(--white);
}

.about-career_board p{
	margin:0;
	line-height:2;
}

.about-program{
	margin-bottom:70px;
}

.about-program_heading,
.about-program_sub{
	font-family:"Noto Sans JP",sans-serif;
	font-size:30px;
	font-weight:500;
	line-height:1.67;
	border-bottom-style:solid;
	border-bottom-width:1px;
}

.about-program_heading{
	margin:0 0 18px;
	padding-bottom:18px;
}

.about-program_sub{
	padding-bottom:14px;
}

.about-program_heading-cyan,
.about-program_sub-cyan{
	color:#40c6ff;
	border-bottom-color:#40c6ff;
}

.about-program_heading-purple,
.about-program_sub-purple{
	color:#bc8cf0;
	border-bottom-color:#bc8cf0;
}

.about-program_heading-pink{
	color:#ff8ae2;
	border-bottom-color:#ff8ae2;
}

.about-program p,
.about-edu_copy > p,
.about-subspec_item > p{
	margin:0 0 1.2em;
	line-height:2;
}

.about-hospital_intro{
	margin:35px 0 0;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:2;
	color:#111;
}

.about-subspec .about-subspec_em{
	color:#ff8ae2;
	font-weight:700;
}

.about-program_schedule,
.about-program_schedule img{
	display:block;
	width:100%;
	height:auto;
}

.about-program_scroll{
	position:relative;
}

.about-program_scroll-hint{
	display:none;
}

.about-hospital_list{
	display:grid;
	margin-top:40px;
	grid-template-columns:repeat(3,1fr);
	gap:40px 20px;
}

.about-hospital_item h5{
	margin:0;
	padding:8px 12px;
	color:rgba(0,0,0,.94);
	background:#f5e7fd;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:500;
	line-height:1.4;
}

.about-hospital_place{
	margin:8px 0 10px;
	font-family:"Noto Sans JP",sans-serif;
	font-size:14px;
	font-weight:500;
}

.about-hospital_body{
	display:flex;
	flex-direction:column;
}

.about-hospital_body > br,
.about-hospital_body > p:empty{
	display:none;
}

.about-hospital_media{
	display:block;
	overflow:hidden;
}

.about-hospital_media picture{
	display:block;
}

.about-hospital_media img{
	display:block;
	width:100%;
	height:180px;
	object-fit:cover;
	object-position:center top;
}

.about-hospital_meta{
	display:flex;
	align-items:flex-start;
	gap:14px;
	margin-top:14px;
}

.about-hospital_badge{
	flex:0 0 auto;
	box-sizing:border-box;
	min-width:130px;
	padding:6px 14px;
	border:1px solid #bc8cf0;
	border-radius:20px;
	color:#bc8cf0;
	background:var(--white);
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:700;
	line-height:1.4;
	text-align:center;
}

.about-hospital_badge-clinic{
	min-width:145px;
}

.about-hospital_badge-wide{
	min-width:208px;
}

.about-hospital_desc{
	margin:2px 0 0;
	flex:1 1 auto;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:1.4;
}

.about-subspec{
	margin-top:80px;
}

.about-subspec .about-hospital_intro{
	margin-bottom:30px;
}

.about-subspec_list{
	display:grid;
	margin:40px 0 60px;
	grid-template-columns:1fr 1fr;
	gap:40px 101px;
}

.about-subspec_item h5{
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:40px;
	margin:0;
	padding:0 20px;
	border:1px solid #ffb7ed;
	color:#ffb7ed;
	background:var(--white);
	font-family:"Noto Serif JP",serif;
	font-size:22px;
	font-weight:700;
	line-height:1;
	letter-spacing:.1em;
	text-align:center;
}

.about-subspec_item picture,
.about-subspec_item img{
	display:block;
	width:100%;
	height:252px;
	object-fit:cover;
}

.about-subspec_item picture{
	margin-top:30px;
}

.about-subspec_item > p{
	margin:37px 0 0;
	text-align:justify;
}

.about-edu_row{
	display:grid;
	margin:70px 0;
	grid-template-columns:1fr 1fr;
	grid-template-areas:
		"photo heading"
		"photo copy";
	gap:20px 50px;
	align-items:start;
}

.about-edu_row-reverse{
	grid-template-areas:
		"heading photo"
		"copy photo";
}

.about-edu_heading{
	grid-area:heading;
	margin-top:0;
	color:#111;
	border-bottom-color:#111;
	font-weight:400;
}

.about-edu_copy{
	grid-area:copy;
}

.about-edu_lead{
	margin:0 0 18px !important;
	color:#33bcf4;
	font-family:"Noto Sans JP",sans-serif;
	font-size:22px;
	font-weight:500;
	line-height:1.5;
}

.about-edu_copy > p:not(.about-edu_lead){
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	text-align:justify;
}

.about-edu_photo{
	grid-area:photo;
}

.about-edu_photo,
.about-edu_photo img{
	display:block;
	width:100%;
	height:358px;
	object-fit:cover;
}

.about-edu_cards{
	display:grid;
	margin:50px 0 70px;
	grid-template-columns:repeat(3,1fr);
	gap:49px;
}

.about-edu_card h5{
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:40px;
	margin:0;
	padding:0 16px;
	border:1px solid #33bcf4;
	color:#33bcf4;
	background:var(--white);
	font-family:"Noto Serif JP",serif;
	font-size:22px;
	font-weight:700;
	line-height:1;
	letter-spacing:.1em;
	text-align:center;
}

.about-edu_card picture{
	margin-top:30px;
}

.about-edu_card picture,
.about-edu_card img{
	display:block;
	width:100%;
	height:252px;
	object-fit:cover;
}

.about-edu_card p{
	margin:37px 0 0;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	line-height:2;
	text-align:justify;
}

.about-edu_links{
	display:flex;
	margin:-30px 0 60px;
	justify-content:center;
	gap:40px;
	flex-wrap:wrap;
}

#education .about-edu_links .about-textlink{
	display:flex;
	min-width:0;
	width:auto;
	margin:0;
	padding:0 0 12px;
	border-bottom:1px solid #33bcf4;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	color:#33bcf4;
	font-family:"Noto Sans JP",sans-serif;
	font-size:21px;
	font-weight:400;
	line-height:1.5;
}

.about-net_list{
	display:grid;
	margin-top:40px;
	grid-template-columns:1fr 1fr;
	gap:20px;
}

/* WP wpautop が挿入する改行を打ち消す */
.about-net_list > br,
.about-net_item > br{
	display:none;
}

.about-net_item{
	position:relative;
	display:block;
	box-sizing:border-box;
	min-height:132px;
	padding:30px 70px 28px 50px;
	border:none;
	border-radius:15px;
	background:var(--white);
	box-shadow:0 2px 15px 0 rgba(51,188,244,.4);
}

.about-net_item strong{
	display:block;
	margin-bottom:10px;
	font-family:"Noto Sans JP",sans-serif;
	font-size:26px;
	font-weight:400;
	line-height:1.5;
}

.about-net_item span{
	display:block;
	font-family:"Noto Sans JP",sans-serif;
	font-size:14px;
	line-height:1.5;
}

.about-net_item em{
	position:absolute;
	top:50%;
	right:28px;
	width:36px;
	height:36px;
	border-radius:50%;
	background:var(--blue2);
	color:var(--white);
	font-style:normal;
	font-family:"Noto Sans JP",sans-serif;
	font-size:18px;
	line-height:36px;
	text-align:center;
	transform:translateY(-50%);
}

.about-research_list{
	display:grid;
	margin:30px 0 50px;
	grid-template-columns:repeat(3,1fr);
	gap:24px 20px;
	align-items:start;
}

.about-research_item picture,
.about-research_item img{
	display:block;
	width:100%;
	height:266px;
	object-fit:cover;
}

.about-research_item h4{
	margin:0 0 14px;
	min-height:3em;
	font-family:"Noto Serif JP",serif;
	font-size:15px;
	font-weight:600;
	line-height:1.5;
	letter-spacing:.1em;
	text-align:center;
}

.about-research_links{
	display:grid;
	align-content:start;
	justify-items:center;
	gap:18px;
	/* h4(2行)+余白分下げて、感染症カードの画像付近に揃える */
	padding-top:calc(3em + 14px);
}

.about-research_links .about-textlink{
	margin:0 auto;
	width:100%;
	max-width:295px;
	box-sizing:border-box;
	justify-content:center;
	text-align:center;
}

.about-qa_intro{
	margin:0 0 40px;
	text-align:center;
	font-family:"Noto Sans JP",sans-serif;
	font-size:22px;
	font-weight:400;
	line-height:2;
}

.about-qa_list{
	max-width:980px;
	margin:0 auto;
}

.about-qa_list details{
	margin-bottom:16px;
	border:none;
	border-radius:15px;
	background:var(--white);
	overflow:hidden;
}

.about-qa_list summary{
	display:flex;
	position:relative;
	padding:18px 60px 18px 20px;
	align-items:center;
	gap:18px;
	color:var(--text);
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:500;
	line-height:1.5;
	cursor:pointer;
	list-style:none;
}

.about-qa_list summary::-webkit-details-marker{
	display:none;
}

.about-qa_list summary::after{
	position:absolute;
	right:24px;
	top:50%;
	content:"+";
	color:var(--blue2);
	font-family:"Noto Sans JP",sans-serif;
	font-size:28px;
	font-weight:400;
	line-height:1;
	transform:translateY(-50%);
}

.about-qa_list details[open] summary::after{
	content:"−";
}

.about-qa_q,
.about-qa_a{
	display:inline-flex;
	width:36px;
	height:36px;
	flex:0 0 36px;
	border-radius:50%;
	align-items:center;
	justify-content:center;
	color:var(--white);
	font-family:"Noto Sans JP",sans-serif;
	font-size:18px;
	font-weight:500;
	line-height:1;
}

.about-qa_q{
	background:var(--blue2);
}

.about-qa_a{
	background:var(--red);
}

.about-qa_answer{
	display:flex;
	padding:8px 40px 28px 20px;
	align-items:flex-start;
	gap:18px;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:25px;
	color:#111;
}

.about-qa_answer p{
	margin:6px 0 0;
	line-height:25px;
}

.about-mvv_hero{
	position:relative;
	height:720px;
	overflow:hidden;
}

.about-mvv_hero img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.about-mvv_circles{
	position:absolute;
	left:8%;
	top:12%;
	width:520px;
	height:520px;
}

.about-mvv_circle{
	position:absolute;
	z-index:1;
	width:320px;
	height:320px;
	border-radius:50%;
	background:rgba(255,255,255,.8);
}

.about-mvv_label{
	position:absolute;
	z-index:2;
	display:flex;
	width:320px;
	height:320px;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	color:var(--text);
	text-align:center;
	pointer-events:none;
}

.about-mvv_label strong{
	font-family:Lora,serif;
	font-size:64px;
	font-weight:400;
	line-height:1.2;
	color:var(--blue2);
}

.about-mvv_label small{
	margin-top:8px;
	font-family:"Noto Serif JP",serif;
	font-size:32px;
	color:var(--text);
}

.about-mvv_label-vision strong,
.about-mvv_label-value strong{
	font-size:64px;
}

.about-mvv_label-vision small,
.about-mvv_label-value small{
	font-size:28px;
}

.about-mvv_circle-mission,
.about-mvv_label-mission{
	top:0;
	left:90px;
}

.about-mvv_circle-vision,
.about-mvv_label-vision{
	left:0;
	bottom:0;
}

.about-mvv_circle-value,
.about-mvv_label-value{
	right:0;
	bottom:0;
}

.about-mvv_body{
	padding:80px 0 100px;
}

.about-mvv_item{
	display:grid;
	margin-bottom:70px;
	grid-template-columns:minmax(260px,.85fr) minmax(0,1.55fr);
	gap:0;
	align-items:center;
}

.about-mvv_item-vision{
	grid-template-columns:minmax(0,1.55fr) minmax(260px,.85fr);
}

.about-mvv_item-vision > p{
	grid-column:2;
	position:relative;
	z-index:2;
	margin:0 0 0 -120px;
	line-height:2;
}

.about-mvv_item picture{
	position:relative;
	z-index:1;
	display:block;
	width:100%;
}

.about-mvv_item img{
	display:block;
	width:100%;
	height:420px;
	object-fit:cover;
}

.about-mvv_item-value img{
	height:auto;
	aspect-ratio:900 / 731;
}

.about-mvv_text{
	position:relative;
	z-index:2;
	margin-right:-120px;
}

.about-mvv_item-vision .about-mvv_text{
	margin-right:0;
	margin-left:-120px;
}

.about-mvv_text h2{
	margin:0 0 18px;
	color:var(--blue2);
	font-family:Lora,serif;
	font-size:80px;
	font-weight:400;
	line-height:1.3;
}

.about-mvv_text h3{
	margin:0 0 20px;
	font-family:"Sawarabi Mincho",serif;
	font-size:30px;
	font-weight:400;
	line-height:1.5;
}

.about-mvv_text p{
	margin:0;
	line-height:2;
}

.about-mvv_value{
	display:grid;
	gap:36px;
}

.about-mvv_value_head{
	display:flex;
	margin-bottom:12px;
	align-items:center;
	gap:20px;
}

.about-mvv_value_head span{
	display:inline-flex;
	flex-shrink:0;
	box-sizing:border-box;
	width:70px;
	height:39px;
	align-items:center;
	justify-content:center;
	border-radius:10px;
	color:var(--white);
	background:var(--blue2);
	font-family:"Noto Sans JP",sans-serif;
	font-size:22px;
	font-weight:500;
	line-height:1;
	text-align:center;
}

.about-mvv_value_head h3{
	margin:0;
	font-family:"Sawarabi Mincho",serif;
	font-size:24px;
	font-weight:400;
	line-height:1.5;
	white-space:nowrap;
}

/* message
-------------------------------------------------------------- */
.message-video-section{
	padding-bottom:0;
}

.message-video{
	position:relative;
	width:100%;
	aspect-ratio:16 / 9;
	overflow:hidden;
	background:#000;
}

.message-video iframe{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	border:0;
}

.message-list{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:80px 100px;
}

.message-list_item{
	position:relative;
	display:block;
	padding-bottom:56px;
	color:inherit;
	text-decoration:none;
}

.message-list_photo{
	position:relative;
	width:100%;
	overflow:hidden;
}

.message-list_photo img{
	width:100%;
	height:auto;
	object-fit:cover;
	vertical-align:top;
}

.message-list_badge{
	position:absolute;
	top:10px;
	left:10px;
	display:inline-flex;
	min-height:36px;
	padding:0 14px;
	align-items:center;
	color:var(--white);
	background:rgba(0,171,241,.9);
	font-family:"Sawarabi Mincho",serif;
	font-size:14px;
}

.message-list_quote{
	position:absolute;
	left:33px;
	bottom:48px;
	max-width:320px;
	margin:0;
	padding:6px 12px;
	background:rgba(255,255,255,.7);
	font-family:"Sawarabi Mincho",serif;
	font-size:17px;
	line-height:2.2;
}

.message-list_name{
	display:block;
	margin-top:0;
	margin-bottom:-25px;
	color:#9adaf6;
	font-family:Lora,serif;
	font-size:59px;
	line-height:1;
	transform:translateY(-25px);
}

.message-list_more{
	display:inline-flex;
	float:right;
	min-width:150px;
	height:46px;
	margin-top:-60px;
	align-items:center;
	justify-content:center;
	color:var(--white);
	background:rgba(0,171,241,.8);
	font-family:Lora,serif;
	font-size:22px;
}

.message-list_item::after{
	display:block;
	clear:both;
	content:"";
}

.message-detail{
	padding:0 0 80px;
	scroll-margin-top:90px;
}

body.admin-bar .message-detail{
	scroll-margin-top:122px;
}

@media screen and (max-width:782px){
	body.admin-bar .message-detail{
		scroll-margin-top:136px;
	}
}

.message-detail_head{
	position:relative;
}

.message-detail_hero{
	height:auto;
	overflow:hidden;
}

.message-detail_hero img{
	width:100%;
	height:auto;
	object-fit:cover;
}

.message-detail_intro{
	position:absolute;
	left:0;
	right:0;
	top:auto;
	bottom:0;
	z-index:2;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	padding:0 0 12px;
	height:auto;
}

.message-detail_badge{
	display:block;
	width:fit-content;
	min-height:34px;
	padding:0 16px;
	line-height:34px;
	color:var(--white);
	background:rgba(0,171,241,.8);
	font-family:Lora,serif;
	font-size:18px;
}

.message-detail_name{
	position:relative;
	display:block;
	width:fit-content;
	isolation:isolate;
	margin:14px 0 18px;
	font-family:"Noto Serif JP",serif;
	font-size:42px;
	font-weight:600;
	line-height:1.2;
}

.message-detail_name::after{
	content:"";
	position:absolute;
	left:-30px;
	bottom:-50px;
	z-index:-1;
	width:504px;
	max-width:calc(100% + 40px);
	height:168px;
	background:url("img/pc-message-imgEllipse11.svg") no-repeat left center/contain;
	pointer-events:none;
}

.message-detail_name span{
	margin-left:.35em;
	font-size:.57em;
	font-weight:600;
}

.message-detail_spec{
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
	gap:6px 5px;
	max-width:400px;
	margin:0;
	padding:0;
}

.message-detail_spec-line{
	display:inline-block;
	padding:4px 7px;
	background:rgba(255,255,255,.7);
	font-family:"Sawarabi Mincho",serif;
	font-size:16px;
	line-height:1.5;
	white-space:nowrap;
}

.message-detail_profile{
	padding:50px 0;
	background:rgba(171,225,248,.15);
}

.message-detail_profile_col + .message-detail_profile_col{
	margin-top:40px;
}

.message-detail_heading{
	display:flex;
	margin:0 0 24px;
	align-items:center;
	gap:16px;
	font-family:Lora,serif;
	font-size:22px;
	font-weight:400;
	line-height:1.2;
}

.message-detail_heading::after{
	content:"";
	flex:1;
	height:2px;
	background:#9adaf6;
}

.message-detail_heading + .message-detail_heading,
.message-detail_certs + .message-detail_heading,
.message-detail_career + .message-detail_heading{
	margin-top:40px;
}

.message-detail_career,
.message-detail_certs{
	margin:0;
	padding:0;
	list-style:none;
	font-family:"Noto Serif JP",serif;
	font-size:15px;
	line-height:2;
}

.message-detail_career li,
.message-detail_certs li{
	position:relative;
	padding-left:1.15em;
}

.message-detail_career li::before,
.message-detail_certs li::before{
	content:"・";
	position:absolute;
	left:0;
}

.message-detail_certs + .message-detail_certs{
	margin-top:1.2em;
}

.message-detail_body{
	padding-top:50px;
}

.message-detail_qa{
	margin:0 0 40px;
}

.message-detail_q{
	margin:0 0 18px;
	color:var(--blue);
	font-family:"Noto Serif JP",serif;
	font-size:20px;
	font-weight:500;
	line-height:2;
	text-decoration-line:underline;
	text-decoration-style:dashed;
	text-decoration-color:rgba(0,171,241,.55);
	text-decoration-thickness:1px;
	text-underline-offset:.45em;
}

.message-detail_qa h3{
	margin:0 0 18px;
	font-family:"Noto Serif JP",serif;
	font-size:26px;
	font-weight:600;
	line-height:1.6;
}

.message-detail_qa p{
	margin:0 0 1em;
	font-family:"Noto Serif JP",serif;
	font-size:15px;
	line-height:1.9;
	text-align:justify;
}

.message-detail_qa p:last-child{
	margin-bottom:0;
}

.message-detail_photo{
	margin:0 0 48px;
}

.message-detail_photo img{
	width:100%;
	height:360px;
	object-fit:cover;
}

/* news / contact
-------------------------------------------------------------- */
.year-tabs{
	display:grid;
	margin-bottom:50px;
	grid-template-columns:repeat(6,1fr);
	gap:20px;
}

.news-preview-notice{
	margin:0 0 24px;
	padding:12px 16px;
	color:#7a4b00;
	background:#fff4e0;
	border:1px solid #e0c080;
	font-size:14px;
}

.year-tabs a{
	display:flex;
	height:50px;
	border:1px solid var(--blue);
	align-items:center;
	justify-content:center;
	color:var(--blue);
	background:var(--white);
	cursor:pointer;
	transition:background .2s ease,color .2s ease;
}

.year-tabs a:hover,
.year-tabs a.is-active{
	color:var(--white);
	background:rgba(0,171,241,.5);
	opacity:1;
}

.news-article{
	display:none;
	border:1px solid #666;
}

.news-article.is-active{
	display:block;
}

.news-year{
	margin:0;
	padding:8px 20px;
	color:var(--white);
	background:rgba(0,171,241,.5);
	font-size:22px;
	font-weight:400;
}

.news-entry{
	scroll-margin-top:90px;
}

body.admin-bar .news-entry{
	scroll-margin-top:122px;
}

@media screen and (max-width:782px){
	body.admin-bar .news-entry{
		scroll-margin-top:136px;
	}
}

.news-entry + .news-entry{
	border-top:1px solid #aaa;
}

.news-entry.is-open{
	background:rgba(0,171,241,.05);
}

.news-item{
	display:grid;
	width:100%;
	padding:28px 40px;
	grid-template-columns:130px 1fr auto;
	gap:25px;
	align-items:center;
	border:0;
	background:transparent;
	text-align:left;
	cursor:pointer;
	font:inherit;
	color:inherit;
}

.news-item_title{
	font-family:"Noto Serif JP",serif;
	font-size:18px;
	font-weight:400;
	line-height:1.6;
}

.news-item_icon{
	display:inline-flex;
	min-width:1.2em;
	justify-content:center;
	color:var(--blue);
	font-family:"Noto Serif JP",serif;
	font-size:22px;
	font-weight:400;
	line-height:1;
}

.news-body{
	display:none;
	min-width:0;
	padding:0 40px 40px 195px;
	overflow-wrap:anywhere;
	word-break:break-word;
}

.news-entry.is-open .news-body{
	display:block;
}

.news-body p{
	margin:0 0 1.2em;
	line-height:2;
}

.news-body p:last-child{
	margin-bottom:0;
}

.news-body a{
	overflow-wrap:anywhere;
	word-break:break-word;
}

.news-body img,
.news-body .wp-block-image,
.news-body .wp-block-image img,
.news-body figure{
	max-width:100%;
	height:auto;
}

.news-body .wp-block-image{
	margin:0 0 1.2em;
}

.page-id-27 .page-mv{
	height: 337px;
}
.page-id-27 .page-mv picture{
	width: 100%;
	height: 100%;
}
.contact-form{
	width:calc(100% - 60px);
	max-width:1100px;
	margin:0 auto;
}

.contact-form_row{
	margin-bottom:28px;
}

.contact-form_row label{
	display:block;
	margin-bottom:8px;
	font-family:"Noto Serif JP",serif;
	font-size:24px;
}

.required{color:var(--red);}
.optional{color:var(--green);}

.contact-form_row input,
.contact-form_row textarea{
	width:100%;
	padding:12px 16px;
	border:1px solid #666;
	border-radius:0;
	font-family:"Noto Serif JP",serif;
	font-size:22px;
	box-sizing:border-box;
}

.contact-form_row input{height:60px;}
.contact-form_row textarea{
	min-height:415px;
	resize:vertical;
}

.form-submit{
	margin-top:60px;
	text-align:center;
}

div.wpcf7{
	width:calc(100% - 60px);
	max-width:1100px;
	margin:0 auto;
	padding:90px 0;
}

div.wpcf7 .wpcf7-form p{
	margin:0 0 28px;
	font-family:"Noto Serif JP",serif;
	font-size:24px;
	line-height:1.5;
}

div.wpcf7 .wpcf7-form p:has(.wpcf7-submit){
	margin:60px 0 0;
	text-align:center;
	font-size:16px;
}

.wpcf7 .any{
	color:var(--green);
}

.wpcf7 .wpcf7-form-control-wrap{
	display:block;
	width:100%;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="tel"],
.wpcf7 textarea{
	width:100%;
	padding:12px 16px;
	border:1px solid #666;
	border-radius:0;
	font-family:"Noto Serif JP",serif;
	font-size:22px;
	box-sizing:border-box;
	background:#fff;
	appearance:none;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="tel"]{
	height:60px;
}

.wpcf7 textarea{
	min-height:415px;
	resize:vertical;
}

.wpcf7 input[type="submit"],
.wpcf7 .wpcf7-submit{
	display:inline-flex;
	width:auto;
	height:auto;
	min-width:250px;
	min-height:58px;
	padding:10px 28px;
	border:1px solid var(--blue);
	border-radius:100px;
	align-items:center;
	justify-content:center;
	color:var(--blue);
	background:transparent;
	font-family:"Noto Sans JP",sans-serif;
	font-size:16px;
	letter-spacing:.08em;
	cursor:pointer;
}

.wpcf7 .wpcf7-submit:hover{
	color:var(--white);
	background:#33bcf4;
	border-color:#33bcf4;
}

.wpcf7 .wpcf7-not-valid-tip{
	display:block;
	margin-top:8px;
	color:var(--red);
	font-size:14px;
}

.wpcf7 .wpcf7-response-output{
	margin:24px 0 0;
	padding:16px 20px;
	border:1px solid var(--blue);
	font-family:"Noto Serif JP",serif;
	font-size:16px;
	text-align:center;
}

/* privacy
-------------------------------------------------------------- */
.page-id-58 .page-mv{
	display: none;
}
.privacy-section{
	padding:118px 0 100px;
}

.privacy-inner{
	width:calc(100% - 400px);
	max-width:1040px;
	margin:118px auto 0;
}

.privacy-heading{
	display:flex;
	margin:0 0 12px;
	align-items:center;
	gap:16px;
	font-family:"Noto Serif JP",serif;
	font-size:24px;
	font-weight:500;
	line-height:1.2;
}

.privacy-heading::after{
	content:"";
	flex:1;
	height:2px;
	background:#9adaf6;
}

.privacy-lead,
.privacy-block p,
.privacy-body p{
	margin:0;
	font-family:"Noto Serif JP",serif;
	font-size:14px;
	line-height:2;
}

.privacy-lead{
	margin-bottom:48px;
}

.privacy-block + .privacy-block{
	margin-top:48px;
}

.privacy-subheading{
	margin:0;
	font-family:Lora,serif;
	font-size:14px;
	font-weight:500;
	line-height:2;
}

.privacy-date{
	margin-top:24px;
	font-size:12px;
	line-height:1.2;
}

.copyright a{
	color:var(--white);
	text-decoration:underline;
}

.copyright a:hover{
	opacity:.85;
}

/* footer
-------------------------------------------------------------- */
.site-footer{
	padding-top:70px;
	background:url("img/bg-footer.png") center/cover;
}

.site-footer_inner{
	display:grid;
	width:calc(100% - 260px);
	max-width:var(--content);
	min-height:333px;
	margin:0 auto;
	grid-template-columns:1fr 1fr;
	gap:40px;
}

.site-footer_brand{
	display:grid;
	grid-template-columns:602px 1fr;
	align-content:start;
	align-items:center;
	gap:12px 20px;
}

.site-footer_brand img{
	width:100%;
	max-width:602px;
}

.site-footer_brand p{
	margin:0;
	color:var(--blue);
	font-family:"Sawarabi Mincho",serif;
	font-size:20px;
	line-height:1.5;
}

.site-footer_entry{
	grid-column:1 / -1;
	display:grid;
	width:600px;
	max-width:100%;
	height:100px;
	margin-top:40px;
	color:var(--white);
	background:var(--blue);
	box-shadow:0 4px 10px rgba(0,0,0,.25);
	place-items:center;
	font-family:"Sawarabi Mincho",serif;
	font-size:36px;
}
.site-footer_menu{
	min-width:520px;
}
.footer-menu_list{
	column-count: 2;
	column-gap:40px;
	font-family:"Sawarabi Mincho",serif;
	font-size:20px;
}
.footer-menu_list > li{
	padding:0 0 18px;
}

.footer-menu_list >li > a::before{
	margin-right:24px;
	color:var(--blue);
	content:"―";
}
.footer-menu_list .submenu{
	margin-left: 65px;
}
.footer-menu_list .submenu li{
	margin-top: 5px;
}

.copyright{
	margin:40px 0 0;
	padding:18px;
	color:var(--white);
	background:#33bcf4;
	font-size:11px;
	text-align:center;
}

.scroll-to-top{
	position:fixed;
	right:20px;
	bottom:100px;
	z-index:9998;
	display:block;
	width:88px;
	height:88px;
	line-height:0;
	text-decoration:none;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	box-shadow:0 2px 10px rgba(0,0,0,.12);
	transition:opacity .25s ease,visibility .25s ease,transform .2s ease;
}
.scroll-to-top.is-visible{
	opacity:1;
	visibility:visible;
	pointer-events:auto;
}
.scroll-to-top img{
	display:block;
	width:100%;
	height:100%;
}
.scroll-to-top:hover{
	opacity:.9;
	transform:translateY(-2px);
}
.scroll-to-top.is-visible:hover{
	opacity:.9;
}


/* pc
-------------------------------------------------------------- */
@media only screen and (min-width:1201px){
.home-strength_item{
	display: flex;
	margin-left: -120px;
	justify-content: flex-start;
}
.home-strength_item:nth-child(2n+1){
	display: flex;
	margin-right: -120px;
	margin-left: auto;
	justify-content: flex-end;
}
}

/* tablet
-------------------------------------------------------------- */
@media only screen and (max-width:1200px){
	.container,
	.home-news,
	.home-strength,
	.home-concept,
	.home-field,
	.home-doctor_list,
	.site-footer_inner,
	.privacy-inner{
		width:calc(100% - 60px);
	}
	.home-news{
		grid-template-columns:1fr 420px;
		gap:30px;
	}
	.home-news_photo{
		width:100%;
		height:280px;
	}
	.home-strength_item,
	.home-strength_item:nth-child(even){
		grid-template-columns:1fr 1fr;
	}
	
	.home-strength_photo,
	.home-strength_photo img{
		width:100%;
		height:280px;
	}
	.home-field_media{
		width:100%;
	}
	.global-menu_item a{
		padding:0 10px;
		font-size:14px;
	}
}

/* pc + tablet
-------------------------------------------------------------- */
@media only screen and (min-width:769px){
	.sp{display:none !important;}

	.menu-item:first-child,
	/*#menu-item-1328{
		display: none;
	}*/
	.menu-item:last-child{
		margin-left: 25px;
	}
	.global-menu_item a{
		padding: 0 25px;
	}
	.sub-menu,
	#menu-item-1320{
		display: none;
	}

	.message-detail_profile_col + .message-detail_profile_col{
		margin-top:0;
	}

	.message-detail_profile_inner{
		display:grid;
		grid-template-columns:1fr 1fr;
		gap:0 30px;
		align-items:start;
	}

	.message-detail_profile_inner:has(> .message-detail_profile_col:only-child){
		grid-template-columns:1fr;
		max-width:575px;
	}

	.message-detail_body{
		display:grid;
		grid-template-columns:1fr 1fr;
		gap:60px 30px;
		align-items:start;
	}

	.message-detail_body > .message-detail_qa:nth-child(1){
		grid-column:1;
		grid-row:1;
	}

	.message-detail_body > .message-detail_photo:nth-child(2){
		grid-column:2;
		grid-row:1;
		margin:0;
	}

	.message-detail_body > .message-detail_qa:nth-child(3){
		grid-column:2;
		grid-row:2;
	}

	.message-detail_body > .message-detail_photo:nth-child(4){
		grid-column:1;
		grid-row:2;
		margin:0;
	}

	.message-detail_body > .message-detail_qa:nth-child(5),
	.message-detail_body > .message-detail_qa:nth-child(6){
		grid-column:1 / -1;
	}

	.message-detail_qa{
		margin:0;
	}

	.message-detail_photo img{
		height:474px;
	}
}

/* sp
-------------------------------------------------------------- */
@media only screen and (max-width:768px){
	.pc{display:none !important;}
	.sp{display:block !important;}

	body{font-size:13px;}

	.container,
	.home-news,
	.home-strength,
	.home-concept,
	.home-field,
	.home-doctor_list,
	.site-footer_inner,
	.contact-form,
	div.wpcf7{
		width:calc(100% - 50px);
	}

	.site-header{
		height:74px;
		padding-right:50px;
		background:rgba(255,255,255,.75);
	}

	.site-header_logo{
		position:relative;
		z-index:1;
		flex:0 1 auto;
		width:auto;
		max-width:calc(100% - 58px);
		min-width:0;
		margin-left:20px;
		margin-right:0;
		gap:0;
	}

	.site-header_logo picture,
	.site-header_logo img{
		width:272px;
		max-width:100%;
		height:auto;
	}

	/* Figma 607:3258 — left:172 / top:16.6 / 11px / tracking 1.21 */
	.site-header_logo span{
		position:absolute;
		top:1px;
		left:152px;
		display:block;
		width:145px;
		color:#00abf1;
		font-family:"Sawarabi Mincho",serif;
		font-size:11px;
		font-weight:400;
		line-height:14px;
		letter-spacing:1.21px;
		pointer-events:none;
	}

	.global-menu{
		position:fixed;
		inset:0;
		z-index:200;
		display:none;
		height:auto;
		margin:0;
		padding:100px 24px 40px;
		flex-direction:column;
		align-items:center;
		justify-content:flex-start;
		background:#d9f1fb; /* #33bcf4 @ 20% on white */
		box-shadow:none;
		overflow:auto;
	}

	.global-menu.open{
		display:flex;
	}

	.menu-global-container{
		display:flex;
		width:100%;
		justify-content:center;
	}

	#menu-global{
		display:flex;
		flex-direction:column;
		align-items:stretch;
		width:200px;
		height:auto;
		margin:0;
		padding:0;
		list-style:none;
	}

	#menu-global > .menu-item{
		width:100%;
		margin:0;
		padding:0;
		background:transparent;
	}

	#menu-global > .menu-item:not(:last-child) a{
		position:relative;
		display:block;
		height:auto;
		padding:0 0 0 37px;
		color:var(--text);
		font-family:"Sawarabi Mincho",serif;
		font-size:18px;
		line-height:2.6;
		white-space:normal;
		text-align:left;
	}

	#menu-global > .menu-item:not(:last-child) a::before{
		position:absolute;
		top:50%;
		left:0;
		width:15px;
		height:2px;
		background:#33bcf4;
		content:"";
		transform:translateY(-50%);
	}

	#menu-global > .menu-item:last-child{
		display:block;
		width:234px;
		height:auto;
		align-self:center;
		margin:28px 0 0;
		padding:0;
		color:inherit;
		background:transparent;
		text-align:center;
	}

	#menu-global > .menu-item:last-child a{
		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		width:234px;
		height:52px;
		padding:0;
		color:var(--white);
		background:#00abf1;
		box-shadow:0 2.88px 7.2px rgba(0,0,0,.25);
		font-family:"Sawarabi Mincho",serif;
		font-size:16px;
		line-height:1.2;
		letter-spacing:.05em;
		white-space:normal;
		text-decoration:none;
	}

	#menu-global > .menu-item:last-child a::before{
		content:none;
	}

	#menu-global > .menu-item:last-child strong{
		display:block;
		font-size:20px;
		font-weight:400;
		letter-spacing:.05em;
	}

	#menu-global .sub-menu{
		display:block;
		margin:0;
		padding:0;
		list-style:none;
	}

	#menu-global .sub-menu .menu-item a{
		position:relative;
		display:block;
		height:auto;
		padding:0 0 0 1.5em;
		color:var(--text);
		font-family:"Sawarabi Mincho",serif;
		font-size:18px;
		line-height:2.6;
		white-space:normal;
		text-align:left;
	}

	#menu-global .sub-menu .menu-item a::before{
		content:none;
	}

	body.is-menu-open{
		overflow:hidden;
	}

	body.is-menu-open .site-header{
		z-index:200;
		background:transparent;
	}

	body.is-menu-open .site-header_logo{
		position:relative;
		z-index:210;
	}

	/* Figma 630:150 — 50×50 / #33bcf4 / 左角R5 */
	.navbar-toggler{
		position:absolute;
		top:12px;
		right:0;
		z-index:220;
		display:flex !important;
		width:50px;
		height:50px;
		padding:0;
		border:0;
		border-radius:5px 0 0 5px;
		background:#33bcf4;
		align-items:center;
		justify-content:center;
		cursor:pointer;
	}

	.navbar-toggler_open{
		display:block;
		width:25px;
		height:21px;
	}

	.navbar-toggler_close{
		display:none;
		width:50px;
		height:50px;
	}

	.navbar-toggler.open{
		background:transparent;
		border-radius:0;
	}

	.navbar-toggler.open .navbar-toggler_open{
		display:none;
	}

	.navbar-toggler.open .navbar-toggler_close{
		display:block;
	}

	.navbar-toggler span{display:none;}

	.home-mv{height:630px;}
	.home-mv_copy{
		top:268px;
		left:50%;
		width:calc(100% - 40px);
		transform:translate(-50%,-50%);
	}
	.home-mv_copy h1{
		max-width:300px;
		margin:0 auto 14px;
		font-size:30px;
		line-height:1.35;
		white-space:normal;
	}
	.home-mv_copy p{
		max-width:280px;
		margin:0 auto;
		font-size:14px;
		line-height:1.7;
	}

	.home-news{
		margin-top:50px;
		padding-bottom:50px;
		grid-template-columns:1fr;
		gap:28px;
	}
	.home-news_main{
		display:flex;
		flex-direction:column;
		align-items:stretch;
	}
	.home-news_heading{
		margin-bottom:20px;
	}
	.home-news_more{
		align-self:center;
		min-width:150px;
		height:40px;
		margin:24px 0 0;
		font-size:17px;
	}
	.home-news_photo{
		width:100%;
		height:180px;
		order:-1;
	}
	.home-news_title{font-size:30px;}
	.home-news_title::first-letter{font-size:48px;}
	.home-news_list a{
		padding:10px 0;
		grid-template-columns:92px 1fr;
		gap:8px;
		font-size:12px;
	}

	.home-strength{
		width:calc(100% - 50px);
		margin:80px auto 0;
		padding:40px 16px 48px;
		border-radius:8px;
		overflow:visible;
	}
	.home-strength_title{
		margin:0 0 -105px;
		transform: translateY(-125px);
		font-size:20px;
		letter-spacing:.04em;
		line-height:1.5;
	}
	.home-strength_title span{
		display:block;
		margin-top:-10px;
		font-size:35px;
	}
	.home-strength_title b{
		font-size:70px;
		line-height:1;
	}
	.home-strength_item,
	.home-strength_item:nth-child(even){
		display:flex;
		flex-direction:column;
		min-height:0;
		grid-template-columns:none;
		gap:0;
	}
	.home-strength_item + .home-strength_item{
		margin-top:40px;
	}
	/* 英字 → 写真 → 見出し → 本文（display:contents で並び替え） */
	.home-strength_body{
		display:contents;
		width:auto;
		min-height:0;
		margin:0;
		padding:0;
		overflow:visible;
	}
	.home-strength_word{
		order:1;
		position:relative;
		left:auto;
		bottom:auto;
		z-index:2;
		margin:0 0 -17px;
		color:rgba(255,255,255,.95);
		font-size:60px;
		line-height:1;
		letter-spacing:.02em;
	}
	.home-strength_photo{
		order:2;
		position:relative;
		z-index:1;
		width:calc(100% + 41px);
		max-width:none;
		height:195px;
		overflow:hidden;
	}
	.home-strength_photo img{
		width:100%;
		height:195px;
		object-fit:cover;
	}
	/* 1・3枚目は左端、2枚目は右端（ビューポート端まで） */
	.home-strength_item:nth-child(even) .home-strength_photo{
		align-self:flex-start;
		margin-left:-41px;
		margin-right:0;
	}
	.home-strength_item:nth-child(odd) .home-strength_photo{
		align-self:flex-end;
		margin-left:0;
		margin-right:-41px;
	}
	.home-strength_body h3{
		order:3;
		display:flex;
		align-items:baseline;
		align-self:flex-start;
		justify-content:flex-start;
		gap:8px;
		margin:16px 0 10px;
		margin-left:0;
		font-size:24px;
		line-height:1.4;
		text-align:left;
	}
	.home-strength_num{
		font-size:40px;
		line-height:1;
	}
	.home-strength_body p{
		order:4;
		font-size:14px;
		line-height:1.8;
	}

	.home-concept{
		display:grid;
		grid-template-columns:auto minmax(0,1fr);
		grid-template-areas:
			"label side"
			"h2 h2"
			"p p";
		align-items:start;
		width:calc(100% - 50px);
		margin:70px auto 48px;
		gap:12px 0;
		overflow:visible;
	}
	.home-concept_copy{
		display:contents;
	}
	.home-concept_label{
		grid-area:label;
		position:relative;
		top:auto;
		left:auto;
		z-index:1;
		align-self:start;
		box-sizing:border-box;
		min-height:280px;
		margin:0 0 20px;
		padding:28px 8px 24px;
		border-radius:10px 0 0 10px;
		background-color:var(--blue);
		color:var(--white);
		font-family:"Sawarabi Mincho",serif;
		font-size:27px;
		line-height:1.3;
		letter-spacing:.12em;
		writing-mode:vertical-rl;
		text-orientation:mixed;
	}
	.home-concept_side{
		grid-area:side;
		position:relative;
		z-index:0;
		width:100%;
		max-width:266px;
		height:auto;
		margin:0;
	}
	.home-concept_side::before{
		content:"";
		position:absolute;
		left:15px;
		top:15px;
		z-index:-1;
		width:266px;
		height:280px;
		background:var(--lightblue);
		opacity:.50;
		pointer-events:none;
		border-radius: 15px;
	}
	.home-concept_side img{
		display:block;
		width:100%;
		max-width:266px;
		height:280px;
		object-fit:cover;
		border-radius:0px 15px 15px 0;
		box-shadow:none;
	}
	.home-concept_copy h2{
		grid-area:h2;
		position:relative;
		z-index:1;
		margin:0;
		font-family:"Sawarabi Mincho",serif;
		font-size:24px;
		font-weight:400;
		line-height:2;
		text-align:left;
	}
	.home-concept_copy p{
		grid-area:p;
		position:relative;
		z-index:1;
		padding:0;
		font-family:"Noto Serif JP",serif;
		font-size:14px;
		line-height:2;
		text-align:left;
	}

	.home-field{
		margin-bottom:60px;
		grid-template-columns:1fr;
		gap:40px;
		overflow:visible;
	}
	.home-field_item{
		padding-left:67px;
		overflow:visible;
	}
	/* バーはブラウザ左端（セクション左右25px分を打ち消す） */
	.home-field_bar{
		left:-25px;
		width:10px;
		height:90px;
		background:var(--paler);
	}
	.home-field_item.is-tall .home-field_bar{
		height:165px;
	}
	/* バーの右に縦書きラベル（Figma x≈25） */
	.home-field_label{
		left:0;
		top:0;
		width:40px;
		font-size:28px;
		line-height:1.2;
		letter-spacing:.08em;
	}
	.home-field_media{
		width:100%;
		max-width:258px;
		height:220px;
		margin-left:auto;
		margin-right:0;
		border-radius:8px;
	}
	.home-field_media img{
		border-radius:8px;
	}
	.home-field_caption{font-size:18px;}
	.home-field_link{
		display:block;
		box-sizing:border-box;
		width:calc(100% - 8px);
		max-width:243px;
		margin:16px 0 0;
		margin-left:8px;
		padding:8px 40px 12px 0;
		border-bottom:1px solid var(--blue2);
		color:var(--blue2);
		font-family:"Noto Sans JP",sans-serif;
		font-size:18px;
		line-height:1.5;
		text-align:center;
	}
	.home-field_link span{
		right:8px;
	}

	.home-entry{
		height:auto;
	}
	.home-entry img{
		display:block;
		width:100%;
		height:auto;
		object-fit:unset;
	}
	.home-entry_inner{
		top:54.31%; /* Figma 315/580 — 端末幅で画像高さが変わっても比率固定 */
		bottom:auto;
		left:0;
		right:0;
		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:flex-start;
		box-sizing:border-box;
		padding:0 38px;
		text-align:center;
	}
	.home-entry_inner p{
		margin:0 0 35px;
		font-size:28px;
		line-height:1.5;
		text-align:center;
	}
	.home-entry_btn{
		display:flex;
		box-sizing:border-box;
		width:100%;
		max-width:300px;
		min-width:0;
		height:70px;
		padding:0 16px;
		align-items:center;
		justify-content:center;
		border-radius:5px;
		background-color:var(--white);
		color:var(--blue);
		font-family:"Noto Sans JP",sans-serif;
		font-weight:500;
		font-size:24px;
		line-height:1.2;
		letter-spacing:.05em;
		box-shadow:0 3px 10px 0 #00abf14d;
		text-align:center;
	}

	.home-doctor{padding:0;}
	.home-doctor_intro {
		padding-top: 50px;
	}
	.home-doctor_intro h2{font-size:32px;}
	.home-doctor_intro h2 span{
		font-size: 45px;
	}
	.home-doctor_intro p {
		font-size: 14px;
		padding: 0 30px;
	}
	.home-doctor_list{
		grid-template-columns:1fr;
		gap:0;
	}
	.home-doctor_photo{height:230px;}
	.home-doctor_quote{
		left:16px;
		bottom:30px;
		max-width:calc(100% - 32px);
		font-size:16px;
		line-height: 1.5;
	}
	.home-doctor_badge{
		min-height:25px;
		padding:0 10px;
		font-size:14px;
	}
	.home-doctor_name{font-size:32px;}
	.home-doctor_more{
		min-width:113px;
		height:40px;
		margin-top:-20px;
		font-size:17px;
	}

	.page-mv{height:220px;}
	.about-main .page-mv,
	.message-main .page-mv{
		height:400px;
	}
	.about-main .page-mv picture,
	.message-main .page-mv picture{
		display:block;
		width:100%;
		height:100%;
	}
	.page-mv_title{
		bottom:0;
		min-width:0;
		padding:12px 40px 12px 26px;
		font-size:30px;
		line-height:1.35;
	}
	.message .page-mv_title{
		max-width:297px;
		padding:16px 48px 16px 26px;
	}

	.common-section{padding:58px 0;}
	.common-title{font-size:29px;}

	.about-lead-section{padding:60px 0 40px;}
	.about-lead_headline{margin-bottom:36px;font-size:24px;}
	.about-lead_row,
	.about-strength_inner,
	.about-banner_split,
	.about-career_choice,
	.about-subspec_list,
	.about-edu_row,
	.about-edu_cards,
	.about-net_list,
	.about-research_list{
		grid-template-columns:1fr;
	}
	.message-list{
		grid-template-columns:1fr;
		gap:0;
	}
	.message-list_photo{height:230px;}
	.message-list_quote{
		left:16px;
		bottom:30px;
		max-width:calc(100% - 32px);
		font-size:16px;
		line-height:1.5;
	}
	.message-list_name{font-size:32px;}
	.message-list_more{
		min-width:113px;
		height:40px;
		margin-top:-20px;
		font-size:17px;
	}
	.message-list_badge{
		min-height:25px;
		padding:0 10px;
		font-size:14px;
	}
	.about-lead_row{
		margin-top:28px;
	}
	.about-lead_photo{
		position:relative;
		z-index:1;
		width:calc(100vw * 313 / 375);
		max-width:none;
		height:194px;
		margin-left:-25px;
		overflow:hidden;
	}
	.about-lead_photo,
	.about-lead_photo img{
		height:194px;
	}
	.about-lead_photo img{
		width:100%;
		transform:none;
		object-fit:cover;
		object-position:center;
	}
	.about-lead_panel{
		position:relative;
		z-index:2;
		width:calc(100% + 25px);
		margin-top:-40px;
		margin-right:-25px;
		padding:68px 20px 28px;
		border-radius:10px 0 0 10px;
		font-size:15px;
	}
	.about-anchor{
		grid-template-columns:1fr;
		gap:0;
		margin-top:40px;
	}
	.about-anchor a{
		max-width:none;
		padding:16px 8px;
	}
	.about-strength{padding:50px 0;}
	.about-strength_header{
		flex-direction:column;
		gap:16px;
		margin-bottom:40px;
	}
	.about-strength_title{
		font-size:20px;
		font-weight:400;
		line-height:1.5;
		letter-spacing:2px;
	}
	.about-strength_label{
		margin-bottom:0;
		font-family:"Sawarabi Mincho",serif;
		font-size:30px;
		letter-spacing:0;
		line-height:1.2;
	}
	.about-strength_label b{
		margin-right:4px;
		color:var(--blue2);
		font-size:60px;
		vertical-align:-6px;
	}
	.about-strength_photos-pc{
		display:none !important;
	}
	.about-strength_photos-sp{
		position:relative;
		display:block !important;
		width:100%;
		max-width:320px;
		height:280px;
		margin:0 auto 36px;
		padding-top:0;
	}
	.about-strength_photos-sp picture{
		position:absolute;
		overflow:hidden;
	}
	.about-strength_photos-sp picture:first-child{
		top:0;
		right:0;
		z-index:1;
		width:241px;
		max-width:none;
	}
	.about-strength_photos-sp picture:last-child{
		left:0;
		right:auto;
		bottom:0;
		z-index:2;
		width:200px;
		max-width:200px;
	}
	.about-strength_photos-sp picture,
	.about-strength_photos-sp img{
		max-width:none;
		object-fit:cover;
	}
	.about-strength_photos-sp picture:first-child,
	.about-strength_photos-sp picture:first-child img{
		width:241px;
		height:182px;
	}
	.about-strength_photos-sp picture:last-child,
	.about-strength_photos-sp picture:last-child img{
		width:200px;
		max-width:200px;
		height:151px;
	}
	.about-strength_list li{grid-template-columns:36px 1fr;}
	.about-strength_list h3{font-size:20px;}
	.about-banner,
	.about-banner_split picture{height:220px;}
	#career .about-banner_split picture:nth-of-type(2){
		display:none;
	}
	.about-banner_label{
		bottom:-28px;
		gap:10px;
		width:276px;
		height:55px;
		padding:0 18px;
		border-radius:60px;
		font-size:30px;
		line-height:1.2;
		letter-spacing:.2em;
		text-shadow:0 3px 20px #76d6ff;
	}
	.about-banner_label::before{
		width:30px;
		height:35px;
	}
	#clinical{
		background:rgba(171,225,248,.15);
	}
	#clinical .about-banner_label::before{
		background-image:url("img/sp-about-icon-clinical.svg");
	}
	#career .about-banner_label::before{
		width:32px;
		height:26px;
		background-image:url("img/sp-about-icon-career.svg");
	}
	#education .about-banner_label::before{
		width:27px;
		height:30px;
		background-image:url("img/sp-about-icon-education.svg");
	}
	#research .about-banner_label::before{
		width:24px;
		height:32px;
		background-image:url("img/sp-about-icon-research.svg");
	}
	#qa .about-banner_label::before{
		width:27px;
		height:27px;
		background-image:url("img/sp-about-icon-qa.svg");
	}
	.about-block_body{padding:40px 0 60px;}
	.about-block_title{font-size:24px;}
	.about-block_text{text-align:left;font-size:15px;}
	#clinical .about-block_body{padding-top:56px;}
	#clinical .about-block_title{
		font-size:26px;
		line-height:1.5;
	}
	#clinical .about-block_title-accent{
		font-size:30px;
		letter-spacing:.06em;
	}
	#clinical .about-block_text{
		font-size:15px;
		text-align:left;
	}
	#clinical .about-performance{
		max-width:none;
		margin-bottom:40px;
	}
	#clinical .about-performance_title{
		font-size:22px;
		line-height:1.5;
	}
	#clinical .about-performance_lead{
		max-width:none;
		margin-bottom:24px;
		font-size:15px;
		line-height:1.35;
		text-align:center;
	}
	#clinical .about-performance_figure{
		max-width:none;
		margin-bottom:24px;
	}
	#clinical .about-performance_stats{
		font-size:15px;
		line-height:1.35;
		text-align:center;
	}
	#education .about-block_title{
		font-size:26px;
		line-height:1.5;
	}
	#education .about-block_title-accent{
		font-size:30px;
		letter-spacing:.06em;
	}
	#education .about-block_text{
		font-size:15px;
		text-align:left;
	}
	#research .about-block_title{
		font-size:26px;
		line-height:1.6;
	}
	#research .about-block_title-accent{
		font-size:26px;
	}
	#research .about-block_text{
		font-size:15px;
		text-align:left;
	}
	#research .about-chart_label{
		width:288px;
		height:40px;
		margin-bottom:40px;
		font-size:18px;
	}
	#clinical .about-chart_label{
		width:300px;
		height:40px;
		margin-top:50px;
		margin-bottom:40px;
		font-size:18px;
		letter-spacing:.1em;
	}
	#clinical .about-textlink{
		width:100%;
		max-width:280px;
		font-size:18px;
	}
	#career .about-block_body{padding-top:56px;}
	#career .about-block_title{
		font-size:26px;
		line-height:1.5;
	}
	#career .about-block_title-accent{
		font-size:30px;
		letter-spacing:.06em;
	}
	#career .about-block_title-choice{
		margin-top:50px;
	}
	#career .about-block_title-choice b{
		font-size:30px;
		line-height:1.5;
	}
	#career .about-block_text{
		font-size:15px;
		text-align:left;
	}
	.about-accordion{
		margin-top:8px;
	}
	.about-accordion_toggle{
		position:relative;
		display:flex !important;
		box-sizing:border-box;
		width:240px;
		height:40px;
		margin:24px auto 0;
		padding:0 28px 0 0;
		border:0;
		border-bottom:1px solid #999;
		align-items:center;
		justify-content:center;
		background:transparent;
		color:#999;
		font-family:"Noto Sans JP",sans-serif;
		font-size:18px;
		font-weight:400;
		line-height:1.5;
		text-align:center;
		cursor:pointer;
		appearance:none;
		-webkit-appearance:none;
	}
	.about-accordion_toggle > br{
		display:none;
	}
	.about-accordion_label{
		display:inline-block;
	}
	.about-accordion_icon{
		position:absolute;
		right:0;
		top:50%;
		width:17px;
		height:17px;
		transform:translateY(-50%);
		transition:transform .25s ease;
	}
	.about-accordion.is-open .about-accordion_icon{
		transform:translateY(-50%) rotate(45deg);
	}
	.about-accordion_panel{
		display:none;
	}
	.about-accordion.is-open .about-accordion_panel{
		display:block;
	}
	.about-accordion.is-open .about-accordion_toggle{
		margin-bottom:28px;
	}
	.about-strength .about-accordion_toggle{
		margin-top:28px;
	}
	.about-mvv > .about-accordion{
		margin-top:0;
	}
	.about-mvv > .about-accordion > .about-accordion_toggle{
		margin:50px auto 50px;
	}
	.about-mvv > .about-accordion.is-open > .about-accordion_toggle{
		margin-bottom:28px;
	}
	.about-chart_label{min-width:0;width:100%;font-size:16px;}
	.about-chart_note{text-align:left;}
	.about-program_heading,
	.about-program_sub{
		font-size:21px;
	}
	.about-program_scroll{
		margin:0 -20px;
	}
	.about-program_scroll-body{
		overflow-x:auto;
		-webkit-overflow-scrolling:touch;
		padding:0 20px 8px;
	}
	.about-program_scroll-body::-webkit-scrollbar{
		height:4px;
	}
	.about-program_scroll.is-scrolled .about-program_scroll-hint{
		opacity:0;
		visibility:hidden;
	}
	.about-program_scroll-hint{
		position:absolute;
		top:50%;
		left:50%;
		z-index:2;
		display:flex !important;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		box-sizing:border-box;
		width:105px;
		height:87px;
		padding:8px 6px 10px;
		border-radius:4px;
		background:#a0a0a0;
		color:var(--white);
		font-family:"Noto Sans JP",sans-serif;
		font-size:9px;
		font-weight:700;
		line-height:1.5;
		text-align:center;
		transform:translate(-50%,-50%);
		pointer-events:none;
		transition:opacity .3s ease,visibility .3s ease;
	}
	.about-program_scroll-hint img{
		display:block;
		width:30px;
		height:46px;
		margin:0 0 4px;
	}
	.about-program_schedule,
	.about-program_schedule img{
		width:915px;
		max-width:none;
		height:auto;
	}
	.about-career_col{
		padding:20px 16px 24px;
		border-radius:10px;
	}
	.about-career_venn{
		width:100%;
		max-width:320px;
		height:340px;
	}
	.about-career_fill,
	.about-career_circle{
		width:210px;
		height:210px;
	}
	.about-career_circle{
		font-size:20px;
	}
	.about-career_or{
		font-size:22px;
	}
	.about-career_board-double{
		width:280px;
		padding:28px 24px;
	}
	.about-career_board-title{
		font-size:22px;
	}
	.about-career_board-text{
		font-size:15px;
		text-align:left;
	}
	.about-hospital_list{grid-template-columns:1fr;gap:15px;}
	.about-hospital_item{
		display:grid;
		grid-template-columns:minmax(0,1fr) 155px;
		column-gap:14px;
		padding:0 14px 14px 12px;
		border:1px solid rgba(188,140,240,.73);
		box-sizing:border-box;
	}
	.about-hospital_item h5{
		grid-column:1 / -1;
		margin:0 -14px 0 -12px;
		padding:7px 12px;
		font-size:17px;
	}
	.about-hospital_place{
		grid-column:1;
		grid-row:2;
		margin:8px 0 0;
		font-size:14px;
	}
	.about-hospital_body{
		display:contents;
	}
	.about-hospital_body > br,
	.about-hospital_body > p:empty{
		display:none;
	}
	.about-hospital_media{
		grid-column:2;
		grid-row:2 / 4;
		margin-top:8px;
	}
	.about-hospital_media img{
		width:155px;
		height:126px;
	}
	.about-hospital_meta{
		grid-column:1;
		grid-row:3;
		flex-direction:column;
		gap:12px;
		margin-top:8px;
	}
	.about-hospital_badge{
		min-width:0;
		width:fit-content;
		padding:5px 18px;
		font-size:15px;
	}
	.about-hospital_badge-clinic,
	.about-hospital_badge-wide{
		min-width:0;
	}
	.about-hospital_badge-wide{
		max-width:110px;
		padding:6px 12px;
		line-height:1.25;
		white-space:normal;
	}
	.about-hospital_desc{
		margin:0;
		font-size:13.5px;
	}
	.about-edu_row,
	.about-edu_row-reverse{
		grid-template-columns:1fr;
		grid-template-areas:
			"heading"
			"photo"
			"copy";
		gap:18px;
		margin:50px 0;
	}
	#education .about-edu_heading{
		font-size:24px;
		text-align:center;
	}
	.about-edu_lead{
		text-align:center;
	}
	.about-edu_photo,
	.about-edu_photo img{height:260px;}
	.about-edu_card picture,
	.about-edu_card img{height:252px;}
	#education .about-edu_links{
		flex-direction:column;
		align-items:stretch;
		gap:16px;
	}
	#education .about-edu_links .about-textlink{
		width:100%;
		max-width:300px;
		margin:0 auto;
	}
	.about-net_item{
		min-height:126px;
		padding:20px 56px 18px 20px;
	}
	.about-net_item strong{
		font-size:22px;
	}
	.about-net_item span{
		font-size:13px;
	}
	.about-net_item em{
		right:16px;
	}
	.about-subspec_list{
		gap:40px;
		margin:30px 0 50px;
	}
	.about-subspec_item picture{
		margin-top:24px;
	}
	.about-subspec_item > p{
		margin-top:30px;
	}
	.about-edu_links{margin:0 0 40px;}
	.about-research_item img{height:200px;}
	.about-research_links{
		padding-top:24px;
		justify-items:center;
	}
	.about-research_links .about-textlink{
		width:100%;
		max-width:300px;
	}
	.about-qa_list summary{font-size:16px;padding-right:48px;}
	.about-mvv_body{
		padding:40px 0 60px;
	}
	.about-mvv_item,
	.about-mvv_item-vision{
		display:block;
		position:relative;
		margin-bottom:50px;
		grid-template-columns:none;
	}
	.about-mvv_item:last-child{
		margin-bottom:0;
	}
	.about-mvv_text,
	.about-mvv_item-vision .about-mvv_text{
		position:relative;
		z-index:2;
		margin-left:0;
		margin-right:0;
	}
	.about-mvv_text h2{
		margin:0 0 12px;
		font-size:26px;
		line-height:1.3;
	}
	.about-mvv_text h3{
		margin:0 0 16px;
		font-size:18px;
		line-height:1.4;
	}
	.about-mvv_text p{
		margin:0;
		font-size:13px;
		line-height:1.6;
	}
	.about-mvv_item picture{
		position:relative;
		z-index:1;
	}
	.about-mvv_item img,
	.about-mvv_item-value img{
		display:block;
		width:100%;
		height:auto;
		object-fit:cover;
		aspect-ratio:auto;
	}

	/* Mission: text left + image right (overlap) */
	.about-mvv_item-mission{
		min-height:210px;
	}
	.about-mvv_item-mission picture{
		position:absolute;
		top:0;
		right:0;
		width:267px;
		max-width:72%;
	}
	.about-mvv_item-mission img{
		height:178px;
	}
	.about-mvv_item-mission .about-mvv_text h2,
	.about-mvv_item-mission .about-mvv_text h3{
		max-width:148px;
	}
	.about-mvv_item-mission .about-mvv_text h3{
		margin-bottom:44px;
	}

	/* Vision: image left + text right (overlap) */
	.about-mvv_item-vision picture{
		width:241px;
		max-width:70%;
		margin:0 0 16px;
	}
	.about-mvv_item-vision img{
		height:137px;
	}
	.about-mvv_item-vision .about-mvv_text{
		position:absolute;
		top:6px;
		right:0;
		width:130px;
	}
	.about-mvv_item-vision .about-mvv_text h2,
	.about-mvv_item-vision .about-mvv_text h3{
		max-width:130px;
	}
	.about-mvv_item-vision .about-mvv_text h3{
		margin-bottom:0;
	}
	.about-mvv_item-vision > p{
		margin:16px 0 0;
		max-width:266px;
		font-size:13px;
		line-height:1.6;
	}

	/* Value: image right + research left, clinical|education 2-col */
	.about-mvv_item-value{
		min-height:340px;
	}
	.about-mvv_item-value picture{
		position:absolute;
		top:28px;
		right:0;
		width:241px;
		max-width:68%;
	}
	.about-mvv_item-value img{
		height:200px;
	}
	.about-mvv_value{
		display:grid;
		grid-template-columns:1fr 1fr;
		gap:24px 20px;
		align-items:start;
	}
	.about-mvv_value > div:first-child{
		grid-column:1;
		grid-row:1;
		max-width:145px;
		padding-bottom:8px;
	}
	.about-mvv_value > div:nth-child(2){
		grid-column:1;
		grid-row:2;
	}
	.about-mvv_value > div:nth-child(3){
		grid-column:2;
		grid-row:2;
	}
	.about-mvv_value_head{
		display:flex;
		flex-direction:column;
		align-items:flex-start;
		flex-wrap:nowrap;
		gap:8px;
		margin-bottom:8px;
	}
	.about-mvv_value_head span{
		width:auto;
		min-width:0;
		height:auto;
		padding:2px 8px;
		border-radius:4px;
		font-size:11px;
		line-height:1.4;
	}
	.about-mvv_value_head h3{
		font-size:14px;
		line-height:1.35;
		white-space:normal;
	}
	.about-mvv_value p{
		font-size:12px;
		line-height:1.5;
	}
	.about-mvv_hero{
		height:auto;
		aspect-ratio:375 / 347.5;
	}
	.about-mvv_hero picture{
		position:absolute;
		inset:0;
		display:block;
		width:100%;
		height:100%;
	}
	.about-mvv_hero img{
		width:100%;
		height:100%;
		object-fit:cover;
		object-position:39% 41%;
	}
	.about-mvv_circles{
		left:12px;
		top:14px;
		width:240px;
		height:224px;
		transform:none;
	}
	.about-mvv_circle,
	.about-mvv_label{
		width:128px;
		height:128px;
	}
	.about-mvv_label strong{font-size:30px;}
	.about-mvv_label small{font-size:13px;margin-top:4px;}
	.about-mvv_label-vision strong,
	.about-mvv_label-value strong{font-size:26px;}
	.about-mvv_label-vision small,
	.about-mvv_label-value small{font-size:12px;}
	.about-mvv_circle-mission,
	.about-mvv_label-mission{
		top:0;
		left:56px;
	}
	.about-mvv_circle-vision,
	.about-mvv_label-vision{
		left:0;
		bottom:0;
		top:auto;
	}
	.about-mvv_circle-value,
	.about-mvv_label-value{
		left:112px;
		right:auto;
		bottom:0;
		top:auto;
	}
	.message-detail{padding:0 0 60px;}
	.message-detail_head{height:auto;}
	.message-detail_hero{
		position:relative;
		inset:auto;
		height:auto;
	}
	.message-detail_hero img{
		height:auto;
	}
	.message-detail_intro{
		top:auto;
		bottom:0;
		display:flex;
		flex-direction:column;
		justify-content:flex-end;
		padding:0 0 12px;
		width:calc(100% - 38px);
		max-width:none;
		height:auto;
	}
	.message-detail_badge{
		min-height:34px;
		padding:0 14px;
		font-size:16px;
	}
	.message-detail_name{
		margin:10px 0 14px;
		font-size:35px;
	}
	.message-detail_name::after{
		left:-30px;
		bottom:-40px;
		width:375px;
		height:125px;
		background-image:url("img/sp-message-imgEllipse11.svg");
	}
	.message-detail_name span{font-size:24px;}
	.message-detail_spec{gap:6px 5px;}
	.message-detail_spec-line{
		padding:4px 7px;
		font-size:15px;
		line-height:1.5;
	}
	.message-detail_profile{padding:40px 0;}
	.message-detail_profile_col + .message-detail_profile_col{margin-top:32px;}
	.message-detail_heading{font-size:20px;}
	.message-detail_career,
	.message-detail_certs{font-size:14px;}
	.message-detail_body{padding-top:36px;}
	.message-detail_q{font-size:18px;}
	.message-detail_qa h3{font-size:22px;}
	.message-detail_qa p{font-size:14px;line-height:1.8;}
	.message-detail_photo{margin:0 0 36px;}
	.message-detail_photo img{height:220px;}
	.year-tabs{grid-template-columns:repeat(3,1fr);gap:10px;}
	.news-item{
		padding:20px 24px;
		grid-template-columns:1fr auto;
		gap:10px 16px;
	}
	.news-item time{grid-column:1 / -1;}
	.news-item_title{font-size:16px;}
	.news-body{padding:0 24px 28px;}
	.contact-form_row label{font-size:18px;}
	.contact-form_row input,
	.contact-form_row textarea{font-size:16px;}
	.contact-form_row input{height:47px;}
	.contact-form_row textarea{min-height:360px;}
	div.wpcf7{padding:58px 0;}
	div.wpcf7 .wpcf7-form p{font-size:18px;}
	.wpcf7 input[type="text"],
	.wpcf7 input[type="email"],
	.wpcf7 input[type="url"],
	.wpcf7 input[type="tel"],
	.wpcf7 textarea{font-size:16px;}
	.wpcf7 input[type="text"],
	.wpcf7 input[type="email"],
	.wpcf7 input[type="url"],
	.wpcf7 input[type="tel"]{height:47px;}
	.wpcf7 textarea{min-height:360px;}

	.privacy-section{padding:17px 0 60px;}
	.privacy-inner{width:calc(100% - 54px);}
	.privacy-heading{font-size:16px;}
	.privacy-lead,
	.privacy-block p,
	.privacy-body p,
	.privacy-subheading{font-size:10px;line-height:1.8;}
	.privacy-lead{margin-bottom:32px;}
	.privacy-block + .privacy-block{margin-top:32px;}
	.privacy-date{font-size:10px;line-height:1.8;}

	.site-footer{padding-top:30px;}
	.site-footer_inner{
		grid-template-columns:1fr;
		gap:28px;
		min-width:0;
		max-width:100%;
	}
	.site-footer_brand{
		grid-template-columns:1fr;
	}
	.site-footer_brand p{font-size:14px;}
	.site-footer_entry{
		width:100%;
		height:90px;
		font-size:24px;
	}
	.site-footer_menu{
		padding-top:0;
		font-size:13px;
		gap:12px 20px;
		min-width:0;
	}
	.footer-menu_list{
		column-gap:0;
		font-size:16px;
	}
	.footer-menu_list > li > a::before{
		margin-right:8px;
	}
	.footer-menu_list .submenu{
		margin-left:24px;
	}
	.copyright_sep{
		display:none;
	}
	.copyright_text{
		display:block;
	}
	.scroll-to-top{
		right:12px;
		bottom:100px;
		width:56px;
		height:56px;
	}
}


