@charset "UTF-8";

/* reset
---------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}
body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}
ul[role='list'],ol[role='list']{list-style:none}
body{min-height:100vh}
h1,h2,h3,h4,h5,h6,button,input,label{line-height:1.4}
a:not([class]){text-decoration-skip-ink:auto;color:currentColor}
img,picture{max-width:100%;display:block}
input,button,textarea,select{font:inherit}
textarea:not([rows]){min-height:10em}
:target{scroll-margin-block:5em}
/* addition */
img{width:100%;height:auto}
table{border-collapse:collapse;border-spacing:0}
.cf:before,.cf:after{content:"";display:table}
.cf:after{clear:both}


/* base
---------------------------------------- */
html {
	font-size: 62.5%;
  scroll-behavior: smooth;
}
body {
	background-color: #fffeeb;
	color: #3f1d0f;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 1.6rem;
	line-height: 1.8;
  overflow-wrap: anywhere;
  line-break: strict;
	-webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
@media print, screen and (min-width: 1280px) {
  body { font-size: 1.8rem; }
}

/* link & button */
a {
	color: #1558d6;
}
a:visited {
	color: #681da8;
}
a:hover,
a:active {
	color: #44a0ff;
}
a.btn {
	-webkit-tap-highlight-color:transparent;
}

/* fadein */
.no-js .fadein,
.no-js .fadein-delay {
  opacity: 1;
  transform: translateY(0);
  filter: blur(0px);
}
.fadein {
  transition-duration: 1.0s;
  transform: translateY(20px);
  filter: blur(3px);
  opacity: 0;
}
.fadein-delay {
  transition-duration: 1.2s;
  transition-delay: 0.2s;
  transform: translateY(20px);
  filter: blur(3px);
  opacity: 0;
}
.fadein.visible,
.fadein-delay.visible {
  transform: translateY(0px);
  filter: blur(0px);
  opacity: 1;
  visibility: visible;
}
@media print, screen and (min-width: 1025px) {
  .fadein-delay { transition-delay: 0.1s; }
}
@media print, screen and (min-width: 1280px) {
  .fadein-delay { transition-delay: 0.0s; }
}

/* swiper */


/* footer
---------------------------------------- */
footer {
	padding: 15px 0;
	background: #3f1d0f;
	color: #ffffff;
  font-size: 1.2rem;
	text-align: center;
}
address {
  font: inherit;
  line-height: 1.6;
}
@media print, screen and (min-width: 768px) {
  footer { padding: 25px 0;  }
}
