@charset "utf-8";
/**base**/
* {
    font-size: 16px;
    box-sizing: border-box;
}
/** common **/
.mb-40px {
    margin-bottom: 40px !important;
}
.mb-20px {
    margin-bottom: 20px !important;
}
.ml-8px {
    margin-left: 8px;
}
.ml-1em {
    margin-left: 1em;
}
.ml-2em {
    margin-left: 2em;
}
.pt-40px {
    padding-top: 40px !important;
}
.pt-20px {
    padding-top: 20px !important;
}
/**layout**/
.w-out-content {
    max-width: 100%;
    width: 100%;
    min-width: 320px;
}
.w-in-content {
    max-width: 920px;
    width: 100%;
    margin: 0 auto;
}


/** design**/
#header {
    height: 80px;
    width: 100%;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 2px 0px 4px rgba(0,0,0,0.3);
}
.global-header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
}
.global-header .chatchCopy {
    margin-left: 3em;
}
.global-header .logoImg img {
    display: block;
    height: 70px;
    width: auto;
}
.global-header .globalEntryBtn {
    background: rgb(84,162,240);
    background: linear-gradient(0deg, rgba(84,162,240,1) 0%, rgba(11,96,180,1) 100%);
    color: #fff;
    font-weight: bold;
    height: 80px;
    display: flex;
    align-items: center;
    padding: 0 1.5em;
}
.subheader {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 999;
    background-color: #fff;
    width: 100%;
}
.subheader .logo img {
    display: block;
    height: 48px;
    width: auto;

}
.subheader .globalEntryBtn {
    background: rgb(84,162,240);
    background: linear-gradient(0deg, rgba(84,162,240,1) 0%, rgba(11,96,180,1) 100%);
    color: #fff;
    font-weight: bold;
    height: 68px;
    display: flex;
    align-items: center;
    padding: 0 1em;
}

.chatchCopy,.logoTxt span {
    font-size: clamp(14px, 1.8vw, 24px);
}
.m_visual {
    margin-bottom: 200px;
    position: relative;
}
.mv_toplayer {
    width: 100%;
    display: flex;
    justify-content: center;
    position: absolute;
    bottom: -200px;
    left: 0;
}

