@charset "UTF-8";
/*リセットcssここから*/
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  margin: 0pt;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

a {
  text-decoration: none;
  color: inherit;
}

img {
  width: auto;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

input {
  padding: 0;
  outline: none;
  background: none;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-family: inherit;
}

input[type="submit"] {
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  font-family: inherit;
}

input[type="submit"]::-webkit-search-decoration {
  display: none;
}

input[type="submit"]::focus {
  outline-offset: -2px;
}

button,
select,
textarea {
  margin: 0;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
  font-family: inherit;
  font-size: 100%;
}

/*リセットcssここまで*/
html {
  font-size: 62.5%;
}

body {
  width: 100%;
  max-width: 60rem;
  margin: auto;
  font-size: 1.4rem;
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.6;
  color: #000;
}

.g-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  width: 100%;
  height: 5rem;
  background: #FF5483;
}

.g-header-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: wrap row;
          flex-flow: wrap row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  height: 100%;
  width: 92%;
  max-width: 60rem;
  margin: auto;
}

.g-header-nav-trg {
  height: 100%;
  padding: 1rem;
  font-size: 2rem;
  color: #fff;
  cursor: pointer;
}

.g-header-nav {
  display: none;
  width: 100%;
  background: rgba(62, 62, 62, 0.8);
  color: #fff;
}

.g-header-nav-list {
  width: 100%;
  max-width: 60rem;
  margin: auto;
  padding: 1em 0;
}

.g-header-nav-list li + li {
  border-top: 1px solid #787676;
}

.g-header-nav-list li a {
  display: block;
  padding: 1em;
  -webkit-transition: .3s;
  transition: .3s;
}

.g-footer {
  background: #FFF8DF;
  font-size: 88%;
  color: #000;
}

.g-footer-menu {
  padding: 2em 1.5em;
}

.g-footer-menu li {
  margin: .8em auto;
}

.g-footer-copy {
  padding: 0.5em;
  background: #FF5483;
  color: #fff;
  text-align: center;
}

form input {
  display: block;
  width: 100%;
  padding: .8em;
  background: #ececec;
}

form input::-webkit-input-placeholder {
  color: #999;
}

form input:-ms-input-placeholder {
  color: #999;
}

form input::-ms-input-placeholder {
  color: #999;
}

form input::placeholder {
  color: #999;
}

.btn {
  display: block;
  width: 25rem;
  max-width: 92%;
  height: 4rem;
  margin: auto;
  background: #CEB63F;
  border-radius: 2rem;
  line-height: 4rem;
  text-align: center;
  color: #fff;
  font-size: 112%;
  font-weight: 500;
}

.btn.light {
  background: #FFF8DF;
}

.btn.accent {
  background: #CEB63F;
}

.btn.dark {
  background: #FF5483;
}

.btn.info {
  background: #37A800;
}

.btn.border {
  color: #FF5483;
  background: #fff;
  border: 1px solid #FF5483;
}

.btn.danger {
  background: #ff0000;
}

.submit-btn-wrap button[type="submit"] {
  display: block;
  width: 25rem;
  max-width: 92%;
  height: 4rem;
  margin: 1.5em auto;
  border-radius: 2rem;
  line-height: 4rem;
  text-align: center;
  font-size: 112%;
  font-weight: 500;
  color: #FF5483;
  background: #fff;
  border: 1px solid #FF5483;
  cursor: pointer;
}

.bg-gray {
  background: #ECECEC;
}

.txt-primary {
  color: #CEB63F;
}

.txt-warning {
  color: #D9CA3D;
}

.txt-accent {
  color: #CEB63F;
}

.mt1e {
  margin-top: 1em;
}

.mt2e {
  margin-top: 2em;
}

.mt3e {
  margin-top: 3em;
}

.pc-d-img {
  display: none;
}

.pc-d {
  display: none;
}

h2 {
  margin-bottom: 3rem;
  padding: 0.5em 4%;
  background: #FFF8DF;
  color: #000;
  font-size: 142%;
}

h3 {
  margin-bottom: 1em;
  padding-bottom: 0.2em;
  border-bottom: 3px solid #CEB63F;
  font-size: 114%;
}

main {
  margin-top: 5rem;
}

main:not(.index) {
  min-height: 60vh;
  padding-bottom: 5rem;
}

.multi-inner {
  width: 92%;
  max-width: 75rem;
  margin: auto;
}

