@charset "utf-8";
@font-face{
    font-family:'Noto Sans JP';
    font-style:normal;
    font-weight:400;
    src:url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Regular.woff2) format('woff2'),
        url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Regular.woff) format('woff'),
        url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Regular.otf) format('opentype');
}
@font-face{
    font-family:'Noto Sans JP';
    font-style:normal;
    font-weight:700;
    src:url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Bold.woff2) format('woff2'),
        url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Bold.woff) format('woff'),
        url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Bold.otf) format('opentype');
}
/*========================================
    common等追加
========================================*/
body{
    font-family: 'YakuHanJP_Noto','Noto Sans JP', sans-serif;
}
.wrapper1220 {
    width: 1220px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}
.wrapper1280 {
    width: 1280px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}
@media only screen and (max-width:767px) {
    .wrapper1220,
    .wrapper1280 {
        max-width: 100%;
        width: 100%;
    }
    .wrapperSp {
        width: 92%;
        margin: 0 auto;
    }
    .wrapperSp335 {
        width: 89.334%;
        margin: 0 auto;
    }
}

/*========================================
    headerlp
========================================*/
#headerlp {
    position: absolute;
    top: -4px;
    left: 0;
    z-index: 20;
}
#headerlp .leftBox {
    padding: 30px;
}
#headerlp .headerLogo {
    width: 248px;
    display: block;
}
@media only screen and (max-width:767px) {
    #headerlp {
        position: absolute;
        top: 13px;
        left: 4%;
    }
    #headerlp .leftBox {
        padding: 0px;
    }
    #headerlp .headerLogo {
        width: 146px;
    }
}

/*========================================
    secView
========================================*/
.secView {
    height: 1000px;
    position: relative;
}
.secView .imgTop {
    position: absolute;
    top: 0;
    left: calc(50% - 960px);
}
@media only screen and (max-width:767px) {
    .secView {
        height: auto;
    }
    .secView .imgTop {
        position: static;
    }
}

/*========================================
    secModelHouse
========================================*/
.titContents .tit {
    font-size: 40px;
    letter-spacing: 2.5px;
    font-weight: bold;
    position: relative;
    padding-bottom: 40px;
    margin-bottom: 40px;
    text-align: center;
}
.titContents .tit:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: calc(50% - 25px);
    width: 50px;
    height: 1px;
    background: #000;
}

.secModelHouse {
    padding-bottom: 94px;
    position: relative;
    overflow: hidden;
    margin-top: 1px;
}
.secModelHouse::after {
    position: absolute;
    content: "";
    width: 1938px;
    height: 217px;
    bottom: 0;
    left: calc(50% - 969px);
}
.secModelHouse.lazyloaded {
    background: url(../img/lp_selfguided_tour2025/bgModel.gif) repeat;
}
.secModelHouse .modelBox {
    position: relative;
    height: 540px;
}
.secModelHouse .modelBox img {
    position: absolute;
    top: 0;
    left: calc(50% - 960px);
}
.secModelHouse .txtBox {
    margin-top: 110px;
    text-align: center;
    position: relative;
}
.secModelHouse .txtBox::before{
    content: '';
    position: absolute;
    top: -282px;
    right: calc(50% - 637px);
    width: 304px;
    height: 239px;
}
.secModelHouse .txtBox.lazyloaded::before{
    background: url(../img/lp_selfguided_tour2025/iconFamily.png)center top / cover no-repeat;
}
.secModelHouse .txt {
    font-size: 70px;
    letter-spacing: 1px;
    font-weight: bold;
    color: #a40f17;
    margin-top: 38px;
}
.secModelHouse .modelList {
    display: flex;
    margin-top: 40px;
}
.secModelHouse .modelItem {
    width: calc((100% - 140px) / 3);
    margin-right: 70px;
}
.secModelHouse .modelItem:last-child {
    margin-right: 0;
}
.secModelHouse .img {
    border-radius: 50%;
    overflow: hidden;
}
.secModelHouse .modelTxt {
    font-size: 20px;
    line-height: calc(44 / 20);
    text-align: center;
    margin-top: 30px;
    font-weight: bold;
    white-space: nowrap;
}
.secModelHouse .modelBtn {
    width: 900px;
    height: 90px;
    border-radius: 50px;
    margin: 50px auto 0;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: bold;
    background: #a40f17;
}

