/* page top
---------------------------------------------------------------------------*/
#topContents {
	padding-top: 50px;
}

/* .img-main-top
------------------------------------*/
.img-main-top {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 60px;
}

.img-main-top .inner {
	border-radius: 0 40px 0 0;
	background: url(https://linkwin.kuron.jp/sakura-naika-test/wp-content/uploads/2025/09/mainimg-scaled.jpg) no-repeat right 72% top;
	background-size: cover;
	position: relative;
	width: calc(100vw - 35px);
	height: calc((100vw - 35px)*0.798);
}

.img-main-top .inner .mask {
	position: absolute;
	top: 0;
	right: 0;
	background-color: #FFFFFF;
	width: 100%;
	height: 100%;
	z-index: 2;
}

.img-main-top h1 { display: none; }

.img-main-top h1 strong {
	color: #FFFFFF;
	pointer-events: none;
}

.img-main-top h2 {
	position: absolute;
	top: -30px;
	right: -9px;
	opacity: 0;
	writing-mode: vertical-rl; /* 縦書き、右から左 */
	text-orientation: upright;  /* 文字を縦向きに */
	white-space: nowrap; 
	line-height: 2;
	font-size: 1.5rem;
}

.img-main-top h2 img {
	width: 94px;
	height: auto;
}

/* .news-top
------------------------------------*/
.news-top {
	overflow: hidden;
	margin-top: 8px;
}

.news-top a {
	display: inline-block;
	box-sizing: border-box;
	padding: 10px 24px 10px 18px;
	font-size: 12px;
	letter-spacing: 0.1em;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.news-top a time {
	padding-right: 14px;
	font-family: var(--font-sans-sbook);
	font-size: 12px;
	letter-spacing: 0.1em;
}

.news-top .slider-news,
.news-top .slick-list,
.news-top .slick-track,
.news-top article {
	float: none;
	width: auto !important;
}

/* .sec-lead-top
------------------------------------*/
.sec-lead-top {
	position: relative;
	margin-bottom: 80px;
	padding: 0 9%;
}

.sec-lead-top .pic1,
.sec-lead-top .pic2 {
	display: block;
	position: absolute;
	z-index: -1;
	height: auto;
}

.sec-lead-top .pic1 { bottom: -40px; left: 25px; width: 90px; }
.sec-lead-top .pic2 { top: -10px; right: 38px; width: 110px; }

.sec-lead-top h2 {
	margin-bottom: 35px;
	font-size: 24px;
	line-height: 1.6;
	letter-spacing: 0.16em;
}

.sec-lead-top h2 img { display: none; }

.sec-lead-top h2 strong {
	
}

.sec-lead-top p {
	margin-bottom: 14px;
	line-height: 2;
/* 	white-space: nowrap; */
}

.sec-lead-top .link {
	float: right;
	margin: 35px -9px 0 0;
}

.sec-lead-top .link a {
	position: relative;
	display: inline-block;
	padding: 10px 22px 10px 0;
	font-size: 13px;
	letter-spacing: 0.12em;
	text-decoration: underline;
}

.sec-lead-top .link a i {
	display: block;
	position: absolute;
	top: 9px;
	right: 0;
	background: url(../img/share/ico-arrow-navy.svg) no-repeat center center;
	background-size: 100% auto;
	width: 16px;
	height: 16px;
}

/* .sec-news-top
------------------------------------*/
.sec-news-top {
	margin-bottom: 70px;
	padding: 0 3%;
}

/* .img-set4
------------------------------------*/
.img-set4 {
	width: 96%;
	margin: 0 auto 65px;
}

.img-set4 > figure {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.img-set4 img {
	align-self: flex-start;
	width: 49%;
	height: auto;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
	margin-bottom: 2%;
}

/* .sec-service-title
------------------------------------*/
.sec-service-title {
	margin-bottom: 0;
	text-align: center;
}

.sec-service-title strong {
	display: block;
	margin-bottom: 7px;
	font-size: 17px;
	letter-spacing: 0.16em;
}

.sec-service-title em {
	font-family: var(--font-sans-sbook);
	font-size: 11px;
	letter-spacing: 0.12em;
}

.sec-service-title + #sec-service { margin-top: 32px; }

/* .img-center3
------------------------------------*/
#topContents .img-center3 { display: none; }

/* #sec-clinic
------------------------------------*/
#topContents #sec-clinic {
	margin-bottom: 75px;
}

#sec-clinic .pic {
	display: block;
	position: absolute;
	bottom: -45px;
	right: 25px;
	width: 85px;
	height: auto;
}

/* .sec-reserve-online
------------------------------------*/
.sec-reserve-online {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	width: 88%;
	margin: 0 auto;
}

.sec-reserve-online .box-color {
	order: 2;
	padding: 34px 30px 30px;
}

.sec-reserve-online .box-color h2 {
	margin-bottom: 15px;
	font-size: 16px;
	letter-spacing: 0.1em;
}

.sec-reserve-online .box-color p { text-align: justify; }
.sec-reserve-online .box-color ul { margin: 16px 0 0 2px; }

.sec-reserve-online .map {
	order: 1;
	width: 100%;
	height: 260px;
	margin: 0 0 25px;
}

.sec-reserve-online .map iframe {
	position: absolute;
	top: -200px;
	left: -150px;
	width: calc(100% + 150px);
	height: calc(100% + 400px);
	z-index: 1;
}

.sec-reserve-online .map .btn-link { right: 12px; bottom: 12px; }
.sec-reserve-online .map .btn-link a { padding: 11px 44px 13px 22px; }
.sec-reserve-online .map .btn-link a:after { right: 14px; }

/* page about
---------------------------------------------------------------------------*/
/* #sec-clinic
------------------------------------*/
#sec-clinic {
	position: relative;
	padding: 0 7.5%;
}

