@charset "UTF-8";
html {
    visibility: hidden
}
html.wf-active, html.loading-delay {
    visibility: visible
}
body {
    overflow-x: clip !important
}
[data-for=pc] {
    display: block
}
[data-for=sp] {
    display: none
}
@media screen and (max-width: 743px) {
    [data-for=pc] {
        display: none
    }
    [data-for=sp] {
        display: block
    }
}
.main-head {
    display: none
}
.l-wrapper {
    max-width: 1200px;
    margin-inline: auto;
    padding: 80px 20px 0;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    line-height: 1.62;
    color: #494949;
    box-sizing: content-box
}
.l-wrapper a {
    color: #D5971E
}
.l-wrapper a, .l-wrapper button {
    transition: .3s all ease
}
.l-wrapper a:hover, .l-wrapper button:hover {
    opacity: .7
}
@media screen and (max-width: 743px) {
    .l-wrapper {
        padding-top: 60px
    }
}
.l-header {
    width: 100%;
    height: 80px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    box-shadow: 0 0 2px #ccc;
    background: #fff
}
.l-header__inner {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-position: center center;
    background-size: cover;
    width: calc(100% - 40px);
    height: 80px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between
}
@media screen and (max-width: 743px) {
    .l-header {
        transition: .3s all ease
    }
    .l-header.is-active {
        height: 60px
    }
    .l-header.is-active .l-header__inner {
        height: 60px
    }
    .l-header.is-active .m-headerLogo__powered {
        position: absolute;
        opacity: 0
    }
    .l-header__inner {
        transition: .3s all ease;
        align-items: flex-start
    }
}
@media screen and (max-width: 500px) {
    .l-header__inner {
        width: calc(100% - 8vw);
        padding: 0 4vw
    }
}
.m-headerLogo {
    display: flex
}
.m-headerLogo__name {
    height: 40px;
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    box-shadow: 3px 3px 0 #737373;
    border-radius: 5px;
    border: 1px solid #000
}
.m-headerLogo__nameItem1, .m-headerLogo__nameItem2 {
    padding: 0 15px;
    font-weight: 600;
    font-size: 18px;
    line-height: 1;
    letter-spacing: .05em;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center
}
.m-headerLogo__nameItem1 {
    color: #fff;
    background: #212121
}
.m-headerLogo__nameItem2 {
    color: #212121;
    background: #fff
}
.m-headerLogo__powered {
    height: 40px;
    margin: 0 0 0 10px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}
.m-headerLogo__poweredItem1 {
    font-weight: normal;
    font-size: 12px;
    line-height: 1;
    color: #494949
}
/*ヘッダーエリアのロゴ変更でコメントアウト（2024/6/下旬）*/
/*.m-headerLogo__poweredItem2 {
    width: 165px;
    margin: 0 0 0 8px
}*/
/*ヘッダーエリアのロゴ変更で上記を変更（2024/6/下旬）*/
.m-headerLogo__poweredItem2 {
    width: 180px;
    margin: 0 0 0 8px;
    font-size: 12px;
}
.m-headerLogo__poweredItem2 img {
    vertical-align: bottom
}
/*ヘッダーエリアのロゴ変更で追加（2024/6/下旬）*/
.m-headerLogo__img {
    width: 260px !important;
}
.m-headerNav {
    display: flex;
    flex-wrap: nowrap;
    align-items: center
}
.m-headerNav.is-active .m-headerMenu__btn::before {
    margin: -1px 0 0;
    transform: rotate(-45deg)
}
.m-headerNav.is-active .m-headerMenu__list {
    margin-top: -19px
}
.m-headerMenu {
    display: flex;
    flex-wrap: nowrap;
    align-items: center
}
.m-headerMenu__inner {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    order: 2
}
.m-headerMenu__pc.is-active .m-headerMenu__btn::before, .m-headerMenu__item.is-active .m-headerMenu__btn::before {
    margin: -1px 0 0;
    transform: rotate(-45deg)
}
.m-headerMenu__pc.is-active .m-headerMenu__list, .m-headerMenu__item.is-active .m-headerMenu__list {
    margin-top: -19px
}
.m-headerMenu__btn {
    width: 162px;
    height: 40px;
    margin: -20px 0 0;
    padding: 0;
    font-weight: normal;
    font-size: 14px;
    color: #212121;
    letter-spacing: 0;
    position: absolute;
    top: 50%;
    right: 202px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    order: 2;
    border-radius: 20px;
    border: 1px solid #d6d6d6;
    background: #fff
}
.m-headerMenu__btn::before {
    width: 4px;
    height: 4px;
    margin: -4px 0 0;
    transition: .3s all ease;
    transform: rotate(135deg);
    position: absolute;
    top: 50%;
    right: 20px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    content: ""
}
.m-headerMenu__btn:hover {
    opacity: 1
}
.m-headerMenu__list {
    width: 255px;
    margin: -19px 0 0;
    padding: 20px;
    position: absolute;
    top: 100%;
    right: 70px;
    display: none;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .1);
    background: #fff
}
.m-headerMenu__item {
    margin: 10px 0 0
}
.m-headerMenu__item:first-child {
    margin-top: 0
}
.m-headerMenu__item[data-type=btn] a, .m-headerMenu__item[data-type=link] a {
    font-size: 14px;
    line-height: 1;
    color: inherit;
    display: block;
    position: relative
}
.m-headerMenu__item[data-type=btn] a {
    width: 100%;
    height: 40px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    border: 1px solid #d6d6d6;
    border-radius: 20px
}
.m-headerMenu__item[data-type=link] {
    margin: 20px 0 0
}
.m-headerMenu__item[data-type=link] a::before {
    width: 4px;
    height: 4px;
    margin: -2px 0 0;
    transition: .3s all ease;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 12px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    content: ""
}
.m-headerCv {
    width: 172px;
    height: 40px;
    margin: 0 0 0 175px;
    font-weight: normal;
    font-size: 14px;
    color: #fff !important;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    order: 3;
    box-sizing: border-box;
    border: 2px solid #D5971E;
    border-radius: 20px;
    background: #D5971E
}
.m-headerCv:hover {
    opacity: 1;
    color: #D5971E !important;
    background: #fff
}
.m-headerInquiry {
    margin: 0 18px 0 0;
    order: 1
}
.m-headerInquiry__ttl {
    display: none
}
.m-headerInquiry__tel {
    padding: 0 0 0 17px;
    font-style: normal;
    font-weight: bold;
    font-size: 20px;
    color: #212121 !important;
    line-height: 1;
    letter-spacing: .05em;
    pointer-events: none;
    display: block;
    position: relative
}
.m-headerInquiry__tel::before {
    width: 12px;
    height: 14px;
    margin: -6px 0 0;
    position: absolute;
    top: 50%;
    left: 0;
    background-image: url(../img/icn_tel.png);
    background-size: 12px 14px;
    content: ""
}
.m-headerInquiry__txt {
    margin: 6px 0 0;
    font-style: normal;
    font-size: 10px;
    line-height: 1;
    display: block
}
@media screen and (min-width: 1161px) {
    .m-headerMenu {
        display: flex !important;
        opacity: 1 !important
    }
    .m-headerMenu__btn[data-type=sp] {
        display: none
    }
}
@media screen and (max-width: 1160px) {
    .m-headerNav.is-active .m-headerMenu__list {
        margin-top: -10px
    }
    .m-headerMenu {
        width: 255px;
        padding: 20px;
        display: block;
        position: absolute;
        top: 60px;
        right: 20px;
        box-sizing: border-box;
        box-shadow: 0 2px 10px rgba(0, 0, 0, .1);
        background: #fff;
        display: none
    }
    .m-headerMenu__inner {
        margin: 15px 0 0;
        flex-direction: column
    }
    .m-headerMenu__item {
        width: 100%;
        order: 2
    }
    .m-headerMenu__pc {
        padding: 50px 0 0;
        position: relative
    }
    .m-headerMenu__btn {
        margin: 0;
        padding-right: 10px;
        color: #fff;
        position: fixed;
        top: 19px;
        right: 20px;
        border: none;
        background: #D5971E
    }
    .m-headerMenu__btn::before {
        border-top-color: #fff;
        border-right-color: #fff
    }
    .m-headerMenu__btn [data-for=pc] {
        display: none
    }
    .m-headerMenu__btn [data-for=sp] {
        display: block
    }
    .m-headerMenu__list {
        width: auto;
        margin: -10px 0 0;
        padding: 0;
        position: static;
        display: block;
        box-shadow: none;
        background: rgba(0, 0, 0, 0)
    }
    .m-headerMenu__item[data-type=link] {
        margin-top: 15px
    }
    .m-headerMenu__item[data-type=link] a {
        padding: 15px;
        border-top: 2px solid #d6d6d6;
        border-bottom: 2px solid #d6d6d6
    }
    .m-headerMenu__item .m-headerMenu__list {
        display: block !important;
        opacity: 1 !important
    }
    .m-headerCv {
        width: calc(100% - 40px);
        margin: 0;
        order: 1;
        position: absolute;
        top: 20px;
        left: 20px
    }
    .m-headerInquiry {
        margin: 0;
        order: 3
    }
}
@media screen and (max-width: 743px) {
    /*ヘッダーエリアのロゴ変更で追加（2024/6/下旬）*/
    .m-headerLogo__img {
        width: 180px !important;
        margin-top: 20px;
        }
    .m-headerLogo {
        display: block
    }
    .m-headerLogo__name {
        height: 30px;
        margin: 12px 0 0
    }
    .m-headerLogo__nameItem1, .m-headerLogo__nameItem2 {
        padding: 0 10px;
        font-size: 13px
    }
    .m-headerLogo__powered {
        height: auto;
        line-height: 1;
        justify-content: center
    }
    .m-headerMenu {
        width: 100%;
        padding-top: 10px;
        top: 50px;
        right: 0;
        box-shadow: 0 10px 10px rgba(0, 0, 0, .1)
    }
    .m-headerMenu__btn {
        display: none
    }
    .m-headerMenu__btn[data-type=sp] {
        width: 145px;
        height: 35px;
        padding-right: 10px;
        font-size: 12px;
        color: #fff;
        display: block;
        top: 12px;
        border: none;
        background: #D5971E
    }
    .m-headerMenu__btn[data-type=sp]::before {
        border-top-color: #fff;
        border-right-color: #fff
    }
    .m-headerMenu__btn[data-type=sp]:hover {
        opacity: 1
    }
    .m-headerCv {
        top: 10px
    }
    .m-headerInquiry {
        text-align: center
    }
    .m-headerInquiry__ttl {
        font-style: normal;
        font-weight: 16px;
        font-weight: bold;
        display: block
    }
    .m-headerInquiry__tel {
        margin: 5px auto 0;
        font-size: 32px;
        display: table;
        pointer-events: inherit
    }
    .m-headerInquiry__tel::before {
        transform: scale(1.9);
        left: -7px
    }
    .m-headerInquiry__txt {
        font-size: 11px;
        line-height: 1.3
    }
}
@media screen and (max-width: 500px) {
    /*ヘッダーエリアのロゴ変更で追加*/
    .m-headerLogo__img {
        width: 180px !important;
        margin-top: 20px;
        }

    .m-headerLogo__nameItem1, .m-headerLogo__nameItem2 {
        padding: 0 5px;
        font-size: 10px
    }
      /*下記の件で一旦コメントアウト（2024/6/下旬）*/
     /*.m-headerLogo__poweredItem2 {
        width: 105px
    }*/

    /*ヘッダーエリアのロゴ変更で調整（2024/6/下旬）*/
    .m-headerLogo__poweredItem2 {
        width: 160px;
        font-size: 10px;
    }

    .m-headerMenu__btn {
        display: none
    }
    .m-headerMenu__btn[data-type=sp] {
        width: 125px;
        padding-right: 15px;
        font-size: 11px
    }
}
@media screen and (max-width: 374px) {
    .m-headerMenu__btn[data-type=sp] {
        width: 105px;
        padding-right: 10px;
        font-size: 10px
    }
    .m-headerMenu__btn[data-type=sp]::before {
        right: 10px
    }
}
.l-footer {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-position: center center;
    background-size: cover;
    padding-top: 55px;
    padding-bottom: 70px;
    font-size: 14px;
    color: #616161;
    line-height: 1.9;
    background-color: #f7f7f7
}
@media screen and (max-width: 743px) {
    .l-footer {
        padding-top: 80px;
        padding-bottom: 50px
    }
}
.m-footerHdg {
    font-weight: bold;
    line-height: 1;
    display: block
}
.m-footerHdg[data-level="2"] {
    font-size: 18px;
    color: #000;
    letter-spacing: .1em;
    text-align: center
}
.m-footerHdg[data-level="2"]+* {
    margin-top: 33px
}
.m-footerHdg[data-level="3"] {
    margin: 30px 0 0;
    font-size: 14px;
    color: #616161;
    letter-spacing: .05em
}
.m-footerHdg[data-level="3"]+* {
    margin-top: 10px
}
.m-footerList>li {
    margin: 8px 0 0;
    padding: 0 0 0 20px;
    position: relative
}
.m-footerList>li:first-child {
    margin-top: 0
}
.m-footerList>li::before {
    width: 7px;
    height: 7px;
    position: absolute;
    top: 11px;
    left: 4px;
    border-radius: 50%;
    background: #616161;
    content: ""
}
.m-footerList[data-type=notes]>li {
    margin: 0;
    padding: 0 0 0 1em;
    position: relative
}
.m-footerList[data-type=notes]>li::before {
    width: auto;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 0;
    background: none;
    content: "※"
}
.m-hero {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-position: center center;
    background-size: cover
}
.m-hero__inner {
    position: relative
}
.m-heroImg {
    margin: 0 -200px
}
.m-heroImg__item {
    display: none
}
.m-heroImg__item img {
    vertical-align: top
}
.m-heroList {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    position: absolute;
    bottom: 100px;
    left: 20%;
}
.m-heroList__item {
    width: 100%;
    min-width: 400px;
    max-width: 400px;
    margin: 0 0 0 10px;
    transition: .3s all ease;
    box-shadow: 0 0 15px rgba(129, 129, 129, .2);
    box-sizing: border-box;
    border-radius: 30px;
    /*border: 1px solid #fff;*/
    background: #fff;
	text-align: center;
}
.m-heroList__item:first-child {
    margin-left: 0
}
.m-heroList__item img {
    width: 100%
}
.m-heroList__item:hover {
    border-color: #D5971E
}
.m-heroList__item:hover .m-heroList__btn {
    opacity: 1
}
.m-heroList__item:hover .m-heroList__btn[data-type=cv] {
    color: #fff;
    background: #D5971E
}
.m-heroList__item:hover .m-heroList__btn[data-type=dl] {
    color: #D5971E;
    background: #fff
}
.m-heroList__btn {
    width: 100%;
    height: 80px;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.85;
    text-decoration: none;
    overflow: hidden;
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
    box-sizing: border-box
}
.m-heroList__btn[data-type=cv] {
    color: #212121;
    background: #fff
}
.m-heroList__btn[data-type=dl] {
    color: #fff;
    background: #D5971E;
	border: 3px solid #fff;
	display: block;
	box-shadow: 5px 5px 5px #161616;
}
.m-hero[data-type=a] {
    background-color: #fff;
}
.m-hero[data-type=a] .m-heroImg__item[data-type=a] {
    display: block
}
.m-hero[data-type=b] {
    background-image: url(../img/bg_main.png);
    background-repeat: repeat-x
}
.m-hero[data-type=b] .m-heroImg__item[data-type=b] {
    display: block
}
@media screen and (max-width: 1240px) {
    .m-heroImg {
        margin: 0 -9.274vw
    }
    .m-heroList {
        bottom: 3.226vw;
        right: 1.613vw
    }
    .m-heroList__item {
        min-width: 22.581vw;
        max-width: 22.581vw;
        margin: 0 0 0 .806vw;
        box-shadow: 0 0 1.21vw rgba(129, 129, 129, .2);
        border-radius: 2.419vw
    }
    .m-heroList__btn {
        height: 4.839vw;
        font-size: 1.29vw;
        border-radius: 2.419vw
    }
}
@media screen and (max-width: 743px) {
    .m-heroImg {
        margin: 0 -2.608vw
    }
    .m-heroList {
        right: 0;
        left: 0;
        bottom: 15vw;
    }
    .m-heroList__item {
        min-width: inherit;
        max-width: inherit;
        margin: 2.608vw 0 0;
        border-radius: 47px
    }
    .m-heroList__btn {
        width: 100%;
        height: 47px;
        font-size: 14px;
        border-radius: 47px
    }
}
.m-news {
    padding: 40px 0
}
.m-news__inner {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    flex-wrap: nowrap
}
.m-newsHdg {
    min-width: 136px;
    max-width: 136px;
    height: 34px;
    font-size: 14px;
    color: #fff;
    line-height: 1;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    border-radius: 17px;
    background: #0D3778;
}
.m-newsList {
    margin: 0 0 0 65px
}
.m-newsList li {
    margin: 10px 0 0
}
.m-newsList li:first-child {
    margin-top: 0
}
.m-newsList a {
    text-decoration: underline
}
.m-newsList a:hover {
    text-decoration: none
}
@media screen and (max-width: 960px) {
    .m-newsList {
        margin-left: 30px
    }
}
@media screen and (max-width: 743px) {
    .m-news {
        padding: 30px 0
    }
    .m-news__inner {
        display: block
    }
    .m-newsHdg {
        min-width: 121px;
        max-width: 121px
    }
    .m-newsList {
        margin: 15px 0 0
    }
}
.m-intro {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-position: center center;
    background-size: cover;
    overflow: hidden;
    background-color: #f7f7f7;
	margin-bottom: 5vw;
}
.m-intro__inner {
    max-width: 1000px;
    margin: 0 auto;
    padding: 80px 0 80px 0;
}


