/* 
** メモ
750px想定
24px = 3.2vw
50px = 6.67vw
100px = 12vw
150px = 18vw
200px = 24vw


*/


html {
    font-size:27px;
    font-size:3.6vw;
    box-sizing: border-box;
}
body {
    line-height:1em;
    margin:0;
}
p , span , h1 , h2 , h3 , h4 , h5 , label {
    color: #000000;
    margin:0;
}
.d-block {
    display: block;
}
.d-flex {
    display: flex;
}
.sp-none {display: none;}
.img-fluid {
    max-width:100%;
}
.wrap {
    position:relative;
    overflow: hidden;
}
.text-center {
    text-align: center!important;
}
.centering {
    position:absolute;
    top:50%;
    left:50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.loading-bg {
    position: fixed;
    background: rgba(255, 255, 255, 1);
    text-align: center;
    z-index: 200000000000;
    display: block;
    pointer-events: none;
    opacity: 1;
    transition: all .5s linear;
    inset: 0;
}
.scroll-up {
    opacity: 0; 
    visibility: hidden;
    transform: translateY(50px);
    transition: all 1s;
}
.scroll-up.is-show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
}


/* SECTION　大きいやつ */
.mainsection__01 {

}

.section-enter__01 {}

.section-about__02 {
    padding-top:20vw;
    padding-bottom:20vw;
    padding-left:6.67vw;
    padding-right:6.67vw;
}

.section-service__02 {
    background-color: #EBECEC;
    padding-top: 13.33vw;
    padding-bottom: 13.33vw;
}
.section-service__desc {
    padding: 13.33vw 6.67vw 17.33vw;
}

.section-company__01 {
    padding-top: 13.33vw;
}
.section-company__02 {

}
.section-company__02_desc {
    padding :20vw 6.67vw 12vw;
}
.section-company__02_table {
    background: #EBECEB;
    padding :20vw 6.67vw 12vw;
}
.section-contact__01 {
    padding-top:20vw;
    padding-left: 6.67vw;
    padding-right: 6.67vw;
    padding-bottom:20vw;
}
.section-policy__01 {
    overflow: hidden;
    padding-top: 13.33vw;
    padding-bottom:26.67vw;
}
.section-policy__02 {
    overflow: hidden;
    padding-top: 20vw;
    padding-left: 6.67vw;
    padding-right:6.67vw;
    padding-bottom:26vw;
}
.section-enter__02 {
    background:url("../img/sp_top_bg.jpg");
    background-position: center;
    background-size: contain;
    padding-top:16.53vw;
    padding-left:6.67vw;
    padding-right:6.67vw;
}
.section-consul__01 {
    padding-top:20vw;
    padding-bottom:20vw;
}

.section-service_content__01 {
    /* あとでここを修正する */
    position:relative;
    background-size: contain;
    background-repeat: no-repeat;
    background-color: #000;
    padding: 13.33vw 6.67vw;
}
.section-service_content__01::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.section-service_content__01.item1 {
    background-image: url("../img/web-sns_sp.png");
}
.section-service_content__01.item2 {
    background-image: url("../img/hp_create_sp.png");
}
.section-service_content__01.item3 {
    background-image: url("../img/fanatic-marketing_sp.png");
}
.section-service_content__01 > div {
    position:relative;
}
.section-about__03 {
    padding :13.33vw 6.67vw;
}
.section-about__03 .about_qa_container:last-child {
    margin-bottom: 0;
}
.section-about_marketing_01 {
    padding-left: 6.67vw;
    padding-right: 6.67vw;
    padding-bottom: 13.33vw;
}
.section-about_reason_01 {
    padding-top: 13.33vw;
}
.section-about_reason_01 .about_reason_point_item:last-child {
    margin-bottom: 0;
}
.section-advice__desc {
    padding:13.33vw 6.67vw;
}
.section-online_meeting_flow__01 {
    padding-left: 6.67vw;
    padding-right: 6.67vw;
    padding-bottom: 0;
}






.min_space {
    font-family: inherit;
    color:inherit;
    font-size: inherit;
    line-height: inherit;
}
.viewmore_btn {
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    position: relative;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:600;
    font-size: 0.864rem;
    text-decoration: none;
    width: 11.1111rem;
    height: 3.703rem;
    border-radius: 1.851rem;
    border: 2px solid #f00019;
    color: #f00019;
    transition: all .2s linear;
}
.viewmore_btn:hover {
    color: #FFF;
    background: #f00019;
}
.viewmore_btn i {
    position: absolute;
    font-size: 0.296rem;
    left:1.6666rem;
}
.c-btn {
    border-radius: 1.851rem;
    color: #f00019;
    display: inline-flex;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:600;
    font-size: 0.864rem;
    text-decoration: none;
    width: 11.1111rem;
    height: 3.703rem;
    position: relative;
    text-align: center;
}

.c-btn__inner {
    align-items: center;
    background-color: #FFF;
    /* border-radius: 1.851rem; */
    border-radius: 2rem;
    border: 2px solid #f00019;
    color: #f00019;
    display: inline-flex;
    height: 100%;
    justify-content: center;
    -webkit-mask-image: -webkit-radial-gradient(#fff,#f00019);
    overflow: hidden;
    position: relative;
    transition: color .2s .2s;
    width: 100%;
    z-index: 1;
    text-decoration: none;
}


.c-btn__circle {
    left:1.6666rem;
}

.c-btn__circle,.c-btn__circle>span {
    display: inline-block;
    height: 5px;
    position: absolute;
    width: 5px
}

.c-btn__circle>span {
    background-color: #f00019;
    border-radius: 50%;
    left: 50%;
    top: 50%;
    transform: translate3d(-50%,-50%,0);
    transition: width .35s cubic-bezier(.87,.24,.36,1),height .35s cubic-bezier(.87,.24,.36,1);
    z-index: 1
}

.c-btn__txt {
    margin-bottom: -1px;
    max-height: 100%;
    position: relative;
    z-index: 2;
    color: inherit;
}




@media (-ms-high-contrast:none),(hover: hover) {
    .c-btn:hover .c-btn__inner {
        color: #FFF
    }

    .c-btn:hover .c-btn__circle>span {
        height: 20rem;
        width: 20rem
    }

}



/* 内容etc */
.enter-logotitle__02 .enter_visual_02{
    display:flex;
    text-align: center;
    justify-content: center;
    margin-top: 2.67vw;
}
.enter-logotitle__02 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: column;
}
.enter-logotitle__02 img{
    width: 80vw!important;
    margin-bottom: 3.07vw;
}
.enter-logotitle__02 h2{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:700;
    color:#C00D23;
    font-size: 9.8vw;
    line-height: 14.67vw;
    padding-left:0;
    text-align: center;

}
.enter-logotitle__02 h2 span{
    font-family: inherit;
    font-weight:inherit;
    color:inherit;
    display: block;
    letter-spacing:calc(-45em / 1000);
}

.enter-logotitle__02 p{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:700;
    color:#040000;
    font-size: 3.73vw;
    line-height: 6.4vw;
    padding-left:0;
}

.about_img_02 {
    max-width: 100%;
    text-align: center;
}
.about_img_02 img{
    width: 86.67vw;
}
.about_title_02 {
    margin-bottom: 45px;
    margin-bottom: 6vw;
}
.about_title_02__h2 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:700;
    font-size: 12.53vw;
    line-height:1em;
    color: #C00D23;
    letter-spacing: -.5vw;
}
.about_title_02__h2 span {
    line-height: 1em;
}
.about_description_02 {
    margin-bottom: 150px;
    margin-bottom: 20vw;
}
.about_description_02__text {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:400;
    font-size:4.53vw;
    line-height:9.07vw;
}
.about_description_02__btn {
    display: flex;
    text-align: center;
    justify-content: center;
    margin-top: 13.33vw;
}
.service_title_02 {
    text-align: center;
    margin-bottom: 12vw;
}
.service_title_02 h2 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:700;
    font-size:12.53vw;
    line-height:1em;
    color: #C00D23;
}
.service_item_02__image {
    max-width: 100%;
    margin-bottom: 2.222rem;
}
.service_item_02__image_inner {
    /* padding-left:7.47vw; */
    /* padding-right:7.47vw; */
}
.service_item_02__image img {
    width: auto!important;
    height: 8.888rem;
    max-width: 100%;
    vertical-align: bottom;
}
.service_item_02__desc {
    padding:0 1.111rem;
}
.service_item_02__descbody{
    font-family: 'Noto Sans JP', sans-serif;
    color: #3C3C3C;
    font-weight:400;
    font-size: 1.05851rem;
    min-height: 7.111rem;
    margin:auto;
    line-height:2.2962rem;
    margin-bottom:2.222rem;
    text-align: left;
    max-width: 20.185rem;
}
.service_item_02__btn {
    text-align:center;
    padding-bottom:10.13vw;
}
.service_item_02__btn .round_btn__03 {
    width :58.67vw;
}


.service_item_02 {
    max-width: 100%;
}
.service_item_02__card {
    background:#FFF;
    max-width: 86.67vw;
    border-radius: 1.429rem;
    overflow: hidden;
    margin:auto;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-direction: column;
}

.service_item_02__number {
    display: flex;
    justify-content: center;
    align-items: end;
    text-align: center;
    padding-top: 2.222rem;
    margin-bottom: 2.222rem;
}
.service_item_02__number span {
    font-family: 'din2014', sans-serif;
    font-size:2.962rem;
    font-weight:900;
    color:#f00019;
    line-height:.75em;
}
#service_owl2 .service_item_02__number span {
    color: #0FFFE6;
}
.service_item_02_title {
    margin-top: -.37rem;
    margin-bottom: 2.222rem;
}
.service_item_02_title p {
    color: #3C3C3C;
    word-break: keep-all;
    font-family: 'Noto Sans JP', sans-serif;
    text-align: center;
    font-size: 1.34814rem;
    line-height: 2.222rem;
    font-weight: 700;
}
.consul_body_01 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background-color: #C00D23;
}
.consul_body_01__box01 , .consul_body_01__box02 {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
    width:50%;

}
.consul_body_01__box01 {
}
.consul_body_01__box01 h3 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:700;
    font-size: 16vw;
    line-height: 1em;
    text-align: center;
    color: #C00D23;
    padding-top: 2.4vw;
}
.consul_body_01__box02 {}
.consul_body_01__box02_txt01 , .consul_body_01__box02_txt02 , .consul_body_01__box02_txt03 {
    font-family: 'Noto Sans JP', sans-serif;
    color: #FFF;
    line-height: 1em;
}
.consul_body_01__box02_txt01 {
    font-weight:900;
    font-size: 12.8vw;
    letter-spacing: -1.2vw;
    margin-bottom: 3.17vw;
    line-height: 9.2vw;
}
.consul_body_01__box02_txt02 {
    font-size: 3.73vw;
    font-weight: 800;
    height:6.67vw;
    border: 0.4vw solid #FFF;
    text-align: center;
    letter-spacing: -.8vw;
    line-height: calc(6.67vw - .4vw * 2);
    margin-bottom: 2.67vw;
}
.consul_body_01__box02_txt03 {
    font-size: 2.93vw;
    line-height: 5.86vw;
    font-weight: 800;
    margin-top: -1.96vw;
}
.consul_body_01__box03 {
    width:100%;
    text-align: center;
    padding-top:9.87vw;
    padding-top:0;
    padding-bottom:10.67vw;
}
.consul_body_01__box01_inner {
    background: #FFF;
    width: 37.33vw;
    height: 37.33vw;
    border-radius: 0.58vw;
}

.consul_body_01__btn.round_btn__03 {
    background-color: #FFF;
    color:#C00D23;
    font-weight: 800;
    font-size: 4.8vw;
    width :58.67vw;
    letter-spacing: -.2vw;
}
.consul_body_inner_01 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width:100%;
}
.consul_body_inner_02 {
    width:100%;
    padding-left:6.67vw;
    padding-right:6.67vw;
    padding-top:10.67vw;
    padding-bottom:10.67vw;
}



.cnsul_image_01 {
    width:100vw;
    height:40vw;
}
.cnsul_image_01 img{
    width:100vw;
    height: 40vw;
    object-fit: cover;
    object-position: 0 -13.87vw;
}