#sec-clinic > figure {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-bottom: 25px;
}

#sec-clinic > figure img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

#sec-clinic > figure .img1 { width: 66.5%; }
#sec-clinic > figure .img2 { width: 32.7%; }

#sec-clinic .info {
	margin-bottom: 60px;
}

#sec-clinic .info .logo {
	margin-bottom: 20px;
}

#sec-clinic .info .logo strong {
	display: block;
	margin-bottom: 14px !important;
	font-size: 12px;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

#sec-clinic .info .logo img { width: 240px; height: auto; }

#sec-clinic .info address,
#sec-clinic .info .tel,
#sec-clinic .info .fax {
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

#sec-clinic .info address {
	margin-bottom: 4px;
}

#sec-clinic .info .tel,
#sec-clinic .info .fax {
	display: inline-block;
}
/* 20250929追加 */
    .sec-reserve-online .info address, #sec-clinic .info .tel, #sec-clinic .info .fax {
      font-size: 13px;
      line-height: 1.6;
      letter-spacing: 0.08em;
    }
.sec-reserve-online .info address, #sec-clinic .info .tel, #sec-clinic .info .fax {
        font-size: 13px;
        line-height: 1.6;
        letter-spacing: 0.08em;
    }
    .sec-reserve-online .info .logo {
      margin-bottom: 20px;
    }

    .sec-reserve-online .info .logo strong {
      display: block;
      margin-bottom: 14px !important;
      font-size: 12px;
      line-height: 1.6;
      letter-spacing: 0.12em;
    }

    .sec-reserve-online .info .logo img {
      width: 240px !important;
      height: auto;
    }
/* .schedule
------------------------------------*/
.schedule {
	margin: 28px -10px 10px;
}

.schedule table,
.schedule tr {
	width: 100%;
	white-space: nowrap;
}

