@charset "utf-8";

body{padding-top:0;}
section > .container, .section > .container{padding-top:100px;padding-bottom:100px;}
.container.wide{max-width:1440px;}

/* -------------------------------------------------- */
/* #block-mv */
/* -------------------------------------------------- */
#block-mv{background:url(../img/w-pinups/mv-bg.jpg) no-repeat center center;background-size:cover;}
#block-mv .container {display: flex;justify-content: space-between; align-items: center;gap:20px;padding-bottom: 40px;}
#block-mv .mv-txt {font-size: 3.6rem;font-weight: bold;white-space: nowrap;text-shadow:0 0 30px #fff,0 0 30px #fff;}
#block-mv .mv-txt .logo{margin-bottom:25px;max-width:35vw;}
#block-mv .mv-txt .logo img{vertical-align:middle;}
#block-mv .mv-txt p {font-size: 2.4rem;letter-spacing:0.02em;}
#block-mv .mv-btn{position:absolute;right:0;bottom:50px;}
#block-mv .mv-btn a{font-size:1.6rem;font-weight:bold;display:inline-block;color:#fff;background:#d5443f;border:2px solid #fff;border-radius:100px;padding:10px 30px;}
#block-mv .mv-btn a:hover{opacity:1;background:#a73935;}

@media screen and (min-width:1px) and (max-width:1480px){
	#block-mv .mv-btn{right:5%;}
}
@media screen and (min-width:1px) and (max-width:1299px){
	#block-mv .container{padding-top:160px;}
}

/* -------------------------------------------------- */
/* #block-problem */
/* -------------------------------------------------- */
#block-problem{position:relative;}
#block-problem .container{position:static;padding-bottom:0;}
#block-problem .ttl{font-size:4.8rem;font-weight:bold;text-align:center;letter-spacing:0.04em;line-height:1.3;margin:35px auto 30px;}
#block-problem .ttl > span{font-size:6.4rem;}
#block-problem .ttl > span > span{position:relative;display:inline-block;}
#block-problem .ttl > span > span::before{content:"";display:block;width:10px;height:10px;border-radius:100%;background:#d5443f;position:absolute;bottom:100%;left:50%;margin-left:-5px;}
#block-problem .column{display:flex;align-items:center;justify-content:space-between;}
#block-problem .column .inner{padding:40px 0;}
#block-problem .sub-ttl{font-size:3.6rem;font-weight:bold;line-height:1.3;margin-bottom:30px;letter-spacing:0.04em;}
#block-problem .list-problem > li{font-size:2rem;font-weight:bold;letter-spacing:0.04em;border-bottom:1px solid #999;padding:20px 0 20px 50px;position:relative;line-height:1.5;}
#block-problem .list-problem > li::before{content:"";display:block;width:31px;height:31px;background:url(../img/w-pinups/icon-check.png) no-repeat center center;background-size:contain;position:absolute;left:0;top:29px;}
#block-problem .list-problem > li span{font-size:3rem;}
#block-problem .img::after{content:"";display:block;background:url(../img/w-pinups/problem-bg.png) no-repeat right bottom;background-size:100% auto;position:absolute;right:0;bottom:0;width:50%;height:100%;z-index:-1;}

/* -------------------------------------------------- */
/* #block-solution */
/* -------------------------------------------------- */
#block-solution{position:relative;background:#d5443f;overflow:hidden;}
#block-solution::before{content:"";display:block;width: 0;height: 0;border-style: solid;border-width: 100px 50vw 0px 50vw;border-color: #fff transparent transparent transparent;z-index:2;}
#block-solution .container{padding-top:60px;}
#block-solution .ttl{font-size:6.4rem;font-weight:bold;color:#fff;text-align:center;line-height:1.5;letter-spacing:0.04em;margin-bottom:60px;position:relative;z-index:3;text-shadow:0 0 10px #d5443f,0 0 10px #d5443f,0 0 10px #d5443f;}
#block-solution .ttl::after{content:"";display:block;width:400px;height:363px;background:url(../img/w-pinups/solution-img.png) no-repeat right top;background-size:contain;position:absolute;left:80%;top:-40px;z-index:-1;max-width:24vw;}
#block-solution .ttl span{font-size:4rem;display:block;letter-spacing:0.04em;margin-bottom:10px;}
#block-solution .list-solution{display:flex;flex-wrap:wrap;gap:40px;max-width:1280px;margin:auto;}
#block-solution .list-solution > li{width:calc((100% - 40px) / 2);padding:32px 40px;background:#fff;border-radius:20px;font-size:3rem;letter-spacing:0.02em;line-height:1.5;font-weight:bold;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;}
#block-solution .list-solution > li > span > span{color:#9f312d;}

