@charset "utf-8";

/* CSS information ===================================================

	 file name : style.css
	style info : コンテンツ部分スタイルシート

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

/*----------------------------------------------------------
/* body サイト全体
----------------------------------------------------------*/
* {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
}
body {
	margin: 0 auto;
	font-family: "Noto Serif JP", serif;
	font-feature-settings: "palt";
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	color: #784B37;
	letter-spacing: -0.05em;

}
.page_wp {
	position: relative;
	max-width: 1920px;
	margin: 0 auto;
	overflow: hidden;
	background: url("../img/common_bg01.png") repeat-y center top / 1920px auto;
	/*background-image: url("../img/common_bg01.png"), url("../img/common_bg02.png");
	background-repeat: repeat-y, repeat-y;
	background-position: center top, center top;
	background-size: 100% auto, 100% auto;*/
}

@media screen and (max-width: 750px){
.page_wp {
	background: url("../img/common_bg01-sp.png") repeat-y center top / 100% auto;
}

}

/*
h2, h3, h4, h5, h6 {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
}
figure {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
p {
	font-family: "Noto Sans JP", sans-serif;
}
*/
img {
	max-width: 100%;
	height: auto;
}
a {
	color: #2690D2;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
button, 
input[type="button"], 
input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0;
}
hr {
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
.img {
	line-height: 0;
}
a, 
button, 
input[type="button"], 
input[type="submit"] {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-filter: brightness(1.0);
	-moz-filter: brightness(1.0);
	-ms-filter: brightness(1.0);
	filter: brightness(1.0);
}

a:hover, 
button:hover, 
input[type="button"]:hover, 
input[type="submit"]:hover {
	-webkit-filter: brightness(1.2);
	-moz-filter: brightness(1.2);
	-ms-filter: brightness(1.2);
	filter: brightness(1.2);
}

.img, 
figure {
	text-align: center;
	line-height: 0;
}


@media screen and (min-width: 751px){
body {
	width: 100%;
	overflow-y: scroll;
}
a:hover {
	color: #DC4A3D;
	text-decoration: none;
}
.sp_vis {
	display: none;
}
}

@media screen and (max-width: 750px){
body {
	min-width: 320px;
	-webkit-text-size-adjust: 100%;
	background-size: calc(1920px * 0.5) auto;

}
img {
	max-width: 100%;
	height: auto;
}
.pc_vis {
	display: none;
}
}

/*----------------------------------------------------------
/* 汎用スタイル
----------------------------------------------------------*/
.aw {
	display: inline-block;
}
/*
.common_btn {
	width: clamp(337px * 0.5, 28.80vw, 337px);
	height: clamp(126px * 0.5, 10.76vw, 126px);
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
*/
/*
.common_btn a {
	width: clamp(480px * 0.75, 30.57vw, 480px);
	height: clamp(104px * 0.75, 6.62vw, 104px);
	text-decoration: none;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	line-height: clamp(104px * 0.75, 6.62vw, 104px);
	color: #F76C70;
	background: url("../img/header_btn01.png") no-repeat center center / contain;
	display: block;
	-webkit-transition: all 0.3s;
}
.common_btn a:hover{
	transform: scale(1.05, 1.05);
	transition: all 0.3s;
}
.common_btn span {
	font-size: clamp(1.8rem, 1.52vw, 2.4rem);
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.105em;
	display: inline-block;
	white-space: nowrap;
}
.common_btn.red a {
	color: #FFF;
	background-image: url("../img/benefit_btn01.png");
}
.common_btn.red a::before {
	border-color: #FFF;
}
*/


/*
@media screen and (max-width: 750px) {
.common_btn a {
	width: clamp(480px * 0.6, 64vw, 480px);
	height: clamp(104px * 0.6, 13.86vw, 104px);
	line-height: clamp(104px * 0.6, 13.86vw, 104px);
}
.common_btn span {
	font-size: clamp(1.8rem, 4vw, 3.0rem);
}
}
*/

/*----------------------------------------------------------
/* .floating
----------------------------------------------------------*/
.floating {
	position: fixed;
    visibility: visible;
    opacity: 1;
}
.floating.is-hidden {
	visibility: hidden;
	opacity: 0;
}
.floating .common_btn {
	margin-top: 0;
	text-align: center;
}
.floating .common_btn a {
	display: inline-block;
}

@media screen and (min-width: 751px) {
.floating {
	position: fixed;
	top: 50%;
	right: 0;
	width: clamp(110px * 0.75, 11.0vh, 110px);
    transform: translateY(-50%);
	z-index: 100;
}
.floating .common_btn a {
	display: block;
}

/*
.floating .common_btn {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.floating .common_btn a {
	width: clamp(85px * 0.75, 8.5vh, 85px);
	height: clamp(488px * 0.75, 48.8vh, 488px);

	margin: auto 0;
	padding-left: 10px;
	text-align: center;
	line-height: calc(clamp(85px * 0.75, 8.5vh, 85px) - 10px);
	background-image: url("../img/common_btn01.png");
	background-position: 100% 100%;
}
.floating .common_btn span {
	position: relative;
	margin: 0 auto;
	padding-top: clamp(55px * 0.75, 5.5vh, 55px);
	font-size: clamp(2.2rem, 3.5vh, 3.5rem);
	letter-spacing: normal;
}
.floating .common_btn span::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: auto;
	width: clamp(49px * 0.75, 4.9vh, 49px);
	height: clamp(49px * 0.75, 4.9vh, 49px);
	margin: 0 auto;
	background: url("../img/common_ico01.svg") no-repeat center center / contain;
}
*/
}

@media screen and (max-width: 750px) {
.floating {
	position: fixed;
	top: auto;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
    transform: none;
	background-color: rgba(255,255,255,0.5);
    visibility: visible;
	z-index: 100;
}
.floating .common_btn a {
	width: calc(459px * 0.5);
	height: calc(170px * 0.5);
	margin-bottom: -8px;
}

/*
.floating .common_btn {
	padding: 12px 20px;
}
.floating .common_btn a {
	width: clamp(460px * 0.5, 61.33vw, 460px);
	height: clamp(99px * 0.5, 13.2vw, 99px);
	line-height: clamp(99px * 0.5, 13.2vw, 99px);
	background-image: url("../img/common_btn01-sp.png");
}
.floating .common_btn span {
	font-size: clamp(1.8rem, 4vw, 3.0rem);
}
*/
}

/*
@media screen and (max-width: 320px) {
.floating .common_btn span {
	font-size: 2.0rem;
}
}
*/

/*----------------------------------------------------------
/* .header
----------------------------------------------------------*/
.top-bg {
	position: relative;
	padding-top: clamp(50px, 8.54vw, 100px);
	background: url("../img/common_bg02.png") repeat-y center top / 1920px auto;
}
.top-bg::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 1920px;
	height: 884px;
	/*padding-top: 46.041%;*/
	margin: 0 auto;
	background: url("../img/common_bg03.png") no-repeat center bottom / 100% auto;
	transform: translateX(-50%);
	pointer-events: none;
	display: block;
}