@media only screen and (max-width:767px) {
    .titContents .tit{
        font-size: 20px;
        letter-spacing: normal;
        padding-bottom: 26px;
        margin-bottom: 26px;
    }
    .secModelHouse {
        padding-bottom: 40px;
    }

    .secModelHouse::after {
        width: 526px;
        height: 59px;
        left: calc(50% - 263px);
    }

    .secModelHouse .modelBox {
        height: auto;
    }

    .secModelHouse .modelBox img {
        position: static;
    }

    .secModelHouse .txtBox {
        margin-top: 68px;
    }

    .secModelHouse .tit {
        font-size: 20px;
        letter-spacing: normal;
        padding-bottom: 26px;
        margin-bottom: 26px;
    }

    .secModelHouse .txt {
        font-size: 24px;
        letter-spacing: 0.5px;
        line-height: 1.8;
        margin-top: 3px;
    }

    .secModelHouse .modelList {
        margin-top: 25px;
        display: block;
    }

    .secModelHouse .modelItem {
        width: 100%;
        margin-right: 0;
        display: flex;
        align-items: center;
        margin-bottom: 15px;
    }

    .secModelHouse .img {
        width: 140px;
        flex-shrink: 0;
    }

    .secModelHouse .modelTxt {
        font-size: 14px;
        margin-top: 0;
        text-align: left;
        margin-left: 15px;
        line-height: calc(24 / 14);
        font-weight: normal;
        white-space: wrap;
    }
    .titContents .tit:before {
        left: calc(50% - 17px);
        width: 35px;
    }
    .secModelHouse .modelBtn {
        width: 92%;
        height: 105px;
        margin: 30px auto 0;
        font-size: 14px;
        font-weight: normal;
        line-height: calc(24 / 14);
        text-align: center;
    }
    .secModelHouse .txtBox::before{
        top: -127px;
        right: calc(50% - 172px);
        width: 100px;
        height: 79px;
    }
    .secModelHouse .txtBox.lazyloaded::before{
        background: url(../img/lp_selfguided_tour2025/iconFamily_sp.png)center top / cover no-repeat;
    }
}

@media only screen and (max-width:359px) {
    .secModelHouse .tit {
        font-size: 20px;
    }

    .secModelHouse .txt {
        font-size: 20px;
        letter-spacing: normal;
    }

    .secModelHouse .modelTxt {
        font-size: 13px;
    }
}

/* 240419スライド追加 */
.secModelHouse .modelBox {
    background: #FFD800;
}
.secModelHouse .viewBox {
    text-align: center;
    background: #FFD800;
    padding-bottom: 92px;
    position: relative;
}
.secModelHouse .viewBox .iconCircle {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #1a1a1a;
    margin: 0 auto;
    position: absolute;
    bottom: -10px;
    left: calc(50% - 10px);
}
.secModelHouse .viewBox .iconCircle::before,
.secModelHouse .viewBox .iconCircle::after {
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    background: #1a1a1a;
    border-radius: 50%;
    left: calc(50% - 10px);
}
.secModelHouse .viewBox .iconCircle::before {
    top: -40px;
}
.secModelHouse .viewBox .iconCircle::after {
    bottom: -40px;
}
.secModelHouse .viewBox .txt {
    font-size: 50px;
    font-weight: bold;
    padding-top: 40px;
    margin-top: 0;
    letter-spacing: 2px;
    color: #000;
}
.secModelHouse .viewBox .txt + .txt{
    padding-top: 33px;
}
.secModelHouse .viewBox .txtSub {
    font-size: 30px;
    line-height: calc(60 / 30);
    letter-spacing: 1px;
    font-weight: bold;
    padding-top: 40px;
    margin-top: 0;
    color: #000;
}
.secModelHouse .viewBox .txt .subTxt {
    font-size: 84px;
    letter-spacing: 8px;
}
.secModelHouse .viewBox .subTxt {
    color: #a40f17;
}
.secModelHouse .viewBox .subTxt .numTxt {
    font-size: 75px;
}
.secViewBtm {
    margin-top: 50px;
}
.viewBox.box02 {
    margin-bottom: 125px;
}