.schedule table { border-top: 1px solid #E8ECF1; }
.schedule tr { border-bottom: 1px solid #E8ECF1; }

.schedule th {
	padding: 11px 8px 11px;
	font-size: 13px;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;
}

.schedule th:first-of-type {
	font-size: 12px;
	letter-spacing: 0.1em;
}

.schedule th span,
.schedule td span {
	display: block;
	padding-top: 6px;
	font-size: 10px;
	letter-spacing: 0.08em;
}

.schedule td span {
	color: var(--color-navy-light);
}

.schedule td {
	position: relative;
	padding: 10px 6px 9px;
	font-size: 21px;
	text-align: center;
	vertical-align: middle;
}

.schedule th:first-of-type,
.schedule td:first-of-type {
	padding-left: 0;
}

.schedule th:last-of-type { padding-right: 16px; }
.schedule td:last-of-type {	padding-right: 13px; }

.schedule td:first-of-type {
	font-family: var(--font-sans-book);
	font-size: 14px;
	letter-spacing: 0.02em;
}

.schedule tr.line1 td {
	padding-top: 12px;
	padding-bottom: 13px;
}

.schedule tr.line1 td:first-of-type { transform: translateY(2px); }

.schedule td i {
	display: inline-block;
	border-radius: 50%;
	border: 1px solid var(--color-navy);
	width: 8px;
	height: 8px;
}

.schedule td i {
	transform: translateY(-4px);
}

.schedule td i.close {
	border-radius: 0;
	background-color: var(--color-navy);
	border: none;
	width: 8px;
	height: 1px;
	vertical-align: middle;
	transform: translateY(-3px);
}

.schedule td b {
	display: inline-block;
	position: absolute;
	top: 5px;
	left: 0;
	background: #F1F4FB;
	border-radius: 4px;
	padding: 5px 6px 5px 5px;
	font-size: 11px;
	font-weight: normal;
	line-height: 1.2;
	letter-spacing: 0.02em;
}

/* .important-info
------------------------------------*/
.important-info {
	margin-top: -15px;
	display: -webkit-box;
	display: flex;
	white-space: nowrap;
}

p + .important-info {
	margin-top: 16px;
}

.important-info h2 {
	position: relative;
	padding: 10px 10px 10px 0;
	font-size: 13px;
	letter-spacing: 0.06em;
}

.important-info h2:after {
	display: block;
	content: '';
	position: absolute;
	top: 10px;
	right: 0;
	background: var(--color-navy);
	width: 1px;
	height: 26px;
	transform-origin: center top;
	transform: scale(0.5);
	opacity: 0.5;
}

.important-info a {
	position: relative;
	max-width: 100%;
	padding: 10px 0 10px 10px;
	font-size: 13px;
	letter-spacing: 0.08em;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.important-info a:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 7px;
	left: 10px;
	background-color: var(--color-navy);
	width: calc(100% - 10px);
	height: 1px;
	opacity: 0.5;
}

/* .attention-list
------------------------------------*/
.attention-list li {
	position: relative;
	margin: 0 0 3px;
	padding-left: 16px;
	font-size: 12px;
	line-height: 1.75;
	letter-spacing: 0.07em;
	text-align: justify;
}

.attention-list li:last-of-type { margin-bottom: 0 !important; }

.attention-list li:before {
	display: block;
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}

/* #sec-clinic .alliance
------------------------------------*/
#sec-clinic .alliance {
	position: relative;
	margin-top: 75px;
}

#sec-clinic .alliance h2 {
	margin-bottom: 16px;
	font-size: 16px;
	letter-spacing: 0.14em;
}

#sec-clinic .alliance h2 + p {
	line-height: 1.8;
	margin-bottom: 26px !important;
	text-align: justify;
}

#sec-clinic .alliance h2 + p br { display: none; }

#sec-clinic .alliance .inner {
	position: relative;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	margin-left: 3px;
}

#sec-clinic .alliance .inner ul {
	position: relative;
	margin-right: 24px;
	padding-left: 14px;
	vertical-align: middle;
	white-space: nowrap;
}

#sec-clinic .alliance .inner ul:last-of-type { margin-right: 0; }

#sec-clinic .alliance .inner ul:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-color: var(--color-line-navy);
	width: 1px;
	height: 100%;
}

