@charset "utf-8";

/* secCmnTit */
.secCmnTit{
    background-image: url(../img/works/bgCmnTit.jpg);
}
@media only screen and (max-width:1215px){
    .secCmnTit{
        background-image: url(../img/works/bgCmnTit_sp.jpg);
    }
}

#main{
    position: relative;
}

/* secListSearch */
.secListSearch{
    background: var(--pickupBg);
    padding: 4.3rem 0 6rem;
}
.secListSearch .flexBox{
    display: flex;
    flex-wrap: wrap;
    margin: -1.3rem -2rem;
}
.secListSearch .listSearchBox{
    margin: 1.3rem 2rem;
}
.secListSearch .listSearchBox:last-child{
    width: 100%;
}
.secListSearch .listSearchTit{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    font-weight: bold;
}
.secListSearch .listSearch{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1rem;
}
.secListSearch .listSearchItem{
    margin: 1.7rem 1rem 0;
}
.secListSearch .listSearch input[type="checkbox"],
.secListSearch .listSearch .txtCheck::before{
    width: 2.5rem;
    height: 2.5rem;
}
.secListSearch .listSearch input[type="checkbox"]{
    visibility: hidden;
    position: absolute;
    margin: 0;
}
.secListSearch .listSearch .labelCheck{
    position: relative;
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_25);
    display: inline-block;
    cursor: pointer;
}
.secListSearch .listSearch .txtCheck{
    display: inline-flex;
    align-items: center;
    position: relative;
    padding-left: 3.5rem;
}
.secListSearch .listSearch .txtCheck::before{
    position: absolute;
    content: "";
    flex-shrink: 0;
    top: 0;
    left: 0;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.3rem;
    background: var(--whiteColor);
}
.secListSearch .listSearch input[type="checkbox"]:checked + .txtCheck::before{
    background: url(../img/plan/iconCheckbox.png) center center / 1.1rem auto no-repeat var(--whiteColor);
}
.secListSearch .listSearch input[type="checkbox"]:checked + .txtCheck{
    font-weight: bold;
}
.isDesktopIpad .secListSearch .wrapper{
    width: 100%;
}
@media only screen and (max-width:1215px){
    .secListSearch{
        margin-top: 3rem;
        background: var(--whiteColor);
        padding: 0;
    }
    .secListSearch .wrapper{
        width: 100vw;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        margin: auto;
        z-index: 99999;
        overflow-y: scroll;
        display: none;
        padding: 2rem 2rem;
        background: var(--planBgColor_749);
    }
    .secListSearch .closeBox{
        position: absolute;
        top: 0;
        right: 0;
        width: 5rem;
        height: 5rem;
        border-left: 1px solid var(--cmnTitblackColor_10);
    }
    .secListSearch .closeBox::before,
    .secListSearch .closeBox::after{
        content: '';
        display: block;
        width: 60%;
        height: 1px;
        background: var(--textColor);
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        top: 25px;
    }
    .secListSearch .closeBox::before{
        transform: rotate(-30deg);
    }
    .secListSearch .closeBox::after{
        transform: rotate(30deg);
    }
    .secListSearch .flexBox{
        position: relative;
        background: var(--pickupBg);
        display: block;
        margin: 0;
        padding-bottom: 3rem;
    }
    .secListSearch .listSearchBox{
        margin: 0;
    }
    .secListSearch .listSearchTit{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_21);
        padding: 1.45rem 2rem;
    }
    .secListSearch .listSearch{
        display: flex;
        flex-wrap: wrap;
        margin: 0;
        border-top: solid 0.1rem var(--cmnTitblackColor_10);
        border-bottom: solid 0.1rem var(--cmnTitblackColor_10);
    }
    .secListSearch .listSearchItem{
        margin: 0;
        width: calc(50% - 0.05rem);
        padding: 1.4rem 2rem;
        border-right: solid 0.1rem var(--cmnTitblackColor_10);
        border-bottom: solid 0.1rem var(--cmnTitblackColor_10);
        display: flex;
        align-items: center;
    }
    .secListSearch .listSearchItem:nth-child(2n){
        border-right: none;
    }
    .secListSearch .rowBox.w50 .listSearchItem:nth-last-child(2):nth-child(2n+1),
    .secListSearch .listSearchItem:last-child {
        border-bottom: none;
    }
    .secListSearch .listSearch input[type="checkbox"],
    .secListSearch .listSearch .txtCheck::before{
        width: 1.8rem;
        height: 1.8rem;
    }
    .secListSearch .listSearch input[type="checkbox"]{
        visibility: hidden;
        position: absolute;
        margin: 0;
    }
    .secListSearch .listSearch .labelCheck{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_21);
    }
    .secListSearch .listSearch .txtCheck{
        padding-left: 2.5rem;
    }
    .secListSearch .listSearch .txtCheck::before{
        top: 0.1rem;
        width: 1.8rem;
        height: 1.8rem;
        border-radius: 0.3rem;
    }
    .secListSearch .listSearch input[type="checkbox"]:checked + .txtCheck::before{
        background: url(../img/plan/iconCheckbox.png) top 0.5rem center / 1rem auto no-repeat var(--whiteColor);
    }
}