@media only screen and (max-width:767px) {
    .secModelHouse .viewBox .txt {
        font-size: 18px;
        letter-spacing: 0;
        padding-top: 5px;
        margin-top: 0;
        line-height: calc(28 / 18);
    }
    .secModelHouse .viewBox .txt + .txt{
        padding-top: 0;
    }
    .secModelHouse .viewBox .txt .subTxt {
        font-size: 32px;
        letter-spacing: 1px;
    }

    .secModelHouse .viewBox .subTxt .numTxt {
        font-size: 30px;
    }

    .secViewBtm {
        position: relative;
        overflow: hidden;
        padding: 0;
        margin-top: 20px;
    }

    .secModelHouse .viewBox {
        padding-top: 10px;
        padding-bottom: 60px;
    }

    .secModelHouse .viewBox .txtSub {
        font-size: 14px;
        line-height: calc(28 / 14);
        letter-spacing: 0px;
        font-weight: normal;
        padding-top: 20px;
        margin-top: 0;
    }
    .secModelHouse .viewBox .iconCircle {
        width: 11px;
        height: 11px;
        bottom: -6px;
        left: calc(50% - 5.5px);
    }
    .secModelHouse .viewBox .iconCircle::before, 
    .secModelHouse .viewBox .iconCircle::after {
        width: 11px;
        height: 11px;
        left: calc(50% - 5.5px);
    }
    .secModelHouse .viewBox .iconCircle::before {
        top: -22px;
    }
    .secModelHouse .viewBox .iconCircle::after {
        bottom: -22px;
    }
}

@media only screen and (max-width:360px) {
    .secModelHouse .viewBox .txt {
        font-size: 15px;
    }

    .secModelHouse .viewBox .subTxt .numTxt {
        font-size: 24px;
    }
}

/* secViewBtm */
.secViewBtm {
    position: relative;
    overflow: hidden;
    padding: 5px 0;
}
.secViewBtm .swiper-wrapper {
    transition-timing-function: linear;
}
.secViewBtm .swiper {
    width: 476px;
    overflow: visible;
}
@media only screen and (max-width:767px) {
    .secViewBtm {
        padding: 1px 0;
    }

    .secViewBtm .swiper {
        width: 176px;
        overflow: visible;
    }
}

/* secViewBtm02 */
.secViewBtm02 {
    position: relative;
    /* overflow: hidden; */
    padding: 5px 0;
}
.secViewBtm02 .swiper-wrapper {
    transition-timing-function: linear;
}
.secViewBtm02 .swiper {
    width: 476px;
    overflow: visible;
}
.secViewBtm02:before {
    position: absolute;
    content: '';
    width: 213px;
    height: 222px;
    top: -187px;
    left: calc(50% - 610px);
}
.secViewBtm02.lazyloaded:before {
    background: url(../img/lp_selfguided_tour2025/iconViewBtm02.png)center top / cover no-repeat;
}

@media only screen and (max-width:767px) {
    .secViewBtm02 {
        padding: 1px 0;
    }

    .secViewBtm02 .swiper {
        width: 176px;
        overflow: visible;
    }
    .secViewBtm02:before {
        width: 81px;
        height: 85px;
        top: -83px;
        left: 6%;
    }
}

/* secReserveBnr */
.secReserveBnr .bnr {
    display: block;
    text-align: center;
    position: relative;
    left: 15px;
}
.secReserveBnr .titReserveBnr {
    font-size: 40px;
    font-weight: bold;
    color: #f8981d;
    text-align: center;
    margin-bottom: 37px;
    letter-spacing: 3px;
}
.secReserveBnr.mt120 {
    margin-top: 120px;
}
.secReserveBnr+.titContents {
    margin-top: 120px;
}
.secConcept+.secReserveBnr {
    margin-top: 120px;
}
@media only screen and (max-width:767px) {
    .secReserveBnr.mt120 {
        margin-top: 65px;
    }
    .secReserveBnr .titReserveBnr {
        font-size: 20px;
        text-align: center;
        margin-bottom: 20px;
        letter-spacing: 0px;
    }
    .viewBox.box02 {
        margin-bottom: 90px;
    }
    .secReserveBnr .bnr {
        display: block;
        width: 92%;
        margin: 0 auto;
        text-align: center;
        position: relative;
        left: 0;
    }
    .secReserveBnr+.titContents {
        margin-top: 70px;
    }
    .secConcept+.secReserveBnr {
        margin-top: 64px;
    }
}



