@charset "utf-8";
html, body, h1, h2, h3, h4, h5, h6, a, p, span, em, small, strong, sub, sup, mark, del, ins, strike, abbr, dfn, blockquote, q, cite, code, pre, ol, ul, li, dl, dt, dd, div, section, article, main, aside, nav, header, hgroup, footer, img, figure, figcaption, address, time, audio, video, canvas, iframe, details, summary, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
 margin: 0;
 padding: 0;
 border: 0;
 vertical-align: baseline;
 font: inherit;
 font-style: normal;
 font-size: 100%;
}
h1, h2, h3, h4, h5 {
 font-weight: normal;
}
img, video {
 max-width: 100%;
 border-style: none;
 vertical-align: bottom;
}
em, strong {
 font-style: normal;
 font-weight: inherit;
}
ol, ul {
 list-style: none;
}
article, aside, footer, header, nav, section, main {
 display: block;
}
table {
 border-collapse: collapse;
 border-spacing: 0;
}
.clearfix:after {
 content: "";
 display: block;
 clear: both;
}
*, *::before, *::after {
 box-sizing: border-box;
 border-style: solid;
 border-width: 0;
}
html {
 height: 100%;
 overflow: auto;
 font-size: 62.5%;
}
body {
 -webkit-text-size-adjust: 100%;
 text-size-adjust: 100%;
 overflow-wrap: break-word;
 word-wrap: break-word;
 font-family: fot-cezanne-pron, "Hiragino Kaku Gothic ProN", "HiraKakuProN-W3", "Hiragino Sans", YuGothic, "Yu Gothic Medium", "Yu Gothic", sans-serif;
 font-weight: 500;
 font-style: normal;
 font-feature-settings: "palt";
 letter-spacing: 0.06em;
 line-height: 2;
 font-size: 1.3rem;
 color: #222;
 background-color: #fff;
}
.en {
 font-family: poppins, fot-cezanne-pron, "Hiragino Kaku Gothic ProN", "HiraKakuProN-W3", "Hiragino Sans", YuGothic, "Yu Gothic Medium", "Yu Gothic", sans-serif;
 font-weight: 600;
 font-style: normal;
 letter-spacing: 0.02em;
}
a {
 outline: none;
 text-decoration: none;
 color: #222;
 transition: 0.3s;
}
a, a img {
 backface-visibility: hidden;
}
a {
 -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
 cursor: pointer;
}
button {
 -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
 outline: none;
}
*:focus {
 outline: none;
}
button, input, select, textarea {
 color: inherit;
 font-family: inherit;
 font-style: inherit;
 font-weight: inherit;
 font-size: 100%;
 vertical-align: middle;
}
pre, textarea {
 overflow: auto;
}
select {
 border: none;
 outline: none;
 background: transparent;
 /*-webkit-appearance: none;
 appearance: none;*/
 text-indent: 0.01px;
 text-overflow: '';
}
select::-ms-expand {
 display: none;
}
textarea {
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
 padding: 0;
 border: 0;
 outline: none;
 background: transparent;
}
button, input[type="submit"] {
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
 padding: 0;
 border: none;
 outline: none;
 background: transparent;
 cursor: pointer;
}
input[type=text] {
 font-size: 100%;
}
input[type=radio],
input[type=checkbox] {
 display: none;
}
/*loding*****************************************/
#loader {
 position: fixed;
 display: flex;
 align-items: center;
 width: 100%;
 height: 100%;
 background: #008080;
 z-index: 100;
}
.is-hide {
 display: none;
}
.fadeout-loader {
 transition-property: opacity;
 transition-delay: 0.2s;
 transition-duration: 0.7s;
 opacity: 0;
 pointer-events: none;
}
#loader .spinner {
 width: 40px;
 height: 40px;
 position: relative;
 margin: 100px auto;
}
#loader .double-bounce1,
#loader .double-bounce2 {
 width: 100%;
 height: 100%;
 border-radius: 50%;
 background-color: #fff;
 opacity: 0.6;
 position: absolute;
 top: 0;
 left: 0;
 -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
 animation: sk-bounce 2.0s infinite ease-in-out;
}
#loader .double-bounce2 {
 -webkit-animation-delay: -1.0s;
 animation-delay: -1.0s;
}
@-webkit-keyframes sk-bounce {
 0%, 100% {
  -webkit-transform: scale(0.0)
 }
 50% {
  -webkit-transform: scale(1.0)
 }
}
@keyframes sk-bounce {
 0%, 100% {
  transform: scale(0.0);
  -webkit-transform: scale(0.0);
 }
 50% {
  transform: scale(1.0);
  -webkit-transform: scale(1.0);
 }
}
/*animation*****************************************/
.sa {
 opacity: 0;
 transition: opacity 1s, transform 0.8s;
}
.sa.show {
 opacity: 1;
 transition: 1s;
 transform: none;
}
.sa-up {
 transform: translate(0, 30px);
}
.sa-scaleUp {
 transform: scale(.9);
}
.sa-lr {
 transform: translate(-50px, 0);
}
.sa-rl {
 transform: translate(50px, 0);
}
.sa-underline {
 display: inline;
 position: relative;
 transition: background 1.2s linear 0.5s;
 background-image: linear-gradient(90deg, #ffff66, #ffff66);
 background-repeat: no-repeat;
 background-position: bottom left;
 background-size: 0 23%;
}
.sa-underline.show {
 background-size: 100% 23%;
}
.sa-bounce.show {
 -webkit-animation: poyon 1s linear both;
 animation: poyon 1s linear both;
}
@keyframes poyon {
 0% {
  -webkit-transform: matrix3d(0.9, 0, 0, 0, 0, 0.9, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(0.9, 0, 0, 0, 0, 0.9, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 4% {
  -webkit-transform: matrix3d(0.943, 0, 0, 0, 0, 0.943, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(0.943, 0, 0, 0, 0, 0.943, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 7.91% {
  -webkit-transform: matrix3d(0.989, 0, 0, 0, 0, 0.989, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(0.989, 0, 0, 0, 0, 0.989, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 11.91% {
  -webkit-transform: matrix3d(1.019, 0, 0, 0, 0, 1.019, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(1.019, 0, 0, 0, 0, 1.019, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 15.82% {
  -webkit-transform: matrix3d(1.028, 0, 0, 0, 0, 1.028, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(1.028, 0, 0, 0, 0, 1.028, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 20.42% {
  -webkit-transform: matrix3d(1.02, 0, 0, 0, 0, 1.02, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(1.02, 0, 0, 0, 0, 1.02, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 24.92% {
  -webkit-transform: matrix3d(1.006, 0, 0, 0, 0, 1.006, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(1.006, 0, 0, 0, 0, 1.006, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 29.53% {
  -webkit-transform: matrix3d(0.996, 0, 0, 0, 0, 0.996, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(0.996, 0, 0, 0, 0, 0.996, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 34.03% {
  -webkit-transform: matrix3d(0.993, 0, 0, 0, 0, 0.993, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(0.993, 0, 0, 0, 0, 0.993, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 43.14% {
  -webkit-transform: matrix3d(0.999, 0, 0, 0, 0, 0.999, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(0.999, 0, 0, 0, 0, 0.999, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 52.15% {
  -webkit-transform: matrix3d(1.002, 0, 0, 0, 0, 1.002, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(1.002, 0, 0, 0, 0, 1.002, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 70.37% {
  -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 88.59% {
  -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
 100% {
  -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
 }
}
/* @media ------------------------------*/
@media screen and (max-width: 480px) {
 .sp-no {
  display: none !important;
 }
 .pc-only {
  display: none !important;
 }
}
@media screen and (min-width: 481px) {
 .pc-no {
  display: none !important;
 }
 .sp-only {
  display: none !important;
 }
}
/* @media ------------------------------*/
@media screen and (min-width: 1024px) {
 body {
  font-size: 1.7rem;
 }
 a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
 }
}