.g-box {
  width: 92%;
  max-width: 75rem;
  margin: auto;
  padding: 1em;
  border-radius: 12px;
  border: 1px solid #D8D8D8;
  background: #fff;
}

.g-box h4 {
  position: relative;
  margin-bottom: 0.5em;
  padding-left: 0.5em;
  border-left: 2px solid #CEB63F;
  font-size: 114%;
}

.g-box h4::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: -.5em;
  height: 100%;
  width: 3px;
  background: #CEB63F;
}

.g-box table {
  width: 100%;
  text-align: left;
}

.g-box table tr {
  display: block;
  padding-top: 1em;
  padding-bottom: 1em;
  border-top: 1px solid #D8D8D8;
}

.g-box table tr:first-child {
  padding-top: .5em;
  border-top: none;
}

.g-box table tr th {
  display: block;
  font-size: 114%;
}

.g-box table tr td {
  display: block;
}

.g-box dl dt {
  margin: 1.5em auto .2em;
  font-size: 114%;
}

.index h2 {
  padding: 0;
  background: transparent;
  text-align: center;
}

.index-register {
  padding: 3rem 0;
}

.index-register .register-btn {
  display: block;
  width: 92%;
  max-width: 30rem;
  margin: auto;
}

.index-register p {
  margin-top: 1em;
  text-align: center;
  font-size: 88%;
}

.index-intro01 .btn {
  margin: 3rem auto;
}

.index-intro01-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: wrap row;
          flex-flow: wrap row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 4% auto;
}

.index-intro01-img li {
  width: 24%;
}

.index-intro02 .btn {
  margin: 3rem auto;
}

.index-intro02 h2 {
  background: #D9CA3D;
  color: #FF5483;
}

.index-intro02_bn {
  padding-bottom: 5rem;
}

.index-intro02-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: wrap row;
          flex-flow: wrap row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.index-intro02-img li {
  width: 24%;
  margin: 2% 0;
}

.login-id-box {
  margin: 5rem auto 7rem;
  text-align: center;
}

.login-id-box p {
  margin-bottom: 1em;
}

.login-id-box form button {
  display: block;
  width: 92%;
  max-width: 25rem;
  margin: auto;
}

.login-normal-box form input {
  margin: 1.5em auto;
}

.login-normal-box form button {
  margin: 2em auto 1em;
}

.login-normal-box form + p {
  text-align: center;
  font-size: 86%;
}

.login-normal-box form + p a {
  color: #37A800;
}

.news .g-box {
  height: auto;
  min-height: 30vh;
}

.payment form button {
  display: block;
  width: 92%;
  max-width: 25rem;
  margin: 3rem auto;
}

.payment .g-box {
  width: 100%;
}

.payment .g-box dl .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: wrap row;
          flex-flow: wrap row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 1em;
}

.payment .g-box dl .wrap:nth-child(2) {
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 1px solid #d8d8d8;
}

.payment .g-box dl .wrap dt {
  margin: 0;
  text-align: right;
  font-size: 86%;
}

.payment .g-box dl .wrap dd {
  text-align: left;
}

.payment-done dl {
  margin: 3rem auto 5rem;
}

.payment-done dl dt {
  margin: 2em auto .4em;
  font-size: 86%;
}

.payment-done dl dd {
  padding: 0.6em;
  background: #ECECEC;
}

.payment-done .g-box .btn {
  margin-bottom: 5rem;
}

.device p:first-child {
  font-size: 114%;
}

.device p + p {
  margin-top: 1em;
}

.contact .g-box section {
  margin: 4rem auto;
}

.contact .g-box .btn {
  margin-top: 3rem;
}

.contact .g-box .bg-gray {
  padding: .5em 1em;
}

.contents .g-box section + section {
  margin-top: 4rem;
}

.contents .g-box .img-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: wrap row;
          flex-flow: wrap row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.contents .g-box .img-list li {
  width: 48%;
  margin: 2% 0;
}

.contents .g-box .size-list {
  color: #2a89ff;
}

.contents .g-box .img {
  text-align: center;
  margin-bottom: 3rem;
}

.contents .btn {
  margin-top: 3rem;
}

.multi-btn-page .btn {
  margin: 1.5em auto;
}

.multi-done-page .btn {
  margin: 4rem auto;
}

.question .g-box dl .wrap {
  padding: 1.5em 0;
}

.question .g-box dl .wrap + .wrap {
  border-top: 1px solid #d8d8d8;
}

