@charset "utf-8";
/* --------------------------------------------------
	reset
-------------------------------------------------- */
*,
::before,
::after { box-sizing: border-box;}

html { line-height: 1.15; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent;}
body { margin: 0;}
main { display: block;}
p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0;}
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0;}
ul, ol { margin: 0; padding: 0; list-style: none;}
dd { margin-left: 0;}
hr { box-sizing: content-box; height: 0; overflow: visible; border-top-width: 1px; margin: 0; clear: both; color: inherit;}
pre { font-family: monospace, monospace; font-size: inherit;}
address { font-style: inherit;}
a { background-color: transparent; text-decoration: none; color: inherit;}
abbr[title] { text-decoration: underline dotted;}
code, kbd, samp { font-family: monospace, monospace; font-size: inherit;}
small { font-size: 80%;}
sub,
sup { line-height: 0; position: relative; vertical-align: baseline;}

svg, img, embed, object, iframe { vertical-align: bottom;}

/* Forms */
/* ============================================ */
button, input, optgroup, select, textarea { -webkit-appearance: none; appearance: none; background: transparent; padding: 0; margin: 0; border-radius: 0;
 color: inherit; font: inherit; text-align: inherit; text-transform: inherit; vertical-align: middle;
}
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer;}
button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled { cursor: default;}
:-moz-focusring { outline: auto;}
select:disabled { opacity: inherit;}
option { padding: 0;}
fieldset { margin: 0; padding: 0; min-width: 0;}
legend { padding: 0;}

progress { vertical-align: baseline;}
textarea { overflow: auto;}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button { height: auto;}
[type="search"] { outline-offset: -2px;}
[type="search"]::-webkit-search-decoration { -webkit-appearance: none;}

::-webkit-file-upload-button { -webkit-appearance: button; font: inherit;}
[type="number"] { -moz-appearance: textfield;}
label[for] { cursor: pointer;}
details { display: block;}
summary { display: list-item;}
[contenteditable]:focus { outline: auto;}

table { border-color: inherit; border-collapse: collapse;}
td,
th { vertical-align: top; padding: 0;}


/*	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: #000; border: none; border-radius: 50%; 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: 0px; height: 0px; top: 50%; transform: translateY(-50%);}
.slick-prev:before { left: 30%; border: solid 9px transparent; border-right: solid 16px #fff; border-left: 0;}
.slick-next:before { right: 30%; border: solid 9px transparent; border-left: solid 16px #fff; border-right: 0;}

/** Dots */
.slick-dotted.slick-slider{ margin-bottom: 30px;}
.slick-dots { position: absolute; bottom: -25px; display: block; width: 100%; padding: 0; margin: 0; text-align: center;}
.slick-dots li { position: relative; display: inline-block; width: 20px; height: 20px; margin: 0 5px; padding: 0; cursor: pointer;}
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 20px; height: 20px; padding: 5px; cursor: pointer;
 color: transparent; border: 0; outline: none; background: transparent; 
}
.slick-dots li button:hover,
.slick-dots li button:focus{ outline: none;}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before { opacity: 1;}
.slick-dots li button:before { font-family: 'slick'; font-size: 6px; line-height: 20px; position: absolute; top: 0; left: 0;
	width: 20px; height: 20px; content: '•'; text-align: center; opacity: .25; color: black;
}
.slick-dots li.slick-active button:before { opacity: .75; color: black;}

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



html{
  height: -webkit-fill-available;
}
body{
  min-height: 100vh;
  min-height: -webkit-fill-available;
}



