@charset "utf-8";

/* 開発用※公開時はコメントアウトしてください */
/* .main{
	background-image:
    linear-gradient(
      rgba(255, 255, 255, 0.5),
      rgba(255, 255, 255, 0.5)
    ),url(../images/tmpl10.png);
	background-size: 100%;
	background-position: top center;
	background-repeat: no-repeat;
}
.main > div{
	opacity: .7;
} */
/* 開発用ここまで */

@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;600&family=Zen+Kaku+Gothic+New:wght@400;700&display=swap');

html {
    font-family: "Shippori Mincho", serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-size: 16px;
	scroll-behavior: smooth;
	color: #474747;
	font-weight: 400;
	font-feature-settings: "palt" 1;
	height: 100%;
	overscroll-behavior: none;
}
.gothic{
	/* ゴシック体 */
	font-family: "Zen Kaku Gothic New", sans-serif;
  	font-weight: 400;
    font-style: normal;
}
.mincho{
	/* 明朝体 */
	font-family: "Shippori Mincho", serif;
	font-weight: 400;
    font-style: normal;
}

body {
	margin : 0;
	background-color: #f8f5f3;
	height: 100%;
	overflow: hidden;
	overscroll-behavior: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

h1,h2,h3,h4,h5,h6,p,ul,ol,dl,table,pre {
	margin: 0 ;
	font-size: 16px;
}

p {line-height: 1.8em;}

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

a:focus { outline: thin dotted}

a:hover,a:active { outline : 0}

p,li,dt,dd,th,td,pre{
-ms-line-break: strict;
line-break: strict;
-ms-word-break: break-strict;
word-break: break-strict}

b, strong { font-weight : bold}

pre {
white-space: pre;
white-space: pre-wrap;
word-wrap: break-word}

img {
	max-width :100%;
	vertical-align: middle;
	border: 0;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-moz-user-drag: none;
	-o-user-drag: none;
	user-drag: none;
}

svg:not(:root) {overflow: hidden}

button, input, select, textarea {
	font-family: inherit;
	font-size: 100%;
	margin: 0;}

button,input {line-height: normal;}

button,input[type="button"],input[type="reset"],input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],input[disabled] {
	cursor: default
}

input[type="checkbox"],input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

input[type="search"] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,input[type="search"]:-webkit-search-decoration {
	-webkit-appearance: none
}

