/*
Theme Name: STINGER PRO Child
Template: Template_LP01
Version: 
*/
:root {
	/* bgcolor */
	--c_white1: #FFFFFF;
	--c_lightblue1: #f2fafa;
	--c_lightblue2: #d5edf0;
	--c_lightblue3: #e5f4f6;
	--c_lightyellow1: #fffde5;
	
	--c_header_sp: #2ba7b3;
}

*{
	margin: 0;
	padding: 0;
	font-family: "Noto Sans JP";
}

body,
h1,
h2,
p{
	margin: 0;
	padding: 0;
	font-size:16px;
}

body {
 	opacity: 0;
	min-height:100dvh;
}

body.is-loaded {
  opacity: 1;
}

.pc-only { display: block; }
.sp-only { display: none; }

@media (max-width: 1200px) {
  .pc-only { display: none; }
  .sp-only { display: block; margin: 0 auto; }
}

.center{
	text-align:center;
}

header{
	position: relative;
	z-index:100;
}

main{
	z-index:50;
}

.top-margin{
	margin-top:80px;
}

.top-margin_sp{
	margin-top:22vw;
}


/* header */

/* line */
/* .line{
	width: 100%;
	height: 6px;
	background-color: #2BA7B3;
} */

#header {
	background-color:#ffffff;
	white-space: nowrap;
	width:100%;
  	display: flex;
	justify-content: center;
	align-items:stretch;
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.3);
	padding: 12px 0;
	border-top: 6px #2BA7B3 solid;
	position: fixed;
	top: 0;
	left: 0;
}
#header span{
	font-size:23px;
	font-weight:bold;
}

#header div:nth-of-type(2){
	padding-left:20px;
}

#header div:nth-of-type(3){
	padding-left:14px;
	padding-top:12px;
}

#header_sp{
	width:100%;
	box-shadow: 0 3px 4px rgba(0, 0, 0, 0.3);
	position: fixed;
	top: 0;
	left: 0;
	background-color: #FFFFFF;
}

#header_sp .header_sp_flex{
	padding:1.8vw;
	display: flex;
	align-items:stretch;
}

#header_sp p{
	font-size:3vw;
	padding-left:3vw;
	padding-top:0.7vw;
	padding-bottom:0.7vw;
	background-color: var(--c_header_sp);
	color: white;
}

#header_sp div div:nth-of-type(1) img{
	width:40vw;
}

#header_sp div div:nth-of-type(2){
	padding-left:3vw;
	font-size:4.35vw;
	font-weight:500;
}

#header_sp div div:nth-of-type(2) img{
	width:50vw;
}



#bottom_menu_sponly{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: #2ba7b3;
	width:100vw;
	position: fixed;
	bottom: 0;
	margin: 0 auto;
	padding: 3vw 0;
	z-index: 40;
}

/*
#bottom_menu_sponly{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: #2ba7b3;
	width: 100%;
	position: fixed;
	left: 0;
	bottom: 0;
	margin: 0;
	--padding: 3vw 0 calc(3vw + env(safe-area-inset-bottom));
	z-index: 40;
}
*/

#bottom_menu_sponly img{
	display:block;
}

body.is-bottom #bottom_menu_sponly{
	display: none;
}

#bottom_menu_sponly a:hover{
	filter: brightness(1.1);
}

#bottom_menu_sponly a img{
	width:80vw;
}

#img_content p{
	text-align:center;
}

#img_content_sp img{
	width:100%;
}

.btn_label{
	text-align:center;
	width:1200px;
	margin: 0 auto;
}

#btnbox {
	width:1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	
}

#btnbox .btn{
	position:relative;
}

#btnbox span{
	color:#fcee21;
	--font-family: "Noto Sans JP";
	font-weight:bold;
	font-size:72px;
	position:absolute;
	top: -6px;
	left:98px;
	text-shadow:
    -1px -1px 5px #18A05B,
     1px -1px 5px #18A05B,
    -1px  1px 5px #18A05B,
     1px  1px 5px #18A05B;
}

.btn_label_sp{
	text-align:center;
	width: 100vw;
}

.btn_label_sp img:nth-child(1){
	width:33vw;
	margin-bottom:4px;
}

#btnbox_sp {
	width:100vw;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	
}

#btnbox_sp .btn_sp{
	position:relative;
}

#btnbox_sp .btn_sp img{
	width: 90vw;
}

#btnbox_sp span{
	color:#fcee21;
	--font-family: "Noto Sans JP";
	font-weight:bold;
	font-size:12vw;
	position:absolute;
	top: 0.6vw;
	left: 10vw;
	text-shadow:
    -1px -1px 5px #18A05B,
     1px -1px 5px #18A05B,
    -1px  1px 5px #18A05B,
     1px  1px 5px #18A05B;
}

.white1{background-color:var(--c_white1);}
.lightblue1{background-color:var(--c_lightblue1);}
.lightblue2{background-color:var(--c_lightblue2);}
.lightblue3{background-color:var(--c_lightblue3);}
.lightyellow1{background-color:var(--c_lightyellow1);}

