@charset "utf-8";

@font-face {font-family:"Yu Gothic"; font-weight:normal; src:local("游ゴシック Medium"),local("Yu Gothic Medium");}
@font-face {font-family:"Yu Gothic"; font-weight:bold; src:local("游ゴシック Bold"),local("Yu Gothic Bold");}
@font-face {font-family:"Helvetica Neue"; font-weight:100; src:local("Helvetica Neue Regular");}
@font-face {font-family:"Helvetica Neue"; font-weight:200; src:local("Helvetica Neue Regular");}
@font-face {
	font-family:"YakuHanJP";
	font-style:normal;
	font-weight:100;
	src:url("../fonts/YakuHanJP/YakuHanJP-Thin.eot");
	src:url("../fonts/YakuHanJP/YakuHanJP-Thin.woff2") format("woff2"), 
	    url("../fonts/YakuHanJP/YakuHanJP-Thin.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJP";
	font-style:normal;
	font-weight:200;
	src:url("../fonts/YakuHanJP/YakuHanJP-Light.eot");
	src:url("../fonts/YakuHanJP/YakuHanJP-Light.woff2") format("woff2"), 
	    url("../fonts/YakuHanJP/YakuHanJP-Light.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJP";
	font-style:normal;
	font-weight:300;
	src:url("../fonts/YakuHanJP/YakuHanJP-DemiLight.eot");
	src:url("../fonts/YakuHanJP/YakuHanJP-DemiLight.woff2") format("woff2"), 
	    url("../fonts/YakuHanJP/YakuHanJP-DemiLight.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJP";
	font-style:normal;
	font-weight:400;
	src:url("../fonts/YakuHanJP/YakuHanJP-Regular.eot");
	src:url("../fonts/YakuHanJP/YakuHanJP-Regular.woff2") format("woff2"), 
	    url("../fonts/YakuHanJP/YakuHanJP-Regular.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJP";
	font-style:normal;
	font-weight:500;
	src:url("../fonts/YakuHanJP/YakuHanJP-Medium.eot");
	src:url("../fonts/YakuHanJP/YakuHanJP-Medium.woff2") format("woff2"), 
	    url("../fonts/YakuHanJP/YakuHanJP-Medium.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJP";
	font-style:normal;
	font-weight:700;
	src:url("../fonts/YakuHanJP/YakuHanJP-Bold.eot");
	src:url("../fonts/YakuHanJP/YakuHanJP-Bold.woff2") format("woff2"), 
	    url("../fonts/YakuHanJP/YakuHanJP-Bold.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJP";
	font-style:normal;
	font-weight:900;
	src:url("../fonts/YakuHanJP/YakuHanJP-Black.eot");
	src:url("../fonts/YakuHanJP/YakuHanJP-Black.woff2") format("woff2"), 
	    url("../fonts/YakuHanJP/YakuHanJP-Black.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJPs";
	font-style:normal;
	font-weight:100;
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Thin.eot");
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Thin.woff2") format("woff2"), 
	    url("../fonts/YakuHanJPs/YakuHanJPs-Thin.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJPs";
	font-style:normal;
	font-weight:200;
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Light.eot");
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Light.woff2") format("woff2"), 
	    url("../fonts/YakuHanJPs/YakuHanJPs-Light.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJPs";
	font-style:normal;
	font-weight:300;
	src:url("../fonts/YakuHanJPs/YakuHanJPs-DemiLight.eot");
	src:url("../fonts/YakuHanJPs/YakuHanJPs-DemiLight.woff2") format("woff2"), 
	    url("../fonts/YakuHanJPs/YakuHanJPs-DemiLight.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJPs";
	font-style:normal;
	font-weight:400;
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Regular.eot");
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Regular.woff2") format("woff2"), 
	    url("../fonts/YakuHanJPs/YakuHanJPs-Regular.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJPs";
	font-style:normal;
	font-weight:500;
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Medium.eot");
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Medium.woff2") format("woff2"), 
	    url("../fonts/YakuHanJPs/YakuHanJPs-Medium.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJPs";
	font-style:normal;
	font-weight:700;
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Bold.eot");
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Bold.woff2") format("woff2"), 
	    url("../fonts/YakuHanJPs/YakuHanJPs-Bold.woff") format("woff");
}
@font-face {
	font-family:"YakuHanJPs";
	font-style:normal;
	font-weight:900;
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Black.eot");
	src:url("../fonts/YakuHanJPs/YakuHanJPs-Black.woff2") format("woff2"), 
	    url("../fonts/YakuHanJPs/YakuHanJPs-Black.woff") format("woff");
}
@font-face {
	font-family:"icons";
	font-weight:normal;
	font-style :normal;
	font-display:block;
	src:url("../fonts/icons/icons.eot#ie")  format("embedded-opentype"), 
	    url("../fonts/icons/icons.ttf")     format("truetype"), 
	    url("../fonts/icons/icons.woff")    format("woff"), 
	    url("../fonts/icons/icons.svg#svg") format("svg"); 
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {margin:0; padding:0; border:0; outline:0; font-size:inherit; font-style:inherit; vertical-align:baseline; background:transparent;}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {display:block;}
i, em {font-style:normal;}
ol, ul {list-style:none;}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after,
q:before, q:after {content:''; content:none;}
a {margin:0; padding:0; font-size:inherit; vertical-align:baseline; background:transparent;}
table {border-collapse:collapse; border-spacing:0;}
hr {display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0;}
input, select, button, textarea, pre {font-size:inherit; font-family:inherit;}
input, select {vertical-align:middle;}
img {vertical-align:bottom; transform:translateZ(0);}
sup {position:relative; top:-0.1em; font-size:60%; vertical-align:top;}
h1, h2, h3, h4, h5, h6 {line-height:1.5;}

html {
	height:100%; font-size:10px; 
	/*font-family:YakuHanJP,-apple-system,"Helvetica Neue",Aileron,BlinkMacSystemFont,"Segoe UI","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;}*/
	font-family:YakuHanJP,-apple-system,"Helvetica Neue",Aileron,BlinkMacSystemFont,"Segoe UI","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Noto Sans","Noto Sans JP",Meiryo,sans-serif;
}
body {
	width:100%; height:100%; background:#fff; color:#000; font-size:1.4rem; text-align:left; line-height:2; hyphens:auto; 
	-webkit-text-size-adjust:100%; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
@media all and (-ms-high-contrast:none) {
/*html {font-family:YakuHanJP,Verdana,Meiryo,sans-serif;}*/
html {font-family:YakuHanJP,Verdana,"Noto Sans JP",Meiryo,sans-serif;}
}
@media all and (-ms-high-contrast:active) {
/*html {font-family:YakuHanJP,Verdana,Meiryo,sans-serif;}*/
html {font-family:YakuHanJP,Verdana,"Noto Sans JP",Meiryo,sans-serif;}
}

a, 
a img, 
a::before, 
a::after, 
button, 
button::before, 
button::after  {
	color:inherit; outline:none; 
	transition:all 0.2s ease-in-out 0s; transition-property:border-color,background-color,color,opacity;}
a {text-decoration:underline;}
a:hover {text-decoration:none;}
button:focus, 
input::-moz-focus-inner, 
button::-moz-focus-inner {outline:none; border-width:0;}
sup {font-size:80%;}
h1 {
	font-weight:500;
	font-family:brandon-grotesque,"Noto Sans JP","NoChattering",sans-serif;}
h2, h3, h4, h5, h6, strong {
	font-weight:300; 
	font-family:YakuHanJP,-apple-system,"Helvetica Neue","Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,Meiryo,sans-serif;}

.pc {}
.sp {display:none;}

#container_ {
	display:-webkit-flex; display:flex; 
	-webkit-flex-direction:column; flex-direction:column; 
	min-width:1200px; min-height:100%; position:relative; overflow:hidden;}
#container_::after {display:block; content:""; clear:both; height:0;}

@media screen and (max-width:599px) {

html {font-size:10px; font-size:2.6666vw;}
body {min-width:320px; max-width:599px; font-size:1.2rem; overflow-x:hidden;}
a:hover {color:inherit;}
a:hover img {opacity:1;}

.pc {display:none;}
.sp {display:unset;}
br.sp {display:block;}

#container_ {width:100%; min-width:320px; padding:0;}
#container_::after {}

}


/** #header_ **/
#header_ {
	display:-webkit-flex; display:flex; 
	-webkit-align-items:flex-start; align-items:flex-start; 
	min-width:900px; position:fixed; left:0; right:0; top:0; z-index:9999; padding:17px 50px; background:rgba(255,255,255,0.9); box-sizing:border-box; pointer-events:none; 
	font-family:brandon-grotesque,"Noto Sans JP","NoChattering",sans-serif; transition:padding 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0.2s ease-in-out;}
#header_ > h1 {position:relative; z-index:9903; margin:-30px 0 -30px -30px; pointer-events:auto;}
#header_ > h1 > a {display:block; width:260px; height:0; position:relative; padding:90px 0 0; overflow:hidden;}
#header_ > h1 > a > svg {position:absolute; left:0; right:0; top:0; bottom:0; margin:auto; fill:currentColor;}
#header_ > nav {
	display:-webkit-flex; display:-ms-flexbox; display:flex; 
	margin:0 0 0 auto; pointer-events:auto;}
#header_ > nav a {display:block; text-decoration:none;}
#header_ > nav > h1 {display:none;}
#header_ > nav > ul {
	display:-webkit-flex; display:flex; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	margin:0 -0.7em 0 0; font-size:1.6rem; font-weight:500; text-align:center; line-height:1.2;}
#header_ > nav > ul a {display:block; position:relative; text-decoration:none;}
#header_ > nav > ul a::after {display:block; content:""; position:absolute; left:0.7em; right:0.7em; bottom:0; border-bottom:1px solid transparent; transition:border-color 0.3s ease-in-out;}
#header_ > nav > ul a[target="_blank"]::before {content:"\e919"; margin:0 0.5em 0 0; font:normal 0.8em/1 icons; transition:none;}
#header_ > nav > ul a:hover::after {border-color:#000;}
#header_ > nav > ul > li {position:relative; z-index:2; padding:0.7em;}
#header_ > nav > ul > li > a, 
#header_ > nav > ul > li > b {margin:-0.7em; padding:inherit;}
#header_ > nav > ul > li > b {display:block; cursor:pointer; transition:color 0.2s ease-in-out 0s;}
#header_ > nav > ul > li > ul {
	height:0; position:absolute; left:0; bottom:0; padding:0 0.7em; transform:translateY(-2em); 
	font-family:brandon-grotesque,"Noto Sans JP","NoChattering",sans-serif; text-align:left; white-space:nowrap;
	opacity:0; pointer-events:none; transition:0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s; transition-property:transform,opacity;}
#header_ > nav > ul > li > ul > li {margin:0 -0.7em; padding:0.5em 0.7em; font-size:1.6rem;}
#header_ > nav > ul > li > ul > li > a {margin:-0.5em -0.7em; padding:inherit;}
#header_ > nav > ul > li > b:hover + ul, 
#header_ > nav > ul > li > ul:hover {transform:translateY(0); opacity:1; pointer-events:auto;}
#header_ > nav > ul > li.language {margin-left:1em; padding-right:0.98em; font-size:1.4rem; font-weight:400;}
#header_ > nav > ul > li.language > a {margin:0; padding:0.2em 0.5em; border:1px solid #000;}
#header_ > nav > ul > li.language > a::after {display:none;}
#header_ > nav > ul > li.language > a:hover {background-color:#000; color:#fff;}

html.fac-initial        #container_ #header_, 
html.fac-initial        #container_ #header_ > h1 > a, 
html.fac-initial        #container_ #header_ > nav > h1 {transition:padding 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s;}
html.fac-header-collide #container_ #header_, 
html.fac-nav-show       #container_ #header_ {background:transparent; color:#fff;}
html.fac-header-collide #container_ #header_ > nav > ul a, 
html.fac-nav-show       #container_ #header_ > nav > ul a, 
html.fac-header-collide #container_ #header_ > nav > ul a:hover::after, 
html.fac-nav-show       #container_ #header_ > nav > ul a:hover::after {border-color:#fff;}
html.fac-header-collide #container_ #header_ > nav > ul > li.language > a:hover, 
html.fac-nav-show       #container_ #header_ > nav > ul > li.language > a:hover {background-color:#fff; color:#000;}
html:not(.fac-header-hidden) #container_ #header_ {padding:50px;}

@media screen and (max-width:599px) {

#header_ {min-width:0; height:50px; padding:0; background:transparent; transition:height 0s 0.3s;}
#header_ > h1 {margin:0; transition:opacity 0.3s ease-in-out;}
#header_ > h1 > a {width:44vw; padding:50px 0 0;}
#header_ > h1 > a > svg {}
#header_ > nav {
	display:-webkit-flex; display:-ms-flexbox; display:flex; 
	height:100%; margin:0 0 0 auto; pointer-events:auto;}
#header_ > nav::after {
	display:block; content:""; position:fixed; left:0; right:0; top:0; bottom:0; z-index:9901; background:#000; opacity:0; pointer-events:none; transition:opacity 0.3s ease-in-out;}
#header_ > nav a {display:block; text-decoration:none;}
#header_ > nav > h1 {
	display:none; width:50px; height:0; padding:50px 0 0; position:absolute; right:0; top:0; z-index:9903; 
	font-size:2.5rem; font-weight:normal; line-height:50px; text-align:center; overflow:hidden; cursor:pointer; transition:0.2s ease-in-out; transition-property:color,opacity;}
#header_ > nav > h1::before, 
#header_ > nav > h1::after  {
	display:-webkit-flex; display:flex; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	position:absolute; left:0; right:0; top:0; bottom:0; font:bold 1em/1 icons; transition:opacity 0.3s ease-in-out;}
#header_ > nav > h1::before {content:"\e837";}
#header_ > nav > h1::after  {content:"\e833"; color:#fff; opacity:0;}
#header_ > nav > ul {
	display:-webkit-flex; display:flex; 
	-webkit-flex-direction:column; flex-direction:column; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	height:100%; position:absolute; left:0; right:100%; top:0; z-index:9902; margin:0; box-sizing:border-box; 
	color:#fff; font-size:2.7rem; font-weight:500; line-height:1.2; text-align:center; white-space:nowrap; 
	opacity:0; pointer-events:none; overflow:hidden; transition:opacity 0.3s ease-in-out, right 0s 0.3s;}
#header_ > nav > ul a {display:block; text-decoration:none;}
#header_ > nav > ul a::after {display:none;}
#header_ > nav > ul a[target="_blank"]::before {font-size:0.6em;}
#header_ > nav > ul > li {position:relative; z-index:2; padding:0.5em 1em 0.4em;}
#header_ > nav > ul > li > a {margin:-0.5em -1em -0.4em; font-size:2.1rem; padding:inherit;}
#header_ > nav > ul > li > b {display:block; font-size:2.1rem; cursor:default;}
#header_ > nav > ul > li > ul {
	display:-webkit-flex; display:flex; 
	-webkit-justify-content:center; justify-content:center; 
	height:auto; position:static; margin:-0.5em -0.5em 0; padding:1em 0 0; transform:none; font-size:1.8rem; opacity:1; pointer-events:auto;}
#header_ > nav > ul > li > ul > li {
	-webkit-flex:1 1 100%; flex:1 1 100%; 
	margin:0.5em 0.5em 0; padding:0.7em 1em 0.6em;}
#header_ > nav > ul > li > ul > li > a {margin:-0.7em -1em -0.6em; padding:inherit; background:#2c3334;}
#header_ > nav > ul > li.business {margin:0.2em 0 0;}
#header_ > nav > ul > li.language {margin:1em 0 0; padding:0; font-size:1.4rem;}
#header_ > nav > ul > li.language > a {padding:0.5em 1em;}
#header_ > nav > ul > li.language > a::after {}
#header_ > nav > ul > li.language > a:hover {}

/* 2023/5/01採用ページ追加 */
#header_ > nav > ul > li.recruit-top {display: none;}

html.fac-js-enabled     #header_ > nav > h1 {display:block;}
html.fac-is-smartdevice #header_ > nav > ul {overflow:auto; -webkit-overflow-scrolling:touch;}
html.fac-is-smartdevice #header_ > nav > ul::after {content:""; width:1px; height:1px; position:absolute; bottom:-3px;}
html.fac-header-hidden  #header_ > h1 {opacity:0; pointer-events:none;}
html.fac-nav-show       #header_ {height:100%; transition-delay:0s;}
html.fac-nav-show       #header_ > h1 {opacity:1; pointer-events:auto;}
html.fac-nav-show       #header_ > nav {}
html.fac-nav-show       #header_ > nav::after {opacity:0.85;}
html.fac-nav-show       #header_ > nav > h1::before {opacity:0;}
html.fac-nav-show       #header_ > nav > h1::after  {opacity:1;}
html.fac-nav-show       #header_ > nav > h1:hover {opacity:0.5;}
html.fac-nav-show       #header_ > nav > ul {right:0; opacity:1; pointer-events:auto; transition:opacity 0.3s ease-in-out, right 0s;}
html:not(.fac-header-hidden) #container_ #header_ {padding:0;}

}



/** #main_ **/
#main_ {display:block; width:940px; margin:0 auto; padding:100px 30px;}

@media screen and (max-width:599px) {

#main_ {width:auto; margin:0; padding:50px 30px 10vw;}

}



/** #footer_ **/
#footer_ {width:1140px; position:relative; z-index:9998; margin:auto 0 0 -570px; padding:20px 50%; background:#000; color:#fff; font-size:1rem;}
#footer_::after {display:block; content:''; clear:both; height:0;}
#footer_ > nav {
	display:-webkit-flex; display:flex; 
	float:right;}
#footer_ > nav > ul {
	display:-webkit-flex; display:flex; 
	-webkit-align-items:center; align-items:center;}
#footer_ > nav > ul > li {
	display:-webkit-flex; display:flex;
	-webkit-align-items:center; align-items:center;}
#footer_ > nav > ul > li::before {content:"|"; margin:0 0.5em; opacity:0.5;}
#footer_ > nav > ul > li:first-child::before {display:none;}
#footer_ > nav > ul > li > a {display:block; text-decoration:none;}
#footer_ > nav > ul > li > a::before, 
#footer_ > nav > ul > li > a::after  {transition:none;}
#footer_ > nav > ul > li > a:hover {color:#ccc;}
#footer_ > nav > ul.company {}
#footer_ > nav > ul.share {margin:0 0 0 1em;}
#footer_ > nav > ul.share > li.facebook {}
#footer_ > nav > ul.share > li.facebook::before {display:none;}
#footer_ > nav > ul.share > li.facebook > a {width:1.2em; height:0; position:relative; padding:1.2em 0 0; font-size:1.7em; overflow:hidden;}
#footer_ > nav > ul.share > li.facebook > a::before {
	display:-webkit-flex; display:flex; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	content:"\e923"; position:absolute; left:0; right:0; top:0; bottom:0; font:normal 1em/1 icons;}
