@charset "utf-8";

:root {
	--vw: 1vw;
	--main-font-color: #333333;
	--main-color: #1981d1;
	--main-color-heavy: #195db9;
	--main-color-point: #efca00;
	--main-color-middle: #47b6f0;
	--main-color-light: #2ca2df;
	--main-color-super-light: #e9f6fc;
	--default-letter-spacing: 0.1em;
	--max-width: 1200px;
	--inner-padding: 40px;
	--inner-width: calc(var(--max-width) + var(--inner-padding) * 2);
	--over-margin: min(calc((-1 * var(--vw) * 100 + var(--max-width)) / 2),
			calc(-1 * var(--inner-padding)));

	/* noto入れるの忘れない */
	--font-main: YakuHanJPs, "Noto Sans JP" ,"メイリオ", "Meiryo", "Hiragino Kaku Gothic ProN",
		"ヒラギノ角ゴ ProN W3", Hiragino Sans, "Osaka", "MS PGothic", -apple-system,
		BlinkMacSystemFont, arial, helvetica, sans-serif;
	--font-en: "Questrial";
}

/*共通*/
.img_bg_block {
}



/*追加*/
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_mv
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.m_mv_logo {
	display: none;
}

.m_mv_main {
	height: 56vw;
	min-height: auto;
}

.m_mv_txt {
	bottom: 0;
	left: 5vw;
	width: 90vw;
	max-width: none;
	z-index: 20;
	position: relative;
}
.m_mv_item {
	max-width: 120vw;
	margin-left: -10vw;
	margin-right: -10vw;
	opacity: 0.75;
}

.m_mv {
	background: var(--main-color-super-light);
	overflow: hidden;
}



.m_mv_inner {
	position: relative;
	background: #7dadd2;
	padding-bottom: 9vw;
}

.m_mv_inner:before {
	position: absolute;
	content: "";
	background: linear-gradient(to bottom,  rgba(125,173,210,0) 0%,rgba(125,173,210,1) 70%);
	top: 33vw;
	left: 0;
	width: 100%;
	height: 30vw;
	z-index: 10;
}

.m_mv_news {
	position: relative;
	display: block;
	width: 100%;
	padding: 10vw 0 10vw;
}

.m_mv_news .inner {
	display: block;
}

.m_mv_news_head {
	width: 100%;
	color: var(--main-color-heavy);
	font-family: var(--font-en);
	letter-spacing: 0.16em;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
}

.m_mv_news_head:before {
	display: none;
}

.m_mv_news_head a {
	align-items: center;
	padding-bottom: 0px;
	color: var(--main-color-heavy);
	text-decoration: none;
	position: relative;
	letter-spacing: 0.3em;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5em;
}

.m_mv_news_head a:after {
	content: "+";
	display: inline-block;
	font-size: 2.2rem;
	padding-bottom: 0.2em;
}

.m_mv_news_head span {
	font-size: 2.9rem;
}

.m_mv_news_head em {
	font-size: 1.4rem;
}

.m_mv_news_head em:before,
.m_mv_news_head em:after {
	width: 2vw;
}


.m_mv_news_body {
	max-width: none;
	padding: 0;
	overflow-y: scroll;
	height: 60vw;
}

.m_mv_news_body a {
	text-decoration: none;
	color: var(--main-color-heavy);
	padding: 3vw 7vw 3vw 0;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	display: flex;
	position: relative;
	flex-direction: column;
	position: relative;
}

.m_mv_news_body a:before {
	position: absolute;
	content: "→";
	right: 1vw;
	width: 1em;
	height: 100%;
	top: 0;
	display: grid;
	align-items: center;
}

.m_mv_news_body a .date {
	margin-right: 4vw;
	font-size: 1.5rem;
	letter-spacing: 0.2em;
	font-family: var(--font-en);
}

.m_mv_news_body a em {
	text-overflow: ellipsis;
	overflow: hidden;
	padding-right: 0;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
}

.m_mv_news_body li+li {
	border-top: 1px solid var(--main-color-heavy);
}

.m_mv_news_body::-webkit-scrollbar {
  width: 0.5em; /* スクロールバーの幅 */
}

.m_mv_news_body::-webkit-scrollbar-track {
  background: #fff; /* トラックの色 */
  border-radius: 100vw;
}

