@charset "UTF-8";
/* CSS Document */
body{
	font-family: "noto-sans-cjk-jp", sans-serif;
font-weight: 400;
font-style: normal;
}
.mincho{
font-family: "shippori-mincho", sans-serif;
font-weight: 700;
font-style: normal;
}
.mb-70{
	margin-bottom: 12.962962962962962vw;
}
main{
	max-width: 768px;
	margin: 0 auto;
}
#main_copy{
	background: #5B9FAC;
	text-align: center;
	padding: .5em 0;
	margin-top:5px;
}
#main_copy h2{
	font-weight: bold;
	color: #fff;
	margin-bottom: 0;
	font-size: 4.074074074074074vw;
}
#main_cta{
	background: #DD909F;
	text-align: center;
	padding: .5em 0;
	position: relative;
}
#main_cta a{
	font-weight: bold;
	color: #fff;
	margin-bottom: 0;
	font-size: 6.481481481481481vw;
	text-decoration: none;
	display: block;
	
}
#main_cta a span{
	margin-right: .5rem;
	font-size: 4.074074074074074vw;
}

#main_cta::after {
	content: "";
	width: 4.62962962962963vw;
	height: 4.62962962962963vw;
	background: url(../img/main_cta.svg);
	background-position: center;
	background-size: cover;
	top:50%;
	right: 10px;
	transform: translateY(-50%);
	position: absolute;
	z-index: 10;
}
#bg_wrap{
	
}
#intro{
	background-image: url(../img/intro-bg.png);
	background-position: top center;
	background-size: 540px;
	background-repeat: no-repeat;
	padding:10.185185185185185vw 4.62962962962963vw  0;
	background-color: #F0FAFF;
}
#intro h2{
	text-align: center;
	font-size: 4.62962962962963vw;
	margin-bottom: 9.25925925925926vw;
	line-height: 1.75;
}
#intro p{
	color: #fff;
	margin-bottom: 9.25925925925926vw;
	line-height: 1.75;
	text-shadow: 0px 3px 6px rgba(0,0,0,0.18);
}
#intro p.intro_copy{
	text-align: center;
	font-size: 4.62962962962963vw;
	
}

#intro p span{
	background: #5EB3D1;
	font-weight: bold;
	padding: .1em;
}

#intro p + img{
	margin-bottom: 9.25925925925926vw;
	
}
#intro .countup{
	background: #5B9FAC;
	padding: 7.4074074074074066vw 9.25925925925926vw 3rem;
	margin-bottom: 4.62962962962963vw
}
#intro .countup p{
	text-align: center;
	font-size: 3.7037037037037033vw;
	margin-bottom: 0;
	font-weight: bold;
}
#intro .countup h3{
	text-align: center;
	font-size: 7.4074074074074066vw;
	font-weight: bold;
	color: #fff;
	letter-spacing: 5px;
	margin-bottom: 3.7037037037037033vw;
}
#intro .countup .number{
	
	text-align: center;
}
#intro .countup .number p{
	font-size: 12.962962962962962vw;
	line-height: 1;
	letter-spacing: 2px;
	position: relative;
	display: inline;
}

#intro .countup .number span{
	font-size: 5.555555555555555vw;
	background: inherit;
	padding: 0;
}

#intro .countup small{
	text-align: right;
	color: #fff;
	display: block;
	position: absolute;
	font-size: 2.5925925925925926vw;
	font-weight: 400;
	right: 0;
	bottom:0;
	letter-spacing: 0;
}
#check{
	position: relative;
	background: #F0FAFF;
	padding: 9.25925925925926vw 10.185185185185185vw;
}

#check::before{
	content: "";
	background: url(../img/check_bg.png);
	position: absolute;
	top:-16.296296296296298vw;
	width: 100%;
	aspect-ratio:540/329;
	left: 0;
	background-position: center;
	background-size: cover;
}

