@charset "utf-8";
/* --------------------------------------------------
	reset
-------------------------------------------------- */
/*	Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box;
-webkit-user-select: none;
   -moz-user-select: none;
    -ms-user-select: none;
        user-select: none;

-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
  	  touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}

.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0;}
.slick-list:focus { outline: none;}
.slick-list.dragging{ cursor: pointer; cursor: hand;}
.slick-slider .slick-track,
.slick-slider .slick-list{
-webkit-transform: translate3d(0, 0, 0);
   -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
     -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
}
.slick-track { position: relative; top: 0; left: 0; display: block;}
.slick-track:before,
.slick-track:after { display: table; content: '';}
.slick-track:after { clear: both;}
.slick-loading .slick-track { visibility: hidden;}
.slick-slide { display: none; float: left; height: 100%; min-height: 1px;}
[dir='rtl'] .slick-slide { float: right;}
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none;}
.slick-slide.dragging img { pointer-events: none;}
.slick-initialized .slick-slide { display: block; outline: none;}
.slick-loading .slick-slide { visibility: hidden;}
.slick-vertical .slick-slide{ display: block; height: auto;}
.slick-arrow.slick-hidden { display: none;}

.slick-arrow{ width: 50px; height: 50px; position: absolute; top: 50%; transform: translateY(-50%); background: none; border: none; z-index: 100;
 text-indent: -9999em; outline: none;
}
.slick-prev { left: 0px;}
.slick-next { right: 0px;}
.slick-arrow:before{ position: absolute; content: ''; display: block; width: 15px; height: 15px; top: 50%; transform: translateY(-50%) rotate(45deg);}
.slick-prev:before { left: 38%; border-bottom: solid 2px #000; border-left: solid 2px #000;}
.slick-next:before { right: 38%; border-top: solid 2px #000; border-right: solid 2px #000;}
@media (max-width: 481px) {
}


/* Magnific Popup CSS */
.mfp-bg { position: fixed; top: 0; left: 0; z-index: 1042; width: 100%; height: 100%; overflow: hidden; background: #0e275d; opacity: 0.7; }
.mfp-wrap { position: fixed; top: 0; left: 0; z-index: 1043; width: 100%; height: 100%; outline: none !important; -webkit-backface-visibility: hidden;}
.mfp-container { position: absolute; left: 0; top: 0; width: 100%; height: 100%; padding: 0 8px; text-align: center;}

.mfp-container:before { content: ''; display: inline-block; height: 100%; vertical-align: middle;}
.mfp-align-top .mfp-container:before { display: none; }
.mfp-content { position: relative; display: inline-block; vertical-align: middle; margin: 0 auto; text-align: left; z-index: 1045;}
.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content { width: 100%; cursor: auto; }
.mfp-ajax-cur { cursor: progress; }
.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor: -moz-zoom-out; cursor: -webkit-zoom-out; cursor: zoom-out; }
.mfp-zoom { cursor: pointer; cursor: -webkit-zoom-in; cursor: -moz-zoom-in; cursor: zoom-in; }
.mfp-auto-cursor .mfp-content { cursor: auto; }
.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter { -webkit-user-select: none; -moz-user-select: none; user-select: none; }
.mfp-loading.mfp-figure { display: none; }
.mfp-hide { display: none !important; }
.mfp-preloader { position: absolute; top: 50%; left: 8px; right: 8px; z-index: 1044; 
width: auto; margin-top: -0.8em; color: #CCC; text-align: center;}
.mfp-preloader a { color: #CCC; }
.mfp-preloader a:hover { color: #FFF; }
.mfp-s-ready .mfp-preloader { 	display: none; }
.mfp-s-error .mfp-content { display: none; }
button.mfp-close,
button.mfp-arrow { overflow: visible; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none;
display: block; outline: none; padding: 0; z-index: 1046; box-shadow: none; touch-action: manipulation; }

button::-moz-focus-inner { padding: 0; border: 0;}
.mfp-close { position: absolute; right: 0%; top: 0px; width: 42px; height: 42px;
 color: #FFF; font-style: normal; font-size: 28px; text-decoration: none; font-size: 0px; text-indent: -9999em;}
.mfp-close:before,
.mfp-close:after { content: ''; display: block; width: 1px; height: 42px; position: absolute; right: 5%; top: 0; background: #fff;}
.mfp-close:before{ transform: rotate(45deg);}
.mfp-close:after { transform: rotate(-45deg);}

.mfp-close-btn-in .mfp-close { color: #333; }
.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close { width: 50%; right: -5%; color: #FFF; text-align: right; }
.mfp-counter { position: absolute; top: 0; right: 0; color: #CCC; font-size: 12px; line-height: 18px; white-space: nowrap; }

.mfp-arrow { position: absolute; top: 50%; opacity: 0.65; margin: 0; margin-top: -55px; padding: 0; width: 90px; height: 110px; -webkit-tap-highlight-color: transparent; }
.mfp-arrow:active{ margin-top: -54px; }
.mfp-arrow:hover,
.mfp-arrow:focus { opacity: 1; }
.mfp-arrow:before,
.mfp-arrow:after { content: ''; display: block; width: 0; height: 0;
 position: absolute; left: 0; top: 0; margin-top: 35px; margin-left: 35px; border: medium inset transparent;
}
.mfp-arrow:after { border-top-width: 13px; border-bottom-width: 13px; top: 8px; }
.mfp-arrow:before { border-top-width: 21px; border-bottom-width: 21px; opacity: 0.7; }

.mfp-arrow-left { left: 0; }
.mfp-arrow-left:after { border-right: 17px solid #FFF; margin-left: 31px; }
.mfp-arrow-left:before { margin-left: 25px; border-right: 27px solid #3F3F3F; }

.mfp-arrow-right { right: 0; }
.mfp-arrow-right:after { border-left: 17px solid #FFF; margin-left: 39px; }
.mfp-arrow-right:before { border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder { padding-top: 40px; padding-bottom: 40px; }
.mfp-iframe-holder .mfp-content { line-height: 0; width: 100%; max-width: 900px; }
.mfp-iframe-holder .mfp-close { top: -40px; }

.mfp-iframe-scaler { width: 100%; height: 0; overflow: hidden; padding-top: 56.25%; }
.mfp-iframe-scaler iframe { position: absolute; top: 0; left: 0;
 display: block; width: 100%; height: 100%; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #000;
}

/* Main image in popup */
img.mfp-img { display: block; width: auto; max-width: 100%; height: auto; line-height: 0; box-sizing: border-box; padding: 40px 0 40px; margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure { line-height: 0; }
.mfp-figure:after { content: ''; display: block; width: auto; height: auto; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #444;
 position: absolute; left: 0; top: 40px; bottom: 40px; right: 0; z-index: -1;
}
.mfp-figure small { display: block; color: #BDBDBD; font-size: 12px; line-height: 14px; }
.mfp-figure figure{ margin: 0; }

.mfp-bottom-bar { width: 100%; margin-top: -36px; position: absolute; top: 100%; left: 0; cursor: auto; }

.mfp-title { padding-right: 36px; color: #F3F3F3; text-align: left; line-height: 18px; word-wrap: break-word; }

.mfp-image-holder .mfp-content { max-width: 100%; }
.mfp-gallery .mfp-image-holder .mfp-figure { cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	/**
	 * Remove all paddings around the image on small screen
	 */
	.mfp-img-mobile .mfp-image-holder { padding-left: 0; padding-right: 0; }
	.mfp-img-mobile img.mfp-img { padding: 0; }
	.mfp-img-mobile .mfp-figure:after { top: 0; bottom: 0; }
	.mfp-img-mobile .mfp-figure small { display: inline; margin-left: 5px; }
	.mfp-img-mobile .mfp-bottom-bar { background: rgba(0, 0, 0, 0.6); bottom: 0; margin: 0; top: auto; padding: 3px 5px; position: fixed; box-sizing: border-box; }
	.mfp-img-mobile .mfp-bottom-bar:empty { padding: 0; }
	.mfp-img-mobile .mfp-counter { right: 5px; top: 3px; }
	.mfp-img-mobile .mfp-close { top: 0; right: 0; width: 35px; height: 35px; line-height: 35px; background: rgba(0, 0, 0, 0.6); position: fixed; text-align: center; padding: 0; }
}

@media all and (max-width: 901px) {
	.mfp-close {}
	.mfp-arrow { -webkit-transform: scale(0.75); transform: scale(0.75); }
	.mfp-arrow-left { -webkit-transform-origin: 0; transform-origin: 0; }
	.mfp-arrow-right { -webkit-transform-origin: 100%; transform-origin: 100%;}
	.mfp-container { padding-left: 6px; padding-right: 6px; }
}




/*		font-style
-------------------------------------------------- */
body { width: 100%;
 color: #0e275d;
 font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;
 font-size: 16px;
 line-height: 1.6;
 font-feature-settings: "palt";
 -webkit-font-feature-settings: "palt";
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
}
body.fixed { position: fixed;}
input, textarea {font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;}

.min { font-family: "Noto Serif JP", "游明朝", "Yu Mincho", "YuMincho", serif;}
.eng { font-family: Futura, "Trebuchet MS", Arial, sans-serif;}
.light { text-shadow: 0 0 10px #ffc;}

::selection{ background: #feffaf; color: #000;}
::-moz-selection{ background: #feffaf; color: #000;}


a { color:#002159; text-decoration: underline;}
a:link   { color:#002159;}
a:visited{ color:#002159;}
a:hover  { color:#002159;}
a:active { color:#002159;}

em{ font-style: normal;}


/*		utility
-------------------------------------------------- */
.cf{ clear: both;}
.cf:after{ content: ''; display: block; clear: both;}

@media (max-width: 641px) {
}


#hd { position: absolute; left: 0; width: 100%; z-index: 11;}
#hd .inner-hd { position: relative; width: 100%; max-width: 1280px; margin: 0 auto; padding: 30px;}
#hd h1 { line-height: 1;}
#hd h1 a { display: block; width: 260px;}
#hd h1 a img { width: 100%;}
@media (max-width: 481px) {
	#hd .inner-hd{ padding: 18px 15px;}
	#hd h1 a { width: 40%;}
}


#hd .sp-menu { position: absolute; right: 70px; top: 22px; width: 32px; height: 35px; z-index: 12;}
#hd .sp-menu .space { position: relative; width: 100%; height: 100%; z-index: 11; cursor: pointer;}
#hd .sp-menu .space span { position: absolute; left: 0; display: block; width: 100%; height: 2px; background: #fff; box-shadow: 0 0 8px #2c4676; transition: 0.4s linear; opacity: 1;}
#hd .sp-menu .space span:nth-child(1){ top: 8px;}
#hd .sp-menu .space span:nth-child(2){ top: 17px;}
#hd .sp-menu .space span:nth-child(3){ top: 26px;}

#hd .sp-menu .gNav { display: none; position: absolute; right: -10px; top: -15px; z-index: 1; width: 850px; height: 65px; transition: 0.4s linear;}
#hd .sp-menu .gNav .inner { padding: 10px; padding-right: 50px; background: rgba(15,40,95,0.85);}
#hd .sp-menu .gNav ul { font-size: 0; text-align: center;}
#hd .sp-menu .gNav ul.nav li { display: inline-block; padding: 0 14px; border-left: solid 1px #fff; vertical-align: middle;}
#hd .sp-menu .gNav ul.nav > li:first-child { padding-left: 0; border-left: none;}
#hd .sp-menu .gNav ul.nav li a { position: relative; display: inline-block; color: #fff; text-decoration: none; vertical-align: middle;}
#hd .sp-menu .gNav ul.nav li span { position: relative; display: inline-block; color: #fff; position: relative; vertical-align: middle;}
#hd .sp-menu .gNav ul.nav li span em.min { display: block; font-size: 16px;}
#hd .sp-menu .gNav ul.nav li span em.jp { display: block; font-size: 11px;}
#hd .sp-menu .gNav ul.nav li.cart span { display: inline-block; vertical-align: middle; color: #fff; font-size: 20px;}
#hd .sp-menu .gNav ul.nav li.insta { padding-left: 20px;}
#hd .sp-menu .gNav ul.nav li.insta span { display: none;}
#hd .sp-menu .gNav ul.nav li svg#icn-cart { display: inline-block; width: 21px; fill: #fff; vertical-align: middle;}
#hd .sp-menu .gNav ul.nav li svg#icn-insta { width: 28px; fill: #fff; vertical-align: bottom;}
#hd .sp-menu .gNav ul.nav li ul { display: inline-block; padding-left: 12px; vertical-align: middle;}
#hd .sp-menu .gNav ul.nav li ul li { border: none;}
#hd .sp-menu .gNav ul.nav li ul li a img { display: inline-block; width: 16px; margin-right: 10px; vertical-align: middle;}
#hd .sp-menu .gNav ul.nav li ul li a span { display: inline-block; font-size: 11px; vertical-align: middle;}
#hd .sp-menu .gNav ul.subNav { display: none; width: 100%; font-size: 0; text-align: center;}
#hd .sp-menu .gNav ul.subNav li { display: inline-block; width: 50%;}
#hd .sp-menu .gNav ul.subNav li:nth-child(1),
#hd .sp-menu .gNav ul.subNav li:nth-child(2){ margin: 0 0 15px;}
#hd .sp-menu .gNav ul.subNav li a { display: block; width: 96%; padding: 10px; border: solid 1px #fff; color: #fff; font-size: 16px; text-decoration: none;}
#hd .sp-menu .gNav ul.subNav li:nth-child(3n+1) a { margin: 0 auto 0 0;}
#hd .sp-menu .gNav ul.subNav li:nth-child(2n) a { margin: 0 0 0 auto;}

#hd .hd-cart { position: absolute; right: 10px; top: 24px; width: 32px; z-index: 11;}
#hd .hd-cart a { display: block; width: 100%;}
#hd .hd-cart a svg { width: 100%; fill: #fff; vertical-align: bottom; filter: drop-shadow(0 0 8px #2c4676);}
@media (min-width: 1000px) {
	#hd .sp-menu:hover .space span:nth-child(1){ transform: translate(0,9px) rotate(45deg);}
	#hd .sp-menu:hover .space span:nth-child(2){ opacity: 0;}
	#hd .sp-menu:hover .space span:nth-child(3){ transform: translate(0,-9px) rotate(-45deg);}
	#hd .sp-menu:hover .gNav { display: block;}
}
@media (max-width: 1000px) {
	#hd .sp-menu { right: 60px;}

	#hd .sp-menu.active .space span:nth-child(1){ transform: translate(0,11px) rotate(45deg);}
	#hd .sp-menu.active .space span:nth-child(2){ opacity: 0;}
	#hd .sp-menu.active .space span:nth-child(3){ transform: translate(0,-11px) rotate(-45deg);}
	#hd .sp-menu .gNav { position: fixed; top: 0px; right: 0px; width: 100%; height: auto; z-index: -1;}
	#hd .sp-menu .gNav .inner { height: 100vh; padding: 80px 50px 50px;}
	#hd .sp-menu .gNav ul.nav li { display: block; width: 100%; text-align: left; padding: 10px 0; border: none;	}
	#hd .sp-menu .gNav ul.nav li a { display: block;}
	#hd .sp-menu .gNav ul.nav li span.nolink { display: block; padding-left: 40px;}
	#hd .sp-menu .gNav ul.nav li.moon > a,
	#hd .sp-menu .gNav ul.nav li.insta a { padding-left: 40px;}
	#hd .sp-menu .gNav ul.nav li span.nolink:before,
	#hd .sp-menu .gNav ul.nav li.moon > a:before { content: ''; display: block; width: 30px; height: 30px;
	 background: url(../img/icn-moon.png) no-repeat 50% 50% / cover; vertical-align: middle;
	 position: absolute; left: 0; top: 50%; transform: translate(0,-50%);
	}
	#hd .sp-menu .gNav ul.nav li span em.min { display: inline-block; margin-right: 10px; font-size: 24px; vertical-align: middle;}
	#hd .sp-menu .gNav ul.nav li span em.jp { display: inline-block; vertical-align: middle;}

	#hd .sp-menu .gNav ul.nav li.insta { padding-left: 0px;}
	#hd .sp-menu .gNav ul.nav li ul { padding-left: 50px;}
	#hd .sp-menu .gNav ul.nav li ul li { padding: 15px 0 0;}
	#hd .sp-menu .gNav ul.nav li ul li a span { font-size: 13px;}
	#hd .sp-menu .gNav ul.nav li ul li br { display: none;}
	#hd .sp-menu .gNav ul.nav li.cart a,
	#hd .sp-menu .gNav ul.nav li.insta a { position: relative; padding-left: 45px;}
	#hd .sp-menu .gNav ul.nav li svg#icn-cart,
	#hd .sp-menu .gNav ul.nav li svg#icn-insta { position: absolute; left: 0; top: 50%; transform: translate(0,-50%);}
	#hd .sp-menu .gNav ul.nav li svg#icn-cart { width: auto; height: 30px; vertical-align: middle; margin-right: 10px;}
	#hd .sp-menu .gNav ul.nav li svg#icn-insta { width: auto; height: 30px; vertical-align: middle; margin-right: 10px;}
	#hd .sp-menu .gNav ul.nav li.insta span { display: inline-block; font-size: 24px; vertical-align: middle;}
	#hd .sp-menu .gNav ul.subNav { display: block; padding-top: 40px;}
	#hd .sp-menu.active .gNav { z-index: 10	;}
}
@media (max-width: 481px) {
	#hd .sp-menu { right: 15px; top: 10px;}
	#hd .hd-cart { right: 60px; top: 10px;}

	#hd .sp-menu .gNav .inner { padding: 60px 25px 30px;}
	#hd .sp-menu .gNav ul.nav li { padding: 6px 0;}
	#hd .sp-menu .gNav ul.nav li span em.min { font-size: 18px;}
	#hd .sp-menu .gNav ul.nav li span em.jp { font-size: 10px;}
	#hd .sp-menu .gNav ul.nav li svg#icn-cart { height: 21px; left: 7px;}
	#hd .sp-menu .gNav ul.nav li svg#icn-insta { height: 21px; left: 5px;}
	#hd .sp-menu .gNav ul.nav li.insta a { padding-left: 36px;}
	#hd .sp-menu .gNav ul.nav li.insta span { font-size: 18px;}

	#hd .sp-menu .gNav ul.subNav { padding-top: 25px;}
	#hd .sp-menu .gNav ul.subNav li a { padding: 8px 0; font-size: 11px;}
}



.pagetop { position: fixed; bottom: 80px; right: 4%; width: 50px; height: 50px; z-index: 12;}
.pagetop a { position: relative; display: block; width: 100%; height: 100%; background: #f2eaee; border-radius: 50%;}
.pagetop a:before { content: ''; display: block; width: 15px; height: 15px; border-top: solid 2px #000; border-left: solid 2px #000;
 position: absolute; left: 50%; top: 42%; transform: translate(-50%,0%) rotate(45deg);
}


/* footer */
#ft { position: relative; width: 100%; max-width: 1280px; margin: 0 auto; z-index: 11;}
#ft .ft-link { padding: 40px 0 50px; background: #052752;}
#ft .ft-link ul { font-size: 0; text-align: center;}
#ft .ft-link ul li { display: inline-block; padding: 0 15px; font-size: 14px; font-weight: 700;}
#ft .ft-link ul li a { color: #fff; text-decoration: none;}
#ft .ft-link ul li a:hover { text-decoration: underline;}
#ft .ft-logo { padding: 30px 0;}
#ft .ft-logo p { text-align: center;}
#ft .ft-logo p span,
#ft .ft-logo p a { display: inline-block; width: 30%; max-width: 180px;}
#ft .ft-logo p span img,
#ft .ft-logo p a img { width: 100%;}

#ft .inner-ft { width: 90%; margin: 0px auto; padding: 70px 0 40px;}
#ft .inner-ft ul { margin-bottom: 15px; font-size: 0; text-align: center;}
#ft .inner-ft ul li { display: inline-block; padding: 0 15px; font-size: 14px; font-weight: 700;}
#ft .inner-ft ul li a { color: #444; text-decoration: none;}
#ft .inner-ft ul li a:hover { text-decoration: underline;}
@media screen and (max-width: 641px){
	#ft .ft-link { padding: 30px 0;}
	#ft .ft-link ul li { display: block; padding: 10px 0;}

	#ft .inner-ft { padding: 30px 0;}
	#ft .inner-ft ul li { display: block; padding: 10px 0;}
}
@media screen and (max-width: 481px){
	#ft .ft-link { padding: 20px 0;}
	#ft .ft-link ul li { font-size: 12px;}
	#ft .ft-logo { padding: 12px 0;}

	#ft .inner-ft { padding: 20px 0;}
	#ft .inner-ft ul { margin-bottom: 10px;}
	#ft .inner-ft ul li { padding: 8px 0; font-size: 12px;}
}


/*
#ft .note { padding: 18px 0; background: #031636;}
#ft .note .inner { width: 90%; max-width: 660px; margin: 0 auto;}
#ft .note p { color: #bcbbbc; font-size: 12px; letter-spacing: 0.1rem;}
#ft .ftNav { padding: 40px 0; background: #052752;}
#ft .inner-ft { width: 92%; margin: 0 auto; padding: 70px 0 50px;}
#ft .inner-ft.pa30 { padding: 30px 0;}
#ft h3 { text-align: center;}
#ft h3 img{ width: 50%; max-width: 230px;}
#ft ul { font-size: 0; text-align: center;}
#ft ul.mb { margin-bottom: 40px;}
#ft ul li { display: inline-block; margin: 0 18px; font-size: 14px;}
#ft ul li a { color: #fff; text-decoration: none;}
#ft ul.mb li a { color: #000;}
@media (max-width: 641px) {
	#ft ul li { display: block; margin: 0 auto 15px;}
}
@media (max-width: 481px) {
	#ft .inner-ft { padding: 40px 0;}
	#ft .note p { font-size: 10px;}
	#ft .ftNav { padding: 20px 0;}
	#ft ul.mb { margin-bottom: 30px;}
	#ft ul li { margin: 0 auto 10px; font-size: 12px;}
}
*/



/* footer */
#ft2 {}
#ft2 .inner-ft { width: 100%; max-width: 1280px; margin: 0 auto; background: #eee;}
#ft2 .ft-flex { display: flex; padding: 18px 0;}
#ft2 .ft-logo { width: 30%;}
#ft2 .ft-nav { width: 70%;}
#ft2 .ft-logo h3 { text-align: center;}
#ft2 .ft-logo h3 a { display: inline-block; width: 50%; max-width: 150px;}
#ft2 .ft-logo h3 a img{ width: 100%;}
#ft2 .ft-nav ul { font-size: 0; text-align: center;}
#ft2 .ft-nav ul li { display: inline-block; padding: 0 15px;}
#ft2 .ft-nav ul li a { color:#333; font-size: 14px; text-decoration:none;}
#ft2 .ft-nav ul li a:hover { text-decoration:underline;}

#ft2 .copyright { width: 100%; margin: 0 auto; background:#303030; padding:12px;}
#ft2 .copyright p { color:#fff; font-size:12px; text-align:center;}

@media screen and (max-width: 801px){
	#ft2 .ft-flex { display: block; padding: 18px 0;}
	#ft2 .ft-logo { width: 100%; margin: 0 auto 20px;}
	#ft2 .ft-nav { width: 92%; margin: 0 auto;}
	#ft2 .ft-nav ul li { padding: 0 10px;}
}
@media screen and (max-width: 641px){
	#ft2 .inner-ft { background: #fff;}
	#ft2 .ft-nav ul li { width: 50%; padding: 8px;}
	#ft2 .ft-nav ul li a { display: block; padding: 7px 0; border: solid 1px #333; font-size: 12px;}
}


a.btn { position: relative; display: block; width: 100%; overflow: hidden; border: solid 1px #fff; border-radius: 8px;
 box-shadow: 0 0 12px #ffc, 0 0 12px #ffc inset; text-decoration: none; transition: 0.2s linear;
}
a.btn span.box { position: relative; z-index: 2; display: block; padding: 8px; background: rgba(255,255,255,0.25);
 color: #fff; text-align: center; text-decoration: none;
}
a.btn span.box em { font-size: 17px; font-weight: 700; letter-spacing: 0.15rem;}
a.btn span.box:after { content: ''; display: block; width: 8px; height: 8px; border-top: solid 1px #fff; border-right: solid 1px #fff;
 position: absolute; right: 20px; top: 50%; transform: translate(0,-50%) rotate(45deg);
}
a.btn:after { content: ''; display: block; width: 40px; height: 80px; background: rgba(255,255,255,0.85);
 position: absolute; left: -30px; top: -30px; transform: rotate(30deg);
 animation: shiny-btn1 3s ease-in-out infinite;
}
a.btn:hover { opacity: 0.8;}

@media (max-width: 481px) {
	a.btn { border-radius: 4px; box-shadow: 0 0 6px #ffc, 0 0 6px #ffc inset;}
	a.btn span.box { padding: 4px;}
}


.popup { width: 94%; max-width: 900px; margin: 0 auto;}
.popup .popup-in { background: #fff; border-radius: 15px; overflow: hidden;}
.popup .popup-in.pb { padding-bottom: 40px;}




#choose { position: relative; width: 100%; max-width: 1280px; margin: 0 auto; z-index: 2;}
#choose .inner-sct { padding: 70px 0 140px;}
#choose .ttl { margin-bottom: 30px;}
#choose h3 { margin-bottom: 40px; color: #fff; font-size: 38px; font-weight: 700; letter-spacing: 0.1rem; text-align: center;}
#choose p.read { margin-bottom: 50px; color: #fff; font-size: 24px; letter-spacing: 0.1rem; text-align: center;}
#choose .pc-flex { display: flex; justify-content: space-between; width: 92%; max-width: 940px; margin: 0 auto;}
#choose .pc-flex div { width: 32%;}
#choose .pc-flex img { width: 100%; border-radius: 30px;}
#choose .sp-slide { display: none;}
#choose .sp-slide .slider img { width: 94%; max-width: 350px; margin: 0 auto; border-radius: 20px;}
#choose .note { width: 94%; max-width: 1000px; margin: 0 auto; padding-top: 40px;}
#choose .note p { color: #fff; font-size: 12px; text-align: right;}
@media (max-width: 801px) {
	#choose .inner-sct { padding: 40px 0 60px;}
	#choose .ttl { margin-bottom: 0px;}
	#choose h3 { margin-bottom: 30px; font-size: 5.0vw;}
	#choose p.read { margin-bottom: 30px; font-size: 3vw;}
}
@media (max-width: 641px) {
	#choose .pc-flex { display: none;}
	#choose .sp-slide { display: block;}
}
@media (max-width: 481px) {
	#choose .inner-sct { padding: 20px 0;}
	#choose h3 { margin-bottom: 20px; font-size: 18px;}
	#choose p.read { margin-bottom: 20px; font-size: 14px;}
	#choose .note { padding-top: 10px;}
	#choose .note p { font-size: 10px;}
}


#sns .inner-sct { width: 92%; max-width: 1000px; margin: 0 auto; padding: 80px 0;}
#sns h2 { margin-bottom: 30px; line-height: 1; text-align: center;}
#sns h2 img { width: 60%; max-width: 268px;}
#sns .ctn ul { width: 80%; max-width: 200px; margin: 0 auto; font-size: 0; text-align: center;}
#sns .ctn ul li { display: inline-block; width: 40px; margin: 0 20px;}
#sns .ctn ul li a { display: block; width: 92%;}
#sns .ctn ul li a svg { width: 100%; fill: #fff;}
#sns .ctn ul li a:hover { opacity: 0.8;}
@media (max-width: 641px) {
}
@media (max-width: 481px) {
	#sns .inner-sct { padding: 40px 0;}
	#sns h2 { margin-bottom: 20px;}
	#sns .ctn ul li { width: 32px; margin: 0 12px;}
}


aside.other { position: relative; width: 100%; max-width: 1280px; margin: 0 auto; z-index: 2;}
aside.other.dm { background: url('../img/bg-dm.jpg') no-repeat 50% 50% / cover;}
aside.other.ms { background: url('../img/bg-ms.jpg') no-repeat 50% 50% / cover;}
aside.other.nr { background: url('../img/bg-nr.jpg') no-repeat 50% 50% / cover;}
aside.other.tera { background: url('../img/bg-tera.jpg') no-repeat 50% 50% / cover;}
aside.other .inner-sct { position: relative; width: 92%; margin: 0 auto; padding: 140px 0;}
aside.other .ctn { position: relative; width: 50%; margin: 0 0 0 auto;}
aside.other .ctn h2 { margin-bottom: 30px; text-align: center;}
aside.other .ctn h2 img { width: 100%; max-width: 400px;}
aside.other.tera .ctn h2 img { width: 100%; max-width: 460px;}
aside.other.tera .ctn h2 img.sp { display: none;}
aside.other .ctn .btn { width: 80%; max-width: 280px; margin: 0 auto;}
aside.other .ctn .btn a { display: block; padding: 10px 0; background: rgba(255,255,255,1); border-radius: 50px;
  color: #0f275d; font-size: 28px; font-weight: 700; text-align: center; text-decoration: none;
}
aside.other .ctn .btn a:hover { background: rgba(255,255,255,0.5);}
aside.other .note { position: absolute; left: 0; bottom: 60px; width: 100%; padding: 0 50px;}
aside.other .note p { color: #fff; font-size: 12px; text-align: right;}
@media (max-width: 1001px) {
	aside.other .inner-sct { padding: 8vw 0;}
	aside.other .ctn .btn a { font-size: 2.6vw;}
	aside.other .note { bottom: 4vw;}
}
@media (max-width: 801px) {
	aside.other .ctn h2 { margin-bottom: 20px;}
}
@media (max-width: 641px) {
}
@media (max-width: 481px) {
	aside.other .inner-sct { padding: 6vw 0;}
	aside.other.tera .inner-sct { padding: 4vw 0 16px;}
	aside.other .ctn h2 { margin-bottom: 8px;}
	aside.other.tera .ctn h2 { margin-bottom: 4px;}
	aside.other.tera .ctn h2 img.pc { display: none;}
	aside.other.tera .ctn h2 img.sp { display: block; width: 80%; margin: 0 auto;}
	aside.other .ctn .btn a { padding: 5px 0; font-size: 14px;}
	aside.other .note { bottom: 1.2vw; padding: 0px;}
	aside.other .note p { font-size: 10px;}
}

/* aside */
aside.links { position: relative;}
aside .inner-sct { position: relative; width: 92%; max-width: 1200px; margin: 0 auto; z-index: 2;}
aside.links h4 { margin-bottom: 10px; color: #53341c; font-size: 32px; font-weight: 700; line-height: 1.4; text-align: center;}
aside.links h4 span { display: block; font-size: 27px;}
aside.links ul { width: 100%; max-width: 900px; margin: 0 auto; font-size: 0; text-align: center;}
aside.links ul li { display: inline-block; width: 50%; padding: 14px 0;}
aside.links ul li:first-child { width: 52%;}
aside.links ul li a { display: block; width: 92%; max-width: 390px; margin: 0 auto; overflow: hidden; border-radius: 30px;}
aside.links ul li img{ width: 100%;}
aside.links ul li a:hover { opacity: 0.8;}
@media (max-width: 641px) {
	aside .inner-sct { position: relative; width: 92%; max-width: 1200px; margin: 0 auto;}
	aside.links h4 { font-size: 4.2vw;}
	aside.links h4 span { font-size: 3.6vw;}
	aside.links ul li { display: block; width: 100%; padding: 8px 0;}
	aside.links ul li:first-child { width: 100%;}
	aside.links ul li a { border-radius: 20px;}
}
@media (max-width: 481px) {
	aside.links h4 { font-size: 16px;}
	aside.links h4 span { font-size: 18px;}
}


.functions { padding: 60px 0; background: #f6f6f6;}
.functions ul { width: 90%; max-width: 620px; margin: 0 auto; text-align: center; font-size: 0; }
.functions ul li { display: inline-block; width: 50%; }
.functions ul li a { display: block; width: 94%; max-width: 280px; margin: 0 auto;}
.functions ul li a img { width: 100%; height: auto;}
.functions ul li a:hover img { opacity: 0.6;}
@media screen and (max-width: 641px){
}
@media screen and (max-width:480px){
	.functions { padding: 20px 0;}
	.functions ul li { display: block; width: 100%; padding: 8px;}
	.functions ul li a { width: 80%;}
}