@media screen and (max-width: 1170px) {
.top-bg::after {
	left: 0;
	right: 0;
	width: clamp(1170px * 0.5, calc(1170 / 1170 * 100vw), 1170px);
	height: clamp(884px * 0.5, calc(884 / 1170 * 100vw), 884px);
	background-image: url("../img/common_bg03-tb.png");
	transform: translateX(0);
}
}

@media screen and (max-width: 750px) {
.top-bg {
	padding-top: clamp(50px * 0.5, calc(50 / 750 * 100vw), 50px);
	background: url("../img/common_bg02-sp.png") repeat-y center top / 100% auto;
}
.top-bg::after {
	width: clamp(750px * 0.5, calc(750 / 750 * 100vw), 750px);
	height: clamp(346px * 0.5, calc(346 / 750 * 100vw), 346px);
	background-image: url("../img/common_bg03-sp.png");
}
}

.header {
}
.header__inner {
	max-width: 1170px;
	padding-left: clamp(20px, 3.41vw, 40px);
	padding-right: clamp(20px, 3.41vw, 40px);
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header__logo {
	width: clamp(180px * 0.5, 15.38vw, 180px);
}
.header__limited {
	margin-left: auto;
	margin-right: clamp(10px, 1.7vw, 20px);
	padding: 5px 10px;
	font-size: clamp(1.4rem, 2.39vw, 2.8rem);
	font-weight: 700;
	line-height: 1.2;
	color: #eacd76;
	border: 1px solid #eacd76;
}
.header__title {
	font-size: clamp(1.7rem, 2.9vw, 3.4rem);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.05em;
	color: #eacd76;

}

@media screen and (max-width: 750px) {
.header__inner {
	padding-left: clamp(50px * 0.5, calc(50 / 750 * 100vw), 50px);
	padding-right: clamp(50px * 0.5, calc(50 / 750 * 100vw), 50px);
	flex-wrap: wrap;
}
.header__logo {
	width: clamp(250px * 0.5, calc(250 / 750 * 100vw), 250px);
}
.header__limited {
	margin-right: 0;
	padding: clamp(5px * 0.5, calc(5 / 750 * 100vw), 5px) clamp(10px * 0.5, calc(10 / 750 * 100vw), 10px);
	font-size: clamp(3.2rem * 0.5, calc(32 / 750 * 100vw), 3.2rem);
}
.header__title {
	width: 100%;
	margin-top: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	font-size: clamp(4.6rem * 0.5, calc(46 / 750 * 100vw), 4.6rem);
	text-align: center;
	letter-spacing: -0.05em;
}
}

.hero {
	margin-top: calc(clamp(10px, 1.7vw, 20px) * -1);
}
@media screen and (max-width: 750px) {
.hero {
	margin-top: 0;
}
}


.top-coupon {
	/*padding-bottom: clamp(185px * 0.5, 15.81vw, 185px);*/
	/*padding-bottom: clamp(590px * 0.5, 30.72vw, 590px);*/
	background: url("../img/coupon_bg01.png") no-repeat center top / clamp(1258px * 0.5, 107.52vw, 1258px) auto;
}
.top-coupon__inner {
	position: relative;
	max-width: 1258px;
	margin-left: auto;
	margin-right: auto;
}


@media screen and (min-width: 1171px) {
.top-coupon {
	padding-bottom: 590px;
}
}
@media screen and (max-width: 1170px) {
.top-coupon {
	padding-bottom: clamp(590px * 0.5, 50.42vw, 590px);
	background: url("../img/coupon_bg01-tb.png") no-repeat center top / 100% auto;
}
}
@media screen and (max-width: 750px) {
.top-coupon {
	/*padding-bottom: clamp(250px * 0.5, calc(250 / 750 * 100vw), 250px);*/
	padding-bottom: clamp(330px * 0.5, calc(330 / 750 * 100vw), 330px);
	background: url("../img/coupon_bg01-sp.png") no-repeat center top / 100% auto;
}
}
@media screen and (max-width: 550px) {
.top-coupon {
	padding-bottom: clamp(230px * 0.5, calc(230 / 550 * 100vw), 230px);
}
}
@media screen and (max-width: 450px) {
.top-coupon {
	padding-bottom: clamp(180px * 0.5, calc(180 / 450 * 100vw), 180px);
}
}
@media screen and (max-width: 375px) {
.top-coupon {
	padding-bottom: clamp(140px * 0.5, calc(140 / 375 * 100vw), 140px);
}
}

.top-coupon__price {
	position: relative;
	width: clamp(940px * 0.25, calc(940 / 1170 * 100vw), 940px);
	margin: 0 auto clamp(5px * 0.5, 0.42vw, 5px);
	padding-top: clamp(130px * 0.5, calc(130 / 1170 * 100vw), 130px);
	text-align: center;
}
.top-coupon__catch {
	font-size: clamp(1.6rem, 2.73vw, 3.2rem);
	font-weight: 800;
	text-align: center;
	line-height: 1.4;
	color: #55360f;
}
.top-coupon__txt {
	font-size: clamp(1.4rem, 1.45vw, 1.7rem);
	font-weight: 500;
	text-align: center;
	line-height: 1.4;
	color: #55360f;
}
.top-coupon__txt em {
	padding-left: 2px;
	padding-right: 2px;
}
.top-coupon__txt b {
	font-size: clamp(1.8rem, calc(24 / 1170 * 100vw), 2.4rem);
	font-weight: 500;
	text-align: center;
}
.top-coupon__btn {
	position: relative;
	width: clamp(337px * 0.5, calc(337 / 1170 * 100vw), 337px);
	height: clamp(126px * 0.5, calc(126 / 1170 * 100vw), 126px);
	margin-top: clamp(10px * 0.5, calc(10 / 1170 * 100vw), 10px);
	margin-left: auto;
	margin-right: auto;
}
.top-coupon__btn a {
	display: block;
}
.top-coupon__btn a img {
	transition: .3s cubic-bezier(0.79,0.14,0.15,0.86);
}
.top-coupon__btn a:hover img{
	transform: scale(1.1,1.1);
	transition: .3s cubic-bezier(0.79,0.14,0.15,0.86);
}



@media screen and (max-width: 750px) {
.top-coupon__price {
	width: clamp(619px * 0.5, calc(619 / 750 * 100vw), 619px);
	margin: 0 auto clamp(30px * 0.5, calc(30 / 750 * 100vw), 30px);
	padding-top: clamp(80px * 0.5, calc(80 / 750 * 100vw), 80px);
}
.top-coupon__catch {
	padding-bottom: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	font-size: clamp(3.8rem * 0.5, calc(38 / 750 * 100vw), 3.8rem);
	line-height: 1.18;
}
.top-coupon__txt {
	position: relative;
	padding-top: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	font-size: clamp(2.5rem * 0.5, calc(25 / 750 * 100vw), 2.5rem);
}
.top-coupon__txt b {
	font-size: clamp(3.5rem * 0.5, calc(35 / 750 * 100vw), 3.5rem);
	font-weight: 700;
}
.top-coupon__txt::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: clamp(498px * 0.5, calc(498 / 750 * 100vw), 498px);
	height: clamp(3px * 0.5, calc(3 / 750 * 100vw), 3px);
	margin: 0 auto;
	background: url("../img/coupon_line01.png") no-repeat center center / contain;
	display: block;
}

.top-coupon__btn {
	width: clamp(459px * 0.5, calc(459 / 750 * 100vw), 459px);
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
}
.top-coupon__btn a:hover img{
	transform: scale(1.05,1.05);
}
}




