@charset "utf-8";
* {
	margin:0; padding:0;
}

html {
	font-size:16px;
	font-weight:nomal;
	word-wrap: break-word;
	box-sizing:border-box;
}

body {
	font-family:'游ゴシック', YuGothic, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color:#000;
	overflow-x:hidden;
}

a {
	text-decoration:none; 
	color:#333;
	margin:0;
    padding:0;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
li a:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
img {
    margin:0;
    padding:0;
    border:0;
    outline:0;
	image-rendering: -webkit-optimize-contrast;
}
/*
a img {
	border:none;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
*/
a:hover img {
	opacity: 1.0!important;
	filter: alpha(opacity=100)!important;
}


a .imgTranslucent  {
	border:none;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

a:hover .imgTranslucent  {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

a .imgExpansion {
	transform: scale(0.95);
 	transition-duration: 0.8s;
}

a:hover .imgExpansion {
	transform: scale(1.0);
	transition-duration: 0.8s;
	opacity: 1.0!important;
	filter: alpha(opacity=100)!important;
}
@media screen and (max-width : 834px) {
	a .imgExpansion {
		transform: scale(1.0)!important;
	 	transition-duration: 0.8s;
	}

	a:hover .imgExpansion {
	  transform: scale(1.0)!important;
	  transition-duration: 0.8s;
	}
}
.img-wrap{
  width: 100%;
  height: 100%;
  background:#fff;
}
.img-wrap img{
	aspect-ratio: 1 / 1;
	object-fit: contain;
}
.clearfix:after {
    display: block;
    clear: both;
    height: 0px;
    line-height: 0px;
    visibility: hidden;
    content: ".";
}
.clearfix {
    display: block; /* for IE8 */
}
.clear {
    clear: both;
}

@media screen and (min-width : 835px) {
	.diagonalSpaceRight {
		z-index:-1!important;
		transform: skewY(3deg);
	  	transform-origin: top right;
	  	width:100%;
	  	height:200px;
	  	position:relative;
	  	bottom:-200px;
	  	margin-top:-150px;
	}
	.diagonalSpaceLeft {
		z-index:-1!important;
		transform: skewY(-3deg);
	  	transform-origin: top left;
	  	width:100%;
	  	height:200px;
	  	position:relative;
	  	bottom:-200px;
	  	margin-top:-150px;
	}
	.curveBgWrap {
		overflow: hidden;
	}
	.curveBgTop {
		border-bottom-left-radius: 1000px 50px;
		border-bottom-right-radius: 1000px 50px;
		height: 50px;
		margin-left: -100px;
		margin-right: -100px;
		padding-left: 100px;
		padding-right: 100px;
	}
	.curveBgBottom {
		border-top-left-radius: 1000px 50px;
		border-top-right-radius: 1000px 50px;
		height: 50px;
		margin-left: -100px;
		margin-right: -100px;
		padding-left: 100px;
		padding-right: 100px;
	}
}
.linkMark {
	position:relative;
	top:-80px;
	visibility:hidden;
}

@media screen and (min-width : 835px) {
	.displayPc {
		width:100%;
	}
	.displaySp {
		display:none!important;
	}
}
@media screen and (max-width : 834px) {
	.displayPc {
		display:none!important;
	}
	.displaySp {
		width:100%;
	}
	a:hover .imgExpansion {
		transform: scale(1.1);
	}
}
.scroll-fade{opacity: 0; transition: all 2s/*処理にかかる時間*/;}
.scroll-up{opacity: 0; transform: translateY(50px)/*スクロールアップする距離*/; transition: all 1s/*処理にかかる時間*/;}
.scroll-up.done, .scroll-fade.done{opacity : 1; transform : translate(0, 0);}
.load-fade {opacity : 0; transition : all 2s/*処理にかかる時間*/;}
.load-up{opacity: 0; transform: translateY(1000px)/*スクロールアップする距離*/; transition: all 2s/*処理にかかる時間*/;}
.load-up.done, .load-fade.done{opacity : 1; transform : translate(0, 0);}

.btnBg {
	width:100%;
	flex-wrap:wrap;
	display:flex;
	margin:30px 0 0 0;
}
.btn {
    margin: 0 auto;
    text-align:center;
	font-size:16px;
}

.btn a {
    display: inline-block;
    line-height: 100%;
    text-decoration: none;
    transition: all .2s ease;
    position: relative;
    border-radius: 7px;
    color: #fff;
    background:;
}
.btn a:hover {
    background:;
}
.btn_green a {
    background: #86915b;
}
.btn_green a:hover {
    background: #485906;
}
.btn_blue a {
    background: #4a59aa;
}
.btn_blue a:hover {
    background: #0d228d;
}
.btn_orange a {
    background: #f1984c;
}
.btn_orange a:hover {
    background: #eb6c00;
}

@media screen and (min-width : 835px) {
	.btn a {
	    padding: 1em 6em 1em 1em;
	}
	.btn a:after {
	    position: absolute;
	    display: block;
	    content: "";
	    right: -2em;
	    top: 50%;
	    background: #ccc;
	    height: 1px;
	    width: 60px;
	    transition: all .2s ease
	}

	.btn a:hover:after {
	    right: -1em
	}

	.btn i {
	    margin-left: .5em
	}
}
@media screen and (max-width : 834px) {
	.btn a {
	    padding: 1em 5em;
	}
}
.animate {
  opacity: 0;
  transform: translateY(15px);
  transition: all 1.0s;
}
.animate:not(:nth-child(3n+1)) {
  margin-left: 0px;
}
.animate:not(:nth-child(-n+3)) {
  margin-top: 0px;
}
.animate.show {
  opacity: 1;
  transform: translateY(0);
}
.animate.show:nth-of-type(1) {
  transition-delay: 0s;
}
.animate.show:nth-of-type(2) {
  transition-delay: 0.1s;
}
.animate.show:nth-of-type(3) {
  transition-delay: 0.2s;
}
.animate.show:nth-of-type(4) {
  transition-delay: 0.3s;
}
.animate.show:nth-of-type(5) {
  transition-delay: 0.4s;
}
.animate.show:nth-of-type(6) {
  transition-delay: 0.5s;
}
.animate.show:nth-of-type(7) {
  transition-delay: 0.6s;
}
.animate.show:nth-of-type(8) {
  transition-delay: 0.7s;
}
.animate.show:nth-of-type(9) {
  transition-delay: 0.8s;
}
.animate.show:nth-of-type(10) {
  transition-delay: 0.9s;
}

.lxgw-wenkai-tc-regular {
  font-family: "LXGW WenKai TC", cursive;
  font-weight: 400;
  font-style: normal;
}
