@charset "UTF-8";

/*Reset =============================================*/
*{
  box-sizing: border-box;
  background-repeat: no-repeat;
}
html,body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,figure,figcaption,button{
  margin: 0;
  padding: 0;
}
ul,li{
list-style: none;
}
a{
text-decoration: none;
color: inherit;
}
a[href^="tel:"] {
  pointer-events: all;
}
img,svg{
vertical-align: bottom;
border: none;
width: 100%;
max-width:100%;
height:auto;
}
svg{
  /* fill: currentColor; */
  vertical-align: bottom;
}
button{
  background-color: inherit;
  border: none;
}
table {
  border-collapse: collapse;
}

@font-face {
  font-family: "YakuHanJP"; font-style: normal; font-display: swap;
  font-weight: 400;
  src: url("/font/YakuHanJP/YakuHanJP-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "YakuHanJP"; font-style: normal; font-display: swap;
  font-weight: 500;
  src: url("/font/YakuHanJP/YakuHanJP-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "YakuHanJP"; font-style: normal; font-display: swap;
  font-weight: 600;
  src: url("/font/YakuHanJP/YakuHanJP-Bold.woff2") format("woff2");
}

@font-face {
  font-family: "NotoSansCJKjp"; font-style: normal; font-display: swap;
  font-weight: 400;
  src:  local('Noto Sans CJK JP'),
  local('NotoSansCJKjp-Regular'),
  local('NotoSansJP-Regular'),
  url('/font/NotoSansCJKJP/NotoSansCJKjp-Regular.woff2') format('woff2');
}
@font-face {
  font-family: "NotoSansCJKjp"; font-style: normal; font-display: swap;
  font-weight: 500;
  src: local('NotoSansCJKjp-Medium'),
  local('NotoSansJP-Medium'),
  url('/font/NotoSansCJKJP/NotoSansCJKjp-Medium.woff2') format('woff2');
}
@font-face {
  font-family: "NotoSansCJKjp"; font-style: normal; font-display: swap;
  font-weight: 700;
  src: local('NotoSansCJKjp-Bold'),
  local('NotoSansJP-Bold'),
  url('/font/NotoSansCJKJP/NotoSansCJKjp-Bold.woff2') format('woff2');
}


/* Module =============================================*/
:root{
  --font-comp: "Jost","YakuHanJP",'NotoSansCJKjp',sans-serif;
--font-ja: "YakuHanJP",'NotoSansCJKjp',sans-serif;
--font-en: "Jost" sans-serif;
/* --font-comp: "Cinzel","YakuHanJP",'Noto Serif JP',sans-serif;
  --font-ja: "YakuHanJP",'Noto Serif JP',sans-serif;
  --font-en: "Cinzel" sans-serif; */
    /* --filter-w: invert(99%) sepia(1%) saturate(1685%) hue-rotate(354deg) brightness(115%) contrast(95%); */
    --filter-w: invert(100%) sepia(19%) saturate(377%) hue-rotate(316deg) brightness(100%) contrast(91%);
    --filter-wg: invert(96%) sepia(8%) saturate(14%) hue-rotate(314deg) brightness(86%) contrast(111%);
    --filter-red: invert(33%) sepia(39%) saturate(3362%) hue-rotate(347deg) brightness(84%) contrast(106%);
    --inn-w: 2rem;
    --inn-w-minus: -2rem;
  
    --kv-fill-color: #fff;
  }



html {
    font-size: 3.125vw;
    /*
      計算式：　10(px) / 320(px) * 100 = 3.125
      画面幅320pxの時に "font-size: 10px" 相当になる
    */
}

  .pc{
    display: none;
  }

  .pc-nav {
    display: none;
  }
  
.c_wide{
  max-width:  1600px;
  margin: auto;
}

.sec_bloc{
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

.sec_bloc_bottom{
  padding-bottom: 10rem;
}


@media screen and (min-width: 769px) {
  html {
    font-size:  clamp(10px,1.302083333vw,14px);
    /*
      計算式：　10(px) / 320(px) * 100 = 3.125
      画面幅320pxの時に "font-size: 10px" 相当になる
    */
  }

  body {
    font-size: 1.0rem;
  }

  .sec_bloc{
    padding-top: 10rem;
    padding-bottom: 10rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .sec_bloc_bottom{
    padding-bottom: 10rem;
  }

  .sp{display: none;}
  .pc{display: block;}
  .pc-nav {display: block;}

}