@charset "utf-8";

/* CSS Document */

html{}
  body{
    color: rgba(24,22,22,1);
    font-size: 17px;
    font-family: YuGothic, 'Yu Gothic', sans-serif;
    font-weight: normal;
    line-height: 24px;
    -webkit-text-size-adjust: 100%;
    }
    /* ie11 */
    _:-ms-fullscreen, :root body{font-family: "メイリオ", Meiryo, sans-serif;}      

      a{color: rgba(24,22,22,1);}

.svg_lab{display: none;}
      
/* header */
.gl_header{
  width: 100%;
  padding: 0 40px;
  box-sizing: border-box;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200;
  }
  .gl_header_inner{
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 1290px;
    height: 90px;
    margin: 0 auto;
    background-color: rgba(255,255,255,1);
    transform: skew(-30deg);
    box-shadow: 4px 5px 10px 7px rgba(0,0,0,.2);
    position: relative;
    z-index: 100;
    transition: .3s;
    }
    .gl_logo_area{
      display: flex;
      align-items: center;
      width: 25%;
      margin-left: 33px;
      transform: skew(30deg);
      }
      .gl_logo_area img{
        width: 100%;
        max-width: 240px;
        vertical-align: bottom;
        }
      .gl_logo_pc{
        display: inline-block;
        width: 100%;
        transition: .3s;
        }
        .gl_logo_pc:hover{opacity: .7;}
    .gl_nav{
      display: flex;
      justify-content: flex-end;
      width: 75%;
      }
      .glnv_mnu{
        display: flex;
        align-items: center;
        width: 44%;
        }
        .glnv_txtlnk{
          width: 25%;
          height: 40px;
          border-left: 1px solid rgba(169,169,169,1);
          transition: .3s;
          }
          .glnv_lnk_skewrtn{
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100%;
            font-size: 16px;
            font-weight: bold;
            text-align: center;
            transform: skew(30deg);
            transition: .3s;
            }
            .glnv_lnk_skewrtn:hover{color:#999;}



        .glnv_btn{width: 12%}
          .skew_btn{
            display: flex;
            justify-content: center;
            width: 100%;
            height: 100%;
            transition: .3s;
            box-sizing: border-box;
            }
            .skew_btn:hover{background-color: rgba(255,255,255,1);}
            .glnv_access_btn{
              border-left: 1px solid rgba(8,139,223,1);
              background-color: rgba(8,139,223,1);
              }
            .glnv_contact_btn{background-color: rgba(241,170,62,1);}
              .glnv_btn_inr{
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                width: 100px;
                height: 100%;
                }
                .glnv_access_icon,
                .glnv_contact_icon{
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  width: 24px;
                  height: 24px;
                  margin-bottom: 10px;
                  margin-left: -28px;
                  transform: skew(30deg);
                  }
                  .glnv_access_icon .acc_icon{
                    width: 16px;
                    fill: rgba(255,255,255,1); 
                    transition: .3s;
                    }
                  .glnv_contact_icon .mail_icon{
                    width: 24px;
                    fill: rgba(255,255,255,1);
                    transition: .3s;
                    }
                .glnv_btntxt{
                  width: 100%;
                  margin-left: 5px;
                  font-size: 15px;
                  font-weight: bold;
                  color: rgba(255,255,255,1);
                  text-align: center;
                  transition: .3s;
                  transform: skew(30deg);
                  }
                  .glnv_access_btn:hover .glnv_btntxt{color: rgba(8,139,223,1);}
                    .glnv_access_btn:hover .acc_icon{fill: rgba(8,139,223,1);}
                  .glnv_contact_btn:hover .glnv_btntxt{color: rgba(241,170,62,1);}
                    .glnv_contact_btn:hover .mail_icon{fill: rgba(241,170,62,1);}}
                    .btn_txt_sp{display: none;}


/* pages common */
.page_ttl_area{
  width: 100%;
  height: 525px;
  background-size: cover;
  background-position: center;
  position: relative;
  }
  .page_ttl_area .blk_ttl{
    position: absolute;
    top: 285px;
    left: 50%;
    transform: translateX(-50%);
    }

.blk_ttl{text-align: center;}
  .blk_ttl_img{
    height: 56px;
    margin-bottom: 15px;
    }
    .ttl_img_blo{height: 70px;}
    .blk_ttl_img img{height: 100%;}
    .blk_ttl_txt{
      font-size: 19px;
      font-weight: normal;
      color: rgba(255,255,255,1);
      }

