@charset "utf-8";


.wrapper{
	width: 90%;
    max-width: 1100px;
	margin:0 auto;	
}

.wrapper700{
	width: 90%;
    max-width: 700px;
	margin:0 auto;
}

.wrapper750{
	width: 90%;
    max-width: 750px;
	margin:0 auto;
}

.wrapper800{
	width: 90%;
    max-width: 800px;
	margin:0 auto;
}

.wrapper900{
	width: 90%;
    max-width: 900px;
	margin: 0 auto;
}



@media screen and (max-width: 768px) {
    
    .wrapper,
	.wrapper700,
	.wrapper900{
        width:90%;
    }

    /*.mainvisual .wrapper{
        width: 100%;
    }*/

}

/*index*/


/*========= 流れるテキスト ===============*/

.slide-in {
    overflow: hidden;
      display: inline-block;
  }
  
  .slide-in_inner {
    display: inline-block;
  }

/*左右のアニメーション*/
.leftAnime{
    opacity: 0;/*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
  animation-name:slideTextX100;
  animation-duration:0.8s;
  animation-fill-mode:forwards;
    opacity: 0;
}

@keyframes slideTextX100 {
  from {
  transform: translateX(-100%); /*要素を左の枠外に移動*/
        opacity: 0;
  }

  to {
  transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}

.slideAnimeRightLeft {
  animation-name:slideTextX-100;
  animation-duration:0.8s;
  animation-fill-mode:forwards;
    opacity: 0;
}

@keyframes slideTextX-100 {
    from {
    transform: translateX(100%);/*要素を右の枠外に移動*/
    opacity: 0;
}

    to {
    transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
    }
}

/*左右のアニメーション*/
.rightAnime{
    opacity: 0;/*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
  animation-name:slideTextX100;
  animation-duration:0.8s;
  animation-fill-mode:forwards;
    opacity: 0;
}

@keyframes slideTextX100 {
  from {
  transform: translateX(-100%); /*要素を左の枠外に移動*/
        opacity: 0;
  }

  to {
  transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}

.slideAnimeRightLeft {
  animation-name:slideTextX-100;
  animation-duration:0.8s;
  animation-fill-mode:forwards;
    opacity: 0;
}


@keyframes slideTextX-100 {
  from {
  transform: translateX(100%);/*要素を右の枠外に移動*/
    opacity: 0;
  }

  to {
  transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}



/*========= 流れるテキスト ここまで===============*/

.header{
    width: 100%;
    position: absolute;
    z-index: 2;
    height: 100px;
    /*position: -webkit-sticky;
	position: sticky;*/
	top: 0;
    /*background-color: rgba(255,255,255,0.7);
    background-color: #fff;*/
}

/*20240726追記*/
.header > .wrapper{
    max-width: inherit;
}
/*20240726追記ここまで*/

html{
	scroll-padding-top: 100px;
}

.header-section-wrapper{
    display: flex;
    justify-content: space-between;
}

.header-logo-wrapper{
    margin-top: 15px;
    display: flex;
    align-items: flex-end;
}

.header-logo-wrapper > p{
    font-size: 2.4rem;
    margin-left: 20px;
    line-height: 1.4;
}

.header-link-button-items{
    display: flex;
    margin-top: 35px;
    margin-right: 55px;
    /*20240726追記*/
    margin-right: 5vw;
    align-items: center;
    margin-left:10px;
    
}

.header-link-button-item{
    width: 160px;
    /*20240726追記*/
    width: 12vw;
    min-width: 150px;
    height: 50px;
    display: block;
    line-height: 48px;
    text-align: center;
}

.header-link-button-item span{
    color: #fff;
    font-size: 1.8rem;
}

.header-link-button-newgraduate{
    background: var(--primary-blue2-color);
}

.header-link-button-midcareer{
    background: var(--primary-blue-color);
}

.header-link-button-newgraduate span::before{
    content: "";
    width: 23px;
    height: 20px;
    margin-right: 10px;
    background: url(../img/icon-header-menu_newgraduate.png);
    display: inline-block;
    vertical-align: -2px;
}

.header-link-button-midcareer span::before{
    content: "";
    width: 23px;
    height: 25px;
    margin-right: 5px;
    background: url(../img/icon-header-menu_midcareer.png);
    display: inline-block;
    vertical-align: -5px;
}


@media screen and (max-width: 910px) {
    .header-section-wrapper .header-link-button-items{
        display: none;
    }
}

@media screen and (max-width: 768px) {

.header-logo-wrapper > p{
    font-size: 1.8rem;
    margin-left: 15px;
    line-height: 1.4;
}


}

/*20240726追加*/
.header-link-corporate-button-item{
    margin-right: 2vw;
    color: #fff;
    border-radius: 20px;
    background-color: #68aee1;
    padding: 10px;
    display: block;
    text-align: center;
    width: 12vw;
    min-width: 150px;
}

a.header-link-corporate-button-item{
    color: #fff;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1;
}


/*20240726追加ここまで*/



#spnavi .header-link-button-items{
    margin-right: auto;
    margin-left: auto;
    max-width: 450px;
    width: 100%;
    margin-bottom: 25px;
    margin-top: 25px;
}

#spnavi .header-link-button-item{
    width: 50%;
}








.header-nav{
    margin-right: 30px;
    margin-left: auto;
    display: flex;
    align-items: center;
}

.header-nav ul{
    display: flex;
}

.header-nav ul li{
    margin-left: 30px;
}

.header-nav ul li a{
    position: relative;
    color: #000;
}

.header-nav ul li a::after{
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    height: 2px;
    background: var(--primary-blue-color);
    bottom: -10px;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;

}

.header-nav ul li a:hover{
    opacity: 1 !important;
}

/*.top-page .header-nav ul li a{
    
    font-weight: 500;
}*/

.header-nav ul li a:hover::after,
.header-nav ul li a.active::after{
    visibility: visible;
    bottom: -4px;
    opacity: 1;
}

.header-contact{
    display: flex;
    align-items: center;
}

a.btn-contact {
    padding: 8px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    /*width: 120px;
    height: 80px;*/
    /*position: relative;*/
    color: #fff;
    background-color: var(--primary-pink-color);
    border-radius: 30px;
}

a.btn-contact::before {
    content: "";
    width: 23px;
    height: 18px;
    background: url(../img/icon-envelope.png);
    background-repeat: no-repeat;
    display: inline-block;
    margin-right: 5px;
    vertical-align: -2px;
    /*position: absolute;
    top: 25px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);*/
}

a.btn-large-contact {
    padding: 10px 28px;
    border-radius: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 280px;
    font-size: 1.8rem;
    font-weight: bold;
}

a.btn-large-contact::before {
    content: "";
    width: 23px;
    height: 18px;
    background: url(../img/icon-envelope.png);
    background-repeat: no-repeat;
    display: inline-block;
    margin-right: 5px;
}



a.btn--orange {
    color: #fff;
    background-color: #ea5413;
    }

a.btn--pink {
    color: #fff;
    background-color: #ff83b2;
}


.header-telno{
    font-size: 2.4rem;
    font-weight: 600;
    color: var(--primary-pink-color);
    margin-right: 20px;

    /*text-shadow:1px 1px 0 #ff83b2, -1px -1px 0 #ff83b2,
                -1px 1px 0 #ff83b2, 1px -1px 0 #ff83b2,
                0px 1px 0 #ff83b2,  0 -1px 0 #ff83b2,
                -1px 0 0 #ff83b2, 1px 0 0 #ff83b2;*/
}

.header-telno::before{
    display: inline-block;
    content: "";
    width: 20px;
    height: 22px;
    background-image: url(../img/icon-tel.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: -2px;
    margin-right: 5px;
}

@media screen and (max-width: 1200px) {


    .header-contact{
        /* margin-left: 5%;*/
         width: 100%;
         justify-content: space-around;
         margin: 10px 0;
     }

     

     a.btn-contact {
        max-width: 180px;
        padding: 5px 5px 5px 7px;
        font-size: 1.6rem;
        width: 50%;
     }

     a.btn-contact::before {
        width: 14px;
        height: 11px;
        background-size: contain;
    }
}


@media screen and (max-width: 768px) {

    .header{
        padding-top: 5px;
        height: 90px;
        /*position: static;*/
        z-index: 3;
    }

    /*.header-logo-wrapper{
        margin-top: 0;
    }*/


    a.btn-large-contact {
        width: 225px;
        padding: 5px;
        margin: 0 auto;
    }
    

    .header h1 img{
        width: 170px;
        height: auto;
    }

    .header-section-wrapper{
        justify-content: flex-start;
    }

}



.recruit-footer{
    background: var(--primay-water-blue-color);
    padding:100px 0 40px;
    z-index:1;
}


.recruit-footer-logo-banner-wrapper{
    width: 100%;
    justify-content: space-between;
    margin-bottom: 100px;
}

.footer-logo-recruit{
    align-items: flex-end;
}

.footer-logo-recruit > p{
    font-size: 2.4rem;
    margin-left: 20px;
    line-height: 1.4;
}

.footer-banner-recruit-item:first-of-type{
    margin-right: 30px;
}

.footer-banner-recruit-item > a{
    display: block;
}


.footer-link-wrap{
    margin-right: 0;
    margin-left: auto;
}

.footer-link-item{
    margin-right: 60px;
}

.footer-link-item:last-of-type{
    margin-right: 0;
}

.footer-bold-link li,
.footer-arrow-link li{
    line-height: 2;
}

.footer-bold-link li a{
    font-weight: 600;
}

.footer-arrow-link li a::before{
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    background-image: url(../img/spnavi-arrow.png);
    background-size: contain;
    /* vertical-align: middle; */
    margin-right: 5px;
    background-repeat: no-repeat;
}



/*.footer-list{
    display: flex;
    margin-bottom: 25px;
    position: relative;
}

.footer-list::before{
    width: 23px;
    height: 35px;
    background: url(../img/icon-company-logo.png);
    background-repeat: no-repeat;
    display: inline-block;
    position: absolute;
    top: 25px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
}

.footer-list li{
    margin-right: 25px;
}

.footer-list li a{
    font-size: 1.4rem;
}*/

.copy{
    display: flex;
    justify-content: center;
}

.copy small{
    font-size: 1.2rem;
}

.pagetop {
    display: none;
    position: fixed;
    bottom: 10px;
    right: 30px;
    z-index: 999;
    opacity: .8;
}

@media screen and (max-width: 1000px) {
    
    .recruit-footer{
        padding: 40px 0;
    }

    .recruit-footer > .wrapper > .flex{
        width: 100%;
        margin-bottom: 40px;
    }

    .footer-logo-recruit{
        width: 80%;
        max-width: 300px;
        margin: 0 auto 30px;
    }
    
    .footer-logo{
        width: 60%;
        /*max-width: 282px;
        margin: 20px auto;*/
    }

    .footer-logo-recruit > p{
        width: 27%;
        margin-left: 3%;
        font-size: 1.4rem;
        text-align: right;
    }

    .footer-banner-recruit{
        column-gap: 6%;
        justify-content: center;
        width: 100%;
        max-width: 500px;
        margin: 0 auto;
    }
    
    .footer-banner-recruit-item{
        width: 47%;
    }

    .footer-banner-recruit-item:first-of-type{
        margin-right:0;
    }
    
    .footer-banner-recruit-item img{
        width: 100%;
    }
    
    .footer-logo img{
        width: 100%;
        height: auto;
    }

    .footer-address-tel{
        width: 330px;
        max-width: 100%;
        margin: 10px auto;
    }
}

@media screen and (max-width: 768px) {

    
    
    .pagetop {
        right: 20px;
    }

    .pagetop img{
        width: 55px;
        height: 55px;
    }

}

.textbox {
    position: fixed;
    top: 100px;
    right: 0%;
}
.vertical {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    background: #fff;
    padding: 15px 10px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.vertical__yellow{
    border-top: 5px solid #ffda04;
    border-left: 5px solid #ffda04;
    border-bottom: 5px solid #ffda04;

}

.vertical__orange{
    border-top: 5px solid #ea5413;
    border-left: 5px solid #ea5413;
    border-bottom: 5px solid #ea5413;

}

.vertical__green{
    border-top: 5px solid #54b65b;
    border-left: 5px solid #54b65b;
    border-bottom: 5px solid #54b65b;

}

.vertical__part {
    text-orientation: upright;
}

.vertical_icon{
    width: 20px;
    margin-bottom: 10px;
}



/*top-mainvisual*/

.top-mainvisual{
    background: url(../img/recruit_mainvisual.jpg);
    background-size: cover;
    background-position: top center;
}




#main-wrap {
    position: relative;
    height: 60vh;
    width: 100%;
    z-index: 2;
}

#main-wrap .main__inner {
    position: static;
    width: 100%;
    height: auto;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0;
    z-index: 2;
}

#main-wrap .main__title {
    position: absolute;
    top: 35%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #fff;
    font-weight: bold;
    line-height: 1;
    width: 50%;
}

@media screen and (max-width: 769px) {

    #main-wrap .main__title {
        top:30%;
        width: 90%;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        text-align: right;
        max-width: 330px;
    }
}

#main-wrap .main__title .title_en {
    font-size: 8.0vw;
    margin-bottom: 0vw;
    color: var(--primary-blue-color);
    /*font-family: 'Noto Serif JP', serif;*/
	font-weight: 600;
}


#main-wrap .main__title .title_ja {
    font-size: 3.45vw;
    color: var(--primary-blue2-color);
    letter-spacing: -1px;
}

@media screen and (min-width: 769px) {
    #main-wrap {
        margin: 0;
        -webkit-transform: none;
        transform: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        overflow: hidden;
        z-index: 1;
    }
}

@media screen and (min-width: 769px) {
    #main-wrap .main__inner {
        height: 100vh;
        position: relative;
    }
}

@media screen and (min-width: 769px) {
    #main-wrap .main__title {
        top: calc(90% - 60px);
        right:0;
        top: 50%;
    }
}

@media screen and (min-width: 769px) {
    #main-wrap .main__title .title_en {
        font-size: 7.7rem;
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 769px) {
    #main-wrap .main__title .title_ja {
        font-size: 2.2rem;
    }
}




audio, canvas, iframe, img, svg, video {
    vertical-align: middle;
}



.recruit__top_section01 {
    position: relative;
    padding-top: 120px;
}

.bk-global {
    display: block;
    margin-right: 35vw;
    padding: 60px 0;
}

.bk-global {
    background-image: url(../img/recruit_sec_message_bk.jpg);
    background-size: cover;
    background-position: center;
}

.bk-global-inner{
    width: 450px;
    width: 35vw;
}





.recruit__top_section01-text-item{
    margin-bottom: 20px;
}



.recruit__top_section01-text-item__title{
    border-left: 3px solid #fff;
    padding: 0 0 0 10px;
    margin-bottom: 10px;
}

.recruit__top_section01-text-item__title > h5{
    font-weight: 600;
    color: #fff;
    font-size: 1.6rem;
}

.recruit__top_section01-text-item__text{
    color: #fff;
    font-size: 1.6rem;
}

.btn--white{
    width: 220px;
    height: 70px;
    display: block;
    background: #fff;
    line-height: 68px;
    text-align: center;
    font-weight: 600;
    font-size: 1.8rem;
}

.recruit__top_section02 {
    position: relative;
    padding-top: 0px;
}

.recruit__top_section02 .recruit__top_section01-text-item > p,
.recruit__top_section04-item-text > p{
    line-height: 2.25;
}

.bk-recruit__top_section02{
    display: block;
    margin-left: 44vw;
    margin-right: 0;
    padding: 100px 0;
}

.bk-recruit__top_section02 {
    background-image: url(../img/recruit_sec_business_bk.jpg);
    background-size: cover;
    background-position: center;
}

.bk-recruit__top_section02-inner{
    margin-left: 10vw;
}

.item--l-img_recruit__top_section02{
    position: absolute;
    top: 60px;
    left: 10vw;
    padding-bottom: 10%;
    overflow: hidden;
    width: 40vw;
}

.recruit__top_section03 {
    position: relative;
    padding-top: 0;
}

.bk-recruit__top_section03 {
	margin-right: 0;
    margin-left: 10vw;
    display: block;
    padding: 55px 0 70px 90px;
    height: 750px;
}

.bk-recruit__top_section03 {
	background: var(--primay-bk-gray-color);
}

.bk-recruit__top_section03-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
}
     
.recruit__top_section03-button{
    margin-top: auto;
    margin-bottom: 0;
}

.item--l-img_recruit__top_section03{
    width: 90vw;
    position: absolute;
    top: 200px;
    overflow: hidden;
}

.btn--skelton{
	width:220px;
	height: 70px;
    display: block;
    line-height: 68px;
    text-align: center;
    font-weight: 600;
    font-size: 1.8rem;
    border: 1px solid #000;
}

.btn--skelton:hover{
    background: #fff;
}

.recruit__top_section04{
    padding: 0 0 60px;
}

.recruit__top_section04-item-text{
    width: 52.7%;
    padding-right: 7.3%;
}

.recruit__top_section04-item-img{
    width: 47.3%;
    padding-right: 4.5%;
}


@media screen and (max-width: 768px) {

    .recruit__top_section04-item-text {
        width: 100%;
        padding-right: 0;
    }

    .recruit__top_section04-item-img{

        width: 100%;
        padding-right: 0;
        max-width: 330px;
        margin: 20px auto;
    }

    .recruit__top_section02 .recruit__top_section01-text-item > p,
    .recruit__top_section04-item-text > p{
        font-size: 1.4rem;
line-height: 1.6;
    }

}



/*.recruit__top_section04-items{
    column-gap: 80px;
}

.recruit__top_section04-item{
    width: calc(50% - 80px/2);
    margin-bottom: 70px;
}

.recruit__top_section04-item-img{
    width:  27.4%;
    padding-right: 5%;
}

.recruit__top_section04-item-img img{
    width: 100%;
}

.recruit__top_section04-item-txt{
	width: 72.6%;
}*/