#footer_ > nav > ul.share > li.instagram {margin-left:1em;}
#footer_ > nav > ul.share > li.instagram::before {display:none;}
#footer_ > nav > ul.share > li.instagram > a {width:1.2em; height:0; position:relative; padding:1.2em 0 0; font-size:1.7em; overflow:hidden;}
#footer_ > nav > ul.share > li.instagram > a::before {
	display:-webkit-flex; display:flex; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	content:"\e925"; position:absolute; left:0; right:0; top:0; bottom:0; font:normal 1em/1 icons;}
#footer_ > small {display:block; float:left;}

@media screen and (max-width:599px) {

#footer_ {width:auto; margin:auto 0 0; padding:10vw 30px 6vw; font-size:1.2rem; text-align:center;}
#footer_::after {}
#footer_ > nav {
	-webkit-flex-wrap:wrap; flex-wrap:wrap; 
	float:none;}
#footer_ > nav > ul {
	-webkit-flex:1 1 100%; flex:1 1 100%; 
	-webkit-justify-content:center; justify-content:center;}
#footer_ > nav > ul > li {}
#footer_ > nav > ul > li::before {}
#footer_ > nav > ul > li:first-child::before {}
#footer_ > nav > ul > li > a {}
#footer_ > nav > ul > li > a::before, 
#footer_ > nav > ul > li > a::after  {}
#footer_ > nav > ul > li > a:hover {}
#footer_ > nav > ul.company {margin:8vw 0 0;}
#footer_ > nav > ul.share {order:-1; margin:0;}
#footer_ > nav > ul.share > li.facebook {}
#footer_ > nav > ul.share > li.facebook::before {}
#footer_ > nav > ul.share > li.facebook > a {}
#footer_ > nav > ul.share > li.facebook > a::before {}
#footer_ > nav > ul.share > li.instagram {}
#footer_ > nav > ul.share > li.instagram::before {}
#footer_ > nav > ul.share > li.instagram > a {}
#footer_ > nav > ul.share > li.instagram > a::before {}
#footer_ > small {float:none; margin:0.5em 0 0;}
}