.contentTitle-ll {
    font-size: clamp(24px, 4.6vw, 64px);
    font-weight: bold;
}
.contentTitle-l {
    font-size: clamp(20px, 4.0vw, 48px);
    font-weight: bold;
}
.contentTitle-mid {
    font-size: clamp(14px, 1.8vw, 20px);
}
.contentTitle-s {
    font-size: clamp(14px, 1.4vw, 16px);
}
.feature_message {
    background-image: url(../image/Bg-1.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 23vh 0;
}

.bg-container-r {
    background-image: url(../image/eng-Bg-1-2.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom center;
    width: 100%;
    display: flex;
    justify-content: center;
}
.bg-container-l {
    background-image: url(../image/eng-Bg-2.png);
    background-repeat: no-repeat;
    background-size: 1920px;
    background-position: bottom -100px left 0px;
    width: 100%;
    display: flex;
    justify-content: center;
}
.eng-container-r {
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    align-items: center;
    /* width: 1024px; */
    height: 700px;
    position: relative;
}
.eng-container-l {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.eng-container-r dl {
    padding-top: 100px;
}
.eng-container-l dl {
    padding-top: 100px;
}
.eng_wrap-r {
    background-image: url(../image/Bg-2.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 10vh 0;
}
.eng_wrap-l {
    background-image: url(../image/Bg-3.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 10vh 0;
}

.eng_img {
    width: 484px;
    height: 560px;
    display: block;
    position: absolute;
    right: 0px;
    bottom: 0px;
    /* width: clamp(280px, 20vw, 400px); */
}
.eng_wrap {
    width: clamp(300px, 26vw, 500px);
}

.eng-container-r .eng_wrap {
    position: relative;
}
.eng-container-l .eng_wrap {
    position: relative;
}
.eng-container-r .eng_wrap .eng_wrap-title {
    position: absolute;
    right: 0;
    top: 16px;
}
.eng-container-l .eng_wrap .eng_wrap-title {
    position: absolute;
    right: 0;
    top: 16px;
}

.vision_message {
    background-image: url(../image/vision-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: end;
}
.vision_message .text-container {
    padding: 13vh 1.5em;
}
.vision_message .text-container dd {
    padding: 0 1em;
    width: 400px;
}
.mission_message {
    background-image: url(../image/mission-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: start;
}
.mission_message .text-container {
    padding: 13vh 1.5em;
}
.mission_message .text-container dd {
    padding: 0 1em;
    max-width: 400px;
}

.uk-accordion-title {
    background-color: #e3eef9;
    padding: 1em;
}

.require_wrap dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    align-items: center;
    border-bottom: 1px solid #333;
    padding-bottom: 20px;
}
.require_wrap dt {
    width: 10em;
}
.require_wrap dd {
    width: calc(100% - 10em);
    max-width: 500px;
}

.links ul {
    display: flex;
    justify-content: space-between;
    align-items: start;
    flex-wrap: wrap;
}
.links ul li {
    width: calc(100% / 3);
    padding: 1em 2.5em;
}
.ppolicy {
    margin-bottom: 80px;
}
.ppolicy li {
    margin-bottom: 0.75em;
}
.totop {
    width: 100%;
    background-color: #f4f4ff;
}
.totop a {
    display: block;
    padding: 15px 0;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
}
.totop a:hover {
    text-decoration: none;
    opacity: .7;
}
.copy {
    background-color: #0b60b4;
    color: #fff;
    padding: 15px 0;
    font-size: 12px;
    text-align: center;
    margin: 0 0 0 0;
}
.require_content dd {
    line-height: 1.8em;
}
.require_content ul ul li,.require_content ul ol li {
    list-style: unset;
}
.torequire {
    background-color: #e3eef9;
    padding: 0.5em 2.5em;
    font-size: 16px;
    border-radius: 4px;
    margin-top: 1em;
    color: #333;
    text-decoration: none;
}
.torequire:hover,.torequire:visited {
    text-decoration: none;
    color: #333;
}
.corp_links-btn {
    display: block;
    width: 66%;
    padding: 1em;
    color: #fff;
    background-color: #0b60b4;
    border-radius:4px;
    text-align: center;
    border: 1px solid #0b60b4;
    text-decoration: none;
    transition: all 0.15s;
}
.corp_links-btn:hover {
    color: #0b60b4;
    background-color: #FFF;
    text-decoration: none;
}
/** responsive **/
#container {
    margin-top: 80px;
}
.sp {
    display: none;
}
.pc {
    display: block;
}
.subheader {
    display: none;
}
.footer_links {
    background-color: #606571;
    padding: 1.5em 0;
}
.corp_info {
    width: 50%;
    color: #fff;
}
.access_info {
    width: 50%;
}
.corp_info a {
    color: #fff !important;
    text-decoration: none;
}

@media screen and (max-width:933px ){
    .w-in-content {
        padding: 0 7.5vw;
    }
    .w-out-content {
        max-width: 100%;
        width: 100%;
        min-width: 320px;
    }
}
@media screen and (max-width:787px ){
    #container {
        margin-top: 1em;
    }
    .global-header h1 {
        display: none;
    }
    .global-header .globalEntry {
        display: none;
    }
    .global-header .chatchCopy {
        margin-left: 0px;
    }
    #header {
        height: auto;
    }
    .subheader {
        display: block;
    }
    .chatchCopy {
        font-size: clamp(12px, 3.6vw, 24px);
        margin-left: 0px !important;
        padding: 1em !important;
    }
    .header-container {
        justify-content: center !important;
    }
    .w-in-content p {
        padding: 0.5em 0.75em;
    }
    .mv_toplayer {
        bottom: -100px;
    }
    .links ul li {
        width: calc(100% / 2);
        padding: 1em 2.5em;
    }
    .feature_message {
        background-image: url(../image/Bg-1.png);
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        padding: 23vh 2em;
    }
    .require_wrap dl {
        display: block;
        flex-wrap: wrap;
        justify-content: left;
        align-items: center;
        border-bottom: 1px solid #333;
        padding-bottom: 20px;
    }
    .require_wrap dt {
        width: 100%;
    }
    .require_wrap dd {
        width: 100%;
    }
    .vision_message {
        background-image: url(../image/vision-bg-sp.png);
        display: flex;
        height: 60vh;
        align-items: end;
        justify-content: center;
    }
    .vision_message .text-container {
        padding: 0 1.5em;
    }
    .vision_message .text-container dd {
        padding: 0 0;
        max-width: 100%;
        width: 100%;
    }
    .mission_message {
        background-image: url(../image/mission-bg-sp.png);
        display: flex;
        height: 60vh;
        align-items: end;
        justify-content: center;
    }
    .mission_message .text-container {
        padding: 0 1.5em;
    }
    .mission_message .text-container dd {
        padding: 0 0;
        max-width: 100%;
        width: 100%;
    }
    .require_wrap dt {
        margin-bottom: 0.5em;
        font-size: 14px;
    }
    .require_wrap dd {
        font-size: 12px;
    }
    .ppolicy {
        font-size: 14px;
    }
    .ppolicy li {
        font-size: 12px;
    }
    #footer {
        margin-bottom: 68px;
    }
    .require_content ul ul li,.require_content ul ol li {
        list-style: unset;
        font-size: 12px;
    }
    .corp_info {
        width: 100%;
        padding: 1em 0;
    }
    .access_info {
        width: 100%;
        padding: 1em 0;
    }
}

@media screen and (max-width:500px ){
    .sp {
        display: block;
    }
    .pc {
        display: none;
    }
    .mv_toplayer {
        bottom: -75px;
    }
    .links ul {
        display: block;
    }
    .links ul li {
        width: calc(100% / 1);
        padding: 1em 0em;
    }
    .links ul li .child a {
        text-align: center;
        display: block;
    }
    .links ul li img {
        width: 33vw;
        display: inline-block;
    }
    .m_visual {
        margin-bottom: 75px;
        position: relative;
    }
    .vision_message {
        background-image: url(../image/vision-bg-sp.png);
        display: flex;
        height: 75vh;
        align-items: end;
        justify-content: center;
    }
    .mission_message {
        background-image: url(../image/mission-bg-sp.png);
        display: flex;
        height: 75vh;
        align-items: end;
        justify-content: center;
    }
    .corp_links-btn {
        width: 300px;
    }
}
@media screen and (max-width:340px ){
    .subheader .globalEntryBtn {
        padding: 0 0.5em;
    }
}