.page_banner_01 {
    position:relative;
    padding:0;
    margin-bottom:0;
}
.page_banner_01 .banner_bg {
    position:absolute;
    height:84vw;
    top:0;
    left:0;
    z-index:-1;
}
.page_banner_01 .banner_title_box_container {
    background: rgba(0,0,0,0.5);
    display: flex;
    height:84vw;
    align-items: center;
    justify-content: center;
}
.page_banner_01 .banner_title_box {
    min-width: 60vw;
    width: fit-content;
    text-align: center;
    color: #FFF;
}
.page_banner_01 .banner_title_box h3 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 4vw;
    line-height: 8vw;
    color: #FFF;
    text-align: center;
    margin-top: 3.33vw;
}
.page_banner_01 .banner_title_box h2 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 9.33vw;
    line-height: 1em;
    color: #FFF;
}
.page_banner_01 .banner_title_box hr {
    border-top: 1.33vw solid #FFF;
    margin-top:2vw;
    margin-bottom: 0;
}

.bread {
    background-color: #F7F8F8;
    padding-left:6.67vw;
    padding-right:6.67vw;
}
.breadCrumb {
    display: flex;
    padding: 0;
    margin: 0;
    margin-top: 0;
}
.breadCrumb li {
    display: inline-block;
    list-style: none;
    padding: 0;
    line-height: 10.67vw;
}
.breadCrumb li a {
    font-family: 'Noto Sans JP', sans-serif;
    color:#231815;
    text-decoration: none;
    font-size: 3.2vw;
}
.breadCrumb li:first-child::before {
    display: none;
}
.breadCrumb li:before {
    content: ">";
    font-size: 4.5vw;
    color: #231815;
    margin:0 1.07vw;
}


/* お問い合わせ開始 */
.contact_subtitle_01 {
    font-size:6.67vw;
    font-weight: bold;
    line-height: 8vw;
    text-align: center;
    margin-bottom: 5.33vw;
}
.contact_subtitle_01::after{
    background:#B58448;
    display:block;
    content:"";
    width:13.33vw;
    height:1.33vw;
    margin-top: 5.33vw;
    margin-left: auto;
    margin-right: auto;
}
.contact_description_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-size:4vw;
    line-height: 8vw;
    margin-bottom: 18.67vw;
}
.contact_description_01 a{
    text-decoration: none;
    font-family: inherit;
    font-weight:inherit;
    color:inherit;
}
.contact_form__01 .form_label{
    margin-bottom: 1.87vw;
}
.contact_form__01 .form_label2 {
    margin-bottom: 6.67vw;
}
.contact_form__01 .form_label3 {
    display: flex;
}
.contact_form__01 .form_label2_radioflex {
    display: flex;
    padding-top:6.4vw;
}
.contact_form__01 .form_label_radio_01 {
    display: flex;
    align-items: center;
}

.contact_form__01 .form-group {
    display: flex;
    flex-direction: column;
}
.contact_form__01 .input_label {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 3.47vw;
    font-weight: 700;
}
.contact_form__01 .label_asterisk {
    color:#E60012;
    font-size: 3.73vw;
}
.contact_form__01 .label_require {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size:3.2vw;
    color:#FFF;
    background:#C00D23;
    min-width:10.67vw;
    line-height:4vw;
    border-radius: 2vw;
    letter-spacing: calc(100em/1000);
    padding-left:2vw;
    padding-right:2vw;
    margin-left:2.13vw;
}
.contact_form__01 .form-control {
    display: block;
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1em;
    font-weight: 400;
    line-height: 1.5;
    color: #595757;
    background-color: #F7F8F8;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 0.93vw;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.contact_form__01 .contact_input {
    width: 100%;
    height: 12vw;
    font-size: 3.73vw;
    padding: 1.33vw;
    padding-left: 4vw;
    background: #F7F8F8;
}
.contact_form__01 .contact_input_double {
    overflow-wrap: break-word;
    word-wrap: break-word;
    height: 18.67vw;
}
.contact_form__01 textarea.contact_input.contact_input_address {
    resize: vertical;
    height: 18.67vw;
    padding-top: 4vw;
    padding-left: 4vw;
}

.contact_form__01 .form-control::placeholder {
    color: #A9A7A7;
}
.contact_form__01 textarea.contact_input {
    height:120vw;
}
.contact_form__01 input[type=radio].contact_input {
    cursor: pointer;
    height:5.33vw;
    width:5.33vw;
    margin-top:0;
    margin-left: 2.67vw;
    margin-right: 6.67vw;
}
.contact_form__01 input[type=radio].contact_input::before {
    border-color: #1A8BCD;
}
.contact_form__01 input[type=radio].contact_input::after {
    border-right-color: #1A8BCD;
    border-bottom-color: #1A8BCD;
}
.contact_form__01 .contact_input_checkbox {
    cursor: pointer;
    width: 5.33vw;
    height: 5.33vw;
    margin: 0 2.53vw 0 0;
}
.robo_label {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 3.8vw;
    line-height:7vw;
    margin-top: calc((7vw - 3.8vw)/-2);
}




.contact_form__01 .form-group-end {
    margin-bottom:calc(9.6vw - 1.87vw);
}
.contact_form__01 .form-group-end .form_label2 {
    margin-bottom:calc(13.33vw - 7.73vw);
}
.contact_form__01 .submit_btn {
    position: relative;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    width: 53.33vw;
    height: 10.67vw;
    background: #C00D23;
    color:#FFF;
    padding:0;
    margin:auto;
    text-align: center;
    border-radius: calc(10.67vw / 2);
    border: none;
    font-size: 4vw;
    cursor: pointer;
}
.contact_form__01 .submit_btn i{
    position: absolute;
    right:4vw;
    top:50%;
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}


/* お問い合わせ終了 */

.company_description_02 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 4vw;
    line-height:8vw;
    margin-top:-2vw;
    letter-spacing: calc(50em / 1000);
}
.company__02_subtitle {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 5.87vw;
    line-height:1em;
    margin-bottom:6.67vw;
}
.company_table__01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 3.73vw;
    text-align: left;
}
.company_table__01 tr {
    vertical-align: baseline;
}
.company_table__01 tr:last-child {
    height:auto;
}
.company_table__01 th {
    font-size:3.6vw;
    font-weight:700;
    min-width: 20.67vw;
}
.company_table__01 td {
    line-height: 5.6vw;
    margin-top:1.87vw;
    padding-bottom: 11.6vw;
}
.company_table__01 tr:last-child td {
    padding-bottom: 0;
}
.company_table__01 a {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    text-decoration: none;
}
















/* ポリシー */

.policy_description_01 {
    font-family: "游ゴシック", "YuGothic", sans-serif;
    font-size: 3.47vw;
    line-height: 6.93vw;
    padding-left: 6.67vw;
    padding-right: 6.67vw;
}
.policy_border_01 {
    border-top: 0.27vw solid #9FA0A0;
    margin-top:8.53vw;
    margin-bottom: 6.67vw;
}
.policy_sub_title_01 {
    font-family: "游ゴシック", "YuGothic", sans-serif;
    font-weight: bold;
    font-size: 4.8vw;
    line-height: 1em;
    padding-left: 6.67vw;
    padding-right: 6.67vw;
    margin-bottom: 5.33vw;
    padding-top:2.53vw;
}

.policy_company_date {
    font-family: "游ゴシック", "YuGothic", sans-serif;
    font-size: 3.47vw;
    line-height: 6.93vw;
    padding-left: 6.67vw;
    padding-right: 6.67vw;
    text-align: right;
}



.policy_description_02 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:400;
    font-size: 3.73vw;
    line-height: 8.53vw;
    letter-spacing: calc(10em / 1000);
    margin-top:-2.4vw;
    margin-bottom: 12vw;
}
.policy_description_02.main {margin-bottom:20vw;}
.policy_sub_title_02 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:700;
    font-size: 5.87vw;
    line-height: 7.33vw;
    letter-spacing: calc(50em / 1000);
    margin-bottom: 12vw;
}

.policy_company_date_02 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:400;
    font-size: 3.73vw;
    line-height: 8.53vw;
    letter-spacing: calc(50em / 1000);
    text-align: right;
}

/* ポリシー終わり */


/* サービス */

.service_description_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    color:#C00D23;
    font-size:5.57vw;
    line-height:8.8vw;
    text-align: center;
    letter-spacing: calc(40em / 1000);
    margin-top:-1.5vw;
    margin-bottom:6.67vw;
}

.service_description_02 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    color:#000;
    font-size:4.53vw;
    line-height: 9.07vw;
    margin-top:-2.25vw;
}


.service__content_number_01 {
    /* font din */
    font-family: 'din2014', sans-serif;
    font-size:26.67vw;
    line-height: 0.8em;
    color: #FFF;
}
.service_content_subtitle_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    color:#FFF;
    font-size: 12.47vw;
    line-height: 18vw;
    margin-top : -2.73vw;
    margin-bottom:6vw;
}
.service_content_subtitle_01.service_content_subtitle_03 {
    margin-bottom:12.67vw;
}

.service_content_desc_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    color:#FFF;
    font-size: 6vw;
    line-height: 9.6vw;
}

.service_content_desc_list_container {}

.service_content_desc_list {
    padding:0;
    list-style-type: none;
    margin:0;
    overflow: hidden;
    margin-top:6vw;
}
.service_content_desc_list li{
    /* これを使う時はheadのfontを注意 */
    background:#FFF;
    padding : 2.67vw 5.34vw;
    margin-bottom:6.67vw;
    border-radius: 1.33vw;
}
.service_content_desc_list li:last-child {margin-bottom: 0;}

.service_content_desc_list li p {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 600;
    color:#000;
    word-wrap: break-word;
    font-size: 4.67vw;
    line-height:6.4vw;
    letter-spacing: calc(40em / 1000);
}
.service_content_title__01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 7.73vw;
    line-height: 1em;
    letter-spacing: calc(50em / 1000);
    text-align: center;
    margin-bottom: 6.67vw;
}
.service_content_item_container_01 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
    position: relative;
    width: 100%;
    margin-bottom:-4vw;
}
.service_content_item_col {
    max-width:41.33vw;
    width:calc(50% - 1.87vw);
    margin-bottom:4vw;
}
.service_content_item_01 {
    background: #E8E9E9;
    padding :5.33vw 3.6vw;
    border-radius: 1.33vw;
}

.service_content_item_01 svg {
    max-height:10.67vw;
    max-width: 100%;
    margin-bottom: 4vw;
}
.service_content_item_01 hr {
    margin-top :2.67vw;
    margin-bottom: 2.67vw;
    border:none;
    background :#000;
    height :0.67vw;
}
.service_content_item_title_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 3.73vw;
    line-height:4.9vw;
    text-align: center;
}
.service_content_item_desc_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size:2.4vw;
    line-height:4.29vw;
    min-height:13vw;
}

.remote_advisory_btns {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
    position: relative;
    margin-bottom: 20vw;
}
.remote_advisory_btns a {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 4.53vw;
    letter-spacing: calc(50em / 1000);
    color :#FFF;
    text-decoration: none;
    padding-bottom:3.2vw;
}
.remote_advisory_btns span {
    display: block;
    text-align: center;
    color: inherit;
    text-decoration: inherit;
    line-height: 1em;
}
.remote_advisory_btn_01 , .remote_advisory_btn_02 {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
    width:50%;
}
.remote_advisory_btn_01 svg , .remote_advisory_btn_02 svg {
    display:block;
    height :21.33vw;
    max-width: 8vw;
    max-height: 8vw;
    margin:auto;
    margin-top:3.2vw;
    margin-bottom:1.33vw;
}
.remote_advisory_btn_01 i.fa , .remote_advisory_btn_02 i.fa {
    display: none!important;
}
.remote_advisory_btn_01 {
    background:#BE0D23;
}
.remote_advisory_btn_02 {
    background:#3FF2DC;
}

.section-request_step__01 {
    padding :20vw 6.67vw;
}
.section-request_step__02 {
    padding: 0 6.67vw 0;
}

.request_step_title__01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 7.73vw;
    line-height: 1em;
    margin-bottom:6.67vw;
    text-align: center;
}

.request_step_container_01 {}
.request_step_container_01 img{
    max-width: 100%;
}
.request_step_item_col {}

.request_step_item_01 {
    height: 40vw;
    width: 40vw;
    border: 1vw solid #3FF2DC;
    border-radius: 50%;
    margin-bottom: 6.67vw;
    padding-top:6.27vw;
    text-align: center;
}
/* 未使用 */
.request_step_item_01 svg {
    height: 8vw;
    max-width: 100%;
    margin-bottom: 4.93vw;
}
/* 未使用 */
.request_step_item_title_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 3.6vw;
    line-height:4.8vw;
    letter-spacing: calc(50em / 1000);
    margin-bottom: 2vw;
    text-align: center;
}
/* 未使用 */
.request_step_item_title_eng_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 3.2vw;
    color: #3FF2DC;
    letter-spacing: calc(50em / 1000);
}


