@charset "utf-8";

/************************************************************************
	クッキー
**************************************************************************/

@media (max-width: 900px) {
	#cookie-notice{
		opacity: .8;
	}
	.cookie-notice-container #cn-notice-text{
		font-size: 1.2rem;
	}
	.cookie-notice-container #cn-notice-text,
	.cookie-notice-container #cn-notice-buttons{
		display: inline-block;
	}

	.cookie-notice-container, .cookie-revoke-container{
		padding: .5rem 2.75rem 1rem 1.5rem;
	}
	.cn-close-icon{
		right: .75rem;
	}
}

/************************************************************************
	ローダー
**************************************************************************/
#loader{
    display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
    background-color: var(--bg_primary);
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 999;
}

#loader .inner{
	width: min(30rem, 60%);
	padding: 5rem 0;
	margin: auto;
	position: relative;
	animation: loader_logo 1s ease .7s forwards;
	opacity: 0;
	transform: translateY(25%);
}

#loader .logo img{
	width: 100%;
}

@media (max-width: 768px) {
	#loader .inner{
		padding: 3rem 0;
	}

}

@keyframes loader_logo {
	0% {
		opacity: 0;
		transform: translateY(25%);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}



/************************************************************************
	ページ全体
**************************************************************************/
main{
	padding-top: 16.5rem;
	overflow: hidden;
}
#top{
	padding-top: 0;
	margin-bottom: calc(-10rem + 1px);
}

@media screen and (max-width: 768px) {
	main{
		padding-top: 10.3rem;
	}

	#top{
		margin-bottom: calc(-6rem);
	}
}

/************************************************************************
	ヘッダー
**************************************************************************/
header{
	font-size: 1.6rem;/* 子要素すべて、このサイズ基準でemで調整する */
	width: 100%;
	padding: 1.25em 0;
	background-color: var(--bg_primary);
	position: fixed;
	top: 0;
	z-index: 50;
	transition: padding .4s;
}

.hd-inner{
	display: flex;
	align-items: center;
	width: min(200rem, 96%);
	margin-inline: auto;
}

header .hd-logo{
	flex-shrink: 0;
	width: 19.25em;/* 308/16 */
	margin-right: 2.5%;
	transition: opacity .4s, visibility .4s;
}
.is-mv-logo-visible header .hd-logo{
	opacity: 0;
	visibility: hidden;
}
.hmb-open header .hd-logo{
	opacity: 1;
	visibility: visible;
}


header .hd-logo a{
	display: block;
}
header .hd-logo a:hover{
	opacity: .7;
}

header .hd-catch{
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .03em;
	margin-right: auto;
	transition: opacity .4s, visibility .4s;
}
.hmb-open header .hd-catch{
	opacity: 0;
	visibility: hidden;
}


@media screen and (max-width: 1280px) {
	header{
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 1120px) {
	header{
		font-size: 1.35rem;
	}
}
@media screen and (max-width: 960px) {
	header{
		font-size: 1.6rem;
	}

	header .hd-logo{
		margin-right: auto;
	}
	header .hd-catch{
		display: none;
	}
}

@media screen and (max-width: 768px) {
	header{
		font-size: 1rem;/* テキストないので分かりやすく10px基準に */
	}
	.is-scroll.is-down header{
		padding: .5em 0;
	}

	header .hd-logo{
		width: 19em;/* 190/10 */
	}

	.hd-inner{
		width: 93.65%;/* 354/378 */
	}
}


/* ---
	予約関連
-------------------------------------------------------- */
.hd-reserve__wrap{
	display: flex;
	margin-right: 2.5%;
	transition: opacity .4s, visibility .4s;
}

.hmb-open .hd-reserve__wrap{
	opacity: 0;
	visibility: hidden;
}


.hd-reserve__wrap > li{
	font-weight: 700;
	border-right: 2px solid var(--font_color);
}
.hd-reserve__wrap > li:nth-of-type(1){
	border-left: 2px solid var(--font_color);
}

.hd-reserve__wrap > li a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 10.375em;/* 166/16 */
	padding: .33em 0;
	position: relative;
}
.hd-reserve__wrap .hd-reserve__web a,
.hd-reserve__wrap .hd-reserve__tel a{
	letter-spacing: .03em;
}

.hd-reserve__wrap > li a:hover{
	opacity: .7;
}

.hd-reserve__wrap > li a::before{
	content: "";
	display: block;
	background: url(../img/cmn/hd_reserve_web.svg) no-repeat center/contain;
}

.hd-reserve__wrap .hd-reserve__web a::before{
	width: 1.875em;/* 30/16 */
	height: 1.6875em;/* 27/16 */
	margin-right: .5em;
}
.hd-reserve__wrap .hd-reserve__tel a::before{
	width: 1.625em;/* 26/16 */
	height: 1.625em;
	margin-right: .33em;
	background-image: url(../img/cmn/hd_reserve_tel.svg);
}
.hd-reserve__wrap .hd-reserve__online a::before{
	width: 1.1875em;/* 19/16 */
	height: 2em;/* 32/16 */
	margin-right: .75em;
	background-image: url(../img/cmn/hd_reserve_online.svg);
}

@media screen and (max-width: 960px) {
	.hd-reserve__wrap{
		display: none;
	}
}


/* ---
	ハンバーガー
-------------------------------------------------------- */
#hmb{
	cursor: pointer;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-pack: center;
	justify-content: center;
	width: 3.875em;/* 62/16 */
	height: 3.875em;
	margin-right: .5%;
	border-radius: 50%;
	background-color: var(--font_color);
	transition: background-color .4s, opacity .4s;
	position: relative;
}
@media screen and (min-width: 769px) {
	#hmb:hover{
		opacity: .7;
	}
}

.hmb-open #hmb{
	background-color: var(--greige);
}

.hmb_bar{
	width: 1.25em;/* 20/16 */
	height: 1.25em;
	margin: auto;
	position: relative;
	transition: .4s;
}

.hmb_bar span{
	display: inline-block;
	width: 100%;
	height: 2px;
	background-color: #F0EDDE;
	position: absolute;
	right: 0;
	transition: .4s;
}

.hmb_bar span:nth-of-type(1){
	top: 0;
}
.hmb_bar span:nth-of-type(2){
	top: calc(50% - 1px);
}
.hmb_bar span:nth-of-type(3){
	bottom: 0;
}

.hmb-open .hmb_bar span:nth-of-type(1){
	top: 46%;
	transform: rotate(-45deg);
}
.hmb-open .hmb_bar span:nth-of-type(2){
	opacity: 0;
}
.hmb-open .hmb_bar span:nth-of-type(3){
	width: 100%;
	bottom: 46%;
	transform: rotate(45deg);
}

@media screen and (max-width: 768px) {
	#hmb{
		width: 4.5em;/* 45/10 */
		height: 4.5em;
		margin-right: 0;
	}

	.hmb_bar{
		width: 1.5em;/* 15/10 */
		height: 1.5em;
	}

}



/************************************************************************
	グローバル
**************************************************************************/
/* 169/731 */
#global{
	width: 100%;
	min-height: 100dvh;
	background-color: #D3CCBD;
	opacity: 0;
	visibility: hidden;
	position: fixed;
	left: 0;
	top: 3rem;
	z-index: 40;
	transition: opacity .4s, visibility .4s, top .4s;
}
.hmb-open #global{
	opacity: 1;
	visibility: visible;
	top: 0;
}

.gl-container{
	height: min(65rem, 77dvh);
	padding: 10.2rem 0 4.5rem;
	background-color: #F0EDDE;
	overflow: auto;
	scrollbar-color: var(--greige) #F0EDDE;/* ハンドルの色, 背景色 */
	scrollbar-width: thin;
}
.gl-container::-webkit-scrollbar-thumb {
  background: var(--greige); /* ハンドルの色 */
}
.gl-container::-webkit-scrollbar-track {
  background: #F0EDDE; /* 背景色 */
}

.gl-inner{
	display: flex;
	flex-direction: row-reverse;
	align-items: flex-start;
	justify-content: flex-start;
	width: min(116rem, 92%);
	margin-inline: auto;
	position: relative;
}


@media screen and (max-width: 768px) {
	.gl-container{
		height: min(72rem, 91.6dvh);
		padding: 10rem 0 5rem;
	}

	.gl-inner{
		display: block;
		width: 91.54%;
	}

}



/* ---
	ナビ
-------------------------------------------------------- */
.gl-nav{
	margin-top: -.5rem;
	margin-right: 5.5rem;
	position: relative;
	z-index: 1;
}

.gl-nav > ul > li{
	font-size: 2.2rem;
	font-weight: 700;
	margin-top: .7em;
	text-shadow: 0 0 .25em var(--bg_primary), 0 0 .25em var(--bg_primary);
}
.gl-nav > ul > li:nth-of-type(1){
	margin-top: 0;
}

.gl-nav > ul > li a{
	display: block;
}
.gl-nav > ul > li a:hover{
	opacity: .5;
}

@media screen and (max-width: 768px) {
	.gl-nav{
		margin-top: 3rem;
		margin-right: 0;
	}

	.gl-nav > ul{
		display: grid;
		justify-content: space-between;
		grid-template-columns: repeat(2, 48.6%);
		row-gap: .5rem;
	}

	.gl-nav > ul > li{
		font-size: 1.8rem;
		font-weight: 700;
		margin-top: 0;
	}

	.gl-nav > ul > li:nth-of-type(-n + 4){
		grid-column: 1/2;
	}
	.gl-nav > ul > li:nth-of-type(n + 5){
		grid-column: 2/3;
	}
	.gl-nav > ul > li:nth-of-type(1),.gl-nav > ul > li:nth-of-type(5){
		grid-row: 1/2;
	}
	.gl-nav > ul > li:nth-of-type(2),.gl-nav > ul > li:nth-of-type(6){
		grid-row: 2/3;
	}
	.gl-nav > ul > li:nth-of-type(3),.gl-nav > ul > li:nth-of-type(7){
		grid-row: 3/4;
	}

	.gl-nav > ul > li a{
		padding: .3em 0;
	}
}



/* ---
	ボタン・SNS
-------------------------------------------------------- */
.gl__right-wrap{
	flex-grow: 1;
	max-width: 42.5rem;
}

.gl-btn{
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	color: #7C7366;
	letter-spacing: .05em;
	line-height: 1.1;
	min-height: 8.375em;/* 134/16 */
	padding: .25em 6.5%;/* 72 */
	margin-top: .7em;
	border: 2px solid #7C7366;
	border-radius: 4.1em;
	background-color: #fff;
	position: relative;
}
.gl-btn:hover{
	border-radius: 1.5em;/* 29/16 */
	background-color: #DEDCD9;
}
.gl__right-wrap .gl-btn:nth-of-type(1){
	margin-top: 0;
}

.gl-btn::after{
	content: "";
	display: block;
	width: .76em;/* 12.15/16 */
	height: .76em;
	border-radius: 50%;
	background-color: currentColor;
	position: absolute;
	right: 9%;
	top: calc(50% - .38em);
}

.gl-btn__text{
	display: block;
	position: relative;
}
.gl-btn__web .gl-btn__text{
	padding-left: 3.625em;/* 58/16 */
}
.gl-btn__tel .gl-btn__text{
	padding-left: 2em;
	padding-right: .75em;
}

.gl-btn__text::before{
	content: "";
	display: block;
	background: no-repeat center/contain;
	position: absolute;
	left: 0;
}
.gl-btn__web .gl-btn__text::before{
	width: 2.75em;/* 44/16 */
	height: 2.48em;/* 39.5/16 */
	background-image: url(../img/cmn/gl_web.svg);
	top: calc(50% - 1.24em);
}
.gl-btn__tel .gl-btn__text::before{
	width: 1.5625em;/* 25/16 */
	height: 2.14em;/* 34/16 */
	background-image: url(../img/cmn/gl_tel.svg);
	top: calc(50% - 1.07em);
}

.gl-btn__web .sub{
	font-size: .625em;/* 10/16 */
}

.gl-sns{
	display: flex;
	justify-content: center;
	margin-top: 3.5rem;
}
.gl-sns.is-sp{
	display: none;
}

.gl-sns > li{
	width: 3.4rem;
	margin-left: 1.2rem;
}
.gl-sns > li a{
	display: block;
}
.gl-sns > li a:hover{
	opacity: .7;
}