.question .g-box dl dt {
  position: relative;
  margin: 0 auto .5em;
  font-size: 100%;
  cursor: pointer;
}

.question .g-box dl dt::before, .question .g-box dl dt::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 1.5rem;
  height: 1px;
  background: #707070;
}

.question .g-box dl dt::before {
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.question .g-box dl dt::after {
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  -webkit-transition: .3s;
  transition: .3s;
}

.question .g-box dl dt.on::after {
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}

.question .g-box dl dd {
  display: none;
}

.leave p span {
  background: rgba(255, 255, 0, 0.6);
  border-bottom: 1px solid #D9CA3D;
  font-size: 114%;
  font-weight: bold;
}

.leave p span i {
  color: #ff0000;
}

.leave label {
  font-size: 114%;
}

.news-scroll {
  overflow-y: scroll;
  height: 30vh;
  padding: 1em;
  border: 1px solid #ccc;
  line-height: 1.4;
  word-break: break-all;
  font-size: 85%;
}

.news-scroll h3 {
  border-bottom: 2px dotted #ff9797;
}

.mt2e {
  margin-top: 2em;
}

@media screen and (min-width: 500px) {
  body {
    max-width: unset;
    font-size: 1.6rem;
  }
  .pc-d-img {
    display: inline-block;
  }
  .sp-d-img {
    display: none;
  }
  .pc-d {
    display: block;
  }
  .sp-d {
    display: none;
  }
  .g-box {
    padding: 2em;
  }
  .g-box table {
    width: 100%;
    max-width: 60rem;
    margin: auto;
  }
  .g-box table tr {
    display: table-row;
  }
  .g-box table tr th {
    display: table-cell;
  }
  .g-box table tr td {
    display: table-cell;
    padding: 1.5em;
  }
  main {
    width: 100%;
    max-width: 60rem;
    margin: 5rem auto 0;
  }
  main:not(.index) h2 {
    margin-bottom: 5rem;
  }
  .g-footer-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: wrap row;
            flex-flow: wrap row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 92%;
    max-width: 70rem;
    margin: auto;
    padding: 2rem 0;
    font-size: 88%;
  }
  .g-footer-menu li {
    width: auto;
    margin: 0 1em !important;
  }
  .g-footer-copy {
    font-size: 75%;
  }
  .index-point-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: wrap row;
            flex-flow: wrap row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 92%;
    max-width: 80rem;
    margin: auto;
  }
  .index-point-list .row {
    display: block;
  }
  .index-point-list dd {
    margin-top: 1rem;
    text-align: center;
    font-size: 100%;
  }
  .index-intro {
    padding: 6rem 0;
  }
  .index-intro-list-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: wrap row;
            flex-flow: wrap row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 88%;
    margin: auto;
  }
  .index-intro-list .card {
    width: 30%;
    max-width: 45rem;
  }
  .index-merit {
    padding: 4% 6%;
  }
  .index-merit-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: wrap row;
            flex-flow: wrap row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 4%;
    background: #f1f1f1;
  }
  .index-merit h2 {
    width: 100%;
    background: transparent;
    text-align: center;
  }
  .index-merit .img {
    width: 60%;
  }
  .index-merit-list {
    width: 40%;
    background: transparent;
  }
  .index-price {
    padding: 5rem 0;
  }
  .index-price h2 + p {
    font-size: 120%;
  }
  .index-price p span {
    font-size: 260%;
  }
  .index-voice {
    padding: 0 4% 8rem;
    background: #fff;
  }
  .index-voice h2 {
    padding: 5rem 0;
  }
  .index-voice-inner {
    width: 100%;
    max-width: 140rem;
    margin: auto;
  }
  .index-voice-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: wrap row;
            flex-flow: wrap row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .index-voice-list li {
    width: 30%;
    max-width: 45rem;
  }
  .index-voice-list .voice-msg {
    padding: .5em;
    font-size: 88%;
  }
  .index-voice-list .voice-msg p:last-child {
    margin-top: 0.5em;
    font-size: 100%;
  }
  .login-normal-box-inner {
    width: 100%;
    max-width: 33rem;
    margin: auto;
  }
  .payment.social p {
    text-align: center;
  }
  .payment .g-box-inner {
    width: 100%;
    max-width: 35rem;
    margin: auto;
  }
  .question .g-box {
    padding: 0 2em;
  }
}