.secListSearch .planBox{
    margin-top: 3rem;
    padding-top: 3rem;
    border-top: solid 0.1rem var(--cmnTitblackColor_10);
    display: flex;
    justify-content: space-between;
}
.secListSearch .tabList{
    display: flex;
    flex-wrap: wrap;
    margin: 1.5rem -0.3rem -0.3rem;
}
.secListSearch .tabItem{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    font-weight: bold;
    margin: 0.3rem;
}
.secListSearch .tabTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    margin: 0.3rem 0.3rem 0.3rem 0.5rem;
    font-weight: bold;
}
.secListSearch .listSearchBtnBox{
    display: flex;
    flex-shrink: 0;
    padding-left: 5rem;
}
.secListSearch .aClear{
    width: 11rem;
    height: 5.5rem;
    border-radius: 2.75rem;
    background: var(--whiteColor);
    color: var(--textColor);
    font-size: var(--pcFontSize14);
    font-weight: bold;
    border: solid 0.1rem var(--textColor);
    display: flex;
    align-items: center;
    justify-content: center;
}
.secListSearch .aSearch{
    width: 24rem;
    height: 5.5rem;
    border-radius: 2.75rem;
    background: var(--textColor);
    color: var(--whiteColor);
    font-size: var(--pcFontSize14);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.secListSearch .aSearch span{
    position: relative;
    padding-left: 2.3rem;
}
.secListSearch .aSearch span::after{
    position: absolute;
    content: "";
    width: 1.3rem;
    height: 1.3rem;
    left: 0;
    top: calc(50% - 0.65rem);
}
.secListSearch.lazyloaded .aSearch span::after{
    background: url(../img/plan/iconSearch.png) center top / cover;
}
.secListSearch .aBtn:nth-child(2){
    margin-left: 2rem;
}
@media only screen and (max-width:1215px){
    .secListSearch .planBox{
        margin-top: 0;
        padding: 0 2rem 5rem;
        border-top: none;
        display: block;
        background: var(--pickupBg);
    }
    .secListSearch .listSearchBtnBox{
        display: flex;
        flex-flow: column-reverse;
        padding-left: 0;
    }
    .secListSearch .aClear{
        width: 13.5rem;
        height: 3.5rem;
        border-radius: 1.75rem;
        margin: 2rem auto 0;
        font-size: var(--spFontSize12);
    }
    .secListSearch .aSearch{
        width: 100%;
        height: 4.5rem;
        border-radius: 2.25rem;
        font-size: var(--spFontSize13);
    }
    .secListSearch .aBtn:nth-child(2){
        margin-left: auto;
    }
    .secListSearch .tabList.pcTab{
        display: none;
    }
}
.secNumberBox{
    margin-top: 6rem;
}
.secNumberBox .spTab{
    display: none;
}
.secNumberBox .boxResult{
    display: flex;
    justify-content: space-between;
}
.secNumberBox .numberTxt{
    font-size: var(--pcFontSize16);
    font-weight: bold;
    margin-top: 0.5rem;
}
.secNumberBox .number{
    font-size: var(--pcFontSize30);
    position: relative;
    top: 0.3rem;
    margin-right: 0.5rem;
}
.secNumberBox .box{
    padding-left: 5rem;
    border-left: solid 0.1rem var(--cmnTitblackColor_10);
    height: 4rem;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
.secNumberBox .txtFavorite{
    font-size: var(--pcFontSize14);
    font-weight: bold;
    color: var(--redColor);
    padding-left: 2.5rem;
    position: relative;
}
.secNumberBox .txtFavorite::before{
    position: absolute;
    content: "";
    width: 1.8rem;
    height: 1.6rem;
    left: 0;
    top: 0;
}
.secNumberBox .txtFavorite.lazyloaded::before{
    background: url(../img/works/iconFavorite03.png) center top / 100% auto no-repeat;
}
.secNumberBox .spanIcon{
    text-decoration: underline;
}
@media only screen and (max-width:1215px){
    .secNumberBox{
        margin-top: 2.8rem;
    }
    .secNumberBox .tabList{
        display: flex;
        flex-wrap: wrap;
        margin: 0 -0.2rem;
    }
    .secNumberBox .tabItem{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_22);
        margin: 0 0.2rem;
    }
    .secNumberBox .tabTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_22);
        display: block;
        width: 100%;
    }
    .secNumberBox .numberTxt{
        font-size: var(--spFontSize15);
        margin-top: 1rem;
    }
    .secNumberBox .number{
        font-size: var(--spFontSize24);
        top: 0.2rem;
        margin-right: 0.5rem;
    }
    .secNumberBox .boxResult{
        display: block;
    }
    .secNumberBox .box{
        margin-top: 2.8rem;
        padding-left: 0;
        border-left: none;
        height: 5rem;
        justify-content: center;
        flex-shrink: 0;
    }
    .secNumberBox .aFavorite{
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        width: 100%;
        background: var(--bgColor02);
        border-radius: 0.5rem;
    }
    .secNumberBox .txtFavorite{
        font-size: var(--spFontSize12);
        font-weight: bold;
        color: var(--redColor);
        padding-left: 2.3rem;
        position: relative;
    }
    .secNumberBox .txtFavorite::before{
        width: 1.6rem;
        height: 1.4rem;
        left: 0;
        top: 0;
    }
}