@media screen and (max-width: 768px) {
	.gl__right-wrap{
		max-width: none;
	}

	.gl-btn{
		font-size: 2rem;
		letter-spacing: .03em;
		min-height: 4em;
		padding: .25em calc(9% + .6em);/* 72 */
		margin-top: .5em;
		border-radius: 4em;
	}
	.gl-btn:hover{
		border-radius: 1em;
		background-color: #DEDCD9;
	}

	.gl-btn::after{
		width: .6em;/* 12/20 */
		height: .6em;
		top: calc(50% - .3em);
	}

	.gl-btn__web .gl-btn__text{
		line-height: 1;
		text-align: center;
		padding-top: 0;
		padding-left: 3em;/* 60/20 */
		padding-right: 2.75em;
	}
	.gl-btn__tel .gl-btn__text{
		padding-left: 2.1em;
		padding-right: 1.6em;
	}

	.gl-btn__web .gl-btn__text::before{
		width: 1.64em;/* 32.71/20 */
		height: 1.48em;/* 29.33/20 */
		top: calc(50% - .74em);
	}
	.gl-btn__tel .gl-btn__text::before{
		width: 1.62em;/* 32.41/20 */
		height: 1.62em;
		top: calc(50% - .81em);
	}

	.gl-btn__web .sub{
		font-size: .7em;/* 14/20 */
		line-height: 1;
	}

	.gl-sns.is-sp{
		display: flex;
		justify-content: flex-start;
		margin-top: 2.25rem;
	}
	.gl-sns.is-pc{
		display: none;
	}

	.gl-sns > li{
		width: 3.6rem;
		margin-left: 2.2rem;
	}
	.gl-sns > li:nth-of-type(1){
		margin-left: 0;
	}
}



/* ---
	イラスト
-------------------------------------------------------- */
.gl-illust__wrap{
	width: min(116rem, 92%);
	height: min(65rem, 77dvh);
	margin-inline: auto;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	pointer-events: none;
}

.gl-illust{
	opacity: 0;
	visibility: hidden;
	position: absolute;
	bottom: 0;
	transition: opacity .4s, visibility .4s;
}
.gl-illust.is-active{
	opacity: 1;
	visibility: visible;
}

#gl-illust01{
	left: 9.4%;
	width: 13.3rem;
}
#gl-illust02{
	left: 7.5%;
	width: 17.6rem;
}
#gl-illust03{
	left: 7.4%;
	width: 18rem;
}
#gl-illust04{
	left: 1.8%;
	width: 25.8rem;
}
#gl-illust05{
	left: 7.2%;
	width: 22.4rem;
}
#gl-illust06{
	left: 10.6%;
	width: 10.2rem;
}
#gl-illust07{
	left: 8.4%;
	bottom: -10.6rem;
	width: 15.5rem;
}
#gl-illust08{
	left: 8.5%;
	width: 15.9rem;
}
#gl-illust--sp{
	display: none;
}

@media screen and (max-width: 768px) {
	.gl-illust__wrap{
		width: 91.54%;
		height: min(72rem, 91.6dvh);
	}

	.gl-illust{
		display: none;
	}

	#gl-illust--sp{
		display: block;
		width: 15.9rem;
		opacity: 1;
		visibility: visible;
		right: 0;
	}
}


/************************************************************************
	フッター
**************************************************************************/
footer{
	padding: 9rem 0 1.5rem;
	background-color: #D3CCBD;
}

.ft-inner{
	width: min(116rem, 92%);
	margin-inline: auto;
}

.ft__flex-container{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

@media screen and (max-width: 768px) {
	footer{
		padding: 4rem 0 .5rem;
	}

	.ft-inner{
		width: 91.54%;
	}

	.ft__flex-container{
		display: block;
	}
}


/* ---
	ロゴ・アドレス
-------------------------------------------------------- */
.ft__left{
	width: calc(94% - 38.8rem);
}

.ft__address-wrap{
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
}

.ft-logo{
	display: block;
	width: 18.9rem;
	margin-right: 5.5%;
	margin-bottom: 4.5rem;
}
.ft-logo:hover{
	opacity: .7;
}

.ft-tel{
	display: block;
	width: 27.5rem;
}
.ft-tel:hover{
	opacity: .7;
}

.ft-access, .ft-hours{
	font-size: 2.2rem;
	font-weight: 700;
	letter-spacing: .03em;
	line-height: 1.6;
}
.ft-access{
	margin-top: 1.25em;
}
.ft-hours{
	margin-top: .1em;
}

.ft-hours__supple{
	font-size: 1.8rem;
	line-height: 1.55;
	margin-top: .7em;
}
.ft-hours__supple > li{
	padding-left: 1em;
	margin-top: .25em;
	position: relative;
}
.ft-hours__supple > li:nth-of-type(1){
	margin-top: 0;
}

.ft-hours__supple > li::before{
	content: "";
	display: block;
	width: .56em/* 10/18 */;
	height: .56em;
	border-radius: 50%;
	background-color: currentColor;
	position: absolute;
	left: 0;
	top: .45em;
}


@media screen and (max-width: 960px) {
	.ft__left{
		width: calc(96% - 31rem);
	}
}

@media screen and (max-width: 768px) {
	.ft__left{
		width: 100%;
	}

	.ft__address-wrap{
		display: block;
	}

	.ft-logo{
		width: 11.4rem;
		margin-inline: auto;
		margin-bottom: 0;
	}

	.ft__address-box{
		margin-top: 2rem;
	}

	.ft-tel{
		width: 18.6rem;
		margin-inline: auto;
	}

	.ft-access, .ft-hours{
		font-size: 1.4rem;
		letter-spacing: 0;
		line-height: 1.428;
		text-align: center;
	}
	.ft-access{
		margin-top: .75em;
	}

	.ft-hours__supple{
		font-size: 1.4rem;
	}
	.ft-hours__supple > li{
		text-align: center;
		padding-left: 0;
		margin-top: 0;
	}

	.ft-hours__supple > li::before{
		display: none;
	}
}



/* ---
	フッターナビ
-------------------------------------------------------- */
.ft-nav__wrap{
	margin-top: 6.5%;
}

.ft-nav > ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 2rem;
	font-weight: 700;
	max-width: 45rem;
}

.ft-nav > ul > li{
	width: 48.6%;/* 168/346 */
}

.ft-nav > ul > li a{
	display: block;
	padding: .15em 0;
}
.ft-nav > ul > li a:hover{
	opacity: .7;
}

@media screen and (max-width: 768px) {
	.ft-nav__wrap{
		margin-top: 3.6rem;
	}

	.ft-nav > ul{
		font-size: 1.4rem;
		font-weight: 700;
		max-width: 45rem;
	}

	.ft-nav > ul > li{
		border-top: 1px solid #EBEBEB;
	}
	.ft-nav > ul > li:nth-last-of-type(-n + 2){
		border-bottom: 1px solid #EBEBEB;
	}

	.ft-nav > ul > li a{
		padding: .45em 0 .35em;
	}

}



/* ---
	SNS
-------------------------------------------------------- */
.ft-sns{
	display: flex;
	margin-top: 4.5%;
}

.ft-sns > li{
	width: 4rem;
	margin-left: 1.5rem;
}
.ft-sns > li:nth-of-type(1){
	margin-left: 0;
}

.ft-sns > li a{
	display: block;
}
.ft-sns > li a:hover{
	opacity: .7;
}

@media screen and (max-width: 768px) {
	.ft-sns{
		margin-top: 1.5rem;
	}

	.ft-sns > li{
		width: 3.5rem;
	}
}



/* ---
	サムネイル
-------------------------------------------------------- */
.ft-thumb{
	width: 38.8rem;
	margin-right: 4.5%;
	border-radius: 20rem;
	overflow: hidden;
}

@media screen and (max-width: 960px) {
	.ft-thumb{
		width: 31rem;/* 下の大きさ×0.8 */
		margin-right: 0;
	}
}

@media screen and (max-width: 768px) {
	.ft-thumb{
		width: 16.8rem;
		margin-inline: auto;
	}
}


/* ---
	コピーライト
-------------------------------------------------------- */
.ft-copyright__wrap{
	padding-top: 3rem;
}

.ft__to-privacy{
	font-size: 1.4rem;
	font-weight: 700;
}
.ft__to-privacy a:hover{
	opacity: .7;
}

.ft-copyright{
	font-family: "Zen Kaku Gothic New",sans-serif;
	font-size: 1.3rem;
}

@media screen and (max-width: 768px) {
	.ft-copyright__wrap{
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		padding-top: .75rem;
	}

	.ft__to-privacy{
		font-size: 1.2rem;
	}

	.ft-copyright{
		font-size: 1rem;
	}
}



/************************************************************************
	TOP
**************************************************************************/
/* =====
	MV
======================================================== */
#t-mv{
	display: grid;
	grid-template-columns: 64% 34%;
	align-items: center;
	justify-content: space-between;
	width: min(200rem, 96%);
	padding: 3rem 0;
	margin-inline: auto;
}

#t-mv_logo{
	grid-column: 1/2;
	grid-row: 1/2;
	max-width: 30.2rem;
	margin-left: 1.5%;
	position: relative;
	z-index: 60;
	transition: opacity .4s, visibility .4s;
}
#t-mv_logo a:hover{
	opacity: .7;
}
.hmb-open #t-mv_logo{
	opacity: 0;
	visibility: hidden;
}

@media screen and (max-width: 1280px) {
	#t-mv_logo{
		max-width: 28.3rem;/* 30.2rem×0.9375 */
	}
}

@media screen and (max-width: 1120px) {
	#t-mv_logo{
		max-width: 25.5rem;/* 28.3rem×0.9 */
	}
}

@media screen and (max-width: 960px) {
	#t-mv_logo{
		max-width: 30.2rem;
	}
}

@media screen and (max-width: 768px) {
	#t-mv{
		grid-template-columns: repeat(4, 1fr);
		width:92.6%;
		padding: 1.5rem 0 5rem;

	}

	#t-mv_logo{
		grid-column: 1/4;
		grid-row: 1/3;
		max-width: 21.5rem;
		margin-left: 1%;
	}
}

/* スライダー
-------------------------------------------------------- */
.t-mv__slider{
	grid-column: 1/3;
	grid-row: 2/3;
	display: flex;
	overflow: hidden;
	margin: 2.25rem calc(50% - (50 * var(--js_vw))) 3rem;
}

.t-mv__slider__wrap{
	display: flex;
	animation: t-mv_slider 50s infinite linear both;
}

.t-mv__slider_item{
	width: 41rem;
	padding: 0 2.5rem;
}
@keyframes t-mv_slider{
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}

.t-mv__slider_item img{
	width: 100%;
}

@media screen and (max-width: 768px) {
	.t-mv__slider{
		grid-column: 1/5;
		grid-row: 4/5;
		margin: .5rem calc(50% - (50 * var(--js_vw))) 1.5rem;
	}

	.t-mv__slider__wrap{
		animation-duration: 38s;
	}

	.t-mv__slider_item{
		width: 32rem;
		padding: 0 1.25rem;
	}
}


/* キャッチコピー　お知らせ抜粋
-------------------------------------------------------- */

.t-mv__catch{
	grid-column: 1/2;
	grid-row: 3/4;
	font-size: 4.2rem;
	font-weight: 700;
	letter-spacing: .03em;
	line-height: 1.52;
}

.t-mv__news{
	display: block;
	grid-column: 2/3;
	grid-row: 3/4;
	max-width: fit-content;
	margin-left: auto;
}
.t-mv__news:hover{
	opacity: .7;
}

.t-news__date{
	font-size: 1.4rem;
	font-weight: 700;
	color: var(--greige);
	letter-spacing: .03em;
}
.t-news__cat{
	font-size: 1.2rem;
	font-weight: 700;
	color: #fff;
	padding: .25em 1em;
	border-radius: 5em;
	background-color: var(--greige);
}
.t-mv__news .t-news__cat{
	font-size: 1.3rem;
	margin-left: .75em;
}

