@charset "UTF-8";

/* --------------------------------
 * base
 * -------------------------------- */
@media screen and (min-width: 641px) {

	body {
	  width: 100%;
	  min-width: 100%;
	    margin: 0;
	color: #808080;
	font-size: 20px;
	overflow-x: hidden;
	}
	a:link, a:visited, a:hover, a:active {
	  color: #7FB745;
	  text-decoration: none;
	}
	a:hover img {
	  opacity: 0.8;
	}

	.inner{
	width: 1120px;
	max-width: 94%;
	margin: 0 auto;
	display: block;
	}
}

@media screen and (max-width: 640px) {
	body {
	width: 100%;
	height: 100%;
	max-width: 640px;
	margin: 0;
	overflow-x: hidden!important;
	color: #6a4e4e;
	font-size: 1.1em!important;
	}

}

/* 汎用CSS
------------------------------------------------------------*/
.brc{clear:both!important;}
.ctr{text-align:center!important; margin:0 auto!important;}
.none{display:none!important;}

.mt100{margin-top:100px!important;}
.mt50{margin-top:50px!important;}
.mt40{margin-top:40px!important;}
.mt30{margin-top:30px!important;}
.mt20{margin-top:20px!important;}
.mt10{margin-top:10px!important;}
.mb100{margin-bottom:100px!important;}
.mb50{margin-bottom:50px!important;}
.mb40{margin-bottom:40px!important;}
.mb30{margin-bottom:30px!important;}
.mb20{margin-bottom:20px!important;}
.mb10{margin-bottom:10px!important;}
.mr50{margin-right:50px!important;}
.mr40{margin-right:40px!important;}
.mr30{margin-right:30px!important;}
.mr20{margin-right:20px!important;}
.mr10{margin-right:10px!important;}
.ml50{margin-left:50px!important;}
.ml40{margin-left:40px!important;}
.ml30{margin-left:30px!important;}
.ml20{margin-left:20px!important;}
.ml10{margin-left:10px!important;}
.pt100{padding-top:100px!important;}
.pt50{padding-top:50px!important;}
.pt40{padding-top:40px!important;}
.pt30{padding-top:30px!important;}
.pt20{padding-top:20px!important;}
.pt10{padding-top:10px!important;}
.pb100{padding-bottom:100px!important;}
.pb50{padding-bottom:50px!important;}
.pb40{padding-bottom:40px!important;}
.pb30{padding-bottom:30px!important;}
.pb20{padding-bottom:20px!important;}
.pb10{padding-bottom:10px!important;}
.pr50{padding-right:50px!important;}
.pr40{padding-right:40px!important;}
.pr30{padding-right:30px!important;}
.pr20{padding-right:20px!important;}
.pr10{padding-right:10px!important;}
.pl50{padding-left:50px!important;}
.pl40{padding-left:40px!important;}
.pl30{padding-left:30px!important;}
.pl20{padding-left:20px!important;}
.pl10{padding-left:10px!important;}
.w100{width:100%!important;}
.w90{width:90%!important;}
.w80{width:80%!important;}
.w70{width:70%!important;}
.w60{width:60%!important;}
.w50{width:50%!important;}
.w40{width:40%!important;}
.w30{width:30%!important;}
.w20{width:20%!important;}
.w10{width:10%!important;}

a img {
transition-property: all;
transition: 0.3s linear;
}

a img:hover {opacity: 0.7;}
section img{max-width: 100%;}
.hdx{overflow-x: hidden!important;}

.text-danger {
    color: #f00;
}



/* --------------------------------
 * clear
 * -------------------------------- */
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}


/* --------------------------------
 * align
 * -------------------------------- */
.center {
  text-align: center;
}

.left{
	text-align: left;
}

.rv{position: relative;}

/* --------------------------------
 * float
 * -------------------------------- */
.f_left {
  float: left;
}
.f_right {
  float: right;
}


/* --------------------------------
 * header
 * -------------------------------- */
