

.alnR { text-align: right!important; }
.alnL { text-align: left!important; }
.alnC { text-align: center!important; }

.bold { font-weight: bold!important; }
.normal { font-weight: normal!important; }
.size9 { font-size: 9px; }
.size10 { font-size: 10px; }
.size11 { font-size: 11px; }
.size12 { font-size: 12px; }
.size13 { font-size: 13px; }
.size14 { font-size: 14px; }
.size15 { font-size: 15px; }
.size16 { font-size: 16px; }
.size17 { font-size: 17px; }
.size18 { font-size: 18px; }
.size19 { font-size: 19px; }
.size20 { font-size: 20px; }
.size21 { font-size: 21px; }
.size22 { font-size: 22px; }
.size23 { font-size: 23px; }
.size24 { font-size: 24px; }
.size25 { font-size: 25px; }
.size26 { font-size: 26px; }
.size27 { font-size: 27px; }
.size28 { font-size: 28px; }
.size29 { font-size: 29px; }
.size30 { font-size: 30px; }
.red { color: #D60003; }

.mb0 { margin-bottom: 0px !important; }
.mb3 { margin-bottom: 3px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }

.mt0 { margin-top: 0px !important; }
.mt3 { margin-top: 3px !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }

.mr0 { margin-right: 0px !important; }
.mr3 { margin-right: 3px !important; }
.mr5 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }
.mr50 { margin-right: 50px !important; }

.ml0 { margin-left: 0px !important; }
.ml3 { margin-left: 3px !important; }
.ml5 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml35 { margin-left: 35px !important; }
.ml40 { margin-left: 40px !important; }
.ml50 { margin-left: 50px !important; }

.pb0 { padding-bottom: 0px !important; }
.pb3 { padding-bottom: 3px !important; }
.pb5 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb35 { padding-bottom: 35px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }

.pt0 { padding-top: 0px !important; }
.pt3 { padding-top: 3px !important; }
.pt5 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pt35 { padding-top: 35px !important; }
.pt40 { padding-top: 40px !important; }
.pt50 { padding-top: 50px !important; }

.pl0 { padding-left: 0px !important; }
.pl3 { padding-left: 3px !important; }
.pl5 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }
.pl35 { padding-left: 35px !important; }
.pl40 { padding-left: 40px !important; }
.pl50 { padding-left: 50px !important; }

.pr0 { padding-right: 0px !important; }
.pr3 { padding-right: 3px !important; }
.pr5 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }
.pr35 { padding-right: 35px !important; }
.pr40 { padding-right: 40px !important; }
.pr50 { padding-right: 50px !important; }

html {
  scroll-behavior: smooth;
}

body {
    font-family: 'メイリオ', Meiryo, sans-serif;
    font-size: 17px;
    line-height: 1.6;
}
* {
    font-family: 'メイリオ', Meiryo, sans-serif;
    font-size: 17px;
    line-height: 1.6;
}
body.fixed {
    width: 100%;
    position: fixed;
}
.pc {
    display: block;
}
.sp {
    display: none;
}

.ctInner {
    max-width: 940px;
    margin: 0 auto;
}
select::-ms-expand {
    display: none;
}
select {
    border-radius: 0px;
}
input {
    border: 1px solid #ccc;
}

.border-2 {
    border-width: 2px;
}

.border-solid {
    border-style: solid;
}

.rounded-5px {
    border-radius: 5px;
}

.grid {
    display: grid;
}

.height120-im {
    height: 120px !important;
}

.text-center {
    text-align: center;
}

.border-Yellow-ffc000 {
    border-color: #ffc000;
}

.bgYellow-ffffcc {
    background-color: #ffffcc;
}

.bgGreen {
    background-color: #d9f0e3;
    border-top: 1px solid #009944;
}
.banner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 940px;
    margin: 0 auto 55px;
    padding: 4px 0 0;
    height: 120px;
}
.banner .leadTitle {
    font-size: 38px;
    font-weight: bold;
    position: relative;
    width: 100%;
    line-height: 1.2;
}
.banner .leadTitle span {
    font-size: 28px;
}
.banner .label {
    width: 100%;
    max-width: 320px;
    display: inline-block;
    background: #fff;
    border-radius: 50px;
    padding: 3px 10px;
}
.banner .label .label-text{
    text-align: center;
    font-weight: bold;
}
.banner .character img {
    width: 96px;
    margin-top: 14px;
}

/* backBtn */
.backBtn {
    position: fixed;
    width: 100%;
    top: 0;
    left: -120px;
    z-index: 999;
    transition: all 0.5s;
}
.backBtn a {
    display: block;
    padding: 12px 25px;
    background-color: #818181;
    border-radius: 0px 7px 7px 0px;
    font-size: 14px;
    color: #fff;
    -webkit-box-shadow: 0 10px 0 0 #676767;
    box-shadow: 0 6px 0 0 #676767;
    position: absolute;
    top: 0;
    left: 0px;
    overflow: hidden;
}
.backBtn a span {
    background: url(../images/arrIcon.png) no-repeat left center;
    padding-left: 23px;
    background-size: 16px;
}
.fixed .backBtn {
    position: fixed;
    top: -45px;
}
.backBtn.active {
    left: 0;
}
.backBtn.none {
    left: -120px;
}
.backBtn.sp.active {
    left: 0;
}
.backBtn.sp.none {
    left: -120px;
}

