@charset "UTF-8";
/*===================================================================
				= 基本(初期デフォルト化含む)
===================================================================*/
html, body {
  width: 100%; }

html {
  font-size: 62.5%;
  height: 100%;
  font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

body {
  height: 100%;
  font-size: 1.0rem;
  /* 基本サイズ10px */
  -webkit-text-size-adjust: 100%;
  line-height: 171.4285714286%;
  font-size: 3.2407407407vw; }

ul {
  list-style: none; }

a:link, a:visited, a:hover, a:active {
  text-decoration: none;
  outline: none; }
  
a {
  -webkit-touch-callout: none;
  -moz-touch-callout: none;
  touch-callout: none; }

img {
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none;
  touch-callout: none;
  user-select: none; }

.wrapper {
  width: 100%;
  padding: 3.7037037037% 0;
  z-index: -10; }

/*===================================================================
				= Help
===================================================================*/
#help .wrapper {
  min-height: 100vh;
  background: url("../img/cmn_base_pattern.png") repeat top left;
  background-attachment: fixed; }
#help .help_list {
  width: 94.4444444444%;
  margin: 0 auto; }
#help .category {
  width: 98.0392156863%;
  margin: 0 0 2% 0;
  height: auto;
  padding: 1%;
  border-radius: 20px;
  background: url("../img/bg_black.png") repeat top left;
  position: relative; }
  #help .category div {
    width: 100%;
    padding: 20% 0 0 0; }
    #help .category div:before {
      content: '';
      display: block;
      width: 100%;
      padding: calc( 16% - 4px ) 0 0 0;
      margin: -20% 0 0 0;
      background-color: #fff;
      border-radius: 20px 20px 0 0;
      border: 2px #F06400 solid;
      box-sizing: border-box;
      z-index: 1; }
    #help .category div:after {
      content: '';
      display: block;
      width: 100%;
      padding: calc( 5% - 4px ) 0 0 0;
      margin: 0 1% 0 0;
      background-color: #fff;
      border-radius: 0 0 20px 20px;
      border: 2px #F06400 solid;
      box-sizing: border-box;
      box-shadow: 0px 10px 10px 0 rgba(0, 0, 0, 0.5);
      z-index: 1; }
#help .main_category {
  position: absolute;
  top: 0;
  left: 0;
  width: 98.0392156863%;
  height: 15vw;
  margin: 1% 1% 0 1%;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  color: #F06400;
  font-size: 5.0925925926vw; }
  #help .main_category::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 4%;
    width: 8.8%;
    margin: 3.6% 0 0 0;
    padding: 8.8% 0 0 0;
    background: url("../img/help_btn_L.png") top center/contain no-repeat; }
#help .open .main_category::after {
  transform: rotate(180deg); }
#help .sub_category {
  display: none;
  position: relative;
  z-index: 10;
  width: 100%;
  margin: 0 auto;
  background-color: #FFFBEA;
  border: 2px #734B23 solid;
  box-sizing: border-box;
  border-bottom: none; }
  #help .sub_category:last-child {
    border-bottom: #734B23 solid 2px; }
  #help .sub_category dt {
    padding: 12% 0 0 0;
    position: relative; }
    #help .sub_category dt p {
      position: absolute;
      top: 0;
      left: 11%;
      width: 89%;
      height: 100%;
      display: flex;
      justify-content: flex-start;
      align-items: center;
      font-weight: bold; }
      #help .sub_category dt p:before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        background: url("../img/help_icon.png") top left/contain no-repeat;
        width: 6.2921348315%;
        padding: 6.2921348315% 0 0 0;
        margin: 3.595505618% 0 0 -8.5393258427%; }
      #help .sub_category dt p:after {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        right: 6.7415730337%;
        width: 6.2921348315%;
        margin: 5.0561797753% 0 0 0;
        padding: 3.595505618% 0 0 0;
        background: url("../img/help_btn_S.png") top center/contain no-repeat; }
  #help .sub_category dd {
    display: flex;
    display: none;
    width: 90%;
    margin: 0;
    padding: 0 0 2.2222222222% 0;
    border-radius: 20px;
    background-color: #fff;
    padding: 3.3333333333%;
    margin: 0 auto; }
    #help .sub_category dd p {
      width: 100%;
      margin: 0 auto;
      vertical-align: middle; }
    #help .sub_category dd span {
      position: relative;
      display: block;
      width: 95.5555555556%;
      padding: 0 0 0 4.4444444444%;
      margin: 5.5555555556% 0 0 0; }
      #help .sub_category dd span:before {
        content: '●';
        color: #5DB121;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        padding: 0;
        margin: 0; }
    #help .sub_category dd img {
      margin: -1.1111111111% 0 0 0;
      width: 8.8888888889%;
      vertical-align: middle; }
  #help .sub_category.open {
    padding: 0 0 2% 0; }
    #help .sub_category.open dt p:after {
      transform: rotate(180deg); }