.com_btn{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 325px;
  height: 65px;
  margin: 0 auto;
  font-size: 18px;
  font-weight: bold;
  color: rgba(24,148,243,1);
  background-color: rgba(255,255,255,1);
  transition: .3s;
  position: relative;
  top: 0px;
  left: 0px;
  }
  .com_btn.clr_gry{background-color: rgba(228,224,224,1);}
  .com_btn.clr_org{
    width: 290px;
    color: rgba(255,255,255,1);
    background-color: rgba(252,165,28,1);
    }
  .com_btn.clr_blu{
    width: 290px;
    color: rgba(255,255,255,1);
    background-color: rgba(28,157,231,1);
    }    
  .com_btn.clr_l-blu{
    width: 315px;
    height: 55px;
    color: rgba(41,90,168,1);
    background-color: rgba(197,229,243,1);
    }
  .com_btn::after{
    content: "";
    width: 8px;
    height: 100%;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    position: absolute;
    top: 0;
    right: 15px;
    transition: .3s;
    z-index: 100;
    }
  .com_btn::after{background-image: url(/src/images/common/arw_right_b.svg);}
  .com_btn.clr_org::after,
  .com_btn.clr_blu::after{background-image: url(/src/images/common/arw_right_w.svg);}
  .com_btn.clr_l-blu::after{background-image: url(/src/images/common/arw_right_db.svg);}
  .com_btn:hover{
    box-shadow: 15px 15px 15px 0px rgba(0,0,0,.2);
    top: -5px;
    left: -5px;
    opacity: .8;
    }      

.bcl_wrap{
  width: 100%;
  max-width: 1065px;
  margin: 35px auto 65px;
  padding: 0 20px;
  font-size: 15px;
  box-sizing: border-box;
  }
  .bcl_lnk{
    margin-right: 25px;
    color: rgba(21,68,153,1);
    position: relative;
    }
    .bcl_lnk:hover{text-decoration: underline;}
    .bcl_lnk::after{
      content: "";
      width: 1px;
      height: 15px;
      background-color: rgba(21,68,153,1);
      position: absolute;
      top: 1px; 
      right: -14px;
      }
  .bcl_txt{color: rgba(21,68,153,1);}

.skew_ttl{
  width: 100%;
  padding: 0 30px;
  background-color: rgba(29,64,192,1);
  box-sizing: border-box;
  }
  .skew_ttl_inr{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 70px;
    background-color: rgba(0,149,223,1);
    transform: skew(-40deg);
    }
    .skew_ttl_txt{
      font-size: 28px;
      font-weight: bold;
      color: rgba(255,255,255,1);
      transform: skew(40deg);
      }  

.classify_area{
  width: 100%;
  max-width: 1025px;  
  margin: 0 auto;
  margin-bottom: 90px;
  }
  .clfy_lst{
    display: flex;
    flex-wrap: wrap;
    }
  .clfy_itm{
    width: 23.5%;
    margin-right: 2%;
    }
    .clfy_itm:last-of-type{margin-right: 0;}
    .clfy_itm .clfy_btn{
      width: 100%;
      height: 72px;
      font-size: 18px;
      color: rgba(38,38,38,1);
      background-color: rgba(220,225,230,1);
      } 
      .clfy_itm .clfy_btn:after{
        width: 14px;
        background-image: url(/src/images/common/arw_down_b.svg);
        }      

