@charset "utf-8";
/* 
	
CSS base.css */

@import url('//fonts.googleapis.com/css2?family=Red+Hat+Display:wght@700&display=swap');

/*
base #333
main #005188
*/





/*//////////////////


Nav


//////////////////*/


#gnav:after { content: "."; display: block; clear: both; height: 0; visibility: hidden; font-size:0em; overflow:hidden; line-height:0; font-size: 0.1em; }
#gnav { vertical-align: middle; width: 100vw; height: 100vh;  z-index: 100000000; -webkit-perspective: 500px; perspective: 500px; pointer-events: none; padding: 0; z-index: 30001; max-width: none; text-align: right; vertical-align: inherit; position: fixed; top: 0; right: 0; bottom: 0; left: 0; font-weight: 700; display: block; overflow: hidden; }
#gnav, #gnav  .scrollcover{ display: block; height: 100vh }
#gnav .navbox{ position: relative; z-index: 10; display: flex; flex-direction: row; }
#gnav>.scrollcover{  }

.navlist{  }
#gnav.navlist .incnt>.mainlistcover{ height: 100vh; width: 100%; padding-left: 150px; box-sizing: border-box; }
#gnav.navlist .incnt>.mainlistcover>.inwrap{ overflow: hidden; padding-top: 0; padding-bottom: 0; height: 100%; }
#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap{ overflow-y: scroll; height: 100%;  /* Safari用 */ width: calc(100% + 20px); padding: 0 2% 0; box-sizing: border-box; display: flex; justify-content: center; align-items: center; padding-left: 6%; }
#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap>.inwrap{ display: flex; flex-direction: row; justify-content: space-between; text-align: left; width: 76%; padding-bottom: 50px; padding-top: 50px; }
#gnav.navlist .leftbox,
#gnav.navlist .rightbox{ display: flex; justify-content: center; flex-direction: column; transition: .4s; }
#gnav.navlist .leftbox{ width: 336px; }

#gnav.navlist .mainlist>li{  transition: .3s; opacity: 0; margin-bottom: 25px; line-height: 1.6; }
#gnav.navlist .mainlist>li>a,
#gnav.navlist .mainlist>li>div{text-decoration: none;display: inline-block;font-size: 2.4rem;letter-spacing: 0.1em;}
#gnav.navlist .mainlist>li>div>p{ display: inline-block; position: relative; padding-right: 30px; }
#gnav.navlist .mainlist>li>div>p:after{ content: ""; position: absolute; width: 14px; height: 10px; background: linear-gradient(to top right, rgba(255,255,255,0) 50%, #014098 50.5%) no-repeat top left/50% 100%, linear-gradient(to top left, rgba(255,255,255,0) 50%, #014098 50.5%) no-repeat top right/50% 100%; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; right: 0; }
#gnav.navlist .mainlist>li>div>p.open:after{ transform: rotate(180deg); }
#gnav.navlist .mainlist>li a,
#gnav.navlist .mainlist>li>div>p{font-weight: bold;font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; cursor: pointer; }
#gnav.navlist .mainlist>li a:hover{ color: #014098 }
#gnav.navlist .mainlist>li.hassub>div+.sub{ margin-left: -20px; text-align: left; padding-top: 10px; padding-bottom: 15px; display: none; }
#gnav.navlist .mainlist>li.hassub>div+.sub>li{ display: inline-block; vertical-align: middle; margin-left: 20px }
#gnav.navlist .mainlist>li.hassub>div+.sub>li>a{ text-decoration: none; font-size: 2.0rem; line-height: 2; }

#gnav.navlist .leftbox .box1{  transition: .3s; opacity: 0; margin-top: 20px; }
#gnav.navlist .leftbox .box1 .mailbox{ margin-top: 5px; }
#gnav.navlist .leftbox .box1 .mailbox>a{ font-weight: bold; font-size: 2.4rem; color: #014098; text-decoration: none; letter-spacing: 0.1em; }
#gnav.navlist .leftbox .box1 .mailbox>a:hover{ color: #b81177; }
#gnav.navlist .leftbox .box1 .mailbox>a>svg{ width: 28px; height: 22px; margin-right: 10px; vertical-align: -2px; }
#gnav.navlist .leftbox .box1 .mailbox>a>svg .mail_icon_st0.st0{ transition: .4s; }
#gnav.navlist .leftbox .box1 .mailbox>a:hover>svg .mail_icon_st0.st0{ fill:#b81177; }