.request_step_title__02 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 7.73vw;
    line-height: 1em;
    margin-bottom:10.67vw;
    text-align: center;
    white-space: nowrap;
}

.request_step_container_02 {
    /* padding-left: 6.67vw; */
    /* padding-right:6.67vw; */
}
.request_step_item_02 {
    position: relative;
    margin-bottom:9.33vw;
}
.request_step_number_02 {
    position: absolute;
    left:0;
    top:-2.67vw;
    /* font-family: din; */
    font-family: 'din2014', sans-serif;
    font-size: 18.67vw;
    line-height: 1em;
    color: #3FF2DC;
}
.request_step_subtitle_02 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 5.33vw;
    line-height: 6.67vw;
    letter-spacing: calc(50em / 1000);
    padding-left:21.33vw;
    margin-bottom: 5.33vw;
}
.request_step_desc_02 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 3.73vw;
    line-height: 7.47vw;
    margin-top: 1.87vw;
    margin-bottom: 5.33vw;
    letter-spacing: calc(50em / 1000);
}
.request_step_photo_02 {
    overflow: hidden;
}
.request_step_photo_02 img {
    max-width: 100%;
    height: 57.33vw;
}


.comingsoon_btn {
    width: 66.67vw;
    height:10.67vw;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 5.33vw;
    letter-spacing: calc(50em / 1000);
    border: 0.53vw solid #FFF;
    color: #FFF;
    border-radius: 5.33vw;
    margin:auto;
    text-align: center;
    line-height:9.61vw;
}



/* about */
.about_qa_container {
    margin-bottom: 13.33vw;
}
.about_qa_text_outer {}
.about_qa_text {}
.about_qa_ruby {
    display: block;
    width: 16vw;
    height:5.33vw;
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    background: #C00D23;
    font-size: 4.27vw;
    line-height: 5.33vw;
    color:#FFF;
    margin:auto;
    margin-bottom: 4vw;
}
.about_qa_question {
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 6.67vw;
    line-height: 10.67vw;
    letter-spacing: calc(50em / 1000);
    color:#C00D23;
    margin-bottom: 5.33vw;
}
.about_qa_question .min_space {
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    color:inherit;
}
.about_qa_desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 4.45vw;
    line-height: 9.07vw;
    margin-bottom:6.67vw;
    letter-spacing: calc(-20em / 1000);

}
.about_qa_desc .min_space {
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    letter-spacing: calc(-500em / 1000);
}
.about_qa_image {
    text-align: center;
}
.about_qa_image img{
    max-width: 100%;
}
.about_qa_image__q {
    width: 53.33vw;
    margin: 5.33vw auto;
}
.about_qa_image__a {
    width: 66.67vw;
    margin: 5.33vw auto;
}

.about_marketing_title_01 {
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 9.33vw;
    line-height: 13.33vw;
    font-weight: 700;
    color:#C00D23;
    letter-spacing: calc(50em / 1000);
    margin-bottom: 9.33vw;
}
.about_marketing_container {
    overflow: hidden;
}
.about_marketing_box {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: row;
    overflow: hidden;
}
.about_marketing_box.item2 .about_marketing_text {
    margin-bottom:12vw;
}
.about_marketing_image {
    max-width: 100%;
}
.about_marketing_image_box {
    display: flex;
    position: relative;
    width:27.33vw;
    height:27.33vw;
    border-radius: 50%;
    border:1.07vw solid #C00D23;
    background: #FFF;
    padding:0;
    text-align: center;
    align-items: center;
    justify-content: center;
}
.about_marketing_image_box::before {
    content: "";
    position: absolute;
    bottom: -140vw;
    left: 50%;
    transform: translateX(-50%);
    width: 1.07vw; /* ボーダーの幅に合わせて調整 */
    height: 181.33vw;
    border-left: 1.03vw dashed #BDBEBD; /* ドットのボーダー */
    z-index: -1;
}
.about_marketing_box.item3 .about_marketing_image_box::before {
    content:none;
}
.about_marketing_image_box img {
    max-width: 22vw;
    width: 100%;
}
.about_marketing_text {
    flex: 1;
    max-width: 100%;
    margin-top: 2.67vw;
    margin-left: 3.33vw;
}
.about_marketing_step_number {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 900;
    font-size: 4.27vw;
    line-height: 1em;
    letter-spacing: calc(50em / 1000);
    margin-bottom: 2.67vw;
    color:#C00D23;
}
.about_marketing_step_title {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 900;
    font-size: 6vw;
    line-height: 8.67vw;
    letter-spacing: calc(50em / 1000);
    margin-bottom: 4vw;
}
.about_marketing_step_desc01 , .about_marketing_step_desc02 , .about_marketing_step_desc03 , .about_marketing_step_desc04
{
    font-family: 'Noto Sans JP', sans-serif;
}
.about_marketing_step_desc01 {
    font-weight: 400;
    font-size: 3.63vw;
    line-height: 7.47vw;
    margin-bottom: 3.33vw;
}
.about_marketing_step_desc02 {
    font-weight: 700;
    font-size: 3.41vw;
    line-height: 5.97vw;
    margin-bottom: 13.33vw;
}
.about_marketing_step_desc03 {
    font-weight: 700;
    font-size: 4vw;
    line-height: 1em;
    margin-top: 6vw;
    margin-bottom: 2.67vw;
}
.about_marketing_step_desc04 {
    font-weight: 700;
    font-size: 2.93vw;
    line-height: 5.87vw;
    margin-top: - 1.97vw;
    margin-bottom: 2.67vw;
    letter-spacing: calc(50em / 1000);
}
.about_marketing_text .about_marketing_step_desc04:last-child {
    margin-bottom: 0;
}


.about_reason_descbox_01 {
    padding-left: 6.67vw;
    padding-right: 6.67vw;
}
.about_reason_descbox_subtitle_01 {
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 9.33vw;
    line-height: 12vw;
    color:#C00D23;
    letter-spacing: calc(50em / 1000);
    margin-bottom: 9.33vw;
}

.about_reason_desc_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 4.8vw;
    line-height: 9.6vw;
    margin-bottom: 13.33vw;
}

.about_reason_point_container {}
.about_reason_point_item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: row;
    margin-bottom:13.33vw;
}
.about_reason_point_item_text {
    padding:0 6.67vw 9.33vw;
}
.about_reason_point_item_text_inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: column;
}
.about_reason_point_item_text_inner hr {
    border-color: #BDBEBD;
    width: 100%;
    margin-top: 5.33vw;
    margin-bottom: 5.33vw;
}
.about_reason_point_item_number {
    text-align: center;
    margin-bottom:4vw;
}
.about_reason_point_item_number span {
    display: block;
    color:#C00D23;
}
.about_reason_point_item_number span:first-child {
    font-family: 'din2014', sans-serif;
    font-size: 14.67vw;
    line-height: 10.24vw;
}
.about_reason_point_item_number span:last-child {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 3.73vw;
    line-height: 1em;
}
.about_reason_point_item_subtitle {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 7.47vw;
    line-height: 11.2vw;
    letter-spacing: calc(-26em / 1000);
}
.about_reason_point_item_desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 4.8vw;
    line-height: 9.6vw;
}
.about_reason_point_item_image {}
.about_reason_point_item_image img {
    border-radius: 5.33vw;
    max-width: 100%;
}



.advice_description_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 6.67vw;
    line-height:10.67vw;
    letter-spacing: calc(50em / 1000);
    text-align: center;
    padding-left: 4.17vw;
    padding-right: 4.17vw;
    margin-bottom: 4.67vw;
}
.advice_description_02 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 4.53vw;
    line-height:9.07vw;
    margin-bottom: 6.67vw;
}
.advice_description_03 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 3.73vw;
    line-height:5.6vw;
    letter-spacing: calc(50em / 1000);
    color: #C00D23;
}

.advice_online_point_container {}
.advice_online_point_item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: row;
    margin-bottom:26.67vw;
}
.advice_online_point_item_text {
    padding:0 6.67vw 0;
}
.advice_online_point_item.v2 .advice_online_point_item_text {
    padding-bottom:9.33vw;
}
.advice_online_point_item_text_inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: column;
}
.advice_online_point_item_text_inner hr {
    border-width: 0.53vw;
    border-color: #000;
    border-bottom: 0;
    width: 100%;
    margin-top: 5.33vw;
    margin-bottom: 5.33vw;
}
.advice_online_point_item_title {
    display: flex;
    text-align: center;
    align-items: center;
    margin-bottom:6.67vw;
}
.advice_online_point_item_title img {
    max-width: 16vw;
}
.advice_online_point_item_title span {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 5.33vw;
    line-height: 1em;
    display: flex;
    color:#FFF;
    background:#000;
    padding: 2.67vw 5.33vw;
    border-radius: 0.93vw;
    margin-left: 5.33vw;
    letter-spacing: calc(50em / 1000);
}
.advice_online_point_item_subtitle {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 5.03vw;
    line-height: 10.67vw;
    letter-spacing: calc(-30em / 1000);
    max-height: 30vw;
}
.advice_online_point_item_desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 4.27vw;
    line-height: 8.53vw;
    letter-spacing: calc(-20em / 1000);
    margin-block-end: 0;
}
.advice_online_point_item.v2 .advice_online_point_item_desc {
    margin-bottom: 8vw;
}
.advice_online_point_item_image {}
.advice_online_point_item_image img {
    border-radius: 5.33vw;
    max-width: 100%;
}

.advice_online_point_blacklabel {
    display:flex;
    background-color: #000;
    min-height: 20vw;
    height:26.67vw;
    width:100%;
    text-align: center;
    align-items: center;
    justify-content: center;
    margin-bottom:13.33vw;
}
.advice_online_point_blacklabel p {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 6.4vw;
    line-height: 9.6vw;
    color:#FFF;
}
.advice_online_point_blacklabel.v2 {
    height: 20vw;
}

.advice_online_point_item.v2 .advice_online_point_item_title span{
    background: none;
    font-size: 6.67vw;
    color: #000;
    padding: 0;
    margin-left: 2vw;
    text-align: left;
    letter-spacing:calc(-71em / 1000);
}

.advice_online_point_app_dl_icons_container {
    padding: 0 2.67vw;
}
.advice_online_point_app_dl_icons {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.advice_online_point_app_dl_icons > div {
    width: 50%;
}
.advice_online_point_app_dl_icons img{
    max-width: 100%;
    height:12vw;
}
.advice_online_point_app_dl_icons > div:nth-child(2) {
    text-align: right;
}

.online_meeting_container {
    overflow: hidden;
}
.about_marketing_box.v2 {
    min-height:64.67vw;
}
.online_meeting_container .about_marketing_box:nth-child(1) .about_marketing_image_box img
{
    width: 22vw;
}
.online_meeting_container .about_marketing_box:nth-child(2) .about_marketing_image_box img
{
    width: 16vw;
}
.online_meeting_container .about_marketing_box:nth-child(3) .about_marketing_image_box img
{
    width: 20vw;
}
.online_meeting_container .about_marketing_box:nth-child(4) .about_marketing_image_box img
{
    width: 22vw;
}


.about_marketing_image_box.v2 {
    border-color: #0053E9;
}
.about_marketing_step_number.v2 {
    color: #0053E9;
}
.about_marketing_step_title {
    word-break: break-word;
    letter-spacing: calc(-1em / 1000);
}
.section-online_meeting_flow__01 .about_marketing_step_title {
    font-weight: 700;
}

.advice_online_meeting_bluelabel {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 6.67vw 6.67vw;
}
.advice_online_meeting_bluelabel a {
    display: flex;
    position: relative;
    align-items: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 5.33vw;
    line-height: 6.67vw;
    letter-spacing: calc(50em / 1000);
    text-decoration: none;
    color:#FFF;
    background: #0053E9;
    height:18.67vw;
    border-radius: 9.33vw;
    padding-left: 6.27vw;
    width: 100%;
}
.advice_online_meeting_bluelabel a i {
    position:absolute;
    right:2.67vw;
    color: inherit;
}




.owl-carousel .owl-nav button.owl-prev , .owl-carousel .owl-nav button.owl-next {
    position:absolute;
    top:50%;
    transform: translate(0, -50%);
}

.owl-carousel .owl-nav button.owl-prev {
    left: -2.02rem;
}
.owl-carousel .owl-nav button.owl-next {
    right: -2.02rem;
}


.owl-carousel .owl-nav button img {
    width: 1.111rem;
}




.section-formsuccess__01 {
    padding: 13.33vw 6.67vw 17.33vw;
    min-height:50vh;
}
.formsuccess_title_01 h2 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:700;
    font-size:5.33vw;
    margin-bottom: 6.67vw;
}
.formsuccess_body_01 .round_btn__03{
    text-align:center;
}
.formsuccess_desc_01 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:400;
    font-size:3.73vw;
    line-height:7.47vw;
    margin-bottom: 7.47vw;
}





