/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/*================
common
======================*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

section, header, footer, h1,h2,h3,h4 {
  line-height: 1.8;
  z-index: 1;
  font-family: 'Noto Sans JP', '游ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', sans-serif;
  /* position: relative; */
  margin: 0 auto;
  color: #252525;
}

h1, h2, h3, h4, p {
    margin-block-start: 0;
    margin-block-end: 0;
}
/* SEで文字が滲む対応 */
body p, body span, body dl, h1, h2, h3, h4, h5, h6{
  transform: rotate(0.03deg);
  -moz-transform: rotate(0.03deg);
  -ms-transform: rotate(0.03deg);
  -o-transform: rotate(0.03deg);
  -webkit-transform: rotate(0.03deg);
}

/* トップページのstyle */
.page-id-13 main {padding-top: 60px;}
main {position: relative; padding-top: 90px;}

.text400 {
  font-weight: 400;
}

.text500 {
  font-weight: 500;
}

.text600 {
  font-weight: 600;
}

.flex {
    display: flex;
    flex-wrap: wrap;
}
.ib {display: inline-block;}

a {
    color: #252525;
  cursor: pointer;
  text-decoration: none;
    transition: .3s;
}

a:hover {
    color: #252525;
}

a.fax {pointer-events: none;}

html{
  scroll-behavior: smooth;
}
/* inner 
header inner
section inner 
footer inner 
-----------------*/
.inner {
  width: 1230px;
  margin: 0 auto;
  max-width: 90%;
}

h1,
h2,
h3,
h4,
p {
  margin: 0;
}

img {
  max-width: 100%;
}

.mont {
  font-family: "Montserrat", sans-serif;
}

.ib {
  display: inline-block;
}

.elementor-container {
  z-index: 1;
}

a[href^="tel"] {
  cursor: default;
    text-decoration: none;
}
.bold {
  font-weight: bold;
}
body {
  --color_y: #ffd803;
}
@media screen and (max-width: 1250px) {
  .page-id-13 main {padding-top: 50px;}
  main {padding-top: 80px;}
}

@media screen and (max-width: 741px) {

  /*741以上<br>表示*/
  .is_sp {
    display: none;
  }
}
@media screen and (max-width: 600px) {

  /*600以下<br>非表示*/
  .br600 {
    display: none;
  }
}

@media screen and (min-width: 740px) {

  /*740以下<br>表示*/
  .is_tb {
    display: none;
  }
}

@media screen and (min-width: 1025px) {
  .inner {
    max-width: 80%;
  }
  /*1025以下<br>表示*/
  .is_pc {
    display: none;
  }

  a[href^="tel"] {
    pointer-events: none;
  }
}


@media screen and (min-width: 384px) {

  /*384以下<br>表示*/
  .is_sp2 {
    display: none;
  }
}

@media screen and (min-width:768px) and (max-width:1024px) {

  /*768から1024まで<br>非表示*/
  .is_tb2 {
    display: none;
  }
}

@media screen and (min-width:480px) and (max-width:1024px) {

  /*480から1024まで<br>非表示*/
  .is_tb1 {
    display: none;
  }
}

.elementor-section.elementor-section-boxed>.elementor-container {
  max-width: 1920px !important;
    width: 100%;
    padding-inline: 40px;
}

 /* 追従ボタンフッター前で止める用 */
body {
  position: relative;
}

/*============================================
　header
==============================================*/
/* 上スクロールすると出現する */
header {
    opacity: 1;
    transition: 0.5s;
    z-index: 100;
}
#site-header.remove {
  /*opacity: 0;
  user-select: none;*/
}
#site-header.fix {top: 0 !important;}
.site-header .header-inner {
    width: 100%;
    margin-left: auto;
    display: flex;
    padding-left: 2.1%;
    align-items: center;
}

.site-logo.show {
  width: min(193px, 100%);
}

#site-header .site-navigation {
  z-index: 100;
  max-width: none;
    height: 100%;
    align-items: center;
}

#site-header {
  width: 100%;
  max-width: 100%;
  padding: 0;
  /*position: relative;*/
    position: fixed;
  background-color: #fff;
  z-index: 10;
    height: 90px;
    top: 0;
}
#site-header.off {top: -90px;}
.site-navigation {
  /*align-items: baseline!important;*/
}

.site-navigation ul {
  font-size: 16px;
    height: 100%;
    align-items: center;
}

.site-navigation ul.menu li:first-child {
  font-family: "Montserrat", sans-serif;
}

.site-navigation ul.menu li:last-child a {
  /*position: relative;*/
    width: 176px;
    /*height: 90px;*/
    /*background: #ffd803;*/
    padding: 40px 0 40px 20px;
    /*margin-top: -30px;*/
    text-align: center;
}

.site-navigation ul.menu li a::before {
  position: absolute;
  content: "";
  top: 30%;
  left: 0;
  width: 9px;
  height: 9px;
  background-image: url(img/circle-icon.svg);
  background-size: contain;
}

.site-navigation ul.menu li:last-child a::before {
  position: absolute;
  content: "";
  top: 40%;
  left: 15%;
  width: 20px;
  height: 14px;
  background-image: url(img/mail-icon.svg);
  background-size: contain;
}

.site-navigation ul.menu li:last-child a:hover {
/*background-color: #252525;*/
color: #fff;
}

.site-navigation ul.menu li {
  height: 24px;
  line-height: 8px;
    padding-right: 55px;
}
.site-navigation ul.menu li:nth-last-child(2) {
    padding-right: 40px;
}
.site-navigation ul.menu li:last-child {
    padding-right: 0;
    height: 100%;
}

.site-navigation ul.menu li a {
  font-weight: bold;
  color: #252525;
  padding: 8px 5px 8px 14px;
  margin-top: -1px;
    position: relative;
}

.site-navigation ul.menu li a::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #FFD803;
  bottom: -1px;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s;
}
.site-navigation ul.menu li a:hover::after {
transform: scale(1,1);
}
/* .site-navigation ul.menu li.current_page_item a::after {
transform: scale(1,1);
} */
.site-navigation ul.menu li:last-child a::after {display: none;}
.site-navigation ul.menu li:last-child {
    background-color: #FFD803;
    overflow: hidden;
}
.site-navigation ul.menu li:last-child::after {
    content: "";
    position: absolute;
    background-color: #252525;
    width: 250%;
    height: 100%;
    left: -325%;
    top: 0;
    transform: skewX(-110deg);
    transition: 0.4s;
}
.site-navigation ul.menu li:last-child:hover::after {
    left: -75%;
}
.site-navigation ul.menu li:last-child a {z-index: 1;}

/* .site-navigation ul.menu li.current_page_item>a {
  color: #FFF;
  background-color: #FFD803;
} */

.site-reserve {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 15px;
  margin-bottom: 10px;
}

/*.mobile-menu {
  display: none;
}*/

.site-branding {
  max-width: 100% !important;
  z-index: 100;
    width: 195px;
}

@media (max-width: 1600px) {
  /* .site-branding {
    width: 330px;
  } */

    .site-navigation ul.menu li {
        padding-right: 20px;
    }
    .site-navigation ul.menu li:nth-child(6) {
        padding-right: 15px;
    }
    
  .site-navigation ul.menu li a {
    padding: 8px 5px 8px 12px;
    font-size: 16px;
  }

  .site-navigation ul.menu li:last-child a {
    padding-right: 0;
  }

}
@media (min-width: 1251px) {
    .mobmenu-btn, .mobmenu-wrapper {display: none;}
}
@media (max-width: 1250px) {
  #site-header {
    height: 80px;
  }
    #site-header.off {top: -80px;}
  .site-navigation {
    display: none;
  }
    
    .mobmenu-btn {
        height: 100%;
        width: 80px;
        background-color: #FFD803;
        position: relative;
        cursor: pointer;
    }
    .mobmenu-btn span {
        position: absolute;
        left: 20px;
        height: 3px;
        width: 40px;
        background-color: #252525;
        transition: 0.4s linear;
    }
    .mobmenu-btn span:nth-child(1) {top: 28px;}
    .mobmenu-btn span:nth-child(2) {top: 39px;}
    .mobmenu-btn span:nth-child(3) {top: 50px;}
    .mobmenu-btn.open span:nth-child(1) {top: 39px; transform: rotate(45deg);}
    .mobmenu-btn.open span:nth-child(2) {opacity: 0;}
    .mobmenu-btn.open span:nth-child(3) {top: 39px; transform: rotate(-45deg);}

  /*.mobile-menu {
    display: block;
  }*/

  .mobmenu-wrapper {
    position: fixed;
    width: 100vw;
    max-width: 414px;
    top: 80px;
    right: 0;
    pointer-events: none;
    z-index: 99;
    overflow-x: hidden;
      overscroll-behavior: contain;
      height: 100%;
      max-height: calc(100dvh - 80px);
      font-family: 'Noto Sans JP', '游ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', sans-serif;
  }
  .mobmenu-inner {
    padding: 5px 40px 40px;
      background-color: white;
      transform: translateX(100%);
      pointer-events: auto;
      transition: 0.6s;
  }
  .mobmenu-wrapper.open {
    pointer-events: auto;
  }
    .mobmenu-wrapper.open .mobmenu-inner {
        transform: translateX(0);
        overflow-y:auto;
      width:100%;
      /* height:100%; */
      height: 100vh;
      /* -webkit-overflow-scrolling:touch; */
    }
    .mobmenu-wrapper.open .scroll{
      display: none;
    }
    .background-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(37, 37, 37, 0.5);
      z-index: 8; /* 他の要素の上に表示されるようにする */
      display: none;
  }
  .background-overlay.visible {
      display: block;
  }
    
    .mobmenu-nav li {padding: 30px 0;}
    .mobmenu-nav li:not(:first-child) {background-image: linear-gradient(to right, #666, #666 2px, transparent 2px, transparent 2px); 
      background-size: 4px 1px;
      background-repeat: repeat-x;
      background-position: top;}
    /* .mobmenu-nav li:not(:first-child) {border-top: 1px dotted #666666;} */
    .mobmenu-nav li:last-child {display: none;}
    .mobmenu-nav li a {
        font-size: 16px;
        font-weight: 700;
        padding-left: 14px;
        position: relative;
        display: inline-block;
        line-height: 24px;
    }
    
    .mobmenu-nav ul.menu li a::before {
      position: absolute;
      content: "";
      top: 30%;
      left: 0;
      width: 9px;
      height: 9px;
      background-image: url(img/circle-icon.svg);
      background-size: contain;
    }
    .mobmenu-nav ul.menu li a::after {
      position: absolute;
      left: 0;
      content: '';
      width: 100%;
      height: 2px;
      background: #FFD803;
      bottom: -3px;
      transform: scale(0, 1);
      transform-origin: left top;
      transition: transform 0.3s;
    }
    .mobmenu-nav ul.menu li a:hover::after {
    transform: scale(1,1);
    }
    /* .mobmenu-nav ul.menu li.current_page_item a::after {
    transform: scale(1,1);
    } */
    
    .mobmenu-contact {
        border: 3px solid #FFD803;
        border-radius: 8px;
        padding: 25px 15px;
        text-align: center;
        margin-top: 5px;
    }
    .mobmenu-contact-text {font-size: 16px; font-weight: 700;}
    .mobmenu-tel {margin-bottom: 30px;}
    .mobmenu-tel a {
        font-size: 32px;
        font-weight: 700;
        position: relative;
        padding-left: 30px;
        line-height: 27px;
        margin-top: 20px;
        display: inline-block;
    }
    .mobmenu-tel a::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 27px;
        height: 100%;
        background-image: url(img/tel-icon.svg);
        background-size: 100% auto;
        background-position: center;
        background-repeat: no-repeat;
    }
    .mobmenu-tel-small {font-size: 11px;}
    .mobmenu-contact-link {
        width: 212px;
        margin: 10px auto 0;
        font-size: 14px;
        font-weight: 700;
        height: 46px;
        background-color: #FFD803;
        border-radius: 4px;
        display: block;
        position: relative;
        overflow: hidden;
    }
    .mobmenu-contact-link span {
        width: 100%;
        height: 100%;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 1;
    }
    .mobmenu-contact-link img {
        width: 20px;
        margin-right: 5px;
    }
    .mobmenu-contact-link::after {
        content: "";
        position: absolute;
        background-color: #252525;
        width: 180%;
        height: 100%;
        left: -220%;
        top: 0;
        transform: skewX(-110deg);
        transition: 0.4s;
    }
    .mobmenu-contact-link:hover {color: white;}
    .mobmenu-contact-link:hover::after {
        left: -50%;
    }
}
@media (max-width: 1024px) {
  .mobmenu-inner {
    padding: 5px 40px 140px;
  }
}
@media (max-width: 720px) {
  .site-branding {
    width: 155px;
}
.mobmenu-wrapper.open .mobmenu-inner {
height:100%;
-webkit-overflow-scrolling:touch;
}
.mobmenu-inner {
  padding: 5px 40px 40px;
}
}
@media (max-width: 360px) {
    .mobmenu-tel a {font-size: 26px;}
}
/*=================
footer
=======================*/
#site-footer {
  padding: 70px 0 75px;
  width: 100%;
  max-width: 100%;
  background-color: #252525;
  color: #fff;
  z-index: 2;
}