/* topBtn */
.topBtn {
    position: relative;
    width: 100%;
    text-align: right;
    padding: 30px 30px 0 0;
}
.topBtn img {
    width: 42px;
}

/* btn */
.btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 570px;
    height: 58px;
    font-size: 20px;
    line-height: 1.5;
    font-weight: bold;
    color: #fff !important;
    background-color: #ca4747;
    border-radius: 4px;
    box-shadow: 0px 6px 0px #a23939;
    cursor: pointer;
    outline: none;
    border: none;
    padding: 0 20px;
}
.btn:after {
    content: '';
    position: absolute;
    background: url(../images/redarw.png) no-repeat center right;
    background-size: 18px auto;
    width: 100%;
    height: 100%;
    right: 0;
    top: 0;
    margin-right: 10px;
}
.btn:hover {
    opacity: 0.8;
}
.btn.blue {
    background-color: #3f88c6;
    box-shadow: 0px 6px 0px #326d9e;
}
.btn.gray {
    background-color: #818181;
    box-shadow: 0px 6px 0px #676767;
}
.btn.orange {
    background-color: #f17000f2;
    box-shadow: 0px 6px 0px #bd5118;
}
.btn.yellow {
    background-color: #b8894c;
    box-shadow: 0px 6px 0px #936e3d;
}
.btn.blueGreen {
    background-color: #00a28d;
    box-shadow: 0px 6px 0px #008271;
}
.btn.purple {
    background-color: #7f90c7;
    box-shadow: 0px 6px 0px #66739f;
}
.btn.lightGray {
    background-color: #cccccc;
    box-shadow: 0px 6px 0px #a3a3a3;
}

.btn.blueGreen:after {
    color: #00a28d;
}
.btn.purple:after {
    color: #7f90c7;
}
.btn.blue:after {
    background: url(../images/bluearw.png) no-repeat center right;
    background-size: 18px auto;
}
.btn.gray:after {
    background: url(../images/grayarw.png) no-repeat center right;
    background-size: 18px auto;
}
.btn.orange:after {
    background: url(../images/blank_icon.svg) no-repeat center right;
    background-size: 18px auto;
}
.btn.yellow:after {
    background: url(../images/yellowarw.png) no-repeat center right;
    background-size: 18px auto;
}
.returnBtn .btn {
    width: 100%;
    background-color: #818181;
    box-shadow: 0px 6px 0px #676767;
}
.returnBtn .btn:after {
    display: none;
}
.returnBtn .btn:before {
    content: '';
    position: absolute;
    background: url(../images/arrIcon.png) no-repeat center left;
    background-size: 18px auto;
    width: 100%;
    height: 100%;
    left :0;
    top: 0;
    margin-left: 10px;
}

/*link*/
.link a {
    margin-top: 3px;
    color: #0024c1;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
    text-decoration: underline;
    background: url(../images/arw-icon.png) no-repeat left 4px;
    padding-left: 21px;
    display: block;
}
.link a.seikyuin-link {
    background: url(../images/arw-icon.png) no-repeat left 1px;
}

@media (max-width: 768px) {
    body {
        font-family: 'メイリオ', Meiryo, sans-serif;
        font-size: 15px;
        line-height: 1.6;
    }
    * {
        font-family: 'メイリオ', Meiryo, sans-serif;
        font-size: 15px;
        line-height: 1.6;
    }
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }
    body {
        font-size: 15px;
    }
    .ctInner {
        width: 93%;
    }
    .btn {
        width: 100% !important;
        margin: 0 0 30px;
        font-size: 15px !important;
    }
   .banner {
        width: 100%;
        height: 80px;
        padding: 0 20px;
        margin: 0 auto 45px;
    }
    .banner .character img {
        width: 65px;
    }
    .banner .leadTitle {
        font-size: 20px;
    }
    .banner .leadTitle span {
        font-size: 20px;
        display: block;
    }
    .banner .label {
      width: 220px;
      padding: 5px 0px 5px 15px;
      text-align: center;
      border-radius: 30px;
    }
    .banner .label .label-text {
      font-size: 15px;
      text-align: center;
    }
    .banner .label span {
      display: block;
      text-align: center;
      text-indent: -10px;
    }
    /* topBtn */
    .topBtn {
        padding: 25px 20px 0 0;
    }

    .pcOnly{
        display:none;
    }
    .backBtn.sp {
        position: fixed;
        width: 100%;
        top: 0;
        left: -120px;
        z-index: 999;
        transition: all 0.5s;
    }
}
@media (min-width: 768px) {
    .spOnly{
        display:none;
    }
}