#btnbox .btn:hover,
#btnbox_sp .btn_sp:hover{
	filter: brightness(1.2);
}

#price{
	width: 1200px;
	/* height: 243px; */
	margin: 0 auto;
	text-align:center;
}

#price p{
	font-size:22px;
	line-height:40px;
}

#price .label1{
	padding-top:80px;
}

#price .text1{
	margin-top:40px;
	font-weight: 500;
}

#price .text2{
	margin-top:50px;
	font-size:26px;
	font-weight: 500;
}

#price .text3{
	margin-top:20px;
	font-size:26px;
	font-weight: 500;
}

#price .text3 .bold{
	color:#e68d15;
	font-size:32px;
	font-weight:bold;
}

#price .firstprice{
	margin: 0 auto;
	margin-top:30px;
	width:460px;
	height:269px;
	/* background-imageはphpで取得 */
	
}
#price .firstprice span{
	font-family: "Noto Serif JP";
	font-style: italic;
	font-weight:bold;
	font-size:95px;
	position:relative;
	top: 60px;
	left:-55px;
	color:red;
}

#price .label2{
	margin-top:30px;
	margin-bottom:5px;
}

#price .twotimes{
	white-space: nowrap;
	width:1200px;
  	display: flex;
	justify-content: center;
	align-items:stretch;
}

#price .twotimes div:nth-child(1){
	/* background-imageはphpで取得 */
	width:409px;
	height:140px;
	font-size:54px;
}

#price .twotimes div:nth-child(1) span{
	position:relative;
	top: 50px;
	left: -14px;
}

#price .twotimes div:nth-child(2){
	/* background-imageはphpで取得 */
	margin-left:30px;
	text-align: left !important;
	width:408px;
	height:433px;
	font-size:54px;
	position:relative;

}


#price .twotimes div:nth-child(2) span{
	position:relative;
	top: 60px;
	left: 120px;
	line-height:83px;
}

#price_sp{
	width: 100vw;
	margin: 0 auto;
	background-size: 100%;
}

#price_sp p{
	width:80vw;
	margin: 0 auto;
	font-size:4.4vw;
	line-height:8vw;
	
}

#price_sp .label1{
	padding-top:80px;
	width:84vw;
}

#price_sp img{
	width:84vw;
}

#price_sp .text1{
	margin-top:10px;
	font-weight: 500;
}

#price_sp .text2{
	margin-top:40px;
	font-weight: 500;
}

#price_sp .text3{
	margin-top:20px;
	font-weight: 500;
}

#price_sp .text3 .bold{
	color:#e68d15;
	font-size:6vw;
	font-weight:bold;
}

#price_sp .firstprice{
	margin: 0 auto;
	margin-top:30px;
	width:80vw;
	aspect-ratio: 16 / 9.5;
	background-size: 80vw auto;
	background-repeat: no-repeat;
	/* background-imageはphpで取得 */
	
}


#price_sp .firstprice span{
	font-family: "Noto Serif JP";
	font-style: italic;
	font-weight:bold;
	font-size:18vw;
	position:relative;
	top: 10vw;
	left:14vw;
	color:red;
}

#price_sp .label2{
	margin-top:30px;
	margin-bottom:5px;
	text-align:center;
}

#price_sp .label2 img{
	width:48vw;
}

#price_sp .twotimes{
	white-space: nowrap;
	width:80vw;
  	display: flex;
	justify-content: center;
	flex-direction: column;
	margin: 0 auto;
}

#price_sp .twotimes div:nth-child(1){
	/* background-imageはphpで取得 */
	aspect-ratio: 67 / 23;
	background-size: 80vw auto;
	background-repeat: no-repeat;
}

#price_sp .twotimes div:nth-child(1) span{
	font-size:10vw;
	font-weight:600;
	position:relative;
	top: 11vw;
	left: 23.8vw;
}

#price_sp .twotimes div:nth-child(2){
	/* background-imageはphpで取得 */
	margin-top:60px;
	margin-bottom:36px;
	aspect-ratio: 67 / 72;
	background-size: 80vw auto;
	background-repeat: no-repeat;
	position:relative;
}


#price_sp .twotimes div:nth-child(2) span{
	font-size:10vw;
	font-weight:600;
	position:relative;
	top: 11vw;
	left: 24.5vw;
	line-height:16.5vw;
}

#thoughts{
	font-size:20px;
	width:1201px;
	height:1636px;
	margin: 0 auto;
}

#thoughts div{
	width:725px;
	margin: 0 auto;
	position:relative;
	top:420px;
	line-height:36px;
	font-weight:500;
}

#thoughts div p{
	white-space:nowrap;
	font-size:28px;
	font-weight:700;
	color:#0095a4;
}

#thoughts div span{
	font-weight:800;
	color:#0095a4;
}

#thoughts_sp{
	font-size:4.2vw;
	margin: 0 auto;
	aspect-ratio: 75 / 326;
	background-size: 100% auto;
	background-repeat: no-repeat;
}

