@keyframes fade-in {
    0% {
        display: none;
        opacity: 0
    }

    1% {
        display: block;
        opacity: 0
    }

    100% {
        display: block;
        opacity: 1
    }
}

@keyframes scroll_line {
    0% {
        top: -100%
    }

    100% {
        top: 100%
    }
}

#float a, #float a:active, #float a:hover, #float a:link, #float a:visited, #main a, #main a:active, #main a:hover, #main a:link, #main a:visited {
    text-decoration: none;
    color: #000
}

#float div, #float dl, #main div, #main dl {
    box-sizing: border-box
}

#float .list .item, #main .list .item {
    float: left
}

#float .movie_container, #main .movie_container {
    position: relative
}

#float .movie_container iframe, #main .movie_container iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

#float .btn, #main .btn {
    display: block
}

#float .btn img, #main .btn img {
    width: 100%;
    height: auto;
    vertical-align: bottom
}

#float .btn.hover, #main .btn.hover {
    transition: opacity .3s ease-out
}

#float .btn.hover:hover, #main .btn.hover:hover {
    opacity: .7
}

#float .cf::after, #main .cf::after {
    content: "";
    display: block;
    clear: both
}

#float .alternative-text, #main .alternative-text {
    display: none
}

body {
    font-family: 'Noto Sans JP', Meiryo, sans-serif;
    letter-spacing: .02em;
    background-color: #fff
}

body.menu_active {
    overflow: hidden
}

body button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: 0;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: "Noto Sans JP", Meiryo, sans-serif
}

body ul {
    padding: 0;
    margin: 0
}

body h2, body h3, body p, body span {
    line-height: 1;
    color: #1a1311;
    margin: 0;
    padding: 0
}

body img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
    -webkit-user-drag: none
}

body p {
    font-size: 16px;
    line-height: 2
}

body #main .btn {
    width: 225px;
    min-height: 44px;
    display: flex;
    align-items: center;
    padding: 8px 10px 10px 55px;
    background-color: #fbff9b;
    border-radius: 50px;
    box-sizing: border-box;
    box-shadow: 0 6px 20px rgba(0, 82, 101, .16);
    position: relative;
    overflow: hidden
}

body #main .btn::before {
    content: '';
    display: block;
    width: 32px;
    height: 32px;
    border-radius: 50px;
    background-color: #7299b5;
    position: absolute;
    top: 50%;
    left: 6px;
    transform: translateY(-50%);
    display: none
}

body #main .btn::after {
    content: '';
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    position: absolute;
    top: 50%;
    right: calc(-100% - 5px);
    transform: translateY(-50%);
    transition: background-color 0s .3s, transform .2s ease-out
}

@media screen and (min-width:1081px) {
    body #main .btn:hover::before {
        display: block;
        animation: btn-hover-anim .4s cubic-bezier(.5, 1, .89, 1) forwards
    }

    body #main .btn:hover::after {
        background-color: #7299b5;
        transform: translate(-100%, -50%);
        transition: background-color 0s .3s, transform 0s ease-out
    }

    body #main .btn:hover .btn__circle {
        background-color: #7299b5
    }

    body #main .btn:hover .btn__circle.pdf::after {
        background-image: url(../img/business/icon-pdf-hover.png)
    }

    body #main .btn:hover .btn__circle.mail::after {
        background-image: url(../img/business/icon-mail-hover.png)
    }

    body #main .btn:hover .btn__text {
        color: #fbff9b
    }
}

body #main .btn-large {
    padding: 10px 10px 10px 104px;
    min-height: 80px
}

body #main .btn-large .btn__circle {
    width: 60px;
    height: 60px;
    left: 10px
}

body #main .btn-large .btn__circle::after {
    width: 36px;
    height: 36px
}

body #main .btn-large .btn__circle.watch::after {
    background-image: url(../img/business/icon-watch.png)
}

body #main .btn-large .btn__circle.fukidashi::after {
    background-image: url(../img/business/icon-fukidashi.png)
}

body #main .btn-large .btn__circle.tab::after {
    background-image: url(../img/business/icon-tab.png)
}

body #main .btn-large .btn__circle.back::after {
    background-image: url(../img/business/icon-back.png)
}

body #main .btn-large .btn__text {
    text-align: center;
    font-size: 24px;
    line-height: calc(30 / 24)
}

body #main .btn-large .btn__text-large {
    font-size: 28px
}

@media screen and (min-width:1081px) {
    body #main .btn-large:hover::before {
        animation: btn-large-hover-anim .4s cubic-bezier(.5, 1, .89, 1) forwards
    }

    body #main .btn-large:hover .btn__circle.watch::after {
        background-image: url(../img/business/icon-watch-hover.png)
    }

    body #main .btn-large:hover .btn__circle.fukidashi::after {
        background-image: url(../img/business/icon-fukidashi-hover.png)
    }

    body #main .btn-large:hover .btn__circle.tab::after {
        background-image: url(../img/business/icon-tab-hover.png)
    }

    body #main .btn-large:hover .btn__circle.back::after {
        background-image: url(../img/business/icon-back-hover.png)
    }
}

body #main .btn__circle {
    display: block;
    width: 34px;
    height: 34px;
    border-radius: 50px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 5px;
    transform: translateY(-50%);
    z-index: 1
}

body #main .btn__circle::after {
    content: '';
    width: 16px;
    height: 16px;
    background-image: url(../img/business/icon-pdf.png);
    background-size: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

body #main .btn__circle.pdf::after {
    background-image: url(../img/business/icon-pdf.png)
}

body #main .btn__circle.mail::after {
    background-image: url(../img/business/icon-mail.png)
}

body #main .btn__text {
    display: block;
    font-size: 18px;
    color: #5e86a2;
    font-weight: 700;
    transition: color .3s;
    position: relative;
    z-index: 1
}

body #main .box-white {
    background-color: #fff;
    box-shadow: 0 10px 40px rgba(114, 153, 181, .2);
    border-radius: 40px
}

body #main .list-caution {
    margin-top: 16px
}

body #main .list-caution li {
    font-size: 12px;
    letter-spacing: .04em;
    text-indent: -1em;
    padding-left: 1em;
    line-height: calc(19 / 12)
}

body #main .header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10
}

body #main .header__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 50px
}

body #main .header__logo {
    width: 60px
}

body #main .header__list {
    display: flex;
    align-items: center;
    gap: 20px
}

body #main .wrapper {
    position: relative;
    width: 100%
}

body #main .wrapper * {
    box-sizing: border-box
}

body #main .wrapper .mv {
    background-image: url(../img/business/mv-bg.jpg);
    background-size: cover;
    overflow: hidden
}

body #main .wrapper .mv__inner {
    max-width: 1440px;
    margin: 0 auto;
/*    padding: 163px 20px 282px;*/
	padding: 173px 20px 217px;
    position: relative
}

body #main .wrapper .mv__copy {
/*    max-width: 900px;*/
	max-width: 1020px;
    margin: 0 auto
}

body #main .wrapper .mv__img {
    width: 558px;
    position: absolute;
    bottom: 82px;
    right: -8px
}

body #main .wrapper .mv__img-copy {
    width: 51px;
    position: absolute;
    top: 0;
    right: 67px
}

body #main .wrapper .mv__img-comment {
    width: 356px;
    position: absolute;
    bottom: 58px;
    right: 0
}

body #main .wrapper .mv__logo {
    width: 254px;
    position: absolute;
    bottom: 140px;
    left: 23px
}

body #main .wrapper .message {
    position: relative;
    top: -112px;
    margin-bottom: -112px;
    padding-top: 114px;
    background-color: #fff;
    border-top-left-radius: 60px;
    border-top-right-radius: 60px;
    overflow: hidden;
    z-index: 1
}

body #main .wrapper .message__deco {
    max-width: 1444px;
    width: 100%;
    position: absolute;
    top: 110px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1
}

body #main .wrapper .message__top {
/*  max-width: 820px;*/
/*    max-width: 1120px;*/
	margin: 0 auto;
/*    padding: 0 20px;*/
	padding: 0 0 0 30px;
	box-sizing: content-box;
}

