@charset "utf-8";

/*-----------------------------------------------
    index
-----------------------------------------------*/
.secTopcontent{
    position: relative;
    width: 100%;
}
.secHero{
    width: 100%;
    background: url(../img/index/imgHerobg.jpg) center top no-repeat;
    background-size: 120rem auto;
    position: relative;
    opacity: 0;
    transition: opacity 0.5s ease-in;
}
.secHero.show{
    opacity: 1;
}
@media only screen and (min-width:1201px){
    .secHero{
        background-size:cover;
        background-position: center center;
    }
}
/* .secHero::before{
    content: "";
    position: absolute;
    width: 94.1rem;
    height: 106.9rem;
    left: calc(50% - 40rem);
    top: calc(0% + 6.5rem);
    background: url(../img/index/imgHeroDeco.png) center top no-repeat;
} */
.secHero .heroInner{
    max-width: 80rem;
    width: calc(100% - 10rem);
    margin: 0 auto;
    height: 70rem;
    position: relative;
    padding-top: 19.3rem;
}
.secHero .titleIn{
    display: inline-block;
    width: 100%;
    padding: 0 0 0 5.7rem;
    text-align: left;
}
.secHero .title{
    font-size: var(--pcFontSize55);
    line-height: calc(75 / 55);
    color: var(--whiteColor);
    letter-spacing:var(--pcLetterSpacing100);
    opacity: 0;
    transition: opacity 0.5s ease-in;
}
.secHero.show .title{
    transition-delay: 0.5s;
    opacity: 1;
}
.secHero .title .color_red{
    color: var(--redColor);
}
.secHero .subtitbox{
    width: 100%;
    text-align: left;
    margin-top: 5.6rem;
    font-size: var(--pcFontSize22);
    line-height: calc(33 / 22);
    color: var(--whiteColor);
    font-weight: bold;
    padding-left: 1.1rem;
    letter-spacing: var(--pcLetterSpacing125);
    opacity: 0;
    transition: opacity 0.5s ease-in;
}
.secHero.show .subtitbox{
    transition-delay: 1s;
    opacity: 1;
}
@media only screen and (max-width:1199px){
    .secHero{
        background-size: cover;
    }
}
@media only screen and (max-width:767px){
    .secTopcontent{
        position: relative;
        width: 100%;
    }
    .secHero{
        background-image: url(../img/index/imgHerobg_sp.jpg);
        background-size: cover;
        background-position: center center;
    }
    .secHero .heroInner{
        max-width: 40rem;
        width: calc(100% - 2rem);
        height:auto;
        padding-top: 20.7rem;
        padding-bottom: 14rem;
    }
    .secHero .titleIn{
        padding-left: 0;
        text-align: center;
    }
    .secHero .title{
        font-size: var(--spFontSize35);
        line-height: calc(50 / 35);
        display: inline-block;
        text-align: left;
        letter-spacing: 0.05em;
        padding-left: 3.3rem;
    }
    .secHero .subtitbox{
        margin-top: 6.4rem;
        font-size: var(--spFontSize15);
        line-height: calc(28 / 15);
        padding-left: 0;
        text-align: center;
        letter-spacing: 0;
    }
}
.secTop{
    width: 100%;
}
.secTop .topInner{
    max-width: 100rem;
    width: calc(100% - 10rem);
    margin: 0 auto;
    background-color: var(--topBgColor);
    display: flex;
    justify-content: center;
    align-items: center;
    height: 7rem;
    border-radius: 4rem;
    padding: 0 1rem;
}
.secTop .logoArea{
    display: inline-block;
}
.secTop .l_inner{
    display: flex;
    align-items: center;
}
.secTop .logomain{
    width: 19.7rem;
}
.secTop .logosub{
    width: 44px;
    margin-left: 1.4rem;
}
.secTop .txtArea{
    display: inline-block;
    padding-left: 1.2rem;
}
.secTop .txt{
    font-size: var(--pcFontSize12);
    line-height: calc(20 / 12);
    color: var(--linktxtColor);
}
@media only screen and (min-width:768px){
    .secTop{
        width: 100%;
        position: absolute;
        left: 0;
        bottom: 2.4rem;
        opacity: 0;
        transition: opacity 0.5s ease-in;
    }
    .secTopcontent.show .secTop{
        transition-delay: 1.5s;
        opacity: 1;
    }
    .secTop.show{
        opacity: 1;
    }
}
@media only screen and (max-width:767px){
    .secTop{
        width: 100%;
        padding-top: 2.9rem;
        background: url(../img/index/imgTopbg.jpg) left bottom no-repeat var(--whiteColor);
        background-size: 100% auto;
        padding-bottom: calc(2.7rem + (36 / 375 * 100vw));
    }
    .secTop .topInner{
        max-width: 40rem;
        width: calc(345 / 375 * 100%);
        background: none;
        display:block;
        height:auto;
        border-radius: 0;
        padding: 0;
    }
    .secTop .logoArea{
        display:block;
    }
    .secTop .l_inner{
        justify-content: center;
    }
    .secTop .logomain{
        width: 16rem;
    }
    .secTop .logosub{
        width: 33px;
        margin-left: 20px;
    }
    .secTop .txtArea{
        display: block;
        padding: 0 1rem;
        margin-top: 0.9rem;
        padding-top: 0.5rem;
        border-top: 1px solid var(--borderColor);
    }
    .secTop .txt{
        font-size: var(--spFontSize13);
        line-height: calc(22 / 13);
    }
}

