@charset "utf-8";



#main_box {

  float: none;

  width: calc(100% - 96px);

  margin-left: auto;

  margin-right: auto;

  padding: 24px 48px 48px;

}



#main_box > div > div {

  box-sizing: border-box;

}



@media screen and (max-width:767px) {

  #main_box {

    padding: 0;

    padding-right: calc(8 / 375 * 100%);

    padding-left: calc(8 / 375 * 100%);

  }

}









/*------------------------------------------------*/



/* Contacts */



/*------------------------------------------------*/





/* form_list */

/* required */

.form_box .required {

  color: rgb(208,17,27);

}

.form_box .error-message {

  color: rgb(208,17,27);

  font-weight: 700;

}



.form_list > li {

  position: relative;

  display: flex;

  align-items: flex-start;

  margin-top: 16px;

  border-bottom: 1px solid rgb(222,222,222);

  padding-left: 3em;

}

.form_list > li > .required {

  position: absolute;

  top: 4px;

  left: 0;

  width: 3em;

  text-align: center;

}

.form_list > li > .title {

  width: 180px;

  padding-top: 4px;

  font-weight: 700;

}

.form_list > li > .main {

  width: calc(100% - 180px);

  padding-bottom: 16px;

  font-size: 1.6rem;

}

.form_list > li > .main select {

  background-color: transparent;

  font-size: 1.6rem;

  padding: 8px 8px 10px;

}

.form_list > li > .main input[type="text"],

.form_list > li > .main input[type="password"] {

  font-size: 1.6rem;

  padding: 8px;

}

.form_list > li > .main._input_col1 input[type="text"],

.form_list > li > .main._input_col1 input[type="password"] {

  width: 310px;

}

.form_list > li > .main._input_name input[type="text"] {

  width: calc((100% - 10em) / 2);

}

.form_list > li > .main._input_name .input_ttl {

  display: inline-block;

  width: 2.5em;

  text-align: center;

}

.form_list > li > .main textarea {

  min-width: 310px;

  width: 100%;

  height: 6em;

  padding: 8px;

  font-size: 15px;

}

.form_list > li > .main .input-box:nth-child(n+2) {

  margin-top: 16px;

}

.form_list > li > .main .sampletext {

  font-size: 1.6rem;

  color: rgb(64,64,64);

}

.form_list > li > .main .helptext {

  padding-left: 1em;

  text-indent: -1em;

  font-size: 1.6rem;

  color: rgb(64,64,64);

}



@media screen and (max-width:767px) {

  .form_list > li {

    flex-wrap: wrap;

  }

  .form_list > li > .main {

    width: 100%;

  }

  .form_list > li > .main._input_name input[type="text"] {

    width: 100px;

  }

  .form_list > li > .main._input_tel input[type="text"] {

    width: 86px;

  }

}







/* btn_box */

.btn_box {

  display: flex;

  flex-wrap: wrap;

  justify-content: space-around;

}

.btn_box .btn_gl4 {

  margin-top: 24px;

}





.btn_box._col2 .btn_blank,

.btn_box._col2 .btn_gl4 {

  width:calc((100% - 96px) / 2);

}

.btn_box._col3 .btn_blank,

.btn_box._col3 .btn_gl4 {

  width:calc((100% - 96px) / 3);

}

.btn_box._col4 .btn_blank,

.btn_box._col4 .btn_gl4 {

  width:calc((100% - 96px) / 4);

}

.btn_box button,

.btn_box input {

  width: 100%;

  padding: 16px 0;

  border-style: none;

  background-color: #f4f4f4;

  line-height: 1.5;

  cursor: pointer;

  font-weight: 700;

}

.btn_box button:hover,

.btn_box input:hover {

  background-color: #3d3333;

  color: #fff;

}

.btn_box._col2 button,

.btn_box._col2 input {

  font-size: 1.6rem;

}

.btn_box._col3 button,

.btn_box._col3 input {

  font-size: 1.6rem;

}





@media screen and (max-width:767px) {

  .btn_box {

    justify-content: space-between;

  }

  .btn_box._col2 .btn_blank,

  .btn_box._col2 .btn_gl4 {

    width: calc((100% - 16px) / 2);

  }

  .btn_box._col2 button > span {

    font-size: 70%;

    font-weight: 400;

  }

  .faq_agreement .btn_box button {

    padding-top: 12px;

    padding-bottom: 4px;

    line-height: 1.3;

  }

  .btn_box._col3 .btn_blank,

  .btn_box._col3 .btn_gl4 {

    width: 35%;

  }

  .btn_box._col3 .btn_gl4:first-child {

    width: calc(30% - 32px);

  }

  .btn_box._col1 .btn_gl4 {

    width: 100%;

    max-width: 240px;

    margin-right: auto;

    margin-left: auto;

  }

}





/* #entry-form-login-box */

#entry-form-login-box {

  width: 80%;

  min-width: 310px;

  margin: 16px auto 32px;

  border: 1px solid rgb(222,222,222);

  border-radius: 8px;

  padding: 16px;

}

#entry-form-login-box > .helptext {

  margin: 8px auto;

}

#entry-form-login-box .login_form {

  max-width: 480px;

  margin: 0 auto;

}

#entry-form-login-box .login_form > li {

  display: flex;

  width: 100%;

  margin-top: 16px;

  border-bottom: 1px solid rgb(222,222,222);

}