body #main .wrapper .message__top h3 {
/*    font-size: 28px;*/
	font-size: 24px;
/*    margin-bottom: 20px;*/
	margin-bottom: 25px;
    color: #5e86a2;
}

body #main .wrapper .message__top p {
/*    margin-top: 10px;*/
    margin-bottom: 2px;
}

body #main .wrapper .message__top-img {
    max-width: 550px
}

body #main .wrapper .message__txt-bg01 {
    width: 95vw;
    position: absolute;
    top: 110px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1
}

body #main .wrapper .message__top-bg01 {
    width: 100vw;
    position: absolute;
    bottom: -1px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1
}

body #main .wrapper .message__top-bg02 {
    width: 100vw;
    height: 125px;
    position: absolute;
    bottom: -3px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1
}

body #main .wrapper .message__top-body {
    margin: auto;
/*    padding: 60px;*/
    position: relative;
/*    z-index: 2;*/
/*    margin-bottom: 50px;*/
    margin-bottom: -5px;
    text-align: center;
	display: flex;
	flex-direction: row-reverse;
	max-width: 1120px;
}
body #main .wrapper .message__top-body .left-box{
	width: 38.580645vw;
}
body #main .wrapper .message__top-body .left-box .message__img-bg{
	
}
body #main .wrapper .message__top-body .right-box{
    width: 42.34375vw;
    padding-top: 102px;
    padding-left: 30px;
    padding-right: 15px;
}

body #main .wrapper .message__top-body .right-box .box-white{
	padding: 65px 40px 55px;
}



body #main .wrapper .message__top-body p {
    font-size: 18px;
    line-height: 2
}

body #main .wrapper .main-contents {
    position: relative;
    padding-top: 50px;
    background-color: #ddf2fc
}

body #main .wrapper .main-contents__nav {
    box-shadow: 0 8px 20px rgba(114, 153, 181, .2);
    width: 100%;
    max-width: 1138px;
    margin: 0 auto;
    background-color: #fff;
    border-radius: 50px;
    z-index: 10;
    position: sticky;
    top: 10px
}

body #main .wrapper .main-contents__nav-bar {
    width: 235px;
    height: 46px;
    background-color: #fbff9b;
    border-radius: 50px;
    position: absolute;
    top: 50%;
    left: 18px;
    transform: translateY(-50%)
}

body #main .wrapper .main-contents__nav ul {
    display: flex;
    align-items: center;
    padding: 12px 18px
}

body #main .wrapper .main-contents__nav ul li.current a span::after {
    display: none
}

body #main .wrapper .main-contents__nav ul li a {
    display: block;
    text-align: center;
    padding: 3px 25px;
    border-radius: 50px;
    position: relative;
    z-index: 1
}

@media screen and (min-width:1081px) {
    body #main .wrapper .main-contents__nav ul li a:hover span::after {
        transform: scaleX(1);
        transform-origin: top left
    }
}

body #main .wrapper .main-contents__nav ul li a span {
    display: inline-block;
    padding: 7px 3px;
    color: #5e86a2;
    font-weight: 700;
    font-size: 18px;
    position: relative
}

body #main .wrapper .main-contents__nav ul li a span::after {
    content: '';
    width: 100%;
    height: 2px;
    background-color: #5e86a2;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: top right;
    transition: transform .2s
}

body #main .wrapper .about {
    padding-top: 86px;
    padding-bottom: 120px;
    background-color: #ddf2fc;
    position: relative
}

body #main .wrapper .about__deco {
    width: 215px;
    position: absolute;
    top: 17px;
    left: 0
}

body #main .wrapper .about__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1
}

body #main .wrapper .about h2 {
    font-size: 70px;
    color: #5e86a2;
    position: relative
}

body #main .wrapper .about__illust {
    display: block;
    max-width: 751px;
    margin: 60px auto 0
}

body #main .wrapper .about__box {
    margin-top: 80px;
    padding:40px 60px 124px 60px;
    position: relative
}
body #main .wrapper .about__box.box_02area{
    padding-bottom: 170px;
}

body #main .wrapper .about h3 {
    font-size: 32px;
    font-weight: 700;
    color: #5e86a2;
    letter-spacing: .01em;
    margin-bottom: 24px
}

body #main .wrapper .about h3:not(:first-of-type) {
    margin-top: 50px
}

body #main .wrapper .about__box-body {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    position: relative
}

body #main .wrapper .about__box-body>img {
    max-width: 225px
}

body #main .wrapper .about__comment01 {
    width: 720px;
    height: 132px;
    position: absolute;
    bottom: 0;
    left: 60px
}

body #main .wrapper .about__comment01-img {
    width: 159px;
    position: absolute;
    bottom: 0;
    right: 0
}

body #main .wrapper .about__comment01-fukidashi {
    width: 537px;
    position: absolute;
    top: 20px;
    left: 0
}

body #main .wrapper .about__img02 {
    display: block;
    margin-top: 28px
}

body #main .wrapper .about__bold {
    display: block;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .04em;
    margin-top: 8px
}

body #main .wrapper .about__map {
    display: block;
    margin-top: 40px
}

body #main .wrapper .about__peaktime {
    display: block;
    margin-top: 40px
}

body #main .wrapper .about__btn {
    margin: 37px auto 0;
    width: 381px
}

body #main .wrapper .about__btn .btn__circle {
    width: 60px;
    height: 60px;
    padding: 12px
}

body #main .wrapper .about__comment02 {
    width: 998px;
    height: 131px;
    position: absolute;
    bottom: 0;
    left: 60px
}

body #main .wrapper .about__comment02-img {
/*    width: 205px;*/
	width:215px;
    position: absolute;
    bottom: 0;
/*    right: 0*/
	right: -5px;
}

body #main .wrapper .about__comment02-fukidashi {
    width: 802px;
    position: absolute;
    top: 20px;
    left: 0
}

body #main .wrapper .merit {
    padding-top: 86px;
    padding-bottom: 120px;
    position: relative;
    z-index: 1;
    background-color: #fff
}

body #main .wrapper .merit__deco {
    width: 215px;
    position: absolute;
    top: 17px;
    left: 0
}

body #main .wrapper .merit__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1
}

body #main .wrapper .merit h2 {
    font-size: 70px;
    color: #5e86a2;
    position: relative
}

body #main .wrapper .merit__illust {
    display: block;
    max-width: 751px;
    margin: 60px auto 0
}

body #main .wrapper .merit__box {
    margin-top: 80px;
    padding: 40px;	
    position: relative
}

body #main .wrapper .merit__box.box-01area{
	padding: 40px 40px 65px 40px;
}
body #main .wrapper .merit__box.box-02area{
	padding: 40px 40px 85px 40px;
}
body #main .wrapper .merit__box.box-03area{
	padding: 40px 40px 105px 40px;
}


body #main .wrapper .merit__box:first-of-type .merit__box-body {
    max-width: 560px
}

body #main .wrapper .merit__box:nth-of-type(2) .merit__box-body {
    max-width: 555px
}

body #main .wrapper .merit__box:nth-of-type(3) .merit__box-body {
    max-width: 550px
}

body #main .wrapper .merit__box01 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 47px
}

body #main .wrapper .merit__box-body {
/*    padding-top: 30px;*/
}

body #main .wrapper .merit__box-body .text-large {
    color: #5e86a2;
    font-size: 20px;
    font-weight: 700
}

body #main .wrapper .merit__box-body .text-large .text-num {
    font-size: 28px;
    color: #5e86a2
}

body #main .wrapper .merit__box-img01 {
    max-width: 400px
}

body #main .wrapper .merit__box-img02 {
    display: block;
    max-width: 400px
}

body #main .wrapper .merit__box-img03 {
    max-width: 400px
}

body #main .wrapper .merit__img-caution {
    font-size: 12px;
    margin-top: 10px;
    display: block;
    text-align: right
}

body #main .wrapper .merit h3 {
    font-size: 32px;
    font-weight: 700;
    color: #5e86a2;
    letter-spacing: .01em;
    margin-bottom: 24px
}