/* アニメーション */
.top-coupon__twinkle01, 
.top-coupon__twinkle02, 
.top-coupon__twinkle04, 
.top-coupon__twinkle03, 
.top-coupon__twinkle05, 
.top-coupon__twinkle06, 
.top-coupon__twinkle07 {
	content: "";
	position: absolute;
	margin: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	pointer-events: none;
	display: block;
}
.top-coupon__twinkle01, 
.top-coupon__twinkle02, 
.top-coupon__twinkle04, 
.top-coupon__twinkle05, 
.top-coupon__twinkle07 {
	background-image: url("../img/common_twinkle01.png");
	transform: scale(.6) rotate(0deg);
	animation: star 5s linear infinite;
	transform-origin: center;
	opacity: 0;
}
@keyframes star{
	0%{
		opacity: 0;
		transform: scale(.6) rotate(0deg);
	}
	80%{
		opacity: 0;
		transform: scale(.6) rotate(0deg);
	}
	88%{
		opacity: 1;
		transform: scale(1.05) rotate(40deg);
	}
	94%{
		opacity: .9;
		transform: scale(1) rotate(70deg);
	}
	100%{
		opacity: 0;
		transform: scale(.6) rotate(120deg);
	}
}

.top-coupon__twinkle03, 
.top-coupon__twinkle06 {
	background-image: url("../img/common_twinkle02.png");
	animation: circle 2.5s ease-in-out infinite;
	opacity: .5;
}
@keyframes circle {
	0% {	opacity:.5; }
	50% {	opacity:1; }
	100% {	opacity:.5; }
}
.top-coupon__twinkle01 {
	top: -8.5%;
	left: -19.5%;
	/*
	width: clamp(210px * 0.5, calc(210 / 1170 * 100vw), 210px);
	height: clamp(210px * 0.5, calc(210 / 1170 * 100vw), 210px);
	*/
	width: min(calc(210 / 1170 * 100vw), 210px);
	height: min(calc(210 / 1170 * 100vw), 210px);
	animation-delay: 0s;
}

.top-coupon__twinkle02 {
	top: 5%;
	left: 19%;
	/*
	width: clamp(215px * 0.5, calc(215 / 1170 * 100vw), 215px);
	height: clamp(215px * 0.5, calc(215 / 1170 * 100vw), 215px);
	*/
	width: min(calc(215 / 1170 * 100vw), 215px);
	height: min(calc(215 / 1170 * 100vw), 215px);
	animation-delay: 3.5s;
	
}
.top-coupon__twinkle03 {
	left: -2.5%;
	bottom: 36%;
	/*
	width: clamp(61px * 0.5, calc(61 / 1170 * 100vw), 61px);
	height: clamp(61px * 0.5, calc(61 / 1170 * 100vw), 61px);
	*/
	width: min(calc(61 / 1170 * 100vw), 61px);
	height: min(calc(61 / 1170 * 100vw), 61px);
	animation-delay: .4s; 
}
.top-coupon__twinkle04 {
	left: 5%;
	bottom: 34%;
	/*
	width: clamp(250px * 0.5, calc(250 / 1170 * 100vw), 250px);
	height: clamp(250px * 0.5, calc(250 / 1170 * 100vw), 250px);
	*/
	width: min(calc(250 / 1170 * 100vw), 250px);
	height: min(calc(250 / 1170 * 100vw), 250px);
	animation-delay: 2s;
}
.top-coupon__twinkle05 {
	right: 2%;
	bottom: 34%;
	/*
	width: clamp(250px * 0.5, calc(250 / 1170 * 100vw), 250px);
	height: clamp(250px * 0.5, calc(250 / 1170 * 100vw), 250px);
	*/
	width: min(calc(250 / 1170 * 100vw), 250px);
	height: min(calc(250 / 1170 * 100vw), 250px);
	animation-delay: 2.5s;
}
.top-coupon__twinkle06 {
	right: 19%;
	bottom: 5%;
	/*
	width: clamp(43px * 0.5, calc(43 / 1170 * 100vw), 43px);
	height: clamp(43px * 0.5, calc(43 / 1170 * 100vw), 43px);
	*/
	width: min(calc(43 / 1170 * 100vw), 43px);
	height: min(calc(43 / 1170 * 100vw), 43px);
	animation-delay: .8s; 
}
.top-coupon__twinkle07 {
	top: -80%;
	left: -30%;
	/*
	width: clamp(250px * 0.5, calc(250 / 1170 * 100vw), 250px);
	height: clamp(250px * 0.5, calc(250 / 1170 * 100vw), 250px);
	*/
	width: clamp(250px * 0.5, calc(250 / 1170 * 100vw), 250px);
	height: clamp(250px * 0.5, calc(250 / 1170 * 100vw), 250px);
	animation-delay: 1s;
}

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