/* secConcept */
.secConcept {
    margin-top: 85px;
}
.secConcept .iconCircle {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #1a1a1a;
    margin: 0 auto;
    position: relative;
}
.secConcept .iconCircle::before,
.secConcept .iconCircle::after {
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    background: #1a1a1a;
    border-radius: 50%;
    left: calc(50% - 10px);
}
.secConcept .iconCircle::before {
    top: -40px;
}
.secConcept .iconCircle::after {
    bottom: -40px;
}
.secConcept .txt {
    margin-top: 83px;
    font-size: 30px;
    line-height: 2;
    text-align: center;
    font-weight: bold;
    letter-spacing: 1px;
}
.secConcept .subTxt {
    background: linear-gradient(transparent 70%, #ffd800 70%, #ffd800 95%, transparent 95%);
}
.secConcept .subTit {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin-top: 23px;
    letter-spacing: 1px;
}
.secConcept .conceptList {
    margin-top: 62px;
    display: flex;
    border-bottom: solid 1px #ededed;
}
.secConcept .conceptItem {
    width: calc(100% / 3);
    border-right: solid 1px #ededed;
}
.secConcept .conceptItem:last-child {
    border-right: none;
}
.secConcept .txtBox {
    position: relative;
    padding: 56px 20px 68px;
}
.secConcept .nmber {
    position: absolute;
    top: -30px;
    left: calc(50% - 30px);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    color: #fff;
    background: #a40f17;
    font-size: 25px;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.secConcept .conceptTxt {
    font-size: 30px;
    line-height: 1.66;
    text-align: center;
    font-weight: bold;
}
.secConcept .conceptSubTxt {
    font-size: 16px;
    line-height: calc(36 / 16);
    text-align: center;
    margin-top: 20px;
}

@media only screen and (max-width:1650px) {
    .secConcept .conceptTxt {
        font-size: 25px;
    }
}

@media only screen and (max-width:767px) {
    .secConcept {
        margin-top: 50px;
    }

    .secConcept .iconCircle {
        width: 11px;
        height: 11px;
    }

    .secConcept .iconCircle::before,
    .secConcept .iconCircle::after {
        width: 11px;
        height: 11px;
        left: calc(50% - 5.5px);
    }

    .secConcept .iconCircle::before {
        top: -20px;
    }

    .secConcept .iconCircle::after {
        bottom: -20px;
    }

    .secConcept .txt {
        margin-top: 13px;
        font-size: 16px;
        line-height: calc(30 / 16);
        letter-spacing: normal;
    }

    .secConcept .subTxt02 {
        background: linear-gradient(transparent 70%, #e7e671 70%, #e7e671 95%, transparent 95%);
    }

    .secConcept .subTit {
        font-size: 14px;
        margin-top: 13px;
        letter-spacing: normal;
    }

    .secConcept .conceptList {
        margin: 34px auto 0;
        display: block;
        border-bottom: none;
        width: 92%;
    }

    .secConcept .conceptItem {
        width: 100%;
        border-right: none;
    }

    .secConcept .conceptItem:nth-child(n+2) {
        margin-top: 35px;
    }

    .secConcept .txtBox {
        padding: 25px 0 0;
        margin: -20px 4% 0;
        background: #fff;
    }

    .secConcept .nmber {
        top: -17.5px;
        left: calc(50% - 17.5px);
        width: 35px;
        height: 35px;
        font-size: 14px;
    }

    .secConcept .conceptTxt {
        font-size: 16px;
        line-height: 1.625;
    }
    .secConcept .conceptSubTxt {
        font-size: 13px;
        line-height: calc(24 / 13);
        margin-top: 8px;
        text-align: left;
    }
}

@media only screen and (max-width:374px) {
    .secConcept .txt {
        font-size: 15px;
    }
}

@media only screen and (max-width:359px) {
    .secConcept .txt {
        font-size: 13px;
    }

    .secConcept .subTit {
        font-size: 13px;
    }

    .secConcept .conceptTxt {
        font-size: 14px;
    }
}

/* secModel */
.secModel {
    margin-top: 120px;
}

.secModel .titImg {
    text-align: center;
}

.secModel .topTitImg {
    text-align: center;
    margin: 20px auto 0;
    font-size: 50px;
    font-weight: bold;
    letter-spacing: 4px;
}

.secModel .topTit {
    font-size: 18px;
    letter-spacing: 1px;
    text-align: center;
    margin-top: 32px;
}

.secModel .tab-area {
    display: flex;
    justify-content: center;
    margin-top: 60px;
}

.secModel .tab {
    width: 480px;
    height: 90px;
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    letter-spacing: 1px;
    position: relative;
    cursor: pointer;
    border: solid 1px #1f2126;
    margin-right: 30px;
}

.secModel .tab.active {
    background: #1f2126;
    color: #fff;
}

.secModel .tab:nth-child(2) {
    margin-right: 0;
}

.secModel .tab.active::after {
    position: absolute;
    content: "";
    width: 40px;
    height: 26px;
    bottom: -25px;
    left: calc(50% - 20px);
    background: #1f2126;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
}

/* content-area */
.secModel .content-area {
    margin-top: 60px;
}

.secModel .linkBox {
    display: flex;
    flex-wrap: wrap;
}

.secModel .item {
    width: 30.282%;
    margin-right: 4.577%;
}

.secModel .item:nth-child(3n) {
    margin-right: 0;
}

.secModel .item:nth-child(n+4) {
    margin-top: 80px;
}

.secModel .item.mr {
    margin-right: 4.577%;
}

.secModel .item.mrNone {
    margin-right: 0;
}

.secModel .modelInner {
    display: block;
    text-decoration: none;
    color: #1a1a1a;
    position: relative;
}

.secModel .iconBox {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: flex;
}

.secModel .iconBox .icon {
    position: relative;
    color: #fff;
    background-color: #a40f17;
    font-size: 13px;
    padding: 10px 15px;
}

.secModel .iconBox .icon.icon01 {
    padding: 10px 7px;
}

.secModel .iconBox .icon.icon01::before {
    position: absolute;
    content: '';
    margin: auto;
    display: block;
    top: 0;
    right: -13px;
    width: 0;
    height: 0;
    border-top: 34px solid #a40f17;
    border-right: 13px solid transparent;
    z-index: 1;
}

.secModel .iconBox .icon.icon02 {
    color: #a40f17;
    background-color: #ffed24;
}

.secModel .iconBox .icon.icon03 {
    color: #fff;
    background-color: #000;
}

.secModel .img {
    padding-top: 62.791%;
}

.secModel .txtBox {
    margin-top: 30px;
}

.secModel .tit {
    font-size: 22px;
    letter-spacing: 1px;
    line-height: calc(36 / 22);
    text-align: center;
    height: 71.72px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}

.secModel .txt {
    font-size: 14px;
    letter-spacing: 0.5px;
    line-height: 1.5;
    text-align: center;
    margin-top: 17px;
}
.secModel .txt a{
    text-underline-offset: 7px;
    color: #008aff;
}

.isDesktopIpad .secModel .txt {
    font-size: 12px;
    letter-spacing: normal;
}

.secModel .subTxtBox {
    margin-top: 19px;
    height: 76px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #fffbde;
    color: #a40f17;
    font-size: 14px;
    line-height: 1.57;
}

.secModel .content:nth-child(2) .subTxtBox {
    height: 96px;
}

/* btnList */
.secModel .btnList {
    margin-top: 30px;
    display: flex;
    justify-content: center;
}

.secModel .btnItem {
    width: 48.838%;
    margin-right: 2.324%;
}

.secModel .btnItem:nth-child(2) {
    margin-right: 0;
}

.secModel .btnItem:only-child {
    width: 230px;
    margin: 0 auto;
}

.secModel .btnInner,
.secModel .btnInner02 {
    height: 64px;
    border-radius: 4px;
    background: #a40f17;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    letter-spacing: 1px;
    line-height: 1.5;
    font-weight: bold;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
}

.secModel .btnItem:nth-child(2) .btnInner02 {
    background: #fff;
    border: solid 1px #1a1a1a;
    color: #1a1a1a;
}

.secModel .iconTxt {
    font-size: 14px;
    position: absolute;
    left: 0;
    top: 0;
    background: #ffed24;
    padding: 0 10px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    font-weight: 500;
}

@media only screen and (max-width:767px) {
    .secModel {
        margin-top: 70px;
    }

    .secModel .titImg {
        width: 22px;
        margin: 0 auto;
    }

    .secModel .topTitImg {
        font-size: 24px;
        font-weight: bold;
        letter-spacing: 1px;
    }

    .secModel .topTit {
        font-size: 14px;
        letter-spacing: 1px;
        margin-top: 20px;
    }

    .secModel .tab-area {
        margin-top: 30px;
    }

    .secModel .tab {
        width: calc(50% - 2.5px);
        height: 56px;
        font-size: 14px;
        letter-spacing: normal;
        margin-right: 5px;
    }

    .secModel .tab.active::after {
        width: 14px;
        height: 9px;
        bottom: -8px;
        left: calc(50% - 7px);
    }

    /* content-area */
    .secModel .content-area {
        margin-top: 30px;
    }

    .secModel .linkBox {
        display: block;
    }

    .secModel .item {
        width: 100%;
        margin-right: 0;
    }

    .secModel .item:nth-child(n+2) {
        margin-top: 50px;
    }

    .secModel .item.mr {
        margin-right: 0;
    }

    .secModel .iconBox .icon {
        font-size: 12px;
        padding: 8px 12px;
    }

    .secModel .iconBox .icon.icon01 {
        padding: 8px 7px;
    }

    .secModel .iconBox .icon.icon01::before {
        right: -11px;
        border-top: 29px solid #a40f17;
        border-right: 11px solid transparent;
    }

    .secModel .img {
        padding-top: 62.899%;
    }

    .secModel .txtBox {
        margin-top: 14px;
    }

    .secModel .tit {
        font-size: 18px;
        letter-spacing: 0.5px;
        line-height: 1.55;
        height: auto;
    }

    .secModel .txt {
        font-size: 13px;
        letter-spacing: 1px;
        line-height: 1.5;
        margin-top: 11px;
    }
    .secModel .txt a{
        color: #008aff;
    }

    .secModel .subTxtBox {
        margin-top: 13px;
        height: auto;
        font-size: 12px;
        letter-spacing: 0px;
        line-height: calc(20 / 12);
        padding: 11px 10px;
    }

    .secModel .content:nth-child(2) .subTxtBox {
        height: auto;
    }

    /* btnList */
    .secModel .btnList {
        margin-top: 20px;
    }

    .secModel .btnItem {
        width: 49.276%;
        margin-right: 1.448%;
    }

    .secModel .btnItem:only-child {
        width: 56.522%;
        margin: 0 auto;
    }

    .secModel .btnInner,
    .secModel .btnInner02 {
        height: 52px;
        font-size: 14px;
        letter-spacing: normal;
        line-height: 1.5;
    }

    .secModel .btnItem:nth-child(2) .btnInner02 {
        font-size: 12px;
    }

    .secModel .iconTxt {
        font-size: 12px;
        height: 30px;
    }
}

@media only screen and (max-width:359px) {
    .secModel .txt {
        font-size: 12px;
    }

    .secModel .subTxtBox {
        font-size: 11px;
        letter-spacing: normal;
    }

    .secModel .btnItem:nth-child(2) .btnInner {
        font-size: 11px;
    }

    .secModel .iconTxt {
        font-size: 11px;
        padding: 0 5px;
    }
}

/* fairBox */
.secModel .fairBox {
    width: 1090px;
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
    text-align: center;
    margin: 75px auto 75px;
    border: solid 3px #a40f17;
    padding-top: 5px;
}

.secModel .fairTit {
    font-size: 18px;
    color: #a40f17;
    font-weight: 600;
    letter-spacing: 1px;
}

.secModel .fairMainTit {
    font-size: 28px;
    color: #a40f17;
    font-weight: 600;
    letter-spacing: 1px;
    margin-top: 15px;
}

.secModel .fairTxt {
    font-size: 14px;
    line-height: 1.85;
    margin-top: 23px;
    letter-spacing: 0.5px;
}

@media only screen and (max-width:767px) {
    .secModel .fairBox {
        width: 100%;
        height: auto;
        display: block;
        margin: 20px auto 30px;
        padding: 25px 10px 25px;
    }

    .secModel .fairTit {
        font-size: 14px;
        letter-spacing: 0.5px;
    }

    .secModel .fairMainTit {
        font-size: 20px;
        letter-spacing: 0.5px;
        margin-top: 13px;
    }

    .secModel .fairTxt {
        font-size: 12px;
        line-height: 1.83;
        margin-top: 15px;
        letter-spacing: normal;
    }
}

@media only screen and (max-width:359px) {
    .secModel .fairTit {
        font-size: 13px;
        letter-spacing: normal;
    }

    .secModel .fairMainTit {
        letter-spacing: normal;
    }

    .secModel .fairTxt {
        font-size: 11px;
    }
}

/*========================================
    フォーム
========================================*/
.secContact#formTop {
    position: relative;
    background-color: #f8f8f8;
    padding: 0 0 150px 0;
    margin-top: 315px;
}
.secContact#formTop::after {
    content: '';
    position: absolute;
    top: -170px;
    left: 0;
    width: 100%;
    height: 170px;
    background: #f8f8f8;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
.secContact:not(.ok) .contactTop {
    position: absolute;
    top: -25px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 2;
}
.secFormTable {
    padding-top: 420px;
}
.secFormQuestionnaire .secFormTable {
    padding-top: 0;
}
form {
    padding: 30px 0 100px;
}
.secFormTable table#form {
    background: none;
}

@media only screen and (max-width:767px) {
    .secContact#formTop {
        padding: 0;
        margin-top: 110px;
        background: none;
    }
    .secContact.co#formTop {
        margin-top: 0;
    }
    .secContact#formTop::after {
        top: -40px;
        height: 40px;
    }
    .secContact:not(.ok) .contactTop {
        position: static;
        padding: 30px 0;
    }
    .secFormTable {
        padding-top: 0;
    }
    form {
        padding: 0;
    }
}