body #main .wrapper .merit h3:not(:first-of-type) {
    margin-top: 50px
}

body #main .wrapper .merit__comment01 {
    width: 590px;
    height: 180px;
    position: absolute;
    bottom: 0;
    left: 60px
}

body #main .wrapper .merit__comment01-img {
/*    width: 106px;*/
	width:123px;
    position: absolute;
    bottom: 0;
/*    right: 0;*/
	right: -12px;
}

body #main .wrapper .merit__comment01-fukidashi {
    width: 480px;
    position: absolute;
    top: 22px;
    left: 0
}

body #main .wrapper .merit__comment02 {
    width: 632px;
    height: 329px;
    position: absolute;
    bottom: 0;
    left: 60px
}

body #main .wrapper .merit__comment02-img {
    width: 168px;
    position: absolute;
    bottom: 0;
    right: 10px
}

body #main .wrapper .merit__comment02-fukidashi {
    width: 480px;
    position: absolute;
    bottom: 40px;
    left: 0
}

body #main .wrapper .merit__comment03 {
    width: 726px;
    height: 187px;
    position: absolute;
    bottom: 0;
    left: 60px
}

body #main .wrapper .merit__comment03-img {
    width: 285px;
    position: absolute;
    bottom: 0;
    right: 0
}

body #main .wrapper .merit__comment03-fukidashi {
    width: 480px;
    position: absolute;
    top: 12px;
    left: 0
}

body #main .wrapper .merit__list-btn {
    margin: 80px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px
}

body #main .wrapper .merit__btn {
    width: 381px
}

body #main .wrapper .merit__bottom {
/*    margin-top: 100px;*/
	margin-top: 80px;
    text-align: center;
    color: #5e86a2;
    font-size: 32px;
    line-height: calc(54 / 32);
    font-weight: 700
}

body #main .wrapper .merit__bottom .text-large {
    font-size: 40px;
    color: #5e86a2;
    line-height: calc(54 / 40);
    font-weight: 700
}

body #main .wrapper .merit__bottom-img {
    display: block;
    width: 603px;
    margin: 80px auto 0
}

body #main .wrapper .merit__caution {
    text-align: right
}

body #main .wrapper .interview {
    padding: 86px 0 160px;
    background-image: url(../img/business/interview-bg.jpg);
    background-size: cover;
    position: relative
}

body #main .wrapper .interview__deco {
    width: 215px;
    position: absolute;
    top: 17px;
    left: 0
}

body #main .wrapper .interview__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1
}

body #main .wrapper .interview h2 {
    font-size: 70px;
    color: #fff;
    position: relative
}

body #main .wrapper .interview__list {
    margin: 80px 0 0;
    display: flex;
    justify-content: space-between;
    gap: 32px
}

body #main .wrapper .interview__list li {
    width: calc(50% - 32px / 2)
}

body #main .wrapper .interview__list li button {
    display: block;
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: 0;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    pointer-events: none;
    width: 100%
}

body #main .wrapper .interview__list li button img {
    filter: drop-shadow(0 10px 40px rgba(114, 153, 181, .2))
}

body #main .wrapper .interview__list li a {
    display: block;
    transition: opacity .3s
}

@media screen and (min-width:1081px) {
    body #main .wrapper .interview__list li a:hover {
        opacity: .75
    }
}

body #main .wrapper .interview__list li a img {
    filter: drop-shadow(0 10px 40px rgba(114, 153, 181, .2));
    border-radius: 30px
}

body #main .wrapper .movies {
    background-color: #ddf2fc;
    padding: 86px 0 120px;
    position: relative;
    z-index: 1
}

body #main .wrapper .movies__deco {
    width: 215px;
    position: absolute;
    top: 17px;
    left: 0
}

body #main .wrapper .seminar__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1
}

body #main .wrapper .movies h2 {
    font-size: 70px;
    color: #5e86a2
}

body #main .wrapper .flex {
    display: flex;
    justify-content: space-between;
}

body #main .wrapper .movie_box {
    max-width: 544px;
}

body #main .wrapper .seminar__movie {
    display: block;
    max-width: 800px;
    margin: 80px auto 0;
    transition: opacity .3s
}

@media screen and (min-width:1081px) {
    body #main .wrapper .seminar__movie:hover {
        opacity: .75
    }
}

body #main .wrapper .seminar__movie img {
    filter: drop-shadow(0 10px 40px rgba(114, 153, 181, .2))
}

body #main .wrapper .seminar__bottom {
    margin-top: 20px;
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 150%;
    color: #5e86a2
}

body #main .wrapper .seminar__text {
    text-align: center;
    margin-top: 10px;
    letter-spacing: .04em
}

body #main .wrapper .seminar__text .indent {
    padding-left: 1em;
    display: inline-block
}

body #main .wrapper .seminar__modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    display: none;
    opacity: 0;
    transition: opacity .3s ease
}

body #main .wrapper .seminar__modal.open {
    display: block;
    opacity: 1
}

body #main .wrapper .seminar__modal-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .75)
}

body #main .wrapper .seminar__modal-close {
    position: absolute;
    right: 0;
    top: -50px;
    width: 40px;
    height: 40px
}

body #main .wrapper .seminar__modal-close::before {
    content: '';
    width: 100%;
    height: 2px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg)
}

body #main .wrapper .seminar__modal-close::after {
    content: '';
    width: 100%;
    height: 2px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg)
}

body #main .wrapper .seminar__modal-body {
    max-width: 1000px;
    width: 100%;
    max-height: 90vh;
    aspect-ratio: 1000/562;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

body #main .wrapper .seminar__modal-body .seminar__modal-video,
body #main .wrapper .seminar__modal-body iframe {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

body #main .wrapper .seminar__modal-body .seminar__modal-video {
    display: none;
}

body #main .wrapper .seminar__modal-body .seminar__modal-video.is-active {
    display: block;
}

body #main .wrapper .faq {
    padding: 86px 0 176px;
    position: relative;
    background-color: #fff
}

body #main .wrapper .faq__deco {
    width: 210px;
    position: absolute;
    top: 17px;
    left: 0
}

body #main .wrapper .faq__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1
}

body #main .wrapper .faq h2 {
    font-size: 70px;
    color: #5e86a2;
    line-height: calc(98 / 70)
}

body #main .wrapper .faq__body {
    max-width: 960px;
    margin: 80px auto 0
}

body #main .wrapper .faq__outer {
    border: 2px solid #5e86a2;
    border-radius: 10px;
    background-color: #fff;
    transition: .3s ease-out;
    overflow: hidden
}

body #main .wrapper .faq__outer:first-of-type {
    transition: .8s ease-out
}

body #main .wrapper .faq__outer:not(:first-of-type) {
    margin-top: 20px
}

body #main .wrapper .faq__q {
    display: block;
    cursor: pointer
}

body #main .wrapper .faq__q.open .faq__icon {
    transform: translateY(-50%) rotate(-90deg)
}

body #main .wrapper .faq__q.open .faq__icon::before {
    opacity: 0
}

body #main .wrapper .faq__q-inner {
    width: 100%;
    display: block;
    padding: 13px 60px;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: .06em;
    position: relative;
    line-height: calc(35 / 22);
    color: #5e86a2
}

body #main .wrapper .faq__icon {
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    right: 40px;
    transform: translateY(-50%);
    transition: transform .4s
}

body #main .wrapper .faq__icon::before {
    content: '';
    width: 100%;
    height: 2px;
    background-color: #5e86a2;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: opacity .4s
}

body #main .wrapper .faq__icon::after {
    content: '';
    width: 2px;
    height: 100%;
    background-color: #5e86a2;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

body #main .wrapper .faq__a {
    margin: 0
}

body #main .wrapper .faq__a-inner {
    padding: 30px 38px 40px;
    border-top: 2px solid #5e86a2
}

body #main .wrapper .faq__title-bg {
    margin: 60px 0 24px;
    padding: 8px 35px 10px;
    font-size: 22px;
    letter-spacing: .06em;
    font-weight: 700;
    line-height: calc(35 / 22);
    color: #fff;
    background-color: #7299b5;
    border-radius: 6px
}