@media screen and (min-width:1px) and (max-width:1399px){
	#block-solution .list-solution > li br{display:none;}
}

/* -------------------------------------------------- */
/* #block-point */
/* -------------------------------------------------- */
#block-point{background:#fbeceb;border-bottom:30px solid #d5443f;}
#block-point .container{padding-top:100px;padding-bottom:70px;}
#block-point .column{display:flex;align-items:center;justify-content:space-between;gap:20px;}
#block-point .txt{font-size:3rem;font-weight:bold;letter-spacing:0.02em;line-height:1.5;}
#block-point .txt > span{font-size:4rem;color:#9f312d;}
#block-point .txt > span > span{font-size:7rem;font-family: "Afacad Flux", sans-serif;}
#block-point .attention{font-size:1.6rem;letter-spacing:0.02em;}
#block-point .img{margin-right:-35px;}
#block-point .img img{margin-top:-10%;}

/* -------------------------------------------------- */
/* #block-case */
/* -------------------------------------------------- */
#block-case .ttl{font-size:4.8rem;font-weight:bold;color:#9f312d;text-align:center;letter-spacing:0.04em;margin-bottom:35px;}
#block-case .lead{font-size:2rem;text-align:center;font-weight:bold;}
#block-case .cmn-case{margin-top:70px;}

/* -------------------------------------------------- */
/* #block-spec */
/* -------------------------------------------------- */
#block-spec{background:url(../img/w-pinups/spec-bg.jpg) no-repeat center center #fbebeb;background-size:cover;}
#block-spec .ttl{font-size:4.8rem;font-weight:bold;color:#9f312d;text-align:center;letter-spacing:0.04em;margin-bottom:35px;}
#block-spec .list-spec{display:flex;justify-content:center;flex-wrap:wrap;gap:40px;}
#block-spec .list-spec > li{width:calc((100% - 80px) / 3);background:#fff;border-radius:10px;border:4px solid #d5443f;box-shadow:0 0 15px rgba(0,0,0,0.1);text-align:center;}
#block-spec .list-spec > li > a{display:block;padding:30px;position:relative;height:100%;}
#block-spec .list-spec > li > a::after{content:"";display:block;width:50px;height:50px;background:url(../img/w-pinups/spec-plus.svg) no-repeat center center #d5443f;background-size:20px auto;position:absolute;right:0;bottom:0;}
#block-spec .list-spec > li .txt{font-size:2.4rem;font-weight:bold;color:#9f312d;line-height:1.25;margin-top:30px;letter-spacing:0.02em;}
#block-spec .list-spec > li .txt small{font-size:2rem;}
#block-spec .btn{text-align:center;margin-top:60px;}
#block-spec .btn a{font-size:2rem;font-weight:bold;display:inline-block;color:#fff;background:#d5443f;border:2px solid #fff;border-radius:100px;padding:10px 50px;}
#block-spec .btn a:hover{opacity:1;background:#a73935;}

/* ======================================================================================================================= */
/* for tablet */
/* ======================================================================================================================= */
@media screen and (min-width:1px) and (max-width:999px){
	/* -------------------------------------------------- */
	/* #block-mv */
	/* -------------------------------------------------- */
	#block-mv .container{display:block;padding-top:120px;}
	#block-mv .mv-txt{text-align:center;}
	#block-mv .mv-txt .logo{margin:0 auto 20px;max-width:40vw;}
	#block-mv .mv-img{margin:30px auto 0;width:100%;max-width:500px;}

	/* -------------------------------------------------- */
	/* #block-problem */
	/* -------------------------------------------------- */
	#block-problem .column{display:block;}
	#block-problem .column .inner{padding:0;}
	#block-problem .sub-ttl{text-align:center;}
	#block-problem .img{text-align:center;margin-top:40px;}
	#block-problem .img::after{width:85%;}
	#block-problem .list-problem{width:fit-content;margin:auto;}

	/* -------------------------------------------------- */
	/* #block-solution */
	/* -------------------------------------------------- */
	#block-solution .list-solution{gap:15px;}
	#block-solution .list-solution > li{width:calc((100% - 15px) / 2);}
	#block-solution .ttl{font-size:4.8rem;}
	#block-solution .ttl span{font-size:3rem;}
	#block-solution .list-solution > li{font-size:2.6rem;}

	/* -------------------------------------------------- */
	/* #block-point */
	/* -------------------------------------------------- */
	#block-point .column{display:block;}
	#block-point .inner{text-align:center;}
	#block-point .img{margin:30px auto 0;}

	/* -------------------------------------------------- */
	/* #block-spec */
	/* -------------------------------------------------- */
	#block-spec .list-spec{gap:20px;}
	#block-spec .list-spec > li{width:calc((100% - 40px) / 3);}

}