@media screen and (min-width: 641px) {
	header#header{
	width: 100%;
	height: auto;
	display: block;
	overflow: auto;
	padding-bottom: 15px;
	box-sizing: border-box;
	position: relative;
	z-index: 10;
	background: #fff;
	border-bottom: 4px solid #7FB745;
	}

	header#header .h1bg{
	display: block;
	box-sizing: border-box;
	width: 100%;
	background: #7FB745;
	}

	header#header .h1bg h1{
	color: #fff;
	font-size: 23px;
	line-height: 1.6em;
	}

	.hdlogo{
	float:left;
	margin-top: 20px;
	max-width: 40%;
	}

	.hdtel{
	float: right;
	margin-top: 10px;
	margin-right: 10px;
	max-width: 25%;
	}

	.hdbtn{
	float: right;
	margin-top: 10px;
	max-width: 30%;
	}
}

@media screen and (max-width: 640px) {
	header#header{
	width: 100%;
	height: auto;
	display: block;
	overflow: auto;
	padding-bottom: 15px;
	box-sizing: border-box;
	position: relative;
	z-index: 10;
	background: #fff;
	border-bottom: 4px solid #7FB745;
	}

	header#header .h1bg{
	display: block;
	box-sizing: border-box;
	width: 100%;
	background: #7FB745;
	text-align: center;
	}

	header#header .h1bg h1{
	color: #fff;
	font-size: 3vw;
	line-height: 1.6em;
	}

	.hdlogo{
	float:left;
	margin-top: 10px;
	margin-left: 2%;
	margin-right: 2%;
	margin-bottom: 10px;
	width: 39.5%;
	}

	.hdtel{
	float: none;
	display: block;
	margin-right: auto;
	margin-left: auto;
	max-width: 96%;
	}

	.hdbtn{
	float: right;
	margin-top: 10px;
	margin-bottom: 10px;
	width: 54%;
	margin-right: 1.5%;
	}
}


/* --------------------------------
 * FV
 * -------------------------------- */
@media screen and (min-width: 641px) {

	#fv {
	width: 100%;
	display: block;
	background: url(../img/fv_bg.png) ;
	position: relative;
	margin: 0 auto 15%!important;
	text-align: center;
	z-index: 0;
	padding-top: 20px;
	}

	img.fv_main{
	margin: auto;
	max-width: 100%;
	}

	.fv_line{
	display: block;
	background: #009239;
	overflow: auto;
	height: auto;
	width: 100%;
	padding-top: 30px;
	padding-bottom: 30px;
	position: absolute;
	z-index: 8;
	}

	img.fv_icon{
	max-width: 20%;
	right: 65%;
	top: 94%;
	position: absolute;
	z-index: 10;
	}

	img.fv_line_img1{
	float: right;
	width: 62%;

	}
}

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

	#fv {
	width: 100%;
	display: block;
	background: url(../img/fv_bg.png) ;
	position: relative;
	margin: 0 auto 23%!important;
	text-align: center;
	z-index: 0;
	padding-top: 20px;
	}

	img.fv_main{
	margin: auto;
	max-width: 100%;
	}

	.fv_line{
	display: block;
	background: #009239;
	overflow: auto;
	height: auto;
	width: 100%;
	padding-top: 3%;
	padding-bottom: 3%;
	position: absolute;
	z-index: 8;
	}

	img.fv_icon{
	display: none;
	}

	img.fv_line_img1{
	display: block;
	float: none;
	width: 92%;
	margin: 0 4%;
	}

}

#fv .cicon {position: absolute; z-index: 3; right: 5vw; top: 1vw; width: 11%; height: auto;}
#fv .cicon img { width: 100%; height: 100%; object-fit: cover;}
@media screen and (max-width: 640px) {
#fv .cicon {top: 25vw; right: -2vw; width: 21vw;}
}


/* --------------------------------
 * manga
 * -------------------------------- */