#thoughts_sp div{
	width:76vw;
	margin: 0 auto;
	position:relative;
	top:67vw;
	line-height:7.6vw;
	font-weight:400;
}

#thoughts_sp div p{
	--width:80vw;
	margin-bottom: 10vw;
	text-align:center;
	white-space:nowrap;
	font-size:4.8vw;
	font-weight:700;
	line-height:7.8vw;
	color:#0095a4;
}

#thoughts_sp div span{
	font-weight:800;
	color:#0095a4;
}

#thoughts2_sp{
	width: 100%;
	text-align: center;
}

#thoughts2_sp > div{
	width: 100%;
	background: linear-gradient(#D5EEF0, #2BA7B3);
	padding-bottom: 10vw;
}

#thoughts2_sp > div div:nth-of-type(1){
	margin: 0 auto;
}

#thoughts2_sp > div div:nth-of-type(1) div{
	padding-top: 10vw;
}

#thoughts2_sp > div div:nth-of-type(1) div img{
	width:86vw;
}

#thoughts2_sp > div div:nth-of-type(2){
	border: 1px #2BA7B3 solid;
	margin: 0 auto;
	width:86vw;
	background-color: #FFFFFF;
	line-height:7.6vw;
	font-weight:400;
	box-sizing: border-box;
	padding-bottom: 10vw;
}

#thoughts2_sp > div div:nth-of-type(2) div{
	width: 75.9vw;
	letter-spacing: 0.02vw;
	text-align:left;
	font-size:4.2vw;
}

#thoughts2_sp > div div:nth-of-type(2) div p{
	margin: 8vw 0;
	text-align:center;
	white-space:nowrap;
	font-size:4.8vw;
	font-weight:700;
	line-height:7.8vw;
	color:#0095a4;
	
}

#thoughts2_sp > div div:nth-of-type(2) span{
	font-weight:800;
	color:#0095a4;
}




#yoyaku{
	background-color:#fffde5;
	font-size:20px;
	width:1200px;
	height:970px;
	margin: 0 auto;
	position:relative;
	margin-bottom:50px;
}

#yoyaku span{
	font-family: "Noto Serif JP";
	font-style: italic;
	font-weight:bold;
	font-size:95px;
	
	position:absolute;
	top: 684px;
	left:462px;
	color:red;
}

.yoyaku1{
	width:1200px;
	margin: 0 auto;
	background-color:#fffde5;
}

#yoyaku_sp{
	background-color:#fffde5;
	aspect-ratio: 150 / 318;
	background-size: 100vw auto;
	background-repeat: no-repeat;
	margin: 0 auto;
	position:relative;
}

#yoyaku_sp span{
	font-family: "Noto Serif JP";
	font-style: italic;
	font-weight:bold;
	font-size:18vw;
	
	position:absolute;
	top: 140vw;
	left: 24vw;
	color:red;
}

.yoyaku1_sp{
	margin: 0 auto;
}

#store_sp{
	width:100vw;
	text-align:center;
	margin-top:10vw;
}

#store_sp img{
	width:90vw;
}

.map01{
	text-align: center;
	margin: 30px 0;
}

.map01 iframe{
	width: 648px;
	height: 350px;
}

.map01_sp{
	text-align: center;
	margin: 30px auto;
}

.map01_sp iframe{
	width: 88vw;
	height: 46vw;
}

#footer_btn{
	background-color: #2ba7b3;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-top: 20px;
	padding-bottom: 10px;
}

#footer_btn div:nth-of-type(2){
	margin-left:30px;
}

#footer_btn_sp{
	background-color: #2ba7b3;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	padding-top: 7vw;
	padding-bottom: 10px;
	position: relative;
	z-index: 50;
}

#footer_btn_sp div:nth-of-type(1) img{
	width:60vw;
}

#footer_btn_sp div:nth-of-type(2) {
	margin-top: 5vw;
}

#footer_btn_sp div:nth-of-type(2) img{
	width:70vw;
}


#footer_btn a:hover,
#footer_btn_sp a:hover{
	filter: brightness(1.1);
}

#footer{
	width:100%;
	height:114px;
	margin: 0 auto;
	background-color:#2ba7b3;
	text-align:center;
	color:white;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	line-height:34px;
}

#footer div a{
	text-decoration: none;
	color:white;
}

#footer div a:hover{
	text-decoration:underline;
	color:white;
}

#footer div span{
	padding:0 20px;
	position:relative;
	top:7px;
}

#footer_sp{
	font-size:3vw;
	padding-bottom: 2vw;
	margin: 0 auto;
	--margin-bottom:16vw;
	background-color:#2ba7b3;
	text-align:center;
	color:white;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	line-height:6vw;
	position: relative;
	z-index: 50;
}

#footer_sp div a{
	text-decoration: none;
	color:white;
}

#footer_sp div a:hover{
	text-decoration:underline;
	color:white;
}

#footer_sp div span{
	padding:0 20px;
	position:relative;
	top:1.3vw;
}

#footer_sp div span img{
	height: 4.5vw;
}