#check .check_wrap{
	background: #fff;
	border: 1px solid #5C84B5;
	padding: 7.4074074074074066vw;
	position: relative;
}
#check .check_wrap::before{
	content: "";
	background: url(../img/check.svg);
	position: absolute;
	top:0;
	width: 19.611111111111114vw;
	aspect-ratio:105.9/35;
	left: 10px;
	background-position: center;
	background-size: cover;
	transform: rotate(-8deg)translateY(-50%);
}

#check .check_wrap p{
	color: #5C84B5;
	font-weight: bold;
	font-size: 3.7037037037037033vw;
	position: relative;
	padding-left: 4.814814814814815vw;
	margin-bottom: 0;
}

#check .check_wrap p::before{
	position: absolute;
	content: "";
	width: 4.074074074074074vw;
	height: 4.074074074074074vw;
	background-image: url(../img/check_icon.svg);
	background-position: center;
	background-size: cover;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#check .check_wrap p:not(:last-child){
	margin-bottom: 2.7777777777777777vw;
}
#voice{
	background: #F0FAFF;
	padding: 0 5.185185185185185vw;	
}
#voice .voicettl {
  position: relative;
  margin-bottom:5.555555555555555vw;
  padding: 1.8518518518518516vw 0;
  color: #fff;
  background: #5C84B5;
	text-align: center;
	border-radius: 20px;
}

#voice .voicettl:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #5C84B5;
}

#voice .voicettl h2 {
  margin: 0;
  padding: 0;
	font-weight: bold;
  font-size: 3.3333333333333335vw;
}
#voice .voice-maincopy p{
	margin-bottom: 0;
	font-size: 3.7037037037037033vw;
	text-align: center;
	color: #5C84B5;
	font-weight: bold;
}
#voice .voice-maincopy p:last-child{
	margin-bottom: 8.333333333333332vw;
	font-size: 7.4074074074074066vw;
}
#voice_slider_wrap .slide-arrow{
	position: absolute;
	top:50%;
	transform: translateY(-50%);
	width: 6.296296296296296vw;
	aspect-ratio:1/1;
	z-index: 1;
}

#voice_slider_wrap .slide-arrow.prev-arrow{
	left:-2.7777777777777777vw;
}
#voice_slider_wrap .slide-arrow.next-arrow{
	right:-2.7777777777777777vw;
}
#voice .voice_text{
	background: #fff;
	padding: 3.7037037037037033vw 4.62962962962963vw;
}
#merit{
	padding-top:15.74074074074074vw;
	padding-left: 6.481481481481481vw;
	padding-right: 6.481481481481481vw;
	background: #F0FAFF;
}
#merit .merit_ttl{
	font-size: 3.7037037037037033vw;
	text-align: center;
	font-weight: bold;
	color: #5C84B5;
}
#merit h2{
	font-size: 7.4074074074074066vw;
	text-align: center;
	font-weight: bold;
	color: #5C84B5;
	margin-bottom: 8.148148148148149vw;
}

#merit .merit_wrap{
	background: #fff;
	border: 1px solid #5C84B5;
	padding: 7.4074074074074066vw;
	position: relative;
	z-index: 1;
}
#merit .merit_wrap::before{
	content: "";
	background: url(../img/merit.svg);
	position: absolute;
	top:0;
	width: 21.03333333333333vw;
	aspect-ratio:113.58/37;
	left: 10px;
	background-position: center;
	background-size: cover;
	transform: rotate(-8deg)translateY(-50%);
}

#merit .merit_wrap p{
	color: #5C84B5;
	font-weight: bold;
	font-size: 3.7037037037037033vw;
	position: relative;
	padding-left: 4.814814814814815vw;
	margin-bottom: 0;
}

#merit .merit_wrap p::before{
	position: absolute;
	content: "";
	width: 4.074074074074074vw;
	height: 4.074074074074074vw;
	background-image: url(../img/check_icon.svg);
	background-position: center;
	background-size: cover;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#merit .merit_wrap p:not(:last-child){
	margin-bottom: 2.7777777777777777vw;
}

#knowledge{
	padding-top:8.703703703703704vw;
	padding-left: 6.481481481481481vw;
	padding-right: 6.481481481481481vw;
	background: #F0FAFF;
	position: relative;
}