.top-coupon__twinkle01 {
	top: -10%;
	left: -17.5%;
}
.top-coupon__twinkle02 {
	top: 2%;
	left: 5%;
}
.top-coupon__twinkle03 {
	left: -2.5%;
	bottom: 35.5%;
}
.top-coupon__twinkle04 {
	left: 6%;
	bottom: 34%;
}
.top-coupon__twinkle05 {
	right: 2.5%;
	bottom: 34%;
}
.top-coupon__twinkle06 {
	right: 9%;
	bottom: 8.5%;
}
.top-coupon__twinkle07 {
	top: -80%;
	left: -25%;
}
/*.top-coupon__twinkle01{
	top: calc(-60 / 750 * 100vw);
	left: calc(-130 / 750 * 100vw);
}

.top-coupon__twinkle02{
	top: calc(10 / 750 * 100vw);
	left: calc(40 / 750 * 100vw);
}

.top-coupon__twinkle03{
	left: calc(-20 / 750 * 100vw);
	bottom: calc(230 / 750 * 100vw);
}

.top-coupon__twinkle04{
	left: calc(50 / 750 * 100vw);
	bottom: calc(220 / 750 * 100vw);
}

.top-coupon__twinkle05{
	right: calc(20 / 750 * 100vw);
	bottom: calc(220 / 750 * 100vw);
}

.top-coupon__twinkle06{
	right: calc(70 / 750 * 100vw);
	bottom: calc(60 / 750 * 100vw);
}

.top-coupon__twinkle07{
	top: calc(-500 / 750 * 100vw);
	left: calc(-180 / 750 * 100vw);
}
*/

}

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

/*
.top-coupon__twinkle01 {
	top: -20%;
	left: -23%;
}
*/

/*
.top-coupon__twinkle04 {
	left: 4%;
	bottom: 32%;
}
.top-coupon__twinkle05 {
	right: 4%;
	bottom: 28%;
}
.top-coupon__twinkle06 {
	right: 9%;
	bottom: 8.5%;
}
.top-coupon__twinkle07 {
	top: -80%;
	left: -25%;
}
*/
}


.offer {
	position: relative;
	margin-top: calc(clamp(240px, 41.02vw, 480px) * -1);
	padding-bottom: clamp(90px, 15.38vw, 180px);
	z-index: 10;
}
@media screen and (max-width: 750px) {
.offer {
	margin-top: calc(clamp(90px * 0.5, calc(90 / 750 * 100vw), 90px) * -1);
	padding-bottom: clamp(120px * 0.5, calc(120 / 750 * 100vw), 120px);
}
}
.offer__inner {
	padding-left: clamp(20px, 3.41vw, 40px);
	padding-right: clamp(20px, 3.41vw, 40px);
}
.offer__title {
	max-width: clamp(427px * 0.5, calc(427 / 1170 * 100vw), 427px);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: clamp(10px * 0.5, calc(10 / 1170 * 100vw), 10px);
	text-align: center;
}
.offer__title em {
	margin-bottom: clamp(5px, 0.85vw, 10px);
	margin-bottom: calc(clamp(10px * 0.5, calc(10 / 1170 * 100vw), 10px) * -1);
	font-size: clamp(1.5rem * 0.5, 1.45vw, 1.5rem);
	font-weight: 500;
	text-align: center;
	line-height: 1.2;
	color: #eacd76;
	letter-spacing: 0.075em;
	display: block;
}
.offer__period {
	position: relative;
	margin-bottom: clamp(60px * 0.5, calc(60 / 1170 * 100vw), 60px);
	padding-top: clamp(25px * 0.5, 2.13vw, 25px);
	padding-bottom: clamp(35px * 0.5, 2.99vw, 35px);
	font-size: clamp(1.2rem, 2.05vw, 2.4rem);
	font-weight: 500;
	text-align: center;
	color: #eacd76;
}
.offer__period::before, 
.offer__period::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	width: clamp(385px * 0.5, 32.9vw, 385px);
	height: clamp(35px * 0.5, 2.99vw, 35px);
	margin: 0 auto;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	display: block;
}
.offer__period::before {
	top: 0;
	background-image: url("../img/offer_line01.png");
}
.offer__period::after {
	bottom: 0;
	background-image: url("../img/offer_line01.png");
}
.offer__twinkle01, 
.offer__twinkle02 {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: min(calc(43 / 1170 * 100vw), 43px);
	height: min(calc(43 / 1170 * 100vw), 43px);
	background-image: url("../img/common_twinkle02.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	pointer-events: none;
	animation: circle 2.5s ease-in-out infinite;
	opacity: .5;
	display: block;
}
.offer__twinkle01 {
	top: -4%;
	animation-delay: .4s;
}
.offer__twinkle02 {
	bottom: -4%;
	animation-delay: .8s;
}
.offer__period b {
	font-size: 175%;
	font-weight: 500;
}
.offer__lead {
	margin-bottom: 35px;
	font-size: clamp(1.4rem, 2.05vw, 2.4rem);
	font-weight: 400;
	text-align: center;
	line-height: 1.75;
	letter-spacing: 0.05em;
	color: #fff;
}
.offer__catch {
	margin-bottom: clamp(95px * 0.5, 8.11vw, 95px);
	font-size: clamp(1.9rem, 3.24vw, 3.8rem);
	font-weight: 800;
	text-align: center;
	line-height: 1.26;
	color: #fff;
}
.offer__catch b {
	color: #eacd76;
}
.offer__end-title {
	font-size: clamp(2.1rem, 3.58vw, 4.2rem);
	font-weight: 800;
	text-align: center;
	line-height: 1.4;
	letter-spacing: 0.1em;
	text-shadow: 0 0 15px rgba(0,0,0,0.75);
	color: #eacd76;
}
.offer__btn {
	width: clamp(505px * 0.5, 43.16vw, 505px);
	height: clamp(188 * 0.5, 16.06vw, 188);
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.offer__btn a {
	display: block;
}
.offer__btn a img {
	transition: .3s cubic-bezier(0.79,0.14,0.15,0.86);
}
.offer__btn a:hover img {
	transform: scale(1.05,1.05);
	transition: .3s cubic-bezier(0.79,0.14,0.15,0.86);
}

.offer__note {
	max-width: 1090px;
	margin-top: clamp(20px, 3.41vw, 40px);
	margin-left: auto;
	margin-right: auto;
	font-size: clamp(1.4rem, 1.53vw, 1.8rem);
	font-weight: 500;
	line-height: 1.33;
	color: #fff;
}
.offer__note strong {
	font-weight: 500;
	color: #eacd76;
}

@media screen and (max-width: 750px) {
.offer__inner {
	padding-left: clamp(20px, 3.41vw, 40px);
	padding-right: clamp(20px, 3.41vw, 40px);
}
.offer__title {
	max-width: clamp(634px * 0.5, calc(634 / 750 * 100vw), 634px);
	margin-bottom: clamp(10px * 0.5, calc(10 / 750 * 100vw), 10px);
}
.offer__title em {
	margin-bottom: calc(clamp(30px * 0.5, calc(30 / 750 * 100vw), 30px) * -1);
	font-size: clamp(2.8rem * 0.5, calc(28 / 750 * 100vw), 2.8rem);
	font-weight: 500;
	line-height: 1.0;
}
.offer__period {
	margin-bottom: clamp(30px * 0.5, calc(30 / 750 * 100vw), 30px);
	padding-top: calc(clamp(28px * 0.5, calc(28 / 750 * 100vw), 28px) + clamp(10px * 0.5, calc(10 / 750 * 100vw), 10px));
	padding-bottom: calc(clamp(28px * 0.5, calc(28 / 750 * 100vw), 28px) + clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px));
	font-size: clamp(3.7rem * 0.5, calc(37 / 750 * 100vw), 3.7rem);
}
.offer__period::before, 
.offer__period::after {
	width: clamp(600px * 0.5, calc(600 / 750 * 100vw), 600px);
	height: clamp(28px * 0.5, calc(28 / 750 * 100vw), 28px);
}
.offer__period::before {
	background-image: url("../img/offer_line01-sp.png");
}
.offer__period::after {
	background-image: url("../img/offer_line01-sp.png");
}
.offer__twinkle01 {
	top: -1%;
}
.offer__twinkle02 {
	bottom: -1%;
}
.offer__lead {
	margin-bottom: clamp(40px * 0.5, calc(40 / 750 * 100vw), 40px);
	font-size: clamp(1.4rem, calc(24 / 750 * 100vw), 2.4rem);
}
.offer__catch {
	margin-bottom: clamp(100px * 0.5, calc(100 / 750 * 100vw), 100px);
	font-size: clamp(3.8rem * 0.5, calc(38 / 750 * 100vw), 3.8rem);
}
.offer__end-title {
	margin-bottom: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	font-size: clamp(4.2rem * 0.5, calc(42 / 750 * 100vw), 4.2rem);
}
.offer__btn {
	width: clamp(459px * 0.5, calc(459 / 750 * 100vw), 459px);
	height: clamp(170px * 0.5, calc(170 / 750 * 100vw), 170px);
}



.offer__note {
	margin-top: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	font-size: clamp(1.4rem, calc(18 / 750 * 100vw), 1.8rem);
}
}

.common__title {
	font-size: clamp(3.8rem * 0.5, 3.24vw, 3.8rem);
	font-weight: 500;
	text-align: center;
	line-height: 1.2;
	letter-spacing: 0.25em;
	color: #eacd76;
}
.bottom-bg .common__title {
	color: #55360f;
}
.common__title span { 
	padding-left: calc(clamp(133px * 0.5, 11.36vw, 133px) + clamp(20px, 4.27vw, 50px));
	padding-right: calc(clamp(133px * 0.5, 11.36vw, 133px) + clamp(20px, 4.27vw, 50px));
	position: relative;
	display: inline-block;
}
.common__title span::before, 
.common__title span::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: clamp(133px * 0.5, 11.36vw, 133px);
	height: clamp(63px * 0.5, 5.38vw, 63px);
	margin: auto 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	display: block;
}
.common__title span::before {
	left: 0;
	background-image: url("../img/common_deco01.png");
}
.bottom-bg .common__title span::before {
	background-image: url("../img/common_deco03.png");
}
.common__title span::after {
	right: 0;
	background-image: url("../img/common_deco02.png");
}
.bottom-bg .common__title span::after {
	background-image: url("../img/common_deco04.png");
}

