:root {

/*色*/
--main-color: #702D7F;
--red-color: #CC0C39;
--faq-color: #E3E6E6;
--btn-color: #FFCA00;
--text-color: #333333;
--border-color: #E3E6E6;

/*コンテンツ幅*/
--max-width: 652px;
--max-width-content: 1100px;

/*ボタンサイズ*/
--btn_width: 450px;
--btn_height: clamp(45px, 22.723px + 4.95vw, 55px);
--btn_font-size: clamp(16px, 2.634px + 2.97vw, 22px);

/*見出しサイズ*/
--h2_font-size: clamp(24px, 17.793px + 1.655vw, 36px);
--h2_height: clamp(55px, 41.034px + 3.724vw, 82px);
--h3_font-size: 22px;

/*マージン設定*/
--margin-bottom_L: clamp(73px, -85.168px + 35.149vw, 144px);
--margin-bottom_M: clamp(45px, 26.897px + 4.828vw, 80px);
--margin-bottom_S: 24px;
--margin-bottom_btn: 13px;
}


@media screen and (max-width: 1100px) {
 #common_header .ch_logo_button_pc,
 #common_header .ch_tel_button_pc,
 #common_header .ch_menu_button_pc,
 #common_header .ch_mypage_button_pc{
  display: none!important;
 }
}
@media screen and (min-width: 1100px) {
 #common_header .ch_logo_button_sp,
 #common_header .ch_tel_button_sp,
 #common_header .ch_menu_button_sp,
 #common_header .ch_mypage_button_sp{
  display: none!important;
 }
}
@media print {
 #common_header .ch_logo_button_sp,
 #common_header .ch_tel_button_sp,
 #common_header .ch_menu_button_sp,
 #common_header .ch_mypage_button_sp{
  display: none!important;
 } 
}

#common_header{
    font-family: "noto-sans-cjk-jp", sans-serif;
    font-style: normal;
}

#common_header * {
 box-sizing: border-box;
}
#common_header .fixed{
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 z-index: 991;
}
#common_header .ch_outer {
 padding: 25px 50px;
 display: grid;
/* grid-template-columns: 370px 1fr 262px 210px 138px;
 grid-column-gap: 20px;*/
 grid-template-columns: 370px 1fr 45px 0px 0px;
 align-items: center;
 font-size: 16px;
 text-align: center;
 line-height: 1.2em;
 background-color: #fff;
}
#common_header .ch_logo a,
#common_header .ch_tel a{
 display: block;
 line-height: 0;
 font-size: 0;
 text-decoration: none;
 cursor: pointer;
}
#common_header .ch_logo_button_pc {
    /*height: 50px;*/
}
#common_header .ch_logo_button_pc img {
    max-width: 100%;
    /*height: 100%;*/
    display: block;
  width: 100%;
  margin: 0;
}
#common_header .ch_mypage {
 overflow: hidden;
}

#common_header .ch_mypage a,
#common_header .ch_mypage a:active,
#common_header .ch_mypage a:checked,
#common_header .ch_mypage a:hover{
 display: block;
 text-decoration: none;
 cursor: pointer;
}
#common_header .ch_mypage_button_pc{
 background-color: #E66700;
 display: grid;
 padding: 1em 0;
 border-radius: 2em;
 color: #fff;
 font-weight: bold;
 line-height: 1em;
 font-size: 0.9em;
 grid-template-columns: 30px 10em;
 justify-content: center;
 align-items: center;
}
#common_header .mypage_icon {
    font-size: 20px;
}