/*		font-style
-------------------------------------------------- */
body { width: 100%;
	 color: #5f6568;
/*	font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;*/
	font-family: "游ゴシック","Yu Gothic","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3", "メイリオ","Meiryo",sans-serif;
	font-size: 16px;
	*font-size:small;
	*font:x-small;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body.fixed { position: fixed;}

.min { font-family: "Noto Serif JP","游明朝", "Yu Mincho", "YuMincho", serif;}
.eng { font-family: "Playfair Display", serif;}


a { color:#002159; text-decoration: none;}
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;}


#hd { display: block; position: fixed; left: 0; top: 0; width: 100%; height: 100vh; z-index: -1;}
#hd:after { content: ''; display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; opacity: 0; z-index: 10; background: rgba(200,200,200,0.9);
 transition: 0.2s linear;
}
#hd .inner-hd { position: relative; width: 100%; max-width: 1280px; height: 100%; margin: 0 auto; overflow: hidden;}
#hd .menu { position: absolute; right: -500px; top: 0; width: 100%; z-index: 100; max-width: 320px; height: 100%; padding: 40px 0 20px; background: #fff; transition: 0.4s linear 0.2s;}
#hd .menu .scroll { width: 100%; height: 100%; overflow-y: scroll; }
#hd .menu .logo { width: 88%; max-width: 300px; margin: 0 auto 20px;}
#hd .menu .logo a { display: block; width: 100%; max-width: 80px;}
#hd .menu .logo a img { width: 100%;}
#hd .menu ul.nav { width: 88%; max-width: 300px; margin: 0 auto 20px;}
#hd .menu ul.nav li { position: relative; padding: 10px 0; font-size: 14px;}
#hd .menu ul.nav li a { display: inline-block; color: #7ba7cb; font-weight: 700; letter-spacing: 0.3rem; text-decoration: none;}

#hd .menu ul.sns { width: 88%; max-width: 300px; margin: 0 auto 40px;}
#hd .menu ul.sns li { position: relative; padding: 8px 0; font-size: 14px;}
#hd .menu ul.sns li img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 24px;}
#hd .menu ul.sns li a { display: inline-block; padding-left: 36px; color: #7ba7cb; font-weight: 700; letter-spacing: 0.3rem; text-decoration: none;}


#hd .menu ul.aside { width: 92%; margin: 0 auto; font-size: 0; text-align: center;}
#hd .menu ul.aside li { display: inline-block; width: 50%; padding: 5px; font-size: 10px;}
#hd .menu ul.aside li a { display: block; padding: 5px 0; border: solid 1px #7ba7cb; border-radius: 50px; color: #7ba7cb; text-decoration: none;}

#hd .menu ul.nav li a:hover,
#hd .menu ul.sns li a:hover { color: #333;}
#hd .menu ul.aside li a:hover { border-color: #333; color: #333;}

#hd.open { z-index: 101;}
#hd.open:after { opacity: 1;}
#hd.open .menu { right: 0; z-index: 11;}

@media (max-width: 481px) {
	#hd .menu { max-width: 90%; transition: 0s linear 0.2s;}
}