/*===================================================================
				= Terms & Policy
===================================================================*/
#terms p {
  width: 92.5925925926%;
  margin: 0 auto 3.7037037037% auto; }
#terms dl {
  width: 100%; }
  #terms dl dt {
    width: 92.5925925926%;
    padding: 0.9259259259% 3.7037037037%;
    background-color: #F06400;
    color: #fff; }
  #terms dl dd {
    width: 92.5925925926%;
    margin: 3.7037037037% auto; }
  #terms dl ul {
    width: 100%;
    margin: 4% auto; }
    #terms dl ul.number li {
      padding: 0 0 0 3%;
      display: table-row;
      counter-increment: table-ul; }
      #terms dl ul.number li:before {
        display: table-cell;
        content: counter(table-ul) ".";
        display: table-cell;
        text-align: right; }
    #terms dl ul.dot li {
      padding: 0 0 0 3%;
      display: table-row;
      counter-increment: table-ul; }
      #terms dl ul.dot li:before {
        display: table-cell;
        content: '・';
        display: table-cell;
        text-align: right; }


#policy {
	/* font-size: 2.1925925926vw; */
	background-color: #FFD732;
}
#policy .header {
	text-align: center;
}
#policy dl ul {
	padding: 0 0 0 3%;
}
#policy dl ul.number li {
      padding: 0 0 0 3%;
      display: table-row;
  	  counter-increment: table-ul; }
      #policy dl ul.number li:before {
        display: table-cell;
        content: counter(table-ul) "．";
        display: table-cell;
        text-align: right; }

#policy dl dt {
	padding: 0.00259259259% 6.7037037037%;
}
#policy dl dd {
	padding: 0.0000059259% 6.7037037037%;
	line-height: 180%;
}
/*===================================================================
				= Contact
===================================================================*/
#contact h1 {
  width: 100%;
  height: 6.4814814815vw;
  margin: 0 0 7.4074074074% 0;
  padding: 0.9259259259% 0 0 0;
  background-color: #F06400;
  font-size: 5.0925925926vw;
  line-height: 100%;
  color: #fff;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center; }
  #contact h1.high {
    height: 12.962962963vw; }
#contact h2 {
  color: #F06400; }
#contact .inner {
  width: 78.7037037037%;
  margin: 0 auto; }
#contact .text {
  margin: 0 0 9.4117647059% 0; }
#contact .caution {
  color: #E82E3C; }
#contact .error_box {
  border: 2px #E82E3C solid;
  box-sizing: border-box;
  color: #E82E3C;
  width: 100%;
  margin: 0 0 9.4117647059% 0;
  padding: 2.3529411765%; }
  #contact .error_box p {
    font-size: 2.7777777778vw;
    position: relative;
    width: 95.0617283951%;
    padding: 0 0 0 4.9382716049%; }
    #contact .error_box p::before {
      content: "・";
      display: block;
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0; }
#contact .complete_text {
  width: 83.3333333333%;
  margin: 0 auto 8% auto; }
  #contact .complete_text:last-of-type {
    margin: 0 auto; }
  #contact .complete_text span {
    display: block;
    width: 100%;
    color: #F06400;
    font-weight: bold;
    text-align: center;
    font-size: 4.1666666667vw;
    margin: 0 0 14.2222222222% 0; }
#contact .attention {
  color: #707070;
  font-size: 2.7777777778vw;
  line-height: 133.3333333333%; }
#contact .input_list li {
  width: 100%;
  display: flex;
  flex-direction: column;
  margin: 5.8823529412% 0; }
#contact label {
  width: 100%;
  font-weight: bold; }
  #contact label span {
    color: #F06400;
    font-size: 2.7777777778vw;
    line-height: 133.3333333333%;
    margin: 0 0 0 3.5294117647%; }
