@charset "utf-8";

/* ==================================================
Common CSS
================================================== */

@media(max-width:999px){

/*STYLE*/
.pc {
display:none;
}

.cts {
width:90%;
}

.more_link {
    text-align:right;
}

.more_link .btn {
    display:inline-block;
}

.more_link .btn a .arrow {
    width:9px;
    height:9px;
    border-top:#f57312 1px solid;
    border-right:#f57312 1px solid;
    transform:rotate(45deg);
    margin-right:8px;
}

.more_link .btn a {
    display:flex;
    align-items:center;
}

.more_link .btn a p {
    font-weight:600;
    line-height:100%;
    color:#f57312;
}

.more_btn {
}

.more_btn .btn {
    display:inline-block;
}

.more_btn .btn a {
    display:flex;
    justify-content:center;
    align-items:center;
    background:#f57312;
    width:160px;
    height:45px;
    padding-right:10px;
    position:relative;
}

.more_btn .btn a .arrow {
    width:10px;
    height:10px;
    border-top:#000 1px solid;
    border-right:#000 1px solid;
    transform:rotate(45deg);
    margin-right:8px;
    position:absolute;
    right:10px;
}

.more_btn .btn a p {
    font-weight:700;
    line-height:100%;
    color:#000;
}

.back_btn {
    text-align:center;
    margin-top:20px;
}

.back_btn .btn {
    display:inline-block;
}

.back_btn .btn a {
    display:flex;
    justify-content:center;
    align-items:center;
    border:#f57312 1px solid;
    width:130px;
    height:45px;
    padding-left:10px;
    position:relative;
}

.back_btn .btn a .arrow {
    width:10px;
    height:10px;
    border-bottom:#f57312 1px solid;
    border-left:#f57312 1px solid;
    transform:rotate(45deg);
    margin-left:8px;
    position:absolute;
    left:10px;
}

.back_btn .btn a p {
    font-weight:700;
    line-height:100%;
    color:#f57312;
}






/*-----HEADER-----*/
header {
    width:100%;
    height:55px;
    background:rgba(255,255,255,0.95);
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:0 15px;
    position:fixed;
    top:0;
    left:0;
    z-index:1000;
}

header .logo {
}

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

header .logo a .symbol {
    width:40px;
    margin-right:8px;
}

header .logo a .names {
}

header .logo a .names h1 {
    line-height:100%;
    margin-bottom:3px;
}

header .logo a .names h1 .main {
    font-size:120%;
    font-weight:600;
}

header .logo a .names h1 .co {
    font-size:100%;
}

header .logo a .names .kana {
    font-size:50%;
    line-height:100%;
}



/*-----DEMO-----*/
#demo {
    width:100%;
    margin-top:55px;
}


/*-----MV-----*/
#mv {
    width:100%;
    overflow:hidden;
    margin-top:55px;
    position:relative;
    background:#222;
}

#mv .movie {
}

#mv video{
    width:100%;
    height:auto;
    vertical-align:bottom;
}

#mv .sound {
    width:35px;
    position:absolute;
    right:15px;
    bottom:15px;
    z-index:900;
    cursor:pointer;
}



/*-----TOP COMMON-----*/
.top_title {
    text-align:center;
}

.top_title h2 {
    font-size:300%;
    font-weight:600;
    line-height:100%;
    color:#f57312;
    margin-bottom:5px;
}

.top_title .subtitle {
    text-align:center;
}

.top_title .subtitle p {
    font-size:100%;
    font-weight:600;
    line-height:100%;
    display:inline-block;
    border-top:#f57312 1px solid;
    border-bottom:#f57312 1px solid;
    color:#f57312;
    padding:5px 10px;
}



/*-----TOP TOPICS-----*/
#top_topics {
    padding:50px 0;
}

#top_topics .top_title {
    margin-bottom:30px;
}

#top_topics .cts {
}

#top_topics .top_title {
    width:100%;
}

#top_topics .topics_cts {
    width:100%;
}

#top_topics .topics_cts .topics {
    margin-bottom:10px;
}

#top_topics .topics_cts .topics .topic {
    border-bottom:#f0f0f0 1px solid;
}

#top_topics .topics_cts .topics .topic:first-child {
    border-top:#f0f0f0 1px solid;
}