.ft_content1,
.ft_content2 {
  max-width: 1230px;
  width: 90%;
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
}
.ft_content2 {
  align-items: flex-end;
    margin-top: 30px;
}

.ft__nav-items {
display: flex;
flex-wrap: wrap;
    justify-content: flex-end;
}

.ft__nav-item {
  font-weight: bold;
}

.ft__nav ul li {
font-size: 16px;
  margin: 0 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ft__nav ul li:nth-last-child(1) {
  margin-right: 0px;
}

footer ul li a {
color: #fff !important;
    position: relative;
}
.ft__info {
  display: flex;
  flex-direction: column;
  max-width: 330px;
  width: 100%;
  align-items: flex-start;
    font-size: 16px;
}

.copyright {
  color:  #f2f2f2;
  font-size: 13px;
  }

.ft__nav-item a::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #FFD803;
  bottom: -1px;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s;
}
.ft__nav-item a:hover::after {
transform: scale(1,1);
}
.ft-br{display: none;}

@media screen and (max-width: 1260px) {
    .ft__nav {width: 100%; margin-top: 15px;}
    .ft__nav-items {justify-content: flex-start;}
}

@media screen and (max-width: 1095px) {
#site-footer {
    padding: 60px 0;
}
.ft_content1 {
  flex-direction: column;
}
.ft__nav-items {
  justify-content: flex-start;
}
    .ft__nav {
        max-width: 530px;
        margin-top: 40px;
    }
    .ft__nav ul li {
      margin: 0 20px 20px 20px;
    }
    .ft_content1.flex > nav > ul > li:nth-child(5) {
      margin-left: 0;
    }
    /* .ft_content1.flex > nav > ul > li:nth-child(n+5) {
      margin-bottom: 0;
    } */
    .ft_content2 {
      margin-top: 40px;
    }
}

@media (max-width: 800px){
.copyright {
   width: 100%;
    text-align: right;
}
}
@media screen and (min-width: 721px) {
    .ft__nav ul li:first-child {margin-left: 0;}
}

@media screen and (max-width: 720px) {
    #site-footer {padding: 40px 0;}
    .ft_content1, .ft_content2 {justify-content: center;}
  .ft_logo {
      width: 100%;
      text-align: center;
      margin-bottom: 20px;
  }
    .ft__nav-items {justify-content: center;}
    .copyright {margin-top: 15px; text-align: center;}
  
footer ul li img {
  width: 28px;
  margin-right: 5px;
}

.ft__nav {max-width: 350px; order: -1;}
    .ft__nav-items {justify-content: space-between; max-width: 313px; width: 100%;}
    .ft__nav ul li {margin: 0; justify-content: flex-start;     align-items: baseline;}
    .ft__nav ul li:nth-child(odd) {width: 41%;}
    .ft__nav ul li:nth-child(even) {width: 41%;}
    .ft__nav ul li:nth-child(5) {text-indent: -0.8em; padding-left: 0.8em;}
    .ft__nav-item:nth-child(n+3) {margin-top: 30px;}
    .ft-br{display: block;}
    .ft_logo {margin-top: 80px; max-width: 350px; text-align: left; margin-bottom: 0px;}
    .ft_content2 {margin-top: 20px; justify-content: left;}
    .copyright {margin-top: 15px; text-align: left;font-size: 11px;}
}

@media screen and (max-width: 340px) {
  .ft__nav ul li:nth-child(odd) {width: 44%;}
  .ft__nav ul li:nth-child(even) {width: 44%;}
}

/*デバイスが横向き、画面の横幅が 1000px 以下の場合*/
/*@media (orientation: landscape) and (max-width: 1000px){
.copyright {
      line-height: 30px;
    padding-bottom: 60px;
}
}*/

/* 各ページ共通アニメーション */
.photo-anime figure {
  opacity: 0;
}
/*=================
トップページ
=======================*/
/* トップページ共通 */
.title-jp {
  font-weight: bold;
  /* font-size: clamp(32px, 2.5vw, 42px); */
  font-size: 42px;
  letter-spacing: 0.03em;
  color: #252525;
    margin: 0;
    line-height: 1;
}
.title-en {
  display: flex;
  align-items: center;
  gap: 3px;
  margin: 10px 0 0;
  font-size: 16px;
  font-weight: 600;
}
.top-btn {
  display: inline-block;
  border-radius: 4px;
  background: #fff;
  border: 2px solid #ffd803;
  text-align: center;
  line-height: 1;
}
.tb-text {
  position: relative;
  z-index: 3;
}
.anim-tb {
  overflow: hidden;
  position: relative;
  transition: color 0.4s;
} 
.anim-tb::before {
  content: "";
  display: block;
  background-color: #FFD803;
  position: absolute;
  top: 0;
  left: 0;
  width: 120%;
  height: 120%;
  transform-origin: right bottom;
  transform: skewX(30deg) scaleX(0);
  transition: transform 0.4s;
}
.anim-tb:hover::before {
  transform-origin: left bottom;
  transform: skewX(30deg) scaleX(1);
}

/* .toppage-tirebg {
  position: absolute;
  top: -8%;
  right: 4.166%;
  width: clamp(210px, 21vw, 410px);
    mix-blend-mode: multiply;
    transform: translateY(-100%);
    transition: transform 1.5s 1s linear;
} */
/* .toppage-tirebg.on {
    transform: translateY(0);
} */

/*   タイヤパーツの出現アニメーション */
/* .page-content {
  overflow: hidden;
}
.toppage-tirebg { 
  position: absolute;
  top: -8%;
  right: 4.166%;
  width: clamp(210px, 21vw, 410px);
  height: min(63.6458vw, 1222px);
} 
.toppage-tirebg:after { 
  display: inline-block; 
  vertical-align: bottom; 
  -webkit-animation: toptirebg steps(4, end) 1300ms forwards;
 animation: toptirebg steps(4, end) 1300ms forwards; 
  content: "";
  background-image: url(img/top-tire.svg); 
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom;
  width: 100%;
   height: 100%;
  }
  @keyframes toptirebg {
    0% {
      opacity: 0;
      height: calc(100% / 4);
    }
    100% {
      opacity: 1;
      height: 100%;
    }
  } */

  /*   タイヤパーツの出現アニメーション */
  .toppage-tirebg.demo1 {
    display: none;
  }
 /*   タイヤパーツの出現アニメーションデモ2 */
  .toppage-tirebg.demo2   {
    clip-path: inset(0 0 100% -20%);
    transition: clip-path 6s cubic-bezier(.4,.05,.35,.95);
}
.toppage-tirebg.demo2.active {
    clip-path: inset(0 0 0 -20%);
}
 /*   タイヤパーツの出現アニメーションデモ2 */
  .page-content {
    overflow: hidden;
  }
.toppage-tirebg {
  top: -8%;
  right: 4.166%;
  width: clamp(210px, 21vw, 410px);
  position: absolute;
  mix-blend-mode: multiply;
}
.toppage-tirebg-tracks {
    opacity: 0;
    animation-duration: 8s;
    animation-fill-mode: forwards;
    animation-timing-function: linear;
}
.toppage-tirebg.active .toppage-tirebg-tracks:nth-child(1) {transition: opacity 0.1s 1s;}
.toppage-tirebg.active .toppage-tirebg-tracks:nth-child(2) {transition: opacity 0.1s 2.2s;}
.toppage-tirebg.active .toppage-tirebg-tracks:nth-child(3) {transition: opacity 0.1s 2.8s;}
.toppage-tirebg.active .toppage-tirebg-tracks:nth-child(4) {transition: opacity 0.1s 3.6s;}
.toppage-tirebg-tracks:not(:first-child) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.toppage-tirebg.active .toppage-tirebg-tracks {
  opacity: 1;
}

/* 追従ボタン */
.fixed-btn {
    position: fixed;
    z-index: 9;
    bottom: 38px;
    /* bottom: 121px; */
    left: -180px;
    width: 275px;
    transition: all 0.3s ease; 
    transform: translateX(-100%);
    opacity: 0;
    transition: transform 0.5s ease, opacity 0.5s ease;
}
.fixed-btn.visible {
  transform: translateX(0);
  opacity: 1;
}
.fixed-btn.position-footer {
  position: absolute;
  bottom: calc(var(--footer-height) + 38px);
}

.fixed-btn:hover {
    left: 0; 
}
.fixed-btn a {
    text-decoration: none;
    height: 100%;
    display: inline-block;
}
.fixed-btn img {
    width: 100%;
}
.fixed-btn__img-sp {
  display: none;
}
/* 画像アニメ */
.showImg {
  opacity: 0;
  clip-path: polygon(0 100%,0 100%,0 100%);
    transition: clip-path 1s;
    overflow: hidden;
}
.showImg.is-active {
  opacity: 1;
  clip-path: polygon(0 100%,0 -100%,300% 100%);
}
/* テキストアニメ */
.view {
  transition: transform 0.3s;
  transform: translateY(20%);
  opacity: 0;
}
.view.js-on {
  transform: translateY(0);
  opacity: 1;
}

@media screen and (max-width: 1330px) {
  .sec-title-jp {
  font-size: 36px;
  }
}
@media screen and (max-width: 1024px) {
  .title-jp {font-size: 28px;}
  .title-en {font-size: 14px;}
  .fixed-btn__img { display: none;}
  .fixed-btn__img-sp { display: block;}
  .toppage-tirebg {
    width: clamp(160px, 19.531vw, 200px);
    height: min(61.121vw, 620px);
  }
}
@media screen and (max-width: 720px) {
  .title-jp {font-size: 24px;}
  .title-en {font-size: 13px;}
  .fixed-btn {
    bottom: 10px;
    left: -123px;
    width: 190px;
  }
  .fixed-btn.position-footer {
    position: absolute;
    bottom: calc(var(--footer-height) + 10px);
  }
  .toppage-tirebg { 
    overflow: hidden;
    top: 0%;
    right: -55px;
    width: 180px;
    height: min(682px, 88%);
  }
}

.fv-content {
  width: min(1920px, 100%);
  margin-inline: auto;
  position: relative;
}
/* スクロールダウン */
.scroll {
  bottom: 8%;
  right: 1.5%;
  position: absolute;
  text-align:center;
  writing-mode: vertical-rl;
  z-index: 5;
  align-items: center;
    gap: 5px;
}
.scroll-text {
  font-weight: bold;
font-size: 11px;
}
.scroll-img {
  width: 10px;
  height: 13px;
  display: inline-flex;
}
.scroll-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
  /* お知らせ */
  #top-news {
    background-color: #F2F2F2;
    padding: 154px 0 100px;
    width: 100vw;
    margin: -54px calc(50% - 50vw) 0;
  }
  .top-news__content {
    justify-content: space-between;
  }
  .news_box {
    padding: 7px 0;
    background-image: linear-gradient(to right, #666, #666 2px, transparent 2px, transparent 2px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  background-position: bottom;
      display: block;
      cursor: pointer;
      transition: 0.3s;
      line-height: 1;
  }
.news_wrap > .news_box:nth-child(1) {
  border-top: none;
}
 .news_box ul{
    transition: 0.3s;
    background-color: transparent;
    border-radius: 6px;
    padding: 13px 15px;
  }
  .news_box:hover ul{
    background-color: #fff;
  }

  .top-news__sec-title {
    width: min(177px, 25%);
    height: 100%;
  }
  .top-news__article {
    width: calc(100% - 177px);
    max-width: 920px;
  }
  .news_box ul {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
  .news_box time {
    font-size: 13px;
    color: #666;
    font-weight: 400;
  }
  .news_box ul li {
    font-weight: bold;
  }
  .news_box ul li:nth-child(2) {
    position: relative;
    margin-top: 10px;
    padding-right: 15px;
  }
  .news_box ul li:nth-child(2)::after  {
      content: "";
      position: absolute;
      right: 0;
      top: 30%;
      width: 12px;
      height: 10px;
      background-image: url(img/link-icon.svg);
      background-size: contain;
}
@media screen and (max-width: 1024px) {
  .top-news__content {
    display: block;
  }
  .top-news__sec-title {
    width: 100%;
}
  .top-news__article {
    margin-top: 10px;
    width: 100%;
  }
  #top-news {
    padding: 148px 0 60px;
}
.news_box ul li:nth-child(2)  {
  font-size: 14px;
  padding-right: 32px;
}
.news_box ul li:nth-child(2)::after  {
  font-size: 14px;
}
.news_box ul{
  padding: 14px 10px;
}
.scroll {
  bottom: 2%;
}
}
   /* お取り扱い商品  */
   #top-products {
    overflow: hidden;
}
/*    背景タイヤパーツの出現アニメーション */
.toppage-tirebg-gray { 
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(250px, 26.40625vw, 507px);
} 
.toppage-tirebg-gray-tracks {
    opacity: 0;
    animation-duration: 8s;
    animation-fill-mode: forwards;
    animation-timing-function: linear;
}
.toppage-tirebg-gray.is-show .toppage-tirebg-gray-tracks:nth-child(1) {animation-name: gray-tracks1;}
.toppage-tirebg-gray.is-show .toppage-tirebg-gray-tracks:nth-child(2) {animation-name: gray-tracks2;}
.toppage-tirebg-gray.is-show .toppage-tirebg-gray-tracks:nth-child(3) {animation-name: gray-tracks3;}
.toppage-tirebg-gray.is-show .toppage-tirebg-gray-tracks:nth-child(4) {animation-name: gray-tracks4;}
.toppage-tirebg-gray.is-show .toppage-tirebg-gray-tracks:not(:first-child) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
@keyframes gray-tracks1 {
  0% {opacity: 0}
  12.0% {opacity: 0}
  12.1% {opacity: 1;}
  17% {opacity: 0}
}
@keyframes gray-tracks2 {
  0% {opacity: 0}
  17.0% {opacity: 0}
  17.1% {opacity: 1;}
  20% {opacity: 0}
}
@keyframes gray-tracks3 {
  0% {opacity: 0}
  20.0% {opacity: 0}
  20.1% {opacity: 1;}
  21% {opacity: 0}
}
@keyframes gray-tracks4 {
  0% {opacity: 0}
  21.0% {opacity: 0}
  21.1% {opacity: 1;}
  100% {opacity: 1;}
}
 .top-products__content {
  padding-top: 150px;
  /*width: min(1575px, 90%);
  margin-left: auto;*/
}
.top-products__title {
  width: 367px;
  padding-right: 60px;
}
.top-products__text {
  width: calc(100% - 367px);
}
@media screen and (max-width: 1400px) {
  .top-products__title {
    width: 337px;
    padding-right: 30px;
  }
  .top-products__text {
    width: calc(100% - 337px);
  }
}
@media screen and (max-width: 1024px) {
  .toppage-tirebg-gray {
    display: none;
  }
  .top-products__content {
    padding-top: 52px;
    /*width: 90%;
    margin-left: auto;
    margin-right: auto;*/
    justify-content: center;
  }
  .top-products__title {
    width: 100%;
    margin-right: 0;
  }
  .top-products__text {
    margin-top: 20px;
    width: 100%;
    font-size: 14px;
    padding-left: 0;
  }
}
    /* お取り扱い商品スライダー  */
    /*カスタマイズ*/
    .products-slider {
      margin: 48px 0 66px;
        justify-content: flex-end;
        transform: translateX(12.5rem);
        transition: transform 1s cubic-bezier(0.33, 1, 0.68, 1), opacity 1s cubic-bezier(0.33, 1, 0.68, 1); 
        opacity: 0;
      }
      .products-slider.is-show {
        transform: translateX(0);
        opacity: 1;
    }