#contact input[type='text'], #contact select, #contact textarea, #contact [type='password'] {
  width: 100%;
  background-color: #DCDCDC;
  color: #8F8F8F;
  border: none;
  border-radius: 5px;
  height: 8.3333333333vw;
  padding: 2.3529411765%;
  margin: 0 0 1.1764705882% 0;
  font-size: 3.7037037037vw;
  font-weight: bold;
  box-sizing: border-box; }
  #contact input[type='text']::placeholder, #contact select::placeholder, #contact textarea::placeholder, #contact [type='password']::placeholder {
    color: #8F8F8F; }
  #contact input[type='text']:focus, #contact select:focus, #contact textarea:focus, #contact [type='password']:focus {
    outline: none; }
  #contact input[type='text'].error, #contact select.error, #contact textarea.error, #contact [type='password'].error {
    border: 2px #E82E3C solid;
    box-sizing: border-box; }
#contact select {
  appearance: none; }
#contact textarea {
  height: 33.3333333333vw;
  font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
#contact input[type="checkbox"] {
  position: relative;
  width: 5.8823529412%;
  height: 4.6296296296vw;
  margin: 0 2.3529411765% 0 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  appearance: none; }
  #contact input[type="checkbox"]::before {
    content: "";
    display: block;
    position: absolute;
    background-color: #DCDCDC;
    border-radius: 5px;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; }
  #contact input[type="checkbox"].error::before {
    border: 2px #E82E3C solid;
    box-sizing: border-box; }
  #contact input[type="checkbox"]::after {
    content: "";
    display: block;
    position: absolute;
    background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23FFFFFF" viewBox="0 0 512 512"><path d="M432 64l-240 240-112-112-80 80 192 192 320-320z"/></svg>') center center/contain no-repeat;
    left: 10%;
    top: 10%;
    width: 80%;
    height: 3.7037037037vw;
    opacity: 0; }
  #contact input[type="checkbox"]:checked::before {
    background-color: #F06400; }
  #contact input[type="checkbox"]:checked::after {
    opacity: 1; }
#contact .select:before {
  content: '';
  width: 100%;
  height: 1em;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" fill="%238F8F8F" viewBox="0 0 23.01 18.75"><path d="M10.18,17.88c.73,1.17,1.92,1.17,2.65,0L22.68,2.12c.73-1.17,.2-2.12-1.18-2.12H1.5C.13,0-.4,.95,.33,2.12l9.85,15.76Z"/></svg>') center center/contain no-repeat;
  color: #8F8F8F;
  position: absolute;
  top: 50%;
  right: 2.3529411765%;
  transform: translateY(-50%);
  width: 2.9411764706%;
  pointer-events: none; }
#contact .select_wrap {
  width: 100%;
  position: relative; }
  #contact .select_wrap.date {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between; }
    #contact .select_wrap.date p {
      height: 100%; }
#contact .select_box_s {
  width: 16.4705882353%;
  position: relative; }
  #contact .select_box_s select {
    padding: 14.2857142857%; }
  #contact .select_box_s.select:before {
    width: 17.8571428571%;
    right: 14.2857142857%; }
#contact .check_box {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center; }
  #contact .check_box label {
    width: auto; }
  #contact .check_box a {
    color: #F06400;
    text-decoration: underline; }
#contact .button_box {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center; }
  #contact .button_box.left {
    justify-content: flex-start; }
  #contact .button_box input {
    border: 0;
    width: 50.8235294118%;
    height: 17.7777777778vw;
    margin: 8.4705882353% 0;
    text-indent: -9999px;
    overflow: hidden; }
    #contact .button_box input.button_confirm {
      width: 57.4117647059%;
      background: url("../img/contact_btn_confirm.png") top center/contain no-repeat; }
    #contact .button_box input.button_return {
      background: url("../img/contact_btn_return.png") top center/contain no-repeat; }
    #contact .button_box input.button_send {
      background: url("../img/contact_btn_send.png") top center/contain no-repeat; }
    #contact .button_box input.button_next {
      background: url("../img/contact_btn_next.png") top center/contain no-repeat; }
    #contact .button_box input.button_apply {
      background: url("../img/contact_btn_apply.png") top center/contain no-repeat; }
#contact .confilm p {
  color: #808080; }
#contact .confilm .select_wrap p {
  margin: 0 1.1764705882% 0 0; }
#contact .confilm .select_wrap.date {
  justify-content: flex-start; }
#contact ul {
  width: 100%; }
  #contact ul.dot li {
    padding: 0 0 0 3%;
    display: table-row;
    counter-increment: table-ul; }
    #contact ul.dot li:before {
      display: table-cell;
      content: '・';
      display: table-cell;
      text-align: right; }