.item--l-txt_cross_kusabi {
    display: block;
    margin-right: 35vw;
    padding: 120px 0 90px;
}

.bk-global-inner {
    margin-left: 10vw;
    margin-right: 10vw;
}

.item--r-img_president {
    width: 640px;
    position: absolute;
    top: 250px;
    right: 10vw;
    padding-bottom: 10%;
    overflow: hidden;
    width: 40vw;
}

@media screen and (max-width: 768px) {

    .recruit__top_section01 {
        padding-top: 50px;
    }

    .bk-global{
        margin-right: 10vw;
        padding: 40px 0 100px;
    }

    .bk-global-inner{
        width: 88%;
        margin-left: 20px;
        margin-right: 40px;
    }

    .item--r-img_president {
        right: 0;
        width: 80vw;
        top: auto;
        bottom: -195px;
        /*bottom: -60vw;*/
        max-width: 300px;
        padding-bottom: 0;
    }

    .recruit__top_section01.mb150{
        margin-bottom: 280px;
    }

    .recruit__top_section01-text-item__title > h5 {
        font-size: 1.4rem;
    }
    
    .recruit__top_section01-text-item__text {
        font-size: 1.4rem;
    }

    .bk-recruit__top_section02 {
        margin-left: 20px;
        padding: 40px 0 100px;
    }
    
    .bk-recruit__top_section02-inner {
        margin-left: 30px;
        margin-right: 20px;
    }

    .item--l-img_recruit__top_section02 {
        top: auto;
        left: 50%;
        width: 90%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        bottom: -290px;
        max-width: 330px;
    }

    .recruit__top_section02.mb250{
        margin-bottom: 350px;
    }


    .bk-recruit__top_section03{
        margin-left: 0;
        padding: 50px 20px;
        height: 70vw;
    }

    .bk-recruit__top_section03-inner > h4{
        width: 230px;
    }

    .item--l-img_recruit__top_section03 {
        top: 150px;
    }

    .recruit__top_section04-item {
        width: 100%;
        margin-bottom: 40px;
    }

    .recruit__top_section04-item:last-of-type {
        margin-bottom: 0;
    }

}


@media screen and (max-width: 655px) {

    .bk-recruit__top_section03{
        margin-left: 0;
        padding: 50px 20px;
        height: 400px;
    }

    .item--l-img_recruit__top_section03 {
        max-width: 400px;
    }
}

.recruit__top_section05{
    padding: 100px 0 90px;
    background: url(../img/recruit-data_bk.png);
    background-position: top center;
    background-size: 100% 500px; 
    width: 100%;
    min-height: 500px; 
    background-repeat: no-repeat;
    background-attachment: scroll;
}

.recruit__top_section05-items-wrapper{
    column-gap: 10.5%;
}

.recruit__top_section05-item-icons{
    width: 44.5%;
}

.recruit__top_section05-item-text{
    width: 45%;
}


@media screen and (max-width: 768px) {


    .recruit__top_section05 {
        padding: 50px 0;
    }

    /*.recruit__top_section05-items-wrapper{
    flex-direction: column-reverse;
    }*/

    .recruit__top_section05-item-icons {
        width: 100%;
        margin-bottom: 40px;
    }

    .recruit__top_section05-item-text{
        width: 100%;
    }

    .recruit__top_section05-item-text > p{
        margin-bottom: 40px;
    }

}

.recruit__top_section05-icons-wrapper{
    column-gap: 3.6%;
    width: 100%;
}

.recruit__top_section05-icon-item{
    background-color: var(--primay-bk-gray-color);
    text-align: center;
    width: 22.27%;
    height: 245px;
    padding-top: 30px;
    border-radius: 10px;
    margin-bottom: 40px;
}

.data-item-title{
    font-size: 2.6rem;
    color: var(--primary-blue-color);
    font-weight: 600;
    margin-bottom: 10px;
}

.data-item-text{
    font-size: 2.6rem;
    font-weight: 600;
}

.data-item-text-small{
    font-size: 1.0rem;
}

.data-item-icon-img{
    min-height: 90px;
}

.data-item-icon-img img{
    max-height: 100%;
    width: auto;
}

@media screen and (max-width: 1200px) {

    .recruit__top_section05-icon-item {
        width: calc(50% - 3.6% / 2);
    }
}

@media screen and (max-width: 768px) {

    .recruit__top_section05-icon-item {
        padding-top: 10px;
        margin-bottom: 20px;
        height: 150px;
    }

    .data-item-title {
        font-size: 1.8rem;
    }

    .data-item-icon-img{
        min-height: 50px;
        height: 50px;
    }

    .data-item-text{
        font-size: 1.6rem;
    }
}


















.recruit__top_section06{
    padding-top: 40px;
}

.q-a-list-item{
    margin-bottom: 45px;
}

.q-a-list-item dt{
    color: var(--primary-blue-color);
    margin-bottom: 25px;
    padding-left: 60px;
    position: relative;
    padding-top: 5px;
}

.q-a-list-item dt::before{
    /*display: inline-block;
    vertical-align: middle;*/
    content: "";
    width: 41px;
    height: 41px;
    background: url(../img/recruit_icon_q.jpg);
    background-size: contain;
    margin-right: 20px;
    position: absolute;
    left: 0;
    top: 0;   
}

.q-a-list-item dd{
    padding-left: 60px;
    position: relative;
    padding-top: 5px;
}

.q-a-list-item dd::before{
    /*display: inline-block;
    vertical-align: middle;*/
    content: "";
    width: 41px;
    height: 41px;
    background: url(../img/recruit_icon_a.jpg);
    background-size: contain;
    margin-right: 20px;
    position: absolute;
    left: 0;
    top: 0;
}

.recruit__entry_button_section{
    margin: 150px 0;
}