.products-swiper__wrapper {
    width: min(calc(50% + 615px), 90%);
    margin-left: clamp(-20px, -1vw, -10px);
}
    #swiper3 .swiper-slide {
      border-radius: 6px;
    }
    .products-slider__wrap {
      width: 100%;
      text-align: right;
      position: relative;
  }
    .thumtitle {
      position: absolute;
      bottom: 10px;
      left: 0;
      display: inline-block;
      font-weight: bold;
      font-size: 24px;
      font-size: clamp(18px, 1.25vw, 24px);
      letter-spacing: 0.05em;
      line-height: 1;
      background: #ffd803;
      padding: 10px 20px;
      /*margin-left: 15px;*/
    }
    .thumitem {
      margin-top: 10px;
        padding-left: clamp(15px, calc(1vw + 5px), 25px);
    }
.thumbimg {
    padding-left: clamp(10px, 1vw, 20px);
    max-width: 480px;
}
.thumbimg img {
    width: 100%;
    object-fit: cover;
    border-radius: 6px;
}
.thumbimg.thumbimg1 a {
  display: block;
}
.thumbimg.thumbimg1:hover .more-btn .more-text {
  opacity: 1;
}
    .more-btn {
      position: absolute;
      display: inline-block;
      bottom: 10px;
    right: 5px;
    width: 40px;
    height: 40px;
    background: #ffd803;
    border-radius: 50%;
    cursor: pointer;
    }
    .more-btn:after {
      content: '';
      width: 11px;
      height: 11px;
      border: 0;
      border-top: solid 3px #252525;
      border-right: solid 3px #252525;
      transform: rotate(45deg);
      position: absolute;
      top: 0;
      left: 12px;
      bottom: 0;
      margin: auto;
    }
    .more-text{
      opacity: 0;
      position: absolute;
      bottom: 44px;
      right: -22px;
    z-index: 3;
    width: 85px;
    transition: .3s;
    }
    .more-btn:hover .more-text {
     opacity: 1;
    }
    /* 前へ次への矢印カスタマイズ */
    .swiper-button-next, .swiper-button-prev {
      position: static;
        margin-top: 0;
    }
    .swiper-button-prev,
    .swiper-button-next {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
  width: 60px;
  border: 2px solid #ffd803;
  cursor: pointer;
      transition: 0.3s;
      font-size: 28px;
      cursor: pointer;
  border-radius: 50%;
  z-index: 2;
}
.swiper-button-prev::after,
.swiper-button-next::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 12px;
  width: 15px;
}
.swiper-button-prev::after {
  background-image: url(img/link-iconl.svg);
}
.swiper-button-next::after {
  background-image: url(img/link-icon.svg);
}
.slider-arrow.swiper-button-next {
  margin-right: auto;
  margin-left: max(10px, 1.2539%)
}
  .slider-arrow:hover {
      background-color: #ffd803;
  }
  /* スクロールバー */
  .slider-controls {
    /*width: min(calc(50% + 615px), 95%);
    margin-left: auto;
      padding-left: clamp(10px, 1vw, 20px);*/
      align-items: center;
}

.thumtitle-br {
  display: none;
}

.products-pg {
    width: clamp(400px, 50vw, 960px);
    height: 2px;
    background-color: #ffd803;
    margin-right: 70px;
}
.products-pg-inner {
    width: calc(100% / 6);
    height: 3px;
    position: relative;
}
.products-pg-inner::after {
    content: "";
    position: absolute;
    left: 0;
    right: auto;
    top: 0;
    height: 100%;
    width: 0;
    transition: width 0.5s;
    opacity: 0;
    background-color: #252525;
}
.products-pg-inner.active::after {
    width: 100%;
    transform-origin: right;
    opacity: 1;
}
.products-pg-inner.end::after {
    width: 0;
    right: 0;
    left: auto;
    opacity: 1;
}
.products-pg.prev .products-pg-inner.active::after {
    right: 0;
    left: auto;
}
.products-pg.prev .products-pg-inner.end::after {
    left: 0;
    right: auto;
}

@media screen and (max-width: 1035px) {
  .thumtitle-br {
    display: block;
  }
}
@media screen and (max-width: 1024px) {
  .products-slider {
    margin: 51px 0 63px;
}
    .products-swiper__wrapper {width: 95%;}
.thumtitle {
  font-size: 20px;
  padding: 10px;
  bottom: 10px;
    left: 0;
    text-align: left;
}
.swiper-button-prev, .swiper-button-next {
  height: 50px;
  width: 50px;
}
    .products-pg {margin-right: 35px;}

}
@media screen and (max-width: 640px) {
    .products-slider {
        margin: 50px 0 30px;
    }
  .thumtitle-br {
    display: none;
  }
  .thumtitle {
    /*font-size: 20px;
    padding: 5px 10px;
    left: 3px;*/
  }
  #swiper3 .swiper-slide {
    /*padding-left: 10px;*/
  }
    .products-slider__wrap {
        max-width: 400px;
        margin: 0 auto;
    }
    .thumitem {
        max-width: 400px;
        margin: 10px auto 0;
    }
    .products-pg {
        width: calc(100% - 135px);
        margin-right: 25px;
    }
}
@media screen and (max-width: 400px) {
    .thumtitle-br {
        display: block;
      }
}
    /* 出張タイヤ交換  */
    #top-tire-change {
      margin-top: 0px;
    }
    a.anchor{
      display: block;
      padding-top: 150px;
      margin-top: -150px;
      pointer-events: none;
}
  .top-tire-change__bg {
    position: relative;
    width: 100%;
    /* min-height: 677px; */
    height: calc(80px + 610px);

  }
  .top-tire-change__bg::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    width: 100%;
    height: 85.3%;
    background-image: url(img/tire-change-bg.png);
    background-size: cover;
   background-position: center;
  }
  
  /* .top-tire-change__bg::before {
    position: absolute;
    content: "";
    top: 0;
    width: 100%;
    height: 100%;
    filter: brightness(70%);
    backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
background-color: rgba(255, 255, 255, 0.17);
  } */
  .top-tire-change__wrapper {
    border-radius: 8px;
    background: #fff;
    border: 2px solid #ffd803;
    box-shadow: 0px 0px 20px rgba(37, 37, 37, 0.15);
    width: min(1480px, 95%);
    margin-inline: auto;
    position: absolute;
    /* top: -17.4%; */
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    justify-content: space-between;
    padding: 7px;
    margin-bottom: 80px;
  }
  .top-tire-change__item.top-tire-change__L {
    width: 51%;
    padding: 71px 0;
  }
  .top-tire-change__item.top-tire-change__R {
    width: calc(100% - 51%);
    border-radius: 0px 6px 6px 0px;
    height: auto;
  }
    .top-tire-change__item img,
    .top-spike-tire__item img {
      width: 100%;
      height: 100%;
      object-fit: cover;
  }
  .top-tire-change__box {
    max-width: 540px;
    width: 100%;
    margin: 0 20px 0 130px;
}
.top-tire-change__title{
  margin-top: 30px;
  font-weight: bold;
  font-size: 20px;
  font-size: clamp(16px, 1.0416vw, 20px);
}
.top-spike-tire__sec-title h4 {
color: #FFFFFF;
}
.top-tire-change__text {
  margin-top: 20px;
  font-size: clamp(14px, 1vw, 16px);
}
.top-tire-change__text2 {
  margin-top: 20px;
}
.top-tire-change__erea2 {
  font-size: clamp(14px, 1vw, 16px);
}
.top-tire-change__erea1 {
  background: #f2f2f2;
  font-weight: bold;
  font-size: 13px;
  border-radius: 4px;
  padding: 5px 15px;
  margin-right: 15px;
}
.top-tire-change__erea2 {
display: inline-block;
}
.top-tire-change__btn {
  margin-top: 30px;
}
.btn-tire-change {
  font-weight: bold;
  /*max-width: 160px;
  width: 100%;*/
  font-size: 14px;
  /*padding: 14px 0px;*/
  padding: 12px 23px;
}
    /* スパイクタイヤ  */
    .top-spike-tire__wrapper.flex {
      position: relative;
      align-items: center;
      background: #3c3c3c;
    }
    .top-spike-tire__wrapper::before {
      content: "";
      position: absolute;
      top: 0;
      background-image: url(img/spike-tire-border.png);
      background-repeat: repeat-x;
      background-size: auto;
      width: 100%;
      min-height: 24px;
      background-color: transparent;
      z-index: 1;
    }
    .top-spike-tire__item {
      width: 50%;
    }
    .top-spike-tire__item.top-spike-tire__L {
      height: 600px;
    }
    .top-spike-tire__item img {
      width: 100%;
    }
    .top-spike-tire__box {
      max-width: 540px;
      width: 100%;
      margin-left: 104px;
  }
  .top-spike-tire__text {
    margin-top: 30px;
  }
    .top-spike-tire__R {
      color: #fff;
    }
    .top-spike-tire__btn {
      margin-top: 30px;
    }
    .btn-spike-tire {
      font-weight: bold;
      max-width: 160px;
      width: 100%;
      font-size: 14px;
      padding: 14px 0px;
    }
    h2.spike-tire__title.title-jp.flex {
color: #fff;
}
@media screen and (max-width: 1400px) {
  .top-tire-change__box,
  .top-spike-tire__box {
    margin: 0 4%;
  }
}
@media screen and (max-width: 1024px) {
  .top-tire-change__wrapper {
    /* top: -80px; */
    flex-direction: column-reverse;
    width: min(760px, 85%);
    padding: 4px;
  }
  .top-tire-change__bg {
    /* min-height: max(74.285vw, 1040px); */
    height: calc(80px + 967px);
  }
  .top-tire-change__item.top-tire-change__R {
    width: 100%;
    border-radius: 5px 5px 0px 0px;
    height: 500px;
  }
  .top-tire-change__item.top-tire-change__L {
    width: 100%;
    padding: 0;
}
  .top-tire-change__box {
    max-width: 100%;
    padding: 50px 30px;
    margin: 0;
  }
  .top-tire-change__sec-title {
    width: 100%;
}
.top-spike-tire__wrapper.flex {
  flex-direction: column;
}
.top-spike-tire__item {
  width: 100%;
}
.top-spike-tire__item.top-spike-tire__L {
  height: 400px;
}
.top-spike-tire__box {
  width: 1230px;
  max-width: 80%;
  margin: 0 auto;
  padding: 50px 0;
}
  #top-tire-change {
    /* margin-top: calc(60px - 55px); */
}
a.anchor{
  padding-top: 80px;
  margin-top: -80px;
}
  .top-tire-change__bg {
    /* min-height: max(96.679vw, 990px); */
    height: calc(60px + 812px);
  }
  .top-tire-change__wrapper {
    margin-bottom: 60px;
  }
  .top-tire-change__item.top-tire-change__R {
    height: 400px;
  }
  .top-tire-change__box {
    padding: 30px 19px;
  }
  .top-tire-change__title {
    margin-top: 20px;
    font-size: 16px;
  }
  .top-tire-change__text{
    margin-top: 20px;
    font-size: 14px;
  }
  .top-tire-change__erea2{
    font-size: 13px;
  }
  .top-spike-tire__box {
    max-width: 90%;
    padding: 30px 0;
  }
  .top-spike-tire__text {
    margin-top: 20px;
    font-size: 14px;
}
}
@media screen and (max-width: 720px) {
  .top-tire-change__wrapper {
    width: 81.8%;
    /* top: -15.4%; */
  }
  .top-tire-change__bg {
    /* min-height: 800px; */
    height: calc(60px + 685px);
}
.top-tire-change__item.top-tire-change__R {
  height: 250px;
}
.top-spike-tire__item.top-spike-tire__L {
  height: 200px;
}
.top-tire-change__text2 {
  margin-top: 70px;
}
}
@media screen and (max-width: 440px) {
  .top-tire-change__bg {
height: calc(60px + 732px);
}
  .top-tire-change__item.top-tire-change__R {
      height: 230px;
  }
}
@media screen and (max-width: 420px) { 
  .top-tire-change__bg {
    /* min-height: 650px; */
    .top-tire-change__item.top-tire-change__R {
      height: 180px;
    }
}
}
@media screen and (max-width: 370px) { 
  .top-tire-change__bg {
    /* min-height: 700px; */
}
}
@media screen and (max-width: 340px) { 
  .top-tire-change__box {
    padding: 30px 10px;
}
}
    /* タイヤのことなら何でもご相談ください */
    #top-consultation {
      margin: 150px auto;
      max-width: 1807px;
    width: 95%;
    }
    .top-consultation__title-content {
      text-align: center;
    }
   .top-consultation__title {
    position: relative;
    display: inline-block;
     font-weight: bold;
     font-size: 48px;
     font-size: clamp(26px, 3.2vw, 48px);
     line-height: 1.44;
     text-align: center;
     text-shadow: 2px 2px 0px #ffd803;
    } 
    .top-consultation__titleL {
      font-size: clamp(36px, 3.2vw, 60px);
    }
   .top-consultation__title::after {
      display: inline-block;
      position: absolute;
      content: "";
      bottom: -10px;
      right: -50%;
      transform: translateX(-50%);
      width: 100%;
     height: 3px;
      background: #ffd803;
   } 
   .top-consultation__title .underline::after {
    display: none;
  }
   .top-consultation__wrap {
    margin-top: 72px;
    justify-content: space-between;
       overflow: hidden;
       position: relative;
       transform: translateX(12.5rem);
       transition: transform 1s cubic-bezier(0.33, 1, 0.68, 1), opacity 1s cubic-bezier(0.33, 1, 0.68, 1); 
       opacity: 0;
      }
      .top-consultation__wrap.is-show {
        transform: translateX(0);
        opacity: 1;
  }