#sec-clinic .alliance .inner li {
	margin-bottom: 8px;
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

#sec-clinic .alliance .inner li:last-of-type { margin-bottom: 0; }

#sec-clinic .alliance p.sup {
	font-size: 12px;
	display: inline;
}

#sec-clinic .alliance > ul { margin-top: 20px; }
#sec-clinic .alliance > ul li:nth-of-type(1) { display: none; }

/* page gastroscopy / colonoscopy
---------------------------------------------------------------------------*/
#gastroscopyContents .img-center3 {
	margin-bottom: 55px;
}

/* .sec-examination1
------------------------------------*/
.sec-examination1 {
	margin-bottom: 70px;
	padding: 0 9%;
}

.sec-examination1 .txt {
	margin-bottom: 55px;
}

.sec-examination1 .txt h2,
.sec-examination2 .txt h2 {
	margin-bottom: 17px;
	font-family: var(--font-min-d);
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: 0.12em;
	white-space: nowrap;
}

#colonoscopyContents .sec-examination1 .txt h2 {
	margin-bottom: 19px;
	font-size: 16px;
	letter-spacing: 0.14em;
}

.sec-examination1 .txt p { text-align: justify; }
.sec-examination1 .txt p br { display: none; }

.sec-examination1 .box-wrap h3 {
	margin-bottom: 24px;
	text-align: center;
}

.sec-examination1 .box-wrap h3 em {
	margin-bottom: 13px;
	font-size: 13px;
	letter-spacing: 0.12em;
}

.sec-examination1 .box-wrap h3 strong {
	font-family: var(--font-min-d);
	font-size: 17px;
	letter-spacing: 0.14em;
}

.sec-examination1 .box-color {
	margin: 0 -2px;
	padding: 24px 26px 22px;
}

#colonoscopyContents .sec-examination1 .box-color {
	padding-bottom: 16px;
}

.sec-examination1 .box-color .even li:nth-child(odd) { width: 60%; }
.sec-examination1 .box-color .even li:nth-child(even) { width: 40%; }

.sec-examination1 .box-wrap h4 {
	margin: 30px 0 11px;
	font-family: var(--font-min-d);
	font-size: 14px;
	letter-spacing: 0.13em;
}

.sec-examination1 .box-wrap h4:first-of-type { margin-top: 35px; }
.sec-examination1 .box-wrap p {
	line-height: 1.85;
	text-align: justify;
}

/* .sec-examination2
------------------------------------*/
.sec-examination2 {
	margin-bottom: 75px;
	padding: 0 9%;
}

.sec-examination2 .img {
	margin-bottom: 35px;
}

.sec-examination2 .img figure {
	margin-bottom: 25px;
}

.sec-examination2 .img figure img {
	width: 100%;
}

.sec-examination2 .img h3 {
	margin-bottom: 14px;
	font-size: 12px;
	letter-spacing: 0.06em;
}

.sec-examination2 .img h4 {
	margin-bottom: 13px;
}

.sec-examination2 .img h4 strong {
	font-family: var(--font-sans-sbook);
	font-size: 17px;
	letter-spacing: 0.03em;
}

