@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%;
}

input[type=submit], button {
  -webkit-appearance: none;
  border-radius: 0;
}

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

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

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

.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%;
  margin: auto;
}

.g-header-nav-trg {
  height: 100%;
  padding: 1.5rem;
  font-size: 2.5rem;
  color: #3392FE;
  cursor: pointer;
}

.g-header-nav {
  opacity: 0;
  position: fixed;
  z-index: 99;
  top: 6rem;
  right: -35rem;
  width: 35rem;
  max-width: 100%;
  padding: 3em;
  background: rgba(255, 255, 255, 0.8);
  -webkit-transition: .3s;
  transition: .3s;
}

.g-header-nav.on {
  opacity: 1;
  right: 0;
}

.g-header-nav-list li {
  margin: 1em auto;
}

.g-header-nav-list li a {
  -webkit-transition: .3s;
  transition: .3s;
}

.g-header-nav-list li a:hover {
  color: #3392FE;
}

.g-footer {
  font-size: 88%;
  text-align: center;
}

.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;
  padding: 1em 0;
  background: #3392FE;
  color: #fff;
  font-size: 112%;
}

.g-footer-menu li {
  width: 50%;
  margin: .5em 0;
}

.g-footer-menu-ttl {
  padding: 0.5em;
  color: #3392FE;
}

.g-footer-logo {
  padding: 2rem 0;
}

.g-footer-logo .multi-inner {
  max-width: 25rem;
}

.g-footer-copy {
  padding: 0.5em;
  background: #3392FE;
  color: #fff;
}

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: #3392FE;
  border-radius: 2rem;
  line-height: 4rem;
  text-align: center;
  color: #fff;
  font-size: 112%;
  font-weight: 500;
}

.btn.accent {
  background: #FF0040;
}

.btn.dark {
  background: #1C3B53;
}

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

.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: #1C3B53;
  background: #fff;
  border: 1px solid #1C3B53;
  cursor: pointer;
}

.txt-warning {
  color: #FF7F00;
}

.mt1e {
  margin-top: 1em;
}

.mt2e {
  margin-top: 2em;
}

.mt3e {
  margin-top: 3em;
}

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

.pc-d {
  display: none;
}

h2 {
  font-size: 142%;
}

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

main {
  margin-top: 6rem;
  background: url(../uploads/multi_bg02.png) center top/100% auto repeat-y;
}

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

main:not(.index) h2 {
  margin-bottom: 3rem;
  padding: 0.5em 4%;
  background: #3392FE;
  color: #fff;
}

.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 #3388FF;
  font-size: 114%;
}

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

.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-register-btn {
  padding: 5rem 0;
}

.index-point {
  background: #3392FE;
  color: #fff;
}

.index-point-list {
  width: 88%;
  margin: auto;
  padding: 6% 0;
}

.index-point-list .row {
  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;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.index-point-list .row:nth-child(2) dt {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.index-point-list dt {
  width: 15rem;
  height: 15rem;
}

.index-point-list dd {
  font-size: 142%;
}

.index-intro {
  padding: 3rem 0;
  background: #E5E5E5;
  text-align: center;
}

.index-intro h2 {
  margin-bottom: 0.3em;
  font-size: 114%;
}

.index-intro-list {
  margin-top: 3rem;
}

.index-intro-list .card dd {
  padding: .5em 0;
  background: #fff;
  text-align: center;
  font-size: 88%;
}

.index-merit {
  padding: 0 4% 6%;
  background: url(../uploads/multi_bg01_sp.png) center center/cover repeat;
}

.index-merit h2 {
  background: #F1F1F1;
}

.index-merit-list {
  margin-top: -.5%;
  padding: 0 4% 6%;
  background: #F1F1F1;
}

.index-merit-list dt {
  margin-bottom: .3em;
  padding-top: 1.2em;
  font-size: 114%;
  font-weight: bold;
}

.index-merit-list dt:first-of-type {
  color: #FE3057;
}

.index-merit-list dt:nth-of-type(2) {
  color: #FF7F00;
}

.index-merit-list dt:last-of-type {
  color: #3388FF;
}

.index-price {
  padding: 3rem 0;
  background: #E5E5E5;
  text-align: center;
}

.index-price h2 {
  margin-bottom: 0.5em;
}

.index-price p span {
  margin: 0 .4em;
  color: #FF7F00;
  font-size: 214%;
  font-weight: bold;
}

.index-price p span i {
  font-size: 66%;
}

.index-price .btn {
  margin-top: 3rem;
}

.index-voice {
  padding: 6% 4%;
  background: url(../uploads/multi_bg01_sp.png) center center/cover repeat;
}

.index-voice-inner {
  background: #fff;
}

.index-voice h2 {
  padding: 1.2em 0;
  text-align: center;
  color: #3392FE;
  font-weight: bold;
}

.index-voice-list .voice-msg {
  padding: 1em 1em 2em;
}

.index-voice-list .voice-msg p:last-child {
  margin-top: 1em;
  font-size: 114%;
  text-align: right;
}

.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: #3388FF;
}

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

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

.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;
  color: #999;
}

.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;
}

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

.contents .g-box .img {
  width: 92%;
  margin: 1.5em auto;
}

.contents .g-box .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;
  color: #FF7F00;
}

.leave p span {
  background: rgba(255, 255, 0, 0.6);
  border-bottom: 1px solid #FF7F00;
  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 {
    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:not(.index) h2 {
    margin-bottom: 5rem;
    text-align: center;
  }
  .g-footer {
    background: #3392FE;
  }
  .g-footer-menu {
    width: 92%;
    max-width: 50rem;
    margin: auto;
    font-size: 88%;
  }
  .g-footer-menu li {
    width: auto;
    margin-bottom: 0 !important;
  }
  .g-footer-menu li a {
    position: relative;
  }
  .g-footer-menu li a::after {
    content: ">";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: -1em;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    color: #fff;
    font-size: 120%;
  }
  .g-footer-menu-ttl {
    background: #fff;
  }
  .g-footer-logo {
    padding: 3rem 0;
    background: #fff;
  }
  .g-footer-copy {
    background: #1C3B53;
    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;
  }
}