/* secViewMoreBtn */
.secViewMoreBtn{
    position: absolute;
    bottom: 0;
    right: 0;
    width: 10rem;
}
.secViewMoreBtn .viewMoreTit{
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_50);
    font-weight: 300;
    padding-bottom: 1.5rem;
}
.trgger_animation_Arrow .trgger_animation_Arrow_item{
    position: relative;
}
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner{
    position: absolute;
    width: 1rem;
    height: 0.8rem;
    top: 0.45rem;
    right: 0rem;
    overflow: hidden;
    display: block;
}
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner_arrow,
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner_arrow_off{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: inline-flex;
    transition: 0.5s;
}
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner_arrow{
    transform: translate(0rem, 0rem);
}
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner_arrow_off{
    transform: translate(calc(-100% - 1rem), 0);
}
@media only screen and (min-width:1216px){
    .trgger_animation_Arrow.is-animated .trgger_animation_Arrow_item_inner_arrow{
        transform: translate(calc(100% + 1rem), 0);
    }
    .trgger_animation_Arrow.is-animated .trgger_animation_Arrow_item_inner_arrow_off{
        transform: translate(0%, 0%);
    }
}
@media only screen and (max-width:1215px){
    .secViewMoreBtn{
        position: absolute;
        bottom: 0;
        right: 0;
        width: 3rem;
    }
    .secViewMoreBtn .viewMoreTit{
        display: none;
    }
    .trgger_animation_Arrow .trgger_animation_Arrow_item_inner{
        top: -1.8rem;
        right: calc(50% - 0.5rem);
    }
}
/* ▼animation横線 */
.moreline{
    position: absolute;
    width: 100%;
    height: 0.1rem;
    right: 0;
    bottom: 0;
}
.trgger_animation_line{
    transition: 0.5s;
}
.trgger_animation_line_item{
    display: grid;
    overflow: clip;
}
.trgger_animation_line_item_on,
.trgger_animation_line_item_off{
    translate: none;
    rotate: none;
    scale: none;
    grid-area: 1 / 1;
    width: 100%;
    height: 100%;
    background-color: var(--textColor);
}
.trgger_animation_line_item_on{
    transform: translateX(0);
    transition: 0.25s;
}
.trgger_animation_line_item_off{
    transform: translateX(-100%);
    transition: 0.5s;
}
@media only screen and (min-width:1216px){
    .trgger_animation_line.is-animated .trgger_animation_line_item_on{
        transform: translateX(100%);
    }
    .trgger_animation_line.is-animated .trgger_animation_line_item_off{
        transform: translateX(0);
    }
}
/* ▼animation(横線) */
.animation_underline .animation_underline_item{
    background: linear-gradient(var(--ColorWhite), var(--ColorWhite)) 0 100% / 100% 0.1rem no-repeat;
    transition: background-size .4s cubic-bezier(.25,1,.5,1) 0s;
}
@media (min-width: 1216px) {
    .animation_underline.is-animated .animation_underline_item {
        background-position: 100% 100%;
        background-size: 0 0.1rem
    }
}