.secMessage{
    width: 100%;
    margin-top: 16rem;
}
.secMessage .Inner{
    display: flex;
    flex-direction: row-reverse;
}
.secMessage .txtArea{
    flex: 1;
    padding-left: 5rem;
}
.secMessage .titbox{
    width: 100%;
}
.secMessage .titJpn{
    font-size: var(--pcFontSize36);
    line-height: calc(50 / 36);
    font-weight: 600;
    color: var(--messagetitColor);
}
.secMessage .imgtxt{
    width: 16.4rem;
    margin-top: 0;
}
.secMessage .txtBox{
    width: 100%;
    margin-top: 2.7rem;
}
.secMessage .txt{
    font-size: var(--pcFontSize17);
    line-height: calc(30 / 17);
    color: var(--linktxtColor);
    letter-spacing: var(--pcLetterSpacing75);
}
.secMessage .imgArea{
    width: 32.2rem;
}
.secMessage .imgbox{
    width: 100%;
}
.secMessage .namebox{
    width: 100%;
    margin-top: 1rem;
}
.secMessage .nametxt{
    font-size: var(--pcFontSize16);
    line-height: calc(30 / 16);
    color: var(--linktxtColor);
}
.secMessage .name{
    font-size:var(--pcFontSize23);
    line-height: calc(30 / 23);
    font-weight: bold;
    padding-left: 0.8rem;
    letter-spacing: var(--pcLetterSpacing100);
}
@media only screen and (max-width:767px){
    .secMessage{
        margin-top: 4.6rem;
    }
    .secMessage .Inner{
        display: block;
        padding: 0 1rem;
    }
    .secMessage .txtArea{
        width: 100%;
        padding: 0;
    }
    .secMessage .titbox{
        text-align: center;
    }
    .secMessage .titJpn{
        font-size: var(--spFontSize28);
        line-height: calc(40 / 28);
    }
    .secMessage .imgtxt{
        width: 7.6rem;
        width: 11.4rem;
        margin: 0 auto;
        margin-top: 0.6rem;
    }
    .secMessage .txtBox{
        margin-top: 2.7rem;
    }
    .secMessage .txt{
        font-size: var(--spFontSize14);
        line-height: calc(28 / 14);
        letter-spacing: 0;
    }
    .secMessage .imgArea{
        width:100%;
        margin-top: 2.8rem;
    }
    .secMessage .namebox{
        margin-top: 0.3rem;
    }
    .secMessage .nametxt{
        font-size: var(--spFontSize14);
        line-height: calc(20 / 14);
    }
    .secMessage .name{
        font-size:var(--spFontSize20);
        line-height: calc(24 / 20);
        padding-left: 1.1rem;
    }
}

