@charset "UTF-8";
/* CSS Document */

/*=========================

common

==========================*/
body{
    color: #fff!important;
    background: #000;
}

.disp_pc{
    display: none;
}

.disp_sp{
    display: block;
}

h1,h2,h3,h4,h5{
    font-weight: 600;
    line-height: 1.2em;
}

#contents p{
    font-size: 13px!important;
    line-height: 1.8em!important;
}

.sec_inner{
    width: 90vw;
    margin: 0 auto!important;
}

#contents section a:link{
    text-decoration: none;
}

/*=========================

MV

==========================*/

#mv .txt{
    width: 90vw;
    margin: 60px auto 0;
}

#mv .txt h1{
     font-size: 28px;
    padding-bottom: 20px;
    text-align: justify;
    width: 254px;
}

#mv .txt p{
    line-height: 2em!important;
    font-size: 15px!important;
}

/*=========================

contents

==========================*/
#contents{
    background: url("../img/210Dcon_bg.png") no-repeat 30% 0% / 150% auto;
    width: 100%;
}

/*===sec_01===*/
#contents section.sec_01{
    margin-bottom: 60px;
}

#contents section.sec_01 li h1.point{
    color: #00adb1;
    font-size: 28px;
    font-weight: 600;
    text-align: center;
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 25px;
    margin-top: 90px;
    letter-spacing: 0.05em;
}

#contents section.sec_01 li h1.point::after{
    content: "";
    height: 1px;
    width: 65px;
    background: #00adb1;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

#contents section.sec_01 li h1.point span{
    font-size: 13px;
    display: block;
}

#contents section.sec_01 li h2{
    text-align: center;
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 20px;
}

#contents section.sec_01 ul li{
    position: relative;
    overflow: hidden;
    height: 100%;
}

#contents section.sec_01 ul li::before{
    transform: scale(0.8);
}

#contents section.sec_01 ul li:first-of-type::before{
    content: "";
    background: url("../img/210Dbg_point01.png") no-repeat 80% 0%;
    background-size: 88px auto;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
}

#contents section.sec_01 ul li:first-of-type div img{
    width: 75vw;
    margin: 20px auto 0;
    display: block;
}

#contents section.sec_01 ul li:nth-of-type(2)::before{
    content: "";
    background: url("../img/210Dbg_point02.png") no-repeat 20% 0%;
    background-size: 140px auto;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
}

#contents section.sec_01 ul li:nth-of-type(3)::before{
    content: "";
    background: url("../img/210Dbg_point03.png") no-repeat 80% 0%;
    background-size: 130px auto;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
}

#contents section.sec_01 ul li:nth-of-type(4)::before{
    content: "";
    background: url("../img/210Dbg_point04.png") no-repeat 20% 0%;
    background-size: 130px auto;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
}

#contents section.sec_01 ul li:nth-of-type(5)::before{
    content: "";
    background: url("../img/210Dbg_point05.png") no-repeat 80% 0%;
    background-size: 130px auto;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
}

/*===sec_02===*/
#contents section.sec_02 .ber_title{
    background: #00a19c;
    text-align: center;
}

#contents section.sec_02 .con_01{
    margin-bottom: 20px;
}

#contents section.sec_02 .con_01 .ber_title{
    font-size:18px;
    line-height: 35px;
}

#contents section.sec_02 .con_01 h3{
    font-size:18px;
    padding: 10px 0;
    text-align: center;
    position: relative;
    margin-bottom: 10px;
}

#contents section.sec_02 .con_01 h3::after{
    content: "";
    background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 20%, rgba(255,255,255,1) 80%, rgba(255,255,255,0) 100%);
background: -o-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 20%, rgba(255,255,255,1) 80%, rgba(255,255,255,0) 100%);
background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 20%, rgba(255,255,255,1) 80%, rgba(255,255,255,0) 100%);
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
}

#contents section.sec_02 .con_02{
    width: 85vw;
    margin: 0 auto 50px;
}

#contents section.sec_02 .con_02 .con_02_1 .ber_title{
    font-size: 13px!important;
    line-height: 23px;
    margin-bottom: 15px;
}

#contents section.sec_02 .con_02 .con_02_1 > div{
      display: -webkit-flex;
    display: flex;
   -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-align-items: center;
    align-items: center;
}

#contents section.sec_02 .con_02 .con_02_1 div .img{
    width: 100%;
}

#contents section.sec_02 .con_02 .con_02_1 div p{
    font-size: 10px!important;
    margin-right: 10px;
    text-align: justify;
    width: 165%;
}

#contents section.sec_02 .con_03{
    border-bottom: 1px solid #fff;
    padding-bottom: 40px;
}

#contents section.sec_02 .con_03 .ber_title{
    font-size: 13px;
    line-height: 23px;
    margin-bottom: 15px;
}

#contents section.sec_02 .con_03 p{
    font-size: 10px!important;
    text-align: justify;
}

#contents section.sec_02 .con_03 p span{
    position: relative;
    padding-left: 1em;
}

#contents section.sec_02 .con_03 p span::before{
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fff;
    top: 3px;
    left: 0;
}

/*===sec_03===*/
#contents section.sec_03{
    margin: 50px 0 40px;
}

#contents section.sec_03 .img{
    width: 70vw;
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,1) 0%, rgba(49,92,110,1) 50%, rgba(0,0,0,1) 100%);
    background: -o-linear-gradient(bottom, rgba(0,0,0,1) 0%, rgba(49,92,110,1) 50%, rgba(0,0,0,1) 100%);
    background: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(49,92,110,1) 50%, rgba(0,0,0,1) 100%);
    margin: 0 auto 50px;
}

#contents section.sec_03 .img p{
    margin: 25px;
}

#contents section.sec_03 .btn{
    width: 58vw;
    margin: 0 auto;
    height: 55px;
    background: #00a49f;
    transition: 0.25s;
}

#contents section.sec_03 .btn:first-of-type{
    margin-bottom: 25px;
}

#contents section.sec_03 .btn:hover{
    background: #0b8f91;  
}

#contents section.sec_03 .btn p{
    color: #fff;
    line-height: 55px!important;
    font-size: 18px!important;
    text-align: center;
}

/*===sec_04===*/
#contents .sec_04{
    background: #353f47;
    height: 100%;
    overflow: hidden;
    padding: 25px 0;
}

#contents section.sec_04 .btn{
    width: 58vw;
    margin: 0 auto;
    height: 55px;
    background: #00a49f;
    transition: 0.25s;
}

#contents section.sec_04 .btn:first-of-type{
    margin-bottom: 10px;
}

#contents section.sec_04 .btn:hover{
    background: #0b8f91;  
}

#contents section.sec_04 .btn p{
    color: #fff;
    line-height: 55px!important;
    font-size: 15px!important;
    text-align: center;
}