#top_topics .topics_cts .topics .topic a {
    padding:15px 0;
    display:block;
}

#top_topics .topics_cts .topics .topic a .date_cate {
    width:160px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

#top_topics .topics_cts .topics .topic a .date_cate .date {
    width:90px;
}

#top_topics .topics_cts .topics .topic a .date_cate .cate {
    width:70px;
    background:#0046b4;
    color:#fff;
    font-size:80%;
    font-weight:500;
    text-align:center;
}

#top_topics .topics_cts .topics .topic a .subject {
    width:100%;
}




/*-----TOP COMPANY-----*/
#top_company {
    background:#1e1e1e;
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
}

#top_company .galleries {
    width:100%;
    display:flex;
    position:relative;
}

#top_company .galleries .gallery {
    width:50%;
}

#top_company .galleries .gallery .photos {
    display:flex;
}

#top_company .galleries .gallery .photo_m {
    width:100%;
    height:90vw;
}

#top_company .galleries .gallery .photo_s {
    width:50%;
    height:45vw;
}

#top_company .galleries .gallery .photo_m1 {
    background:url(../img/company_m1.jpg) center;
    background-size:cover;
}

#top_company .galleries .gallery .photo_m2 {
    background:url(../img/company_m2.jpg) center;
    background-size:cover;
}

#top_company .galleries .gallery .photo_s1 {
    background:url(../img/company_s1.jpg) center;
    background-size:cover;
}

#top_company .galleries .gallery .photo_s2 {
    background:url(../img/company_s2.jpg) center;
    background-size:cover;
}

#top_company .galleries .gallery .photo_s3 {
    background:url(../img/company_s3.jpg) center;
    background-size:cover;
}

#top_company .galleries .gallery .photo_s4 {
    background:url(../img/company_s4.jpg) center;
    background-size:cover;
}

#top_company .filter {
    mix-blend-mode:color;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    right:0;
    z-index:1;
    background:#c8beb4;
}

#top_company .copies {
    width:80%;
    background:rgba(0,0,0,0.8);
    position:absolute;
    z-index:2;
    padding:25px 25px;
    text-align:center;
}

#top_company .copies .top_title {
    margin-bottom:30px;
}

#top_company .copies .maincopy {
    font-size:135%;
    font-weight:600;
    line-height:125%;
    color:#fff;
    margin-bottom:30px;
}

#top_company .copies .maincopy:first-letter {
    color:#f57312;
}

#top_company .copies .tx {
    margin-bottom:15px;
}

#top_company .copies .tx p {
    color:#fff;
    text-align:left;
}

#top_company .copies .tx p:last-child {
    margin-bottom:0;
}




/*-----TOP WORKS-----*/
#top_works {
    padding:70px 0;
    background:#1e1e1e url(../img/works_bg.jpg) bottom center;
    background-size:cover;
}

#top_works .top_title {
    margin-bottom:30px;
}

#top_works .cts {
}

#top_works .details {
}

#top_works .details .photos {
    width:100%;
    margin-bottom:30px;
}

#top_works .details .photos .works_slider {
    overflow:hidden;
    position:relative;
}

#top_works .details .photos .photo {
    width:100%;
    height:60vw;
}

#top_works .details .photos .photo1 {
    background:url(../img/works_1.jpg) center;
    background-size:cover;
}

#top_works .details .photos .photo2 {
    background:url(../img/works_2.jpg) center;
    background-size:cover;
}

#top_works .details .photos .photo3 {
    background:url(../img/works_3.jpg) center;
    background-size:cover;
}

#top_works .details .detail {
    width:100%;
}

#top_works .details .detail .explain {
    width:100%;
}

#top_works .details .detail .explain .maincopy {
    font-size:135%;
    font-weight:600;
    line-height:135%;
    color:#fff;
    margin-bottom:10px;
    text-align:center;
}

#top_works .details .detail .explain .tx {
    color:#fff;
    margin-bottom:30px;
}

#top_works .details .detail .explain .graph {
    margin-bottom:50px;
}

#top_works .details .detail .explain .more_btn {
    text-align:center;
}




/*-----TOP RECRUIT-----*/
#top_recruit {
    padding:70px 0 30px;
    background:#f0ebe6;
}

#top_recruit .cts {
}

#top_recruit .top_title {
    margin-bottom:30px;
}