@media screen and (max-width: 750px) {
.common__title {
	font-size: clamp(3.8rem * 0.5, calc(38 / 750 * 100vw), 3.8rem);
}
/*
.common__title span { 
	padding-left: calc(clamp(133px * 0.5, 11.36vw, 133px) + clamp(20px, 4.27vw, 50px));
	padding-right: calc(clamp(133px * 0.5, 11.36vw, 133px) + clamp(20px, 4.27vw, 50px));
	position: relative;
	display: inline-block;
}
.common__title span::before, 
.common__title span::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: clamp(133px * 0.5, 11.36vw, 133px);
	height: clamp(63px * 0.5, 5.38vw, 63px);
	margin: auto 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	display: block;
}
.common__title span::before {
	left: 0;
	background-image: url("../img/common_deco01.png");
}
.bottom-bg .common__title span::before {
	background-image: url("../img/common_deco03.png");
}
.common__title span::after {
	right: 0;
	background-image: url("../img/common_deco02.png");
}
.bottom-bg .common__title span::after {
	background-image: url("../img/common_deco04.png");
}
*/

}

.ribbon-bg {
	position: relative;
	width: 100%;
}
.ribbon-bg__type01, 
.ribbon-bg__type02, 
.ribbon-bg__type03 {
	content: "";
	position: absolute;
	margin: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	display: block;
	z-index: -1;
}
.ribbon-bg__type01 {
	top: calc(clamp(250px * 0.5, calc(250 / 1920 * 100vw), 250px) * -1);
	right: 0;
	/*
	width: clamp(569px * 0.5, calc(569 / 1920 * 100vw), 569px);
	height: clamp(399px * 0.5, calc(399 / 1920 * 100vw), 399px);
	*/
	width: min(calc(569 / 1920 * 100vw), 569px);
	height: min(calc(399 / 1920 * 100vw), 399px);
	background-image: url("../img/offer_ribbon01.png");
}
.ribbon-bg__type02 {
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto 0;
	/*
	width: clamp(525px * 0.5, calc(525 / 1920 * 100vw), 525px);
	height: clamp(344px * 0.5, calc(344 / 1920 * 100vw), 344px);
	*/
	width: min(calc(525 / 1920 * 100vw), 525px);
	height: min(calc(344 / 1920 * 100vw), 344px);
	background-image: url("../img/offer_ribbon02.png");
}
.ribbon-bg__type03 {
	right: 0;
	bottom: calc(clamp(400px * 0.5, calc(400 / 1920 * 100vw), 400px) * -1);
	/*
	width: clamp(673px * 0.5, calc(673 / 1920 * 100vw), 673px);
	height: clamp(350px * 0.5, calc(350 / 1920 * 100vw), 350px);
	*/
	width: min(calc(673 / 1920 * 100vw), 673px);
	height: min(calc(350 / 1920 * 100vw), 350px);

	background-image: url("../img/offer_ribbon03.png");
}

@media screen and (max-width: 750px) {
.ribbon-bg__type01 {
	/*top: calc(clamp(60px * 0.5, calc(60 / 750 * 100vw), 60px) * -1);*/
	top: calc(clamp(180px * 0.5, calc(180 / 750 * 100vw), 180px) * -1);
}
.ribbon-bg__type03 {
	bottom: calc(clamp(230px * 0.5, calc(230 / 750 * 100vw), 230px) * -1);
}
}

