@charset "utf-8";

/* 運営会社
-------------------------------*/
*,
*::before,
*::after {
    box-sizing: border-box;
}

img{
    max-width:100%;
    height:auto;
    vertical-align: bottom;
    margin:0;
    padding:0;
}

.static-content .container.about {
    background-color: transparent;
}

.static-content .about h1 .sub {
    font-size: 20px;
    color: #666;
}

.img-main{
    text-align: center;
    margin-bottom: 50px;
}

@media only screen and (max-width:640px){
    .img-main {
        overflow: hidden;
        width: 100%;/* トリミングしたい枠の幅 */
        height: 50vw;/* トリミングしたい枠の高さ */
        position: relative;
    }
    /* 高さに合わせてトリミング */
    .img-main img {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: auto;
        max-width: none;
        height: 100%;
    }

}

.about .message-ceo{
    width: 100%;
    max-width: 840px;
    margin: 0 auto 70px;
}
.about .message-ceo.en{
    color: #666666;
}
.about .message-ceo p{
    margin-bottom: 0;
}

@media only screen and (max-width:640px){
    .about .message-ceo{
        text-align: justify;
        text-justify: inter-character;
        margin-bottom: 30px;
    }
    .about .message-ceo p br{
        display: none;
    }
}


.static-content .about h1 .un-kei {
    margin-top: 10px;
    width: 80%;
    max-width: 300px;
    height: 4px;
    background-color: #003f76;
    margin: auto;
}

.about .table{
    width: 100%;
    max-width: 940px;
    margin-left: auto;
    margin-right: auto;
    border: solid 1px #505050;
}
.about .table tr{
    border-bottom: solid 1px #505050;
}
.about .table tr:last-child{
    border-bottom: none;
}
.about .table th{
    width: 25%;
    background-color: #e6edf2;
    border-right: solid 1px #505050;
    padding: 1em;
    font-weight: normal;
}
.about .table td{
    padding: 1em;
}

@media only screen and (max-width:640px){
    .about .table th{
        display: inline-block;
        width: 100%;
        border-right: none;
        border-bottom: dashed 1px #505050;
        padding: 1em;
    }
    .about .table td{
        display: inline-block;
        width: 100%;
    }
}





/* 船団丸とは
-------------------------------*/
.section-tb-padding.what-s{
    padding: 50px 0;
}
.static-content.what-s .container {
    padding: 0;
    width: 90%;
    max-width: 1240px;
    margin: auto;
    background-color: transparent;
}

.static-content.what-s h1 .sub {
    font-size: 20px;
    line-height: 1.5em;
    color: #666;
}
.static-content.what-s h1 .un-kei {
    margin-top: 10px;
    width: 80%;
    max-width: 300px;
    height: 4px;
    background-color: #003f76;
    margin: auto;
}
.w-ttl{
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    color:#000;
    margin-bottom: 30px;
}
.w-lead{
    width: 100%;
    max-width: 765px;
    margin: 40px auto;
}
.w-space{
    width: 100%;
    height: 120px;
    transition: 0.3s;
}

@media only screen and (max-width:710px){
    .w-space{
        height: 60px;
    }


}