#knowledge::before{
	content: "";
	background: url(../img/merit_bg.png);
	position: absolute;
	top:-10.185185185185185vw;
	width: 100%;
	aspect-ratio:540/329;
	left: 0;
	background-position: center;
	background-size: cover;
}
#knowledge h2{
	text-align: center;
	font-size: 4.62962962962963vw;
	margin-bottom: 7.4074074074074066vw;
	font-weight: bold;
	line-height: 1.75;
	position: relative;
	z-index: 1;
}
#knowledge p{
	position: relative;
	z-index: 1;
	margin-bottom: 7.4074074074074066vw;
	line-height: 1.75;
}
#knowledge ul{
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	
}
#knowledge ul li{
	width: 26.666666666666668vw;
}

#change{
	padding-top:7.4074074074074066vw;
	padding-left: 6.481481481481481vw;
	padding-right: 6.481481481481481vw;
	background: #F0FAFF;
	position: relative;
}

#change::before{
	content: "";
	background: url(../img/change_bg.png);
	position: absolute;
	top:6.481481481481481vw;
	width: 100%;
	aspect-ratio:456/329;
	left: 0;
	background-position: center;
	background-size: cover;
}
#change h2{
	text-align: center;
	font-size: 4.62962962962963vw;
	margin-bottom: 7.4074074074074066vw;
	font-weight: bold;
	line-height: 1.75;
	position: relative;
	z-index: 1;
}
#change p{
	position: relative;
	z-index: 1;
	margin-bottom: 7.4074074074074066vw;
	line-height: 1.75;
}
#contribution{
	padding-top:7.4074074074074066vw;
	padding-left: 6.481481481481481vw;
	padding-right: 6.481481481481481vw;
	padding-bottom: 7.4074074074074066vw;
	background: #F0FAFF;
	position: relative;
}

#contribution h2{
	text-align: center;
	font-size: 4.62962962962963vw;
	margin-bottom: 5.555555555555555vw;
	font-weight: bold;
	line-height: 1.75;
}
#contribution p{
	line-height: 1.75;
	font-size: 3.7037037037037033vw;
	color: #5C84B5;
	font-weight: bold;
	background: #fff;
	padding: 3.7037037037037033vw 5.555555555555555vw;
	margin-bottom: 0;
}
#tokuten{
	padding-top:10.185185185185185vw;
	padding-left: 6.481481481481481vw;
	padding-right: 6.481481481481481vw;
	margin-bottom: 16.666666666666664vw;
}
#tokuten p.tokuten_ttl{
	font-size: 3.7037037037037033vw;
	text-align: center;
	font-weight: bold;
	color: #5C84B5;
}
#tokuten h2{
	text-align: center;
	font-size: 7.4074074074074066vw;
	margin-bottom: 11.11111111111111vw;
	font-weight: bold;
	color: #5C84B5;
	
}
#tokuten h2 span{
position: relative;
}
#tokuten h2 span::before,#tokuten h2 span::after{
	content: "";
	position: absolute;
	top:0;
	
}