/* copy */
.secFooter .copy {
    font-size: 11px;
    letter-spacing: 0.5px;
    text-align: center;
    color: #fff;
    padding: 19px;
    background: #1f2126;
}

.secFooter .copy .fCopy {
    font-family: Verdana, 'Droid Sans';
}

@media only screen and (max-width:767px) {
    .secFooter .copy {
        font-size: 10px;
        letter-spacing: normal;
        padding: 14.5px 10px;
    }
}


/*-----------------------------------------------
	popup
-----------------------------------------------*/
#popup {
    display: none;
    position: relative;
    z-index: 99999;
}

#popup .overlay {
    width: 100%;
    height: 100%;
    min-height: 100vh;
    background: rgba(0, 0, 0, 0.702);
    position: absolute;
    top: 0;
    left: 0;
}

#popup .popupContainer {
    display: table;
    width: 100%;
    height: 100vh;
}

#popup .popupContents {
    display: table-cell;
    vertical-align: middle;
}

#popup .popupMain {
    width: 1224px;
    margin: 0 auto;
    padding: 100px 0;
}

@media only screen and (max-width:767px) {
    #popup .popupMain {
        width: 92%;
    }
}

/* secPopup */
.secPopup {
    display: none;
    position: relative;
}

.secPopup .btnClose {
    position: absolute;
    top: 0;
    right: 0;
    width: 80px;
    height: 80px;
    background: #1a1a1a;
    display: flex;
    align-items: center;
    justify-content: center;
}