body #main .wrapper .faq__title-bg:first-of-type {
    margin-top: 40px
}

body #main .wrapper .faq__title-check {
    margin: 8px 0 20px;
    padding-left: 35px;
    font-size: 22px;
    letter-spacing: .06em;
    font-weight: 700;
    line-height: calc(35 / 22);
    color: #0d1706;
    position: relative
}

body #main .wrapper .faq__title-check::after {
    content: '';
    width: 25px;
    height: 18px;
    background-image: url(../img/business/icon-check.svg);
    background-size: cover;
    position: absolute;
    top: 9px;
    left: 0
}

body #main .wrapper .faq__title-line {
    margin-bottom: 20px;
    position: relative;
    z-index: 1
}

body #main .wrapper .faq__title-line::after {
    content: '';
    width: 100%;
    height: 2px;
    background-color: #5e86a2;
    position: absolute;
    bottom: 20px;
    right: 0;
    z-index: -1
}

body #main .wrapper .faq__title-line:not(:first-of-type) {
    margin-top: 50px
}

body #main .wrapper .faq__title-line-text {
    display: inline-block;
    padding-right: 20px;
    background-color: #fff;
    font-size: 28px;
    letter-spacing: .12em;
    line-height: calc(45 / 28);
    color: #0d1706
}

body #main .wrapper .faq__desc {
    font-size: 22px;
    line-height: calc(35 / 22);
    letter-spacing: .06em;
    color: #0d1706
}

body #main .wrapper .faq__list-desc li {
    text-indent: -1em;
    padding-left: 1em;
    font-size: 22px;
    line-height: calc(35 / 22);
    letter-spacing: .06em;
    color: #0d1706
}

body #main .wrapper .faq__img03-01 {
    display: block;
    margin-bottom: 60px
}

body #main .wrapper .faq__img04-02 {
    display: block;
    margin-bottom: 60px
}

body #main .wrapper .faq__img05-01 {
    display: block;
    margin-bottom: 60px
}

body #main .wrapper .faq__img07 {
    display: block;
    margin-bottom: 50px
}

body #main .wrapper .faq__caution {
    margin-top: 10px
}

body #main .wrapper .faq__caution li {
    font-size: 16px;
    color: #0d1706
}

body #main .wrapper .faq__caution-text {
    display: block;
    margin-top: 8px;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .06em;
    line-height: calc(22 / 14);
    text-indent: -1em;
    padding-left: 1em;
    color: #0d1706
}

body #main .wrapper .faq__text-red {
    color: #db3b3b;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: calc(26 / 16)
}

body #main .wrapper .faq .red {
    color: #db3b3b
}

body #main .wrapper .contact {
    padding: 60px 0 180px;
    position: relative;
    background-color: #fff
}

body #main .wrapper .contact__deco {
    width: 215px;
    position: absolute;
    top: 17px;
    left: 0
}

body #main .wrapper .contact__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1
}

body #main .wrapper .contact__box {
    padding: 50px 71px 80px 60px;
    position: relative;
/*    text-align: center;*/
}

body #main .wrapper .contact h2 {
    font-size: 56px;
    color: #5e86a2;
    line-height: calc(98 / 70)
}

body #main .wrapper .contact h2+p {
    margin-top: 22px;
    font-size: 22px;
    color: #5e86a2;
    font-weight: 500;
    line-height: 1.2
}

body #main .wrapper .contact__desc {
    margin-top: 30px;
    color: #5e86a2;
    letter-spacing: .01em;
    line-height: calc(28 / 16);
    font-weight: 500
}

body #main .wrapper .contact__desc .underline {
    color: #5e86a2;
    text-decoration: underline
}

body #main .wrapper .contact__caution {
    margin-top: 10px
}

body #main .wrapper .contact__btn {
    margin-top: 40px;
    width: 512px
}

body #main .wrapper .contact__btn.btn-large {
    padding: 20px 20px 20px 102px;
    display: inline-block;
}

body #main .wrapper .contact__btn-text01 {
    font-size: 28px
}

body #main .wrapper .contact__btn-text02 {
    font-size: 28px
}

body #main .wrapper .contact__comment {
    width: 400px;
    height: 317px;
    position: absolute;
/*    top: 32px;*/
	top:25px;
    right: 71px
}

body #main .wrapper .contact__comment-img {
    width: 227px;
    position: absolute;
/*    bottom: 0;*/
    top: 54px;	
    right: 0;
}

body #main .wrapper .contact__comment-fukidashi {
    width: 232px;
    position: absolute;
    top: 0;
    left: 0
}

body #main .wrapper .contact__faq {
    margin: 60px auto 0;
    width: 520px
}

body #main .wrapper .contact__faq.btn-large {
    padding: 20px 20px 20px 160px
}

body #main .wrapper .contact__back {
    margin: 40px auto 0;
    width: 520px
}

body #main .wrapper .contact__back.btn-large {
    padding: 20px 20px 20px 88px
}

body #main .wrapper .contact__bottom-text-link {
    width: -moz-fit-content;
    width: fit-content;
    display: block;
    margin: 60px auto 0;
    font-size: 22px;
    font-weight: 700
}

body #main .wrapper .contact__bottom-text-link span {
    text-decoration: underline
}

body #main .wrapper .contact__bottom-text-link img {
    display: inline-block;
    width: 18px;
    margin-left: 13px;
    margin-bottom: 4px
}

@keyframes btn-hover-anim {
    0% {
        width: 34px;
        height: 34px
    }

    20% {
        width: 44px;
        height: 100%;
        left: -1px
    }

    40% {
        width: 44px;
        height: 100%;
        left: -1px
    }

    100% {
        width: calc(100% + 2px);
        height: 100%;
        left: -1px
    }
}

@keyframes btn-large-hover-anim {
    0% {
        width: 60px;
        height: 60px
    }

    20% {
        width: 80px;
        height: 100%;
        left: -1px
    }

    40% {
        width: 80px;
        height: 100%;
        left: -1px
    }

    100% {
        width: calc(100% + 2px);
        height: 100%;
        left: -1px
    }
}

@media screen and (max-width:1380px) {
    body #main .wrapper .mv__img {
        width: 34%
    }

    body #main .wrapper .mv__img-copy {
        width: 10%;
        right: 50px
    }

    body #main .wrapper .mv__img-comment {
        width: 250px;
        bottom: 32px;
        right: 20px
    }

    body #main .wrapper .merit__bottom {
        font-size: 30px
    }

    body #main .wrapper .merit__bottom .text-large {
        font-size: 36px
    }
}

@media screen and (min-width:1081px) {
    .sp {
        display: none !important
    }
}

@media screen and (max-width:950px) and (min-width:750px) {
    body #main .wrapper section#kv .container .sub_ttl {
        font-size: 15px
    }

    body #main .wrapper section#kv .container h1 p {
        font-size: 27px
    }
}

@media screen and (max-width:1280px) and (min-width:950px) {
    body #main .wrapper section#information .container .swiper-container .swiper-button-prev {
        top: 7.5vw;
        left: 28vw;
        width: 3vw
    }

    body #main .wrapper section#information .container .swiper-container .swiper-button-next {
        top: 7.5vw;
        left: 68vw;
        width: 3vw
    }
}

@media screen and (max-width:1280px) and (min-width:950px) and (-ms-high-contrast:none) {
    body #main .wrapper section#information .container .swiper-container .swiper-button-prev {
        top: 6.5vw;
        left: 27vw
    }

    body #main .wrapper section#information .container .swiper-container .swiper-button-next {
        top: 6.5vw;
        left: 68.5vw
    }
}

@media screen and (max-width:950px) and (min-width:950px) and (-ms-high-contrast:none) {
    body {
        width: 950px
    }

    body #main .wrapper section#kv .container .sub_ttl {
        font-size: 15px
    }

    body #main .wrapper section#kv .container h1 p {
        font-size: 27px
    }

    body #main .wrapper section#information .container .swiper-container .swiper-button-prev {
        top: 60px !important;
        left: 260px !important
    }

    body #main .wrapper section#information .container .swiper-container .swiper-button-next {
        top: 60px !important;
        left: 660px !important
    }
}