#entry-form-login-box .login_form > li .title {

  width: 7em;

  padding-top: 8px;

  font-weight: 700;

}

#entry-form-login-box .login_form > li .main {

  width: calc(100% - 7em);

  padding-bottom: 16px;

}

#entry-form-login-box .login_form > li .main > input {

  width: 100%;

  font-size: 1.6rem;

  padding: 8px;

}

#entry-form-login-box .btn_box_login {

  text-align: center;

}



#entry-form-login-box .btn_box_login input[type="submit"] {

  display: block;

  width: 200px;

  margin: 16px auto;

  padding: 8px 0;

  border-style: none;

  border-radius: 30px;

  background-color: rgb(228,3,3);

  background: linear-gradient(to bottom right, rgb(255,132,0) 0%, rgb(255,132,0) 50%, rgb(255,114,0) 50%, rgb(255,114,0) 100%);

  text-align: center;

  font-weight: 700;

  color: rgb(255,255,255);

}









.faq_form #entry-form-login-box {

  background-color: rgb(244,245,247);

}

.faq_form #entry-form-login-box._ready {

  cursor: pointer;

}

.faq_form #entry-form-login-box::after {

  height: 0;

  opacity: 0;

}

.faq_form #entry-form-login-box._ready::after {

  position: relative;

  display: block;

  height: auto;

  text-align: center;

  padding: 8px;

  opacity: 1;

  content: '入力欄を表示する ▼';

}

._csstrans .faq_form #entry-form-login-box._ready::after {

  transition-delay: .1s;

  transition-duration: .2s;

}

.faq_form ._login_toggle_box {

  display: none;

}









/* box01 */

.box01 {

  margin-right: auto;

  margin-left: auto;

  max-width: 960px;

}

.box01 .agreement_box {

  padding: 24px 48px;

  background-color: rgb(236,237,239);

}

.box01 .agreement_box > ul > li {

  position: relative;

  margin-top: 1em;

  padding-left: 1.5em;

}

.box01 .agreement_box > ul > li:first-child {

  margin-top: 0;

}

.box01 .agreement_box > ul > li::before {

  position: absolute;

  top: 8px;

  left: 0;

  display: block;

  width: 11px;

  height: 11px;

  background-color: rgb(17,17,17);

  content: '';

}



@media screen and (max-width:767px) {

  .box01 .agreement_box {

    padding: 8px 16px;

    background-color: rgb(236,237,239);

  }

}





/* block02 */



/* box02 */

.box02 {

  margin: 0 auto;

  max-width: 960px;

}



/* faq_select */

.faq_select .box01 {

  padding-bottom: 72px;

}





/* box03 */

.box03 {

  margin: 0 auto;

  max-width: 960px;

}

.faq_agreement .box03 {

  text-align: center;

}





/* faq_confirm */

.faq_confirm .box01 .notice {

  padding-left: 1em;

  text-indent: -1em;

}



/* faq_done */







/* add */

.faq_box {

  margin-right: 48px;

  margin-left: 48px;

}



.group_contact_box {

  margin-right: 48px;

  margin-left: 48px;

}

.group_contact_box > ul {

  display: flex;

  justify-content: space-between;

  align-items: center;

}

.group_contact_box > ul > li {

  width: calc((100% - 32px) / 2);

}

.group_contact_box > ul > li > a {

  display: flex;

  width: 100%;

  border: 1px solid rgb(222,222,222);

  padding: 1px;

}

.group_contact_box > ul > li > a > .main {

  display: block;

  width: 100%;

  /* padding-top: 200px; */

  background-repeat: no-repeat;

  background-position: center top;

}

.group_contact_box > ul > li.dydo > a > .main {

  background-image: url(../images/form/dydo.png);

}

.group_contact_box > ul > li.tarami > a > .main {

  background-image: url(../images/form/tarami.png);

}

.group_contact_box > ul > li > a > .main > .text {

  display: block;

  text-align: center;

  padding: 8px;

  background-color: #F4F4F4;

}



@media screen and (max-width:767px) {

  .group_contact_box {

    margin-right: 0;

    margin-left: 0;

  }

  .group_contact_box > ul {

    flex-wrap: wrap;

  }

  .group_contact_box > ul > li {

    width: 100%;

    margin-bottom: 16px;

  }

  .group_contact_box > ul > li > a > .main {

    /* padding-top: 80px;*/

    background-size: 150px 100px;

    background-position: center -10px;

  }

}





/* tool */

.mg-b8  { margin-bottom:  8px; }

.mg-b16 { margin-bottom: 16px; }

.mg-b24 { margin-bottom: 24px; }

.mg-b32 { margin-bottom: 32px; }

.mg-b40 { margin-bottom: 40px; }

.mg-b48 { margin-bottom: 48px; }

.mg-b64 { margin-bottom: 64px; }

.mg-b72 { margin-bottom: 72px; }



.mg-t8  { margin-top:  8px; }

.mg-t16 { margin-top: 16px; }

.mg-t24 { margin-top: 24px; }

.mg-t32 { margin-top: 32px; }

.mg-t40 { margin-top: 40px; }

.mg-t48 { margin-top: 48px; }

.mg-t64 { margin-top: 64px; }

.mg-t72 { margin-top: 72px; }