/* secWorks */
.secWorks{
    margin-top: 6rem;
    position: relative;
}
.secWorks .list{
    display: flex;
    flex-wrap: wrap;
}
.secWorks .item{
    width: calc(50% - 4rem);
    margin-right: 8rem;
    position: relative;
}
.secWorks .item:nth-child(2n){
    margin-right: 0;
}
.secWorks .item:nth-child(n+3){
    margin-top: 8rem;
}
.secWorks .inner{
    display: block;
    position: relative;
    padding-bottom: 5.8rem;
    overflow: visible;
    height: 100%;
}
.secWorks .inner::after{
    position: absolute;
    content: "";
    width: calc(100% - 11rem);
    height: 1px;
    bottom: 0;
    left: 0;
    background: var(--cmnTitblackColor_20);
}
.secWorks .imgBox{
    position: relative;
}
.secWorks .img{
    padding-top: 100%;
    overflow: hidden;
}
.secWorks .txtBox{
    margin-top: 3.4rem;
}
.secWorks .tit{
    font-size: var(--pcFontSize26);
    line-height: var(--pcLineHeight26_39);
    font-weight: bold;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.secWorks .tagBox{
    margin-top: 1rem;
    display: flex;
}
.secWorks .tagIcon{
    font-size: var(--pcFontSize12);
    line-height: var(--pcLineHeight12_27);
    margin-right: 1rem;
}
.secWorks .tabList{
    margin-top: 1.6rem;
    padding-left: 3.2rem;
    position: relative;
}
.secWorks .tabList::after{
    position: absolute;
    content: "";
    width: 2.1rem;
    height: 2.1rem;
    top: 0.1rem;
    left: 0;
}
.secWorks.lazyloaded .tabList::after{
    background: url(../img/index/iconWorksTabList.png) center top / cover;
}
.secWorks .tabItem{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_21);
    margin: 0.05rem;
    display: inline-block;
}
.secWorks .iconNew{
    margin: 0.3rem 0 0 0;
}
.secWorks .priceTxt{
    margin-top: 1.5rem;
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_21);
    letter-spacing: var(--pcLetterSpacing14_50);
}
.secWorks .spanPrice{
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_30);
    padding-right: 0.5rem;
}
/* favorit */
.secWorks .boxFavorite{
    width: 8rem;
    height: 8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
    cursor: pointer;
}
.secWorks input[type="checkbox"]{
    display: none;
}
.secWorks .imgOn{
    display: none;
}
.secWorks input[type="checkbox"]:checked + .iconFavorite .imgOff{
    display: none;
}
.secWorks input[type="checkbox"]:checked + .iconFavorite .imgOn{
    display: block;
}
@media only screen and (max-width:1215px){
    .secWorks{
        margin-top: 3rem;
        position: relative;
    }
    .secWorks .list{
        display: block;
    }
    .secWorks .item{
        width: 100%;
        margin-right: 5%;
    }
    .secWorks .item:nth-child(n+2){
        margin-top: 5rem;
    }
    .secWorks .inner{
        padding-bottom: 2.5rem;
    }
    .secWorks .inner::after{
        width: calc(100% - 4rem);
    }
    .secWorks .txtBox{
        margin-top: 1.9rem;
    }
    .secWorks .tit{
        font-size: var(--spFontSize17);
        line-height: var(--spLineHeight17_26);
    }
    .secWorks .tagBox{
        margin-top: 0.6rem;
    }
    .secWorks .tagIcon{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_22);
    }
    .secWorks .tabList{
        margin-top: 0.7rem;
        padding-left: 2.2rem;
    }
    .secWorks .tabList::after{
        width: 1.5rem;
        height: 1.5rem;
        top: 0.3rem;
        left: 0;
    }
    .secWorks .tabItem{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_20);
        margin: 0 0.1rem;
    }
    .secWorks .iconNew {
        margin: 0.1rem 0 0 0;
    }
    .secWorks .boxFavorite{
        width: 5rem;
        height: 5rem;
    }
    .secWorks .iconFavorite{
        width: 3rem;
    }
    .secWorks .boxFavorite img{
        width: 100%;
        height: auto;
    }
    .secWorks .priceTxt{
        margin-top: 0.4rem;
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_20);
        letter-spacing: var(--spLetterSpacing11_50);
    }
    .secWorks .spanPrice{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_22);
        padding-right: 0.3rem;
    }

    /* 絞り込み */
    .onNavi #headerscroll,.onNavi #header{
        z-index: 999;
    }
    .onNavi #container{
        z-index: 9999;
    }
}