#top_recruit .copies {
    margin-bottom:20px;
}

#top_recruit .copies .maincopy {
    font-size:135%;
    font-weight:600;
    line-height:135%;
    margin-bottom:10px;
    text-align:center;
}

#top_recruit .copies .tx {
}

#top_recruit .menus {
}

#top_recruit .menus .menu {
    width:100%;
    background:#fff;
    padding:25px 25px 25px;
    position:relative;
    margin-bottom:20px;
}

#top_recruit .menus .menu:last-child {
    margin-bottom:0;
}

#top_recruit .menus .menu h3 {
    font-size:200%;
    font-weight:600;
    line-height:135%;
    color:#f57312;
    text-align:center;
}

#top_recruit .menus .menu .kana {
    font-size:100%;
    font-weight:600;
    line-height:135%;
    text-align:center;
    margin-bottom:15px;
}

#top_recruit .menus .menu .photo {
    margin-bottom:15px;
}

#top_recruit .menus .menu .tx {
    font-size:90%;
    margin-bottom:10px;
}

#top_recruit .menus .menu .more_link {
}



/*-----ENGAGE-----*/
#engage {
    padding:50px 0;
    background:#fff;
}

#engage .details {
}

#engage .details .logo {
    width:180px;
    margin:0 auto 20px;
}

#engage .details .detail {
    width:100%;
}



/*-----SNS-----*/
#sns {
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:40px;
}

#sns .youtube {
    width:65px;
    margin-right:30px;
}

#sns .tiktok {
    width:60px;
}



/*-----BANNER-----*/
.youtube_banner {
    width:90%;
    margin:0 auto 30px;
}



/*-----CTA-----*/
#cta {
    background:#1e1e1e;
}

#cta .cts {
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    position:relative;
}

#cta .photos {
    width:100%;
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    position:relative;
}

#cta .photos .photo {
    width:50%;
    height:50vw;
}

#cta .photos .photo1 {
    background:url(../img/contact_1.jpg) center;
    background-size:cover;
}

#cta .photos .photo2 {
    background:url(../img/contact_2.jpg) center;
    background-size:cover;
}

#cta .photos .photo3 {
    background:url(../img/contact_3.jpg) center;
    background-size:cover;
}

#cta .photos .photo4 {
    background:url(../img/contact_4.jpg) center;
    background-size:cover;
}

#cta .photos .filter {
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    right:0;
    z-index:1;
    background:rgba(30,20,10,0.7);
}

#cta .copies {
    width:100%;
    position:absolute;
    z-index:1;
    text-align:center;
}

#cta .copies .cta_title {
    text-align:center;
    margin-bottom:30px;
}

#cta .copies .cta_title h2 {
    font-size:300%;
    font-weight:600;
    line-height:100%;
    color:#f57312;
    margin-bottom:5px;
}

#cta .copies .cta_title .subtitle {
}

#cta .copies .cta_title .subtitle p {
    font-size:100%;
    font-weight:600;
    line-height:100%;
    display:inline-block;
    border-top:#f57312 1px solid;
    border-bottom:#f57312 1px solid;
    color:#f57312;
    padding:7px 15px;
}

#cta .copies .tx {
    color:#fff;
    margin-bottom:30px;
}

#cta .copies .more_btn {
}


/*-----UNDER-----*/
.under {
    margin-top:55px;
    background:#f0ebe6;
}

.under .pagetitles {
    width:90%;
    height:185px;
    margin:auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:relative;
}

.under .pagetitles .bg {
    width:50vw;
    height:100%;
    position:relative;
    margin:0 0 0 auto;
}

.under .pagetitles .bg .filter {
    mix-blend-mode: color;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    right:0;
    z-index:1;
    background:#c8beb4;
}

.under .pagetitles .bg .gra_l {
    width:25vw;
    height:100%;
    background:linear-gradient(to right,rgba(240,235,230,1),rgba(240,235,230,0));
    position:absolute;
    top:0;
    left:0;
    z-index:2;
}

.under .pagetitles .bg .gra_r {
    width:25vw;
    height:100%;
    background:linear-gradient(to right,rgba(240,235,230,0),rgba(240,235,230,1));
    position:absolute;
    top:0;
    right:0;
    z-index:2;
}

.under .pagetitles .pagetitle {
    position:absolute;
    left:0;
    z-index:100;
    padding-bottom:20px;
}