.sec-examination2 .img h4 span {
	display: block;
	margin-top: 5px;
	font-size: 11px;
	line-height: 1.5;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.sec-examination2 .txt h2 {
	margin-bottom: 14px;
}

.sec-examination2 p { text-align: justify; }
.sec-examination2 p br { display: none; }

.sec-examination2 p.attention {
	margin-top: -2px;
	font-size: 12px;
	letter-spacing: 0.11em;
}

.sec-examination2 .box-color {
	margin: 30px 0 0;
	padding: 32px 30px 28px;
}

.sec-examination2 .box-color figure {
	align-self: flex-start;
	width: 80px;
	min-width: 80px;
}

.sec-examination2 .box-color figure img { border-radius: 3px; }
.sec-examination2 .box-color figure.side img { border-radius: 3px 0 0 3px; }

.sec-examination2 .box-color h3 {
	margin-bottom: 14px;
	font-family: var(--font-min-d);
	font-size: 16px;
	letter-spacing: 0.1em;
}

.sec-examination2 .box-color .img-s {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin-top: 26px;
}

.sec-examination2 .box-color .img-s figure {
	width: 48%;
}

.sec-examination2 .box-color .img-s figure img {
	width: 100%;
}

.sec-examination2 .box-color .img-s figure.side img {
	width: 50%;
}

.sec-examination2 .box-color .img-s figure:not(.zoom) figcaption {
	position: static;
	background-color: inherit;
	margin-top: 14px;
	padding: 0;
	font-family: var(--font-sans-sbook);
	font-size: 15px;
	letter-spacing: 0.05em;
}

.sec-examination2 .box-color .img-s figure:not(.zoom) figcaption span {
	display: block;
	margin-bottom: 9px;
	font-size: 10px;
	letter-spacing: 0.04em;
}

.sec-examination2 .box-color .img-s figure.side figcaption span {
	letter-spacing: 0.02em;
}

.sec-examination2 .box-color .img-s figure.side {
	display: flex;
	align-items: center;
	background-color: #E2E6F5;
	border-radius: 0 3px 3px 0;
	width: 100%;
}

.sec-examination2 .box-color .img-s figure.side figcaption {
	width: 100%;
	margin: 0;
	padding: 0 0 0 17px;
	white-space: nowrap;
}

.sec-examination2 .box-color .img-s .zoom {
	position: absolute;
	top: -20px;
	right: -20px;
	width: 60px;
	min-width: auto;
	width: auto;
	text-align: center;
}

.sec-examination2 .box-color .img-s .zoom img {
	width: 60px;
}

.sec-examination2 .box-color .img-s .zoom figcaption {
	display: block;
	background-color: inherit;
	position: static;
	margin-top: -6px;
	padding: 0;
	font-size: 11px;
	letter-spacing: 0.03em;
	text-align: center;
}

.sec-examination2 .box-color .img-s .zoom figcaption span {
	display: inline-block;
	background-color: #FFFFFF;
	margin-bottom: 3px;
	padding: 0px 3px 2px 3px;
}

/* .sec-method
------------------------------------*/
.sec-method {
	position: relative;
	margin: 130px auto 100px;
}

.sec-method:before {
	display: block;
	content: '';
	position: absolute;
	top: -88px;
	left: 50%;
	background: var(--color-line-navy);
	width: 1px;
	height: 65px;
}

.sec-method h2 {
	margin-bottom: 40px;
	text-align: center;
}

.sec-method h2 strong {
	display: block;
	margin-bottom: 4px;
	font-size: 16px;
	line-height: 1.7;
	letter-spacing: 0.14em;
}

.sec-method h2 em {
	color: var(--color-navy-light);
	font-family: var(--font-sans-sbook);
	font-size: 11px;
	letter-spacing: 0.14em;
}

.method {
	border-top: 1px solid var(--color-line-navy);
	border-bottom: 1px solid var(--color-line-navy);
	width: 90%;
	margin: 0 auto;
}

.method > div {
	box-sizing: border-box;
	padding: 32px 14px 28px;
}

.method > div:nth-child(odd) { background: url(../img/share/line-dot.svg) repeat-x left bottom; }

.method h3 {
	position: relative;
	margin-bottom: 18px;
	padding-left: 37px;
	font-family: var(--font-min-d);
	font-size: 15px;
	letter-spacing: 0.1em;
	white-space: nowrap;
}

.method h3 i {
	display: block;
	position: absolute;
	top: 2px;
	left: 2px;
	font-family: var(--font-sans-sbook);
	font-size: 16px;
}

.method h3 i:after {
	display: block;
	content: '';
	position: absolute;
	top: 8px;
	right: -18px;
	background: var(--color-line-navy);
	width: 10px;
	height: 1px;
}

.method p {
	color: var(--color-navy-light);
	line-height: 1.9;
	text-align: justify;
}

/* .sec-price
------------------------------------*/
.sec-price {
	margin-bottom: 75px;
	padding: 0 7%;
}

.sec-price h2 {
	margin-bottom: 22px;
}

.sec-price > p { text-align: justify; }

.sec-price > p.attention {
	margin-top: -2px;
	font-size: 12px;
}

/* .sec-flow
------------------------------------*/
.sec-flow {
	margin-bottom: 75px;
	padding: 40px 5.5% 30px;
}

.sec-flow-inner h2 {
	margin: 0 0 24px 6px;
	font-family: var(--font-min-d);
	font-size: 15px;
	letter-spacing: 0.14em;
}

.sec-flow-inner .attention-list li {
	margin-bottom: 14px;
	line-height: 1.8;
	text-align: justify;
}

.sec-flow-inner .attention-list li br { display: none; }

.flow-list {
	margin-bottom: 26px;
}

.flow-list .inner {
	position: relative;
	background-color: #FFFFFF;
	border-radius: 5px;
	margin-bottom: 15px;
	padding: 26px 22px 22px 22px;
}

.flow-list .inner:last-of-type { margin-bottom: 0; }

.flow-list h3 {
	position: relative;
	box-sizing: border-box;
	margin-bottom: 18px;
	padding-left: 20px;
	font-size: 15px;
	letter-spacing: 0.12em;
}

#colonoscopyContents .flow-list .inner:nth-of-type(1),
#colonoscopyContents .flow-list .inner:nth-of-type(2) {
	padding-top: 32px;
}

