html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
* {
    box-sizing: border-box;
}
html{
    font-size: 16px;
    /* font-size: 100%; */
    font-size: 1vw;
    /* font-size: 11.20238984316654px; */
}
@media (max-width: 1120px) {
    html{
        /* font-size: 11.20238984316654px; */
        /* font-size: 100%; */
    }
}
@media (max-width: 767px) {
    html{
        font-size: 14px;
        font-size: 1vw;
    }
}
@media (max-width: 437px) {
    html{
        font-size: 4.375px;
        font-size: 1vw;
    }
}
@media (max-width: 375px) {
    html{
        font-size: 3.755px;
        /* font-size: 1vw; */
    }
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
    line-height:1;
    /* font-family: 'Noto Sans', sans-serif; */
    /* font-family:"Helvetica Neue" , "HelveticaNeue", Arial , Verdana , Roboto ,"Osaka","OSAKA_f",'Noto Sans JP',"ヒラギノ角ゴ ProN W3","HiraKakuProN-W3","ヒラギノ角ゴ Pro W3","HiraKakuPro-W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS Pgothic",sans-serif; */
    /* font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; */
    /* font-family: 'Noto Sans', sans-serif; */
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", "Segoe UI", Verdana, Meiryo, sans-serif;
    font-weight:400;
    /* min-width:1120px; */
    color:#000;
    -webkit-font-smoothing: antialiased;
    font-feature-settings: "palt";
    letter-spacing: 0;
    /* overflow: hidden; */
}
@media (max-width: 767px) {
    body {
        /* font-size:13px; */
        min-width:100%;
    }
}
article{
    overflow:hidden;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}

input:focus,textarea:focus{
    outline: none;
}

img{
    max-width:100%;
}

.pc{
    display:block;
}
@media (max-width: 767px) {
    .pc{
        display:none;
    }
}

.sp{
    display:none;
}
@media (max-width: 767px) {
    .sp{
        display:block;
    }
}

a{
    text-decoration: none;
}
a:hover,
input[type="submit"]:hover{
    opacity: 0.7;
}

/*****************************************************/
html.is-fixed, html.is-fixed body {
    /* height: 100%; */
    overflow: hidden;
}

/* .inner{
    width:884px;
    max-width:78.929rem;
    width:100%;
    margin:auto;
}
@media (max-width: 1050px) {
    .inner{
        max-width:100%;
        padding:0 20px;
    }
}
@media (max-width: 767px) {
    .inner{
        width:100%;
        padding:0 20px;
        padding:0 6rem;
    }
} */
main{
    position:relative;
    /* overflow:hidden; */
}

/*****************************************************/


body{
    background-color:#fff;
}
.site__main__contents{
    /* overflow:hidden !important; */
}

/*****************************************************/

.p_top_kv{
    /* padding:55px; */
    padding:2.895rem;
    height:100vh;
    min-height:600px;
    display:flex;
    flex-direction: column;
    justify-content:space-between;
    /* position:relative; */
    /* opacity: 1 !important; */
    /* transform: none !important; */
}
@media (max-width: 767px) {
    .p_top_kv{
        /* padding:24px; */
        padding:6.4rem;
        /* min-height:400px; */
        min-height:106.667rem;
    }
}

