@charset "utf-8";

/* common.cssに記載想定 */
@media only screen and (max-width:767px){
    .wrapperSp345{
        width: 92%;
        margin: 0 auto;
    }
    .wrapperSp315{
        width: 84%;
        margin: 0 auto;
    }
}
/* secTicker */
.secTicker{
    overflow: hidden;
}
.secTicker .boxTicker {
    display: flex;
}
.secTicker .itemTicker:nth-child(odd) {
    animation: loop 120s -60s linear infinite;
    backface-visibility: hidden;
    will-change: transform;
    transform: translate3d(0, 0, 0);
}
.secTicker .itemTicker:nth-child(even) {
    animation: loop2 120s linear infinite;
}
@keyframes loop {
    0% {
        transform: translateX(100%);
    }
    to {
        transform: translateX(-100%);
    }
}
@keyframes loop2 {
    0% {
      transform: translateX(0);
    }
    to {
      transform: translateX(-200%);
    }
}
@media only screen and (max-width:767px){
    .secTicker .imgTicker{
        height: 38px;
        width: auto;
    }
}

/* secTop */
.secTop{
    margin-top: 31px;
}
.secTop .tit{
    font-size: var(--pcFontSize50);
    line-height: var(--pcLineHeight50_16);
    font-weight: bold;
    text-align: center;
    color: var(--brandColor);
}
.secTop .txt{
    margin-top: 30px;
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_50);
    text-align: center;
    color: var(--brandColor);
}
.secTop .tickerTit{
    margin-top: 80px;
    font-size: var(--pcFontSize50);
    line-height: var(--pcLineHeight50_16);
    letter-spacing: var(--pcLetterSpacing50_1);
    font-weight: bold;
    position: relative;
    z-index: 10;
}
.secTop .spanBg{
    background: var(--brandColor);
    padding: 0 15px;
}
.secTop .spanBg2{
    padding: 0 5px;
}
.secTop .secTicker{
    margin-top: -40px;
}
@media only screen and (max-width:767px){
    .secTop{
        margin-top: 20px;
    }
    .secTop .tit{
        font-size: var(--spFontSize20);
        line-height: var(--spLineHeight20_17);
    }
    .secTop .txt{
        margin-top: 20px;
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_184);
        letter-spacing: var(--spLetterSpacing13_-05);
    }
    .secTop .tickerTit{
        margin-top: 40px;
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_38);
        letter-spacing: var(--spLetterSpacing16_05);
    }
    .secTop .spanBg{
        padding: 5px 12px;
    }
    .secTop .spanBg2{
        padding: 5px 7px;
    }
    .secTop .secTicker .imgTicker{
        height: 187px;
        width: auto;
    }
}