/* contact */
.contact_wrap{
  width: 100%;
  margin-top: 350px;
  color: rgba(71,69,69,1);
  background-color: rgba(41,90,168,1);
  position: relative;
  box-sizing: border-box;
  }
    .contact_inr{
      overflow: hidden;
    padding: 0 59px;  
      }
      .ctt_skew{
      padding:  55px 0 50px;
      background-color: rgba(189,229,246,1);
      transform: skew(-12deg);
        z-index: 0;
        box-sizing: border-box;
        }      
      .ctt_skewrtn{transform: skew(12deg);}
      .ctt_itr{
        margin-top: 25px;
        font-size: 18px;
        line-height: 30px;
                text-align: center;
              }
          .ctt_frm{
        width: 440px;
        margin: 25px auto 0;
            text-align: center;
            }
            .ctt_frm .ctt_btn{
              width: 100%;
          font-size: 21px;
              }
            .ctt_btn::before{
              content: "";
              width: 30px;
              height: 100%;
              background-image: url(/src/images/common/mail_icon_w.svg);
              background-repeat: no-repeat;
              background-size: 100%;
              background-position: center;
              position: absolute;
              left: 30px;
              top: 0;
              }
            .ctt_btn::after{
              width: 9px;
              right: 30px;
              }
            .ctt_btn_txt{padding-left: 20px;}
      .ctt_tel{
        display: flex;
        flex-wrap: wrap;
        max-width: 720px;
        margin: 35px auto 0;
        }
        .ctt_tel_blc{
          display: flex;
          align-items: center;
          width: 50%;
          padding: 0 0 0 20px;
          box-sizing: border-box;
          }
          .ctt_tel_blc:first-of-type{
            justify-content: flex-end;
            padding: 0 20px 0 0;
            border-right: 1px solid rgba(0,161,233,1);
            }
          .ctt_tel_ttl{
            display: inline-block;
            margin-right: 15px;
            font-size: 19px;
            font-weight: bold;
            }
          .tel_no{
            pointer-events: none;
            font-family: YuGothic, 'Yu Gothic','Roboto', sans-serif;
            font-size: 34px;
            font-weight: bold;
            text-align: center;
            line-height: 36px;
            color: rgba(71,69,69,1);
            }
          .ctt_tel_note{
            width: 100%;
            margin-top: 15px;
              font-size: 16px;
              text-align: center;
            box-sizing: border-box;
              }
      .acc_btn{
      width: 315px;
      height: 53px;
        margin-top: 25px;
        font-weight: normal;
        }
        .acc_btn::before{
          content: "";
          width: 16px;
          height: 100%;
          background-image: url(/src/images/common/acc_icon_db.svg);
          background-repeat: no-repeat;
          background-size: 100%;
          background-position: center;
          position: absolute;
          left: 50px;
          top: 0;
          }
        .acc_btn::after{
          width: 7px;
          right: 15px;
          }
        .acc_btn_txt{padding-left: 15px;}

/* footer */
.gl_footer{
  padding-bottom: 40px;
  background-color: rgba(242,242,242,1);
  }
  .ftr_mnu{
    width: 100%;
    border-bottom: 1px solid rgba(239,239,239,1);
    background-color: rgba(255,255,255,1);
    }
    .ftr_mnu_lst{
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 100%;
      max-width: 1025px;
      height: 80px;
      margin: 0 auto;
      padding: 0 20px;
      box-sizing: border-box;
      }
      .ftr_mnu_txt{
        font-size: 14px;
        font-weight: bold;
        color: rgba(31,83,165,1);
        transition: .3s;
        }
        .ftr_mnu_txt:hover{opacity: .6;}

  .ftr_inr{
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 1065px;
    margin: 0 auto;
    padding: 25px 20px 0;
    font-size: 14px;
    color: rgba(74,70,70,1);
    box-sizing: border-box;
    }
    /* ie11 */
    _:-ms-fullscreen, :root .ftr_inr{font-size: 13px;}
    .ftr_logo{width: 160px;}
      .ftr_logo img{width: 100%;}
    .ftr_office{
      padding-top: 15px;
      width: 740px;
      }
    .ftr_ofc_itm{
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      }
      .ftr_ofc_itm:first-of-type{margin-bottom: 5px;}
      .ftr_ofc_typ{width: 85px;}
      .ftr_ofc_add{width: 350px;}
      .ftr_ofc_ctt{
        width: 280px;
        text-align: right;  
        }
  .ftr_submnu{
    width: 100%;
    max-width: 1025px;
    margin: 0 auto;
    margin-top: 10px;
    font-size: 0;
    text-align: right;
    }
    .ftr_submnu a{font-size: 14px;}
      .sitemap_lnk{
        margin-right: 31px;
        position: relative;
        }
        .sitemap_lnk::after{
          content: "";
          width: 1px;
          height: 15px;
          background-color: rgba(74,70,70,1);
          position: absolute;
          right: -16px;
          top: 1px;
          }
        .ftr_submnu a:hover{text-decoration: underline;}

    .ftr_copy{
      margin-top: 55px;
      font-size: 13px;
      color: rgba(74,70,70,1);
      text-align: center;
      }

/* pagetop button */
.pgt_btn_blc{
  display: none;
  background-color: rgba(255,255,255,1);
  position: fixed;
  right: 20px;
  bottom: 20px;
  }
  .pgt_btn{transition: .3s;}
    .pgt_btn:hover{opacity: .7;}
    .pgt_btn img{
      width: 100%;
      vertical-align: bottom;
      }