/* secDetailsTop */
.secDetailsTop{
    margin-top: 11.2rem;
}
.secDetailsTop .tit{
    font-size: var(--pcFontSize36);
    line-height: var(--pcLineHeight36_54);
    font-weight: 700;
    text-align: center;
}
.secDetailsTop .boxInfo{
    display: flex;
    justify-content: center;
    margin-top: 3.2rem;
}
.secDetailsTop .txt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_22);
    text-align: center;
}
.secDetailsTop .iconNew{
    width: 3.5rem;
    height: 2rem;
}
.secDetailsTop .txt + .iconNew{
    margin-left: 1rem;
}
.secDetailsTop .imgBox{
    margin: 7rem auto 0;
    width: 186rem;
    max-width: calc(100% - 4rem);
}
.secDetailsTop .img{
    padding-top: 53.764%;
}
.secDetailsTop .detailsTxtBox{
    margin-top: 5.8rem;
}
.secDetailsTop .infoTit{
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_30);
    font-weight: bold;
}
.secDetailsTop .infoTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_36);
    margin-top: 2.5rem;
}
.secDetailsTop .boxDetails{
    margin-top: 5.2rem;
    background: var(--pickupBg);
    position: relative;
    padding: 3rem 5rem;
}
.secDetailsTop .titEng{
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_50);
    font-weight: 300;
    position: absolute;
    left: 2.8rem;
    top: -0.8rem;
}
.secDetailsTop .spanLine{
    position: relative;
}
.secDetailsTop .spanLine::before{
    content: "";
    position: absolute;
    top: 1rem;
    left: 7.5rem;
    width: 22rem;
    height: 0.1rem;
    background-color: var(--cmnTitblackColor_20);
}
.secDetailsTop th,.secDetailsTop td{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_22);
    color: var(--textColor);
    padding: 0.7rem 0;
}
.secDetailsTop th{
    width: 12.5rem;
    font-weight: 700;
}
.secDetailsTop td{
    width: calc(100% - 12.5rem);
}
.secDetailsTop .aTab{
    position: relative;
}
.secDetailsTop .aTab::after{
    position: absolute;
    content: "";
    width: calc(100% - 1rem);
    height: 1px;
    left: 0.5rem;
    bottom: 0;
    background: var(--textColor);
}
@media only screen and (max-width:1215px){
    .secDetailsTop{
        margin-top: 2.7rem;
    }
    .secDetailsTop .tit{
        font-size: var(--spFontSize17);
        line-height: var(--spLineHeight17_25);
        text-align: left;
    }
    .secDetailsTop .boxInfo{
        justify-content: flex-start;
        margin-top: 1rem;
    }
    .secDetailsTop .txt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_20);
        text-align: left;
    }
    .secDetailsTop .iconNew{
        width: 3.1rem;
        height: 1.7rem;
    }
    .secDetailsTop .imgBox{
        margin: 2.5rem auto 0;
        width: 100%;
        max-width: 100%;
    }
    .secDetailsTop .detailsTxtBox{
        margin-top: 1.5rem;
    }
    .secDetailsTop .infoTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        font-weight: bold;
    }
    .secDetailsTop .infoTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1rem;
    }
    .secDetailsTop .boxDetails{
        margin-top: 3rem;
        padding: 2rem 1.5rem 2rem 3rem;
    }
    .secDetailsTop .titEng{
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing0);
        left: 2rem;
        top: -0.65rem;
    }
    .secDetailsTop .spanLine{
        position: relative;
    }
    .secDetailsTop .spanLine::before{
        top: 1rem;
        left: 4.8rem;
        width: 5rem;
        background-color: var(--cmnTitblackColor_20);
    }
    .secDetailsTop th,.secDetailsTop td{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_22);
        padding: 0;
    }
    .secDetailsTop th{
        width: 6.8rem;
        font-weight: 700;
    }
    .secDetailsTop td{
        width: calc(100% - 6.8rem);
    }
    .secDetailsTop .aTab{
        position: relative;
        display: inline-block;
    }
    .secDetailsTop .aTab::after{
        bottom: 0.4rem;
    }
}