#tokuten h2 span::before{
	background: url(../img/rewards_ttl1.svg);
	width: 11.666666666666666vw;
	aspect-ratio:63/45.78;
	left: -16.48148148148148vw;
	background-position: center;
	background-size: cover;
}
#tokuten h2 span::after{
	background: url(../img/rewards_ttl2.svg);
	width: 11.666666666666666vw;
	aspect-ratio:63/45.78;
	right: -16.48148148148148vw;
	background-position: center;
	background-size: cover;
}
.tokuten_items:not(:last-child){
	margin-bottom: 7.4074074074074066vw;
}
.tokuten_items .rewards_copy{
	padding: 5.555555555555555vw 3.7037037037037033vw;
}
.tokuten_items .rewards_copy .copy{
	font-size: 4.62962962962963vw;
	margin-bottom: 2.7777777777777777vw;
	text-align: center;
	font-weight: bold;
}
.tokuten_items .rewards_copy .copy2{
	font-size:  5.555555555555555vw;
	margin-bottom: 0;
	text-align: center;
	font-weight: bold;
}
.tokuten_items .rewards_copy h3{
	margin-bottom: 3.7037037037037033vw;
	font-size: 7.037037037037037vw;
	text-align: center;
}
.tokuten_items.rewards1 .rewards_copy{
	background: #E9F4F5;
	margin-bottom: 7.4074074074074066vw;
}
.tokuten_items.rewards1 .rewards_copy .copy{
	color:#5B9FAC;
}
.tokuten_items.rewards1 .rewards_copy h3{
	color:#5B9FAC;
}
.tokuten_items.rewards2 .rewards_copy{
	background: #F0FAFF;
	margin-bottom: 10.185185185185185vw;
}
.tokuten_items.rewards2 .rewards_copy .copy{
	color:#5C84B5;
}
.tokuten_items.rewards2 .rewards_copy .copy2{
	color:#5C84B5;
}
.tokuten_items.rewards2 .rewards_copy h3{
	color:#5C84B5;
}
.tokuten_items.rewards3 .rewards_copy{
	background: #E9F4F5;
}
.tokuten_items.rewards3 .rewards_copy .copy{
	color:#5B9FAC;
}
.tokuten_items.rewards3 .rewards_copy h3{
	color:#5B9FAC;
}
.tokuten_items.rewards4 .rewards_copy{
	background: #FFEFF1;
}
.tokuten_items.rewards4 .rewards_copy .copy{
	color:#DD909F;
}
.tokuten_items.rewards4 .rewards_copy h3{
	color:#DD909F;
}

.tokuten_items .detail_wrap:not(:last-child){
	margin-bottom: 5.555555555555555vw;
}
.tokuten_items.rewards1 h4{
	background: #5B9FAC;
	padding: 1.8518518518518516vw 3.7037037037037033vw;
	color: #fff;
	font-weight: bold;
	font-size: 4.62962962962963vw;
}

.tokuten_items.rewards1 .detail_wrap:not(:first-child) h4{
	margin-bottom: 3.7037037037037033vw;
}
.tokuten_items.rewards1 h4 span{
	font-size: 3.3333333333333335vw;
	
}
.tokuten_items .kouza_wrap h4{
	font-size: 3.3333333333333335vw;
	color: #5C84B5;
	font-weight: bold;
}

.tokuten_items .kouza_wrap dl:not(:last-child){
	margin-bottom: 3.7037037037037033vw;
}
.tokuten_items .kouza_wrap dl dt{
	background: #5C84B5;
	color: #fff;
	font-weight: bold;
	font-size: 3.3333333333333335vw;
	padding: 2.4074074074074074vw 3.3333333333333335vw;
	position: relative;
	cursor: pointer;
}
.tokuten_items .kouza_wrap dl dt::before,.tokuten_items .kouza_wrap dl dt::after{
    content: "";
    display: block;
    width: 15px;/*線の長さ*/
    height: 4px;/*線の太さ*/
    background: #fff;/*線の色*/
    position: absolute;
    top: calc(50% + 2px);
    right: 5.555555555555555vw;
    border-radius: 100px;
    transform: rotate(150deg);
    transform-origin:calc(100% - 2px) 50%;
}    
.tokuten_items .kouza_wrap dl dt::after{
    transform: rotate(30deg);
}
.tokuten_items .kouza_wrap:not(:last-child){
	margin-bottom: 6.481481481481481vw;
}

.tokuten_items .kouza_wrap dl dd{
	margin-top: 5.555555555555555vw;
	display: none;
}
.tokuten_items .kouza_wrap dl dd p.tokucho_ttl{
	display: inline-block;
	background: #5C84B5;
	color: #fff;
	font-weight: bold;
	padding: .2em 1.5em;
	border-radius: 20px;
	margin-bottom: .5em;
}
.tokuten_items .kouza_wrap dl dd img{
	margin-bottom: 5.555555555555555vw; 
	
}
.tokuten_items .kouza_wrap dl dd .inner_item:not(:last-child){
	margin-bottom: 4.62962962962963vw;
}
.tokuten_items .kouza_wrap dl dd h5{
	color: #5C84B5;
	font-weight: bold;
	font-size: 16px;
}