/* secFeature */
.secFeature{
    margin-top: 150px;
}
.secFeature .titEng{
    font-size: var(--pcFontSize60);
    letter-spacing: var(--pcLetterSpacing60_2);
    font-weight: bold;
    text-align: center;
    color: var(--brandColor);
}
.secFeature .tit{
    margin-top: 34px;
    font-size: var(--pcFontSize28);
    letter-spacing: var(--pcLetterSpacing28_1);
    font-weight: bold;
    text-align: center;
    color: var(--brandColor);
}
.secFeature .list{
    margin-top: 68px;
}
.secFeature .itemTop{
    position: relative;
    height: 650px;
    padding-top: 40px;
}
.secFeature .img{
    width: 960px;
    top: 0;
    right: 0;
    position: absolute;
}
@media only screen and (max-width:1900px){
    .secFeature .img{
        width: 50%;
    }
}
.secFeature .txtBox{
    padding-right: calc(50% + 95px);
}
.secFeature .itemTitEng{
    font-size: var(--pcFontSize100);
    letter-spacing: var(--pcLetterSpacing100_3);
    font-weight: bold;
}
.secFeature .itemTit{
    margin-top: -33px;
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_178);
    font-weight: bold;
    color: var(--brandColor);
}
.secFeature .itemTxt{
    margin-top: 20px;
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_-05);
    line-height: var(--pcLineHeight20_50);
    color: var(--brandColor);
}
.secFeature .itemUnder{
    margin-top: 80px;
}
.secFeature .underTit{
    font-size: var(--pcFontSize28);
    letter-spacing: var(--pcLetterSpacing28_1);
    font-weight: bold;
    color: var(--brandColor);
    border: solid 1px var(--brandColor);
    padding: 35px 0;
    text-align: center;
}
.secFeature .underImg{
    margin-top: 60px;
    text-align: center;
}
/* 2 */
.secFeature .item:nth-child(n+2){
    margin-top: 150px;
}
.secFeature .item:nth-child(2) .img{
    right: auto;
    left: 0;
}
.secFeature .item:nth-child(2) .txtBox{
    padding: 0 0 0 calc(50% + 95px);
}
.secFeature .underList{
    display: flex;
    margin-top: 55px;
}
.secFeature .underItem{
    width: calc(100% / 3);
    padding: 0 48px 55px;
    position: relative;
}
.secFeature .underItem:not(:last-child)::after{
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    right: 0;
    top: 0;
    background: var(--headerBorder02);
}
.secFeature .underItemImg{
    width: 220px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto;
}
.secFeature .underTxtBox{
    margin-top: 30px;
}
.secFeature .underItemTit{
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_181);
    font-weight: bold;
    text-align: center;
    color: var(--brandColor);
}
.secFeature .underItemTxt{
    margin-top: 12px;
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_173);
    color: var(--brandColor);
}
.secFeature .subTxt{
    margin-top: 3px;
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_184);
    color: var(--brandColor);
}
.secFeature .btn{
    width: 400px;
    height: 80px;
    border-radius: 40px;
    background: var(--textColor);
    border: solid 1px var(--brandColor);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 35px;
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_1);
    font-weight: bold;
    text-decoration: none;
    color: var(--brandColor);
    position: relative;
}
.secFeature .btn::after{
    content: "";
    position: absolute;
    width: 7px;
    height: 9px;
    background: var(--brandColor);
    top: calc(50% - 4.5px);
    right: 40px;
    clip-path: polygon(0 0, 100% 50%, 0 100%,2px 50%);
    transition: all 0.3s ease-out;
}
.secFeature .btn:hover::after{
    right: 36px;
}
.secFeature .iconSpan{
    padding-left: 50px;
    position: relative;
}
.secFeature .iconSpan::after{
    content: "";
    position: absolute;
    width: 28px;
    height: 30px;
    top: calc(50% - 15px);
    left: 8px;
}
.secFeature .iconSpan.lazyloaded::after{
    background: url(../img/resale/iconPdf.png) center top / cover;
}
.secFeature .item:nth-child(3) .subTxt{
    text-align: center;
    margin-top: 50px;
}
@media only screen and (max-width:767px){
    .secFeature{
        margin-top: 65px;
    }
    .secFeature .titEng{
        font-size: var(--spFontSize26);
        letter-spacing: var(--spLetterSpacing26_2);
    }
    .secFeature .tit{
        margin-top: 11px;
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secFeature .list{
        margin-top: 29px;
    }
    .secFeature .itemTop{
        height: auto;
        padding-top: 0;
    }
    .secFeature .img{
        width: 100%;
        position: static;
    }
    .secFeature .txtBox{
        padding: 0;
        margin-top: 20px;
    }
    .secFeature .itemTitEng{
        font-size: var(--spFontSize30);
        letter-spacing: var(--spLetterSpacing30_1);
    }
    .secFeature .itemTit{
        margin-top: 11px;
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight18_155);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secFeature .itemTxt{
        margin-top: 8px;
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing13_-05);
        line-height: var(--spLineHeight13_184);
    }
    .secFeature .itemUnder{
        margin-top: 25px;
    }
    .secFeature .underTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_05);
        padding: 18px 0 19px;
    }
    .secFeature .underImg{
        margin-top: 30px;
    }
    /* 2 */
    .secFeature .item:nth-child(n+2){
        margin-top: 70px;
    }
    .secFeature .item:nth-child(2) .txtBox{
        padding: 0;
    }

    .secFeature .underList{
        display: block;
        margin-top: 20px;
    }
    .secFeature .underItem{
        width: 100%;
        padding: 0;
        display: flex;
        align-items: flex-start;
    }
    .secFeature .underItem:not(:last-child)::after{
        display: none;
    }
    .secFeature .underItem:nth-child(n+2){
        margin-top: 20px;
    }
    .secFeature .underItemImg{
        width: 115px;
        margin: 0;
    }
    .secFeature .underTxtBox{
        margin-top: 0;
        padding: 15px 0 0 15px;
        width: calc(100% - 115px);
    }
    .secFeature .underItemTit{
        text-align: left;
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_15);
        letter-spacing: var(--spLetterSpacing16_-1);
    }
    .secFeature .underItemTxt{
        margin-top: 8px;
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_163);
        letter-spacing: var(--spLetterSpacing11_-05);
    }
    .secFeature .subTxt{
        margin-top: 0;
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_163);
        letter-spacing: var(--spLetterSpacing11_-05);
    }

    .secFeature .btn{
        width: 245px;
        height: 55px;
        border-radius: 27.5px;
        margin: 15px auto 0;
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing13_05);
    }
    .secFeature .btn::after{
        width: 6px;
        height: 7px;
        top: calc(50% - 3.5px);
        right: 28px;
    }
    .secFeature .btn:hover{
        right: 28px;
    }
    .secFeature .iconSpan{
        padding: 0 10px 0 0;
        position: relative;
    }
    .secFeature .iconSpan::after{
        width: 20px;
        height: 21px;
        top: calc(50% - 11px);
        left: -34px;
    }
    .secFeature .item:nth-child(3) .subTxt{
        margin-top: 20px;
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_184);
    }
}