.coupon {
	background-repeat: no-repeat;
	background-position: center top;
	background-size: clamp(1246px * 0.5, calc(1246 / 1170 * 100vw), 1246px) auto;
/*
	position: relative;
	width: 100%;
	max-width: 1226px;
	min-height: clamp(682px * 0.5, 58.29vw, 682px);
	margin-left: auto;
	margin-right: auto;
	padding-bottom: clamp(10px, 1.70vw, 20px);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	*/
}
.coupon.type01 {
	background-image: url("../img/coupon_bg02.png");
}
.coupon.type02 {
	background-image: url("../img/coupon_bg03.png");
}
.coupon__inner {
	position: relative;
	max-width: 1226px;
	margin-left: auto;
	margin-right: auto;
	min-height: clamp(682px * 0.5, 58.29vw, 682px);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

/*
@media screen and (max-width: 1170px) {
.coupon.type01 {
	background-image: url("../img/coupon_bg02-tb.png");
}
.coupon.type02 {
	background-image: url("../img/coupon_bg03-tb.png");
}
}
*/

@media screen and (max-width: 750px) {
.coupon__inner {
	min-height: clamp(592px * 0.5, calc(592 / 750 * 100vw), 592px);
	padding-left: clamp(80px * 0.5, calc(80 / 750 * 100vw), 80px);
	padding-right: clamp(80px * 0.5, calc(80 / 750 * 100vw), 80px);
	padding-bottom: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
}
.coupon.type01 {
	background-image: url("../img/coupon_bg02-sp01.png");
	background-size: 100% auto;
}
.coupon.type02 {
	background-image: url("../img/coupon_bg03-sp01.png");
	background-size: 100% auto;
}
}
@media screen and (max-width: 575px) {
.coupon__inner {
	min-height: clamp(692px * 0.5, calc(692 / 750 * 100vw), 692px);
}
.coupon.type01 {
	background-image: url("../img/coupon_bg02-sp02.png");
}
.coupon.type02 {
	background-image: url("../img/coupon_bg03-sp02.png");
}
}
@media screen and (max-width: 400px) {
.coupon__inner {
	min-height: clamp(792px * 0.5, calc(792 / 750 * 100vw), 792px);
}
.coupon.type01 {
	background-image: url("../img/coupon_bg02-sp03.png");
}
.coupon.type02 {
	background-image: url("../img/coupon_bg03-sp03.png");
}
}


.coupon__header {
	position: relative;
	margin-bottom: clamp(10px, 1.70vw, 20px);
	display: flex;
	justify-content: center;
	align-items: center;
}
.coupon__label {
	position: relative;
	width: clamp(110px, 18.80vw, 220px);
	margin-right: clamp(5px * 0.5, 0.85vw, 10px);
}
.coupon__lead {
	margin-bottom: clamp(10px, 1.70vw, 20px);
	font-size: clamp(1.3rem, 2.22vw, 2.6rem);
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: -0.05em;
	color: #55360f;
}
.coupon__price {
	position: relative;
	width: clamp(706px * 0.5, 60.34vw, 706px);
}
.coupon__benefit {
	display: flex;
	justify-content: center;
	align-items: center;
}
.coupon__title {
	font-size: clamp(3.1rem, 5.29vw, 6.2rem);
	font-weight: 700;
	text-align: center;
	letter-spacing: -0.025em;
	color: #55360f;
}
.type02 .coupon__title {
	letter-spacing: -0.1em;
}
.coupon__desc {
	margin-left: 10px;
	padding-top: 5px;
	padding-bottom: 5px;
	font-size: clamp(2.1rem * 0.5, 1.79vw, 2.1rem);
	font-weight: 700;
	text-align: center;
	line-height: 1.14;
	color: #55360f;
	border-top: 1px solid #55360f;
	border-bottom: 1px solid #55360f;
}
.coupon__desc b {
	padding-right: 0.25em;
	font-weight: 900;
}
.coupon__note {
	max-width: clamp(420px, 71.79vw, 840px);
	margin-top: clamp(10px, 1.7vw, 20px);
	margin-left: auto;
	margin-right: auto;
	font-size: clamp(1.4rem, 1.53vw, 1.8rem);
	font-weight: 400;
	line-height: 1.2;
	color: #55360f;
}






/*
.type02 .coupon__twinkle01 {
	top: -80%;
	left: -18%;
}
.type02 .coupon__twinkle02 {
	top: -7%;
	left: -7%;
}
.type02 .coupon__twinkle03 {
	top: -40%;
	left: 9%;
}
.type02 .coupon__twinkle04 {
	top: -25%;
	right: 8%;
}
.type02 .coupon__twinkle05 {
	bottom: -55%;
	right: -3%;
}
*/


@media screen and (max-width: 750px) {
.coupon__header {
	margin-bottom: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	justify-content: space-between;
}
.coupon__label {
	width: calc(25% - clamp(10px * 0.5, calc(10 / 750 * 100vw), 10px));
	margin-right: 0;
}
.coupon__lead {
	margin-bottom: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	font-size: clamp(1.4rem, calc(22 / 750 * 100vw), 2.2rem);
}
.coupon__price-area {
	width: 75%;
}
.coupon__price {
	width: 100%;
}
.coupon__benefit {
	margin-top: -10px;
	display: block;
}
.coupon__title {
	font-size: clamp(3.8rem * 0.5, calc(30 / 750 * 100vw), 3.0rem);
}
.type02 .coupon__title {
	letter-spacing: -0.1em;
}
.coupon__desc {
	margin-top: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	margin-left: 0;
	font-size: clamp(1.4rem, calc(20 / 750 * 100vw), 2.0rem);
}
.coupon__note {
	max-width: inherit;
	padding-left: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	padding-right: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	margin-top: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	font-size: clamp(1.4rem, calc(18 / 750 * 100vw), 1.8rem);
}
}


/* アニメーション */
.coupon__twinkle01, 
.coupon__twinkle02, 
.coupon__twinkle04, 
.coupon__twinkle03, 
.coupon__twinkle05, 
.coupon__twinkle06, 
.coupon__twinkle07 {
	content: "";
	position: absolute;
	margin: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	pointer-events: none;
	display: block;
}
.coupon__twinkle01, 
.coupon__twinkle03, 
.coupon__twinkle04 {
	width: min(calc(183 / 1170 * 100vw), 183px);
	height: min(calc(183 / 1170 * 100vw), 183px);
	background-image: url("../img/common_twinkle01.png");
	transform: scale(.6) rotate(0deg);
	animation: star 5s linear infinite;
	transform-origin: center;
	opacity: 0;
}
.coupon__twinkle02, 
.coupon__twinkle05 {
	width: min(calc(84 / 1170 * 100vw), 84px);
	height: min(calc(84 / 1170 * 100vw), 84px);
	background-image: url("../img/common_twinkle02.png");
	animation: circle 2.5s ease-in-out infinite;
	opacity: .5;
}
.type01 .coupon__twinkle01 {
	top: -5%;
	left: -2%;
	animation-delay: 0s;
}
.type01 .coupon__twinkle02 {
	top: -7%;
	left: -7%;
	animation-delay: .4s;
}
.type01 .coupon__twinkle03 {
	top: -50%;
	left: 5%;
	animation-delay: 2.5s;
}
.type01 .coupon__twinkle04 {
	top: -30%;
	right: 5%;
	animation-delay: 3s;
}
.type01 .coupon__twinkle05 {
	bottom: -55%;
	right: -3%;
	animation-delay: .8s;
}
.type02 .coupon__twinkle01 {
	top: -5%;
	left: -2%;
	animation-delay: 0s;
}
.type02 .coupon__twinkle02 {
	left: -15%;
	bottom: -25%;
	animation-delay: .4s;
}
.type02 .coupon__twinkle03 {
	top: -40%;
	left: 6%;
	animation-delay: 2.5s;
}
.type02 .coupon__twinkle04 {
	top: -30%;
	right: 25%;
	animation-delay: 3s;
}
.type02 .coupon__twinkle05 {
	bottom: -60%;
	right: -5%;
	animation-delay: .8s;
}



@media screen and (max-width: 1170px) {
.type01 .coupon__twinkle01 {
	left: -4%;
}
.type02 .coupon__twinkle01 {
	left: -4%;
}
}


@media screen and (max-width: 750px) {
.type01 .coupon__twinkle01 {
	top: 0%;
	left: -4.5%;
}
.type01 .coupon__twinkle02 {
	top: -7%;
	left: -7%;
}
.type01 .coupon__twinkle03 {
	top: -50%;
	left: 5%;
}
.type01 .coupon__twinkle04 {
	top: -30%;
	right: 5%;
}
.type01 .coupon__twinkle05 {
	bottom: -40%;
	right: -3%;
}
.type02 .coupon__twinkle01 {
	top: 0%;
	left: -4.5%;
}
.type02 .coupon__twinkle02 {
	left: -15%;
	bottom: -25%;
}
.type02 .coupon__twinkle03 {
	top: -40%;
	left: 6%;
}
.type02 .coupon__twinkle04 {
	top: -30%;
	right: 25%;
}
.type02 .coupon__twinkle05 {
	bottom: -80%;
	right: -3%;
}
}
/*
@media screen and (max-width: 575px) {
.type01 .coupon__twinkle01 {
	top: -80.5%;
}
.type02 .coupon__twinkle01 {
	top: -104.5%;
}
}
@media screen and (max-width: 400px) {
.type01 .coupon__twinkle01 {
	top: -80.5%;
}
.type02 .coupon__twinkle01 {
	top: -114.5%;
}
}

*/


.bottom-bg {
	position: relative;
	background: url("../img/common_bg04.png") repeat-y center top / 1920px auto;
}

@media screen and (max-width: 750px) {
.bottom-bg {
	background: url("../img/common_bg04.png") repeat-y center top / 150% auto;
}
}

/*----------------------------------------------------------
/* .faq
----------------------------------------------------------*/
.faq {
	position: relative;
}
.faq__inner {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	padding-top: clamp(90px, 15.38vw, 180px);
	z-index: 1;
}
.faq__box {
	position: relative;
	max-width: clamp(1090px * 0.5, calc(1090 / 1170 * 100vw), 1090px);
	padding: clamp(20px * 0.5, calc(20 / 1170 * 100vw), 20px) clamp(60px * 0.5, calc(60 / 1170 * 100vw), 60px);
	margin: calc(clamp(38px * 0.5, calc(38 / 1170 * 100vw), 38px) + clamp(50px * 0.5, calc(150 / 1170 * 100vw), 50px)) auto clamp(38px * 0.5, calc(38 / 1170 * 100vw), 38px);
	background: url("../img/faq_bg01-middle.png") repeat-y center center / 100% auto;
}
.faq__box::before, 
.faq__box::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	width: clamp(1090px * 0.5, calc(1090 / 1170 * 100vw), 1090px);
	height: clamp(38px * 0.5, calc(38 / 1170 * 100vw), 38px);
	margin: 0 auto;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	display: block;
}
.faq__box::before {
	top: calc(clamp(38px * 0.5, calc(38 / 1170 * 100vw), 38px) * -1);
	background-image: url("../img/faq_bg01-top.png");
}
.faq__box::after {
	bottom: calc(clamp(38px * 0.5, calc(38 / 1170 * 100vw), 38px) * -1);
	background-image: url("../img/faq_bg01-bottom.png");
}