@media screen and (max-width:1080px) {
    body {
        letter-spacing: 0
    }

    body .pc {
        display: none !important
    }

    body p {
        font-size: calc(16 / 375 * 100vw)
    }

    body #main .btn {
        width: calc(136 / 375 * 100vw);
        min-height: calc(34 / 375 * 100vw);
        padding: calc(4 / 375 * 100vw) calc(2 / 375 * 100vw) calc(4 / 375 * 100vw) calc(35 / 375 * 100vw);
        border-radius: calc(50 / 375 * 100vw);
        box-shadow: 0 calc(6 / 375 * 100vw) calc(20 / 375 * 100vw) rgba(0, 82, 101, .16)
    }

    body #main .btn::after {
        display: none
    }

    body #main .btn-large {
        padding: calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(87 / 375 * 100vw);
        min-height: calc(80 / 375 * 100vw)
    }

    body #main .btn-large .btn__circle {
        width: calc(60 / 375 * 100vw);
        height: calc(60 / 375 * 100vw);
        left: calc(10 / 375 * 100vw)
    }

    body #main .btn-large .btn__circle::after {
        width: calc(36 / 375 * 100vw);
        height: calc(36 / 375 * 100vw)
    }

    body #main .btn-large .btn__text {
        font-size: calc(22 / 375 * 100vw);
        line-height: calc(30 / 22)
    }

    body #main .btn-large .btn__text-large {
        font-size: calc(22 / 375 * 100vw)
    }

    body #main .btn__large02 {
        padding: calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(104 / 375 * 100vw)
    }

    body #main .btn__circle {
        width: calc(26 / 375 * 100vw);
        height: calc(26 / 375 * 100vw);
        border-radius: calc(50 / 375 * 100vw)
    }

    body #main .btn__circle::after {
        content: '';
        width: calc(12 / 375 * 100vw);
        height: calc(12 / 375 * 100vw)
    }

    body #main .btn__text {
        font-size: calc(12 / 375 * 100vw)
    }

    body #main .box-white {
        box-shadow: 0 calc(10 / 375 * 100vw) calc(40 / 375 * 100vw) rgba(114, 153, 181, .2);
        border-radius: calc(20 / 375 * 100vw)
    }

    body #main .list-caution {
        margin-top: calc(16 / 375 * 100vw)
    }

    body #main .list-caution li {
        font-size: calc(12 / 375 * 100vw);
        text-indent: 0;
        padding-left: 0
    }

    body #main .header__inner {
        padding: calc(15 / 375 * 100vw) calc(20 / 375 * 100vw) calc(5 / 375 * 100vw) calc(18 / 375 * 100vw)
    }

    body #main .header__logo {
        width: calc(41 / 375 * 100vw)
    }

    body #main .header__list {
        gap: calc(6 / 375 * 100vw)
    }

    body #main .wrapper .mv {
        background-image: url(../img/business/mv-bg-sp.jpg)
    }

    body #main .wrapper .mv__inner {
        max-width: 100%;
        padding: calc(100 / 375 * 100vw) calc(50 / 375 * 100vw) calc(77 / 375 * 100vw)
    }

    body #main .wrapper .mv__copy {
        max-width: calc(295 / 375 * 100vw)
    }

    body #main .wrapper .mv__img {
        width: calc(294 / 375 * 100vw);
        bottom: calc(30 / 375 * 100vw);
        right: auto;
        left: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .mv__img-copy {
        width: calc(20 / 375 * 100vw);
        right: 0;
        top: calc(60 / 375 * 100vw)
    }

    body #main .wrapper .mv__img-comment {
        width: calc(245 / 375 * 100vw);
        bottom: calc(0 / 375 * 100vw);
        right: calc(45 / 375 * -100vw)
    }

    body #main .wrapper .mv__logo {
        width: calc(124 / 375 * 100vw);
        bottom: calc(179 / 375 * 100vw);
        left: calc(13 / 375 * 100vw)
    }

    body #main .wrapper .message {
        position: relative;
        top: calc(30 / 375 * -100vw);
        margin-bottom: calc(30 / 375 * -100vw);
        padding-top: calc(0 / 375 * 100vw);
        border-top-left-radius: calc(25 / 375 * 100vw);
        border-top-right-radius: calc(25 / 375 * 100vw)
    }

    body #main .wrapper .message__deco {
        max-width: 100%;
        top: calc(25 / 375 * 100vw)
    }

    body #main .wrapper .message__top {
        max-width: 100%;
        padding: 0 calc(18 / 375 * 100vw);
        display: flex;
        justify-content: center;
        flex-direction: column-reverse;
        gap: 0;
        overflow: hidden
    }

    body #main .wrapper .message__top-img {
        max-width: calc(291 / 375 * 100vw);
        position: relative;
        top: calc(20 / 375 * -100vw);
        margin-bottom: calc(18 / 375 * -100vw);
        z-index: 2
    }

    body #main .wrapper .message__top-bg02 {
        height: calc(124 / 375 * 100vw);
    }

    body #main .wrapper .message__top-body {