.t-mv__news__text{
	text-align: right;
	text-decoration: underline;
	text-underline-offset: .2em;
	margin-top: .5em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
a:hover .t-mv__news__text{
	text-decoration: none;
}

@media screen and (max-width: 768px) {
	.t-mv__catch{
		grid-column: 1/5;
		grid-row: auto;
		font-size: 3.4rem;
		line-height: 1.29;
		margin-left: 4%;
	}

	.t-mv__news{
		grid-column: 3/5;
		grid-row: 2/4;
		padding-top: 1.25rem;
	}

	.t-news__date{
		font-size: 1.2rem;
	}
	.t-mv__news .t-news__date{
		font-size: 1.1rem;
	}
	.t-news__cat{
		font-size: .9rem;
		padding: .2em 1em .125em;
	}
	.t-mv__news .t-news__cat{
		font-size: 1rem;
	}

	.t-mv__news__text{
		font-size: 1.2rem;
		line-height: 1.25;
	}

}

/* =====
	診療時間/お知らせ
======================================================== */
#t-news{
	padding: 12rem 0 17rem;
}
.t-news__time-table,
.t-news__container{
	width: min(56rem, 49%);
	padding: 2rem 2.5% 1.5rem;
	border-radius: 2rem;
	background-color: #fff;
}

.t-news__title{
	font-size: 2.2rem;
	font-weight: 700;
	text-align: center;
}

@media screen and (max-width: 768px) {
	#t-news{
		padding: 1rem 0 5.7rem;
	}
	.t-news__time-table,
	.t-news__container{
		width: 100%;
		padding: 1.5rem 4.5% 2.25rem;
		border-radius: 1.5rem;
		background-color: #fff;
	}

	.t-news__container{
		padding-bottom: 1.25rem;
		margin-top: 1.5rem;
	}

	.t-news__title{
		font-size: 1.8rem;
	}
	
}

/* 診療時間
-------------------------------------------------------- */
.t-news__time-table__img{
	margin-top: 1.5rem;
}

.t-news__time-table .disc{
	font-size: 1.4rem;
	margin-top: 1.5rem;
}

@media screen and (max-width: 768px) {
	.t-news__time-table__img{
		margin-top: 1.25rem;
		margin-right: -4.5%;
	}

	.t-news__time-table .disc{
		font-size: 1.2rem;
		margin-top: 1.25rem;
	}
}

/* お知らせ
-------------------------------------------------------- */
.t-news__container .t-news-list{
	margin-top: 1.5rem;
}

.t-news-list > li{
	border-bottom: 1px solid var(--gray);
}
.t-news-list > li a{
	display: flex;
	align-items: flex-start;
	padding: .5rem;
}
.t-news-list > li a:hover{
	opacity: .7;
}

.t-news-list > li .t-news__date{
	flex-shrink: 0;
	padding-block: .1em;
	margin-right: .33em;
}

.t-news-list > li .t-news__cat{
	flex-shrink: 0;
	width: 5.83em;
	padding-inline: .1em;
	margin-right: .75em;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.t-news-list > li .t-news__text{
	flex-grow: 1;
	font-size: 1.4rem;
	padding-block: .1em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2; /* 任意の行数を指定 */
}

.t-news__btn{
	display: block;
	font-weight: 700;
	width: fit-content;
	padding: .5em 1.4em;
	margin: 1.5em auto 0;
	position: relative;
	transition: opacity .4s;
}
.t-news__btn:hover{
	opacity: .7;
}
.t-news__btn::after{
	content: "";
	display: block;
	width: .6875em;/* 11/16 */
	height: .6875em;
	border-radius: 50%;
	background-color: var(--greige);
	position: absolute;
	right: 0;
	top: calc(50% - .34375em);
	transition: background-color .4s;
}
@media screen and (max-width: 768px) {
	.t-news__container .t-news-list{
		margin-top: .5rem;
	}

	.t-news-list > li a{
		flex-wrap: wrap;
		padding: .6rem 0;
	}
	.t-news-list > li .t-news__date{
		margin-right: .5em;
	}

	.t-news-list > li .t-news__cat{
		margin-right: 0;
	}

	.t-news-list > li .t-news__text{
		font-size: 1.2rem;
		line-height: 1.2;
		width: 100%;
		padding-block: 0;
	}

	.t-news__btn{
		font-size: 1.4rem;
		padding: .15em 1.2em;
		margin: .5em 0 0 auto;
		position: relative;
		transition: opacity .4s;
	}
}


/* =====
	パララックス
======================================================== */
#t-parallax{
	width: 100%;
	padding-top: 40.44%;
	background-image: url(../img/top/parallax.jpg);
	background-repeat: no-repeat;
	background-position-y: 0%;
	background-size: 100%;
}

@media screen and (max-width: 768px) {
	#t-parallax{
		height: 47.3rem;
		background-image: url(../img/top/parallax_sp.jpg);
		background-size: cover;
		background-position-y: center !important;
	}
}

/* =====
	ご家族が納得して〜
======================================================== */
.t-deco__area{
	max-width: 160rem;
	margin-inline: auto;
	position: relative;
	z-index: 1;
}
/* @media screen and (min-width: 1616px) {
	.t-deco__area::before,
	.t-deco__area::after{
		content: "";
		display: block;
		width: 6rem;
		height: 100%;
		background-image: linear-gradient(90deg, rgba(240, 237, 223, 1) 0%, rgba(240, 237, 223, .8) 30%, rgba(240, 237, 223, 0) 100%);
		position: absolute;
		top: 0;
	}
	.t-deco__area::before{
		left: 0;
	}
	.t-deco__area::after{
		right: 0;
		transform: scale(-1,1);
	}
} */

.t-deco__container{
	position: relative;
}
.t-thought__container{
	padding-top: 31.6rem;
}

.t-deco__wrap{
	position: absolute;
	z-index: -1;
}
.t-thought__deco-wrap{
	width: 65rem;
	height: 39.25rem;
	top: 0;
	right: -10.8rem;
}

.t-deco{
	position: absolute;
}
.t-thought__deco01{
	width: 89.538%;/* 582/650 */
	height: 100%;/* 576.71/392.5 */
	left: 0;
	top: 0;
	z-index: 0;
}
.t-thought__deco02{
	width: 65.249%;/* 424.12/650 */
	height: 43.975%;/* 172.6/392.5 */
	right: 0;
	bottom: 4.31%;/* 17/392.5 */
	z-index: 1;
}

@media screen and (max-width: 768px) {
	.t-thought__container{
		padding-top: 23rem;
	}

	.t-thought__deco-wrap{
		width: 37.4rem;
		height: 19.5rem;
		right: -7.2rem;
	}

	.t-thought__deco01{
		width: 100%;
	}
	.t-thought__deco02{
		width: 70%;/* 262/374.45 */
		height: 54.7%;/* 106.6/195 */
		bottom: 3%;/* 6/195 */
	}
}

/* テキストと画像
-------------------------------------------------------- */
.t-thought__title{
	font-size: 4.6rem;
	font-weight: 700;
	line-height: 1.5652;
	letter-spacing: .05em;
	text-shadow: var(--text_shadow_primary);
}
.t-thought__title .palt{
	font-feature-settings: "palt";
}

.t-thought__flex-wrap{
	display: flex;
	justify-content: space-between;
	margin-top: 4.25rem;
	margin-right: max(-20rem, calc(50% - (50 * var(--js_vw)) - 1.25rem));
}

.t-thought__text{
	font-size: 2.2rem;
	line-height: 2.18;
	text-shadow: var(--text_shadow_primary);
	width: 42%;
}

.t-thought__img{
	width: 56.58%;/* 720/1272.5 */
	border-radius: 2.5rem;
	overflow: hidden;
}

@media screen and (max-width: 768px) {
	.t-thought__title{
		font-size: 2.8rem;
		line-height: 1.42;
		letter-spacing: 0;
		margin-right: -.75em;
	}

	.t-thought__flex-wrap{
		display: block;
		margin-top: 2.25rem;
		margin-right: 0;
	}

	.t-thought__text{
		font-size: 1.8rem;
		line-height: 2;
		width: 100%;
	}

	.t-thought__img{
		width: calc(100% + ((50 * var(--js_vw)) - 50%));
		margin-top: 4rem;
		margin-right: calc(50% - (50 * var(--js_vw)));
		border-radius: 1.5rem 0 0 1.5rem;
	}
}


/* =====
	私たちについて
======================================================== */
.t-about__container{
	padding-top: 32.5rem;
}

.t-about__deco-wrap{
	width: 50.4rem;
	height: 61.654rem;
	top: -15.2rem;
	left: -4.2rem;
}

.t-about__deco01{
	width: 100%;
	height: 79.4%;/* 489.53/616.54 */
	left: 0;
	bottom: 0;
	z-index: 0;
}

.t-about__deco02{
	width: 63.355%;/* 319.31/504 */
	height: 79.4%;/* 198.5/616.54 */
	left: 14.68%;/* 74/504 */
	top: 0;
	z-index: 1;
}


@media screen and (max-width: 768px) {
	.t-about__container{
		padding-top: 39.5rem;
	}

	.t-about__deco-wrap{
		width: 32.4rem;
		height: 36rem;
		top: 6rem;
		left: -3.6rem;
	}

	.t-about__deco01{
		height: 86.4%;/* 311/359.92 */
		bottom: 2%;
	}

	.t-about__deco02{
		width: 55.56%;/* 180/324 */
		height: 31%;/* 111.92/359.92 */
		left: 12.5%;/* 40/324 */
	}
}

/* テキスト・画像
-------------------------------------------------------- */
.t__flex-sec{
	--sec_color: var(--yellow_green);
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	width: min(116rem, 92%);
	padding-block: 11.5rem;/* 余白230px */
	margin-inline: auto;
}
.t__flex-sec.fd-rr{--sec_color:var(--yellow);}

.t__flex-sec__text-wrap{
	width: min(50rem, 48%);
}

.t__flex-sec__title{
	font-size: 3.8rem;
	font-weight: 700;
	text-shadow: var(--text_shadow_primary);
}
.t__flex-sec__title__sub{
	font-size: .6316em;
	letter-spacing: .03em;
	line-height: 1.3;
	text-transform: capitalize;
	padding-left: 1em;
	position: relative;
}
.t__flex-sec__title__sub::before{
	content: "";
	display: block;
	width: .75em;/* 18/24 */
	height: .75em;
	border-radius: 50%;
	background-color: var(--sec_color);
	position: absolute;
	left: 0;
	top: .25em;
}
.t__flex-sec__title__main{
	letter-spacing: .032em;
	line-height: 1.7;
	margin-top: .25em;
}

.t__flex-sec__text{
	font-size: 1.8rem;
	line-height: 2.11;/* 38/18 */
	text-shadow: var(--text_shadow_primary);
	margin-top: 1.6em;
}

.t__flex-sec__text-wrap .c-btn01{
	margin-top: 3.33em;
}
.t__flex-sec .c-btn01.is-sp{
	display: none;
}

.t__flex-sec__img{
	width: min(56rem, 50%);
	border-radius: 2.5rem;
	overflow: hidden;
}
.t__flex-sec__img img{
	width: 100%;
}

@media screen and (max-width: 768px) {
	.t__flex-sec{
		display: block;
		width: 91.54%;
		padding-block: 4.75rem;/* 余白90px */
	}

	.t__flex-sec__text-wrap{
		width: 100%;
	}

	.t__flex-sec__title{
		font-size: 2.8rem;
	}
	.t__flex-sec__title__sub{
		font-size: .6428em;
	}
	.t__flex-sec__title__main{
		letter-spacing: .0;
		margin-top: .1em;
	}

	.t__flex-sec__text{
		font-size: 1.6rem;
		line-height: 1.875;/* 30/16 */
		margin-top: 1em;
	}

	.t__flex-sec .c-btn01.is-pc{
		display: none;
	}
	.t__flex-sec .c-btn01.is-sp{
		display: block;
		max-width: 20rem;
		margin: 2.7em auto 0;
	}

	.t__flex-sec__img{
		width: 100%;
		margin-top: 3rem;
		border-radius: 1.5rem;
	}

}

/* =====
	診療のご案内下のイラスト
======================================================== */
.t-online__container{
	padding-bottom: 26.5rem;
}

.t-online__deco-wrap{
	width: 61.1rem;
	height: 30.9rem;
	bottom: 0;
	right: -9.3rem;
}

.t-online__deco01{
	width: 100%;
	height: 100%;/* 489.53/616.54 */
	left: 0;
	bottom: 0;
	z-index: 0;
}

