body {
    height: 100%;
    margin: 0;
    font-feature-settings: 'palt';
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	font-family: "Noto Sans JP", sans-serif !important;
}
* {
    margin: 0;
    padding: 0;
}


/*imac*/
@media screen and (min-width: 2560px) and (max-width: 5120px) {
	.sp-on{
		display: none !important;
	}
	
	/*header*/
	header{
		width: 100%;
		max-width: 2200px;
		overflow: hidden;
		position: relative;
		margin: 0 auto 5% auto;
	}
	.mv-logo{
		width: 5%;
		position: absolute;
		right: 0;
		left: 0;
    	bottom: 10%;
		margin: 0 auto;
		z-index: 20;
	}
	.mv-img-box{
		width: 100%;
		display: flex;
		justify-content: flex-start;
	}
	.mv-img{
		width: 50%;
		overflow: hidden;
		position: relative;
	}
	.mv-img .mv-on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title-box{
		width: 35%;
		overflow: hidden;
		position: absolute;
		top: 15%;
		right: 0;
		left: 0%;
		margin: 0 auto;
	}
	.mv-title01{
		width: 100%;
		margin: 0 0 3% 0;
	}
	.mv-title02{
		width: 100%;
		overflow: hidden;
		margin: 0 0 5% 0;
	}
	.mv-title03{
		width: 90%;
		position: relative;
		margin: 0 auto 3% auto;
	}
	.mv-title03 .mv-line{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title04{
		width: 100%;
		margin: 0 auto;
	}
	
	/*read*/
	.read{
		width: 100%;
		margin: 0 auto 5% auto;
	}
	.read .txt{
		width: 100%;
		font-size: 18px;
		letter-spacing: 4px;
		line-height: 2.5em;
		text-align: center;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 auto 5% auto;
	}
	
	
	.rever{
		flex-direction: row-reverse;
	}
	
	.wrap{
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	.bg01{
		width: 90%;
		height: 700px;
		position: absolute;
		bottom: 10%;
		left: 0;
		z-index: -1;
		background:linear-gradient(90deg, #fcf8eb,#fcf8eb,#fff);
	}
	.bg02{
		width: 90%;
		height: 700px;
		position: absolute;
		top: 25%;
		right: 0;
		z-index: -1;
		background:linear-gradient(90deg, #fff,#edf0fe,#edf0fe);
	}
	.bg03{
		width: 90%;
		height: 550px;
		position: absolute;
		bottom: 15%;
		left: 0;
		z-index: -1;
		background:linear-gradient(90deg, #ccd5cc,#ccd5cc,#fff);
	}
	.bg04{
		width: 90%;
		height: 550px;
		position: absolute;
		bottom: 5%;
		right: 0;
		z-index: -1;
		background:linear-gradient(90deg, #fff,#f3f4f8,#f3f4f8);
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	/*item01*/
	.item01{
		width: 100%;
		margin: 0 auto 7% auto;
	}
	.item01 .title-box{
		width: max-content;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 auto 3% auto;
	}
	.item01 .title-box .title01{
		width: max-content;
		position: relative;
		margin: 0 50px 0 0;
	}
	.item01 .title-box .title01 img{
		height: 70px;
	}
	.item01 .title-box .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .title-box .title01 .icon img{
		height: 60px;
	}
	.item01 .title-box .title02{
		width: max-content;
	}
	.item01 .title-box .title02 img{
		height: 60px;
	}
	.item01 .img{
		width: 100%;
		max-width: 800px;
		margin: 0 auto 3% auto;
		overflow: hidden;
		position: relative;
	}
	.item01 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .data{
		width: 100%;
		max-width: 900px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.item01 .data .data01{
		width: 45%;
	}
	.item01 .data .data01 .txt{
		font-size: 18px;
		letter-spacing: 2px;
		line-height: 2.5em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item01 .data .data01 .line{
		width: 100%;
		overflow: hidden;
	}
	.item01 .data .data02{
		width: 45%;
	}
	
	.item01 .img02{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 3% auto;
		overflow: hidden;
	}
	.item01 .img02 a{
		width: 100%;
		position: relative;
	}
	.item01 .img02 a .img02-01{
		width: 55%;
		padding: 0 0 10% 0;
	}
	.item01 .img02 a .img02-02{
		width: 55%;
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 3;
	}
	
	/*item02*/
	.item02{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 7% auto;
		display: flex;
		justify-content: space-between;
	}
	.item02 .img{
		width: 55%;
		position: relative;
		overflow: hidden;
	}
	.item02 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .data{
		width: 50%;
		box-sizing: border-box;
		padding: 3% 7% 0 7%;
	}
	.item02 .data .title-box{
		width: max-content;
		margin: 0 0 10% 0;
	}
	.item02 .data .title-box .title01{
		width: max-content;
		margin: 0 0 5% 0;
		position: relative;
	}
	.item02 .data .title-box .title01 img{
		height: 70px;
	}
	.item02 .data .title-box .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .data .title-box .title01 .icon img{
		height: 60px;
	}
	.item02 .data .title-box .title02{
		width: max-content;
	}
	.item02 .data .title-box .title02 img{
		height: 130px;
	}
	.item02 .data .txt{
		font-size: 18px;
		letter-spacing: 2px;
		line-height: 2.5em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item02 .data .line{
		width: 100%;
		overflow: hidden;
		margin: 0 0 10% 0;
	}
	
	
	
	.on-img {
		opacity : 1;
	}
	.on-img.active{
		opacity : 1;
		animation-name: on-img;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes on-img {
		0% {
		  opacity: 1;
		}
		100% {
		  opacity: 0;
		}
	}
	.img-r {
		opacity : 0;
	}
	.img-r.active{
		opacity : 0;
		animation-name: img-r;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-r {
		0% {
		  opacity: 0;
		  transform: translateX(20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.img-l {
		opacity : 0;
	}
	.img-l.active{
		opacity : 0;
		animation-name: img-l;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-l {
		0% {
		  opacity: 0;
		  transform: translateX(-20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	
	/*item-end*/
	.item-end {
		width: 100%;
		max-width: 1100px;
		margin: 0 auto 5% auto;
	}
	.item-end .txt {
		width: 100%;
		font-size: 12px;
		letter-spacing: 2px;
		line-height: 2.5em;
		text-align: center;
		color: #474545;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 0 7% 0;
		color: #808080;
	}
	.cap{
		width: 100%;
		text-align: right;
		font-size: 12px;
		letter-spacing: 2px;
		margin: 5% 0 0 0;
	}
	
	.l-icon::before{
        content: url("../img/l-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon::before{
        content: url("../img/s-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	.l-icon02::before{
        content: url("../img/l-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon02::before{
        content: url("../img/s-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	
	/*sid-nav*/
    .side-nav{
		position: fixed;
		display: block;
		width: 120px;
		right: 10px;
        top: 0;
		height: 100vh;
		z-index: 10;
	}
	.side-nav-in{
		width: 120px;
		position: absolute;
		top: 40%;
		-webkit-transform: translateY(-40%); /* Safari用 */
		transform: translateY(-40%);
	}
	.side-nav-in a{
		display: block;
		width: 100%;
		overflow: hidden;
		margin: 0 0 30px 0;
	}
	.side-nav-in a .img{
		width: 100%;
		position: relative;
		margin: 0 0 10px 0;
	}
	.side-nav-in a .img .on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.side-nav-in a:hover .img .on{
		opacity: 1;
		transition: .3s;
	}
	.side-nav-in a .txt{
		width: 100%;
	}
	.side-nav-in a .txt img{
		height: 24px;
		display: block;
	}
	
	/*f-banner*/
	.f-banner{
		width: 100%;
		max-width: 600px;
		margin: 0 auto 5% auto;
	}
	.f-banner-list{
		width: 100%;
		margin: 0 auto;
	}
	.f-banner-list li{
		width: 100%;
		margin: 0 0 3% 0;
	}
	.f-banner-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*f-banner02*/
	.f-banner02{
		border-top: 1px solid #000;
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 5% auto;
		padding: 5% 0 0 0;
	}
	.f-banner02-list{
		width: 100%;
		max-width: 600px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.f-banner02-list li{
		width: 47%;
	}
	.f-banner02-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner02-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*footer*/
	.footer {
		color: #000;
		letter-spacing: 0.3em;
		padding: 0 0 2% 0;
		position: relative;
		text-align: center;
	}
	.footer .insta{
		display: block;
		width: 450px;
		border: 1px solid #eee;
		margin: 0 auto 3% auto;
		transition: .3s;
	}
	.footer .insta:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	.footer_sns {
		margin: 26px 0 0;
	}
	.footer_snsNode {
		display: inline-block;
		margin: 0 10px;
		width: 30px;
	}
	.f-ow{
		width: 120px;
		margin: 25px auto 0 auto;
	}
	.footer_copyright {
		font-family: "Helvetica",serif;
		font-size: 10px;
		letter-spacing: 0.02em;
		margin: 34px 0 0;
	}
	#pagetop{
		position: fixed;
		right: 15px;
		bottom: 20px;
		width: 35px;
		display: block;
		z-index: 99;
	}
	
	/*cart-btm*/
	.cart-btm{
		width: 100%;
		text-decoration: none;
		color: #000;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
	}
	.cart-title{
        width: max-content;
		font-size: 14px;
        letter-spacing: 1px;
        position: absolute;
        line-height: 1.5em;
        white-space: nowrap;
	}
	.cart-title02{
        width: 100%;
		font-size: 14px;
        letter-spacing: 1px;
        line-height: 1.5em;
        white-space: nowrap;
		margin: 0 0 2% 0;
	}
    .cart-title span{
		font-size: 12px;
		color: #fff;
		background: #99999a;
		padding: 1px 5px 1px 5px;
		margin: 0 0 0 10px;
		border-radius: 2px;
        display: inline-block;
	}
    .cart-yen{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        width: 85%;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	 .cart-yen02{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	.cart-yen span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	.cart-yen02 span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	
	/*cart-btm02*/
	.cart-btm02{
		width: 100%;
		text-decoration: none;
		color: #595757;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
		flex-wrap: wrap;
	}
	
	.link-line{
		width: 100%;
		height: 1px;
		background: #a0a0a0;
		margin: 5% 0;
	}
	.link-line02{
		width: 100%;
		height: 1px;
		background: #fff;
		margin: 5% 0;
	}
	
	.cart-btm .btn00{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #fff;
		border: 1px solid #231815;
		display: inline-block;
		text-align: center;
		color: #000;
	}
	.cart-btm:hover .btn00 {
	  background: #231815;
	  border-color: #231815;
	  color: #fff;
	}
	
	.cart-btm .btn01{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #cfc4b9;
		border: 1px solid #cfc4b9;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn01 {
	  background: #fff;
	  border-color: #cfc4b9;
	  color: #cfc4b9;
	}
	
	.cart-btm .btn02{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #5992d2;
		border: 1px solid #5992d2;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn02 {
	  background: #fff;
	  border-color: #5992d2;
	  color: #5992d2;
	}
	
	.cart-btm .btn03{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #f6c6ab;
		border: 1px solid #f6c6ab;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn03 {
	  background: #fff;
	  border-color: #f6c6ab;
	  color: #f6c6ab;
	}
	
	.cart-btm .btn04{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #d88d9c;
		border: 1px solid #d88d9c;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn04 {
	  background: #fff;
	  border-color: #d88d9c;
	  color: #d88d9c;
	}
	
	.btn-border {
	  background-color: transparent;
	  color: #1d1d1d;
	}
	.btn-arrow {
	  position: relative;
	  -webkit-transition: background-color 300ms ease-out;
	  transition: background-color 300ms ease-out;
	}
	.btn-arrow span {
	  display: inline-block;
	  position: relative;
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: transform;
	}
	.cart-btm:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.cart-btm02:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.btn-arrow img {
	  position: absolute;
	  width: 1.1em;
	  right: 0px;
	  right: 0rem;
	  opacity: 0;
	  top: 50%;
	  -webkit-transform: translateY(-50%);
			  transform: translateY(-50%);
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: right, opacity;
	}
	.btn-arrow img * {
	  stroke-width: 5;
	  stroke-color: transparent;
	}
	.cart-btm:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	.cart-btm02:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	
	
	/*anime----------------------------------------------------*/
	/*fade01*/
	.fade01 {
		animation-name: mv01;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade02 {
		animation-name: mv02;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade03 {
		animation-name: mv03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade04 {
		animation-name: mv04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade05 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 3s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade06 {
		animation-name: mv05-2;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 3.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade07 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 4s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes mv01 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv02 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 0;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv03 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv04 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv04-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv05 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv05-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	
	
	.fadein-up {
		opacity : 0;
	}
	.fadein-up.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-up02 {
		opacity : 0;
	}
	.fadein-up02.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up {
		0% {
		  opacity: 0;
		  transform: translateY(30px)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	
	.fadein-up-zoom {
		opacity : 0;
	}
	.fadein-up-zoom.active{
		opacity : 1;
		animation-name: fadein-up-zoom;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-up-zoom02 {
		opacity : 1;
		  transform: scale(1.1);
	}
	.fadein-up-zoom02.active{
		opacity : 1;
		animation-name: fadein-up-zoom02;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes fadein-up-zoom02 {
		0% {
		  opacity: 1;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-zoom {
		opacity : 0;
	}
	.fadein-zoom.active{
		opacity : 1;
		animation-name: fadein-zoom;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1) rotate(-20deg);
		}
		100% {
		  opacity: 1;
		  transform: scale(1) rotate(0deg);
		}
	}
	
	.fadein-l {
		opacity : 0;
	}
	.fadein-l.active{
		opacity : 1;
		animation-name: fadein-l;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-l {
		0% {
		  opacity: 0;
		  transform: translateX(30px);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.fadein-r {
		opacity : 0;
	}
	.fadein-r.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02 {
		opacity : 0;
	}
	.fadein-r02.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02-2 {
		opacity : 0;
	}
	.fadein-r02-2.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-r {
		0% {
		  opacity: 0;
		  transform: translateX(-30px);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.color-down {
		opacity : 1;
	}
	.color-down.active{
		opacity : 1;
		animation-name: color-down;
		animation-duration: 3s;
		animation-timing-function: ease-out;
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes color-down {
		0% {
		  opacity: .3;
		}
		100% {
		  opacity: .1;
		}
	}
	
	.line-ani01 {
		opacity : 0;
	}
	.line-ani01.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani01-2 {
		opacity : 0;
	}
	.line-ani01-2.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani01 {
		0% {
		  opacity: 0;
		  transform: translateY(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani02 {
		opacity : 0;
	}
	.line-ani02.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani02-2 {
		opacity : 0;
	}
	.line-ani02-2.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani02 {
		0% {
		  opacity: 0;
		  transform: translateY(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani03 {
		opacity : 0;
	}
	.line-ani03.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani03-2 {
		opacity : 0;
	}
	.line-ani03-2.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani03 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.line-ani04 {
		opacity : 0;
	}
	.line-ani04.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani04-2 {
		opacity : 0;
	}
	.line-ani04-2.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani04 {
		0% {
		  opacity: 0;
		  transform: translateX(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	.rote {
		opacity : 1;
	}
	.rote.active{
		opacity : 1;
		animation-name: rote;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes rote {
		0% {
		  transform: rotateY(0deg);
		}
		100% {
		  transform: rotateY(360deg);
		}
	}
	
	.in-btn{
		width: 40px;
		margin: 0 auto 1% auto;
		display: block;
		opacity: 1;
	}
	
	/*ls-icon*/
	.toggle {
		display: none;
	}
	.Label {
		display: block;
		box-sizing: border-box;
		font-size: 13px;
    	letter-spacing: 1px;
		padding: 10px 0 10px 0;
	}
	.Label::after,
	.Label::before {
		content: "";
		position: absolute;
		right: 1em;
		top: 50%;
		-webkit-transform: translateY(-50%); /* Safari用 */
		transform: translateY(-50%);
		width: 1px;
		height: 16px;
		background-color: #000;
		transition: all 0.3s;
	}
	.Label::after {
		transform: rotate(90deg);
		width: 1px;
		height: 25px;
		top: 7px;
	}
	.Label,
	.content {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		transform: translateZ(0);
		transition: all 0.3s;
	}
	.content {
		height: 0;
		margin-bottom:10px;
		overflow: hidden;
	}
	.toggle:checked + .Label + .content {
		height: auto;
		border-top: 0.7px solid #000;
		padding: 2% 0 0 0;
		transition: all .3s;
	}
	.toggle:checked + .Label::after {
		transform: rotate(90deg) translateY(0) !important;
		height: 20px;
    	top: 10px;
	}
	.toggle:checked + .Label::before {
		transform: rotate(0deg) translateY(10px)  !important;
		opacity: 0;
	}
	
	/*nav*/
	.menu{
		height: 20px;
		position: fixed;
		left: 15px;
		top: 25px;
		width: 30px;
		z-index: 99;
	}
	.menu__line{
		background: rgba(0,0,0,0.00);
		display: block;
		height: 1px;
		position: absolute;
		transition:transform .3s;
		width: 100%;
	}
	
	.menu__line--icon{
		width: 30px;
		padding: 0!important;
		margin: 0!important;
		position: relative;
		top: -10px;
	}
	.menu__line--center{
		top: 9px;
	}
	.menu__line--bottom{
		bottom: 0;
	}
	.menu__line--icon.active{
		display: none;
	}
	.menu__line--top.active{
		background: rgba(69,131,126,1.00);
		top: 8px;
		transform: rotate(45deg);
	}
	.menu__line--center.active{
		background: rgba(69,131,126,1.00);
		transform:scaleX(0);
	}
	.menu__line--bottom.active{
		background: rgba(69,131,126,1.00);
		bottom: 10px;
		transform: rotate(135deg);
	}
	
	/*gnav*/
	.gnav{
		background: rgba(255,255,255,0.9);
		display: none;
		height: 100%;
		position: fixed;
		width: 100%;
		z-index: 98!important;
		top: 0;
		left: 0;
		-webkit-backdrop-filter: blur(5px);
		backdrop-filter: blur(5px);
	}
	.gnav__wrap{
		align-items:center;
		display: flex;
		flex-wrap: wrap;
		height: auto;
		justify-content: center;
		position: absolute;
		width: 100%;
		top: 45%;
        -webkit-transform: translateY(-45%); /* Safari用 */
        transform: translateY(-45%);
	}
	.gnav__menu{
		width: 100%;
		max-width: 1000px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.gnav__menu li{
		width: 23%;
		margin: 0 auto 10% auto;
	}
	.gnav-link .img{
		width: 100%;
		position: relative;
		margin: 0 0 5% 0;
	}
	.gnav-link .img .on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.gnav-link:hover .img .on{
		opacity: 1;
		transition: .3s;
	}
	.gnav-link .txt{
		width: 100%;
	}
	.gnav-link .txt img{
		height: 40px;
		margin: 0 auto;
		display: block;
	}
	
	
	.grad-btn {
		background: #000;
		color: #fff;
		text-align: center;
		display: block;
		margin: 5% auto 0 auto;
		font-size: 12px;
		padding: 1% 0;
	}
	.grad-btn::before {
	  content: "READ MORE"
	}
	.grad-item {
	  position: relative;
	  overflow: hidden;
	  height: 35px; /*隠した状態の高さ*/
	}
	.grad-item::before {
	  display: block;
	  position: absolute;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 35px; 
	  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  content: "";
	}
	.grad-trigger {
	  display: none; 
	}
	.grad-trigger:checked ~ .grad-btn::before {
	  content: "CLOSE" 
	}
	.grad-trigger:checked ~ .grad-item {
	  height: auto;
	}
	.grad-trigger:checked ~ .grad-item::before {
	  display: none;
	}
	
	.display {
		opacity : 0;
		transition : all 0.5s;
	}
	.display.active{
		opacity : 1;
	}
	
	
	.gbc01{
		background: #eed4b7;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc02{
		background: #d34152;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc03{
		background: #073f8b;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc04{
		background: #57554D;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc05{
		background: #dee3e8;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	
	.gbc07{
		background: #000000;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	
	.gb01 {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity : 1;
		transform : translate(0, 0);
		transition : all 1s;
		z-index: 9999;
	}
	.gb01.active{
		position: absolute;
		top: 0;
		left: 0;
		animation-name: fade-in-img01;
		animation-duration: 1.5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		
	}
	@keyframes fade-in-img01 {
		0% {
		  opacity: 1;
		  transform : translateX(0%);
		}
		60% {
		  opacity: .7;
		  transform : translateX(100%);
		}
		100% {
		  opacity: 0;
		  transform : translateX(100%);
		}
	}
	
}

/*pc*/
@media screen and (min-width: 1281px) and (max-width: 2559px) {
	.sp-on{
		display: none !important;
	}
	
    /*header*/
	header{
		width: 100%;
		overflow: hidden;
		position: relative;
		margin: 0 auto 5% auto;
	}
	.mv-logo{
		width: 5%;
		position: absolute;
		right: 0;
		left: 0;
    	bottom: 10%;
		margin: 0 auto;
		z-index: 20;
	}
	.mv-img-box{
		width: 100%;
		display: flex;
		justify-content: flex-start;
	}
	.mv-img{
		width: 50%;
		overflow: hidden;
		position: relative;
	}
	.mv-img .mv-on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title-box{
		width: 35%;
		overflow: hidden;
		position: absolute;
		top: 15%;
		right: 0;
		left: 0%;
		margin: 0 auto;
	}
	.mv-title01{
		width: 100%;
		margin: 0 0 3% 0;
	}
	.mv-title02{
		width: 100%;
		overflow: hidden;
		margin: 0 0 5% 0;
	}
	.mv-title03{
		width: 90%;
		position: relative;
		margin: 0 auto 3% auto;
	}
	.mv-title03 .mv-line{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title04{
		width: 100%;
		margin: 0 auto;
	}
	
	/*read*/
	.read{
		width: 100%;
		margin: 0 auto 5% auto;
	}
	.read .txt{
		width: 100%;
		font-size: 18px;
		letter-spacing: 4px;
		line-height: 2.5em;
		text-align: center;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 auto 5% auto;
	}
	
	
	.rever{
		flex-direction: row-reverse;
	}
	
	.wrap{
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	.bg01{
		width: 90%;
		height: 700px;
		position: absolute;
		bottom: 10%;
		left: 0;
		z-index: -1;
		background:linear-gradient(90deg, #fcf8eb,#fcf8eb,#fff);
	}
	.bg02{
		width: 90%;
		height: 700px;
		position: absolute;
		top: 25%;
		right: 0;
		z-index: -1;
		background:linear-gradient(90deg, #fff,#edf0fe,#edf0fe);
	}
	.bg03{
		width: 90%;
		height: 550px;
		position: absolute;
		bottom: 15%;
		left: 0;
		z-index: -1;
		background:linear-gradient(90deg, #ccd5cc,#ccd5cc,#fff);
	}
	.bg04{
		width: 90%;
		height: 550px;
		position: absolute;
		bottom: 5%;
		right: 0;
		z-index: -1;
		background:linear-gradient(90deg, #fff,#f3f4f8,#f3f4f8);
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	/*item01*/
	.item01{
		width: 100%;
		margin: 0 auto 7% auto;
	}
	.item01 .title-box{
		width: max-content;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 auto 3% auto;
	}
	.item01 .title-box .title01{
		width: max-content;
		position: relative;
		margin: 0 50px 0 0;
	}
	.item01 .title-box .title01 img{
		height: 70px;
	}
	.item01 .title-box .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .title-box .title01 .icon img{
		height: 60px;
	}
	.item01 .title-box .title02{
		width: max-content;
	}
	.item01 .title-box .title02 img{
		height: 60px;
	}
	.item01 .img{
		width: 100%;
		max-width: 800px;
		margin: 0 auto 3% auto;
		overflow: hidden;
		position: relative;
	}
	.item01 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .data{
		width: 100%;
		max-width: 900px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.item01 .data .data01{
		width: 45%;
	}
	.item01 .data .data01 .txt{
		font-size: 18px;
		letter-spacing: 2px;
		line-height: 2.5em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item01 .data .data01 .line{
		width: 100%;
		overflow: hidden;
	}
	.item01 .data .data02{
		width: 45%;
	}
	
	.item01 .img02{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 3% auto;
		overflow: hidden;
	}
	.item01 .img02 a{
		width: 100%;
		position: relative;
	}
	.item01 .img02 a .img02-01{
		width: 55%;
		padding: 0 0 10% 0;
	}
	.item01 .img02 a .img02-02{
		width: 55%;
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 3;
	}
	
	/*item02*/
	.item02{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 7% auto;
		display: flex;
		justify-content: space-between;
	}
	.item02 .img{
		width: 55%;
		position: relative;
		overflow: hidden;
	}
	.item02 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .data{
		width: 50%;
		box-sizing: border-box;
		padding: 3% 7% 0 7%;
	}
	.item02 .data .title-box{
		width: max-content;
		margin: 0 0 10% 0;
	}
	.item02 .data .title-box .title01{
		width: max-content;
		margin: 0 0 5% 0;
		position: relative;
	}
	.item02 .data .title-box .title01 img{
		height: 70px;
	}
	.item02 .data .title-box .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .data .title-box .title01 .icon img{
		height: 60px;
	}
	.item02 .data .title-box .title02{
		width: max-content;
	}
	.item02 .data .title-box .title02 img{
		height: 130px;
	}
	.item02 .data .txt{
		font-size: 18px;
		letter-spacing: 2px;
		line-height: 2.5em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item02 .data .line{
		width: 100%;
		overflow: hidden;
		margin: 0 0 10% 0;
	}
	
	
	
	.on-img {
		opacity : 1;
	}
	.on-img.active{
		opacity : 1;
		animation-name: on-img;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes on-img {
		0% {
		  opacity: 1;
		}
		100% {
		  opacity: 0;
		}
	}
	.img-r {
		opacity : 0;
	}
	.img-r.active{
		opacity : 0;
		animation-name: img-r;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-r {
		0% {
		  opacity: 0;
		  transform: translateX(20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.img-l {
		opacity : 0;
	}
	.img-l.active{
		opacity : 0;
		animation-name: img-l;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-l {
		0% {
		  opacity: 0;
		  transform: translateX(-20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	
	/*item-end*/
	.item-end {
		width: 100%;
		max-width: 1100px;
		margin: 0 auto 5% auto;
	}
	.item-end .txt {
		width: 100%;
		font-size: 12px;
		letter-spacing: 2px;
		line-height: 2.5em;
		text-align: center;
		color: #474545;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 0 7% 0;
		color: #808080;
	}
	.cap{
		width: 100%;
		text-align: right;
		font-size: 12px;
		letter-spacing: 2px;
		margin: 5% 0 0 0;
	}
	
	.l-icon::before{
        content: url("../img/l-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon::before{
        content: url("../img/s-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	.l-icon02::before{
        content: url("../img/l-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon02::before{
        content: url("../img/s-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	
	/*sid-nav*/
    .side-nav{
		position: fixed;
		display: block;
		width: 120px;
		right: 10px;
        top: 0;
		height: 100vh;
		z-index: 10;
	}
	.side-nav-in{
		width: 120px;
		position: absolute;
		top: 40%;
		-webkit-transform: translateY(-40%); /* Safari用 */
		transform: translateY(-40%);
	}
	.side-nav-in a{
		display: block;
		width: 100%;
		overflow: hidden;
		margin: 0 0 30px 0;
	}
	.side-nav-in a .img{
		width: 100%;
		position: relative;
		margin: 0 0 10px 0;
	}
	.side-nav-in a .img .on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.side-nav-in a:hover .img .on{
		opacity: 1;
		transition: .3s;
	}
	.side-nav-in a .txt{
		width: 100%;
	}
	.side-nav-in a .txt img{
		height: 24px;
		display: block;
	}
	
	/*f-banner*/
	.f-banner{
		width: 100%;
		max-width: 600px;
		margin: 0 auto 5% auto;
	}
	.f-banner-list{
		width: 100%;
		margin: 0 auto;
	}
	.f-banner-list li{
		width: 100%;
		margin: 0 0 3% 0;
	}
	.f-banner-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*f-banner02*/
	.f-banner02{
		border-top: 1px solid #000;
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 5% auto;
		padding: 5% 0 0 0;
	}
	.f-banner02-list{
		width: 100%;
		max-width: 600px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.f-banner02-list li{
		width: 47%;
	}
	.f-banner02-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner02-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*footer*/
	.footer {
		color: #000;
		letter-spacing: 0.3em;
		padding: 0 0 2% 0;
		position: relative;
		text-align: center;
	}
	.footer .insta{
		display: block;
		width: 450px;
		border: 1px solid #eee;
		margin: 0 auto 3% auto;
		transition: .3s;
	}
	.footer .insta:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	.footer_sns {
		margin: 26px 0 0;
	}
	.footer_snsNode {
		display: inline-block;
		margin: 0 10px;
		width: 30px;
	}
	.f-ow{
		width: 120px;
		margin: 25px auto 0 auto;
	}
	.footer_copyright {
		font-family: "Helvetica",serif;
		font-size: 10px;
		letter-spacing: 0.02em;
		margin: 34px 0 0;
	}
	#pagetop{
		position: fixed;
		right: 15px;
		bottom: 20px;
		width: 35px;
		display: block;
		z-index: 99;
	}
	
	/*cart-btm*/
	.cart-btm{
		width: 100%;
		text-decoration: none;
		color: #000;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
	}
	.cart-title{
        width: max-content;
		font-size: 14px;
        letter-spacing: 1px;
        position: absolute;
        line-height: 1.5em;
        white-space: nowrap;
	}
	.cart-title02{
        width: 100%;
		font-size: 14px;
        letter-spacing: 1px;
        line-height: 1.5em;
        white-space: nowrap;
		margin: 0 0 2% 0;
	}
    .cart-title span{
		font-size: 12px;
		color: #fff;
		background: #99999a;
		padding: 1px 5px 1px 5px;
		margin: 0 0 0 10px;
		border-radius: 2px;
        display: inline-block;
	}
    .cart-yen{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        width: 85%;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	 .cart-yen02{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	.cart-yen span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	.cart-yen02 span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	
	/*cart-btm02*/
	.cart-btm02{
		width: 100%;
		text-decoration: none;
		color: #595757;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
		flex-wrap: wrap;
	}
	
	.link-line{
		width: 100%;
		height: 1px;
		background: #a0a0a0;
		margin: 5% 0;
	}
	.link-line02{
		width: 100%;
		height: 1px;
		background: #fff;
		margin: 5% 0;
	}
	
	.cart-btm .btn00{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #fff;
		border: 1px solid #231815;
		display: inline-block;
		text-align: center;
		color: #000;
	}
	.cart-btm:hover .btn00 {
	  background: #231815;
	  border-color: #231815;
	  color: #fff;
	}
	
	.cart-btm .btn01{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #cfc4b9;
		border: 1px solid #cfc4b9;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn01 {
	  background: #fff;
	  border-color: #cfc4b9;
	  color: #cfc4b9;
	}
	
	.cart-btm .btn02{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #5992d2;
		border: 1px solid #5992d2;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn02 {
	  background: #fff;
	  border-color: #5992d2;
	  color: #5992d2;
	}
	
	.cart-btm .btn03{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #f6c6ab;
		border: 1px solid #f6c6ab;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn03 {
	  background: #fff;
	  border-color: #f6c6ab;
	  color: #f6c6ab;
	}
	
	.cart-btm .btn04{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #d88d9c;
		border: 1px solid #d88d9c;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn04 {
	  background: #fff;
	  border-color: #d88d9c;
	  color: #d88d9c;
	}
	
	.btn-border {
	  background-color: transparent;
	  color: #1d1d1d;
	}
	.btn-arrow {
	  position: relative;
	  -webkit-transition: background-color 300ms ease-out;
	  transition: background-color 300ms ease-out;
	}
	.btn-arrow span {
	  display: inline-block;
	  position: relative;
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: transform;
	}
	.cart-btm:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.cart-btm02:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.btn-arrow img {
	  position: absolute;
	  width: 1.1em;
	  right: 0px;
	  right: 0rem;
	  opacity: 0;
	  top: 50%;
	  -webkit-transform: translateY(-50%);
			  transform: translateY(-50%);
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: right, opacity;
	}
	.btn-arrow img * {
	  stroke-width: 5;
	  stroke-color: transparent;
	}
	.cart-btm:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	.cart-btm02:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	
	
	/*anime----------------------------------------------------*/
	/*fade01*/
	.fade01 {
		animation-name: mv01;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade02 {
		animation-name: mv02;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade03 {
		animation-name: mv03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade04 {
		animation-name: mv04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade05 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 3s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade06 {
		animation-name: mv05-2;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 3.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade07 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 4s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes mv01 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv02 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 0;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv03 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv04 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv04-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv05 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv05-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	
	
	.fadein-up {
		opacity : 0;
	}
	.fadein-up.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-up02 {
		opacity : 0;
	}
	.fadein-up02.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up {
		0% {
		  opacity: 0;
		  transform: translateY(30px)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	
	.fadein-up-zoom {
		opacity : 0;
	}
	.fadein-up-zoom.active{
		opacity : 1;
		animation-name: fadein-up-zoom;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-up-zoom02 {
		opacity : 1;
		  transform: scale(1.1);
	}
	.fadein-up-zoom02.active{
		opacity : 1;
		animation-name: fadein-up-zoom02;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes fadein-up-zoom02 {
		0% {
		  opacity: 1;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-zoom {
		opacity : 0;
	}
	.fadein-zoom.active{
		opacity : 1;
		animation-name: fadein-zoom;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1) rotate(-20deg);
		}
		100% {
		  opacity: 1;
		  transform: scale(1) rotate(0deg);
		}
	}
	
	.fadein-l {
		opacity : 0;
	}
	.fadein-l.active{
		opacity : 1;
		animation-name: fadein-l;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-l {
		0% {
		  opacity: 0;
		  transform: translateX(30px);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.fadein-r {
		opacity : 0;
	}
	.fadein-r.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02 {
		opacity : 0;
	}
	.fadein-r02.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02-2 {
		opacity : 0;
	}
	.fadein-r02-2.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-r {
		0% {
		  opacity: 0;
		  transform: translateX(-30px);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.color-down {
		opacity : 1;
	}
	.color-down.active{
		opacity : 1;
		animation-name: color-down;
		animation-duration: 3s;
		animation-timing-function: ease-out;
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes color-down {
		0% {
		  opacity: .3;
		}
		100% {
		  opacity: .1;
		}
	}
	
	.line-ani01 {
		opacity : 0;
	}
	.line-ani01.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani01-2 {
		opacity : 0;
	}
	.line-ani01-2.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani01 {
		0% {
		  opacity: 0;
		  transform: translateY(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani02 {
		opacity : 0;
	}
	.line-ani02.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani02-2 {
		opacity : 0;
	}
	.line-ani02-2.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani02 {
		0% {
		  opacity: 0;
		  transform: translateY(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani03 {
		opacity : 0;
	}
	.line-ani03.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani03-2 {
		opacity : 0;
	}
	.line-ani03-2.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani03 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.line-ani04 {
		opacity : 0;
	}
	.line-ani04.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani04-2 {
		opacity : 0;
	}
	.line-ani04-2.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani04 {
		0% {
		  opacity: 0;
		  transform: translateX(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	.rote {
		opacity : 1;
	}
	.rote.active{
		opacity : 1;
		animation-name: rote;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes rote {
		0% {
		  transform: rotateY(0deg);
		}
		100% {
		  transform: rotateY(360deg);
		}
	}
	
	.in-btn{
		width: 40px;
		margin: 0 auto 1% auto;
		display: block;
		opacity: 1;
	}
	
	/*ls-icon*/
	.toggle {
		display: none;
	}
	.Label {
		display: block;
		box-sizing: border-box;
		font-size: 13px;
    	letter-spacing: 1px;
		padding: 10px 0 10px 0;
	}
	.Label::after,
	.Label::before {
		content: "";
		position: absolute;
		right: 1em;
		top: 50%;
		-webkit-transform: translateY(-50%); /* Safari用 */
		transform: translateY(-50%);
		width: 1px;
		height: 16px;
		background-color: #000;
		transition: all 0.3s;
	}
	.Label::after {
		transform: rotate(90deg);
		width: 1px;
		height: 25px;
		top: 7px;
	}
	.Label,
	.content {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		transform: translateZ(0);
		transition: all 0.3s;
	}
	.content {
		height: 0;
		margin-bottom:10px;
		overflow: hidden;
	}
	.toggle:checked + .Label + .content {
		height: auto;
		border-top: 0.7px solid #000;
		padding: 2% 0 0 0;
		transition: all .3s;
	}
	.toggle:checked + .Label::after {
		transform: rotate(90deg) translateY(0) !important;
		height: 20px;
    	top: 10px;
	}
	.toggle:checked + .Label::before {
		transform: rotate(0deg) translateY(10px)  !important;
		opacity: 0;
	}
	
	/*nav*/
	.menu{
		height: 20px;
		position: fixed;
		left: 15px;
		top: 25px;
		width: 30px;
		z-index: 99;
	}
	.menu__line{
		background: rgba(0,0,0,0.00);
		display: block;
		height: 1px;
		position: absolute;
		transition:transform .3s;
		width: 100%;
	}
	
	.menu__line--icon{
		width: 30px;
		padding: 0!important;
		margin: 0!important;
		position: relative;
		top: -10px;
	}
	.menu__line--center{
		top: 9px;
	}
	.menu__line--bottom{
		bottom: 0;
	}
	.menu__line--icon.active{
		display: none;
	}
	.menu__line--top.active{
		background: rgba(69,131,126,1.00);
		top: 8px;
		transform: rotate(45deg);
	}
	.menu__line--center.active{
		background: rgba(69,131,126,1.00);
		transform:scaleX(0);
	}
	.menu__line--bottom.active{
		background: rgba(69,131,126,1.00);
		bottom: 10px;
		transform: rotate(135deg);
	}
	
	/*gnav*/
	.gnav{
		background: rgba(255,255,255,0.9);
		display: none;
		height: 100%;
		position: fixed;
		width: 100%;
		z-index: 98!important;
		top: 0;
		left: 0;
		-webkit-backdrop-filter: blur(5px);
		backdrop-filter: blur(5px);
	}
	.gnav__wrap{
		align-items:center;
		display: flex;
		flex-wrap: wrap;
		height: auto;
		justify-content: center;
		position: absolute;
		width: 100%;
		top: 45%;
        -webkit-transform: translateY(-45%); /* Safari用 */
        transform: translateY(-45%);
	}
	.gnav__menu{
		width: 100%;
		max-width: 1000px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.gnav__menu li{
		width: 23%;
		margin: 0 auto 10% auto;
	}
	.gnav-link .img{
		width: 100%;
		position: relative;
		margin: 0 0 5% 0;
	}
	.gnav-link .img .on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.gnav-link:hover .img .on{
		opacity: 1;
		transition: .3s;
	}
	.gnav-link .txt{
		width: 100%;
	}
	.gnav-link .txt img{
		height: 40px;
		margin: 0 auto;
		display: block;
	}
	
	
	.grad-btn {
		background: #000;
		color: #fff;
		text-align: center;
		display: block;
		margin: 5% auto 0 auto;
		font-size: 12px;
		padding: 1% 0;
	}
	.grad-btn::before {
	  content: "READ MORE"
	}
	.grad-item {
	  position: relative;
	  overflow: hidden;
	  height: 35px; /*隠した状態の高さ*/
	}
	.grad-item::before {
	  display: block;
	  position: absolute;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 35px; 
	  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  content: "";
	}
	.grad-trigger {
	  display: none; 
	}
	.grad-trigger:checked ~ .grad-btn::before {
	  content: "CLOSE" 
	}
	.grad-trigger:checked ~ .grad-item {
	  height: auto;
	}
	.grad-trigger:checked ~ .grad-item::before {
	  display: none;
	}
	
	.display {
		opacity : 0;
		transition : all 0.5s;
	}
	.display.active{
		opacity : 1;
	}
	
	
	.gbc01{
		background: #eed4b7;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc02{
		background: #d34152;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc03{
		background: #073f8b;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc04{
		background: #57554D;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc05{
		background: #dee3e8;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	
	.gbc07{
		background: #000000;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	
	.gb01 {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity : 1;
		transform : translate(0, 0);
		transition : all 1s;
		z-index: 9999;
	}
	.gb01.active{
		position: absolute;
		top: 0;
		left: 0;
		animation-name: fade-in-img01;
		animation-duration: 1.5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		
	}
	@keyframes fade-in-img01 {
		0% {
		  opacity: 1;
		  transform : translateX(0%);
		}
		60% {
		  opacity: .7;
		  transform : translateX(100%);
		}
		100% {
		  opacity: 0;
		  transform : translateX(100%);
		}
	}
	
}

/*note pc*/
@media screen and (min-width: 1025px) and (max-width: 1280px) {
    .sp-on{
		display: none !important;
	}
	
	/*header*/
	header{
		width: 100%;
		overflow: hidden;
		position: relative;
		margin: 0 auto 5% auto;
	}
	.mv-logo{
		width: 5%;
		position: absolute;
		right: 0;
		left: 0;
    	bottom: 10%;
		margin: 0 auto;
		z-index: 20;
	}
	.mv-img-box{
		width: 100%;
		display: flex;
		justify-content: flex-start;
	}
	.mv-img{
		width: 50%;
		overflow: hidden;
		position: relative;
	}
	.mv-img .mv-on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title-box{
		width: 35%;
		overflow: hidden;
		position: absolute;
		top: 12%;
		right: 0;
		left: 0%;
		margin: 0 auto;
	}
	.mv-title01{
		width: 100%;
		margin: 0 0 3% 0;
	}
	.mv-title02{
		width: 100%;
		overflow: hidden;
		margin: 0 0 5% 0;
	}
	.mv-title03{
		width: 90%;
		position: relative;
		margin: 0 auto 3% auto;
	}
	.mv-title03 .mv-line{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title04{
		width: 100%;
		margin: 0 auto;
	}
	
	/*read*/
	.read{
		width: 100%;
		margin: 0 auto 5% auto;
	}
	.read .txt{
		width: 100%;
		font-size: 18px;
		letter-spacing: 4px;
		line-height: 2.5em;
		text-align: center;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 auto 5% auto;
	}
	
	
	.rever{
		flex-direction: row-reverse;
	}
	
	.wrap{
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	.bg01{
		width: 95%;
		height: 550px;
		position: absolute;
		bottom: 10%;
		left: 0;
		z-index: -1;
		background:linear-gradient(90deg, #fcf8eb,#fcf8eb,#fff);
	}
	.bg02{
		width: 95%;
		height: 550px;
		position: absolute;
		top: 25%;
		right: 0;
		z-index: -1;
		background:linear-gradient(90deg, #fff,#edf0fe,#edf0fe);
	}
	.bg03{
		width: 95%;
		height: 550px;
		position: absolute;
		bottom: 5%;
		left: 0;
		z-index: -1;
		background:linear-gradient(90deg, #ccd5cc,#ccd5cc,#fff);
	}
	.bg04{
		width: 95%;
		height: 550px;
		position: absolute;
		bottom: 5%;
		right: 0;
		z-index: -1;
		background:linear-gradient(90deg, #fff,#f3f4f8,#f3f4f8);
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	/*item01*/
	.item01{
		width: 100%;
		margin: 0 auto 7% auto;
	}
	.item01 .title-box{
		width: max-content;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 auto 3% auto;
	}
	.item01 .title-box .title01{
		width: max-content;
		position: relative;
		margin: 0 50px 0 0;
	}
	.item01 .title-box .title01 img{
		height: 60px;
	}
	.item01 .title-box .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .title-box .title01 .icon img{
		height: 50px;
	}
	.item01 .title-box .title02{
		width: max-content;
	}
	.item01 .title-box .title02 img{
		height: 50px;
	}
	.item01 .img{
		width: 50%;
		margin: 0 auto 3% auto;
		overflow: hidden;
		position: relative;
	}
	.item01 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .data{
		width: 70%;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.item01 .data .data01{
		width: 45%;
	}
	.item01 .data .data01 .txt{
		font-size: 16px;
		letter-spacing: 2px;
		line-height: 2.5em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item01 .data .data01 .line{
		width: 100%;
		overflow: hidden;
	}
	.item01 .data .data02{
		width: 45%;
	}
	
	.item01 .img02{
		width: 80%;
		margin: 0 auto 3% auto;
		overflow: hidden;
	}
	.item01 .img02 a{
		width: 100%;
		position: relative;
	}
	.item01 .img02 a .img02-01{
		width: 55%;
		padding: 0 0 10% 0;
	}
	.item01 .img02 a .img02-02{
		width: 55%;
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 3;
	}
	
	/*item02*/
	.item02{
		width: 80%;
		margin: 0 auto 7% auto;
		display: flex;
		justify-content: space-between;
	}
	.item02 .img{
		width: 55%;
		position: relative;
		overflow: hidden;
	}
	.item02 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .data{
		width: 50%;
		box-sizing: border-box;
		padding: 3% 7% 0 7%;
	}
	.item02 .data .title-box{
		width: max-content;
		margin: 0 0 10% 0;
	}
	.item02 .data .title-box .title01{
		width: max-content;
		position: relative;
		margin: 0 0 5% 0;
	}
	.item02 .data .title-box .title01 img{
		height: 60px;
	}
	.item02 .data .title-box .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .data .title-box .title01 .icon img{
		height: 50px;
	}
	.item02 .data .title-box .title02{
		width: max-content;
	}
	.item02 .data .title-box .title02 img{
		height: 110px;
	}
	.item02 .data .txt{
		font-size: 16px;
		letter-spacing: 2px;
		line-height: 2.5em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item02 .data .line{
		width: 100%;
		overflow: hidden;
		margin: 0 0 10% 0;
	}
	
	
	
	.on-img {
		opacity : 1;
	}
	.on-img.active{
		opacity : 1;
		animation-name: on-img;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes on-img {
		0% {
		  opacity: 1;
		}
		100% {
		  opacity: 0;
		}
	}
	.img-r {
		opacity : 0;
	}
	.img-r.active{
		opacity : 0;
		animation-name: img-r;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-r {
		0% {
		  opacity: 0;
		  transform: translateX(20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.img-l {
		opacity : 0;
	}
	.img-l.active{
		opacity : 0;
		animation-name: img-l;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-l {
		0% {
		  opacity: 0;
		  transform: translateX(-20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	/*item-end*/
	.item-end {
		width: 100%;
		max-width: 1100px;
		margin: 0 auto 5% auto;
	}
	.item-end .txt {
		width: 100%;
		font-size: 12px;
		letter-spacing: 2px;
		line-height: 2.5em;
		text-align: center;
		color: #474545;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 0 7% 0;
		color: #808080;
	}
	.cap{
		width: 100%;
		text-align: right;
		font-size: 12px;
		letter-spacing: 2px;
		margin: 5% 0 0 0;
	}
	
	.l-icon::before{
        content: url("../img/l-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon::before{
        content: url("../img/s-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	.l-icon02::before{
        content: url("../img/l-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon02::before{
        content: url("../img/s-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	
	/*sid-nav*/
    .side-nav{
		position: fixed;
		display: block;
		width: 120px;
		right: 10px;
        top: 0;
		height: 100vh;
		z-index: 10;
	}
	.side-nav-in{
		width: 120px;
		position: absolute;
		top: 40%;
		-webkit-transform: translateY(-40%); /* Safari用 */
		transform: translateY(-40%);
	}
	.side-nav-in a{
		display: block;
		width: 100%;
		overflow: hidden;
		margin: 0 0 30px 0;
	}
	.side-nav-in a .img{
		width: 100%;
		position: relative;
		margin: 0 0 10px 0;
	}
	.side-nav-in a .img .on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.side-nav-in a:hover .img .on{
		opacity: 1;
		transition: .3s;
	}
	.side-nav-in a .txt{
		width: 100%;
	}
	.side-nav-in a .txt img{
		height: 24px;
		display: block;
	}
	
	/*f-banner*/
	.f-banner{
		width: 100%;
		max-width: 600px;
		margin: 0 auto 5% auto;
	}
	.f-banner-list{
		width: 100%;
		margin: 0 auto;
	}
	.f-banner-list li{
		width: 100%;
		margin: 0 0 3% 0;
	}
	.f-banner-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*f-banner02*/
	.f-banner02{
		border-top: 1px solid #000;
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 5% auto;
		padding: 5% 0 0 0;
	}
	.f-banner02-list{
		width: 100%;
		max-width: 600px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.f-banner02-list li{
		width: 47%;
	}
	.f-banner02-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner02-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*footer*/
	.footer {
		color: #000;
		letter-spacing: 0.3em;
		padding: 0 0 2% 0;
		position: relative;
		text-align: center;
	}
	.footer .insta{
		display: block;
		width: 450px;
		border: 1px solid #eee;
		margin: 0 auto 3% auto;
		transition: .3s;
	}
	.footer .insta:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	.footer_sns {
		margin: 26px 0 0;
	}
	.footer_snsNode {
		display: inline-block;
		margin: 0 10px;
		width: 30px;
	}
	.f-ow{
		width: 120px;
		margin: 25px auto 0 auto;
	}
	.footer_copyright {
		font-family: "Helvetica",serif;
		font-size: 10px;
		letter-spacing: 0.02em;
		margin: 34px 0 0;
	}
	#pagetop{
		position: fixed;
		right: 15px;
		bottom: 20px;
		width: 35px;
		display: block;
		z-index: 99;
	}
	
	/*cart-btm*/
	.cart-btm{
		width: 100%;
		text-decoration: none;
		color: #000;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
	}
	.cart-title{
        width: max-content;
		font-size: 14px;
        letter-spacing: 1px;
        position: absolute;
        line-height: 1.5em;
        white-space: nowrap;
	}
	.cart-title02{
        width: 100%;
		font-size: 14px;
        letter-spacing: 1px;
        line-height: 1.5em;
        white-space: nowrap;
		margin: 0 0 2% 0;
	}
    .cart-title span{
		font-size: 12px;
		color: #fff;
		background: #99999a;
		padding: 1px 5px 1px 5px;
		margin: 0 0 0 10px;
		border-radius: 2px;
        display: inline-block;
	}
    .cart-yen{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        width: 85%;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	 .cart-yen02{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	.cart-yen span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	.cart-yen02 span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	
	/*cart-btm02*/
	.cart-btm02{
		width: 100%;
		text-decoration: none;
		color: #595757;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
		flex-wrap: wrap;
	}
	
	.link-line{
		width: 100%;
		height: 1px;
		background: #a0a0a0;
		margin: 5% 0;
	}
	.link-line02{
		width: 100%;
		height: 1px;
		background: #fff;
		margin: 5% 0;
	}
	
	.cart-btm .btn00{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #fff;
		border: 1px solid #231815;
		display: inline-block;
		text-align: center;
		color: #000;
	}
	.cart-btm:hover .btn00 {
	  background: #231815;
	  border-color: #231815;
	  color: #fff;
	}
	
	.cart-btm .btn01{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #cfc4b9;
		border: 1px solid #cfc4b9;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn01 {
	  background: #fff;
	  border-color: #cfc4b9;
	  color: #cfc4b9;
	}
	
	.cart-btm .btn02{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #5992d2;
		border: 1px solid #5992d2;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn02 {
	  background: #fff;
	  border-color: #5992d2;
	  color: #5992d2;
	}
	
	.cart-btm .btn03{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #f6c6ab;
		border: 1px solid #f6c6ab;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn03 {
	  background: #fff;
	  border-color: #f6c6ab;
	  color: #f6c6ab;
	}
	
	.cart-btm .btn04{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #d88d9c;
		border: 1px solid #d88d9c;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn04 {
	  background: #fff;
	  border-color: #d88d9c;
	  color: #d88d9c;
	}
	
	.btn-border {
	  background-color: transparent;
	  color: #1d1d1d;
	}
	.btn-arrow {
	  position: relative;
	  -webkit-transition: background-color 300ms ease-out;
	  transition: background-color 300ms ease-out;
	}
	.btn-arrow span {
	  display: inline-block;
	  position: relative;
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: transform;
	}
	.cart-btm:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.cart-btm02:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.btn-arrow img {
	  position: absolute;
	  width: 1.1em;
	  right: 0px;
	  right: 0rem;
	  opacity: 0;
	  top: 50%;
	  -webkit-transform: translateY(-50%);
			  transform: translateY(-50%);
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: right, opacity;
	}
	.btn-arrow img * {
	  stroke-width: 5;
	  stroke-color: transparent;
	}
	.cart-btm:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	.cart-btm02:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	
	
	/*anime----------------------------------------------------*/
	/*fade01*/
	.fade01 {
		animation-name: mv01;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade02 {
		animation-name: mv02;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade03 {
		animation-name: mv03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade04 {
		animation-name: mv04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade05 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 3s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade06 {
		animation-name: mv05-2;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 3.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade07 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 4s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes mv01 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv02 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 0;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv03 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv04 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv04-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv05 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv05-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	
	
	.fadein-up {
		opacity : 0;
	}
	.fadein-up.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-up02 {
		opacity : 0;
	}
	.fadein-up02.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up {
		0% {
		  opacity: 0;
		  transform: translateY(30px)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	
	.fadein-up-zoom {
		opacity : 0;
	}
	.fadein-up-zoom.active{
		opacity : 1;
		animation-name: fadein-up-zoom;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-up-zoom02 {
		opacity : 1;
		  transform: scale(1.1);
	}
	.fadein-up-zoom02.active{
		opacity : 1;
		animation-name: fadein-up-zoom02;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes fadein-up-zoom02 {
		0% {
		  opacity: 1;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-zoom {
		opacity : 0;
	}
	.fadein-zoom.active{
		opacity : 1;
		animation-name: fadein-zoom;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1) rotate(-20deg);
		}
		100% {
		  opacity: 1;
		  transform: scale(1) rotate(0deg);
		}
	}
	
	.fadein-l {
		opacity : 0;
	}
	.fadein-l.active{
		opacity : 1;
		animation-name: fadein-l;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-l {
		0% {
		  opacity: 0;
		  transform: translateX(30px);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.fadein-r {
		opacity : 0;
	}
	.fadein-r.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02 {
		opacity : 0;
	}
	.fadein-r02.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02-2 {
		opacity : 0;
	}
	.fadein-r02-2.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-r {
		0% {
		  opacity: 0;
		  transform: translateX(-30px);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.color-down {
		opacity : 1;
	}
	.color-down.active{
		opacity : 1;
		animation-name: color-down;
		animation-duration: 3s;
		animation-timing-function: ease-out;
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes color-down {
		0% {
		  opacity: .3;
		}
		100% {
		  opacity: .1;
		}
	}
	
	.line-ani01 {
		opacity : 0;
	}
	.line-ani01.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani01-2 {
		opacity : 0;
	}
	.line-ani01-2.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani01 {
		0% {
		  opacity: 0;
		  transform: translateY(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani02 {
		opacity : 0;
	}
	.line-ani02.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani02-2 {
		opacity : 0;
	}
	.line-ani02-2.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani02 {
		0% {
		  opacity: 0;
		  transform: translateY(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani03 {
		opacity : 0;
	}
	.line-ani03.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani03-2 {
		opacity : 0;
	}
	.line-ani03-2.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani03 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.line-ani04 {
		opacity : 0;
	}
	.line-ani04.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani04-2 {
		opacity : 0;
	}
	.line-ani04-2.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani04 {
		0% {
		  opacity: 0;
		  transform: translateX(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	.rote {
		opacity : 1;
	}
	.rote.active{
		opacity : 1;
		animation-name: rote;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes rote {
		0% {
		  transform: rotateY(0deg);
		}
		100% {
		  transform: rotateY(360deg);
		}
	}
	
	.in-btn{
		width: 40px;
		margin: 0 auto 1% auto;
		display: block;
		opacity: 1;
	}
	
	/*ls-icon*/
	.toggle {
		display: none;
	}
	.Label {
		display: block;
		box-sizing: border-box;
		font-size: 13px;
    	letter-spacing: 1px;
		padding: 10px 0 10px 0;
	}
	.Label::after,
	.Label::before {
		content: "";
		position: absolute;
		right: 1em;
		top: 50%;
		-webkit-transform: translateY(-50%); /* Safari用 */
		transform: translateY(-50%);
		width: 1px;
		height: 16px;
		background-color: #000;
		transition: all 0.3s;
	}
	.Label::after {
		transform: rotate(90deg);
		width: 1px;
		height: 25px;
		top: 7px;
	}
	.Label,
	.content {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		transform: translateZ(0);
		transition: all 0.3s;
	}
	.content {
		height: 0;
		margin-bottom:10px;
		overflow: hidden;
	}
	.toggle:checked + .Label + .content {
		height: auto;
		border-top: 0.7px solid #000;
		padding: 2% 0 0 0;
		transition: all .3s;
	}
	.toggle:checked + .Label::after {
		transform: rotate(90deg) translateY(0) !important;
		height: 20px;
    	top: 10px;
	}
	.toggle:checked + .Label::before {
		transform: rotate(0deg) translateY(10px)  !important;
		opacity: 0;
	}
	
	/*nav*/
	.menu{
		height: 20px;
		position: fixed;
		left: 15px;
		top: 25px;
		width: 30px;
		z-index: 99;
	}
	.menu__line{
		background: rgba(0,0,0,0.00);
		display: block;
		height: 1px;
		position: absolute;
		transition:transform .3s;
		width: 100%;
	}
	
	.menu__line--icon{
		width: 30px;
		padding: 0!important;
		margin: 0!important;
		position: relative;
		top: -10px;
	}
	.menu__line--center{
		top: 9px;
	}
	.menu__line--bottom{
		bottom: 0;
	}
	.menu__line--icon.active{
		display: none;
	}
	.menu__line--top.active{
		background: rgba(69,131,126,1.00);
		top: 8px;
		transform: rotate(45deg);
	}
	.menu__line--center.active{
		background: rgba(69,131,126,1.00);
		transform:scaleX(0);
	}
	.menu__line--bottom.active{
		background: rgba(69,131,126,1.00);
		bottom: 10px;
		transform: rotate(135deg);
	}
	
	/*gnav*/
	.gnav{
		background: rgba(255,255,255,0.9);
		display: none;
		height: 100%;
		position: fixed;
		width: 100%;
		z-index: 98!important;
		top: 0;
		left: 0;
		-webkit-backdrop-filter: blur(5px);
		backdrop-filter: blur(5px);
	}
	.gnav__wrap{
		align-items:center;
		display: flex;
		flex-wrap: wrap;
		height: auto;
		justify-content: center;
		position: absolute;
		width: 100%;
		top: 45%;
        -webkit-transform: translateY(-45%); /* Safari用 */
        transform: translateY(-45%);
	}
	.gnav__menu{
		width: 100%;
		max-width: 1000px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.gnav__menu li{
		width: 23%;
		margin: 0 auto 10% auto;
	}
	.gnav-link .img{
		width: 100%;
		position: relative;
		margin: 0 0 5% 0;
	}
	.gnav-link .img .on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.gnav-link:hover .img .on{
		opacity: 1;
		transition: .3s;
	}
	.gnav-link .txt{
		width: 100%;
	}
	.gnav-link .txt img{
		height: 40px;
		margin: 0 auto;
		display: block;
	}
	
	
	.grad-btn {
		background: #000;
		color: #fff;
		text-align: center;
		display: block;
		margin: 5% auto 0 auto;
		font-size: 12px;
		padding: 1% 0;
	}
	.grad-btn::before {
	  content: "READ MORE"
	}
	.grad-item {
	  position: relative;
	  overflow: hidden;
	  height: 35px; /*隠した状態の高さ*/
	}
	.grad-item::before {
	  display: block;
	  position: absolute;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 35px; 
	  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  content: "";
	}
	.grad-trigger {
	  display: none; 
	}
	.grad-trigger:checked ~ .grad-btn::before {
	  content: "CLOSE" 
	}
	.grad-trigger:checked ~ .grad-item {
	  height: auto;
	}
	.grad-trigger:checked ~ .grad-item::before {
	  display: none;
	}
	
	.display {
		opacity : 0;
		transition : all 0.5s;
	}
	.display.active{
		opacity : 1;
	}
	
	
	.gbc01{
		background: #eed4b7;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc02{
		background: #d34152;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc03{
		background: #073f8b;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc04{
		background: #57554D;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc05{
		background: #dee3e8;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	
	.gbc07{
		background: #000000;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	
	.gb01 {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity : 1;
		transform : translate(0, 0);
		transition : all 1s;
		z-index: 9999;
	}
	.gb01.active{
		position: absolute;
		top: 0;
		left: 0;
		animation-name: fade-in-img01;
		animation-duration: 1.5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		
	}
	@keyframes fade-in-img01 {
		0% {
		  opacity: 1;
		  transform : translateX(0%);
		}
		60% {
		  opacity: .7;
		  transform : translateX(100%);
		}
		100% {
		  opacity: 0;
		  transform : translateX(100%);
		}
	}
	
}

/*pad*/
@media screen and (min-width: 767px) and (max-width: 1024px) {
	.sp-on{
		display: none !important;
	}
	
	/*header*/
	header{
		width: 100%;
		overflow: hidden;
		position: relative;
		margin: 0 auto 5% auto;
	}
	.mv-logo{
		width: 5%;
		position: absolute;
		right: 0;
		left: 0;
    	bottom: 10%;
		margin: 0 auto;
		z-index: 20;
	}
	.mv-img-box{
		width: 100%;
		display: flex;
		justify-content: flex-start;
	}
	.mv-img{
		width: 50%;
		overflow: hidden;
		position: relative;
	}
	.mv-img .mv-on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title-box{
		width: 35%;
		overflow: hidden;
		position: absolute;
		top: 12%;
		right: 0;
		left: 0%;
		margin: 0 auto;
	}
	.mv-title01{
		width: 100%;
		margin: 0 0 3% 0;
	}
	.mv-title02{
		width: 100%;
		overflow: hidden;
		margin: 0 0 5% 0;
	}
	.mv-title03{
		width: 90%;
		position: relative;
		margin: 0 auto 3% auto;
	}
	.mv-title03 .mv-line{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title04{
		width: 100%;
		margin: 0 auto;
	}
	
	/*read*/
	.read{
		width: 100%;
		margin: 0 auto 10% auto;
	}
	.read .txt{
		width: 100%;
		font-size: 18px;
		letter-spacing: 4px;
		line-height: 2.5em;
		text-align: center;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 auto 5% auto;
	}
	
	
	.rever{
		flex-direction: row-reverse;
	}
	
	.wrap{
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	.bg01{
		width: 100%;
		height: 550px;
		position: absolute;
		bottom: 10%;
		left: 0;
		z-index: -1;
		background:linear-gradient(45deg, #fcf8eb,#fcf8eb,#fff);
	}
	.bg02{
		width: 100%;
		height: 550px;
		position: absolute;
		top: 25%;
		right: 0;
		z-index: -1;
		background:linear-gradient(45deg, #fff,#edf0fe,#edf0fe);
	}
	.bg03{
		width: 100%;
		height: 550px;
		position: absolute;
		bottom: 5%;
		left: 0;
		z-index: -1;
		background:linear-gradient(45deg, #ccd5cc,#ccd5cc,#fff);
	}
	.bg04{
		width: 100%;
		height: 550px;
		position: absolute;
		bottom: 5%;
		right: 0;
		z-index: -1;
		background:linear-gradient(45deg, #fff,#f3f4f8,#f3f4f8);
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	/*item01*/
	.item01{
		width: 100%;
		margin: 0 auto 15% auto;
	}
	.item01 .title-box{
		width: max-content;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 auto 3% auto;
	}
	.item01 .title-box .title01{
		width: max-content;
		position: relative;
		margin: 0 50px 0 0;
	}
	.item01 .title-box .title01 img{
		height: 60px;
	}
	.item01 .title-box .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .title-box .title01 .icon img{
		height: 50px;
	}
	.item01 .title-box .title02{
		width: max-content;
	}
	.item01 .title-box .title02 img{
		height: 50px;
	}
	.item01 .img{
		width: 60%;
		margin: 0 auto 3% auto;
		overflow: hidden;
		position: relative;
	}
	.item01 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .data{
		width: 80%;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.item01 .data .data01{
		width: 45%;
	}
	.item01 .data .data01 .txt{
		font-size: 16px;
		letter-spacing: 2px;
		line-height: 2.5em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item01 .data .data01 .line{
		width: 100%;
		overflow: hidden;
	}
	.item01 .data .data02{
		width: 45%;
	}
	
	.item01 .img02{
		width: 100%;
		margin: 0 auto 3% auto;
		overflow: hidden;
	}
	.item01 .img02 a{
		width: 100%;
		position: relative;
	}
	.item01 .img02 a .img02-01{
		width: 55%;
		padding: 0 0 10% 0;
	}
	.item01 .img02 a .img02-02{
		width: 55%;
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 3;
	}
	
	/*item02*/
	.item02{
		width: 100%;
		margin: 0 auto 15% auto;
		display: flex;
		justify-content: space-between;
	}
	.item02 .img{
		width: 55%;
		position: relative;
		overflow: hidden;
	}
	.item02 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .data{
		width: 50%;
		box-sizing: border-box;
		padding: 3% 7% 0 7%;
	}
	.item02 .data .title-box{
		width: max-content;
		margin: 0 0 10% 0;
	}
	.item02 .data .title-box .title01{
		width: max-content;
		position: relative;
		margin: 0 0 5% 0;
	}
	.item02 .data .title-box .title01 img{
		height: 60px;
	}
	.item02 .data .title-box .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .data .title-box .title01 .icon img{
		height: 50px;
	}
	.item02 .data .title-box .title02{
		width: max-content;
	}
	.item02 .data .title-box .title02 img{
		height: 110px;
	}
	.item02 .data .txt{
		font-size: 16px;
		letter-spacing: 2px;
		line-height: 2.5em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item02 .data .line{
		width: 100%;
		overflow: hidden;
		margin: 0 0 10% 0;
	}
	
	
	
	.on-img {
		opacity : 1;
	}
	.on-img.active{
		opacity : 1;
		animation-name: on-img;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes on-img {
		0% {
		  opacity: 1;
		}
		100% {
		  opacity: 0;
		}
	}
	.img-r {
		opacity : 0;
	}
	.img-r.active{
		opacity : 0;
		animation-name: img-r;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-r {
		0% {
		  opacity: 0;
		  transform: translateX(20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.img-l {
		opacity : 0;
	}
	.img-l.active{
		opacity : 0;
		animation-name: img-l;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-l {
		0% {
		  opacity: 0;
		  transform: translateX(-20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	/*item-end*/
	.item-end {
		width: 100%;
		max-width: 1100px;
		margin: 0 auto 5% auto;
	}
	.item-end .txt {
		width: 100%;
		font-size: 12px;
		letter-spacing: 2px;
		line-height: 2.5em;
		text-align: center;
		color: #474545;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 0 7% 0;
		color: #808080;
	}
	.cap{
		width: 100%;
		text-align: right;
		font-size: 12px;
		letter-spacing: 2px;
		margin: 5% 0 0 0;
	}
	
	.l-icon::before{
        content: url("../img/l-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon::before{
        content: url("../img/s-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	.l-icon02::before{
        content: url("../img/l-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon02::before{
        content: url("../img/s-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	
	/*sid-nav*/
    .side-nav{
		position: fixed;
		display: block;
		width: 120px;
		right: 10px;
        top: 0;
		height: 100vh;
		z-index: 10;
	}
	.side-nav-in{
		width: 120px;
		position: absolute;
		top: 40%;
		-webkit-transform: translateY(-40%); /* Safari用 */
		transform: translateY(-40%);
	}
	.side-nav-in a{
		display: block;
		width: 100%;
		overflow: hidden;
		margin: 0 0 30px 0;
	}
	.side-nav-in a .img{
		width: 100%;
		position: relative;
		margin: 0 0 10px 0;
	}
	.side-nav-in a .img .on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.side-nav-in a:hover .img .on{
		opacity: 1;
		transition: .3s;
	}
	.side-nav-in a .txt{
		width: 100%;
	}
	.side-nav-in a .txt img{
		height: 24px;
		display: block;
	}
	
	/*f-banner*/
	.f-banner{
		width: 100%;
		max-width: 600px;
		margin: 0 auto 5% auto;
	}
	.f-banner-list{
		width: 100%;
		margin: 0 auto;
	}
	.f-banner-list li{
		width: 100%;
		margin: 0 0 3% 0;
	}
	.f-banner-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*f-banner02*/
	.f-banner02{
		border-top: 1px solid #000;
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 5% auto;
		padding: 5% 0 0 0;
	}
	.f-banner02-list{
		width: 100%;
		max-width: 600px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.f-banner02-list li{
		width: 47%;
	}
	.f-banner02-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner02-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*footer*/
	.footer {
		color: #000;
		letter-spacing: 0.3em;
		padding: 0 0 2% 0;
		position: relative;
		text-align: center;
	}
	.footer .insta{
		display: block;
		width: 450px;
		border: 1px solid #eee;
		margin: 0 auto 3% auto;
		transition: .3s;
	}
	.footer .insta:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	.footer_sns {
		margin: 26px 0 0;
	}
	.footer_snsNode {
		display: inline-block;
		margin: 0 10px;
		width: 30px;
	}
	.f-ow{
		width: 120px;
		margin: 25px auto 0 auto;
	}
	.footer_copyright {
		font-family: "Helvetica",serif;
		font-size: 10px;
		letter-spacing: 0.02em;
		margin: 34px 0 0;
	}
	#pagetop{
		position: fixed;
		right: 15px;
		bottom: 20px;
		width: 35px;
		display: block;
		z-index: 99;
	}
	
	/*cart-btm*/
	.cart-btm{
		width: 100%;
		text-decoration: none;
		color: #000;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
	}
	.cart-title{
        width: max-content;
		font-size: 14px;
        letter-spacing: 1px;
        position: absolute;
        line-height: 1.5em;
        white-space: nowrap;
	}
	.cart-title02{
        width: 100%;
		font-size: 14px;
        letter-spacing: 1px;
        line-height: 1.5em;
        white-space: nowrap;
		margin: 0 0 2% 0;
	}
    .cart-title span{
		font-size: 12px;
		color: #fff;
		background: #99999a;
		padding: 1px 5px 1px 5px;
		margin: 0 0 0 10px;
		border-radius: 2px;
        display: inline-block;
	}
    .cart-yen{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        width: 85%;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	 .cart-yen02{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	.cart-yen span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	.cart-yen02 span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	
	/*cart-btm02*/
	.cart-btm02{
		width: 100%;
		text-decoration: none;
		color: #595757;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
		flex-wrap: wrap;
	}
	
	.link-line{
		width: 100%;
		height: 1px;
		background: #a0a0a0;
		margin: 5% 0;
	}
	.link-line02{
		width: 100%;
		height: 1px;
		background: #fff;
		margin: 5% 0;
	}
	
	.cart-btm .btn00{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #fff;
		border: 1px solid #231815;
		display: inline-block;
		text-align: center;
		color: #000;
	}
	.cart-btm:hover .btn00 {
	  background: #231815;
	  border-color: #231815;
	  color: #fff;
	}
	
	.cart-btm .btn01{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #cfc4b9;
		border: 1px solid #cfc4b9;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn01 {
	  background: #fff;
	  border-color: #cfc4b9;
	  color: #cfc4b9;
	}
	
	.cart-btm .btn02{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #5992d2;
		border: 1px solid #5992d2;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn02 {
	  background: #fff;
	  border-color: #5992d2;
	  color: #5992d2;
	}
	
	.cart-btm .btn03{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #f6c6ab;
		border: 1px solid #f6c6ab;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn03 {
	  background: #fff;
	  border-color: #f6c6ab;
	  color: #f6c6ab;
	}
	
	.cart-btm .btn04{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #d88d9c;
		border: 1px solid #d88d9c;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn04 {
	  background: #fff;
	  border-color: #d88d9c;
	  color: #d88d9c;
	}
	
	.btn-border {
	  background-color: transparent;
	  color: #1d1d1d;
	}
	.btn-arrow {
	  position: relative;
	  -webkit-transition: background-color 300ms ease-out;
	  transition: background-color 300ms ease-out;
	}
	.btn-arrow span {
	  display: inline-block;
	  position: relative;
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: transform;
	}
	.cart-btm:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.cart-btm02:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.btn-arrow img {
	  position: absolute;
	  width: 1.1em;
	  right: 0px;
	  right: 0rem;
	  opacity: 0;
	  top: 50%;
	  -webkit-transform: translateY(-50%);
			  transform: translateY(-50%);
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: right, opacity;
	}
	.btn-arrow img * {
	  stroke-width: 5;
	  stroke-color: transparent;
	}
	.cart-btm:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	.cart-btm02:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	
	
	/*anime----------------------------------------------------*/
	/*fade01*/
	.fade01 {
		animation-name: mv01;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade02 {
		animation-name: mv02;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade03 {
		animation-name: mv03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade04 {
		animation-name: mv04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade05 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 3s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade06 {
		animation-name: mv05-2;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 3.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade07 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 4s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes mv01 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv02 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 0;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv03 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv04 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv04-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv05 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv05-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	
	
	.fadein-up {
		opacity : 0;
	}
	.fadein-up.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-up02 {
		opacity : 0;
	}
	.fadein-up02.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up {
		0% {
		  opacity: 0;
		  transform: translateY(30px)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	
	.fadein-up-zoom {
		opacity : 0;
	}
	.fadein-up-zoom.active{
		opacity : 1;
		animation-name: fadein-up-zoom;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-up-zoom02 {
		opacity : 1;
		  transform: scale(1.1);
	}
	.fadein-up-zoom02.active{
		opacity : 1;
		animation-name: fadein-up-zoom02;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes fadein-up-zoom02 {
		0% {
		  opacity: 1;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-zoom {
		opacity : 0;
	}
	.fadein-zoom.active{
		opacity : 1;
		animation-name: fadein-zoom;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1) rotate(-20deg);
		}
		100% {
		  opacity: 1;
		  transform: scale(1) rotate(0deg);
		}
	}
	
	.fadein-l {
		opacity : 0;
	}
	.fadein-l.active{
		opacity : 1;
		animation-name: fadein-l;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-l {
		0% {
		  opacity: 0;
		  transform: translateX(30px);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.fadein-r {
		opacity : 0;
	}
	.fadein-r.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02 {
		opacity : 0;
	}
	.fadein-r02.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02-2 {
		opacity : 0;
	}
	.fadein-r02-2.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-r {
		0% {
		  opacity: 0;
		  transform: translateX(-30px);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.color-down {
		opacity : 1;
	}
	.color-down.active{
		opacity : 1;
		animation-name: color-down;
		animation-duration: 3s;
		animation-timing-function: ease-out;
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes color-down {
		0% {
		  opacity: .3;
		}
		100% {
		  opacity: .1;
		}
	}
	
	.line-ani01 {
		opacity : 0;
	}
	.line-ani01.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani01-2 {
		opacity : 0;
	}
	.line-ani01-2.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani01 {
		0% {
		  opacity: 0;
		  transform: translateY(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani02 {
		opacity : 0;
	}
	.line-ani02.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani02-2 {
		opacity : 0;
	}
	.line-ani02-2.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani02 {
		0% {
		  opacity: 0;
		  transform: translateY(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani03 {
		opacity : 0;
	}
	.line-ani03.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani03-2 {
		opacity : 0;
	}
	.line-ani03-2.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani03 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.line-ani04 {
		opacity : 0;
	}
	.line-ani04.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani04-2 {
		opacity : 0;
	}
	.line-ani04-2.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani04 {
		0% {
		  opacity: 0;
		  transform: translateX(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	.rote {
		opacity : 1;
	}
	.rote.active{
		opacity : 1;
		animation-name: rote;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes rote {
		0% {
		  transform: rotateY(0deg);
		}
		100% {
		  transform: rotateY(360deg);
		}
	}
	
	.in-btn{
		width: 40px;
		margin: 0 auto 1% auto;
		display: block;
		opacity: 1;
	}
	
	/*ls-icon*/
	.toggle {
		display: none;
	}
	.Label {
		display: block;
		box-sizing: border-box;
		font-size: 13px;
    	letter-spacing: 1px;
		padding: 10px 0 10px 0;
	}
	.Label::after,
	.Label::before {
		content: "";
		position: absolute;
		right: 1em;
		top: 50%;
		-webkit-transform: translateY(-50%); /* Safari用 */
		transform: translateY(-50%);
		width: 1px;
		height: 16px;
		background-color: #000;
		transition: all 0.3s;
	}
	.Label::after {
		transform: rotate(90deg);
		width: 1px;
		height: 25px;
		top: 7px;
	}
	.Label,
	.content {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		transform: translateZ(0);
		transition: all 0.3s;
	}
	.content {
		height: 0;
		margin-bottom:10px;
		overflow: hidden;
	}
	.toggle:checked + .Label + .content {
		height: auto;
		border-top: 0.7px solid #000;
		padding: 2% 0 0 0;
		transition: all .3s;
	}
	.toggle:checked + .Label::after {
		transform: rotate(90deg) translateY(0) !important;
		height: 20px;
    	top: 10px;
	}
	.toggle:checked + .Label::before {
		transform: rotate(0deg) translateY(10px)  !important;
		opacity: 0;
	}
	
	/*nav*/
	.menu{
		height: 20px;
		position: fixed;
		left: 15px;
		top: 25px;
		width: 30px;
		z-index: 99;
	}
	.menu__line{
		background: rgba(0,0,0,0.00);
		display: block;
		height: 1px;
		position: absolute;
		transition:transform .3s;
		width: 100%;
	}
	
	.menu__line--icon{
		width: 30px;
		padding: 0!important;
		margin: 0!important;
		position: relative;
		top: -10px;
	}
	.menu__line--center{
		top: 9px;
	}
	.menu__line--bottom{
		bottom: 0;
	}
	.menu__line--icon.active{
		display: none;
	}
	.menu__line--top.active{
		background: rgba(69,131,126,1.00);
		top: 8px;
		transform: rotate(45deg);
	}
	.menu__line--center.active{
		background: rgba(69,131,126,1.00);
		transform:scaleX(0);
	}
	.menu__line--bottom.active{
		background: rgba(69,131,126,1.00);
		bottom: 10px;
		transform: rotate(135deg);
	}
	
	/*gnav*/
	.gnav{
		background: rgba(255,255,255,0.9);
		display: none;
		height: 100%;
		position: fixed;
		width: 100%;
		z-index: 98!important;
		top: 0;
		left: 0;
		-webkit-backdrop-filter: blur(5px);
		backdrop-filter: blur(5px);
	}
	.gnav__wrap{
		align-items:center;
		display: flex;
		flex-wrap: wrap;
		height: auto;
		justify-content: center;
		position: absolute;
		width: 100%;
		top: 45%;
        -webkit-transform: translateY(-45%); /* Safari用 */
        transform: translateY(-45%);
	}
	.gnav__menu{
		width: 100%;
		max-width: 1000px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.gnav__menu li{
		width: 23%;
		margin: 0 auto 10% auto;
	}
	.gnav-link .img{
		width: 100%;
		position: relative;
		margin: 0 0 5% 0;
	}
	.gnav-link .img .on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.gnav-link:hover .img .on{
		opacity: 1;
		transition: .3s;
	}
	.gnav-link .txt{
		width: 100%;
	}
	.gnav-link .txt img{
		height: 40px;
		margin: 0 auto;
		display: block;
	}
	
	
	.grad-btn {
		background: #000;
		color: #fff;
		text-align: center;
		display: block;
		margin: 5% auto 0 auto;
		font-size: 12px;
		padding: 1% 0;
	}
	.grad-btn::before {
	  content: "READ MORE"
	}
	.grad-item {
	  position: relative;
	  overflow: hidden;
	  height: 35px; /*隠した状態の高さ*/
	}
	.grad-item::before {
	  display: block;
	  position: absolute;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 35px; 
	  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  content: "";
	}
	.grad-trigger {
	  display: none; 
	}
	.grad-trigger:checked ~ .grad-btn::before {
	  content: "CLOSE" 
	}
	.grad-trigger:checked ~ .grad-item {
	  height: auto;
	}
	.grad-trigger:checked ~ .grad-item::before {
	  display: none;
	}
	
	.display {
		opacity : 0;
		transition : all 0.5s;
	}
	.display.active{
		opacity : 1;
	}
	
	
	.gbc01{
		background: #eed4b7;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc02{
		background: #d34152;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc03{
		background: #073f8b;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc04{
		background: #57554D;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc05{
		background: #dee3e8;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	
	.gbc07{
		background: #000000;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	
	.gb01 {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity : 1;
		transform : translate(0, 0);
		transition : all 1s;
		z-index: 9999;
	}
	.gb01.active{
		position: absolute;
		top: 0;
		left: 0;
		animation-name: fade-in-img01;
		animation-duration: 1.5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		
	}
	@keyframes fade-in-img01 {
		0% {
		  opacity: 1;
		  transform : translateX(0%);
		}
		60% {
		  opacity: .7;
		  transform : translateX(100%);
		}
		100% {
		  opacity: 0;
		  transform : translateX(100%);
		}
	}
	
}

/*//////////////////////////////// for iphone ////////////////////////////*/
@media (min-width:0px) and ( max-width:766px) {
	.pc-on{
		display: none !important;
	}
	
	/*header*/
	header{
		width: 100%;
		overflow: hidden;
		position: relative;
		margin: 0 auto 2% auto;
	}
	.mv-logo{
		width: 15%;
		position: absolute;
		left: 5%;
		top: 2%;
		z-index: 10;
	}
	.mv-img-box{
		width: 100%;
		display: flex;
		justify-content: flex-start;
	}
	.mv-img{
		width: 50%;
		overflow: hidden;
		position: relative;
	}
	.mv-img .mv-on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title-box{
		width: 90%;
		overflow: hidden;
		position: absolute;
		bottom: 5%;
		right: 0;
		left: 0%;
		margin: 0 auto;
	}
	.mv-title01{
		width: 80%;
		position: relative;
		margin: 0 0 3% 0;
	}
	.mv-title01 .mv-line{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.mv-title02{
		width: 100%;
		margin: 0 auto;
	}
	.sp-mv-title{
		width: 80%;
		overflow: hidden;
		margin: 0 auto 10% auto;
	}
	.mv-title03{
		width: 100%;
		margin: 0 auto 5% auto;
	}
	.mv-title04{
		width: 100%;
		height: 5px;
		position: relative;
		margin: 0 auto;
	}
	.mv-title04 img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	
	/*read*/
	.read{
		width: 100%;
		margin: 0 auto 10% auto;
	}
	.read .txt{
		width: 100%;
		font-size: 17px;
		letter-spacing: 2px;
		line-height: 2.5em;
		text-align: center;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 auto 5% auto;
	}
	
	
	.rever{
		flex-direction: row-reverse;
	}
	
	.wrap{
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	.bg01{
		width: 100%;
		height: 550px;
		position: absolute;
		top: 20%;
		left: 0;
		z-index: -1;
		background:linear-gradient(45deg, #fcf8eb,#fcf8eb,#fff);
	}
	.bg02{
		width: 100%;
		height: 550px;
		position: absolute;
		top: 10%;
		right: 0;
		z-index: -1;
		background:linear-gradient(45deg, #fff,#edf0fe,#edf0fe);
	}
	.bg03{
		width: 100%;
		height: 550px;
		position: absolute;
		top: 20%;
		left: 0;
		z-index: -1;
		background:linear-gradient(45deg, #ccd5cc,#ccd5cc,#fff);
	}
	.bg04{
		width: 100%;
		height: 550px;
		position: absolute;
		top: 20%;
		right: 0;
		z-index: -1;
		background:linear-gradient(45deg, #fff,#f3f4f8,#f3f4f8);
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	/*item01*/
	.item01{
		width: 100%;
		margin: 0 auto 15% auto;
	}
	.item01 .title-box{
		width: max-content;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 auto 5% auto;
	}
	.item01 .title-box .title01{
		width: max-content;
		position: relative;
	}
	.item01 .title-box .title01 img{
		height: 50px;
	}
	.item01 .title-box .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .title-box .title01 .icon img{
		height: 50px;
	}
	.item01 .data .data01 .title02{
		width: max-content;
		margin: 0 0 5% 0;
	}
	.item01 .data .data01 .title02 img{
		height: 100px;
	}
	.item01 .img{
		width: 100%;
		margin: 0 auto 5% auto;
		overflow: hidden;
		position: relative;
	}
	.item01 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .data{
		width: 85%;
		margin: 0 auto;
	}
	.item01 .data .data01{
		width: 100%;
		margin: 0 0 7% 0;
	}
	.item01 .data .data01 .txt{
		font-size: 15px;
		letter-spacing: 2px;
		line-height: 2em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item01 .data .data01 .line{
		width: 100%;
		height: 8px;
		overflow: hidden;
		position: relative;
		margin: 0 0 7% 0;
	}
	.item01 .data .data01 .line img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item01 .data .data02{
		width: 100%;
	}
	
	.item01 .img02{
		width: 100%;
		margin: 0 auto 3% auto;
		overflow: hidden;
	}
	.item01 .img02 a{
		width: 100%;
		position: relative;
	}
	.item01 .img02 a .img02-01{
		width: 55%;
		padding: 0 0 10% 0;
	}
	.item01 .img02 a .img02-02{
		width: 55%;
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 3;
	}
	
	/*item02*/
	.item02{
		width: 100%;
		margin: 0 auto 15% auto;
	}
	.item02 .img{
		width: 100%;
		position: relative;
		overflow: hidden;
		margin: 0 auto 5% auto;
	}
	.item02 .img .on-img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .data{
		width: 85%;
		margin: 0 auto;
	}
	.item02 .data .title-box{
		width: max-content;
		margin: 0 0 5% 0;
	}
	.item02 .title01{
		width: max-content;
		position: relative;
		margin: 0 auto 5% auto;
	}
	.item02 .title01 img{
		height: 50px;
	}
	.item02 .title01 .icon{
		position: absolute;
		top: 0;
		left: 0;
	}
	.item02 .title01 .icon img{
		height: 50px;
	}
	.item02 .data .title-box .title02{
		width: max-content;
	}
	.item02 .data .title-box .title02 img{
		height: 100px;
	}
	.item02 .data .txt{
		font-size: 15px;
		letter-spacing: 2px;
		line-height: 2em;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		text-align: justify;
		margin: 0 0 5% 0;
	}
	.item02 .data .line{
		width: 100%;
		height: 8px;
		overflow: hidden;
		position: relative;
		margin: 0 0 7% 0;
	}
	.item02 .data .line img{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	
	
	
	.on-img {
		opacity : 1;
	}
	.on-img.active{
		opacity : 1;
		animation-name: on-img;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes on-img {
		0% {
		  opacity: 1;
		}
		100% {
		  opacity: 0;
		}
	}
	.img-r {
		opacity : 0;
	}
	.img-r.active{
		opacity : 0;
		animation-name: img-r;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-r {
		0% {
		  opacity: 0;
		  transform: translateX(20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.img-l {
		opacity : 0;
	}
	.img-l.active{
		opacity : 0;
		animation-name: img-l;
		animation-duration: 2s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes img-l {
		0% {
		  opacity: 0;
		  transform: translateX(-20%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	.item-end {
		width: 100%;
		max-width: 1100px;
		margin: 0 auto 5% auto;
	}
	.item-end .txt {
		width: 100%;
		font-size: 10px;
		letter-spacing: 1px;
		line-height: 2.5em;
		text-align: center;
		color: #474545;
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		margin: 0 0 10% 0;
		color: #808080;
	}
	.cap{
		width: 100%;
		text-align: right;
		font-size: 12px;
		letter-spacing: 2px;
		margin: 5% 0 0 0;
	}
	
	.l-icon::before{
        content: url("../img/l-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon::before{
        content: url("../img/s-size.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	.l-icon02::before{
        content: url("../img/l-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
    .s-icon02::before{
        content: url("../img/s-size02.svg");
        width: 17px;
        height: 17px;
        display: inline-block;
        background-size: 17px 17px;
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
    }
	
	/*sid-nav*/
    .side-nav{
		display: none;
	}
	.side-nav-in{
		display: none;
	}
	.side-nav-in a{
		display: none;
	}
	.side-nav-in a:hover{
		display: none;
	}
	
	/*f-banner*/
	.f-banner{
		width: 70%;
		margin: 0 auto 10% auto;
	}
	.f-banner-list{
		width: 100%;
		margin: 0 auto;
	}
	.f-banner-list li{
		width: 100%;
		margin: 0 0 5% 0;
	}
	.f-banner-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*f-banner02*/
	.f-banner02{
		border-top: 1px solid #000;
		width: 100%;
		margin: 0 auto 10% auto;
		padding: 10% 0 0 0;
	}
	.f-banner02-list{
		width: 80%;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.f-banner02-list li{
		width: 47%;
	}
	.f-banner02-list li a{
		width: 100%;
		display: block;
		border: 1px solid #000;
		transition: .3s;
	}
	.f-banner02-list li a:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	
	/*footer*/
	.footer {
		color: #000;
		letter-spacing: 0.3em;
		padding: 0 0 10% 0;
		position: relative;
		text-align: center;
	}
	.footer .insta{
		display: block;
		width: 450px;
		border: 1px solid #eee;
		margin: 0 auto 3% auto;
		transition: .3s;
	}
	.footer .insta:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	.footer_sns {
		margin: 26px 0 0;
	}
	.footer_snsNode {
		display: inline-block;
		margin: 0 10px;
		width: 30px;
	}
	.f-ow{
		width: 120px;
		margin: 25px auto 0 auto;
	}
	.footer_copyright {
		font-family: "Helvetica",serif;
		font-size: 10px;
		letter-spacing: 0.02em;
		margin: 34px 0 0;
	}
	
	/*cart-btm*/
	.cart-btm{
		width: 100%;
		text-decoration: none;
		color: #000;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
	}
	.cart-title{
        width: max-content;
		font-size: 14px;
        letter-spacing: 1px;
        position: absolute;
        line-height: 1.5em;
        white-space: nowrap;
	}
	.cart-title02{
        width: 100%;
		font-size: 14px;
        letter-spacing: 1px;
        line-height: 1.5em;
        white-space: nowrap;
		margin: 0 0 2% 0;
	}
    .cart-title span{
		font-size: 12px;
		color: #fff;
		background: #99999a;
		padding: 1px 5px 1px 5px;
		margin: 0 0 0 10px;
		border-radius: 2px;
        display: inline-block;
	}
    .cart-yen{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        width: 85%;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	 .cart-yen02{
		font-size: 15px;
		line-height: 1.9;
    	letter-spacing: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        white-space: nowrap;
		font-family: "Noto Sans JP", sans-serif !important;
		box-sizing: border-box;
		padding: 0 10px 0 0;
	}
	.cart-yen span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	.cart-yen02 span{
		font-size: 11px;
    	letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 0px;
	}
	
	/*cart-btm02*/
	.cart-btm02{
		width: 100%;
		text-decoration: none;
		color: #595757;
		transition: 0.3s;
		line-height: 1.5em;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 2% 0;
		font-family: "Noto Sans JP", sans-serif !important;
		position: relative;
		flex-wrap: wrap;
	}
	
	.link-line{
		width: 100%;
		height: 1px;
		background: #a0a0a0;
		margin: 5% 0;
	}
	.link-line02{
		width: 100%;
		height: 1px;
		background: #fff;
		margin: 5% 0;
	}
	
	.cart-btm .btn00{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #fff;
		border: 1px solid #231815;
		display: inline-block;
		text-align: center;
		color: #000;
	}
	.cart-btm:hover .btn00 {
	  background: #231815;
	  border-color: #231815;
	  color: #fff;
	}
	
	.cart-btm .btn01{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #cfc4b9;
		border: 1px solid #cfc4b9;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn01 {
	  background: #fff;
	  border-color: #cfc4b9;
	  color: #cfc4b9;
	}
	
	.cart-btm .btn02{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #5992d2;
		border: 1px solid #5992d2;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn02 {
	  background: #fff;
	  border-color: #5992d2;
	  color: #5992d2;
	}
	
	.cart-btm .btn03{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #f6c6ab;
		border: 1px solid #f6c6ab;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn03 {
	  background: #fff;
	  border-color: #f6c6ab;
	  color: #f6c6ab;
	}
	
	.cart-btm .btn04{
		font-size: 11px;
		line-height: 1.5em;
		width: 70px;
		padding: 5px 0 5px 0;
		background: #d88d9c;
		border: 1px solid #d88d9c;
		display: inline-block;
		text-align: center;
		color: #fff;
	}
	.cart-btm:hover .btn04 {
	  background: #fff;
	  border-color: #d88d9c;
	  color: #d88d9c;
	}
	
	.btn-border {
	  background-color: transparent;
	  color: #1d1d1d;
	}
	.btn-arrow {
	  position: relative;
	  -webkit-transition: background-color 300ms ease-out;
	  transition: background-color 300ms ease-out;
	}
	.btn-arrow span {
	  display: inline-block;
	  position: relative;
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: transform;
	}
	.cart-btm:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.cart-btm02:hover .btn-arrow span {
	  -webkit-transform: translate3d(-.5rem, 0, 0);
			  transform: translate3d(-.5rem, 0, 0);
	}
	.btn-arrow img {
	  position: absolute;
	  width: 1.1em;
	  right: 0px;
	  right: 0rem;
	  opacity: 0;
	  top: 50%;
	  -webkit-transform: translateY(-50%);
			  transform: translateY(-50%);
	  -webkit-transition: all 300ms ease-out;
	  transition: all 300ms ease-out;
	  will-change: right, opacity;
	}
	.btn-arrow img * {
	  stroke-width: 5;
	  stroke-color: transparent;
	}
	.cart-btm:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	.cart-btm02:hover .btn-arrow img {
	  opacity: 1;
	  right: -1rem;
	}
	
	
	/*anime----------------------------------------------------*/
	/*fade01*/
	.fade01 {
		animation-name: mv01;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade02 {
		animation-name: mv02;
		animation-duration: 5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade03 {
		animation-name: mv03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade04 {
		animation-name: mv04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade05 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade06 {
		animation-name: mv05-2;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fade07 {
		animation-name: mv05;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes mv01 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv02 {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 0;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	@keyframes mv03 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv04 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv04-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	@keyframes mv05 {
		0% {
		  opacity: 0;
		  transform: translateY(10%);
		}
		100% {
		  opacity: 1;
		  transform: translateY(0);
		}
	}
	@keyframes mv05-2 {
		0% {
		  opacity: 0;
		  transform: translateX(-10%);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0);
		}
	}
	
	
	.fadein-up {
		opacity : 0;
	}
	.fadein-up.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-up02 {
		opacity : 0;
	}
	.fadein-up02.active{
		opacity : 1;
		animation-name: fadein-up;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up {
		0% {
		  opacity: 0;
		  transform: translateY(30px)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	
	.fadein-up-zoom {
		opacity : 0;
	}
	.fadein-up-zoom.active{
		opacity : 1;
		animation-name: fadein-up-zoom;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-up-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-up-zoom02 {
		opacity : 1;
		  transform: scale(1.1);
	}
	.fadein-up-zoom02.active{
		opacity : 1;
		animation-name: fadein-up-zoom02;
		animation-duration: 6s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes fadein-up-zoom02 {
		0% {
		  opacity: 1;
		  transform: scale(1.1);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: scale(1);
		}
	}
	
	.fadein-zoom {
		opacity : 0;
	}
	.fadein-zoom.active{
		opacity : 1;
		animation-name: fadein-zoom;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-zoom {
		0% {
		  opacity: 0;
		  transform: scale(1.1) rotate(-20deg);
		}
		100% {
		  opacity: 1;
		  transform: scale(1) rotate(0deg);
		}
	}
	
	.fadein-l {
		opacity : 0;
	}
	.fadein-l.active{
		opacity : 1;
		animation-name: fadein-l;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-l {
		0% {
		  opacity: 0;
		  transform: translateX(30px);
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.fadein-r {
		opacity : 0;
	}
	.fadein-r.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: .5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02 {
		opacity : 0;
	}
	.fadein-r02.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.fadein-r02-2 {
		opacity : 0;
	}
	.fadein-r02-2.active{
		opacity : 1;
		animation-name: fadein-r;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes fadein-r {
		0% {
		  opacity: 0;
		  transform: translateX(-30px);
		}
		20% {
		  opacity: 1;
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px);
		}
	}
	
	.color-down {
		opacity : 1;
	}
	.color-down.active{
		opacity : 1;
		animation-name: color-down;
		animation-duration: 3s;
		animation-timing-function: ease-out;
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes color-down {
		0% {
		  opacity: .3;
		}
		100% {
		  opacity: .1;
		}
	}
	
	.line-ani01 {
		opacity : 0;
	}
	.line-ani01.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani01-2 {
		opacity : 0;
	}
	.line-ani01-2.active{
		opacity : 1;
		animation-name: line-ani01;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani01 {
		0% {
		  opacity: 0;
		  transform: translateY(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani02 {
		opacity : 0;
	}
	.line-ani02.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani02-2 {
		opacity : 0;
	}
	.line-ani02-2.active{
		opacity : 1;
		animation-name: line-ani02;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani02 {
		0% {
		  opacity: 0;
		  transform: translateY(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateY(0px)
		}
	}
	.line-ani03 {
		opacity : 0;
	}
	.line-ani03.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani03-2 {
		opacity : 0;
	}
	.line-ani03-2.active{
		opacity : 1;
		animation-name: line-ani03;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani03 {
		0% {
		  opacity: 0;
		  transform: translateX(-100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	.line-ani04 {
		opacity : 0;
	}
	.line-ani04.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	.line-ani04-2 {
		opacity : 0;
	}
	.line-ani04-2.active{
		opacity : 1;
		animation-name: line-ani04;
		animation-duration: 1s;
		animation-timing-function: ease-out;
		animation-delay: 2s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		opacity: 0;
	}
	@keyframes line-ani04 {
		0% {
		  opacity: 0;
		  transform: translateX(100%)
		}
		100% {
		  opacity: 1;
		  transform: translateX(0px)
		}
	}
	
	.rote {
		opacity : 1;
	}
	.rote.active{
		opacity : 1;
		animation-name: rote;
		animation-duration: .5s;
		animation-timing-function: ease-out;
		animation-delay: 1.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
	}
	@keyframes rote {
		0% {
		  transform: rotateY(0deg);
		}
		100% {
		  transform: rotateY(360deg);
		}
	}
	
	.in-btn{
		width: 40px;
		margin: 0 auto 1% auto;
		display: block;
		opacity: 1;
	}
	
	/*ls-icon*/
	.toggle {
		display: none;
	}
	.Label {
		display: block;
		box-sizing: border-box;
		font-size: 13px;
    	letter-spacing: 1px;
		padding: 10px 0 10px 0;
	}
	.Label::after,
	.Label::before {
		content: "";
		position: absolute;
		right: 1em;
		top: 50%;
		-webkit-transform: translateY(-50%); /* Safari用 */
		transform: translateY(-50%);
		width: 1px;
		height: 16px;
		background-color: #000;
		transition: all 0.3s;
	}
	.Label::after {
		transform: rotate(90deg);
		width: 1px;
		height: 25px;
		top: 7px;
	}
	.Label,
	.content {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		transform: translateZ(0);
		transition: all 0.3s;
	}
	.content {
		height: 0;
		margin-bottom:10px;
		overflow: hidden;
	}
	.toggle:checked + .Label + .content {
		height: auto;
		border-top: 0.7px solid #000;
		padding: 2% 0 0 0;
		transition: all .3s;
	}
	.toggle:checked + .Label::after {
		transform: rotate(90deg) translateY(0) !important;
		height: 20px;
    	top: 10px;
	}
	.toggle:checked + .Label::before {
		transform: rotate(0deg) translateY(10px)  !important;
		opacity: 0;
	}
	
	.foot_fix_btn {
		position: fixed;
		z-index: 99;
		bottom: 0;
		left: 0;
		width: 100%;
		-webkit-transition: all 0.5s;
		transition: all 0.5s;
		backdrop-filter: blur(10px);
		-ms-backdrop-filter: blur(10px);
		background: rgba(255,255,255,0.8);
	}
	.foot_fix_btn.js_hide {
		transform: translateY(100%);
	}
	.foot_fix_btn ul {
		width: 100%;
		display: flex;
		justify-content: flex-start;
	}
	.foot_fix_btn ul li {
		width: 25%;
		box-sizing: border-box;
		padding: 0 0 10px 0;
	}
	
	#pagetop{
		position: fixed;
		right: 10px;
		bottom: 10px;
		width: 35px;
		display: block;
		z-index: 10;
	}
	
	/*nav*/
	.menu{
		height: 20px;
		position: fixed;
		left: 15px;
		top: 25px;
		width: 30px;
		z-index: 99;
	}
	.menu__line{
		background: rgba(0,0,0,0.00);
		display: block;
		height: 1px;
		position: absolute;
		transition:transform .3s;
		width: 100%;
	}
	
	.menu__line--icon{
		width: 30px;
		padding: 0!important;
		margin: 0!important;
		position: relative;
		top: -10px;
	}
	.menu__line--center{
		top: 9px;
	}
	.menu__line--bottom{
		bottom: 0;
	}
	.menu__line--icon.active{
		display: none;
	}
	.menu__line--top.active{
		background: rgba(69,131,126,1.00);
		top: 8px;
		transform: rotate(45deg);
	}
	.menu__line--center.active{
		background: rgba(69,131,126,1.00);
		transform:scaleX(0);
	}
	.menu__line--bottom.active{
		background: rgba(69,131,126,1.00);
		bottom: 10px;
		transform: rotate(135deg);
	}
	
	/*gnav*/
	.gnav{
		background: rgba(255,255,255,0.9);
		display: none;
		height: 100%;
		position: fixed;
		width: 100%;
		z-index: 98!important;
		top: 0;
		left: 0;
		-webkit-backdrop-filter: blur(5px);
		backdrop-filter: blur(5px);
	}
	.gnav__wrap{
		align-items:center;
		display: flex;
		flex-wrap: wrap;
		height: auto;
		justify-content: center;
		position: absolute;
		width: 100%;
		top: 45%;
        -webkit-transform: translateY(-45%); /* Safari用 */
        transform: translateY(-45%);
	}
	.gnav__wrap .logo{
		width: 7%;
		margin: 0 46.5%;
	}
	.gnav__menu{
		width: 85%;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin: 0 auto;
	}
	.gnav__menu li{
		width: 47%;
		margin: 0 auto 7% auto;
	}
	.gnav-link .img{
		width: 100%;
		position: relative;
		margin: 0 0 5% 0;
	}
	.gnav-link .img .on{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.gnav-link:hover .img .on{
		opacity: 1;
		transition: .3s;
	}
	.gnav-link .txt{
		width: 100%;
	}
	.gnav-link .txt img{
		height: 30px;
		margin: 0 auto;
		display: block;
	}
	
	.grad-btn {
		background: #000;
		color: #fff;
		text-align: center;
		display: block;
		margin: 5% auto 0 auto;
		font-size: 12px;
		padding: 1% 0;
	}
	.grad-btn::before {
	  content: "READ MORE"
	}
	.grad-item {
	  position: relative;
	  overflow: hidden;
	  height: 35px; /*隠した状態の高さ*/
	}
	.grad-item::before {
	  display: block;
	  position: absolute;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 35px; 
	  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	  content: "";
	}
	.grad-trigger {
	  display: none; 
	}
	.grad-trigger:checked ~ .grad-btn::before {
	  content: "CLOSE" 
	}
	.grad-trigger:checked ~ .grad-item {
	  height: auto;
	}
	.grad-trigger:checked ~ .grad-item::before {
	  display: none;
	}
	
	.display {
		opacity : 0;
		transition : all 0.5s;
	}
	.display.active{
		opacity : 1;
	}
	
	
	.gbc01{
		background: #eed4b7;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc02{
		background: #d34152;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc03{
		background: #073f8b;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc04{
		background: #57554D;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc05{
		background: #dee3e8;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc06{
		background: #57554D;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	.gbc07{
		background: #000000;
		background-size: 200% 200%;
		animation: bggradient 3s linear infinite;
	}
	
	@keyframes bggradient{
		0% {
			background-position: 0% 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0% 50%;
		}
	}
	
	
	.gb01 {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity : 1;
		transform : translate(0, 0);
		transition : all 1s;
		z-index: 9999;
	}
	.gb01.active{
		position: absolute;
		top: 0;
		left: 0;
		animation-name: fade-in-img01;
		animation-duration: 1.5s;
		animation-timing-function: ease-out;
		animation-delay: 1s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: forwards;
		
	}
	@keyframes fade-in-img01 {
		0% {
		  opacity: 1;
		  transform : translateX(0%);
		}
		60% {
		  opacity: .7;
		  transform : translateX(100%);
		}
		100% {
		  opacity: 0;
		  transform : translateX(100%);
		}
	}
	
}