@media screen and (max-width: 1200px) {

  /* header */
  .gl_header_inner{
    height: 70px;
    z-index: 100;
  }
  .gl_logo_area{width: 285px;}
  .gl_nav{width: 67%;}
  .glnv_mnu{width: 60%;}
  .glnv_txtlnk{
    width: 25%;
    height: 30px;
  }
  .glnv_lnk_skewrtn{font-size: 14px;}
  .glnv_lnk_skewrtn:hover{opacity: .7;}
  .glnv_btn{width: 12%}
  .glnv_btn_inr{margin-left: -12%;}
  .glnv_instagram_icon,
  .glnv_access_icon,
  .glnv_contact_icon{
    height: 26px;
    margin-bottom: 5px;
    margin-left: -3px;
  }
  .glnv_access_icon img{width: 16px;}
  .glnv_contact_icon img{width: 24px;}
  .glnv_btntxt{
    margin-left: 17px;
    font-size: 13px;
    line-height: 15px;
  }

} /* max-width: 1200px */

@media screen and (min-width: 1051px) {

/* header */
.gl_logo_sp{display: none;}
.glnv_btn_sp{display: none;}

} /* min-width: 1051px */

@media screen and (max-width: 1050px) {

/* header */
.gl_logo_area{width: 160px;}
  .gl_logo_pc{display: none;}
  .gl_logo_sp{width: 140px;}
  .gl_nav{width: 90%;}

/* pages common */
.clfy_itm .clfy_btn{
  height: 62px;
  font-size: 16px;
  } 

/* footer */
  .ftr_inr{
    display: flex;
    justify-content: center;
    }
    .ftr_logo{margin-right: 40px;}
    .ftr_office{
      padding-top: 15px;
      width: 455px;
      }
    .ftr_ofc_itm{justify-content: flex-start;}
      .ftr_ofc_itm:first-of-type{margin-bottom: 10px;}
      .ftr_ofc_typ{width: 100px;}
      .ftr_ofc_add{width: auto;}
      .ftr_ofc_ctt{
        width: auto;
        padding-left: 100px;
        text-align: left;
        box-sizing: border-box;
        }
  .ftr_submnu{
    margin-top: 40px;
    text-align: center;
    }
    .ftr_copy{margin-top: 25px;}

/* contact */
.contact_wrap{margin-top: 250px;}
  .contact_inr{
    overflow: hidden;
    padding: 0 15px;  
    }
    .ctt_skew{padding:  55px 0 50px;}      
      .ctt_itr{
        margin-top: 20px;
        font-size: 16px;
        line-height: 26px;
        }
      .ctt_frm{width: 380px;}
        .ctt_frm .ctt_btn{
          height: 55px;
          font-size: 18px;
  }
        .ctt_btn::before{
          width: 26px;
          left: 25px;
      }
        .ctt_btn::after{
          width: 7px;
          right: 15px;
        }       
      .ctt_tel{margin: 30px auto 0;}
          .ctt_tel_ttl{font-size: 16px;}
        .tel_no{
            font-size: 28px;
            line-height: 32px;
            }
    .acc_btn{
      width: 315px;
      height: 53px;
      margin-top: 25px;
      font-weight: normal;
          }
      .acc_btn::before{
        content: "";
        width: 16px;
        height: 100%;
        background-image: url(/src/images/common/acc_icon_db.svg);
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: center;
        position: absolute;
        left: 50px;
        top: 0;
        }
      .acc_btn::after{
        width: 7px;
        right: 15px;
        }
      .acc_btn_txt{padding-left: 15px;}


/* pagetop button */
.pgt_btn_blc{
  width: 60px;
  height: 60px;
        }

} /* max-width: 1050px */


@media screen and (min-width: 961px) {

  /* header */
  .splogo_w{display: none;}
  .glnv_btn_sp{display: none;}
  .gl_nav_sp{display: none !important;}

} /* min-width: 901px */