.m-intro2 {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-position: center center;
    background-size: cover;
    overflow: hidden;
    background-color: #f7f7f7
}
.m-intro__inner2 {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 0 75px 0;
}



.m-introBook, .m-introMovie {
    position: relative
}
.m-introBook__hdg, .m-introMovie__hdg {
    font-weight: bold;
    font-size: 160px;
    line-height: 1;
    color: #fff;
    position: absolute;
    top: -90px;
    z-index: 0
}
.m-introBook {
    display: block
}
.m-introBook:hover .m-introBook__boxBody__btn {
    opacity: 1;
    background: #fff
}
.m-introBook:hover .m-introBook__boxBody__btn span {
    color: #0b578f
}
.m-introBook__hdg {
    left: -230px;
    top: -105px
}
.m-introBook__box, .m-introBook__txt {
    position: relative;
    z-index: 1
}
.m-introBook__box {
    min-height: 248px;
    padding: 40px 0 40px 240px;
    display: block;
    flex-wrap: nowrap;
    align-items: center;
    box-sizing: border-box;
    box-shadow: 0 0 20px rgba(181, 181, 181, .1);
    background: #fff
}
.m-introBook__box::before {
    width: calc(100% - 18px);
    height: calc(100% - 18px);
    position: absolute;
    top: 9px;
    left: 9px;
    z-index: 0;
    box-sizing: border-box;
    border: 1px solid #f2db96;
    content: ""
}
.m-introBook__boxImg, .m-introBook__boxHead, .m-introBook__boxBody {
    position: relative;
    z-index: 1
}
.m-introBook__boxImg {
    max-width: 240px;
    position: absolute;
    top: -15px;
    left: 40px;
    box-shadow: 4px 0 20px rgba(129, 129, 129, .1)
}
.m-introBook__boxImg img {
    vertical-align: top
}
.m-introBook__boxHead {
    white-space: nowrap;
	text-align: center;
	margin: 1vw 0;
    font-size: 1.75vw;
}
.m-introBook__boxHead__sub {
    height: 38px;
    padding: 0 17px;
    font-weight: normal;
    font-size: 18px;
    color: #fff;
    line-height: 1;
    letter-spacing: .2em;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    background: #D5971E
}
.m-introBook__boxHead__main {
    /* margin: 15px 0 0; */
    font-weight: bold;
    font-size: 40px;
    line-height: 1;
    display: block;
	text-align: center;
	margin: 2rem 0 2rem 0;
}
.m-introBook__boxHead__main>span {
    margin: 0 0 10px;
    font-weight: bold;
    font-size: 26px;
    line-height: 1;
	letter-spacing: 0.1rem;
    /*display: block;*/
}
.m-introBook__boxHead__main>span span {
    color: #D5971E
}
.m-introBook__boxHead__main br {
    display: none
}
.m-introBook__boxBody {
    min-width: 400px;
    max-width: 400px;
    /*margin: 0 0 0 30px;*/
	margin: 0 auto;
}
.m-introBook__boxBody__hdg {
    width: 410px;
    height: 45px;
    margin: 0 auto;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: -0.05em;
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-shadow: 3px 3px 0 #444;
    border-radius: 15px;
    border: 3px solid #444;
    background: #fff
}
.m-introBook__boxBody__hdg::before, .m-introBook__boxBody__hdg::after {
    width: 0;
    height: 0;
    position: absolute;
    left: 50%;
    border-style: solid;
    border-bottom: 0;
    content: ""
}
.m-introBook__boxBody__hdg::before {
    margin: 0 0 0 -245px;
    bottom: 0;
    z-index: 1;
    border-right: 0 solid rgba(0, 0, 0, 0);
    border-left: 46px solid rgba(0, 0, 0, 0);
    border-top: 24px solid #fff;
    border-bottom: 10px solid rgba(0, 0, 0, 0);
}
.m-introBook__boxBody__hdg::after {
    margin: 0 0 -2px -258px;
    bottom: 0;
    z-index: 0;
    border-right: 0 solid rgba(0, 0, 0, 0);
    border-left: 53px solid rgba(0, 0, 0, 0);
    border-top: 27px solid #444;
    border-bottom: 12px solid rgba(0, 0, 0, 0);
}
.m-introBook__boxBody__btn {
    width: 100%;
    height: 62px;
    font-weight: normal;
    font-size: 20px;
    line-height: 1;
    transition: .3s all ease;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border-radius: 30px;
    border: 2px solid #0b578f;
    background: #0b578f
}
.m-introBook__boxBody__btn span {
    color: #fff;
    transition: .3s all ease
}
.m-introBook__txt {
    margin: 15px 0 0;
    color: initial;
	text-align: right;
	font-size: 12px;
}
/*.m-introBook__txt .m-introBook__txt_obj{
	border-bottom: 1px solid #191970;
	color: #000;
}*/
.m-introMovie {
    margin: 120px 0 0
}
.m-introMovie__hdg {
    right: -230px
}
.m-introMovie__box {
    padding: 20px;
    position: relative;
    z-index: 1;
    box-shadow: 0 0 20px rgba(181, 181, 181, .1);
    background: #fff
}
.m-introMovie__video {
    height: 0;
    padding: 0 0 56.25%;
    position: relative;
    overflow: hidden
}
.m-introMovie__video iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}
.m-introMovie__caption {
    margin: 20px 0 0
}
@media screen and (max-width: 1040px) {
    .m-intro__inner {
        padding: 7.212vw 0
    }
	 .m-intro__inner2 {
        padding: 7.212vw 0
    }
    .m-introBook__hdg, .m-introMovie__hdg {
        font-size: 15.385vw;
        top: -8.654vw
    }
    .m-introBook__hdg {
        top: -10.096vw;
        left: -20px
    }
    .m-introBook__box {
        min-height: 23.846vw;
        padding: 1.923vw 3.558vw 1.923vw 23.077vw;
        box-shadow: 0 0 1.923vw rgba(181, 181, 181, .1);
        background: #fff
    }
    .m-introBook__box::before {
        width: calc(100% - 1.731vw);
        height: calc(100% - 1.731vw);
        top: .865vw;
        left: .865vw
    }
    .m-introBook__boxImg {
        max-width: 16.346vw;
        top: -1.442vw;
        left: 3.846vw;
        box-shadow: .385vw 0 1.923vw rgba(129, 129, 129, .1)
    }
    .m-introBook__boxHead__sub {
        height: 3.654vw;
        padding: 0 1.635vw;
        font-size: 1.731vw
    }
    .m-introBook__boxHead__main {
        margin: 1.442vw 0 0;
        font-size: 4.327vw
    }
    .m-introBook__boxHead__main>span {
        margin: 0 0 .962vw;
        font-size: 2.5vw
    }
    .m-introBook__boxBody {
        min-width: 31.731vw;
        max-width: 31.731vw;
        margin: 0 0 0 2.885vw
    }
    .m-introBook__boxBody__hdg {
        height: 5.385vw;
        margin: 0 0 2.885vw;
        font-size: 1.731vw;
        box-shadow: .288vw .288vw 0 #444;
        border-radius: 1.442vw;
        border: .288vw solid #444
    }
    .m-introBook__boxBody__hdg::before {
        margin: 0 0 0 -1.346vw;
        bottom: -1.827vw;
        border-right: .865vw solid rgba(0, 0, 0, 0);
        border-left: .865vw solid rgba(0, 0, 0, 0);
        border-top: 1.923vw solid #fff
    }
    .m-introBook__boxBody__hdg::after {
        margin: 0 0 0 -257px;
		bottom: 0;
		z-index: 0;
		border-right: 0 solid rgba(0, 0, 0, 0);
		border-left: 55px solid rgba(0, 0, 0, 0);
		border-top: 25px solid #444;
    }
    .m-introBook__boxBody__btn {
        height: 5.962vw;
        font-size: 1.923vw;
        border-radius: 2.885vw
    }
    .m-introMovie {
        margin: 11.538vw 0 0
    }
    .m-introMovie__hdg {
        right: -20px
    }
}
@media screen and (max-width: 743px) {
    .m-intro__inner {
        padding: 70px 0 50px
    }
	.m-intro__inner2 {
        /*padding: 70px 0 50px*/
    }
    .m-introBook__hdg, .m-introMovie__hdg {
        font-size: 70px;
        top: -60px
    }
    .m-introBook__hdg {
        top: -80px;
        left: -20px
    }
    .m-introBook__box, .m-introBook__txt {
        position: relative;
        z-index: 1
    }
    .m-introBook__box {
        min-height: inherit;
        padding: 0 0 100px 0;
        align-items: flex-start;
		display: block;
    }
    .m-introBook__boxImg {
         /*min-width: 50vw;
        max-width: 41vw;
        max-width: inherit;
        margin: -6.519vw 0 0;*/
        min-width: 50vw;
        top: -1vw;
        left: 0;
        position: relative;
        margin: auto;
    }
    .m-introBook__boxImg img {
        width: 100%
    }
    .m-introBook__boxHead {
        width: 100%;
        margin: 0 0 0 1.304vw;
        white-space: normal;
		font-size: 15px;
    }
    .m-introBook__boxHead__sub {
        width: 100%;
        height: 11.734vw;
        padding: 0;
        font-weight: bold;
        font-size: 4.694vw;
        letter-spacing: 0;
        color: #212121;
        position: relative;
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: center;
        box-shadow: .782vw .782vw 0 #444;
        box-sizing: border-box;
        border-radius: 1.956vw;
        border: .782vw solid #444;
        background: #fff
    }
    .m-introBook__boxHead__sub::before, .m-introBook__boxHead__sub::after {
        width: 0;
        height: 0;
        position: absolute;
        left: 50%;
        border-style: solid;
        border-bottom: 0;
        content: ""
    }
    .m-introBook__boxHead__sub::before {
        margin: 0 0 0 -2.608vw;
        bottom: -3.711vw;
        z-index: 1;
        border-right: 2.608vw solid rgba(0, 0, 0, 0);
        border-left: 2.608vw solid rgba(0, 0, 0, 0);
        border-top: 3.911vw solid #fff
    }
    .m-introBook__boxHead__sub::after {
        margin: 0 0 0 -2.477vw;
        bottom: -5.337vw;
        z-index: 0;
        border-right: 2.868vw solid rgba(0, 0, 0, 0);
        border-left: 2.868vw solid rgba(0, 0, 0, 0);
        border-top: 4.172vw solid #444
    }
    .m-introBook__boxHead__main {
        margin: 5.867vw auto 0;
        font-size: 7vw;
        /*letter-spacing: .1em;*/
        white-space: nowrap;
        line-height: 1.2;
        text-align: center;
        display: table;
		letter-spacing: 0;
    }
    .m-introBook__boxHead__main>span {
        margin: 0 0 1.956vw;
        font-size: 5.476vw;
        letter-spacing: 0;
    }
    .m-introBook__boxHead__main br {
        display: block;
    }
    .m-introBook__boxBody {
        min-width: inherit;
        max-width: inherit;
        margin: 0;
        position: static
    }
    .m-introBook__boxBody__hdg {
        display: none
    }
    .m-introBook__boxBody__btn {
        width: calc(100% - 54px);
        height: 49px;
        margin: 0 27px;
        font-size: 18px;
        position: absolute;
        left: 0;
        bottom: 30px;
        border-radius: 50px
    }
    .m-introBook__txt {
        margin: 15px 0 0;
		text-align: left;
    }
    .m-introMovie {
        margin: 80px 0 0
    }
    .m-introMovie__hdg {
        right: -20px
    }
    .m-introMovie__box {
        padding: 0;
        box-shadow: none;
        background: none
    }
    .m-introMovie__caption {
        margin-top: 15px
    }
}
.m-theme {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
	padding-bottom: 5vw;
    background-position: center center;
    background-size: cover;
    background-color: #F0F6FF
}
.m-theme__inner {
    padding: 80px 0 40px 0;
}
.m-themeHdg[data-level="2"], .m-themeHdg[data-level="3"] {
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: .1em;
    text-align: center
}
.m-themeHdg[data-level="2"] br, .m-themeHdg[data-level="3"] br {
    display: none
}
.m-themeHdg[data-level="2"] {
    height: 88px;
    max-width: 1000px;
    margin: 0 auto;
    font-size: 36px;
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-shadow: 3px 3px 0 #444;
    border-radius: 15px;
    border: 4px solid #444;
    background: #fff
}
.m-themeHdg[data-level="2"] span {
    padding: 0 3px;
    font-size: 54px;
    color: #D5971E;
    position: relative;
    top: -2px
}
.m-themeHdg[data-level="2"]::before, .m-themeHdg[data-level="2"]::after {
    width: 0;
    height: 0;
    position: absolute;
    border-style: solid;
    content: ""
}
.m-themeHdg[data-level="2"]::before {
    bottom: -30px;
    left: 280px;
    z-index: 1;
    border-color: rgba(0, 0, 0, 0) #fff rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    border-width: 0px 32px 32px 0px
}
.m-themeHdg[data-level="2"]::after {
    bottom: -38px;
    left: 276px;
    z-index: 0;
    border-color: rgba(0, 0, 0, 0) #444 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    border-width: 0px 40px 38px 0px
}
.m-themeHdg[data-level="3"] {
    margin: 50px 0 0;
    font-size: 32px
}
.m-themeList {
    margin: 50px 0 0 -38px;
    display: flex;
    flex-wrap: wrap
}
.m-themeList__item {
    width: 33.3333%;
    /*margin: 30px 0 0;*/
    padding: 0 0 0 38px;
    box-sizing: border-box
}
.m-themeList__item:nth-child(-n+2) {
    margin-top: 0
}
.m-themeList__item:last-child {
    width: 100%;
    margin-top: 95px;
    position: relative;
}
.m-themeList__item:last-child::before {
    width: 0;
    height: 0;
    margin: 0 0 0 -32px;
    position: absolute;
    top: -64px;
    left: 50%;
    border-style: solid;
    border-right: 32px solid rgba(0, 0, 0, 0);
    border-left: 32px solid rgba(0, 0, 0, 0);
    border-top: 31px solid #0b578f;
    border-bottom: 0;
    content: ""
}
.m-themeList__item img {
    width: 100%
}
.m-themeList__notes {
    margin: 4px 0 0 auto;
    padding: 0 0 0 1em;
    font-size: 12px;
    color: #616161;
    position: relative;
    display: table
}
.m-themeList__notes::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※"
}
@media screen and (max-width: 743px) {
    .m-theme__inner {
        padding: 50px 0
    }
    .m-themeHdg[data-level="2"] br, .m-themeHdg[data-level="3"] br {
        display: block
    }
    .m-themeHdg[data-level="2"] {
        height: auto;
        padding: 15px 0;
        font-size: 20px;
        line-height: 1;
        display: block
    }
    .m-themeHdg[data-level="2"] span {
        padding: 0;
        font-size: 35px;
        top: 1px
    }
    .m-themeHdg[data-level="2"]::before {
        bottom: -27px;
        left: 60px;
        border-width: 0px 30px 28px 0px
    }
    .m-themeHdg[data-level="2"]::after {
        bottom: -36px;
        left: 58px;
        border-width: 0px 35px 34px 0px
    }
    .m-themeHdg[data-level="3"] {
        margin-top: 40px;
        font-size: 24px
    }
    .m-themeList {
        margin: 30px 0 0;
        display: block
    }
    .m-themeList__item {
        width: 100%;
        margin-top: 20px;
        padding: 0
    }
    .m-themeList__item:nth-child(-n+2) {
        margin-top: 20px
    }
    .m-themeList__item:last-child {
        margin-top: 50px
    }
    .m-themeList__item:last-child::before {
        margin-left: -21px;
        top: -33px;
        border-right-width: 21px;
        border-left-width: 21px;
        border-top-width: 20px
    }
    .m-themeList__notes {
        margin-top: 0;
        font-size: 11px
    }
}
.m-about__inner {
    max-width: 770px;
    margin: 0 auto;
    padding: 50px 0 80px
}

