@charset "utf-8";
@media screen and (max-width: 1082px) {
  /* .nav_area {
    width: 96%;
    padding: 24px 18px 0;
  }
  .logo_box .logo {
    width: 112px;
  }
  .nav_area .h_nav {
    font-size: 0.875rem;
  }
  .nav_area .h_nav {
    padding: 4px 0 0;
  }
  .h_nav li a {
    font-size: 96%;
  }
  #header .nav_area .h_nav li {
    margin: 0 8px;
  }
  .header_tel {
    margin: 12px 0 0;
    right: 28px;
  }*/
  #header .header {
    display: none;
  }
  #header {
    height: 64px;
    z-index: 1000;
  }
  #header .header_sp {
    height: 40px;
    padding: 10px 60px 10px 20px;
    display: block;
    background: #fff;
  }
  #page_index #header.active {
    height: 64px;
  }
  #header .header_sp .logo_box .logo {
    width: 96px;
  }
  .logo_box {
    display: flex;
    align-items: center;
  }
  .header_tel_txt_sp {
    display: flex;
    margin-top: -12px;
  }
  .header_tel_txt p {
    margin: -2px 0 0;
    position: relative;
    left: 0;
  }
  /*ナビゲーション*/
  #g-nav_sp {
    display: block;
    position: fixed;
    top: -120%;
    left: 0;
    width: 100%;
    height: 30vh;
    background: rgba(254, 254, 254, .95);
    transition: all 0.6s;
    z-index: 100;
  }
  /*アクティブクラスがついたら位置を0に*/
  #g-nav_sp.panelactive {
    top: 60px;
  }
  /*ナビゲーション*/
  #g-nav_sp ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  /*リストのレイアウト設定*/
  #g-nav_sp li {
    list-style: none;
    text-align: center;
  }
  #g-nav_sp li a {
    font-weight: bold;
    color: #000000;
    text-decoration: none;
    padding: 10px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.875rem;
    transform: rotate(0.05deg);
  }
  .logo_auto_sp {
    width: 148px;
    position: relative;
  }
  .sp_tel {
    width: 184px;
    position: relative;
    padding: 0 10px;
  }
  /*========= ボタンのためのCSS ===============*/
  .openbtn1 {
    position: fixed;
    z-index: 9999; /*ボタンを最前面に*/
    top: 8px;
    right: 16px;
    cursor: pointer;
    width: 56px;
    height: 56px;
  }
  /*×に変化*/
  .openbtn1 span {
    display: inline-block;
    transition: all 0.5s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
    background-color: #000;
    width: 45%;
  }
  .openbtn1 span:nth-of-type(1) {
    top: 15px;
  }
  .openbtn1 span:nth-of-type(2) {
    top: 23px;
  }
  .openbtn1 span:nth-of-type(3) {
    top: 31px;
  }
  .openbtn1.open span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 40%;
  }
  .openbtn1.open span:nth-of-type(2) {
    opacity: 0;
  }
  .openbtn1.open span:nth-of-type(3) {
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 40%;
  }
  .eye_area {
    top: 80px;
  }
  .eye_main {
    top: -80px;
    padding: 128px 0 0;
  }
  .eye_btn a {
    top: -80px;
    width: 36%;
  }
  .tab_eye_btn a {
    top: -24px;
    margin: 36px auto 10px;
  }
  .eye_btn a::before {
    background-size: 100% auto;
    transform: scale(-1, 1) translateX(-6.2vw);
    width: 4.0vw;
  }
  .eye_btn a::after {
    background-size: 100% auto;
    transform: translateX(-6.2vw);
    width: 4.0vw;
  }
  .eye_btn a:hover::before {
    transform: scale(-1, 1) translateX(-46px);
  }
  .eye_btn a:hover::after {
    transform: translateX(-46px);
  }
  .sec_pack {
    width: 96%;
    max-width: 96%;
  }
  .pack_point_full {
    width: 90%;
  }
  .sec1_move {
    height: 130px;
  }
  .sec_plan {
    width: 96%;
    max-width: 96%;
  }
  .sec_faq {
    width: 96%;
    max-width: 96%;
  }
  .sec_contact {
    width: 96%;
    max-width: 96%;
  }
  .table-compare {
    width: 96%;
    margin: 70px auto 18px;
    border-spacing: 8px;
  }
  .table-compare::before {
    left: 30%;
    width: 33%;
  }
  .sec_btn_area {
    width: 620px;
  }
  .tab_inner img {
    margin: 30px auto 8px;
    width: 78%;
  }
  .txt_con_tab {
    margin: 24px auto 8px;
  }
  .txt_con_tab h3, .txt_con_tab p {
    font-size: 1.125rem;
  }
  .tab01_btn_arrow img, .tab02_btn_arrow img, .tab03_btn_arrow img {
    width: 40%;
    top: -10px;
    position: relative;
  }
  .w_txt::before {
    width: 60px;
    height: 60px;
  }
  .w_txt::after {
    width: 60px;
    height: 60px;
  }
  .btn_area_flex {
    width: 64%;
  }
  .acc_main {
    font-size: 1.0rem;
    margin-top: 30px;
  }
  .details__summary::before {
    font-size: 2.1rem;
    width: 80px;
    height: 100%;
    align-items: center;
    display: grid;
  }
  .anim_1 {
    width: 120px;
    top: -3%;
    right: 79%;
  }
  .anim_2 {
    width: 168px;
    top: -6%;
    left: 80%;
  }
  .anim_3 {
    width: 118px;
    top: -6%;
    right: 84%;
  }
  .table-compare thead th {
    font-size: 1.0rem;
  }
  .table-compare tbody th, .table-compare tbody td {
    font-size: 1.0rem;
  }
  .sec_product .main_tit {
    width: 96%;
    max-width: 96%;
  }
  .sec_chart .main_tit {
    width: 96%;
    max-width: 96%;
  }
  .txt_con_tab::before {
    width: 60px;
    height: 60px;
    margin: 0 6px 0 0;
  }
  .txt_con_tab::after {
    width: 60px;
    height: 60px;
    margin: 0 0 0 -6px;
  }
  .sec_chart .main_tit img {
    width: 96%;
  }
  .sec_achieve {
    width: 96%;
    max-width: 96%;
  }
  .achieve_panel {
    width: 98%;
    max-width: 98%;
    margin: 0 auto;
  }
  .con_c_in {
    width: 32%;
    height: 442px;
    padding: 26px;
  }
  .tabBox .tabArea.bottom .one_tab .tab_inner {
    width: 92%;
  }
  .qes_txt img {
    margin: -72px 38px 0;
    width: 80px;
  }
  .footer_box {
    max-width: 96%;
  }
  .footer_box ul {
    max-width: 100%;
  }
  .thx_box {
    max-width: 96%;
    padding-top: 150px;
  }
  .sp_tel_txt {
    display: none;
  }
  .cmp_bnr {
    display: none;
  }
  .cmp_side_bnr_sp {
    display: block;
    right: .5rem;
    z-index: 999;
    bottom: 0;
    position: fixed;
    width: 400px;
    max-width: 100%;  
  }
  .open_button {
    max-width: 100%;
    padding: 0;
    margin-bottom: 0;
  }
  .modal_content {
    width: 68%;
  }
  /*cmp_bnr
  .cmp_panel {
    display: block;
    overflow: hidden;
  }
  .cmp_panel_box {
    display: flex;
    background: #ff0;
    color: #fff;
    font-weight: bold;
    padding: 16px 0;
    letter-spacing: 0.08rem;
    overflow: hidden;
    white-space: nowrap;
  }
  .cmp_panel_txt {
    margin-top: -9px;
  }
  .cmp_point {
    font-size: 0.8125rem;
    color: #052844;
  }
  .cmp_point2 {
    color: #EA2828;
  }*/
}