@media screen and (max-width: 750px) {
.faq__inner {
	padding-top: clamp(120px * 0.5, calc(120 / 750 * 100vw), 120px);
}
.faq__box {
	max-width: clamp(700px * 0.5, calc(700 / 750 * 100vw), 700px);
	padding: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px) clamp(60px * 0.5, calc(60 / 750 * 100vw), 60px);
	margin: calc(clamp(38px * 0.5, calc(38 / 750 * 100vw), 38px) + clamp(40px * 0.5, calc(40 / 750 * 100vw), 40px)) auto clamp(38px * 0.5, calc(38 / 750 * 100vw), 38px);
	background-image: url("../img/faq_bg01-sp-middle.png");
}
.faq__box::before, 
.faq__box::after {
	width: clamp(700px * 0.5, calc(700 / 750 * 100vw), 700px);
	height: clamp(38px * 0.5, calc(38 / 750 * 100vw), 38px);
}
.faq__box::before {
	top: calc(clamp(38px * 0.5, calc(38 / 750 * 100vw), 38px) * -1);
	background-image: url("../img/faq_bg01-sp-top.png");
}
.faq__box::after {
	bottom: calc(clamp(38px * 0.5, calc(38 / 750 * 100vw), 38px) * -1);
	background-image: url("../img/faq_bg01-sp-bottom.png");
}
}

.faq__box dl {
	max-width: 960px;
	margin: 0 auto;
}
.faq__box dl + dl {
	margin-top: clamp(30px, 5.12vw, 60px);
}
.faq__box dt {
	position: relative;
	margin-bottom: clamp(20px * 0.5, calc(20 / 1170 * 100vw), 20px);
	padding-left: calc(clamp(61px * 0.5, 5.21vw, 61px) + clamp(15px * 0.5, calc(15 / 1170 * 100vw), 15px));
	font-size: clamp(2.0em, 3.41vw, 4.0rem);
	font-weight: 500;
	line-height: 1.57;
	letter-spacing: 0.08em;
	color: #55360f;
	white-space: nowrap;
}
.faq__box dt::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: clamp(61px * 0.5, 5.21vw, 61px);
	height: clamp(61px * 0.5, 5.21vw, 61px);
	margin: auto 0;
	background: url("../img/faq_ico01.png") no-repeat center center / contain;
}
.faq__box dd {
	font-size: clamp(1.4rem, 1.49vw, 1.75rem);
	line-height: 1.4;
	text-align: justify;
	color: #55360f;
}