.top-consultation__box {
  /*width: 23%;*/
  text-align: center;
}
.top-consultation__box:nth-child(4) {
  position: relative;
}
.top-consultation__box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-consultation__label {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
  width: min(258px, 80%);
}
.top-consultation__label img {
  width: 100%;
}
.top-consultation__box img {
  /*transform: rotate(10deg);*/
}
.top-consultation__box h3 {
  margin-top: 20px;
  font-weight: bold;
  font-size: 24px;
  font-size: clamp(18px, 1.25vw, 24px);
  letter-spacing: 0.05em;
}
.top-consultation__tag{
  margin-top: 20px;
  display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.top-consultation__tag span {
  display: inline-block;
  border-radius: 4px;
background: #ffd803;
font-weight: bold;
font-size: 13px;
padding: 0.4em 1.1em;;
/*margin-right: 3%;
margin-bottom: 3%;*/
margin: 0 1.5% 15px;
}
.top-consultation-carousel {
  display: none;
}
@media screen and (min-width: 1025px) {
    .top-consultation__wrap .swiper-wrapper {
        flex-wrap: wrap;
        justify-content: space-between;
        /* justify-content: space-evenly; */
        transform: none !important;
        pointer-events: none;
    }
    .top-consultation__btn {display: none;}
    .top-consultation__box {
        width: 32% !important;
    }
    .top-consultation__box.item1 {order: 1;}
    .top-consultation__box.item2 {order: 2;}
    .top-consultation__box.item3 {order: 3;}
    .top-consultation__box.item4 {order: 4;}
}
@media screen and (max-width: 1024px) {
  #top-consultation {
    margin: 60px auto;
  }
  .top-consultation__title {
font-size: 28px;
  }
  .top-consultation__titleL {
    font-size: 32px;
  }
  .top-consultation__title::after {
    bottom: -5px;
 } 
  .top-consultation__title .underline {
    position: relative;
    display: inline-block;
  }
  .top-consultation__title .underline::after {
    display: inline-block;
    position: absolute;
    content: "";
    bottom: -5px;
    right: -50%;
    transform: translateX(-50%);
    width: 100%;
   height: 3px;
    background: #ffd803;
 } 
 .top-consultation__wrap {
  /*display: none;*/
  }
  .top-consultation__box {
    /*width: 50%;*/
}
.top-consultation__box figure img {
  max-width: 280px;
}
.top-consultation-carousel__main-item img {
  width: 240px;
  margin-inline: auto;
  transform: rotate(10deg);
}
.top-consultation__body {
  margin-top: 10px;
  max-width: 278px;
  width: 100%;
  margin-inline: auto;
}
.top-consultation__body h3 {
  font-weight: bold;
font-size: 20px;
text-align: center;
}
.top-consultation__tag {
  margin-top: 10px;
}
.top-consultation__tag span {
  font-size: 11px;
    padding: 0.2em 0.6em;
}
/* -- SPカルーセル --*/
.top-consultation-carousel {
  display: block;
  position: relative;
  width: 374px;
  margin: 16px auto 0;
}
.top-consultation-carousel__activator-main {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.top-consultation-carousel__main {
  overflow: hidden;
  position: relative;
  display: flex;
}
.top-consultation-carousel__main-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.top-consultation-carousel__main-item {
  flex-shrink: 0;
  width: 374px;
  max-width: 100%;
}
.top-consultation-carousel__main-image {
  display: block;
  width: 100%;
}

.top-consultation-carousel__main-control-item {
  display: none;
}
.top-consultation-carousel__btn-prev-main, 
.top-consultation-carousel__btn-next-main {
  position: absolute;
  top: 33%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  transform: translateY(-50%);
  border: 2px solid #FFD803;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.top-consultation-carousel__btn-next-main {
  transform: rotate(-180deg);
}
.top-consultation-carousel__btn-prev-main {
  top: 41%;
  right: auto;
  left: 0px;
}
.top-consultation-carousel__activator-main:nth-child(1):checked ~ .top-consultation-carousel__main .top-consultation-carousel__main-control-item:nth-child(1) {
  display: block;
}
.top-consultation-carousel__activator-main:nth-child(2):checked ~ .top-consultation-carousel__main .top-consultation-carousel__main-control-item:nth-child(2) {
  display: block;
}
.top-consultation-carousel__activator-main:nth-child(3):checked ~ .top-consultation-carousel__main .top-consultation-carousel__main-control-item:nth-child(3) {
  display: block;
}
.top-consultation-carousel__activator-main:nth-child(4):checked ~ .top-consultation-carousel__main .top-consultation-carousel__main-control-item:nth-child(4) {
  display: block;
}
.top-consultation-carousel__activator-main:nth-child(1):checked ~ .top-consultation-carousel__main .top-consultation-carousel__main-track {
  transform: translateX(calc(-25% * 0));
}
.top-consultation-carousel__activator-main:nth-child(2):checked ~ .top-consultation-carousel__main .top-consultation-carousel__main-track {
  transform: translateX(calc(-25% * 1));
}
.top-consultation-carousel__activator-main:nth-child(3):checked ~ .top-consultation-carousel__main .top-consultation-carousel__main-track {
  transform: translateX(calc(-25% * 2));
}
.top-consultation-carousel__activator-main:nth-child(4):checked ~ .top-consultation-carousel__main .top-consultation-carousel__main-track {
  transform: translateX(calc(-25% * 3));
}
}

    .top-consultation__box {width: auto;}
    .top-consultation__btn {
        width: 50px;
        height: 50px;
        border: 2px solid #FFD803;
        border-radius: 50%;
        position: absolute;
        text-align: center;
        top: 50%;
        z-index: 1;
    }
    .top-consultation__prev {
        left: 0;
    }
    .top-consultation__next {
        transform: scale(-1, 1);
        right: 0;
    }
    @media screen and (max-width: 720px) {
      .swiper-wrapper {
        padding-top: 5%;
      }
      .top-consultation__label {
        width: 200px;
        top: -4%;
      }
    }
    @media screen and (max-width: 520px) {
      .top-consultation__label {
        right: min(10%, 50px);
      }
    }

@media screen and (max-width: 400px) {
  .top-consultation-carousel__btn-prev-main {
    left: 40px;
  }
  .top-consultation-carousel__btn-next-main {
    right: 41px;
  }
  .top-consultation-carousel__btn-prev-main, 
.top-consultation-carousel__btn-next-main {
  width: 30px;
  height: 30px;
}
.top-consultation-carousel__main-item img {
  width: 200px;
}
}
    /* カタログ/プライスリスト */
    #top-catalog {
      position: relative;
      width: 100%;
      height: auto;
      background-image: url(img/tire-bg.png);
      background-repeat: repeat;
      background-color: #F2F2F2;
      background-size: 100% auto;
  }
  .top-catalog__content {
    padding: 79px 0;
  }
  .top-catalog__text {
    margin-top: 30px;
  }