/* secDetailsEntry */
.secDetailsEntry{
    margin-top: 8rem;
}
@media only screen and (max-width:1215px){
    .secDetailsEntry{
        margin-top: 5rem;
    }
}

/* secDetailsList */
.secDetailsList{
    margin-top: 6.5rem;
}
.secDetailsList .list{
    display: flex;
    flex-wrap: wrap;
}
.secDetailsList .item{
    width: calc(50% - 4rem);
    margin-right: 8rem;
}
.secDetailsList .item:nth-child(2n){
    margin-right: 0;
}
.secDetailsList .item:nth-child(n+3){
    margin-top: 7rem;
}
.secDetailsList .img{
    padding-top: 66.608%;
}
.secDetailsList .img02{
    padding-top: 116.072%;
}
.secDetailsList .txtBox{
    margin-top: 3.5rem;
}
.secDetailsList .tit{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_27);
    font-weight: bold;
}
.secDetailsList .txt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_28);
    letter-spacing: var(--pcLetterSpacing14_50);
    margin-top: 1.5rem;
}
@media only screen and (max-width:1215px){
    .secDetailsList{
        margin-top: 4.5rem;
    }
    .secDetailsList .list{
        display: block;
    }
    .secDetailsList .item{
        width: 100%;
        margin-right: 0;
    }
    .secDetailsList .item:nth-child(n+2){
        margin-top: 4rem;
    }
    .secDetailsList .img{
        padding-top: 66.568%;
    }
    .secDetailsList .img02{
        padding-top: 116.12%;
    }
    .secDetailsList .txtBox{
        margin-top: 1.5rem;
    }
    .secDetailsList .tit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
    }
    .secDetailsList .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 0.7rem;
    }
}