/*
	margin-right: 0;
	padding: calc(40 / 375 * 100vw) calc(24 / 375 * 100vw);
	z-index: 1;
	margin-top: 10vw;
*/
	display: block;
    margin-top: calc(120 / 375 * 100vw);
    }
	body #main .wrapper .message__txt-bg01{
	width: 100%;
	top:23px;		
	}
	
	body #main .wrapper .message__top-body .right-box{
		width:100%;
		padding: 0;
	}
	body #main .wrapper .message__top-body .right-box .box-white{
        padding: calc(40 / 375 * 100vw) calc(24 / 375 * 100vw);
	}	
	
	body #main .wrapper .message__top-body .left-box{
		width: 88%;
        margin: -83px auto 0 auto;		
	}
	
	
    body #main .wrapper .message__top-body h3 {
        font-size: calc(24 / 375 * 100vw);
        line-height: 1.5em;
        margin-bottom: 17px;
    }

    body #main .wrapper .message__top-body p {
        font-size: calc(18 / 375 * 100vw)
    }

    body #main .wrapper .main-contents {
        padding-top: calc(0 / 375 * 100vw)
    }


	
    body #main .wrapper .main-contents__nav {
        transition-duration: .6s;
        transition-property: background-color, opacity;
        box-shadow: 0 calc(8 / 375 * 100vw) calc(20 / 375 * 100vw) rgba(114, 153, 181, .2);
        max-width: calc(335 / 375 * 100vw);
        border-radius: calc(30 / 375 * 100vw);
        top: calc(20 / 375 * 100vw)
    }

    body #main .wrapper .main-contents__nav.outrange {
        opacity: 0 !important;
        pointer-events: none !important
    }

    body #main .wrapper .main-contents__nav.outrange * {
        pointer-events: none !important
    }

    body #main .wrapper .main-contents__nav-bar {
        display: none
    }

    body #main .wrapper .main-contents__nav ul {
        transition-duration: .6s;
        transition-property: opacity;
        flex-direction: column;
        gap: calc(16 / 375 * 100vw);
        padding: calc(12 / 375 * 100vw) calc(12 / 375 * 100vw)
    }

    body #main .wrapper .main-contents__nav ul li {
        width: 100%
    }

    body #main .wrapper .main-contents__nav ul li a {
        text-align: center;
        width: -moz-fit-content;
        width: fit-content;
        margin: 0 auto;
        text-align: center;
        padding: 0
    }

    body #main .wrapper .main-contents__nav ul li a span {
        font-size: calc(18 / 375 * 100vw);
        letter-spacing: .02em;
        line-height: calc(28 / 18);
        padding: 0
    }

    body #main .wrapper .main-contents__nav.close, body #main .wrapper .main-contents__nav.open {
        max-width: 100%;
        border-radius: 0;
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        padding: calc(80 / 375 * 100vw) calc(20 / 375 * 100vw);
        background-color: #ddf2fc
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn, body #main .wrapper .main-contents__nav.open .main-contents__nav-btn {
        width: calc(36 / 375 * 100vw);
        height: calc(36 / 375 * 100vw);
        border-radius: 50%;
        background-color: #5e86a2;
        position: absolute;
        top: calc(27 / 375 * 100vw);
        right: calc(27 / 375 * 100vw)
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn .line, body #main .wrapper .main-contents__nav.open .main-contents__nav-btn .line {
        width: calc(17 / 375 * 100vw);
        height: calc(1 / 375 * 100vw);
        background-color: #fff;
        position: absolute;
        transition: all .2s
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn .line:first-of-type, body #main .wrapper .main-contents__nav.open .main-contents__nav-btn .line:first-of-type {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) rotate(30deg)
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn .line:nth-of-type(2), body #main .wrapper .main-contents__nav.open .main-contents__nav-btn .line:nth-of-type(2) {
        opacity: 0;
        transform: translate(-50%, -50%)
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn .line:nth-of-type(3), body #main .wrapper .main-contents__nav.open .main-contents__nav-btn .line:nth-of-type(3) {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) rotate(-30deg)
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-bar, body #main .wrapper .main-contents__nav.open .main-contents__nav-bar {
        display: none
    }

    body #main .wrapper .main-contents__nav.close ul, body #main .wrapper .main-contents__nav.open ul {
        display: block;
        opacity: 1;
        background-color: #fff;
        border-radius: calc(6 / 375 * 100vw);
        padding: calc(45 / 375 * 100vw) calc(5 / 375 * 100vw)
    }

    body #main .wrapper .main-contents__nav.close ul li.current a, body #main .wrapper .main-contents__nav.open ul li.current a {
        background-color: #fbff9b;
        padding: 4px 12px
    }

    body #main .wrapper .main-contents__nav.close ul li.current a span, body #main .wrapper .main-contents__nav.open ul li.current a span {
        font-weight: 700
    }

    body #main .wrapper .main-contents__nav.close ul li:not(:first-of-type), body #main .wrapper .main-contents__nav.open ul li:not(:first-of-type) {
        margin-top: calc(20 / 375 * 100vw)
    }

    body #main .wrapper .main-contents__nav.close ul li a span, body #main .wrapper .main-contents__nav.open ul li a span {
        pointer-events: auto;
        font-weight: 500
    }

    body #main .wrapper .main-contents__nav.close {
        background-color: transparent;
        pointer-events: none
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn-outer {
        width: calc(70 / 375 * 100vw);
        height: calc(50 / 375 * 100vw);
        border-top-left-radius: calc(50 / 375 * 100vw);
        border-bottom-left-radius: calc(50 / 375 * 100vw);
        background-color: #fff;
        position: fixed;
        top: calc(20 / 375* 100vw);
        right: 0
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn {
        pointer-events: all;
        width: calc(36 / 375 * 100vw);
        height: calc(36 / 375 * 100vw);
        border-radius: 50%;
        background-color: #5e86a2;
        position: absolute;
        top: calc(7 / 375 * 100vw);
        left: calc(7 / 375 * 100vw)
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn .line {
        width: calc(17 / 375 * 100vw);
        height: calc(1 / 375 * 100vw);
        background-color: #fff;
        position: absolute;
        transition: all .2s
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn .line:first-of-type {
        top: calc(50% - calc(5 / 375 * 100vw));
        left: 50%;
        transform: translate(-50%, -50%)
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn .line:nth-of-type(2) {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%)
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-btn .line:nth-of-type(3) {
        top: calc(50% + calc(5 / 375 * 100vw));
        left: 50%;
        transform: translate(-50%, -50%)
    }

    body #main .wrapper .main-contents__nav.close .main-contents__nav-bar {
        display: none
    }

    body #main .wrapper .main-contents__nav.close ul {
        opacity: 0
    }

    body #main .wrapper .main-contents__nav.close ul li a {
        display: none
    }

    body #main .wrapper .about {
/*        padding-top: calc(60 / 375 * 100vw);*/
		 padding-top: calc(80 / 375 * 100vw);
        padding-bottom: calc(60 / 375 * 100vw)
    }

    body #main .wrapper .about__deco {
        width: calc(108 / 375 * 100vw);
        top: calc(62 / 375 * 100vw);
        left: 0
    }

    body #main .wrapper .about__inner {
        max-width: 100%;
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .about h2 {
        font-size: calc(40 / 375 * 100vw);
        letter-spacing: -.04em;
        line-height: calc(48 / 40)
    }

    body #main .wrapper .about__illust {
        max-width: calc(295 / 375 * 100vw);
        margin: calc(40 / 375 * 100vw) auto 0
    }

    body #main .wrapper .about__box {
        margin-top: calc(60 / 375 * 100vw);
        padding: calc(40 / 375 * 100vw) calc(20 / 375 * 100vw);
    }
	body #main .wrapper .about__box.box_01area{
		padding-bottom: calc(227 / 375 * 100vw);
	}
	body #main .wrapper .about__box.box_02area{
		padding-bottom: calc(282 / 375 * 100vw);
	}

    body #main .wrapper .about h3 {
        font-size: calc(30 / 375 * 100vw);
        letter-spacing: -.02em;
        margin-bottom: calc(30 / 375 * 100vw);
        line-height: calc(40 / 30)
    }

    body #main .wrapper .about h3:not(:first-of-type) {
        margin-top: calc(80 / 375 * 100vw)
    }

    body #main .wrapper .about__box-body {
        display: block
    }

    body #main .wrapper .about__box-body>img {
        max-width: 100%;
        display: block;
        margin-top: calc(30 / 375 * 100vw)
    }

    body #main .wrapper .about__comment01 {
        width: calc(295 / 375 * 100vw);
        height: calc(198 / 375 * 100vw);
        left: calc(20 / 375 * 100vw)
    }

    body #main .wrapper .about__comment01-img {
/*
        width: calc(147 / 375 * 100vw);
        right: calc(9 / 375 * 100vw)
*/
        width: calc(137 / 375 * 100vw);
        right: calc(17 / 375 * 100vw);
    }

    body #main .wrapper .about__comment01-fukidashi {
        width: 100%;
        top: 0;
        left: 0
    }

    body #main .wrapper .about__img02 {
        margin-top: calc(30 / 375 * 100vw);
        margin-left: calc(9 / 375 * -100vw);
        width: calc(315 / 375 * 100vw)
    }

    body #main .wrapper .about__bold {
        font-size: calc(14 / 375 * 100vw);
        margin-top: calc(8 / 375 * 100vw)
    }

    body #main .wrapper .about__map {
        margin-top: calc(30 / 375 * 100vw)
    }

    body #main .wrapper .about__peaktime {
        display: block;
        margin-top: 40px
    }

    body #main .wrapper .about__btn {
        margin: calc(40 / 375 * 100vw) auto 0;
        padding-left: calc(78 / 375 * 100vw);
        width: 100%
    }

    body #main .wrapper .about__btn .btn__circle {
        width: calc(60 / 375 * 100vw);
        height: calc(60 / 375 * 100vw);
        padding: calc(12 / 375 * 100vw)
    }

    body #main .wrapper .about__btn .btn__text {
        text-align: left;
    }

    body #main .wrapper .about__comment02 {
        width: calc(300 / 375 * 100vw);
        height: calc(244 / 375 * 100vw);
        bottom: 0;
        left: calc(13 / 375 * 100vw)
    }

    body #main .wrapper .about__comment02-img {