.tokuten_items .iframe{
	width: 100%;
	aspect-ratio:16/9;
	background: #a9a9a9;
}
.andmore{
	font-size: 7.037037037037037vw;
	color: #DD909F;
	text-align: center;
}
.tokuten_items ul.ambassador{
	display: flex;
	flex-wrap: nowrap;
	padding: 0;
	margin: 0;
	list-style: none;
	justify-content: space-between;
	margin-bottom: 1rem;
}

.tokuten_items ul.ambassador li{
	width: fit-content;
	font-size: 3.7037037037037033vw;
	color: #DD909F;
	font-weight: bold;
}
.tokuten_items ul.ambassador li button{
	background: #DD909F;
	color: #fff;
	font-size: 2.9629629629629632vw;
	border-radius: 20px;
	position: relative;
	text-decoration: none;
	padding: 2px 5.9259259259259265vw;
	display: inline-block;
	border: none;
}

.tokuten_items ul.ambassador li button::after{
	content:"";
	position: absolute;
	top: calc(50% - 7px);
	right: 10px;
	width: 10px;
	height: 10px;
	border-bottom:3px solid #fff;
	border-right:3px solid #fff;
	transform: rotate(45deg);
	
}

.tokuten_items .ambassador_detail{
	display: none;
	background: #fff;
	padding: 1rem;
	margin-bottom: 2rem;
}
.ambassador_wrap{
	background: #fff;
	padding: 2.2222222222222223vw;
}
.ambassador_wrap h4{
	background: #DD909F;
	padding: 1.2962962962962963vw 2.037037037037037vw;
	color: #fff;
	font-weight: bold;
	font-size: 16px;
	margin-bottom: 2.9629629629629632vw;
}
.ambassador_wrap .ambassador_item h5{
	font-size: 2.7777777777777777vw;
	margin-bottom: 2.7777777777777777vw;
	color: #DD909F;
	font-weight: bold;
}
.ambassador_wrap .ambassador_item:not(:last-child){
	margin-bottom: 2.9629629629629632vw;
	padding-bottom: 2.9629629629629632vw;
	border-bottom: 1px solid #000;
}
.ambassador_wrap .ambassador_item .ambassador_cont{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
.ambassador_wrap .ambassador_item .ambassador_cont .ambassador_img{
width: 31.203703703703706vw;
}
.ambassador_wrap .ambassador_item .ambassador_text{
	font-size: 2.5925925925925926vw;
	width: 42.22222222222222vw;
}

#price{
	padding-top:5.555555555555555vw;
	padding-left: 6.481481481481481vw;
	padding-right: 6.481481481481481vw;
	padding-bottom: 7.4074074074074066vw;
	background: #F8F5E7;
	position: relative;
}
#price .bg-white{
	padding: 3.7037037037037033vw 0;
	margin-bottom: 8.148148148148149vw;
}
#price h2{
	text-align: center;
	font-size: 7.4074074074074066vw;
	margin-bottom: 6.666666666666667vw;
}

#price h2 span{
	border-bottom: 2px dashed #000;
	padding-bottom: 4.444444444444445vw;
	display: inline-block;
}
#price .bg-white p{
	margin-bottom: 0;
	font-weight: bold;
	text-align: center;
	font-size: 3.3333333333333335vw;
}
.pricelist_wrap:not(:last-child){
	margin-bottom: 8.333333333333332vw;
	
}