/* secContact */
.secContact{
    margin-top: 150px;
    padding: 108px 0 120px;
    background: var(--brandColor);
}
.secContact .titEng{
    font-size: var(--pcFontSize60);
    letter-spacing: var(--pcLetterSpacing60_2);
    font-weight: bold;
    text-align: center;
}   
.secContact .tit{
    margin-top: 34px;
    font-size: var(--pcFontSize28);
    letter-spacing: var(--pcLetterSpacing28_1);
    font-weight: bold;
    text-align: center;
}
.secContact .titSub {
    margin-top: 60px;
    font-size: var(--pcFontSize28);
    letter-spacing: var(--pcLetterSpacing28_1);
    font-weight: bold;
    border: solid 1px var(--textColor);
    padding: 35px 0;
    text-align: center;
}
.secContact  .box{
    display: flex;
    margin-top: 50px;
}
.secContact .img{
    width: 50%;
}
.secContact .txtWrapper{
    width: 50%;
    padding: 45px 0 0 75px;
}
.secContact .boxTit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_178);
    font-weight: bold;
}
.secContact .boxTxt{
    margin-top: 20px;
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_50);
    letter-spacing: var(--pcLetterSpacing20_-05);
}
.secContact .btnTel{
    width: 800px;
    height: 170px;
    border-radius: 85px;
    background: var(--textColor);
    border: solid 1px var(--brandColor);
    margin-top: 50px;
    background: var(--telBtnColor);
    color: var(--textColor);
    text-decoration: none;
    position: relative;
    text-align: center;
    padding-top: 35px;
    margin: 100px auto 0;
    display: block;
}
.secContact .txtTel{
    font-size: var(--pcFontSize24);
    font-weight: bold;
    width: 100%;
    text-align: center;
    top: -10px;
    left: 0;
    position: absolute;
}
.secContact .txtTelNum{
    font-size: var(--pcFontSize52);
    letter-spacing: var(--pcLetterSpacing52_1);
    font-weight: bold;
}
.secContact .txtSub{
    font-size: var(--pcFontSize14);
    margin-top: 27px;
}
@media only screen and (max-width:767px){
    .secContact{
        margin-top: 65px;
        padding: 45px 0 70px;
    }
    .secContact .titEng{
        font-size: var(--spFontSize26);
        letter-spacing: var(--spLetterSpacing26_2);
    }   
    .secContact .tit{
        margin-top: 11px;
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secContact .titSub{
        margin-top: 30px;
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
        padding: 18px 0 19px;
    }
    .secContact  .box{
        display: block;
        margin-top: 20px;
    }
    .secContact .img{
        width: 100%;
    }
    .secContact .txtWrapper{
        width: 100%;
        padding: 12px 0 0;
    }
    .secContact .boxTit{
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight18_155);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secContact .boxTxt{
        margin-top: 8px;
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing13_-05);
        line-height: var(--spLineHeight13_184);
    }
    .secContact .btnTel{
        width: 100%;
        max-width: 345px;
        height: 100px;
        border-radius: 50px;
        padding-top: 22px;
        margin: 50px auto 0;
    }
    .secContact .txtTel{
        font-size: var(--spFontSize15);
        top: -6px;
    }
    .secContact .txtTelNum{
        font-size: var(--spFontSize28);
        letter-spacing: var(--spLetterSpacing28_1);
    }
    .secContact .txtSub{
        font-size: var(--spFontSize11);
        margin-top: 15px;
    }
}

