@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@500;700;900&family=Noto+Sans+JP:wght@400;500;700&display=swap";
.toFadeBlock {
    opacity:0;
    transition:.8s
}
.toFadeBlock.toFade {
    opacity:1
}
.toLeftBlock {
    opacity:0;
    transform:translateX(60px);
    transition:.8s
}
.toLeftBlock.toLeft {
    opacity:1;
    transform:translateX(0)
}
.toRightBlock {
    opacity:0;
    transform:translateX(-60px);
    transition:.8s
}
.toRightBlock.toRight {
    opacity:1;
    transform:translateX(0)
}
.toTopBlock {
    opacity:0;
    transform:translateY(60px);
    transition:.8s
}
.toTopBlock.toTop {
    opacity:1;
    transform:translateY(0)
}
.toBottomBlock {
    opacity:0;
    transform:translateY(-60px);
    transition:.8s
}
.toBottomBlock.toBottom {
    opacity:1;
    transform:translateY(0)
}
.toZoomBlock {
    opacity:0;
    transform:scale(0.1);
    transition:.3s
}
.toZoomBlock.toZoom {
    opacity:1;
    transform:scale(1)
}
@keyframes sliderAnime1 {
    0% {
        transform:scale(1) rotate(0.1deg)
    }
    100% {
        transform:scale(1.1) rotate(0.1deg)
    }
}
@keyframes sliderAnime2 {
    0% {
        background:rgba(24,45,95,.5)
    }
    100% {
        background:rgba(24,45,95,.1)
    }
}
@keyframes scrollAnime1 {
    0% {
        height:0;
        bottom:68.69px;
        opacity:0
    }
    30% {
        height:68.69px;
        bottom:0;
        opacity:1
    }
    50% {
        height:68.69px;
        bottom:0;
        opacity:1
    }
    100% {
        height:0;
        bottom:0;
        opacity:0
    }
}
@keyframes scrollAnime2 {
    0% {
        height:0;
        bottom:20px;
        left:0;
        opacity:0
    }
    30% {
        height:0;
        bottom:20px;
        left:0;
        opacity:0
    }
    50% {
        height:20px;
        bottom:0;
        left:11px;
        opacity:1
    }
    100% {
        height:0;
        bottom:0;
        left:11px;
        opacity:0
    }
}
@keyframes scrollAnime1sp {
    0% {
        height:0;
        bottom:calc(68.69/390 * 100vw);
        opacity:0
    }
    30% {
        height:calc(68.69/390 * 100vw);
        bottom:0;
        opacity:1
    }
    50% {
        height:calc(68.69/390 * 100vw);
        bottom:0;
        opacity:1
    }
    100% {
        height:0;
        bottom:0;
        opacity:0
    }
}
@keyframes scrollAnime2sp {
    0% {
        height:0;
        bottom:calc(20/390 * 100vw);
        left:0;
        opacity:0
    }
    30% {
        height:0;
        bottom:calc(20/390 * 100vw);
        left:0;
        opacity:0
    }
    50% {
        height:calc(20/390 * 100vw);
        bottom:0;
        left:calc(11/390 * 100vw);
        opacity:1
    }
    100% {
        height:0;
        bottom:0;
        left:calc(11/390 * 100vw);
        opacity:0
    }
}
@keyframes borderAnime {
    0% {
        border-right:1px solid #fff;
        -o-border-image:linear-gradient(to bottom, #182D5F 0%, #182D5F 100%);
        border-image:linear-gradient(to bottom, #182D5F 0%, #182D5F 100%);
        border-image-slice:1
    }
    1% {
        border-right:1px solid #fff;
        -o-border-image:linear-gradient(to bottom, #fff 0%, #182D5F 1%);
        border-image:linear-gradient(to bottom, #fff 0%, #182D5F 1%);
        border-image-slice:1
    }
    25% {
        border-right:1px solid #fff;
        -o-border-image:linear-gradient(to bottom, #fff 0%, #182D5F 50%);
        border-image:linear-gradient(to bottom, #fff 0%, #182D5F 50%);
        border-image-slice:1
    }
    50% {
        border-right:1px solid #fff;
        -o-border-image:linear-gradient(to bottom, #fff 0%, #fff 100%);
        border-image:linear-gradient(to bottom, #fff 0%, #fff 100%);
        border-image-slice:1
    }
    75% {
        border-right:1px solid #fff;
        -o-border-image:linear-gradient(to bottom, #182D5F 50%, #fff 100%);
        border-image:linear-gradient(to bottom, #182D5F 50%, #fff 100%);
        border-image-slice:1
    }
    99% {
        border-right:1px solid #fff;
        -o-border-image:linear-gradient(to bottom, #182D5F 99%, #fff 100%);
        border-image:linear-gradient(to bottom, #182D5F 99%, #fff 100%);
        border-image-slice:1
    }
    100% {
        border-right:1px solid #fff;
        -o-border-image:linear-gradient(to bottom, #182D5F 0%, #182D5F 100%);
        border-image:linear-gradient(to bottom, #182D5F 0%, #182D5F 100%);
        border-image-slice:1
    }
}
#top #pageHead:not(.fixed) {
    padding-top:63px;
    opacity:0;
    transition:all .4s ease-out 0s;
    pointer-events:none
}
@media(max-width: 767px) {
    #top #pageHead:not(.fixed) {
        padding-top:calc(40/390 * 100vw)
    }
}
#top #pageHead:not(.fixed).active {
    padding-top:0;
    opacity:1;
    pointer-events:auto
}
@media(max-width: 1330px) {
    #top #pageHead:not(.fixed).active {
        padding-top:20px
    }
}
@media(max-width: 767px) {
    #top #pageHead:not(.fixed).active {
        padding-top:calc(20/390 * 100vw)
    }
}
.mainAnimation {
    width:100%;
    height:100vh;
    background:#182d5f;
    overflow:hidden;
    position:relative;
    z-index:1;
    top:0;
    left:0;
    transition:all .4s ease-out 0s
}
.mainAnimation .background {
    width:120%;
    height:100vh;
    background:url("/common/images/top/main_visual_bg.jpg") center center/cover no-repeat;
    position:absolute;
    top:0;
    left:0;
    z-index:1;
    transition:all .4s ease-out 0s
}
@media(max-width: 767px) {
    .mainAnimation .background {
        width:100vw
    }
}
.mainAnimation .inner {
    width:100%;
    max-width:100%;
    height:100vh;
    display:flex;
    align-items:center;
    position:absolute;
    top:0;
    left:50%;
    z-index:5;
    transform:translate(-50%, 0);
    transition:all .4s ease-out 0s
}
@media(max-width: 767px) {
    .mainAnimation .inner {
        width:100vw
    }
}
.mainAnimation .text {
    width:120%;
    color:#182d5f;
    font-family:"Montserrat",sans-serif;
    font-size:25vw;
    font-weight:900;
    line-height:.77em;
    letter-spacing:-0.017em;
    position:absolute;
    top:48%;
    left:-143vw;
    z-index:2;
    transform:translate3d(0, -50%, 0);
    transform-origin:left center;
    display:inline;
    transition:all .4s ease-out 0s
}
@media(max-width: 767px) {
    .mainAnimation .text {
        width:100vw;
        padding:0;
        font-size:16.8vw;
        line-height:1.8em;
        letter-spacing:-0.017em;
        left:-100vw;
        transform:translate(0, -50%)
    }
}
.mainAnimation .text2 {
    width:120%;
    padding:0;
    background:url("/common/images/top/main_visual_bg.jpg") center center/cover no-repeat;
    background-clip:text;
    -webkit-background-clip:text;
    color:rgba(0,0,0,0);
    font-family:"Montserrat",sans-serif;
    font-size:25vw;
    font-weight:900;
    line-height:.77em;
    letter-spacing:-0.017em;
    position:absolute;
    top:48%;
    left:-143vw;
    z-index:1;
    transform:translate3d(0, -50%, 0);
    transform-origin:left center;
    display:inline;
    opacity:1;
    transition:all .4s ease-out 0s
}
@-moz-document url-prefix() {
    .mainAnimation .text2 {
        display:table
    }
}
@media(max-width: 767px) {
    .mainAnimation .text2 {
        width:100vw;
        padding:0;
        font-size:16.8vw;
        line-height:1.8em;
        letter-spacing:-0.017em;
        left:-100vw;
        transform:translate(0, -50%)
    }
}
.mainAnimation .line {
    width:1980px;
    height:100vh;
    content:"";
    display:block;
    position:absolute;
    top:0;
    left:50%;
    bottom:0;
    transform:skew(-15deg) translate(-110.5%, 0);
    transform-origin:left bottom;
    z-index:2;
    transition:all .4s ease-out 0s
}
@media(max-width: 767px) {
    .mainAnimation .line {
        width:100vw;
        transform:skew(-15deg) translate(-125%, 0) !important
    }
}
.mainAnimation .scroll {
    width:100%;
    max-width:1280px;
    color:#31a2b2;
    font-family:"Montserrat",sans-serif;
    font-size:1.4rem;
    position:absolute;
    bottom:30px;
    left:50%;
    z-index:6;
    transform:translate(-50%, 0);
    transition:all .4s ease-out 0s;
    opacity:0
}
@media(min-width: 768px)and (max-width: 1024px) {
    .mainAnimation .scroll {
        max-width:calc(100% - 30px);
        margin:0 auto
    }
}
@media(max-width: 767px) {
    .mainAnimation .scroll {
        width:calc(100vw - 30/390 * 100vw);
        font-size:calc(14/390 * 100vw);
        bottom:calc(30/390 * 100vw)
    }
}
.mainAnimation .scroll span {
    margin-bottom:76.5px;
    display:inline-block;
    transform:rotate(-90deg) translate(0, 100%);
    transform-origin:left bottom
}
@media(max-width: 767px) {
    .mainAnimation .scroll span {
        margin-bottom:calc(76.5/390 * 100vw)
    }
}
.mainAnimation .scroll:before {
    width:1px;
    height:68.69px;
    background:#31a2b2;
    content:"";
    display:block;
    position:absolute;
    bottom:0;
    left:11px;
    animation:scrollAnime1 2s ease-in-out infinite
}
@media(max-width: 767px) {
    .mainAnimation .scroll:before {
        width:calc(1/390 * 100vw);
        height:calc(68.69/390 * 100vw);
        left:calc(11/390 * 100vw);
        animation:scrollAnime1sp 2s ease-in-out infinite
    }
}
.mainAnimation .scroll:after {
    width:1px;
    height:20px;
    background:#31a2b2;
    content:"";
    display:block;
    position:absolute;
    bottom:0;
    left:11px;
    transform:rotate(-35deg);
    transform-origin:right bottom;
    animation:scrollAnime2 2s ease-in-out infinite
}
@media(max-width: 767px) {
    .mainAnimation .scroll:after {
        width:calc(1/390 * 100vw);
        height:calc(20/390 * 100vw);
        left:calc(11/390 * 100vw);
        animation:scrollAnime2sp 2s ease-in-out infinite
    }
}
.mainAnimation.scene02 .text {
    left:-3vw
}
@media(max-width: 767px) {
    .mainAnimation.scene02 .text {
        left:calc(15/390 * 100vw)
    }
}
.mainAnimation.scene02 .text2 {
    left:-3vw
}
@media(max-width: 767px) {
    .mainAnimation.scene02 .text2 {
        left:calc(15/390 * 100vw)
    }
}
.mainAnimation.scene03 .background {
    background:#182d5f
}
.mainAnimation.scene03 .text {
    opacity:0
}
@media(max-width: 767px) {
    .mainAnimation.scene03 .text {
        left:calc(15/390 * 100vw)
    }
}
.mainAnimation.scene03 .text2 {
    opacity:1
}
@media(max-width: 767px) {
    .mainAnimation.scene03 .text2 {
        left:calc(15/390 * 100vw)
    }
}
.mainAnimation.scene04 .background {
    width:100%;
    background:#182d5f;
    left:50%;
    transform:translate(-50%, 0)
}
.mainAnimation.scene04 .inner {
    max-width:1280px
}
@media(max-width: 767px) {
    .mainAnimation.scene04 .inner {
        width:100vw;
        left:0;
        transform:none
    }
}
.mainAnimation.scene04 .text {
    opacity:0
}
.mainAnimation.scene04 .text2 {
    width:auto;
    padding:0 0 7px 0;
    font-size:12.6rem;
    line-height:.77em;
    letter-spacing:-0.017em;
    opacity:1;
    left:0;
    transform:translate3d(0, -50%, 0)
}
@media(min-width: 768px)and (max-width: 1024px) {
    .mainAnimation.scene04 .text2 {
        padding:0 0 7px 14px
    }
}
@media(max-width: 767px) {
    .mainAnimation.scene04 .text2 {
        padding:0;
        font-size:16.8vw;
        letter-spacing:-0.017em;
        left:calc(15/390 * 100vw);
        transform:translate(0, -50%)
    }
}
.mainAnimation.scene05:before {
    width:1980px;
    height:100vh;
    background:#182d5f;
    content:"";
    display:block;
    position:absolute;
    top:0;
    left:50%;
    bottom:0;
    transform:skew(-15deg) translate(-110.5%, 0);
    transform-origin:left bottom;
    z-index:1
}
@media(max-width: 767px) {
    .mainAnimation.scene05:before {
        width:100vw;
        transform:skew(-15deg) translate(-125%, 0) !important
    }
}
.mainAnimation.scene05 .background {
    width:100%;
    background:none;
    left:50%;
    transform:translate(-50%, 0);
    z-index:3
}
.mainAnimation.scene05 .inner {
    max-width:1280px
}
@media(max-width: 767px) {
    .mainAnimation.scene05 .inner {
        width:100vw;
        left:0;
        transform:none
    }
}
.mainAnimation.scene05 .text {
    opacity:0
}
.mainAnimation.scene05 .text2 {
    width:auto;
    padding:0 0 7px 0;
    font-size:12.6rem;
    line-height:.77em;
    letter-spacing:-0.017em;
    opacity:1;
    left:0;
    transform:translate3d(0, -50%, 0)
}
@media(min-width: 768px)and (max-width: 1024px) {
    .mainAnimation.scene05 .text2 {
        padding:0 0 7px 14px
    }
}
@media(max-width: 767px) {
    .mainAnimation.scene05 .text2 {
        padding:0;
        font-size:16.8vw;
        letter-spacing:-0.017em;
        left:calc(15/390 * 100vw);
        transform:translate(0, -50%)
    }
}
.mainAnimation.scene05 .line {
    animation:borderAnime .4s ease-in-out 0s
}
.mainAnimation.scene05 .scroll {
    opacity:1
}
.mainSlider {
    width:61%;
    height:100vh;
    margin:0 0 0 auto;
    overflow:hidden;
    position:relative;
    opacity:0;
    z-index:0
}
.mainSlider .item {
    height:100vh;
    position:relative
}
.mainSlider .item:before {
    width:100%;
    height:100%;
    background:rgba(24,45,95,.5);
    content:"";
    display:block;
    mix-blend-mode:multiply;
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    z-index:1
}
.mainSlider .item.item01 {
    background-image:url("../images/top/main_visual_slider01.jpg");
    background-image:-webkit-image-set(url("../images/top/main_visual_slider01.jpg") 1x, url("../images/top/main_visual_slider01_2x.jpg") 2x);
    background-image:image-set(url("../images/top/main_visual_slider01.jpg") 1x, url("../images/top/main_visual_slider01_2x.jpg") 2x);
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat
}
.mainSlider .item.item02 {
    background-image:url("../images/top/main_visual_slider02.jpg");
    background-image:-webkit-image-set(url("../images/top/main_visual_slider02.jpg") 1x, url("../images/top/main_visual_slider02_2x.jpg") 2x);
    background-image:image-set(url("../images/top/main_visual_slider02.jpg") 1x, url("../images/top/main_visual_slider02_2x.jpg") 2x);
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat
}
.mainSlider .item.item03 {
    background-image:url("../images/top/main_visual_slider03.jpg");
    background-image:-webkit-image-set(url("../images/top/main_visual_slider03.jpg") 1x, url("../images/top/main_visual_slider03_2x.jpg") 2x);
    background-image:image-set(url("../images/top/main_visual_slider03.jpg") 1x, url("../images/top/main_visual_slider03_2x.jpg") 2x);
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat
}
.mainSlider .item.item04 {
    background-image:url("../images/top/main_visual_slider04.jpg");
    background-image:-webkit-image-set(url("../images/top/main_visual_slider04.jpg") 1x, url("../images/top/main_visual_slider04_2x.jpg") 2x);
    background-image:image-set(url("../images/top/main_visual_slider04.jpg") 1x, url("../images/top/main_visual_slider04_2x.jpg") 2x);
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat
}
.mainSlider .item.item05 {
    background-image:url("../images/top/main_visual_slider05.jpg");
    background-image:-webkit-image-set(url("../images/top/main_visual_slider05.jpg") 1x, url("../images/top/main_visual_slider05_2x.jpg") 2x);
    background-image:image-set(url("../images/top/main_visual_slider05.jpg") 1x, url("../images/top/main_visual_slider05_2x.jpg") 2x);
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat
}
.mainSlider.active {
    opacity:1
}
.mainSlider.active .item.slick-active {
    animation:sliderAnime1 5.5s ease-in-out 0s
}
.mainSlider.active .item.slick-active:before {
    animation:sliderAnime2 5.5s ease-in-out 0s
}
.slick-track {
    overflow:hidden
}
@media(max-width: 1979px) {
    .mainSlider {
        width:70%
    }
}
@media(max-width: 1050px) {
    .mainSlider {
        width:80%
    }
}
@media(max-width: 837px) {
    .mainAnimation:before {
        transform:skew(-15deg) translate(-108.7%, 0)
    }
}
#top #wrapper {
    overflow-x:hidden
}
.secLineCenter {
    position:relative;
    z-index:1
}
.secLineCenter:before {
    width:24.5px;
    height:76px;
    background:url("../images/top/bg_line.png") center center/cover no-repeat;
    content:"";
    position:absolute;
    top:118px;
    left:50%;
    transform:translate(-50%, -50%)
}
@media(max-width: 767px) {
    .secLineCenter:before {
        width:calc(24.5/390 * 100vw);
        height:calc(76/390 * 100vw);
        top:calc(118/390 * 100vw)
    }
}
.secLineLeft {
    position:relative;
    z-index:1
}
.secLineLeft:before {
    width:24.5px;
    height:76px;
    background:url("../images/top/bg_line.png") center center/cover no-repeat;
    content:"";
    position:absolute;
    top:0;
    left:0;
    transform:translate(0, -50%)
}
@media(min-width: 768px)and (max-width: 1024px) {
    .secLineLeft:before {
        left:15px
    }
}
@media(max-width: 767px) {
    .secLineLeft:before {
        width:calc(24.5/390 * 100vw);
        height:calc(76/390 * 100vw);
        left:calc(15/390 * 100vw)
    }
}
.moreBtn a {
    width:280px;
    height:46px;
    background:linear-gradient(to right, #31A2B2 0%, #31A2B2 100%);
    color:#fff;
    font-size:1.6rem;
    font-weight:bold;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    z-index:1;
    transition:all .2s ease-out 0s
}
@media(max-width: 767px) {
    .moreBtn a {
        width:calc(280/390 * 100vw);
        height:calc(46/390 * 100vw);
        font-size:calc(16/390 * 100vw)
    }
}
.moreBtn a:before {
    width:30px;
    height:1px;
    background:#31a2b2;
    content:"";
    display:block;
    position:absolute;
    top:50%;
    left:0;
    z-index:2;
    transform:translate(-100%, -50%)
}
@media(max-width: 767px) {
    .moreBtn a:before {
        width:calc(30/390 * 100vw);
        height:calc(1/390 * 100vw)
    }
}
.moreBtn a:after {
    width:30px;
    height:1px;
    background:#fff;
    content:"";
    display:block;
    position:absolute;
    top:50%;
    left:0;
    z-index:2;
    transform:translate(0, -50%)
}
@media(max-width: 767px) {
    .moreBtn a:after {
        width:calc(30/390 * 100vw);
        height:calc(1/390 * 100vw)
    }
}
.moreBtn a:hover {
    background:linear-gradient(to right, #31A2B2 0%, #ADC65D 100%)
}
.section02 {
    margin:0;
    padding:168px 0 85px;
    overflow-x:hidden;
    position:relative
}
@media(max-width: 767px) {
    .section02 {
        padding:calc(168/390 * 100vw) 0 calc(85/390 * 100vw)
    }
}
.section02:after {
    width:1808px;
    height:calc(100% - 118px);
    background:#eef2f5;
    content:"";
    display:block;
    position:absolute;
    top:118px;
    left:50%;
    transform:skew(-15deg) translate(-50%, 0);
    z-index:-1
}
@media(max-width: 767px) {
    .section02:after {
        height:calc(100% - 118/390 * 100vw);
        top:calc(118/390 * 100vw)
    }
}
.section02 .container {
    max-width:1280px
}
.section02 .engTitle {
    color:#31a2b2;
    font-size:1.6rem;
    font-family:"Montserrat",sans-serif;
    line-height:1.1875em;
    text-align:center;
    text-transform:uppercase
}
@media(max-width: 767px) {
    .section02 .engTitle {
        font-size:calc(16/390 * 100vw)
    }
}
.section02 .jpTitle {
    margin:30px 0 0;
    color:#182d5f;
    font-size:3.4rem;
    font-weight:bold;
    line-height:1.47058em;
    text-align:center
}
@media(max-width: 767px) {
    .section02 .jpTitle {
        margin:calc(30/390 * 100vw) 0 0;
        font-size:calc(34/390 * 100vw)
    }
}
.section02 .row {
    display:flex;
    justify-content:space-between
}
@media(max-width: 767px) {
    .section02 .row {
        display:block
    }
}
.section02 .row.type01 {
    margin-top:31px;
    margin-bottom:45px
}
@media(max-width: 767px) {
    .section02 .row.type01 {
        margin-top:0;
        margin-bottom:calc(45/390 * 100vw)
    }
}
.section02 .row.type01 .col {
    width:22.5%
}
@media(max-width: 767px) {
    .section02 .row.type01 .col {
        width:100%;
        margin-top:calc(30/390 * 100vw);
        padding-top:calc(15/390 * 100vw)
    }
}
.section02 .row.type01 .col+.col {
    position:relative
}
.section02 .row.type01 .col+.col:before {
    width:1px;
    height:100%;
    background:#31a2b2;
    content:"";
    display:block;
    position:absolute;
    top:0;
    left:-7%;
    transform:skew(-15deg)
}
@media(max-width: 767px) {
    .section02 .row.type01 .col+.col:before {
        width:100%;
        height:calc(1/390 * 100vw);
        top:0;
        left:0;
        transform:none
    }
}
.section02 .icon {
    height:92px;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    text-align:center
}
.section02 .title {
    height:70px;
    margin:14px 0 0;
    color:#182d5f;
    font-size:2.4rem;
    font-weight:bold;
    line-height:1.5em;
    text-align:center;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center
}
@media(max-width: 767px) {
    .section02 .title {
        height:calc(70/390 * 100vw);
        margin:calc(14/390 * 100vw) 0 0;
        font-size:calc(24/390 * 100vw)
    }
}
.section02 .moreBtn a {
    margin:0 auto
}
.section03 {
    margin:0;
    padding:118px 0 0;
    overflow-x:hidden;
    position:relative
}
@media(max-width: 767px) {
    .section03 {
        padding:calc(118/390 * 100vw) 0 0
    }
}
.section03:after {
    width:100vw;
    height:calc(100% - 118px);
    background:#eef2f5;
    content:"";
    display:block;
    position:absolute;
    top:118px;
    left:50%;
    transform:skew(-15deg) translate(75px, 0)
}
@media(max-width: 767px) {
    .section03:after {
        height:calc(100% - 118/390 * 100vw);
        top:calc(118/390 * 100vw)
    }
}
.section03 .container {
    max-width:1140px;
    padding:50px 0 33.5px
}
@media(min-width: 768px)and (max-width: 1024px) {
    .section03 .container {
        padding-left:15px;
        padding-right:15px;
        padding-bottom:50px
    }
}
@media(max-width: 767px) {
    .section03 .container {
        padding:calc(50/390 * 100vw) calc(15/390 * 100vw) calc(33.5/390 * 100vw)
    }
}
.section03 .container:after {
    width:100vw;
    height:100%;
    background:#182d5f;
    content:"";
    display:block;
    position:absolute;
    top:0;
    left:-140px;
    transform:skew(-15deg) translate(-100%, 0)
}
@media(max-width: 767px) {
    .section03 .container:after {
        left:calc(-140/390 * 100vw)
    }
}
.section03 .engTitle {
    color:#31a2b2;
    font-size:1.6rem;
    font-family:"Montserrat",sans-serif;
    line-height:1.1875em;
    text-transform:uppercase
}
@media(max-width: 767px) {
    .section03 .engTitle {
        font-size:calc(16/390 * 100vw)
    }
}
.section03 .jpTitle {
    margin:20px 0 0;
    color:#182d5f;
    font-size:3.4rem;
    font-weight:bold;
    line-height:1.47058em
}
@media(max-width: 767px) {
    .section03 .jpTitle {
        margin:calc(20/390 * 100vw) 0 0;
        font-size:calc(34/390 * 100vw)
    }
}
.section03 .row {
    padding-right:127px;
    display:flex;
    justify-content:space-between;
    gap:64px 0
}
@media(min-width: 768px)and (max-width: 1024px) {
    .section03 .row {
        padding-right:0
    }
}
@media(max-width: 767px) {
    .section03 .row {
        padding-right:0;
        display:block
    }
}
.section03 .row .text {
    width:39.487%
}
@media(min-width: 768px)and (max-width: 1024px) {
    .section03 .row .text {
        width:50%
    }
}
@media(max-width: 767px) {
    .section03 .row .text {
        width:100%;
        margin-bottom:calc(15/390 * 100vw)
    }
    .section03 .row .text .moreBtn a {
        margin:0 auto
    }
}
@media(min-width: 768px)and (max-width: 1024px) {
    .section03 .row .img {
        width:45%
    }
}
.section03 p {
    margin:32px 0 61px;
    color:#182d5f;
    font-size:2rem;
    line-height:1.9em
}
@media(max-width: 767px) {
    .section03 p {
        margin:calc(32/390 * 100vw) 0 calc(61/390 * 100vw);
        font-size:calc(20/390 * 100vw)
    }
}
.section04 {
    margin:0;
    padding:168px 0 0;
    overflow-x:hidden;
    position:relative
}
@media(max-width: 767px) {
    .section04 {
        padding:calc(168/390 * 100vw) 0 0
    }
}
.section04 .container {
    max-width:1280px
}
.section04 .engTitle {
    color:#31a2b2;
    font-size:1.6rem;
    font-family:"Montserrat",sans-serif;
    line-height:1.1875em;
    text-align:center;
    text-transform:uppercase
}
@media(max-width: 767px) {
    .section04 .engTitle {
        font-size:calc(16/390 * 100vw)
    }
}
.section04 .jpTitle {
    margin:30px 0 0;
    color:#182d5f;
    font-size:3.4rem;
    font-weight:bold;
    line-height:1.47058em;
    text-align:center
}
@media(max-width: 767px) {
    .section04 .jpTitle {
        margin:calc(30/390 * 100vw) 0 0;
        font-size:calc(34/390 * 100vw)
    }
}
.section04 .titleCategory {
    margin:40px 0 0;
    padding:4px 0 6px;
    color:#fff;
    font-size:2.2rem;
    font-weight:bold;
    line-height:1.36363em;
    text-align:center;
    position:relative;
    z-index:1
}
@media(max-width: 767px) {
    .section04 .titleCategory {
        margin:calc(40/390 * 100vw) 0 0;
        padding:calc(4/390 * 100vw) 0 calc(6/390 * 100vw);
        font-size:calc(22/390 * 100vw)
    }
}
.section04 .titleCategory:before {
    width:403px;
    height:100%;
    background:#182d5f;
    content:"";
    display:block;
    position:absolute;
    top:0;
    left:50%;
    transform:skew(-15deg) translate(-50%, 0);
    z-index:-1
}
@media(max-width: 767px) {
    .section04 .titleCategory:before {
        width:calc(360/390 * 100vw)
    }
}
.section04 .pickupCase {
    margin:16px 0 0;
    display:flex
}
@media(max-width: 767px) {
    .section04 .pickupCase {
        margin:calc(16/390 * 100vw) 0 0;
        display:block
    }
}
.section04 .pickupCase .img {
    width:50%
}
@media(max-width: 767px) {
    .section04 .pickupCase .img {
        width:100%
    }
}
.section04 .pickupCase .txt {
    width:50%;
    padding:25px 25px 95px;
    background:#eef2f5;
    position:relative
}
@media(max-width: 767px) {
    .section04 .pickupCase .txt {
        width:100%;
        padding:calc(25/390 * 100vw) calc(25/390 * 100vw) calc(95/390 * 100vw)
    }
}
.section04 .pickupCase .caseCategory {
    padding:0 12px 2px;
    color:#fff;
    display:inline-block;
    font-size:1.6rem;
    font-weight:bold
}
@media(max-width: 767px) {
    .section04 .pickupCase .caseCategory {
        padding:0 calc(12/390 * 100vw) calc(2/390 * 100vw);
        font-size:calc(16/390 * 100vw)
    }
}
.section04 .pickupCase .caseTitle {
    margin:20px 0 0;
    color:#182d5f;
    font-size:2.4rem;
    font-weight:bold;
    line-height:1.66666em
}
@media(max-width: 767px) {
    .section04 .pickupCase .caseTitle {
        margin:calc(20/390 * 100vw) 0 0;
        font-size:calc(24/390 * 100vw)
    }
}
.section04 .pickupCase .caseTitle span {
    font-size:2rem;
    font-weight:normal
}
.section04 .pickupCase .moreBtn {
    width:calc(100% - 50px);
    position:absolute;
    right:25px;
    bottom:25px
}
@media(max-width: 767px) {
    .section04 .pickupCase .moreBtn {
        width:auto;
        left:calc(25/390 * 100vw);
        right:calc(25/390 * 100vw);
        bottom:calc(25/390 * 100vw)
    }
}
.section04 .pickupCase .moreBtn a {
    width:200px;
    height:40px;
    background:none;
    border:1px solid #31a2b2;
    color:#31a2b2;
    display:flex;
    align-items:center;
    justify-content:center
}
@media(max-width: 767px) {
    .section04 .pickupCase .moreBtn a {
        width:calc(200/390 * 100vw);
        height:calc(40/390 * 100vw)
    }
}
.section04 .pickupCase .moreBtn a:after {
    background:#31a2b2
}
.section04 .pickupCase .moreBtn a:hover {
    background:linear-gradient(to right, #31A2B2 0%, #ADC65D 100%);
    color:#fff
}
.section04 .pickupCase .moreBtn a:hover:after {
    background:#fff
}
.section04 .pickupCase.cate1 .caseCategory {
    background:#8f82bc
}
.section04 .pickupCase.cate2 .caseCategory {
    background:#8cc456
}
.section04 .pickupCase.cate3 .caseCategory {
    background:#a79e58
}
.section04 .pickupCase.cate4 .caseCategory {
    background:#bc8294
}
.section04 .pickupCase.cate5 .caseCategory {
    background:#6f98bc
}
.section04 .caseColumn {
    margin:22px 0 0;
    display:flex;
    justify-content:space-between
}
@media(min-width: 768px)and (max-width: 1024px) {
    .section04 .caseColumn {
        margin:2px 0 0;
        flex-wrap:wrap
    }
}
@media(max-width: 767px) {
    .section04 .caseColumn {
        margin:calc(22/390 * 100vw) 0 0;
        display:block
    }
}
.section04 .caseColumnItem {
    width:23.829%;
    padding:21px 25px 85px;
    background:#eef2f5;
    position:relative
}
@media(min-width: 768px)and (max-width: 1024px) {
    .section04 .caseColumnItem {
        width:46.6145833333vw;
        margin:20px 0 0
    }
}
@media(max-width: 767px) {
    .section04 .caseColumnItem {
        width:100%;
        padding:calc(21/390 * 100vw) calc(25/390 * 100vw) calc(85/390 * 100vw)
    }
    .section04 .caseColumnItem+.caseColumnItem {
        margin-top:calc(15/390 * 100vw)
    }
}
.section04 .caseColumnItem.cate1 {
    border-top:4px solid #8f82bc
}
@media(max-width: 767px) {
    .section04 .caseColumnItem.cate1 {
        border-top-width:calc(4/390 * 100vw)
    }
}
.section04 .caseColumnItem.cate1 .caseColumnCategory {
    background:#8f82bc
}
.section04 .caseColumnItem.cate2 {
    border-top:4px solid #8cc456
}
@media(max-width: 767px) {
    .section04 .caseColumnItem.cate2 {
        border-top-width:calc(4/390 * 100vw)
    }
}
.section04 .caseColumnItem.cate2 .caseColumnCategory {
    background:#8cc456
}
.section04 .caseColumnItem.cate3 {
    border-top:4px solid #a79e58
}
@media(max-width: 767px) {
    .section04 .caseColumnItem.cate3 {
        border-top-width:calc(4/390 * 100vw)
    }
}
.section04 .caseColumnItem.cate3 .caseColumnCategory {
    background:#a79e58
}
.section04 .caseColumnItem.cate4 {
    border-top:4px solid #bc8294
}
@media(max-width: 767px) {
    .section04 .caseColumnItem.cate4 {
        border-top-width:calc(4/390 * 100vw)
    }
}
.section04 .caseColumnItem.cate4 .caseColumnCategory {
    background:#bc8294
}
.section04 .caseColumnItem.cate5 {
    border-top:4px solid #6f98bc
}
@media(max-width: 767px) {
    .section04 .caseColumnItem.cate5 {
        border-top-width:calc(4/390 * 100vw)
    }
}
.section04 .caseColumnItem.cate5 .caseColumnCategory {
    background:#6f98bc
}
.section04 .caseColumnItem .moreBtn {
    width:100%;
    position:absolute;
    left:50%;
    bottom:25px;
    transform:translate(-50%, 0)
}
@media(max-width: 767px) {
    .section04 .caseColumnItem .moreBtn {
        bottom:calc(25/390 * 100vw)
    }
}
.section04 .caseColumnItem .moreBtn a {
    width:200px;
    height:40px;
    background:none;
    border:1px solid #31a2b2;
    color:#31a2b2;
    display:flex;
    align-items:center;
    justify-content:center
}
@media(min-width: 768px)and (max-width: 1024px) {
    .section04 .caseColumnItem .moreBtn a {
        width:100%;
        max-width:200px
    }
}
@media(max-width: 767px) {
    .section04 .caseColumnItem .moreBtn a {
        width:calc(200/390 * 100vw);
        height:calc(40/390 * 100vw)
    }
}
.section04 .caseColumnItem .moreBtn a:after {
    background:#31a2b2
}
.section04 .caseColumnItem .moreBtn a:hover {
    background:linear-gradient(to right, #31A2B2 0%, #ADC65D 100%);
    color:#fff
}
.section04 .caseColumnItem .moreBtn a:hover:after {
    background:#fff
}
.section04 .caseColumnCategory {
    padding:0 12px 2px;
    color:#fff;
    display:inline-block;
    font-size:1.6rem;
    font-weight:bold
}
@media(max-width: 767px) {
    .section04 .caseColumnCategory {
        padding:0 calc(12/390 * 100vw) calc(2/390 * 100vw);
        font-size:calc(16/390 * 100vw)
    }
}
.section04 .caseColumnTitle {
    margin:18px 0 0;
    color:#182d5f;
    font-size:1.8rem;
    font-weight:bold;
    line-height:1.55555em
}
@media(max-width: 767px) {
    .section04 .caseColumnTitle {
        margin:calc(18/390 * 100vw) 0 0;
        font-size:calc(18/390 * 100vw)
    }
}
.section04 .moreBtn {
    margin:40px 0 0
}
@media(max-width: 767px) {
    .section04 .moreBtn {
        margin:calc(40/390 * 100vw) 0 0
    }
}
.section04 .moreBtn a {
    margin:0 auto
}
.section05 {
    margin:0 0 118px;
    padding:168px 0 0;
    overflow-x:hidden;
    position:relative;
    overflow:hidden
}
@media(max-width: 767px) {
    .section05 {
        margin:0 0 calc(118/390 * 100vw);
        padding:calc(168/390 * 100vw) 0 0
    }
}
.section05:after {
    width:100vw;
    height:calc(100% - 119px);
    background:#182d5f;
    content:"";
    display:block;
    position:absolute;
    bottom:0;
    left:0;
    z-index:-2
}
@media(max-width: 767px) {
    .section05:after {
        height:calc(100% - 119/390 * 100vw)
    }
}
.section05 .container {
    max-width:1280px;
    padding:0 0 80px;
    position:relative
}
@media(min-width: 768px)and (max-width: 1024px) {
    .section05 .container {
        padding:0 15px 80px
    }
}
@media(max-width: 767px) {
    .section05 .container {
        padding:0 calc(15/390 * 100vw) calc(80/390 * 100vw)
    }
}
.section05 .container:before {
    width:1182px;
    height:calc(100% + 50px);
    background:#eef2f5;
    border-left:28px solid #fff;
    border-right:28px solid #fff;
    content:"";
    display:block;
    position:absolute;
    bottom:0;
    left:50%;
    transform:skew(-15deg) translate(-50%, 0);
    z-index:-1;
    box-sizing:content-box
}
@media(max-width: 767px) {
    .section05 .container:before {
        height:calc(100% + 50/390 * 100vw);
        border-left-width:calc(28/390 * 100vw);
        border-right-width:calc(28/390 * 100vw)
    }
}
.section05 .engTitle {
    color:#31a2b2;
    font-size:1.6rem;
    font-family:"Montserrat",sans-serif;
    line-height:1.1875em;
    text-align:center;
    text-transform:uppercase
}
@media(max-width: 767px) {
    .section05 .engTitle {
        font-size:calc(16/390 * 100vw)
    }
}
.section05 .jpTitle {
    margin:30px 0 0;
    color:#182d5f;
    font-size:3.4rem;
    font-weight:bold;
    line-height:1.47058em;
    text-align:center
}
@media(max-width: 767px) {
    .section05 .jpTitle {
        margin:calc(30/390 * 100vw) 0 0;
        font-size:calc(34/390 * 100vw)
    }
}
.section05 p {
    margin:32px 0 40px;
    color:#182d5f;
    font-size:2rem;
    text-align:center
}
@media(max-width: 767px) {
    .section05 p {
        margin:calc(32/390 * 100vw) 0 calc(40/390 * 100vw);
        font-size:calc(20/390 * 100vw)
    }
}
.section05 .moreBtn a {
    margin:0 auto
}
.section01 {
    width:100%;
    max-width:1820px;
    margin:50px auto;
    padding:0;
    background:#eef2f5
}
@media(max-width: 767px) {
    .section01 {
        margin:calc(50/390 * 100vw) auto
    }
}
.section01 .container {
    max-width:1280px
}
.section01 .container.secLineLeft:before {
    left:30px
}
@media(max-width: 767px) {
    .section01 .container.secLineLeft:before {
        left:calc(15/390 * 100vw)
    }
}
.section01 .row {
    padding:50px 0;
    display:flex;
    justify-content:space-between
}
@media(max-width: 767px) {
    .section01 .row {
        padding:calc(50/390 * 100vw) 0;
        display:block
    }
}
.section01 .ttl {
    width:29.233%;
    padding-left:30px;
    flex-shrink:0
}
@media(min-width: 768px)and (max-width: 1280px) {
    .section01 .ttl {
        padding-left:15px
    }
}
@media(max-width: 767px) {
    .section01 .ttl {
        width:100%;
        margin-bottom:calc(50/390 * 100vw);
        padding-left:0
    }
}
.section01 .engTitle {
    color:#31a2b2;
    font-size:1.6rem;
    font-family:"Montserrat",sans-serif;
    line-height:1.1875em;
    text-transform:uppercase
}
@media(max-width: 767px) {
    .section01 .engTitle {
        font-size:calc(16/390 * 100vw)
    }
}
.section01 .jpTitle {
    margin:8px 0 0;
    color:#182d5f;
    font-size:3.4rem;
    font-weight:bold;
    line-height:1.47058em
}
@media(max-width: 767px) {
    .section01 .jpTitle {
        margin:calc(8/390 * 100vw) 0 0;
        font-size:calc(34/390 * 100vw)
    }
}
.section01 .moreBtn {
    margin-top:75.5px
}
@media(max-width: 767px) {
    .section01 .moreBtn {
        margin-top:calc(30/390 * 100vw)
    }
}
.section01 .moreBtn a {
    width:200px;
    height:40px;
    background:none;
    border:1px solid #31a2b2;
    color:#31a2b2
}
@media(min-width: 768px)and (max-width: 1024px) {
    .section01 .moreBtn a {
        width:180px
    }
}
@media(max-width: 767px) {
    .section01 .moreBtn a {
        width:calc(200/390 * 100vw);
        height:calc(40/390 * 100vw)
    }
}
.section01 .moreBtn a:after {
    background:#31a2b2
}
.section01 .moreBtn a:hover {
    background:linear-gradient(to right, #31A2B2 0%, #ADC65D 100%);
    color:#fff
}
.section01 .moreBtn a:hover:after {
    background:#fff
}
.section01 .newsList {
    width:100%;
    margin:0;
    padding:0;
    border-top:1px solid #182d5f
}
@media(max-width: 767px) {
    .section01 .newsList {
        padding:calc(5/390 * 100vw) 0 calc(40/390 * 100vw)
    }
}
.section01 .newsList .newsListItem {
    padding:19px 0 18px;
    border-bottom:1px dashed #b7b6b6;
    list-style:none;
    display:-moz-flex;
    display:-ms-flex;
    display:-o-flex;
    display:flex;
    align-items:flex-start
}
@media(max-width: 767px) {
    .section01 .newsList .newsListItem {
        flex-wrap:wrap;
        padding:calc(15/390 * 100vw) 0 calc(16/390 * 100vw)
    }
}
.section01 .newsList .newsListItem .newsDate {
    font-size:1.8rem;
    line-height:1.4444em;
    color:#182d5f;
    margin-right:14px;
    flex-shrink:0
}
@media(max-width: 767px) {
    .section01 .newsList .newsListItem .newsDate {
        font-size:calc(18/390 * 100vw)
    }
}
.section01 .newsList .newsListItem .newsCategory {
    flex-shrink:0;
    background:#31a2b2;
    width:124px;
    padding:1px 5px;
    color:#fff;
    font-weight:bold;
    font-size:1.4rem;
    line-height:1.4285em;
    text-align:center;
    margin-top:2px;
    margin-right:15px
}
@media(max-width: 767px) {
    .section01 .newsList .newsListItem .newsCategory {
        margin-right:0;
        margin-top:calc(2/390 * 100vw);
        width:calc(124/390 * 100vw);
        padding:calc(1/390 * 100vw) calc(5/390 * 100vw);
        font-size:calc(14/390 * 100vw)
    }
}
.section01 .newsList .newsListItem .newsTitle {
    flex-shrink:1
}
@media(max-width: 767px) {
    .section01 .newsList .newsListItem .newsTitle {
        width:100%;
        margin-top:calc(5/390 * 100vw)
    }
}
.section01 .newsList .newsListItem .newsTitle a {
    font-size:1.8rem;
    line-height:1.4444em;
    color:#182d5f
}
@media(max-width: 767px) {
    .section01 .newsList .newsListItem .newsTitle a {
        font-size:calc(18/390 * 100vw)
    }
}
.section01 .newsList .newsListItem .newsTitle a:hover {
    color:#31a2b2
}
.section01 .newsList .newsListItem .newsTitle a.noLink {
    color:#21232c;
    pointer-events:none
}
.section01 .newsList .newsListItem .newsTitle a.iconBlank {
    margin-right:0
}
.section01 .newsList .newsListItem .newsTitle a.iconBlank::after {
    background-image:url("../images/icon_blank_on.png")
}
.section01 .newsList .newsListItem .newsTitle a.iconBlank:hover::after {
    background-image:url("../images/icon_blank.png")
}
.section01 .newsList .newsListItem:last-of-type {
    border-bottom:1px solid #182d5f
}
.section06 {
    margin-top:88px;
    position:relative
}
@media(max-width: 767px) {
    .section06 {
        margin-top:calc(88/390 * 100vw);
        overflow:hidden
    }
}
.section06:before {
    top:0
}
.section06 .container {
    max-width:1280px;
    padding-top:50px;
    padding-bottom:100px;
    position:relative;
    z-index:0
}
@media(max-width: 767px) {
    .section06 .container {
        padding-top:calc(50/390 * 100vw);
        padding-bottom:calc(100/390 * 100vw)
    }
}
.section06 .container:before {
    width:50vw;
    height:100%;
    background:url("../images/top/bg_reason.jpg") center center/cover no-repeat;
    content:"";
    display:block;
    opacity:.5;
    position:absolute;
    top:0;
    left:calc(50% + 148px);
    z-index:1;
    transform:skew(-15deg);
    transform-origin:bottom left
}
@media(max-width: 767px) {
    .section06 .container:before {
        left:70%
    }
}
.section06 .container:after {
    width:50vw;
    height:100%;
    background:url("../images/top/bg_reason.jpg") center center/cover no-repeat;
    content:"";
    display:block;
    opacity:.5;
    position:absolute;
    top:0;
    right:calc(50% + 292px);
    z-index:1;
    transform:skew(-15deg);
    transform-origin:top right
}
@media(max-width: 767px) {
    .section06 .container:after {
        right:70%
    }
}
.section06 .engTitle {
    color:#31a2b2;
    font-size:1.6rem;
    font-family:"Montserrat",sans-serif;
    line-height:1.1875em;
    text-align:center;
    text-transform:uppercase;
    position:relative;
    z-index:2
}
@media(max-width: 767px) {
    .section06 .engTitle {
        font-size:calc(16/390 * 100vw)
    }
}
.section06 .jpTitle {
    margin:30px 0 0;
    color:#182d5f;
    font-size:3.4rem;
    font-weight:bold;
    line-height:1.47058em;
    text-align:center;
    position:relative;
    z-index:2
}
@media(max-width: 767px) {
    .section06 .jpTitle {
        margin:calc(30/390 * 100vw) 0 0;
        font-size:calc(34/390 * 100vw)
    }
}
.section06 p {
    margin:40px 0 0;
    color:#182d5f;
    font-size:2.4rem;
    text-align:center;
    position:relative;
    z-index:2
}
@media(max-width: 767px) {
    .section06 p {
        margin:calc(40/390 * 100vw) 0 0;
        font-size:calc(24/390 * 100vw)
    }
}
.section06 h3 {
    margin:40px 0 0;
    color:#7a7a7a;
    font-size:2rem;
    font-weight:bold;
    line-height:1.45em;
    text-align:center;
    position:relative;
    z-index:2
}
@media(max-width: 767px) {
    .section06 h3 {
        margin:calc(40/390 * 100vw) 0 0;
        font-size:calc(20/390 * 100vw)
    }
}
.section06 .row.reason {
    margin:18px 0 0;
    display:flex;
    justify-content:center;
    gap:8px;
    position:relative;
    z-index:2
}
@media(max-width: 767px) {
    .section06 .row.reason {
        margin:calc(18/390 * 100vw) 0 0;
        flex-wrap:wrap;
        gap:calc(8/390 * 100vw)
    }
    .section06 .row.reason .col {
        text-align:center
    }
}
.section06 .moreBtn {
    margin:58px auto 0;
    position:relative;
    z-index:2
}
@media(max-width: 767px) {
    .section06 .moreBtn {
        margin:calc(50/390 * 100vw) auto 0
    }
}
.section06 .moreBtn a {
    margin:0 auto
}
.sectionBnr {
    margin:80px auto 60px
}
@media(max-width: 767px) {
    .sectionBnr {
        margin:40px auto 30px
    }
}
.sectionBnr .container {
    max-width:1080px;
    width:100%;
    margin:0 auto
}
@media(min-width: 768px)and (max-width: 1024px) {
    .sectionBnr .container {
        padding-left:30px
    }
}
.sectionBnr .container a .bg {
    width:100%;
    height:280px;
    background:url(../images/top/bg_bnr.jpg) right top no-repeat;
    background-size:cover;
    position:relative
}
@media(max-width: 1080px) {
    .sectionBnr .container a .bg {
        height:25.926vw
    }
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg {
        width:100%;
        height:calc(581/390 * 100vw);
        background:url(../images/top/bg_bnr_sp.png) right top no-repeat;
        background-size:cover
    }
}
.sectionBnr .container a .bg .title {
    position:relative;
    top:-20px;
    left:-30px;
    width:316px;
    height:58px;
    line-height:58px;
    font-size:20px;
    font-weight:bold;
    color:#fff;
    text-align:center;
    background:url(../images/top/bg_bnrTitle.png);
    margin:0
}
@media(max-width: 1080px) {
    .sectionBnr .container a .bg .title {
        font-size:1.852vw
    }
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .title {
        font-size:calc(20/390 * 100vw);
        top:calc(-20/390 * 100vw);
        left:50%;
        transform:translateX(-50%);
        background:url(../images/top/bg_bnrTitle_sp.png) no-repeat;
        background-size:contain;
        width:calc(315/390 * 100vw);
        height:calc(58/390 * 100vw);
        margin-right:0;
        display:flex;
        justify-content:center;
        align-items:center
    }
}
.sectionBnr .container a .bg .image {
    position:absolute;
    left:5.5%;
    bottom:0
}
@media(min-width: 768px)and (max-width: 1024px) {
    .sectionBnr .container a .bg .image {
        width:18.848vw
    }
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .image {
        width:calc(159/390 * 100vw);
        height:calc(190/390 * 100vw);
        top:calc(230/390 * 100vw);
        left:calc(20/390 * 100vw)
    }
}
.sectionBnr .container a .bg .image img {
    width:100%
}
.sectionBnr .container a .bg .image img:hover {
    opacity:1
}
.sectionBnr .container a .bg .image .pc {
    display:block
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .image .pc {
        display:none
    }
}
.sectionBnr .container a .bg .image .sp {
    display:none
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .image .sp {
        display:block
    }
}
.sectionBnr .container a .bg .copy {
    color:#182d5f;
    font-size:20px;
    font-weight:bold;
    margin:-15px 0 0 28.7%
}
@media(max-width: 1080px) {
    .sectionBnr .container a .bg .copy {
        font-size:1.852vw
    }
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .copy {
        position:absolute;
        top:calc(57/390 * 100vw);
        left:calc(15/390 * 100vw);
        font-size:calc(17/390 * 100vw);
        margin:0
    }
}
.sectionBnr .container a .bg .copy span {
    display:inline-block;
    padding-top:10px;
    font-size:28px;
    line-height:1.48
}
@media(max-width: 1080px) {
    .sectionBnr .container a .bg .copy span {
        font-size:2.593vw
    }
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .copy span {
        padding-top:calc(13/390 * 100vw);
        font-size:calc(26/390 * 100vw);
        line-height:1.22
    }
}
.sectionBnr .container a .bg .copy .sp-only {
    display:none
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .copy .sp-only {
        display:block
    }
}
.sectionBnr .container a .bg .row {
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    height:90px;
    background:#182d5f;
    display:flex;
    justify-content:space-between
}
@media(max-width: 1080px) {
    .sectionBnr .container a .bg .row {
        height:8.333vw
    }
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .row {
        height:calc(220/390 * 100vw)
    }
}
.sectionBnr .container a .bg .row p {
    margin:25px 0 0 25.3%;
    color:#fff;
    font-size:13px
}
@media(max-width: 1080px) {
    .sectionBnr .container a .bg .row p {
        font-size:1.204vw
    }
}
@media(min-width: 768px)and (max-width: 1024px) {
    .sectionBnr .container a .bg .row p {
        margin:20px 0 0 27%
    }
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .row p {
        font-size:calc(13/390 * 100vw);
        margin:calc(75/390 * 100vw) calc(15/390 * 100vw) 0
    }
}
.sectionBnr .container a .bg .row p span {
    font-size:18px
}
@media(max-width: 1080px) {
    .sectionBnr .container a .bg .row p span {
        font-size:1.667vw
    }
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .row p span {
        font-size:calc(18/390 * 100vw)
    }
}
.sectionBnr .container a .bg .row .moreBtn02 {
    margin:25px 40px 25px 0;
    color:#31a2b2;
    width:200px;
    height:40px;
    background:rgba(0,0,0,0);
    border:#31a2b2 solid 1px;
    font-size:1.6rem;
    font-weight:bold;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    z-index:1;
    transition:all .2s ease-out 0s
}
@media(max-width: 1080px) {
    .sectionBnr .container a .bg .row .moreBtn02 {
        margin:2.315vw 3.704vw 2.315vw 0;
        width:18.519vw;
        height:3.704vw;
        font-size:1.481vw
    }
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .row .moreBtn02 {
        width:calc(200/390 * 100vw);
        height:calc(40/390 * 100vw);
        position:absolute;
        left:50%;
        bottom:calc(35/390 * 100vw);
        transform:translateX(-50%);
        padding:0
    }
}
.sectionBnr .container a .bg .row .moreBtn02:before {
    width:30px;
    height:1px;
    background:#31a2b2;
    content:"";
    display:block;
    position:absolute;
    top:50%;
    left:0;
    z-index:2;
    transform:translate(-100%, -50%)
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .row .moreBtn02:before {
        width:calc(30/390 * 100vw)
    }
}
.sectionBnr .container a .bg .row .moreBtn02:after {
    width:30px;
    height:1px;
    background:#31a2b2;
    content:"";
    display:block;
    position:absolute;
    top:50%;
    left:0;
    z-index:2;
    transform:translate(0, -50%)
}
@media(max-width: 767px) {
    .sectionBnr .container a .bg .row .moreBtn02:after {
        width:calc(30/390 * 100vw)
    }
}
.sectionBnr .container a:hover img {
    opacity:1
}
.sectionBnr .container a:hover .bg .row .moreBtn02 {
    color:#fff;
    background:linear-gradient(to right, #31A2B2 0%, #ADC65D 100%)
}
.sectionBnr .container a:hover .bg .row .moreBtn02:after {
    background:#fff
}
.sectionBnr .container a:hover .bg {
    opacity:.8
}
.sectionBnr.bnr027 .container a .bg {
    background:url(../images/top/bnr027_bg_bnr.jpg) right top no-repeat;
    background-size:cover
}
@media(max-width: 767px) {
    .sectionBnr.bnr027 .container a .bg {
        background-position:72% 10%;
        height:calc(536/390 * 100vw)
    }
}
.sectionBnr.bnr027 .container a .bg .title {
    background:bnr027 url(../images/top/bnr027_bg_bnrTitle.png) no-repeat left top;
    background-size:cover
}
.sectionBnr.bnr027 .container a .bg .image.img01 {
    position:absolute;
    left:.2%;
    bottom:0;
    width:22.4074074074%;
    height:auto
}
.sectionBnr.bnr027 .container a .bg .image.img02 {
    position:absolute;
    left:auto;
    right:0;
    bottom:0;
    width:22.4074074074%;
    height:auto
}
@media(max-width: 767px) {
    .sectionBnr.bnr027 .container a .bg .image.img01,.sectionBnr.bnr027 .container a .bg .image.img02 {
        width:40.7692307692vw;
        height:48.7179487179vw;
        top:41.0256410256vw
    }
}
.sectionBnr.bnr027 .container a .bg .copy {
    color:#fff;
    text-align:center;
    margin:10px 0 0
}
.sectionBnr.bnr027 .container a .bg .row {
    background:#31a2b2;
    padding-left:220px;
    padding-right:220px;
    align-items:center
}
.sectionBnr.bnr027 .container a .bg .row p {
    margin:0
}
.sectionBnr.bnr027 .container a .bg .row p:first-child {
    text-align:right
}
.sectionBnr.bnr027 .container a .bg .row .cross {
    width:48px;
    height:48px;
    background:url(../images/top/bnr027_cross.png) no-repeat 0 0;
    background-size:cover
}
.sectionBnr.bnr027 .container a .bg .row .cross span {
    display:none
}
@media(min-width: 768px)and (max-width: 1024px) {
    .sectionBnr.bnr027 .container a .bg .row p {
        margin:0
    }
}
@media(max-width: 767px) {
    .sectionBnr.bnr027 .container a .bg .row {
        padding:0;
        display:block;
        height:61.5384615385vw
    }
    .sectionBnr.bnr027 .container a .bg .row p {
        margin:20.5128205128vw 3.8461538462vw 0
    }
    .sectionBnr.bnr027 .container a .bg .row .cross {
        width:8vw;
        height:8vw;
        margin:8px auto
    }
    .sectionBnr.bnr027 .container a .bg .row .cross+p {
        margin-top:0;
        text-align:right
    }
}
.sectionBnr.bnr030 .container a .bg .title {
    position: absolute;
}
.sectionBnr.bnr030 .container a .bg {
    background:url(../images/top/bnr030_bg_bnr.jpg) right top no-repeat;
    background-size:cover;
    height: 280px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sectionBnr.bnr030 .container a .bg .textarea {
    width: fit-content;
    padding: 30px 45px 27px;
    background-color: rgba(24, 45, 95, .88);
}
.sectionBnr.bnr030 .container a .bg .textarea .copy {
    color: #fff;
    font-size: 2.8rem;
    font-weight: bold;
    text-align: center;
    margin: 0;
}
.sectionBnr.bnr030 .container a .bg .textarea .sub_text {
    font-size: 1.8rem;
    color: #fff;
    text-align: center;
    margin: 25px 0 0;
}
@media(max-width: 767px) {
    .sectionBnr.bnr030 .container a .bg {
        background:url(../images/top/bnr030_bg_bnr_sp.jpg) center no-repeat;
        background-size:cover;
        height: 570px;
        padding: 0 25px;
    }
    .sectionBnr.bnr030 .container a .bg .textarea {
        width: fit-content;
        padding: 20px 20px 15px;
        background-color: rgba(24, 45, 95, .88);
    }
    .sectionBnr.bnr030 .container a .bg .textarea .copy {
        position: unset;
        font-size: calc(20 / 390* 100vw);
        margin: 0;
    }
    .sectionBnr.bnr030 .container a .bg .textarea .sub_text {
        font-size: calc(16 / 390* 100vw);
    }
}
/*# sourceMappingURL=top.css.map */