.secTitbox{
    text-align: center;
}
.secTitbox .titJpn{
    font-size: var(--pcFontSize36);
    line-height: calc(50 / 36);
    font-weight: 600;
    color: var(--messagetitColor);
}
.secTitbox .imgtitEng{
    margin: 0 auto;
}

.secConcept{
    margin-top: 9rem;
}
.secConcept .imgtitEng{
    width: 8rem;
}
.secConcept .txtBox{
    width: 100%;
    text-align: center;
    margin-top: 4.7rem;
}
.secConcept .subtit{
    font-size: var(--pcFontSize32);
    line-height: calc(40 / 32);
    font-weight: 600;
    color: var(--messagetitColor);
    letter-spacing: var(--pcLetterSpacing100);
}
.secConcept .txt{
    font-size: var(--pcFontSize17);
    line-height: calc(30 / 17);
    color: var(--linktxtColor);
    margin-top: 2.3rem;
}
.secConcept .clicbox{
    max-width: 47.2rem;
    margin: 0 auto;
    margin-top: 4.3rem;
}
.secConcept .linkmapArea{
    width: 100%;
    position: relative;
}
.secConcept .imgBase{
    position: relative;
    width: 100%;
}
.secConcept .imgBase img.is-default{
    position: relative;
    z-index: 0;
    transition: opacity 0.6s ease;
}
/* // ▼ベース画像を消す記述 */
.secConcept .imgBase.is-hovering img.is-default{
    opacity: 0;
}
.secConcept .imgBase img[data-id]{
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s ease;
}
.secConcept .imgBase img[data-id].is-active{
    transition-delay: 0.2s;
    opacity: 1;
}
@media only screen and (max-width:767px){
    .secTitbox .titJpn{
        font-size: var(--spFontSize28);
        line-height: calc(40 / 28);
    }
    .secTitbox .imgtitEng{
        margin-top: 0.8rem;
    }
    .secConcept{
        margin-top: 9.4rem;
    }
    .secConcept .imgtitEng{
        width: 4.7rem;
        width: 7rem;
    }
    .secConcept .txtBox{
        margin-top: 2.1rem;
    }
    .secConcept .subtit{
        font-size: var(--spFontSize24);
        line-height: calc(36 / 24);
    }
    .secConcept .txt{
        font-size: var(--spFontSize14);
        line-height: calc(28 / 14);
        letter-spacing: 0;
        text-align: left;
        padding: 0 1rem;
        margin-top: 1.3rem;
    }
    .secConcept .clicbox{
        max-width: 29.4rem;
        margin-top: 26px;
    }
}

.secConcept .moviebox{
    width: 100%;
    margin-top: 8.6rem;
}
.secConcept .m_tit{
    font-size: var(--pcFontSize18);
    line-height: calc(30 / 18);
    font-weight: bold;
    color: var(--linktxtColor);
    text-align: center;
}
.secConcept .m_box{
    width: 55rem;
    margin: 0 auto;
    margin-top: 2.2rem;
}
.secConcept .iflamebox{
    width: 100%;
    height: 0;
    padding-top: 31rem;
    border-radius: 1rem;
    overflow: hidden;
    z-index: 1;
    position: relative;
}
.secConcept .iflamebox iframe{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border: none;
    object-fit: cover;
}
@media only screen and (max-width:767px){
    .secConcept .moviebox{
        margin-top: 4.7rem;
    }
    .secConcept .m_tit{
        font-size: var(--spFontSize14);
        line-height: calc(22 / 14);
    }
    .secConcept .m_box{
        max-width: 29rem;
        width: 100%;
        margin-top: 1.3rem;
    }
    .secConcept .iflamebox{
        padding-top: calc(310 / 550 * 100%);
    }
}