/*        width: calc(193 / 375 * 100vw);*/
		width: calc(168 / 375 * 100vw);
        right: 8px;		
    }

    body #main .wrapper .about__comment02-fukidashi {
        width: calc(298 / 375 * 100vw);
        top: 0;
        left: 0
    }

    body #main .wrapper .merit {
        padding-top: calc(60 / 375 * 100vw);
        padding-bottom: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .merit__deco {
        width: calc(100 / 375 * 100vw);
        position: absolute;
        top: calc(51 / 375 * 100vw)
    }

    body #main .wrapper .merit__inner {
        max-width: 100%;
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .merit h2 {
        font-size: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .merit__illust {
        max-width: calc(295 / 375 * 100vw);
        margin: calc(40 / 375 * 100vw) auto 0
    }

    body #main .wrapper .merit__box {
        margin-top: calc(60 / 375 * 100vw);
        padding: calc(30 / 375 * 100vw) calc(20 / 375 * 100vw);
        position: relative
    }

    body #main .wrapper .merit__box:first-of-type .merit__box-body {
        max-width: 100%
    }


    body #main .wrapper .merit__box:nth-of-type(2) .merit__box-body {
        max-width: 100%
    }

    body #main .wrapper .merit__box:nth-of-type(3) .merit__box-body {
        max-width: 100%
    }

    body #main .wrapper .merit__box01 {
        display: block
    }

	body #main .wrapper .merit__box.box-01area{
		padding: calc(30 / 375 * 100vw) calc(20 / 375 * 100vw) calc(285 / 375 * 100vw) calc(20 / 375 * 100vw);
	}
	body #main .wrapper .merit__box.box-02area{
		padding: calc(30 / 375 * 100vw) calc(20 / 375 * 100vw) calc(410 / 375 * 100vw) calc(20 / 375 * 100vw);
	}
	body #main .wrapper .merit__box.box-03area{
		padding: calc(30 / 375 * 100vw) calc(20 / 375 * 100vw) calc(305 / 375 * 100vw) calc(20 / 375 * 100vw);
	}
	
	
    body #main .wrapper .merit__box-body {
        padding-bottom: 0
    }

    body #main .wrapper .merit__box-body .text-large {
        font-size: calc(20 / 375 * 100vw)
    }

    body #main .wrapper .merit__box-body .text-large .text-num {
        font-size: calc(28 / 375 * 100vw)
    }

    body #main .wrapper .merit__box-img01 {
        max-width: 100%;
        display: block;
        margin-top: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .merit__box-img02 {
        max-width: 100%;
        display: block;
        margin-top: calc(30 / 375 * 100vw)
    }

    body #main .wrapper .merit__box-img03 {
        max-width: 100%;
        display: block;
        margin-top: calc(30 / 375 * 100vw)
    }

    body #main .wrapper .merit h3 {
        font-size: calc(30 / 375 * 100vw);
        letter-spacing: -.02em;
        margin-bottom: calc(30 / 375 * 100vw);
        line-height: calc(40 / 30)
    }

    body #main .wrapper .merit h3:not(:first-of-type) {
        margin-top: calc(50 / 375 * 100vw)
    }

    body #main .wrapper .merit__comment01 {
        width: calc(295 / 375 * 100vw);
        height: calc(248 / 375 * 100vw);
        bottom: 0;
        left: calc(20 / 375 * 100vw);
	}

    body #main .wrapper .merit__comment01-img {
        width: calc(106 / 375 * 100vw);
        bottom: 0;
        right: auto;
/*        left: calc(61 / 375 * 100vw)*/
		left: calc(45 / 375 * 100vw);
	}

    body #main .wrapper .merit__comment01-fukidashi {
        width: 100%;
        top: 0;
        left: 0
    }

    body #main .wrapper .merit__comment02 {
        width: calc(328 / 375 * 100vw);
        height: calc(288 / 375 * 100vw);
        bottom: 0;
        left: calc(20 / 375 * 100vw)
    }

    body #main .wrapper .merit__comment02-img {
/*
        width: calc(187 / 375 * 100vw);
        right: 0;
*/
        width: calc(157 / 375 * 100vw);
        right: calc(182 / 375 * 100vw);		
        z-index: 1
    }

    body #main .wrapper .merit__comment02-fukidashi {
        width: calc(295 / 375 * 100vw);
        bottom: auto;
        top: 0;
        left: 0
    }

    body #main .wrapper .merit__comment03 {
        width: calc(302 / 375 * 100vw);
        height: calc(274 / 375 * 100vw);
        bottom: 0;
        left: calc(20 / 375 * 100vw)
    }

    body #main .wrapper .merit__comment03-img {
        width: calc(247 / 375 * 100vw);
        bottom: 0;
        right: auto;
        left: calc(20 / 375 * 100vw)
    }

    body #main .wrapper .merit__comment03-fukidashi {
        width: calc(302 / 375 * 100vw);
        top: 0
    }

    body #main .wrapper .seminar__inner .merit__list-btn {
        margin: calc(40 / 375 * 100vw) auto 0;
        flex-direction: column;
        gap: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .merit__list-btn {
        margin: calc(60 / 375 * 100vw) auto 0;
        flex-direction: column;
        gap: calc(40 / 375 * 100vw)
    }
	
    body #main .wrapper .merit__btn {
        width: calc(335 / 375 * 100vw)
    }

    body #main .wrapper .merit__bottom {
        margin-top: calc(60 / 375 * 100vw);
        font-size: calc(20 / 375 * 100vw);
        line-height: calc(38 / 20)
    }

    body #main .wrapper .merit__bottom .text-large {
        font-size: calc(26 / 375 * 100vw);
        line-height: calc(38 / 26)
    }

    body #main .wrapper .merit__bottom-img {
        width: calc(333 / 375 * 100vw);
/*        margin: calc(40 / 375 * 100vw) auto 0;*/
		margin: calc(60 / 375 * 100vw) auto 0;
    }

    body #main .wrapper .merit__caution {
        text-align: left
    }

    body #main .wrapper .interview {
        padding: calc(40 / 375 * 100vw) 0 calc(60 / 375 * 100vw);
        background-image: url(../img/business/interview-bg-sp.jpg)
    }

    body #main .wrapper .interview__deco {
        width: calc(98 / 375 * 100vw);
        top: calc(5 / 375 * 100vw)
    }

    body #main .wrapper .interview__inner {
        max-width: 100%;
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .interview h2 {
        font-size: calc(40 / 375 * 100vw);
        line-height: calc(48 / 40)
    }

    body #main .wrapper .interview__list {
        margin: calc(40 / 375 * 100vw) 0 0;
        flex-direction: column;
        gap: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .interview__list li {
        width: 100%
    }

    body #main .wrapper .interview__list li a img {
        border-radius: calc(15 / 375 * 100vw)
    }

    body #main .wrapper .movies {
