@charset "utf-8";

.secCmnTit .txt::before {
    width: 190px;
}
.secCmnTit .titImg{
    position: relative;
}
@media only screen and (max-width:767px){
    .secCmnTit .titImg img{
        width: 91px;
        height: auto;
    }
    .secCmnTit .txt::before {
        width: 90px;
    }
}


/* secTop */
.secTop{
    height: 750px;
    margin-top: 141px;
    position: relative;
}
.secTop.lazyloaded{
    background: url(../img/entry/bgTop.jpg?260202) center top /cover;
}
@media only screen and (max-width:767px){
    .secTop{
        height: 53.335vw;
        margin-top: 62px;
    }
    .secTop.lazyloaded{
        background: url(../img/entry/bgTop_sp.jpg?260202) center top /cover;
    }
}

/* secBnr */
.secBnr{
    text-align: center;
    margin-top: 120px;
}
.secBnr .inner{
    display: block;
}
@media only screen and (max-width:767px){
    .secBnr{
        width: calc((305 / 375)* 100%);
        margin: 50px auto 0; 
    }
}


/* .secWorks */
.secWorks{
    margin-top: 145px;
}

.secWorks .worksItem{
    position: relative;
}
.secWorks .worksItem:nth-child(n+2){
    margin-top: 255px;
}
.secWorks .list{
    display: flex;
    flex-wrap: wrap;
    margin-top: 80px;
}
.secWorks .img{
    width: 100%;
    height: 0;
    padding-top: 64.286%;
}
.secWorks .item{
    width: 46.6667%;
    margin-right: 6.666%;
    position: relative;
    z-index: 1;
}
.secWorks .item:nth-child(2n){
    margin-right: 0;
}
.secWorks .item:nth-child(n+3){
   margin-top: 80px;
}
.secWorks .txtBox{
    margin-top: 23px;
}
.secWorks .boxTit{
    font-size: 28px;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 4px;
}
.secWorks .worksItem:nth-child(2) .boxTit{
    color: #16c45c;
}
.secWorks .boxTxt{
    font-size: 16px;
    line-height: 2.25;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    max-height: 102px;
    margin-top: 11px;
}
.secWorks .inner{
    color: #222;
    text-decoration: none;
    position: relative;
    height: 100%;
    display: block;
}
.secWorks .secCmnBtnView{
    margin-top: 37px;
}
.secWorks .spanBorder{
    position: relative;
    border-bottom: 1px solid #222;
}
/* 画像ホバー */
.secWorks .inner:hover .secCmnBtnView.color03 .spanIcon{
    background: #fff;
    border: solid 1px rgb(34, 34, 34);
}
.secWorks .inner:hover .secCmnBtnView .spanIcon::before {
    opacity: 0;
    left: 200%;
}
.secWorks .inner:hover .secCmnBtnView .spanIcon::after {
    left: calc(50% - 17px);
    opacity: 1;
}
.secWorks .inner:hover .secCmnBtnView .spanTxt::before{
    transform: scale(1, 1);
}
@media only screen and (max-width:767px){
    .secWorks{
        margin-top: 47px;
    }
    .secWorks .list{
        display: block;
        margin-top: 30px;
        width: calc((305 / 375)* 100%);
    }
    .secWorks .img{
        width: 100%;
        height: 0;
        padding-top: 64.286%;
    }
    .secWorks .item{
        width: 100%;
        margin-right: 0%;
    }
    .secWorks .item:nth-child(2n){
        margin-right: 0;
    }
    .secWorks .item:nth-child(n+3){
       margin-top: 0px;
    }
    .secWorks .item:nth-child(n+2){
        margin-top: 42px;
     }
    .secWorks .txtBox{
        margin-top: 15px;
    }
    .secWorks .boxTit{
        font-size: 18px;
        letter-spacing: 1px;
    }
    .secWorks .boxTxt{
        font-size: 12px;
        line-height: 2.16;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        overflow: hidden;
        max-height: 104px;
        margin-top: 8px;
    }
    .secWorks .inner{
        color: #222;
        text-decoration: none;
        position: relative;
        height: 100%;
        display: block;
    }
    .secWorks .worksList::after {
        bottom: -100px;
        height: 100px;
        background: linear-gradient(to bottom, #f3fcf7, #fff);
    }
    .secWorks .secCmnBtnView{
        margin-top: 17px;
    }
    /* 画像ホバー */
    .secWorks .inner:hover .secCmnBtnView.color03 .spanIcon{
        background: linear-gradient(-90deg, rgb(34, 34, 34) 0%, rgb(104, 102, 102) 100%);
        border: none;
    }
    .secWorks .inner:hover .secCmnBtnView .spanIcon::before {
        opacity: 1;
        left: 17px;
    }
}

@media only screen and (max-width:359px){
    .secWorks .worksItem::before {
        height: 25vw;
    }
    .secWorks .worksItem:nth-child(2)::before {
        height: 38vw;
    }
    .secWorks .worksItem:nth-child(3)::before {
        height: 38vw;
    }
}



/*-----------------------------------------------
   Details
-----------------------------------------------*/
.secCmnDetailsTit .titImg{
    position: relative;
}
.secCmnDetailsTit .txt {
    color: #1f85ba;
}
.secCmnDetailsTit .txt::before {
    background: #1f85ba;
}
@media only screen and (max-width:767px){
    .secCmnDetailsTit {
        padding-top: 169px;
    }
    .secCmnDetailsTit .titImg img{
        height: 15px;
        width: auto;
    }
}


/* secDetailsTop */
.secDetailsTop{
    margin-top: 55px;
}
.secDetailsTop .flexBox{
    display: flex;
    align-items: center;
    min-height: 700px;
    position: relative;
}
.secDetailsTop .topTit{
    font-size: 36px;
    line-height: 1.5;
    font-weight: bold;
    letter-spacing: 4px;
}
.secDetailsTop .txtBox{
    width: calc(50% - 90px);
    margin-right: 90px;
}
.secDetailsTop .tit{
    font-size: 20px;
    line-height: 1.9;
    font-weight: bold;
    margin-top: 20px;
    letter-spacing: 1px;
}
.secDetailsTop .txt{
    font-size: 16px;
    line-height: 2.25;
    margin-top: 20px;
    letter-spacing: 0.5px;
}
.secDetailsTop .rightBox{
    width: 960px;
    position: absolute;
    right: calc(50% - 960px);
    top: 0;
}
.secDetailsTop .rightImg{
    padding-top: 72.917%;
}

@media only screen and (max-width:1600px){
    .secDetailsTop .rightBox {
        width: 900px;
        right: calc(50% - 850px);
    }
}


@media only screen and (max-width:767px){
    .secDetailsTop{
        margin-top: 61px;
    }
    .secDetailsTop .flexBox{
      flex-direction: column-reverse;
        min-height: auto;
    }
    .secDetailsTop .topTit{
        font-size: 18px;
        letter-spacing: 1px;
    }
    .secDetailsTop .txtBox{
        width: calc((305 / 375)* 100%);
        margin: 20px auto 0;
    }
    .secDetailsTop .tit{
        font-size: 13px;
        line-height: 2.15;
        margin-top: 7px;
        letter-spacing: 3px;
    }
    .secDetailsTop .txt{
        font-size: 12px;
        line-height: 2.167;
        margin-top: 7px;
        letter-spacing: 0.5px;
    }
    .secDetailsTop .rightBox{
        width: 90.67%;
        position:static;
        margin: 0 0 0 auto;
    }
    .secDetailsTop .rightImg{
        padding-top: 72.945%;
    }
}


/* secDetailsTable */
.secDetailsTable{
    padding-top: 145px;
    position: relative;
}
.secDetailsTable::before{
    position: absolute;
    content: "";
    width: 100%;
    height: 5000px;
    left: 0;
    top: -180px;
    z-index: -1;
}
.secDetailsTable.lazyloaded::before{
    background: url(../img/entry/bgTable.jpg) center top / cover;
}
.secDetailsTable .tableBox{
    margin-top: 58px;
    border: solid 1px #e8e8e8
}
.secDetailsTable .boxTable {
    width: 100%;
}
.secDetailsTable th {
    width: 220px;
    background: #f4f9fb;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 1px;
    vertical-align: middle;
    text-align: center;
    border-bottom: solid 1px #e8e8e8;
    padding: 10px;
}
.secDetailsTable td {
    width: calc(100% - 220px);
    border-left: solid 1px #e8e8e8;
    border-bottom: solid 1px #e8e8e8;
    font-size: 16px;
    line-height: 2;
    padding: 18px 25.5px 18.5px;
    letter-spacing: 1.5px;
}
.secDetailsTable tr:last-child th {
    border-bottom: none;
}
.secDetailsTable tr:last-child td {
    border-bottom: none;
}
@media only screen and (max-width:767px){
    .secDetailsTable{
        padding-top: 50px;
    }
    .secDetailsTable::before{
        height: 2196px;
        top: -340px;
    }
    .secDetailsTable.lazyloaded::before{
        background: url(../img/entry/bgTable_sp.jpg) center top / cover;
    }
    .secDetailsTable .tableCover{
        width: calc((305 / 375)* 100%);
        margin: 0% auto 0;
    }
    .secDetailsTable .tableBox{
        margin-top: 28px;
    }
    .secDetailsTable th {
        width: 90px;
        font-size: 13px;
        line-height: 1.84;
        letter-spacing: 1px;
        padding: 10px;
    }
    .secDetailsTable td {
        width: calc(100% - 90px);
        font-size: 13px;
        line-height: 1.84;
        padding: 13px 13px 12px;
        letter-spacing: 0px;
    }
}



.details .secBnr {
    text-align: center;
    margin-top: 42px;
}
@media only screen and (max-width:767px){
    .details .secBnr {
        margin-top:50px;
    }
}

.co .secCmnForm,.ok .secCmnForm{
    margin-bottom: 200px;
}
@media only screen and (max-width:767px){
    .co .secCmnForm,.ok .secCmnForm{
        margin-bottom: 100px;
    }
}

.ok .secCmnDetailsTit .txt::before{
    width: 205px;
}
@media only screen and (max-width:767px){
    .ok .secCmnDetailsTit .txt::before{
        width: 90px;
    }
}


.secBtn .btnFormBack{
    width: 320px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    color: #fff;
    text-decoration: none;
    margin: 80px auto 0;
    letter-spacing: 1px;
    border-radius: 48px;
    background-image: -moz-linear-gradient( -90deg, rgb(34,34,34) 0%, rgb(104,102,102) 100%);
    background-image: -webkit-linear-gradient( -90deg, rgb(34,34,34) 0%, rgb(104,102,102) 100%);
    background-image: -ms-linear-gradient( -90deg, rgb(34,34,34) 0%, rgb(104,102,102) 100%);
    font-weight: 700;
}
@media only screen and (max-width:767px){
    .secBtn .btnFormBack{
        width: 220px;
        height: 50px;
        margin-top: 40px;
    }
}