.menu-btn { position: fixed; width: 100%; top: 0; left: 0; z-index: 102; opacity: 0; transition: 0.3s linear;}
.menu-btn.show { opacity: 1}
.menu-btn .inner { position: relative; width: 100%; max-width: 1280px; margin: 0 auto; }
.menu-btn .menu-cart { width: 36px; position: absolute; right: 30px; top: 28px;}
.menu-btn .menu-cart.hide { display: none;}
.menu-btn .menu-cart a { display: block; width: 100%; }
.menu-btn .menu-cart a svg { width: 100%; fill: #333;}
.menu-btn .menu-trig { width: 32px; height: 32px; position: absolute; top: 30px; right: 90px;}
.menu-btn .menu-trig div { position: relative; width: 100%; height: 100%; cursor: pointer;}
.menu-btn .menu-trig div span { display: block; width: 100%; height: 2px; background: #333; position: absolute; left: 50%;}
.menu-btn .menu-trig div span:nth-of-type(1) { top: 5px; transform: translate(-50%,0);}
.menu-btn .menu-trig div span:nth-of-type(2) { top: 15px; transform: translate(-50%,0);}
.menu-btn .menu-trig div span:nth-of-type(3) { top: 25px; transform: translate(-50%,0);}
.menu-btn .menu-trig.active { right: 30px;}
.menu-btn .menu-trig.active div span:nth-of-type(1) { animation: menu-1 0.3s linear forwards; background: #7ba7cb;}
.menu-btn .menu-trig.active div span:nth-of-type(2) { opacity: 0;}
.menu-btn .menu-trig.active div span:nth-of-type(3) { animation: menu-2 0.3s linear forwards; background: #7ba7cb;}
@media (max-width: 801px) {
	.menu-btn .menu-cart { display: none;}
	.menu-btn .menu-trig { top: 20px; right: 30px;}
}
@media (max-width: 481px) {
	.menu-btn .menu-trig { width: 30px; height: 30px; top: 14px; right: 18px;}
	.menu-btn .menu-trig div span:nth-of-type(1) { top: 6px;}
	.menu-btn .menu-trig div span:nth-of-type(2) { top: 14px;}
	.menu-btn .menu-trig div span:nth-of-type(3) { top: 22px;}
	.menu-btn .menu-trig.active { right: 18px;}
	.menu-btn .menu-trig.active div span:nth-of-type(1) { animation: menu-1sp 0.3s linear forwards;}
	.menu-btn .menu-trig.active div span:nth-of-type(3) { animation: menu-2sp 0.3s linear forwards;}
}
@keyframes  menu-1{
	0% { transform: translate(-50%,0px); }
	50% { transform: translate(-50%,10px) rotate(0deg); }
	80% { transform: translate(-50%,10px) rotate(0deg); box-shadow: none;}
	100% { transform: translate(-50%,10px) rotate(45deg); box-shadow: none;}
}
@keyframes  menu-2{
	0% { transform: translate(-50%,0px); }
	50% { transform: translate(-50%,-10px) rotate(0deg); }
	80% { transform: translate(-50%,-10px) rotate(0deg); box-shadow: none;}
	100% { transform: translate(-50%,-10px) rotate(-45deg); box-shadow: none;}
}
@keyframes  menu-1sp{
	0% { transform: translate(-50%,0px); }
	50% { transform: translate(-50%,8px) rotate(0deg); }
	80% { transform: translate(-50%,8px) rotate(0deg); box-shadow: none;}
	100% { transform: translate(-50%,8px) rotate(45deg); box-shadow: none;}
}
@keyframes  menu-2sp{
	0% { transform: translate(-50%,0px); }
	50% { transform: translate(-50%,-8px) rotate(0deg); }
	80% { transform: translate(-50%,-8px) rotate(0deg); box-shadow: none;}
	100% { transform: translate(-50%,-8px) rotate(-45deg); box-shadow: none;}
}



#ft { position: relative;}
#ft .inner-ft{ padding: 40px 0px; background: #fff;}
#ft h3 { margin: 0 auto 30px; text-align: center;}
#ft h3 img{ width: 32%; max-width: 140px;}
#ft ul { font-size: 0; text-align: center;}
#ft ul li { display: inline-block; font-size: 13px; padding: 0 25px;}
#ft ul li:first-child{ border-left: none;}
#ft ul li a { color: #000;}
#ft ul li a:hover { text-decoration: underline;}
#ft .copyright { background: #000; padding: 10px 0;}
#ft .copyright p { color: #fff; font-size: 12px; text-align: center;}
@media (max-width: 1201px) {
}
@media (max-width: 1001px) {
}
@media (max-width: 801px) {
	#ft .inner-ft{ padding: 50px 0 60px;}
}
@media (max-width: 481px) {
	#ft .inner-ft{ padding: 42px 0 20px;}
	#ft p.note { font-size: 11px;}
	#ft p.note span { font-size: 13px;}
	#ft p.note span em { font-size: 16px;}
	#ft ul { margin: 0 auto 15px;}
	#ft ul li { display: block; font-size: 13px; padding: 10px; border-left: none;}
}

.note ul { font-size: 0px;}
.note ul li { font-size: 11px;}
@media (max-width: 481px) {
	.note ul li { font-size: 10px;}
}