/* ======================================================================================================================= */
/* for sp */
/* ======================================================================================================================= */
@media screen and (min-width:1px) and (max-width:767px){
	section > .container, .section > .container{padding-top:50px;padding-bottom:50px;}

	/* -------------------------------------------------- */
	/* #block-mv */
	/* -------------------------------------------------- */
	#block-mv{background-position:30% center;}
	#block-mv .container{padding-top:18vw;padding-bottom:60px;}
	#block-mv .mv-txt .logo{margin:0 auto 20px;max-width:100%;}
	#block-mv .mv-txt .logo img{max-width:50vw;}
	#block-mv .mv-txt p{font-size:1.8rem;}
	#block-mv .mv-btn{bottom:20px;}
	#block-mv .mv-btn a{font-size:1.4rem;padding:10px 20px;}
	
	/* -------------------------------------------------- */
	/* #block-problem */
	/* -------------------------------------------------- */
	#block-problem .ttl{font-size:2.8rem;margin:15px auto 25px;}
	#block-problem .ttl > span{font-size:4rem;}
	#block-problem .ttl > span > span::before{width:6px;height:6px;margin-left:-3px;}
	#block-problem .sub-ttl{font-size:2rem;margin-bottom:20px;}
	#block-problem .list-problem > li{font-size:1.4rem;padding:15px 0 15px 32px;letter-spacing:0;}
	#block-problem .list-problem > li::before{width:20px;height:20px;top:20px;}
	#block-problem .list-problem > li span{font-size:2rem;}
	#block-problem .img{max-width:90%;margin:30px auto 0;}

	/* -------------------------------------------------- */
	/* #block-solution */
	/* -------------------------------------------------- */
	#block-solution::before{border-width:60px 50vw 0px 50vw;}
	#block-solution .container{padding-top:40px;}
	#block-solution .ttl{font-size:3rem;margin-bottom:30px;}
	#block-solution .ttl::after{display:none;}
	#block-solution .ttl span{font-size:2rem;}
	#block-solution .list-solution{display:block;}
	#block-solution .list-solution > li{width:100%;padding:20px 25px;font-size:1.8rem;}
	#block-solution .list-solution > li + li{margin-top:10px;}

	/* -------------------------------------------------- */
	/* #block-point */
	/* -------------------------------------------------- */
	#block-point{border-bottom-width:20px;}
	#block-point .container{padding-top:50px;padding-bottom:50px;}
	#block-point .txt{font-size:2rem;line-height:1.4;}
	#block-point .txt > span{font-size:2.8rem;}
	#block-point .txt > span > span{font-size:5rem;}
	#block-point .attention{font-size:1.4rem;margin-top:5px;}

	/* -------------------------------------------------- */
	/* #block-case */
	/* -------------------------------------------------- */
	#block-case .ttl{font-size:3.6rem;margin-bottom:25px;}
	#block-case .lead{font-size:1.8rem;}
	#block-case .cmn-case{margin-top:40px;}

	/* -------------------------------------------------- */
	/* #block-spec */
	/* -------------------------------------------------- */
	#block-spec .ttl{font-size:3.6rem;margin-bottom:25px;}
	#block-spec .list-spec{gap:10px;}
	#block-spec .list-spec > li{width:calc((100% - 10px) / 2);border-width:3px;}
	#block-spec .list-spec > li > a{padding:25px 10px 35px;}
	#block-spec .list-spec > li > a::after{width:30px;height:30px;background-size:15px auto;}
	#block-spec .list-spec > li .txt{font-size:2rem;margin-top:20px;}
	#block-spec .list-spec > li .txt small{font-size:1.2rem;}
	#block-spec .btn{margin-top:40px;}
	#block-spec .btn a{font-size:1.8rem;padding:10px 25px;}

}