/* Removes inner padding and border in Firefox 4+. */
button::-moz-focus-inner,input::-moz-focus-inner {
	border: 0;
	padding: 0
}
textarea {
	vertical-align: top;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
.clearfix:after {
	content: '';
	display: block;
	clear: both;
	height:0;
}
div,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,table,pre,a {
	box-sizing: border-box;	
}
a{
	text-decoration: none;
	cursor: pointer;
	color: var(--color-link_blue);
}
a:hover{
	opacity: .6;
	transition: 0.2s;
	cursor: pointer;
}
@media (max-width: 899px) {
	
}
.wrap{
	width: 100%;
}
.container{
	position: relative;
	width: 100%;
}
.content{
	max-width: 1174px;
	width: 100%;
    margin: auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.side{
	width: calc(100% - 578px);
	padding: 154px 42px 0 60px;
}
.sideMenuUL{
	margin: 0 auto 0 auto;
}
.sideMenuUL li{
	width: 100%;
}
.sideMenuLiA{
	display: block;
    width: 100%;
    border-bottom: 1px solid #fff;
    padding: 20px 32px 20px 32px;
    background-image: url(../images/sidemenu-arrow1.svg);
    background-size: 32px;
    background-position: right 32px center;
    background-repeat: no-repeat;
    transition: background-color .3s;
}
.sideMenuLiA:hover {
    background-color: #fff;
	opacity: 1!important;
}
.sideMenuLiName{
	width: calc(100% - 40px);
	display: block;
	font-size: 1.1rem;
	color: #000;
	line-height: 1em;
	text-align: left;
	font-weight: 600;
}
.sideMenuLiText1{
	width: calc(100% - 40px);
	display: block;
    font-size: 18px;
    color: #000;
    line-height: 1.1em;
    text-align: left;
    font-weight: 400;
	margin-top: 0;
}
.sideMenuFooterFlex{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	margin: 40px auto 0 auto;
}
.sideMenuFooterShindanDIV{
	width: 68%;
}
.sideMenuFooterTelDIV{
	width: 29.5%;
	margin-left: 2.5%;
}
.sideMenuFooterShindanBTN1{
	width: 100%;
	margin: 0 auto;
	padding: 3% 4.6%;
	box-shadow: 0 4px 38.4px rgba(0,0,0,0.15);
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 12px;
	min-height: 24px;
	box-sizing: border-box;
	background: #80642A;
	background: linear-gradient(0deg,rgba(170, 142, 84, 1) 0%, rgba(187, 158, 97, 1) 100%);
	font-size: 18px;
	color: #fff;
	line-height: 1em;
	text-align: center;
	font-weight: 700;
	border-radius: 9999px;
	border: 1px solid rgba(255,255,255,0.3);
}
.sideMenuFooterShindanBTN1_right{
	width: 18px;
	height: 18px;
	background-image:url(../images/fix_footer_shindan_right.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
.sideMenuTel {
        display: block;
        width: 100%;
        background-image: linear-gradient(0deg, rgba(221, 156, 95, 1) 0%, rgba(245, 202, 152, 1) 100%);
        border: 1px solid rgba(255, 255, 255, 0.3);
        border-radius: 24vw;
        box-shadow: 0 4px 38.4px rgba(0,0,0,0.15);
    }
.sideMenuTel a {
	display: block;
	width: 100%;
	height: 100%;
	background-image: url(../images/fix_header_tel.svg);
	background-size: 14px;
	background-position: left 8% center;
	background-repeat: no-repeat;
	font-weight: bold;
	color: #fff;
	line-height: 1em;
	font-weight: 600;
	filter: drop-shadow(0 1px 1.4px rgba(0, 0, 0, 0.15));
	padding: 8% 0% 10% 22%;
	box-sizing: border-box;
	font-size: 14px;
}
@media (max-width: 1174px) {
	.sideMenuFooterShindanDIV{
		width: 66%;
	}
	.sideMenuFooterTelDIV{
		width: 33%;
		margin-left: 1%;
	}
	.sideMenuFooterShindanBTN1{
		padding: 3% 4.6%;
		font-size: 1.3vw;
		gap: 1vw;
		min-height: 2vw;
	}
	.sideMenuFooterShindanBTN1_right{
		width: 1.6vw;
		height: 1.6vw;
	}
	.sideMenuTel a {
		background-size: 1.1vw;
		font-size: 1.1vw;
	}
}

@media (max-width: 1023px) {
	.side{
		display: none;
	}
}
.main{
	max-width: 578px;
	width: 100%;
	
    height: 100svh;
	position: relative;
}

@media (max-width: 1023px) {
	.main{
		max-width: 500px;
		width: 100%;
		margin: auto;
	}
}

.fixHeaderWrap{
	width: 100%;
	max-width: 1174px;
	position: absolute;
	left: 50%;
    transform: translateX(-50%);
	z-index: 100;
}


.fixHeaderTitle{
	width: 250px;
	position: absolute;
	top: 61px;
    left: 58px;
}
.fixHeaderTitle a, .fixHeaderTitle img{
	width: 100%;
	display: block;
}
.fixHeaderTel{
	display: none;
}
@media (max-width: 1023px) {
	.fixHeaderWrap{
		max-width: 500px;
		width: 100%;
		margin: auto;
	}
	.fixHeaderTitle{
		max-width: 200px;
        width: 40%;
        position: absolute;
        top: 24px;
        left: 16px;
	}
	.fixHeaderTel {
        display: block;
        width: 186px;
        position: absolute;
        top: 14px;
        right: 8px;
        background-image: linear-gradient(0deg, rgba(221, 156, 95, 1) 0%, rgba(245, 202, 152, 1) 100%);
        border: 1px solid rgba(255, 255, 255, 0.3);
        border-radius: 24vw;
        box-shadow: 0 0 28px rgba(0, 0, 0, 0.15);
    }
	.fixHeaderTel a {
        display: block;
        width: 100%;
        height: 100%;
        background-image: url(../images/fix_header_tel.svg);
        background-size: 20px;
        background-position: left 8% center;
        background-repeat: no-repeat;
        font-weight: bold;
        color: #fff;
        line-height: 1em;
        font-weight: 600;
        filter: drop-shadow(0 1px 1.4px rgba(0, 0, 0, 0.15));
        padding: 8% 0% 10% 22%;
        box-sizing: border-box;
        font-size: 18px;
    }
}
@media (max-width: 499px) {
	.fixHeaderTitle{
        top: 4.6vw;
	}
	.fixHeaderTel{
		top: 2.9vw;
		box-shadow: 0 0 5.6vw rgba(0,0,0,0.15);
        width: 37vw;
        right: 2vw;
        border-radius: 24vw;
	}
	.fixHeaderTel a {
        background-size: 4.2vw;
        font-size: 3.6vw;
    }
}



/* フッターボタン */
.fixFooterWrapSP{
	width: 100%;
	padding: 0 0 20px 0;
	position: absolute;
	/* box-shadow: 1px 1px 3px #d00; */
	z-index: 100;
	display: none;
	bottom: 0;
}
.fixFooterShindanBTN1{
	width: 92%;
    margin: 0 auto;
    padding: 16px 26px;
    box-shadow: 0 4px 38.4px rgba(0, 0, 0, 0.15);
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 16px;
    min-height: 32px;
    box-sizing: border-box;
    background: #80642A;
    background: linear-gradient(0deg, rgba(170, 142, 84, 1) 0%, rgba(187, 158, 97, 1) 100%);
    font-size: 24px;
    letter-spacing: 0.05em;
    color: #fff;
    line-height: 1em;
    text-align: center;
    font-weight: 700;
    border-radius: 9999px;
    border: 1px solid rgba(255, 255, 255, 0.3);
}
.fixFooterShindanBTN1_right{
	width: 24px;
	height: 24px;
	background-image:url(../images/fix_footer_shindan_right.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
@media (max-width: 1023px) {
	.fixFooterWrapSP{
		display: block;
	}
	.fixFooterShindanBTN1{
		
		filter: drop-shadow(0 3px 33.4px rgba(0,0,0,0.15));
	}
}
@media (max-width: 499px) {
	.fixFooterWrapSP{
		display: block;
	}
	.fixFooterShindanBTN1{
		filter: drop-shadow(0 3px 33.4px rgba(0,0,0,0.15));
	}
	.fixFooterShindanBTN1{
		padding: 3.3vw 4.9vw;
		font-size: 4.8vw;
		gap: 3.2vw;
		min-height: 6.5vw;
	}
	.fixFooterShindanBTN1_right{
		width: 5vw;
		height: 5vw;
	}
}


/* 背景用動画全般 */
.commonVideoBGDIV {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    height: 100svh;
	z-index: 0;
}
.commonVideoBGDIV video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center top;
    object-position: center top;
}


/* ページ1 */
.s1Wrap{
	width: 100%;
	height: 100%;
	background-image:url(../images/sec1_bg2.webp);
	background-size: 100%;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-color: rgba(255,255,255,0);
	padding-top: 0px;
	position: relative;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s1Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}

.s1WrapInner{
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 10;
	
}

.s1DIV1{
	width: 100%;
	position: relative;
	background-image:url(../images/sec1_bg.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	height: 100%;
	
	margin-bottom: 250px;
}
.s1Text1{
	position: absolute;
	top: calc(14.7% - 50px);
    right: 8.2%;
    width: 120px;
}
.s1P1{
	font-size: 1.6rem;
    letter-spacing: 0.1em;
    color: #80642A;
    text-align: center;
    font-weight: 400;
    position: absolute;
    bottom: clamp(32px, 9.2dvh, 96px);
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
	

}
.s1P1span1{
	background-color: #fff;
	display: block;
	font-size: 0.95em;
	padding: 0px 8px 4px 8px;
}
.s1P1Disclosure{
	display: inline-flex;
	align-items: center;
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	font: inherit;
	color: inherit;
	cursor: pointer;
}
.s1P1span1_link{
	color: #185cd0;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}
.s1P1span1_icon{
	display: inline-block;
	width: 1.1em;
	height: 1.1em;
	margin-left: 0.2em;
	vertical-align: middle;
	transform: translateY(-0.08em);
	object-fit: contain;
}
.s3P1 .s1P1span1_icon,
.s6P2 .s1P1span1_icon,
.s7P2 .s1P1span1_icon,
.s8P2 .s1P1span1_icon{
	transform: translateY(-0.01em);
}
.implantModal{
	position: fixed;
	inset: 0;
	z-index: 220;
}
.implantModalBackdrop{
	position: absolute;
	inset: 0;
	border: 0;
	background-color: rgba(0, 0, 0, 0.75);
	cursor: pointer;
}
.implantModalPanel{
	position: absolute;
	top: 59px;
	right: 16px;
	bottom: 67px;
	left: 16px;
	display: flex;
	flex-direction: column;
	background-color: #fff;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07), 0 4px 16px rgba(0, 0, 0, 0.07), 0 8px 32px rgba(0, 0, 0, 0.07), 0 16px 64px rgba(0, 0, 0, 0.07);
	overflow: hidden;
}
.implantModalHeader{
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
	padding: 16px;
	background-color: #eaeaea;
}
.implantModalTitle{
	flex: 1 1 auto;
	font-family: "Meiryo UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.375;
	color: rgba(0, 0, 0, 0.95);
}
.implantModalHeaderClose{
	position: relative;
	width: 28px;
	height: 28px;
	flex-shrink: 0;
	padding: 4px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	cursor: pointer;
}
.implantModalHeaderCloseIcon{
	position: absolute;
	inset: 50% auto auto 50%;
	width: 20px;
	height: 20px;
	transform: translate(-50%, -50%);
}
.implantModalHeaderCloseIcon::before,
.implantModalHeaderCloseIcon::after{
	content: "";
	position: absolute;
	top: 9px;
	left: 1px;
	width: 18px;
	height: 1.5px;
	background-color: rgba(51, 51, 51, 0.95);
}
.implantModalHeaderCloseIcon::before{
	transform: rotate(45deg);
}
.implantModalHeaderCloseIcon::after{
	transform: rotate(-45deg);
}
.implantModalContent{
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 16px 16px 24px;
	overflow-y: auto;
	font-family: "Meiryo UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	background-color: #fff;
}
.implantModalBody{
	font-size: 14px;
	line-height: 1.6;
	color: rgba(0, 0, 0, 0.95);
}
.implantModalSection{
	padding-top: 8px;
}
.implantModalSectionTitle{
	font-family: "Meiryo UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.375;
	color: rgba(0, 0, 0, 0.95);
	margin-bottom: 4px;
}
.implantModalSectionLast{
	padding-bottom: 8px;
}
.implantModalFooter{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	padding: 16px;
	background-color: #eaeaea;
}
.implantModalFooterClose{
	min-width: 102px;
	height: 32px;
	padding: 0 24px;
	border: 0;
	border-radius: 32px;
	background-color: rgba(51, 51, 51, 0.95);
	font-family: "A P-OTF UD Shin Go Pr6N", "Zen Kaku Gothic New", sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: #fff;
	cursor: pointer;
}
.s1P1span2{
	display: inline-block;
	font-size: 125%;
    font-weight: 700;
	margin-top: 20px;
	line-height: 1.2em;
	padding: 4px 12px 6px;
	background-color: rgba(255, 255, 255, 0.6);
	filter: drop-shadow(0 0 3px rgba(255, 255, 255, 1))drop-shadow(0 0 3px rgba(255, 255, 255, 1))drop-shadow(0 0 3px rgba(255, 255, 255, 1));
}




@media (max-width: 1023px) {
	.s1DIV1{
		margin-bottom: 130px;
		height: 100%;
	}
	.s1Text1 {
		top: 12.7%;
		right: 8.2%;
		width: 20.9%;
	}
	.s1P1 {
		font-size: 1.42rem;
		bottom: calc(110px + env(safe-area-inset-bottom, 0px));
	}
	.implantModalPanel{
		top: 59px;
		bottom: 67px;
	}
	
	
}
@media (max-width: 499px) {
	.s1DIV1 {
        height: 100%;
    }
	.s1P1 {
		width: 91.6%;
		font-size: 4.62vw;
		letter-spacing: 0.06em;
		bottom: calc(105px + env(safe-area-inset-bottom, 0px));
	}
	.s1P1span1{
		font-size: 0.92em;
		line-height: 1.6;
		white-space: nowrap;
		padding: 0 2.05vw 1.05vw;
	}
	.s1P1span2{
		font-size: 125%;
		margin-top: 20px;
		line-height: 1.2em;
	}
	.implantModalPanel{
		top: 15.128vw;
		right: 3.6vw;
		bottom: 17.18vw;
		left: 3.6vw;
	}
	.implantModalHeader,
	.implantModalFooter{
		padding: 4.1vw;
	}
	.implantModalTitle{
		font-size: 5.13vw;
	}
	.implantModalContent{
		gap: 2.1vw;
		padding: 4.1vw 4.1vw 6.4vw;
	}
	.implantModalBody{
		font-size: 3.7vw;
		line-height: 1.6;
	}
	.implantModalSection{
		padding-top: 2.1vw;
	}
	.implantModalSectionTitle{
		font-size: 4vw;
		margin-bottom: 1vw;
	}
	.implantModalFooterClose{
		min-width: 26.2vw;
		height: 8.2vw;
		padding: 0 6.2vw;
		font-size: 4.1vw;
	}
}
/* ページ2 */
.s2Wrap{
	width: 100%;
	height: 100%;
	position: relative;
	background-image:url(../images/bg_common2.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s2Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}
.s2WrapInner{
	width: 100%;
	position: relative;
	z-index: 10;
	padding: 23px 0 0 0 ;
}
.s2WrapInner:after{
	content: "";
	width: 100%;
	display: block;
	height: 85px;
}
.s2DIV1{
	width: 100%;
    position: relative;
   	padding: 190px 0 249px 0;
	background-image: none;
	background-color: rgba(255,255,255,0);
	z-index: 10;
}
.s2DIV1 > .commonVideoBGDIV{
	height: 100%;
}
.s2DIV1 > .commonVideoBGDIV video{
	object-position: center center;
}
.s2P1{
	font-size: 1.9rem;
    color: #fff;
	letter-spacing: 0.15em;
	line-height: 1em;
	text-align: center;
	font-weight: 600;
	position: relative;
	z-index: 1;
}
.s2P1Span1{
	display: block;
	margin-bottom: 0.6em;
}
.s2P1Span2{
	display: block;
	font-size: 158%;
	color: #EBD29F;
}
.s2UL1{
	text-align: left;
	width: 90%;
    margin: -24px auto 0 auto;
	position: relative;
	z-index: 11;

}
.s2UL1 li{
	    margin-bottom: 28px;
    background-color: #fff;
    border: 1px solid #A68B54;
    background-image: url(../images/sec2_check.svg);
    background-size: 25px;
    background-position: left 18px center;
    background-repeat: no-repeat;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    height: 110px;
	font-size: 1.8rem;
	color: #000;
	line-height: 1.2em;
	text-align: left;
	font-weight: 400;
}
.s2UL1 li span{
	background-size: 60px;
	background-position: right 40px center;
	background-repeat: no-repeat;
	display: block;
	width: 100%;
	padding: 20px 0 20px 60px;
}
.s2LISpan1{
	background-image:url(../images/sec2_icon1.webp);
}
.s2LISpan2{
	background-image:url(../images/sec2_icon2.webp);
}
.s2LISpan3{
	background-image:url(../images/sec2_icon3.webp);
}
@media (max-width: 1023px) {
	.s2WrapInner {
		padding: 77px 0 0 0;
	}
	.s2DIV1 {
		padding: 158px 0 215px 0;
	}
	.s2P1 {
		font-size: 1.7rem;
	}
	.s2UL1 {
		margin: -19px auto 0 auto;
	}
	.s2UL1 li {
		margin-bottom: 24px;
		background-size: 21px;
		background-position: left 18px center;
		height: 95px;
		font-size: 1.6rem;
	}
	.s2UL1 li span {
		background-size: 52px;
		background-position: right 40px center;
		padding: 16px 0 16px 55px;
	}
	
}
@media (max-width: 499px) {
	.s2WrapInner {
		padding: 15vw 0 0 0;
	}
	.s2DIV1 {
		padding: 32vw 0 43vw 0;
	}
	.s2P1 {
		font-size: 5.3vw;
	}
	.s2UL1 {
		margin: -4vw auto 0 auto;
	}
	.s2UL1 li {
		margin-bottom: 5vw;
		background-size: 4vw;
		background-position: left 4vw center;
		height: 19vw;
		font-size: 5.1vw;
	}
	.s2UL1 li span {
		background-size: 52px;
		background-position: right 40px center;
		padding: 3vw 0 3vw 10.5vw;
	}
	
}
/* ページ3 */
.s3Wrap{
	width: 100%;
	height: 100%;
	position: relative;
	background-image:url(../images/bg_common2.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s3Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}
.s3WrapInner{
	width: 100%;
	position: relative;
	z-index: 10;
	padding: 67px 0 0 0 ;
}
.s3WrapInner:after{
	content: "";
	width: 100%;
	display: block;
	height: 85px;
}
.s3DIV1{
	width: 100%;
    position: relative;
   	height: 770px;
	z-index: 10;
	background-image:url(../images/sec3_bg.webp);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: rgba(255,255,255,0);
}
.s3HeadDIV{
	position: relative;
	
}
.s3HeadPoint{
	width: 96px;
    position: absolute;
    top: -23px;
    left: 16px;
}
.s3HeadP1{
	font-size: 2.2rem;
    color: #80642A;
    line-height: 1em;
    text-align: left;
    font-weight: 600;
    padding: 13px 17px 10px 85px;
    width: fit-content;
    background-color: #fff;
}
.s3P1{
	font-size: 1.3rem;
    color: #474747;
    letter-spacing: 0.15em;
    line-height: 1.7em;
    text-align: left;
    font-weight: 400;
    width: 80%;
    margin: -33px auto 0 auto;
    z-index: 11;
    position: relative;
}


@media (max-width: 1023px) {
	.s3WrapInner{
		padding: 111px 0 0 0;
	}
	.s3WrapInner:after{
		height: 110px;
	}
	.s3DIV1{
		height: 600px;
	}
	.s3HeadPoint{
		width: 82.68px;
        top: -21.09px;
        left: 14.28px;
	}
	.s3HeadP1{
		font-size: 1.926rem;
		padding: 10.79px 14.11px 8.3px 70.55px;
	}
	.s3P1{
		font-size: 1.102rem;
		margin: -38.11px auto 0 auto;
	}
}
@media (max-width: 499px) {
	.s3WrapInner{
		padding: 21.09vw 0 0 0;
	}
	.s3WrapInner:after{
		height: 110px;
	}
	.s3DIV1{
		height: 121.429vw;
	}
	.s3HeadPoint{
		width: 17.1392vw;
        top: -3.8271vw;
        left: 2.5232vw;
	}
	.s3HeadP1{
		font-size: 6.1432vw;
        padding: 2.8501vw 2.6809vw 2.377vw 13.4045vw;
	}
	.s3P1{
		font-size: 3.6184vw;
		margin: -7.4509vw auto 0 auto;
	}
}
/* ページ4 */
.s4Wrap{
	width: 100%;
	height: 100%;
	position: relative;
	background-image:url(../images/bg_common2.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s4Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}
.s4WrapInner{
	width: 100%;
	position: relative;
	z-index: 10;
	padding: 67px 0 0 0 ;
}
.s4WrapInner:after{
	content: "";
	width: 100%;
	display: block;
	height: 85px;
}
.s4DIV1{
	width: 100%;
    position: relative;
   	height: 650px;
	z-index: 10;
	background-image:url(../images/sec4_bg.webp);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: rgba(255,255,255,0);
}
.s4HeadDIV{
	position: relative;
	
}
.s4HeadPoint{
	width: 96px;
    position: absolute;
    top: -23px;
    left: 16px;
}
.s4HeadP1{
	font-size: 2.2rem;
    color: #80642A;
    line-height: 1em;
    text-align: left;
    font-weight: 600;
    padding: 13px 17px 10px 85px;
    width: fit-content;
    background-color: #fff;
	
}
.s4P1{
	font-size: 1.4rem;
    color: #474747;
    letter-spacing: 0.15em;
    line-height: 1.7em;
    text-align: left;
    font-weight: 600;
    width: 80%;
    margin: 24px auto 0 auto;
	z-index: 11;
	position: relative;
}


@media (max-width: 1023px) {
	.s4WrapInner{
		padding: 111px 0 0 0;
	}
	.s4WrapInner:after{
		height: 110px;
	}
	.s4DIV1{
		height: 562px;
	}
	.s4HeadPoint{
		width: 82.68px;
        top: -21.09px;
        left: 14.28px;
	}
	.s4HeadP1{
		font-size: 1.926rem;
		padding: 10.79px 14.11px 8.3px 70.55px;
	}
	.s4P1{
		font-size: 1.162rem;
		margin: 20px auto 0 auto;
	}
}
@media (max-width: 499px) {
	.s4WrapInner{
		padding: 21.09vw 0 0 0;
	}
	.s4WrapInner:after{
		height: 110px;
	}
	.s4DIV1{
		height: 113.429vw;
	}
	.s4HeadPoint{
		width: 17.1392vw;
        top: -3.8271vw;
        left: 2.5232vw;
	}
	.s4HeadP1{
		font-size: 6.1432vw;
        padding: 2.8501vw 2.6809vw 2.377vw 13.4045vw;
	}
	.s4P1{
		font-size: 3.7184vw;
		margin: 6vw auto 0 auto;
	}
}
/* ページ5 */
.s5Wrap{
	width: 100%;
	height: 100%;
	position: relative;
	background-image:url(../images/bg_common2.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s5Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}
.s5WrapInner{
	width: 100%;
	position: relative;
	z-index: 10;
	padding: 67px 0 0 0 ;
}
.s5WrapInner:after{
	content: "";
	width: 100%;
	display: block;
	height: 85px;
}
.s5DIV1{
	width: 100%;
    position: relative;
   	height: 770px;
	z-index: 10;
	background-image:url(../images/sec5_bg.png);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: rgba(255,255,255,0);
}
.s5HeadDIV{
	position: relative;
	
}
.s5HeadPoint{
	width: 96px;
    position: absolute;
    top: -23px;
    left: 16px;
}
.s5HeadP1{
	font-size: 2.2rem;
    color: #80642A;
    line-height: 1em;
    text-align: left;
    font-weight: 600;
    padding: 13px 17px 10px 85px;
    width: fit-content;
    background-color: #fff;
}
.s5P1{
	font-size: 1.4rem;
    color: #474747;
    letter-spacing: 0.15em;
    line-height: 1.7em;
    text-align: left;
    font-weight: 400;
    width: 80%;
    margin: -33px auto 0 auto;
	z-index: 11;
	position: relative;
}


@media (max-width: 1023px) {
	.s5WrapInner{
		padding: 111px 0 0 0;
	}
	.s5WrapInner:after{
		height: 110px;
	}
	.s5DIV1{
		height: 600px;
	}
	.s5HeadPoint{
		width: 82.68px;
        top: -21.09px;
        left: 14.28px;
	}
	.s5HeadP1{
		font-size: 1.926rem;
		padding: 10.79px 14.11px 8.3px 70.55px;
	}
	.s5P1{
		font-size: 1.162rem;
		margin: -38.11px auto 0 auto;
	}
}
@media (max-width: 499px) {
	.s5WrapInner{
		padding: 21.09vw 0 0 0;
	}
	.s5WrapInner:after{
		height: 110px;
	}
	.s5DIV1{
		height: 121.429vw;
	}
	.s5HeadPoint{
		width: 17.1392vw;
        top: -3.8271vw;
        left: 2.5232vw;
	}
	.s5HeadP1{
		font-size: 6.1432vw;
        padding: 2.8501vw 2.6809vw 2.377vw 13.4045vw;
	}
	.s5P1{
		font-size: 3.7184vw;
		margin: -7.4509vw auto 0 auto;
	}
}
/* ページ6 */
.s6Wrap{
	width: 100%;
	height: 100%;
	position: relative;
	background-image:url(../images/bg_common1.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s6Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}
.s6WrapInner{
	width: 100%;
	position: relative;
	z-index: 10;
	padding: 70px 0 0 0 ;
}
.s6WrapInner:after{
	content: "";
	width: 100%;
	display: block;
	height: 85px;
}
.s6DIV1{
	width: 100%;
}

.s6P1{
	font-size: 2rem;
    color: #80642A;
    letter-spacing: 0.18em;
    line-height: 1.0em;
    text-align: center;
    font-weight: 400;
}
.s6P2{
	width: 80%;
    margin: 28px auto 0 auto;
    font-size: 1.35rem;
    color: #474747;
    letter-spacing: 0.1em;
    line-height: 1.75em;
    text-align: left;
    font-weight: 400;
}
.s6IMGDIV{
	
}
.s6IMGDIV img{
	width: 87%;
	margin: 25px auto 0 auto;
	display: block;
}


@media (max-width: 1023px) {
	
	.s6WrapInner{
		padding: 111.8px 0 0 0;
	}
	.s6WrapInner:after{
		height: 110px;
	}
	.s6P1{
		font-size: 1.72rem;
	}
	.s6P2{
		margin: 24.08px auto 0 auto;
		font-size: 1.118rem;
	}
	.s6IMGDIV img{
		margin: 21.5px auto 0 auto;
	}
}
@media (max-width: 499px) {
	.s6WrapInner{
		padding: 22.36vw 0 0 0;
	}
	.s6P1{
		font-size: 5.504vw;
	}
	.s6P2{
		margin: 4.816vw auto 0 auto;
		font-size: 3.5776vw;
	}
	.s6IMGDIV img{
		margin: 4.3vw auto 0 auto;
	}
}

/* ページ7 */
.s7Wrap{
	width: 100%;
	height: 100%;
	position: relative;
	background-image:url(../images/bg_common1.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s7Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}
.s7WrapInner{
	width: 100%;
	position: relative;
	z-index: 10;
	padding: 2px 0 0 0 ;
}
.s7WrapInner:after{
	content: "";
	width: 100%;
	display: block;
	height: 85px;
}
.s7DIV1{
	width: 100%;
	height: 935px;
	background-image:url(../images/sec7_bg.png);
	background-size: 100%;
	background-position: top center;
	background-repeat: no-repeat;
	position: relative;
}
.s7DIV2{
	width: 91%;
	border: 1px solid #A68B54;
	position: absolute;
	bottom: 0;
	left: 50%;
    transform: translateX(-50%);
	padding: 40px 36px 44px 36px;
	background-color: #fff;
}

.s7P1{
	    font-size: 2rem;
    color: #80642A;
    letter-spacing: 0.1em;
    line-height: 1.0em;
    text-align: center;
    font-weight: 400;
}
.s7P2{
    margin: 36px auto 0 auto;
    font-size: 1.3rem;
    color: #474747;
    letter-spacing: 0.1em;
    line-height: 1.85em;
    text-align: left;
    font-weight: 400;
}


@media (max-width: 1023px) {
	.s7WrapInner{
		padding: 53.32px 0 0 0;
	}
	.s7WrapInner:after{
		height: 110px;
	}
	.s7DIV1{
		height: 804.1px;
	}
	.s7DIV2{
		border: 0.86px solid #A68B54;
		padding: 34.4px 30.96px 37.84px 30.96px;
	}
	.s7P1{
		font-size: 1.72rem;
	}
	.s7P2{
		margin: 30.96px auto 0 auto;
		font-size: 1.118rem;
	}
	
}
@media (max-width: 499px) {
	.s7WrapInner{
		padding: 10.664vw 0 0 0;
	}
	.s7WrapInner:after{
		height: 110px;
	}
	.s7DIV1{
		height: 160.82vw;
	}
	.s7DIV2{
		border: 0.172vw solid #A68B54;
		padding: 6.88vw 6.192vw 7.568vw 6.192vw;
	}
	.s7P1{
		font-size: 5.504vw;
	}
	.s7P2{
		margin: 6.192vw auto 0 auto;
		font-size: 3.5776vw;
	}
}

/* ページ8 */
.s8Wrap{
	width: 100%;
	height: 100%;
	position: relative;
	background-image:url(../images/bg_common1.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s8Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}
.s8WrapInner{
	width: 100%;
	position: relative;
	z-index: 10;
	padding: 33px 0 0 0 ;
}
.s8WrapInner:after{
	content: "";
	width: 100%;
	display: block;
	height: 85px;
}
.s8DIV1{
	width: 100%;
	height: 901px;
	background-image:url(../images/sec8_bg.webp);
	background-size: 100%;
	background-position: top center;
	background-repeat: no-repeat;
	position: relative;
}
.s8DIV2{
	width: 91%;
	border: 1px solid #A68B54;
	position: absolute;
	bottom: 0;
	left: 50%;
    transform: translateX(-50%);
	padding: 50px 36px 52px 36px;
	background-color: #fff;
}

.s8P1{
	font-size: 2rem;
    color: #80642A;
    letter-spacing: 0.1em;
    line-height: 1.0em;
    text-align: center;
    font-weight: 400;
	border-bottom: 1px solid #80642A;
	width: fit-content;
	margin: auto;
	padding-bottom: 8px;
}
.s8P2{
    margin: 37px auto 0 auto;
    font-size: 1.3rem;
    color: #474747;
    letter-spacing: 0.1em;
    line-height: 1.85em;
    text-align: left;
    font-weight: 400;
}
.s8P2_span1{
	display: block;
}
.s8P2_span2{
	display: block;
	margin-top: 22px;
}

@media (max-width: 1023px) {
	.s8WrapInner{
		padding: 77.32px 0 0 0;
	}
	.s8WrapInner:after{
		height: 110px;
	}
	.s8DIV1{
		height: 781.1px;
	}
	.s8DIV2{
		border: 0.86px solid #A68B54;
        padding: 42.4px 30.96px 40.84px 30.96px;
	}
	.s8P1{
		font-size: 1.72rem;
	}
	.s8P2{
		margin: 30.96px auto 0 auto;
		font-size: 1.118rem;
	}
	
}
@media (max-width: 499px) {
	.s8WrapInner{
		padding: 15.664vw 0 0 0;
	}
	.s8WrapInner:after{
		height: 110px;
	}
	.s8DIV1{
		height: 155.82vw;
	}
	.s8DIV2{
		border: 0.172vw solid #A68B54;
		padding: 8.38vw 6.192vw 8.068vw 6.192vw;
	}
	.s8P1{
		font-size: 5.504vw;
	}
	.s8P2{
		margin: 6.192vw auto 0 auto;
		font-size: 3.5776vw;
	}
}

/* ページ9 */
.s9Wrap{
	width: 100%;
	height: 100%;
	position: relative;
	background-image:url(../images/bg_common1.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s9Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}
.s9WrapInner{
	width: 100%;
	position: relative;
	z-index: 10;
	padding: 78px 0 0 0 ;
}
.s9WrapInner:after{
	content: "";
	width: 100%;
	display: block;
	height: 85px;
}
.s9DIV1{
	width: 100%;
	
	position: relative;
}
.s9P1{
	font-size: 2rem;
    color: #80642A;
    letter-spacing: 0.18em;
    line-height: 1.0em;
    text-align: center;
    font-weight: 400;
	width: fit-content;
	margin: auto;
	background-image:url(../images/sec9_voice_left.png);
	background-size: 32px;
	background-position: left center;
	background-repeat: no-repeat;
	padding-left: 42px;
}
.s9P1 span{
	
	background-image:url(../images/sec9_voice_right.png);
	background-size: 32px;
	background-position: right center;
	background-repeat: no-repeat;
	padding-right: 42px;
}
.s9IMG1{
	width: 100%;
	display: block;
	height: auto;
	margin: 31px auto 0 auto;
}
.s9P2{
    margin: 37px auto 0 auto;
    font-size: 1.3rem;
    color: #474747;
    letter-spacing: 0.2em;
    line-height: 1.85em;
    text-align: left;
    font-weight: 600;
}
.s9LI1{
	width: 80%;
	margin: 45px auto;
}
.s9P10{
	font-size: 1.5rem;
	color: #80642A;
	line-height: 1em;
	text-align: left;
	font-weight: normal;
}
.s9P11{
	font-size: 1.5rem;
	color: #474747;
	line-height: 1.6em;
	text-align: left;
	font-weight: normal;
	margin-top: 32px;
}

@media (max-width: 1023px) {
	.s9WrapInner{
		padding: 118.68px 0 0 0;
	}
	.s9WrapInner:after{
		height: 73.1px;
	}
	.s9P1{
		font-size: 1.72rem;
		background-size: 27.52px;
		padding-left: 36.12px;
	}
	.s9P1 span{
		background-size: 27.52px;
		padding-right: 36.12px;
	}
	.s9IMG1{
		margin: 26.66px auto 0 auto;
	}
	.s9P2{
		margin: 31.82px auto 0 auto;
		font-size: 1.118rem;
	}
	.s9LI1{
		margin: 38.7px auto;
	}
	.s9P10{
		font-size: 1.29rem;
	}
	.s9P11{
		font-size: 1.29rem;
		margin-top: 27.52px;
	}
	
}
@media (max-width: 499px) {
	.s9WrapInner{
		padding: 23.736vw 0 0 0;
	}
	.s9WrapInner:after{
		height: 14.62vw;
	}
	.s9P1{
		font-size: 5.504vw;
		background-size: 5.504vw;
		padding-left: 7.224vw;
	}
	.s9P1 span{
		background-size: 5.504vw;
		padding-right: 7.224vw;
	}
	.s9IMG1{
		margin: 5.332vw auto 0 auto;
	}
	.s9P2{
		margin: 6.364vw auto 0 auto;
		font-size: 3.5776vw;
	}
	.s9LI1{
		margin: 7.74vw auto;
	}
	.s9P10{
		font-size: 4.128vw;
	}
	.s9P11{
		font-size: 4.128vw;
		margin-top: 5.504vw;
	}
}

/* ページ10 */
.s10Wrap{
	width: 100%;
	height: 100%;
	position: relative;
	background-image:url(../images/bg_common1.webp);
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	overflow-y: scroll;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 11 */
}
.s10Wrap::-webkit-scrollbar {
	display: none; /* WebKit */
}
.s10WrapInner{
	width: 100%;
    position: relative;
    z-index: 10;
   background-image: url(../images/sec10_head.webp);
    background-size: 100%;
    background-position: top center;
    background-repeat: no-repeat;
}
.s10WrapInner:after{
	content: "";
	width: 100%;
	display: block;
	height: 85px;
}
.s10DIV1{
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	padding: 0 0 120px 0;
}
.s10HeadDIV{
	width: 100%;
	height: 140px;
}
.s10P1{
	font-size: 1.8rem;
    color: #474747;
    line-height: 1.0em;
    text-align: center;
    font-weight: 400;
    padding: 64px 0 0 0;
    letter-spacing: 0.05em;
}
.s10Content{
	width: 92%;
	margin: 0 auto 0 auto;
	padding: 30px 48px 30px 48px;
	background-color: rgba(255,255,255,0.9);
	border: 1px solid #A68B54;

}
.s10P3{
	font-size: 1.4rem;
    color: #474747;
    line-height: 1.4em;
    text-align: left;
    font-weight: 400;
    letter-spacing: 0.1em;
    margin-top: 12px;
}
.s10P4{
	font-size: 1.5rem;
	color: #80642A;
	line-height: 1.2em;
	text-align: left;
	font-weight: 400;
	letter-spacing: 0.05em;
}
.s10P4_2{
	margin-top: 32px;
}
.s10P5{
	font-size: 1.4rem;
    color: #474747;
    line-height: 1.45em;
    text-align: left;
    font-weight: normal;
    margin-top: 9px;
    letter-spacing: 0.05em;
}
.s10MapDIV{
	width: 100%;
	    margin: 43px auto 0 auto;
}
.s10MapDIV iframe{
	width: 100%;
	height: 280px;
}
@media (max-width: 1023px) {
	.s10WrapInner:after{
		height: 110px;
	}
	.s10DIV1{
		padding: 0 0 103.2px 0;
	}
	.s10HeadDIV{
		height: 163.4px;
	}
	.s10P1{
		font-size: 1.548rem;
		padding: 98.04px 0 0 0;
	}
	.s10Content{
		padding: 25.8px 41.28px 25.8px 41.28px;
		border: 0.86px solid #A68B54;
	}
	.s10P3{
		font-size: 1.204rem;
		margin-top: 10.32px;
	}
	.s10P4{
		font-size: 1.29rem;
	}
	.s10P4_2{
		margin-top: 27.52px;
	}
	.s10P5{
		font-size: 1.204rem;
		margin-top: 7.74px;
	}
	.s10MapDIV{
		margin: 36.98px auto 0 auto;
	}
	.s10MapDIV iframe{
		height: 240.8px;
	}
}
@media (max-width: 499px) {
	.s10WrapInner:after{
		height: 22vw;
	}
	.s10DIV1{
		padding: 0 0 20.64vw 0;
	}
	.s10HeadDIV{
		height: 32.68vw;
	}
	.s10P1{
		font-size: 4.9536vw;
		padding: 19.608vw 0 0 0;
	}
	.s10Content{
		padding: 5.16vw 8.256vw 5.16vw 8.256vw;
		border: 0.172vw solid #A68B54;
	}
	.s10P3{
		font-size: 3.8528vw;
		margin-top: 2.064vw;
	}
	.s10P4{
		font-size: 4.128vw;
	}
	.s10P4_2{
		margin-top: 5.504vw;
	}
	.s10P5{
		font-size: 3.8528vw;
		margin-top: 1.548vw;
	}
	.s10MapDIV{
		margin: 7.396vw auto 0 auto;
	}
	.s10MapDIV iframe{
		height: 48.16vw;
	}
}


/* ========================================
   スワイプシステム共通スタイル
   ======================================== */
.swipeViewport{
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.swipeTrack{
	display: flex;
	flex-direction: column;
	width: 100%;
	will-change: transform;
}
.swipeSlide{
	flex-shrink: 0;
	width: 100%;
	height: 100vh;
	height: 100dvh;
	overflow: hidden;
}
.swipeSlide > .swipe-scrollable{
	width: 100%;
	height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
}
.swipeLoading{
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(255,255,255,0.95);
	font-size: 1rem;
	color: #555;
	z-index: 10;
}
.swipeStatus{
	position: absolute;
	right: 24px;
	bottom: 20px;
	padding: 6px 18px;
	border-radius: 999px;
	background-color: rgba(255,255,255,0.92);
	font-size: 0.9rem;
	font-weight: 600;
	color: #A68B54;
	z-index: 50;
	box-shadow: 0 10px 30px rgba(0,0,0,0.15);
	cursor: pointer;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
}
.swipeStatus:active {
	opacity: 0.85;
}
.swipeStatusPagination {
	display: block;
}
.swipeStatusButtons {
	position: absolute;
	bottom: 100%;
	right: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-bottom: 12px;
	visibility: hidden;
	pointer-events: none;
}
.swipeStatus.is-open .swipeStatusButtons {
	visibility: visible;
	pointer-events: auto;
}
.swipeStatusBtn {
	padding: 8px 14px;
	border-radius: 999px;
	background-color: rgba(255, 255, 255, 0.95);
	color: #A68B54;
	font-size: 0.8rem;
	font-weight: 600;
	white-space: nowrap;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	cursor: pointer;
	transition: background-color 0.2s, transform 0.2s, box-shadow 0.2s;
	border: none;
	outline: none;
}
.swipeStatusBtn:hover {
	background-color: #fff;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}
.swipeStatusBtn:active {
	background-color: #f5f0e8;
}
.swipeStatusBtn.is-active {
	background-color: #A68B54;
	color: #fff;
	box-shadow: 0 4px 14px rgba(166, 139, 84, 0.4);
}
.swipeStatusBtn.is-active:hover {
	background-color: #8f7748;
}
.swipeStatusBtn {
	opacity: 0;
	transform: translateY(8px);
}
.swipeStatus.is-open .swipeStatusBtn {
	animation: swipeStatusBtnIn 0.25s ease forwards;
}
.swipeStatus.is-open .swipeStatusBtn:nth-child(1) { animation-delay: 180ms; }
.swipeStatus.is-open .swipeStatusBtn:nth-child(2) { animation-delay: 160ms; }
.swipeStatus.is-open .swipeStatusBtn:nth-child(3) { animation-delay: 140ms; }
.swipeStatus.is-open .swipeStatusBtn:nth-child(4) { animation-delay: 120ms; }
.swipeStatus.is-open .swipeStatusBtn:nth-child(5) { animation-delay: 100ms; }
.swipeStatus.is-open .swipeStatusBtn:nth-child(6) { animation-delay: 80ms; }
.swipeStatus.is-open .swipeStatusBtn:nth-child(7) { animation-delay: 60ms; }
.swipeStatus.is-open .swipeStatusBtn:nth-child(8) { animation-delay: 40ms; }
.swipeStatus.is-open .swipeStatusBtn:nth-child(9) { animation-delay: 20ms; }
.swipeStatus.is-open .swipeStatusBtn:nth-child(10) { animation-delay: 0ms; }
@keyframes swipeStatusBtnIn {
	from {
		opacity: 0;
		transform: translateY(8px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@media (max-width: 767px) {
	.swipeStatus{
		right: 16px;
		bottom: calc(90px + env(safe-area-inset-bottom, 0px));
		font-size: 0.8rem;
		padding: 5px 14px;
	}
	.swipeStatusButtons {
		gap: 6px;
		padding-bottom: 10px;
	}
	.swipeStatusBtn {
		padding: 6px 12px;
		font-size: 0.7rem;
	}
}
.swipeNoscriptMessage{
	padding: 32px 24px;
	background-color: rgba(255,255,255,0.97);
	border-radius: 16px;
	margin: 24px auto;
	width: calc(100% - 24px);
	color: #333;
	box-shadow: 0 25px 50px rgba(0,0,0,0.08);
}
.swipeNoscriptMessage ul{
	margin-top: 12px;
}
.swipeNoscriptMessage li{
	margin-bottom: 4px;
}