.secPopupItem01 {
    background: #fff;
    padding: 100px;
}

.secPopupItem01 .img02 {
    margin-top: 40px;
}

.secPopupItem01 .tit {
    font-size: 22px;
    line-height: 1.81;
    text-align: center;
    margin-top: 55px;
}

.secPopupItem01 .tit02 {
    margin-top: 40px;
}

.secPopupItem01 .list {
    display: flex;
    flex-wrap: wrap;
    margin-top: 75px;
}

.secPopupItem01 .item {
    width: 48.828125%;
    height: 300px;
    position: relative;
    border: solid 1px #000000;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 22px;
    line-height: 1.81;
    margin-right: 2.34375%;
}

.secPopupItem01 .item:nth-child(2n) {
    margin-right: 0;
}

.secPopupItem01 .item:nth-child(n+3) {
    margin-top: 54px;
}

.secPopupItem01 .nmber {
    font-size: 25px;
    letter-spacing: 1px;
    width: 60px;
    height: 60px;
    color: #fff;
    background: #a40f17;
    position: absolute;
    left: calc(50% - 30px);
    top: -30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.secPopupItem01 .boxEarly {
    border: 1px #a40f17 solid;
    width: 1024px;
    height: 180px;
    padding-top: 40px;
    text-align: center;
    margin-top: 40px;
    position: relative;
}

.secPopupItem01 .boxEarly::before {
    content: "";
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    position: absolute;
    top: 5px;
    left: 5px;
    border: 1px #a40f17 solid;
    pointer-events: none;
}

.secPopupItem01 .titEarly {
    font-size: 18px;
    line-height: 1.78;
    text-align: center;
    color: #a40f17;
    font-weight: bold;
    letter-spacing: 1px;
}

.secPopupItem01 .txtEarly {
    font-size: 14px;
    letter-spacing: 0.5px;
    margin-top: 15px;
}

@media only screen and (max-width:767px) {
    .secPopup {
        display: none;
        position: relative;
    }

    .secPopup .btnClose {
        width: 50px;
        height: 50px;
    }

    .secPopup .btnClose img {
        width: 19px;
        margin: 0 auto;
    }

    .secPopupItem01 {
        padding: 70px 4.3475% 50px;
    }

    .secPopupItem01 .img02 {
        margin-top: 20px;
    }

    .secPopupItem01 .tit {
        font-size: 14px;
        line-height: 1.85;
        margin-top: 35px;
    }

    .secPopupItem01 .tit02 {
        margin-top: 27px;
    }

    .secPopupItem01 .list {
        display: block;
        margin-top: 40px;
    }

    .secPopupItem01 .item {
        width: 100%;
        height: auto;
        display: block;
        font-size: 14px;
        line-height: 1.85;
        margin-right: 0;
        padding: 28px 10px;
    }

    .secPopupItem01 .item:nth-child(n+2) {
        margin-top: 35px;
    }

    .secPopupItem01 .nmber {
        font-size: 14px;
        width: 35px;
        height: 35px;
        left: calc(50% - 17.5px);
        top: -17.5px;
    }

    .secPopupItem01 .boxEarly {
        width: 100%;
        height: auto;
        padding: 20px 0 23px;
        margin-top: 23px;
    }

    .secPopupItem01 .boxEarly::before {
        width: calc(100% - 6px);
        height: calc(100% - 8px);
        position: absolute;
        top: 4px;
        left: 3px;
    }

    .secPopupItem01 .titEarly {
        font-size: 13px;
        line-height: 1.85;
        letter-spacing: 0.5px;
    }

    .secPopupItem01 .txtEarly {
        font-size: 11px;
        line-height: 1.64;
        letter-spacing: 0;
        margin-top: 8px;
    }
}

@media only screen and (max-width:359px) {
    .secPopupItem01 .tit {
        font-size: 13px;
    }

    .secPopupItem01 .item {
        font-size: 13px;
    }
}

/* fNavi */
#fNavi {
    display: none;
}