.manga {
width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

/* --------------------------------
 * box
 * -------------------------------- */
@media screen and (min-width: 641px) {

}

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

}

/* --------------------------------
 * section1
 * -------------------------------- */
@media screen and (min-width: 641px) {
	section#sec1 {
	clear: both;
	background: #fff;
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	line-height: 0;
	padding-bottom: 50px;
	}

	section#sec1 img{max-width: 100%;}

	.bg_arrow{
	width: 100%;
	background: #7FB745 url(../img/title_bg.png) no-repeat top center;
	background-size: 2000px auto;
	}

	.h_img img{
	float: left;
	max-width: 48%!important;
	margin:3% 1%!important;
	}

}

@media screen and (max-width: 640px) {
	section#sec1 {
	clear: both;
	background: #fff;
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	padding-bottom: 50px;
	}

	.spimg{width: 92%!important; margin-right: 4%!important; margin-left: 4%!important;}

	.bg_arrow{
	width: 100%;
	background: #7FB745 url(../img/title_bg.png) no-repeat top center;
	background-size: 140% 100%;
	}

	.h_img img{
	float: none;
	display: inline-block;
	max-width: 92%!important;
	margin:3% 4%!important;
	}

}

/* --------------------------------
 * section2
 * -------------------------------- */
@media screen and (min-width: 641px) {
	section#sec2 {
	background: #fff url(../img/bg_line.png);
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	line-height: 0;
	padding-bottom: 100px;
	}

	.bg_gray{
	width: 100%;
	height: auto;
	background: #999;
	padding-top: 50px;
	padding-bottom: 50px;
	margin: 50px auto;
	}

}

@media screen and (max-width: 640px) {
	section#sec2 {
	background: #fff url(../img/bg_line.png);
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	line-height: 0;
	padding-bottom: 100px;
	}

	.bg_gray{
	width: 100%;
	height: auto;
	background: #999;
	padding-top: 50px;
	padding-bottom: 50px;
	margin: 50px auto;
	}

	.sp_arrow{max-width: 40%!important;}
}

/* --------------------------------
 * section3
 * -------------------------------- */
@media screen and (min-width: 641px) {
	section#sec3 {
	background: #fff;
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	line-height: 0;
	}

	.bg_green{
	background: #7FB745 url(../img/bg_g.png) top center;
	padding-top: 50px;
	padding-bottom: 50px;
	}

	.sec3_arrowbox_w1{
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	background: #fff url(../img/sec3_boxbg_wtog.png) no-repeat bottom center;
	background-size: 100% 118px;
	box-sizing: border-box;
	padding: 3% 5% 12%;
	line-height: 1.4em;
	text-align: center;
	}

	.sec3_arrowbox_g1{
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	background: #e5f1da url(../img/sec3_boxbg_gtow.png) no-repeat bottom center;
	background-size: 100% 118px;
	box-sizing: border-box;
	padding: 3% 5% 12%;
	line-height: 1.4em;
	text-align: center;
	}

	.sec3_arrowbox_w2{
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	background: #fff;
	background-size: 100% 118px;
	box-sizing: border-box;
	padding: 3% 5% 5%;
	line-height: 1.4em;
	text-align: center;
	}

	.sec3_arrowbox_g2{
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	background: #e5f1da;
	background-size: 100% 118px;
	box-sizing: border-box;
	padding: 3% 5% 5%;
	line-height: 1.4em;
	text-align: center;
	}

	p.sec3_boximg1 img{
	width: auto;
	min-height: 294px;
	margin: 3%!important;
	}

	p.sec3_boximg2 img{
	max-height: 294px;
	margin: 2%!important;
	}

	.bg_line{
	background: #fff url(../img/bg_line.png);
	padding-top: 50px;
	padding-bottom: 50px;
	}

	.fbox_g span{
	font-weight: bold;
	font-size: 110%;
	color: #7FB745;
	}
}