/* secDetailsYoutube */
.secDetailsYoutube{
    margin-top: 6.5rem;
}
.secDetailsYoutube .boxYoutube{
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    position: relative;
}
.secDetailsYoutube iframe{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
@media only screen and (max-width:1215px){
    .secDetailsYoutube{
        margin-top: 4.5rem;
    }
}

/* secTags */
.secTags{
    margin-top: 7.5rem;
}
.secTags .tit{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    position: relative;
}
.secTags .tit::before{
    content: "";
    position: absolute;
    top: 1.2rem;
    left: 6.5rem;
    width: 22rem;
    height: 0.1rem;
    background: var(--cmnTitblackColor_20);
}
.secTags .list{
    display: flex;
    flex-wrap: wrap;
    margin: 1.2rem -0.5rem;
}
.secTags .item{
    margin: 1rem 0.5rem;
    background: var(--tabColor03);
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_21);
    min-height: 4.7rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    padding: 1rem 2rem;
}
@media only screen and (max-width:1215px){
    .secTags{
        margin-top: 4.4rem;
    }
    .secTags .tit{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_20);
    }
    .secTags .tit::before{
        top: 1rem;
        left: 3.7rem;
        width: 5rem;
    }
    .secTags .list{
        display: flex;
        flex-wrap: wrap;
        margin: 1.2rem -0.25rem;
    }
    .secTags .item{
        margin: 0.4rem 0.25rem;
        background: var(--tabColor03);
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_20);
        min-height: 3.4rem;
        border-radius: 0.3rem;
        padding: 0.6rem 1.25rem;
    }
}

/* secDetailsContactBox */
.secDetailsContactBox{
    margin-top: 15rem;
}
.secDetailsContactBox.index{
    margin-top: 12rem;
}
.secDetailsContactBox .inner{
    display: flex;
    background: var(--bgFooter);
    color: var(--whiteColor);
    overflow: visible;
}
.secDetailsContactBox .imgBox{
    width: 48rem;
    overflow: hidden;
}
.secDetailsContactBox .img{
    padding-top: 72.917%;
}
.secDetailsContactBox .txtBox{
    position: relative;
    width: calc(100% - 48rem);
    padding: 5rem 6rem;
    display: flex;
    align-items: center;
}
.secDetailsContactBox .txtInner{
    position: relative;
    z-index: 15;
}
.secDetailsContactBox .tit{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_34);
    letter-spacing: var(--pcLetterSpacing18_50);
    font-weight: bold;
}
.secDetailsContactBox .txt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_30);
    margin-top: 1rem;
}
.secDetailsContactBox .iconImg{
    width: 19.2rem;
    position: absolute;
    bottom: -3.5rem;
    right: 13rem;
}
.secDetailsContactBox .boxIconCircle{
    bottom: 4rem;
    right: 4rem;
}
.secDetailsContactBox .boxIconCircle .linkCircle .linkTxtBox{
    background: var(--bgFooter);
}
@media only screen and (max-width:1215px){
    .secDetailsContactBox{
        margin-top: 10rem;
    }
    .secDetailsContactBox.index{
        margin-top: 7rem;
    }
    .secDetailsContactBox .inner{
        display: block;
    }
    .secDetailsContactBox .imgBox{
        width: 100%;
    }
    .secDetailsContactBox .img{
        padding-top: 47.762%;
    }
    .secDetailsContactBox .txtBox{
        position: relative;
        width: 100%;
        padding: 5.5rem 2rem 5.8rem;
        display: block;
    }
    .secDetailsContactBox .tit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
        line-height: var(--spLineHeight15_26);
    }
    .secDetailsContactBox .txt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_22);
        margin-top: 1rem;
    }
    .secDetailsContactBox .iconImg{
        width: 13.4rem;
        bottom: auto;
        top: -4rem;
        right: calc(50% - 6.7rem);
    }
    .secDetailsContactBox .boxIconCircle{
        bottom: 2.5rem;
        right: 2.5rem;
    }
}
@media only screen and (max-width:359px){
    .secDetailsContactBox .txt{
        margin-right: -0.1rem;
    }
}
.boxIconCircle{
    position: absolute;
    bottom: 3.5rem;
    right: 3.5rem;
    z-index: 100;
}
.boxIconCircle .linkCircle{
    position: relative;
    display: block;
    text-align: center;
    width: 5.5rem;
    height: 5.5rem;
}
.boxIconCircle .linkCircle .linkTxtBox{
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 100%;
    border: 1px solid var(--iconCircle);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    transition: all 0.2s ease-out;
} 
@media only screen and (min-width:1216px){
    .btnInCircle:hover .linkTxtBox img{
        content: url("../img/index/iconHoverArrowWhite02.png");
    } 
    .btnInCircle:hover .blakCircle .linkTxtBox img{
        content: url("../img/index/iconHoverArrowBlack.png");
    } 
    .boxIconCircle .linkCircle svg{
        position: absolute;
        top: 0;
        left: 0;
        margin: auto;
        opacity: 1;
        max-width: 100%;
        height: auto;
        overflow: visible;
    }
    .btnInCircle:hover .circle{
        stroke-dashoffset: 0;
        transition-duration: 1.6s;
        transition-timing-function: cubic-bezier(.215,.61,.355,1)
    }
    .boxIconCircle .circle{
        stroke-dasharray: 594;
        stroke-dashoffset: 594;
        -webkit-transform: rotate(-90deg);
        -webkit-transform-origin: 50% 50%;
        stroke: var(--whiteColor);
        transform: rotate(-90deg);
        transform-origin: 50% 50%;
        transition-duration: 1.6s;
        transition-timing-function: cubic-bezier(.215,.61,.355,1)
    }
    .boxIconCircle .circle{
        stroke: var(--whiteColor);
        stroke-width: 5;
    }
    .boxIconCircle.blakCircle .circle{
        stroke: var(--textColor);
    }
    .btnInCircle .linkTxtBox img{
        width: 1.3rem;
    }
}
@media only screen and (max-width:1215px){
    .boxIconCircle{
        bottom: calc(50% - 1.75rem);
        right: 2rem;
    }
    .boxIconCircle .linkCircle{
        width: 3.5rem;
        height: 3.5rem;
    }
    .boxIconCircle .linkCircle .linkTxtBox{
        border: 1px solid var(--whiteColor);
    } 
    .boxIconCircle.blakCircle .linkCircle .linkTxtBox{
        border: 1px solid var(--textColor);
    }
    .btnInCircle .linkTxtBox img{
        width: 0.9rem;
    }
    .btnInCircle .linkTxtBox img{
        content: url("../img/index/iconHoverArrowWhite02.png");
    } 
    .btnInCircle .blakCircle .linkTxtBox img{
        content: url("../img/index/iconHoverArrowBlack.png");
    } 
}