.t-online__deco02{
	width: 39.425%;/* 240.89/611 */
	height: 64.74%;/* 200.03/308.98 */
	left: 19.476%;/* 119/611 */
	bottom: 0;
	z-index: 1;
}
@media screen and (max-width: 768px) {
	.t-online__container{
		padding-bottom: 21.5rem;
	}

	.t-online__deco-wrap{
		width: 36.63rem;
		height: 18.52rem;
		right: -5.4rem;
	}

}

/* =====
	初診の方へ大切なご案内
======================================================== */
.t-guidance__container{
	display: grid;
	grid-template-columns: repeat(2, min(49rem, 48.4%));
	row-gap: 4.75rem;
	justify-content: space-between;
	padding: 5rem 5% 4rem;
	margin-top: 3rem;
	border-radius: 2.5rem;
	background-color: #fff;
}

.t-guidance__wrap{
	display: flex;
	justify-content: space-between;
	max-width: 48rem;
}

.t-guidance__img{
	width: min(17.9rem, 40%);
	padding-top: 5%;
}
.t-guidance__img img{
	width: 100%;
}
.t-guidance__wrap:nth-of-type(2) .t-guidance__img img{
	width: 93.3%;/* 167.14/178.87 */
}
.t-guidance__wrap:nth-of-type(3) .t-guidance__img img{
	width: 85%;/* 152/178.87 */
	transform: translate(7%, -29%);
}
.t-guidance__wrap:nth-of-type(4) .t-guidance__img img{
	width: 69%;/* 123.55/178.87 */
	transform: translate(16%, 6%);
}

.t-guidance__text-box{
	width: min(27rem, 57%);
}

.t-guidance__title{
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.45;
}

.t-guidance__text{
	margin-top: .75em;
}

@media screen and (max-width: 768px) {
	.t-guidance__container{
		display: block;
		padding: 3.5rem 4% 2.5rem;
		border-radius: 1.5rem;
	}

	.t-guidance__wrap{
		display: block;
		max-width: none;
		margin-top: 4.75rem;
	}
	.t-guidance__container .t-guidance__wrap:nth-of-type(1){
		margin-top: 0;
	}

	.t-guidance__img{
		text-align: center;
		width: min(12.4rem, 50%);
		padding-top: 0;
		margin-inline: auto;
	}
	.t-guidance__wrap:nth-of-type(2) .t-guidance__img img{
	}
	.t-guidance__wrap:nth-of-type(3) .t-guidance__img img{
		transform: none;
	}
	.t-guidance__wrap:nth-of-type(4) .t-guidance__img img{
		transform: none;
	}

	.t-guidance__text-box{
		width: 100%;
		margin-top: 1.75rem;
	}

	.t-guidance__title{
		font-size: 1.8rem;
		text-align: center;
	}

	.t-guidance__text{
		line-height: 1.625;
		margin-top: .5em;
	}
}

/* よくあるご質問
-------------------------------------------------------- */
#t-faq{
	padding: 8rem 0 18.5rem;
}

.t-faq__container{
	margin-top: 3.5rem;
}

.faq__wrap{
	font-size: 2rem;
	line-height: 1.6;
	margin-top: .6em;
	border-radius: .6em;
	background-color: #fff;
	position: relative;
}
.faq__wrap:nth-of-type(1){
	margin-top: 0;
}

.faq__wrap summary{
	padding: 1.2em calc(3.5% + 1.75em) 1.2em calc(3% + 2.75em);
	position: relative;
	transition: opacity .4s;
}
.faq__wrap summary:hover{
	opacity: .7;
}

.t-faq__btn{
	display: block;
	width: 1.5em;
	height: 1.5em;
	position: absolute;
	top: calc(50% - .75em);
	right: 3.5%;
}
.t-faq__btn::before,
.t-faq__btn::after{
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	background-color: var(--font_color);
	position: absolute;
	left: 0;
	top: calc(50% - 1.5px);
}
.t-faq__btn::after{
	transform: rotate(90deg);
	transition: transform .3s;
}
.is-acc-open .t-faq__btn::after{
	transform: rotate(0);
}

.faq__wrap summary::before{
	content: "";
	display: block;
	width: 1.5em;/* 30/20 */
	height: 1.76em;/* 35.33 */
	background: url(../img/cmn/faq_q.svg) no-repeat center/contain;
	position: absolute;
	left: 3%;
	top: calc(50% - .75em);
}

.faq__wrap .t-faq__text{
	padding: .8em 3% 1.2em calc(3% + 2.75em);
	position: relative;
}
.faq__wrap .t-faq__text::before{
	content: "";
	display: block;
	width: 1.35em;/* 27/20 */
	height: 1.914em;/* 38.29/20 */
	background: url(../img/cmn/faq_a.svg) no-repeat center/contain;
	position: absolute;
	left: 3%;
	top: .6em;
}

@media screen and (max-width: 768px) {
	#t-faq{
		padding: 3.25rem 0 9rem;
	}
	.t-faq__container{
		margin-top: 3rem;
	}

	.faq__wrap{
		font-size: 1.6rem;
		line-height: 1.5;
		margin-top: .625em;
		border-radius: .5em;
	}
	
	.faq__wrap summary{
		padding: 1.1em calc(5% + 1.5em) 1.1em calc(4% + 2.25em);
	}

	.t-faq__btn{
		width: 1.32em;/* 21/16 */
		height: 1.32em;
		top: calc(50% - .66em);
		right: 5%;/* 15/346 */
	}
	.t-faq__btn::before,
	.t-faq__btn::after{
		height: 2px;
		top: calc(50% - 1px);
	}

	.faq__wrap summary::before{
		width: 1.3em;/* 20.72/16 */
		height: 1.53em;/* 24.4/16 */
		left: 4%;
		top: calc(50% - .65em);
	}

	.faq__wrap .t-faq__text{
		padding: .8em 5% 1.2em calc(4% + 2.25em);
	}
	.faq__wrap .t-faq__text::before{
		width: 1.2em;/* 1.35em ×0.88 */
		height: 1.7em;/* 1.914em ×0.88 */
		left: 4%;
		top: .66em;
	}

}

/* =====
	当院へのアクセス
======================================================== */
#t-access{
	background-color: #D3CCBD;
}

.t-access__container{
	display: flex;
	justify-content: space-between;
	margin-right: max(-10rem, calc(50% - 50 * var(--js_vw)));
}

.t-access__text-wrap{
	width: 40%;
	padding: 6% 0;
}

.t-access__title{
	font-size: 2.8rem;
	font-weight: 700;
	letter-spacing: .05em;
}

.t-access__address{
	font-size: 2rem;
	line-height: 1.6;
	margin-top: 1em;
}

.t-access__address-supple{
	margin-top: .25em;
}

.t-access__link{
	display: inline-block;
	font-size: 2rem;
	font-weight: 700;
	margin-top: .5em;
	position: relative;
}
.t-access__link:hover{
	opacity: .7;
}
.t-access__link::before{
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background-color: currentColor;
	position: absolute;
	bottom: 0;
	left: 0;
}
.t-access__link:hover::before{
	opacity: 0;
}
.t-access__link::after{
	content: "";
	display: inline-block;
	width: 1em;/* 19.6/20 */
	height: 1em;
	margin-left: .6em;
	background: url(../img/cmn/icon_blank.svg) no-repeat center/contain;
}

.t-access__guidance{
	line-height: 1.625;
	margin-top: 19%;
}

.t-access__guidance-supple{
	width: fit-content;
	padding-right: 1.75em;
	margin-top: 3%;
	position: relative;
}
.t-access__guidance-supple::after{
	content: "";
	display: inline-block;
	width: 1.5em;/* 23/16 */
	height: 1.5em;
	background: url(../img/cmn/icon_parking.svg) no-repeat center/contain;
	position: absolute;
	right: 0;
	top: calc(50% - .75em);
}

.t-access__map{
	width: 58%;/* 732/1260 */
}

@media screen and (max-width: 768px) {
	.t-access__container{
		display: block;
		margin-right: 0;
	}

	.t-access__text-wrap{
		width: 100%;
		padding: 3rem 0 2.5rem;
	}

	.t-access__title{
		font-size: 2.2rem;
		letter-spacing: .032em;
	}

	.t-access__address{
		font-size: 1.8rem;
		line-height: 1.44;
	}

	.t-access__address-supple{
		margin-top: .6em;
	}

	.t-access__link{
		font-size: 1.6rem;
	}
	.t-access__link::before{
		height: 2px;
		bottom: -3px;
	}
	.t-access__link::after{
		margin-left: .3em;
	}

	.t-access__guidance{
		font-size: 1.4rem;
		line-height: 1.428;
		margin-top: 2.4em;
	}

	.t-access__guidance-supple{
		font-size: 1.4rem;
		margin-top: 1em;
	}
	.t-access__guidance-supple::after{
		width: 1.64em;/* 23/14 */
		height: 1.64em;
		top: calc(50% - .82em);
	}

	.t-access__map{
		width: calc(100% + ((50 * var(--js_vw)) - 50%) + ((50 * var(--js_vw)) - 50%));
		margin-inline: calc(50% - (50 * var(--js_vw)));
	}
}

/* =====
	ご予約はこちらから
======================================================== */
/* ボタン
-------------------------------------------------------- */

#t-reserve{
	padding: 16.5rem 0 10rem;
}
.t-reserve__btn-wrap{
	display: flex;
	justify-content: space-between;
	margin-top: 6rem;
}

.t-reserve__btn{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.2rem;
	font-weight: 700;
	color: #7C7366;
	letter-spacing: .05em;
	line-height: 1.1;
	width: 48.3%;
	min-height: 8.04em;
	padding: .25em 6.5%;/* 72 */
	border: 3px solid #7C7366;
	border-radius: 4.1em;
	background-color: #fff;
	position: relative;
}
.t-reserve__btn:hover{
	border-radius: 1.77em;/* 39/22 */
	background-color: #DEDCD9;
}

.t-reserve__btn::after{
	content: "";
	display: block;
	width: .74em;/* 16/22 */
	height: .74em;
	border-radius: 50%;
	background-color: currentColor;
	position: absolute;
	right: 9%;
	top: calc(50% - .37em);
}

.t-reserve__btn-text{
	display: block;
	position: relative;
}
.t-reserve__web .t-reserve__btn-text{
	padding-top: .2em;
	padding-left: 3.45em;/* 76/22 */
}
.t-reserve__tel .t-reserve__btn-text{
	padding-left: 1.9em;
	padding-right: 1em;
}

.t-reserve__btn-text::before{
	content: "";
	display: block;
	background: no-repeat center/contain;
	position: absolute;
	left: 0;
}
.t-reserve__web .t-reserve__btn-text::before{
	width: 2.64em;/* 56/22 */
	height: 2.364em;/* 52/22 */
	background-image: url(../img/cmn/gl_web.svg);
	top: calc(50% - 1.182em);
}
.t-reserve__tel .t-reserve__btn-text::before{
	width: 1.5em;/* 33/22 */
	height: 2em;/* 44/22 */
	background-image: url(../img/cmn/gl_tel.svg);
	top: calc(50% - 1em);
}

.t-reserve__web .sub{
	font-size: .636em;/* 14/22 */
}



@media screen and (max-width: 768px) {
	#t-reserve{
		padding: 5.5rem 0 7rem;
	}
	.t-reserve__btn-wrap{
		display: block;
		margin-top: 4.5rem;
	}

	.t-reserve__btn{
		font-size: 2rem;
		letter-spacing: .03em;
		width: 100%;
		min-height: 4em;
		padding: .25em calc(9% + .6em);/* 72 */
		margin-top: .5em;
		border: 2px solid #7C7366;
		border-radius: 4em;
	}
	.t-reserve__btn-wrap .t-reserve__btn:nth-of-type(1){
		margin-top: 0;
	}
	.t-reserve__btn:hover{
		border-radius: 1em;
	}

	.t-reserve__btn::after{
		width: .6em;/* 12/20 */
		height: .6em;
		top: calc(50% - .3em);
	}

	.t-reserve__web .t-reserve__btn-text{
		line-height: 1;
		text-align: center;
		padding-top: 0;
		padding-left: 3em;/* 60/20 */
		padding-right: 2.75em;
	}
	.t-reserve__tel .t-reserve__btn-text{
		padding-left: 2.1em;
		padding-right: 1.6em;
	}

	.t-reserve__web .t-reserve__btn-text::before{
		width: 1.64em;/* 32.71/20 */
		height: 1.48em;/* 29.33/20 */
		top: calc(50% - .74em);
	}
	.t-reserve__tel .t-reserve__btn-text::before{
		width: 1.62em;/* 32.41/20 */
		height: 1.62em;
		top: calc(50% - .81em);
	}

	.t-reserve__web .sub{
		font-size: .7em;/* 14/20 */
		line-height: 1;
	}
}