.top-catalog__wrap {
  margin-top: 40px;
    }
    .top-catalog__box {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      width: 47%;
    max-width: 350px;
    }
    .top-catalog__box:nth-child(n+3) {
      margin-top: 19px;
    }

    .top-catalog__head {
      width: 100%;
      min-height: 80px;
      display: flex;
      align-items: center;
      justify-content: center;
  }
  .top-catalog__title {
    margin-top: 10px;
    font-weight: bold;
    font-size: 20px;
  }
    .btn-inner {
      font-size: 14px;
      font-weight: bold;
    }    
    .download__wrap {
    margin-top: 15px;
  }
  .download {
    display: inline-block;
    width: 100%;
    border-radius: 4px;
    background: #fff;
    border: 2px solid #ffd803;
    padding: 13px 15px;
  }
  .download:nth-child(2) {
    margin-top: 15px;
  }
  .download-inner {
    justify-content: space-between;
    align-items: center;
  }
  .download-icon,
  .btn-inner {
    line-height: 1;
}
.top-catalog-btn {
margin-top: 80px;
text-align: center;
}
.btn-catalog.top-btn {
  padding: 25px 40px;
  font-weight: bold;
font-size: 20px;
border: 3px solid #ffd803;
border-radius: 6px;
}
/* @media screen and (min-width: 1024px) {
  .top-catalog__box:nth-child(n+3) {
    margin-top: 0;
  }
  .top-catalog__box:nth-child(n+4) {
    margin-top: 50px;
  }
  .top-catalog__box {
    width: 50%;
    margin-inline: inherit;
}
} */
@media screen and (min-width: 1025px) { 
  .top-catalog__wrap {
    margin-top: 48px;
    gap: 2%;
    justify-content: space-between;
    }
  .top-catalog__box {
    width: 19.6%;
  }
  .top-catalog__box:nth-child(n+3) {
    margin-top: 0;
}
.top-catalog__box:nth-child(n+5) {
margin-top: 80px;
}
}
 
  @media screen and (max-width: 1024px) { 
    .top-catalog__wrap {
      max-width: 750px;
    width: 100%;
    margin-inline: auto;
    }
    .top-catalog__content {
      padding: 40px 0 60px;
    }
    .top-catalog__box:nth-child(odd) {
      margin-right: auto;
    }
        .top-catalog__head {
          min-height: 60px;
          text-align: center;
        }
        .top-catalog__box > div.top-catalog__head img {
        width: 80%;
      }
      /*.top-catalog__box:nth-child(1) > div.top-catalog__head img {
        width: 67%;
      }
      .top-catalog__box:nth-child(2) > div.top-catalog__head img {
        width: 60%;
      }
      .top-catalog__box:nth-child(3) > div.top-catalog__head img {
        width: 62.5%;
      }
      .top-catalog__box:nth-child(4) > div.top-catalog__head img {
        width: 73.7%;
      }
      .top-catalog__box:nth-child(5) > div.top-catalog__head img {
        width: 89%;
      }
      .top-catalog__box:nth-child(6) > div.top-catalog__head img {
        width: 73.7%;
      }
      .top-catalog__box:nth-child(7) > div.top-catalog__head img {
        width: 68%;
      }
      .top-catalog__box:nth-child(8) > div.top-catalog__head img {
        width: 73.7%;
      }*/
    .top-catalog__title {
      margin-top: 0;
      font-size: 14px;
    }
    .top-catalog__text {
      font-size: 14px;
    }
    .download {
      padding: 13px 15px;
    }
    .top-catalog-btn {
      margin-top: 60px;
  }
    .btn-catalog.top-btn {
      padding: 13px 15px;
      font-size: 14px;
      border-radius: 4px;
      border: 2px solid #ffd803;
  }
  }
  @media screen and (max-width: 355px) { 
    .download {
      padding: 11px 10px;
  }
  .btn-inner {
    font-size: 13px;
  }
  }

    /* バッテリー各種 */
    #top-battery {
      padding: 100px 0;
      background-color: #252525;
      color: #fff;
    }
    .top-battery__content {
      width: 1230px;
    margin: 0 auto;
    max-width: 80%;
    }
    .top-battery__main-wrap {
      position: relative;
      padding-left: 20px;
      margin-left: -20px;
    }
    .top-battery__img {
      border-radius: 6px;
    }
    .top-battery__img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 6px;
      }
    .top-battery__main-title {
      position: absolute;
      bottom: 28px;
    left: 0px;
      display: inline-block;
      font-weight: bold;
      font-size: 32px;
      color: #252525;
      background-color: #ffd803;
      padding: 5px 20px;
      line-height: 1.2;
    }
    .top-battery__main-text {
      margin-top: 30px;
    }
    .top-battery__item {
      margin-top: 44px;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 2.439%;
    }
    h3.top-battery__title {
      margin-top: 12px;
      font-weight: bold;
      font-size: 20px;
      color: #fff;
    }
    .top-battery__text {
      margin-top: 12px;
    }
    @media screen and (max-width: 1024px) { 
      #top-battery {
        padding: 30px 0 60px;
      }
      .top-battery__content {
      max-width: 90%;
      }
      .top-battery__main-wrap {
        padding-left: 10px;
        margin-left: -10px;
        height: 160px;
      }
      .top-battery__img {
        height: inherit;
    }
      .top-battery__main-title {
        font-size: 20px;
        padding: 5px 10px;
        bottom: 10px;
        left: 0;
      }
      .top-battery__main-text {
        font-size:  14px;
      }
      .top-battery__item {
        margin-top: 30px;
        grid-template-columns: repeat(2, 1fr);
        row-gap: 20px;
        column-gap: 7.2463%;
      }
      .top-battery__box {
        text-align: center;
      }
      .top-battery__wrap {
        text-align: left;
      }
      .top-battery__box img {
        width: 160px;
        max-width: 100%;
    }
      h3.top-battery__title {
        margin-top: 0;
        font-size: 16px;
      }
      .top-battery__text {
        font-size: 14px;
      }
    }
    @media screen and (max-width: 345px) { 
      .top-battery__item {
        column-gap: 5px;
      }
      h3.top-battery__title {
        font-size: 15px;
      }
    }
        /* 除雪サービス*/
        #top-snow-removal {
          margin: 150px 0 100px;
        }
        .top-snow-removal__wrapper {
          align-items: center;
          justify-content: space-between;
        }
        .top-snow-removal__L {
          width: min(480px, 40%);
          margin-right: 2%;
        }
        .top-snow-removal__R {
          width: min(690px, 56%);
        } 
        .top-snow-removal__L-sp-wrap{
          display: none;
        }
        .top-snow-removal__item img {
          border-radius: 6px;
        }
        .top-snow-removal__item.top-snow-removal__L.view::after {
        background: #FFFFFF;
        }
        .top-snow-removal__title {
          display: inline-block;
          background: #ffd803;
          padding: 5px 20px;
          font-weight: bold;
          font-size: 32px;
          line-height: 1.2;
        }
        .top-snow-removal__content {
          flex-direction: column;
        }
        .top-snow-removal__text {
          margin-top: 30px;
        }
        .top-snow-removal__tag {
          margin-top: 20px;
        }
        .top-snow-removal__tag-item {
          border-radius: 4px;
          background: #f2f2f2;
          padding: 5px 15px;
          font-weight: bold;
          font-size: 13px;
          margin-right: 15px;
        }
        .top-snow-removal-btn {
          margin-top: 60px;
        }
        .btn-snow-removal {
          font-weight: bold;
          font-size: 14px;
          padding: 12px 23px;
        }
        @media screen and (max-width: 1024px) { 
            #top-snow-removal {
              margin: 60px 0;
            }
          .top-snow-removal__title {
            font-size: clamp(28px, 1.666vw, 32px);
          }
          .top-snow-removal__text {
            margin-top: 32px;
            font-size:  14px;
        }
        .top-snow-removal__tag-item {
            font-size: 11px;
            padding: 5px 10px;
          }
        }
        @media screen and (max-width: 720px) {  
          .top-snow-removal__wrapper {
            flex-direction: column;
        }
          .top-snow-removal__R {
            margin-top: 0;
            width: 100%;
        }
        .top-snow-removal__L {
          display: none;
        }
        .top-snow-removal__L-sp-wrap {
          display: block;
          padding-left: 10px;
          margin-left: -10px;
          position: relative;
      }
        .top-snow-removal__L-sp {
          height: 160px;
        }
        .top-snow-removal__item.top-snow-removal__L-sp img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          border-radius: 6px;
      }
      .top-snow-removal__R {
        display: contents;
      }
      .top-snow-removal__title {
        display: none;
      }
      .top-snow-removal__title.top-snow-removal__title-sp {
        display: block;
        position: absolute;
        bottom: 10px;
        left: 0;
        font-size: 20px;
        padding: 5px 10px;
      }
    }
    @media screen and (max-width: 420px) {  
      .top-snow-removal__title {
        left: 11px;
      }
    }
          /* 当社について */
          .top-company__bg {
            position: relative;
            width: 100%;
            background-image: linear-gradient(rgba(37,37,37,0.4),rgba(37,37,37,0.4)),url(img/top-company-bg.webp);
            background-size: cover;
            background-position: center;
            display: flex;
            align-items: center;
            justify-content: center;
          }
          .top-company__bg::before {
            content: "";
            position: absolute;
            top: 0;
            background-image: url(img/spike-tire-border.png);
            background-repeat: repeat-x;
            background-size: auto;
            width: 100%;
            min-height: 24px;
            background-color: transparent;
        }
        .top-company__wrapper {
          width: 1480px;
          margin: 0 auto;
          max-width: 80%;
        }
        .top-company__content {
          color: #ffff;
          max-width: 540px;
          width: 100%;
          padding: 120px 0;
        }
        .top-company__title-jp.title-jp,
        .top-company__sec-title h4 {
          color: #ffff;
        }
        .top-company__title {
          margin-top: 59px;
          font-weight: bold;
          font-size: 24px;
          letter-spacing: 0.05em;
          color: #ffff;
        }
        .top-company__text {
          margin-top: 20px;
          font-weight: bold;
          font-size: 20px;
        }
        .top-company-btn {
          margin-top: 60px;
        }
        .btn-company {
          font-weight: bold;
          font-size: 20px;
          padding: 25px 147px;
        }
        .btn-company.top-btn {
          border-radius: 6px;
          border: 3px solid #ffd803;
        }
        @media screen and (max-width: 1024px) { 
        .top-company__bg {
              min-height: auto;
              background-image: linear-gradient(rgba(37,37,37,0.6),rgba(37,37,37,0.6)),url(img/top-company-bg-sp.webp);
            }
            .top-company__wrapper {
              max-width: 75.8%;
            }
            .top-company__content {
              padding: 60px 0;
          }
            .top-company__title {
              margin-top: 40px;
              font-size: 20px;
            }
            .top-company__text {
              margin-top: 20px;
              font-size: 16px;
            }
        .top-company-btn {
          margin-top: 40px;
      }
      .btn-company {
        font-size: 14px;
        padding: 13px 52px;
    }
  }
          /* お問い合わせ */
          #top-contact {
            padding: 100px 0 0;
            position: relative;
            width: 100%;
            height: auto;
            background-image: url(img/tire-bg.png);
            background-repeat: repeat;
            background-color: #F2F2F2;
            background-size: 100% auto;
          }
          .top-contact__wrapper {
            width: min(1480px, 80%);
            border-radius: 8px;
            background: #fff;
            border: 3px solid #ffd803;
            text-align: center;
            margin-inline: auto;
          }
          .top-contact__content {
            max-width: 1270px;
            width: 100%;
            margin-inline: auto;
            text-align: center;
            padding: 80px 20px;
          }
          .top-contact__title-jp.title-jp.flex,
          .top-contact__title-en.title-en.mont.midashi-icon {
            justify-content: center;
        }
        .top-contact__text {
          margin-top: 30px;
        }
        .top-contact__box {
          margin-top: 88px;
          max-width: 860px;
          width: 100%;
          margin-inline: auto;
          justify-content: space-between;
        }
        .top-tel__title,
        .top-mail__title {
          font-weight: bold;
          font-size: 20px;
        }
        .top-contact__item.top-contact__L,
        .top-contact__item.top-contact__R {
          text-align: left;
      }
      .top-tel__item.flex {
        flex-direction: column;
        align-items: flex-start;
    }
    .top-contact__tel-text.tel__text.mont {
      line-height: 1.25;
  }
  .top-contact__tel-text.tel__text::before {
    top: 15%;
  }
.top-contact__time {
  font-size: 14px;
}
  .top-mail-btn {
    margin-top: 15px;
  }
.btn-mail {
  display: inline-block;
  border-radius: 6px;
background: #fff;
border: 3px solid #ffd803;
color: #252525;
  width: 380px;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  padding: 25px 0;
  text-decoration: none;
  display: flex;
  gap: 5px;
  line-height: 1;
  justify-content: center;
}
.btn-mail__icon {
  width: 22px;
  height: 16px;
  object-fit: contain;
}
@media screen and (max-width: 1024px) { 
  #top-contact {
    padding: 50px 0 0;
  }
  .top-contact__wrapper {
    width: 80.65%;
  }
      .top-contact__content {
    padding: 40px 7.25vw 60px;
    text-align: left;
  }
  .top-contact__text {
    margin-top: 20px;
    font-size: 14px;
}
.top-contact__box {
  margin-top: 43px;
  flex-direction: column;
  max-width: 274px;
  width: 100%;
}
.top-contact__item.top-contact__R {
  margin-top: 30px;
}
.top-tel__title, .top-mail__title {
  font-size: 16px;
}
.top-contact__tel-text.tel__text {
  padding-left: 30px;
  font-size: 32px;
}
.top-contact__tel-text.tel__text::before {
  width: 27px;
  height: 27px;
}
.top-mail-btn {
  margin-top: 10px;
}
.top-contact__time {
  font-size: 11px;
}
.btn-mail {
  max-width: 274px;
   width: 100%;
  font-size: 16px;
  padding: 15px 0 17px;
  background: #ffd803;
  margin-left: auto;
  margin-right: auto;
}
.btn-mail__icon {
  width: 20px;
  height: 14px;
}
.btn-mail.anim-tb::before {
  content: "";
  display: block;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  width: 120%;
  height: 120%;
  transform-origin: right bottom;
  transform: skewX(30deg) scaleX(0);
  transition: transform 0.4s;
}
.btn-mail.anim-tb:hover::before {
  transform-origin: left bottom;
  transform: skewX(30deg) scaleX(1);
}
}
@media screen and (max-width: 720px) { 
  .top-tel__item.flex {
    align-items: flex-start
  }
  .btn-mail {
    margin-left: 0;
  }
}
@media screen and (max-width: 390px) { 
  .top-contact__wrapper {
    width: 90%;
  }
}
@media screen and (max-width: 348px) { 
  .top-contact__tel-text.tel__text {
    font-size: 28px;
  }
  .top-contact__tel-text.tel__text::before {
    width: 25px;
    height: 25px;
}
}
 /* アクセス */
 .top-access {
  margin-top: 100px;
 }
 .top-access__map {
  margin-top: 30px;
 }
 .top-access__map iframe {
  height: 563px;
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
 }
 .top-access__title-jp {
justify-content: center;
font-weight: bold;
font-size: 42px;
letter-spacing: 0.05em;
line-height: 1;
 }
 .top-access__title-en {
  margin-top: 10px;
text-align: center; 
font-weight: 600;
font-size: 16px;
}
@media screen and (max-width: 1024px) { 
  .top-access {
    margin-top: 60px;
   }
   .top-access__map {
    margin-top: 20px;
   }
   .top-access__map iframe {
    height: 360px;
   }
   .top-access__title-jp {
    font-size: 24px;
     }
     .top-access__title-en {
      margin-top: 10px;
    font-size: 13px;
    }
}
/*--------------------------------
サブページ　共通
ーーーーーーーーーーーーーーーーーーーーーーー*/
.e-con-inner {
  max-width: none !important;
  padding: 0 !important;
}
.e-con {
  padding: 0;
}
.page .entry-title {
  display: none;
  }
.subtop-text {
    padding: 40px min(5%, 40px) 0;
    height: 175px;
}
.subheader {
    transition: transform 0.3s;
  transform: translateY(20%);
  opacity: 0;
}
.subheader.on {
  transform: translateY(0);
  opacity: 1;
}
.sub-title-jp {
  font-weight: bold;
  font-size: 48px;
  /* font-size: clamp(38px, 2.5vw, 48px); */
  letter-spacing: 0.03em;
  color: #252525;
    margin: 0;
    line-height: 1;
}
.sub-title-en {
  display: flex;
  align-items: center;
  margin: 15px 0 0;
  font-size: 16px;
  font-weight: 600;
}
.midashi-icon:before {
  content: "";
   display: inline-block;
    width: 9px;
    height: 9px;
    background-image: url(img/circle-icon.svg);
    background-repeat: no-repeat;
    margin-right: 3px;
}
.border {
  background-image: url(img/boeder.png);
  background-repeat: repeat-x;
  background-size: auto;
  width: 100%;
  min-height: 24px;
  background-color: #fff;
  mix-blend-mode: multiply;
}
.border-rev {transform: scale(-1,1);}