.m_mv_news_body::-webkit-scrollbar-thumb {
  background: var(--main-color-heavy); /* つまみの色 */
  border-radius: 100vw;
}


.m_newslist {
	margin-right: 4vw;
}




.t_tl .en{
	background: linear-gradient(90deg, #1981d1 0%, #47b6f0 100%);
	color: transparent;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	text-fill-color: transparent;
	font-family: var(--font-en);
	font-size: 5rem;
	line-height: 1;
		letter-spacing: 0.1em;
}

#t_message {
	padding: 15vw 0 0;
}

#t_message .t_message_tl {
	position: relative;
	padding-left: 6vw;
	margin-bottom: 5vw;
}

#t_message .t_message_tl:before {
	position: absolute;
	content: "";
	top: 1.8vw;
	left: 0;
	height: 4vw;
	width: 1vw;
	background: var(--main-color);
	z-index: 5;
}

#t_message .t_message_tl:after {
	position: absolute;
	content: "";
	top: 1.8vw;
	left: 0;
	height: 8vw;
	width: 1vw;
	background: #d2d2d2;
	z-index: 4;
}

#t_message .t_copy {
	font-weight: 600;
	font-size: 2.6rem;
	margin-bottom: 4vw;
	line-height: 1.7;
}

#t_message .txt_block {position: relative;padding-bottom: 57vw;}

#t_message .txt_block:before {
	position: absolute;
	content: "";
	left: -5vw;
	background: url(../images/top/message_sp.webp) no-repeat left bottom / contain;
	bottom: 0;
	width: 100vw;
	height: 55vw;
	z-index: 1;
}

#t_message .txt_block>* {
	position: relative;
	z-index: 2;
}

#t_message .btn_area {
	margin-top: 5vw;
}

#t_message .btn {
	border-color: var(--main-color-heavy);
	color: var(--main-color-heavy);
	background: #fff;
}

#t_message .btn:before {
	background-image: url(/wp-content/themes/sano/images/top/btn.webp);
}
#t_medical {
	padding: 15vw 0;
	background: #edf1f2 url(../images/top/medical_bg_sp.png) no-repeat center center / cover;
}

.site_tl {text-align: center;margin-bottom: 8vw;}

.site_tl .en {
	font-size: 6rem;
}

.site_tl .ja {
	display: block;
	font-weight: 600;
	letter-spacing: 0.25em;
	padding-top: 1vw;
	font-size: 1.7rem;
}
#t_medical .t_medical_li>li>a {
	box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.1);
	background: #fff;
	border-radius: 3vw;
	padding: 5vw 3vw 4vw 3vw;
	text-align: center;
	text-decoration: none;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	align-content: center;
	position: relative;
}

#t_medical .t_medical_li .icon {width: 14vw;margin: 0 auto 2vw;}
#t_medical .t_medical_li .txt {
	display: none;
}

#t_medical .t_medical_li .ja {
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.3;
}

#t_medical .t_medical_li .en {
	color: var(--main-color);
	font-family: var(--font-en);
	font-weight: 500;
	letter-spacing: 0.2em;
	font-size: 1.3rem;
	line-height: 1.2;
	margin-top: 1.7vw;
}

#t_medical .t_medical_li {
	display: grid;
	gap: 4vw;
	grid-template-columns: repeat( 2, 1fr);
}

#t_medical .t_medical_li>li {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	height: 41vw;
}

#t_medical .t_medical_li>li:nth-child(10) .icon {
	margin-bottom: -1vw;
	margin-top: -2vw;
}

#t_medical .t_medical_li>li>a:before {
	position: absolute;
	content: "";
	background: url(../images/top/btn.webp)  no-repeat right bottom / contain;
	aspect-ratio: 1/1;
	width: 4.4vw;
	right: 1.5vw;
	bottom: 1.5vw;
	z-index: 20;
}

#t_medical .t_medical_pick>li {
	background: #fff;
	position: relative;
	padding-bottom: 67vw;
}

#t_medical .t_medical_pick {
	margin-top: 10vw;
}

#t_medical .t_medical_pick .tl_block {
	position: relative;
	padding-top: 7vw;
}

#t_medical .t_medical_pick .pick {
	position: absolute;
	background: #2ca2df;
	color: #fff;
	font-family: var(--font-en);
	letter-spacing: 0.06em;
	font-size: 1.6rem;
	line-height: 1;
	padding: 3.7vw 5vw  3vw 2vw;
	left: -3vw;
	top: 4vw;
}