/* SNS
-------------------------------------------------------- */
.t-reserve__sns-wrap{
	display: flex;
	justify-content: center;
	margin-top: 7.75rem;
}

.t-reserve__sns-link{
	max-width: 6.4rem;
}
.t-reserve__sns-link:nth-of-type(1){
	margin-right: 3.4rem;
}
.t-reserve__sns-link:hover{
	opacity: .7;
}

.t-reserve__sns-text{
	font-size: 1.4rem;
	font-weight: 700;
	text-align: center;
	white-space: nowrap;
	margin-top: .75em;
}

@media screen and (max-width: 768px) {
	.t-reserve__sns-wrap{
		margin-top: 3.8rem;
	}

	.t-reserve__sns-link{
		max-width: 5.3rem;
	}
	.t-reserve__sns-link:nth-of-type(1){
		margin-right: 2rem;
	}

	.t-reserve__sns-text{
		display: none;
	}
}


/* =====
	ご予約はこちらから
======================================================== */
.t-outro__slider{
	display: flex;
	overflow: hidden;
}

.t-outro__slider__wrap{
	display: flex;
	animation: t-outro_slider 80s infinite linear both;
}

.t-outro__slider_item{
	width: 155.2rem;
}
@keyframes t-outro_slider{
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}

.t-outro__slider_item img{
	width: 100%;
}



@media screen and (max-width: 768px) {
	.t-outro__slider_item{
		width: 97.8rem;
	}
}

/* 
-------------------------------------------------------- */
.t-outro__deco-inner{
	max-width: 137.5rem;
	margin-top: 6.5rem;
	margin-inline: auto;
}

.t-outro__deco{
	width: 156.5rem;
	margin-left: -14.6rem;
}

@media screen and (max-width: 768px) {
	.t-outro__deco-inner{
		max-width: 20.22rem;
		margin-top: 3.75rem;
		margin-inline: auto;
	}

	.t-outro__deco{
		width: 100%;
		margin-left: -1.25rem;
	}
}

/* =====
	予約ボタン（SPのみ）
======================================================== */
#fixed__reserve{
	display: none;
}

@media screen and (max-width: 768px) {
	#fixed__reserve{
		display: flex;
		justify-content: space-between;
		width: 100%;
		background-color: var(--bg_primary);
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 30;
		transition: opacity .4s, visibility .4s;
	}
	#fixed__reserve.is-hide,
	#top #fixed__reserve,
	.is-scroll #top #fixed__reserve.is-hide{
		opacity: 0;
		visibility: hidden;
	}
	.is-scroll #top #fixed__reserve{
		opacity: 1;
		visibility: visible;
	}

	#fixed__reserve > li{
		width: calc(100% / 3 - 2px);
	}

	#fixed__reserve > li a{
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		font-size: 1.4rem;
		color: #F0EDDE;
		padding: .6em 0 .25em;
		background-color: var(--greige);
		transition: padding .4s, opacity .4s;
	}
	.is-scroll.is-down #fixed__reserve > li a{
		padding: .4em 0 .1em;
	}

	#fixed__reserve > li a:hover{
		opacity: .7;
	}

	#fixed__reserve > li a::before{
		content: "";
		display: block;
		width: 2.3rem;
		height: 2.1rem;
		margin-bottom: .25em;
		-webkit-mask: url(../img/cmn/hd_reserve_web.svg) no-repeat center/contain;
		mask: url(../img/cmn/hd_reserve_web.svg) no-repeat center/contain;
		background-color: currentColor;
	}
	#fixed__reserve > li .fixed__tel::before{
		-webkit-mask-image: url(../img/cmn/hd_reserve_tel.svg);
		mask-image: url(../img/cmn/hd_reserve_tel.svg);
	}
	#fixed__reserve > li .fixed__online::before{
		-webkit-mask-image: url(../img/cmn/hd_reserve_online.svg);
		mask-image: url(../img/cmn/hd_reserve_online.svg);
	}
}

/************************************************************************
	下層共通
**************************************************************************/
/* =====
	ページタイトル
======================================================== */
.lower-head__area{
	overflow: hidden;
}
.lower-head__area.no-thumb{
	padding-bottom: 10rem;
}

.lower-head__container{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	width: min(107.2rem, 91.54%);
	padding-bottom: 5rem;
	margin-inline: auto;
	position: relative;
}

.lower-head__title{
	flex-grow: 1;
	flex-shrink: 0;
	font-size: 4.4rem;
	font-weight: 700;
	line-height: 1.48;
	letter-spacing: .032em;
	padding-right: 1rem;
}

.lower-head__sub-title{
	width: 45.4rem;
	position: absolute;
	left: max(calc(-14.4rem - 2rem), calc(50% - (50 * var(--js_vw)) - 2rem));
	top: 4rem;
	z-index: -1;
}
.sub-title--adjust .lower-head__sub-title{
	left: max(calc(-14.4rem - .6rem), calc(50% - (50 * var(--js_vw)) - .6rem));
}

#medical .lower-head__sub-title{width: 56.2rem;}
#online .lower-head__sub-title{width: 47.7rem;}
#access .lower-head__sub-title{width: 49.8rem;}
#recruit .lower-head__sub-title{width: 51rem;}
#faq .lower-head__sub-title{width: 25rem;}
#news .lower-head__sub-title{width: 39rem;}
#privacy .lower-head__sub-title{width: 97rem;}

@media screen and (max-width: 1200px) {
	.lower-head__container{
		display: block;
	}
	.lower-head__title{
		padding-right: 0;
		margin-bottom: 2.1em;
	}
	.lower-head__area.no-thumb .lower-head__title{
		margin-bottom: 0;
	}

}

@media screen and (max-width: 768px) {
	.lower-head__area.no-thumb{
		padding-bottom: 9rem;
	}
	#news .lower-head__area{
		padding-bottom: 5rem;
	}
	#privacy .lower-head__area{
		padding-bottom: 14.5rem;
	}

	.lower-head__title{
		font-size: 2.8rem;
		line-height: 1.43;
		letter-spacing: .05em;
	}

	.lower-head__sub-title{
		width: 28.4rem;
		left: calc(50% - (50 * var(--js_vw)) - .6rem);
		top: 2.6rem;
	}
	.sub-title--adjust .lower-head__sub-title{
		left: calc(50% - (50 * var(--js_vw)) - .2rem);
	}
	#medical .lower-head__sub-title{width: 34rem;}
	#online .lower-head__sub-title{width: 29.8rem;}
	#access .lower-head__sub-title{width: 31.1rem;}
	#recruit .lower-head__sub-title{width: 31.9rem;}
	#faq .lower-head__sub-title{width: 17rem;}
	#news .lower-head__sub-title{width: 24rem;}
	#privacy .lower-head__sub-title{width: 31rem;}
}

/* サムネイル
-------------------------------------------------------- */
.lower-head__thumb{
	width: min(82.7rem, calc(62% - 50% + ((50 * var(--js_vw))) + 2rem));/* inner内665oxほど（innerの62%）、残りはみ出し分（-50% + ((50 * var(--js_vw))) + 2rem）を足しているかたち */
	margin-right: max(calc(-14.4rem - 2rem), calc(50% - (50 * var(--js_vw)) - 2rem));/* 画面1360px時、innerのmargin144px。radiusを隠すための2rem。 */
	margin-left: auto;
	border-radius: 2.5rem;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 1200px) {
	.lower-head__thumb{
		width: calc(80% - 50% + ((50 * var(--js_vw))) + 2rem);/* 見た目で */
	}
}

@media screen and (max-width: 768px) {
	.lower-head__thumb{
		width: calc(91% - 50% + ((50 * var(--js_vw))) + 1.25rem);/* SP時にinner内300oxほど（innerの86.7% → 見た目で調整） */
		margin-right: calc(50% - (50 * var(--js_vw)) - 1.25rem);
		border-radius: 1.5rem;
	}
}


/* =====
	下層ページ一番下の予約ボタン
======================================================== */
.lower-ft__reserve-btn{
	display: block;
	font-size: 2.8rem;
	color: #fff;
	text-align: center;
	padding: 1em .25em;
	margin-top: 1.25em;
	border-radius: 2.5rem;
	background-color: #7C7366;
}
.lower-ft__reserve-btn:hover{
	opacity: .7;
}

.lower-ft__reserve-btn .main{
	font-weight: 700;
}
.lower-ft__reserve-btn .sub{
	font-size: .643em;/* 18/28 */
}

@media screen and (max-width: 768px) {
	.lower-ft__reserve-btn{
		font-size: 2rem;
		line-height: 1.25;
		padding: 1em .25em .85em;
		margin-top: 1.5em;
		border-radius: 1.5rem;
	}
	.lower-ft__reserve-btn .sub{
		font-size: .7em;/* 14/20 */
	}
}

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


@media screen and (max-width: 768px) {

}

/* 
-------------------------------------------------------- */


@media screen and (max-width: 768px) {

}


/************************************************************************
	About 私たちについて
**************************************************************************/
.about-sec__title .sub{
	font-size: 2.2rem;
	font-weight: 700;
	color: #7C7366;
	letter-spacing: .05em;
	line-height: 1.5;
}

.about-sec__title .main{
	font-size: 3.2rem;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 1.8125;
	margin-top: .75em;
}
.about-sec__title.is-big .main{
	font-size: 3.6rem;
	line-height: 1.611;
	margin-top: .5em;
}

#about-important .about-sec__title.is-big .main{
	letter-spacing: 0;
	margin-top: 1em;
}

@media screen and (max-width: 768px) {
	.about-sec__title .sub{
		font-size: 1.4rem;
	}

	.about-sec__title .main,
	.about-sec__title.is-big .main{
		font-size: 2.2rem;
		letter-spacing: .025em;
		line-height: 1.4545;
		margin-top: .4em;
	}

	#about-important .about-sec__title.is-big .main{
		margin-top: .4em;
	}
}

/* =====
	当院の特徴
======================================================== */
#about-feature{
	padding: 5.6rem 0 18.5rem;
}
.about-feature__intro-container{
	display: grid;
	grid-template-columns: calc(96% - 36rem) 36rem;
	justify-content: space-between;
	margin-top: 3.6rem;
}

.about-feature__intro-thumb{
	grid-row: 1/2;
	grid-column: 2/3;
	border-radius: 2.5rem;
	overflow: hidden;
}

.about-feature__intro-text{
	grid-row: 1/2;
	grid-column: 1/2;
	font-size: 1.8rem;
	line-height: 2.11;
	max-width: 64rem;
	margin-top: -.2em;
}

@media screen and (max-width: 768px) {
	#about-feature{
		padding: 1rem 0 7rem;
	}

	.about-feature__intro-container{
		display: block;
		margin-top: 2.75rem;
	}

	.about-feature__intro-thumb{
		border-radius: 1.5rem;
	}

	.about-feature__intro-text{
		font-size: 1.6rem;
		line-height: 1.875;
		max-width: none;
		margin-top: 1.5em;
	}
}

/* 1~4
-------------------------------------------------------- */
.about-feature__number-container{
	display: grid;
	grid-template-columns: repeat(2, 47.3%);/* 507/1072 */
	justify-content: space-between;
	row-gap: 17rem;
	margin-top: 14rem;
}

.about-feature__number-wrap{
	position: relative;
}

.about-feature__number{
	width: 8rem;
	position: absolute;
	left: 3%;
	top: -6rem;
	z-index: 1;
}

.about-feature__number-img{
	border-radius: 2.5rem;
	overflow: hidden;
}
.about-feature__number-img img{
	width: 100%;
}

.about-feature__number-title{
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 1.5;
	margin-top: 1.25em;
}

.about-feature__number-text{
	font-size: 1.8rem;
	line-height: 1.778;
	margin-top: 1em;
}