@media screen and (max-width: 1024px) {
    .sub-title-jp {font-size: 28px;}
}
@media screen and (max-width: 720px) {
    .subtop-text {
        padding: 30px 5% 0;
        height: 125px;
    }
    .sub-title-jp {font-size: 24px;}
    .sub-title-en { margin: 5px 0 0;font-size: 13px;}
}

/*--------------------------------
お知らせページ
ーーーーーーーーーーーーーーーーーーーーーーー*/
#news-top {
    position: relative;
    z-index: 2;
}

#sec-article {
  position: relative;
  width: 100%;
  height: auto;
  background-image: url(img/tire-bg.png);
  background-repeat: repeat;
  background-color: #F2F2F2;
    background-size: 100% auto;
}

/* .subpage-tirebg {
  position: absolute;
  top: -175px;
  right: 4.166%;
  width: clamp(310px, 21vw, 410px);
    mix-blend-mode: multiply;
    transform: translateY(-100%);
    transition: transform 1.5s 1s linear;
} */
/* .subpage-tirebg.on {
    transform: translateY(0);
} */

/*    サブページタイヤパーツの出現アニメーション */
.subpage-tirebg { 
  position: absolute;
  right: 4.166%;
  width: clamp(310px, 21vw, 410px);
    mix-blend-mode: multiply;
} 
.subpage-tirebg-tracks {
    opacity: 0;
    animation-duration: 8s;
    animation-fill-mode: forwards;
    animation-timing-function: linear;
}
.subpage-tirebg.active .subpage-tirebg-tracks:nth-child(1) {transition: opacity 0.1s 1s;}
.subpage-tirebg.active .subpage-tirebg-tracks:nth-child(2) {transition: opacity 0.1s 2.2s;}
.subpage-tirebg.active .subpage-tirebg-tracks:nth-child(3) {transition: opacity 0.1s 2.8s;}
.subpage-tirebg.active .subpage-tirebg-tracks:nth-child(4) {transition: opacity 0.1s 3.6s;}
.subpage-tirebg-tracks:not(:first-child) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.subpage-tirebg.active .subpage-tirebg-tracks {
  opacity: 1;
}
.news-tirebg {
  top: -175px;
}

.news-item {
  background: #fff;
  border: 3px solid #ffd803;
  filter: drop-shadow(0px 5px 10px rgba(0, 0, 0, 0.1));
  padding: 60px;
  margin-bottom: 60px;
    border-radius: 8px;
}

.news-item:first-child {
  margin-top: 60px;
}

.news-date {
  font-size: 13px;
  color: #666;
    margin-bottom: 15px;
}

.news-ttl {
  font-weight: bold;
  font-size: 24px;
  letter-spacing: 0.1em;
}

.news-content-inner {
    margin-top: 60px;
}
.news-content-inner figure {
text-align: center;
}

.news-content-inner > *:not(:last-child) {margin-bottom: 30px;}

.news-content img {
  /*aspect-ratio: 990/457;
  object-fit: cover;*/
}

.news-content-inner a {
    text-decoration: underline;
    text-underline-offset: 5px;
}
.news-content-inner a:hover {
    text-decoration-color: #ffd803;
}

/*  news-pagination  */
.pagination {
  text-align: center;
  margin-bottom: 60px;
}

.page-numbers {
  font-size: 14px;
  width: 40px;
  height: 40px;
  background: #fff;
  border: 2px solid #ffd803;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 10px;
  border-radius: 50%;
  color: #252525;
}
.prev.page-numbers img {
  transform: rotate(180deg);
}

.page-numbers.dots {display: none;}

.pagination-prev::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 10px;
  background-image: url(img/prev-icon.svg);
  background-size: contain;
}

.page-numbers.current,
a.page-numbers:hover {
    background-color: #ffd803;
}

@media screen and (max-width: 1024px) {
    .subpage-tirebg {width: max(220px, 25vw);}
    .news-item {padding: 45px;}
}
@media screen and (max-width: 720px) {
    .news-item {padding: 25px; margin-bottom: 30px;}
    .news-item:first-child {margin-top: 30px;}
    .subpage-tirebg {width: clamp(160px, 25vw, 220px); top: -125px;}
    .news-date {margin-bottom: 5px;}
    .news-ttl {font-size: 20px;}
    .news-content-inner p {font-size: 14px;}
    .news-content-inner > *:not(:last-child) {margin-bottom: 20px;}
}

/*--------------------------------
会社案内ページ
ーーーーーーーーーーーーーーーーーーーーーーー*/
/* 会社案内 */
#sub-company-top {
  margin-top: 40px;
}
.sub-company-top__content {
  width: 100%;
  max-width: 1980px;
  margin-inline: auto;
  padding: 0 0.5vw 0 2.1vw;
  justify-content: space-between;
}
.sub-company-top__title {
  width: 202px;
  /* width: min(198px, 17%); */
}
.sub-company-top__text {
  width: calc(96% - 202px);
}
.sub-company-header__img {
  margin-top: 40px;
  width: 100%;
  padding-right: 11.4583vw;
  position: relative;
}
.sub-company-header__img img {
  width: 100%;
  border-radius: 0px 8px 8px 0px;
}
.sub-company-tirebg {
top: 0;
}