/* secMoreBtn */
.secMoreBtn{
    width: 100%;
}
.secMoreBtn .moreLink{
    width: calc(13.5rem + 1rem + 3rem);
    position: relative;
    display: flex;
    transition: 0.2s ease-in;
    overflow: hidden;
    gap: 1rem;
    border-radius: 3rem;
}
.secMoreBtn .moreLink::after{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--orangeColor);
    top: 0;
    right: calc(0% - 200%);
    transition: 0.2s ease-in;
}
.secMoreBtn .iconArea{
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    background-color: var(--moreBtnBgColor);
    position: relative;
}
.secMoreBtn .iconbox{
    position: absolute;
    left: calc(50% - 0.5rem);
    top: calc(50% - 1rem);
    width: 1rem;
    height: 2rem;
    background: url(../img/index/iconArrow.png) center center no-repeat;
    background-size: 1rem auto;
    z-index: 5;
}
.secMoreBtn .btnArea{
    display: flex;
    align-items: center;
    width: calc(100% - (3rem + 1rem));
    height: 3rem;
    border-radius: 3rem;
    font-size: var(--pcFontSize14);
    line-height: calc(20 / 14);
    font-weight: bold;
    color: var(--whiteColor);
    background-color: var(--moreBtnBgColor);
    transition: 0.2s ease-in;
}
.secMoreBtn .btnIn{
    display: inline-block;
    width: 100%;
    text-align: left;
    padding-left: 2.5rem;
    position: relative;
    z-index: 5;
    padding-bottom: 2px;
}
@media only screen and (min-width:768px){
    .secMoreBtn .moreLink:hover{
        gap: 0;
        /* width: calc(13.5rem + 3rem); */
    }
    .secMoreBtn .moreLink:hover .btnArea{
        width: calc(100% - 3rem);
        border-radius: 3rem 0 0 3rem;
        transition-delay: 0.2s;
    }
    .secMoreBtn .moreLink:hover .iconArea{
        border-radius: 0 3rem 3rem 0;
        transition-delay: 0.2s;
    }
    .secMoreBtn .moreLink:hover::after{
        transition-delay: 0.1s;
        right: 0;
    }
}
@media only screen and (max-width:767px){
    .secMoreBtn .moreLink{
        width: calc(13.5rem + 1rem + 3.2rem);
    }
    .secMoreBtn .iconArea{
        width: 3.2rem;
        height: 3.2rem;
    }
    .secMoreBtn .btnArea{
        width: calc(100% - (3.2rem + 1rem));
        height: 3.2rem;
        font-size: var(--spFontSize14);
    }
}