@media screen and (max-width: 768px) {
	.about-feature__number-container{
		display: block;
		margin-top: 10rem;
	}

	.about-feature__number-wrap{
		margin-top: 11rem;
	}
	.about-feature__number-container .about-feature__number-wrap:nth-of-type(1){
		margin-top: 0;
	}

	.about-feature__number{
		width: 6rem;
		left: 0;
		top: -4rem;
	}

	.about-feature__number-img{
		border-radius: 1.5rem;
	}

	.about-feature__number-title{
		font-size: 2rem;
		letter-spacing: .025em;
		line-height: 1.4;
		margin-top: .9em;
	}

	.about-feature__number-text{
		font-size: 1.6rem;
		line-height: 1.875;
		margin-top: .75em;
	}
}


/* =====
	当院が大切にしていること
======================================================== */
#about-important{
	padding: 11.5rem 0 17rem;
}

@media screen and (max-width: 768px) {
	#about-important{
		padding: 5rem 0 8rem;
	}

}

/* 小セクション
-------------------------------------------------------- */
.about-important__sec{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#about-important__sec01{margin-top: 10rem;}
#about-important__sec02{margin-top: 14rem;}
#about-important__sec03{margin-top: 13.5rem;}

.about-important__sec__thumb{
	width: min(44rem, 42%);
	text-align: center;
}
#about-important__sec02 .about-important__sec__thumb img{
	width: 68.14%;/* 300/440.28 */
}
#about-important__sec03 .about-important__sec__thumb img{
	width: 48.85%;/* 215.09/440.28 */
}

.about-important__sec__text-wrap{
	width: 56%;
}

.about-important__sec__title{
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.357;/* 38/28 */
}

.about-important__sec__text{
	font-size: 1.8rem;
	line-height: 2.111;
	margin-top: 1em;
}

@media screen and (max-width: 768px) {
	.about-important__sec{
		display: block;
	}
	#about-important__sec01{margin-top: 6.5rem;}
	#about-important__sec02{margin-top: 6.5rem;}
	#about-important__sec03{margin-top: 8.5rem;}

	.about-important__sec__thumb{
		width: 100%;
	}
	#about-important__sec02 .about-important__sec__thumb img{
		width: 54.9%;/* 190/346 */
	}
	#about-important__sec03 .about-important__sec__thumb img{
		width: 44.5%;/* 153.96/346 */
	}

	.about-important__sec__text-wrap{
		width: 100%;
	}

	.about-important__sec__title{
		font-size: 2rem;
		text-align: center;
		letter-spacing: .025em;
		line-height: 1.4;/* 28/20 */
		margin-top: 2em;
	}
	#about-important__sec01 .about-important__sec__title{
		margin-top: 1.5em;
	}

	.about-important__sec__text{
		font-size: 1.6rem;
		line-height: 1.875;
		margin-top: .75em;
	}

}



/* =====
	院長メッセージ
======================================================== */
#about-message{
	padding: 11rem 0 18rem;
}

#about-message .inner{
	display: grid;
	grid-template-columns: min(66rem, calc(98% - 36rem)) 36rem;
	justify-content: space-between;
}

@media screen and (max-width: 768px) {
	#about-message{
		padding: 6rem 0 6.5rem;
	}

	#about-message .inner{
		display: block;
	}
}

/* アイテム
-------------------------------------------------------- */
#about-message .about-sec__title{
	grid-row: 1/2;
	grid-column: 1/2;
}

.about-message__thumb{
	grid-row: 1/4;
	grid-column: 2/3;
	height: fit-content;
	margin-top: 5.25rem;
	border-radius: 2.5rem;
	overflow: hidden;
}


.about-message__text{
	grid-row: 2/3;
	grid-column: 1/2;
	font-size: 1.8rem;
	line-height: 2.111;
	margin-top: 4rem;
}

.about-message__biography-wrap{
	grid-row: 3/4;
	grid-column: 1/2;
	margin-top: 5.25rem;
}

.about-message__biography-title{
	font-size: 1.8rem;
	color: #7C7366;
	text-align: center;
	padding: .25em;
	border: 2px solid currentColor;
	border-radius: 5em;
}

.about-message__biography-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 1.8rem;
	font-weight: 700;
	padding-top: 1em;
}

.about-message__biography-list > dt{
	width: 9em;/* 162/18 */
	margin-top: .4em;
}
.about-message__biography-list > dd{
	width: calc(98% - 9em);
	margin-top: .4em;
}


@media screen and (max-width: 768px) {
	.about-message__thumb{
		margin-top: 3rem;
		border-radius: 1.5rem;
	}

	.about-message__text{
		font-size: 1.6rem;
		line-height: 1.875;
		margin-top: 2.5rem;
	}

	.about-message__biography-wrap{
		margin-top: 3.5rem;
	}

	.about-message__biography-title{
		font-size: 1.6rem;
		border-width: 1px;
	}

	.about-message__biography-list{
		display: block;
		font-size: 1.6rem;
		line-height: 1.5;
		padding-top: 1em;
	}

	.about-message__biography-list > dt{
		width: 100%;
		margin-top: .75em;
	}
	.about-message__biography-list > dt:nth-of-type(1){
		margin-top: 0;
	}
	.about-message__biography-list > dd{
		width: 100%;
		margin-top: .1em;
	}

}



/************************************************************************
	Medical 診療案内
**************************************************************************/
/* =====
	主な診療動物
======================================================== */
#medical-intro{
	padding: 4rem 0 9.25rem;
}
.medical-intro__list{
	display: flex;
	justify-content: space-between;
	margin-top: 4.5rem;
}

.medical-intro__list > li{
	width: 26.1194%;/* 280/1072 */
}
.medical-intro__list > li:nth-last-of-type(1){
	width: 41.0448%;/* 440/1072 */
}



@media screen and (max-width: 768px) {
	#medical-intro{
		padding: .75rem 0 6.25rem;
	}

	.medical-intro__list{
		flex-wrap: wrap;
		margin-top: 1.75rem;
	}

	.medical-intro__list > li{
		width: 48.55%;/* 168/346 */
	}
	.medical-intro__list > li:nth-last-of-type(1){
		width: 100%;
		margin-top: 1rem;
	}
}


/* =====
	主な診療内容
======================================================== */
#medical-details{
	padding: 11rem 0 7rem;
}
#medical-other{
	padding: 6rem 0 19.8rem;
}

.medical-details__container{
	display: grid;
	grid-template-columns: 36rem min(67rem, calc(98% - 36rem));
	justify-content: space-between;
	margin-top: 7.6rem;
}
.medical-details__sec .inner .medical-details__container:nth-of-type(1){
	margin-top: 4.8rem;
}

.medical-details__thumb{
	height: fit-content;
	border-radius: 2rem;
	overflow: hidden;
}
.medical-details__thumb img{
	width: 100%;
}

.medical-details__text-wrap{
	display: flex;
	flex-direction: column;
}

.medical-details__title{
	font-size: 2.4rem;
	font-weight: 700;
	color: #6A5A32;
	letter-spacing: .05em;
	line-height: 1.5;
}

.medical-details__text01{
	font-size: 1.8rem;
	font-weight: 700;
	color: #6A5A32;
	line-height: 1.778;
	margin-top: .75em;
}

.medical-details__text02{
	font-size: 1.8rem;
	line-height: 1.778;
	margin-top: .5em;
}

.medical-details__to-online{
	display: block;
	font-weight: 700;
	color: #6A5A32;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: .4em;
	padding: 1em 0 .5em;
	margin-top: auto;
}
.medical-details__to-online:hover{
	text-decoration: none;
	opacity: .6;
}

@media screen and (max-width: 768px) {
	#medical-details{
		padding: 4.5rem 0;
	}
	#medical-other{
		padding: 4.5rem 0 2.8rem;
	}

	.medical-details__container{
		display: block;
		margin-top: 2.25rem;
		padding-bottom: 3.25rem;
		border-bottom: 1px solid #D3CCBE;
	}
	.medical-details__sec .inner .medical-details__container:nth-of-type(1){
		margin-top: 3rem;
	}
	#medical-other .medical-details__container:nth-last-of-type(1){
		border-bottom: none;
	}

	.medical-details__thumb{
		border-radius: 1.5rem;
	}

	.medical-details__text-wrap{
		display: block;
		margin-top: 1.5rem;
	}

	.medical-details__title{
		font-size: 2.2rem;
		letter-spacing: .025em;
		line-height: 1.273;
	}

	.medical-details__text01{
		font-size: 1.6rem;
		line-height: 1.875;
		margin-top: .25em;
	}

	.medical-details__text02{
		font-size: 1.6rem;
		line-height: 1.875;
		margin-top: .75em;
	}

}


/* =====
	診察費用一例
======================================================== */
#medical-price{
	font-family: "Zen Kaku Gothic New",sans-serif;
	padding: 11rem 0 20rem;
}

@media screen and (max-width: 768px) {
	#medical-price{
		padding: 5.5rem 0 11rem;
	}
}

/* テーブルレイアウト
-------------------------------------------------------- */
.medical-price__tbl-area{
	display: grid;
	grid-template-columns: repeat(2, min(50rem, 48.4%));
	justify-content: space-between;
	margin-top: 5rem;
}

.medical-price__tbl__wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 1.75rem 0 1.25rem;
	border-bottom: 1px solid #2A2828;
}
.medical-price__tbl .medical-price__tbl__wrap:nth-of-type(1){
	border-top: 1px solid #2A2828;
}

.medical-price__tbl__box{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	margin-top: 3rem;
}
.medical-price__tbl__wrap .medical-price__tbl__box:nth-of-type(1){
	margin-top: 0;
}

@media screen and (max-width: 768px) {
	.medical-price__tbl-area{
		display: block;
		margin-top: 2.5rem;
	}

	.medical-price__tbl .medical-price__tbl__wrap:nth-of-type(1){
		border-top: none;
	}
	.medical-price__tbl-area .medical-price__tbl:nth-of-type(1) .medical-price__tbl__wrap:nth-of-type(1){
		border-top: 1px solid #2A2828;
	}

	.medical-price__tbl__wrap{
		padding: 1.25rem 0 1rem;
	}

	.medical-price__tbl__box{
		margin-top: 2.5rem;
	}
}

/* テーブル中身
-------------------------------------------------------- */
.medical-price__title,
.medical-price{
	flex-shrink: 0;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.75;
}
.medical-price__title{
	width: fit-content;
	padding-right: .5em;
}

.medical-price{
	flex-grow: 1;
	text-align: right;
	width: 100%;
}
.medical-price__tbl__wrap .medical-price:nth-of-type(1),
.medical-price__tbl__box .medical-price:nth-of-type(1){
	width: auto;
}

.medical-price__supple{
	font-size: 1.6rem;
	text-align: right;
	line-height: 1.5;
	width: 100%;
	margin-top: .25em;
}

@media screen and (max-width: 768px) {
	.medical-price__title,
	.medical-price{
		font-size: 1.8rem;
	}

	.medical-price__supple{
		font-size: 1.4rem;
		margin-top: .25em;
	}
}


/* モデルケース
-------------------------------------------------------- */
.medical-price__model-case__area{
	color: #000;
	padding: 6rem 6.34%;/* 68/1072 */
	margin-top: 9.5rem;
	border-radius: 2.8rem;
	background-color: #fff;
}

.medical-price__model-case__title{
	font-size: 2.4rem;
	font-weight: 700;
	color: #393939;
	letter-spacing: .05em;
}



@media screen and (max-width: 768px) {
	.medical-price__model-case__area{
		color: #000;
		padding: 2.5rem 4.33% 4.5rem;/* 15/346 */
		margin-top: 5.25rem;
		border-radius: 1.5rem;
	}

	.medical-price__model-case__title{
		font-size: 1.8rem;
		text-align: center;
		letter-spacing: .025em;
	}
}


/* 例
-------------------------------------------------------- */
.medical-price__model-case__example__title{
	font-size: 2.2rem;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 1.5;
	padding: 2em 0 2em 7em;
	margin-top: 2.5em;
	position: relative;
}
.medical-price__model-case__example__title::before{
	content: "";
	display: block;
	width: 5.68em;/* 124.88/22 */
	height: 4.28em;/* 93.81/22 */
	background: url(../img/medical/example_title_deco.svg) no-repeat center/contain;
	position: absolute;
	left: 0;
	top: calc(50% - 2.14em);
}

.medical-price__model-case__example__container{
	display: grid;
	grid-template-columns: repeat(2, 50%);
	row-gap: 6.75rem;
	margin-top: 5.5rem;
}

.medical-price__model-case__example__wrap{
	padding-left: calc(14rem + 4.27%);/* 20/468 */
	position: relative;
}