@media screen and (max-width: 960px) {

  /* header */
  .gl_header {padding: 0 24px;}

  .splogo_w{display: none;}
  .open .splogo_w{display: block;}
  .open .splogo_c{display: none;}
  
  .gl_nav{display: none;}
  .glnv_btn_sp{display: flex;}
  .open .gl_header_inner{background-color: rgba(8,139,223,1);}  
  
  .glnv_contact_sp{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100px;
    height: 100%;
  }
  .glnv_btn_sp > .glnv_contact_sp:nth-child(1){
    background-color: rgba(8,139,223,1);
  }
  .glnv_btn_sp > .glnv_contact_sp:nth-child(2){
    background-color: rgba(254,164,23,1);
  }
  .glnv_contact_sp .glnv_contact_icon{
    width: 35px;
    margin: 0;
    transform: skew(30deg);
  }
  .glnv_contact_sp .glnv_contact_icon .mail_icon{width: 100%;}
  .glnv_hmb_btn{
    position: relative;
    width: 100px;
    height: 100%;
    background-color: rgba(8,139,223,1);
  }
  .glnv_skew_itm{
    display: block;
    width: 34px;
    height: 28px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) skew(30deg);
  }
  .bar{
    display: block;
    width: 100%;
    height: 3px;
    background-color: rgba(255,255,255,1);
    position: absolute;
    left: 0;
    transition: .5s;
  }
  .bar:nth-of-type(1){top: 0;}
  .bar:nth-of-type(2){
    top: 50%;
    transform: translateY(-1px);
  }
  .bar:nth-of-type(3){
    top: 100%;
    transform: translateY(-2px)
  }
  .open .bar:nth-of-type(1){
    top: 50%;
    transform: translateY(-1px) rotate(45deg);
  }
  .open .bar:nth-of-type(2){opacity: 0;}
  .open .bar:nth-of-type(3){
    top: 50%;
    transform: translateY(-1px) rotate(-45deg);
  }
  
  body.open {
    overflow: hidden;
  }
  .gl_nav_sp{
    display: none;
    width: 100%;
    padding: 120px 30px 10px;
    background-color: rgba(8,139,223,1);
    position: fixed;
    top: 0;
    left: 0;
    box-sizing: border-box;
    height: 100vh;
    height: 100dvh; /* Dynamic Viewport Height (モダンブラウザ対応) */
    z-index: 5;
  }
  .gl_nav_sp_wrap {
    width: 100%;
    height: 100%;
    &::-webkit-scrollbar {
      display: none;
    }
    scrollbar-width: none;
  }
  .open .gl_nav_sp_wrap {
    overflow-y: auto; /* 縦スクロールを明示 */
    -webkit-overflow-scrolling: touch; /* iOSでの慣性スクロールを有効化 */
  }
  .gl_nav_sp_inner {
    box-sizing: border-box;
    /* アドレスバーや下部ホームバー（iPhoneのバー等）による見切れを防ぐパディング */
    padding-bottom: calc(60px + env(safe-area-inset-bottom));
  }
  .glnv_mnu_sp{
    display: flex;
    flex-wrap: wrap;
    }
    .glnv_bnrlnk{
      display: flex;
      justify-content: center;
      align-items: center;
      width: 48.5%;
      height: 150px;
      margin-bottom: 20px;
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      font-size: 17px;
      font-weight: bold;
      color: rgba(255,255,255,1);
      background-color: rgba(0,0,0,.2);
      }
      .glnv_bnrlnk.bnr_work{background-image: url(/src/images/common/mnu_fig_01.jpg);}
      .glnv_bnrlnk.bnr_company{background-image: url(/src/images/common/mnu_fig_02.jpg);}
      .glnv_bnrlnk.bnr_recruit{background-image: url(/src/images/common/mnu_fig_03.jpg);}
      .glnv_bnrlnk.bnr_news{background-image: url(/src/images/common/mnu_fig_04.jpg);}
      .glnv_bnrlnk.bnr_access{background-image: url(/src/images/common/mnu_fig_05.jpg);}

      .glnv_bnrlnk:nth-of-type(2n+1){margin-right: 3%;}
      .glnv_bnrlnk:last-of-type{margin-bottom: 0;}

.glnv_contact_btn{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 410px;
  height: 120px;
  margin: 0 auto;
  margin-top: 20px;
  font-size: 17px;
  font-weight: bold;
  color: rgba(255,255,255,1);
  background-color: rgba(19,26,162,1);
  }
  .glnv_btntxt_sp{}

} /* max-width: 900px */

@media screen and (min-width: 781px) {

  .ftr_logo_figsp{display: none;}

}