#colonoscopyContents .flow-list .inner:nth-of-type(1) h3,
#colonoscopyContents .flow-list .inner:nth-of-type(2) h3 {
	margin-bottom: 24px;
}

.flow-list h3 i {
	display: block;
	position: absolute;
	top: 4px;
	left: 1px;
	font-family: var(--font-serif);
	font-size: 15px;
}

.flow-list .txt p {
	text-align: justify;
	line-height: 1.8;
	letter-spacing: 0.04em;
	font-size: 12px;
}

.flow-list .txt p br { display: none; }

.flow-list .txt .attention-list {
	margin-top: 2px;
}

.flow-list .attention-list li {
	margin-top: 4px;
	margin-bottom: 3px;
	font-size: 12px !important;
}

.flow-list .ico {
	position: absolute;
	top: 19px;
	right: 21px;
}

.flow-list .inner:nth-of-type(1) .ico { right: 28px; }
.flow-list .ico a,
.flow-list .ico span { display: block; }
.flow-list .ico img { width: auto; height: 40px; }

.flow-list + .attention-list {
	padding: 0 6px;
}

/* .price-list
------------------------------------*/
.price-list {
	border-top: 1px solid var(--color-line-navy);
	margin: 30px 0% 0;
}

.price-list .inner {
	position: relative;
	border-bottom: 1px solid var(--color-line-navy);
	padding: 19px 8px 21px;
}

.price-list .inner > div {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	position: relative;
}

.price-list .inner > div + div.sub {
	margin-top: 20px;
}

.price-list .inner > div + div.sub.mt0 {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 8px;
	padding-bottom: 8px;
}

.price-list .inner > div + div.sub.mt0.sub-top { padding-top: 3px; margin-top: 26px; }
.price-list .inner > div + div.sub.mt0.sub-btm { padding-bottom: 0; margin-bottom: 18px; }

.price-list .inner > div + div.sub.mt0 .price { top: 4px; }
.price-list .inner > div + div.sub.mt0.sub-top .price { top: -2px; }

