
/* Global ----------------------------------------------------------------- */
html {
	font-size: 90%;
	width: 100%;
	height: 100%;
	line-height: 1.7em;
}

body {
  min-width: auto;
  color: rgba(34,34,34,1.00);
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -webkit-text-size-adjust: 100%;
  /* Support for all WebKit browsers.
  -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale; */
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: auto;
  font-feature-settings: 'liga';
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #DDD4CA 0%, #fff 20%, #fff 80%, #DDD4CA 100%);
}




.img-blur {
  -webkit-animation-name: imageBlur;
  animation-name: imageBlur;
  opacity: 1;
}


#top-mainvisual img {
  opacity: 0;
	-webkit-animation-duration: 3s;
  animation-duration: 3s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}
.img-blur-top {
  -webkit-animation-name: imageBlurTop;
  animation-name: imageBlurTop;
	-ms-animation-name: imageBlurTop;
}


.main-zoom {
  opacity: 0;
	-webkit-animation-duration: 2s;
  animation-duration: 2s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}
.main-zoomup {
  -webkit-animation-name: MainZoomup;
  animation-name: MainZoomup;
}


@-webkit-keyframes imageBlur {
  0% {
    opacity: 0;
		transform: scale(0.5,0.5);
  }
  100% {
    opacity: 1;
		transform: scale(1.0,1.0);
  }
}
@keyframes imageBlur {
  0% {
    opacity: 0;
		transform: scale(0.5,0.5);
  }
  100% {
    opacity: 1;
		transform: scale(1.0,1.0);
  }
}


@-webkit-keyframes imageBlurTop {
  0% {
    opacity: 0;
		transform: scale(0.99,0.99);
  }
  100% {
    opacity: 1;
		transform: scale(1.03,1.03);
  }
}
@keyframes imageBlurTop {
  0% {
    opacity: 0;
		transform: scale(0.99,0.99);
  }
  100% {
    opacity: 1;
		transform: scale(1.03,1.03);
  }
}
@-ms-keyframes imageBlurTop {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}


@-webkit-keyframes MainZoomup {
  0% {
    opacity: 0;
		transform: scale(0.98,0.98);
  }
  100% {
    opacity: 1;
		transform: scale(1.0,1.0);
  }
}
@keyframes MainZoomup {
  0% {
    opacity: 0;
		transform: scale(0.98,0.98);
  }
  100% {
    opacity: 1;
		transform: scale(1.0,1.0);
  }
}






a:link,
a:visited {
	color: rgba(45,80,160,1.0);
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
	color: rgba(0,0,0,1.0);
}



.sp-on {
	display: inline-block;
}
.pc-on {
	display: none;
}
.sp-br {
	display: inline-block;
}
.pc-br {
	display: none;
}





.s-text {
	font-size: 70%;
	line-height: 1.7em;
}

@media print, screen and (min-width: 768px) {
.sp-br {
	display: none;
}
.pc-br {
	display: inline-block;
}

}

@media print, screen and (min-width: 1024px) {
.sp-on {
	display: none;
}
.pc-on {
	display: inline-block;
}

}

@media print, screen and (min-width: 1200px) {

}

@media print, screen and (min-width: 1400px) {
}






/* Layout ----------------------------------------------------------------- */

@media print, screen and (min-width: 768px) {

}


@media print, screen and (min-width: 1024px) {

}


@media print, screen and (min-width: 1200px) {

}


@media print, screen and (min-width: 1400px) {

}
















/* Header ----------------------------------------------------------------- */

header {
  line-height: 1.0em;
  z-index: 901;
  position: relative;
  background: rgba(255,255,255,1.0);
  text-align: left;
}
header .header-inner {
	padding: 8px 15px;
}
header h3 img {
	height: auto;
	max-width: calc(330px / 2);
	width: 30%;
  display: block;
}


@media print, screen and (min-width: 768px) {
header .header-inner {
  padding: 10px 25px;
}


}





@media print, screen and (min-width: 1024px) {
header .header-inner {
  padding: 12px 30px;
}

}




@media print, screen and (min-width: 1200px) {


}




@media print, screen and (min-width: 1400px) {

}















/* Footer ----------------------------------------------------------------- */
#footer-global {
	box-sizing: border-box;
	padding: 20px 15px;
	background: #FFF;
	text-align: center;
	font-size: 11px;
	line-height: 1.5em;
}



@media print, screen and (min-width: 768px) {
#footer-global {
	padding: 30px 15px;
	font-size: 12px;
	line-height: 1.5em;
}



}






@media print, screen and (min-width: 1024px) {
#footer-global {
	padding: 35px 15px;
	font-size: 12px;
	line-height: 1.5em;
}


}

@media print, screen and (min-width: 1200px) {
#footer-global {
	padding: 40px 15px;
	font-size: 12px;
	line-height: 1.5em;
}


}



@media print, screen and (min-width: 1400px) {

}