.enter_to_about_container {
    width:100%;
}
.entrance {position:relative;}
.sp_top_img {
    max-width: 100%;
}
.pc_top_img {display:none;}
.entrance_word {
    position: fixed; /* 要素を固定位置に配置 */
    top: 10.3703rem; /* 上端に配置 */
    left: 0; /* 左側に配置 */
    width: 24.0740rem;
    padding :0 1.851rem;
    z-index: 2; /* 重なり順を一番上に */
    opacity: 1; /* 透明度を0に */
    transition: opacity 0.5s ease; /* スムーズなアニメーション */
}
.entrance_wordx {
    position: fixed; /* 要素を固定位置に配置 */
    top: 10.3703rem; /* 上端に配置 */
    left: 0; /* 左側に配置 */
    width: 24.0740rem;
    padding :0 1.851rem;
    z-index: 2; /* 重なり順を一番上に */
    opacity: 1; /* 透明度を0に */
    transition: opacity 0.5s ease; /* スムーズなアニメーション */
}

.enter_scroll_icon {}
.entrance_last_items {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width :100%;
}
.about_entrance .entrance_last_items {
    position: relative;
    padding-top: 2.777rem;
    padding-bottom: 5.555rem;
}
.mousey {
    width: 6px;
    padding: 10px 12px;
    height: 35px;
    border: 2px solid #fff;
    border-radius: 25px;
    opacity: 0.75;
    box-sizing: content-box;
    margin:auto;
    margin-bottom: .8888rem;
}
.scroller {
    width: 6px;
    height: 6px;
    border-radius: 25%;
    background-color: #fff;
    animation-name: scroll;
    animation-duration: 2.2s;
    animation-timing-function: cubic-bezier(.15,.41,.69,.94);
    animation-iteration-count: infinite;
    border-radius: 50%;
}
@keyframes scroll {
    0% { opacity: 0; }
    10% { transform: translateY(0); opacity: 1; }
    100% { transform: translateY(15px); opacity: 0;}
}
.scroller_text {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:500;
    color:#FFF;
    font-size: .8888rem;
    letter-spacing: .4em;
    text-align: center;
    margin-bottom: 1.851rem;
}
.another .mousey {
    border: 2px solid #3B3C3C;
}
.another .scroller {
    background-color: #3B3C3C;
}
.another .scroller_text {
    color: #3B3C3C;
    margin-bottom: 0;
}
.entrance_links {
	position:fixed;
	width: 100%;
	bottom: 0;
	z-index: 3;
}
.entrance_links .header_menu_list_block_link a {
    font-size:.8888rem;
}
.enter_message_stop {
    position: relative;
    height:24.074rem;
}
.enter_message_stop.active .entrance_word {
  top: auto; /* 追従したらtopをautoに */
  bottom: 500px; /* about_containerの下から500pxの位置に配置 */
}
.about_container_main {
    padding-left:1.851rem;
    padding-right:1.851rem;
    padding-bottom: 7.406rem;
}
.container_title_red {
    font-family: 'Noto Sans JP', sans-serif;
    color:#f00019;
    font-weight:800;
    font-size: 3.703rem;
    line-height: 1em;
    margin-bottom: 1.111rem;
}
.container_title_sub {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 600;
    font-size: 1.111rem;
    line-height: 1em;
    margin-bottom: 1.851rem;
}
.container_title_main {
    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-weight: 700;
    font-size: 4.074rem;
    line-height: 4.8148rem;
    letter-spacing: -.05em;
    margin-top:-0.403rem;
    margin-bottom:2.192rem;
}
.about_desc_01 {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-weight: 400;
    font-size: .956rem;
    line-height: 2em;
    margin-top: .5em;
    margin-bottom: 2.592rem;
}


.pricetable_container {
    padding-top:1.851rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    background-color: #F2F2F1;
}
.pricetable_body {
    display: flex;
}
.pricetable_item {
    width:100%;
    position: relative;
    padding-right:1.851rem;
    padding-left: 1.851rem;
    padding-bottom: 2.2222rem;
    background-color: #FFF;
    border-radius: 1.3185rem;
    margin-bottom: 1.851rem;
}
.pricetable_number {
    position: absolute;
    font-family: 'din2014', sans-serif;
    color: #f00019;
    font-size: 2.5rem;
    line-height: 1em;
    top:1.392rem;
}
.pricetable_number::before {
    display: block;
    content:"DATA";
    font-family: 'Noto Sans JP', sans-serif;
    color: #f00019;
    font-size: .8888rem;
    line-height: 1em;
    font-weight: 700;
}
.pricetable_title {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-weight: 700;
    text-align: center;
    font-size: 1.4444rem;
    line-height: 5.5555rem;
    padding-bottom: 1.851rem;
}
.pricetable_hint {
    font-family: 'Noto Sans JP', sans-serif;
    background-color: #F2F2F1;
    color: #3B3C3C;
    text-align: center;
    font-size: 1rem;
    font-weight: 700;
    line-height: 2.222rem;
    margin-bottom: 2.222rem;
    border-radius: 1.1092rem;
}
.pricetable_hint_container {
    display: flex;
    justify-content: center;
    width: 100%;
}
.pricetable_hint_half {width: 50%;}
.pricetable_body_values {
    display: flex;
    padding-bottom: 1.296rem;
}
.pricetable_body_values_item {
    width:50%;
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
}
.pricetable_body_value_large {
    font-family: 'din2014', sans-serif;
    color: #f00019;
    font-size: 5.5555rem;
    line-height: 1em;
}
.pricetable_body_value_large.pricetable_body_value_large_s {
    font-size: 3.3333rem;
    line-height: 5.5555rem;
}
.pricetable_body_value_middle {
    font-family: 'din2014', sans-serif;
    color: #f00019;
    font-size: 3.3333rem;
    line-height: 1em;
}
.pricetable_body_value_addtext {
    font-family: 'Noto Sans JP', sans-serif;
    display: block;
    color: #f00019;
    font-weight: 700;
    font-size: 1.111rem;
    line-height: 1em;
}
.pricetable_body_value_large .parent_font , .pricetable_body_value_middle .parent_font , .pricetable_body_value_addtext .parent_font {
    font-family: inherit;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
}
.pricetable_body_value_middle > .pricetable_body_value_addtext {
    font-size: 1.296rem;
    font-weight: 900;
}
.pricetable_body_value_addtext.min {
    font-size: .8888rem;
}
.pricetable_body_value_year {
    font-family: 'Noto Sans JP', sans-serif;
    color: #646464;
    font-size: .7777rem;
    padding-top: .74rem;
}
.pricetable_bottom {
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
}
.pricetable_bottom_text01 , .pricetable_bottom_text02 {
    color: #3B3C3C;
    line-height: 1em;
    font-size: 1.3333rem;
    font-weight: 700;
}
.pricetable_bottom_text02 span {
    font-family: 'din2014', sans-serif;
    color: #f00019;
    font-size: 2.592rem;
    line-height: 1em;
}
.pricetable_bottom_text03 {
    color: #3B3C3C;
    font-size: 1.3333rem;
    font-weight: 900;
}
.pricetable_bottom_text03 span {
    font-family: 'din2014', sans-serif;
    color: #f00019;
    font-size: 5rem;
    line-height: 1em;
}
.pricetable_bottom_text03 span::before {
    content :"約";
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 2.25rem;
}
.pricetable_bottom_text03 span::after {
    content :"%";
    font-size: 3.0833rem;
}
.pricetable_bottom_text04 {
    color: #3B3C3C;
    font-size: 1.16666rem;
    font-weight: 900;
    position: relative;
}
.pricetable_bottom_text04::before {
    border-left: .15rem solid;
    height: 130%;
    width: 0.2rem;
    transform: rotate(-10deg);
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}
.pricetable_bottom_text04::after {
    border-left: .15rem solid;
    height: 130%;
    width: 0.2rem;
    transform: rotate(10deg);
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 0;
}

.service_container {
    padding-top:7.406rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
#service .container_title_main {
    font-size:1.9295rem;
    line-height: 2.8888rem;
    margin-bottom: 2.192rem;
}
.service_body_01 {
    padding-bottom : 4.444rem;
}
.service_list {
    padding-left: 1.111rem;
    padding-right: 1.111rem;
    list-style-type: none;
    margin: 0;
}
.service_list li {
    position: relative;
    height: 4.8148rem;
    border-bottom: 1px solid;
}
.service_list li:first-child {border-top: 1px solid;}
.service_list a {
    text-decoration: none;
}
.service_list p {
    display: flex;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.2829rem;
    font-weight: 900;
    height: 4.8148rem;
    align-items: center;
    transition: all .3s linear;
    padding-left: 1.851rem;
}
.service_list p span {
    font-size: 0.5129rem;
    font-weight: 700;
    padding-left: .296rem;
    line-height: 1em;
}
.service_list a:hover p {
    opacity: .7;
}
.service_list_right_btn {
    width: 2.2222rem;
    height: 2.2222rem;
    margin-left: auto;
    position: absolute;
    right: 0;
    transition: all .3s linear;
}
.service_list_right_btn.service_list_right_btn_w {
    /* display: block; */
    opacity: 1;
}
.service_list_right_btn.service_list_right_btn_b {
    /* display: none; */
    opacity: 0;
}
.service_list a:hover .service_list_right_btn.service_list_right_btn_w {
    /* display: none; */
    opacity: 0;
}
.service_list a:hover .service_list_right_btn.service_list_right_btn_b {
    /* display: block; */
    opacity: 1;
}

.service_list_right_btn_outer {
    margin-left: auto;
    width: 2.777rem;
    height: 2.777rem;
    overflow: hidden;
    position: relative;
}
.service_list_right_btn_outer .service_list_right_btn {
    transition: all .3s linear;
    opacity: 1;
    position: absolute;
    top: 0;
}
.service_list_right_btn_outer .service_list_right_btn.service_list_right_btn_1 {opacity: 1;}
.service_list_right_btn_outer .service_list_right_btn.service_list_right_btn_2 {opacity: 0;}
.works_boworks_body_itemdy_item_link:hover .works_body_item_inner .service_list_right_btn.service_list_right_btn_1 {opacity: 0;}
.works_body_item:hover .works_body_item_inner .service_list_right_btn.service_list_right_btn_2 {opacity: 1;}