.pricelist_wrap h3{
	font-size: 16px;
	font-weight: bold;
}
.pricelist_wrap .pricelist_table th,
.pricelist_wrap .pricelist_table td{
	font-size: 3.7037037037037033vw;
	font-weight: bold;
	border: 1px solid #000;
	
}
.pricelist_wrap .pricelist_table th{
	text-align: center;
	background: #D5D1BF;
	padding: 3.5185185185185186vw 0;
	width: 22.22222222222222vw;
}
.pricelist_wrap .pricelist_table td{
	background: #fff;
	padding: 3.5185185185185186vw 2.9629629629629632vw;
	
}
.pricelist_wrap .pricelist_table td small{
	font-weight: normal;
}
#faq{
	padding-top:5.555555555555555vw;
	padding-left: 6.481481481481481vw;
	padding-right: 6.481481481481481vw;
	padding-bottom: 7.4074074074074066vw;
	background: #FFFCDE;
	position: relative;
}
#faq h2{
	text-align: center;
	font-size: 7.4074074074074066vw;
	margin-bottom: 6.666666666666667vw;
}

#faq h2 span{
	border-bottom: 2px dashed #000;
	padding-bottom: 4.444444444444445vw;
	display: inline-block;
}
.faq_wrap dl:not(:last-child){
	margin-bottom: 3.7037037037037033vw;
}
.faq_wrap dl dt{
	background: #fff;
	font-weight: bold;
	font-size: 3.3333333333333335vw;
	padding: 2.4074074074074074vw 3.3333333333333335vw;
	position: relative;
	cursor: pointer;
	min-height: 12.222222222222221vw;
    align-content: center;
}
.faq_wrap dl dt::before,.faq_wrap dl dt::after{
    content: "";
    display: block;
    width: 15px;/*線の長さ*/
    height: 4px;/*線の太さ*/
    background: #000;/*線の色*/
    position: absolute;
    top: calc(50% + 2px);
    right: 5.555555555555555vw;
    border-radius: 100px;
    transform: rotate(150deg);
    transform-origin:calc(100% - 2px) 50%;
}
.faq_wrap dl dt::after{
    transform: rotate(30deg);
}
.faq_wrap dl dt img{
	width: 8.148148148148149vw;
	aspect-ratio:1/1;
	margin-right: 1rem;
}
.faq_wrap:not(:last-child){
	margin-bottom: 6.481481481481481vw;
}

.faq_wrap dl dd{
	margin-top: 20px;
	display: none;
}
#message{
	padding-top: 17.59259259259259vw;
	padding-left: 2.9629629629629632vw;
	padding-right: 2.9629629629629632vw;
	padding-bottom: 2.9629629629629632vw;
}
#message h2{
	font-size: 5.555555555555555vw;
	text-align: center;
}
#message h2 span{
	padding-bottom: 7.4074074074074066vw;
	margin-bottom: 3.7037037037037033vw;
	display: inline-block;
	position: relative;
}
#message h2 span{
position: relative;
}
#message h2 span::before,#message h2 span::after{
	content: "";
	position: absolute;
	
}