#gnav.navlist .rightbox{ flex-shrink: 0; width: 470px; margin-left: 6%; }
#gnav.navlist .rightbox .imglist{ margin-left: -10px; display: flex; flex-direction: row; transition: .3s; opacity: 0; }
#gnav.navlist .rightbox .imglist>li{ margin-left: 10px; width: calc(50% - 10px); }
#gnav.navlist .rightbox .imglist>li>img{ object-fit: cover; font-family: 'object-fit: cover;';   }
#gnav.navlist .rightbox .imglist+.txt{ transition: .3s; opacity: 0; margin-top: 20px; }
#gnav.navlist .rightbox .list1{ transition: .3s; opacity: 0; margin-left: -15px; }
#gnav.navlist .rightbox .list1>li{ margin-left: 15px; margin-top: 10px; display: inline-block; }
#gnav.navlist .rightbox .list1>li.insta>a{ font-weight: bold; font-size: 2.4rem; color: #014098; text-decoration: none; letter-spacing: 0.1em; }
#gnav.navlist .rightbox .list1>li.insta>a>svg{width: 28px;height: 28px;margin-right: 10px;vertical-align: -3px; vertical-align: text-bottom; }
#gnav.navlist .rightbox .list1>li.insta>a>svg .insta_icon_st0.st0{ transition: .4s; }
#gnav.navlist .rightbox .list1>li.insta>a:hover>svg .insta_icon_st0.st0{ fill:#b81177; }
#gnav.navlist .rightbox .list1>li.insta>a:hover{ color: #b81177; }
#gnav.navlist .rightbox .list1>li.telbox{  }
#gnav.navlist .rightbox .list1>li.telbox>a{ font-weight: bold; font-size: 2.4rem; color: #014098; text-decoration: none; letter-spacing: 0.1em; }
#gnav.navlist .rightbox .list1>li.telbox>a>img{ width: 26px; height: 26px; margin-right: 5px; vertical-align: -5px; }

#gnav.navlist .rightbox .list2{ transition: .3s; opacity: 0; margin-left: -30px; }
#gnav.navlist .rightbox .list2>li{ display: inline-block; margin-left: 30px; margin-top: 10px; vertical-align: middle; }
#gnav.navlist .rightbox .list2>li>a{ display: flex; flex-direction: row; text-decoration: none; color: #014098; }
#gnav.navlist .rightbox .list2>li>a>.icon{  }
#gnav.navlist .rightbox .list2>li>a .txt{margin-left: 10px;letter-spacing: 0.1em;text-align: left;line-height: 1.2;}
#gnav.navlist .rightbox .list2>li>a .txt>._1{ font-weight: bold; font-size: 2rem; }
#gnav.navlist .rightbox .list2>li>a .txt>._2{ font-weight: bold; font-size: 1.4rem; }
#gnav.navlist .rightbox .list2>li.onlineshop>a>.icon>img{width: 79px;height: 48px;vertical-align: middle;transition: .4s;}
#gnav.navlist .rightbox .list2>li.onlineshop>a .txt{margin-left: 4px;}
#gnav.navlist .rightbox .list2>li.rakutenshop>a>.icon>svg{ width: 32px; height: 30px; }
#gnav.navlist .rightbox .list2>li.rakutenshop>a>.icon>svg .st0{ transition: .4s; }
#gnav.navlist .rightbox .list2>li.onlineshop>a:hover,
#gnav.navlist .rightbox .list2>li.rakutenshop>a:hover{ color: #b81177; }
#gnav.navlist .rightbox .list2>li.rakutenshop>a:hover .cart_icon_st0.st0{fill:#b81177;}

#gnav .bg{ opacity: 0; -webkit-transform: translate3d(0, 0, -50px); transform: translate3d(0, 0, -50px); -webkit-transition-duration: .6s; transition-duration: .6s; -webkit-transition-timing-function: cubic-bezier(.075, .82, .165, 1); transition-timing-function: cubic-bezier(.075, .82, .165, 1); opacity: 0; transform: translate3d(0px, 0px, -50px); transition-duration: 0.6s; transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1); position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; background-color: rgba(255, 255, 255, 0.8); overflow: hidden; }
#gnav .bg .beigebg{ position: absolute; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 2; background-color: #f7f7f2; cursor: pointer; }

#gnav.is-open{ pointer-events: auto; }
#gnav.is-open .bg{  opacity: 1; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0) }