.under .pagetitles .pagetitle h2 {
    font-size:280%;
    font-weight:600;
    line-height:100%;
    color:#f57312;
    margin-bottom:5px;
}

.under .pagetitles .pagetitle .kana {
    font-size:90%;
    font-weight:600;
    line-height:125%;
    color:#f57312;
    display:flex;
    align-items:center;
}

.under .pagetitles .pagetitle .kana:before {
    content:"";
    width:20px;
    height:1px;
    background:#f57312;
    margin-right:10px;
}

.under .pagetitles .bread {
    font-size:60%;
    position:absolute;
    bottom:15px;
    left:0;
    z-index:100;
}

.under .main {
    padding-bottom:50px;
}

.under .main .cts {
    background:#fff;
    padding:25px 25px;
}

.under .cate_title {
    font-weight:600;
    border-top:#f57312 1px solid;
    border-bottom:#f57312 1px solid;
    color:#f57312;
    padding:8px 0;
    margin-bottom:12px;
}



/*----- TOPICS -----*/
#topics_index {
}

#topics_index .pagetitles .bg {
    background:url(../topics/img/pagetitle.jpg) center;
    background-size:cover;
}

#topics_index .category {
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    margin-bottom:30px;
}

#topics_index .category nav {
    width:33%;
    border-left:#f0ebe6 1px solid;
    padding:5px 25px;
    margin-bottom:10px;
}

#topics_index .category nav:nth-child(3n) {
    border-right:#f0ebe6 1px solid;
}

#topics_index .category nav:nth-child(n+4) {
    margin-bottom:0;
}

#topics_index .category nav a {
    display:flex;
    justify-content:center;
    align-items:center;
    line-height:100%;
}

#topics_index .category nav a p {
    font-size:100%;
    font-weight:500;
    line-height:100%;
    letter-spacing:1px;
}

#topics_index .category nav.now a {
    pointer-events:none;
}

#topics_index .category nav.now a p {
    font-weight:600;
    line-height:100%;
    color:#0046b4;
}

#topics_index .category nav.none a {
    pointer-events:none;
    opacity:0.5;
    display:none;
}

#topics_index .topics {
    position:relative;
}

#topics_index .topics .topic {
    border-bottom:#f0f0f0 1px solid;
}

#topics_index .topics .topic:first-child {
    border-top:#f0f0f0 1px solid;
}

#topics_index .topics .topic a {
    display:flex;
    justify-content:space-between;
    padding:25px 0;
}

#topics_index .topics .topic a .date_cate {
    width:160px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

#topics_index .topics .topic a .date_cate .date {
    width:90px;
}

#topics_index .topics .topic a .date_cate .cate {
    width:70px;
    background:#0046b4;
    color:#fff;
    font-size:80%;
    font-weight:500;
    text-align:center;
}

#topics_index .topics .topic a .date_cate .cate p {
    font-size:100%;
    line-height:150%;
    letter-spacing:1px;
    color:#fff;
}

#topics_index .topics .topic a .subject {
    width:calc(100% - 180px);
}

.pagenation {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    margin-top:30px;
}

.pagenation nav {
    line-height:100%;
    border-right:#f0ebe6 1px solid;
    padding:5px 12px;
}

.pagenation nav:last-child {
    border-right:none;
}

.pagenation nav a {
    font-size:90%;
}

.pagenation nav.now a {
    pointer-events:none;
}

.pagenation nav.now a p {
    font-weight:600;
    line-height:100%;
    color:#0046b4;
}

.pagenation nav.none a {
    pointer-events:none;
    opacity:0.3;
}



/*-----TOPICS DETAIL-----*/
#topics_detail {
}

#topics_detail .cts {
}

#topics_detail .pagetitles .bg {
    background:url(../topics/img/pagetitle.jpg) center;
    background-size:cover;
}

#topics_detail article {
    background:#fff;
}

#topics_detail article p {
    color:#000;
}

#topics_detail article .corner {
    text-align:center;
}

#topics_detail article .corner .cate_titles {
    margin-bottom:30px;
}

#topics_detail article .corner .cate_title {
    color:#c8b478;   
}

#topics_detail article h3 {
    font-size:150%;
    font-weight:600;
    line-height:120%;
    color:#000;
    margin-bottom:7px;
}