.m-aboutHdg {
    width: 100%;
    font-weight: bold;
    font-size: 34px;
    line-height: 1;
    letter-spacing: .05em;
    display: block;
    position: relative
}
.m-aboutHdg::before {
    width: 100%;
    font-weight: bold;
    font-size: 180px;
    color: #F0F6FF;
    white-space: nowrap;
    line-height: 1;
    text-align: center;
    opacity: .5;
    display: block;
    position: absolute;
    top: -80px;
    left: 0;
    z-index: 0;
    content: "ABOUT"
}
.m-aboutHdg span {
    margin: 0 auto;
    padding: 0 65px;
    display: table;
    position: relative;
    z-index: 1
}
.m-aboutHdg span::before, .m-aboutHdg span::after {
    width: 14px;
    height: 64px;
    margin: -32px 0 0;
    position: absolute;
    top: 50%;
    background-image: url(../img/fig_hdg.png);
    background-size: 14px 64px;
    content: ""
}
.m-aboutHdg span::before {
    left: 0
}
.m-aboutHdg span::after {
    right: 0;
    transform: rotate(180deg)
}
.m-aboutLead {
    margin: 80px 0 0;
    font-weight: bold;
    font-size: 26px;
    line-height: 1.4;
    text-align: center
}

.m-aboutLead2 {
    margin: 80px 0 -50px 0;
    font-weight: bold;
    font-size: 26px;
    line-height: 1.4;
    text-align: center;
	letter-spacing: 0.15vw;
}
.m-aboutLogo {
    max-width: 270px;
    margin: 50px auto 30px;
    display: block
}
.m-aboutLogo img {
    width: 100%
}
.m-aboutTxt {
    margin: 30px 0 0;
    font-size: 18px;
    text-align: center
}
.m-aboutTxt strong {
    color: #0b578f
}
.m-aboutNotes {
    margin: 50px 0 0
}
.m-aboutNotes li {
    padding: 0 0 0 1.2em;
    font-size: 12px;
    position: relative
}
.m-aboutNotes li::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※"
}
.m-aboutNotes a {
    text-decoration: underline
}
.m-aboutNotes a:hover {
    text-decoration: none
}
.m-aboutFigure {
    margin: 45px 0 0
}
.m-aboutFigure__img img {
    width: 100%
}
.m-aboutFigure__notes {
    margin: 10px 0 0 auto;
    padding: 0 0 0 1.2em;
    font-size: 12px;
    display: table;
    position: relative
}
.m-aboutFigure__notes::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※"
}
.m-aboutBox {
    margin: 40px 0 0;
    padding: 25px 20px;
    border: 1px solid #D5971E
}
.m-aboutBox__hdg {
    padding: 0 0 0 25px;
    font-weight: bold;
    font-size: 16px;
    color: #D5971E;
    line-height: 1;
    position: relative
}
.m-aboutBox__hdg::before {
    width: 25px;
    height: 25px;
    margin: -13px 0 0;
    position: absolute;
    top: 50%;
    left: 0;
    background-image: url(../img/icn_sprite04.png);
    background-position: -57px -20px;
    background-size: 2000px 2000px;
    content: ""
}
.m-aboutBox__txt {
    margin: 15px 0 0
}
@media screen and (max-width: 743px) {
    .m-about__inner {
        padding: 100px 0 50px
    }
    .m-aboutHdg {
        font-size: 23px
    }
    .m-aboutHdg::before {
        font-size: 120px;
        top: -50px
    }
    .m-aboutHdg span {
        padding: 0 12px
    }
    .m-aboutHdg span::before, .m-aboutHdg span::after {
        width: 8px;
        height: 37px;
        margin-top: -18px;
        background-size: 8px 37px
    }
    .m-aboutLead {
        margin-top: 70px;
        font-size: 20px;
        line-height: 1.5
    }
	.m-aboutLead2 {
        margin-top: 70px;
		margin-bottom: 50px;
        font-size: 18px;
        line-height: 1.5
    }
    .m-aboutLogo {
        max-width: 160px;
        margin: 40px auto 20px
    }
    .m-aboutNotes {
        margin-top: 30px
    }
    .m-aboutFigure {
        margin: 40px 0 0
    }
    .m-aboutBox__hdg {
        padding-left: 20px
    }
    .m-aboutBox__hdg::before {
        transform: scale(0.8);
        left: -5px
    }
}
@media screen and (max-width: 500px) {
    .m-about__inner {
        padding-top: 20vw
    }
    .m-aboutHdg {
        font-size: 20px
    }
    .m-aboutHdg::before {
        font-size: 24vw;
        top: -10vw
    }
    .m-aboutLead {
        margin-top: 14vw
    }
	.m-aboutLead2 {
        margin: 14vw 0 0 0
    }
}
.m-pickup {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-position: center center;
    background-size: cover;
    background-color: #F0F6FF
}
.m-pickup__inner {
    padding: 130px 0 80px
}
.m-pickupHdg {
    width: 100%;
    font-weight: bold;
    font-size: 34px;
    line-height: 1;
    letter-spacing: .05em;
    display: block;
    position: relative
}
.m-pickupHdg::before {
    width: 100%;
    font-weight: bold;
    font-size: 180px;
    color: #fff;
    white-space: nowrap;
    line-height: 1;
    text-align: center;
    opacity: .5;
    display: block;
    position: absolute;
    top: -80px;
    left: 0;
    z-index: 0;
    content: "PICK UP"
}
.m-pickupHdg span {
    margin: 0 auto;
    padding: 0 65px;
    display: table;
    position: relative;
    z-index: 1
}
.m-pickupHdg span::before, .m-pickupHdg span::after {
    width: 14px;
    height: 64px;
    margin: -32px 0 0;
    position: absolute;
    top: 50%;
    background-image: url(../img/fig_hdg.png);
    background-size: 14px 64px;
    content: ""
}
.m-pickupHdg span::before {
    left: 0
}
.m-pickupHdg span::after {
    right: 0;
    transform: rotate(180deg)
}
.m-pickupTxt {
    margin: 85px 0 0;
    font-size: 18px;
    color: #616161;
    text-align: center
}
.m-pickupMap {
    margin: 65px 0 0
}
.m-pickupMap__inner {
    position: relative
}
.m-pickupMap__img img {
    width: 100%
}
.m-pickupMap__hdg {
    font-weight: bold;
    font-size: 32px;
    line-height: 1.3;
    position: absolute;
    top: 55px;
    left: 50px
}
.m-pickupMap__hdg span {
    color: #D5971E
}
.m-pickupMap__txt {
    margin: 10px 0 0;
    color: #616161
}
.m-pickupMap__txt a {
    text-decoration: underline
}
.m-pickupMap__txt a:hover {
    text-decoration: none
}
.m-pickupYoutube {
    margin: 60px 0 0;
    padding: 40px 0 0;
    display: flex;
    flex-wrap: nowrap;
    border-top: 1px dotted #818181
}
.m-pickupYoutube__video {
    width: 100%;
    max-width: 535px;
    margin: 0 60px 0 0
}
.m-pickupYoutube__videoInner {
    height: 0;
    padding: 0 0 56.25%;
    position: relative;
    overflow: hidden
}
.m-pickupYoutube__videoInner iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}
.m-pickupYoutube__search {
    margin: 20px 0 0
}
.m-pickupYoutube__txt {
    margin: 20px 0 0;
    font-size: 16px;
    color: #494949
}
.m-pickupYoutube__txt a {
    text-decoration: underline
}
.m-pickupYoutube__txt a:hover {
    text-decoration: none
}
@media screen and (max-width: 1240px) {
    .m-pickupMap {
        margin: 65px 0 0
    }
    .m-pickupMap__hdg {
        font-size: 2.581vw;
        top: 4.435vw;
        left: 4.032vw
    }
    .m-pickupMap__txt {
        margin: .806vw 0 0
    }
}
@media screen and (max-width: 743px) {
    .m-pickup__inner {
        padding: 100px 0 50px
    }
    .m-pickupHdg {
        font-size: 23px
    }
    .m-pickupHdg::before {
        font-size: 110px;
        top: -50px
    }
    .m-pickupHdg span {
        padding: 0 12px
    }
    .m-pickupHdg span::before, .m-pickupHdg span::after {
        width: 8px;
        height: 37px;
        margin-top: -18px;
        background-size: 8px 37px
    }
    .m-pickupTxt {
        margin-top: 11vw
    }
    .m-pickupMap {
        margin: 40px 0 0
    }
    .m-pickupMap__hdg {
        font-size: 20px;
        top: 25px;
        left: 20px
    }
    .m-pickupMap__txt {
        margin-top: 15px
    }
    .m-pickupYoutube {
        margin-top: 30px;
        padding-top: 30px;
        display: block
    }
    .m-pickupYoutube__video {
        max-width: inherit;
        margin: 0
    }
    .m-pickupYoutube__body {
        margin: 30px 0 0
    }
    .m-pickupYoutube__hdg {
        text-align: center
    }
    .m-pickupYoutube__search {
        margin-top: 10px;
        text-align: center
    }
    .m-pickupYoutube__txt {
        margin-top: 10px
    }
}
@media screen and (max-width: 500px) {
    .m-pickup__inner {
        padding-top: 20vw
    }
    .m-pickupHdg {
        font-size: 20px
    }
    .m-pickupHdg::before {
        font-size: 22vw;
        top: -10vw
    }
    .m-pickupMap {
        margin: 8vw 0 0
    }
    .m-pickupMap__hdg {
        font-size: 4vw;
        top: 5vw;
        left: 4vw
    }
    .m-pickupMap__txt {
        margin-top: 3vw
    }
    .m-pickupYoutube {
        margin-top: 6vw;
        padding-top: 6vw
    }
    .m-pickupYoutube__body {
        margin: 6vw 0 0
    }
    .m-pickupYoutube__search {
        margin-top: 2vw
    }
    .m-pickupYoutube__txt {
        margin-top: 2vw
    }
}
.m-point__inner {
    padding: 130px 0 80px
}
.m-pointHdg {
    width: 100%;
    font-weight: bold;
    font-size: 34px;
    line-height: 1;
    letter-spacing: .05em;
    display: block;
    position: relative
}
.m-pointHdg::before {
    width: 100%;
    font-weight: bold;
    font-size: 180px;
    color: #F0F6FF;
    white-space: nowrap;
    line-height: 1;
    text-align: center;
    opacity: .5;
    display: block;
    position: absolute;
    top: -80px;
    left: 0;
    z-index: 0;
    content: "POINT"
}
.m-pointHdg>span {
    margin: 0 auto;
    padding: 0 65px;
    display: table;
    position: relative;
    z-index: 1
}
.m-pointHdg>span::before, .m-pointHdg>span::after {
    width: 14px;
    height: 64px;
    margin: -32px 0 0;
    position: absolute;
    top: 50%;
    background-image: url(../img/fig_hdg.png);
    background-size: 14px 64px;
    content: ""
}
.m-pointHdg>span::before {
    left: 0
}
.m-pointHdg>span::after {
    right: 0;
    transform: rotate(180deg)
}
.m-pointHdg em {
    font-style: normal;
    color: #0b578f
}
.m-pointHdg em>span {
    font-size: 60px
}
.m-pointTxt {
    margin: 85px 0 0;
    font-size: 18px;
    color: #616161;
    text-align: center
}
.m-pointList {
    margin: 70px 0 0 -23px;
    display: flex;
    flex-wrap: wrap
}
.m-pointList__item {
    width: 33.3333333333%;
    margin: 35px 0 0;
    padding: 0 0 0 23px;
    box-sizing: border-box
}
.m-pointList__item:nth-child(-n+3) {
    margin-top: 0
}
.m-pointList__inner {
    height: 100%;
    padding: 135px 25px 40px;
    position: relative;
    border-radius: 30px;
    box-sizing: border-box;
    box-shadow: 3px 3px 0 #444;
    border: 4px solid #444;
    background: #fff
}
.m-pointList__inner::before {
    width: 0;
    height: 0;
    position: absolute;
    background-image: url(../img/icn_sprite04.png);
    background-size: 2000px 2000px;
    content: ""
}
.m-pointList__inner[data-order="1"]::before {
    width: 75px;
    height: 84px;
    top: 17px;
    right: 35px;
    background-position: -142px -222px
}
.m-pointList__inner[data-order="2"]::before {
    width: 71px;
    height: 74px;
    top: 20px;
    right: 38px;
    background-position: -227px -222px
}
.m-pointList__inner[data-order="3"]::before {
    width: 69px;
    height: 72px;
    top: 20px;
    right: 40px;
    background-position: -308px -222px
}
.m-pointList__inner[data-order="4"]::before {
    width: 104px;
    height: 156px;
    top: 15px;
    right: 25px;
    background-position: -387px -222px
}
.m-pointList__inner[data-order="5"]::before {
    width: 98px;
    height: 56px;
    top: 32px;
    right: 28px;
    background-position: -142px -331px
}
.m-pointList__inner[data-order="6"]::before {
    width: 66px;
    height: 75px;
    top: 27px;
    right: 35px;
    background-position: -252px -331px
}
.m-pointList__hdg {
    margin: 0 0 20px;
    font-size: 24px;
    line-height: 1.4;
    text-align: center
}
.m-pointList__hdg>em {
    width: 106px;
    height: 126px;
    padding: 20px 0 0 0;
    font-weight: bold;
    font-style: normal;
    font-size: 16px;
    line-height: 1;
    letter-spacing: .05em;
    color: #fff;
    position: absolute;
    top: -15px;
    left: 30px;
    background-image: url(../img/icn_sprite04.png);
    background-size: 2000px 2000px;
    background-position: -20px -222px
}
.m-pointList__hdg>em>span {
    position: relative;
    left: -5px
}
.m-pointList__hdg>em>span span {
    margin: 3px 0 0;
    font-size: 58px;
    display: block
}
.m-pointList__hdg>span {
    display: table;
    margin: 0 auto
}
.m-pointList__hdg>span::after {
    width: 127px;
    height: 3px;
    margin: 17px auto 0;
    display: table;
    background: #0b578f;
    content: ""
}
.m-pointList__hdg>span span {
    font-size: 14px
}
.m-pointList__hdg+* {
    margin-top: 25px !important
}
.m-pointList__txt, .m-pointList__notes {
    color: #494949
}
.m-pointList__txt {
    margin: 40px 0 0;
    font-size: 16px
}
.m-pointList__txt em {
    font-style: normal;
    color: #D5971E
}
.m-pointList__notes {
    margin: 40px 0 0 0;
    font-size: 12px;
    line-height: 1;
    text-align: right
}
.m-pointImg, .m-pointBox {
    max-width: 1000px;
    margin: 0 auto;
    box-sizing: border-box
}
.m-pointImg {
    margin-top: 80px
}
.m-pointImg img {
    width: 100%
}
.m-pointBox {
    margin-top: 55px;
    padding: 20px 25px;
    border: 1px solid #D5971E
}
.m-pointBox__hdg {
    padding: 0 0 0 35px;
    font-weight: bold;
    font-size: 16px;
    color: #D5971E;
    line-height: 1;
    position: relative
}
.m-pointBox__hdg::before {
    width: 25px;
    height: 25px;
    margin: -13px 0 0;
    position: absolute;
    top: 50%;
    left: 0;
    background-image: url(../img/icn_sprite04.png);
    background-position: -57px -20px;
    background-size: 2000px 2000px;
    content: ""
}
.m-pointBox__txt {
    margin: 15px 0 0;
    font-size: 16px;
    color: #494949;
    letter-spacing: -0.03em
}
.m-pointBox__txt a {
    text-decoration: underline
}
.m-pointBox__txt a:hover {
    text-decoration: none
}
@media screen and (max-width: 1240px) {
    .m-pointList__item {
        width: 50%
    }
    .m-pointList__item:nth-child(-n+3) {
        margin-top: 35px
    }
    .m-pointList__item:nth-child(-n+2) {
        margin-top: 0
    }
}
@media screen and (max-width: 940px) {
    .m-pointList__item {
        width: 100%
    }
    .m-pointList__item:nth-child(-n+3) {
        margin-top: 35px
    }
    .m-pointList__item:nth-child(-n+2) {
        margin-top: 35px
    }
    .m-pointList__item:first-child {
        margin-top: 0
    }
}
@media screen and (max-width: 743px) {
    .m-point__inner {
        padding: 100px 0 50px
    }
    .m-pointHdg {
        font-size: 23px
    }
    .m-pointHdg::before {
        font-size: 120px;
        top: -50px
    }
    .m-pointHdg>span {
        padding: 0 12px
    }
    .m-pointHdg>span::before, .m-pointHdg>span::after {
        width: 8px;
        height: 37px;
        margin-top: -18px;
        background-size: 8px 37px
    }
    .m-pointHdg em>span {
        font-size: 35px
    }
    .m-pointList {
        margin-top: 45px
    }
    .m-pointList__item {
        margin-top: 45px
    }
    .m-pointList__item:nth-child(-n+3) {
        margin-top: 45px
    }
    .m-pointList__item:nth-child(-n+2) {
        margin-top: 45px
    }
    .m-pointList__item:first-child {
        margin-top: 0
    }
    .m-pointList__inner {
        height: auto;
        padding: 105px 25px 35px;
        border-radius: 20px
    }
    .m-pointList__inner::before {
        transform: scale(0.7)
    }
    .m-pointList__inner[data-order="1"]::before {
        top: 7px;
        right: 15px
    }
    .m-pointList__inner[data-order="2"]::before {
        top: 10px;
        right: 18px
    }
    .m-pointList__inner[data-order="3"]::before {
        top: 10px;
        right: 20px
    }
    .m-pointList__inner[data-order="4"]::before {
        top: -5px;
        right: 5px
    }
    .m-pointList__inner[data-order="5"]::before {
        top: 12px;
        right: 13px
    }
    .m-pointList__inner[data-order="6"]::before {
        top: 7px;
        right: 25px
    }
    .m-pointList__hdg {
        font-size: 22px
    }
    .m-pointList__hdg>em {
        font-size: 14px;
        top: -25px;
        left: 10px;
        transform: scale(0.8)
    }
    .m-pointList__hdg>em>span span {
        font-size: 50px
    }
    .m-pointList__hdg+* {
        margin-top: 20px !important
    }
    .m-pointList__txt {
        margin: 40px 0 0;
        font-size: 16px
    }
    .m-pointList__txt em {
        font-style: normal;
        color: #D5971E
    }
    .m-pointList__notes {
        margin-top: 30px
    }
    .m-pointTxt {
        margin-top: 11vw
    }
    .m-pointImg {
        margin-top: 40px
    }
    .m-pointBox {
        margin-top: 35px
    }
    .m-pointBox__hdg {
        padding-left: 22px
    }
    .m-pointBox__hdg::before {
        transform: scale(0.8);
        left: -5px
    }
    .m-pointBox__txt {
        margin: 15px 0 0;
        font-size: 16px;
        color: #494949;
        letter-spacing: -0.03em
    }
    .m-pointBox__txt a {
        text-decoration: underline
    }
    .m-pointBox__txt a:hover {
        text-decoration: none
    }
}
@media screen and (max-width: 500px) {
    .m-point__inner {
        padding-top: 20vw
    }
    .m-pointHdg {
        font-size: 20px
    }
    .m-pointHdg::before {
        font-size: 24vw;
        top: -10vw
    }
    .m-pointHdg em>span {
        font-size: 30px
    }
    .m-pointList {
        margin-top: 9vw
    }
    .m-pointList__item {
        margin-top: 9vw
    }
    .m-pointList__item:nth-child(-n+3) {
        margin-top: 9vw
    }
    .m-pointList__item:nth-child(-n+2) {
        margin-top: 9vw
    }
    .m-pointList__item:first-child {
        margin-top: 0
    }
    .m-pointImg {
        margin-top: 8vw
    }
    .m-pointBox {
        margin-top: 7vw
    }
}
.m-comparison {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-position: center center;
    background-size: cover;
    background-color: #fefaf1
}
.m-comparison__inner {
    padding: 130px 0 80px
}
.m-comparisonHdg {
    width: 100%;
    font-weight: bold;
    font-size: 34px;
    line-height: 1;
    letter-spacing: .05em;
    display: block;
    position: relative
}
.m-comparisonHdg::before {
    width: 100%;
    font-weight: bold;
    font-size: 180px;
    color: #fcf3df;
    white-space: nowrap;
    line-height: 1;
    letter-spacing: -0.05em;
    text-align: center;
    opacity: .9;
    display: block;
    position: absolute;
    top: -80px;
    left: 0;
    z-index: 0;
    content: "COMPARISON"
}
.m-comparisonHdg span {
    margin: 0 auto;
    padding: 0 65px;
    display: table;
    position: relative;
    z-index: 1
}
.m-comparisonHdg span::before, .m-comparisonHdg span::after {
    width: 14px;
    height: 64px;
    margin: -32px 0 0;
    position: absolute;
    top: 50%;
    background-image: url(../img/fig_hdg.png);
    background-size: 14px 64px;
    content: ""
}
.m-comparisonHdg span::before {
    left: 0
}
.m-comparisonHdg span::after {
    right: 0;
    transform: rotate(180deg)
}
.m-comparisonTxt {
    margin: 85px 0 0;
    font-size: 18px;
    color: #616161;
    text-align: center
}
.m-comparisonTbl {
    margin: 60px 0 0
}
.m-comparisonTbl thead tr>*:nth-child(1), .m-comparisonTbl tbody tr>*:nth-child(1) {
    width: 14%
}
.m-comparisonTbl thead tr>*:nth-child(2), .m-comparisonTbl tbody tr>*:nth-child(2) {
    width: 21%
}
.m-comparisonTbl thead tr>*:nth-child(3), .m-comparisonTbl tbody tr>*:nth-child(3) {
    width: 21%
}
.m-comparisonTbl thead tr>*:nth-child(4), .m-comparisonTbl tbody tr>*:nth-child(4) {
    width: 21%
}
.m-comparisonTbl thead tr>*:nth-child(5), .m-comparisonTbl tbody tr>*:nth-child(5) {
    width: 21%
}
.m-comparisonTbl thead tr th, .m-comparisonTbl thead tr td, .m-comparisonTbl tbody tr th, .m-comparisonTbl tbody tr td {
    padding: 10px 25px;
    vertical-align: middle
}
.m-comparisonTbl thead tr th em, .m-comparisonTbl thead tr td em, .m-comparisonTbl tbody tr th em, .m-comparisonTbl tbody tr td em {
    font-style: normal
}
.m-comparisonTbl thead th {
    height: 70px;
    font-size: 18px;
    color: #fff;
    line-height: 1.3;
    text-align: center;
    border: none;
    border-right: 1px solid #d4d4d4;
    background: #747474
}
.m-comparisonTbl thead th:nth-child(1) {
    border-right: 2px solid #f08404
}
.m-comparisonTbl thead th:nth-child(2) {
    border-right: 2px solid #f08404;
    background: #f08404
}
.m-comparisonTbl thead th:last-child {
    border-right: none
}
.m-comparisonTbl thead th span {
    font-weight: normal;
    font-size: 16px
}
.m-comparisonTbl tbody tr:first-child th, .m-comparisonTbl tbody tr:first-child td {
    border-top-color: #747474
}
.m-comparisonTbl tbody tr:first-child th:nth-child(2), .m-comparisonTbl tbody tr:first-child td:nth-child(2) {
    border-top-color: #f08404
}
.m-comparisonTbl tbody tr:last-child th:nth-child(2), .m-comparisonTbl tbody tr:last-child td:nth-child(2) {
    border-bottom: 2px solid #f08404
}
.m-comparisonTbl tbody th, .m-comparisonTbl tbody td {
    height: 80px;
    text-align: center;
    font-size: 16px;
    color: #494949;
    line-height: 1.5;
    border: 1px solid #d4d4d4;
    border-left: none;
    background: #fff
}
.m-comparisonTbl tbody th:nth-child(1), .m-comparisonTbl tbody td:nth-child(1) {
    border-right: 2px solid #f08404
}
.m-comparisonTbl tbody th:nth-child(2), .m-comparisonTbl tbody td:nth-child(2) {
    border-right: 2px solid #f08404;
    background: #fbf4e9
}
.m-comparisonTbl tbody th:last-child, .m-comparisonTbl tbody td:last-child {
    border-right: none
}
.m-comparisonTbl tbody th {
    font-weight: bold;
    text-align: left
}
.m-comparisonTbl tbody td em {
    color: #D5971E
}
.m-comparisonNotes {
    margin: 30px 0 0
}
.m-comparisonNotes li {
    padding: 0 0 0 2em;
    font-size: 12px;
    color: #494949;
    position: relative
}
.m-comparisonNotes li span {
    position: absolute;
    top: 0;
    left: 0
}
@media screen and (max-width: 1240px) {
    .m-comparisonHdg::before {
        font-size: 14.516vw;
        top: -6.452vw
    }
}
@media screen and (max-width: 940px) {
    .m-comparisonTbl {
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch
    }
    .m-comparisonTbl table {
        width: 1000px;
        max-width: inherit
    }
}
@media screen and (max-width: 743px) {
    .m-comparison__inner {
        padding: 20vw 0 50px
    }
    .m-comparisonHdg {
        font-size: 23px
    }
    .m-comparisonHdg::before {
        font-size: 120px;
        top: -50px;
        content: "CHART"
    }
    .m-comparisonHdg span {
        padding: 0 12px
    }
    .m-comparisonHdg span::before, .m-comparisonHdg span::after {
        width: 8px;
        height: 37px;
        margin-top: -18px;
        background-size: 8px 37px
    }
    .m-comparisonTxt {
        margin-top: 11vw
    }
    .m-comparisonTbl {
        margin-top: 7.823vw
    }
    .m-comparisonTbl table {
        width: 767px
    }
    .m-comparisonTbl thead tr th, .m-comparisonTbl thead tr td, .m-comparisonTbl tbody tr th, .m-comparisonTbl tbody tr td {
        padding: 15px 10px
    }
    .m-comparisonTbl thead th {
        height: auto;
        font-size: 16px
    }
    .m-comparisonTbl thead th span {
        font-size: 14px
    }
    .m-comparisonTbl tbody th, .m-comparisonTbl tbody td {
        height: auto;
        font-size: 14px
    }
    .m-comparisonNotes {
        margin: 30px 0 0;
        margin-top: 3.911vw
    }
}
@media screen and (max-width: 500px) {
    .m-comparisonHdg {
        font-size: 20px
    }
    .m-comparisonHdg::before {
        font-size: 24vw;
        top: -10vw
    }
}
.m-simulation__inner {
    padding: 30px 0 80px
}
.m-simulationHdg {
    width: 100%;
    font-weight: bold;
    font-size: 34px;
    line-height: 1;
    letter-spacing: .05em;
    display: block;
    position: relative
}
.m-simulationHdg::before {
    width: 100%;
    font-weight: bold;
    font-size: 180px;
    color: #F0F6FF;
    white-space: nowrap;
    line-height: 1;
    text-align: center;
    opacity: .5;
    display: block;
    position: absolute;
    top: -80px;
    left: 0;
    z-index: 0;
    content: "SIMULATION"
}
.m-simulationHdg span {
    margin: 0 auto;
    padding: 0 65px;
    display: table;
    position: relative;
    z-index: 1
}
.m-simulationHdg span::before, .m-simulationHdg span::after {
    width: 14px;
    height: 64px;
    margin: -32px 0 0;
    position: absolute;
    top: 50%;
    background-image: url(../img/fig_hdg.png);
    background-size: 14px 64px;
    content: ""
}
.m-simulationHdg span::before {
    left: 0
}
.m-simulationHdg span::after {
    right: 0;
    transform: rotate(180deg)
}
.m-simulationTxt {
    margin: 85px 0 0;
    font-size: 18px;
    color: #616161;
    text-align: center
}
.m-simulationLyt {
    margin: 65px 0 0;
    display: flex;
    flex-wrap: nowrap
}
.m-simulationLyt__table {
    width: 760px
}
.m-simulationLyt__chara {
    width: 440px;
    position: relative;
    left: 30px;
	border: none;
}
.m-simulationTbl table {
    width: 100%;
    max-width: inherit
}
.m-simulationTbl table caption {
    margin: 0 0 15px;
    font-weight: bold;
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: .05em;
    text-align: left
}
.m-simulationTbl table thead tr th, .m-simulationTbl table thead tr td, .m-simulationTbl table tbody tr th, .m-simulationTbl table tbody tr td, .m-simulationTbl table tfoot tr th, .m-simulationTbl table tfoot tr td {
    height: 75px;
    padding: 15px 20px;
    font-size: 18px;
    color: #494949;
    line-height: 1.3;
    vertical-align: middle;
    box-sizing: border-box;
    border: none;
    background: none
}
.m-simulationTbl table thead tr th:nth-child(1), .m-simulationTbl table thead tr td:nth-child(1), .m-simulationTbl table tbody tr th:nth-child(1), .m-simulationTbl table tbody tr td:nth-child(1), .m-simulationTbl table tfoot tr th:nth-child(1), .m-simulationTbl table tfoot tr td:nth-child(1) {
    width: 260px;
    text-align: left;
    background: #fff
}
.m-simulationTbl table thead tr th:nth-child(2), .m-simulationTbl table thead tr th:nth-child(3), .m-simulationTbl table thead tr td:nth-child(2), .m-simulationTbl table thead tr td:nth-child(3), .m-simulationTbl table tbody tr th:nth-child(2), .m-simulationTbl table tbody tr th:nth-child(3), .m-simulationTbl table tbody tr td:nth-child(2), .m-simulationTbl table tbody tr td:nth-child(3), .m-simulationTbl table tfoot tr th:nth-child(2), .m-simulationTbl table tfoot tr th:nth-child(3), .m-simulationTbl table tfoot tr td:nth-child(2), .m-simulationTbl table tfoot tr td:nth-child(3) {
    width: 250px;
    text-align: center
}
.m-simulationTbl table thead tr th:nth-child(2), .m-simulationTbl table thead tr td:nth-child(2), .m-simulationTbl table tbody tr th:nth-child(2), .m-simulationTbl table tbody tr td:nth-child(2), .m-simulationTbl table tfoot tr th:nth-child(2), .m-simulationTbl table tfoot tr td:nth-child(2) {
    background: #f4f8f9
}
.m-simulationTbl table thead tr th:nth-child(3), .m-simulationTbl table thead tr td:nth-child(3), .m-simulationTbl table tbody tr th:nth-child(3), .m-simulationTbl table tbody tr td:nth-child(3), .m-simulationTbl table tfoot tr th:nth-child(3), .m-simulationTbl table tfoot tr td:nth-child(3) {
    background: #fbf4e9
}
.m-simulationTbl table thead tr th strong, .m-simulationTbl table thead tr td strong, .m-simulationTbl table tbody tr th strong, .m-simulationTbl table tbody tr td strong, .m-simulationTbl table tfoot tr th strong, .m-simulationTbl table tfoot tr td strong {
    color: red
}
.m-simulationTbl table thead tr th sub, .m-simulationTbl table thead tr td sub, .m-simulationTbl table tbody tr th sub, .m-simulationTbl table tbody tr td sub, .m-simulationTbl table tfoot tr th sub, .m-simulationTbl table tfoot tr td sub {
    font-size: 14px;
    padding: 0 0 0 5px
}
.m-simulationTbl table thead tr th, .m-simulationTbl table thead tr td {
    height: 65px;
    color: #fff
}
.m-simulationTbl table thead tr th:nth-child(2), .m-simulationTbl table thead tr td:nth-child(2) {
    background: #0D3778
}
.m-simulationTbl table thead tr th:nth-child(3), .m-simulationTbl table thead tr td:nth-child(3) {
    background: #D5971E
}
.m-simulationTbl table tbody {
    border-top: 2px solid #d4d4d4;
    border-bottom: 2px solid #d4d4d4
}
.m-simulationTbl table tbody tr th:nth-child(2), .m-simulationTbl table tbody tr th:nth-child(3), .m-simulationTbl table tbody tr td:nth-child(2), .m-simulationTbl table tbody tr td:nth-child(3) {
    font-size: 18px
}
.m-simulationTbl table tbody tr th span {
    font-weight: normal;
    font-size: 16px
}
.m-simulationTbl table tfoot tr th:nth-child(2), .m-simulationTbl table tfoot tr th:nth-child(3), .m-simulationTbl table tfoot tr td:nth-child(2), .m-simulationTbl table tfoot tr td:nth-child(3) {
    font-size: 18px
}
.m-simulationComment {
    width: 441px;
    height: 527px;
    margin: -30px -30px 0 0;
    background: url(../img/fig_simulation04.png);
    background-size: 441px 527px
}
.m-simulationComment__txt {
    padding: 22px 0 0 40px;
    font-weight: bold;
    font-size: 20px;
    line-height: 1.5
}
.m-simulationComment__txt>strong {
    background: linear-gradient(transparent 60%, #ffff7f 60%)
}
.m-simulationComment__txt>strong b {
    padding: 0 0 0 5px;
    font-size: 36px;
    color: red;
    line-height: 1
}
.m-simulationComment__txt>strong b span {
    font-size: 20px
}
.m-simulationComment__txt>span {
    font-weight: normal;
    font-size: 18px
}
.m-simulationBtn {
    width: 100%;
    max-width: 420px;
    height: 80px;
    margin: 60px auto 0;
    font-weight: 500;
    font-size: 20px;
    color: #fff !important;
    line-height: 1;
    text-align: center;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 16px rgba(129, 129, 129, .2);
    box-sizing: border-box;
    border-radius: 40px;
    border: 2px solid #D5971E;
    background: #D5971E
}
.m-simulationBtn:hover {
    color: #D5971E !important;
    opacity: 1;
    background: #fff
}
.m-simulationNotes {
    margin: 45px 0 0
}
.m-simulationNotes li {
    padding: 0 0 0 2em;
    font-size: 12px;
    color: #494949;
    position: relative
}
.m-simulationNotes li span {
    position: absolute;
    top: 0;
    left: 0
}
.m-simulationNotes li a {
    text-decoration: underline
}
.m-simulationNotes li a:hover {
    text-decoration: none
}
@media screen and (min-width: 961px)and (max-width: 1240px) {
    .m-simulationLyt {
        width: 96.774vw;
        margin: 5.242vw 0 0
    }
    .m-simulationLyt__table {
        width: 61.29vw
    }
    .m-simulationLyt__chara {
        width: 35.484vw;
        left: 2.419vw
    }
    .m-simulationTbl table caption {
        margin: 0 0 1.21vw;
        font-size: 1.613vw
    }
    .m-simulationTbl table thead tr th, .m-simulationTbl table thead tr td, .m-simulationTbl table tbody tr th, .m-simulationTbl table tbody tr td, .m-simulationTbl table tfoot tr th, .m-simulationTbl table tfoot tr td {
        height: 6.048vw;
        padding: 1.21vw 1.613vw;
        font-size: 1.452vw
    }
    .m-simulationTbl table thead tr th:nth-child(1), .m-simulationTbl table thead tr td:nth-child(1), .m-simulationTbl table tbody tr th:nth-child(1), .m-simulationTbl table tbody tr td:nth-child(1), .m-simulationTbl table tfoot tr th:nth-child(1), .m-simulationTbl table tfoot tr td:nth-child(1) {
        width: 20.968vw
    }
    .m-simulationTbl table thead tr th:nth-child(2), .m-simulationTbl table thead tr th:nth-child(3), .m-simulationTbl table thead tr td:nth-child(2), .m-simulationTbl table thead tr td:nth-child(3), .m-simulationTbl table tbody tr th:nth-child(2), .m-simulationTbl table tbody tr th:nth-child(3), .m-simulationTbl table tbody tr td:nth-child(2), .m-simulationTbl table tbody tr td:nth-child(3), .m-simulationTbl table tfoot tr th:nth-child(2), .m-simulationTbl table tfoot tr th:nth-child(3), .m-simulationTbl table tfoot tr td:nth-child(2), .m-simulationTbl table tfoot tr td:nth-child(3) {
        width: 20.968vw
    }
    .m-simulationTbl table thead tr th sub, .m-simulationTbl table thead tr td sub, .m-simulationTbl table tbody tr th sub, .m-simulationTbl table tbody tr td sub, .m-simulationTbl table tfoot tr th sub, .m-simulationTbl table tfoot tr td sub {
        font-size: 1.129vw;
        padding: 0 0 0 .403vw
    }
    .m-simulationTbl table thead tr th, .m-simulationTbl table thead tr td {
        height: 5.242vw
    }
    .m-simulationTbl table tbody {
        border-top: .161vw solid #d4d4d4;
        border-bottom: .161vw solid #d4d4d4
    }
    .m-simulationTbl table tbody tr th:nth-child(2), .m-simulationTbl table tbody tr th:nth-child(3), .m-simulationTbl table tbody tr td:nth-child(2), .m-simulationTbl table tbody tr td:nth-child(3) {
        font-size: 1.774vw
    }
    .m-simulationTbl table tbody tr th span {
        font-size: 1.29vw
    }
    .m-simulationTbl table tfoot tr th:nth-child(2), .m-simulationTbl table tfoot tr th:nth-child(3), .m-simulationTbl table tfoot tr td:nth-child(2), .m-simulationTbl table tfoot tr td:nth-child(3) {
        font-size: 2.097vw
    }
    .m-simulationComment {
        width: 35.565vw;
        height: 42.5vw;
        margin: -2.419vw -2.419vw 0 0;
        background-size: 35.565vw 42.5vw
    }
    .m-simulationComment__txt {
        padding: 1.774vw 0 0 3.226vw;
        font-size: 1.613vw
    }
    .m-simulationComment__txt>strong b {
        padding: 0 0 .403vw;
        font-size: 2.903vw
    }
    .m-simulationComment__txt>strong b span {
        font-size: 1.613vw
    }
    .m-simulationComment__txt>span {
        font-size: 1.452vw
    }
}
@media screen and (max-width: 1240px) {
    .m-simulationHdg::before {
        font-size: 14.516vw;
        top: -6.452vw
    }
}
@media screen and (max-width: 960px) {
    .m-simulationLyt {
        margin: 35px 0 0;
        flex-wrap: wrap;
        flex-direction: column
    }
    .m-simulationLyt__table {
        width: 100%;
        order: 2
    }
    .m-simulationLyt__chara {
        width: 440px;
        margin: 0 auto;
        position: relative;
        left: 0;
        order: 1
    }
    .m-simulationComment {
        width: 441px;
        height: 527px;
        margin: 0 0 40px
    }
}
@media screen and (max-width: 743px) {
    .m-simulation__inner {
        padding: 0 0 50px
    }
    .m-simulationHdg {
        font-size: 23px
    }
    .m-simulationHdg::before {
        font-size: 120px;
        top: -50px;
        content: "IMAGE"
    }
    .m-simulationHdg span {
        padding: 0 12px
    }
    .m-simulationHdg span::before, .m-simulationHdg span::after {
        width: 8px;
        height: 37px;
        margin-top: -18px;
        background-size: 8px 37px
    }
    .m-simulationTxt {
        margin-top: 11vw
    }
    .m-simulationLyt {
        margin-top: 40px
    }
    .m-simulationLyt__table {
        width: 100%
    }
    .m-simulationLyt__chara {
        width: 100%;
        margin: 0 0 40px;
        left: 0;
		height: 400px;
    }
    .m-simulationTbl {
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch
    }
    .m-simulationTbl table {
        width: 767px
    }
    .m-simulationTbl table caption {
        margin-bottom: 10px;
        font-size: 18px
    }
    .m-simulationTbl table thead tr th, .m-simulationTbl table thead tr td, .m-simulationTbl table tbody tr th, .m-simulationTbl table tbody tr td, .m-simulationTbl table tfoot tr th, .m-simulationTbl table tfoot tr td {
        height: auto;
        font-size: 16px;
        padding: 10px
    }
    .m-simulationTbl table thead tr th sub, .m-simulationTbl table thead tr td sub, .m-simulationTbl table tbody tr th sub, .m-simulationTbl table tbody tr td sub, .m-simulationTbl table tfoot tr th sub, .m-simulationTbl table tfoot tr td sub {
        font-size: 10px
    }
    .m-simulationTbl table thead tr th:nth-child(1), .m-simulationTbl table thead tr td:nth-child(1), .m-simulationTbl table tbody tr th:nth-child(1), .m-simulationTbl table tbody tr td:nth-child(1), .m-simulationTbl table tfoot tr th:nth-child(1), .m-simulationTbl table tfoot tr td:nth-child(1) {
        width: 180px
    }
    .m-simulationTbl table thead tr th:nth-child(2), .m-simulationTbl table thead tr th:nth-child(3), .m-simulationTbl table thead tr td:nth-child(2), .m-simulationTbl table thead tr td:nth-child(3), .m-simulationTbl table tbody tr th:nth-child(2), .m-simulationTbl table tbody tr th:nth-child(3), .m-simulationTbl table tbody tr td:nth-child(2), .m-simulationTbl table tbody tr td:nth-child(3), .m-simulationTbl table tfoot tr th:nth-child(2), .m-simulationTbl table tfoot tr th:nth-child(3), .m-simulationTbl table tfoot tr td:nth-child(2), .m-simulationTbl table tfoot tr td:nth-child(3) {
        width: 260px
    }
    .m-simulationTbl table thead tr th, .m-simulationTbl table thead tr td {
        height: auto
    }
    .m-simulationTbl table tbody tr th:nth-child(2), .m-simulationTbl table tbody tr th:nth-child(3), .m-simulationTbl table tbody tr td:nth-child(2), .m-simulationTbl table tbody tr td:nth-child(3) {
        font-size: 20px
    }
    .m-simulationTbl table tbody tr th span {
        font-size: 14px
    }
    .m-simulationTbl table tfoot tr th:nth-child(2), .m-simulationTbl table tfoot tr th:nth-child(3), .m-simulationTbl table tfoot tr td:nth-child(2), .m-simulationTbl table tfoot tr td:nth-child(3) {
        font-size: 24px
    }
    .m-simulationComment {
        margin: 0 auto
    }
    .m-simulationBtn {
        max-width: inherit;
        height: 65px;
        margin-top: 10px;
        font-size: 18px;
        border-radius: 32px
    }
    .m-simulationNotes {
        margin-top: 40px
    }
}
@media screen and (max-width: 500px) {
    .m-simulationHdg {
        font-size: 20px
    }
    .m-simulationHdg::before {
        font-size: 24vw;
        top: -10vw
    }
    .m-simulationLyt {
        margin-top: 8vw
    }
    .m-simulationLyt__chara {
        margin: 0 0 8vw
    }
    .m-simulationComment {
        width: 88.2vw;
        height: 100vw;
        margin: 0;
        background-size: 88.2vw 105.4vw
    }
    .m-simulationComment__txt {
        padding: 4.4vw 0 0 8vw;
        font-size: 4vw
    }
    .m-simulationComment__txt>strong b {
        padding: 0 0 0 1vw;
        font-size: 7.2vw
    }
    .m-simulationComment__txt>strong b span {
        font-size: 4vw
    }
    .m-simulationComment__txt>span {
        font-size: 3.6vw
    }
}
.m-result {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-position: center center;
    background-size: cover;
    background-color: #F0F6FF
}
.m-result__inner {
    padding: 130px 0 80px
}
.m-resultHdg {
    width: 100%;
    font-weight: bold;
    font-size: 34px;
    line-height: 1;
    letter-spacing: .05em;
    display: block;
    position: relative
}
.m-resultHdg::before {
    width: 100%;
    font-weight: bold;
    font-size: 180px;
    color: #fff;
    white-space: nowrap;
    line-height: 1;
    text-align: center;
    opacity: .5;
    display: block;
    position: absolute;
    top: -80px;
    left: 0;
    z-index: 0;
    content: "RESULTS"
}
.m-resultHdg span {
    margin: 0 auto;
    padding: 0 65px;
    display: table;
    position: relative;
    z-index: 1
}
.m-resultHdg span::before, .m-resultHdg span::after {
    width: 14px;
    height: 64px;
    margin: -32px 0 0;
    position: absolute;
    top: 50%;
    background-image: url(../img/fig_hdg.png);
    background-size: 14px 64px;
    content: ""
}
.m-resultHdg span::before {
    left: 0
}
.m-resultHdg span::after {
    right: 0;
    transform: rotate(180deg)
}
.m-resultTxt {
    margin: 85px 0 0;
    font-size: 18px;
    color: #616161;
    text-align: center
}
.m-resultData {
    margin: 60px 0 0
}
.m-resultData__hdg {
    height: 88px;
    max-width: 1000px;
    margin: 90px auto 70px;
    font-weight: bold;
    font-size: 36px;
    line-height: 1.2;
    letter-spacing: .1em;
    text-align: center;
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-shadow: 3px 3px 0 #444;
    border-radius: 15px;
    border: 4px solid #444;
    background: #fff
}
.m-resultData__hdg:first-child {
    margin-top: 0
}
.m-resultData__hdg::before, .m-resultData__hdg::after {
    width: 0;
    height: 0;
    position: absolute;
    border-style: solid;
    content: ""
}
.m-resultData__hdg::before {
    bottom: -30px;
    left: 280px;
    z-index: 1;
    border-color: rgba(0, 0, 0, 0) #fff rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    border-width: 0px 32px 32px 0px
}
.m-resultData__hdg::after {
    bottom: -38px;
    left: 276px;
    z-index: 0;
    border-color: rgba(0, 0, 0, 0) #444 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    border-width: 0px 40px 38px 0px
}
.m-resultData__hdg br {
    display: none
}
.m-resultData__hdg span {
    color: #D5971E
}
.m-resultData__hdg sub {
    font-weight: normal;
    font-size: 14px;
    padding: 0 0 0 5px;
    position: relative;
    top: 10px
}


.m-resultData__hdg2 {
    height: 60px;
    max-width: 600px;
    margin: 90px auto 40px;
	font-weight: bold;
    font-size: 26px;
    line-height: 1.2;
    letter-spacing: .1em;
    text-align: center;
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-shadow: 3px 3px 0 #444;
    border-radius: 15px;
    border: 4px solid #444;
    background: #fff
}
/*.m-resultData__hdg2:first-child {
    margin-top: 0
}*/
.m-resultData__hdg2::before, .m-resultData__hdg2::after {
    width: 0;
    height: 0;
    position: absolute;
    border-style: solid;
    content: ""
}
.m-resultData__hdg2::before {
    bottom: -30px;
    left: 280px;
    z-index: 1;
    border-color: rgba(0, 0, 0, 0) #fff rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    border-width: 0px 32px 32px 0px
}
.m-resultData__hdg2::after {
    bottom: -38px;
    left: 276px;
    z-index: 0;
    border-color: rgba(0, 0, 0, 0) #444 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    border-width: 0px 40px 38px 0px
}
.m-resultData__hdg2 br {
    display: none
}
.m-resultData__hdg2 span {
    color: #D5971E
}
.m-resultData__hdg2 sub {
    font-weight: normal;
    font-size: 14px;
    padding: 0 0 0 5px;
    position: relative;
    top: 10px
}



.m-resultData__txt {
    font-size: 18px;
    line-height: 1.7;
    text-align: center
}
.m-resultData__notes {
    margin: 50px 0 0
}
.m-resultData__notes li {
    font-size: 12px;
    color: #494949;
    display: flex;
    flex-wrap: nowrap
}
.m-resultData__notes li span, .m-resultData__notes li div {
    display: block
}
.m-resultData__notes li span {
    padding: 0 5px 0 0
}
.m-resultData__graph {
    margin: 60px 0 0;
    display: flex;
    flex-wrap: nowrap
}
.m-resultData__graphItem {
    width: 100%;
    text-align: center;
}
.m-resultData__graphItem__hdg {
    margin: 0 0 30px;
    font-weight: bold;
    font-size: 22px;
    line-height: 1
}
.m-resultData__graphItem__hdg span {
    margin: 12px 0 0;
    font-weight: normal;
    font-size: 16px;
    display: block
}
.m-resultData__graphItem__hdg sub {
    font-weight: normal;
    font-size: 14px;
    padding: 0 0 0 5px
}
.m-resultIntroduce {
    margin: 95px 0 0
}
.m-resultIntroduce__hdg {
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
    letter-spacing: .02em;
    text-align: center;
    position: relative
}
.m-resultIntroduce__hdg::before {
    width: 100%;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 0;
    background: #818181;
    content: ""
}
.m-resultIntroduce__hdg span {
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1;
    display: table;
    background: #F0F6FF;
}
.m-resultIntroduce__list[data-type=img] {
    margin: 45px 0 -20px -20px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center
}
.m-resultIntroduce__list[data-type=img] li {
    max-width: 224px;
    margin: 0 0 20px;
    padding: 0 0 0 20px
}
.m-resultIntroduce__list[data-type=txt] {
    margin: 35px 0 -12px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center
}
.m-resultIntroduce__list[data-type=txt] li {
    margin: 0 0 12px;
    font-size: 18px;
    line-height: 1
}
.m-resultIntroduce__list[data-type=txt] li:last-child::after {
    display: none
}
.m-resultIntroduce__list[data-type=txt] li::after {
    content: "／"
}
@media screen and (max-width: 940px) {
    .m-resultHdg::before {
        font-size: 19.149vw;
        top: -8.511vw
    }
}
@media screen and (max-width: 743px) {
    .m-result__inner {
        padding: 100px 0 50px
    }
    .m-resultHdg {
        font-size: 23px
    }
    .m-resultHdg::before {
        font-size: 18.645vw;
        top: -8.219vw
    }
    .m-resultHdg span {
        padding: 0 12px
    }
    .m-resultHdg span::before, .m-resultHdg span::after {
        width: 8px;
        height: 37px;
        margin-top: -18px;
        background-size: 8px 37px
    }
    .m-resultTxt {
        margin-top: 11vw
    }
    .m-resultData {
        margin-top: 50px
    }
    .m-resultData__hdg {
        height: auto;
        margin: 70px auto 50px;
        padding: 15px 0;
        font-size: 24px;
        line-height: 1.2;
        display: block
    }
    .m-resultData__hdg::before {
        bottom: -27px;
        left: 60px;
        border-width: 0px 30px 28px 0px
    }
    .m-resultData__hdg::after {
        bottom: -36px;
        left: 58px;
        border-width: 0px 35px 34px 0px
    }
    .m-resultData__hdg br {
        display: block
    }
    .m-resultData__hdg sub {
        top: 0
    }
	.m-resultData__hdg2 {
        height: auto;
        margin: 70px auto 50px;
        padding: 15px 0;
        font-size: 24px;
        line-height: 1.2;
        display: block
    }
    .m-resultData__hdg2::before {
        bottom: -27px;
        left: 60px;
        border-width: 0px 30px 28px 0px
    }
    .m-resultData__hdg2::after {
        bottom: -36px;
        left: 58px;
        border-width: 0px 35px 34px 0px
    }
    .m-resultData__hdg2 br {
        display: block
    }
    .m-resultData__hdg2 sub {
        top: 0
    }
    .m-resultData__txt {
        text-align: left
    }
    .m-resultData__notes {
        margin-top: 30px
    }
    .m-resultData__graph {
        margin: 60px 0 0;
        display: block
    }
    .m-resultData__graphItem {
        width: 100%;
        margin: 50px 0 0
    }
    .m-resultData__graphItem:first-child {
        margin-top: 0
    }
    .m-resultData__graphItem__hdg {
        margin: 0 0 30px;
        font-size: 20px
    }
    .m-resultIntroduce {
        margin-top: 60px
    }
    .m-resultIntroduce__hdg {
        font-size: 18px
    }
    .m-resultIntroduce__hdg span {
        padding: 0 18px
    }
    .m-resultIntroduce__list[data-type=img] {
        margin: 30px 0 0 -20px;
        justify-content: flex-start
    }
    .m-resultIntroduce__list[data-type=img] li {
        width: 50%;
        max-width: inherit;
        margin: 20px 0 0;
        padding: 0 0 0 20px;
        box-sizing: border-box
    }
    .m-resultIntroduce__list[data-type=img] li:nth-child(-n+2) {
        margin-top: 0
    }
    .m-resultIntroduce__list[data-type=img] li img {
        width: 100%;
        vertical-align: top
    }
}
@media screen and (max-width: 500px) {
    .m-result__inner {
        padding-top: 20vw
    }
    .m-resultHdg {
        font-size: 20px
    }
    .m-resultData {
        margin-top: 10vw
    }
    .m-resultData__hdg {
        margin: 14vw auto 10vw;
        padding: 3vw 0;
        font-size: 4.8vw
    }
	.m-resultData__hdg2 {
        margin: 14vw auto 10vw;
        padding: 3vw 0;
        font-size: 4.8vw
    }
    .m-resultData__notes {
        margin-top: 6vw
    }
    .m-resultData__graph {
        margin: 12vw 0 0
    }
    .m-resultData__graphItem {
        margin: 10vw 0 0
    }
    .m-resultData__graphItem__hdg {
        margin: 0 0 6vw
    }
    .m-resultIntroduce {
        margin-top: 12vw
    }
    .m-resultIntroduce__list[data-type=img] {
        margin-top: 6vw
    }
}
.m-faq__inner {
    padding: 130px 0 80px
}
.m-faqHdg {
    width: 100%;
    font-weight: bold;
    font-size: 34px;
    line-height: 1;
    letter-spacing: .05em;
    display: block;
    position: relative
}
.m-faqHdg::before {
    width: 100%;
    font-weight: bold;
    font-size: 180px;
    color: #F0F6FF;
    white-space: nowrap;
    line-height: 1;
    text-align: center;
    opacity: .5;
    display: block;
    position: absolute;
    top: -80px;
    left: 0;
    z-index: 0;
    content: "FAQ"
}
.m-faqHdg span {
    margin: 0 auto;
    padding: 0 65px;
    display: table;
    position: relative;
    z-index: 1
}
.m-faqHdg span::before, .m-faqHdg span::after {
    width: 14px;
    height: 64px;
    margin: -32px 0 0;
    position: absolute;
    top: 50%;
    background-image: url(../img/fig_hdg.png);
    background-size: 14px 64px;
    content: ""
}
.m-faqHdg span::before {
    left: 0
}
.m-faqHdg span::after {
    right: 0;
    transform: rotate(180deg)
}
.m-faqTxt {
    margin: 85px 0 0;
    font-size: 18px;
    color: #616161;
    text-align: center
}
.m-faqList {
    margin: 65px 0 0
}
.m-faqList__item {
    margin: 20px 0 0;
    overflow: hidden;
    border-radius: 15px;
    border: 1px solid #212121
}
.m-faqList__item:first-child {
    margin-top: 0
}
.m-faqList__head {
    width: 100%;
    min-height: 85px;
    padding: 20px 95px 20px 130px;
    font-weight: normal;
    font-size: 18px;
    line-height: 1.5;
    color: inherit;
    text-align: left;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    position: relative;
    box-sizing: border-box;
    background: #fff
}
.m-faqList__head::before, .m-faqList__head::after {
    position: absolute;
    content: ""
}
.m-faqList__head::before {
    width: 1px;
    height: calc(100% - 20px);
    top: 10px;
    left: 100px;
    background: #a6a6a6
}
.m-faqList__head::after {
    width: 35px;
    height: 35px;
    margin: -17px 0 0;
    top: 50%;
    right: 30px;
    border-radius: 50%;
    background: #0b578f
}
.m-faqList__head em {
    width: 27px;
    height: 32px;
    margin: -16px 0 0;
    text-indent: -999em;
    position: absolute;
    top: 50%;
    left: 35px
}
.m-faqList__head em::before {
    width: 27px;
    height: 32px;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(../img/icn_sprite04.png);
    background-size: 2000px 2000px;
    background-position: -20px -20px;
    content: ""
}
.m-faqList__head span::before, .m-faqList__head span::after {
    width: 15px;
    height: 1px;
    transition: .3s all ease;
    position: absolute;
    top: 50%;
    right: 40px;
    z-index: 1;
    background: #fff;
    content: ""
}
.m-faqList__head span::after {
    transform: rotate(90deg)
}
.m-faqList__head.is-active span::after {
    transform: rotate(0)
}
.m-faqList__body {
    display: none
}
.m-faqList__inner {
    min-height: 210px;
    padding: 30px 30px 30px 230px;
    position: relative;
    box-sizing: border-box;
    background: #f4f8f9
}
.m-faqList__txt, .m-faqList__notes {
    margin: 0;
    font-size: 18px;
    line-height: 1.7
}
.m-faqList__txt a, .m-faqList__notes a {
    text-decoration: underline
}
.m-faqList__txt a:hover, .m-faqList__notes a:hover {
    text-decoration: none
}
.m-faqList__txt em {
    width: 150px;
    height: 150px;
    text-indent: -999em;
    position: absolute;
    top: 30px;
    left: 40px
}
.m-faqList__txt em::before {
    width: 150px;
    height: 150px;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(../img/icn_sprite04.png);
    background-size: 2000px 2000px;
    background-position: -20px -62px;
    content: ""
}
.m-faqList__notes {
    padding: 0 0 0 1.2em;
    position: relative
}
.m-faqList__notes::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※"
}
@media screen and (max-width: 743px) {
    .m-faq__inner {
        padding: 100px 0 50px
    }
    .m-faqHdg {
        font-size: 23px
    }
    .m-faqHdg::before {
        font-size: 120px;
        top: -50px
    }
    .m-faqHdg span {
        padding: 0 12px
    }
    .m-faqHdg span::before, .m-faqHdg span::after {
        width: 8px;
        height: 37px;
        margin-top: -18px;
        background-size: 8px 37px
    }
    .m-faqTxt {
        margin-top: 12vw
    }
    .m-faqList {
        margin-top: 6.519vw
    }
    .m-faqList__head {
        padding: 15px 60px 15px 70px;
        font-size: 16px
    }
    .m-faqList__head::before {
        left: 50px
    }
    .m-faqList__head::after {
        width: 28px;
        height: 28px;
        margin-top: -14px;
        right: 18px
    }
    .m-faqList__head em {
        top: 50%;
        left: 12px;
        transform: scale(0.8)
    }
    .m-faqList__head span::before, .m-faqList__head span::after {
        right: 25px
    }
    .m-faqList__inner {
        min-height: inherit;
        padding: 20px
    }
    .m-faqList__txt, .m-faqList__notes {
        margin: 0;
        font-size: 16px
    }
    .m-faqList__txt em {
        top: -35px;
        left: -35px;
        transform: scale(0.3);
        display: none
    }
}
@media screen and (max-width: 500px) {
    .m-faq__inner {
        padding-top: 20vw
    }
    .m-faqHdg {
        font-size: 20px
    }
    .m-faqHdg::before {
        font-size: 24vw;
        top: -10vw
    }
}
.m-more {
    width: 100%;
    max-width: 1200px;
    margin-inline: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    background-position: center center;
    background-size: cover;
    background-color: #0b578f;
}
.m-more__inner {
    padding: 80px 0;
    color: #fff;
    position: relative
}
.m-more__inner::before {
    width: 0;
    height: 0;
    margin: 0 0 0 -32px;
    position: absolute;
    top: 0;
    left: 50%;
    border-style: solid;
    border-right: 32px solid rgba(0, 0, 0, 0);
    border-left: 32px solid rgba(0, 0, 0, 0);
    border-top: 30px solid #fff;
    border-bottom: 0;
    content: ""
}
.m-moreHdg[data-level="2"], .m-moreHdg[data-level="3"] {
    font-weight: bold;
    letter-spacing: .05em;
    color: #fff;
    text-align: center
}
.m-moreHdg[data-level="2"] {
    font-size: 38px;
    line-height: 1.2
}
/*.m-moreHdg[data-level="2"] span {
    background: linear-gradient(transparent 80%, #D5971E 80%)
}*/
.m-moreHdg[data-level="2"] br {
    display: none
}
.m-moreHdg[data-level="3"] {
    margin: 60px 0 0;
    padding: 15px 0;
    font-size: 18px;
    line-height: 1;
    background: #fff;
	color: #212121;
}
.m-moreTxt {
    margin: 25px 0 0;
    font-size: 18px;
    line-height: 1.6;
    text-align: center
}
.m-moreTxt a {
    color: #fff;
    text-decoration: underline
}
.m-moreTxt a:hover {
    text-decoration: none
}
.m-moreUtil {
    margin: 60px 0 0
}
.m-moreUtil__main {
    display: block
}
.m-moreUtil__main:hover {
    opacity: 1 !important
}
.m-moreUtil__main:hover .m-moreUtil__mainItem__btn {
    color: #D5971E !important;
    background: #fff
}
.m-moreUtil__mainItem {
    padding: 40px 30px 35px;
    position: relative;
    border-radius: 20px;
    box-shadow: 0 0 6px rgba(148, 81, 2, .15);
    background: #fff
}
.m-moreUtil__mainItem__hdg {
    font-weight: bold;
    font-size: 25px;
    color: #212121;
    line-height: 1.2;
    text-align: center
}
.m-moreUtil__mainItem__txt {
    margin: 20px 0 0;
    font-size: 16px;
    color: #212121;
    line-height: 1.5;
    text-align: center
}
.m-moreUtil__mainItem__btn {
    max-width: 380px;
    height: 60px;
    margin: 25px auto 0;
    font-size: 16px;
    color: #fff !important;
    line-height: 1;
    text-align: center;
    transition: .3s all ease;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    box-shadow: 0 0 10px rgba(129, 129, 129, .2);
    border-radius: 30px;
    border: 2px solid #D5971E;
    background: #D5971E
}
.m-moreUtil__mainItem__img {
    /*width: 202px;
    height: 276px;*/
    position: absolute;
    bottom: 60px;
    left: 65px
}
/*.m-moreUtil__mainItem__img img {
    width: 202px;
    height: 276px
}*/
.m-moreUtil__mainItem__chara {
    width: 330px;
    height: 291px;
    position: absolute;
    bottom: 0;
    right: 25px
}
.m-moreUtil__mainItem__chara img {
    width: 330px;
    height: 291px
}
.m-moreUtil__list {
    margin: 30px 0 0 -30px;
    display: flex;
    flex-wrap: wrap
}
.m-moreUtil__listItem {
    width: 33.3333333333%;
    padding: 0 0 0 30px;
    box-sizing: border-box
}
.m-moreUtil__listItem:hover {
    opacity: 1 !important
}
.m-moreUtil__listItem:hover .m-moreUtil__listItem__btn {
    color: #D5971E !important;
    opacity: 1;
    background: #fff
}
.m-moreUtil__listItem__box {
    padding: 170px 30px 50px;
    position: relative;
    box-sizing: border-box;
    border-radius: 6px;
    box-shadow: 0 0 6px rgba(148, 81, 2, .15);
    background: #fff
}
.m-moreUtil__listItem__box::before, .m-moreUtil__listItem__box::after {
    position: absolute;
    top: 0;
    left: 50%;
    content: ""
}
.m-moreUtil__listItem__box::before {
    width: 100px;
    height: 100px;
    margin: 0 0 0 -50px;
    top: 40px;
    border-radius: 50%;
    background: #f4f8f9
}
.m-moreUtil__listItem__box::after {
    background-image: url(../img/icn_sprite04.png);
    background-size: 2000px 2000px
}
.m-moreUtil__listItem__box[data-type="1"]::after {
    width: 43px;
    height: 33px;
    margin: 0 0 0 -22px;
    top: 73px;
    background-position: -126px -20px
}
.m-moreUtil__listItem__box[data-type="2"]::after {
    width: 61px;
    height: 36px;
    margin: 0 0 0 -30px;
    top: 73px;
    background-position: -179px -20px
}
.m-moreUtil__listItem__box[data-type="3"]::after {
    width: 47px;
    height: 43px;
    margin: 0 0 0 -23px;
    top: 72px;
    background-position: -250px -20px
}
.m-moreUtil__listItem__hdg {
    font-weight: bold;
    font-size: 24px;
    line-height: 1.2;
    text-align: center
}
.m-moreUtil__listItem__btn {
    height: 42px;
    margin: 30px 0 0;
    font-size: 16px;
    color: #fff !important;
    line-height: 1;
    text-align: center;
    transition: .3s all ease;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    box-shadow: 0 0 10px rgba(129, 129, 129, .2);
    border-radius: 20px;
    border: 2px solid #D5971E;
    background: #D5971E
}
.m-moreUtil__listItem__txt {
    margin: 15px 0 0;
    font-size: 16px;
    line-height: 1.5;
    color: #fff
}
.m-moreInquiry {
    margin: 60px 0 0
}
.m-moreInquiry__hdg {
    font-weight: bold;
    font-size: 18px;
    text-align: center;
    line-height: 1;
    color: #fff
}
.m-moreInquiry__address {
    margin: 20px 0 0;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center
}
.m-moreInquiry__tel {
    padding: 0 0 0 40px;
    font-style: normal;
    font-weight: bold;
    font-size: 38px;
    color: #fff !important;
    line-height: 1;
    letter-spacing: .05em;
    pointer-events: none;
    position: relative
}
.m-moreInquiry__tel:before {
    width: 32px;
    height: 30px;
    margin: -14px 0 0;
    position: absolute;
    top: 50%;
    left: 0;
    background-image: url(../img/icn_sprite04.png);
    background-size: 2000px 2000px;
    background-position: -84px -20px;
    content: ""
}
.m-moreInquiry__info {
    margin: 0 0 0 20px;
    font-style: normal;
    font-size: 14px;
    line-height: 1.5
}
.m-moreInquiry__txt {
    margin: 15px 0 0;
    font-size: 16px;
    line-height: 1.5;
    text-align: center
}
.m-moreInquiry__txt strong {
    font-weight: normal;
    color: #ffff00;
}
.m-moreNav {
    margin: 50px 0 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff
}
.m-moreNav__list li {
    font-size: 20px;
    border-top: 1px solid #fff
}
.m-moreNav__list li:first-child {
    border-top: none
}
.m-moreNav__list li ul li {
    border-top: none
}
.m-moreNav__list li ul a {
    padding-left: 50px;
    font-size: 18px
}
.m-moreNav__list a {
    min-height: 60px;
    padding: 10px 50px 10px 30px;
    font-size: 20px;
    color: #fff;
    line-height: 1.2;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    box-sizing: border-box;
    position: relative
}
.m-moreNav__list a::after {
    width: 8px;
    height: 8px;
    margin: -6px 0 0;
    position: absolute;
    top: 50%;
    right: 26px;
    transition: .3s all ease;
    transform: rotate(45deg);
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    content: ""
}
.m-moreNav__list a:hover {
    opacity: 1;
    background: #D5971E
}
.m-moreNav__list a:hover::after {
    right: 22px
}
.m-moreRelated {
    margin: 55px 0 0 -30px;
    display: flex;
    flex-wrap: wrap
}
.m-moreRelated__item {
    width: 33.3333333333%;
    margin: 30px 0 0;
    padding: 0 0 0 30px;
    box-sizing: border-box
}
.m-moreRelated__item:nth-child(-n+3) {
    margin-top: 0
}
.m-moreRelated__inner {
    height: 100%;
    display: block;
    background: #fff
}
.m-moreRelated__inner:hover {
    opacity: 1 !important
}
.m-moreRelated__inner:hover img {
    transform: scale(1.1)
}
.m-moreRelated__img {
    overflow: hidden
}
.m-moreRelated__img img {
    width: 100%;
    vertical-align: top;
    transition: .3s all ease
}
.m-moreRelated__ttl {
    padding: 25px 20px 30px;
    font-weight: bold;
    font-size: 20px;
    line-height: 1.5;
    color: #1d1d1d;
    display: block
}
@media screen and (min-width: 1001px)and (max-width: 1240px) {
    .m-moreUtil__mainItem {
        padding: 3.226vw 2.419vw 2.823vw;
        border-radius: 1.613vw
    }
    .m-moreUtil__mainItem__hdg {
        font-size: 2.016vw
    }
    .m-moreUtil__mainItem__txt {
        margin: 1.613vw 0 0;
        font-size: 1.29vw
    }
    .m-moreUtil__mainItem__btn {
        max-width: 30.645vw;
        height: 4.839vw;
        margin: 2.016vw auto 0;
        font-size: 1.29vw;
        border-radius: 2.419vw;
        border: .161vw solid #e85103
    }
    .m-moreUtil__mainItem__img {
        width: 16.29vw;
        height: 22.258vw;
        bottom: .645vw;
        left: 5.242vw
    }
    .m-moreUtil__mainItem__img img {
        width: 16.29vw;
        height: 22.258vw
    }
    .m-moreUtil__mainItem__chara {
        width: 26.613vw;
        height: 23.468vw;
        right: 2.016vw
    }
    .m-moreUtil__mainItem__chara img {
        width: 26.613vw;
        height: 23.468vw
    }
}
@media screen and (max-width: 1000px) {
    .m-moreUtil__mainItem__img {
        margin: 0 auto 20px;
        position: static;
        display: table
    }
    .m-moreUtil__mainItem__chara {
        display: none
    }
    .m-moreUtil__listItem {
        width: 100%;
        margin: 30px 0 0
    }
    .m-moreUtil__listItem:first-child {
        margin-top: 0
    }
    .m-moreUtil__listItem__btn {
        max-width: 380px;
        margin-left: auto;
        margin-right: auto
    }
    .m-moreRelated__item {
        width: 50%
    }
    .m-moreRelated__item:nth-child(-n+3) {
        margin-top: 30px
    }
    .m-moreRelated__item:nth-child(-n+2) {
        margin-top: 0
    }
}
@media screen and (max-width: 743px) {
    .m-more__inner {
        padding: 10.43vw 0
    }
    .m-more__inner::before {
        margin-left: -27px;
        border-right: 27px solid rgba(0, 0, 0, 0);
        border-left: 27px solid rgba(0, 0, 0, 0);
        border-top: 25px solid #fff
    }
    .m-moreHdg[data-level="2"] {
        font-size: 29px;
        line-height: 1.4
    }
    .m-moreHdg[data-level="2"] br {
        display: block
    }
    .m-moreHdg[data-level="3"] {
        margin: 7.823vw 0 0;
        padding: 15px 0;
        font-size: 16px
    }
    .m-moreTxt {
        margin: 3.259vw 0 0
    }
    .m-moreUtil {
        margin-top: 75px
    }
    .m-moreUtil__mainItem {
        padding: 0;
        position: static;
        box-shadow: none;
        background: none
    }
    .m-moreUtil__mainItem__body {
        padding: 135px 20px 30px;
        position: relative;
        border-radius: 20px;
        box-shadow: 0 0 6px rgba(148, 81, 2, .15);
        background: #fff
    }
    .m-moreUtil__mainItem__body::before {
        width: 200px;
        height: 50px;
        margin: 0 0 0 -100px;
        position: absolute;
        top: 70px;
        left: 50%;
        border-radius: 50%;
        background: #f4f8f9;
        content: ""
    }
    .m-moreUtil__mainItem__hdg {
        font-size: 20px
    }
    .m-moreUtil__mainItem__txt {
        margin-top: 15px;
        color: #fff
    }
    .m-moreUtil__mainItem__btn {
        max-width: inherit;
        height: 40px;
        margin: 20px auto 0;
        font-size: 16px
    }
    .m-moreUtil__mainItem__img {
        width: 100px;
        height: auto;
        margin: 0 0 0 -50px;
        position: absolute;
        bottom: inherit;
        top: 35px;
        left: 50%
    }
    .m-moreUtil__mainItem__img img {
        width: 100px;
        height: auto
    }
    .m-moreUtil__list {
        margin: 30px 0 0;
        display: block
    }
    .m-moreUtil__listItem {
        width: 100%;
        margin: 30px 0 0;
        padding: 0
    }
    .m-moreUtil__listItem:first-child {
        margin-top: 0
    }
    .m-moreUtil__listItem__box {
        padding: 115px 20px 30px;
        border-radius: 10px
    }
    .m-moreUtil__listItem__box::before {
        width: 75px;
        height: 75px;
        margin: 0 0 0 -50px;
        margin-left: -37px;
        top: 20px
    }
    .m-moreUtil__listItem__box::after {
        transform: scale(0.8)
    }
    .m-moreUtil__listItem__box[data-type="1"]::after {
        top: 42px
    }
    .m-moreUtil__listItem__box[data-type="2"]::after {
        top: 40px
    }
    .m-moreUtil__listItem__box[data-type="3"]::after {
        top: 38px
    }
    .m-moreUtil__listItem__hdg {
        font-size: 20px
    }
    .m-moreUtil__listItem__btn {
        max-width: inherit;
        height: 40px;
        margin: 20px 0 0
    }
    .m-moreInquiry {
        margin: 55px 0 0
    }
    .m-moreInquiry__hdg {
        font-size: 16px
    }
    .m-moreInquiry__address {
        margin: 15px 0 0;
        display: block
    }
    .m-moreInquiry__tel {
        margin: 0 auto;
        padding-left: 30px;
        font-size: 32px;
        pointer-events: inherit;
        display: table
    }
    .m-moreInquiry__tel:before {
        transform: scale(0.9)
    }
    .m-moreInquiry__info {
        margin: 15px 0 0;
        text-align: center;
        display: block
    }
    .m-moreNav {
        margin: 50px 0 0
    }
    .m-moreNav__list li {
        font-size: 18px
    }
    .m-moreNav__list li ul a {
        padding-left: 45px;
        font-size: 16px
    }
    .m-moreNav__list a {
        min-height: 55px;
        padding: 10px 40px 10px 20px;
        font-size: 18px
    }
    .m-moreNav__list a::after {
        transform: rotate(45deg) scale(0.6);
        right: 15px
    }
    .m-moreNav__list a:hover::after {
        right: 15px
    }
    .m-moreRelated {
        margin: 40px 0 0
    }
    .m-moreRelated__item {
        width: 100%;
        padding: 0
    }
    .m-moreRelated__item:nth-child(-n+3) {
        margin-top: 30px
    }
    .m-moreRelated__item:first-child {
        margin-top: 0
    }
    .m-moreRelated__ttl {
        padding: 20px;
        font-size: 18px
    }
}
@media screen and (max-width: 500px) {
    .m-moreHdg[data-level="2"] {
        font-size: 5.8vw
    }
    .m-moreTxt {
        margin: 3.259vw 0 0
    }
    .m-moreUtil {
        margin-top: 15vw
    }
    .m-moreInquiry {
        margin: 11vw 0 0
    }
    .m-moreNav {
        margin: 10vw 0 0
    }
    .m-moreRelated {
        margin: 8vw 0 0
    }
}
.m-popup {
    max-width: 300px;
    margin: 0;
    transition: .8s cubic-bezier(0.22, 1, 0.36, 1);
    position: fixed;
    bottom: -100%;
    right: 0;
    z-index: 100;
    background: #fff
}
.m-popup__btn {
    width: 100%;
    height: 30px;
    position: relative;
    display: block;
    overflow: hidden;
    box-sizing: border-box;
    background: #44474b
}
.m-popup__btn span {
    width: 30px;
    height: 30px;
    text-indent: -999em;
    transition: .3s all ease;
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    background: #D5971E
}
.m-popup__btn span::before, .m-popup__btn span::after {
    width: 14px;
    height: 1px;
    margin: 0 0 0 -7px;
    opacity: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    border: none;
    background: #fff;
    content: ""
}
.m-popup__btn span::before {
    transform: rotate(-45deg)
}
.m-popup__btn span::after {
    transform: rotate(45deg)
}
.m-popup__btn:hover span {
    opacity: .7
}
.m-popup__btn:active {
    opacity: 1
}
.m-popup__inner {
    display: block;
    border: 4px solid #D5971E
}
.m-popup__inner img {
    width: 100%;
    transition: .3s all ease
}
.m-popup__inner:hover {
    opacity: 1 !important
}
.m-popup__inner:hover img {
    opacity: .7
}
.m-popup.is-active {
    bottom: 0
}
.m-popup.is-hide {
    margin: -30px 0 0
}
.m-popup.is-hide .m-popup__btn span::before, .m-popup.is-hide .m-popup__btn span::after {
    width: 7px;
    height: 7px;
    margin: -1px 0 0 -4px;
    transition: .3s all ease;
    transform: rotate(-45deg);
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    background: none
}
.m-popup.is-hide .m-popup__btn span::after {
    opacity: 0
}
@media screen and (max-width: 743px) {
    .m-popup {
        max-width: 200px
    }
    .m-popup__inner {
        border-width: 2px
    }
}
@keyframes scroll-hint-appear {
    0% {
        transform: translateX(40px);
        opacity: 0
    }
    10% {
        opacity: 1
    }
    50%, 100% {
        transform: translateX(-40px);
        opacity: 0
    }
}
.scroll-hint.is-right-scrollable {
    background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0))
}
.scroll-hint.is-right-scrollable.is-left-scrollable {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0))
}
.scroll-hint.is-left-scrollable {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0))
}
.scroll-hint-icon {
    position: absolute;
    top: calc(50% - 25px);
    left: calc(50% - 60px);
    box-sizing: border-box;
    width: 120px;
    height: 80px;
    border-radius: 5px;
    transition: opacity .3s;
    opacity: 0;
    background: rgba(0, 0, 0, .7);
    text-align: center;
    padding: 20px 10px 10px 10px
}
.scroll-hint-icon-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-height: 100%;
    pointer-events: none
}
.scroll-hint-text {
    font-size: 10px;
    color: #fff;
    margin-top: 5px
}
.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
    opacity: .8
}
.scroll-hint-icon:before {
    display: inline-block;
    width: 40px;
    height: 40px;
    color: #fff;
    vertical-align: middle;
    text-align: center;
    content: "";
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=)
}
.scroll-hint-icon:after {
    content: "";
    width: 34px;
    height: 14px;
    display: block;
    position: absolute;
    top: 10px;
    left: 50%;
    margin-left: -20px;
    background-repeat: no-repeat;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
    opacity: 0;
    transition-delay: 2.4s
}
.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
    opacity: 1
}
.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
    animation: scroll-hint-appear 1.2s linear;
    animation-iteration-count: 2
}
.scroll-hint-icon-white {
    background-color: #fff;
    box-shadow: 0 4px 5px rgba(0, 0, 0, .4)
}
.scroll-hint-icon-white:before {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=)
}
.scroll-hint-icon-white:after {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==)
}
.scroll-hint-icon-white .scroll-hint-text {
    color: #000
}