#gnav.navlist.is-open .mainlist>li,
#gnav.navlist.is-open .leftbox .box1,
#gnav.navlist.is-open .rightbox .imglist,
#gnav.navlist.is-open .rightbox .imglist+.txt,
#gnav.navlist.is-open .rightbox .list1,
#gnav.navlist.is-open .rightbox .list2 { opacity:1; transition: 1.8s; }
#gnav.navlist.is-open .mainlist>li{ -webkit-transition-delay: .2s; transition-delay: .2s; }
#gnav.navlist.is-open .leftbox .box1{ -webkit-transition-delay: .2s; transition-delay: .2s; }
#gnav.navlist.is-open .rightbox .imglist{ -webkit-transition-delay: .2s; transition-delay: .2s; }
#gnav.navlist.is-open .rightbox .imglist+.txt{ -webkit-transition-delay: .2s; transition-delay: .2s; }
#gnav.navlist.is-open .rightbox .list1{ -webkit-transition-delay: .2s; transition-delay: .2s; }
#gnav.navlist.is-open .rightbox .list2{ -webkit-transition-delay: .2s; transition-delay: .2s; }
@media screen and (max-width: 1500px){
	#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap{  padding-left: 6%; padding-right: 6%; }
	#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap>.inwrap{  width: 100%; justify-content: center;  }
}
@media screen and (max-width: 1150px){
	#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap>.inwrap{ display: block; width: 100%; }
	#gnav.navlist .leftbox,
	#gnav.navlist .rightbox{ display: block; }
	#gnav.navlist .leftbox{ width: 100%; }
	#gnav.navlist .rightbox { margin-left: 0; width: 100%; margin-top: 40px; }
	#gnav.navlist .rightbox{ display: flex; flex-direction: column; }
	#gnav.navlist .rightbox .imglist{  order: 4; margin-top: 40px; }
	#gnav.navlist .rightbox .imglist+.txt{ order: 1; margin-top: 0; }
	#gnav.navlist .rightbox .list1{ order: 2; }
	#gnav.navlist .rightbox .list2{ order: 3; }
	#gnav.navlist .rightbox .imglist { display: none; }
	#gnav.navlist .mainlist>li{  margin-bottom: 15px;  }

}
@media screen and (max-width: 1040px){
	#gnav .logo{ margin-left: 0; }
	#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap>.inwrap{ display: block; padding-right: 0; padding-right: 6%; width: 100%; box-sizing: border-box; }
	#gnav.navlist .incnt>.mainlistcover>.inwrap{ padding-top: 0; padding-bottom: 0; }
	#gnav.navlist .incnt>.mainlistcover{ display: block; }
	#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap{ height: 100vh ; padding: 0 2% 0; align-items: center; display: block; }
	#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap>.inwrap{ padding-left: 0; padding-top: 170px; padding-bottom: 70px; }
	#gnav.navlist .mainlist>li{ margin-bottom: 15px; }
	#gnav.navlist .mainlist>li>div{ cursor: default;  }
	#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap{  padding-left: 0; }
	#gnav.navlist .incnt>.mainlistcover{ padding-left: 0; }
	#gnav.navlist .incnt>.mainlistcover>.inwrap{ padding-top: 0; height: 100%; }
	#gnav.navlist .mainlist>li>a, #gnav.navlist .mainlist>li>div{ font-size: 2rem; }
	#gnav.navlist .mainlist>li.hassub>div+.sub>li>a{ font-size: 1.6rem; }

	#gnav.navlist .leftbox .box1 .mailbox>a,
	#gnav.navlist .rightbox .list1>li.telbox>a,
	#gnav.navlist .rightbox .list1>li.insta>a{ font-size: 2rem; }
	#gnav.navlist .rightbox .list2>li>a .txt>._1{ font-size: 1.8rem; }
	#gnav.navlist .rightbox .list2>li>a .txt>._2{ font-size: 1.2rem; }
	#gnav.navlist .rightbox{ margin-top: 30px; }
	#gnav.navlist .rightbox .list1{ margin-bottom: 10px; }
	#gnav.navlist .rightbox .list1>li.insta { margin-top: 30px; }
}
@media screen and (max-width: 767px){
	#gnav.navlist .rightbox .list1{ text-align: center; margin-left: 0; }
	#gnav.navlist .rightbox .list1>li{ margin-left: 0; text-align: left; display: block;  }
	#gnav.navlist .rightbox .list1>li.mailbox{ margin-bottom: 10px; }
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}





/*//////////////////


Menubtn


//////////////////*/

#menubtn { z-index: 100000001; position: fixed; cursor: pointer; margin-top: auto; margin-bottom: auto; top: 0; left: 0; height: 180px; width: 150px; /* background: #fff; */ display: flex; align-items: center; justify-content: center; padding-bottom: 20px; box-sizing: border-box; }
#menubtn a { text-decoration: none; position: relative; height: 100%; width: 100%; display: flex; align-items: center; justify-content: center; }
#menubtn a>.inwrap{ display: inline-block; position: relative; height: 50px; }
#menubtn a .linebox{ position: relative; width: 18px; height: 30px; display: inline-block; vertical-align: middle; }
#menubtn a .linebox .line {height: 4px;background: #014098;position: absolute;transition: all 0.6s;left: 0;}
#menubtn a .menutxt{ color: #014098; line-height: 1.4; letter-spacing: 0.1em; font-size: 1.4rem; margin-left: -11px; position: absolute; left: 0;display: inline-block; bottom: 0;  }
#menubtn a .menutxt .open{  font-weight: bold; opacity: 1; transition: .6s; visibility: visible; position: absolute; }
#menubtn a .menutxt .close{  font-weight: bold; opacity: 0; transition: .6s; visibility: hidden; position: absolute; }
#menubtn a .line { width: 18px; }
#menubtn a #line1 { top: 0; }
#menubtn a #line2 { top: calc(50% - 2px); }
#menubtn a #line3 { bottom: 0; }
#menubtn.active a{ }
#menubtn.active a .menutxt .open{ opacity: 0; visibility: hidden; display: none; }
#menubtn.active a .menutxt .close{ opacity: 1; visibility: visible; }
#menubtn.active a .linebox{ }
#menubtn.active a .line { width: 30px; }
#menubtn.active a #line1 {
	-webkit-transform:translateY(13px) translateX(-5px) rotate(20deg);
	transform:translateY(13px) translateX(-5px) rotate(20deg);
}
#menubtn.active a #line2{ display: none; }
#menubtn.active a #line3 { 
	-webkit-transform:translateY(-13px) translateX(-5px) rotate(-20deg); 
	transform:translateY(-13px) translateX(-5px) rotate(-20deg);
}
@media screen and (max-width: 1040px){
	#menubtn { height: 140px; width: 110px; left: 0; right: auto; }
	#menubtn a>.inwrap{ height: 40px; }
	/*#menubtn {bottom: auto;top: 25px;left:auto;right: 30px;height: 40px;z-index: 1000000000000;}*/
}
@media screen and (max-width: 767px){
	#menubtn { height: 130px; width: 100px; left: 0; right: auto; }
}
@media screen and (max-width: 479px){
	/*#menubtn{ top: 20px; right: 15px; }
	#menubtn a .menutxt{ font-size: 1.2rem; display:none; }
	#menubtn a .linebox{ width: 40px;  }
	#menubtn a .linebox .line { height: 3px; }
	#menubtn a #line1 { top: 2px; width: 40px;  }
	#menubtn a #line2 {  width: 40px;  }
	#menubtn a #line3 { bottom: 3px; width: 40px;  }
	#menubtn.active a #line1 {
		left:-6px;
		-webkit-transform:translateY(8px) translateX(6px) rotate(20deg);
		transform:translateY(8px) translateX(6px) rotate(20deg);
	}
	#menubtn.active a #line3 { 
		left:-6px;
		-webkit-transform:translateY(-8px) translateX(6px) rotate(-20deg); 
		transform:translateY(-8px) translateX(6px) rotate(-20deg);
	}*/
}