#topics_detail article .date_cate {
    display:flex;
    align-items:center;
}

#topics_detail article .date_cate .date {
    margin-right:15px;
}

#topics_detail article .date_cate .cate {
    width:70px;
    background:#0046b4;
    color:#fff;
    font-size:70%;
    font-weight:500;
    text-align:center;
}

#topics_detail article .photo {
    margin-top:30px;
}

#topics_detail article .ex {
    margin-top:30px;
}

#topics_detail article .ex p {
    line-height:180%;
}

#topics_detail article .youtube {
    margin:30px auto 0;
    padding-top: 56.25%;
    position:relative;
}

#topics_detail article .youtube iframe {
    position: absolute;
    top:0;
    right:0;
    width:100% !important;
    height:100% !important;
}

#topics_detail article .btns {
    margin-top:30px;
}

#topics_detail article .btns .btn {
    position:relative;
    display:flex;
    align-items:center;
    margin-bottom:15px;
}

#topics_detail article .btns .btn:first-child {
}

#topics_detail article .btns .btn:last-child {
    margin-bottom:0;
}

#topics_detail article .btns .btn .icon {
    width:25px;
    margin-right:10px;
}

#topics_detail article .btns .btn a {
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:relative;
}

#topics_detail article .btns .btn a p {
    font-size:100%;
    font-weight:600;
    color:#f57312;
}

#topics_detail .back_btn {
    text-align:center;
    margin-top:25px;
}

#topics_index .pagetitles .bg {
    background:url(../topics/img/pagetitle.jpg) center;
    background-size:cover;
}


/*-----COMPANY-----*/
#company {
}

#company .pagetitles .bg {
    background:url(../company/img/pagetitle.jpg) center;
    background-size:cover;
}

#company #overview {
    margin-bottom:50px;
}

#company #overview .cate_title {
    margin-bottom:0;
}

#company #overview .companies {
}

#company #overview .companies .company {
    border-bottom:#f0f0f0 1px solid;
    padding:15px 0;
}

#company #overview .companies .company .item {
    width:100%;
    font-weight:600;
}

#company #overview .companies .company .detail {
    width:100%;
}

#company #overview .companies .company .detail p {
    display:flex;
}

#company #office {
}

#company #office .cate_title {
    margin-bottom:0;
}

#company #office .offices {

}

#company #office .offices .office {
    border-bottom:#f0f0f0 1px solid;
    padding:15px 0;
}

#company #office .offices .office .item {
    width:100%;
    font-weight:600;
}

#company #office .offices .office .detail {
    width:100%;
}

#company #office .offices .office .detail .address {

}

#company #office .offices .office .detail .tel {

}

#company #office .offices .office .detail .tax {

}



/*-----WORKS-----*/
#works {
}

#works .pagetitles .bg {
    background:url(../works/img/pagetitle.jpg) center;
    background-size:cover;
}


/*-----RECRUIT-----*/
#recruit {
}

#recruit .pagetitles .bg {
    background:url(../recruit/img/pagetitle.jpg) center;
    background-size:cover;
}



/*-----JOB DESCRIPTION-----*/
#job_description {
}

#job_description .pagetitles .bg {
    background:url(../recruit/job-description/img/pagetitle.jpg) center;
    background-size:cover;
}


/*-----INTERVIEW-----*/
#interview {
}

#interview .pagetitles .bg {
    background:url(../recruit/interview/img/pagetitle.jpg) center;
    background-size:cover;
}


/*-----TRAINING POLICY-----*/
#training_policy {
}

#training_policy .pagetitles .bg {
    background:url(../recruit/training-policy/img/pagetitle.jpg) center;
    background-size:cover;
}




/*-----PRIVACY-----*/
#privacy {
}

#privacy .pagetitles .bg {
    background:url(../privacy/img/pagetitle.jpg) center;
    background-size:cover;
}

#privacy .privacies {

}

#privacy .privacies .privacy {
    border-bottom:#f0f0f0 1px solid;
    padding-bottom:20px;
    margin-bottom:20px;
}

#privacy .privacies .privacy:last-child {
    border-bottom:none;
    padding-bottom:0;
    margin-bottom:0;
}

#privacy .privacies .privacy .privacy_item {
    font-weight:600;
    color:#f57312;
}