/*20241223*/
.m-lp-btn-beside {
	display: flex;
	justify-content: space-around;
}

.m-lp-btn-beside .m-simulationBtn-lp2b{
	width: 100%;
    max-width: 420px;
    height: 80px;
    margin: 60px auto 0 0;
    font-weight: 500;
    font-size: 20px;
    color: #212121 !important;
    line-height: 1.25;
    text-align: center;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 16px rgba(129, 129, 129, .2);
    box-sizing: border-box;
    border-radius: 40px;
    border: 2px solid #212121;
    /*background: #D5971E;*/
}

.m-simulationBtn-lp2b:hover {
    color: #fff !important;
    opacity: 1;
    background: #D5971E;
	border: none;
}

@media screen and (max-width: 743px) {
	.m-lp-btn-beside {
    display: block;
}
	.m-pointImg p {
	font-size: 12px;
    color: #494949;
    position: relative;
	}
}






/*フェードイン項目*/
@media screen and (min-width: 1001px)and (max-width: 1240px) {
	
	
.scroll-space{
  box-sizing: border-box;
  padding-top: 300px;
  height: 1600px;
  color: #fff;
  overflow: hidden;
	}
  .green{
    background: #26AA5A;
    width: 200px;
    height: 200px;
    padding: 30px;
    margin: 0 auto 50px;
  }
}
.fadein {
    opacity: 0;
    transform: translate(0,0);
    transition: all 1.5s;
  &.fadein-bottom{
      transform: translate(0,30px);
  }
  &.scrollin{
    opacity: 1 !important;
    transform: translate(0, 0) !important;
  }
}

	
	
}