#message h2 span::before{
	background: url(../img/message1.svg);
	width: 8.450000000000001vw;
	aspect-ratio:45.63/101.37;
	left: -16.48148148148148vw;
	background-position: center;
	background-size: cover;
	transform: rotate(-18deg);
	bottom:0;
}
#message h2 span::after{
	background: url(../img/message2.svg);
	width: 6.883333333333333vw;
	aspect-ratio:37.17/96.15;
	right: -16.48148148148148vw;
	background-position: center;
	background-size: cover;
	transform: rotate(22deg);
	bottom:5px;
}
footer img{
	margin-bottom: 9.25925925925926vw;
}
footer .footer_logo{
	width: 49.629629629629626vw;
	margin: 0 auto 5.555555555555555vw;
}
footer .footer_logo img{
	margin-bottom: 0;
}
footer .footer_access{
	padding: 0 4.62962962962963vw 4vw;
}
@media screen and (min-width:540px){
	#main_copy h2{
		font-size: 22px;
	}
	#main_cta a{
		font-size: 35px;
	}
	#main_cta a span{
		font-size: 22px;
	}
	#main_cta::after{
		    width: 25px;
    height: 25px;
	}
	#intro {
		background-size: 100% 90%;
		padding: 50px 15px 0;
	}
	#intro h2{
		font-size: 25px;
		margin-bottom: 40px;
	}
	#intro p,#intro p + img {
    margin-bottom: 40px;
	}
	#intro p.intro_copy{
		font-size: 25px;
	}
	#intro .countup{
		padding: 40px;
		margin-bottom: 40px;
	}
	#intro .countup p{
		font-size: 20px;
	}
	#intro .countup h3{
		font-size: 40px;
    margin-bottom: 40px;
	}
	#intro .countup .number p{
		font-size: 70px;
	}#intro .countup .number span{
		font-size: 30px;
	}
	#intro .countup small{
		font-size: 14px;
	}
	#check{
		padding: 50px 40px;
	}
	#check::before{
		top:0;
		
	}
	#check .check_wrap{
		padding: 30px 20px;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
	#check .check_wrap p{
		font-size: 22px;
		padding-left: 30px;
	}
	#check .check_wrap::before{
		width: 105px;
	}
	#check .check_wrap p::before{
		width: 21px;
		height: 21px;
	}
	#check .check_wrap p:not(:last-child){
		margin-bottom: 1rem;
	}
	#voice{
		padding: 0 40px;
		
	}#voice .voicettl {
    position: relative;
    margin-bottom: 30px;
    padding: 10px;
	}
	#voice .voicettl h2{
		font-size: 18px;
	}
	#voice .voice-maincopy p{
		font-size: 20px;
	}
	#voice .voice-maincopy p:last-child{
		font-size: 40px;
		margin-bottom: 40px;
	}
	#voice_slider_wrap .slide-arrow{
		width: 34px;
	}
	#voice_slider_wrap .slide-arrow.prev-arrow {
    left: 0;
}
	#voice_slider_wrap .slide-arrow.next-arrow {
    right: 0;
}
	#voice .voice_text{
		padding: 20px;
	}
	#merit {
    padding-top: 50px;
    padding-left: 16px;
    padding-right: 16px;
	}
	#merit .merit_ttl{
		font-size: 20px;
	}
	#merit h2{
		font-size: 40px;
		margin-bottom: 40px;
	}
	#merit .merit_wrap::before{
		width: 113.58px;
	}#merit .merit_wrap{
	        padding: 30px 20px;
        max-width: 500px;
        margin-left: auto;
        margin-right: auto;
	}
	#merit .merit_wrap p{
		font-size: 22px;
		padding-left:30px;
	}
	#merit .merit_wrap p:not(:last-child){
		margin-bottom: 1rem;
	}
	#merit .merit_wrap p::before{
		width: 21px;
		height: 21px;
	}
	#knowledge {
    padding-top: 50px;
    padding-left: 16px;
    padding-right: 16px;
	}
	#knowledge h2{
		font-size: 25px;
		margin-bottom: 40px;
	}#knowledge p{
		margin-bottom: 30px;
	}
	#knowledge ul li{
		width: 30%;
	}
	#change,#contribution,#tokuten {
    padding-top: 50px;
    padding-left: 16px;
    padding-right: 16px;
	}
	#change h2,#contribution h2{
		font-size: 25px;
		margin-bottom: 40px;
	}
	#change p{
		margin-bottom: 30px;}
	#contribution p{
		font-size: 20px;
		padding: 40px;
	}#contribution {
    padding-bottom: 30px;
	}
	#tokuten p.tokuten_ttl{
		font-size: 20px;
	}
	#tokuten h2{
		font-size: 40px;
		margin-bottom: 40px;
	}
	#tokuten h2 span::before{
		width: 63px;
		left: -70px;
	}
	#tokuten h2 span::after{
		width: 63px;
		right: -70px;
	}
	.tokuten_items .rewards_copy{
		padding: 30px; 
	}
	.tokuten_items .rewards_copy .copy{
		font-size: 25px;
    margin-bottom: 20px;
	}
	.tokuten_items .rewards_copy h3{
		font-size: 38px;
    margin-bottom: 30px;
	}
	.tokuten_items.rewards1 .rewards_copy{
		margin-bottom: 30px;
	}
	.tokuten_items.rewards1 h4{
		padding: 1rem 20px;
		font-size:25px;
	}
	.tokuten_items.rewards1 h4 span{
		font-size: 18px;
	}
	.tokuten_items .detail_wrap:not(:last-child){
		margin-bottom: 30px;
	}
	.tokuten_items.rewards1 .detail_wrap:not(:first-child) h4,.tokuten_items.rewards2 .rewards_copy
	{
		margin-bottom: 20px;
	}
	.tokuten_items:not(:last-child){
		margin-bottom: 40px;
	}
	.tokuten_items .rewards_copy .copy2{
		font-size: 30px;
	}
	.tokuten_items .kouza_wrap h4{
		font-size: 18px;
	}
	.tokuten_items .kouza_wrap dl dt{
		font-size: 18px;
		padding: .5rem 1rem; 
	}
	.tokuten_items .kouza_wrap dl dt::before, .tokuten_items .kouza_wrap dl dt::after{
		right: 30px;
	}
	.tokuten_items .kouza_wrap:not(:last-child){
		margin-bottom: 40px;
	}
	.tokuten_items .kouza_wrap dl:not(:last-child){
		margin-bottom: 30px;
	}
	.tokuten_items .kouza_wrap dl dd{
		margin-top: 30px;
	}
	.tokuten_items .kouza_wrap dl dd img{
		margin-bottom: 20px;
	}
	.tokuten_items .kouza_wrap dl dd .inner_item:not(:last-child){
		margin-bottom: 30px;
	}
	.andmore{
		font-size: 38px;
	}
	.tokuten_items ul.ambassador li{
		font-size: 20px;
	}
	.tokuten_items ul.ambassador li button{
		font-size: 16px;
		padding: 2px 50px;
	}
	.ambassador_wrap{
		padding: 20px 30px;
	}
	.ambassador_wrap h4{
		font-size: 16px;
		padding: 10px 20px;
		margin-bottom: 20px;
	}
	.ambassador_wrap .ambassador_item h5{
		font-size: 18px;
		margin-bottom: 20px;
	}
	.ambassador_wrap .ambassador_item .ambassador_text{
		font-size: 14px;
		width: 55%;
	}
	.ambassador_wrap .ambassador_item .ambassador_cont .ambassador_img{
		width: 40%;
	}
	.ambassador_wrap .ambassador_item:not(:last-child){
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	#tokuten{
		margin-bottom: 40px;
	}
	#price{
		padding: 50px 30px;
	}
	#price h2{
		font-size: 40px;
		margin-bottom: 20px;
	}
	#price h2 span{
		padding-bottom: 20px;
	}
	#price .bg-white{
		padding: 20px 0;
		margin-bottom: 30px;
	}
	#price .bg-white p{
		font-size: 18px;
	}
	.pricelist_wrap .pricelist_table th{
		padding: 20px 0;
		font-size: 20px;
		width: 30%;
	}
	.pricelist_wrap .pricelist_table td{
		padding: 20px;
		font-size: 20px;
		width: 70%;
	}
	.pricelist_wrap:not(:last-child){
		margin-bottom: 30px;
	}
	#faq{
		padding: 50px 20px;
	}
	#faq h2{
		font-size: 40px;
		margin-bottom: 20px;
	}
	#faq h2 span{
		padding-bottom: 20px;
	}
	.faq_wrap dl dt{
		padding:10px 20px;
		font-size: 18px;
		min-height:66px;
	}.faq_wrap dl dt img{
	width: 44px;
		
	}
	.faq_wrap dl:not(:last-child){
		margin-bottom: 1rem;
	}
	.faq_wrap dl dt::before, .faq_wrap dl dt::after{
		right: 30px;
	}
	#message{
		padding: 80px 20px 50px;
	}
	#message h2{
		font-size: 30px;
	}
	#message h2 span::before{
		width: 45.63px;
		left: -60px;
	}
	#message h2 span::after{
		width: 37.17px;
		right: -55px;
	}
	#message h2 span{
		padding-bottom: 1rem;
		margin-bottom: 30px;
	}
	footer img{
		margin-bottom: 50px;
	}
	footer .footer_logo{
		width: 60%;
		margin-bottom: 40px;
	}
}