#privacy .privacies .privacy li {
    display:flex;
}

#privacy .privacies .privacy li p {
}

#privacy .privacies .privacy .tx {
}




/*-----CONTACT-----*/
#contact {
}

#contact .pagetitles .bg {
    background:url(../contact/img/pagetitle.jpg) center;
    background-size:cover;
}

#contact .intro {
    margin-bottom:30px;
}

#contact .intro h3 {
    font-size:135%;
    font-weight:600;
    line-height:135%;
    color:#f57312;
    text-align:center;
}

#contact .intro .copy {
    margin-top:10px;
}

#contact #contact_tel {
    margin-bottom:50px;
}

#contact #contact_tel h4 {
    font-weight:bold;
    border-top:#f57312 1px solid;
    border-bottom:#f57312 1px solid;
    padding:10px 0;
    color:#f57312;
    margin-bottom:12px;
}

#contact #contact_tel .tel_cts {
}

#contact #contact_tel .item {
    margin-bottom:5px;
}

#contact #contact_tel .tel {
    display:flex;
    align-items:center;
}

#contact #contact_tel img {
    width:25px;
    margin-right:10px;
}

#contact #contact_tel .tel .en {
    font-size:200%;
    font-weight:600;
    line-height:100%;
    color:#f57312;
}

#contact #contact_form {
}

#contact #contact_form h4 {
    font-weight:bold;
    border-top:#f57312 1px solid;
    border-bottom:#f57312 1px solid;
    padding:10px 0;
    color:#f57312;
    margin-bottom:12px;
}

#contact #contact_form .copy {
    margin-bottom:20px;
}

#contact #contact_form .copy .maincopy {
    font-size:150%;
    font-weight:600;
    color:#f57312;
    margin-bottom:10px;
    text-align:center;
}

#contact #contact_form .copy .tx {
}

#contact #contact_form .attention {
    font-size:80%;
    color:#787878;
    margin-top:5px;
}

#contact #contact_form .forms {
    margin-bottom:20px;
}

#contact #contact_form .forms .form {
    border-bottom:#f0f0f0 1px solid;
    padding:15px 0;
}

#contact #contact_form .forms .form:first-child {
    border-top:#f0f0f0 1px solid;
}

#contact #contact_form .forms .form .items {
    width:100%;
    display:flex;
    align-items:center;
    margin-bottom:10px;
}

#contact #contact_form .forms .form .items .item {
    font-weight:600;
    margin-left:8px;
}

#contact #contact_form .forms .form .items .required {
    font-size:70%;
    line-height:100%;
    background:#f57312;
    color:#fff;
    padding:3px 5px 5px;
}

#contact #contact_form .forms .form .items .any {
    font-size:70%;
    line-height:100%;
    background:#c8c8c8;
    color:#fff;
    padding:3px 5px 5px;
}

#contact #contact_form .forms .form .detail {
    width:100%;
}

.forms .form .detail .privacy_policy {
}

.forms .form .detail .privacy_policy .privacies {
    height:250px;
    border:#eee 1px solid;
    padding:20px 25px;
    overflow-y:scroll;
    margin-bottom:15px;
}

.forms .form .detail .privacy_policy .privacies .privacy {
    border-bottom:#f0f0f0 1px solid;
    padding-bottom:10px;
    margin-bottom:10px;
}

.forms .form .detail .privacy_policy .privacies .privacy:last-child {
    border-bottom:none;
    padding-bottom:0;
    margin-bottom:0;
}

.forms .form .detail .privacy_policy .privacies .privacy .privacy_item {
    font-size:80%;
    font-weight:600;
    color:#f57312;
}

.forms .form .detail .privacy_policy .privacies .privacy li {
    display:flex;
}

.forms .form .detail .privacy_policy .privacies .privacy li p {
    font-size:80%;
    color:#787878;
}

.forms .form .detail .privacy_policy .privacies .privacy .tx {
    font-size:80%;
    color:#787878;
}

.forms .form .consent_cap {
    margin-bottom:8px;
}

.forms .form .consent {
    display:flex;
    align-items:center;
}

.forms .form .consent label {
    font-weight:500;
    line-height:100%;
    color:#f57312;
    cursor:pointer;
    padding-left:5px;
    position:relative;
}