/*        padding: calc(40 / 375 * 180vw) 0 calc(60 / 375 * 100vw);*/
        padding: calc(23 / 375 * 180vw) 0 calc(60 / 375 * 100vw);
    }

    body #main .wrapper .movies__deco {
        width: calc(100 / 375 * 100vw);
        top: calc(3 / 375 * 100vw);
        left: 0
    }

    body #main .wrapper .flex {
        display: block;
    }

    body #main .wrapper .seminar__inner {
        max-width: 100%;
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .movies h2 {
        font-size: calc(37 / 375 * 100vw)
    }

    body #main .wrapper .seminar__movie {
        max-width: 100%;
        margin: calc(40 / 375 * 100vw) auto 0
    }

    body #main .wrapper .seminar__movie img {
        filter: drop-shadow(0 calc(10 / 375 * 100vw) calc(40 / 375 * 100vw) rgba(114, 153, 181, .2))
    }

    body #main .wrapper .seminar__bottom {
        margin-top: calc(20 / 375 * 100vw);
        font-size: calc(20 / 375 * 100vw);
        letter-spacing: .02em;
        line-height: calc(30 / 20)
    }

    body #main .wrapper .seminar__text {
        margin-top: calc(10 / 375 * 100vw);
        line-height: calc(28 / 16);
        letter-spacing: .03em
    }

    body #main .wrapper .seminar__text .indent {
        padding-left: 0
    }

    body #main .wrapper .faq {
        padding: calc(40 / 375 * 100vw) 0 0
    }

    body #main .wrapper .faq__deco {
        width: calc(105 / 375 * 100vw);
        top: calc(13 / 375 * 100vw)
    }

    body #main .wrapper .faq__inner {
        max-width: 100%;
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .faq h2 {
        font-size: calc(40 / 375 * 100vw);
        line-height: calc(48 / 40)
    }

    body #main .wrapper .faq__body {
        max-width: 100%;
        margin: calc(40 / 375 * 100vw) auto 0;
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .faq__outer {
        border-radius: calc(10 / 375 * 100vw)
    }

    body #main .wrapper .faq__outer:not(:first-of-type) {
        margin-top: calc(20 / 375 * 100vw)
    }

    body #main .wrapper .faq__q-inner {
        padding: calc(12 / 375 * 100vw) calc(20 / 375 * 100vw) calc(12 / 375 * 100vw);
        font-size: calc(16 / 375 * 100vw);
        line-height: calc(26 / 16)
    }

    body #main .wrapper .faq__q-inner.on+.faq__a {
        max-height: calc(5000 / 375 * 100vw)
    }

    body #main .wrapper .faq__icon {
        width: calc(16 / 375 * 100vw);
        height: calc(16 / 375 * 100vw);
        right: calc(24 / 375 * 100vw);
        transform: translateY(-50%)
    }

    body #main .wrapper .faq__a-inner {
        padding: calc(23 / 375 * 100vw) calc(14 / 375 * 100vw) calc(32 / 375 * 100vw);
        border-top: 2px solid #5e86a2
    }

    body #main .wrapper .faq__img-top {
        display: block;
        margin-bottom: calc(28 / 375 * 100vw)
    }

    body #main .wrapper .faq__title-bg {
        margin: calc(40 / 375 * 100vw) 0 calc(20 / 375 * 100vw);
        padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw) calc(8 / 375 * 100vw);
        font-size: calc(16 / 375 * 100vw);
        line-height: calc(26 / 16);
        border-radius: calc(4 / 375 * 100vw)
    }

    body #main .wrapper .faq__title-bg:first-of-type {
        margin-top: calc(30 / 375 * 100vw)
    }

    body #main .wrapper .faq__title-check {
        margin: calc(8 / 375 * 100vw) 0 calc(15 / 375 * 100vw);
        padding-left: calc(21 / 375 * 100vw);
        font-size: calc(18 / 375 * 100vw);
        letter-spacing: .01em;
        line-height: calc(29 / 18)
    }

    body #main .wrapper .faq__title-check::after {
        content: '';
        width: calc(16 / 375 * 100vw);
        height: calc(12 / 375 * 100vw);
        background-image: url(../img/business/icon-check.svg);
        top: calc(8 / 375 * 100vw)
    }

    body #main .wrapper .faq__title-line {
        margin-bottom: calc(20 / 375 * 100vw);
        padding-bottom: calc(10 / 375 * 100vw)
    }

    body #main .wrapper .faq__title-line::after {
        bottom: 0;
        right: 0
    }

    body #main .wrapper .faq__title-line:not(:first-of-type) {
        margin-top: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .faq__title-line-text {
        padding-right: 0;
        font-size: calc(24 / 375 * 100vw);
        letter-spacing: .06em;
        line-height: calc(34 / 24)
    }

    body #main .wrapper .faq__desc {
        font-size: calc(16 / 375 * 100vw);
        line-height: calc(26 / 16)
    }

    body #main .wrapper .faq__list-desc li {
        font-size: calc(16 / 375 * 100vw);
        line-height: calc(26 / 16)
    }

    body #main .wrapper .faq__img03-01 {
        margin-bottom: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .faq__img03-01.pc {
        display: none
    }

    body #main .wrapper .faq__img04-02 {
        margin-bottom: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .faq__img04-02.pc {
        display: none
    }

    body #main .wrapper .faq__img05-01 {
        display: block;
        margin-bottom: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .faq__img05-01.pc {
        display: none
    }

    body #main .wrapper .faq__img07 {
        display: block;
        margin-bottom: 50px
    }

    body #main .wrapper .faq .mt40 {
        margin-top: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .faq__caution {
        margin-top: calc(20 / 375 * 100vw)
    }

    body #main .wrapper .faq__caution li {
        font-size: calc(14 / 375 * 100vw);
        text-indent: -1em;
        padding-left: 1em
    }

    body #main .wrapper .faq__link+.faq__caution {
        margin-top: calc(10 / 375 * 100vw)
    }

    body #main .wrapper .faq__caution-text {
        margin-top: calc(8 / 375 * 100vw);
        font-size: calc(14 / 375 * 100vw)
    }

    body #main .wrapper .faq__text-red {
        letter-spacing: .01em;
        line-height: calc(22 / 14);
        font-size: calc(14 / 375 * 100vw)
    }

    body #main .wrapper .faq__img08-sp h5 {
        margin-top: calc(40 / 375 * 100vw);
        margin-bottom: calc(20 / 375 * 100vw);
        font-size: calc(16 / 375 * 100vw);
        text-align: center
    }

    body #main .wrapper .faq__img08-03 {
        display: block;
        margin-top: calc(25 / 375 * 100vw)
    }

    body #main .wrapper .contact {
        padding: calc(115 / 375 * 100vw) 0 calc(90 / 375 * 100vw)
    }

    body #main .wrapper .contact__deco {
        width: calc(105 / 375 * 100vw);
        top: calc(60 / 375 * 100vw)
    }

    body #main .wrapper .contact__inner {
        max-width: 100%;
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .contact__box {
        padding: calc(25 / 375 * 100vw) 0 calc(33 / 375 * 100vw);
        display: block
    }

    body #main .wrapper .contact__box-body {
        padding-top: 0
    }

    body #main .wrapper .contact h2 {
        font-size: calc(40 / 375 * 100vw);
        line-height: calc(48 / 40);
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .contact h2+p {
        margin-top: calc(40 / 375 * 100vw);
        font-size: calc(20 / 375 * 100vw);
        line-height: calc(32 / 20);
        letter-spacing: .03em;
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .contact__desc {
        margin-top: calc(32 / 375 * 100vw);
        padding: 0 calc(20 / 375 * 100vw);
        font-size: calc(16 / 375 * 100vw)
    }

    body #main .wrapper .contact__desc .underline {
        font-size: calc(16 / 375 * 100vw)
    }

    body #main .wrapper .contact__caution {
        margin-top: calc(15 / 375 * 100vw);
        padding: 0 calc(20 / 375 * 100vw)
    }

    body #main .wrapper .contact__btn {
        margin-top: calc(40 / 375 * 100vw);
        width: 100%
    }

    body #main .wrapper .contact__btn.btn-large {
        padding: calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(80 / 375 * 100vw)
    }

    body #main .wrapper .contact__btn-text01 {
        font-size: calc(18 / 375 * 100vw)
    }

    body #main .wrapper .contact__btn-text02 {
        font-size: calc(26 / 375 * 100vw)
    }

    body #main .wrapper .contact__comment {
        position: relative;
        top: auto;
        right: auto;
        width: calc(291 / 375 * 100vw);
        height: calc(266 / 375 * 100vw);
        margin-left: calc(20 / 375 * 100vw);
        margin-top: calc(40 / 375 * 100vw)
    }

    body #main .wrapper .contact__comment-img {
        width: calc(162 / 375 * 100vw);
        z-index: 1;
		left: calc(140 / 375 * 100vw);
    }

    body #main .wrapper .contact__comment-fukidashi {
        width: calc(228 / 375 * 100vw)
    }

    body #main .wrapper .contact__faq {
        margin: calc(60 / 375 * 100vw) auto 0;
        width: calc(335 / 375 * 100vw)
    }

    body #main .wrapper .contact__faq.btn-large {
        padding: calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(92 / 375 * 100vw)
    }

    body #main .wrapper .contact__back {
        margin: calc(40 / 375 * 100vw) auto 0;
        width: calc(335 / 375 * 100vw)
    }

    body #main .wrapper .contact__back.btn-large {
        padding: calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) calc(86 / 375 * 100vw)
    }

    body #main .wrapper .contact__bottom-text-link {
        gap: calc(13 / 375 * 100vw);
        margin: calc(60 / 375 * 100vw) auto 0;
        font-size: calc(16 / 375 * 100vw);
        line-height: calc(26 / 16);
        text-align: center
    }

    body #main .wrapper .contact__bottom-text-link img {
        width: calc(15 / 375 * 100vw);
        margin-left: calc(10 / 375 * 100vw);
        margin-bottom: calc(5 / 375 * 100vw)
    }
}