@charset "utf-8";

*{
  margin: 0;
  padding: 0;
  font-size: 10px;
}
body{
  max-width: 425px;
  margin: auto;
}
img{
  display: block;
  width: 100%;
}
.flex{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.center{
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.space{
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.around{
  -ms-flex-pack: distribute;
  justify-content: space-around;
}
.wd100{
  width: 100%;
}
header{
  position: fixed;
  top: 0;
  max-width: 425px;
  z-index: 10;
}
.logo_head{
  padding: 8px;
  background-image: url(img/header_back.png);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center center;
}
.logo_head > img{
  flex-basis: 48%;
  width: 48%;
  padding-bottom: 10px;
}
.contact_btn{
  width: 15%;
  padding-bottom: 10px;
}
.contact_btn a{
  display: block;
  margin: 0 6px;
}
.con_head .contact_btn{
  padding: 0;
}
.con_head .contact_btn img,
.con_head .con_btn img{
  width: 35%;
  margin: 0 6px;
}
.main_1_to_contact{
  padding: 32px 0;
  background: #ffbc06;
}
div[class$="to_contact"] a{
  display: block;
  width: 90%;
  margin: auto;
}
.main_2_to_contact,
.main_3_to_contact{
  padding: 32px 0;
}
#form{
  padding: 5% 5% 88px;
  background-image: url(img/form_back.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
#form h2{
  margin-bottom: 4px;
  text-align: center;
  color: #ffe8c0;
  font-size: 6.25vw;
}
#form .info{
  margin: 0 12px;
  padding-left: 1em;
  font-size: 3.4375vw;
  font-weight: bold;
  text-indent: -1.5em;
}
#form .info:nth-of-type(1){
  margin-top: 4px;
}
#form .form_dl{
  margin: 8px 4px;
}
#form .form_dl dt{
  margin-bottom: 4px;
  color: #112171;
  font-size: 4.375vw;
  font-weight: bold;
}
#form .form_dl dd{
  margin-bottom: 12px;
}
#form .form_dl dd input[type="text"],
#form .form_dl dd input[type="tel"]{
  box-sizing: border-box;
  padding: 4px;
  border: none;
  outline: none;
  width: 100%;
  font-size: 4.375vw;
  line-height: 2;
}
.cp_ipselect {
  overflow: hidden;
  width: 100%;
  text-align: center;
}
.cp_ipselect select {
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  line-height: 2;
  font-size: 4.375vw;
}
.cp_ipselect select::-ms-expand {
  display: none;
}
.cp_ipselect.cp_sl01 {
  position: relative;
  border: 1px solid #ffffff;
  border-radius: 2px;
  background: #ffffff;
}
.cp_ipselect.cp_sl01::before {
  position: absolute;
  top: 50%;
  right: 8px;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #666666;
  pointer-events: none;
  transform: translateY(-50%);
}
.cp_ipselect.cp_sl01 select {
  padding: 4px;
  color: #666666;
}
option{
  font-size: 4.375vw;
}
.form_tips{
  margin-top: 4px;
  font-size: 3.75vw;
  font-weight: bold;
  color: #fff;
}
input[name="exp"]{
  display: none;
}
input[name="exp"] + label{
  font-size: 4.375vw;
  font-weight: bold;
}
input[name="exp"] + label span{
  height: 4.375vw;
  width: 4.375vw;
  background: white;
  border: 2px solid #ffffff;
  cursor: pointer;
  float: left;
  margin-right: 10px;
  border-radius: 50%;
  position: relative;
}
input[name="exp"] + label span::after{
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  height: 7px;
  width: 7px;
  background: #333;
  border-radius: 50%;
  transform: translate(-50%,-50%);
  visibility: hidden;
}
input[name="exp"]:checked + label span::after{
  visibility: visible;
}
.form_radio div{
  flex-basis: 35%;
}
#form .form_dl dt.form_text_a{
  font-size: 3.75vw;
  text-align: center;
}
.form_tips_2{
  margin-bottom: 4px;
  color: #fff;
  font-size: 3.125vw;
}
#form textarea{
  box-sizing: border-box;
  width: 100%;
  height: 8em;
  padding: 4px;
  border: none;
  font-size: 4.375vw;
}
.sub_btn button{
  border: none;
}
.ft_position{

margin-top: -71px;
}
.ft_info{
  padding: 24px;
  font-size: 3.125vw;
  color: #a0b0bb;
  text-align: center;
}
.ft_btn a{
  display: block;
}
.ft_btn a:nth-of-type(1),
.ft_btn a:nth-of-type(3){
  flex-basis: 50%;
}
.ft_btn a:nth-of-type(2){
  flex-basis: 15%;
}
.privacypolicy {
  padding: 2em 0;
  color: #444;
  font-size: 2.8vw;
  text-align: center;
  text-decoration: underline;
  cursor: pointer;
}
.img_privacypolicy {
  display: none;
}

.conf_main{

margin-bottom: 8px;

background-image: url(img/form_back.png);

background-repeat: no-repeat;

background-size: 100% 100%;

padding-bottom: 32px;
}
.conf_main h2{
  margin-bottom: 4px;
  text-align: center;
  color: #ffe8c0;
  font-size: 6.875vw;
}
.con_head{
  padding: 8px;
  background-color: #ff035b;
}
.con_head > img{
  flex-basis: 48%;
  width: 48%;
}
.con_btn{
  flex-basis: 30%;
}
.con_btn a{
  display: block;
  margin: 0 6px;
}
.conf_form{
  margin: 12px 5% 0;
}
.conf_dl{

margin: 0 1%;
}
.form_dl dt{
  margin-bottom: 4px;
  font-size: 3.75vw;
  font-weight: bold;
  color: #fff;
}
.form_dl dd{

margin-bottom: 8px;

padding: 0 .75em;

font-size: 4.375vw;

font-weight: bold;
}
.conf_btn button{
  margin: 8px;
  border: none;
  outline: none;
  background: transparent;
}
.conf_ft_btn{
  margin-top: 8px;
}

.comp_main{
  margin-bottom: 8px;
background-image: url(img/comp_back.png);
background-repeat: no-repeat;
background-size: 100% 100%;
padding-bottom: 32px;
}
.comp_main h2{
  margin-bottom: 4px;
  text-align: center;
  color: #ffe8c0;
  font-size: 6.875vw;
}
.comp_p{

padding: 10% 8%;
}
.comp_p p{margin-bottom: 4px;font-size: 3.75vw;font-weight: bold;}
