@charset "utf-8";

*,
*:before,
*:after {
  box-sizing: border-box;
  font-feature-settings: "palt";
}

/* breakpoint */
/*
width < 600 == mobile

@media (600px <= width) {
【tablet】
}

@media (1024px < width) {
【pc】
}

@media (1920px < width) {
【wide monitor】2160px
}
*/

:root{
    --font-size-h2-en: clamp(2.313rem, 1.069rem + 4.98vw, 4.25rem);
    --font-light: 300;
    --font-normal: 400;
    --font-medium: 500;
    --font-semibold: 600;
    --font-bold: 700;
    --font-black: 800;
    --font-en: "skolar-sans-latin-compressed", sans-serif;
    --color-base: #4F4949;
    --color-primary: #807878;
    --color-accent: #EFA046;
    --color-bg-gray: #F9F8F8;
    --color-border: #B6B1B1;
    --color-border-img: #ECEAEA;
    --color-border-title: #FCC800;
    --color-red: #E8380D;
    --color-orange: #ED6D35;
    --space-side: 12px;
    --space-inner-side: 8px;
    --height-footer-gnavi: 95px;
    --size-btn-scrolltop: clamp(3.125rem, 1.484rem + 7.5vw, 5rem);
    --hover-animation: .4s cubic-bezier(.25, .46, .45, .94);
    --hover-opacity: 70%;
    --hover-color: #8D8686;
    --border-radius: 10px;
    -webkit-text-size-adjust: 100%;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    /*font-family: "Noto Sans JP", sans-serif;*/
}

@media (600px <= width) {
  :root{
    --space-side: 30px;
    --space-inner-side: 20px;
    --height-footer-gnavi: 105px;
  }

}

@media (1024px < width) {
  :root{
    --font-size-h2-en: clamp(3.313rem, 2.949rem + 0.57vw, 3.375rem);
    --space-side: 0px;
    --space-inner-side: 50px;
    --size-btn-scrolltop: 80px;
  }
}

@media (1920px < width) {
  :root{
    --font-size-h2-en: clamp(3.375rem, 1.308rem + 1.72vw, 4.063rem);
  }
}

body{
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    letter-spacing: .04em;
    overflow: hidden auto;
    line-height: 1.5;
    font-style: normal;
    font-weight: 400;
    color: var(--color-base);
    scroll-behavior: smooth;
    filter: none;
    background-color: #fff;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    animation: fadeIn 1s ease 0s 1 normal;
    -moz-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn{
  from {
    opacity: 0%;
    -moz-opacity: 0%;
  }

  to {
    opacity: 100%;
    -moz-opacity: 100%;
  }
}

.splide__list{
  height: auto !important;
}

.swiper-wrapper{
  height: auto !important;
}

ul,ol,li,p{
    margin: 0;
    padding: 0;
}

li{
  list-style-type: none;
}

h1,h2,h3,h4,h5,h6{
  font-weight: 400;
}

address{
  font-style: normal;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  font-style: italic;
  background-repeat: no-repeat;
  background-size: cover;
  shape-margin: 0.75rem;
}

a{
  text-decoration: none;
}

@media (600px <= width) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}

a,span,button{
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

button{
  background-color: inherit;
  border: none;
  margin: 0;
  padding: 0;
  cursor: pointer;
}

time, .font_en{
  font-family: var(--font-en);
  font-weight: var(--font-normal);
}

.hidden {
  display: none;
}

.show {
  display: block;
}

.pc_only{
  display: none;
}

.tab_only{
  display: none;
}

.tab_pc_only{
  display: none;
}

@media (400px <= width) {
  .footer_gnavi .sm_only{
    display: none;
  }
}

@media (600px <= width) {
  .sm_only{
    display: none;
  }

  .tab_pc_only{
    display: block;
  }
}

@media (600px <= width <= 1024px){
  .tab_only{
    display: block;
  }
}

@media (1024px < width) {
  .pc_only{
    display: block;
  }

  .sm_tab_only{
    display: none;
  }
}