@media screen and (max-width: 750px) {
.faq__box dl + dl {
	margin-top: clamp(40px, calc(40 / 1170 * 100vw), 40px);
}
.faq__box dt {
	margin-bottom: clamp(20px * 0.5, calc(20 / 1170 * 100vw), 20px);
	padding-left: calc(clamp(40px * 0.6, calc(40 / 750 * 100vw), 40px) + clamp(15px * 0.5, calc(15 / 750 * 100vw), 15px));
	font-size: clamp(1.8em, calc(30 / 750 * 100vw), 3.0rem);
}
.faq__box dt::before {
	width: clamp(40px * 0.6, calc(40 / 750 * 100vw), 40px);
	height: clamp(40px * 0.6, calc(40 / 750 * 100vw), 40px);
}
.faq__box dd {
	font-size: clamp(1.4rem, calc(18 / 750 * 100vw), 1.8rem);
}
}

/*----------------------------------------------------------
/* .footer
----------------------------------------------------------*/
.footer {
	color: #55360f;
}
.footer__inner {
	padding-top: clamp(50px, 8.54vw, 100px);
	padding-bottom: clamp(85px, 14.52vw, 170px);
	text-align: center;
}
.footer__sub-title {
	margin-top: clamp(35px, 5.98vw, 70px);
	margin-bottom: clamp(15px, 2.56vw, 30px);
	font-size: clamp(1.5rem, 2.56vw, 3.0rem);
	font-weight: 500;
	text-align: center;
	line-height: 1.2;
}
.footer__label {
	font-size: clamp(1.4rem, 2.05vw, 2.4rem);
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.05em;
}
.footer__tel {
	margin: 0 auto clamp(25px, 4.27vw, 50px);
	text-align: center;
}
.footer__tel a {
	pointer-events: none;
	font-size: clamp(3.5rem, 5.98vw, 7.0rem);
	font-weight: 600;
	line-height: 1.0;
	letter-spacing: -0.025em;
	color: #76161b;
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer__tel em {
	margin-right: clamp(15px * 0.5, 1.28vw, 15px);
	padding: clamp(5px * 0.5, 0.85vw, 10px) clamp(10px, 1.7vw, 20px);
	font-size: clamp(1.5rem * 0.5, 1.28vw, 1.5rem);
	font-weight: 500;
	text-align: center;
	line-height: 1.18;
	color: #fff;
	background-color: #76161b;
	border-radius: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer__open {
	margin: clamp(5px * 0.5, 0.85vw, 10px) auto clamp(25px, 4.27vw, 50px);
	font-size: clamp(1.6rem, 2.73vw, 3.2rem);
	font-weight: 600;
	text-align: center;
}
.footer__note {
	margin: 0 auto clamp(45px, 7.69vw, 90px);
	font-size: clamp(1.2rem, 2.05vw, 2.4rem);
	font-weight: 500;
	text-align: center;
	line-height: 1.54;
	letter-spacing: 0.05em;
}
.footer__copyright {
	font-size: clamp(1.2rem, 2.05vw, 2.4rem);
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.05em;
	display: block;
}
.footer__copyright small {
	text-align: center;
}

@media screen and (max-width: 750px) {
.footer__inner {
	padding-top: clamp(100px * 0.5, calc(100 / 750 * 100vw), 100px);
	padding-bottom: clamp(200px * 0.5, calc(200 / 750 * 100vw), 200px);
}
.footer__sub-title {
	margin-top: clamp(60px * 0.5, calc(60 / 750 * 100vw), 60px);
	margin-bottom: clamp(40px * 0.5, calc(40 / 750 * 100vw), 40px);
	font-size: clamp(3.0rem * 0.5, calc(30 / 750 * 100vw), 3.0rem);
}
.footer__label {
	font-size: clamp(1.6rem, calc(24 / 750 * 100vw), 2.4rem);
}
.footer__tel {
	margin-top: clamp(5px * 0.5, calc(10 / 750 * 100vw), 10px);
	margin-bottom: clamp(50px * 0.5, calc(50 / 750 * 100vw), 50px);
}
.footer__tel a {
	font-size: clamp(7.0rem * 0.5, calc(70 / 750 * 100vw), 7.0rem);
}
.footer__tel em {
	margin-right: clamp(15px * 0.5, calc(15 / 750 * 100vw), 15px);
	padding: clamp(10px * 0.5, calc(10 / 750 * 100vw), 10px) clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px);
	font-size: clamp(1.0rem, calc(15 / 750 * 100vw), 1.5rem);
}
.footer__open {
	margin: clamp(20px * 0.5, calc(20 / 750 * 100vw), 20px) auto clamp(25px, calc(50 / 750 * 100vw), 50px);
	font-size: clamp(1.6rem, calc(32 / 750 * 100vw), 3.2rem);
}
.footer__note {
	margin-bottom: clamp(80px * 0.5, calc(80 / 750 * 100vw), 80px);
	font-size: clamp(1.4rem, calc(24 / 750 * 100vw), 2.4rem);
}
.footer__copyright {
	font-size: clamp(1.4rem, calc(24 / 750 * 100vw), 2.4rem);
}
.footer__tel a {
	pointer-events: auto;
}
}

/*----------------------------------------------------------
/* .page_top
----------------------------------------------------------*/
.page_top {
	position: fixed;
	right: 0;
	bottom: 0;
	border-radius: 50%;
	z-index: 100;
 	-webkit-transition: all 0.5s;
	transition: all 0.5s;
}
.page_top a {
	text-decoration: none;
	display: block;
}
.page_top img {
	width: clamp(112px * 0.75, calc(112 / 1170 * 100vw), 112px);
	height: clamp(112px * 0.75, calc(112 / 1170 * 100vw), 112px);
}

@media (max-width: 750px){
.page_top {
	right: 0;
}
.page_top img {
	width: clamp(70px, calc(80 / 1170 * 100vw), 80px);
	height: clamp(70px, calc(80 / 1170 * 100vw), 80px);
}
}


/*----------------------------------------------------------
/* スクロールアニメーション
----------------------------------------------------------*/

.inview {
	opacity: 0;
	transform: translateY(25px);
}
.inview.is-show {
	opacity: 1;
	transform: translateY(0);
	transition: opacity 1.5s cubic-bezier(0.68,-0.55,0.27,1.55), transform 1.5s cubic-bezier(0.68,-0.55,0.27,1.55);
}