/** Components **/

/* .c-link */
.c-link {display:table; text-decoration:none;}
.c-link::before {display:inline-block; content:"\e813"; margin:-0.3em 0.5em 0 0; font:bold 0.8em/1 icons; vertical-align:middle;}
.c-link:hover {color:#999;}
.c-link.c-link--back::before {content:"\e815";}

/* .c-button */
.c-button {
	display:-webkit-inline-flex; display:inline-flex; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	position:relative; padding:1.2em 2em; border:1px solid #000; 
	background:#000; color:#fff; font-size:1.4rem; font-weight:normal; text-align:center; text-decoration:none; line-height:1; white-space:nowrap; 
	font-family:brandon-grotesque,YakuHanJP,-apple-system,"Helvetica Neue",Aileron,BlinkMacSystemFont,"Segoe UI","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;}
button.c-button {cursor:pointer;}
a.c-button:hover, 
button.c-button:hover {border-color:#000; background-color:transparent; color:#000;}
@media screen and (max-width:599px) {
.c-button {font-size:1.1rem;}
a.c-button:hover, 
a.c-button:hover {}
}

.c-button.c-button--reverse {border-color:#919191; background:transparent; color:#000;}
.c-button.c-button--reverse:hover {border-color:#000; background:#000; color:#fff;}

.c-button.c-button--clear {border-color:rgba(255,255,255,0.4); background:transparent; color:#fff;}
.c-button.c-button--clear:hover {border-color:rgba(255,255,255,0.4); background:rgba(255,255,255,0.4); color:#fff;}

.c-button.c-button--strong {}
.c-button.c-button--strong::before {display:inline-block; content:"\e813"; margin:0 0.5em 0 0; font:bold 0.8em/1 icons; transition:none;}

.c-button.c-button--emphasis {border-color:transparent; background-color:#e5e5e5; color:#000;}
.c-button.c-button--emphasis::before {display:inline-block; content:"\e813"; margin:0 0.5em 0 0; font:bold 0.8em/1 icons; transition:none;}

/* .c-page-2column */
.c-page-2column {}
.c-page-2column::after {display:block; content:''; clear:both; height:0;}
.c-page-2column > * {position:relative; z-index:5002;}
.c-page-2column > .c-page-2column-nav {
	float:left; width:220px; z-index:5001; padding:80px 0 0; font-size:2rem; font-family:brandon-grotesque,"Noto Sans JP","NoChattering",sans-serif; line-height:1.5;}
.c-page-2column > .c-page-2column-nav > h1 {display:none;}
.c-page-2column > .c-page-2column-nav > ul {margin:-0.5em 0 0;}
.c-page-2column > .c-page-2column-nav > ul > li {margin:0.5em 0 0;}
.c-page-2column > .c-page-2column-nav > ul > li > a {display:block; text-decoration:none;}
.c-page-2column > .c-page-2column-nav > ul > li > a:hover {color:#666;}
.c-page-2column > .c-page-2column-content {z-index:5000; margin:0 0 0 240px; padding:80px 0 0;}
@media screen and (max-width:599px) {
.c-page-2column {}
.c-page-2column::after {}
.c-page-2column > .c-page-2column-nav {float:none; width:auto; margin:0 -30px; padding:0; font-size:1.7rem;}
.c-page-2column > .c-page-2column-nav > h1 {display:block; padding:0.8em 30px; border-bottom:1px solid #e5e5e5;}
.c-page-2column > .c-page-2column-nav > ul {margin:0;}
.c-page-2column > .c-page-2column-nav > ul > li {margin:0; padding:0.8em 30px; border-bottom:1px solid #e5e5e5;}
.c-page-2column > .c-page-2column-nav > ul > li > a {margin:-0.8em -30px; padding:inherit;}
.c-page-2column > .c-page-2column-content {margin:0; padding:8vw 0 0;}
}

/* .c-page-header */
.c-page-header {padding:80px 0 70px; font-size:1.6rem; text-align:center;}
.c-page-header > .image {margin:-80px calc(50% - 50vw) 0;}
.c-page-header > .image > img, 
.c-page-header > .image > video {display:block; width:100%; height:auto;}
.c-page-header > .image > *.landscape {}
.c-page-header > .image > *.portrait  {display:none;}
.c-page-header > small {display:block; color:#b8b8b8; font-size:2.2rem; font-weight:bold; font-family:brandon-grotesque,sans-serif; line-height:1.35; letter-spacing:0.1em;}
.c-page-header > h1 {font-size:4.2rem; font-weight:inherit; line-height:1.35;}
.c-page-header > p {margin:2em 0 0;}
.c-page-header > .image + * {margin-top:2em;}
.c-page-header > small + h1 {margin:0.35em 0 0;}
@media screen and (max-width:1200px) {
.c-page-header > .image {margin-left:-130px; margin-right:-130px;}
}
@media screen and (max-width:599px) {
.c-page-header {padding:10vw 0 6.6666vw; font-size:1.2rem;}
.c-page-header > .image {margin:-10vw -30px 0;}
.c-page-header > .image > img, 
.c-page-header > .image > video {}
.c-page-header > .image > *.landscape {display:none;}
.c-page-header > .image > *.portrait  {display:block;}
.c-page-header > small {font-size:1.1rem;}
.c-page-header > h1 {font-size:2.1rem;}
.c-page-header > p {text-align:left;}
/*
2023/5/01採用ページ追加
.c-page-header > p br {display:none;}
*/
.c-page-header > .image + * {}
.c-page-header > small + h1 {}
}

.c-page-header.c-page-header--image {
	display:-webkit-flex; display:flex; 
	-webkit-flex-direction:column; flex-direction:column; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	height:700px; position:relative; margin:0 calc(50% - 50vw); padding:0; color:#fff; overflow:hidden;}
.c-page-header.c-page-header--image > * {position:relative; z-index:2;}
.c-page-header.c-page-header--image > .image {min-width:1200px; position:absolute; left:0; right:0; top:0; bottom:0; z-index:1;}
.c-page-header.c-page-header--image > .image > img, 
.c-page-header.c-page-header--image > .image > video {
	width:auto; min-width:100%; height:auto; min-height:100%; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); pointer-events:none;}
.c-page-header.c-page-header--image > .image > img {min-width:200%; min-height:200%; transform:translate(-50%,-50%) scale(0.5);}
.c-page-header.c-page-header--image > small {color:inherit;}
.c-page-header.c-page-header--image > h1 {}
.c-page-header.c-page-header--image > .image + * {margin-top:0;}
#contents > .c-page-header.c-page-header--image:first-child {margin-top:-100px;}
@media screen and (max-width:1200px) {
.c-page-header.c-page-header--image {margin-left:-130px; margin-right:-130px;}
.c-page-header.c-page-header--image > .image {margin-left:0; margin-right:0;}
}
@media screen and (max-width:599px) {
.c-page-header.c-page-header--image {height:88.9333vw; margin:0 -30px; padding:0 0 5vw; box-sizing:border-box;}
.c-page-header.c-page-header--image > * {}
.c-page-header.c-page-header--image > .image {min-width:0;}
.c-page-header.c-page-header--image > .image::after {}
.c-page-header.c-page-header--image > .image > img, 
.c-page-header.c-page-header--image > .image > video {}
.c-page-header.c-page-header--image > small {font-size:1.6rem;}
.c-page-header.c-page-header--image > h1 {font-size:3.6rem;}
.c-page-header.c-page-header--image > .image + * {margin-top:0;}
#contents > .c-page-header.c-page-header--image:first-child {margin-top:-50px;}
}

/* 2023/5/01採用ページ追加 */
.c-page-header.c-page-header---image {
	display:-webkit-flex; display:flex; 
	-webkit-flex-direction:column; flex-direction:column; 
	-webkit-justify-content:end; justify-content:end; 
	-webkit-align-items:center; align-items:center; 
	height:400px; position:relative; margin:0 calc(50% - 50vw); padding:0; color:#000; overflow:hidden;}
.c-page-header.c-page-header---image > * {position:relative; z-index:2;}
.c-page-header.c-page-header---image > .image {min-width:1200px; position:absolute; left:0; right:0; top:0; bottom:0; z-index:1;}
.c-page-header.c-page-header---image > .image > img, 
.c-page-header.c-page-header---image > .image > video {
	width:auto; min-width:100%; height:auto; min-height:100%; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); pointer-events:none;}
.c-page-header.c-page-header---image > .image > img {min-width:200%; min-height:200%; transform:translate(-50%,-50%) scale(0.5);}
.c-page-header.c-page-header---image > small {display:block; color:#b8b8b8; font-size:2.2rem; font-weight:bold; font-family:brandon-grotesque,sans-serif; line-height:1.35; letter-spacing:0.1em;}
.c-page-header.c-page-header---image > h1 {font-size:4.2rem; font-weight:inherit; line-height:1.35;}
.c-page-header.c-page-header---image > p {margin:2em 0 0;}
.c-page-header.c-page-header---image > .image + * {margin-top:0;}
#contents > .c-page-header.c-page-header---image:first-child {margin-top:-100px;}
@media screen and (max-width:1200px) {
.c-page-header.c-page-header---image {margin-left:-130px; margin-right:-130px;}
.c-page-header.c-page-header---image > .image {margin-left:0; margin-right:0;}
}
@media screen and (max-width:599px) {
/*
2023/5/01採用ページ追加
.c-page-header.c-page-header---image {height:88.9333vw; margin:0 -30px; padding:0 0 5vw; box-sizing:border-box; -webkit-justify-content:center; justify-content:center;}
*/
.c-page-header.c-page-header---image {height:75vw; margin:0 -30px; padding:0 0 5vw; box-sizing:border-box; -webkit-justify-content:center; justify-content:end;}
.c-page-header.c-page-header---image > * {}
.c-page-header.c-page-header---image > .image {min-width:0;}
.c-page-header.c-page-header---image > .image::after {}
.c-page-header.c-page-header---image > .image > img, 
.c-page-header.c-page-header---image > .image > video {}
.c-page-header.c-page-header---image > small {font-size:1.1rem;}
.c-page-header.c-page-header---image > h1 {font-size:2.1rem;}
/*
2023/5/01採用ページ追加
.c-page-header.c-page-header---image > p {text-align:left;}
*/
.c-page-header.c-page-header---image > p {text-align:center;}
.c-page-header.c-page-header---image > p {font-size:1.1rem;}
.c-page-header.c-page-header---image > .image + * {margin-top:0;}
/*
2023/5/01採用ページ追加
#contents > .c-page-header.c-page-header---image:first-child {margin-top:-50px;}
*/
#contents > .c-page-header.c-page-header---image:first-child {margin-top:-70px;}

}

.c-page-header.c-page-header--full {height:100vh;}

/* .c-labels */
.c-labels {
	display:-webkit-inline-flex; display:inline-flex; 
	-webkit-flex-wrap:wrap; flex-wrap:wrap; 
	margin:0 -0.5em -0.5em 0; color:#fff; font-size:1.2rem; line-height:1; text-align:center; vertical-align:middle;}
.c-labels > li {
	display:-webkit-flex; display:-ms-flexbox; display:flex; 
	-webkit-justify-content:center; -ms-flex-pack:center; justify-content:center; 
	-webkit-align-items:center; -ms-align-items:center; align-items:center; 
	min-width:5em; margin:0 0.5em 0.5em 0; padding:0.3em 0.4em 0.4em; border-radius:0.3em; background:#000; line-height:1; white-space:nowrap;}
.c-labels > li > a {width:100%; height:100%; position:relative; margin:-0.3em -0.4em -0.4em; padding:inherit; text-decoration:none; overflow:hidden;}
.c-labels > li > a::after {display:block; content:""; position:absolute; left:0; right:0; top:0; bottom:0; z-index:1; background:#fff; opacity:0;}
.c-labels > li > a:hover::after {opacity:0.3;}
@media screen and (max-width:599px) {
.c-labels {font-size:0.9rem; font-size:2.8125vw;}
}

/* .c-list */
.c-list {border-bottom:1px solid #e5e5e5; font-size:1.4rem;}
.c-list > li {padding:1em 0; border-top:1px solid #e5e5e5;}
.c-list > li::after {display:block; content:''; clear:both; height:0;}
.c-list > li > * {margin:0 0 0 160px;}
.c-list > li > h2 {float:left; width:140px; margin:0; font-weight:bold; line-height:inherit;}
.c-list > li > .c-list {margin-top:-1em; margin-bottom:-1em; border-width:0;}
.c-list > li > .c-list > li {}
.c-list > li > .c-list > li:first-child {border-width:0;}
.c-list > li > .c-list > li > * {margin:0;}
.c-list > li > .c-list > li > h3 {font-weight:bold; line-height:inherit;}
@media screen and (max-width:599px) {
.c-list {font-size:1.2rem;}
.c-list:last-child {border-width:0;}
.c-list > li {}
.c-list > li:first-child {border-width:0;}
.c-list > li::after {}
.c-list > li > * {margin:0;}
.c-list > li > h2 {float:none; width:auto;}
.c-list > li > .c-list {margin:0;}
.c-list > li > .c-list > li {border-width:0;}
.c-list > li > .c-list > li > * {}
.c-list > li > .c-list > li:last-child {}
.c-list > li > .c-list > li > h3 {}
}

/* .c-news-list */
.c-news-list {border-top:1px solid #e5e5e5; font-size:1.4rem; line-height:1.2; text-align:left;}
.c-news-list > li, 
.c-news-list > li > a {
	display:-webkit-flex; display:-ms-flexbox; display:flex; 
	-webkit-align-items:flex-start; -ms-align-items:flex-start; align-items:flex-start;}
.c-news-list > li {padding:14px 0; border-bottom:1px solid #e5e5e5;}
.c-news-list > li > a {
	-webkit-flex:1 1 100%; -ms-flex:1 1 100%; flex:1 1 100%; 
	position:relative; margin:-14px 0; padding:inherit; text-decoration:none;}
.c-news-list > li > a::before {display:block; content:""; position:absolute; left:0; right:0; top:0; bottom:0; background:#fff; opacity:0;}
.c-news-list > li > a:hover::before {opacity:0.3;}
.c-news-list > li .image {display:none;}
.c-news-list > li time {
	-webkit-flex:1 1 5em; flex:1 1 5em; 
	margin:0 0.5em 0 0; padding:0.2em 0; font-weight:bold; line-height:1; vertical-align:middle;}
.c-news-list > li .categories {-webkit-flex:1 1 10em; flex:1 1 10em;}
.c-news-list > li .categories > li {width:100%; min-width:5em;}
.c-news-list > li .categories > li:nth-child(n+2) {display:none;}
.c-news-list > li h2 {
	-webkit-flex:1 1 100%; flex:1 1 100%; 
	margin:0 0 0 1em; font-family:inherit; font-weight:normal;}
.c-news-list > li > a[target="_blank"] > h2::after {display:inline-block; content:"\e919"; margin:0 0 0 0.5em; font:normal 1em/1 icons;}
.c-news-list > li > a[href$=".pdf"] > h2::after {
	display:inline-block; content:""; width:16px; min-height:16px; background:url(../images/icon_pdf.png) right center no-repeat;}
.c-news-list > .more {
	display:inline-block; min-width:240px; margin:3em auto 0; padding:9px; border:1px solid #e5e5e5; background:#fff; 
	font-size:1.2rem; text-decoration:none;}
html:lang(en) .c-news-list > li time {padding:0.3em 0;}
@media all and (-ms-high-contrast: none) {
.c-news-list > li time {-webkit-flex-basis:12em; flex-basis:12em;}
}
@media screen and (max-width:599px) {
.c-news-list {margin:1em 0 0; font-size:1.2rem;}
.c-news-list > li, 
.c-news-list > li > a {-webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;}
.c-news-list > li > *, 
.c-news-list > li > a > * {-webkit-align-self:unset; align-self:unset;}
.c-news-list > li {padding:1.5em 0;}
.c-news-list > li > a {margin:-1.5em 0;}
.c-news-list > li > a::before {}
.c-news-list > li > a:hover::before {}
.c-news-list > li .image {}
.c-news-list > li time {
	-webkit-flex:0 1 8em; flex:0 1 8em; 
	margin:0 0.5em 0 0; padding:0.2em 0; color:#999;}
.c-news-list > li .categories {-webkit-flex:1 1 40%; flex:1 1 40%;}
.c-news-list > li .categories > li {width:auto;}
.c-news-list > li .categories > li:nth-child(n+2) {}
.c-news-list > li h2 {
	-webkit-flex:1 1 100%; -ms-flex:1 1 100%; flex:1 1 100%; 
	margin:0.5em 0 0;}
.c-news-list > li > a:hover > i {}
.c-news-list > .more {min-width:53%; margin:2em auto 0; font-size:0.9rem;}
html:lang(en) .c-news-list > li time {padding:0.15em 0;}
}

.c-news-list.c-news-list--break > li, 
.c-news-list.c-news-list--break > li > a {-webkit-flex-wrap:wrap; flex-wrap:wrap;}
.c-news-list.c-news-list--break > li .categories {}
.c-news-list.c-news-list--break > li .categories > li {width:auto;}
.c-news-list.c-news-list--break > li .categories > li:nth-child(n+2) {display:block;}
.c-news-list.c-news-list--break > li time {-webkit-flex-grow:0; flex-grow:0;}
.c-news-list.c-news-list--break > li h2 {
	-webkit-flex:1 1 100%; -ms-flex:1 1 100%; flex:1 1 100%; 
	margin:0.5em 0 0;}

/* .c-items-list */
.c-items-list {
	display:-webkit-flex; display:flex; 
	-webkit-flex-wrap:wrap; flex-wrap:wrap; 
	margin:-20px -10px 0; line-height:1.5;}
.c-items-list > * {
	-webkit-flex:0 1; flex:0 1; -webkit-flex-basis:calc(33.3333% - 20px); flex-basis:calc(33.3333% - 20px); 
	margin:20px 10px 0;}
.c-items-list > * > a {display:block; text-decoration:none;}
.c-items-list > * .image {position:relative;}
.c-items-list > * .image::after {display:block; content:""; position:absolute; left:0; right:0; top:0; bottom:0; background:#000; opacity:0; transition:opacity 0.5s ease-in-out;}
.c-items-list > * .image > img {display:block; width:100%; height:auto;}
.c-items-list > * strong {display:block; margin:1em 0 0; font-weight:bold;}
.c-items-list > * small {display:block; margin:1em 0 0; font-size:1.2rem;}
.c-items-list > * h2 {font-weight:normal;}
.c-items-list > * p {display:none;}
.c-items-list > * > a:hover > .image::after {opacity:0.3;}
@media screen and (max-width:599px) {
.c-items-list {display:block; margin:-6.6666vw 0 0;}
.c-items-list > * {margin:6.6666vw 0 0;}
.c-items-list > * > a {}
.c-items-list > * .image {width:60%; margin:0 auto;}
.c-items-list > * .image::after {}
.c-items-list > * .image > img {}
.c-items-list > * strong {}
.c-items-list > * small {font-size:1rem;}
.c-items-list > * h2 {}
.c-items-list > * p {}
.c-items-list > * > a:hover > .image::after {}
}

/* .c-notes */
.c-notes {padding:30px 40px; background:#f7f7f7;}
.c-notes > * {margin:2em 0 0;}
.c-notes > h1 {margin:0; font-weight:bold; font-family:inherit;}
.c-notes > address {display:block; font-size:1.2rem;}
.c-notes > h1 + * {margin-top:0.5em;}
@media screen and (max-width:599px) {
.c-notes {padding:5.3333vw 6.6666vw; font-size:1.2rem;}
.c-notes > * {}
.c-notes > h1 {}
.c-notes > address {font-size:inherit;}
.c-notes > h1 + * {}
}

/* .c-images-loop */
.c-images-loop {
	display:-webkit-flex; display:flex; 
	-webkit-flex-wrap:wrap; flex-wrap:wrap; 
	margin:-40px -20px 0;}
.c-images-loop > * {
	-webkit-flex:0 1; flex:0 1; -webkit-flex-basis:calc(50% - 40px); flex-basis:calc(50% - 40px);
	margin:40px 20px 0;}
.c-images-loop > * img {display:block; width:100%; height:auto;}
html.fac-js-enabled .c-images-loop {}
html.fac-js-enabled .c-images-loop > * {
	-webkit-flex:0 1 auto; flex:0 1 auto; 
	margin:0 20px; box-sizing:border-box;}
html.fac-js-enabled .c-images-loop.c-images-loop--loaded {
	-webkit-flex-wrap:nowrap; flex-wrap:nowrap;
	backface-visibility:hidden; 
	position:relative; margin:0 -20px; animation:c-images-loop 50s linear 0s infinite;}
html.fac-js-enabled .c-images-loop.c-images-loop--loaded > * {-webkit-flex:1 1 100%; flex:1 1 100%;}
.c-images-loop.c-images-loop--vary {}
.c-images-loop.c-images-loop--vary > * {-webkit-flex:0 1 auto; flex:0 1 auto;}
@media screen and (max-width:599px) {
.c-images-loop {margin:-5vw -2.5vw 0;}
.c-images-loop > * {
	-webkit-flex-basis:calc(50% - 5vw); flex-basis:calc(50% - 5vw);
	margin:5vw 2.5vw 0;}
.c-images-loop > * img {}
html.fac-js-enabled .c-images-loop.c-images-loop--loaded {margin:0 -2.5vw;}
html.fac-js-enabled .c-images-loop.c-images-loop--loaded > * {margin:0 2.5vw;}
}
@keyframes c-images-loop {
0%   {transform:translate3d(0,0,0);}
100% {transform:translate3d(-33.3333%,0,0);}
}
@keyframes c-images-loop--reverse {
0%   {transform:translate3d(0,0,0);}
100% {transform:translate3d(33.3333%,0,0);}
}

/* .c-movie */
.c-movie {display:block; position:relative; text-decoration:none; overflow:hidden;}
.c-movie::before {display:block; content:""; position:absolute; left:0; right:0; top:0; bottom:0; z-index:1; background:#000; opacity:0; transition:opacity 0.5s ease-in-out;}
.c-movie::after {
	display:-webkit-flex; display:flex; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	content:"\e90a"; position:absolute; left:0; right:0; top:0; bottom:0; z-index:2; color:#fff; font:normal 9em/1 icons; opacity:0.8;}
.c-movie:hover::before {opacity:0.3;}
.c-movie > img {display:block; width:100%; height:auto;}
@media screen and (max-width:599px) {
.c-movie {}
.c-movie::before {}
.c-movie::after {font-size:8rem;}
.c-movie:hover::before {}
.c-movie > img {}
}


/** JS Components **/

/* fac.Galley */
.fac-gallery {position:relative; margin:0 auto; pointer-events:none; -webkit-tap-highlight-color:rgba(0,0,0,0);}
.fac-gallery .fac-gallery-slider {}
.fac-gallery .fac-gallery-list {position:relative; pointer-events:auto;}
.fac-gallery .fac-gallery-item {}
.fac-gallery-transition-none  .fac-gallery-list {}
.fac-gallery-transition-none  .fac-gallery-item {}
.fac-gallery-transition-slide .fac-gallery-list {display:-webkit-flex; display:flex;}
.fac-gallery-transition-slide .fac-gallery-item {-webkit-flex:1 1 100%; flex:1 1 100%;}
.fac-gallery-direction-vertical .fac-gallery-slider {height:100%;}
.fac-gallery-direction-vertical .fac-gallery-list {-webkit-flex-direction:column; flex-direction:column;}
.fac-gallery .fac-gallery-nav {color:#fff;}
.fac-gallery .fac-gallery-nav > button {
	display:block; width:150px; position:absolute; top:0; bottom:0; z-index:3; padding:0; border:none; outline:none; background:transparent; -webkit-appearance:none; appearance:none; 
	font-size:5rem; text-decoration:none; text-indent:110%; white-space:nowrap; overflow:hidden; cursor:pointer; pointer-events:auto;}
.fac-gallery .fac-gallery-nav > button::after {
	display:block; position:absolute; left:0; right:0; top:50%; margin:-0.5em 0 0; 
	color:inherit; font-size:1em; font-family:icons; font-weight:bold; text-indent:0; line-height:1; transition:none;}
.fac-gallery .fac-gallery-nav > button:focus, 
.fac-gallery .fac-gallery-nav > button::-moz-focus-inner {border:none; outline:none;}
.fac-gallery .fac-gallery-nav > button.fac-gallery-previous {left:-150px;}
.fac-gallery .fac-gallery-nav > button.fac-gallery-next     {right:-150px;}
.fac-gallery .fac-gallery-nav > button.fac-gallery-previous::after {content:"\e819";}
.fac-gallery .fac-gallery-nav > button.fac-gallery-next::after     {content:"\e817";}
.fac-gallery .fac-gallery-nav > button:hover {opacity:0.7;}
.fac-gallery .fac-gallery-nav > ol {
	display:-webkit-flex; display:flex; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	position:absolute; left:0; right:0; bottom:0; z-index:3;}
.fac-gallery .fac-gallery-nav > ol > li {display:inline-block; width:20px; height:0; position:relative; padding:20px 0 0; overflow:hidden; cursor:pointer; pointer-events:auto;}
.fac-gallery .fac-gallery-nav > ol > li::after {
	display:block; content:""; width:10px; height:10px; position:absolute; left:0; right:0; top:0; bottom:0; margin:auto; border-radius:100%; 
	background:#999; text-indent:0; transition:background-color 0.2s ease-in-out 0s;}
.fac-gallery .fac-gallery-nav > ol > li:hover::after, 
.fac-gallery .fac-gallery-nav > ol > li.fac-gallery-selected::after {background-color:#000;}
.fac-gallery-less .fac-gallery-nav {display:none;}
@media screen and (max-width:599px) {
.fac-gallery .fac-gallery-nav > button {width:30px; font-size:1.5rem;}
.fac-gallery .fac-gallery-nav > button.fac-gallery-previous {left:-30px;}
.fac-gallery .fac-gallery-nav > button.fac-gallery-next     {right:-30px;}
.fac-gallery .fac-gallery-nav > ol > li {width:1.5em; padding:1.5em 0 0;}
.fac-gallery .fac-gallery-nav > ol > li::after {width:0.5em; height:0.5em;}
}

/* .fac-popups */
.fac-popups {
	display:-webkit-flex; display:-ms-flexbox; display:flex; 
	-webkit-justify-content:center; -ms-flex-pack:center; justify-content:center; 
	-webkit-align-items:center; -ms-align-items:center; align-items:center; 
	position:fixed; width:1px; height:1px; left:-100px; top:-100px; z-index:9999; opacity:0; overflow:hidden; 
	transition:opacity 0s ease-in-out 0s, width 0s ease-in-out 0s, height 0s ease-in-out 0s, left 0s ease-in-out 0s, top 0s ease-in-out 0s;}
.fac-popups .fac-popups-board {
	width:100%; max-width:1360px; min-width:940px; max-height:100%; box-sizing:border-box; 
	background:#fff; overflow:auto; -webkit-overflow-scrolling:touch; pointer-events:auto;}
.fac-popups .fac-gallery-slider {}
.fac-popups .fac-gallery-list {}
.fac-popups .fac-gallery-item {margin:80px;}
.fac-popups .fac-gallery-nav {}
.fac-popups .fac-gallery-nav > button {width:100px; height:50vh; top:50%; transform:translateY(-50%); font-size:40px; transition:opacity 0.3s ease-in-out;}
.fac-popups .fac-gallery-nav > button::after {
	display:block; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); margin:0; font:normal 1em/1 icons; text-indent:0;}
.fac-popups .fac-gallery-nav > button.fac-gallery-previous {left:0;}
.fac-popups .fac-gallery-nav > button.fac-gallery-next     {right:0;}
.fac-popups.fac-gallery-first .fac-gallery-nav > button.fac-gallery-previous, 
.fac-popups.fac-gallery-last  .fac-gallery-nav > button.fac-gallery-next     {opacity:0; pointer-events:none;}
.fac-popups .fac-gallery-nav > ol {display:none;}
.fac-popups.fac-gallery-transition-slide .fac-gallery-slider {overflow:hidden;}
.fac-popups .fac-popups-background {
	position:absolute; left:0; right:0; top:0; bottom:0; z-index:-1; margin:auto; background:#fff; pointer-events:auto; 
	-webkit-tap-highlight-color:rgba(0,0,0,0);}
.fac-popups .fac-popups-close {
	display:block; width:1em; height:0; padding:1em 0 0; position:absolute; left:0; top:0; z-index:3; box-sizing: content-box; border:0.5em solid transparent; outline:none; 
	background-color:transparent; font-size:5rem; font-weight:normal; cursor:pointer; appearance:none; pointer-events:auto; overflow:hidden; transition:color 0.2s ease-in-out;}
.fac-popups .fac-popups-close::after {display:block; content:"\e833"; position:absolute; left:0; right:0; top:0; bottom:0; margin:auto; font:normal 1em/1 icons; text-align:center; transition:none;}
.fac-popups .fac-popups-close:hover {color:#999;}
.fac-popups.fac-popups-show {
	width:100vw; min-width:940px; height:100%; min-height:600px; left:0; top:0; opacity:1;
	transition:opacity 0.3s ease-in-out 0s, width 0s ease-in-out 0s, height 0s ease-in-out 0s, left 0s ease-in-out 0s, top 0s ease-in-out 0s;}
html.fac-is-smartdevice .fac-popups .fac-popups-board::after {content:""; width:1px; height:1px; position:absolute; bottom:-3px;}
@media screen and (max-width:599px) {
.fac-popups {}
.fac-popups .fac-popups-board {width:100%; min-width:0; max-width:none; max-height:100%; margin:0; padding:20px; border:0; border-radius:0;}
_:-ms-input-placeholder, :root .fac-popups .fac-popups-board {margin:0;}
.fac-popups .fac-gallery-slider {}
.fac-popups .fac-gallery-list {}
.fac-popups .fac-gallery-item {margin:0;}
.fac-popups .fac-popups-close {font-size:3rem;}
.fac-popups.fac-popups-show {min-width:280px; min-height:400px;}
_:-ms-input-placeholder, :root .fac-popups .fac-popups-close::before {font-size:20px;}
}

body > .fac-popups.movie .fac-gallery-item {}
body > .fac-popups.movie .fac-gallery-item > .area {height:0; position:relative; padding:56.25% 0 0; background:#000;}
body > .fac-popups.movie .fac-gallery-item > .area > video, 
body > .fac-popups.movie .fac-gallery-item > .area > iframe {width:100%; height:100%; position:absolute; left:0; top:0;}

/* .fac-page-nav */
.fac-page-nav {}
.fac-page-nav .fac-page-nav-title {}
.fac-page-nav .fac-page-nav-list {}
.fac-page-nav-content {height:0; margin-top:0; padding-top:0; position:relative; transition:height 0s 0.5s; overflow:hidden;}
.fac-page-nav-content::before {
	display:block; content:""; position:absolute; left:0; right:0; top:0; bottom:0; z-index:7000; background:#fff; opacity:1; pointer-events:none; transition:opacity 0.5s ease-in-out;}
.fac-page-nav-content.fac-page-nav--selected {height:auto; overflow:visible;}
.fac-page-nav-content.fac-page-nav--selected::before {opacity:0; transition-delay:0.5s;}
@media screen and (max-width:599px) {
.fac-page-nav {height:3.1em; position:relative; z-index:7001;}
.fac-page-nav .fac-page-nav-title {position:relative; z-index:2; padding-right:2em; background:#fff; cursor:pointer;}
.fac-page-nav .fac-page-nav-title::after {
	display:-webkit-flex; display:flex; 
	-webkit-justify-content:center; justify-content:center; 
	-webkit-align-items:center; align-items:center; 
	content:"\e818"; width:2em; position:absolute; right:0; top:0; bottom:0; pointer-events:none; 
	font:bold 1em/1 icons; transition:transform 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s;}
.fac-page-nav .fac-page-nav-title {white-space:nowrap;}
.fac-page-nav .fac-page-nav-title br {display:none;}
.fac-page-nav .fac-page-nav-list {position:relative; z-index:1; transform:translateY(-100%); background:#fff; transition:transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);}
.fac-page-nav .fac-page-nav-list > * > a {white-space:nowrap;}
.fac-page-nav .fac-page-nav-list > * > a br {display:none;}
.fac-page-nav.fac-page-nav--show {}
.fac-page-nav.fac-page-nav--show .fac-page-nav-title {}
.fac-page-nav.fac-page-nav--show .fac-page-nav-title::after {transform:rotate(-180deg);}
.fac-page-nav.fac-page-nav--show .fac-page-nav-list {transform:translateY(0);}
.fac-page-nav.fac-page-nav--show .fac-page-nav-list > * {display:block;}
}