.secFavoriteIcon{
    position: fixed;
    right: 21rem;
    bottom: 9.5rem;
    width: 13rem;
    z-index: 999;
}
.secFavoriteIcon .iconFavorite{
    display: block;
    width: 100%;
    height: 13rem;
    text-align: center;
    cursor: pointer;
    padding-top: 6rem;
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_20);
    font-weight: bold;
    border-radius: 50%;
    color: var(--whiteColor);
}
.secFavoriteIcon .iconFavorite.lazyloaded{
    background: url(../img/works/iconFavorite_details01.png) center top 3.2rem / 1.8rem auto no-repeat var(--activeColor);
}
.secFavoriteIcon input[type="checkbox"]{
    display: none;
}
.secFavoriteIcon input[type="checkbox"]:checked + .iconFavorite{
    color: var(--textColor);
    box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.1);
}
.secFavoriteIcon input[type="checkbox"]:checked + .iconFavorite.lazyloaded{
    background: url(../img/works/iconFavorite_details02.png) center top 3.2rem / 1.8rem auto no-repeat var(--whiteColor);
}
.secFavoriteIcon .spanOn{
    display: none;
}
.secFavoriteIcon input[type="checkbox"]:checked + .iconFavorite .spanOff{
    display: none;
}
.secFavoriteIcon input[type="checkbox"]:checked + .iconFavorite .spanOn{
    display: block;
}
@media only screen and (max-width:1215px){
    .secFavoriteIcon{
        right: 1rem;
        bottom: calc(50% - 3.3rem);
        width: 6.6rem;
        z-index: 999;
    }
    .secFavoriteIcon .iconFavorite{
        height: 6.6rem;
        padding-top: 2.8rem;
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_15);
    }
    .secFavoriteIcon .spanWrapper{
        display: block;
        transform: scale(0.9);
        transform-origin: center center;
    }
    .secFavoriteIcon .iconFavorite.lazyloaded,.secFavoriteIcon input[type="checkbox"]:checked + .iconFavorite.lazyloaded{
        background-size: 1.4rem auto;
        background-position: center top 1.2rem;
    }
}