.service_list_item_image_01 {
    height: 1.435rem;
}
.service_list_item_image_02 {
    height: 2.8456rem;
}
.service_list_item_image_03 {
    width: 9.6296rem;
}
.service_contents_container {
    padding-top: 7.406rem;
}
.service_content_body {
    margin-bottom: 7.406rem;
}
.service_content_image img {
    max-width: 100%;
    margin-bottom: 3.703rem;
}
.service_content_detail {
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.service_content_number {
    display: block;
    font-family: 'din2014', sans-serif;
    color: #FFF;
    text-shadow: 
        1px 1px 0 #f00019, 
        -1px -1px 0 #f00019, 
        1px -1px 0 #f00019, 
       -1px 1px 0 #f00019; /* 輪郭の色を指定 */
    -webkit-text-stroke: 1px #f00019; /* 文字の輪郭を指定（互換性のため） */
    font-size: 6.666rem;
    line-height: .75em;
    margin-bottom: 2.222rem;
}
.service_content_title {
    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-size: 3.703rem;
    font-weight: 900;
    line-height: 1em;
    margin-bottom: 1.4814rem;
}
.service_content_title img.draft {
    max-width: 100%;
    height: 2.9629rem;
}
.service_content_title img.anyone {
    max-width: 100%;
    height: 3.703rem;
}
.service_content_title_mini {
    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-size: 1.111rem;
    font-weight: 700;
    line-height: 1em;
    margin-bottom: 2.592rem;
}
.service_content_desc {
    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-size: 1rem;
    font-weight: 400;
    line-height: 2em;
    margin-top: -.5em;
    margin-bottom: 2.592rem;
}

.works_container {
    padding-top:7.406rem;
}
.works_body_01 {
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.works_body_02 {
    display:flex;
    flex-direction: column;
}
.works_body_item {
    position: relative;
    width:100%;
    height:20.740rem;
    overflow: hidden;
}
.works_body_item_link {
    position: absolute;
    inset: 0;
}
.works_body_item_bg_img {
    position: absolute;
    top:0;
    left: 0;
    width:100%;
    transition: all 0.5s ease-in-out;
}
.works_body_item:hover .works_body_item_bg_img {
    transform: scale(1.1);
}
.works_body_item_overlay {
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.6);
}
.works_body_item_inner {
    position: relative;
    height:100%;
}
.works_body_item_box {
    display: flex;
    align-items: end;
    margin-left: 1.851rem;
    margin-right: 1.851rem;
    padding-right: 1.111rem;
    margin-top: 14.8148rem;
}
.works_body_item_box_text p {
    font-family: 'Noto Sans JP', sans-serif;
    color: #FFF;
    font-size: .8148rem;
    line-height: 1.1111rem;
    font-weight: 400;
}
p.works_body_item_box_title {
    font-size: 1.925rem;
    font-weight: 900;
    margin-bottom: .74rem;
    line-height: 1em;
}
.recruit_container {
    padding-top:7.406rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.recruit_body_01 {
    padding-bottom: 3.703rem;
}
.recruit_body_box {
    display: flex;
    flex-direction: column;
}
.recruit_body_02 .container_title_main {
    font-size: 2.0148rem;
    line-height: 1em;
}
.recruit_desc_01 {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-weight: 400;
    font-size: 1rem;
    line-height: 2em;
    margin-top: .5em;
    margin-bottom: 3.203rem;
}
.recruit_body_image {
    width: 14.02911rem;
    margin:auto;
}

.news_container {
    padding-top:7.406rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    padding-bottom: 7.406rem;
}

.news_body_02 {

}
.news_list {
    margin:0;
    padding-left: 0;
    list-style-type: none;
    margin-top: 3.703rem;
}
.news_list li a {
    display: flex;
    flex-direction: column;
    margin-bottom: 2.777rem;
}
.news_list li:last-child {
    margin-bottom: 0;
}
.news_list li a .news_title {
    transition: all .3s linear;
}
.news_list li.dimmed a .news_title {
    opacity: .5;
}
.news_list li div{

}
.news_list a {
    text-decoration: none;
}
.news_date {
    padding-bottom: 1.8148rem;
}
.news_tag {
    display: inline-block;
    font-family: 'Noto Sans JP', sans-serif;
    background-color: #3B3C3C;
    text-align: center;
    min-width: 7.4074rem;
    color:#FFF;
    font-size: 0.7407rem;
    line-height: 2.2222rem;
    border-radius: 1.1111rem;
    font-weight: 700;
}
.news_date span{
    font-family: 'Noto Sans JP', sans-serif;
    color: #969696;
    font-size: 0.9629rem;
    line-height: 1em;
    font-weight: 500;
    margin-right: 1.2222rem;
}
.news_title {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-size: 0.9629rem;
    line-height: 1.5555rem;
    font-weight: 700;
}


.contact_container {
    padding-top: 3.703rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    padding-bottom: 3.703rem;
    background-color: #3B3C3C;
    color: #FFF;
}
.contact_container .container_title_red , .contact_container .container_title_sub {
    color:#FFF;
}
.contact_body_02 {
    display: flex;
    flex-direction: column;
    padding-top: 1.851rem;
}

.contact_link_box {
    display: flex;
    border: 2px solid #FFF;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    justify-content: space-between;
    min-height: 7.7777rem;
    align-items: center;
    margin-bottom: 1.481rem;
    text-decoration: none;
    transition: all .3s linear;
    cursor: pointer;
}
.contact_link_box:last-child {
    margin-bottom: 0;
}
.contact_link_box_inner {
    display: flex;
    flex-direction: column;
}
.contact_link_box_inner span {
    font-family: 'Noto Sans JP', sans-serif;
    color:#FFF;
    transition: inherit;
}
.contact_link_box_inner span:first-child {
    font-size: 1.8rem;
    line-height: 1em;
    font-weight: 700;
    margin-bottom: 0.7407rem;
}
.contact_link_box_inner span:last-child {
    font-size: 1.2rem;
    line-height: 1em;
    font-weight: 500;
}
.contact_link_box img {
    height: 2.9629rem;
    width: 2.9629rem;
    filter: invert(99%) sepia(13%) saturate(95%) hue-rotate(192deg) brightness(114%) contrast(100%);
}
.contact_link_box:hover {
    background-color: #FFF;
    border: 2px solid #3C3C3C;
}
.contact_link_box:hover span {
    color: #3C3C3C;
}
.contact_link_box:hover img {
    filter: none;
}
.about_entrance {
    position: relative;
    min-height: 41.481rem;
}
.news_entrance {
    position: relative;
    min-height: auto;
    padding-bottom: 4.074rem;
}
.recruit_entrance {
    position: relative;
    min-height: auto;
    padding-bottom: 2.777rem;
}
.top_container {
    display: flex;
    position: relative;
    flex-direction: column;
    padding-top: 5.555rem;
    padding-bottom: 2.9629rem;
    padding-bottom: 1.851rem;
    background: linear-gradient(to bottom, #F2F2F1 34.592rem, transparent 34.592rem);
    background: linear-gradient(to bottom, #F2F2F1 34.592rem, transparent);
}
.top_body_01 {
    padding-top: 4.037rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.top_body_01 h2 , .top_body_01 h4 {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    line-height: 1em;
}
.top_body_01 h2 {
    font-size: 4.444rem;
    font-weight: 800;
    margin-bottom: 1.111rem;
}
.top_container__recruit .top_body_01 h2 {
    line-height: .5em;
}
.top_body_01 h4 {
    font-size: 1.111rem;
    font-weight: 800;
    line-height: 1.666rem;
}
.top_body_01 h2 .middle {
    display: block;
    color: inherit;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 3.703rem;
    font-weight: 700;
}
.top_body_01 h2 .mini {
    color: inherit;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 2rem;
    font-weight: 700;
}
.top_body_02 {
    padding-top: 4.037rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.top_body_03 {
    display: none;
}
.top_submenu {
    list-style-type: none;
    padding: 0;
    margin: 0;
    padding-bottom: 2.962rem;
}
.top_submenu_item {
    margin-bottom: 1.851rem;
}
.top_submenu_item:nth-child(1) {
    -webkit-transition: opacity .4s .5s, color .2s, -webkit-transform .4s .5s;
    transition: opacity .4s .5s, color .2s, -webkit-transform .4s .5s;
    transition: opacity .4s .5s, transform .4s .5s, color .2s;
    transition: opacity .4s .5s, transform .4s .5s, color .2s, -webkit-transform .4s .5s;
}
.top_submenu_item:nth-child(2) {
    -webkit-transition: opacity .4s .6s, color .2s, -webkit-transform .4s .6s;
    transition: opacity .4s .6s, color .2s, -webkit-transform .4s .6s;
    transition: opacity .4s .6s, transform .4s .6s, color .2s;
    transition: opacity .4s .6s, transform .4s .6s, color .2s, -webkit-transform .4s .7s;
}
.top_submenu_item:nth-child(3) {
    -webkit-transition: opacity .4s .7s, color .2s, -webkit-transform .4s .7s;
    transition: opacity .4s .7s, color .2s, -webkit-transform .4s .7s;
    transition: opacity .4s .7s, transform .4s .7s, color .2s;
    transition: opacity .4s .7s, transform .4s .7s, color .2s, -webkit-transform .4s .7s;
}
/*.top_submenu_item.is-yet {*/
.top_submenu_item {
    opacity: 1 !important;
    -webkit-transform: translateX(8px);
    transform: translateX(8px);
    -webkit-transition: 0s .5s;
    transition: 0s .5s;
}
.top_submenu_item a {
    display: flex;
    text-decoration: none;
    line-height: 1em;
}
.top_submenu_item:last-child {
    margin-bottom: 0;
}
.top_submenu_item a::before {
    content: "-";
    display: inline;
    color: #3B3C3C;
}
.top_submenu_item a span {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
}
.top_submenu_item a span:first-child {
    font-size: 1.011rem;
    font-weight: 700;
    width: 8.333rem;
    min-width: 8.333rem;
    padding-left: 0.370rem;
    white-space: nowrap;
    overflow: hidden;
}
.top_submenu_item a span:last-child {
    font-size: 0.814rem;
    font-weight: 400;
}
.top_bread {
    position: relative;
    bottom: 0;
    width: 100%;
    margin-bottom: 0;
}
.top_bread.top_bread_sp {}
.top_bread.top_bread_pc {display: none;}
.top_container__person .top_bread.top_bread_sp , .top_container__recruit .top_bread.top_bread_sp , 
.top_container__news .top_bread.top_bread_sp {
    padding-top: 5.555rem;
}
.top_container.top_container__person , .top_container.top_container__news , .top_container.top_container__recruit , .top_container.top_container__policy {background:none;}
.top_bread ul {
    display: flex;
    flex-direction: row;
    list-style-type: none;
    padding: 0;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    margin: 0;
}
.top_bread ul a {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-size: 1.037rem;
    font-weight: 400;
    padding-right: 1.111rem;
    text-decoration: none;
}
.top_bread ul li {
    opacity: 1;
    -webkit-transition: 0s .5s;
    transition: 0s .5s;
}
.top_bread.is-yet li {
    opacity: 0 !important;
    -webkit-transform: translateX(8px);
    transform: translateX(8px);
}
.top_bread li:nth-child(1) {
    -webkit-transition: opacity .4s .5s, color .2s, -webkit-transform .4s .5s;
    transition: opacity .4s .5s, color .2s, -webkit-transform .4s .5s;
    transition: opacity .4s .5s, transform .4s .5s, color .2s;
    transition: opacity .4s .5s, transform .4s .5s, color .2s, -webkit-transform .4s .5s;
}
.top_bread li:nth-child(2) {
    -webkit-transition: opacity .4s .6s, color .2s, -webkit-transform .4s .6s;
    transition: opacity .4s .6s, color .2s, -webkit-transform .4s .6s;
    transition: opacity .4s .6s, transform .4s .6s, color .2s;
    transition: opacity .4s .6s, transform .4s .6s, color .2s, -webkit-transform .4s .7s;
}
.top_bread li:nth-child(3) {
    -webkit-transition: opacity .4s .7s, color .2s, -webkit-transform .4s .7s;
    transition: opacity .4s .7s, color .2s, -webkit-transform .4s .7s;
    transition: opacity .4s .7s, transform .4s .7s, color .2s;
    transition: opacity .4s .7s, transform .4s .7s, color .2s, -webkit-transform .4s .7s;
}
.top_bread ul li::after {
    content: ">";
    display: inline;
    position: relative;
    color: #3B3C3C;
    padding-right: 1.111rem;
}
.top_bread ul li:last-child::after {
    content: none;
}

.second_title_container {
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.mission_main_container {
    display: flex;
    flex-direction: column;
    padding-top: 3.703rem;
}
.second_title_mini {
    font-family: 'Noto Sans JP', sans-serif;
    color: #000;
    font-size: 1.296rem;
    font-weight: 700;
    line-height: 1em;
    margin-bottom: 0.74rem;
}
.second_title_mini::before {
    content: "・";
    display: inline-block;
    color: #f00019;
}
.second_title {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-size: 3.703rem;
    font-weight: 700;
    line-height: 5.185rem;
}


.top_container__policy .top_body_01 {
    width: 100%;
    padding-left: 0;
    padding-right:0;
    padding-bottom: 3.703rem;
}
.top_container__policy .top_body_01 .subpage_title {
    padding-right: 1.851rem;
    padding-left: 1.851rem;
}
.mission_container {
    padding-top: 3.703rem;
    padding-bottom: 3.703rem;
}
.mission_main_body1 {
    padding-right: 1.851rem;
}
.right_round_image {
    width: 100%;
    border-radius: 0 3.703rem 0 0;
}
.mission_main_body2 {
    padding-top: 3.703rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.mission_main_body2 p {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-size: 1rem;
    font-weight: 400;
    line-height: 2rem;
    margin-top: -.5rem;
}

.reason_container {
    display: flex;
    flex-direction: column;
    padding-top: 5.555rem;
    padding-bottom: 3.703rem;
}
.reason_main_container {
    padding-top: 5.555rem;
}
.reason_item {
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    margin-bottom: 5.555rem;
}
.reason_item:last-child {margin-bottom: 0;}
.reason_item_body1 {}
.reason_number {
    font-family: 'din2014', sans-serif;
    color: #f00019;
    font-size: 4.8148rem;
    line-height: .75em;
    margin-bottom: 1.111rem;
}
.reason_title_mini {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-size: 1.111rem;
    font-weight: 600;
    margin-bottom: 0.74rem;
}
.reason_title {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-size: 3.703rem;
    line-height: 1em;
    font-weight: 700;
    padding-bottom: 1.851rem;
}
.reason_short_desc {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-size: 1.4814rem;
    line-height: 1.5em;
    font-weight: 700;
    padding-bottom: 2.592rem;
}
.reason_desc {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-size: 1rem;
    line-height: 2em;
    font-weight: 400;
    padding-bottom: 2.592rem;
}
.reason_item_body2 {
}
.reason_item_body2_inner {
    max-width: 100%;
    overflow: hidden;
}
.reason_item_body2 img { 
    opacity: 0;
    scale: 1.5;
    width:100%;
    transition: all .8s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.scale-inActive.reason_item_body2 img {
    opacity: 1;
    scale: 1;
}
.reason_item_body2 .sp {display: block;}
.reason_item_body2 .pc {display: none;}

.company_container {
    padding-bottom: 3.703rem;
}
.company_table_body {
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.company_table {
    width: 100%;
    border-collapse:collapse
}
.company_table tr {
    vertical-align: text-top;
    border-bottom: 1px solid #646464;
}
.company_table th {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3B3C3C;
    font-size: 0.962rem;
    font-weight: 500;
    width: 9.259rem;
    text-align: left;
    padding-bottom: 2rem;
}
.company_table td {
    font-family: 'Noto Sans JP', sans-serif;
    color: #646464;
    font-size: 0.962rem;
    line-height: 1.25rem;
    font-weight: 400;
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.company_table_link {
    display: block;
    font-family: inherit;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    text-decoration: none;
}

.access_container {
    padding-bottom: 7.406rem;
}
.company_container .second_title , .access_container .second_title {
    font-size: 2.592rem;
    line-height: 1em;
}
.company_container .second_title {
    margin-bottom: 3.703rem;
}
.access_container .second_title {
    margin-bottom: 1.851rem;
}
.access_body {
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.access_body iframe {
    min-height: 16.6666rem;
    width: 100%;
}

.service_message_continer {}
.service_message_image {
    padding-top: 3.703rem;
}
.service_message_image img {
    max-width: 100%;
}
.service_message {
    padding-top: 4.444rem;
}
.service_message h2 {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3C3C3C;
    font-size: 2.222rem;
    font-weight: 700;
    line-height: 3.333rem;
    margin-top: -.555rem;
    text-align: center;
}

.service_reason_container {
    padding-top: 4.444rem;
}
.service_reason_container .second_title_mini {
    font-size: 1.2962rem;
    line-height: 1em;
    margin-bottom: 1.2962rem;
}
.service_reason_container .second_title {
    font-size: 2.592rem;
    line-height: 1em;
}
.service_reason_switch {
    padding-top: 1.851rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    display: flex;
    margin-bottom: 2.7777rem;
}
.service_reason_switch_btn {
    position: relative;
    flex: 1;
    width: 50%;
    border: 2px solid #F00019;
    text-align: center;
    align-items: center;
    color: #f00019;
    background-color: #FFF;
    text-decoration: none;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.037rem;
    padding-top: 1.111rem;
    padding-bottom: 1.111rem;
    transition: all .2s linear;
}
.service_reason_switch_btn.active {
    background-color: #f00019;
    color:#FFF;
}
.service_reason_switch_btn.active::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 100%;
    display: block;
    width: 0;
    height: 0;
    border: 0.9622rem solid transparent;
    border-top-color: #f00019;
    transform: translate(-50%, 0%);
}
.service_reason_scroller {
    display: none;
    background-color: #F2F2F1;
    padding: 5.037rem 3.703rem;
}
.service_reason_scroller.active {
    display: block;
}

.service_main_wrapper {
    padding-top: 3.703rem;
    padding-bottom: 7.406rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.service_main_container {display: none;}
.service_main_container.active {display: block;}
.service_main_title {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 2.222rem;
    font-weight: 700;
    line-height: 1em;
    margin-bottom: 2.222rem;
    word-break: keep-all;
    text-align: center;
}
.service_main_title_red {
    color: #F00019;
}
.service_main_title_black {
    color: #3C3C3C;
}
.service_main_title_blue {
    font-size: 1.851rem;
    line-height: 2.777rem;
    color: #2160E3;
}
.service_flow_container {
    margin-bottom: 3.703rem;
}
.service_flow_item {
    display: flex;
    flex-direction: column;
    position: relative;
    /* height:20.740rem; */
    border-radius: 0.74rem;
    border: 2px solid #3C3C3C;
    padding-top: 1.851rem;
    padding-bottom: 1.851rem;
    margin-bottom: 2.962rem;
}
.service_flow_item:last-child {
    margin:0;
}
.service_flow_item::after , .service_negative_point_lists::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    display: block;
    width: 0;
    height: 0;
    border: 0.9622rem solid transparent;
    border-bottom-color: #F00019;
    transform: translate( -50% , 0%) rotate(180deg);
}
.service_flow_item_inner_01 {
    display: flex;
    margin-bottom: 1.851rem;
    text-align: center;
}
.service_flow_item_inner_01_box_01 , .service_flow_item_inner_image_right {
    display: flex;
    align-items: center;
    width: 50%;
    flex:1;
    height:6.666rem
}
.service_flow_item_inner_01_box_01 {
    margin-top: auto;
    flex-direction: column;
    align-items: center;
}
.service_flow_item_inner_image_right {
    border-left: 2px solid #3C3C3C;
}
.service_flow_item_inner_image_right img {
    width: 8.148rem;
    margin: auto;
}
.service_flow_item2:last-child .service_flow_item_inner_image_right img {
    width: auto;
    height: 6.666rem;
}
.service_flow_item_title {
    font-family: 'Noto Sans JP', sans-serif;
    color: #F00019;
    text-align: center;
    font-weight: 700;
    font-size: 1.851rem;
    line-height: 1em;
    margin-bottom: 1.851rem;
}
.service_flow_item2 .service_flow_item_title {
    color: #2160E3;
    margin-bottom: 0;
}
.flow_step_logo {
    width: 3.61377rem;
    margin-top: auto;
    margin-bottom: 0.5555rem;
}
.service_flow_item_point {
    font-family: 'Noto Sans JP', sans-serif;
    text-transform: uppercase;
    color: #F00019;
    font-size: 1.111rem;
    font-weight: 700;
}
.service_flow_item2 .service_flow_item_point {
    color: #2160E3;
}
.service_flow_item_point span {
    display: block;
    font-family: 'din2014', sans-serif;
    color: inherit;
    font-size: 2.592rem;
    line-height: 1em;
}
.service_flow_item_detail {
    display: flex;
    flex-wrap: wrap;
    padding-left: 2rem;
    padding-right: 2rem;
    list-style-type: none;
    margin: 0;
}
.service_flow_item_detail li {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: .9629rem;
    line-height: 2em;
    padding-right:1.666rem;
}
.service_flow_item_detail li::before {
    content: "・";
    display: inline-block;
    color: #f00019;
} 
.service_negative_point {
    border-top: 2px solid #3C3C3C;
    padding-top:1.851rem;
}
.service_negative_point2 {
    border-bottom: 2px solid #3C3C3C;
}
.service_negative_point_pick {
    margin-bottom: 1.851rem;
}
.service_negative_point_pick p {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3C3C3C;
    font-size: .925rem;
    font-weight: 700;
    margin-bottom: 1.296rem;
}
.service_negative_point_pick p:last-child {
    margin-bottom: 0;
}
.service_negative_point_pick p::before {
    content: "■";
    display: inline-block;
    color: #f00019;
}
.service_negative_point2 .service_negative_point_pick p::before {
    content: "■";
    display: inline-block;
    color: #2160E3;
}
.service_negative_point_lists {
    display: flex;
    position: relative;
    padding-bottom: 1.851rem;
    border-bottom: 2px solid #3C3C3C;
    margin-bottom: 3.703rem;
}
.service_negative_point_lists ul {
    width: 33.3333%;
    margin: 0;
    padding-left: 1rem;
}
.service_negative_point_lists li {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3C3C3C;
    font-size: 0.962rem;
    line-height: 1em;
    margin-bottom: 0.962rem;
}
.service_negative_point_lists li:last-child {
    margin-bottom: 0;
}
.service_step_ruby {
    font-family: 'Noto Sans JP', sans-serif;
    color:#FFF;
    background-color: #2160E3;
    font-size: .731rem;
    font-weight: 900;
    line-height: 1.296rem;
    padding-left: 1rem;
    padding-right: 1rem;
    display: block;
    text-align: center;
    width: fit-content;
    margin-top: auto;
    margin-bottom: .6296rem;
}
.service_flow_item.service_flow_item2::after {
    border-bottom-color: #2160E3;
}
.service_flow_container.service_flow_container2 {
    margin-bottom: 2.9629rem;
}
.faq_list {
    border-top: 2px solid #3C3C3C;
}
.faq_item {
    border-bottom: 2px solid #3C3C3C;
    padding: 1.851rem 0;
}
.faq_item:last-child {
    border-bottom: 2px solid #3C3C3C;
}
.faq_question p , .faq_answer p {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3C3C3C;
    padding-top: .481rem;
}
.faq_question {
    display: flex;
    margin-bottom: 1.851rem;
}
.faq_answer {
    display: flex;
}
.faq_question p {
    font-size: 1.3333rem;
    line-height: 2rem;
    font-weight: 700;
    letter-spacing: -.025em;
}
.faq_answer p {
    font-size: .814rem;
    line-height: 1.629rem;
    font-weight: 400;
}
.faq_answer_red {
    color: #f00019;
    font-weight: 700;
}
.faq_question::before , .faq_answer::before {
    font-family: 'Noto Sans JP', sans-serif;
    display: inline;
    font-size: 2.222rem;
    line-height: 1em;
    padding-right: 0.962rem;
    font-weight: 900;
}
.faq_question::before {
    content: "Q";
    color: #3B3C3C;
}
.faq_answer::before {
    content: "A";
    color: #f00019;
}


/* WORK インタビュー */

.work_interview_container {
    padding-top: 4.444rem;
}
.work_interview_container .second_title {
    font-size: 3.333rem;
    line-height: 1em;
    margin-bottom: 3.703rem;
}
.work_interview_container .second_title_mini {
    margin-bottom: 1.4814rem;
}
.second_title_mini.second_title_mini2 {
    color: #3C3C3C;
    font-size: 1.444rem;
}
.work_interview_desc {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3C3C3C;
    font-size: 1rem;
    line-height: 2rem;
    font-weight: 400;
    margin-top: -.5em;
    margin-bottom: 5.555rem;
}
.work_interview_main {
    display: flex;
    flex-direction: column;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    padding-bottom: 7.406rem;
}
.work_interview_main2 {
    padding-bottom: 1.851rem;
}
.work_interview_item {
    position: relative;
    height: 31.296rem;
    margin-bottom: 3.703rem;
}
.work_interview_item:last-child {
    margin-bottom: 0;
}
.work_interview_image {
    padding-bottom: 7.222rem;
}
.work_interview_image img {
    max-width: 100%;
}
.work_interview_textarea {
    position: absolute;
    top: 16.851rem;
    right: 0;
    max-width: 13.037rem;
    background-color: #FFF;
    padding: 1.851rem;
    border-radius: 0 0 2.864rem 0;
    /* -webkit-filter: drop-shadow(2px 2px 4px rgba(0,0,0,.3));
    filter: drop-shadow(2px 2px 4px rgba(0,0,0,.3)); */
    box-shadow: 2px 2px 4px rgba(0,0,0,.3);
}
.work_interview_message {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3C3C3C;
    font-size: 1rem;
    line-height: 1.5477rem;
    margin-bottom: 0.74rem;
}
.work_interview_message:not(.work_interview_message2) {
    letter-spacing: -.01em;
}
.work_interview_message.work_interview_message2 {
    letter-spacing: -.12em;
}
.work_interview_co_name {
    font-family: 'Noto Sans JP', sans-serif;
    color: #BEBFBF;
    font-size: .867rem;
    line-height: 1.333rem;
    margin-bottom: 2.037rem;
}
.work_interview_co_name.work_interview_co_name2 {
    color: #595757;
}
.work_interview_btn {
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    position: relative;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:600;
    font-size: 0.802rem;
    text-decoration: none;
    width: 8.518rem;
    height: 2.222rem;
    border-radius: 1.1059rem;
    border: 1px solid #646464;
    color: #646464;
    transition: all .2s linear;
}
.work_interview_btn:hover {
    color: #FFF;
    background: #646464;
}
.work_interview_btn::before {
    content: "・";
    display: block;
    position: absolute;
    font-size: 0.802rem;
    left: 1.111rem;
    font-weight: 900;
}
.work_result_container {
    padding-top: 5.555rem;
    margin-bottom: 1.851rem;
}
.work_result_container .second_title_container {
    padding-bottom: 1.851rem;
}
.work_case_container {
    padding-top: 5.555rem;
    padding-bottom: 7.406rem;
}
.work_case_container .second_title_container {
    padding-bottom: 3.703rem;
}
.work_case_list_item {
    background-color: #F2F2F1;
    padding: 2.592rem 1.851rem;
    margin-bottom: 3.703rem;
}
.work_case_list_item:last-child {
    margin-bottom: 0;
}
.work_case_list_item_l {

}
.work_case_list_item_r {

}
.work_case_title_number {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.5555rem;
    line-height: 1.851rem;
    font-weight: 700;
    color: #FFF;
    width: 10rem;
    background-color: #f00019;
    text-align: center;
    margin-bottom: 1.851rem;
}
.work_case_list_item_title {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.851rem;
    line-height: 2.777rem;
    font-weight: 700;
    color: #3C3C3C;
    margin-top: -.425rem;
    margin-bottom: 2.592rem;
}
.work_case_list_item_desc_title {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.777rem;
    line-height: 2.222rem;
    font-weight: 700;
    color: #3C3C3C;
    padding-left: 0.74rem;
    margin-top: -.222rem;
    margin-bottom: 1.111rem;
    border-left: .37rem solid #f00019;
}
.work_case_list_item_desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1rem;
    line-height: 2rem;
    font-weight: 400;
    color: #3C3C3C;
    margin-top: -.5em;
    margin-bottom: 1.851rem;
}
.work_case_list_item_desc.work_case_list_item_desc1 {
    font-weight: 700;
}
.work_case_list_item_desc.work_case_list_item_desc2 {

}
.work_case_list_item .work_case_list_item_desc:last-child {
    margin-bottom: 0;
}
.work_case_list_item_desc span.red {
    color:#f00019;
    font-size: inherit;
    font-family: inherit;
}
.work_case_list_item_desc span.regular {
    color: inherit;
    font-size: inherit;
    font-family: inherit;
    font-weight: 400;
}

.interview_comment_item {
    margin-bottom: 3.703rem;
}
.interview_comment_image_wrap {}
.interview_comment_image_wrap img {
    max-width: 100%;
}
.interview_comment_image_wrap .pc {display: none;}
.interview_comment_image_wrap .sp {display: block;}
.interview_comment_detail {
}
.interview_comment_detail_inner {
    padding: 3.703rem 1.851rem;
}
.interview_comment_detail_inner .second_title_mini {
    margin-bottom: 1.111rem;
}
.interview_comment_title {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 2.222rem;
    line-height: 3.3333rem;
    font-weight: 700;
    color: #3C3C3C;
    margin-top: -.25em;
    margin-bottom: 1.851rem;
}
.interview_comment_name {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1rem;
    line-height: 1em;
    font-weight: 500;
    color: #595757;
    margin-bottom: 1.851rem;
}
.interview_comment_desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1rem;
    line-height: 2rem;
    font-weight: 400;
    color: #3C3C3C;
    margin-top: -.25em;
}






/* 求人 */
.recurit_main_container {

}
.recurit_main_container {
    padding-bottom: 2.592rem;
}
.recurit_main_container .recruit_body_image {
    display: block;
}
.recruit_detail_container , .recruit_flow_container {
    padding-top: 8.333rem;
    padding-bottom: 2.777rem;
}
.recruit_detail_switch {
    display: flex;
    padding-top: 1.851rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    margin-bottom: 4.444rem;
}
.recruit_detail_switch_btn {
    position: relative;
    flex: 1;
    width: 50%;
    border: 2px solid #F00019;
    text-align: center;
    align-items: center;
    color: #f00019;
    background-color: #FFF;
    text-decoration: none;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.037rem;
    line-height: 1.2222rem;
    font-weight: 600;
    padding-top: .666rem;
    padding-bottom: .666rem;
    transition: all .2s linear;
}
.recruit_detail_switch_btn.active {
    background-color: #f00019;
    color:#FFF;
}
.recruit_detail_switch_btn.active::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 100%;
    display: block;
    width: 0;
    height: 0;
    border: 0.9622rem solid transparent;
    border-top-color: #f00019;
    transform: translate(-50%, 0%);
}

.recruit_detail_main {
    display: none;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    transition: all .2s linear;
}
.recruit_detail_main.active {
    display: block;
}
.recruit_detail_box {
    padding-top: 1.6666rem;
}
.recruit_detail_main .recruit_detail_box:first-child {
    padding-top: 0;
}
.recruit_detail_box:last-child .recruit_detail_right_box {
    border-bottom: none;
}
.recruit_detail_title {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.5503rem;
    line-height: 1em;
    font-weight: 900;
    color: #f00019;
    margin-bottom: 1.851rem
}
.recruit_detail_mini_title {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1rem;
    line-height: 1em;
    font-weight: 700;
    color: #3B3C3C;
    margin-bottom: 0.74rem;
}
.recruit_detail_right_box {
    border-bottom: 1px solid;
}
.recruit_detail_right_title {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1rem;
    line-height: 1em;
    font-weight: 700;
    color: #3B3C3C;
    margin-bottom: 1.592rem;
}
.recruit_detail_right_desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1rem;
    line-height: 2em;
    font-weight: 400;
    color: #3B3C3C;
    margin-top: -.5em;
    margin-bottom: 1.592rem;
    letter-spacing: -.05em;
}

.recruit_detail_container .second_title_mini , .recruit_flow_container .second_title_mini {
    margin-bottom: 1.4814rem;
}
.recruit_detail_container .second_title , .recruit_flow_container .second_title {
    font-size: 2.592rem;
    line-height: 1em;
}
.recruit_detail_desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1rem;
    line-height: 2em;
    font-weight: 400;
    color: #3B3C3C;
    margin-top: -.25em;
    margin-bottom: 1.851rem;
}
.flow_image_container {
    padding: 3.703rem 1.851rem;
}
.flow_image {
    max-width: 100%;
    width: 100%;
}
.flow_image.flow_image_sp {display: block;}
.flow_image.flow_image_pc {display: none;}


/* 新着情報 */
.news_sidebar {
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    padding-bottom: 3.703rem;
}
.news_list_container {
    display: flex;
    flex-direction: column;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    padding-bottom: 7.406rem;
}
.news_list_item_medium {
    position: relative;
    display: flex;
    padding-top: 2.037rem;
    padding-bottom: 1.851rem;
    margin-bottom: 1.851rem;
    text-decoration: none;
}
.news_list_item_medium:last-child {margin-bottom: 0;}
.news_list_item_date {
    position: absolute;
    top: 0;
}
.news_list_item_date p {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: .888rem;
    color: #969696;
}
.news_list_item_date span {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
}
.news_list_item_thumb {
    width: 7.777rem;
    margin-right: 1.111rem;
    flex-shrink: 0;
}
.news_list_item_thumb img {
    width: 100%;
    max-width: 100%;
}
.news_list_item_desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: .888rem;
    line-height: 1.7777rem;
    font-weight: 500;
    margin-top : -.5em;
    color: #3B3C3C;
}
.news_sidebar_tag {
    position: relative;
    display: inline-block;
    font-family: 'Noto Sans JP', sans-serif;
    background-color: #FFF;
    text-align: center;
    min-width: 7.4074rem;
    color:#3B3C3C;
    font-size: 0.6666rem;
    line-height: 2.037rem;
    border-radius: 1.0029rem;
    font-weight: 600;
    border: 1.5px solid #3B3C3C;
    margin-bottom: 1.111rem;
    text-decoration: none;
    transition: all .2s linear;
}
.news_sidebar_tag::before {
    content: "・";
    position: absolute;
    color:#3B3C3C;
    left: .74rem;
}
.news_sidebar_tag.active , .news_sidebar_tag:hover {
    background-color: #3B3C3C;
    color: #FFF;
}
.news_sidebar_tag.active::before , .news_sidebar_tag:hover::before {
    color: #FFF;
}
.news_sidebar_tag:nth-child(4) , .news_sidebar_tag:nth-child(5) , .news_sidebar_tag:nth-child(6) {margin-bottom: 0;}

.c2-btn {
    border-radius: 1.851rem;
    color: #3B3C3C;
    display: inline-flex;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:600;
    font-size: 0.6666rem;
    text-decoration: none;
    min-width: 7.4074rem;
    height: 2.037rem;
    position: relative;
    text-align: center;
    color:#3B3C3C;
}

.c2-btn__inner {
    align-items: center;
    background-color: #FFF;
    border-radius: 1.0029rem;
    border: 1.5px solid #3B3C3C;
    color: #3B3C3C;
    display: inline-flex;
    height: 100%;
    justify-content: center;
    -webkit-mask-image: -webkit-radial-gradient(#fff,#3B3C3C);
    overflow: hidden;
    position: relative;
    transition: color .2s .2s;
    width: 100%;
    z-index: 1;
    text-decoration: none;
    transition: .3s background-color;
}


.c2-btn__circle {
    left: .74rem;
}

.c2-btn__circle,.c2-btn__circle>span {
    display: inline-block;
    height: 2.5px;
    position: absolute;
    width: 2.5px
}

.c2-btn__circle>span {
    background-color: #3B3C3C;
    border-radius: 50%;
    left: 50%;
    top: 50%;
    transform: translate3d(-50%,-50%,0);
    transition: width .35s cubic-bezier(.87,.24,.36,1),height .35s cubic-bezier(.87,.24,.36,1);
    z-index: 1
}

.c2-btn__txt {
    margin-bottom: -1px;
    max-height: 100%;
    position: relative;
    z-index: 2;
    color: inherit;
}


.c2-btn .c2-btn__inner.active  {
    color: #FFF;
    background-color: #3B3C3C;
}

.c2-btn__inner.active .c2-btn__circle>span {
    height: 20rem;
    width: 20rem
}


@media (-ms-high-contrast:none),(hover: hover) {
    .c2-btn:hover .c2-btn__inner {
        color: #FFF;
        background-color: #3B3C3C;
        transition: 3s background-color;
    }

    .c2-btn:hover .c2-btn__circle>span {
        height: 20rem;
        width: 20rem
    }

}
.c2-btn:nth-child(1) , .c2-btn:nth-child(2) , .c2-btn:nth-child(3) {margin-bottom: 1.111rem;}
.c2-btn:nth-child(4) , .c2-btn:nth-child(5) , .c2-btn:nth-child(6) {margin-bottom: 0;}



.news_single_container {
    padding: 3.703rem 0 7.406rem;
    margin-left: 1.851rem;
    margin-right: 1.851rem;
    border-top: 2px solid #969696;
}
.news_single_item_date p , .news_single_item_date p span {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.142rem;
    color:#969696;
    font-weight: 500;
    margin-bottom: 1.111rem;
}
.news_single_title {
    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-size: 1.258rem;
    line-height: 1.9285rem;
    font-weight: 700;
    margin-bottom: 1.851rem;
}
.news_single_thumb {
    margin-bottom: 1.851rem;
}
.news_single_thumb img {
    width: 100%;
}
.news_single_desc {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1rem;
    line-height: 2rem;
    margin-top: -.5em;
    font-weight: 400;
    color:#3B3C3C;
}
.news_body_font_01 {
    font-family: inherit;
    font-size: 1.258rem;
    color: inherit;
    font-weight: 700;
}
.news_body_font_02 {
    font-family: inherit;
    font-size: 1.258rem;
    color: #F00019;
    font-weight: 700;
}

.contact_form_container {
    padding-bottom: 7.406rem;
}
.contact_thumb {
    display: flex;
}
.contact_thumb img {
    width: 100%;
}
.contact_tel_container {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    background-color: #3B3C3C;
    padding-top: 1.851rem;
    padding-bottom: 1.851rem;
}
.contact_tel_top {
    font-family: 'Noto Sans JP', sans-serif;
    color:#FFFFFF;
    font-size: 1.259rem;
    line-height: 1em;
    font-weight: 700;
    margin-bottom: .8833rem;
}
.contact_tel_detail_box {
    display: flex;
    flex-direction: column;
}
.contact_tel_number {
    display: flex;
    margin-bottom: 1.4814rem;
    text-decoration: none;
}
.contact_tel_number svg {
    width: 1.992rem;
    height: 2.592rem;
    fill:#FFF;
    margin-right: 1rem;
}
.contact_tel_number span {
    font-family: 'din2014', sans-serif;
    color:#FFFFFF;
    font-size: 3.118rem;
    line-height: 1em;
    font-weight: 700;
}
.contact_tel_opentime {
    font-family: 'Noto Sans JP', sans-serif;
    color:#FFFFFF;
    font-size: .9629em;
    line-height: 1em;
    font-weight: 500;
}
.contact_form_main {
    padding-top: 3.703rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.contact_form_desc {
    font-family: 'Noto Sans JP', sans-serif;
    color:#000000;
    font-size: 1rem;
    line-height: 2rem;
    font-weight: 500;
    margin-top: -.5em;
    margin-bottom: 3.703rem;
}

.form_control {
    display: flex;
    flex-direction: column;
    margin-bottom: 1.851rem;
}
.form_control:last-child {margin-bottom: 0;}
.form_control input , .form_control select , .form_control textarea {
    border: 1px solid #F2F2F1;
    border-radius: .37rem;
    padding-left: 1.111rem;
    padding-right: 1.111rem;
    height: 3.703rem;
    flex: 1;
    width: 100%;
    background: #F2F2F1;
    font-size: 0.962rem;
}
.form_control input {
    max-width: calc(100% - 2.2222rem);
}
.form_control select {
    border: 1px solid #F2F2F1;
    background: #F2F2F1;

    -webkit-appearance: none;
    appearance: none;
}
.select_box {position: relative;}
.select_box::after {
    content: "";
    position: absolute;
    top: 1.603rem;
    right: 16px;
    width: 7px;
    height: 7px;
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
    transform: rotate(45deg);
}
.form_control textarea {
    max-width: calc(100% - 2.2222rem);
    height: 14.814rem;
    padding-top: 1.296rem;
    margin-bottom: 1.851rem;
}
::placeholder {
    color: #BEBEBE;
}
/* 旧Edge対応 */
::-ms-input-placeholder {
    color: #BEBEBE;
}
/* IE対応 */
:-ms-input-placeholder {
    color: #BEBEBE;
}
.form_label {
    display: flex;
    align-items: center;
    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-size: 1rem;
    line-height: 2rem;
    font-weight: 700;
    margin-bottom: 0.74rem;
}
.form_label span {
    font-family: inherit;
    color: #f00019;
    font-size: 0.74rem;
    font-weight: 700;
}
.input_box {
    display: flex;
}
.input_box_half:first-child {
    padding-right: 0.5555rem;
}
.input_box_half:last-child {
    padding-left: 0.5555rem;
}
.input-error {
    border-color: #f00019!important;
}
.contact_term_box {}
.contact_term {
    padding: 1.851rem 1.296rem;
    border: 1px solid #AAAAAB;
    border-radius: .331rem;
    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-size: 0.962rem;
    line-height: 1.4444rem;
    font-weight: 400;
    max-height: 14.814rem;
    overflow-y: scroll;
    margin-bottom: 1.851rem;
}
.contact_term span {
    display: block;
    font-family: inherit;
    color: inherit;
    font-size: inherit;
    font-weight: 700;
}
.contact_confirm_box {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    height: 3.703rem;
    background-color: #F2F2F1;
    border-radius: .37rem;
    margin-bottom: 2.222rem;

    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-size: 0.962rem;
    font-weight: 400;
}
.contact_confirm_box input {
    height: 1.185rem;
    width: 1.185rem;
    max-width: 1.185rem;
    /* margin-right: 1.111rem; */
}
.contact_submit {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 4.444rem;
    font-family: 'Noto Sans JP', sans-serif;
    background-color:#3B3C3C;
    color: #FFF;
    font-size: 1.185rem;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    border-radius: .127rem;
}
.contact_submit_02 {
    font-size: 1rem;
    height: 2.6666rem;
    border: 1px solid #3B3C3C;
}
.contact_submit_03 {
    font-size: 1rem;
    height: 2.6666rem;
    color:#3B3C3C;
    border: 1px solid #3B3C3C;
    background-color: #FFF;
}
.contact_switch {
    display: flex;
    padding-top: 2.592rem;
    padding-bottom: 2.592rem;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
}
.contact_switch_btn {
    position: relative;
    line-height: 2.777rem;
    flex: 1;
    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-weight: 500;
    font-size: .777rem;
    text-decoration: none;
    text-align: center;
    border: 1px solid #3B3C3C;
}
.contact_switch_btn.active {
    background-color: #3B3C3C;
    color: #FFF;
}
.contact_switch_btn.active::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 100%;
    display: block;
    width: 0;
    height: 0;
    border: 0.9622rem solid transparent;
    border-top-color: #3B3C3C;
    transform: translate(-50%, 0%);
}

.contact_confirm__modal {
    display: none; /* 初期状態では非表示 */
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0,0,0.4);
}

.contact_confirm__modal .modal-content {
    background-color: #fefefe;
    margin: 35% auto;
    padding: 1.851rem;
    border: 1px solid #888;
    width: 80%;
}
.contact_confirm__modal p {
    font-family: 'Noto Sans JP', sans-serif;
    color:#3B3C3C;
    font-size: 1rem;
    line-height: 2rem;
    font-weight: 400;
    margin-bottom:  1.851rem;
    white-space: pre-wrap;
}
.contact_confirm__modal p span.bold {
    font-weight: 700;
}
.contact_confirm__modal .modal_btns {
    display: flex;
}

.contact_confirm__modal .close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}
.contact_confirm__modal .close:hover,
.contact_confirm__modal .close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}



.policy_container {
    display: flex;
    flex-direction: column;
    padding-left: 1.851rem;
    padding-right: 1.851rem;
    padding-bottom: 7.406rem;
}
.policy_box {
    display: flex;
    flex-direction: column;
}
.policy_box_title {
    font-family: 'Noto Sans JP', sans-serif;
    color: #000;
    font-size: 1.3333rem;
    line-height: 2.222rem;
    font-weight: 700;
    margin-top: -.5rem;
    margin-bottom: 1.296rem;
}
.policy_box_desc {
    font-family: 'Noto Sans JP', sans-serif;
    color: #3C3C3C;
    font-size: .9629rem;
    line-height: 1.925rem;
    font-weight: 400;
    margin-top: -.5em;
    margin-bottom: 2.962rem;
}
.policy_box:last-child .policy_box_title .policy_box:last-child .policy_box_desc {
    margin-bottom: 0;
}


/* ページの先頭のタイトル */

.c-sectMaskTitle__text {
    position: relative;
    display: flex;
    flex-direction: column;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 4.444rem;
    font-weight: 800;
    line-height: 1em;
    margin-bottom: 1.111rem;
}

.c-sectMaskTitle__textLayerA {
    font-size: inherit;
    color: #3B3C3C;
    opacity: 0;
    transform: translate3d(0,15px,0);
    transition: opacity .65s cubic-bezier(.24,.13,.26,1.01),transform .9s cubic-bezier(.24,.13,.26,1.01);
    letter-spacing: .007em;
}
.c-sectMaskTitle__textLayerA > span {
    font-size: inherit;
    color: inherit;
}
.c-sectMaskTitle__textLayerA .middle , .c-sectMaskTitle__textLayerB .middle {
    font-size: 3.703rem;
    font-weight: 700;
}
.c-sectMaskTitle__textLayerA .mini , .c-sectMaskTitle__textLayerB .mini {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1em;
}
.top_container_title_double .c-sectMaskTitle__textLayerA , .top_container_title_double .c-sectMaskTitle__textLayerB {
    flex-direction: column;
}
.top_container__policy .c-sectMaskTitle__text {
    font-size: 2.962rem;
}
.c-sectMaskTitle__text.high_middle , .sectMaskTitle__textLayerA.high_middle , .sectMaskTitle__textLayerB.high_middle {
    font-size: 4.222rem;
}

@supports (clip-path: polygon(0 0,0 0,0 0)) {
    .c-sectMaskTitle__textLayerA {
        color:#fff
    }
}

.c-sectMaskTitle__textLayerB {
    align-items: baseline;
    font-size: inherit;
    display: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none
}
.c-sectMaskTitle__textLayerB > span {
    font-size: inherit;
    color: inherit;
}

@supports (clip-path: polygon(0 0,0 0,0 0)) {
    .c-sectMaskTitle__textLayerB {
        clip-path:polygon(0 0,0 0,0 0);
        color: #3B3C3C;
        display: flex;
        left: 0;
        position: absolute;
        top: 0;
        transition: clip-path .65s cubic-bezier(.24,.13,.26,1.01) .5s
    }
}

.c-sectMaskTitle__desc {
    color: #3B3C3C;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.111rem;
    font-weight: 800;
    line-height: 1.666rem;
    margin-top: .8vw;
    opacity: 0;
    transform: translate3d(0,5px,0);
    transition: opacity .65s ease .7s,transform .65s ease .7s
}

.is-inView .c-sectMaskTitle__textLayerA {
    opacity: 1;
    transform: translateZ(0)
}

.is-inView .c-sectMaskTitle__textLayerB {
    clip-path: polygon(0 0,200% 0,0 200%)
}

.is-inView .c-sectMaskTitle__desc {
    opacity: 1;
    transform: translateZ(0)
}


/* ページの先頭のタイトル   END */

.toppage_subtitle {
    position:relative;
    margin-bottom:1.851rem;
}

.c2-sectMaskTitle__text {
    position: relative;
    display: flex;
    flex-direction: column;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 3.703rem;
    font-weight: 800;
    line-height: 1em;
    margin-bottom: 1.111rem;
}

.c2-sectMaskTitle__textLayerA {
    font-size: inherit;
    color: #f00019;
    opacity: 0;
    transform: translate3d(0,15px,0);
    transition: opacity .35s cubic-bezier(.24,.13,.26,1.01),transform .9s cubic-bezier(.24,.13,.26,1.01);
    letter-spacing: .007em;
}
.c2-sectMaskTitle__textLayerA > span {
    font-size: inherit;
    color: inherit;
}
.c2-sectMaskTitle__textLayerA .middle , .c2-sectMaskTitle__textLayerB .middle {
    font-size: 3.703rem;
    font-weight: 700;
}
.c2-sectMaskTitle__textLayerA .mini , .c2-sectMaskTitle__textLayerB .mini {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1em;
}
.top_container_title_double .c2-sectMaskTitle__textLayerA , .top_container_title_double .c-2sectMaskTitle__textLayerB {
    flex-direction: column;
}
.top_container__policy .c2-sectMaskTitle__text {
    font-size: 2.962rem;
}

@supports (clip-path: polygon(0 0,0 0,0 0)) {
    .c2-sectMaskTitle__textLayerA {
        color:#fff
    }
}

.c2-sectMaskTitle__textLayerB {
    align-items: baseline;
    font-size: inherit;
    display: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none
}
.c2-sectMaskTitle__textLayerB > span {
    font-size: inherit;
    color: inherit;
}

@supports (clip-path: polygon(0 0,0 0,0 0)) {
    .c2-sectMaskTitle__textLayerB {
        clip-path:polygon(0 0,0 0,0 0);
        color: #f00019;
        display: flex;
        left: 0;
        position: absolute;
        top: 0;
        transition: clip-path .35s cubic-bezier(.24,.13,.26,1.01) .25s
    }
}

.c2-sectMaskTitle__desc {
    color: #000000;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.111rem;
    font-weight: 600;
    line-height: 1em;
    margin-top: .8vw;
    opacity: 0;
    transform: translate3d(0,5px,0);
    transition: opacity .35s ease .37s,transform .35s ease .37s
}

.is-inView .c2-sectMaskTitle__textLayerA {
    opacity: 1;
    transform: translateZ(0)
}

.is-inView .c2-sectMaskTitle__textLayerB {
    clip-path: polygon(0 0,200% 0,0 200%)
}

.is-inView .c2-sectMaskTitle__desc {
    opacity: 1;
    transform: translateZ(0)
}