/*//////////////////


Mainv.index


//////////////////*/

#mainv.index{  padding-left: 150px;  }
#mainv.index .indexmvlist{  position: relative; overflow: hidden; }
#mainv.index .indexmvlist .slick-track{ display: flex; }
#mainv.index .indexmvlist li.slick-slide{ display: flex; /*min-height: 1000px;*/ height: 100vh; }
#mainv.index .indexmvlist .mvmainbox{ display: flex; align-items: center; justify-content: center; flex-direction: column; width: 100%; height: 100%; color: #fff; position: relative; background: rgba(0, 0, 0, 0.1); }
#mainv.index .indexmvlist .mvmainbox .subtitle{ font-family: 'Red Hat Display', sans-serif; font-weight: bold; font-size: 2rem; letter-spacing: 0.4em; margin-bottom: 25px; }
#mainv.index .indexmvlist .mvmainbox .maintitle{ font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; line-height: 1.8;  }
#mainv.index .indexmvlist .mvmainbox .maintitle>._1{ font-size: 8rem; font-weight: bold;  letter-spacing: 0.3em; }
#mainv.index .indexmvlist .mvmainbox .maintitle>._2{ font-size: 3.8rem; font-weight: bold; text-align: center; letter-spacing: 0.2em; }
#mainv.index .indexmvlist .mvmainbox .link{ position: absolute; left: 0; right: 0; text-align: center; bottom: 75px; }
#mainv.index .indexmvlist .mvmainbox .link .txtlink{ color: #fff; }
#mainv.index .indexmvlist .mvmainbox~.bg{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: -1; width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;';  }
#mainv.index .indexmvlist li.slick-slide._4 .maintitle{ display: flex; flex-direction: column; }
#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._1_1{ order: 1; display: flex; justify-content: center; font-family: 'Red Hat Display', sans-serif; font-weight: bold; font-size: 9rem; }
#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._1_2{ order: 3; display: flex; justify-content: center; font-family: 'Red Hat Display', sans-serif; font-weight: bold; font-size: 9rem; }
#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._2{ order: 2; display: flex; justify-content: center; font-size: 4rem; }
#mainv.index .indexmvlist li.slick-slide._4 .koilogo{ width: 80px; height: 80px; display: inline-block; position: absolute; bottom: 20px; right: 20px; }
#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox{ display: flex; flex-direction: row; justify-content: space-between; padding-right: 85px; padding-left: 14%; }
#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox{display: flex;flex-direction: row-reverse;padding-bottom: 14%;text-orientation: upright;}
#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .maintitle{ display: flex; flex-direction: row-reverse; margin-left: 30px; }
#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .maintitle ._1{ -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size: 7rem; letter-spacing: 0.2em; }
#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .subtitle{ -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; line-height: 1.8; font-size: 3rem; letter-spacing: 0.2em; }
#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .kishilogobox .kishilogo{ margin-bottom: 20px; }
#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .kishilogobox .kishilogo>img{ width: 240px; height: 98px; }
#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .kishilogobox .cap{ font-family: 'Red Hat Display', sans-serif; font-weight: bold; font-size: 2rem; text-align: center; letter-spacing: 0.2em;  }

#mainv.index .indexmvlist li.slick-current .mvmainbox~.bg,
#mainv.index .indexmvlist li.slick-slide[tabindex="0"] .mvmainbox~.bg { animation: zoomout 10s linear 0s 1 normal both; }
#mainv.index .indexmvlist li.slick-slide[tabindex="-1"] .bg { width: 100%; height: 100%; }

