@charset "UTF-8";
@-webkit-keyframes maskAnm{0%{width:0%}100%{width:100%}}@keyframes maskAnm{0%{width:0%}100%{width:100%}}@-webkit-keyframes maskAnmlast{0%,50%{left:0}100%{left:100%}}@keyframes maskAnmlast{0%,50%{left:0}100%{left:100%}}@-webkit-keyframes op2{0%{opacity:1}10%{opacity:1}100%{opacity:1}}@keyframes op2{0%{opacity:1}10%{opacity:1}100%{opacity:1}}@-webkit-keyframes op1{0%{-webkit-opacity:0}0%{-moz-opacity:0}0%{-o-opacity:0}0%{-ms-opacity:0}0%{opacity:0}30%{-webkit-opacity:0}30%{-moz-opacity:0}30%{-o-opacity:0}30%{-ms-opacity:0}30%{opacity:0}100%{-webkit-opacity:1}100%{-moz-opacity:1}100%{-o-opacity:1}100%{-ms-opacity:1}100%{opacity:1}}@-moz-keyframes op1{0%{-webkit-opacity:0}0%{-moz-opacity:0}0%{-o-opacity:0}0%{-ms-opacity:0}0%{opacity:0}30%{-webkit-opacity:0}30%{-moz-opacity:0}30%{-ms-opacity:0}30%{-ms-opacity:1}30%{opacity:0}100%{-webkit-opacity:1}100%{-moz-opacity:1}100%{-o-opacity:1}100%{-ms-opacity:1}100%{opacity:1}}@-ms-keyframes op1{0%{-webkit-opacity:0}0%{-moz-opacity:0}0%{-o-opacity:0}0%{-ms-opacity:0}0%{opacity:0}30%{-webkit-opacity:0}30%{-moz-opacity:0}30%{-o-opacity:0}30%{-ms-opacity:0}30%{opacity:0}100%{-webkit-opacity:1}100%{-moz-opacity:1}100%{-o-opacity:1}100%{-ms-opacity:1}100%{opacity:1}}@-o-keyframes op1{0%{-webkit-opacity:0}0%{-moz-opacity:0}0%{-o-opacity:0}0%{-ms-opacity:0}0%{opacity:0}30%{-webkit-opacity:0}30%{-moz-opacity:0}30%{-o-opacity:0}30%{-ms-opacity:0}30%{opacity:0}100%{-webkit-opacity:1}100%{-moz-opacity:1}100%{-o-opacity:1}100%{-ms-opacity:1}100%{opacity:1}}@keyframes op1{0%{-webkit-opacity:0}0%{-moz-opacity:0}0%{-o-opacity:0}0%{-ms-opacity:0}0%{opacity:0}30%{-webkit-opacity:0}30%{-moz-opacity:0}30%{-o-opacity:0}30%{-ms-opacity:0}30%{opacity:0}100%{-webkit-opacity:1}100%{-moz-opacity:1}100%{-o-opacity:1}100%{-ms-opacity:1}100%{opacity:1}}.js-view{overflow:hidden;position:relative;transition:.5s;-ms-transition:.5s;-moz-transition:.5s;-webkit-transition:.5s}.js-view img{opacity:0;transition:.5s;-ms-transition:.5s;-moz-transition:.5s;-webkit-transition:.5s;transition-delay:.3s}.js-view_on img{opacity:1}.js-view::after{content:'';width:0%;height:100%;position:absolute;top:0;left:0;background:#1C4A40;pointer-events:none;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);z-index:3}.js-view_on::after{-webkit-animation:.4s ease-in-out forwards maskAnm,.7s ease-in-out forwards maskAnmlast;animation:.4s ease-in-out forwards maskAnm,.7s ease-in-out forwards maskAnmlast}.js-view_up{opacity:0;transition:1.5s;-ms-transition:1.5s;-moz-transition:1.5s;-webkit-transition:1.5s;transform:translate(0,30px);-ms-transform:translate(0,30px);-moz-transform:translate(0,30px);-webkit-transform:translate(0,30px)}.js-view_up_on{opacity:1;transform:translate(0,0);-ms-transform:translate(0,0);-moz-transform:translate(0,0);-webkit-transform:translate(0,0)}
.cv-btn {
    width: 400px;
    margin: 0 auto;
    line-height: 1;
    text-align: center;
    box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    border: 1px solid #f8461d;
    border-radius: 4px;
    -ms-border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    background: #fff
}
.cv-btn a {
    border-top: 1px solid #E08E00;
    display: block;
    color: #fff;
    font-weight: 700;
    font-size: 18px;
    padding: 27px 0 27px 0;
    background: #E05E00;
    text-decoration: none;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .2);
    -ms-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .2);
    -moz-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .2);
    -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .2);
    border-radius: 4px;
    -ms-border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px
}
.cv-btn.is-fm {
    border: 1px solid #105f17
}
.cv-btn.is-fm a {
    border-top: 1px solid #3DA399;
    background: #22665B;
    background: -moz-linear-gradient(top, #22665B 0, #1C4A40 100%);
    background: -webkit-linear-gradient(top, #22665B 0, #1C4A40 100%);
    background: linear-gradient(to bottom, #22665B 0, #1C4A40 100%)
}
.cv-btn.is-fm a:hover {
    background: #1C4A40;
    background: -moz-linear-gradient(top, #1C4A40 0, #22665B 100%, #22665B 102%);
    background: -webkit-linear-gradient(top, #1C4A40 0, #22665B 100%, #22665B 102%);
    background: linear-gradient(to bottom, #1C4A40 0, #22665B 100%, #22665B 102%)
}
.main-inner {
    height: 600px;
    width: 100%;
    background: #f8fbff url(../../images/lp_main_bg3.jpg) no-repeat center top
}
.main-inner.is-ver2 {
    background: url(../../images/lp_main_bg4_2n5.jpg) no-repeat center top;
    background-size: 1300px auto
}
.main-in {
    width: 1000px;
    height: 600px;
    margin: 0 auto;
    position: relative
}
.main-ttl {
    text-align: left;
    padding: 134px 0 0 0;
    margin: 0 0 55px 0;
    opacity: 1
}
.main-inner.is-ver2 .main-ttl {
    padding: 95px 38px 0 0;
    margin: 0 0 25px 0
}
.main-about {
    margin: 0 0 45px 0
}
.main-inner.is-ver2 .main-about {
    margin: 0 17px 30px 0
}
.main-about ul li {
    margin: 0 20px 0 0;
    float: left;
    width: 130px;
    box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    overflow: hidden;
    position: relative
}
.main-about ul li.on dl {
    -webkit-animation: op2 1s linear;
    -moz-animation: op2 1s linear;
    -ms-animation: op2 1s linear;
    -o-animation: op2 1s linear;
    animation: op2 1s linear;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    -ms-animation-fill-mode: forwards;
    -o-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    animation-delay: .5s
}
.main-about ul li::after {
    content: '';
    content: none;
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #1C4A40;
    pointer-events: none;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    z-index: 3
}
.main-about ul li.on::after {
    -webkit-animation: .4s ease-in-out forwards maskAnm, .8s ease-in-out forwards maskAnmlast;
    animation: .4s ease-in-out forwards maskAnm, .8s ease-in-out forwards maskAnmlast
}
.main-about ul li dl {
    padding: 10px 0;
    border: 1px solid #1C4A40;
    border-radius: 2px;
    -ms-border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    text-align: center;
    opacity: 1
}
.main-about ul li:nth-child(3) dl {
    padding: 14px 0 10px 0
}
.main-about ul li dl dt {
    color: #1C4A40;
    line-height: 1;
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 5px 0;
    letter-spacing: -.04em
}
.main-about ul li dl dt span {
    font-size: 24px
}
.main-about ul li dl dd {
    line-height: 1.4;
    font-size: 14px;
    font-weight: 700
}
.main-btn {
    padding: 0 40px 0 0
}
.main-inner.is-ver2 .main-btn {
    padding: 0 0 0 15px
}
.main-btn .cv-btn {
    float: left
}
.cnt-inner.is-ver2 {
    padding: 280px 0 0 0
}
.cnt-inner.is-ver3 {
    padding: 100px 0 120px 0
}
.cnt-inner.is-ver4 {
    padding: 20px 0 0 0
}
.cnt-inner.is-ver5 {
    padding: 100px 0 100px 0
}
body.end .cnt-inner.is-ver5 {
    padding: 0 0 100px 0
}
.cnt-inner.is-ver2 .cnt-in {
    background: #f1f3f8;
    padding: 0 0 95px 0
}
.cnt-inner.is-ver4 .cnt-in {
    background: #f1f3f8;
    padding: 0 0 95px 0
}
.cnt-ct {
    width: 1000px;
    margin: 0 auto
}
.cnt-inner.is-ver2 .cnt-ct {
    margin: 0 auto 80px auto
}
.cnt-inner.is-ver3 .cnt-ct {
    margin: 0 auto 80px auto
}
.cnt-inner.is-ver4 .cnt-ct {
    margin: 0 auto 75px auto
}
.cnt-ttl {
    text-align: center
}
.cnt-inner.is-ver2 .cnt-ttl {
    position: relative;
    top: -280px;
    left: 0;
    width: 100%
}
.cnt-inner.is-ver3 .cnt-ttl {
    padding: 0 0 60px 0
}
.cnt-inner.is-ver4 .cnt-ttl {
    position: relative;
    top: -20px;
    left: 0;
    width: 100%;
    margin: 0 0 40px 0
}
.cnt-inner.is-ver5 .cnt-ttl {
    padding: 0 0 55px 0
}
.strg-inner {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    margin: -203px 0 40px 0
}
.strg-inner .add {
    font-size: 12px;
    padding-top: 1em;
}
.strg-inner ul {
    margin: 0 0 0 -41px
}
.strg-inner ul li {
    margin: 0 0 0 41px;
    float: left;
    width: 306px;
    background: #fff;
}
.strg-inner ul li dl {
    background: #fff;
    padding: 30px 20px 30px;
    box-shadow: 0 1px 3px 0 rgba(199, 199, 199, .2);
    -ms-box-shadow: 0 1px 3px 0 rgba(199, 199, 199, .2);
    -moz-box-shadow: 0 1px 3px 0 rgba(199, 199, 199, .2);
    -webkit-box-shadow: 0 1px 3px 0 rgba(199, 199, 199, .2);
    height: 260px;
    box-sizing: border-box;
}
.strg-inner ul li dl dt {
    margin: 0 0 15px 0;
    line-height: 1.4;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    min-height: 56px;
}
.strg-inner ul li dl dd {
    font-size: 14px;
    line-height: 1.8;
    padding: 0 10px;
}
.ex-inner {
    background: #fff;
    padding: 40px 80px 25px 80px;
    box-shadow: 0 1px 3px 0 rgba(199, 199, 199, .2);
    -ms-box-shadow: 0 1px 3px 0 rgba(199, 199, 199, .2);
    -moz-box-shadow: 0 1px 3px 0 rgba(199, 199, 199, .2);
    -webkit-box-shadow: 0 1px 3px 0 rgba(199, 199, 199, .2)
}
.ex-ttl {
    text-align: center;
    padding: 0 0 10px 0
}
.ex-inner ul {
    margin: 0 0 0 -53px
}
.ex-inner ul li {
    margin: 10px 0 0 53px;
    float: left
}
.ex-inner ul.is-ver2 {
    margin: 0
}
.ex-inner ul.is-ver2 li {
    width: 25%;
    margin: 0;
    text-align: center
}
.ex-inner ul.is-ver3 {
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
.ex-inner ul.is-ver3 li {
    width: 20%;
    margin: 0
}
.form-inner .form-txt {
    font-size: 14px;
    line-height: 1;
    margin: 0 0 30px 0;
    text-align: center
}
.form-inner .form-txt span {
    color: #b82c30
}
.form-inner .form-in {
    margin: 0 auto;
    width: 740px
}
.form-inner .form-in table {
    margin: 0 0 30px 0;
    width: 100%
}
.form-inner .form-in table tr th {
    vertical-align: middle;
    text-align: right;
    line-height: 1;
    padding: 10px 10px 10px 0;
    width: 170px
}
.form-inner .form-in table tr th span {
    color: #b82c30
}
.form-inner .form-in table tr td {
    vertical-align: middle;
    text-align: left;
    padding: 10px 0 10px 10px
}
.form-inner .form-in table tr td .flt-in .flt {
    width: 270px
}
.form-inner .form-in table tr td .flt-in .flt.lft {
    float: left
}
.form-inner .form-in table tr td .flt-in .flt.rgt {
    float: right
}
.form-inner .form-in table tr td .wh01 {
    width: 100%
}
.form-inner .form-in table tr td .wh02 {
    width: 220px
}
.form-inner .form-in table tr td .wh03 {
    width: 120px
}
.form-inner .form-in table tr td .wh04 {
    width: 255px
}
.form-inner .form-in table tr td input[type=date], .form-inner .form-in table tr td input[type=tel], .form-inner .form-in table tr td input[type=text] {
    background: #f1f3f8;
    border-radius: 0;
    -ms-border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border: 0;
    height: 40px;
    box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding: 10px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}
.form-inner .form-in table tr td select {
    background: #f1f3f8 url(../../images/dec_arw_gr_dwn01.png) no-repeat right 10px center;
    border-radius: 0;
    -ms-border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border: 0;
    height: 40px;
    box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding: 10px 35px 10px 10px;
    text-indent: .01px;
    text-overflow: '';
    -webkit-appearance: none;
    appearance: none;
    -moz-appearance: none
}
.form-inner .privbox {
    margin: 0 0 50px 0
}
.form-inner .privbox h3 {
    text-align: center;
    line-height: 1;
    margin: 0 0 30px 0;
    font-size: 14px
}
.form-inner .privbox .kipvbox {
    background: #fff;
    border: 10px solid #f1f3f8;
    box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding: 40px 30px;
    margin: 0 0 30px 0
}
.form-inner .privbox .kipvbox p {
    font-size: 12px;
    line-height: 1.8;
    padding: 20px
}
.form-inner .privbox .kipvbox > p {
    padding: 0 0 30px 0
}
.form-inner .privbox .kiyakubox {
    height: 112px;
    overflow-y: scroll;
    border: 1px solid #b2b2b2
}
.form-inner .privbox .pvbox dl {
    display: table;
    width: 100%;
    letter-spacing: -.4em
}
.form-inner .privbox .pvbox dl dt {
    display: table-cell;
    width: 100px;
    letter-spacing: normal;
    vertical-align: middle;
    text-align: center;
    padding: 0 20px 0 0
}
.form-inner .privbox .pvbox dl dd {
    display: table-cell;
    letter-spacing: normal;
    vertical-align: middle;
    text-align: left;
    font-size: 12px
}
.form-inner .form-end h4 {
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 20px 0
}
.form-inner .form-end h5 {
    font-size: 17px;
    font-weight: 700;
    margin: 0 0 20px 0
}
.form-inner .form-end-in {
    padding: 30px 0 0 0
}
.form-inner .form-end-txt {
    margin: 0 0 20px 0
}
.form-inner .form-end-txt:last-child {
    margin: 0
}
.c-pagetop {
    position: fixed;
    bottom: 60px;
    right: 60px;
    z-index: 9;
    display: none
}
.sumy_wrap {
    background: #f1f3f8;
    width: 100%;
    height: auto;
    position: relative;
}
.sumy_in {
    width: 1000px;
    margin: 0 auto;
    padding: 100px 0;
}
.sumyTtl-ttl {
    width: 613px;
    height: 110px;
    margin: 0 auto 45px auto;
}
.sumyTtl-ttl span {
    width: 100%;
    height: 0;
    display: block;
    overflow: hidden;
    padding: 110px 0 0 0;
    background: url(../../images/lp_ttl04n3.png) no-repeat 0 0;
}
.sumyTtl-txt {
    text-align: center;
    font-size: 14px;
    line-height: 2;
    /*font-feature-settings: "palt";*/
}
.sumyTtl-txt .is-fss {
    font-size: 13px;
}
header {
    background: #fff;
    padding: 0 50px;
    position: relative;
    top: auto;
    right: auto;
}
.lp_header{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 42px 0 60px 60px;
    min-width: 1000px;
}
.lp_head_logo .logo .is-20th{
    margin-left: 40px;
}
.lp_head_btn{
    display: block;
    border: 1px solid #000;
    font-size: 20px;
    line-height: 1;
    color: #222;
    font-weight: bold;
    padding: 13px 9px;
    background: #fff;
    text-decoration: none;
}
.lp_mv_wrap{
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
    padding: 70px 0 44px;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.lp_mv_wrap:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background: url(../../images/lp_main_bg.png) no-repeat top right;
    background-size: auto 100%;
}
.lp_mv_ttl{
    margin-bottom: 90px;
    position: relative;
}
.lp_mv_ttl:after {
    content: '';
    display: block;
    width: 600px;
    height: 256px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background: url(../../images/lp_main_line01.png) no-repeat top right;
    background-size: auto 100%;
}
.lp_mv_img {
    margin-left: 10px;
}
.lp_mv_logo {
    margin-bottom: 40px;
}
.lp_mv_box .ttl{
    font-size: 30px;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 40px;
}
.lp_mv_box .txt{
    width: 540px;
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 30px;
}
.lp_mv_box .last{
    font-size: 22px;
    font-weight: 500;
    line-height: 1;
}
.lpRead_wrap{
    padding: 100px 0 50px;
}
.lpRead_wrap .ttl{
    font-size: 38px;
    line-height: 1;
    font-weight: 600;
    text-align: center;
    margin-bottom: 46px;
}
.lpRead_wrap .txt{
    font-size: 28px;
    font-weight: 500;
    text-align: center;
    line-height: 1.8;
}
.lpLast_wrap{
    padding: 100px 0;
}
.lpLast_wrap .btn{
    margin-bottom: 40px;
}
.lpLast_wrap .btn a{
    width: 100%;
    display: block;
    border: 10px solid #f1f3f8;
    font-size: 28px;
    line-height: 1;
    color: #222;
    font-weight: bold;
    padding: 40px 0;
    background: #fff;
    text-decoration: none;
    text-align: center;
}
.lpLast_wrap .txt{
    font-size: 24px;
    line-height: 1;
    font-weight: bold;
    text-align: center;
}
@media (hover: hover) {
    .lp_head_logo .logo a:hover {
        opacity: .8;
    }
    .lp_head_btn a:hover {
        background-color: rgba(0, 0, 0, .2);
    }
    .lpLast_wrap .btn a:hover {
        background-color: #f1f3f8;
    }
    .cv-btn a:hover {
        opacity: .7
    }
}
@media (max-width:767px) {
    .cv-btn {
        width: auto;
        margin: 0 10%;
    }
    .cv-btn a {
        font-size: 15px;
        padding: 20px 0 20px 0
    }
    .cv-btn.is-fm a:hover {
        background: #22665B;
        background: -moz-linear-gradient(top, #22665B 0, #1C4A40 100%);
        background: -webkit-linear-gradient(top, #22665B 0, #1C4A40 100%);
        background: linear-gradient(to bottom, #22665B 0, #1C4A40 100%)
    }
    .main-inner {
        height: auto;
        background: 0 0
    }
    .main-inner.is-ver2 {
        background: 0 0
    }
    .main-in {
        width: auto;
        height: auto
    }
    .main-ttl {
        text-align: center;
        padding: 0;
        margin: 0
    }
    .main-inner.is-ver2 .main-ttl {
        padding: 0;
        margin: 0
    }
    .main-about {
        margin: 20px 0 20px 0
    }
    .main-inner.is-ver2 .main-about {
        margin: 20px 0 20px 0
    }
    .main-about ul {
        float: none;
        width: 100%;
        padding: 0 5%;
        box-sizing: border-box;
        -ms-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box
    }
    .main-about ul li {
        margin: 0 5% 0 0;
        float: left;
        text-align: center;
        width: 30%
    }
    .main-about ul li:last-child {
        margin: 0
    }
    .main-about ul li dl {
        padding: 7px 0 5px 0
    }
    .main-about ul li:nth-child(3) dl {
        padding: 9px 0 6px 0
    }
    .main-about ul li dl dt {
        color: #1C4A40;
        line-height: 1;
        font-size: 16px;
        font-weight: 700;
        margin: 0 0 3px 0;
        letter-spacing: -.04em
    }
    .main-about ul li dl dt span {
        font-size: 19px
    }
    .main-about ul li dl dd {
        line-height: 1.4;
        font-size: 12px;
        font-weight: 700
    }
    .main-btn {
        padding: 0
    }
    .main-inner.is-ver2 .main-btn {
        padding: 0
    }
    .main-btn .cv-btn {
        float: none
    }
    .cnt-inner.is-ver2 {
        padding: 20px 0 0 0
    }
    .cnt-inner.is-ver3 {
        padding: 40px 0 50px 0
    }
    .cnt-inner.is-ver4 {
        padding: 20px 0 0 0
    }
    .cnt-inner.is-ver5 {
        padding: 40px 0 40px 0
    }
    body.end .cnt-inner.is-ver5 {
        padding: 20px 0 40px 0
    }
    .cnt-inner.is-ver2 .cnt-in {
        background: #f1f3f8;
        padding: 0 0 30px 0
    }
    .cnt-inner.is-ver4 .cnt-in {
        background: #f1f3f8;
        padding: 0 0 30px 0
    }
    .cnt-ct {
        width: auto
    }
    .cnt-inner.is-ver2 .cnt-ct {
        margin: 0 auto 30px auto
    }
    .cnt-inner.is-ver3 .cnt-ct {
        margin: 0 auto 30px auto
    }
    .cnt-inner.is-ver4 .cnt-ct {
        margin: 0 auto 30px auto
    }
    .cnt-ttl {
        text-align: center
    }
    .cnt-inner.is-ver2 .cnt-ttl {
        top: -20px
    }
    .cnt-inner.is-ver3 .cnt-ttl {
        padding: 0 0 10px 0
    }
    .cnt-inner.is-ver4 .cnt-ttl {
        margin: 0
    }
    .cnt-inner.is-ver5 .cnt-ttl {
        padding: 0 0 30px 0
    }
    .strg-inner {
        margin: 20px 0 40px 0
    }
    .strg-inner .add {
        font-size: 10px;
        padding-top: 1em;
    }
    .strg-inner ul {
        margin: 0 auto;
        width: 100%;
        max-width: 306px
    }
    .strg-inner ul li {
        margin: 0 0 20px 0;
        float: none;
        width: auto;
        background: transparent;
    }
    .strg-inner ul li:last-child {
        margin: 0
    }
    .strg-inner ul li dl {
        padding: 20px;
        height: auto
    }
    .strg-inner ul li dl dt {
        margin: 0 0 16px 0;
        font-size: 14px;
        text-align: center;
        min-height: inherit;
    }
    .strg-inner ul li dl dd {
        font-size: 12px;
    }
    .ex-inner {
        background: #fff;
        padding: 20px 20px 20px 20px
    }
    .ex-inner ul {
        margin: 0 auto;
        width: 280px
    }
    .ex-inner ul li {
        margin: 10px 0 0 0
    }
    .ex-inner ul.is-ver2 {
        margin: 0 auto
    }
    .ex-inner ul.is-ver2 li {
        margin: 10px 0 0 0;
        width: auto
    }
    .ex-inner ul.is-ver3 {
        margin: 0 auto;
        display: -webkit-block;
        display: -ms-block;
        display: block
    }
    .ex-inner ul.is-ver3 li {
        width: auto;
        margin: 10px 0 0 0
    }
    .ex-inner ul li:nth-child(1) {
        margin: 0
    }
    .ex-inner ul li:nth-child(2) {
        margin: 0
    }
    .ex-inner ul li:nth-child(2n) {
        float: right
    }
    .form-inner .form-txt {
        margin: 0 0 20px 0
    }
    .form-inner .form-in {
        margin: 0 auto;
        width: auto
    }
    .form-inner .form-in table {
        margin: 0 0 10px 0
    }
    .form-inner .form-in table tr th {
        display: block;
        text-align: left;
        padding: 10px 5% 0 5%;
        width: auto;
        font-size: 14px
    }
    .form-inner .form-in table tr th span {
        color: #b82c30
    }
    .form-inner .form-in table tr td {
        display: block;
        padding: 10px 5% 15px 5%;
        font-size: 12px
    }
    .form-inner .form-in table tr td .flt-in .flt {
        width: 48%
    }
    .form-inner .form-in table tr td .flt-in .flt.lft {
        float: left
    }
    .form-inner .form-in table tr td .flt-in .flt.rgt {
        float: right
    }
    .form-inner .form-in table tr td .wh01 {
        width: 100%
    }
    .form-inner .form-in table tr td .wh02 {
        width: 35%
    }
    .form-inner .form-in table tr td .wh03 {
        width: 20%
    }
    .form-inner .form-in table tr td .wh04 {
        width: 100%
    }
    .form-inner .form-in table tr td input[type=tel], .form-inner .form-in table tr td input[type=text] {
        height: 36px;
        padding: 5px;
        font-size: 16px
    }
    .form-inner .form-in table tr td select {
        max-width: 351px;
        height: 36px;
        padding: 5px;
        font-size: 16px
    }
    .form-inner .privbox {
        margin: 0 0 30px 0;
        padding: 0 5%
    }
    .form-inner .privbox h3 {
        margin: 0 0 15px 0
    }
    .form-inner .privbox .kipvbox {
        border: 5px solid #f1f3f8;
        padding: 20px 10px;
        margin: 0 0 20px 0
    }
    .form-inner .privbox .kipvbox p {
        padding: 10px
    }
    .form-inner .privbox .kipvbox > p {
        padding: 0 0 10px 0
    }
    .form-inner .privbox .kiyakubox {
        height: 112px;
        overflow-y: scroll;
        border: 1px solid #b2b2b2
    }
    .form-inner .privbox .pvbox dl {
        display: table;
        width: 100%;
        letter-spacing: -.4em
    }
    .form-inner .privbox .pvbox dl dt {
        display: table-cell;
        width: 100px;
        letter-spacing: normal;
        vertical-align: middle;
        text-align: center;
        padding: 0 20px 0 0
    }
    .form-inner .privbox .pvbox dl dd {
        display: table-cell;
        letter-spacing: normal;
        vertical-align: middle;
        text-align: left;
        font-size: 12px
    }
    .form-inner .form-end {
        padding: 0 5% 0 5%
    }
    .form-inner .form-end h4 {
        font-size: 18px;
        margin: 0 0 15px 0
    }
    .form-inner .form-end h5 {
        font-size: 15px;
        margin: 0 0 15px 0
    }
    .form-inner .form-end-in {
        padding: 20px 0 0 0
    }
    .form-inner .form-end-txt {
        margin: 0 0 15px 0
    }
    .c-pagetop {
        bottom: 20px;
        right: 20px
    }
    .umy_wrap {
        background: #f1f3f8;
        height: auto;
    }
    .sumy_wrap {
        height: auto;
    }
    .sumy_in {
        width: auto;
        margin: 0;
        padding: 30px 20px 20px 30px;
    }
    .sumyTtl_wrap {
        width: auto;
    }
    .sumyTtl-ttl {
        width: 100%;
        max-width: 323px;
        height: 60px;
        margin: 0 auto 25px auto;
    }
    .sumyTtl-ttl span {
        padding: 60px 0 0 0;
        background: url(../../images/sp/lp_ttl04n3.png) no-repeat center center;
        background-size: 100% auto;
        -ms-background-size: 100% auto;
        -moz-background-size: 100% auto;
        -webkit-background-size: 100% auto;
    }
    .sumyTtl-txt {
        text-align: left;
        font-size: 12px;
        line-height: 1.8;
    }
    .sumyTtl-txt .is-fss {
        font-size: 11px;
    }
    header {
        padding: 0 20px;
    }
    .lp_header{
        padding: 20px 0;
        min-width: inherit;
    }
    .lp_head_logo .logo .is-20th{
        display: none;
    }
    .lp_head_btn{
        text-align: center;
        font-size: 10px;
        line-height: 1.2;
        padding: 6px 8px;
    }
    .lp_head_logo {
        width: -webkit-calc(100% - 100px);
        width: calc(100% - 100px);
        max-width: 100px;
        box-sizing: border-box;
    }
    .lp_head_logo .logo a:first-child img{
        width: 100%;
        height: auto;
    }
    .lp_mv_wrap{
        padding: 0;
        display: block;
        margin: 0 0 30px;
    }
    .lp_mv_wrap:before {
        content: none;
    }
    .lp_mv_in {
        max-width: 375px;
        margin: 0 auto;
        position: relative;
    }
    .lp_mv_ttl{
        margin-bottom: 30px;
        position: relative;
        padding: 110px 20px 85px;
    }
    .lp_mv_ttl:after {
        content: '';
        display: block;
        width: 150px;
        height: 64px;
        position: absolute;
        top: 110px;
        left: 20px;
        z-index: -1;
        background: url(../../images/lp_main_line01.png) no-repeat top right;
        background-size: 100% auto;
    }
    .lp_mv_ttl:before {
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        background: url(../../images/sp/lp_main_bg.png) no-repeat top right;
        background-size: 100% auto;
    }
    .lp_mv_img {
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
        width: -webkit-calc(100% - 200px);
        width: calc(100% - 200px);
        max-width: 175px;
        margin: 0;
    }
    .lp_mv_img img {
        width: 100%;
        height: auto;
    }
    .lp_mv_logo {
        text-align: center;
        margin-bottom: 10px;
    }
    .lp_mv_box .ttl{
        font-size: 20px;
        line-height: 1.4;
        margin-bottom: 20px;
        text-align: center;
    }
    .lp_mv_box .txt{
        width: 100%;
        font-size: 12px;
        margin-bottom: 20px;
        padding: 0 32px;
        box-sizing: border-box;
        line-height: 1.8;
    }
    .lp_mv_box .last{
        font-size: 12px;
        line-height: 1.4;
        text-align: center;
        font-weight: bold;
    }
    .lpRead_wrap{
        padding: 45px 0 50px;
    }
    .lpRead_wrap .ttl{
        font-size: 19px;
        margin-bottom: 20px;
    }
    .lpRead_wrap .txt{
        font-size: 10px;
        font-weight: bold;
        text-align: center;
    }
    .lpLast_wrap{
        padding: 30px 20px;
    }
    .lpLast_wrap .btn{
        margin-bottom: 15px;
    }
    .lpLast_wrap .btn a{
        border: 5px solid #f1f3f8;
        font-size: 14px;
        padding: 20px 0;
    }
    .lpLast_wrap .txt{
        font-size: 10px;
        line-height: 1.4;
        font-weight: bold;
        text-align: center;
    }
}
@media (max-width:320px) {
    .cnt-inner.is-ver2 .cnt-ttl img {
        width: 100%;
        max-width: 280px
    }
    .main-about ul li dl dt {
        font-size: 15px
    }
    .main-about ul li dl dd {
        font-size: 10px
    }
    .form-inner .form-in table tr td input[type=tel], .form-inner .form-in table tr td input[type=text] {
        font-size: 13px
    }
    .form-inner .form-in table tr td select {
        font-size: 13px
    }
    .lp_mv_box .ttl {
        font-size: 18px;
    }
    .lp_mv_box .last {
        font-size: 11px;
    }
    .lp_head_logo {
        padding-right: 10px;
    }
}
.main_logo_wrap {
    position: absolute;
    bottom: 50px;
    right: 0;
    z-index: 10
}
.main_logo_in {
    text-align: center;
    margin-bottom: 15px
}
.main_logo_in:last-child {
    margin-bottom: 0
}
@media (max-width:767px) {
    .main_logo_wrap {
        bottom: 265px;
        right: 20px
    }
    .main_logo_wrap.ver2 {
        bottom: inherit;
        top: 17px
    }
    .main_logo_in {
        margin-bottom: 0
    }
}
@media screen and (min-width:376px) and ( max-width:767px) {
    .lp_mv_box .txt {
        padding: 0 40px;
    }
}
/*
@media screen and (min-width:414px) and ( max-width:767px) {
    .lp_mv_img {
        top: 25%;
        max-width: none;
        overflow: hidden;
        height: 175px;
    }
    .lp_mv_img img {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 100%;
        height: auto;
    }
}
*/