@media screen and (max-width: 640px) {
	section#sec3 {
	background: #fff;
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	line-height: 0;
	}

	.bg_green{
	background: #7FB745 url(../img/bg_g.png) top center;
	padding-top: 50px;
	padding-bottom: 50px;
	}

	.sec3_arrowbox_w1{
	width: 92%;
	max-width: 92%;
	margin: 0 auto;
	background: #fff url(../img/sec3_boxbg_wtog.png) no-repeat bottom center;
	background-size: 100% auto;
	box-sizing: border-box;
	padding: 7% 5% 12%;
	line-height: 1.6em;
	text-align: center;
	}

	.sec3_arrowbox_g1{
	width: 92%;
	max-width: 92%;
	margin: 0 auto;
	background: #e5f1da url(../img/sec3_boxbg_gtow.png) no-repeat bottom center;
	background-size: 100% auto;
	box-sizing: border-box;
	padding: 7% 5% 12%;
	line-height: 1.6em;
	text-align: center;
	}

	.sec3_arrowbox_w2{
	width: 92%;
	max-width: 92%;
	margin: 0 auto;
	background: #fff;
	background-size: 100% auto;
	box-sizing: border-box;
	padding: 7% 5% 12%;
	line-height: 1.6em;
	text-align: center;
	}

	.sec3_arrowbox_g2{
	width: 92%;
	max-width: 92%;
	margin: 0 auto;
	background: #e5f1da;
	background-size: 100% auto;
	box-sizing: border-box;
	padding: 7% 5% 12%;
	line-height: 1.6em;
	text-align: center;
	}

	p.sec3_boximg1 img{
	width: auto;
	height: auto;
	margin: 3%!important;
	}

	p.sec3_boximg2 img{
	max-height: initial;
	max-width: 96%;
	margin: 20px 2%!important;
	}

	.bg_line{
	background: #fff url(../img/bg_line.png);
	padding-top: 50px;
	padding-bottom: 50px;
	}
	.fbox_g span{
	font-weight: bold;
	font-size: 110%;
	color: #7FB745;
	}
}


/* --------------------------------
 * section4
 * -------------------------------- */
@media screen and (min-width: 641px) {

	section#sec4 {
	background: #fff;
	display: block;
	margin: 0 auto;
	}

	.box_w{
	background: #fff;
	width: 100%;
	height: auto;
	box-sizing: border-box;
	padding: 10% 6% 6%;
	line-height: 1.6em;
	}

	img.sec4_step{
	max-width: 30%;
	margin: 0 auto -10%!important;
	}

	.arrow_g{
	margin: 30px auto!important;
	}

}


@media screen and (max-width: 640px) {
	section#sec4 {
	background: #fff;
	display: block;
	margin: 0 auto;
	}

	.box_w{
	background: #fff;
	width: 92%;
	margin: auto;
	height: auto;
	box-sizing: border-box;
	padding: 10% 6% 6%;
	line-height: 1.6em;
	}

	img.sec4_step{
	max-width: 25%;
	margin: 0 auto -10%!important;
	}

	.arrow_g{
	margin: 30px auto!important;
	}

}

/* --------------------------------
 * section5
 * -------------------------------- */
@media screen and (min-width: 641px) {
	section#sec5 {
	background: #fff;
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	line-height: 0;
	}
}

@media screen and (max-width: 640px) {
	section#sec5 {
	background: #fff;
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	line-height: 0;
	}
}

/* --------------------------------
 * section6
 * -------------------------------- */
@media screen and (min-width: 641px) {
	section#sec6 {
	width: 100%;
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	line-height:0;
	padding-top: 50px;
	}
}

@media screen and (max-width: 640px) {
	section#sec6 {
	width: 100%;
	display: block;
	margin: 0 auto;
	box-sizing: border-box;
	line-height:0;
	padding-top: 30px;
	}
}

/* --------------------------------
 * form
 * -------------------------------- */
@media screen and (min-width: 641px) {
	article.formarea{
	width: 100%;
	height: auto;
	padding-top: 30px;
	padding-bottom: 30px;
	}
}