@media only screen and (max-width:767px) {
    #fNavi {
        display: block;
    }

    #fNavi .inner {
        width: 100%;
        height: 60px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #a40f17;
        color: #fff;
        font-size: 15px;
        font-weight: bold;
        text-decoration: none;
        position: relative;
    }

    #fNavi .inner::after {
        position: absolute;
        content: "";
        left: 0;
        bottom: 0;
        background: rgb(143, 13, 19);
        height: 3px;
        width: 100%;
    }

    #fNavi+.secFooter {
        padding-bottom: 61px;
    }
}

/* secFooterLp */
.secFooterLp .copy {
    font-size: 11px;
    letter-spacing: 0.5px;
    text-align: center;
    color: #fff;
    padding: 19px;
    background: #1f2126;
}

.secFooterLp .copy .fCopy {
    font-family: Verdana, 'Droid Sans';
}

@media only screen and (max-width:767px) {
    .secFooterLp .copy {
        font-size: 10px;
        letter-spacing: normal;
        padding: 14.5px 10px;
    }

    #fNavi+.secFooterLp {
        padding-bottom: 61px;
    }
}
.secContact .secTit {
    text-align: center;
    margin: 20px auto 0;
    font-size: 50px;
    font-weight: bold;
    letter-spacing: 4px;
}