.secGroup{
    width: 100%;
    margin-top: 9.8rem;
}
.secGroup.lazyloaded{
    background: url(../img/index/bgGroup.png) left top repeat;
}
.secGroup .inner{
    padding-top: 5.3rem;
    width: 100%;
    padding-bottom: 4.7rem;
}
.secGroup .imgtitEng{
    width: 16.6rem;
}
.secGroup .listbox{
    width: 100%;
    margin-top: 5.5rem;
}
.secGroup .list{
    width: 100%;
}
.secGroup .item{
    width: 100%;
}
.secGroup .item + .item{
    margin-top: 5rem;
}
.secGroup .itemInner{
    display: flex;
}
.secGroup .imgArea{
    width: 56.5rem;
}
@property --groupReveal{
    syntax: '<percentage>';
    inherits: false;
    initial-value: 0%;
}
.secGroup .imgBox{
    width: 100%;
    opacity: 0;
    --groupReveal: 0%;
    -webkit-mask-image: radial-gradient(
        farthest-corner at 100% 100%,
        #000 0%,
        #000 max(0%, calc(var(--groupReveal) - 30%)),
        transparent var(--groupReveal)
    );
    mask-image: radial-gradient(
        farthest-corner at 100% 100%,
        #000 0%,
        #000 max(0%, calc(var(--groupReveal) - 30%)),
        transparent var(--groupReveal)
    );
}
.secGroup .item.jsShow .imgBox{
    opacity: 1;
    --groupReveal: 150%;
}
@media (prefers-reduced-motion: no-preference){
    .secGroup .imgBox{
        transition:
            opacity 3.2s cubic-bezier(.23, .14, 0, .98) .3s,
            --groupReveal 3.2s cubic-bezier(.23, .14, 0, .98) .3s;
    }
}
.secGroup .txtArea{
    width: calc(100% - 56.5rem);
}
.secGroup .txtInner{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
}
.secGroup .txtBox{
    display: inline-block;
    width: 100%;
    text-align: left;
}
.secGroup .imgLogo{
    display: inline-block;
}
.secGroup .imgLogo.type01{
    width: 12.4rem;
}
.secGroup .imgLogo.type02{
    width: 17.8rem;
}
.secGroup .titbox{
    width: 100%;
    margin-top: 2.5rem;
}
.secGroup .tit{
    font-size: var(--pcFontSize18);
    line-height: calc(24 / 18);
    font-weight: bold;
    color: var(--groupTitColor);
}
.secGroup .txtbox{
    width: 100%;
    margin-top: 1rem;
}
.secGroup .txt{
    font-size: var(--pcFontSize16);
    line-height: calc(26 / 16);
    color: var(--linktxtColor);
}
.secGroup .secMoreBtn{
    margin-top: 3rem;
}
@media only screen and (min-width:768px){
    .secGroup .item:nth-child(2n + 1) .itemInner{
        padding-right: calc((100% - 80rem) / 2);
    }
    .secGroup .item:nth-child(2n) .itemInner{
        flex-direction: row-reverse;
        padding-left: calc((100% - 80rem) / 2);
    }
    .secGroup .item:nth-child(2n + 1) .txtArea{
        padding-left: 8rem;
    }
    .secGroup .item:nth-child(2n) .txtArea{
        padding-right: 8rem;
    }
}
@media only screen and (max-width:767px){
    .secGroup{
        margin-top: 7.4rem;
    }
    .secGroup .inner{
        padding-top: 4.3rem;
        padding-bottom: 6.4rem;
    }
    .secGroup .imgtitEng{
        width: 16rem;
    }
    .secGroup .listbox{
        margin: 0 auto;
        margin-top: 3.2rem;
        width: calc(325 / 375 * 100%);
    }
    .secGroup .item + .item{
        margin-top: 6.8rem;
    }
    .secGroup .itemInner{
        display: block;
    }
    .secGroup .imgArea{
        width: 100%;
    }
    .secGroup .txtArea{
        width: 100%;
        margin-top: 2.6rem;
    }
    .secGroup .txtInner{
        height: auto;
        display: block;
    }
    .secGroup .imgLogo.type01{
        width: 11.1rem;
    }
    .secGroup .imgLogo.type02{
        width: 16rem;
    }
    .secGroup .imgLogo.type03{
        width: 17.2rem;
    }
    .secGroup .titbox{
        margin-top: 2.6rem;
    }
    .secGroup .tit{
        font-size: var(--spFontSize17);
        line-height: calc(26 / 17);
    }
    .secGroup .txtbox{
        margin-top: 0.9rem;
    }
    .secGroup .txt{
        font-size: var(--spFontSize14);
        line-height: calc(28 / 14);
    }
    .secGroup .secMoreBtn{
        margin-top: 2.3rem;
    }
}