#t_medical .t_medical_pick .pick:before {
	position: absolute;
	content: "";
	border: 1px solid #fff;
	border-left-width: 0;
	width: calc(100% - 3px);
	height: calc(100% - 6px);
	left: 0;
	top: 3px;
}

#t_medical .t_medical_pick .pick:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 3vw 3vw 0;
	border-color: transparent #097bb4 transparent transparent;
	bottom: -3vw;
	left: 0;
}

#t_medical .t_medical_pick .tl_box {
	background: #e9f6fc;
	padding: 3vw 2vw 2.4vw 2vw;
	text-align: center;
}
#t_medical .t_medical_pick .txt_box {
	padding: 6vw 5vw 5vw 5vw;
}

#t_medical .t_medical_pick .tl_box .en {
	color: var(--main-color);
	font-family: var(--font-en);
	font-weight: 500;
	letter-spacing: 0.2em;
	font-size: 1.3rem;
	line-height: 1.2;
	margin-top: 0.7vw;
}

#t_medical .t_medical_pick .tl_box .ja {
	font-weight: 600;
	font-size: 2.2rem;
	line-height: 1.5;
}


#t_medical .t_medical_pick .txt_box .btn_area {
	margin-top: 4vw;
}

#t_medical .t_medical_pick>li:before {
	position: absolute;
	content: "";
	background: url(../images/top/medical_img01.webp) no-repeat center center /cover;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 64vw;
}

#t_medical .t_medical_pick >li+li {
	margin-top: 6vw;
}

#t_medical .t_medical_pick >li:nth-child(2):before {
	background-image: url(../images/top/medical_img02.webp);
}

#t_feature {
	padding: 15vw 0;
	position: relative;
}

#t_feature:before,
#t_feature:after{
	position: absolute;
	content: "";
	background: url(../images/top/feature_kazari_t.webp) no-repeat right top / contain;
	width: 70vw;
	height: 40vw;
	z-index: 1;
	pointer-events: none;
}

#t_feature:before{
	top: 0;
	right: -17vw;
}
#t_feature:after{
	background: url(../images/top/feature_kazari_b.webp) no-repeat left bottom / contain;
	bottom: 0;
	left: -17vw;
}
#t_feature>* {
	position: relative;
	z-index: 10;
}

#t_feature .t_feature_li .txt_block {
	margin-top: 6vw;
}

#t_feature .t_feature_li .tl_box {
	position: relative;
	height: 20vw;
	display: grid;
	align-items: center;
	line-height: 1.4;
	padding-left: 23vw;
	margin-bottom: 5vw;
}

#t_feature .t_feature_li .num_box {
	background: linear-gradient(135deg,  rgba(25,129,209,1) 0%,rgba(71,182,240,1) 100%);
	aspect-ratio: 1/1;
	width: 20vw;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	color: #fff;
	border-radius: 50%;
	font-family: var(--font-en);
	font-weight: 500;
	position: absolute;
	top: 0;
	left: 0;
}

#t_feature .t_feature_li .tl_box:before,
#t_feature .t_feature_li .tl_box:after{
	position: absolute;
	content: "";
	background: linear-gradient(to right,  rgba(25,129,209,1) 1%,rgba(25,129,209,1) 90%,rgba(25,129,209,0) 100%);
	width: calc(100% - 10vw);
	height: 1px;
	left: 10vw;
}
#t_feature .t_feature_li .tl_box:before{
	top:0;
}
#t_feature .t_feature_li .tl_box:after{
	bottom: 0;
}

#t_feature .t_feature_li .tl_txt {
	font-weight: 600;
	color: #1981d1;
	font-size: 1.8rem;
}

#t_feature .t_feature_li .num_tl {
	font-size: 1.1rem;
	letter-spacing: 0.2em;
	line-height: 1.2;
	padding-top: 1.4vw;
}

#t_feature .t_feature_li .num {
	font-size: 3.6rem;
	letter-spacing: 0.1em;
	line-height: 1.1;
}

#t_feature .t_feature_li .btn_area {
	margin-top: 5vw;
}

#t_feature .t_feature_li .t_feature_lead {
	font-weight: 700;
	font-size: 1.7rem;
	line-height: 1.5;
	margin-bottom: 3vw;
}