@media screen and (max-width: 780px) {

/* pages common */
  .skew_ttl_inr{height: 60px;}
    .skew_ttl_txt{font-size: 22px;}

/* footer */
  .ftr_inr{
    flex-direction: column;
    align-items: center;
    }
    .ftr_logo{
      margin-right: 0;
      margin-bottom: 20px;
      }
      .ftr_logo_fig{display: none;}
    .ftr_office{padding-top: 0;}

} /* max-width: 780px */

@media screen and (min-width: 721px) {

.ctt_itr .spbr{display: none;}
  
}

@media screen and (max-width: 720px) {

body{
	font-size: 14px;
  line-height: 22px;
  }  

/* pages common */  
.page_ttl_area{height: 300px;}
  .page_ttl_area .blk_ttl{
    position: absolute;
    top: 145px;
    }

  .blk_ttl_img{
    height: 45px;
    margin-bottom: 10px;
    }
    .ttl_img_blo{height: 55px;}
    .blk_ttl_txt{font-size: 16px;}

.com_btn{
  width: 280px;
  height: 50px;
  font-size: 16px;
  }
  .com_btn.clr_org{width: 250px;}  
  .com_btn.clr_l-blu{
    width: 260px;
    height: 50px;
    }

.bcl_wrap{
  margin: 20px auto 40px;
  font-size: 14px;
  }
  .bcl_lnk{margin-right: 20px;}
    .bcl_lnk::after{
      height: 14px;
      right: -10px;
      }

.clfy_itm{
  width: 49%;
  margin-right: 2%;
  margin-bottom: 15px;
  }
  .clfy_itm:nth-of-type(2n+2){margin-right: 0;}
  .clfy_itm:nth-last-of-type(-n+2){margin-bottom: 0;}
  .clfy_itm .clfy_btn{height: 55px;}       

/* footer */
.ftr_mnu{padding: 30px 0 40px;}
  .ftr_mnu_lst{
    flex-wrap: wrap;
    justify-content: flex-start;
    height: auto;
    }
    .ftr_mnu_itm{
      width: 48.5%;
      margin-right: 3%;
      border-bottom: 1px solid rgba(181,181,181,1);
      }
    .ftr_mnu_itm:nth-of-type(2n+2){margin-right: 0;}
    .ftr_mnu_txt{
      display: block;
      padding: 15px 15px 15px;
      font-size: 16px;
      font-weight: bold;
      background-image: url(/src/images/common/arw_right_db.svg);
      background-repeat: no-repeat;
      background-size: 7px;
      background-position: center right 10px;
      }

/* contact */
.contact_wrap{margin-top: 150px;}
  .contact_inr{padding: 0; }
  .ctt_skew{
      padding:  55px 0 50px;
    transform: skew(-5deg);
    }
      .ctt_skewrtn{transform: skew(5deg);}
      .ctt_itr{
        font-size: 14px;
        line-height: 22px;
      }
      .ctt_tel{
        display: block;
        margin: 30px auto 0;
        }
        .ctt_tel_blc{
          width: 320px;
          justify-content: center;
          margin: 0 auto;
          padding: 10px 0 0 0;
          box-sizing: border-box;
            }
          .ctt_tel_blc:first-of-type{
            justify-content: center;
            padding: 0 0 10px 0;
            border-right: 0;
            border-bottom: 1px solid rgba(0,161,233,1);
            }
          .ctt_tel_ttl{margin-right: 10px;}
          .tel_no{pointer-events: initial;}
          .ctt_tel_note{font-size: 14px;}
    .acc_btn{
      width: 315px;
      height: 53px;
      margin-top: 25px;
      font-weight: normal;
            }
      .acc_btn::before{
        content: "";
        width: 16px;
        height: 100%;
        background-image: url(/src/images/common/acc_icon_db.svg);
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: center;
        position: absolute;
        left: 50px;
        top: 0;
              }             
      .acc_btn::after{
        width: 7px;
        right: 15px;
          }
      .acc_btn_txt{padding-left: 15px;}

/* pagetop button */
.pgt_btn_blc{
  width: 50px;
  height: 50px;
  right: 10px;
  bottom: 10px;
  }

} /* max-width: 720px */