@media screen and (max-width: 640px) {
	article.formarea{
	width: 100%;
	height: auto;
	padding-top: 30px;
	padding-bottom: 30px;
	}
}


/* --------------------------------
 * footer
 * -------------------------------- */
@media screen and (min-width: 641px) {
	#footer {
	background: #009239;
	position: relative;
	line-height: 1.4em;
	font-size: 1.2em;
	width: 100%;
	display: block;
	padding-top: 50px;
	padding-bottom: 50px;
	color: #fff;
	text-align: center;
	}

.footer_telbtn {
	display: none;
	}

}

@media screen and (max-width: 640px) {
	#footer {
	background: #009239;
	position: relative;
	line-height: 1.4em;
	font-size: 1.2em;
	width: 100%;
	display: block;
	padding-top: 30px;
	padding-bottom: 100px;
	color: #fff;
	text-align: center;
	}

.footer_telbtn {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    background: #fff;
    border-top: 1px solid #ccc;
    padding: 10px 0;
    width: 100%;
    box-sizing: border-box!important;
    z-index: 9999;
	}

.footer_telbtn a {
    position: relative;
    max-width: 300px;
    font-size: 12px;
    width: 48%;
    margin: 0 1%;
    float: left;
    display: block;
    padding: 15px 0;
    background-image: linear-gradient(#BF2D0F,#EB311B);
    /* background: #BF2D0F; */
    color: #fff;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
    box-sizing: border-box!important;
    border-radius: 5px;
    box-shadow: 0 0 0 3px #D80E09 inset;
    overflow: hidden;
	}

.footer_telbtn a.green {
    background-image: linear-gradient(#67AF2A,#66AE28);
    box-shadow: 0 0 0 3px #63A928 inset;
	}

}

/* hr
----------------------------------------*/

hr {
	clear: both;
    border: none;
    border-top: solid 1px #fff;
    height: 1px;
    color: #FFFFFF;
    margin: 40px 0;
}

hr.clear {
	clear: both;
    border-bottom: none;
    height: 1px;
	color: transparent;
    margin: 0;
}

@media screen and (max-width: 736px) {
	hr {
	    margin: 15px 0;
	}
}

/*clearfix
----------------------------------------*/
.clearfix { zoom:1; }

.clearfix:after {
	content: "";
	display: block;
	visibility: hidden;
	clear: both;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
}


/*float
----------------------------------------*/
.clear { clear: both !important; }
.float_n { float: none !important; }
.float_l {
	float: left;
	*display: inline;
	*zoom: 1;
}
.float_r {
	float: right;
	*display: inline;
	*zoom: 1;
}

.align_l { text-align: left !important; }
.align_c, .a_center { text-align: center !important; }
.align_r, .a_right { text-align: right !important; }.align_l { text-align: left !important; }
.align_c, .a_center { text-align: center !important; }
.align_r, .a_right { text-align: right !important; }
.valign_m { vertical-align: middle !important; }


/* --------------------------------
 * caption
 * -------------------------------- */
p.cap {
  width: 1200px;
  margin: 0 auto 50px;
  text-align: right;
  font-size: 12px;
  color: #b0b0b0;
  line-height: 20px;
}

p.inner_cap {
  width: 1160px;
  margin: 0 auto;
  text-align: right;
  font-size: 12px;
  color: #b0b0b0;
  line-height: 20px;
}

/* --------------------------------
 * swiper
 * -------------------------------- */
.swiper-container {
      width: 100%;
      height: 100%;
    }
    .swiper-slide {
      text-align: center;
      font-size: 18px;
      background: #fff;

      /* Center slide text vertically */
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
    }

    .swiper-pagination-bullet {
      width: 10px;
      height: 10px;
      opacity: 1;
      background: rgba(0,0,0,0.1);
    }
    .swiper-pagination-bullet-active {
      background: #ffa8a8;
    }

/*表示
----------------------------------------*/
/* PCだけ表示 */
.pc_bl {
	display: block !important;
}
/* SPだけ表示 */
.sp_bl {
	display: none !important;
}

/* PCだけ表示 */
.pc_in {
	display: inline !important;
}
/* SPだけ表示 */
.sp_in {
	display: none !important;
}

@media screen and (max-width: 640px) {
	/* PCだけ表示 */
	.pc_bl {
		display: none !important;
	}
	/* SPだけ表示 */
	.sp_bl {
		display: block !important;
	}

	/* PCだけ表示 */
	.pc_in {
		display: none !important;
	}
	/* SPだけ表示 */
	.sp_in {
		display: inline !important;
	}
}

/* 以下引用タグ */
@charset "UTF-8";

@media screen and (max-aspect-ratio:9 / 10) and (max-width:641px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .index section.content05>h3 {
    width: 250px;
    margin: 0 auto
  }
  .index section.content05>h3 img {
    width: 100%
  }
}

.index section.content05 {
  background: #ffdadc;
  padding: 40px 0 60px
}

.index section.content05>h3 {
  text-align: center;
  padding: 0 0 10px
}

.index section.content05>p {
  font-size: 18px!important;
  text-align: center;
  padding: 0 0 50px
}

@media screen and (max-aspect-ratio:9 / 10) and (max-width:641px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .index section.content05>p {
    font-size: 1.4rem;
    padding: 0 0 20px
  }
}

.index section.content05 article>div {
  width: 980px;
  margin: 0 auto;
  border-radius: 10px;
  border: 2px solid #ff808f;
  box-sizing: border-box;
  padding: 20px 0 30px;
  background: #fff
}

.index section.content05 article>div>h3 {
  text-align: center;
  position: relative;
  top: -40px
}

@media screen and (max-aspect-ratio:9 / 10) and (max-width:641px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .index section.content05 article>div {
    width: 100%;
    padding: 30px 10px 20px;
    position: relative
  }
  .index section.content05 article>div>h3 {
    width: 300px;
    margin: 0 auto;
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translate(-50%, 0)
  }
  .index section.content05 article>div>h3 img {
    width: 100%
  }
  .index section.content05 {
    padding: 20px 10px
  }
}

.index section.content05 form>dl {
  width: 68%;
  margin: 0 auto;
  padding: 10px 0
}

.index section.content05 form>dl>* {
  display: inline-block;
  vertical-align: middle
}

@media screen and (max-aspect-ratio:9 / 10) and (max-width:641px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .index section.content05 form>dl {
    width: 100%;
    padding: 5px 0
  }
  .index section.content05 form>dl>* {
    display: block
  }
}

.index section.content05 form>dl dt {
  width: 250px;
  font-size: 18px!important;
}

@media screen and (max-aspect-ratio:9 / 10) and (max-width:641px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .index section.content05 form>dl dt {
    font-size: 1.4rem;
    padding: 0 0 5px
  }
  .index section.content05 form>dl dt label[for=email2] {
    display: block;
    padding: 0 0 4px
  }
}

.index section.content05 form>dl dt span {
  display: block;
  font-size: 14px;
}

.index section.content05 form>dl dt label[for=email2] {
  position: relative
}

.index section.content05 form>dl dt label[for=email2]:before {
  content: "(確認用)";
  display: inline-block;
  position: absolute;
  top: 21px;
  top: 2.1rem;
  left: 0;
  font-size: 14px;
}

@media screen and (max-aspect-ratio:9 / 10) and (max-width:641px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .index section.content05 form>dl dt label[for=email2]:before {
    top: 1.6rem;
    font-size: 1rem
  }
}

.index section.content05 form>dl dt label:after {
  content: "必須";
  display: inline-block;
  vertical-align: middle;
  padding: 5px;
  margin: 0 0 0 5px;
  background: #ff808f;
  color: #fff;
  font-size: 14px!important;
}

@media screen and (max-aspect-ratio:9 / 10) and (max-width:641px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .index section.content05 form>dl dt label:after {
    font-size: 1rem
  }
}

.index section.content05 form>dl dd {
  font-size: 14px;
  font-size: 1.4rem
}

.index section.content05 form>dl dd span:not(.error) {
  margin: 0 0 0 4px
}

.index section.content05 input[type=number], .index section.content05 input[type=tel], .index section.content05 input[type=text] {
  -webkit-appearance: none;
  border-radius: 0;
  border: 1px solid #ff808f;
  padding: 0 0 0 5px;
  box-sizing: border-box;
  height: 25px;
  line-height: 25px
}

.index section.content05 input[type=number]#email, .index section.content05 input[type=number]#email2, .index section.content05 input[type=tel]#email, .index section.content05 input[type=tel]#email2, .index section.content05 input[type=text]#email, .index section.content05 input[type=text]#email2 {
  width: 390px
}