.price-list .txt h3 {
	margin-bottom: 12px;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.price-list .txt h3:last-child { margin-bottom: 0; }

.price-list .txt h3 span {
	display: block;
	margin-top: 3px;
	font-size: 11px;
	letter-spacing: 0.08em;
	opacity: 0.6;
}

.price-list .txt h3 span.inb {
	display: inline-block;
	margin: 0 0 0 4px;
}

.price-list .txt p {
	text-align: justify;
	line-height: 1.8;
}

.price-list .txt p br {
	display: none;
}

.price-list .txt.font-s h3 {
	margin-bottom: 14px;
}

.price-list .txt.font-s p {
	padding-left: 2px;
	font-size: 13px;
	line-height: 1.9;
}

.price-list .txt p.attention {
	margin-top: -6px;
	font-size: 12px;
}

.price-list .price {
	text-align: right;
	white-space: nowrap;
	position: absolute;
	top: 0;
	right: 0;
}

.price-list .price p {
	font-size: 13px;
}

.price-list .price p strong {
	padding: 0 1.5px 0 2px;
	font-family: var(--font-serif);
	font-size: 17px;
	line-height: 1;
	letter-spacing: 0.03em;
}

.price-list .price p i {
	margin-right: 3px;
	font-size: 11px;
}

.price-list .price p i:last-child { margin-right: 0; }

.price-list .price p.attention {
	margin-top: -6px;
	font-size: 13px;
}

.price-list .inner .sub {
	border-left: 1px solid #E5E5E5;
	margin: 15px 0 5px 3px;
	padding: 3px 0 0 11px;
}

.price-list .inner .sub h4 {
	margin-bottom: 10px;
	font-family: var(--font-min-d);
	font-size: 13px;
	letter-spacing: 0.12em;
}

.price-list .inner .sub h4:last-of-type { margin-bottom: 0; }

.price-list .inner .sub h4 span {
	padding-left: 12px;
	font-size: 12px;
	letter-spacing: 0.1em;
}

/* .sec-reserve
------------------------------------*/
.sec-reserve {
	padding: 0 9%;
}

.sec-reserve > figure {
	margin: 0 -5% 45px;
}

.sec-reserve > figure img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

.sec-reserve .txt {
	margin-bottom: 45px;
}

.sec-reserve h2 {
	margin-bottom: 28px;
}

.sec-reserve h2 strong {
	font-size: 14px !important;
}

.sec-reserve h3 {
	margin: 34px 0 12px;
	font-size: 15px;
	line-height: 1.7;
	letter-spacing: 0.08em;
	white-space: nowrap;
}

.sec-reserve .tel {
	margin: 0 0 30px 1px;
}

.sec-reserve .tel span {
	padding-bottom: 1px;
	font-size: 13px;
	letter-spacing: 0.1em;
}

.sec-reserve .tel strong {
	padding-left: 8px;
	font-family: var(--font-sans-sbook);
	font-size: 23px;
	letter-spacing: 0.06em;
}

.sec-reserve .tel .txt-line:after { bottom: 0; }

.sec-reserve .box-color {
	margin: 28px -3px 0;
	padding: 26px 14px 22px 22px;
}

.sec-reserve .box-color h4 {
	margin-bottom: 18px;
	font-family: var(--font-min-d);
	font-size: 14px;
	letter-spacing: 0.1em;
}

.sec-reserve .attention-list {
	margin-top: 16px;
}

.sec-reserve .inner .img { position: relative; }

.sec-reserve .inner .img img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

.sec-reserve .inner .img figure {
	margin-bottom: 14px;
}

.sec-reserve .inner .img p {
	font-size: 12px;
	letter-spacing: 0.08em;
	text-align: justify;
}


/* .sec-online-title
------------------------------------*/
.sec-online-title {
	margin-bottom: 0;
	text-align: center;
}

.sec-online-title strong {
	display: block;
	margin-bottom: 7px;
	font-size: 17px;
	letter-spacing: 0.16em;
}

.sec-online-title em {
	font-family: var(--font-sans-sbook);
	font-size: 11px;
	letter-spacing: 0.12em;
}

.sec-online-title + #sec-service { margin-top: 32px; }

#sec-online .inner {
	padding: 0 3%;
	margin: 50px auto;
}

#sec-online ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 10px 0;
}

#sec-online ul li {
	width: 48%;
}

#sec-online ul li img {
	width: 100%;
}