#sec-company__banner {
  margin-top: 96px;
}
.sub-company__banner-wrap {
    /*justify-content: space-between;*/
    justify-content: center;
    gap: 2%;
    flex-wrap: nowrap;
}
.sub-company__box {
  position: relative;
  font-weight: bold;
font-size: 20px;
color: #fff;
align-items: center;
justify-content: center;
cursor: pointer;
transition: background 0.3s ease;
overflow: hidden;
  border-radius: 6px;
}
.sub-company__box img {
  min-height: 35px;
  border-radius: 6px;
}
.sub-company__box::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(37, 37, 37, .75);
  transition: opacity 0.6s ease;
  border-radius: 6px;
  opacity: 0.75;
}
.sub-company__box:hover::after {
  opacity: 0.5;
}
.sub-company__banner-text {
  z-index: 1;
  position: absolute;
}
#sec-sub-message,
#sec-sub-outline,
#sec-sub-contact,
.sub-mail__box {
  margin-top: 150px;
}
.sec-title-jp {
  font-weight: bold;
/* font-size: clamp(32px, 2.1875vw, 42px); */
font-size: 42px;
letter-spacing: 0.05em;
line-height: 1;
}
.sec-title-en {
  margin-top: 10px;
  font-size: 16px;
  font-weight: 600;
}
@media screen and (max-width: 1330px) {
  .sec-title-jp {
  font-size: 36px;
  }
}
@media screen and (max-width: 1024px) {
  #sec-sub-message,
#sec-sub-outline,
#sec-sub-contact,
.sub-mail__box {
  margin-top: 50px;
}
.sec-title-jp {
font-size: 28px;
}
.sec-title-en {
  font-size: 14px;
}
.sub-company-top__content {
  flex-direction: column;
  width: min(1230px, 90%);
  padding: 0;
}
.sub-company-header__img {
  margin-top: 20px;
  padding-right: 6%;
}
.sub-company-top__title {
  width: 100%;
}
  .sub-company-top__text {
    margin-top: 20px;
      width: 100%;
    font-size: 14px;
  }
  .sub-company__banner-text {
    font-size: 14px;
  }
  #sec-company__banner {
    margin-top: 50px;
}
}
@media screen and (max-width: 720px) { 
  .sec-title-jp {
    font-size: 24px;
    }
    .sec-title-en {
      font-size: 13px;
    }
}
/* 代表ご挨拶 */
.sub-message__content {
  margin-top: 50px;
  justify-content: space-between;
}
.sub-message__img {
  width: min(420px, 35%);
}
.sub-message__item {
  width: calc(100% - 39%);
  font-family: 'Noto Sans JP', '游ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', sans-serif;
  line-height: 1.8;
}
.sub-message__title {
  font-weight: bold;
  font-size: 20px;
  margin-top: 50px;
}
.sub-message__text-box {
  margin-top: 30px;
}
.sub-message__text:not(:nth-child(1)) {
margin-top: 30px;
}
.sub-message__text.sub-message__text-last {
  margin-top: 40px;
  text-align: right;
  display: block;
    margin-left: auto;
}
/* 会社概要  */
.sub-outline__content {
  justify-content: space-between;
}
.sub-outline__sec-title {
width: calc(100% - 63%);
margin-right: 2%;
}
.sub-outline__items {
  width: 61%;
}
.sub-outline__item {
  background-image: linear-gradient(to right, #666, #666 2px, transparent 2px, transparent 2px);
    background-size: 4px 1px;
    background-repeat: repeat-x;
    background-position: top;
  padding: 20px 0;
}
.sub-outline__item:nth-last-child(1) {
  background-image: linear-gradient(to right, #666, #666 2px, transparent 2px, transparent 2px),
  linear-gradient(to left, #666, #666 2px, transparent 2px, transparent 2px);
background-size: 4px 1px, 4px 1px;
background-repeat: repeat-x, repeat-x;
background-position: top, bottom;
}
.sub-outline__item .itemL {
  width: 150px;
  font-weight: bold;
}
.sub-outline__item .itemR {
  width: calc(100% - 150px);
}
@media screen and (max-width: 1024px) {
  .sub-message__content {
    flex-direction: column;
  }
  .sub-message__img {
    max-width: 320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.sub-message__item {
  margin-top: 30px;
  width: 100%;
}
}
@media screen and (max-width: 720px) {
  .sub-message__text-box,
  .sub-message__text-last {
  margin-top: 20px;
  }
  .sub-outline__content {
    flex-direction: column;
  }
  .sub-outline__items {
    width: 100%;
    margin-top: 30px;
    margin-inline: auto;
}
.sub-outline__sec-title {
  width: 100%;
  margin-right: 0;
  }
.sub-outline__item {
  padding: 15px 0;
  font-size: 14px;
}
.sub-outline__item .itemL {
  width: 100px;
}
.sub-outline__item .itemR {
  width: calc(100% - 100px);
}
.sub-message__title {
  font-size: 18px;
}
.sub-message__text {
  font-size: 14px;
}
}
/* お問い合わせ  */
#sec-sub-contact {
  position: relative;
  width: 100%;
  height: auto;
  background-image: url(img/tire-bg.png);
  background-repeat: repeat;
  background-color: #F2F2F2;
  background-size: 100% auto;
}
.sub-contact__content {
  padding: 80px 0 180px;
}
.sub-contact2 {
  max-width: 950px;
  width: 100%;
  margin-inline: auto;
  padding: 80px 0 0;
}
.sub-tel__box {
  margin-top: 80px;
  border-radius: 8px;
  background: #fff;
  border: 3px solid #ffd803;
  padding: 40px 11% 40px;
  align-items: center;
  justify-content: space-between;
}
.sub-contact__title {
  width: min(316px, 100%);
  background: #ffd803;
  text-align: center;
  font-weight: bold;
  font-size: 24px;
  letter-spacing: 0.05em;
  padding: 8px 5px;
  line-height: 1.2;
}
.sub-tel__text1 {
  width: min(540px, 100%);
  align-items: center;
  font-size: 14px;
    gap: 10px;
}
/* 共通パーツ*/
.tel__text {
  position: relative;
  font-weight: bold;
  font-size: 48px;
  letter-spacing: 0.03em;
  padding-left: 45px;
}
.tel__text::before {
  content: "";
  position: absolute;
  top: 26%;
  left: 0;
  width: 40px;
  height: 40px;
  background-image: url(img/tel-icon.svg);
  background-size: contain;
}
/* 共通パーツ*/
.sub-mail__box {
  width: min(950px, 100%);
  margin-inline: auto;
}
.sub-mail__text {
  margin-top: 30px;
}
.sub-contact {
  margin-top: 80px;
}
/* メールフォーム */
.mailform-row {
  margin-bottom: 30px;
  align-items: flex-start;
}

.formL {
  width: max(250px, 20%);
  font-weight: bold;
font-size: 20px;
  display: flex;
  align-items: center;
  padding-top: 12px;
}

.formR {
  width: min(80%, calc(100% - 250px));
}

.formR placeholder {
  color: #999;
}

.formR input,
.formR textarea {
  border: none;
  outline: none !important;
  height: 66px;
  appearance: none;
}

.yt-mailform .formR input,
.yt-mailform .formR textarea {
  border-radius: 6px;
  background: #fff;
  border: 1px solid #ccc;
}

.mailform-row.flex.form-message {
  align-items: flex-start;
}

.mailform-row.form-message .formL {
  padding-top: 15px;
}

.formR textarea {
  height: 500px;
  resize: none;
  padding: 0.8rem 1rem;
}

.wpcf7-list-item.first {
  margin: 0;
}

.wpcf7-list-item-label {
  cursor: pointer;
  display: flex;
}

.mailform-row.flex.form-contact>.formL {
  padding-top: 0px;
}

.form-confirm {
  margin-top: 80px;
}

.form-confirm .wpcf7-form-control-wrap {
  display: block;
  text-align: center;
}

.form-confirm .wpcf7-list-item {
  margin: 0;
}

.form-confirm label {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: left;
}
.form-confirm input {
  appearance: none;
  height: 26px;
  width: 26px;
  border-radius: 4px;
background: #fff;
border: 1px solid #ccc;
  margin-right: 10px;
  position: relative;
}
.form-confirm input::after {
  background-image: url(img/check-icon.svg);
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 70% auto;
  opacity: 0;
}
.form-confirm label .wpcf7-list-item-label {
  width: calc(100% - 26px);
  line-height: 1.4;
}
.form-confirm input:checked::after {
  opacity: 1;
}
.submit-wrapper p {
  width: 260px;
  margin: 0 auto;
  position: relative;
  border-radius: 30px;
  overflow: hidden;
  border-width: 2px;
  border-style: solid;
  z-index: 1;
}
.submit-wrapper p::after {
  z-index: 0;
}
.form-btn {
  margin-top: 41px;
  width: min(100%, 380px);
  margin-inline: auto;
  border-radius: 6px;
background: #fff;
border: 3px solid #ffd803;
}

.form-btn input {
  width: 100%;
  border: 0 !important;
  outline: none !important;
  font-size: 20px;
  height: 80px;
  font-weight: bold;
  color: #252525 !important;
  position: relative;
  z-index: 1;
  background-color: transparent !important;
}

.anim-b {
  overflow: hidden;
  position: relative;
  transition: color 0.4s;
}
.anim-b::before {
  content: "";
  display: block;
  background-color: #FFD803;
  position: absolute;
  top: 0;
  left: 0;
  width: 120%;
  height: 100%;
  transform-origin: right bottom;
  transform: skewX(30deg) scaleX(0);
  transition: transform 0.4s;
}
.anim-b:hover::before {
  transform-origin: left bottom;
  transform: skewX(30deg) scaleX(1);
}
.wpcf7-response-output {
  border-color: #FFD803 !important;
  font-weight: bold;
}
.wpcf7-spinner {
  display: none;
}

.grecaptcha-badge {
  bottom: 5px !important;
  z-index: 1 !important;
  opacity: 1;
  transition: all 0.3s ease 0s !important;
}

input:-webkit-autofill {
  box-shadow: 0 0 0 1000px #fff inset !important;
  transition: background-color 5000s ease-in-out 0s;
}
@media screen and (max-width: 1400px) {
  .sub-tel__box {
flex-direction: column;
  }
}
@media screen and (max-width: 1024px) {
  .mailform-row {
      margin-bottom: 25px;
  }

  .formL {
      font-size: 14px;
      width: max(210px, 24%);
      padding-top: 13px;
  }

  /* .formR {
    width: min(50%, calc(100% - 210px));
  } */
  .formR input {
    font-size: 16px;
    line-height: 1;
  }
  .formR textarea {
    height: 150px;
    font-size: 14px;
  }
  .form-confirm {
    margin-top: 40px;
  }
  .form-btn {
    margin-top: 21px;
    width: min(100%, 280px);
  }
  .form-btn input {
    height: 50px;
    font-size: 14px;
}
  .mailform-row.form-message .formL {
      padding-top: 10px;
  }
  .grecaptcha-badge {
      bottom: 5px !important;
  }
  .sub-tel__box {
    padding: 40px 8% 40px;
  }
}

@media screen and (max-width: 720px) {
  .sub-contact__content {
    padding: 40px 0 60px;
  }
  .sub-tel__box {
    margin-top: 40px;
    padding: 27px 5% 26px;
    justify-content: center;
  }
  .sub-contact__title {
    font-size: 20px;
    line-height: 1;
  }
  .sub-tel__text1 {
    flex-direction: column;
    align-items: center;
    font-size: 13px;
    gap: 0;
}

/* 共通パーツ */
.tel__text {
  font-size: 32px;
  padding-left: 28px;
}
.tel__text::before {
  top: 30%;
  left: 0;
  width: 25px;
  height: 25px;
}
/* 共通パーツ */
.sub-mail__text {
  margin-top: 20px;
  font-size: 14px;
}
.sub-contact2 {
  padding: 40px 0 0;
}
  .mailform-row {
      margin-bottom: 20px;
  }

  .formL {
      padding-top: 10px;
      width: 100%;
      padding: 0 0 5px !important;
  }
  .formR input {
    height: 50px;
  }
  .formR {
    /* max-width: 300px; */
      width: 100%;
  }
  .form-btn  {
    width: min(100%, 180px);
  }
  .form-btn input {
    height: 40px;
  }
  .form-confirm {
      margin-top: 25px;
      font-size: 14px;
  }
  .form-confirm input {
    height: 20px;
    width: 20px;
  }

  .grecaptcha-badge {
      bottom: 5px !important;
  }
}
/*--------------------------------
 個人情報保護方針
ーーーーーーーーーーーーーーーーーーーーーーー*/
.personal-information {
  margin-top: 80px;
}
.personal-information__header.js-accordion-header.open {
  /* border-bottom: none; */
  background-image: linear-gradient(to right, #666, #666 2px, transparent 2px, transparent 2px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
}
.personal-information__header {
  /* border-top: 1px dotted #666; */
  /* border-bottom: 1px dotted #666; */
  background-image: linear-gradient(to right, #666, #666 2px, transparent 2px, transparent 2px),
  linear-gradient(to left, #666, #666 2px, transparent 2px, transparent 2px);
background-size: 4px 1px, 4px 1px;
background-repeat: repeat-x, repeat-x;
background-position: top, bottom;
  padding: 20px 0 20px 15px;
  cursor: pointer;
  transition: all 0.3s;
  font-weight: bold;
  font-size: 16px;
}
.js-accordion-content {
  display: none;
}

.personal-information__content {
  position: relative;
  border-radius: 6px;
background: #fff;
padding: 60px 32px 60px 30px;
}
.personal-information__content::after {
  content: "";
background-image: linear-gradient(to right, #666, #666 2px, transparent 2px, transparent 2px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  position: absolute;
  bottom: -20px;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
}
.personal-information__title {
  font-weight: bold;
  font-size: 14px;
}
.personal-information__box {
  margin-top: 40px;
  font-size: 14px;
}
.personal-information__box:nth-child(1) {
  margin-top: 0;
}
.personal-information__box2 {
  margin-top: 20px;
}
.personal-information__box > ul {
  margin-top: 20px;
}
h5.personal-information__title {
  margin: 0;
}
a.personal-information__link {
  flex-direction: row;
}
.personal-information__list {
  text-indent: -1em;
  padding-left: 1em;
}
.personal-information__box > ol {
  margin-left: 2em;
}
.personal-information__box > ol li {
	list-style-type: none;
	counter-increment: cnt;
}
.personal-information__box > ol li::before {
	content: "(" counter(cnt) ")";
	display:inline-block;
	margin-left:-2em;
	width: 2em; 
}
.personal-information__box2.flex {
  flex-direction: column;
  display: inline-flex;
}
.personal-information__text,
.personal-information__link {
  font-size: 14px;
}
.personal-information__link {
  text-decoration: underline;
}
.personal-information__link a:hover {
  text-decoration-color: #FFD803;
}
.personal-information__text-last {
text-align: right;
font-size: 14px;
}

.personal-information .apersonal-information__header:hover {
  opacity: 0.8;
}

.personal-information__header {
  position: relative;
}

.personal-information__header:after {
  content: "";
  position: absolute;
  right: 3%;
  top: 45%;
  width: 10px;
    height: 12px;
    background-image: url(img/personal-information-icon.svg);
    background-size: contain;
  transition: all 0.2s ease-in-out;
  display: block;
}
.personal-information__header.open:after {
  transform: rotate(-180deg);
}

@media screen and (max-width: 720px) {
  .personal-information {
    margin-top: 40px;
  }
  .personal-information__header {
    padding: 15px 0 15px 10px;
    font-size: 14px;
  }
  .personal-information__header:after {
    top: 40%;
    width: 8px;
    height: 10px;
  }
  .personal-information__content {
    padding: 30px 16px 30px 15px;
  }
  .personal-information__box {
    margin-top: 20px;
}
.personal-information__box2 {
  margin-top: 10px;
}
.personal-information__link {
  text-decoration: underline;
}
.personal-information__box > ol {
  margin-left: 1em;
}
.personal-information__box > ol li::before {
  margin-left: -1em;
  width: 1.5em;
}
}




/* スライダー　若林 */
.slider-wrapper {
    position: relative;
    z-index: 2;
    width: min(1920px, 100%);
    margin-inline: auto;
}
.slider-pg {
    position: absolute;
    height: 270px;
    width: 3px;
    background: linear-gradient(to left, transparent 17%, #FFD803 66%, transparent 17%);
    /* background-color: #FFD803; */
    top: 11.7vw;
    left: calc(68% + 15px);
    clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
    transition: clip-path 2s;
}
.slider-pg.on {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.slider-pg-inner {
    height: calc(100% / 3);
    background-color: #252525;
    width: 3px;
    clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
    transition: clip-path 0.5s;
}
.slider-pg-inner.active {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.slider-pg-inner.next {
    opacity: 0;
}
.slider-pg-inner.end {
    clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);
}
.slider-item {position: relative; overflow: hidden;}
.slider-item:not(#slide1) {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.slider-item.active {z-index: 2;}
.slider-item.next {z-index: 1;}
.slider-item.end {z-index: 0;}
.slider-img {
    overflow: hidden;
    clip-path: polygon(0 100%,0 100%,0 100%);
    transition: clip-path 2s;
  }
  .slider-img-wrap {
    padding-top: 11.7vw;
    overflow: hidden;
  }
.slider-imgL {
    width: 68%;
    border-radius: 0 8px 8px 0;
}
.slider-item.active .slider-img {
    clip-path: polygon(0 100%,0 -100%,300% 100%);
}
.slider-item.next .slider-img {opacity: 0;}
.slider-item.end .slider-img {
  clip-path: polygon(-100% 300%,0 -100%,300% 100%);
}
.slider-img img {
  transition: transform 8s linear;
}
.slider-img img.active1 {
  transform: scale(1.2);
}

.slider-text-box {
    position: absolute;
    top: 3.9vw;
    left: min(40px, 5%);
    overflow: hidden;
    z-index: 5;
    width: 90%;
}
.slider-text {
    font-size: clamp(42px,3.75vw,72px);
    line-height: 1.3888;
    color: #000;
    text-shadow: 2px 2px 0px #ffd803;
    font-weight: 700;
    transform: translateY(100%);
    transition: transform 1s;
}
/* .slider-text2 {padding-left: 1em;} */
.slider-item.active .slider-text {transform: translateY(0);}
.slider-item.next .slider-text {opacity: 0;}
.slider-item.end .slider-text {transform: translateY(-100%);}
.slider-imgS {
    position: absolute;
    /* top: 40px; */
    top: 3.9vw;
    right: max(-40px, -5%);
    width: clamp(250px, 20%, 392px);
    border-radius: 8px 0 0 8px;
}
.slider-text-line {position: relative;}
.slider-text-line::after {
    content: "";
    position: absolute;
    left: 9.5em;
    top: 50%;
    transform: translateY(-50%);
    width: clamp(110px,16.365vw,295px);
    height: 4px;
    background: #252525;
    box-shadow: 2px 2px 0px #ffd803;
}
.slider-logo {
    position: absolute;
    width: min(55%, 710px);
    left: calc(68% - 710px);
    bottom: min(7vw, 100px);
    justify-content: space-between;
    z-index: 5;
}
.slider-logo-item {
    width: min(24%, 170px);
    overflow: hidden;
}
.slider-logo-item img {
    transform: translateY(100%);
    transition: transform 0.5s 1s;
}
.slider-logo.on img {transform: translateY(0);}

@media screen and (max-width: 1400px) {
    .slider-logo {
        width: 55%;
        left: 13%;
    }
}
@media screen and (max-width: 1024px) {
    .slider-imgS {width: min(30%, 250px);}
    .slider-pg {height: 180px;}
    .slider-text {font-size: 36px;}
    .slider-logo {
        width: 350px;
        bottom: 4vw;
        left: calc(68% - 350px);
    }
    .slider-logo-item {width: min(49%, 170px); margin-top: 15px;}
}
@media screen and (max-width: 720px) {
    .slider-pg {top: 120px;}
    .slider-imgS {display: none;}
    .slider-img-wrap {
      padding-top: 120px;
    }
    .slider-imgL {
        height: min(890px, 145vw);
        width: 82.5vw;
    }
    .slider-imgL img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 0 8px 8px 0;
    }
    #slide1 > .slider-img-wrap > .slider-imgL img {
      object-position: 46% 70%;
    }
    #slide2 > .slider-img-wrap > .slider-imgL img {
      object-position: 54% 70%;
    }
    #slide3 > .slider-img-wrap > .slider-imgL img {
      object-position: 75% 80%;
    }
    .slider-pg {left: calc(82.5vw + 15px);}
    .slider-text-box {top: 47px;}
    .slider-text {font-size: 28px; line-height: 1.7142; text-shadow: 1px 1px 0px #ffd803;}
    .slider-text2 {padding-left: 0;}
    .slider-text-line::after {
        height: 2px;
        box-shadow: 1px 1px 0px #ffd803;
    }
    .slider-logo {
        left: calc(82.5% - 350px);
    }
}
@media screen and (max-width: 600px) {
    .slider-pg {top: 170px;}
    .slider-text .br-sp {display: block;}
    .slider-img-wrap {
      padding-top: 170px;
    }
    .slider-imgL {
        /* height: min(890px, calc(145vw + 170px)); */
        height: min(890px, 148.6vw);
    }
}
@media screen and (max-width: 480px) {
    .slider-logo {
        width: 252px;
        left: calc(82.5% - 252px);
        bottom: 10px;
    }
    .slider-logo-item {width: 120px; margin-top: 10px;}
}
@media screen and (max-width: 350px) {
  .slider-text-box {
    top: 55px;
  }
  .slider-text {
    font-size: 26px;
  }
}
@media screen and (min-width: 1921px) {
  .slider-wrapper {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
  .slider-imgL {
    width: min(74%, 1700px);
  }
  .slider-imgL img {
    width: 100%;
    object-fit: cover;
  }
  .slider-imgS {
    width: min(20%, 480px);
    right: 0;
  }
  .slider-imgS img {
    width: 100%;
    object-fit: cover;
  }
  .slider-pg {
    left: calc(74% + 15px);
  }
  .toppage-tirebg {
    right: 2.166%;
  }
  .slider-text-box {
    left: clamp(5%, 10%, 20%);
  }
}
@media screen and (min-width: 2301px) {
  .slider-pg {
    left: 1715px;
  }
}

/**********
404
**********/
.text404-wrapper {
  margin-top: 50px;
  padding: 274px 0 390px;
}
.title404 {
  text-align: center;
  font-weight: bold;
  font-size: 72px;
  line-height: 1.3888;
  color: #000;
  text-shadow: 2px 2px 0px #ffd803;
}
.text404 {
  font-weight: bold;
font-size: 24px;
letter-spacing: 0.05em;
  text-align: center;
  margin-top: 20px;
}
.link404 {
  text-align: center;
  margin-top: 50px;
}
.link-text404 {
  width: 380px;
  padding: 25px 0;
  font-weight: bold;
font-size: 20px;
  display: inline-block;
    border-radius: 6px;
    background: #fff;
    border: 3px solid #ffd803;
    text-align: center;
    line-height: 1;
}

@media screen and (max-width: 720px) {
  .text404-wrapper {
  padding: 174px 0 290px;
  }
  .title404 {
    font-size: 42px;
  }
  .text404 {
      font-size: 18px;
  }
  .link-text404 {
    width: 230px;
    padding: 20px 0;
  font-size: 16px;
  }
  .elementor-container.elementor-column-gap-default {
    padding-inline: 0 !important;
}
}

/*--------------------------------
 出張タイヤ交換ページ
ーーーーーーーーーーーーーーーーーーーーーーー*/
#sub-tire-change-top,#sub-tire-change-area,#sub-tire-change-fee {
  width: min(1110px, 80%);
}
.sub-tire-change-top {
  margin-top: 80px;
}
.sub-tire-change__title {
  margin-top: 50px;
  font-weight: bold;
font-size: 24px;
letter-spacing: 0.05em;
line-height: 1.8;
}
.sub-tire-change__text {
  margin-top: 33px;
  font-size: 16px;
  line-height: 1.8;
}
.sub-tire-change__img {
  margin-top: 36px;
  justify-content: space-between;
}
.sub-tire-change__img figure {
  width: 31.6%;
}
.sub-tire-change__img img{
  border-radius: 6px;
}
figcaption.sub-tire-change__img-text {
  font-weight: bold;
  font-size: 16px;
  line-height: 1.8;
  margin-top: 13px;
  font-style: normal;
}
.sub-tire-change-area {
  margin-top: 113px;
}
.sub-section-title-jp {
  display: inline-block;
  font-weight: bold;
font-size: 24px;
letter-spacing: 0.05em;
line-height: 1.4;
background: var(--color_y);
padding: 5px 20px;
}
.sub-tire-chang-area__text {
  margin-top: 30px;
  font-size: 16px;
line-height: 1.8;
}
.sub-tire-change-fee {
  margin-top: 97px;
  margin-bottom: 229px;
}
.fee-table__content {
  margin-top: 30px;
}
.sub-fee-table {
  border: 2px solid #ddd;
  border-radius: 6px;
  overflow: hidden;
  font-size: 16px;
  text-align: center;
}
.sub-fee-table__content{
  margin-top: 30px;
}
.sub-fee-table__content:not(:nth-child(2)){
  margin-top: 60px;
}
.sub-fee-table:nth-child(1) > .sub-fee-row:nth-child(1),.sub-fee-table:nth-child(2) > .sub-fee-row:nth-child(1) {
  border-radius: 6px 6px 0px 0px;
background: #f7f7f7;
font-weight: bold;
}
.sub-fee-row:nth-last-child(1){
  border-radius: 0px 0px 6px 6px;
}
.sub-fee-row:not(:last-child) {
  border-bottom: 1px solid #ddd;
}
.sub-fee-row1, .sub-fee-row2 {
  width: calc(100% / 4);
  padding: 12px 25px;
  border-right: 1px solid #ddd;
}
.sub-fee-row1 {
  text-align: left;
}
 .sub-fee-table:nth-child(1) > .sub-fee-row:nth-child(1) > .sub-fee-row1 {
  text-align: center;
 }
.sub-fee-row2 {
  justify-content: center;
  align-items: center;
}
.sub-fee-kome_content {
  margin-top: 20px;
}
.sub-fee-kome {
  font-size: 14px;
line-height: 1.8;
}
.sub-tire-change-tel-box {
  margin-top: 89px;
  border-radius: 8px;
  background: #fff;
  border: 3px solid #ffd803;
  padding: 39px 11%;
  position: relative;
}
.sub-tire-change-tel-box::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 17%;
  height: 100%;
  aspect-ratio: 187 / 210;
  background-image: url(img/tel-bg.webp);
  background-size: cover;
}
.sub-tire-change-tel__text-wrap {
  justify-content: space-between;
  flex-direction: column;
  align-items: center;
}
.sub-tire-change-tel__title {
  font-weight: bold;
font-size: 24px;
letter-spacing: 0.05em;
line-height: 1.8;
}
.sub-tire-change-tel__tel {
  position: relative;
  font-weight: bold;
  font-size: 48px;
  margin-top: 15px;
  line-height: 1;
  letter-spacing: 0.03em;
  padding-left: 45px;
}
.sub-tire-change-tel__tel::before {
  content: "";
  position: absolute;
  top: 26%;
  left: 0;
  width: 40px;
  height: 40px;
  background-image: url(img/tel-icon.svg);
  background-size: contain;
}
.sub-tire-change-tel__tlme {
  font-size: 14px;
  line-height: 1;
  margin-top: 10px;
}
@media screen and (max-width: 1024px) { 
  #sub-tire-change-top,#sub-tire-change-area,#sub-tire-change-fee {
    width: min(1110px, 90%);
  }
  .sub-tire-change-top {
    margin-top: 40px;
  }
  .sub-tire-change__title {
    margin-top: 40px;
    font-size: 22px;
}
.sub-tire-change__text {
  margin-top: 23px;
  font-size: 14px;
}
.sub-tire-change__img {
  margin-top: 26px;
}
figcaption.sub-tire-change__img-text {
  font-size: 14px;
  margin-top: 3px;
}
.sub-tire-change-area {
  margin-top: 63px;
}
.sub-section-title-jp {
  font-size: 22px;
  padding: 8px 20px;
}
.sub-tire-chang-area__text {
  margin-top: 20px;
  font-size: 14px;
}
.sub-tire-change-fee {
  margin-top: 47px;
  margin-bottom: 129px;
}
.sub-fee-table__content {
  overflow: auto;
}
.sub-fee-table {
  width: 920px;
  font-size: 14px;
}
.sub-fee-table__content {
  margin-top: 20px;
}
.sub-fee-table__content:not(:nth-child(2)){
  margin-top: 50px;
}
.sub-fee-row1, .sub-fee-row2 {
  padding: 10px 15px;
}
.sub-fee-kome_content {
  margin-top: 10px;
}
.sub-fee-kome {
  font-size: 12px;
}
.sub-tire-change-tel-box {
  margin-top: 79px;
  /* padding: 19px 17%; */
}
.sub-tire-change-tel__title {
  font-size: 22px;
  line-height: 1.6;
}
.sub-tire-change-tel__tel {
  font-size: 32px;
  margin-top: 10px;
  padding-left: 30px;
}
.sub-tire-change-tel__tel::before {
  top: 5%;
  width: 27px;
  height: 27px;
}
.sub-tire-change-tel__tlme {
  font-size: 12px;
  margin-top: 5px;
}
}
@media screen and (max-width: 720px) {
  .sub-tire-change__title {
    margin-top: 20px;
    font-size: 20px;
    line-height: 1.6;
}
.sub-tire-change__text {
  margin-top: 23px;
  line-height: 1.6;
}
.sub-tire-change-area {
  margin-top: 47px;
}
  .sub-section-title-jp {
    font-size: 20px;
    padding: 5px 10px;
}
.sub-tire-change-tel-box {
  padding: 19px 17% 19px 7%;
}
.sub-tire-change-tel__title {
  font-size: 20px;
}
}
@media screen and (max-width: 600px) {
  .sub-tire-change__img {
    margin-top: 26px;
    flex-direction: column;
}
.sub-tire-change__img figure {
  width: fit-content;
  margin-inline: auto;
}
.sub-tire-change__img figure:not(:nth-child(1)){
  margin-top: 26px;
}
.sub-tire-change-tel-box {
  padding: 19px 17% 19px 3%;
}
.sub-tire-change-tel__title {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.4;
}
}
@media screen and (max-width: 380px) {
  .sub-tire-change-tel__tel {
    font-size: 26px;
    margin-top: 5px;
    padding-left: 26px;
  }
  .sub-tire-change-tel__tel::before {
    width: 23px;
    height: 23px;
}
}

/*20250424*/
.top-consultation__price{
  display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin:0 auto;
max-width:240px;
}
.top-consultation__price a{
pointer-events: initial !important;
}
@media screen and (max-width: 1477px) {
.top-consultation__price{
max-width:70%;
}
}

/*20250425*/
@media screen and (min-width: 1251px) {
  .top-consultation__wrap {
    max-width: 1350px;
    margin-inline: auto;
	}
	#top-consultation {
	margin: 100px auto 100px auto;
	}
	#top-consultation .top-consultation__title {
	  line-height: 100%;
	  padding-bottom: 13px;
	}
}
/*20250902*/
.sec-company_sec-sub-message {
  display: none;
}

/*20250905*/
a.top_catalog-button{
pointer-events: none;
}
.top-catalog__title {
font-size:18px;
text-align:center;
}
@media screen and (max-width: 1521px) {
.top-catalog__title {
  letter-spacing: -0.5px;
}
}
@media screen and (max-width: 1463px) {
.top-catalog__title {
font-size:17px;
}
}

@media screen and (max-width: 1024px) {
.top-catalog__title {
font-size: 13px;
  letter-spacing: -0.5px;
}

}
.news-pagination {
  margin-bottom: 60px;
}
@media screen and (max-width: 720px) {
.news-pagination {
  margin-bottom: 30px;
}
}
.pagination-wrapper.flex{
justify-content: center;
}

/*20250925*/
.top-catalog__box.top-catalog__box-none {
justify-content: flex-start !important;
}
@media screen and (min-width: 1025px) {
  .top-consultation__box {
    width: calc(100% / 4) !important;
  }
}
.grecaptcha-badge{
opacity: 0;
}
.grecaptcha-badge.show{
z-index:3;
opacity: 1;
}

/*20251023*/
@media screen and (max-width: 720px) {
  .sub-contact__title {
  margin: 0 auto;
  }
}
#top-tire-change {
  margin-top: 80px;
}
#top-tire-change {
padding-top:10px;
}
@media screen and (max-width: 720px) {
#top-tire-change {
  margin-top: calc(120px - 50px) !important;
  padding-top:50px;

}
}
@media screen and (max-width: 640px) {
#top-tire-change {
  margin-top: calc(150px - 50px) !important;
}
}
@media screen and (max-width: 511px) {
#top-tire-change {
  margin-top: calc(180px - 50px) !important;
}
}
@media screen and (max-width: 440px) {
#top-tire-change {
  margin-top: calc(130px - 50px) !important;
  margin-top: 130px !important;
}
}
@media screen and (max-width: 420px) {
#top-tire-change {
  margin-top: calc(80px - 50px) !important;
  margin-top: 80px !important;
}
}
@media screen and (min-width: 2550px) {
.products-slider .more-btn{
right: initial !important;
left: 435px !important;
}
}
/*20251024*/
html{
  scroll-padding-top:90px;
}
@media screen and (orientation: landscape) and (max-width: 480px) {
html{
  scroll-padding-top:110px !important;
}

#top-tire-change {
  margin-top: calc(180px - 50px) !important;

}
}
/*20251028*/
@media screen and (max-height: 450px) {
  .top-tire-change__item.top-tire-change__R {
    height: 180px !important;
  }
  .top-tire-change__wrapper {
  top:0 !important;
  margin-bottom: 110px !important;
  height:620px !important;
  }
  .top-tire-change__bg {
    min-height: initial !important;
    height: 700px;
  }
}
@media screen and (max-height: 450px) and (max-width: 720px) {
  .top-tire-change__wrapper {
  top:0 !important;
  margin-bottom: 110px !important;
  height:680px !important;
  }
}