.secInfo{
    width: 100%;
    margin-top: 9.1rem;
}
.secInfo .imgtitEng{
    width: 17rem;
}
.secInfo .listbox{
    width: 100%;
    padding: 0 1rem;
    margin-top: 27px;
}
.secInfo .list{
    width: 100%;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-color: var(--infoBorderColor);
    padding: 1rem 0;
}
.secInfo .item{
    width: 100%;
}
.secInfo .item + .item{
    border-top: 1px solid;
    border-color: var(--infoBorderColor);
    padding-top: 1rem;
    margin-top: 1rem;
}
.secInfo .infoLink{
    display: block;
    width: 100%;
    transition:0.5s;
}
.secInfo .i_inner{
    display: flex;
}
.secInfo .daysbox{
    width: 13rem;
}
.secInfo .i_txtbox{
    width: calc(100% - 13rem);
}
.secInfo .daytxt{
    font-weight: bold;
}
.secInfo .i_txt,
.secInfo .daytxt{
    font-size: var(--pcFontSize16);
    line-height: calc(24 / 16);
    letter-spacing: var(--pcLetterSpacing50);
}
@media only screen and (min-width:768px){
    .secInfo .infoLink:hover{
        color: var(--orangeColor);
    }
}
@media only screen and (max-width:767px){
    .secInfo{
        margin-top: 8.2rem;
    }
    .secInfo .imgtitEng{
        width: 14.9rem;
    }
    .secInfo .listbox{
        padding: 0 5px;
        margin-top: 2.4rem;
    }
    .secInfo .item + .item{
        padding-top: 1rem;
        margin-top: 1rem;
    }
    .secInfo .i_inner{
        display: block;
        padding:0;
    }
    .secInfo .daysbox{
        width: 100%;
    }
    .secInfo .i_txtbox{
        margin-top: 0.6rem;
        width: 100%;
    }
    .secInfo .i_txt,
    .secInfo .daytxt{
        font-size: var(--spFontSize13);
        line-height: calc(19 / 13);
    }
}
/* secCompany */
.secCompany{
    width: 100%;
    margin-top: 8rem;
}
.secCompany .secTitbox .titJpn{
    letter-spacing: var(--pcLetterSpacing100);
}
.secCompany .imgtitEng{
    width: 14.5rem;
}
.secCompany .listbox{
    width: 100%;
    padding: 0 1rem;
    margin-top: 4.2rem;
    display: flex;
}
.secCompany .l_list{
    width: calc(100% - 31rem);
    padding-right: 4.7rem;
}
.secCompany .r_list{
    width: 31rem;
}
.secCompany .list{
    width: 100%;
}
.secCompany .item{
    width: 100%;
    border-bottom: 1px solid;
    border-color: var(--infoBorderColor);
    padding-bottom: 1.8rem;
}
.secCompany .item + .item{
    margin-top: 1.6rem;
}
.secCompany .c_inner{
    display: flex;
}
.secCompany .c_titbox{
    width: 8.5rem;
}
.secCompany .c_tit{
    font-size: var(--pcFontSize14);
    line-height: calc(24 / 14);
    font-weight: bold;
}
.secCompany .c_txtbox{
    flex: 1;
}
.secCompany .c_txt{
    font-size: var(--pcFontSize14);
    line-height: calc(24 / 14);
}
.secCompany .c_subtit{
    width: 11.5rem;
    display: inline-block;
}
.secCompany .c_subtxt{
    display: inline-block;
    width: calc(100% - 11.5rem);
    padding-left: 1em;
}
@media only screen and (max-width:767px){
    .secCompany{
        margin-top: 10.4rem;
        padding-bottom: calc(9.3rem + (50 / 375 * 100vw));
    }
    .secCompany.lazyloaded{
        background: url(../img/index/bgCompany_sp.jog.jpg) left bottom no-repeat var(--baseColor);
        background-size: 100% auto;
    }
    .secCompany .imgtitEng{
        width: 15.2rem;
    }
    .secCompany .listbox{
        padding: 0 1rem;
        margin-top: 1.9rem;
        display: block;
    }
    .secCompany .l_list{
        width: 100%;
        padding-right: 0;
        border-top: 1px solid;
        border-color: var(--infoBorderColor);
        padding-top: 0.8rem;
    }
    .secCompany .r_list{
        width: 100%;
        margin-top: 0.9rem;
    }
    .secCompany .list{
        width: 100%;
    }
    .secCompany .item{
        padding-bottom: 0.9rem;
    }
    .secCompany .item + .item{
        margin-top: 0.9rem;
    }
    .secCompany .c_inner{
        display: block;
    }
    .secCompany .c_titbox{
        width: 100%;
    }
    .secCompany .c_tit{
        font-size: var(--spFontSize13);
        line-height: calc(19 / 13);
    }
    .secCompany .c_txtbox{
        margin-top: 0.6rem;
        width: 100%;
    }
    .secCompany .c_txt{
        font-size: var(--spFontSize13);
        line-height: calc(19 / 13);
    }
    .secCompany .c_subtit{
        width: 10.2rem;
    }
    .secCompany .c_subtxt{
        width: calc(100% - 10.2rem);
    }
}
.secCompany .prfbox{
    width: 100%;
    padding: 0 0.5rem;
    margin-top: 5.9rem;
    color: var(--linktxtColor);
}
.secCompany .p_inner{
    width: 100%;
}
.secCompany .p_titBox{
    position: relative;
    width: 100%;
}
.secCompany .p_titBox::after{
    content: "";
    position: absolute;
    width: calc(100% - 5rem);
    height: 1px;
    top: calc(50% - 0.5px);
    right: 0;
    background-color: var(--prfBorderColor);
}
.secCompany .p_tit{
    display: inline-block;
    position: relative;
    font-size: var(--pcFontSize14);
    line-height: calc(30 / 14);
    font-weight: bold;
    z-index: 3;
}
.secCompany .p_titIn{
    background-color: var(--baseColor);
    padding-right: 1rem;
}
.secCompany .p_txtBox{
    width: 100%;
    margin-top: 2rem;
}
.secCompany .p_txt{
    font-size: var(--pcFontSize16);
    line-height: calc(31 / 16);
    letter-spacing: var(--pcLetterSpacing50);
}
@media only screen and (max-width:767px){
    .secCompany .prfbox{
        padding: 0 1rem;
        margin-top: 5.7rem;
        color: var(--whiteColor);
    }
    .secCompany .p_inner{
        width: 100%;
        background-color: var(--prfBgColor);
        padding: 2.7rem 2rem 2.3rem;
        border-radius: 2rem;
    }
    .secCompany .p_tit{
        font-size: var(--spFontSize14);
        line-height: calc(20 / 14);
        font-weight: bold;
    }
    .secCompany .p_titBox::after{
        display: none;
    }
    .secCompany .p_titIn{
        background-color:unset;
        padding-right:0;
    }
    .secCompany .p_txtBox{
        margin-top: 1.9rem;
    }
    .secCompany .p_txt{
        font-size: var(--spFontSize13);
        line-height: calc(28 / 13);
        letter-spacing: 0;
    }
}