#common_header .ch_menu a,
#common_header .ch_menu a:active,
#common_header .ch_menu a:checked,
#common_header .ch_menu a:hover{
 display: block;
 text-decoration: none;
 cursor: pointer;
}
/*#common_header .ch_menu_button_pc{
 background-color: #6E6E6E;
 display: grid;
 padding: 1em 0;
 border-radius: 2em;
 color: #fff;
 font-weight: bold;
 line-height: 1em;
 font-size: 0.9em;
 grid-template-columns: 30px 4.5em;
 justify-content: center;
 align-items: center;
}
#common_header .menu_icon {
    font-size: 20px;
}*/
#common_header .ch_menu_button_pc {
    display: grid;
    grid-template-columns: 1fr;
    grid-row-gap: 5px;
    align-items: center;
    color: #6E6E6E;
    justify-content: center;
}
#common_header .menu_icon {
    font-size: 25px;
}
@media screen and (max-width: 1100px) {
 /*
 #common_header .ch_outer {
  padding: 10px;
  grid-template-columns: 185px 1fr 45px 45px 45px;
  grid-column-gap: 10px;
  height: 65px;
 }
 */
 #common_header .ch_outer {
  padding: 0 10px;
/*  grid-template-columns: 1fr 0 45px 45px 45px;*/
  grid-template-columns: 1fr 0 45px 0px 0px;
  grid-column-gap: 0;
  height: 65px;
 }
 #common_header .ch_outer div{
  overflow: hidden;
 }
 #common_header a{
  line-height: inherit;
  font-size: inherit;
  color: inherit;
 }
 #common_header .ch_logo_button_sp {
    /*height: 25px;*/
 }
 #common_header .ch_logo_button_sp img {
        display: block;
        width: 100% !important;
        max-width: 150px !important;
        margin: 0;
 }
 #common_header .sp_button{
  display: grid;
  grid-template-columns: 1fr;
  grid-row-gap: 5px;
  align-items: center;
  justify-content: center;
 }
 #common_header .sp_icon{
  font-size: 25px;
  line-height: 25px;
  padding-top: 2px;
 }
 #common_header .sp_text{
  font-size: 9px;
  line-height: 9px;
  font-weight: bold;
 }
 
 #common_header .ch_tel_button_sp{
  color: #22893B;
 }
 #common_header .ch_mypage_button_sp{
  color: #E66700;
 }
 #common_header .ch_menu_button_sp{
  color: #6E6E6E;
 }
}

/* フォーム・マイページ用　設定 
#common_header .ch_outer.no_menu {
    grid-template-columns: 370px 1fr 262px 210px;
}*/
@media screen and (max-width: 1100px) {
 #common_header .ch_outer.no_menu {
  grid-template-columns: 1fr 0 45px 45px;
 }
}
#common_header .ch_outer.no_menu .ch_menu {
    display: none;
}

#common_header .ch_outer.no_login {
    grid-template-columns: 370px 1fr 262px 138px;
}
@media screen and (max-width: 1100px) {
 #common_header .ch_outer.no_login {
  /*grid-template-columns: 185px 1fr 45px 45px;*/
  grid-template-columns: 1fr 0 45px 45px;
 }
}
#common_header .ch_outer.no_login .ch_mypage {
    display: none;
}

#common_header .ch_outer.no_login.no_menu {
    /*grid-template-columns: 370px 1fr 262px;*/
    grid-template-columns: 1fr 0 262px;
}
@media screen and (max-width: 1100px) {
 #common_header .ch_outer.no_login.no_menu {
  /*grid-template-columns: 185px 1fr 45px;*/
  grid-template-columns: 1fr 0 45px;
 }
}

#common_header .form_header_h1 {
    display: block;
    font-size: 20px;
    margin: 0;
    background-color: #FF850D;
    padding: 10px 0;
    color: #fff;
    text-align: center;
    line-height: 1em;
}
#common_header .form_header_h1.oyakata {
 background-color: #22893B;
}
#common_header .form_header_h1.jimu {
 background-color: #E66700;
}
#common_header .form_header_h1.kyokasugu {
 background-color: #E05E78;
}
#common_header .form_header_h1.ccus {
 background-color: #3193AB;
}

#common_header img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}
/*IVRポップ追加*/
#phone_modal_layer.phone-modal-overlay {
    display: none !important; 
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important; 
    height: 100vh !important; 
    background: rgba(0, 0, 0, 0.7) !important;
    z-index: 2147483647 !important; 
    display: none !important; 
    grid-template-columns: none !important; 
    padding: 0 !important;
    margin: 0 !important;
}
#phone_modal_layer.phone-modal-overlay.is-open {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}
.phone-modal-content {
    background: #fff !important;
    width: 90% !important;
    max-width: 380px !important;
    padding: 30px 20px !important;
    border-radius: 15px !important;
    text-align: center !important;
    position: relative !important;
    margin: auto !important;
}
.modal-instruction {
    border-radius: 10px !important;
    margin-bottom: 25px !important;
}
.modal-title {
    font-weight: bold!important;
}
    .cta_btn--wrap a {
        width: 90%;
        max-width: var(--btn_width);
        height: var(--btn_height);
        background-color: var(--btn-color);
        border-radius: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: var(--btn_font-size);
        text-decoration: none;
        color: var(--text-color);
        margin: 0 auto;
        border-style: none;
        font-weight: normal;
    }
    .white_btn--wrap a {
        width: 90%;
        max-width: var(--btn_width);
        height: var(--btn_height);
        background-color: #fff;
        border-radius: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: var(--btn_font-size);
        text-decoration: none;
        color: var(--text-color);
        margin: 0 auto;
        border-style: none;
        font-weight: normal;
        border: 1px solid #898D8D;
        transition: all 0s;
    }
    .margin-bottom_btn {
        margin-bottom: var(--margin-bottom_btn) !important;
    }
