@charset "utf-8";
/*! // Oct 2025 Revised Edition //
/*--------------------------------------------------------------
   RESET
--------------------------------------------------------------*/
*, *::before, *::after {box-sizing: border-box;}
html {font-size: 14px;color: #000;background-color: #fff;-moz-osx-font-smoothing: grayscale;}
body {margin: 0;padding: 0;line-height: 1.5;font-family: inherit;overflow-x: hidden;}
h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol,li,pre,table,fieldset,legend {margin: 0;padding: 0;font-weight: normal;}
ul, ol {list-style: none;}
table {border-collapse: collapse;border-spacing: 0;}
img, svg {display: block;max-width: 100%;height: auto;vertical-align: middle;border: 0;}
blockquote, q {quotes: none;}
blockquote::before, blockquote::after, q::before, q::after {content: none;}
a {text-decoration: none;color: inherit;transition: color 0.3s;}
input, button, select, textarea {font-family: inherit;font-size: inherit;line-height: inherit;background: none;border: none;
outline: none;-webkit-appearance: none;-moz-appearance: none;appearance: none;}
:focus:not(:focus-visible) {outline: none;}
em {font-style: normal;}
b, em {font-weight: bold;}
/*--------------------------------------------------------------
   BASIC
--------------------------------------------------------------*/

html {
  font-size: 62.5%;
  height: 100%;
  /* -webkit-font-smoothing: antialiased; */
}

body {
  margin: 0;
  padding: 0;
  color: #3e544d;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体","ヒラギノ角ゴシック","Hiragino Sans","メイリオ", Meiryo,"Arial",sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 1.4rem;
  letter-spacing: 2px;
  line-height: 2;
  height: 100vh;
  box-sizing: border-box;
}
a {
  text-decoration: none;
  display: block;
  transition: opacity 0.3s ease;
}
a:hover {
  opacity: 0.7;
}
img {
  width:100%;
  max-width:100%;
  height:auto;
}
/*-------------
Style
--------------*/
.sp {display: block;}
.pc {display: none;}

a.pc {
  display: none;
}
p a {
  text-decoration: underline;
}

/* Tablet */
@media all and (min-width: 641px) and (max-width: 1024px) {
}

/* PC */
@media all and (min-width: 1025px) {
  .sp {display: none;}
  .pc {display: block;}

  body {
    font-size: 1.6rem;
  }
  a.sp {
    display: none;
  }
}

/*-------------
 Animation
 --------------*/
/* 基本フェードイン */
.fadeIn, .fadeIn_right, .fadeIn_left, .fadeIn_bottom {
  opacity: 0;
  transform: translate(0, 0);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

/* 右から */
.fadeIn_right { transform: translateX(50px); }
/* 左から */
.fadeIn_left { transform: translateX(-50px); }
/* 下から */
.fadeIn_bottom { transform: translateY(50px); }

/* 表示状態 */
.is-show {
  opacity: 1;
  transform: translate(0,0);
}

/* 遅延クラス */
.delay-time02 { transition-delay: 0.2s; }
.delay-time03 { transition-delay: 0.4s; }
.delay-time04 { transition-delay: 0.6s; }