.p_top_kv-bg-main{
    position:relative;
    width:100%;
    height:100%;
}
.p_top_kv-bg-main2{
    /* background-color:#353235;  */
    /* background-image:url(../img/kv_bg.png); */
    /* background-size:100% 100%;
    width:100%;
    height:100%;
    opacity: 0.2; */
    position: relative;
}
.p_top_kv-head{
    display:flex;
    justify-content:space-between;
    position: relative;
    z-index: 2;
    opacity: 0;
}
.p_top_kv-head.is_active{
    animation-name: fadein;
    animation-duration: 3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
.p_top_kv-head.is_active_on{
    opacity: 1;
}
.p_top_kv-head-block{

}
.p_top_kv-head-block ul{
    
}
.p_top_kv-head-block ul li{
    /* margin-bottom:10px; */
    margin-bottom:0.714rem;
}
@media (max-width: 767px) {
    .p_top_kv-head-block ul li{
        /* margin-bottom:13px; */
        margin-bottom:3.467rem;
    }
}
.p_top_kv-head-block ul li:last-child{
    margin-bottom:0px;
}
.p_top_kv-head-block ul li a,
.p_top_kv-head-block ul li p{
    /* font-size: 25px; */
    font-size: 1.316rem; 
    text-align: left;
    color: #000;
}
@media (max-width: 767px) {
    .p_top_kv-head-block ul li a,
    .p_top_kv-head-block ul li p{
        /* font-size: 16px; */
        font-size: 4.267rem;
    }
}
.p_top_kv-bottom{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    position: relative;
    z-index: 2;
    opacity: 0;
}
@media (max-width: 767px) {
    .p_top_kv-bottom{
        display:block;
    }
}
.p_top_kv-bottom.is_active{
    animation-name: fadein;
    animation-duration: 3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
.p_top_kv-bottom-block:first-child{
    /* width:780px; */
    width:41.053rem;
}
@media (max-width: 767px) {
    .p_top_kv-bottom-block{

    }
    .p_top_kv-bottom-block:first-child{
        width:75%;
    }
    .p_top_kv-bottom-block:last-child{
        display:none;
    }
}
.p_top_kv-bottom-block ul{
    
}
.p_top_kv-bottom-block ul li{
    margin-bottom:10px;
}
.p_top_kv-bottom-block ul li:last-child{
    margin-bottom:0px;
}
.p_top_kv-bottom-block ul li a,
.p_top_kv-bottom-block ul li span{
    /* font-size: 28px; */
    font-size: 1.474rem;
    text-align: left;
    color: #000;
}
.p_top_kv-bottom-block h1{
    /* width:188.32px;
    margin-bottom:20px; */
    width:13.451rem;
    margin-bottom:1.429rem;
    opacity: 0;
}
@media (max-width: 767px) {
    .p_top_kv-bottom-block h1{
        /* width:120px;
        margin-bottom:15px; */
        width:32rem;
        margin-bottom:4rem; 
    }
}
.p_top_kv-bottom-block h1.is_active{
    animation-name: fadein;
    animation-duration: 3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
.p_top_kv-bottom-block h1 img{
    width:100%;
}

.p_top_kv-bottom-block-scroll{
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: sideways;
    text-orientation: sideways;
    /* font-size: 28px; */
    font-size: 1.474rem;
    letter-spacing: 0.06em;
    line-height: 1em;
    text-align: left;
    color: #000;
}
.p_top_kv-bottom-block-scroll span{
    position:relative;
}
.p_top_kv-bottom-block-scroll span:before{
    position:absolute;
    /* bottom:-154px; */
    bottom:-8.105rem;
    left:50%;
    transform:translateX(-50%);
    background-image:url(../img/scroll_arrow.svg);
    /* width:11px;
    height:149px; */
    width:0.579rem;
    height:7.842rem;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position:cetner;
    content:"";
}


.p_top_kv-bottom-title{
    /* font-size: 32px; */
    /* font-size: 1.684rem; */
    /* font-size: 28.8px; */
    font-size: 1.516rem;
    letter-spacing: 0.1em;
    text-align: left;
    color: #000;
    /* margin-bottom:20px; */
    margin-bottom:1.429rem;
    opacity: 0;
}
@media (max-width: 767px) {
    .p_top_kv-bottom-title{
        /* font-size: 20px;
        margin-bottom:15px; */
        /* font-size: 5.333rem; */
        /* font-size: 18px; */
        font-size: 4.8rem; 
        margin-bottom:4rem;
    }
}
.p_top_kv-bottom-title.is_active{
    animation-name: fadein;
    animation-duration: 3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
.p_top_kv-bottom-text{
   /* font-size: 20px; */
   font-size: 1.053rem;
    line-height: 1.25em;
    text-align: left;
    color: #000;
    opacity: 0;
}
@media (max-width: 767px) {
    .p_top_kv-bottom-text{
        /* font-size: 14px; */
        font-size: 3.733rem; 
        line-height: 1.5em;
    }
}
.p_top_kv-bottom-text.is_active{
    animation-name: fadein;
    animation-duration: 3s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}
@keyframes fadein {
    0% {
       /* アニメーション開始時の指定 */
       opacity: 0;
    }
    100% {
       /* アニメーション終了時の指定 */
       opacity: 1;
    }
 }

/*****************************************************/

.p_top_about{
    /* padding:150px 0; */
    /* padding:10.714rem 0; */
    /* padding:180px 0; */
    padding:12.857rem 0;
    /* background-color:#FFF; */
    height:100vh;
    /* min-height:650px; */
    min-height:46.429rem;
    display: flex;
    align-items: center;
}
@media (max-width: 767px) {
    .p_top_about{
        /* padding:65px 0 85px; */
        padding:17.333rem 0 22.667rem;
    }
}
.p_top_about_inner{
    /* max-width:1160px; */
    max-width:82.857rem;
    width:100%;
    margin:auto;
}
@media (max-width: 767px) {
    .p_top_about_inner{
        /* max-width:310px; */
        max-width:100%;
        /* padding:0 24px; */
        padding:0 6.4rem;
    }
}
.p_top_about-content{
    display:flex;
    align-items:center;
    justify-content: space-between;
    /* max-width:840px; */
    max-width:60rem;
    width:100%;
    margin:auto;
    /* gap:0 114px; */
    gap:0 8.143rem;
}
@media (max-width: 767px) {
    .p_top_about-content{
        display:block;
        max-width:100%;
        gap:0;
    }
}
.p_top_about-content-textarea{
    /* width:calc(100% - 176px - 114px); */
    width:calc(100% - 12.571rem - 8.143rem);
}
@media (max-width: 767px) {
    .p_top_about-content-textarea{
        width:100%;
    }
}
.p_top_about-content-textarea h2{
    /* font-size: 38.64px; */
    font-size: 2.034rem;
    letter-spacing: 0.1em;
    text-align: left;
    color: #000;
    /* padding-left:20px;
    margin-bottom:60px; */
    padding-left:1.053rem;
    margin-bottom:3.158rem;
    position:relative;
    border-left:6px solid #000;
}
@media (max-width: 767px) {
    .p_top_about-content-textarea h2{
        /* font-size: 24px;
        padding-left:10px;
        margin-bottom:30px; */
        font-size: 6.4rem;
        padding-left:2.667rem;
        margin-bottom:8rem;
        border-left:4px solid #000;
    }
}

.p_top_about-content-text{
    font-weight: 500;
    /* font-size: 21px; */
    font-size: 1.105rem;
    line-height: 2.25em;
    text-align: left;
    color: #000;
}
@media (max-width: 767px) {
    .p_top_about-content-text{
        /* font-size: 14px; */
        font-size: 3.733rem;
    }
}
.p_top_about-content-image{
    /* width:176px; */
    width:12.571rem;
    position:relative;
}
@media (max-width: 767px) {
    .p_top_about-content-image{
        width:100%;
        /* padding:50px; */
        padding:13.333rem 13.333rem 50%;
        text-align:center;
    }
}
.p_top_about-content-image img{
    /* width:340px; */
    width:17.895rem;
    position:relative;
}
@media (max-width: 767px) {
    .p_top_about-content-image img{
        /* width:150px; */
        width:40rem;
    }
}
/**************************************************/


.p_top_business{
    /* padding:110px 0 150px; */
    padding:5.789rem 0 7.895rem;
    position:relative;
    /* left: 0; */
    /* background-color:rgba(255,255,255,0.7); */
    background-color:#FFFFFF4D;
}
@media (max-width: 767px) {
    .p_top_business{
        /* padding:0 0 75px; */
        padding:20rem 0 20rem;
        height:auto;
    }
}
.p_top_business:before{
    position:absolute;
    /* top:-75px;
    left:50%; */
    top:-3.947rem;
    left:50%;
    transform:translateX(-50%);
    background-image:url(../img/scroll_arrow.svg);
    /* width:11px;
    height:149px; */
    width:0.579rem;
    height:7.842rem;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position:cetner;
    content:"";
}
.p_top_business_inner{
    /* padding:0 115px; */
    padding:0 7.368rem;
    width:100%;
    margin:auto;
    /* margin-bottom:150px; */
    margin-bottom:7.895rem;
}
@media (max-width: 767px) {
    .p_top_business_inner{
        max-width:100%;
        padding:0;
        /* margin-bottom:60px; */
        margin-bottom:16rem;
    }
}
.p_top_business-title{
    position:relative;
}
@media (max-width: 767px) {
    .p_top_business-title{
        /* padding:0 24px; */
        padding:0 6.4rem;
    }
}
.p_top_business-title h2{
    /* font-size: 38.64 px; */
    font-size: 2.034rem;
    text-align: left;
    color: #000;
    /* padding-left:20px; */
    padding-left:1.053rem;
    position:relative;
    border-left:6px solid #000;
}
@media (max-width: 767px) {
    .p_top_business-title h2{
        /* font-size: 24px;
        padding-left:10px; */
        font-size: 6.4rem;
        padding-left:2.667rem;
        border-left:4px solid #000;
    }
}
.p_top_business-contentarea{
     /* max-width:1580px; */
     max-width:83.158rem;
    padding:0;
    position:relative;
    width:100%;
    margin:auto;
}
@media (max-width: 767px) {
    .p_top_business-contentarea{
        max-width: 100%;
        width:100%;
    }
}
.p_top_business-content{
    display:flex;
    justify-content:flex-start;
    /* margin-bottom:65px; */
    margin-bottom:3.421rem;
}
@media (max-width: 767px) {
    .p_top_business-content{
      position:static;
    }
}
.p_top_business-content:nth-child(2n - 1){
    justify-content:flex-start;
}
.p_top_business-content:nth-child(2n){
    justify-content:flex-end;
}
.p_top_business-content:last-child{
    margin-bottom:0;
}

.p_top_business-blockarea{
    display:flex;
}
@media (max-width: 767px) {
    .p_top_business-blockarea{
        /* padding:0 0 20px 0; */
        padding:0 0 5.333rem;
        margin:0 0 5.333rem;
        justify-content: flex-end;
    }
    .p_top_business-content:nth-child(3) .p_top_business-blockarea{
        flex-direction: row-reverse;
        justify-content: flex-end;
    }
}

.p_top_business-block-name{
    display:flex;
    /* padding-right:50px; */
    padding-right:2.632rem;
    justify-content: flex-end;
    /* width:103px; */
    width:7.357vw;
}
@media (max-width: 767px) {
    .p_top_business-block-name{
        /* padding-right:20px; */
        padding-right:5.333rem;
        /* width:calc(100% - 275px); */
        width:calc(100% - 75%);
    }
    .p_top_business-content:nth-child(3) .p_top_business-block-name{
        width:calc(100vw - 78vw);
    }
}
.p_top_business-block-name1{
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    /* font-size: 26.56px; */
    font-size: 1.398rem;
    line-height: 1em;
    text-align: left;
    color: #fdfcf0;
    /* padding-right:15px; */
    padding-right:0.789rem;
    color: #000;
    font-family: "Yu Mincho", "YuMincho";
    font-weight:bold;
}
@media (max-width: 767px) {
    .p_top_business-block-name1{
        /* font-size: 14px;
        padding-right:5px; */
        font-size: 3.733rem;
        padding-right:1.333rem;
    }
}
.p_top_business-block-name2{
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: sideways;
    text-orientation: sideways;
    /* font-size: 48px; */
    font-size:2.526vw;
    letter-spacing: 0.06em;
    line-height: 1em;
    text-align: left;
    color: #000;
}
@media (max-width: 767px) {
    .p_top_business-block-name2{
        /* font-size: 18px; */
        font-size: 4.8rem;
    }
}
.p_top_business-block{

}
@media (max-width: 767px) {
    .p_top_business-block{
        height:auto;
    }
}

.p_top_business-content:nth-child(1) .p_top_business-block{
    /* width:815px; */
    width:42.895rem;
}
@media (max-width: 767px) {
    .p_top_business-content:nth-child(1) .p_top_business-block{
        /* width:100%; */
        width:70%;
    }
}
.p_top_business-content:nth-child(2) .p_top_business-block{
    /* width:815px; */
    width:42.895rem;
}
@media (max-width: 767px) {
    .p_top_business-content:nth-child(2) .p_top_business-block{
        /* width:100%; */
        width:70%;
    }
}
.p_top_business-content:nth-child(3) .p_top_business-block{
    /* width:555px; */
    width:29.211rem;
}
@media (max-width: 767px) {
    .p_top_business-content:nth-child(3) .p_top_business-block{
        /* width:100%; */
        width:70%;
    }
}
.p_top_business-content:nth-child(4) .p_top_business-block{
    /* width:815px; */
    width:42.895rem;
}
@media (max-width: 767px) {
    .p_top_business-content:nth-child(4) .p_top_business-block{
        /* width:100%; */
        width:70%;
    }
}
.p_top_business-block-image{
    margin-bottom:25px;
    margin-bottom:1.316rem;
    /* width: 828px; */
    /* width: 59.143rem; */
    overflow: hidden;
}
@media (max-width: 767px) {
    .p_top_business-block-image{
        /* margin-bottom:25px; */
        width: 100%;
        margin-bottom:6.667rem;
    }
}
.p_top_business-block-image img{
    width:100%;
    object-fit:cover;
    object-position:center ;
    margin-top: -30px;
    margin-bottom: -30px;
}
@media (max-width: 767px) {
    .p_top_business-block-image img{
        /* max-height:50vh; */
        height:auto;
        margin-top: -15px;
        margin-bottom: -15px;
    }
}

.p_top_business-block-imagearea{

}
@media (max-width: 767px) {
    .p_top_business-block-imagearea{
        display:flex;
    }
}

.p_top_business-block-textarea{
    font-weight: 500;
    /* font-size: 21px; */
    font-size: 1.105rem;
    line-height: 1.75em;
    text-align: left;
    color: #000;
}
@media (max-width: 767px) {
    .p_top_business-block-textarea{
        /* font-size: 14px; */
        font-size: 3.733rem;
        /* padding-right:24px; */
        padding-right:6.4rem;
    }
    .p_top_business-content:nth-child(3) .p_top_business-block-textarea{
        /* font-size: 14px; */
        font-size: 3.733rem;
        padding-right:0;
        /* padding-left:24px; */
        padding-left:6.4rem;
    }
}

/**************************************************/



.p_top_company{
    /* height:835px; */
    /* height:43.947rem; */
    background-color:#000000;
    position:relative;
    z-index: 3;
}
@media (max-width: 767px) {
    .p_top_company{
        /* height:603px; */
        height:unset;
        background-image:unset;
        position:relative;
    }
}
.p_top_company:before{
    position:absolute;
    /* top:-75px;
    left:175px; */
    top:-3.947rem;
    left:9.211rem;
    background-image:url(../img/scroll_arrow.svg);
    /* width:11px;
    height:149px; */
    width:0.579rem;
    height:7.842rem;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position:cetner;
    content:"";
}
.p_top_company_inner{
    /* padding:150px 115px 140px; */
    padding:7.895rem 0 7.368rem 6.053rem;
    width:100%;
    margin:auto;
}
@media (max-width: 767px) {
    .p_top_company_inner{
        /* padding:45px 24px 30px; */
        padding:12rem 6.4rem 12rem;
    }
}
.p_top_company_main{

}
.p_top_company_content{
    
}
@media (max-width: 767px) {
    .p_top_company_content{

    }
}
.p_top_company-title{
    /* margin-bottom:65px; */
    margin-bottom:3.421rem;
}
@media (max-width: 767px) {
    .p_top_company-title{
        /* margin-bottom:60px; */
        margin-bottom:16rem;
    }
}
.p_top_company-title h2{
    /* font-size: 38.64px; */
    font-size: 2.034rem;
    letter-spacing: 0;
    text-align: left;
    color: #FFF;
    /* padding-left:20px; */
    padding-left:1.053rem;
    position:relative;
    border-left:6px solid #FFF;
}
@media (max-width: 767px) {
    .p_top_company-title h2{
        /* font-size: 24px;
        padding-left:10px; */
        font-size: 6.4rem;
        padding-left:2.667rem;
        border-left:4px solid #FFF;
    }
}

.p_top_company_blockarea{
    display:flex;
    justify-content: space-between;
}
@media (max-width: 767px) {
    .p_top_company_blockarea{
        display:block;
        padding-left:0px;
    }
}

.p_top_company_block_l{
    display:flex;
}
@media (max-width: 767px) {
    .p_top_company_block_l{
        display:flex;
        flex-direction: column;
        /* margin-bottom:40px; */
        margin-bottom:10.667rem;
    }
}
.p_top_company_block_r{

}
.p_top_company_block_logo{
    /* margin-right:100px; */
    margin-right:5.263rem;
}
@media (max-width: 767px) {
    .p_top_company_block_logo{
        margin-right:0px;
        /* margin-bottom:25px; */
        margin-bottom:6.667rem;
    }
}
.p_top_company_block_logo img{
    /* width:232px; */
    width:12.211rem;
}
@media (max-width: 767px) {
    .p_top_company_block_logo img{
        /* width:100px; */
        width:26.667rem;
    }
}
.p_top_company_block{
    /* width:575px; */
    width:30.263rem;
}
@media (max-width: 767px) {
    .p_top_company_block{
        width:100%;
    }
}
.p_top_company_block dl{
    display:flex;
    align-items:center;
    /* border-top:1px solid #FFF; */
    border-top:1px solid #FFFFFF80;
    /* padding:10px 0; */
    padding:0.526rem 0;
    width:100%;
}
@media (max-width: 767px) {
    .p_top_company_block dl{
        display:flex;
        flex-direction: column;
        align-items:flex-start;
        /* padding:10px 0;  */
        padding:2.667rem 0; 
    }
}
.p_top_company_block dl:last-child{
    /* border-bottom:1px solid #FFF; */
    border-bottom:1px solid #FFFFFF80;
}

.p_top_company_block dl dt{
    /* width:180px; */
    width:9.474rem; 
    font-weight: 400;
    /* font-size: 12px; */
    font-size: 0.857rem;
    letter-spacing: 0.1em;
    line-height: 1.25em;
    text-align: left;
    color: #fff;
}
@media (max-width: 767px) {
    .p_top_company_block dl dt{
        /* font-size: 16px; */
        width:100%;
        font-size: 4.267rem;
        /* margin-bottom:5px; */
        margin-bottom:1.333rem;
    }
}
.p_top_company_block dl dt span{
    /* font-size: 9px; */
    font-size: 0.643rem;
}
@media (max-width: 767px) {
    .p_top_company_block dl dt span{
        /* font-size: 12px; */
        font-size: 3.2rem;
    }
}
.p_top_company_block dl dd{
    font-weight: 500;
    /* font-size: 15px; */
    font-size: 0.789rem;
    line-height: 1.5em;
    text-align: left;
    color: #fff;
}
@media (max-width: 767px) {
    .p_top_company_block dl dd{
        /* font-size: 13px;*/
        font-size: 3.467rem;
        width:100%;
    }
}

.p_top_company_block_image{
    /* width:762px; */
    width:40.105rem;
    overflow: hidden;
    height:100%;
}
@media (max-width: 767px) {
    .p_top_company_block_image{
        /* width:clac(100% + 48px);
        max-width:clac(100% + 48px);
        margin-left:-24px; */
        width:calc(100% + 12.8rem);
        max-width:calc(100% + 12.8rem);
        margin-left:-6.4rem;
    }
}

.p_top_company_block_image img{
    width: 100%;
    object-fit: cover;
    object-position: center;
    margin-top:-30px;
    margin-bottom:-30px;
    height:calc(100% + 60px);
}
@media (max-width: 767px) {
    .p_top_company_block_image img{
        margin-top:-15px;
        margin-bottom:-15px;
        height:calc(100% + 30px);
    }
}

/**************************************************/

footer{
    background-color:#FFF;
}
@media (max-width: 767px) {
    footer{
        position:relative;
    }
}
.main_footer{
    /* padding:45px; */
    padding:2.368rem;
    /* padding-left:115px; */
    padding-left:6.053rem;
    /* height:180px; */
    height:9.474rem;
}
@media (max-width: 767px) {
    .main_footer{
        /* padding:30px 0; */
        padding:8rem 0; 
        height:auto;
    }
}
.main_footer_content{
    display:flex;
    align-items:center;
    justify-content:space-between;
}
@media (max-width: 767px) {
    .main_footer_content{
        display: block;
        width:100%;
        margin:auto;
        height:auto;
        align-items:flex-end;
        /* padding:0 24px; */
        padding:0 6.4rem;
    }
}
.main_footer_content_l{

}
@media (max-width: 767px) {
    .main_footer_content_l{
        /* margin-bottom:25px; */
        margin-bottom:6.667rem;
    }
}
.main_footer_content_l ul{
    display:flex;
    align-items:center;
}
@media (max-width: 767px) {
    .main_footer_content_l ul{
        display:block;
    }
}
.main_footer_content_l ul li{
    /* margin-right:25px; */
    margin-right:1.786rem;
}
@media (max-width: 767px) {
    .main_footer_content_l ul li{
        margin-right:0;
        /* margin-bottom:25px; */
        margin-bottom:6.667rem;
    }
}
.main_footer_content_l ul li:last-child{
    margin-right:0px;
}
@media (max-width: 767px) {
    .main_footer_content_l ul li:last-child{
        margin-bottom:0;
    }
}
.main_footer_content_l ul li a{
    font-family: Lato;
    font-weight: 400;
    /* font-size: 21px; */
    font-size: 1.105rem; 
    text-align: left;
    color: #000000;
}
@media (max-width: 767px) {
    .main_footer_content_l ul li a{
        /* font-size: 14px; */
        font-size: 3.733rem;
    }
}
.main_footer_content_r{

}
.main_footer_content_copy{
    font-weight: 400;
    /* font-size: 22px; */
    /* font-size: 1.158rem; */
    /* font-size: 15.4px; */
    font-size: 0.811rem;
    letter-spacing: 0.08em;
    line-height: 2em;
    text-align: right;
    color: #000;
}
@media (max-width: 767px) {
    .main_footer_content_copy{
        /* font-size: 12px; */
        font-size: 3.2rem;
    }
}



#wrap{
    /* display:none; */
    /* position:relative; */
}
@media (max-width: 767px) {
    #wrap{
        display:block;
        overflow: hidden;
    }
}

/* .site__main__contents{
    position:absolute;
    top:0;
    left:0;
    width: 100vw;
    height:100vh;
} */


#loader-bg {
    /* display: none; */
    position: fixed;
    width: 0;
    height: 100vh;
    top: 0px;
    left: 0px;
    /* opacity: 0; */
    background-color:#000000;
    z-index: 110;
    overflow: hidden;
    -webkit-transition: all .8s ease;
    transition: all .8s ease;
}
@media (max-width: 767px) {
    #loader-bg {
        /* display: none !important; */
    }
}
#loader-bg.is_active{
    width: 100vw;
}
.loader-bg{
    position:relative;
    width: 100%;
    height: 100%;
    /* opacity: 0; */
    display:flex;
    align-items: center;
    justify-content:center;
}
.loader-bg-main{
    
}
.loader-bg-logo{
    /* margin-bottom:30px; */
    margin-bottom:1.579rem;
}
@media (max-width: 767px) {
    .loader-bg-logo{
        /* margin-bottom:30px; */
        margin-bottom:1.579rem;
    }
}
.loader-bg-logo img{
    /* width:317px; */
    width:16.684rem;
    white-space: nowrap;
}
@media (max-width: 767px) {
    .loader-bg-logo img{
        /* width:137px; */
        width:36.533rem;
    }
}
.loader-bg-textarea{
    /* padding-left:5px; */
    padding-left:0.263rem;
}
@media (max-width: 767px) {
    .loader-bg-textarea{
        /* padding-left:5px; */
        padding-left:1.333rem;
    }
}
.loader-bg-text1{
    /* font-size:22.91px; */
    font-size:1.206rem;
    color:#FFF;
    line-height:1.25em;
    /* margin-bottom:5px; */
    margin-bottom:0.263rem;
    white-space: nowrap;
}
@media (max-width: 767px) {
    .loader-bg-text1{
        /* font-size:22.91px; */
        font-size:6.109rem;
        line-height:1.5em;
        /* margin-bottom:5px; */
        margin-bottom:1.333rem;
    }
}
.loader-bg-text2{
    /* font-size:10.97px; */
    font-size:0.577rem;
    color:#FFF;
    line-height:1.25em;
    white-space: nowrap;
}
@media (max-width: 767px) {
    .loader-bg-text2{
        /* font-size:10.97px; */
        font-size:2.925rem;
        line-height:1.5em;
    }
}
.bgarea{
    position:fixed;
    top:0;
    left:0;
    width:100vw;
    height:100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (max-width: 767px) {
    .bgarea{
        top:50%;
        left:50%;
        transform: translateX(-50%) translateY(-50%);
        display:block;
    }
}

.bg_video{
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}
.bg_video > video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
}
/* .bgarea video{
    min-width:101vw;
    min-height:101vh;
    width:auto;
    height:auto;
} */