.static-content.what-s .container.wha01 {
    width: 100%;
}
.wha01{
    position: relative;
}
.wha01 .txt{
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media only screen and (max-width:1240px){
    .wha01 .txt img{
        width: 18vw;
        height: auto;
    }
}
@media only screen and (max-width:710px){
    .wha01 {
        overflow: hidden;
        width: 100%;
        height: 65vw;
    }
    /* 横幅に合わせてリサイズ、はみ出た分をトリミング */
    .wha01 img.bg {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: auto;
        max-width: none;
        height: 100%;
    }
    .wha01 .txt{
        top: 60%;
    }
    .wha01 .txt img{
        width: 30vw;
        height: auto;
    }
}

.wha02{
    background-color: #e6ecf2;
    background-image: url(../image/what/what_02_bg.png);
    background-position: center bottom;
    background-repeat: no-repeat;
    padding-top: 170px;
    padding-bottom: 100px;
    margin-top: -100px;
    
}
.wha02 .container{
    text-align: center;
}

.static-content.what-s .wha02 h1 .sub {
    margin-top: 20px;
}
.wha02 .lead{
    margin: 40px 0;
    font-size: 14px;
    line-height: 1.8em;

}
.wha02 .lead.en{
    color: #666;
}

@media only screen and (max-width:710px){
    .wha02{
        padding-top: 10vw;
        padding-bottom: 10vw;
        margin-top: 0;
    }
}
@media only screen and (max-width:420px){
    .static-content.what-s .wha02 h1 .sub {
        font-size: 14px;
        line-height: 1.5em;
    }
    .wha02 .lead{
        text-align: left;
    }
}


.wha03 .fuki{
    width: 100%;
    max-width: 910px;
    margin: auto;
    display: flex;
    flex-flow: row-reverse;
    justify-content: space-between;
    align-items: center;
}
.wha03 .fuki .img{
    width: 23%;
}
.wha03 .fuki .txt{
    width: 75%;
    background: url(../image/what/what_03_fuki.png) left center no-repeat;
    background-size: 100% 100%;
    padding: 45px 45px 45px 70px;
}
@media only screen and (max-width:910px){
    .wha03 .fuki .txt{
        padding: 25px 25px 25px 70px;
    }

}
@media only screen and (max-width:710px){
    .wha03 .fuki{
        display: block;
    }
    .wha03 .fuki .img{
        width: 100%;
        text-align: center;
        margin-top: 10px;
    }
    .wha03 .fuki .txt{
        width: 100%;
        background-image: none;
        background-color: #e6ecf2;
        border-radius: 15px;
        padding: 25px;
    }
}

.wha04{
    width: 100%;
    max-width: 1920px;
    height: 356px;
    margin: auto;
    background: url(../image/what/what_04.png) center top no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
}
.static-content.what-s .wha04 h1{
    color: #fff;
    margin-bottom: 0;
}


@media only screen and (max-width:810px){
    .wha04{
        height: 35vw;
    }
}




.w-2dan{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.w-2dan .img{
    width: 52%;
}
.w-2dan .txt{
    width: 42%;
}
.w-2dan .txt .w-ttl{
    text-align: left;
}
@media only screen and (max-width:810px){
    .w-2dan .img{
        width: 100%;
        text-align: center;
    }
    .w-2dan .txt{
        width: 100%;
    }
}




.static-content.what-s .container.wha06{
    background-image:url(../image/what/what_06.png);
    background-size: cover;
    padding: 45px 5%;
    color: #fff;
}
.wha06 .w-ttl{
    color: #fff;
}
.wha06 ul{
    width: 100%;
    max-width: 725px;
    margin:0 auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.wha06 li{
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center;
    width: 208px;
    height: 208px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid 2px #fff;
    border-radius: 105px;
    font-size: 21px;
    line-height: 1.5em;
    font-weight: bold;
    
}

@media only screen and (max-width:860px){
    .wha06 li{
        width: 24vw;
        height: 24vw;
        font-size: 2.4vw;
        line-height: 1.5em;

    }
}
@media only screen and (max-width:640px){
    .wha06 ul{
        justify-content: center;
        text-align: center;
    }
    .wha06 li{
        list-style: none;
        width: 30vw;
        height: 30vw;
        margin: 0 1vw;
        font-size: 3vw;
        line-height: 1.5em;
    }
    .wha06 li:last-child{
        margin-top: -1.5vw;
    }
}

.wha07{
    width: 100%;
    background-color: #e6ecf2;
    padding-top: 180px;
    padding-bottom: 50px;
    margin-top: -130px;
    position: relative;
    z-index: -1;
}

.w-fig{
    margin-bottom: 30px;
    text-align: center;
}
@media only screen and (max-width:640px){

    .w-fig{
        width: 100%;
        padding: 5px;
        overflow-x: auto;
    }
    .w-fig img{
        width: 640px;
        max-width: none;
        height: auto;
    }

}



.wha11{
    width: 100%;
    background-color: #e6ecf2;
    padding-top: 100px;
    padding-bottom: 100px;
}
.wha11 .sub-box{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.wha11 .sub-box .w-ttl{
    width: 30%;
    text-align: left;
}
.wha11 .sub-box .txt{
    width: 68%;
}
@media only screen and (max-width:710px){
    
    .wha11{
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .wha11 .sub-box .w-ttl{
        width: 100%;
    }
    .wha11 .sub-box .w-ttl br{
        display: none;
    }
    .wha11 .sub-box .txt{
        width: 100%;
    }
    
}






.wha13{
    width: 100%;
    max-width: 1920px;
    margin: auto;
    background: url(../image/what/what_13.png) center bottom no-repeat;
    background-size: cover;
    color: #fff;
    padding: 100px 0 450px;
}

.wha13 .w-ttl{
    color: #fff;
    text-align: left;
}

.wha13 .txt{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.wha13 .txt div{
    width: 48%;
}

@media only screen and (max-width:810px){
    .wha13{
        padding-top: 50px;
        padding-bottom: 500px;
    }
    .wha13 .txt div{
        width: 100%;
    }
}
@media only screen and (max-width:710px){
    .wha13{
        background-color: #e6ecf2;
        color: #000;
        padding-bottom: 52vw;
        background-size: auto 50vw;
    }
    .wha13 .w-ttl{
        color: #000;
    }
}



.wha14 ul{
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.wha14 .w-lead{
    text-align: center;
}

.wha14 li{
    width: 31%;
    margin: 0;
    padding: 0;
    list-style: none;
    margin-bottom: 60px;
}
.wha14 li .img{
    text-align: center;
}

.wha14 li .btn,
.wha14 li .btn-more{
    width: 80%;
    margin: auto;
    text-align: center;
}
.wha14 li a{
    text-decoration: none;
    color: #000;
    transition: 0.3s;
}
.wha14 li a:hover{
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}

@media only screen and (max-width:710px){
    .wha14 .w-lead{
        text-align: left;
    }
    .wha14 li{
        width: 48%;
    }
}
@media only screen and (max-width:420px){
    .wha14 li{
        width: 80%;
        margin: 0 auto 40px
    }
    .wha14 li:empty{
        display: none;
    }

}