.medical-price__model-case__example__wrap::before{
	content: "";
	display: block;
	width: 14rem;
	height: 14rem;
	background: url(../img/medical/example_deco01.svg) no-repeat top right/100% 100%;
	position: absolute;
	left: 0;
	top: 0;
}
.medical-price__model-case__example__wrap:nth-of-type(1):before{
	background-size: 92.96% 83.93%;/* 130.14/140　117.51/140 */
	top: 5%;
}
.medical-price__model-case__example__wrap:nth-of-type(2):before{
	background-image: url(../img/medical/example_deco02.svg);
	background-position: top right 20%;
	background-size: 53.93% 95%;/* 75.51/140　133/140 */
}
.medical-price__model-case__example__wrap:nth-of-type(3):before{
	background-image: url(../img/medical/example_deco03.svg);
	background-size: 99.38% 87.13%;/* 139.13/140　121.98/140 */
}
.medical-price__model-case__example__wrap:nth-of-type(4):before{
	background-image: url(../img/medical/example_deco04.svg);
	background-size: 72.6% 83.56%;/* 101.65/140　116.98/140 */
}


@media screen and (max-width: 768px) {
	.medical-price__model-case__example__title{
		font-size: 1.8rem;
		line-height: 1.44;
		text-align: center;
		padding: 5.56em 0 0;
		margin-top: 3em;
	}
	.medical-price__model-case__example__title .text--yellow-green{
		display: block;
	}
	.medical-price__model-case__example__title::before{
		width: 6em;/* 108/18 */
		height: 4.5em;/* 81.14/18 */
		left: calc(50% - 3em);
		top: 0;
	}

	.medical-price__model-case__example__container{
		display: block;
		margin-top: 4.5rem;
	}

	.medical-price__model-case__example__wrap{
		padding: 1.75rem 0 1.75rem 50%;
		border-top: 1px solid var(--yellow_green);
	}

	.medical-price__model-case__example__wrap::before{
		width: 10.24rem;
		height: 10.24rem;
		background-position: center;
		left: calc(25% - 5.12rem);
		top: calc(50% - 5.12rem);
	}
	.medical-price__model-case__example__wrap:nth-of-type(1):before{
		top: calc(50% - 5.12rem);
	}
	.medical-price__model-case__example__wrap:nth-of-type(2):before{
		background-position: center;
	}
}


/* 例中身
-------------------------------------------------------- */
.medical-price__model-case__example__wrap > dt{
	font-size: 2.2rem;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 1.45;
	color: var(--yellow_green);
}
.medical-price__model-case__example__wrap > dd{
	margin-top: .5rem;
}

.medical-price__model-case__example__price__wrap{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	font-size: 1.8rem;
	position: relative;
}
.medical-price__model-case__example__price__wrap::before{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #707070;
	position: absolute;
	left: 0;
	top: 50%;
}

.medical-price__model-case__example__price__wrap > dt,
.medical-price__model-case__example__price__wrap > dd{
	width: fit-content;
	background-color: #fff;
	position: relative;
	z-index: 1;
}
.medical-price__model-case__example__price__wrap > dt{
	padding-right: .5em;
}
.medical-price__model-case__example__price__wrap > dd{
	padding-left: .5em;
}

.medical-price__model-case__example__total-price{
	font-size: 1.8rem;
	text-align: right;
	width: calc(100% + 2em);
	margin-left: -2em;
}

@media screen and (max-width: 768px) {
	.medical-price__model-case__example__wrap > dt{
		font-size: 1.8rem;
	}
	.medical-price__model-case__example__wrap > dd{
		margin-top: .5rem;
	}

	.medical-price__model-case__example__price__wrap{
		font-size: 1.6rem;
		line-height: 1.5;
	}
	.medical-price__model-case__example__price__wrap::before{
		display: none;
	}

	.medical-price__model-case__example__price__wrap > dt{
		padding-right: 0;
	}
	.medical-price__model-case__example__price__wrap > dd{
		padding-left: .25em;
	}

	.medical-price__model-case__example__total-price{
		font-size: 1.6rem;
	}
}



/************************************************************************
	Online オンライン診療
**************************************************************************/
/* =====
	例えばこんな時にオンライン診療
======================================================== */
#online-check{
	padding: 4rem 0 17rem;
}

.online-check__list{
	width: 104%;/* 1072px*104%=1114.88px */
	display: grid;
	grid-template-columns: repeat(2, 48.077%);/* (1072px/2)/1114.88px */
	justify-content: space-between;
	row-gap: 5rem;
	margin-top: 5.5rem;
}

.online-check__list > li{
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.636;
	padding-left: 3em;/* 67/22 */
	position: relative;
}
.online-check__list > li::before{
	content: "";
	display: block;
	width: 2.372em;/* 52.18/22 */
	height: 2.322em;/* 51.09/22 */
	background: url(../img/online/online_check.svg) no-repeat center/contain;
	position: absolute;
	left: 0;
	top: -.5em;
}

.online-check__list > li:nth-of-type(1){
	grid-column: 1/2;
	grid-row: 1/2;
}
.online-check__list > li:nth-of-type(2){
	grid-column: 1/2;
	grid-row: 2/4;
}
.online-check__list > li:nth-of-type(3){
	grid-column: 1/2;
	grid-row: 4/5;
}
.online-check__list > li:nth-of-type(4){
	grid-column: 2/3;
	grid-row: 1/2;
}
.online-check__list > li:nth-of-type(5){
	grid-column: 2/3;
	grid-row: 2/3;
}
.online-check__list > li:nth-of-type(6){
	grid-column: 2/3;
	grid-row: 3/4;
}

@media screen and (max-width: 768px) {
	#online-check{
		padding: 1.75rem 0 5rem;
	}

	.online-check__list{
		width: 102%;
		display: block;
		margin-top: 3.25rem;
	}

	.online-check__list > li{
		font-size: 1.6rem;
		line-height: 1.5;
		padding-left: 2.5em;/* 40/16 */
		margin-top: 2em;
	}
	.online-check__list > li:nth-of-type(1){
		margin-top: 0;
	}

	.online-check__list > li::before{
		width: 1.9em;/* 30.38/16 */
		height: 1.86em;/* 29.75/16 */
		top: -.33em;
	}
}


/* =====
	オンライン診療の流れ
======================================================== */
.online-flow__list{
	margin-top: 9rem;
	position: relative;
}
.online-flow__list::before{
	content: "";
	display: block;
	width: 4.2rem;
	height: 100%;
	border-radius: 3rem;
	background: #7C7366;
	position: absolute;
	left: 0;
	top: 0;
}

.online-flow__list > li{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 4.5rem 0 4.5rem calc(4.2rem + 8.4%);
	position: relative;
}
.online-flow__list > li:nth-of-type(1){
	padding-block: 0 1rem;
}
.online-flow__list > li:nth-last-of-type(1){
	padding-bottom: 1rem;
}

.online-flow__list > li::before{
	content: "";
	display: block;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background-color: #fff;
	position: absolute;
	left: 1.1rem;
	top: calc(50% - 1rem);
	z-index: 1;
}

@media screen and (max-width: 768px) {
	.online-flow__list{
		margin-top: 6rem;
	}
	.online-flow__list::before{
		display: none;
	}

	.online-flow__list > li{
		display: block;
		padding: 0;
		margin-top: 6rem;
	}
	.online-flow__list > li:nth-of-type(1){
		padding-block: 0;
		margin-top: 0;
	}
	.online-flow__list > li:nth-last-of-type(1){
		padding-bottom: 0;
	}

	.online-flow__list > li::before{
		display: none;
	}
}

/* 中身
-------------------------------------------------------- */
.online-flow__icon{
	width: 21.585rem;
}
.online-flow__list > li:nth-of-type(1) .online-flow__icon{
	padding-top: 1rem;
}

.online-flow__list > li:nth-of-type(1) .online-flow__icon img{
	width: 65.415%;/* 141.2/215.85 */
}
.online-flow__list > li:nth-of-type(2) .online-flow__icon img{
	width: 50.034%;/* 108/215.85 */
	margin-left: 1.66rem;
}
.online-flow__list > li:nth-of-type(3) .online-flow__icon img{
	width: 92.309%;/* 199.25/215.85 */
	margin-left: 1.66rem;
}

.online-flow__text-box{
	width: calc(97% - 21.585rem);
}

.online-flow__title{
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 1.5;
}

.online-flow__text{
	font-size: 1.8rem;
	line-height: 1.778;
	margin-top: 1em;
}


@media screen and (max-width: 768px) {
	.online-flow__icon{
		width: 80%;
		max-width: 20rem;
		text-align: center;
		margin-inline: auto;
	}
	.online-flow__list > li:nth-of-type(1) .online-flow__icon{
		padding-top: 0;
	}
	.online-flow__list > li:nth-last-of-type(1) .online-flow__icon{
		text-align: right;
	}

	.online-flow__list > li:nth-of-type(1) .online-flow__icon img{
		width: 48.91%;/* 97.82/200 */
	}
	.online-flow__list > li:nth-of-type(2) .online-flow__icon img{
		width: 37.5%;/* 75/200 */
		margin-left: 0;
	}
	.online-flow__list > li:nth-of-type(3) .online-flow__icon img{
		width: 69.015%;/* 138.03/200 */
		margin-left: 0;
	}

	.online-flow__text-box{
		width: 100%;
		margin-top: 2rem;
	}

	.online-flow__title{
		font-size: 1.8rem;
		line-height: 1.667;
	}

	.online-flow__text{
		font-size: 1.6rem;
		line-height: 1.875;
		margin-top: .25em;
	}
}


/************************************************************************
	 Access アクセス・診療時間
**************************************************************************/
/* =====
	マップ
======================================================== */
.access-main__map{
	width: 100%;
	height: 45rem;
	margin-top: 4rem;
	position: relative;
	background-color: #fff;
}
.access-main__map iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

@media screen and (max-width: 768px) {
	.access-main__map{
		height: 22.24rem;
		margin-top: 2.5rem;
		position: relative;
		background-color: #fff;
	}
}


/* =====
	診療時間
======================================================== */
/* 診療時間
-------------------------------------------------------- */
#access-hours{
	padding: 5rem 0 20rem;
}

.access-hours__time-table__container{
	padding: 3.75rem 4.5% 3rem;
	margin-top: 1.25rem;
	border-radius: 2.5rem;
	background-color: #fff;
}

@media screen and (max-width: 768px) {
	#access-hours{
		padding: 2rem 0 11rem;
	}

	.access-hours__time-table__container{
		padding: 2.5rem 4.5% 2.25rem;
		margin-top: 1.25rem;
		border-radius: 1.5rem;
	}
	.access-hours__time-table{
		margin-right: -4.5%;
	}

}

/************************************************************************
	Recruit 採用情報
**************************************************************************/
/* =====
	地域の動物の健康を一緒に支えませんか？
======================================================== */
.recruit-intro__flex-container{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-top: 3rem;
}

.recruit-intro__text{
	font-size: 1.8rem;
	line-height: 2.111;
	width: min(64rem, calc(97% - 36rem));
}

.recruit-intro__thumb{
	width: 36rem;
	margin-top: .5rem;
	border-radius: 2.5rem;
	overflow: hidden;
}

@media screen and (max-width: 768px) {
	.recruit-intro__flex-container{
		display: block;
		margin-top: 1.5rem;
	}

	.recruit-intro__text{
		font-size: 1.6rem;
		line-height: 1.875;
		width: 100%;
	}

	.recruit-intro__thumb{
		width: 100%;
		margin-top: 5rem;
		border-radius: 1.5rem;
	}
}


/* =====
	募集要項
======================================================== */
#recruit-requirements{
	padding-bottom: 28rem;
}

.recruit-requirements__container{
	padding: 5rem 6.5% 8rem;/* 70/1072 */
	border-radius: 2.5rem;
	background-color: #fff;
}

.recruit-requirements__tbl{
	font-size: 2rem;
	line-height: 1.5;
	width: 100%;
	margin-top: 1.75em;
}

.recruit-requirements__tbl th{
	width: 6em;
	padding-right: .5em;
}
.recruit-requirements__tbl td{
	width: calc(100% - 6em);
}
.recruit-requirements__tbl th,
.recruit-requirements__tbl td{
	vertical-align: top;
	padding-block: .5em;
}