.entry_button-item{
    width: 50%;
    height: 240px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.entry_button-item-newgraduate{
    background: var(--primary-blue2-color);
}

.entry_button-item-midcareer{
    background: var(--primary-blue-color);
}

.entry_button-item-inner{
    column-gap: 2vw;
    align-items: center;
}

.entry_button-item-icon{
    width: 100px;
}

.entry_button-item-icon img{
    width: 100%;
    height: auto;
}

.entry_button-item-text > p{
    color: #fff;
}


@media screen and (max-width: 900px) {

    .entry_button-item {
        width: 100%;
        height: 150px;
    }

    .entry_button-item-inner {
        column-gap: 3vw;
    }

    .entry_button-item-icon {
        width: 70px;
    }
    
    .entry_button-item-icon img {
        width: 100%;
        height: auto;
    }

    .recruit__entry_button_section{
        margin: 70px 0;
    }
}


.recruit__entry_form_section{
    padding: 70px 0;
    background: var(--primay-bk-gray-color);
}

.recruit__entry_form_tel-wrapper{
    padding: 40px;
    background: #fff;
    text-align: center;
}

.recruit__entry_form_tel{
    line-height: 1.2;
}

.recruit__entry_form_tel span.tel-link{
    line-height: 1.2;
    font-size:4.6rem;
    font-weight: 600;
}

.recruit__entry_form_icon-tel::before{
    display: inline-block;
    content:"";
    background: url(../img/icon-recruit-tel.png);
    width: 31px;
    height: 34px;
    background-repeat: no-repeat;
    margin-right: 15px;
}

.recruit__entry_form_icon-freedial::before{
    display: inline-block;
    content:"";
    background: url(../img/icon-recruit-freedial.png);
    width: 38px;
    height: 24px;
    background-repeat: no-repeat;
    margin-right: 10px;
    vertical-align: 5px;
}

@media screen and (max-width: 768px) {

    .recruit__entry_form_tel-wrapper{
        padding: 20px;
    }

    .recruit__entry_form_tel span.tel-link {
        font-size: 2.8rem;
    }

    .recruit__entry_form_icon-tel::before {
        background-size: contain;
        background-repeat: no-repeat;
        width: 20px;
        height: 20px;
        margin-right: 10px;
    }

    .recruit__entry_form_icon-freedial::before {
        background-size: contain;
        background-repeat: no-repeat;
        width: 23px;
        height: 18px;
        vertical-align: -1px;
        margin-right: 8px;
    }
}

.recruit__map_section iframe{
    width: 100%;
}

@media screen and (max-width: 768px) {

    .recruit__map_section iframe{
        height: 250px;
    }

}



/*recruit 下層共通*/


.recruit__mainvisual{
    position: relative;
    padding-top: 70px;
    height: 510px;
    z-index: 1;
}

.recruit__mainvisual::before{
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width:57%;
    height: 510px; 
}

.recruit__mainvisual .wrapper{
    position:relative;
    z-index:2;
    /*20240726追加*/
    max-width: inherit;
}

.flex-column-direct{
    flex-direction:column;
    height: 430px;
}



.recruit__page-title{
    font-size: 6.0rem;
    color: var(--primary-blue-color);
    font-weight: 600;
    line-height: 1.2;
}

.recruit__page-subtitle{
    font-size: 3.0rem;
}

.recruit__page-title_under-text{
    width:350px;
}

@media screen and (max-width: 768px) {

    .recruit__mainvisual{
        padding-top: 0;
        padding-bottom: 280px;
        height: auto;
    }

    .recruit__mainvisual::before{
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        width: 90%;
        height: 250px;
        top: 180px;
        left: 50%;
    }

    .flex-column-direct{
        height: auto;
    }

    .recruit__page-title{
        font-size: 3.6rem;
        margin-bottom: 10px;
    }

    .recruit__page-subtitle{
        font-size: 1.8rem;
        margin-bottom: 30px;
    }

    .recruit__page-title_under-text{
        width: 100%;
    }
    
}

/*404*/



.recruit__mainvisual-404::before{
    background: url(../img/recruit-interview-img-sky.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

@media screen and (max-width: 1100px) {

    .recruit__mainvisual-404::before {
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        width: 90%;
        height: 250px;
        top: 250px;
        left: 50%;
    }
}


@media screen and (max-width: 768px) {

    .recruit__mainvisual-404{
        padding-top: 0px;
    }
    .recruit__mainvisual-404::before {
        top: 160px;
    } 
}

@media screen and (max-width: 500px) {
    .recruit__mainvisual-404::before {
        top: 100px;
    } 
}



/*recruit_message*/

.recruit__mainvisual-message::before{
    background: url(../img/recruit-message-img-president.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}



.recruit__mainvisual-president-name{
    margin-top: auto;
    margin-bottom: 0;
}

.recruit__message-section01{
    display: block;
    margin-right: 30vw;
    padding: 60px 0;
    background-image: url(../img/recruit__message-section01_bk.jpg);
    background-size: cover;
    background-position: top center;
}

.recruit__message-section01-content{
    margin-left: 15%;
    margin-right: 5%;
}

@media screen and (max-width: 768px) {

    .recruit__message-section01{
        margin-right:0;
    }

    .recruit__message-section01-content{
        margin-left: 5%;
    }
}

.marker-underline-white {
    position: relative;
    display: inline-block;
}

.marker-underline-white::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -10%;
    width: 100%;
    height: 0.6em;
    background-color: rgba(255, 255, 255, 0.2);
}

@media screen and (max-width: 768px) {

    .marker-underline-white::after {
        content: none;
    }
}

.recruit__message-section02{
    padding: 75px 0 0;
}

.recruit__message-section02-item{
    width: 50%;
    padding: 60px;
}

@media screen and (max-width: 768px) {

    .recruit__message-section02-item{
        width: 100%;
        padding: 2%;
        margin-bottom: 30px;
    }

    .recruit__message-section02-item:last-of-type{
        margin-bottom: 0px;
    }
}

.marker-underline-blue{
    background: linear-gradient(transparent 70%, #aec8ea 0%);
    display: inline;
    padding: 0 2px;
}


/*recruit_business*/


.recruit__mainvisual-business::before{
    background: url(../img/recruit-business-img-sky.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}



.recruit__mainvisual-business{
    margin-bottom: 500px;
}

.recruit__mainvisual-business .flex-column-direct{
    flex-direction:column;
    height: auto;
}

@media screen and (max-width: 768px) {

    .recruit__mainvisual-business {
        padding-bottom: 0;
        margin-bottom: 70px;
    }
    .recruit__mainvisual-business::before{
        width: 90%;
        left: 55%; 
    }

    .recruit__mainvisual-business-threeicon{
        width: 100%;
        max-width: 400px;
        margin: 250px auto 0;
    }
}

.recruit__business-section01{
    position: relative;
    padding-top: 40px;
    height: 370px;
    margin-bottom: 70px;
}

.recruit__business-section01::before{
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 47%;
    height: 370px;
    background-image: url(../img/recruit-business_device-image.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.item-text-right-w500{
    margin-right:0;
    margin-left:auto;
    width:45.4%;

}

@media screen and (max-width: 768px) {

    .recruit__business-section01{
        height: 400px;
        padding-top: 0;
    }

    .recruit__business-section01::before {
        top: 230px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 90%;
    height: 180px;
    }

    .item-text-right-w500{
        width: 100%;
    }

}

@media screen and (max-width: 500px) {

    .recruit__business-section01{
        height: 470px;
    }

    .recruit__business-section01::before {
        top: 260px;
    }
}



.recruit__business-section02{
    position: relative;
    padding-top: 40px;
    height: 370px;
    margin-bottom: 70px;
}

.recruit__business-section02::before{
    position: absolute;
    top: 0;
    right: 0;
    content: "";
    width: 47%;
    height: 370px;
    background-image: url(../img/recruit-business_monozukuri-image.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.item-text-left-w500{
    margin-right:auto;
    margin-left:0;
    width:45.4%;

}

@media screen and (max-width: 768px) {

    .recruit__business-section02{
        height: 350px;
        padding-top: 0;
    }

    .recruit__business-section02::before {
        top: 190px;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        width: 90%;
        height: 180px;
    }

    .item-text-left-w500{
        width: 100%;
    }
}

@media screen and (max-width: 500px) {

    .recruit__business-section01{
        height: 420px;
    }

    .recruit__business-section02::before {
        top: 210px;
    }
}

.recruit__business-section03{
    position: relative;
    padding-top: 40px;
    height: 370px;
    margin-bottom: 70px;
}

.recruit__business-section03::before{
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 47%;
    height: 370px;
    background-image: url(../img/recruit-business_sb-image.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

@media screen and (max-width: 768px) {

    .recruit__business-section03{
        height: 400px;
        padding-top: 0;
    }

    .recruit__business-section03::before {
        top: 200px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 90%;
    height: 180px;
    }

    .item-text-right-w500{
        width: 100%;
    }

}

@media screen and (max-width: 500px) {

    .recruit__business-section03{
        height: 470px;
    }

    .recruit__business-section03::before {
        top: 230px;
    }
}


/*recruit_interview*/


.recruit__mainvisual-interview::before{
    background: url(../img/recruit-interview-img-sky.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.recruit__mainvisual-interview  .recruit__page-title_under-text {
    width: 400px;
}

@media screen and (max-width: 1100px) {

    .recruit__mainvisual-interview::before {
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        width: 90%;
        height: 250px;
        top: 250px;
        left: 50%;
    }

    .recruit__mainvisual-interview .flex-column-direct {
        height: auto;
    }

    .recruit__mainvisual-interview .recruit__page-title {
        font-size: 3.6rem;
        margin-bottom: 10px;
    }

    .recruit__mainvisual-interview .recruit__page-title_under-text {
        width: 100%;
    }

}

@media screen and (max-width: 768px) {
    .recruit__mainvisual-interview::before {
        top: 160px;
    } 
}


@media screen and (max-width: 500px) {
    .recruit__mainvisual-interview::before {
        top: 200px;
    } 
}


.recruit__interview-item-img{
    width: 39%;
}

.recruit__interview-item-img img{
    width: 100%;
    height: auto;
}

.recruit__interview-item-text{
    width: 61%;
    padding-top: 30px;
}

.recruit__interview-item-text-right{
    padding-left: 7%;
}



.recruit__interview-item-text-left{
    padding-right: 7%;
}

.recruit__interview-items-wrapper:nth-child(even) .recruit__interview-item-text-right{
    padding-right: 7%;
    padding-left: 0;
}



.occupation-category{
    width: auto;
    height: 36px;
    display: inline-block;
    padding: 0 10px;
    background: var(--primary-blue-color);
    color: #fff;
    text-align: center;
    line-height: 34px;
    margin-bottom: 30px;
}

.recruit__interview-item-text-title-wrapper{
    padding-bottom: 40px;
    border-bottom: 1px solid #c3c3c3;
}

.recruit__interview-item-text-name-wapper{
    padding-top: 40px;
}

.recruit__interview-items-right-img{
    flex-direction: row-reverse;
}

.recruit__interview-items-wrapper:nth-child(even){
    flex-direction: row-reverse;
}

.button-skelton-w225{
    width: 225px;
    max-width: 100%;
    border-radius: 50px;
    border: 1px solid #5b5b5b;
    background-color: #fff;
    padding: 10px;
    font-size: 1.8rem;
    text-align: center;
    display: block;
}

@media screen and (max-width: 768px) {

    .recruit__interview-item-img {
        width: 39%;
        width: 80%;
        margin: 0 auto 20px;
        max-width: 400px;
    }
    
    .recruit__interview-item-text-right{
        padding-left:0;
    }
    
    .recruit__interview-item-text {
        width: 100%;
    }

    .occupation-category {
        font-size: 1.2rem;
        width: auto;
        height: 30px;
        line-height: 28px;
        margin-bottom: 15px;
    }
    
    .recruit__interview-item-text-title-wrapper {
        padding-bottom: 20px;
    }
    
    .recruit__interview-item-text-name-wapper {
        padding-top: 20px;
    }

    .button-skelton-w225 {
        margin: 40px auto 20px;
    }
    
}


/*recruit_interview02*/

.recruit__interview-detail-pagetitle{
    padding-top: 70px;
    margin-bottom: 50px;
}

@media screen and (max-width: 768px) {

    .recruit__interview-detail-pagetitle{
        padding-top: 0;
    }

}

.recruit__interview-detail-contents{
    margin-bottom: 100px;
}


.recruit__interview-detail-contents-text{
    width:55.4%;

}

.recruit__interview-detail-contents-right-img .recruit__interview-detail-contents-text{
    padding-right: 4%;
}

.recruit__interview-detail-contents-img{
    width: 44.6%;
}


.recruit__interview-detail-contents-left-img .recruit__interview-detail-contents-text{
    padding-left: 4%;
}

.recruit__interview-detail-contents-left-img{
    flex-direction: row-reverse;
}


@media screen and (max-width: 768px) {

    .recruit__interview-detail-contents-text{
        width: 100%;
    }

    .recruit__interview-detail-contents-img{
        width: 90%;
        margin: 20px auto;
    }

    .recruit__interview-detail-contents{
        margin-bottom: 30px;
    }

    .recruit__interview-detail-contents-right-img .recruit__interview-detail-contents-text{
        padding-right: 0;
    }

    .recruit__interview-detail-contents-left-img .recruit__interview-detail-contents-text{
        padding-left: 0;
    }

}


.recruit__interview-link-section{
    padding: 70px 0;
    background: var(--primary-gray-color);
}

.recruit__interview-link-title{
    color: var(--primary-blue2-color);
    font-size: 3.0rem;
    font-weight: 600;
    margin-bottom: 20px;s
}

.recruit__interview-link-item{
    width: 33%;
}

.recruit__interview-link-item-img{
    width: 100%;
    margin: 20px;
}

.recruit__interview-link-item-img img{
    width: 100%;
    height: auto;
}

.recruit__interview-link-item-text{
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media screen and (max-width: 768px) {

    .recruit__interview-link-title{
        font-size: 1.8rem;
    }

    .recruit__interview-link-section{
        padding: 30px 0;
    }

    .recruit__interview-link-item{
        width: 50%;
        margin-bottom: 20px;
    }

    .recruit__interview-link-item-img{
        margin-bottom: 10px;
    }

    .recruit__interview-link-item-text{
        padding: 0 5px;
    }

    .recruit__interview-link-item-text .button-skelton-w225{
        margin:0 10px 10px;
        font-size: 1.2rem;
        width: 130px;
        height: 30px;
        padding: 4px;
    }
}


/*recruit_member*/

.recruit__mainvisual-member::before{
    background: url(../img/recruit-member-img-meeting.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.recruit__mainvisual-member {
    margin-bottom: 300px;
}

.recruit__mainvisual-member  .recruit__page-title_under-text {
    width: 380px;
}


.recruit__mainvisual-member .flex-column-direct {
    flex-direction: column;
    height: auto;
}

.recruit__mainvisual-member-fouricon{
    width: 410px;
}

@media screen and (max-width: 768px) {
    .recruit__mainvisual-member {
        padding-bottom: 0;
        margin-bottom: 70px;
    }

    .recruit__mainvisual-member::before {
        width: 90%;
        left: 55%;
    }

    .recruit__mainvisual-member  .recruit__page-title_under-text {
        width: 100%;
    }

    .recruit__mainvisual-member-fouricon {
        width: 80%;
        max-width: 400px;
        margin: 250px auto 0;
    }
}

.recruit__member-item{
    column-gap: 3.6%;
    margin-bottom: 50px;
}

.recruit__member-item-circle-wrapper{
    width: 15.4%;
}

.recruit__member-item-text{
    width: 81%;
}

.recruit__member-item-circle{
    border: 8px solid #b6d1f4;
    border-radius: 100%;
    box-sizing: border-box;
    /*width: 170px;
    height: 170px;*/
    display: flex;
    /*flex-direction: column;*/
    justify-content: center;
    align-items: center;
    width: 100%;
}

.recruit__member-item-circle:before{
    display: block;
    content: "";
    padding-top: 100%;
}

.recruit__member-item-text{
    padding-top: 20px;
}

.recruit__member-item-circle-text{
    color: var(--primary-blue-color);
    font-weight: 600;
    line-height: 1.2;
    font-size: clamp(1.6rem, 3.1vw, 3.6rem);
}


@media screen and (max-width: 768px) {

    .recruit__member-item{
        margin-bottom: 30px;
    }

    .recruit__member-item-circle-wrapper{
        width: 17%;
    }

    .recruit__member-item-text{
        width: 78%;
    }

    .recruit__member-item-text{
        padding-top: 0;
    }

    .recruit__member-item-circle{
        border: 2px solid #b6d1f4;
    }

}


/*recruit_newgraduate*/


.recruit__entry-section01{
    padding: 50px 0;
}

.recruit__mainvisual-youkou_newgraduate::before{
    background: url(../img/recruit-entry-img-newgraduate.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.recruit__mainvisual-youkou_intentry::before{
    background: url(../img/recruit-entry-img-intentry.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.recruit__mainvisual-youkou_newgraduate  .recruit__page-title_under-text {
    width: 400px;
}

@media screen and (max-width: 768px) {

    .recruit__mainvisual-youkou_newgraduate::before {
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        width: 90%;
        height: 250px;
        top: 80px;
        left: 55%;
    }

    .recruit__mainvisual-youkou_newgraduate .flex-column-direct {
        height: auto;
    }

    .recruit__mainvisual-youkou_newgraduate .recruit__page-title {
        font-size: 3.6rem;
        margin-bottom: 10px;
    }

    .recruit__mainvisual-youkou_newgraduate .recruit__page-title_under-text {
        width: 100%;
    }

}

.underline-list{
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid #c3c3c3;
    padding: 15px 0;
}

.entry-list > dt{
    width: 13.2%;
    font-weight: 600;
    line-height: 2;
}

.entry-list > dd{
    width: 86.8%;
    line-height: 2;
}



@media screen and (max-width: 768px) {

    .entry-list > dt{
        width: 100%;
    }
    
    .entry-list > dd{
        width: 100%;
    }
}

.blue-yellow-under-list{
    margin-bottom: 20px;
}

.blue-yellow-under-list dt,
.blue-yellow-under-list dd{
    width: 100%;
}

.blue-yellow-under-list dt{
    color: var(--primary-blue-color);
    font-weight: 600;
    background: linear-gradient(transparent 70%, #ffd200 0%);
    display: inline;
    padding: 0 2px;
    font-size: 1.8rem;
    line-height: 2;
}

.blue-yellow-under-list dd{
    font-size: 1.6rem;
    line-height: 2;
}


.entry-button-wrapper{
    margin-top: 100px;
}

.back-blue-text{
    background: var(--primary-blue-color);
    color: #fff;
    text-align: center;
    font-size: 1.8rem;
    display: inline-block;
    padding: 10px;
    line-height: 1;
}

@media screen and (max-width: 768px) {

    .entry-button-wrapper{
        margin-top: 20px;
    }
}












/*main
------------------------------------------*/

#Main {
    background-color: #fff;
    padding-top: 1px;
    z-index: 1;
    word-break: break-word;
}

#Main, #Footer {
    position: relative;
}

.top-page.pages #Main {
    margin-top: 150px;
}

@media screen and (min-width: 769px) {
    .top-page #Main {
        margin-top: 95vh;
    }

    .top-page.pages #Main {
        margin-top: 120px;
    }
    
}

/* 共通要素
------------------------------------------*/

a.btn{
    display: block;
    font-size: 1.8rem;
    width: 240px;
    height: 50px;
    line-height: 48px;
    border-radius: 50px;
    text-align: center;
}

.blue-arrow::before{
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    background-image: url(../img/spnavi-arrow.png);
    background-size: contain;
    /* vertical-align: middle; */
    margin-right: 5px;
    background-repeat: no-repeat;
}


/*toppage top-section
------------------------------------------*/

.top-section-title{
    color: var(--primary-blue-color);
    font-size: 5.4rem;
    font-weight: 600;
    line-height: 1.2;
}

.top-section-title.txtWhite{
    color: #fff;
    line-height: 1.1;
}

.top-section-title.txtBlue2{
    color: var(--primary-blue2-color);
}

.top-section-subtitle{
    font-size: 1.8rem;
    font-weight: 600;
}

.top-section-01__company{
    padding: 120px 0;
}

.two-column_img-left{
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.top-section-01__img{
    width: 590px;
    width: 53%;
}

.top-section-01__img img{
    width: 100%;
    height: auto;
}

.top-section-01__text{
    /*width: calc(100% - 590px);
    padding-left: 70px;*/
    width: 46%;
    padding-left: 3.5vw;
}

.lh25{
    line-height: 2.5;
}

a.btn-skelton{
    border: 1px solid #5b5b5b;
    background: #fff;
}



@media screen and (max-width: 768px) {

    .top-section-01__company {
        padding: 40px 0;
    }
    
    .top-section-01__text {
        width: 100%;
        padding-left: 0;
    }
    
    .top-section-title {
        font-size: 3.6rem;
        line-height: 1.4;
    }
    
    .top-section-subtitle {
        font-size: 1.4rem;
    }
    
    
    a.btn-skelton {
        width: 200px;
        height: 40px;
        line-height: 38px;
        font-size: 1.6rem;
        margin: 0 auto 30px;
    }
}


.top-section-02__business{
    padding: 60px 0;
    background-color: var(--primay-bk-gray-color);
}

.top-section-02__business .wrapper{
    text-align: center;
}

.top-section-02__business .flex.three-columns{
    justify-content: space-between;
    column-gap: 60px;
}

.top-section-02__business .flex.three-columns .item{
    width: calc(33.3333% - 120px/3);
}

.top-section-02__business .flex.three-columns .item img{
    width: 100%;
    height: auto;
}

@media screen and (max-width: 768px) {

    .top-section-02__business{
        padding: 40px 0 20px;
    }

    .top-section-02__business .flex.three-columns{
        justify-content: center;
    }
    .top-section-02__business .flex.three-columns .item{
        width: 70%;
        max-width: 300px;
        margin-bottom: 30px;
    }
}


.top-section-03__information{
    padding: 90px 0 100px;
}

.top-section-03__information .wrapper{
    text-align: center;
}

.top-section-03__information .flex.three-columns{
    justify-content: space-between;
    column-gap: 40px;
}

.top-section-03__information .flex.three-columns .item{
    display: block;
    width: calc(33.3333% - 80px/3);
    border: 1px solid var(--primay-line-gray-color);
    margin-bottom: 50px;
}

.top-section-03__information .flex.three-columns .item .item-img img{
    width: 100%;
    height: auto;
}

.item-text{
    width: 100%;
    padding: 20px;
    background: #fff;
}

.item-text > p{
    text-align: left;
    font-size: 1.4rem;
}

.info-date-category-wrap{
    align-items: center;
    margin-bottom: 10px;
}

.info-date{
    color: var(--primary-blue2-color);
    font-size: 1.6rem;
    font-weight: 600; 
    margin-right: 30px;
    line-height: 1;
}

.item-text p.info-category{
    width: 80px;
    height: 20px;
    line-height: 18px;
    text-align: center;
    color: #fff;
    font-size: 1.2rem;
}

.cat_vender{
    background-color: var(--primary-pink-color);
}

.cat_press{
    background-color: var(--primary-blue2-color);
}

@media screen and (max-width: 1020px) {

    .top-section-03__information .flex.three-columns .item{
        width: calc(50% - 40px/2);
    }
}

@media screen and (max-width: 768px) {

    .top-section-03__information{
        padding: 40px 0;
    }

    .top-section-03__information .flex.three-columns .item {
        width: 100%;
        margin-bottom: 40px;
    }

}

.top-section-04__recruit{
    background-image: url(../img/top-section-04__recruit-bk.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 60px 0 50px;
}

.top-section-04__recruit .top-section-title,
.top-section-04__recruit p{
    color: #fff;
}

.top-section-04__recruit_link{
    padding: 60px 0 100px;
}

.wrapper875{
    width: 90%;
    max-width: 875px;
    margin: 0 auto;
}

.top-section-04__recruit_link-item-wrap{
    column-gap: 110px;
}

.top-section-04__recruit_link-item{
    width: calc(50% - 110px/2);
}

.top-section-04__recruit_link-item div img{
    width: 100%;
    height: auto;
}

@media screen and (max-width: 768px) {

    .top-section-04__recruit_link {
        padding: 30px 0;
    }
    
    .top-section-04__recruit_link-item {
        width: 100%;
        margin-bottom: 30px;
    }
}



/*-------------/footer__contact-------------*/


.footer__contact__contact{
    padding: 60px 0;
    background-color: var(--primay-bk-gray-color);
    text-align: center;
}

.footer__contact__tel-contact-wrap > div {
    width: 50%;
}

.footer__contact__tel{
    padding-right: 30px;
}

.footer__contact__tel .black-telno .tel-link{
    font-size: 4.6rem;
    font-weight: 600;
    line-height: 1.2;
}

.black-telno::before{
    display: inline-block;
    content: "";
    width: 31px;
    height: 34px;
    background-image: url(../img/icon-tel-black.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: -2px;
    margin-right: 5px;
}

.footer__contact__contact-button{
    text-align: center;
    display: flex;
}

.footer__contact__contact-button .btn-contact{
    width: 250px;
    height: 50px;
    max-width: inherit;
    margin: auto auto 0;
    font-size: 2.2rem;
}


.footer__contact__contact-button a.btn-contact::before{
    content: "";
    width: 31px;
    height: 24px;
    background: url(../img/icon-envelope-w31.png);
    background-repeat: no-repeat;
    display: inline-block;
    margin-right: 5px;
    vertical-align: -2px;
    background-size: contain;
}


@media screen and (max-width: 1020px) {

    .footer__contact__tel > div > p.txtcenter{
        font-size: 1.2rem;
    }

    .black-telno::before{
        width: 16px;
        height: 17px;
    }

    .footer__contact__tel .black-telno .tel-link{
        font-size: 3.45vw;
    }

    .footer__contact__tel .black-telno .tel-link > a{
        font-weight: 600;
    }

    .footer__contact__contact-button .btn-contact {
        font-size: 1.8rem;
        height: auto;
    }

    .footer__contact__contact-button a.btn-contact::before {
        width: 23px;
        height: 18px;
    }

    .footer__contact__contact{
        padding: 30px 0;
    }
}

@media screen and (max-width: 500px) {
    .footer__contact__tel .black-telno .tel-link{
        font-size: 1.8rem;
    }
}    


/*-------------/footer__contact--------------*/






/*

.section-top-introduction{
    padding: 40px 0 70px;
}

@media screen and (max-width: 768px) {
    .section-top-introduction{
        padding: 20px 0 35px;
    }

    .section-top-introduction h3 img{
        width: 120px;
        height: auto;
    }
}

.illust-side{
    position: relative;
}



@media screen and (max-width: 768px) {
    .illust-side p{
        font-size: 1.4rem;
    }

    .illust-side:before {
        width: 40px;
        height: 35px;
        margin-left: -155px;
        background-repeat: no-repeat;
    }

    .illust-side:after {
        background-repeat: no-repeat;
        width: 40px;
        height: 45px;
        margin-left: 115px;
    }
}

.category-circle-link{
    display: flex;
    justify-content: space-around;
}

.category-circle-link__item{
    background: #fff;
    width: 250px;
    height: 250px;
    border-radius: 100%;
}

.category-circle-link__item.circle-w200{
    width: 200px;
    height: 200px;
}

.category-circle-link__item a{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

@media screen and (max-width: 768px) {

    .category-circle-link{
        flex-wrap: wrap;
    }
    .category-circle-link__item,
    .category-circle-link__item.circle-w200 {
        background: #fff;
        width: 105px;
        height: 105px;
        border-radius: 100%;
    }
}

.item__yellow{
    border: 10px solid #ffda04;
}

.item__orange{
    border: 10px solid #ea5413;
}

.item__green{
    border: 10px solid #54b65b;
}

@media screen and (max-width: 768px) {

    .item__yellow{
        border: 5px solid #ffda04;
    }
    
    .item__orange{
        border: 5px solid #ea5413;
    }
    
    .item__green{
        border: 5px solid #54b65b;
    }

}

.section-top__new-property-listings{
    padding: 50px 0;
}

@media screen and (max-width: 768px) {
    .section-top__new-property-listings{
        padding: 30px 0;
    }
}

.property-listings-wrapper{
    display: flex;
    flex-wrap: wrap;
}

.property-listings-item{
    width: calc(33.3333% - 40px/3);
    margin-right: 20px;
    margin-bottom: 40px;
}

.property-listings-item:nth-child(3n){
    margin-right:0;

}

@media screen and (max-width: 768px) {
    .property-listings-item{
        width: calc(50% - 20px/2);
        margin-bottom: 20px;
    }

    .property-listings-item:nth-child(3n){
        margin-right: 20px;
    }

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


.property-listings-item a{
    width: 100%;
    height: 100%;
}

.property-listings-item a > div{
    margin-bottom: 20px;
    position: relative;
}

.property-listings_category{
    display: inline-block;
    padding: 2px;
    background: #fff;
    border-radius: 5px;
    border: 2px solid #ea5413;
    color: #ea5413;
    font-weight: 500;
    font-size: 1.4rem;
    margin-bottom: 8px;
}

.property-listings-item a > div > img{
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

.property-listings_title{
    font-size: 1.8rem;
    color: #ea5413;
    font-weight: 600;
    margin-bottom: 5px;
}

.property-listings_address{
    font-size: 1.4rem;
    color: #000;
    font-weight: 600;
    padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px solid #000;
}



.property-listings_price{
    font-size: 1.4rem;
    color: #000;
    font-weight: 600;
}

.property-price-number{
    font-size: 2.2rem;
    color: #ea5413;
    font-weight: 600;
    margin-left: 10px;
}

.property-price-unit{
    font-size: 1.8rem;
    color: #ea5413;
    font-weight: 600;
}

@media screen and (max-width: 768px) {
    .property-listings-item a > div {
        margin-bottom: 10px;
    }
    
    .property-listings_category {
        font-size: 10px;
        margin-bottom: 8px;
    }
    
    .property-listings_title {
        font-size: 1.4rem;
    }
    
    .property-listings_address {
        font-size: 1.0rem;
        padding-bottom: 5px;
        margin-bottom: 5px;
    }
    
    .property-listings_address:before {
        width: 8px;
        height: 10px;
        vertical-align: inherit;
        margin-right: 2px;
    }
    
    .property-listings_price {
        font-size: 1.0rem;
    }
    
    .property-price-number {
        font-size: 1.6rem;
    }
    
    .property-price-unit {
        font-size: 1.2rem;
    }

}


.button-gray-arrow{
    background: #f2f2f2;
    padding: 5px;
    
    border-radius: 40px;
    font-size: 1.6rem;
    width: 270px;
    text-align: center;
}

.button-gray-arrow:before{
    content: '';
    display: inline-block;
    width: 19px;
    height: 8px;
    background-image: url(../img/icon-arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 10px;
    vertical-align: middle;
    padding-bottom: 12px;
}

@media screen and (max-width: 768px) {
    .button-gray-arrow{
        width: auto;
        padding: 5px 20px;
    }

}

.section-top-news{
    padding: 60px 0;
}

.top-news_title-wrap{
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.top-news_title-wrap a{
    margin-right: 0;
    margin-left: auto;
}

@media screen and (max-width: 768px) {

    .section-top-news{
        padding: 30px 0;
    }

    .top-news_title-wrap a{
        font-size: 1.2rem;
    }
}


.news-list dt{
    width: 250px;
}

.news-list dd{
    width: calc(100% - 250px);
    margin-top: -2px;
}


.news-list__category {
    font-size: 1.6rem;
    color: #fff;
    margin-left: 35px;
    padding: 5px 10px;
    border-radius: 5px;
    vertical-align: middle;
}

.news-list__category-blue {
    background: #0864b2;  
}

.news-list__category-pink{
    background: #f897c0;
}

.news-list__category-yellow {
    background: #ffc704;  
}

.news-list__category-green {
    background: #54b65b;
}

.news-list__category-orange {
    background: #ea5413;
}


.news-list dd a{
    font-size: 1.6rem;
}

@media screen and (max-width: 768px) {

   
    .news-list dt{
        width: 100%;
        display: flex;
        align-items: center;
        margin-bottom: 10px;
    }

    .news-list dd{
        width: 100%;
    }

    .news-list__time {
        font-size: 1.2rem;
    }

    .news-list__category{
        font-size: 1.2rem;
        margin-left: 10px;
        padding: 0 7px;
    }

    .news-list dd a{
        font-size: 1.6rem;
    }

}

.section-banner-area{
    background: #ebebeb;
    height: 130px;
}

.section-banner-area-inner{
    height: 130px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.section-banner-item{
    width: auto;
    height: auto;

}



.section-banner-item img{
    max-width: 100%;
    max-height: 110px;
    height: auto;
    vertical-align: bottom;
}

@media screen and (max-width: 768px) {

    .section-banner-area{
        height: auto;
        padding-top: 20px;
    }

    .section-banner-area-inner{
        height: auto;
    }
    .section-banner-item{
        width: calc(50% - 15px/2);
        margin-bottom: 15px;
        text-align: center;
    }

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

    .section-banner-item:nth-child(5n){
        margin-right: 15px;
    }
}

.section-company-name-address{
    background:#fceea6;
    height: 100px;
}

.section-company-name-address__inner{
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.section-company-name-address__txt{
    font-size: 1.4rem;
}

.section-company-name-address__txt span{
    font-size: 1.8rem;
    font-weight: 500;
    margin-right: 40px;
}

@media screen and (max-width: 768px) {
    .section-company-name-address__txt{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        text-align: center;
        font-size: 1.0rem;
    }

    .section-company-name-address__txt span{
        margin: 0 auto;
        font-size: 1.2rem;
    }

}

/*
.section-top-products{
    padding: 60px 0;
    background: #fff;
}

@media screen and (max-width: 768px) {

    .section-top-products{
        padding: 30px 0;
    }
}*/


/* zoom部分
.section-top-products-link{
    position: relative;
}

.section-top-products-link-section1{
    height: 300px;
}

.zoom{
    width: 100%;
    height: 300px;
    overflow: hidden;
}

.zoom-1 img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    animation: animationZoom1 5s ease-in-out forwards;
}

@media screen and (max-width: 768px) {
    .zoom,
    .zoom-1 img{
        height: 220px;
    }
}

@keyframes animationZoom1 {
    100% { transform:scale(1.1)} 
}

*/


/*
.section-top-products-link-section2{
    position: absolute;
    top:40px;
    left: 50%;
    margin-left: -500px;
    width:1000px;
    height: 230px;
}



.top-products-link-item{
    display: block;
    width: 670px;
    height: 230px;
    background: rgba(255,255,255,.8);
    padding: 20px 30px;
    border-radius: 5px;
}

@media screen and (max-width: 768px) {

    .section-top-products-link-section2{
        top:20px;
        left: 50%;
        margin-left:-45%;
        width: 90%;
        height: auto;
    }

    .top-products-link-item{
        width: 100%;
        height: auto;
        padding: 15px;
    }
}

.top-products-link-item-wrap{
    display: flex;
}

.top-products-link-item_left {
    width: calc(100% - 220px);
}

@media screen and (max-width: 768px) {
    .top-products-link-item_left {
        width: 100%;
    }
}

.top-products-link-item_left .product-introduction{
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1;
    display: flex;
    align-items: center;
}

@media screen and (max-width: 768px) {

    .top-products-link-item_left .product-introduction img{
        width: 50px;
        height: auto;
        margin-left: 10px;
    }
}

.top-products-link-item_left .product-name{
    font-size: 4.0rem;
    font-weight: 700;
    line-height: 1.3;
}

.top-products-link-item_right{
    width: 220px;
}

@media screen and (max-width: 768px) {
    .top-products-link-item_right{
        display: none;
    }
    .top-products-link-item_left .product-name{
        font-size: 2.8rem;
    }
}

.top-products-link-item_right img{
    width: 100%;
    height: auto;
}

.product-introduction img{
    width: 98px;
    height: 26px;
    margin-left:20px;
    vertical-align: middle;
}
*/
.section-map iframe{
    width: 100% !important;
    height: 300px !important;
    vertical-align:middle;
    /*filter:grayscale(100%);
    -webkit-filter:grayscale(100%);*/
}

@media screen and (max-width: 768px) {

    .section-map iframe{
        height: 250px !important;
    }

}



/*---------------main-contents----------------*/

.main-contents{
    padding-bottom: 140px;
}

@media screen and (max-width: 768px) {
    .main-contents{
        padding-bottom: 70px;
    }
}

/*---------------breadcrumb----------------*/

.breadcrumb {
    height: 70px;
    background: #fff;
    display: flex;
}

.breadcrumb .wrapper{
    margin: auto auto 0;
}

.breadcrumb span, .breadcrumb span a {
    font-size: 1.4rem;
    line-height: 30px;
}

.breadcrumb span a:after {
    content: '／';
    padding: 0 5px;
}

.breadcrumb span > a > span {
    /*text-decoration: underline;*/
}

@media screen and (max-width: 768px) {
    .breadcrumb {
        display: none;
    }
}

/*---------------pagenavi---------------*/

.wp-pagenavi a,
.wp-pagenavi span{
    margin-right: 15px;
    font-weight: 500;
}

.wp-pagenavi span.current{
    border-bottom: 1px solid;
}

.wp-pagenavi a:hover{
    border-bottom: 1px solid;
}

.wp-pagenavi a:last-child{
    margin-right: 0;
}

@media screen and (max-width: 768px) {
    .wp-pagenavi a,
    .wp-pagenavi span{
        font-size: 1.4rem;
    }
}

.pagenavi-single-post a,
.pagenavi-single-post span {
    margin-right: 30px;
}

.pagenavi-single-post a:last-child{
    margin-right: 0;
}


/*---------------main-visual----------------*/

.mainvisual{
    position: relative;
    height: 500px;
    display: flex;
    align-items: flex-end;
}

.mainvisual::after{
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 50%;
    height: 150px;
    background-color: white;
    clip-path: polygon(0 0, 85% 0, 100% 100%, 0 100%);
}


@media screen and (max-width: 768px) {

    .mainvisual{
        height: 200px;
    }

    .mainvisual::after{
        height: 60px;
    }
    
}

.page-title-wrap{
    position: relative;
    z-index: 1;
}

.page-title-wrap h2 {
    font-size: 8.0rem;
    font-weight: 600;
    line-height: 1.4;
    color: var(--primary-blue-color);
    letter-spacing: -1px;
}

.page-title-wrap p {
    font-size: 2.4rem;
    line-height: 1;
}

@media screen and (max-width: 768px) {
    .page-title-wrap h2 {
        font-size: 2.6rem;
    }

    .page-title-wrap p {
        font-size: 1.4rem;
    }

}


/*---------------business----------------*/

.mainvisual-business{
    background: url(../img/mainvisual-business.jpg);
    background-size: cover;
    background-position: top center;
}


@media screen and (max-width: 768px) {
    .business-section-01{
        padding: 40px 0;
    }

}

.business-section-02{
    padding: 60px 0;
    position: relative;
}

.business-section-02::after{
    content:"";
    position: absolute;
    bottom:0;
    left:0;
    width: 89.2%;
    height:350px;
    background: var(--primary-gray-color);
    z-index: -1;
}

.business-section-02 .two-column_img{
    width: 54.2%;
}

.two-column_img img{
    width: 100%;
    height: auto;
}

.business-section-02 .two-column_text-right,
.business-section-04 .two-column_text-right{
    width:45.8%;
    padding-left: 7.2%;
    padding-right: 1.5%;
}
.business-section-03 .two-column_text-left{
    width:45.8%;
    padding-right: 7.2%;
    padding-left: 1.5%;
}

@media screen and (max-width: 768px) {

    .business-section-02{
        padding: 0 0 60px;
    }

    .business-section-02 .two-column_text-right,
    .business-section-04 .two-column_text-right,
    .business-section-03 .two-column_text-left {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }
    
    .two-column_img {
    width: 90%;
        margin: 0 auto;
    }

}


.business-section-03{
    padding: 60px 0;
    position: relative;
}

.business-section-03::after{
    content:"";
    position: absolute;
    bottom:0;
    right:0;
    width: 89.2%;
    height:450px;
    background: var(--primary-gray-color);
    z-index: -1;
}


.business-section-04{
    padding: 100px 0 60px;
    position: relative;
}

.business-section-04::after{
    content:"";
    position: absolute;
    bottom:0;
    left:0;
    width: 89.2%;
    height:250px;
    background: var(--primary-gray-color);
    z-index: -1;
}

@media screen and (max-width: 768px) {

    .business-section-03 {
        padding: 30px 0 60px;
    }

    .business-section-04{
        padding: 50px 0 60px;
    }

    .business-section-02::after,
    .business-section-03::after,
    .business-section-04::after{
        width: 100%;
        height: 150px;
    }

}

/*-----------business-device------------*/
.gray-nav .wrapper{
    background:var(--primay-bk-gray-color);
    border-radius: 10px;
    padding: 10px 20px;
    margin:10px auto;
}

.gray-nav-link{
    display: flex;
    column-gap: 25px;
}

.gray-nav-link li a{
    display: block;
    width:180px;
    height: 35px;
    line-height: 33px;
    font-size: 1.6rem;
    font-weight: 600;
    text-align: center;
    background: #fff;
}

.gray-nav-link li a:hover,
.gray-nav-link li a.active{
    color: var(--primary-blue-color);
}

.company{
    padding: 50px 0 100px;
}

.business-device-section-01 .two-column_text-left{
    width: 58%;
    padding-right: 8%;
    padding-left: 0;
}

.business-device-section-01 .two-column_img{
    width: 42%;
}

.business-device-section-02{
    padding: 60px 0;
    text-align: center;
    background:var(--primay-bk-gray-color);
}

.vertical-border-list{
    display: flex;
    justify-content: center;
}

.vertical-border-list li{
    padding: 0px 10px;
    border-left: 1px solid #333;
    line-height: 1;
}

.vertical-border-list li a{
    line-height: 1;
}

.vertical-border-list li:last-of-type{
    border-right: 1px solid #333;
}

.select-flex{
    column-gap: 60px;
}

.cp_ipselect {
	overflow: hidden;
	width: calc(50% - 60px/2);
	text-align: center;
}
.cp_ipselect select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.cp_ipselect select::-ms-expand {
    display: none;
}
.cp_ipselect.cp_sl01 {
	position: relative;
	border: 1px solid #bbbbbb;
	/*border-radius: 2px;*/
	background: #ffffff;
}
.cp_ipselect.cp_sl01::before {
	/*position: absolute;
	top: 0.8em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;*/
    content: "";
    position: absolute;
    right: 8px;
    top: 12px;
    top: 0.9em;
	right: 0.9em;
    width: 7px;
    height: 7px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    pointer-events: none;
    transform: translateY(-50%) rotate(
-135deg);
}
.cp_ipselect.cp_sl01 select {
	padding: 8px 38px 8px 8px;
	color: #666666;
}

.business-device-section-03{
    padding: 20px 0;
}

.business-device-item{
    padding: 50px 0;
    border-bottom: 1px solid #c3c3c3;
    align-items: center;
}

.device-item__logo{
    width: 31.8%;
    padding-right: 5%;
    text-align: center;
}

.device-item__logo img{
    max-width: 90%;
}

.device-item__text{
    width: 63.7%;
}

.device-item__country{
    width: 4.5%;
}

.device-item__country img{
    width: 100%;
    height: auto;
}

.device-item__list{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.device-item__list dt{
    width: 24.2%;
    color: var(--primary-blue-color);
    font-size: 1.8rem;
    font-weight: 600;
}

.device-item__list dd{
    width: 75.8%;
    font-size: 1.8rem
}

.device-item__list-company dd{
    font-weight: 600;
}

@media screen and (max-width: 768px) {

        .gray-nav .wrapper {
            margin: 30px auto 10px;
            padding: 10px;
        }

        .gray-nav-link{
            column-gap: 10px;
        }

        .gray-nav-link li{
            width: calc(33.3333% - 20px/3);
        }
        
        .gray-nav-link li a{
            width: 100%; 
            font-size: 1.0rem;
        }

        .business-device-section-01 {
            padding: 30px 0 50px;
        }

        .business-device-section-01 .two-column_text-left {
            width: 100%;
            padding-right: 0;
        }

        .business-device-section-01 .two-column_img {
            width: 90%;
        }

        .business-device-section-02 {
            padding: 30px 0
        }

        .cp_ipselect {
            width: 100%;
            margin-bottom: 20px;
        }

        .cp_ipselect:last-of-type {
            margin-bottom: 0;
        }

        .device-item__logo {
            padding-right: 0;
            width: 50%;
            margin: 0 auto 20px;
        }

        .device-item__logo img{
            width: 100%;
            height: auto;
        }

        .business-device-item {
            padding: 50px 0 10px;
        }

        .device-item__text {
            width: 100%;
        }

        .device-item__country {
            width: 50px;
            margin: 20px auto;
        }

        .device-item__list {
            margin-bottom: 0;
        }

        .device-item__list dt {
            width: 100%;
            font-size: 1.6rem;
        }

        .device-item__list dd {
            width: 100%;
            font-size: 1.6rem;
        }
        .device-item__country {
            width: 50px;
            margin: 20px auto;
        }
}

/*---------------business-temp--------------*/

.business-temp-section-01{
    padding: 50px 0;
}

.business-temp-item-wrapper{
    padding: 30px 0 80px;
    border-bottom: 1px solid #c3c3c3;
}

.business-temp-section-01 .business-device-item{
    border-bottom: none;
}

a.btn--orange {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.5;
    display: inline-block;
    padding: 2.5rem 4rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    border-radius: 0.5rem;
    color: #fff;
    background-color: #ffa200;
    border-bottom: 5px solid #ff5920;
    width: 80%;
    height: auto;
}


a.btn--orange:hover {
    margin-top: 3px;
    color: #fff;
    background-color: #ffa200;
    border-bottom: 2px solid #ff5920;
}

@media screen and (max-width: 768px) {

    a.btn--orange {
        width: 100%;
        padding: 1rem;
        font-size: 1.6rem;
    }

}

.business-temp-section-02{
    padding: 80px 0 110px;
}

.contents-wrapper80per{
    width: 82%;
    margin: 0 auto;
}

.business-temp-section-03.bk-gray{
    padding:60px 0 40px;
    background: var(--primay-bk-gray-color);
}

.device-temp-block-list dt{
    font-weight: 600;
    line-height: 1.8;
}

.device-temp-block-list dd{
    line-height: 1.8;
}

.device-temp-two-column{
    padding-bottom: 60px;
    margin-bottom: 80px;
}

.device-temp-two-column-text{
    width: 61%;
    padding-right: 6%;
}

.device-temp-two-column-img{
    width: 39%;
}

.device-temp-two-column-img img{
    width: 100%;
    height: auto;
}


.border-bottom-gray{
    border-bottom: 1px solid #c3c3c3;
}

.business-temp-section-04{
    padding: 90px 0 110px;
}


@media screen and (max-width: 768px) {
    
    .business-temp-section-02 {
        padding: 0px 0 40px;
    }

    .contents-wrapper80per{
        width: 100%;
        margin: 0 auto;
    }

    .device-temp-two-column-text{
        width: 100%;
        padding-right: 0;
    }

    .device-temp-block-list dd{
        font-size: 1.4rem;
    }

    .device-temp-two-column-img {
        width: 85%;
        margin: 20px auto 0;
    }

    .device-temp-two-column {
        margin-bottom: 40px;
    }

    .business-temp-section-04 {
        padding: 40px 0 50px;
    }


}






/*-----------business-monozukuri------------*/

.business-monozukuri-section-02{
    padding: 60px 0;
    text-align: center;
    background: var(--primay-bk-gray-color);

}

.hex-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    grid-gap: 10px;
    width: 100%;
    margin: 0 auto;
}

.hex {
    width: 100%;
    padding-bottom: 115%; /* Hexagon's height = width / 0.866 (approx 115%) */
    position: relative;
}

.hex-in {
    width: 100%;
    height: 100%;
    /*padding-bottom: 115%;*/
    /*overflow: hidden;
    visibility: hidden;*/
    position: absolute;
    top:0;
    left:0;
    clip-path: polygon(25% 6.69873%, 75% 6.69873%, 100% 50%, 75% 93.3013%, 25% 93.3013%, 0% 50%);
    overflow: hidden;
    z-index: 1;
}

.hex-in::before {
    content: "";
    position: absolute;
    top: -2px; /* 境界線が隠れないように調整 */
    left: -2px; /* 境界線が隠れないように調整 */
    width: calc(100% + 4px); /* 境界線が隠れないように調整 */
    height: calc(100% + 4px); /* 境界線が隠れないように調整 */
    clip-path: polygon(25% 6.69873%, 75% 6.69873%, 100% 50%, 75% 93.3013%, 25% 93.3013%, 0% 50%);
    border: 2px solid #ccc; /* グレーの境界線 */
    box-sizing: border-box;
    pointer-events: none; /* 擬似要素がクリックを受けないようにする */
    z-index: 2;/* 擬似要素を前面に表示 */
}

.hex-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 90%;
    /*clip-path: polygon(25% 6.69873%, 75% 6.69873%, 100% 50%, 75% 93.3013%, 25% 93.3013%, 0% 50%);*/
    clip-path: inherit;
    background-size: cover;
    background-position: center;
    /*visibility: visible;*/
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
    font-weight: bold;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
    text-decoration: none; 
    font-size: 1.8rem;
    z-index: 3;
}




.hex-img.monozukuri01{
    background-image: url('../img/business-monozukuri-icon-img01.png');
}

.hex-img.monozukuri02{
    background-image: url('../img/business-monozukuri-icon-img02.png');
}

.hex-img.monozukuri03{
    background-image: url('../img/business-monozukuri-icon-img03.png');
}

.hex-img.monozukuri04{
    background-image: url('../img/business-monozukuri-icon-img04.png');
}

.hex-img.monozukuri05{
    background-image: url('../img/business-monozukuri-icon-img05.png');
}

.hex-img.monozukuri06{
    background-image: url('../img/business-monozukuri-icon-img06.png');
}



.hex-content {
    /*background-color: rgba(0, 0, 0, 0.5);
    padding: 5px;
    border-radius: 5px;*/
    color: #fff;
}

.hex-content::before {
    content: '';
    display: inline-block;
    width: 9px;
    height: 10px;
    background-image: url(../img/icon-white-arrow.png);
    background-size: contain;
    /* vertical-align: middle; */
    margin-right: 7px;
    background-repeat: no-repeat;
}



@media (max-width: 768px) {

    .business-monozukuri-section-02{
        padding: 30px 0 150px;
    }

    .hex-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        grid-gap: 10px;
        width: 100%;
        margin: 0 auto;
    }
    .hex-img {
        font-size: 1.2rem;
        letter-spacing: -1px;
    }
    .hex-content::before {
        width: 6px;
        height: 6px;
        background-image: url(../img/icon-white-arrow.png);
        background-size: contain;
        vertical-align: middle;
        margin-right: 2px;
        background-repeat: no-repeat;
    }
}

/* 互い違いに配置 */
.hex:nth-child(odd) {
    transform: translateY(50%);
}

.hex:nth-child(5){
    transform: translate(105%, 0%);
}

.hex:nth-child(6){
    transform: translateX(207%);
}


@media (max-width: 1000px) {
    .hex:nth-child(odd) {
        transform: translateY(50%);
    }

    /*.hex:nth-child(5){
        transform: translate(0%, 0%);
    }*/
    .hex:nth-child(6){
        transform: translate(0%, 0%);
    }
}


/*-----------business-monozukuri2------------*/

.business-monozukuri-shosai-section-01 {
    padding: 50px 0 100px;
}

@media screen and (max-width: 768px) {
    .business-device-monozukuri-shosai-01 {
        padding: 30px 0 50px;
    }
}

.business-monozukuri-shosai-section-01 .two-column_img{
    width: 53.6%;
}

.business-monozukuri-shosai-section-01 .two-column_text-right{
    width: 46.4%;
    padding-left: 9.6%;
}

.business-monozukuri-shosai-section-01 .two-column_text-left{
    width: 46.4%;
    padding-right: 9.6%;
}

.business-monozukuri-shosai-section-01 .flexc .btn-contact {
    width: 250px;
    height: 50px;
    max-width: inherit;
    margin: 90px auto 0;
    font-size: 2.2rem;
}

@media screen and (max-width: 768px) {

    .business-monozukuri-shosai-section-01 .flexc .btn-contact {
        font-size: 1.8rem;
        height: auto;
        width: 180px;
    }

    .business-monozukuri-shosai-section-01 .two-column_text-right {
        width: 100%;
        padding-left: 0;
    }
    
    .business-monozukuri-shosai-section-01 .two-column_text-left {
        width: 100%;
        padding-right: 0;
    }
    
    .business-monozukuri-shosai-section-01 .two-column_img {
        width: 90%;
        margin: 20px auto;
        max-width: 400px;
    }
}


/*-----------business-sb ------------*/

.business-sb-section-02 {
    padding: 60px 0;
    text-align: center;
    background: var(--primay-bk-gray-color);
}

.business-sb-icon-items{
    justify-content: space-around;
    column-gap: 10%;
}

.business-sb-icon-items > div{
    width:45%;
    max-width: 330px;
}

.business-sb-icon-items > div > img{
    width: 100%;
    height: auto;
}

@media screen and (max-width: 768px) {

    .business-sb-section-02 {
        padding: 30px 0;
    }
}

.business-sb-section-03{
    padding: 80px 0 190px;
}

.business-sb-small-item{
    padding: 40px 0;
    border-bottom: 1px solid #c3c3c3;
}

.business-sb-small-img{
    width: 20%;
}

.business-sb-small-img img{
    width: 100%;
    height: auto;
}

.business-sb-small-text{
    width: 80%;
    padding-left: 6%;
    padding-top: 5%;
}

@media screen and (max-width: 768px) { 

    .business-sb-section-03{
        padding: 40px 0 70px;
    }

    .business-sb-small-item{
        padding: 20px 0;
    }

    .business-sb-small-img{
        width: 34.6%;
    }

    .business-sb-small-text{
        width: 65.4%;
        padding-left: 7%;
        padding-top: 2%;
    }
 }

/*-----------company------------*/

.mainvisual-company{
    background: url(../img/mainvisual-company.jpg);
    background-size: cover;
    background-position: top center;
}

@media screen and (max-width: 768px) {
    .company-section-01{
        padding: 40px 0;
    }

}

.company-section-02{
    padding: 100px 0 80px;
    background: var(--primay-bk-gray-color);
}

.company-section-02 .flex.three-columns{
    justify-content: space-between;
    column-gap: 60px;
}

.company-section-02 .flex.three-columns .item{
    width: calc(33.3333% - 120px/3);
}

.company-section-02 .flex.three-columns .item img{
    width: 100%;
    height: auto;
}

@media screen and (max-width: 768px) {

    .company-section-02{
        padding: 40px 0 20px;
    }

    .company-section-02 .flex.three-columns{
        justify-content: center;
    }
    .company-section-02 .flex.three-columns .item{
        width: 80%;
        max-width: 300px;
        margin-bottom: 30px;
    }
}

/*-----------company-message------------*/

.company-message-section-01{
    padding: 50px 0 100px;
}

@media screen and (max-width: 768px) {

    .company-message-section-01{
        padding: 30px 0 70px;
    }
}

.company-message-item-wrapper{
    position: relative;
}

.company-message-item-img {
    position: relative;
    text-align: right;
    margin-bottom: 280px;
}

.company-message-item-text{
    padding: 50px;
    background-color: var(--primay-bk-gray-color);
    position: absolute;
    top: 300px;
    left: 0;
    width: 54%;
}

.company-message-item-text > p{
    line-height: 2;
    margin-bottom: 30px;
}

.company-message-item-text > p:last-of-type{
    margin-bottom: 0;
}

@media screen and (max-width: 1100px) {

    .company-message-item-text {
        width: 60%;
        padding: 50px 20px;
    }

}

@media screen and (max-width: 950px) {

    .company-message-item-img {
        position: static;
        margin-bottom: 60px;
    }

    .company-message-item-img .president-photo-wrap{
        margin-bottom: 20px;
    }
    
    .company-message-item-img .president-photo-wrap > img{
        width: 100%;
    }

    .company-message-item-img .president-name-wrap > img{
        width: 60%;
        max-width: 250px;
    }
     
    .company-message-item-text {
        position: static;
        width: 100%;
        padding: 50px 20px;
    }

    .company-message-item-text > p{
        line-height: 1.6;
    }
        
}


/*-----------company-rinens------------*/

.company-rinen-section-01{
    padding: 50px 0 100px;
}

@media screen and (max-width: 768px) {

    .company-rinen-section-01{
        padding: 30px 0 70px;
    }
}

.company-rinen-section-02{
    padding: 100px 0 80px;
    background: var(--primay-bk-gray-color);
}

.company-rinen-img{
    padding: 100px 0 0;
}

.company-rinen-img img{
    max-width: 100%;
}

@media screen and (max-width: 768px) {

    .company-rinen-section-02{
        padding: 50px 0 60px;
    }

    .company-rinen-img{
        padding: 50px 0 0;
    }
}


/*-----------company-outlines------------*/

.company-outline-section-01{
    padding: 50px 0 100px;
}

@media screen and (max-width: 768px) {

    .company-outline-section-01{
        padding: 30px 0 70px;
    }
}



.ninsho-img{
    margin-right: 0;
    margin-left: auto;
}


.company-outline-list .map{
    margin: 20px 0;
}

@media screen and (max-width: 768px) {

    .company-outline-list .map-img img{
        width: 100%;
        height: auto;
    }

    .company-outline-list .map iframe{
        width: 100% !important;
    }

    .ninsho-img{
        margin-left: 0;
        width:  90px;
        margin-top: 20px;
    }
       
    .ninsho-img img{
        width: 100%;
    }
}

/*-----------info------------*/

.mainvisual-info{
    background: url(../img/mainvisual-info.jpg);
    background-size: cover;
    background-position: top center;
}

.info-section-01{
    padding: 30px 0 150px;
}

@media screen and (max-width: 768px) {

    .info-section-01{
        padding: 30px 0 80px;
    }

}

/*---------------pagenavi---------------*/

.wp-pagenavi a,
.wp-pagenavi span{
    /*margin-right: 15px;*/
    margin: 10px;
    font-weight: 400;
    color: #14375b;
}

.wp-pagenavi span.current{
    border-bottom: 1px solid;
}

.wp-pagenavi a:hover{
    border-bottom: 1px solid;
}

.wp-pagenavi a:last-child{
    margin-right: 0;
}

@media screen and (max-width: 768px) {
    .wp-pagenavi a,
    .wp-pagenavi span{
        font-size: 1.4rem;
    }
}

.pagenavi-single-post a,
.pagenavi-single-post span {
    margin-right: 30px;
}

.pagenavi-single-post a:last-child{
    margin-right: 0;
}

/*-----------info02------------*/


.info-thumbnail{
    width: 22.8%;
}

.info-thumbnail img{
    width: 100%;
    height: auto;
}

.info-title{
    width: 77.2%;
    padding-left: 4.5%;
    text-align: left;
}

.info-thumbnail-title-wrapper{
    padding-bottom: 90px;
    border-bottom: 1px solid #c3c3c3;
}

.info-title.item-text{
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
}

.info-contents{
    padding: 80px 100px;
}

.info-contents p{
    line-height: 2.25;
    font-size: 1.6rem;
    text-align: left;
}

.info-contents-wrapper .wp-pagenavi .current:hover{
    border: none;
}

@media screen and (max-width: 768px) {

    .info-thumbnail {
        width: 80%;
        margin: 0 auto 20px;
    }

    .info-title{
        width: 100%;
    }

    .info-title.item-text > h3{
        word-break: break-all;
    }
    .info-thumbnail-title-wrapper{
        padding-bottom: 30px;
    }

    .info-contents{
        padding: 30px 10px;
    }

    .info-contents p{
        line-height: 1.6;
        text-align: justify;
    }

}



/*-----------------contact-----------------*/

.mainvisual-contact{
    background: url(../img/mainvisual-contact.jpg);
    background-size: cover;
    background-position: top center;
}

.contact-section-01{
    padding: 50px 0 100px; 
}

@media screen and (max-width: 768px) {
    .contact-section-01{
        padding: 30px 0 50px; 
    }
}


/*.section-contact-wrapper{
    padding-top: 70px;
}

@media screen and (max-width: 768px) {
    .section-contact-wrapper{
        padding-top: 30px;
    }
}

.contact__list{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.contact__list:last-child{
    margin-bottom: 0;
}

.contact__list dt{
    width: 200px;
    color:#ea5413;
    font-size: 1.6rem;
    font-weight: 500;
    transform: rotate(0.03deg);
}

.contact__list dd{
    width: calc(100% - 200px);
    font-size: 1.6rem;
    transform: rotate(0.03deg);
}

@media screen and (max-width: 768px) {

    .contact__list{
        margin-bottom: 20px;
    }

    .contact__list dt,
    .contact__list dd{
        width: 100%;
    }

    .contact__list dt{
        font-size: 1.4rem;
    }
}

.contact-address-list{
    display: flex;
    align-items: center;
}

.contact-address-list_column1{
    font-size: 1.4rem;
    width: 80px;
}

.required{
    color: #c0362f;
    font-size: 1.4rem;
    font-weight: 800;
    margin-left: 20px;
}

@media screen and (max-width: 768px) {

    .contact-address-list_column1{
        font-size: 1.2rem;
        width: 60px;
    }
    
    .required{
        font-size: 1.2rem;
        margin-left: 10px;
        width: 40px;
    }
}

.input{
    border: 1px solid #d4d4d4;
    font-weight:500;
    padding: .5em .5em .5em .7em;
}

.select,
.textarea{
    border: 1px solid #d4d4d4;
    font-weight:500;
    padding: .5em .5em .5em .7em;  
}

.textarea{
    width: 100%;
    height: 250px;
}

.input_text01{
    width:100%;

    
}

.input_text02{
    width: 180px;
}

.input_text03{
    width: 300px;
    max-width: 300px;
}

.select01{
    width: 180px;
}

::placeholder {
    opacity: .5;
}

@media screen and (max-width: 768px) {

    .input,
    .select,
    .textarea{
        font-size: 1.6rem;
    }
    .input_text01{
        width: 100%;

    }
    .input_text02,
    .input_text03,
    .select01{
        max-width: 215px;
    }
    .contact-address-list_column2{
        width: calc(100% - 137px);
    }

    .textarea{
        width: 100%;
        height: 180px;
    }
}


.button-contact-submit{
    font-size: 2.2rem;
    color: #fff;
    font-weight: 500;
    width:250px;
    height: auto;
    padding: 10px;
    background: #ea5413;
    text-align: center;
    position: relative;
    border: none;
    cursor: pointer;
}

.button_address{
    font-size:1.6rem;
    padding: 6px 10px;
    background: #e0e0e0;
    margin-left: 10px;
    cursor: pointer;
}

.button_address:hover{
    opacity: .7;
}

@media screen and (max-width: 768px) {
    .button_address{
        font-size: 1.2rem;
        padding: 12px 5px;
    }

}*/


/*smf*/

/*contact*/

@media screen and (max-width: 768px){
    .contents-contact .wrapper800{
        width: 100%;
    }
}

.input {
    border: 1px solid #aba9a9;
    /* font-weight: 500; */
    padding: 5px;
    font-size: 1.6rem;
    padding: 0.5em 0.5em 0.5em 0.7em;
}

.input_text01 {
    width: 500px;
    max-width: 100%;
}

.input_text02 {
    width: 180px;
}

.input_text04 {
    width: 500px;
    max-width: 100%;
}

.btn-auto {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    max-width: 100px;
    background: #d5d5d5;
    margin-left: 10px;
    cursor: pointer;
    border: none;
    padding: 0.6em 0.5em 0.7em 0.5em;
    padding: 0.8em 0.5em 1em 0.5em;
}

.select, .textarea {
    border: 1px solid #aba9a9;
    padding: 0.5em 0.5em 0.5em 0.7em;
    font-size: 1.6rem;
}

.textarea {
    width: 700px;
    height: 180px;
    max-width: 100%;
    width: 90%;
}

.contact-address-list {
    display: flex;
    align-items: center;
}

/*.contact-address-list_column2 {
    width: calc(100% - 137px);
}*/

@media screen and (max-width: 1000px){
    .contact-address-list_column2 {
        width: calc(100% - 137px);
    }
}

@media screen and (max-width: 1000px){
    .textarea {
        width: 100%;
        height: 180px;
    }
}


@media screen and (max-width: 768px){
    .input_text01 {
        width: 100%;
    }
    .btn-auto {
        margin-top: 10px;
        margin-left: 0;
    }  
    .smf-item__label__text > span {
        font-size: 1.2rem;
    }
}


.smf-form--simple-table{
    margin-bottom: 30px;
}

.smf-action .smf-button-control__control {
    width: 250px;
    max-width: 100%;
    border-radius: 50px;
    border: 1px solid #5b5b5b;
    background-color: #fff;
    padding: 12px;
    /*border-radius: 50px;*/
    font-size: 1.8rem;
    text-align: center;
}


/*.smf-form--simple-table .smf-item__col--label {
    flex: 0 0 14em;
    max-width: 14em;
    padding-bottom: 0;
    padding-right: var(--_padding1);
}*/



@media screen and (max-width: 768px){
.smf-action .smf-button-control__control {
    width: 150px;
}
}

/*.smf-form--simple-table .smf-item__col--controls{
    flex: 1 1 calc(100% - 288px);
    max-width: calc(100% - 288px);
}*/

/*@media screen and (min-width: 640px){*/
    @media screen and (min-width: 1000px){
.smf-form--simple-table .smf-item__col--label {
    flex: 0 0 210px;
    max-width: 210px;
    padding-bottom: 0;
    padding-right: var(--_padding1);
}
}

.wp-block-columns {
    align-items: normal!important;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap!important;
}


/*@media (max-width: 781px){*/
@media (max-width: 1000px){
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 100%!important;
    }
}
    
.wp-block-column.is-vertically-aligned-center {
    align-self: center;
}


[data-name="checkboxes-1hh1ci2ua"]{
    margin-top: 50px;
}

/*@media screen and (min-width: 640px){*/
@media screen and (min-width: 1000px){
.smf-form--simple-table .smf-item__col--controls {
    flex: 1 1 calc(100% - 288px);
    max-width: calc(100% - 288px);
    
}
}

/*.smf-item__label__text strong{
    color:#f09301;
}*/

.sme-text-color.has-vivid-red-color{
    color:#ff0000;
    font-size: 1.2rem;
}

a.privacy-link {
    text-decoration: underline;
}

.txt-alert{
    color:#ff0000;
    font-size: 1.4rem;
}

.smf-form--simple-table .contact-list01 {
    border-bottom: 1px solid #c4c4c4;
    display: flex;
    flex-wrap: wrap;
    padding: 25px 0;
}


.smf-checkboxes-control__control{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.smf-radio-buttons-control__control{
    display: flex;
    flex-wrap: wrap;
}

.smf-radio-buttons-control__control .smf-label{
    margin-left: 50px;
}

.smf-radio-buttons-control__control .smf-label:first-of-type{
    margin-left: 0;
}

@media screen and (max-width: 960px){

    .smf-checkboxes-control__control,
    .smf-radio-buttons-control__control{
        display: block;
    }

    .smf-checkboxes-control__control .smf-label,
    .smf-radio-buttons-control__control .smf-label{
        margin:5px 0;
    }
    
    

}

@media screen and (max-width: 768px){
.smf-form--simple-table .contact-list01 {
    display: block;
}
}

.smf-action {
    text-align: center;
    margin: 30px auto;
}

.smf-action .smf-button-control:nth-child(2n) {
    margin-left:10px;
}



/*--------------contact-device--------------*/


/*.smf-form--simple-table .smf-item__col--controls {
    width: calc(100% - 195px);
    max-width: inherit;
    flex: inherit;
    font-size: 1.6rem;
}*/


.smf-form .smf-item .smf-select-control__control.selectw180 {
    width: 300px;
}

@media screen and (max-width: 768px) {
    .smf-form .smf-item .smf-select-control__control.selectw180, 
    .smf-form .smf-item .smf-select-control {
        width: 100%;
    }
}

@supports ((-webkit-appearance:none) or (appearance:none)) or (-moz-appearance:none) {
    .smf-form .smf-item .smf-select-control {
        position: relative;
    }
}

@supports ((-webkit-appearance:none) or (appearance:none)) or (-moz-appearance:none) {
    .smf-form .smf-item .smf-select-control__toggle {
        /*background-color: var(--_color-white);
        bottom: 0;*/
        display: block;
        /*left: 0;*/
        position: absolute;
        /*right: 0;*/
        top: 45%;
        z-index: 10;
    }
}

@supports ((-webkit-appearance:none) or (appearance:none)) or (-moz-appearance:none) {
    .smf-form .smf-item .smf-select-control__toggle:before {
        border-color: currentcolor;
        border-style: solid;
        border-width: 0 1px 1px 0;
        content: "";
        display: block;
        height: 6px;
        position: absolute;
       left: 280px;
        top: calc(50% - 4px);
        transform: rotate(45deg);
        width: 6px;
    }
}












/*---------------bukken----------------*/

.section-circle-link{
    padding: 60px 0;
}

@media screen and (max-width: 768px) {

    .section-circle-link{
        padding: 30px 0;
    }
}

.wrapper_sold{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.4);
}

.txt_sold{
    background: #ea5413;
    padding: 5px 10px;
    border-radius: 5px;  
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500;    
}

.txt_negotiating{
    background: #54b65b;
    padding: 5px 10px;
    border-radius: 5px;  
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500;    
}

@media screen and (max-width: 768px) {
    .txt_sold,
    .txt_negotiating{
        font-size: 1.2rem;
    }
}

.pointer-none{
    pointer-events: none;
}

/*---------------bukken-mansion----------------*/

.section-bulletin-board{
    padding: 70px 0 80px;
}

.section-bulletin-board img{
    width: 100%;
    height: auto;
}

.section-property-listings{
    padding-top: 70px;
}

@media screen and (max-width: 768px) {
    .section-bulletin-board{
        padding: 30px 0 40px;
    }
    
    .section-property-listings{
        padding-top: 30px;
    }
}

/*---------------bukken-single----------------*/

.section-bukken-single-info-wrap{
    padding: 50px 0 70px;
}

.bukken-name{
    color:#ea5413;
    font-size: 2.4rem;
    font-weight: 700;
    margin-bottom: 30px;
}

.bukken-name::before{
    content: '';/*何も入れない*/
    display: inline-block;
    width: 23px;/*画像の幅*/
    height: 35px;/*画像の高さ*/
    background-image: url(../img/icon-company-logo.png);
    background-size: contain;
    background-repeat: no-repeat;
   /* vertical-align: b;*/
    margin-right: 20px;
    vertical-align: middle;
}

.bukken-information-wrap{
    display: flex;
    flex-wrap:wrap;
    margin-bottom: 70px;
}

.bukken-information__photo-wrap{
    width: calc(100% - 415px);
    padding-right:30px;
}

.bukken-information__txt-wrap{
    width: 415px;
    background: #fdf6d2;
    padding: 40px 20px;
    border-radius: 10px;
}

@media screen and (max-width: 768px) {

    .section-bukken-single-info-wrap{
        padding: 30px 0 40px;
    }

    .bukken-information-wrap{
        margin-bottom: 30px;
    }

    .bukken-information__photo-wrap{
        width: 100%;
        padding-right: 0;
    }

    .bukken-information__txt-wrap{
        width: 100%;
        padding: 20px;
    }

    .bukken-name {
        font-size: 1.8rem;
        margin-bottom: 15px;
        padding-left: 40px;
        text-indent: -45px;
    }

}

.bukken-information__list{
    display: flex;
    flex-wrap: wrap;
   /* align-items: center;*/
    margin-bottom: 40px;
}

.bukken-information__list:last-child{
    margin-bottom: 0;
}

.bukken-information__list dt{
    width: 90px;
    height:32px;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    background: #ea5413;
    padding:5px;
    border-radius: 5px;
    margin-right: 10px;
    font-weight:400;
    transform: rotate(0.03deg);
}

.bukken-information__list dd{
    font-size: 1.4rem;
    font-weight:500;
    transform: rotate(0.03deg);
}

.bukken-information__price{
    font-size: 1.8rem;
    color:#ea5413;
    font-weight: 600;
}

.bukken-information__price span{
    font-size: 2.4rem;
    color:#ea5413;
    font-weight: 600;
}

@media screen and (max-width: 768px) {
    .bukken-information__list{
        margin-bottom:20px;
    }

    .bukken-information__list dt,
    .bukken-information__list dd,
    .bukken-information__price{
        font-size: 1.2rem;
    }

    .bukken-information__price span{
        font-size: 1.8rem;
    }

}

.button-bukken-contact{
    font-size: 2.2rem;
    color: #fff;
    font-weight: 500;
    width:320px;
    height: 80px;
    padding: 35px 10px 10px 10px;
    background: #ea5413;
    text-align: center;
    position: relative;
}

.button-bukken-contact::before{
    content: '';/*何も入れない*/
    display: inline-block;
    width: 25px;/*画像の幅*/
    height: 20px;/*画像の高さ*/
    background-image: url(../img/icon-envelope.png);
    background-size: contain;
    background-repeat: no-repeat;
   /* vertical-align: b;*/
    margin-right: 20px;
    vertical-align: middle;
    position: absolute;
    top: 15px;
    left: 50%;
    margin-left: -12.5px;
}

.section-bukken-recommendations{
    padding: 60px 0 100px;
}

@media screen and (max-width: 768px) {
    .section-bukken-recommendations{
        padding: 30px 0 50px;
    }
}

@media screen and (max-width: 768px) {
    .button-bukken-contact{
        font-size: 1.8rem;
    }
}

.title_orange{
    color: #ea5413;
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 20px;
}

.list_orange-check li{
    font-size: 1.8rem;
    margin-bottom: 10px;
    background-image: url(../img/icon-check-orange.png);
    background-repeat: no-repeat;
    background-size:auto 20px;
    padding-left: 25px;
    
}

/*.list_orange-check li:before{
    content: '';
    display: inline-block;
    width: 24px;
    height: 20px;
    background-image: url(../img/icon-check-orange.png);
    background-size: contain;
    background-repeat: no-repeat;

    margin-right: 10px;
    vertical-align: sub;
}*/

@media screen and (max-width: 768px) {
    .title_orange{
        font-size: 1.8rem;
        margin-bottom: 10px;
    }

    .list_orange-check li{
        font-size: 1.4rem;
    }
    .list_orange-check li{
        background-size: auto 15px;
    }
    
}



.detail_list {
   /* width: 49%;*/
    display: flex;
    flex-wrap: wrap;
}

.detail_list li {
    width: calc(50% - 20px/2);
    margin-right: 20px;
    color: #5b5b5b;
    margin-bottom: 10px;
}

.detail_list li:nth-child(2n) {
    margin-right: 0;
}

.detail_list li span {
    padding: 2px 10px;
    background: #fff;
    display: inline-block;
    width: 100%;
}

.detail_list li span.subttl {
    font-weight: 500;
    display: inline-block;
    width: 100%;
    background: #cfeaf6;
    padding: 2px 10px;
}

@media screen and (max-width: 768px) {

    .detail_list {
        width: 100%;
    }

    .detail_list li {
        margin-bottom: 5px;
        width: 100%;
        margin-right: 0;
    }

    .detail_list li span {
        font-size: 1.2rem;
    }
   
}

.section-bukken-map{
    padding: 70px 0 0;
}

.section-bukken-map iframe{
    width: 100% !important;
    height: 450px !important;
}

@media screen and (max-width: 768px) {
    .section-bukken-map{
        padding: 30px 0 0;
    }

    .section-bukken-map iframe{
        height: 200px !important;
    }
    
}

/*-----------------company-----------------*/

/*.section-company-introduction {
    padding: 40px 0 70px;
}

@media screen and (max-width: 768px) {

    .section-company-introduction {
        padding: 20px 0 35px;
    }
}

.section-company-gaiyo{
    padding-top: 70px;
}

.company-gaiyo__list{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 50px;
}

.company-gaiyo__list:last-child{
    margin-bottom: 0;
}

.company-gaiyo__list dt{
    width: 125px;
    color:#ea5413;
    font-size: 1.6rem;
    font-weight: 500;
    transform: rotate(0.03deg);
}

.company-gaiyo__list dd{
    width: calc(100% - 125px);
    font-size: 1.6rem;
    transform: rotate(0.03deg);
}

@media screen and (max-width: 768px) {

    .section-company-gaiyo{
        padding-top: 30px;
    }
    .company-gaiyo__list{
        margin-bottom: 20px;
    }

    .company-gaiyo__list dt,
    .company-gaiyo__list dd{
        width: 100%;
        font-size: 1.4rem;
    }
}*/


/*-----------------access-----------------*/


.section-access-introduction {
    padding: 40px 0 70px;
}

@media screen and (max-width: 768px) {

    .section-access-introduction {
        padding: 20px 0 35px;
    }
}


.section-access-map iframe{
    width: 100%;
    height: 500px;
}

@media screen and (max-width: 768px) {
    .section-access-map iframe{
        height: 250px;
    }
}

@media screen and (max-width: 768px) {
    .tel-link > a {
        /*color: #06F;
        font-weight: bold;*/
        text-decoration: underline;
    }
    
    .tel-link.txtRed > a {
        color: #f00;
    }
}

.section-access-txt{
    padding-top: 70px;
}

.section-access-txt-item{
    width: 460px;
    margin: 0 auto;
    max-width: 90%;
}

.indent7{
    padding-left: 7em;
    text-indent:-7em;
}

@media screen and (max-width: 768px) {

    .section-access-txt{
        padding-top: 30px;
    }

    .indent7{
        padding-left: 0;
        text-indent: 0;
    }
}


/*-----------------privacy-----------------*/

.section-privacy-content{
    padding-top: 70px;
}

@media screen and (max-width: 768px) {
    .section-privacy-content{
        padding-top: 40px;
    }
}

.privacy-paragraph{
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #000;
}

.privacy-content-txt{
    font-size: 1.6rem;
    line-height: 2.2;
    color: #000;
}

.privacy-title{
    text-align: center;
    font-size: 2.4rem;
    color: #ea5413;
    font-weight: 600;
    line-height: 2.2;
}

@media screen and (max-width: 768px) {

    .privacy-title{
        font-size: 1.8rem;
        margin:10px 0;
    }

    .privacy-content-txt{
        font-size: 1.4rem;
        line-height: 1.6;
    }
}

.disc-list{
    margin-left: 15px;
}

.disc-list li{
    list-style-type: none;
    font-size: 1.6rem;
    line-height: 2;
}

.disc-list li:before{
    content: '';
	width: 2px;
	height: 2px;
	display: inline-block;
	border-radius: 100%;
	background: #000;
	position: relative;
	left: -8px;
	top: -3px;
}

@media screen and (max-width: 768px) {

    .disc-list li{
        font-size: 1.4rem;
        line-height: 1.6;
    }
}












/*.section-property-listings {
    padding-top: 70px;
}

@media screen and (max-width: 768px) {
    
    .section-property-listings {
        padding-top: 70px;
    }
}*/

/*-----------------slick-----------------*/

/*photo-slider サムネイル付写真slick*/

#photo-slider,
#photo-thumbnail_slider{
    width: 100%;
    margin: 0 auto 20px;
}

#photo-thumbnail_slider{
    margin: 0 auto;
}
.slide-item img{
    width: 100%;
}  
  .thumbnail-item img{
    width: 98%;
    margin: 0 auto;
}

#photo-slider .slick-next{
    right:5px;
}

#photo-slider .slick-prev{
    left:5px;
}


#photo-thumbnail_slider .slick-prev,
#photo-thumbnail_slider .slick-next{
    background-color: #fff;
    opacity: .8;
    width: 20px;
    height: 100%;
    background-image: none;
    background-position: center;
    z-index:1;
    border-radius:0;
    -webkit-border-radius: 0;
    top: 0;
    margin-top: 0;
}

#photo-thumbnail_slider .slick-prev{
    left: 0px;
}

#photo-thumbnail_slider .slick-next{
    right: 0px;
}

#photo-thumbnail_slider .slick-prev::before{
    content: "";
    display:block;
    width: 8px;
    height: 16px;
    margin-top: -8px;
    background-image: url(../img/btn-prev.png);
    background-size: contain;
    background-repeat: no-repeat;
    left: 30%;
}

#photo-thumbnail_slider .slick-next::before{
    content: "";
    display:block;
    width: 8px;
    height: 16px;
    margin-top: -8px;
    background-image: url(../img/btn-next.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 200;
    left: 25%;
}

@media screen and (max-width: 768px) {
    #photo-slider, 
    #photo-thumbnail_slider{
        margin: 0 auto 20px;
    }
}

/*---------------products----------------*/



/*.main-menu-list{
    display: flex;
}



.main-menu-list li a{
    display: block;
    width: 250px;
    height: 85px;
    background: #e8e9eb;
    padding-top: 15px;
    text-align: center;
    border-radius: 10px 10px 0 0 / 10px 10px 0 0;
    margin-right: 1px;
}

.main-menu-list li a.active,
.main-menu-list li a:hover{
    background: #fff;
    opacity: 1 !important;

}

.main-menu-list li a span{
    display: block;
}



@media screen and (max-width: 768px) {

    

    .main-menu-list li:last-child{
        margin-right: 0;
    }

    .main-menu-list li a{
        width: 100%;
        padding-top: 5px;
        height: 50px;
    }

    .main-menu-list li a span.txtBlue{
        zoom: 0.8;
    }
}

.title-vertical-line{
    position: relative;
}

.title-vertical-line::before {
    position: absolute;
    content: '';
    top: -90px;
    left: 50%;
    margin-left: -1px;
    display: block;
    width: 1px;
    height: 60px;
    background-image: url(../img/vertical-line.jpg);
    background-size: contain;
    background-repeat: no-repeat;
}

@media screen and (max-width: 768px) {

    .title-vertical-line::before {
        top: -40px;
        height: 30px;
    }


}

.products_jisha-tasha-link-item{
    display: flex;
    margin-bottom: 150px;
}

.products_jisha-tasha-link-item > a{
    width: calc( 50% - 40px/2 );
    height: 370px;
    background:#f6f8fb;
    text-align: center;
}

.products_jisha-tasha-link-item > a:first-child{
    margin-right: 40px;
}

.products_jisha-tasha-link-item > a > div{
    height: 290px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.product-jisha{
    width: 420px;
    height: 115px;
}

@media screen and (max-width: 768px) {

    .products_jisha-tasha-link-item{
        margin-bottom: 45px;
    }

    .products_jisha-tasha-link-item > a img{
        width: auto;
        height: auto;
        max-width: 90%;
        max-height: 80%;
    }

    .products_jisha-tasha-link-item > a{
        width: calc( 50% - 15px/2 );
        height: 140px;
    }

    .products_jisha-tasha-link-item > a:first-child{
        margin-right: 15px;
    }

    .products_jisha-tasha-link-item > a > div{
        height: 100px;
    }

}*/

/*products-00*/

/*.products-img-wrap{
    width: 500px;
    padding-right: 50px;
}

.products-txt-wrap{
    width: 500px;
}

.square__back-line{
    display: flex;
    align-items: center;
}

.square__back-line span{
    width:200px;
    height: 50px;
    line-height:45px;
    font-size: 1.4rem;
    color: #000;
    background-color: #fff;
    border: 1px solid #b5b5b5;
    text-align: center;
}

.square__back-line::before{
    content: "";
    display: inline-block;
    background: #b5b5b5;
    width:145px;
    height: 1px;
}

.square__back-line::after{
    content: "";
    display: inline-block;
    background: #b5b5b5;
    width:145px;
    height: 1px;
}

.products__icon-yoto-wrap{
    width: 460px;
    margin:20px auto;
    display:flex;
}

.products__icon-yoto-item{
    width: 25%;
}

.products__icon-yoto-item div,
.products__icon-yoto-item p{
    text-align: center;
}

.link__catalogue-download{
    font-size: 1.8rem;
    font-weight: 700;
    color: #0864b2;
    border-bottom: 2px solid #7faed6;
}

.flex-wrap__l690-r310{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 70px;
}

.flex-wrap__l690-r310:last-child{
    margin-bottom: 0;
}

.flex-item__l690{
    width: 690px;
}

.flex-item__r310{
    width: 310px;
}

.title-blue-underline{
    position: relative;
}

.title-blue-underline:after{
    position: absolute;
    content:"";
    left:0;
    bottom: -10px;
    display: inline-block;
    width: 70px;
    height: 5px;
    background:#0864b2;

}

.flex-wrap__l500-r500{
    display: flex;
    flex-wrap: wrap;
}

.flex-item__l500{
    width: 500px;
}

.flex-item__r500{
    width: 500px;
}

.flex-wrap__l500-r500 img{
    margin-right: 1px;
    margin-bottom: 1px;
}

.table-style01{
    width: 100%;
    border-right: 1px solid #b5b5b5;
    border-top: 1px solid #b5b5b5;
}

.table-style01 th,
.table-style01 td{
    border-left: 1px solid #b5b5b5;
    border-bottom: 1px solid #b5b5b5;
    height: 50px;
}

table.scroll{
    width: 100%;
    table-layout: inherit;
    white-space: inherit;
}

.table-style01 th{
    background: #f6f8fb;
}
.table-style01 th.w27{
    width: calc( 27% - 3px/4 );
}

.table-style01 th.w32{
    width: calc( 32% - 3px/4 );
}

.table-style01 th.w12{
    width: calc( 12% - 3px/4 );
}

@media screen and (max-width: 768px) {
    .table-style01 td{
        padding-right: 20px;
        padding-left: 20px;
    }

    .table-style01 th{
        padding-right: 20px;
        padding-left: 20px;
    }


}

.w65{
    width: 65px;
}

.product-list-01 span{
    display: inline-block;
}

.product__item-box{
    height: 155px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product__item-box-img{
    margin-right: 30px;
    display: flex;
    align-items: center;
}

@media screen and (max-width: 768px) {

    .products-img-wrap{
        width: 80%;
        padding-right: 0;
        margin: 0 auto;
    }

    .products-txt-wrap{
        width: 100%;
        margin-bottom: 30px;
    }

    .products-img-wrap img{
        max-width: 100%;
    }

    .square__back-line{
        justify-content: center;
    }

    .square__back-line span{
        width: 120px;
        height: 30px;
        font-size: 1.2rem;
        line-height: 26px;
    }
    .products__icon-yoto-wrap {
        width: 100%;
    }
    .products__icon-yoto-wrap div img{
        max-width: 80%;
    }
    .products__icon-yoto-wrap p{
        font-size: 1.0rem;
    }

    .link__catalogue-download{
        font-size: 1.2rem;
    }

    .title-blue-underline:after{
        bottom: -5px;
        width: 40px;
        height: 3px;
    }

    .flex-wrap__l690-r310 {
        margin-bottom: 40px;
    }

    .flex-item__l690{
        width: 100%;
    }
    .flex-item__r310{
        width: 80%;
        margin: 20px auto;
        text-align: center;
    }
    .flex-item__r310 img{
        max-width: 100%;
    }

    .flex-item__l500{
        width: 100%;
        margin-bottom: 20px;
    }
    .flex-item__l500 img{
        max-width: 100%;
    }
    .flex-item__r500{
        width: 100%;
    }
    .flex-item__r500 img{
        width: calc(33.3333% - 2px/3);
    }

    .flex-item__r500 img:nth-child(3n){
        margin-right: 0;
    }
    table.scroll{
        overflow-x: scroll;
        white-space: nowrap;
        display: block;
        -webkit-overflow-scrolling: touch;
    }

    .product__item-box{
        height: auto;
        padding: 20px;
    }

    .product__item-box-img{
        width: 22%;
        margin-right: 0;
    }
    .product__item-box-img img{
        max-width: 90%;
    }
    .product__item-box-txt{
        width: 78%;
    }
}*/

/*products-01*/

/*.product-category-list{
    margin-bottom: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-category-list li{
    border-left: 1px solid #000;
}

.product-category-list li:last-child{
    border-right: 1px solid #000;
}


.product-category-list li a{
    width: 250px;
    display: inline-block;
    height: 45px;
    line-height: 43px;
    text-align: center;
    font-size: 1.6rem;
}

.product-tasha-machine-wrap{
    display: flex;
    flex-wrap: wrap;
}
.product-tasha-machine-item{
    width: calc(33.3333% - 40px/3);
    margin-right: 20px;
    margin-bottom: 40px;
}

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

.product-tasha-machine-item div{
    text-align: center;
    height: 200px;
}

.bk-blue{
    background:#0864b2;
    padding:5px 10px;
    color: #fff;
}



@media screen and (max-width: 768px) {

    .product-category-list{
        margin:0 auto 80px;
        width: 80%;
    }

    .product-category-list li{
        width: 50%;
    }

    .product-category-list li a{
        width: 100%;
        height: 25px;
        line-height: 25px;
        font-size: 1.4rem;
    }

    .product-tasha-machine-item{
        width: 50%;
        margin-right: 0;
    }

    .product-tasha-machine-item div{
        height: 100px;
    }

    .product-tasha-machine-item div img{
        max-width: 80%;
        max-height: 80%;
    }

    .bk-blue{
        font-size: 1.0rem;
        padding:3px;
    }

}*/


/*company*/

/*.mainvisual-company {
    background-image: url(../img/mainvisual-company.jpg);
    background-size: cover;
    background-position: center;
}

.dotted-list{
    border-top: 1px dashed #000;
    padding: 20px 0;
    display: flex;
    flex-wrap: wrap;
}

.dotted-list:last-child{
    border-bottom: 1px dashed #000;
}

.company-gaiyo-list dt{
    width: 250px;
}

.company-gaiyo-list dd{
    width: calc(100% - 250px);
}

.company-enkaku-list dt{
    width: 150px;
}

.company-enkaku-list dd{
    width: calc(100% - 150px);
}

@media screen and (max-width: 768px) {

    .kokoroe-img{
        width: 90%;
        margin:0 auto;
    }

    .kokoroe-img img{
        max-width: 100%;
    }

    .dotted-list{
        padding: 10px 0;
    }

    .company-gaiyo-list dt{
        width: 100%;
        margin-bottom: 5px;
    }

    .company-gaiyo-list dd{
        width: 100%;
    }

    .company-enkaku-list dt{
        width: 100%;
        margin-bottom: 5px;
    }
    
    .company-enkaku-list dd{
        width: 100%;
    }

    .section-map iframe.h380sp{
        height: 380px !important;
    }
}*/

/*office*/

/*.office-list dt{
    width: calc(100% - 100px);
}

.office-list dd{
    width: 100px;
    display: flex;
    align-items: center;
    justify-content: end;
}

.office__mail{
    margin-right: 20px;
}

.office__mail img,
.office__map img{
        width: 35px;
        height: auto;
    }

@media screen and (max-width: 768px) {
    .office-list dt,
    .office-list dd{
        width: 100%;
    }

    .office-list dd{
        justify-content: center;
        margin-top:10px;
    }

    .office__mail img,
    .office__map img{
        width: 47px;
        height: auto;
    }

    .office__mail{
        margin-right: 40px;
    }

}*/

/*client*/

/*.client-wrap{
    border-bottom: 1px dashed #000;
    border-top: 1px dashed #000;
    padding: 30px 0 40px;
}

.client-list{
    display: flex;
    flex-wrap: wrap;
}

.client-list li{
    width: 50%;
    margin-bottom: 20px;
    font-size: 1.8rem;
}

@media screen and (max-width: 768px) {

    .client-wrap{
        padding: 20px 0;
    }

    .client-list li{
        width: 100%;
        margin-bottom: 5px;
        font-size: 1.6rem;
    }
}*/

/*info*/

/*.mainvisual-info {
    background-image: url(../img/mainvisual-info.jpg);
    background-size: cover;
    background-position: center;
}

.info-wrap{
    border-bottom: 1px dashed #000;
    border-top: 1px dashed #000;
    padding: 30px 0 40px;
}


.mainvisual-info {
    background-image: url(../img/mainvisual-info.jpg);
    background-size: cover;
    background-position: center;
}

.info-detail-wrap{
    border-bottom: 1px dashed #000;
    border-top: 1px dashed #000;
    padding: 30px 0 10px;
}


@media screen and (max-width: 768px) {

    .info-wrap{
        padding: 20px 0;
    }
    .info-detail-wrap{
        padding: 20px 0 5px;
    }
}


.info-title{
    margin: 40px 0 70px 0;
    font-size: 1.8rem;
    text-align: center;
}

.info-content{
    margin-bottom: 50px;
}

.info-content p{
    font-size: 1.6rem;
    line-height: 2;
    margin-bottom: 1.5em;
}

.news-detail-list{
    padding: 0;
    justify-content: flex-end;
}

.news-detail-list dt{
    width: auto;
}

@media screen and (max-width: 768px) {

    .info-title{
        margin: 20px 0 30px;
    }


}*/

/*contact*/

/*.mainvisual-contact {
    background-image: url(../img/mainvisual-contact.jpg);
    background-size: cover;
    background-position: center;
}

.contact-list01.first{
    border-top: 1px dashed #000;

}

.contact-list01{
    border-bottom: 1px dashed #000;
    display: flex;
    flex-wrap: wrap;
    padding: 30px 0 40px;
}

.contact-list01 dt{
    font-size: 1.4rem;
    font-weight:bold;
    width: 190px;
    margin-top: 7px;
}

.contact-list01 dd{
    width: calc(100% - 190px);
}

@media screen and (max-width: 768px) {

    .contact-list01{
        padding: 15px 0 25px;
    }

    .contact-list01 dt{
        font-size: 1.2rem;
        margin-bottom:5px;
        width: 100%;
    }
    .contact-list01 dd{
        width: 100%;
    }
}


.blue-link-button {
    color: #fff;
    font-size: 2.0rem;
    font-weight: 800;
    display: inline-block;
    width: 300px;
    text-align: center;
    padding: 0.4em 2em;
    cursor: pointer;
    border-radius: 5px;
    background-color: #0864b2;
}


input[type=submit].blue-link-button{
    border: 1px solid #0864b2;
    border-radius: 5px;
}

input[type=submit].blue-link-button:hover{
    opacity: .8;
    -webkit-transition: all .3s;
    transition: all .3s;
}

*/


/*privacy*/

/*mainvisual-privacy {
    background-image: url(../img/mainvisual-privacy.jpg);
    background-size: cover;
    background-position: center;
}

.privacy-wrap{ 
    border-top: 1px dashed #000;
    padding: 40px 0;
}

.privacy-wrap.last{
    border-bottom: 1px dashed #000;
}

.box__p30{
    padding: 30px;
}



@media screen and (max-width: 768px) {

    .privacy-wrap{
        padding: 20px 0 15px;
    }
}*/

/*sitemap*/

/*.sitemap-list li{
    text-indent: 10px;
    padding:10px 0;
}

.sitemap-list > li > a{
    display: block; 
		color:#555555 !important;
		padding:3px 0;
		font-size:1.8rem;
		text-decoration: none;
}

.sitemap-list > li > ul > li > a{
    display: block; 
    color:#555555 !important;
    padding:3px 0 3px 20px;
    font-size:1.8rem;
    text-decoration: none;
}

.sitemap-arrow:before{
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    background-image: url(../img/spnavi-arrow.png);
    background-size: contain;
    margin-right:5px;
}




@media screen and (max-width: 768px) {

    .sitemap-list li{
        padding:5px 0;
    }
    .sitemap-list > li > a{
        font-size:1.6rem;
    }
    .sitemap-list > li > ul > li > a{
        font-size:1.6rem;
    }
}*/



/*共通要素*/


/*共通　flexboxタグ
-----------------------------------------------------------*/

.flex{
    display: flex;
    flex-wrap: wrap;
}
.flexb{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.flexc{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}



@media screen and (max-width: 768px) {
    .blocksp{
        display: block;
    }
    .flex-dir_column_reverse-sp{
        flex-direction: column-reverse;
    }
}




/*背景
-----------------------------------------------------------*/
.bk-gray{
    /*background-color: #f6f8fb;*/
    background-image: url(../img/bk-gray-img.jpg);
}

.bk-yelllow{
    background-image: url(../img/bk-yellow-img.jpg);
}

/*a
-----------------------------------------------------------*/

a:hover{
    opacity: .8;
}

/*zoom in
-----------------------------------------------------------*/

.zoomIn img{
    transform: scale(1);
    transition: .3s ease-in-out;/*移り変わる速さを変更したい場合はこの数値を変更*/
  }

  .zoomIn a:hover{
    opacity: 1;
  }
  
  .zoomIn a:hover img{/*hoverした時の変化*/
    transform: scale(1.1);/*拡大の値を変更したい場合はこの数値を変更*/
    
  }
  
  /*　画像のマスク　*/
  
  .mask{
      display: block;
      line-height: 0;/*行の高さを0にする*/
      overflow: hidden;/*拡大してはみ出る要素を隠す*/
  }

/*その他装飾
-----------------------------------------------------------*/

.line-dashed{
    border-bottom: 1px dashed #000;
}

.line-dashed-top{
    border-top: 1px dashed #000;
}



.arrow-black-right::after{
    content: '';
    display: inline-block;
    width: 10px;
    height: 12px;
    background-image: url(../img/icon_arrow-black-right.png);
    background-size: contain;
    vertical-align: middle;
    margin-left: 7px;
}

.arrow-black-left::before{
    content: '';
    display: inline-block;
    width: 10px;
    height: 12px;
    background-image: url(../img/icon_arrow-black-right.png);
    background-size: contain;
    /*vertical-align: middle;*/
    margin-right: 7px;
}

.arrow-white-left::before{
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    background-image: url(../img/icon_arrow-white-right.png);
    background-size: contain;
    margin-right: 7px;
}

.button__simple-square{
    background: transparent;
    border: 1px solid rgba(0,0,0,.2);
    display: flex;
    justify-content: center;
    align-items: center;   
    font-size: 1.4rem;
    width: 300px;
    height: 50px;
}

@media screen and (max-width: 768px) {

    .button__simple-square{
        width: 230px;
        height: 35px;
    }

}


/*フェードイン
-----------------------------------------------------------*/

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeUpTrigger{
    opacity: 0;
}

/* 下から */

.fadeUp{
    animation-name:fadeUpAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:0;
    }
    
@keyframes fadeUpAnime{
    from {
    opacity: 0;
    transform: translateY(100px);
    }

    to {
    opacity: 1;
    transform: translateY(0);
    }
}

/* 右から */

.fadeRight{
    animation-name:fadeRightAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:0;
    }
    
@keyframes fadeRightAnime{
    from {
    opacity: 0;
    transform: translateX(100px);
    }

    to {
    opacity: 1;
    transform: translateX(0);
    }
}

/*text
-----------------------------------------------------------*/

.bold{
	font-weight: bold;
}

.txtcenter{
	text-align: center;
}

.txtright{
	text-align: right;
}

.txtjustify{
	text-align: justify;
}

.txtOrange{
    color: #ea5413;
}

.txtBlue{
    color: var(--primary-blue-color);
}

.txtRed{
    color: #ff0000;
}

.txtWhite{
    color: #fff;
}

.underline {
    text-decoration: underline;
    text-underline-position: under;
}

.title-mincho{
    font-family: 'Noto Serif JP', serif;
    font-size: 3.0rem;
}

@media screen and (max-width: 768px) {
    .title-mincho{
        font-size: 2.4rem;
    }
    .txtleftsp{
        text-align: left;
    }
}

.blue-subtitle{
    font-size: 1.4rem;
    color: #0864b2;
}

@media screen and (max-width: 768px) {
    .blue-subtitle{
        font-size: 1.2rem;
    }
}

/*font
-----------------------------------------------------------*/

.fz12{
	font-size: 1.2rem;
}

.fz14{
	font-size: 1.4rem;
}

.fz16{
	font-size: 1.6rem;
}

.fz18{
	font-size: 1.8rem;
}

.fz20{
	font-size: 2.0rem;
}

.fz22{
	font-size: 2.2rem;
}

.fz24{
	font-size: 2.4rem;
}

.fz26{
	font-size: 2.6rem;
}
.fz28{
	font-size: 2.8rem;
}

.fz30{
	font-size: 3.0rem;
}

.fz35{
	font-size: 3.5rem;
}

.fz36{
	font-size: 3.6rem;
}

.fz40{
	font-size: 4.0rem;
}

.fz48{
	font-size: 4.8rem;
}

.fz50{
	font-size: 5.0rem;
}

.fw700{
    font-weight: 700;
}

.fw400{
    font-weight: 400;
}

.fw500{
    font-weight: 500;
}
.fw600{
    font-weight: 600;
}
.fw700{
    font-weight: 700;
}


.lsplus10{
	letter-spacing: 1px;
}

.lsminus05{
	letter-spacing: -.5px;
}

.lsminus10{
	letter-spacing: -1px;
}

.lsminus15{
	letter-spacing: -1.5px;
}

.lsminus18{
	letter-spacing: -1.8px;
}

.lsminus20{
	letter-spacing: -2px;
}

.lsminus50{
	letter-spacing: -5px;
}

.lsplus15{
	letter-spacing: 1.5px;
}

.lh10{
	line-height: 1.0;
}

.lh12{
	line-height: 1.2;
}

.lh14{
	line-height: 1.4;
}

.lh18{
	line-height: 1.8;
}

.lh20{
	line-height: 2.0;
}
.lh225{
	line-height: 2.25;
}
.lh25{
	line-height: 2.5;
}
.lh30{
	line-height: 3.0;
}

@media screen and (max-width: 768px) {

    .fz10sp{
        font-size: 1.0rem;
    }
    .fz12sp{
		font-size: 1.2rem;
	}
	.fz14sp{
		font-size: 1.4rem;
	}
	.fz15sp{
		font-size: 1.5rem;
	}
	.fz16sp{
		font-size: 1.6rem;
	}
	.fz18sp{
		font-size: 1.8rem;
	}
    .fz20sp{
        font-size: 2.0rem;
    }
	.fz22sp{
		font-size: 2.2rem;
	}
	.fz24sp{
		font-size: 2.4rem;
	}
	.fz28sp{
		font-size: 2.8rem;
	}
	.fz30sp{
		font-size: 3.0rem;
	}
    .fz36sp{
		font-size: 3.6rem;
	}
	.lh14sp{
		line-height: 1.4;
	}
	.lh16sp{
		line-height: 1.6;
	}
    .lsminus20sp{
		letter-spacing: -2.0px;
	}
	.lsminus15sp{
		letter-spacing: -1.5px;
	}
	.lsminus10sp{
		letter-spacing: -1px;
	}

}


/*mt mb 調整タグ
-----------------------------------------------------------*/

.mt10{
    margin-top:10px;
}
.mt15{
    margin-top:15px;
}
.mt20{
    margin-top:20px;
}
.mt30{
    margin-top:30px;
}
.mt40{
    margin-top:40px;
}
.mt50{
    margin-top:50px;
}
.mt60{
    margin-top:60px;
}
.mt80{
    margin-top:80px;
}
.mt100{
    margin-top:100px;
}
.mb5{
    margin-bottom:5px;
}
.mb10{
    margin-bottom:10px;
}
.mb15{
    margin-bottom:15px;
}
.mb20{
    margin-bottom: 20px;
}
.mb30{
    margin-bottom: 30px;
}
.mb40{
    margin-bottom: 40px;
}
.mb50{
    margin-bottom:50px;
}
.mb60{
    margin-bottom:60px;
}
.mb70{
    margin-bottom: 70px;
}
.mb80{
    margin-bottom: 80px;
}
.mb100{
    margin-bottom: 100px;
}
.mb120{
    margin-bottom: 120px;
}
.mb130{
    margin-bottom: 130px;
}
.mb150{
    margin-bottom: 150px;
}
.mb160{
    margin-bottom: 160px;
}
.mb200{
    margin-bottom: 200px;
}
.mb250{
    margin-bottom: 250px;
}


.ml0{
    margin-left:0;
}
.ml10{
    margin-left: 10px;
}
.ml20{
    margin-left: 20px;
}
.ml30{
	margin-left: 30px;
}
.ml40{
	margin-left: 40px;
}
.ml50{
    margin-left: 50px;
}

.mr10{
    margin-right: 10px;
}
.mr20{
    margin-right: 20px;
}
.mr30{
    margin-right: 30px;
}
.pt25{
    padding-top: 25px;
}
.pt40{
    padding-top: 40px;
}
.pt50{
    padding-top: 50px;
}
.pt60{
    padding-top: 60px;
}
.pt70{
    padding-top: 70px;
}
.pt80{
    padding-top: 80px;
}
.pt100{
    padding-top: 100px;
}

.pt150{
    padding-top: 150px;
}
.pb10{
    padding-bottom: 10px;
}
.wrapppb20{
    padding-bottom: 20px;
}
.pb20{
    padding-bottom: 20px;
}
.pb25{
    padding-bottom: 25px;
}
.pb30{
    padding-bottom: 30px;
}
.pb40{
    padding-bottom: 40px;
}
.pb50{
    padding-bottom: 50px;
}
.pb60{
    padding-bottom: 60px;
}
.pb80{
    padding-bottom: 80px;
}
.pb90{
    padding-bottom: 90px;
}
.pb100{
    padding-bottom: 100px;
}
.pb120{
    padding-bottom: 120px;
}
.pb130{
    padding-bottom: 130px;
}
.pb150{
    padding-bottom: 150px;
}

.pl5{
    padding-left: 5px;
}

.pl10{
    padding-left: 10px;
}

.pl30{
    padding-left: 30px;
}

.pl20{
    padding-left: 20px;
}
.pl50{
    padding-left:50px;
}
.pl60{
    padding-left:60px;
}
.pl70{
    padding-left:70px;
}
.pl25{
    padding-left: 25px;
}

.pl110{
    padding-left: 110px;
}

.pr30{
    padding-right: 30px;
}
.pr70{
    padding-right: 70px;
}


@media screen and (max-width: 768px) {

    /*margin*/
    .mt15{
        margin-top:10px;
    }
    .mt30{
        margin-top:15px;
    }
    .mt40{
        margin-top:20px;
    }
    .mt50{
        margin-top:25px;
    }
    .mt60{
        margin-top:30px;
    }
    .mt80{
        margin-top:40px;
    }
    .mt100{
        margin-top:50px;
    }
    .mb10{
        margin-bottom:5px;
    }
    .mb15{
        margin-bottom:10px;
    }
    .mb20{
        margin-bottom: 10px;
    }
    .mb30{
        margin-bottom: 15px;
    }
    .mb40{
        margin-bottom: 20px;
    }
    .mb50{
        margin-bottom:25px;
    }
    .mb60{
        margin-bottom:30px;
    }
    .mb70{
        margin-bottom: 35px;
    }
    .mb80{
        margin-bottom: 40px;
    }
    .mb100{
        margin-bottom: 50px;
    }
    .mb120{
        margin-bottom: 60px;
    }
    .mb130{
        margin-bottom: 65px;
    }
    .mb150{
        margin-bottom: 75px;
    }
    .mb160{
        margin-bottom: 80px;
    }
    .mb200{
        margin-bottom: 100px;
    }
    .mb250{
        margin-bottom: 125px;
    }
    
    /*sp調整タグ*/
    .mb05sp{
        margin-bottom: 5px;
    }
    .mb10sp{
        margin-bottom: 10px;
    }
    .mb25sp{
        margin-bottom: 25px;
    }
    .mb50sp{
        margin-bottom: 50px;
    }
    .mt30sp{
        margin-top: 30px;
    }
    .mt60sp{
        margin-top: 60px;
    }
    .minwidth90{
        min-width: 90px;
    }

    /*padding*/
    
    .pt25{
        padding-top: 15px;
    }
    .pt40{
        padding-top: 20px;
    }
    .pt50{
        padding-top: 25px;
    }
    .pt60{
        padding-top: 30px;
    }
    .pt70{
        padding-top: 35px;
    }
    .pt80{
        padding-top: 40px;
    }
    .pt100{
        padding-top: 50px;
    }
    .pt150{
        padding-top: 75px;
    }
    .pb20{
        padding-bottom: 10px;
    }
    .pb25{
        padding-bottom: 13px;
    }
    .pb30{
        padding-bottom: 15px;
    }
    .pb40{
        padding-bottom: 20px;
    }
    .pb50{
        padding-bottom: 25px;
    }
    .pb60{
        padding-bottom: 30px;
    }
    .pb80{
        padding-bottom: 40px;
    }
    .pb90{
        padding-bottom: 45px;
    }
    .pb100{
        padding-bottom: 50px;
    }
    .pb120{
        padding-bottom: 60px;
    }
    .pb130{
        padding-bottom: 75px;
    }

    .pb150{
        padding-bottom: 75px;
    }

    /*sp調整タグ*/

    .pt25sp{
        padding-top: 25px;
    }
    .pb25sp{
        padding-bottom: 25px;
    }
    .pl30{
        padding-left: 15px;
    }
    .pr30{
        padding-right: 15px;
    }
    .pl20sp{
        padding-left: 20px;
    }
    
    /*marigin-left sp調整*/
    .ml0sp{
        margin-left:0;
    }
    .pl0sp{
        padding-left: 0;
    }

    /*width sp100%*/
    .w100sp{
        width: 100%;
        height: auto;
    }
}





/*スマホメニュー
-----------------------------------------------------------------*/

@media screen and (min-width: 769px) {

#spnavi > ul > li{
    margin: 0 auto;
    text-indent:10px;
    padding: 10px 0;
    width: 33%;
}

#spnavi > ul > li > a{
    display: block; 
    color:#555555 !important;
    padding:3px 0;
    text-decoration: none;
    font-size: 1.2vw;
}
}

@media screen and (max-width: 1000px) {
    #spnavi > ul > li{
        margin: 0 auto;
        text-indent:10px;
        padding: 10px 0;
        width: 50%;
    }

    #spnavi > ul > li > a{
        display: block; 
        color:#555555 !important;
        padding:3px 0;
        text-decoration: none;
        font-size: 1.8vw;
    }
}

/*@media screen and (max-width: 768px) {*/
@media screen and (min-width: 769px) {
	#spnavi{
		display: none;
		position: absolute;
		top:0;
		width: 100%;
		background: #fff;
		left: 0;
		z-index:90;
        padding: 5px 0 30px;
	}
	#spnavi > ul{
		display: block;
		margin: 0 auto;
		width: 90%;
        display: flex;
        flex-wrap:wrap;
        max-width: 1100px;
	}

	
	
	#spnavi > ul > li:first-child{
		/*border-top: 1px solid #525252;*/
	}
	
	

    #spnavi > ul > li > ul > li > a{
		display: block; 
		color:#555555 !important;
		text-decoration: none;
        font-size: 1.6vw;
        padding: 3px 0 3px 10px;
	}

	#spnavi > ul li a:hover{
		text-decoration:none;
		opacity:.7;
	}

    #spnavi h1 > a > img{
        width: auto;
        height: auto;
    }

    #spnavi .header-telno{
        width: 50%;
        text-align: center;
        font-size: 2vw;
     }
	
	/*開閉ボタン*/
	#nav_toggle {
        display: block;
        width: 90%;
        /*20240726修正*/
        /*max-width: 1100px;*/
        height: 16px;
        position: absolute;
        top: 53px;
        z-index: 100;
        text-align: center;
       /* left: 50%;*//*20240930修正*/
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
       /*20240930追記*/
          width: 33px;
          right: 5%;

    }
    
    #nav_toggle > div {
        width: 33px;
        height: 16px;
        margin: 0 5px 0 auto;
    }

    #nav_toggle div {
		position: relative;
	}
	#nav_toggle span{
		display: block;
		height: 2px;
		background: #fff;
		position:absolute;
		width: 100%;
		right: 0;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;	
	}

    .top-page #nav_toggle span{
        background: var(--primary-blue-color);
    }
	#nav_toggle span:nth-child(1){
		top:0px;
	}
	#nav_toggle span:nth-child(2){
		top:6px;
        display: none;    
	}
	#nav_toggle span:nth-child(3){
		top:6px;
        width: 27px;
	}
	
	/*#nav_toggle p.togglemenu{
		background:none;
		color:#ed6103;
		font-size:8px;
		padding-top:19px;
	}*/
	
	/*開閉ボタンopen時*/
	.open #nav_toggle span:nth-child(1) {
			top: 8px;
		   -webkit-transform: rotate(135deg);
			-moz-transform: rotate(135deg);
			transform: rotate(135deg);
            background: var(--primary-blue-color);;
            width: 25px;
		}
		.open #nav_toggle span:nth-child(2) {
			width: 0;
			left: 50%;
		}
		.open #nav_toggle span:nth-child(3) {
			top: 8px;
			-webkit-transform: rotate(-135deg);
			-moz-transform: rotate(-135deg);
			transform: rotate(-135deg);
            background: var(--primary-blue-color);;
            width: 25px;
		}
	
	.header-companylogo_sp{
		position:absolute; 
		top:20px;
		left:10px;
		z-index:99;
		/*top:-27px; 
		right:-10px;*/
	}

    .spnavi-arrow:before{
        content: '';/*何も入れない*/
        display: inline-block;/*忘れずに！*/
        width: 10px;/*画像の幅*/
        height: 10px;/*画像の高さ*/
        background-image: url(../img/spnavi-arrow.png);
        background-size: contain;
        vertical-align: middle;
        margin-right:10px;
        background-repeat: no-repeat;
    }
    #spnavi .header-contact{
         width: 60%;
         margin: 10px auto;
     }
}