@media screen and (max-aspect-ratio:9 / 10) and (max-width:641px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .index section.content05 input[type=number]#email, .index section.content05 input[type=number]#email2, .index section.content05 input[type=tel]#email, .index section.content05 input[type=tel]#email2, .index section.content05 input[type=text]#email, .index section.content05 input[type=text]#email2 {
    width: 100%
  }
}

.index section.content05 input[type=number]#first-name, .index section.content05 input[type=number]#last-name, .index section.content05 input[type=tel]#first-name, .index section.content05 input[type=tel]#last-name, .index section.content05 input[type=text]#first-name, .index section.content05 input[type=text]#last-name {
  width: 130px
}

@media screen and (max-aspect-ratio:9 / 10) and (max-width:641px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .index section.content05 input[type=number]#first-name, .index section.content05 input[type=number]#last-name, .index section.content05 input[type=tel]#first-name, .index section.content05 input[type=tel]#last-name, .index section.content05 input[type=text]#first-name, .index section.content05 input[type=text]#last-name {
    width: 100px
  }
}

.index section.content05 input[type=number]#age, .index section.content05 input[type=number]#num1, .index section.content05 input[type=number]#num2, .index section.content05 input[type=number]#num3, .index section.content05 input[type=tel]#age, .index section.content05 input[type=tel]#num1, .index section.content05 input[type=tel]#num2, .index section.content05 input[type=tel]#num3, .index section.content05 input[type=text]#age, .index section.content05 input[type=text]#num1, .index section.content05 input[type=text]#num2, .index section.content05 input[type=text]#num3 {
  width: 70px
}