@keyframes zoomout {
	0% { transform: scale(1);}
	100% { transform: scale(1.2); }
}
@media screen and (max-width: 1200px){
	#mainv.index{  padding-left: 150px;  }
	#mainv.index .indexmvlist li.slick-slide{ height: 100vh; min-height: auto; }
	#mainv.index .indexmvlist .mvmainbox .subtitle{ font-size: 1.8rem; letter-spacing: 0.2em; margin-bottom: 20px; }
	#mainv.index .indexmvlist .mvmainbox .maintitle>._1{ font-size: 6rem; letter-spacing: 0.15em; }
	#mainv.index .indexmvlist .mvmainbox .maintitle>._2{ font-size: 3rem; letter-spacing: 0.1em; }
	#mainv.index .indexmvlist .mvmainbox .link{ bottom: 50px; }
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._1_1,
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._1_2{ font-size: 6rem; }
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._2{ font-size: 3rem; }
	#mainv.index .indexmvlist li.slick-slide._4 .koilogo{ width: 60px; height: 60px; bottom: 15px; right: 15px; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox{ padding-right: 60px; padding-left: 10%; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox{ padding-bottom: 10%; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .maintitle{ margin-left: 20px; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .maintitle ._1{ font-size: 5rem; letter-spacing: 0.1em; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .subtitle{ font-size: 2.8rem; letter-spacing: 0.1em; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .kishilogobox .kishilogo>img{ width: 210px; height: 86px; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .kishilogobox .cap{ font-size: 1.8rem; letter-spacing: 0.1em;  }
}
@media screen and (max-width: 1040px){
	#mainv.index .indexmvlist li.slick-slide{ height: 100vh; }
	#mainv.index{  padding-left: 0;  }
	#mainv.index .indexmvlist .mvmainbox .subtitle{ font-size: 1.6rem; }
	#mainv.index .indexmvlist .mvmainbox .maintitle>._1{ font-size: 4rem; }
	#mainv.index .indexmvlist .mvmainbox .maintitle>._2{ font-size: 2rem; }
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._1_1,
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._1_2{ font-size: 4rem; }
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._2{ font-size: 2rem; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox{ padding-right: 6%; padding-left: 6%; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .maintitle ._1{ font-size: 4rem;  }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .subtitle{ font-size: 1.8rem;  }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .kishilogobox .kishilogo>img{ width: 180px; height: 74px; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox{ padding-bottom: 0; }
}
@media screen and (max-width: 767px){
	#mainv.index .indexmvlist .mvmainbox .subtitle{ font-size: 1.4rem; margin-bottom: 10px; }
	#mainv.index .indexmvlist .mvmainbox .maintitle{ line-height: 2; }
	#mainv.index .indexmvlist .mvmainbox .maintitle>._1{ font-size: 3rem; }
	#mainv.index .indexmvlist .mvmainbox .maintitle>._2{ font-size: 1.6rem; }
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle{ margin-top: 20px; }
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._1_1,
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._1_2{ font-size: 3rem; line-height: 1.9; }
	#mainv.index .indexmvlist li.slick-slide._4 .koilogo{ width: 50px; height: 50px; position: static; margin-top: 40px }
	#mainv.index .indexmvlist li.slick-slide._4 .maintitle ._2{ font-size: 1.6rem; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox,
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox,
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .maintitle{ flex-direction: column; align-items: center; justify-content: center; margin-left: 0; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .maintitle{ line-height: 1.8; margin-bottom: 15px; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .maintitle ._1{ font-size: 3rem;  }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .subtitle{ font-size: 1.6rem;  }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .kishilogobox .kishilogo{ margin-top: 40px; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .kishilogobox .kishilogo>img{ width: 94px; height: 38px; }

	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .maintitle ._1{ -webkit-writing-mode:horizontal-tb; -ms-writing-mode: lr-tb; writing-mode: horizontal-tb; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .leftbox .subtitle{ -webkit-writing-mode:horizontal-tb; -ms-writing-mode: lr-tb; writing-mode: horizontal-tb; }
	#mainv.index .indexmvlist li.slick-slide._5 .mvmainbox .kishilogobox .cap{ display: none; }


	#mainv.index .indexmvlist .mvmainbox .link{ bottom: 30px; font-size: 1.4rem; }
}
@media screen and (max-width: 639px){
}





/*//////////////////


Header


//////////////////*/
#header .sidebox{ position: absolute; top: 0; left: 0; width: 150px; /*min-height: 1000px; */height: 100vh; display: flex; justify-content: flex-end; flex-direction: column; z-index: 10000; background: #fff; }
#header .sidebox .logobox{ position: fixed; top: 30px; right: 40px; transition: 0.3s; opacity: 0; pointer-events: none;}
#header .sidebox .logobox,
#header .sidebox .logobox .logo>a>img{width: 137px;height: 77px;}
#header .sidebox .indexlogobox { position: absolute; top: 50px; bottom: 0; margin-top: auto; margin-bottom: auto; left: 40px; width: 192px; height: 300px; transition: 0.3s; }
#header .sidebox .indexlogobox .logo{ margin-bottom: 40px; }
body:not(#index) #header .sidebox .indexlogobox { display: none }
#header .sidebox .indexlogobox .logo>a{  }
#header .sidebox .indexlogobox .logo>a>img{width: 100%;height: 100%;}
#header .sidebox .indexlogobox .cap{ font-size: 1.8rem; margin-left: auto; margin-right: auto; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; display: inline-block; text-align: left; letter-spacing: 0.1em; }
#header .sidebox .insta{ text-align: center; margin-bottom: 20px; }
#header .sidebox .insta>a .insta_icon_st0.st0{ transition: .4s; }
#header .sidebox .insta>a:hover .insta_icon_st0.st0{ fill: #960269; }
#header .sidebox .insta>a>svg{ width: 24px; height: 24px; }
#header .sidebox .onlineshop{  }
#header .sidebox .onlineshop>a{ display: flex; flex-direction: row; background: #014098; color: #fff; padding: 22px 20px; text-decoration: none; align-items: center; justify-content: center; text-align: center; }
#header .sidebox .onlineshop>a>span{ font-weight: bold; font-size: 1.4rem; font-family: 'Red Hat Display', sans-serif; line-height: 1.4; letter-spacing: 0.1em; }
#header .sidebox .onlineshop>a:hover{ background: #960269;  }

/* スクロール時fixed */
#header.fixed .sidebox .logobox{ opacity: 1; pointer-events: auto; }
#header.fixed .indexlogobox{ opacity: 0; pointer-events: none; }
/*#header.fixed { position: fixed; top: 0; background: #fff; background: rgba(255,255,255,0.97); animation: navfit 0.5s ease-out 0s 1 normal both; }*/
body:not(#index) #header .sidebox{ position: relative; width: 100%; min-height: auto; height: auto; background: transparent;  z-index: 1000000;}
body:not(#index) #header .sidebox .logobox{ top: 30px; bottom: auto; left: auto; right: 40px; width: 180px; height: 82px; display: block; opacity: 1; pointer-events: auto; }
body:not(#index) #header .sidebox .cap,
body:not(#index) #header .sidebox .insta,
body:not(#index) #header .sidebox .onlineshop{ display: none; }
body:not(#index) #header .sidebox .logobox .logo>a>img{ width: 182px; height: 84px;  }
body:not(#index) #header.fixed .sidebox .logobox{ width: 168px; height: 77px; }
body:not(#index) #header.fixed .sidebox .logobox .logo>a>img{ width: 168px; height: 77px;  }
@media screen and (max-width: 1200px){
	#header .sidebox{ min-height: auto; }
	#header .sidebox .indexlogobox .cap{ font-size: 1.4rem; }
	#header .sidebox .indexlogobox .logo>a>img{ width: 100%; height: 100%;  }
	#header .sidebox .logobox,
	#header .sidebox .logobox .logo>a>img{ width: 144px; height: 66px;  }
	body:not(#index) #header .sidebox .logobox{ width: 168px; height: 77px; }
	body:not(#index) #header .sidebox .logobox .logo>a>img{ width: 168px; height: 77px;  }
	body:not(#index) #header.fixed .sidebox .logobox{ width: 144px; height: 66px; }
	body:not(#index) #header.fixed .sidebox .logobox .logo>a>img{ width: 144px; height: 66px;  }
}
@media screen and (max-width: 1040px){
	#header .sidebox { z-index: 1000000;}
	#header .sidebox .indexlogobox { display: none; }
	#header .sidebox .logobox { display: block; opacity: 1; pointer-events: auto; }
	#header .sidebox .logobox,
	#header .sidebox .logobox .logo>a>img{ width: 144px; height: 66px;  }
	#header .sidebox{ width: 100%; height: auto; }
	#header .sidebox .logobox{right: 4px!important;left: auto;bottom: auto;top: 30px;}
	#header .sidebox .insta,
	#header .sidebox .onlineshop{ display: none; }
	#header .sidebox .logobox .cap{ display: none; }
	body:not(#index) #header .sidebox .logobox,
	body:not(#index) #header .sidebox .logobox .logo>a>img,
	body:not(#index) #header.fixed .sidebox .logobox,
	body:not(#index) #header.fixed .sidebox .logobox .logo>a>img{ width: 144px; height: 66px;  }
}
@media screen and (max-width: 767px){
	#header .sidebox .logobox,
	#header .sidebox .logobox .logo>a>img { width: 120px; height: 55px;  }
	body:not(#index) #header .sidebox .logobox,
	body:not(#index) #header .sidebox .logobox .logo>a>img,
	body:not(#index) #header.fixed .sidebox .logobox,
	body:not(#index) #header.fixed .sidebox .logobox .logo>a>img{ width: 120px; height: 55px;  }
}
@media screen and (max-width: 639px){
}



/* スクロール時fixedのアニメーション */
/*@keyframes navfit {
  0% { transform: translate(0px, -50px); }
  100% { transform: translate(0px, 0px);  }
}*/






/*//////////////////


Mainv.under


//////////////////*/

#mainv.under { height: 580px; display: flex; flex-direction: column; position: relative; align-items: center; justify-content: flex-end; }
#mainv.under .txtbox { padding-bottom: 70px; padding-left: 6%; padding-right: 6%; color: #fff; }
#mainv.under .txtbox .subpagetitle{text-align: center;font-weight: bold;font-size: 2rem;font-family: 'Red Hat Display', sans-serif;margin-bottom: 10px;letter-spacing: 0.3em;}
#mainv.under .txtbox .pagetitle{text-align: center;font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;font-size: 5.6rem;line-height: 1.4;letter-spacing: 0.1em;font-weight: bold;}
#mainv.under .txtbox .pagetxt{ text-align: center; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-size: 2.4rem; letter-spacing: 1.8; letter-spacing: 0.1em; }
#mainv.under .txtbox+.bg{ position: absolute; bottom: 0; left: 0; top: 0; right: 0; width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; z-index: -1; }
@media screen and (max-width: 1040px){
	#mainv.under { height: 480px; }
	#mainv.under .txtbox { padding-bottom: 60px; }
	#mainv.under .txtbox .subpagetitle{ font-size: 1.8rem; margin-bottom: 15px; letter-spacing: 0.2em; }
	#mainv.under .txtbox .pagetitle{  font-size: 4.6rem; }
	#mainv.under .txtbox .pagetxt{ font-size: 2rem; line-height: 1.6; }
}
@media screen and (max-width: 767px){
	#mainv.under { height: 380px; }
	#mainv.under .txtbox { padding-bottom: 30px; }
	#mainv.under .txtbox .pagetitle{ font-size: 3rem; letter-spacing: 0.05em; }
	#mainv.under .txtbox .pagetxt{ margin-top: 20px; font-size: 1.6rem; }
}









/*//////////////////


Pankuzu


//////////////////*/

#pankuzu { line-height: 1.4; padding-top: 25px; text-align: right; background: url(../img/common/bgtsuya1.png); }
#pankuzu ol {  }
#pankuzu ol li { display:inline; font-size: 1.4rem; }
#pankuzu ol li:before { content:">"; display: inline-block; margin: 0 5px 0 3px }
#pankuzu ol li:first-child:before { display: none; }
#pankuzu ol li a{ text-decoration: none; }
#pankuzu ol li a:hover { opacity: 0.7; transition: 0.3s; }
@media screen and (max-width: 767px) { 
	#pankuzu{ display: none; }
}






/*//////////////////


Content


//////////////////*/
#index #main{ margin-bottom: 180px; }
body:not(#index) #main { padding-top: 100px; background: url(../img/common/bgtsuya1.png); margin-bottom: 150px; }
@media screen and (max-width: 1040px) { 
	body:not(#index) #main{ padding-top: 80px; margin-bottom: 100px; }
}
@media screen and (max-width: 767px) { 
	#index #main{ margin-bottom: 80px; }
	body:not(#index) #main { padding-top: 60px; margin-bottom: 60px; }
}












/*//////////////////


Footer


//////////////////*/

#underfbox{  }
#underfbox .instabox{  }
#underfbox .instabox .insta{ text-align: center; margin-bottom: 5px; }
#underfbox .instabox .insta>a{ font-weight: bold; font-size: 2.8rem; color: #014098; text-decoration: none; letter-spacing: 0.1em; }
#underfbox .instabox .insta>a>svg{ width: 28px; height: 28px; margin-right: 20px; vertical-align: -3px; }
#underfbox .instabox .insta>a>svg .insta_icon_st0.st0{ transition: .4s; }
#underfbox .instabox .insta>a:hover{ color: #b81177; }
#underfbox .instabox .insta>a:hover>svg .insta_icon_st0.st0{ fill:#b81177; }
#underfbox .instabox .txt{ text-align: center; }
#underfbox .list{ margin-bottom: 20px; text-align: center; margin-left: -30px; margin-top: -20px; }
#underfbox .list>li{ display: inline-block; margin-left: 30px; margin-top: 20px; vertical-align: middle; }
#underfbox .list>li>a{ display: flex; flex-direction: row; text-decoration: none; color: #014098; }
#underfbox .list>li>a>.icon{ display: flex; align-items: center; }
#underfbox .list>li>a .txt{  margin-left: 10px; letter-spacing: 0.1em; text-align: left; line-height: 1.2; }
#underfbox .list>li>a .txt>._1{ font-weight: bold; font-size: 2.4rem; }
#underfbox .list>li>a .txt>._2{ font-weight: bold; font-size: 1.6rem; }
#underfbox .list>li.onlineshop>a>.icon>img{width: 75px;height: 48px;vertical-align: middle;transition: .4s;}
#underfbox .list>li.onlineshop>a .txt{margin-left: 10px;}
#underfbox .list>li.rakutenshop>a>.icon>svg{ width: 40px; height: 36px; }
#underfbox .list>li.rakutenshop>a>.icon>svg .st0{ transition: .4s; }
#underfbox .list>li.onlineshop>a:hover,
#underfbox .list>li.rakutenshop>a:hover{ color: #b81177; }
#underfbox .list>li.rakutenshop>a:hover .cart_icon_st0.st0{fill:#b81177;}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#underfbox .list>li>a .txt>._1{ font-size: 2rem; }
	#underfbox .list>li>a .txt>._2{ font-size: 1.4rem; }
}
@media screen and (max-width: 639px){
	#underfbox .instabox .txt{ text-align: left; }
}
@media screen and (max-width: 479px){
}



#footer {  }

#footer .contactbox{  }
#footer .contactbox .instabox{  }
#footer .contactbox .instabox .insta{ text-align: center; margin-bottom: 5px; }
#footer .contactbox .instabox .insta>a{ font-weight: bold; font-size: 2.8rem; color: #014098; text-decoration: none; letter-spacing: 0.1em; }
#footer .contactbox .instabox .insta>a>svg{ width: 28px; height: 28px; margin-right: 20px; vertical-align: -3px; }
#footer .contactbox .instabox .insta>a>svg .insta_icon_st0.st0{ transition: .4s; }
#footer .contactbox .instabox .insta>a:hover{ color: #b81177; }
#footer .contactbox .instabox .insta>a:hover>svg .insta_icon_st0.st0{ fill:#b81177; }
#footer .contactbox .instabox .txt{ text-align: center; }
#footer .contactbox .box1{ margin-top: 35px; }
#footer .contactbox .box1 .boxlist{ text-align: center; margin-left: -15px; }
#footer .contactbox .box1 .boxlist>li{ margin-left: 15px; display: inline-block; }
#footer .contactbox .box1 .boxlist>li>a{ font-weight: bold; font-size: 2.4rem; color: #014098; text-decoration: none; letter-spacing: 0.1em; }
#footer .contactbox .box1 .boxlist>li:not(.telbox)>a:hover{ color: #b81177; }
#footer .contactbox .box1 .boxlist>li.mailbox{  }
#footer .contactbox .box1 .boxlist>li.mailbox>a{  }
#footer .contactbox .box1 .boxlist>li.mailbox>a>svg{ width: 28px; height: 22px; margin-right: 5px; vertical-align: -2px; }
#footer .contactbox .box1 .boxlist>li.mailbox>a>svg .mail_icon_st0.st0{ transition: .4s; }
#footer .contactbox .box1 .boxlist>li.mailbox>a:hover>svg .mail_icon_st0.st0{ fill:#b81177; }
#footer .contactbox .box1 .boxlist>li.telbox{  }
#footer .contactbox .box1 .boxlist>li.telbox>a{  }
#footer .contactbox .box1 .boxlist>li.telbox>a>img{ width: 26px; height: 26px; margin-right: 5px; vertical-align: -5px; }
#footer .contactbox .box1 .boxlist>li.telcap{ font-size: 1.4rem; margin-left: 10px; }
#footer .contactbox .box1 .txt{ text-align: center; margin-top: 5px; }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#footer .contactbox .box1 .boxlist{ text-align: center; margin-left: 0; }
	#footer .contactbox .box1 .boxlist>li{ margin-left: 0; display: block; text-align: center; }
	#footer .contactbox .box1 .boxlist>li.mailbox{ margin-bottom: 10px; }
	#footer .contactbox .box1 .txt{ margin-top: 25px; }
	#footer .contactbox .box1{ margin-top: 25px; }
}
@media screen and (max-width: 639px){
	#footer .contactbox .box1 .txt{ text-align: left; }
	#footer .contactbox .instabox .txt{ text-align: left; }
}


#footer .footerinfo{ margin-top: 180px; padding-bottom: 90px; position: relative; padding-left: 6%; padding-right: 6%; }
#footer .footerinfo:before{content: "";background: url(../img/common/bgzara1.png) repeat;object-fit: cover;font-family: 'object-fit: cover;';bottom: 0;left: 0;right: 0;height: calc(100% - 30px);width: 100%;position: absolute;z-index: -1;}
#footer .footerinfo .logolist{ margin-left: -30px; margin-bottom: 30px; text-align: center; }
#footer .footerinfo .logolist>li{ margin-left: 30px; display: inline-block; vertical-align: middle; margin-bottom: 20px; }
#footer .footerinfo .logolist>li>a{  }
#footer .footerinfo .logolist>li>a>img{  }
#footer .footerinfo .logolist>li:nth-child(1)>a>img{width: 118px;height: 88px;}
#footer .footerinfo .logolist>li:nth-child(2)>a>img{ width: 154px; height: 62px; }
#footer .footerinfo .logolist>li:nth-child(3)>a>img{ width: 90px; height: 90px; }
#footer .footerinfo .txt{ text-align: center; }
#footer .footerinfo .list{ margin-top: 30px; text-align: center; margin-left: -30px; }
#footer .footerinfo .list>li{ display: inline-block; margin-left: 30px; margin-top: 20px; vertical-align: middle; }
#footer .footerinfo .list>li>a{ display: flex; flex-direction: row; text-decoration: none; color: #014098; }
#footer .footerinfo .list>li>a>.icon{  }
#footer .footerinfo .list>li>a .txt{  margin-left: 10px; letter-spacing: 0.1em; text-align: left; line-height: 1.2; }
#footer .footerinfo .list>li>a .txt>._1{ font-weight: bold; font-size: 2rem; }
#footer .footerinfo .list>li>a .txt>._2{ font-weight: bold; font-size: 1.4rem; }
#footer .footerinfo .list>li.onlineshop>a>.icon>img{width: 75px;height: 52px;vertical-align: middle;transition: .4s;}
#footer .footerinfo .list>li.onlineshop>a .txt{ margin-left: 15px; }
#footer .footerinfo .list>li.rakutenshop>a>.icon>svg{ width: 32px; height: 30px; }
#footer .footerinfo .list>li.rakutenshop>a>.icon>svg .st0{ transition: .4s; }
#footer .footerinfo .list>li.onlineshop>a:hover,
#footer .footerinfo .list>li.rakutenshop>a:hover{ color: #b81177; }
#footer .footerinfo .list>li.rakutenshop>a:hover .cart_icon_st0.st0{fill:#b81177;}
#footer .footerinfo .cr{ margin-top: 50px; text-align: center; font-weight: bold; font-size: 1.4rem; color: #014098; letter-spacing: 0.1em; }
@media screen and (max-width: 1040px){
	#footer .footerinfo{ margin-top: 150px; }
}
@media screen and (max-width: 767px){
	#footer .footerinfo:before{ background: url(../img/common/bgzara1.png) no-repeat; background-size: cover; height: calc(100% - 30px); }
	#footer .footerinfo{ margin-top: 100px; padding-bottom: 40px; }
	#footer .footerinfo .logolist>li:nth-child(1){ width: calc(100% - 30px); }
	#footer .footerinfo .logolist>li:nth-child(2)>a>img{ width: 96px; height: 38px; }
	#footer .footerinfo .logolist>li:nth-child(3)>a>img{ width: 56px; height: 56px; }
	#footer .footerinfo .list>li>a .txt>._1{ font-size: 1.8rem; }
	#footer .footerinfo .list>li>a .txt>._2{ font-size: 1.2rem; }
}
@media screen and (max-width: 479px){
	#footer .footerinfo{ padding-bottom: 25px; }
	#footer .footerinfo .list{ margin-top: 20px; }
	#footer .footerinfo .logolist{ margin-bottom: 20px; }
}