@media screen and (max-width: 768px) {
    #spnavi{
		display: none;
		position: absolute;
		top:0;
		width: 100%;
		background: #fff;
		left: 0;
		z-index: 90;
        padding: 10px 0 30px;
	}
	#spnavi > ul{
		display: block;
		margin: 0 auto;
		width: 95%;
	}
	#spnavi > ul > li{
		margin: 0 auto;
		text-indent:10px;
		/*border-bottom: 1px solid #525252;*/
        padding: 5px 0;
        width: 100%;
	}
	
	#spnavi > ul > li:first-child{
		/*border-top: 1px solid #525252;*/
	}
	
	#spnavi > ul > li > a{
		display: block; 
		color:#555555 !important;
		padding:3px 0;
		font-size:1.4rem;
		text-decoration: none;
	}

    #spnavi > ul > li > ul > li > a{
		display: block; 
		color:#555555 !important;
		padding:3px 0 3px 20px;
		font-size:1.4rem;
		text-decoration: none;
	}

	#spnavi > ul li a:hover{
		text-decoration:none;
		opacity:.7;
	}

    #spnavi h1 > a > img{
        width: 170px;
        height: auto;
    }

    #spnavi .wrapper750{
        width:90%;
        max-width: 750px;
        margin:0 auto;
    }

    #spnavi .header-section-wrapper{
        /*justify-content: center;*/
    }

    .spnavi-item{
        padding-right:10px;
        margin: 20px 0;
        width: 50%;
    }

    .spnavi-item-img{
        width: 40px;
        padding-right: 10px;
        padding-top: 5px;
    }

    .spnavi-item-img-w70{
        width: 40px;
    }    

    .spnavi-item-txt-title{
        font-size: 2.0rem;
        font-family: 'Noto Serif JP', serif;
        font-weight: 600;
    }

    .spnavi-item-txt-subtitle{
        font-family: 'Noto Serif JP', serif;
        font-size: 1.6rem;
    }

    /*開閉ボタン*/
    #nav_toggle{
        display: block;
        width: 25px;
        height:16px;
        position:absolute;
        top: 47px;
        right: 25px;
        z-index: 100;
        text-align: center;
        
    }
    #nav_toggle div {
        position: relative;
    }
    #nav_toggle > div {
        width: 33px;
        height: 16px;
        margin: 0 5px 0 auto;
    }

    #nav_toggle span{
		display: block;
		height: 2px;
		background: #fff;
		position:absolute;
		width: 100%;
		right: 0;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;	
	}

    .top-page #nav_toggle span{
        background: var(--primary-blue-color);
    }
	#nav_toggle span:nth-child(1){
		top:0px;
	}
	#nav_toggle span:nth-child(2){
		top:6px;
        display: none;    
	}
	#nav_toggle span:nth-child(3){
		top:6px;
        width: 27px;
	}
	
	/*#nav_toggle p.togglemenu{
		background:none;
		color:#ed6103;
		font-size:8px;
		padding-top:19px;
	}*/
	
	/*開閉ボタンopen時*/
	.open #nav_toggle span:nth-child(1) {
			top: 8px;
		   -webkit-transform: rotate(135deg);
			-moz-transform: rotate(135deg);
			transform: rotate(135deg);
            background: var(--primary-blue-color);;
            width: 25px;
		}
		.open #nav_toggle span:nth-child(2) {
			width: 0;
			left: 50%;
		}
		.open #nav_toggle span:nth-child(3) {
			top: 8px;
			-webkit-transform: rotate(-135deg);
			-moz-transform: rotate(-135deg);
			transform: rotate(-135deg);
            background: var(--primary-blue-color);;
            width: 25px;
		}

    .header-companylogo_sp{
        position:absolute; 
        top:20px;
        left:10px;
        z-index:99;
        /*top:-27px; 
        right:-10px;*/
    }

    .spnavi-arrow:before{
        content: '';/*何も入れない*/
        display: inline-block;/*忘れずに！*/
        width: 10px;/*画像の幅*/
        height: 10px;/*画像の高さ*/
        background-image: url(../img/spnavi-arrow.png);
        background-size: contain;
        /*vertical-align: middle;*/
        margin-right:5px;
        background-repeat: no-repeat;
    }
}	


@media screen and (max-width: 600px) {

    #spnavi > ul{
		display: block;
		margin: 0 auto;
		width: 90%;
	}
    #spnavi > ul > li > a {
        font-size: 1.6rem;
    }

    #spnavi > ul > li > ul > li > a {
        font-size: 1.6rem;
        padding:5px 0 5px 20px;
    }

    #spnavi .header-telno{
        font-size:1.8rem;
    }
    #spnavi .header-contact{
        width: 100%;
        margin: 10px auto;
    }

    

}


/*スマホメニュー終わり
-----------------------------------------------------------------*/	


/*pconly sponly切り替え　スマホtel処理
-----------------------------------------------------------*/

@media screen and (min-width: 1200px) {
	.w1200only{
		display: none;
	}
}

@media screen and (max-width: 1200px) {
    .w1200none{
        display: none;
    }
}

@media screen and (max-width: 1200px) {
    .w1200only{
        display: block;
        position:relative;
        z-index: 2;
    }
}

@media screen and (min-width: 769px) {
	.sponly{
		display: none;
	}
}


@media screen and (max-width: 768px) {
    .pconly{
        display: none;
    }
    .sponly{
        display: block;
        position:relative;
        /*z-index: 2;*/
    }
    /*a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }*/

}