.forms .form .consent label:before {
content:"";
width:16px;
height:16px;
border:#f57312 1px solid;
display:inline-block;
position:absolute;
left:-20px;
}

.forms .form .consent label:after {
content:"";
width:10px;
height:15px;
border-right:#f57312 2px solid;
border-bottom:#f57312 2px solid;
display:block;
transform:rotate(45deg);
position:absolute;
top:-4px;
left:-13px;
opacity:0;
}

.forms .form input[type="checkbox"] {
width:20px;
visibility:hidden;
}

.forms .form input[type="checkbox"]:checked + label:after {
opacity:1;
}

.forms .form .detail .warning,
.forms .form .privacy_cts .warning{
font-size:80%;
color:#f57312;
position:relative;
top:7px;
margin-top:20px;
}

form .btns {
display:flex;
justify-content:center;
align-items:center;
}

form .btns .btn {
margin:0 7px;
}

form .btns .btn:hover {
-webkit-animation:hover 0.5s ease forwards;
animation:hover 0.5s ease forwards;
}

input,textarea {
padding:15px 20px;
background:transparent;
border:#e1e1e1 1px solid;
}

.forms .form .style_name {
width:100%;
}

.forms .form .style_kana {
width:100%;
}

.forms .form .style_mail {
width:100%;
}

.forms .form .style_tel {
width:100%;
}

.forms .form .style_detail {
width:100%;
height:200px;
}

.forms .form .style_privacy {
}

.style_submit {
background:transparent;
padding:15px 30px;
font-weight:500;
color:#fff;
background:#f57312;
cursor:pointer;
border:none;
}

#contact .btns .btn .accepted:disabled {
background:#ccc;
color:#fff;
pointer-events:none;
}

.style_submit:focus {
    border:none;
}

.style_fix {
background:transparent;
padding:15px 30px;
font-weight:500;
border:#f57312 1px dotted;
color:#f57312;
cursor:pointer;
box-sizing:border-box;
}

.style_fix:focus {
    border:none;
}


/*-----THANKS-----*/
#contact .thanks {
    padding:20px 0;
}



/*GROBAL*/
#grobal {
}

#grobal .nav_btn {
width:40px;
height:23px;
position:fixed;
top:16px;
right:16px;
display:flex;
justify-content:center;
align-items:center;
z-index:998;
cursor:pointer;
}

#grobal .nav_btn span {
width:100%;
height:2px;
background:#f57312;
position:absolute;
}

#grobal .nav_btn span:first-child {
top:0;
transition:0.5s;
}

#grobal .nav_btn span.show:first-child {
top:11px;
transform:rotate(45deg);
}

#grobal .nav_btn span:nth-child(2) {
transition:0.5s;
}

#grobal .nav_btn span.show:nth-child(2) {
opacity:0;
}

#grobal .nav_btn span:last-child {
bottom:0;
transition:0.5s;
}

#grobal .nav_btn span.show:last-child {
bottom:11px;
transform:rotate(-45deg);
}

#grobal .nav_close {
width:100%;
height:100%;
background:rgba(0,0,0,0.5);
position:fixed;
top:0;
left:0;
display:none;
cursor:pointer;
z-index:999;
}

#grobal .grobal_nav {
width:80vw;
height:100%;
position:fixed;
top:0;
left:0;
background:rgba(0,0,0,0.7);
display:flex;
justify-content:center;
align-items:flex-start;
flex-direction:column;
transform:translate(-100%,0);
transition:0.5s;
z-index:1000;
padding-left:10vw;
}

#grobal .grobal_nav.show {
transform:translate(0,0);
}

#grobal .grobal_nav nav {
    width:60vw;
    padding:15px 0;
}

#grobal .grobal_nav nav a {
color:#fff;
display:flex;
align-items:center;
}

#grobal .grobal_nav nav a .en {
    font-size:150%;
    font-weight:600;
    line-height:100%;
    color:#f57312;
}

#grobal .grobal_nav nav a .jp {
    font-size:70%;
    line-height:100%;
    color:#fff;
    margin-left:10px;
}

#grobal .grobal_nav .cta {
    width:60vw;
}

#grobal .grobal_nav .cta a {
    width:100%;
    height:55px;
    background:#f57312;
    border-radius:30vw;
    display:flex;
    justify-content:center;
    align-items:center;
}