/* secBnrRenovation */
.secBnrRenovation{
    width: 1280px;
    margin: 120px auto 0;
}
.secBnrRenovation .bnrInner{
    display: block;
    text-decoration: none;
    color: var(--textColor);
    position: relative;
}
.secBnrRenovation .txtBox{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    text-align: center;
    padding-top: 110px;
}
.secBnrRenovation .titEng{
    position: absolute;
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_2);
    padding-left: 21px;
    left: 40px;
    top: 35px;
}
.secBnrRenovation .titEng::before{
    position: absolute;
    content: '';
    margin: auto;
    display: block;
    top: 0;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 10px;
    background-color: rgba(255, 255, 255, .3);
}
.secBnrRenovation .tit{
    font-size: var(--pcFontSize40);
    font-weight: bold;
    text-align: center;
}
.secBnrRenovation .txt{
    margin-top: 20px;
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_2);
}
.secBnrRenovation .txtMore{
    width: 160px;
    position: absolute;
    bottom: 0;
    right: 0;
    padding-bottom: 14px;
    position: absolute;
    right: 40px;
    bottom: 40px;
    font-size: var(--pcFontSize13);
    letter-spacing: var(--pcLetterSpacing13_1);
    text-align: left;
}
.secBnrRenovation .txtMore::before {
    position: absolute;
    content: '';
    margin: auto;
    display: block;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: rgba(255, 255, 255, .3);
}
.secBnrRenovation .txtMore::after{
    content: "";
    position: absolute;
    top: 5px;
    right: 0;
    margin: auto;
    width: 6px;
    height: 6px;
    clip-path: polygon(0 0, 100% 50%, 0 100%, 30% 50%);
    background: var(--textColor);
    transform: rotate(0deg);
    z-index: 2;
    transition: all 0.3s ease-out;
}
.secBnrRenovation .bnrInner:hover .txtMore::after{
    right: -4px;
}
@media only screen and (max-width:767px){
    .secBnrRenovation{
        margin-top: 80px;
        width: 92%;
    }
    .secBnrRenovation .txtBox{
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        text-align: center;
        padding-top: 0;
        display: flex;
        flex-flow: column;
        justify-content: center;
        padding-top: 10px;
    }
    .secBnrRenovation .titEng{
        font-size: var(--spFontSize11);
        letter-spacing: var(--spLetterSpacing11_05);
        padding-left: 7px;
        top: 15px;
        left: 15px;
    }
    .secBnrRenovation .titEng::before{
        height: 7px;
    }
    .secBnrRenovation .tit{
        font-size: var(--spFontSize20);
    }
    .secBnrRenovation .txt{
        margin-top: 10px;
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_169);
    }
    .secBnrRenovation .txtMore{
        width: 85px;
        padding-bottom: 10px;
        right: 15px;
        bottom: 15px;
        font-size: var(--spFontSize11);
        letter-spacing: var(--spLetterSpacing11_05);
    }
    .secBnrRenovation .txtMore::after{
        top: 3px;
        width: 5px;
        height: 5px;
    }
    .secBnrRenovation .bnrInner:hover .txtMore::after{
        right:0;
    }
}

/* secCmnBnrList */
.secCmnBnrList{
    margin-top: 200px;
}
@media only screen and (max-width:767px){
    #main #pnkz{
        margin-top: 100px;
    }
    .secCmnBnrList{
        margin-top:1px;
    }
}