@media screen and (max-width: 580px) {
/* header */  
.gl_header_inner{
  height: 60px;
  transition: .3s;
  }
  .smlmnu .gl_header_inner{height: 40px;}
  .open .gl_header_inner {background-color: rgba(8,139,223,1);}
  .gl_logo_area{margin-left: 12px;}
    .gl_logo_sp{
      width: 110px;
      transition: .3s;
      }
      .smlmnu .gl_logo_sp{width: 80px;}
      .glnv_contact_sp{width: 65px;}
        .smlmnu .glnv_contact_sp{width: 60px;}
        .glnv_contact_sp .glnv_contact_icon{width: 26px;}
        .glnv_contact_sp .glnv_instagram_icon{width: 26px;}
        .smlmnu .glnv_contact_sp .glnv_contact_icon{width: 24px;}
  
      .glnv_hmb_btn{
        position: relative;
        width: 65px;
        height: 100%;
        }
        .smlmnu .glnv_hmb_btn{width: 60px;}
        .glnv_skew_itm{
          width: 28px;
          height: 22px;
          transition: .3s;
          }
          .smlmnu .glnv_skew_itm{
            width: 22px;
            height: 20px; 
            }
.gl_nav_sp{padding: 90px 20px 50px;}
  .smlmnu .gl_nav_sp{padding: 70px 20px 50px;}     
    .glnv_bnrlnk{
      height: 80px;
      margin-bottom: 15px;
      font-size: 16px;
      }
.glnv_contact_btn{
  width: 100%;
  max-width: 300px;
  height: 80px;
  font-size: 16px;
  }

/* footer */
.ftr_office{width: 350px;}
  .ftr_ofc_typ{
    width: 100%;
    font-weight: bold;  
    }
    .ftr_ofc_ctt{padding: 0;}

} /* max-width: 580px */

@media screen and (min-width: 481px) {

.ctt_tel_note br{display: none;}

}

@media screen and (max-width: 480px) {

/* contact */
    .ctt_skew{padding:  55px 0 50px;}      
      .ctt_frm{width: 300px;}
        .ctt_frm .ctt_btn{
          height: 55px;
          font-size: 16px;
          }
          .ctt_btn::before {
            width: 24px;
            left: 15px;
            }
.ctt_tel_blc {
    width: 290px;
}
      .ctt_tel{margin: 30px auto 0;}

        .ctt_tel_ttl{font-size: 15px;}
      .tel_no{
          font-size: 26px;
          line-height: 28px;
        }
          .ctt_tel_note {font-size: 14px;}
.acc_btn {
  width: 280px;
  height: 50px;
          }                   
  .acc_btn::before {
    width: 15px;
    left: 30px;
    top: 0;
        }


} /* max-width: 480px */

@media screen and (min-width: 421px) {

.ftr_ofc_add br{display: none;}

} /* min-width:421px */

@media screen and (max-width: 420px) {

/* footer */
.ftr_mnu{padding: 20px 0 30px;}
  .ftr_mnu_txt{
    display: block;
    padding: 10px 10px 10px;
    font-size: 15px;
    background-size: 7px;
    }
.ftr_office{width: 275px;}

} /* max-width:420px */


/* header追加 */

.glnv_youtube_icon,
.glnv_instagram_icon {
  width: 24px;
  height: 24px;
  margin:0;
  transform: skew(30deg);
  position: relative;
}
@media(min-width: 581px){
  .glnv_instagram_icon {
    width: 32px;
    height: 32px;
    /*margin-left: -6px;*/
  }
}
@media(min-width: 961px){
  .glnv_youtube_icon  {
    width: 76px;
    height: 22px;
    top: 6px;
    margin-left: 8px;
  }
}
@media(min-width: 1201px){
  .glnv_youtube_icon  {
    margin-left: -2px;
  }
}
.glnv_instagram_icon::after {
  content:"";
  display: block;
  background-image: url("../images/common/instagram-icon2.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
}
.glnv_youtube_icon::after {
  content:"";
  display: block;
  background-image: url("../images/common/Youtube_Logo2.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
}
.glnv_access_btn:hover .glnv_instagram_icon::after {
  background-image: url("../images/common/instagram-icon.svg");
}
.glnv_contact_btn:hover .glnv_youtube_icon::after {
  background-image: url("../images/common/Youtube_Logo.svg");
}
.glnv_sns_btns {
  margin-top: 2rem;
  display: flex;
  justify-content: space-around;
  gap: 2rem;
}
.glnv_sns_btn {
  width: auto;
  max-width: 50%;
  max-height: 48px;
}
.glnv_sns_btn img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  shape-rendering: geometricPrecision;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  transform: translateZ(0);
  backface-visibility: hidden;
}