#grobal .grobal_nav .cta a .cta_tx {
}

#grobal .grobal_nav .cta a img {
    width:30px;
    margin-right:10px;
}

#grobal .grobal_nav .cta a .en {
    font-size:135%;
    font-weight:600;
    line-height:100%;
    color:#fff;
    margin-bottom:5px;
}

#grobal .grobal_nav .cta a .jp {
    font-size:70%;
    line-height:100%;
    color:#fff;
}

#grobal .grobal_nav .open_nav {
    position:relative;
    margin-bottom:25px;
}

#grobal .grobal_nav .open_nav nav {
}

#grobal .grobal_nav .navies {
}

#grobal .grobal_nav .navies .navi {
    border-bottom:#3a3a3a 1px solid;
}

#grobal .grobal_nav .navies .navi:first-child {
    border-top:#3a3a3a 1px solid;
}

#grobal .grobal_nav .navies .navi a {
    padding:10px 0;
    display:flex;
    align-items:center;
    position:relative;
}

#grobal .grobal_nav .navies .navi a:after {
    content:"";
    width:6px;
    height:6px;
    border-top:#f57312 1px solid;
    border-right:#f57312 1px solid;
    transform:rotate(45deg);
    position:absolute;
    right:10px;
}

#grobal .grobal_nav .navies .navi a p {
    font-size:90%;
    font-weight:400;
    line-height:135%;
    letter-spacing:1px;
    color:#fff;
}

#grobal .grobal_nav .navies.show {
    display:block;
}



/*BACK TO TOP*/
.BackToTop {
position:fixed;
width:25px;
height:25px;
right:10px;
bottom:0;
z-index:100;
display:none;
}



/*FIXED SNS*/
#fixed_sns {
    position:fixed;
    top:calc(50vh - 55px);
    right:0;
    z-index:999;
}

#fixed_sns .youtube {
    margin-bottom:10px;
    box-shadow:0 0 6px rgba(0,0,0,0.2);
}

#fixed_sns .youtube a {
    width:50px;
    height:50px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:#fff;
}

#fixed_sns .youtube a img {
    width:34px;
}

#fixed_sns .tiktok {
    box-shadow:0 0 6px rgba(0,0,0,0.2);
}

#fixed_sns .tiktok a {
    width:50px;
    height:50px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:#000;
}

#fixed_sns .tiktok a img {
    width:40px;
}


/*FOOTER*/
footer {
    background:#f0ebe6;
    padding:30px 0 20px;
}

footer .details {
    margin-bottom:40px;
}

footer .details .links {
    width:90%;
    margin:auto;
    display:flex;
    justify-content:space-between;
    margin-bottom:40px;
}

footer .details .links .link {
    width:55%;
}

footer .details .links .link:last-child {
    width:45%;
}

footer .details .links .link li {
    line-height:135%;
    margin-bottom:5px;
}

footer .details .links .link li a {
    width:100%;
    display:block;
}

footer .details .links .link li p {
    font-size:90%;
}

footer .details .links .link li:first-child p {
    font-weight:700;
}

footer .details .company {
    text-align:center;
}

footer .details .company .logo {
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:5px;
}

footer .details .company .logo .symbol {
    width:45px;
    margin-right:7px;
}

footer .details .company .logo .en {
    line-height:100%;
}

footer .details .company .logo .main {
    font-size:150%;
    font-weight:600;
}

footer .details .company .logo .co {
    font-size:100%;
}

footer .details .company .kana {
    font-size:90%;
    font-weight:600;
}

footer .details .company .address {
    font-size:80%;
}

footer .copyright {
font-size:60%;
text-align:center;
}




/*----- SWIPER -----*/
/* 前へ次への矢印カスタマイズ */
.swiper-button-prev::after,
.swiper-button-next::after {
    content: "";
    height: 0;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 0;
}
/* 前への矢印カスタマイズ */
.swiper-button-prev::after {
    width:30px;
    height:30px;
    border-left:2px #f57312 solid;
    border-bottom:2px #f57312 solid;
    transform:rotate(45deg);
    left:5px;
}
/* 次への矢印カスタマイズ */
.swiper-button-next::after {
    width:30px;
    height:30px;
    border-top:2px #f57312 solid;
    border-right:2px #f57312 solid;
    transform:rotate(45deg);
    right:5px;
}




}