@media screen and (max-width: 768px) {
	#recruit-requirements{
		padding-bottom: 6.5rem;
	}

	.recruit-requirements__container{
		padding: 2.5rem 4.3%;/* 15/346 */
		border-radius: 1.5rem;
	}

	.recruit-requirements__tbl{
		font-size: 1.6rem;
		margin-top: 1em;
	}

}

/************************************************************************
	Faq よくあるご質問
**************************************************************************/
.faq-sec{
	margin-top: 7.25rem;
}
#faq-area .faq-sec:nth-of-type(1){
	margin-top: 0;
}

.faq-container{
	margin-top: 2rem;
}

#faq-other{
	margin-top: 9.25rem;
}

@media screen and (max-width: 768px) {
	.faq-sec{
		margin-top: 5rem;
	}

	#faq-other{
		margin-top: 7rem;
	}
}



/************************************************************************
	お知らせ
**************************************************************************/
/* =====
	大枠
======================================================== */
#news{
	overflow: visible;
}

.column2-area{
	display: flex;
	flex-direction: row-reverse;
	align-items: flex-start;
	justify-content: space-between;
}

.column2-area .left-container{
	width: min(70rem, calc(97% - 21.7rem));
}

.column2-area aside{
	width: 21.7rem;
	position: -webkit-sticky;
	position: sticky;
	top: 11rem;
}

@media screen and (max-width: 768px) {
	#news{
		overflow: hidden;
	}

	.column2-area{
		display: block;
	}

	.column2-area .left-container{
		width: 100%;
	}

	.column2-area aside{
		width: 100%;
		position: static;
		top: auto;
	}
}

/* =====
	サイドバー
======================================================== */
#cat-btn__acc-trigger{
	display: none;
	justify-content: center;
	align-items: center;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 1.25;
	color: #fff;
	width: 100%;
	min-height: 3.33em;
	padding: .25em 2.25em;
	border-radius: 1rem;
	background-color: #7C7366;
	position: relative;
	transition: opacity .4s;
}
#cat-btn__acc-trigger:hover{
	opacity: .7;
}

#cat-btn__acc-trigger::after{
	content: "";
	display: block;
	width: 1em;
	height: .6em;
	background: url(../img/cmn/acc_arrow.svg) no-repeat center/contain;
	position: absolute;
	right: 1em;
	top: calc(50% - .3em);
	transition: transform .4s;
}
#cat-btn__acc-trigger.is-acc-open::after{
	transform: scale(1,-1);
}

.cat-btn__list > .cat-item{
	margin-top: 1.2rem;
}
.cat-btn__list > .cat-item--all{
	margin-top: 3.5rem;
}
.cat-btn__list > .cat-item:nth-of-type(1){
	margin-top: 0;
}

.cat-btn__list > .cat-item a{
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 1.25;
	color: #fff;
	min-height: 3.33em;
	padding: .25em;
	border-radius: 1rem;
	background-color: #969393;
}

.cat-btn__list > .cat-item a:hover,
.cat-btn__list > .cat-item.current-cat a{
	background-color: #575353;
}

@media screen and (min-width: 769px) {
	.cat-btn__list{
		display: block !important;
	}
}

@media screen and (max-width: 768px) {
	#cat-btn__acc-trigger{
		display: flex;
		font-size: 1.6rem;
		min-height: 2.5em;
		padding: .15em 2.15em;
		border-radius: .5rem;
	}

	.cat-btn__list{
		display: none;
		padding-top: .5rem;
	}
	.cat-btn__list > .cat-item{
		margin-top: .5rem;
	}
	.cat-btn__list > .cat-item--all{
		margin-top: .5rem;
	}

	.cat-btn__list > .cat-item a{
		font-size: 1.6rem;
		min-height: 2.5em;
		padding: .15em;
		border-radius: .5rem;
	}
}

/* =====
	一覧
======================================================== */
.news-list > li{
	border-bottom: 1px solid var(--font_color);
}
.news-list > li:nth-of-type(1){
	border-top: 1px solid var(--font_color);
}

.news-list > li a{
	display: flex;
	flex-wrap: wrap;
	padding: 2rem 0;
}
.news-list > li a:hover{
	color: #969393;
}

.news-list__date,
.news-list__cat{
	font-weight: 700;
}

.news-list__date{
	letter-spacing: .08em;
	margin-right: 1em;
}

.news-list__title{
	font-size: 1.8rem;
	line-height: 1.5;
	width: 100%;
	margin-top: .5em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

@media screen and (max-width: 768px) {
	.column2-area .left-container{
		margin-top: 4rem;
	}

	.news-list > li a{
		padding: 1.25rem 0;
	}

	.news-list__date{
		margin-right: .75em;
	}

	.news-list__title{
		font-size: 1.6rem;
		-webkit-line-clamp: 3;
	}

}

/* =====
	ページャー
======================================================== */
.wp-pagenavi{
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	font-size: 2rem;
	color: #969393;
	padding-top: 1em;
}

.wp-pagenavi a, .wp-pagenavi span{
	display: block;
}

.wp-pagenavi .current{
	color: var(--font_color);
}
.wp-pagenavi .current,
.wp-pagenavi .page{
	padding: .4em;
	margin: 0 3.5%;
}

.wp-pagenavi .page:hover{
	color: var(--font_color);
}

@media screen and (max-width: 768px) {
	.wp-pagenavi .current,
	.wp-pagenavi .page{
		margin: 0 5.5%;
	}
}



/************************************************************************
	お知らせ詳細
**************************************************************************/
#news-article{
	padding: 2rem 0 1rem;
	border-top: 1px solid var(--font_color);
	border-bottom: 1px solid var(--font_color);
}

.news-article__date{
	display: inline-block;
	letter-spacing: .08em;
	margin-right: 1em;
}
a.news-article__cat:hover{
	opacity: .7;
}

.news-article__title{
	font-size: 2.4rem;
	line-height: 1.5;
	margin-top: 1em;
}

@media screen and (max-width: 768px) {
	#news-article{
		padding: 2.5rem 0 1rem;
	}

	.news-article__date{
		margin-right: .5em;
	}

	.news-article__title{
		font-size: 2.2rem;
		line-height: 1.36;
	}
}


/* =====
	ページャー
======================================================== */
.single_pager{
	font-size: 2rem;
	font-weight: 700;
	width: 100%;
	padding: 0 6.25em;
	margin-top: .5em;
	position: relative;
}

.single_pager .to_list{
	display: block;
	width: fit-content;
	padding: .5em;
	margin-inline: auto;
}
.single_pager .to_list:hover{
	color: #969393;
}

.single_pager .prev, .single_pager .next{
	display: block;
	padding: .5em;
    position: absolute;
	top: 0;
}
.single_pager .prev:hover, .single_pager .next:hover{
	color: #969393;
}
.single_pager .prev{
	left: 0;
}
.single_pager .next{
	right: 0;
}

@media screen and (max-width: 768px) {
	.single_pager{
		font-size: 1.6rem;
		margin-top: 1.25em;
	}
}

/* =====
	エディター出力部分（ブロックエディタ）
======================================================== */
/* -----
	共通
-------------------- */
.news-article__content{
	margin-top: 1.75rem;
}

.news-article__content > *{
	line-height: 2;
	margin-block: 2.8rem;/* 上下余白（デフォルトは28px） */
}
.news-article__content > *:nth-of-type(1){
	margin-top: 0;
}

.news-article__content :where(.wp-block-columns.has-background) {/* 背景色のある要素 */
	padding: 1.25em 2.375em;
}

/* 各色はfunction.phpで追加後、CSSに記述 */
.has-blue-background-color {
	background-color: #45679D;
}
.has-blue-color {
	color: #45679D;
}

.has-pink-background-color {
	background-color: #F06666;
}
.has-pink-color {
	color: #F06666;
}

.has-green-background-color {
	background-color: #7CAA43;
}
.has-green-color {
	color: #7CAA43;
}

.has-yellow-background-color {
	background-color: #D4AD15;
}
.has-yellow-color {
	color: #D4AD15;
}

.has-purple-background-color {
	background-color: #977AAC;
}
.has-purple-color {
	color: #977AAC;
}

@media screen and (max-width: 768px) {
	.news-article__content{
		margin-top: 1rem;
	}

	.news-article__content > *{
		line-height: 1.875;
		margin-bottom: 1.4rem;
		margin-top: 1.4rem;
	}
}


/* -----
	文字
-------------------- */
strong{/* 太字 */
	font-weight: 600;
}
.news-article__content em{/* イタリック */
	font-style: italic;
}

.news-article__content sup{/* 上付き文字 */
	vertical-align: super;
    font-size: smaller;
}
.news-article__content sub{/* 下付き文字 */
	vertical-align: sub;
    font-size: smaller;
}

.news-article__content a{
	cursor: pointer;
	color: var(--link_blue);
	text-decoration: underline;
	transition: .4s;
}
.news-article__content a:hover{
	color: var(--font_color);
	text-decoration: none;
}

.news-article__content a[target="_blank"]{
	display: inline-block;
	position: relative;
}
.news-article__content a[target="_blank"]::after{
	content: "";
	display: inline-block;
	width: .9em;
	height: .9em;
	margin-left: .25em;
	-webkit-mask: url(../img/cmn/icon_blank.svg) no-repeat center/contain;
	mask: url(../img/cmn/icon_blank.svg) no-repeat center/contain;
	background-color: currentColor;
}

.wp-element-caption{
	font-size: .778em;/* 14/18 */
	text-align: inherit;
}

/* -----
	見出し
-------------------- */
.wp-block-heading{
	font-weight: 700;
}
h1.wp-block-heading,
h2.wp-block-heading{/* デザインに合わせる可能性あり */
	font-size: 1.375em;/* 22/16 */
}
h3.wp-block-heading{/* デザインに合わせる可能性あり */
	font-size: 1.25em;/* 20/16 */
}
h4.wp-block-heading{
	font-size: 1.125em;/* 18/16 */
}
h5.wp-block-heading{
	font-size: 1.05em;
}
h6.wp-block-heading{
	font-size: 1em;
}

/* -----
	リスト
-------------------- */
.wp-block-list{
	list-style-type: disc;
	padding-left: 1em;/* リストの記号がインナー外にでるため */
}
.wp-block-list .wp-block-list{
	list-style-type: circle;
	padding-left: 2em;
}
.wp-block-list .wp-block-list .wp-block-list{
	list-style-type: square;
}

ol.wp-block-list{
	list-style-type: decimal;
}

/* -----
	ボタン
-------------------- */
/* 通常のボタン */
.news-article__content .wp-block-button__link:not(.has-vivid-red-color){
    border-radius: 9999px;
    box-shadow: none;
    text-decoration: none;
    padding: calc(.667em + 2px) calc(1.333em + 2px);
    font-size: 1.125em;
}
.news-article__content .wp-block-button__link:not(.has-text-color){
	color: #fff;
}
.news-article__content .wp-block-button__link:not(.has-background){
    background-color: #32373c;
}

.news-article__content .wp-block-button__link{/* .content aを上書きするため、「.content」も必要 */
	text-decoration: none;
}
.news-article__content .wp-block-button__link:hover{
	opacity: .7;
}


/* -----
	テーブル
-------------------- */
/* 
	プラグイン「Flexible Table Block」を導入すること。
*/

.is-scroll-on-pc, .is-scroll-on-mobile{
	overflow: auto;
}


/* -----
	画像配置
-------------------- */
.news-article__content .alignleft{
    text-align: left;
}
.news-article__content .aligncenter{
	text-align: center;
}
.news-article__content .alignright{
    text-align: right;
}


/************************************************************************
	Privacy policy プライバシーポリシー
**************************************************************************/
#privacy-area{
	padding: 11.5rem 0 20rem;
}

.privacy-container{
	padding-top: 2rem;
}

.privacy-wrap{
	margin-top: 3.85rem;
}

.privacy-wrap > dt{
	font-size: 2rem;
	font-weight: 700;
}

.privacy-wrap > dd{
	font-size: 1.8rem;
	margin-top: .5em;
}

@media screen and (max-width: 768px) {
	#privacy-area{
		padding: 0 0 6.5rem;
	}

	.privacy-container{
		padding-top: 1.75rem;
	}

	.privacy-wrap{
		margin-top: 4.75rem;
	}

	.privacy-wrap > dt{
		font-size: 1.8rem;
	}
	.privacy-wrap > dd{
		font-size: 1.6rem;
		line-height: 1.875;
	}
}