.index section.content05 input[type=submit] {
  display: block;
  outline: 0;
  border: none;
  overflow: hidden;
  text-align: left;
  text-indent: -100px;
  text-indent: -10rem;
  width: 294px;
  height: 50px;
  background: url(../form/btn01.svg) center center no-repeat;
  cursor: pointer;
  margin: 20px auto
}

.caution {
  width: 90%;
  font-size: 14px;
  margin: 0 auto;
  letter-spacing: -.1em;
  line-height: 1.4
}

.error {
  display: block;
  color: red;
  padding: 0 0 5px
}

.secure {
  width: 620px;
  margin: 0 auto;
  padding: 0 0 20px
}

.secure>* {
  display: inline-block;
  vertical-align: middle
}

.secure dt {
  padding: 0 20px 0 0
}

@media screen and (max-aspect-ratio:9 / 10) and (max-width:414px), screen and (min-aspect-ratio:1 / 1) and (max-width:736px) {
  .secure {
    width: 100%
  }
  main .secure dt {
    padding: 0
  }
}

.secure dd {
  font-size: 14px;
  line-height: 1.4
}

.secure dd a {
  color: #000;
  font-weight: 700;
  text-decoration: none
}

.link-container {
  display: flex;
  gap: 30px; /* リンクの間隔 */
  justify-content: center; /* 横方向の中央寄せ */
}

.link-container a {
  text-decoration: none;
  color: blue;
}