#t_feature .t_feature_li >li+li {
	margin-top: 12vw;
}

#t_feature .t_feature_li .btn_area>li+li {
	margin-top: 3vw;
}

#t_greeting {
	position: relative;
	padding-bottom: 15vw;
}

#t_greeting .t_greeting_tl .en {
	font-size: 6rem;
	padding: 18vw 3vw 2vw 5vw;
	text-align: right;
	display: block;
}

#t_greeting:before {
	position: absolute;
	content: "";
	box-shadow: inset 0px 0px 10vw 0px rgba(25, 129, 209, 0.2);
	background: #f8f8fa url(../images/top/greeting_sp.webp) no-repeat center top / 100% auto;
	top: 0;
	left: -10vw;
	width: 120vw;
	height: 100%;
}

#t_greeting>* {
	position: relative;
	z-index: 10;
}

#t_greeting .tl_ja {
	font-weight: 600;
	font-size: 2rem;
	margin-bottom: 17vw;
	line-height: 1.7;
	text-align: right;
}

#t_greeting .btn_area {
	margin-top: 7vw;
}

#t_greeting .btn_area>li+li {
	margin-top: 3vw;
}



#t_column {
	padding: 15vw 0;
}

#t_column .btn_area {
	margin-top: 8vw;
}
#t_recruit {
	background: #f7efe8 url(../images/top/recruit_sp.webp) no-repeat center bottom / 100% auto;
	padding: 15vw 0 35vw;
}

#t_recruit .t_recruit_tl .ja {
	font-weight: 600;
	vertical-align: 1vw;
	padding-left: 3vw;
}

#t_recruit .t_recruit_tl {
	margin-bottom: 5vw;
}

#t_recruit .btn_area {
	margin-top: 5vw;
}

footer .flogo {
	width: 53vw;
	margin: 0 auto 4vw;
}

footer .f_clinic_info {
	text-align: center;
	margin-bottom: 8vw;
}

footer .f_info_box {
	color: var(--main-color);
	font-weight: 500;
}

footer .f_info_box a {
	color: var(--main-color);
	text-decoration: none;
}

footer .f_info_box>p {
	position: relative;
}

footer .f_info_box>p:before {
	display: inline-block;
	content:"";
	background: url(../images/top/f_ad.webp) no-repeat center center /contain;
	width: 4.4vw;
	aspect-ratio: 1/1;
	vertical-align: middle;
	margin-right: 1vw;
}

footer .f_info_box>p.tel:before {
	background-image: url(../images/top/f_tel.webp);
}

footer .f_info_box>p+p {
	margin-top: 1vw;
}
footer .f_time_box .stl {
	position:relative;
	font-weight: 600;
	font-size: 1.7rem;
	line-height: 1.4;
	padding-left: 4vw;
	margin-bottom: 4vw;
}
footer .f_time_box .stl:before {
	position: absolute;
	content: "";
	top: 1vw;
	left: 0;
	height: 5vw;
	width: 1vw;
	background: var(--main-color);
	z-index: 5;
}
footer .f_time_box .stl:after {
	position: absolute;
	content: "";
	top: 1vw;
	left: 0;
	height: 10vw;
	width: 1vw;
	background: #d2d2d2;
	z-index: 4;
}

footer .table_border.eigyou01+.stl {
	margin-top: 6vw;
}

footer .eigyou_yuusen {
	background: #fff;
	color: var(--main-color);
	border-radius: 1.5vw;
	padding: 0.3vw 1vw 0.5vw 1vw;
	font-size: 1.1rem;
	margin-left: 1.9vw;
}

footer .table_border.eigyou01 tr * {
	font-weight: 600;
}

footer .eigyou01 thead th:last-of-type {
	width: 10% !important;
}

footer .table_border thead {border: none;}

footer .table_border thead th {
	border: none;
}

footer .table_border tbody th {
	border: none;
	background: none;
}

footer .table_border td {
	border: none;
	background: none;
}

footer .table_border tbody tr>* {
	border-bottom: 1px solid #bfbfbf;
}

footer .eigyou01 th,footer .eigyou01 td {
	padding: 3vw 0;
}

footer .eigyou01 tr>*:last-of-type {
	padding-right: 3vw;
}

footer .eigyou01 thead th {
	width: 7%;
}



footer .m_footer_item {
	margin-top: 9vw;
}