/*2508本番改修*/
.m-simulationLyt__chara::before {
    display: none;
}
.m-simulationLyt__chara::after {
    display: none;
}





/*2509マンガ04改修*/
.m-simulationLyt__chara::before {
	display: none;
}

.profile-card {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin: 0 0 20px 0;
  background-color: #fff;
  padding: 1.5vw 1.5vw 0 1.5vw;
  border-radius: 8px;
}

.profile-image {
  margin: auto 0;
}

.profile-image img {
  width: 150px;
  height: 150px;
  object-fit: cover;
  background-color: #ccc;
  border-radius: 8px;
}

.profile-text {
  flex: 1;
}

.profile-text .label {
  font-size: 14px;
  color: #666;
  margin: 0 0 5px;
}

.profile-text .title {
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 10px;
}

.profile-text .title span {
  font-size: 20px;
}

.profile-text .description {
  margin: 0 0 10px;
}

.profile-text .regulation {
  font-size: 14px;
  color: #666;
}

.n_o_description {
  font-size: 14px;
  color: #666;
}

.n_btn_t04 {
	font-size: 20px;
}

.n_btn_t04::after {
	position: absolute;
    height: 0.2rem;
    width: 100%;
    right: 0;
    /*border-top: 3px solid #fff;*/
    background: repeating-linear-gradient(45deg, transparent 5px 10px, #fff 10px 13px);
    content: '';
}

  .sp_04_vtext {
	display: none;
  }

.m04_09logo {
	width: 250px;
    padding: 2vw 0 0 0;
    margin: 0 auto;
}

.n_tp {
	font-size: 18px;
}

/* レスポンシブ対応（スマホ用） */
@media (max-width: 768px) {
  .m-heroList__btn[data-type=dl] {
    color: #fff;
    background: #D5971E;
    border: 3px solid #fff;
    display: block;
    box-shadow: 5px 5px 5px #161616;
    height: 60px;
}
	
  .profile-card {
    flex-direction: column;
    align-items: center;
    text-align: center;
	padding: 20px;
  }

  .profile-image img {
    width: 120px;
    height: 120px;
  }

  .profile-text {
    text-align: left;
    width: 100%;
  }
	
  .n_btn_t04 {
    font-size: 14px;
  }
	
    .sp_04_vtext {
	display: block;
  }
	
	.m04_09logo {
	width: 50%;
    padding: 8vw 0 0 0;
}
	.n_tp {
	font-size: 15px;
}
}