/* secContact */
.secContact{
    width: 100%;
    margin-top: 7.7rem;
    color: var(--linktxtColor);
    text-align: center;
}
.secContact .contact_tit{
    font-size: var(--pcFontSize16);
    line-height: calc(24 / 16);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing50);
}
.secContact .linkArea{
    max-width: 42rem;
    margin: 0 auto;
    width: 100%;
    border: 1px solid;
    border-color: var(--prfBorderColor);
    border-radius: 1rem;
    margin-top: 1.7rem;
}
.secContact .linkInner{
    padding: 0.7rem 0 1.6rem;
    text-align: center;
}
.secContact .linktit{
    font-size: var(--pcFontSize16);
    line-height: calc(30 / 16);
}
.secContact .btnBox{
    width:25rem;
    margin: 0 auto;
    margin-top: 0.7rem;
}
.secContact .linkbtn{
    display: flex;
    align-items: center;
    width: 100%;
    height: 3.5rem;
    border-radius: 1rem;
    background-color: var(--contactBtnColor);
    color: var(--whiteColor);
    font-size: var(--pcFontSize18);
    line-height: calc(30 / 18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing50);
    transition: 0.5s;
}
.secContact .linkbtn .btnIn{
    display: inline-block;
    width: 100%;
    text-align: center;
}
@media only screen and (min-width:1216px){
    .secContact .linkbtn:hover{
        background-color: var(--orangeColor);
    }
}
@media only screen and (max-width:767px){
    .secContact{
        margin-top:0;
        padding-top: 4rem;
        background-color: var(--whiteColor);
        padding-bottom: 6rem;
    }
    .secContact .contact_tit{
        font-size: var(--spFontSize16);
    }
    .secContact .linkArea{
        max-width: 100%;
        margin: 0 auto;
        width: 100%;
        border: none;
        border-top: 1px solid;
        border-color: var(--prfBorderColor);
        border-radius: 0;
        margin-top: 1.8rem;
        padding-top: 1.7rem;
    }
    .secContact .linkInner{
        padding: 0;
    }
    .secContact .linktit{
        font-size: var(--spFontSize16);
    }
    .secContact .btnBox{
        max-width: 25rem;
        width: 100%;
        margin-top: 0.9rem;
    }
    .secContact .linkbtn{
        font-size: var(--spFontSize18);
    }
}
/* ▼アニメーション関係 */