@media only screen and (max-width:767px) {
    form {
        position: relative;
    }

    form::after {
        content: "";
        width: 100%;
        height: 1px;
        background: #fff;
        position: absolute;
        bottom: 0;
        left: 0;
    }
    .secContact .secTit {
        width: auto;
        font-size: 24px;
        font-weight: bold;
        letter-spacing: 1px;
    }
}

/* secContact */
.secContact .formTxt {
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.5px;
    margin-top: 30px;
    line-height: calc(30 / 14);
}

.secContact .txtLpPresent {
    color: #a41017;
}

@media only screen and (max-width:767px) {
    .secContact .formTxt {
        font-size: 11px;
        width: 92%;
        letter-spacing: 0px;
        margin: 16px auto 0;
        line-height: calc(18 / 11);
        text-align: left;
    }

    .secContact .txtLpPresent {
        display: block;
        width: 100%;
        margin: 0px auto;
        text-align: left;
    }
}

/* datepicker */
.ui-widget.ui-widget-content {
    z-index: 1000 !important;
    font-size: 15px;
}

@media only screen and (max-width:767px) {
    .ui-widget.ui-widget-content {
        font-size: 17px;
    }
}

.secFormTable .zip input[type="text"],
.secFormTable .zip select {
    background: #fff8f8;
}

/* チャットボット非表示 */
.siq_bR {
    display: none !important;
}

.secForm .ankeTop .txtColor{
        font-size: 16px;
        color: #e0bd19;
}
@media only screen and (max-width:767px){
    .secContact.ok .secBnrRaclear.wsp100{
        width: 100%;
    }
    .secForm .ankeTop{
        font-size: 11px;
        text-align: center;
        color: #1a1a1a;
        line-height: 1.6;
        padding-top: 20px;
        letter-spacing: 0;
    }
    .secForm .ankeTop .txtColor{
        font-size: 13px;
    }
}
@media only screen and (max-width: 359px){
    .secForm .ankeTop{
        font-size: 10px;
    }
    .secForm .ankeTop .txtColor{
        font-size: 11px;
    }
}