@charset "utf-8";

:root {
	--color-main:#000;
	--color-main-light:#e5e5e5;
	--color-main-lighter:#f8f9fa;
	--color-main-alpha:rgba(0,0,0,0.6);
	--color-main-negative:#fff;
	--color-main-negative-alpha:rgba(255,255,255,0.7);
	--color-sub:#1f4067;
	--color-sub-light:#2d61ac;
	--color-sub-lighter:#e9ecf0;
	--color-sub-alpha:rgba(31,64,103,0.6);
	--color-sub-negative:#fff;
	--color-sub-negative-alpha:rgba(255,255,255,0.7);
	--color-caution:#ed7152;
	accent-color:var(--color-sub);
}

@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;
	src:url("../fonts/icons/icons.eot?20200109#ie") format("embedded-opentype"), 
	    url("../fonts/icons/icons.ttf?20200109") format("truetype"), 
	    url("../fonts/icons/icons.woff?20200109") format("woff"), 
	    url("../fonts/icons/icons.svg?20200109#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); pointer-events:none;}
sup {position:relative; top:-0.1em; font-size:60%; vertical-align:top;}
picture {display:block;}
script {display:none !important;}

a,
area,
button,
[role="button"],
input:not([type=range]),
label,
select,
summary,
textarea {-ms-touch-action:manipulation; touch-action:manipulation;}
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;}
a img {}
a:hover img {opacity:0.7;}
button:focus,
input::-moz-focus-inner,
button::-moz-focus-inner {outline:none; border-width:0;}

html {
	height:-webkit-fill-available; font-size:10px; 
	font-family:YakuHanJP,YuGothic,"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;}

body {
	width:100%; min-height:100vh; background:#fff; 
	color:var(--color-main); font-size:1.8rem; text-align:center; line-height:2; -webkit-hyphens:auto; -ms-hyphens:auto; hyphens:auto;}
html.fac-is-smartdevice a:hover img {opacity:1;}
h1, h2, h3, h4, h5, h6 {line-height:1.5;}

@supports (-webkit-touch-callout: none) {
body {height:-webkit-fill-available;}
}

@media screen and (max-width:599px) {
html {font-size:10px; font-size:2.6666vw;}
body {min-width:320px; max-width:599px; font-size:1.4rem; line-height:1.8;}
}

@media screen and (min-width:600px) {
.sp {display:none !important;}
}
@media screen and (max-width:599px) {
.pc {display:none !important;}
}


/* #container_ */
#container_ {min-width:1190px; position:relative; margin:0 auto; padding:80px 0 0; overflow:hidden;}
#container_::after {display:block; content:""; clear:both; height:0;}

@media screen and (max-width:599px) {
#container_ {min-width:0; padding:16vw 8vw 0;}
#container_::after {}
}


/* #header_ */
@media screen and (min-width:600px) {
#header_ {
	display:flex; min-width:1190px; height:80px; position:fixed; left:0; right:0; top:0; z-index:9950; box-sizing:border-box; 
	background:var(--color-main-lighter); line-height:1; text-align:left;}
#header_::after {display:block; content:''; position:absolute; left:0; right:0; top:0; bottom:0; z-index:-1; background:inherit;}
#header_ > h1 {order:-1; position:relative; z-index:2; color:var(--color-sub); overflow:hidden;}
#header_ > h1 > a {display:block; width:150px; height:0; padding:80px 0 0; overflow:hidden;}
#header_ > h1 > a > svg {
	display:block; width:auto; height:60%; position:absolute; left:30px; top:50%; transform:translateY(-50%); 
	object-fit:cover; object-position:0 center; fill:currentColor;}
#header_ > h1 > a > svg .logotype {display:none;}
#header_ > nav {flex:1 1 auto; display:flex; margin:0 40px 0 -13px;}
#header_ > nav > h1 {display:none;}
#header_ > nav > .list {flex:1 1 auto; display:flex; font-size:1.4rem; font-weight:bold;}
#header_ > nav > .list > li {display:flex; padding:13px;}
#header_ > nav > .list > li > a {
	display:flex; align-items:center; position:relative; margin:-13px; padding:inherit; text-decoration:none;}
#header_ > nav > .list > li > a::before {
	display:block; content:''; position:absolute; left:13px; right:13px; bottom:20px; border-bottom:1px solid var(--color-sub-light); 
	opacity:0;}
#header_ > nav > .list > li > a:hover::before, 
#header_ > nav > .list > li.selected > a::before {opacity:1;}
#header_ > nav > .list > li.language {align-items:center; margin-left:auto; padding:0;}
#header_ > nav > .list > li.language > b {display:none;}
#header_ > nav > .list > li.language > ul {
	display:flex; margin:0 -1em; font-size:1.5rem; font-weight:normal; font-family:'Roboto',sans-serif;}
#header_ > nav > .list > li.language > ul > li {display:flex; justify-content:center; align-items:center; position:relative; padding:1em;}
#header_ > nav > .list > li.language > ul > li > a {
	display:flex; justify-content:center; align-items:center; margin:-1em; padding:inherit; text-decoration:none;
	opacity:0.5; transition:opacity 0.2s ease-in-out;}
#header_ > nav > .list > li.language > ul > li::after {
	display:block; content:''; position:absolute; left:1em; right:1em; bottom:0.5em; border-bottom:1px solid var(--color-sub); opacity:0;}
#header_ > nav > .list > li.language > ul > li > a:hover {opacity:1;}
#header_ > nav > .list > li.banner {display:none;}
#header_ > nav > .list > li > .sub {
	display:flex; flex-wrap:wrap; width:1110px; height:0; 
	position:absolute; left:0; right:0; top:100%; z-index:-2; margin:-1px 0 0 -555px; padding:0 50%; 
	background:var(--color-sub); color:var(--color-sub-negative); opacity:0; overflow:hidden; 
	transition:opacity 0.2s ease-in-out 0.4s, height 0s 0.6s;}
#header_ > nav > .list > li > .sub::before, 
#header_ > nav > .list > li > .sub::after  {flex:0 0 100%; display:block; content:'';}
#header_ > nav > .list > li > .sub::before {height:40px;} 
#header_ > nav > .list > li > .sub::after  {height:30px;}
#header_ > nav > .list > li > .sub > a {
	display:block; flex:0 0 255px; align-self:flex-start; margin:-1em; padding:1em; 
	font-size:2.4rem; font-weight:bold; text-decoration:none;}
#header_ > nav > .list > li > .sub > a:hover {opacity:0.6;}
#header_ > nav > .list > li > .sub > ul {
	display:flex; flex-direction:column; flex-wrap:wrap; 
	height:120px; margin:-10px 0 0 -30px; padding:0 0 0 30px; font-size:1.8rem; font-weight:normal;}
#header_ > nav > .list > li > .sub > ul > li {min-width:255px; padding:10px 0 10px 30px;}
#header_ > nav > .list > li > .sub > ul > li a {display:block; margin:-10px 0; padding:10px 0; text-decoration:none;}
#header_ > nav > .list > li > .sub > ul > li a:hover {opacity:0.7;}
#header_ > nav > .list > li > .sub > ul > li > ul {margin:15px 0 0; font-size:1.4rem; line-height:1.5;}
#header_ > nav > .list > li > .sub > ul > li > ul > li {padding:3px 0;}
#header_ > nav > .list > li > .sub > ul > li > ul > li > a {display:block; margin:-3px 0; padding:inherit;}
#header_ > nav > .list > li > .sub > ul > li.top {display:none;}
#header_ > nav > .list > li > .sub > .image {flex:0 0 255px; margin:-10px 0 0 auto; padding:0 0 0 30px;}
#header_ > nav > .list > li > .sub > .image > a {display:block;}
#header_ > nav > .list > li > .sub > .image img {display:block; width:auto; height:120px;}
#header_ > nav > .list > li > a:hover + .sub, 
#header_ > nav > .list > li > .sub:hover {
	height:180px; z-index:-1; opacity:1; transition:opacity 0.2s ease-in-out 0.2s, height 0s 0s;}
}

@media screen and (max-width:599px) {
#header_ {
	min-width:320px; position:fixed; left:0; right:0; top:0; z-index:9950; 
	background:var(--color-main-lighter); color:var(--color-sub); text-align:left;}
#header_ > h1 {position:relative; z-index:2;}
#header_ > h1 > a {display:block; width:53.3333vw; height:0; position:relative; padding:16vw 0 0; overflow:hidden;}
#header_ > h1 > a > svg {
	display:block; width:90%; height:90%; position:absolute; left:0; right:0; top:0; bottom:0; margin:auto; object-fit:cover; 
	fill:currentColor;}
#header_ > h1 > a > svg .logotype {display:block;}
#header_ > nav {
	display:none; flex-direction:column; height:0; position:absolute; left:0; right:0; top:0; 
	padding:16vw 11.3333vw 0; box-sizing:border-box; overflow:hidden;}
#header_ > nav > h1 {
	width:16vw; height:0; position:fixed; right:0; top:0; z-index:3; padding:16vw 0 0; font-size:3rem; overflow:hidden;}
#header_ > nav > h1::after {
	display:flex; justify-content:center; align-items:center; content:'\e837'; position:absolute; left:0; right:0; top:0; bottom:0; 
	font:normal 1em/1 icons;}
#header_ > nav > .list {
	height:calc(100% + 16vw); margin:-16vw -11.3333vw 0; padding:32vw 11.3333vw 0; box-sizing:border-box; 
	background:var(--color-sub); color:var(--color-sub-negative); font-size:1.8rem; font-weight:bold;}
#header_ > nav > .list::after { display:block; content:''; height:calc(20vh + 30vw); overflow:hidden;}
#header_ > nav > .list > li {padding:0.5em 0;}
#header_ > nav > .list > li > a {display:block; position:relative; margin:-0.5em 0; padding:inherit; text-decoration:none;}
#header_ > nav > .list > li.language {position:absolute; left:11.3333vw; top:21vw; margin:-1em 0 1em -2em; padding:0;}
#header_ > nav > .list > li.language > b {display:none;}
#header_ > nav > .list > li.language > ul {
	display:flex; font-size:1.5rem; font-weight:normal; font-family:'Roboto',sans-serif; line-height:1;}
#header_ > nav > .list > li.language > ul > li {display:flex; justify-content:center; align-items:center; position:relative; padding:1em;}
#header_ > nav > .list > li.language > ul > li > a {
	display:flex; justify-content:center; align-items:center; margin:-1em; padding:inherit; text-decoration:none; opacity:0.5;}
#header_ > nav > .list > li.language > ul > li::before {
	display:block; content:''; position:absolute; left:0; top:1em; bottom:1em; border-right:1px solid var(--color-sub-negative);}
#header_ > nav > .list > li.language > ul > li::after {
	display:block; content:''; position:absolute; left:1em; right:1em; bottom:0.5em; 
	border-bottom:1px solid var(--color-sub-negative); opacity:0;}
#header_ > nav > .list > li.language > ul > li:first-child::before {display:none;}
#header_ > nav > .list > li.banner {margin:1em 0 0;}
#header_ > nav > .list > li.banner > a {display:block; text-decoration:none;}
#header_ > nav > .list > li.banner img {display:block; width:100%; height:auto;}
#header_ > nav > .list > li > .sub {padding:2vw 0 0;}
#header_ > nav > .list > li > .sub > a {display:none;}
#header_ > nav > .list > li > .sub ul {padding:0 0 0 0.5em; font-size:1.2rem; font-weight:normal;}
#header_ > nav > .list > li > .sub ul > li {padding:0.5em;}
#header_ > nav > .list > li > .sub ul > li > a {display:block; margin:-0.5em; padding:inherit; text-decoration:none;}
#header_ > nav > .list > li > .sub > .image {display:none;}

html.fac-js-enabled #header_ {position:fixed;}
html.fac-js-enabled #header_ > h1 {transition:color 0.1s ease-in-out;}
html.fac-js-enabled #header_ > nav {display:flex; height:0; transition:height 0s ease-in-out 0.2s;}
html.fac-js-enabled #header_ > nav > h1::after {transition:color 0.1s ease-in-out;}
html.fac-js-enabled #header_ > nav > .list {opacity:0; transition:opacity 0.2s ease-in-out;}
html.fac-nav-shown #header_ {}
html.fac-nav-shown #header_ > h1 {z-index:3; color:var(--color-sub-negative);}
html.fac-nav-shown #header_ > nav {height:120vh; background:var(--color-sub); overflow:auto; transition:height 0s ease-in-out;}
html.fac-nav-shown #header_ > nav > h1::after {content:'\e832'; color:var(--color-sub-negative); font-size:0.6em;}
html.fac-nav-shown #header_ > nav > .list {opacity:1;}

#header_ > nav > .list > li.fac-switcher {}
#header_ > nav > .list > li.fac-switcher > a {padding-right:1em;}
#header_ > nav > .list > li.fac-switcher > a::after {
	display:flex; justify-content:center; align-items:center; content:'\e836'; 
	width:1em; position:absolute; right:0; top:0; bottom:0; font:normal 1em/1 icons;}
#header_ > nav > .list > li.fac-switcher--hidden > a::after {content:'\e835';}

}


/* #main_ */
#main_ {display:block; width:1110px; position:relative; margin:0 auto;}
#main_::after {display:block; content:""; clear:both; height:0;}

@media screen and (max-width:599px) {
#main_ {width:auto;}
#main_::after {}
}


/* #contents_ */
#contents_ {}

@media screen and (max-width:599px) {
#contents_ {}
}


/* #footer_ */
#footer_ > .page-top {
	display:block; width:1.5em; height:0; position:fixed; right:0; bottom:0; z-index:9900; padding:1.5em 0 0; 
	background:var(--color-sub); color:var(--color-sub-negative); font-size:4rem; overflow:hidden;}
#footer_ > .page-top::after {
	display:flex; justify-content:center; align-items:center; 
	content:"\e820"; position:absolute; left:0; right:0; top:0; bottom:0; font:normal 1em/1 icons; transition:none;}
#footer_ > .page-top:hover {background-color:var(--color-sub-light);}

html.fac-js-enabled    #footer_ > .page-top {opacity:0; pointer-events:none;}
html.fac-header-hidden #footer_ > .page-top {opacity:1; pointer-events:auto;}

@media screen and (min-width:600px) {
#footer_ {
	display:-ms-grid; display:grid; gap:15px 30px; 
	grid-template:
		"logo nav" 
		"logo copyright";
	width:1110px; position:relative; z-index:9900; margin:0 0 0 -555px; padding:60px 50%; 
	background:var(--color-main-lighter); text-align:left;}
#footer_ > h1 {grid-area:logo; width:410px; margin:-20px 0 -20px -30px;}
#footer_ > h1 > a {
	display:block; height:0; padding:85px 0 0; 
	background:url(../images/logo_large.svg); background-size:contain; text-decoration:none; overflow:hidden;}
#footer_ > ul {grid-area:nav; display:flex; align-items:center; justify-content:flex-end; margin:-0.5em; font-size:1.4rem; line-height:1;}
#footer_ > ul > li {position:relative; padding:0.5em;}
#footer_ > ul > li::before {
	display:block; content:''; position:absolute; left:0; top:0.5em; bottom:0.5em; border-right:1px solid var(--color-main);}
#footer_ > ul > li:first-child::before {display:none;}
#footer_ > ul > li > a {display:block; margin:-0.5em; padding:inherit; text-decoration:none;}
#footer_ > ul > li > a:hover {color:var(--color-main-alpha);}
#footer_ > small {grid-area:copyright; display:block; font-size:1.2rem; text-align:right; line-height:1;}
}

@media screen and (max-width:599px) {
#footer_ {
	display:flex; flex-direction:column; align-items:center; margin:0 -8vw; padding:8vw; 
	background:var(--color-main-lighter); text-align:center;}
#footer_ > h1 {width:70vw; margin:-3vw 0 0;}
#footer_ > h1 > a {
	display:block; height:0; padding:20.7317% 0 0; 
	background:url(../images/logo_large.svg) center center no-repeat; background-size:contain; text-decoration:none; overflow:hidden;}
#footer_ > ul {
	display:flex; align-items:center; justify-content:center; 
	margin:-0.5em; padding:1em 0 0; font-size:1rem; line-height:1;}
#footer_ > ul > li {position:relative; padding:0.5em;}
#footer_ > ul > li::before {
	display:block; content:''; position:absolute; left:0; top:0.5em; bottom:0.5em; border-right:1px solid var(--color-main);}
#footer_ > ul > li:first-child::before {display:none;}
#footer_ > ul > li > a {display:block; margin:-0.5em; padding:inherit; text-decoration:none;}
#footer_ > ul > li > a:hover {color:var(--color-main-alpha);}
#footer_ > small {display:block; margin:1.5em 0 0; font-size:0.9rem;}

#footer_ > .page-top {font-size:3rem;}
}


/* .floating-banner */
#footer_  .floating-banner {
	display: none;
	position: fixed;
	right: 4rem;
	bottom: 4rem;
	z-index: 9999;
	border-radius: 0.8rem;
	background: #fff;
	box-shadow: 0 1rem 3rem rgba(0,0,0,0.18);
	transition: opacity 0.3s ease-in-out;
}
#footer_  .floating-banner > ul {
	display: flex;
}
#footer_  .floating-banner > ul > li {
	display: flex;
	position: relative;
}
#footer_  .floating-banner > ul > li:nth-child(n+2)::before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 2rem;
	bottom: 2rem;
	border-left: 1px solid #284167;
}
#footer_  .floating-banner > ul > li > a {
	display: block;
	text-decoration: none;
}
#footer_  .floating-banner > ul > li img {
	display: block;
	width: auto;
	height: 9rem;
}
html.fac-footer-shown #footer_  .floating-banner {
	opacity: 0;
	pointer-events: none;
}
@media screen and (max-width:599px) {
#footer_  .floating-banner {
	right: 1.7rem;
	bottom: 1.7rem;
}
#footer_  .floating-banner > ul > li img {
	height: 6.7rem;
}
}

.show-floating-banner #footer_ > .page-top {
	display: none;
}
.show-floating-banner #footer_ .floating-banner {
	display: flex;
}


/** Components **/

/* リンク：ベース */
.c-link {display:inline-block; text-decoration:underline;}
.c-link[target="_blank"]::after {display:inline-block; content:"\e919"; margin:0 0.5em; font:normal 0.8em/1 icons; transition:none;}
.c-link:hover {text-decoration:none;}
button.c-link {padding:0; border:0; border-radius:0; background:transparent; cursor:pointer; appearance:none;}


/* ボタン：ベース */
.c-button {
	display:inline-flex; min-width:220px; position:relative; z-index:1; padding:1em; padding-right:3em; 
	border:1px solid var(--color-main-light); box-sizing:border-box; background:var(--color-sub-negative); 
	color:var(--color-main); font-size:1.4rem; line-height:1; text-decoration:none; text-align:left; cursor:pointer; 
	transition:0.2s ease-in-out 0s; transition-property:background-color,border-color,color;}
.c-button::after {
	order:-1; display:flex; justify-content:center; align-items:center; 
	content:'\e90d'; width:3em; position:absolute; right:0; top:0; bottom:0; 
	color:var(--color-sub-light); font:normal 1em/1 icons; transition:none;}
.c-button:hover {color:var(--color-main-alpha);}

@media screen and (max-width:599px) {
.c-button.c-button {min-width:50vw;}
}

/* ボタン：大 */
.c-button.c-button--large {min-width:300px; padding:1.1em 3em 1.1em 1.5em; font-size:1.8rem;}
.c-button.c-button--large::after {width:3em; font-size:0.8em;}

@media screen and (max-width:599px) {
.c-button.c-button--large {display:block; min-width:0;}
}

/* ボタン：大2 */
.c-button.c-button--larger {display:flex; justify-content:center; max-width:730px; padding:1.1em 3em 1.1em 1.5em; font-size:1.8rem;}
.c-button.c-button--larger::after {width:3em; font-size:0.8em;}

@media screen and (max-width:599px) {
.c-button.c-button--larger {max-width:none; font-size:1.4rem;}
}

/* ボタン：強調 */
.c-button.c-button--strong {border-color:transparent; background-color:var(--color-sub-light); color:var(--color-sub-negative);}
.c-button.c-button--strong::after {color:inherit;}
.c-button.c-button--strong:hover {background-color:var(--color-sub);}

@media screen and (max-width:599px) {
.c-button.c-button--strong {}
}

/* ボタン：ARROW */
.c-button.c-button--arrow {
	display:inline-flex; align-items:center; min-width:0; padding:0 0 0 0; border-width:0; background-color:transparent; 
	color:inherit; font-size:1.4rem; font-weight:500; font-family:Jost,sans-serif; letter-spacing:0.04em; text-align:left; transition-duration:0.2s;}
.c-button.c-button--arrow::before {
	display:flex; justify-content:center; align-items:center; 
	content:"\e821"; width:1.8em; height:1.8em; margin:0 0.5em 0 0; padding:0 0 0.05em 0.1em; 
	border:1px solid rgba(17,17,17,0.1); border-radius:2em; box-sizing:border-box; font:bold 1.6em/1 icons; 
	transition:border-color 0.2s ease-in-out 0s;}
.c-button.c-button--arrow:hover {background-color:transparent; color:inherit;}
.c-button.c-button--arrow:hover::before {border-color:rgba(17,17,17,0.6);}

@media screen and (max-width:599px) {
.c-button.c-button--arrow {font-size:1.2rem;}
.c-button.c-button--arrow::before {width:1.5em; height:1.5em; padding:0;}
}

/* ボタン：ポップアップ */
.c-button.c-button--popup {}
.c-button.c-button--popup::after {
	content:"\e835"; width:1em; height:1em; right:2em; margin:auto; padding:0.5em; border-radius:5em; 
	background:var(--color-sub-light); color:var(--color-sub-negative); font-size:0.5em; font-weight:bold;}

/* ボタン：リスト */
.c-button.c-button--list {padding-left:3em; padding-right:3em;}
.c-button.c-button--list::after {
	display:flex; justify-content:center; align-items:center; content:"\e90c"; width:3em; position:absolute; right:0; top:0; bottom:0; font:bold 1em/1 icons;}

/* ボタン：ダウンロード */
.c-button.c-button--download {}
.c-button.c-button--download::before {
	display:flex; justify-content:center; align-items:center; content:"\e916"; width:3em; font:bold 1em/1 icons;}
.c-button.c-button--download::after {display:none;}


/* コンテンツヘッダー */
.c-contents-header {
	display:flex; justify-content:flex-start; align-items:center; min-height:200px; 
	margin:0 calc(50% - 50vw); padding:1em calc(50vw - 50%); box-sizing:border-box; background:var(--color-main-lighter);}
.c-contents-header > h1 {color:var(--color-sub); font-size:3.2rem; line-height:1.5;}
.c-contents-header > p {margin:0.5em 0 0; font-size:1.4rem;}

@media screen and (max-width:1190px) {
.c-contents-header {margin-left:-40px; margin-right:-40px; padding-left:40px; padding-right:40px;}
}

@media screen and (max-width:599px) {
.c-contents-header {min-height:21.3333vw; margin:0 -8vw; padding:1em 8vw;}
.c-contents-header > h1 {font-size:1.8rem;}
.c-contents-header > p {font-size:1.2rem;}
}


/* パララックス */
.c-parallax {position:relative; overflow:hidden;}
.c-parallax--image > img {display:block; width:100%; height:100%; object-fit:cover;}
.c-parallax--image.fac-parallax > img {position:absolute; left:50%; top:50%; transform:translate3d(-50%,-50%,0);}


/* サブナビ */
.c-sub-nav {display:none;}

@media screen and (max-width:599px) {
.c-sub-nav {
	display:block; height:12vw; position:relative; margin:0 -8vw; padding:1.7em 0; box-sizing:border-box; 
	font-size:1rem; text-align:left; line-height:1;}
.c-sub-nav > h1 {color:transparent; line-height:inherit;}
.c-sub-nav > ul {
	display:flex; position:absolute; left:0; right:0; top:0; z-index:1; padding:0 calc(8vw - 1em); 
	border-bottom:1px solid var(--color-main-light); box-sizing:border-box; background:var(--color-main-negative);
	white-space:nowrap; overflow:auto;}
.c-sub-nav > ul > li {position:relative; padding:1.7em 1em;}
.c-sub-nav > ul > li > a {display:block; margin:-1.7em -1em; padding:inherit; text-decoration:none;}
.c-sub-nav > ul > li::after {
	display:block; content:''; position:absolute; left:1em; right:1em; bottom:0; z-index:2; border-bottom:1px solid transparent; 
	transition:border-color 0.2s ease-in-out;}
.c-sub-nav > ul > li.selected::after, 
.c-sub-nav > ul > li.c-sub-nav--selected::after {border-bottom-color:var(--color-sub); color:var(--color-sub);}
.c-sub-nav > ul > li > ul {display:none;}
.c-sub-nav > ul > li.top {display:none;}

html.fac-sub-nav-sticky .c-sub-nav > ul {position:fixed; left:0; right:0; top:16vw; z-index:9001;}
}


/* 記事ナビ */
.c-page-nav {position:relative; z-index:9002; background:#fff;}
.c-page-nav a:hover {color:var(--color-main-alpha);}
.c-page-nav > h1 {font-size:1.2rem; line-height:1;}
.c-page-nav > ul {margin:1.5em 0 0; font-size:1.4rem;}
.c-page-nav > ul > li {padding:1em 0; border-top:1px solid var(--color-main-light);}
.c-page-nav > ul > li > a {display:block; margin:-0.5em 0; padding:0.5em 0; font-weight:bold; text-decoration:none;}
.c-page-nav > ul > li > ul {margin:0.2em 0 0; font-size:1.2rem;}
.c-page-nav > ul > li > ul > li {padding:0.5em 0;}
.c-page-nav > ul > li > ul > li > a {display:block; margin:-0.5em 0; padding:inherit; text-decoration:none;}

@media screen and (max-width:599px) {
.c-page-nav {margin:-1px 0 0; border:solid var(--color-main-light); border-width:1px 0;}
.c-page-nav a:hover {}
.c-page-nav > h1 {display:flex; align-items:center; height:12vw; margin:-4vw -8vw; padding:4vw 8vw; box-sizing:border-box; font-size:1rem;}
.c-page-nav > ul {margin:4vw -8vw 0; padding:0 8vw; font-size:1rem;}
.c-page-nav > ul > li {}
.c-page-nav > ul > li > a {}
.c-page-nav > ul > li > ul {font-size:inherit;}
.c-page-nav > ul > li > ul > li {}
.c-page-nav > ul > li > ul > li > a {}
}


/* パネル一覧 */
.c-panel-list {display:flex; flex-wrap:wrap; justify-content:center; margin:-30px -15px 0; font-size:1.6rem; text-align:left;}
.c-panel-list > li {
    flex:0 1 calc(33.3333% - 30px); margin:30px 15px 0; padding:20px; box-sizing:border-box; border:1px solid var(--color-main-light);}
.c-panel-list > li > a {display:block; margin:-20px; padding:inherit; text-decoration:none;}
.c-panel-list > li .image {position:relative; margin:-20px -20px 0;}
.c-panel-list > li .image::after {display:block; content:''; height:0; padding:68.6781% 0 0; overflow:hidden;}
.c-panel-list > li .image > img {display:block; width:100%; height:100%; position:absolute; left:0; top:0; object-fit:cover;}
.c-panel-list > li h2 {position:relative; margin:1.2em 0 0;}
.c-panel-list > li h2::after {
    display:flex; justify-content:center; align-items:center; 
	content:'\e90d'; position:absolute; right:0; top:0; bottom:0; 
	color:var(--color-sub-light); font:normal 1em/1 icons; transition:none;}
.c-panel-list > li > a:hover {color:var(--color-main-alpha);}

@media screen and (max-width:599px) {
.c-panel-list {display:block; margin:-5.3333vw 0 0; font-size:1.2rem;}
.c-panel-list > li {margin:5.3333vw 0 0; padding:4vw;}
.c-panel-list > li > a {margin:-4vw;}
.c-panel-list > li .image {margin:-4vw -4vw 0;}
.c-panel-list > li .image::after {}
.c-panel-list > li .image > img {}
.c-panel-list > li h2 {}
.c-panel-list > li h2::after {}
.c-panel-list > li > a:hover {}
}


/* タグ一覧 */
.c-tags {flex:1 0 auto; display:flex; font-size:1.2rem; font-weight:bold; line-height:1;}
.c-tags > li {
	display:flex; justify-content:center; align-items:center; 
	min-width:11em; margin:0 0 0 0.5em; padding:0.5em; border-radius:5px; box-sizing:border-box; 
	background:var(--color-sub-lighter); white-space:nowrap; 
}
.c-tags > li:first-child {margin-left:0;}

.c-tags.c-tags--large {font-size:1.6rem;}
.c-tags.c-tags--large > li {padding:0.35em 0.5em;}

.c-tags.c-tags--strong > li {padding:0.35em 0.5em; border-radius:2em; background:#e4eaee; color:#7998ac;}

@media screen and (max-width:599px) {
.c-tags {font-size:0.9rem;}
.c-tags > li {min-width:24vw; border-radius:0.6666vw;}
.c-tags > li:first-child {}

.c-tags.c-tags--large {font-size:1.4rem;}
.c-tags.c-tags--large > li {}

.c-tags.c-tags--strong > li {}
}


/* 1行リスト */
.c-line-list {font-size:1.2rem; line-height:1.2; text-align:left;}
.c-line-list > li {display:flex; align-items:baseline; padding:1em 0; border:solid var(--color-main-light); border-width:0 0 1px;}
.c-line-list > li > *, 
.c-line-list > li > a > * {margin-right:1em;}
.c-line-list > li > *:last-child, 
.c-line-list > li > a > *:last-child {margin-right:0;}
.c-line-list > li > a {
	flex:1 1 auto; display:flex; align-items:center; 
	position:relative; margin:-1em 0; padding:inherit; padding-right:2em; text-decoration:none; 
}
.c-line-list > li > a::after {
	display:flex; justify-content:center; align-items:center; 
	content:'\e90d'; width:1.2em; position:absolute; right:0; top:0; bottom:0; 
	color:var(--color-sub-light); font:normal 1.2em/1 icons; transition:none; 
}
.c-line-list > li time, 
.c-line-list > li strong {padding:0.4em 0; font-weight:bold; white-space:nowrap;}
.c-line-list > li time   {flex:0 0 6em;}
.c-line-list > li strong {flex:0 0 11em;}
.c-line-list > li .tags {flex:0 0 auto;}
.c-line-list > li .tags > li {min-width:13.5em;}
.c-line-list > li h2 {flex:1 1 auto; color:var(--color-sub); font-size:1.6rem; transition:color 0.2s ease-in-out;}
.c-line-list > li > a:hover > h2 {color:var(--color-main-alpha);}
.c-line-list > li:last-child {border-bottom-width:0;}

@media screen and (max-width:599px) {
.c-line-list {font-size:1rem;}
.c-line-list > li {flex-wrap:wrap;}
.c-line-list > li:first-child {border-top-width:1px;}
.c-line-list > li > *, 
.c-line-list > li > a > * {}
.c-line-list > li > *:last-child, 
.c-line-list > li > a > *:last-child {}
.c-line-list > li > a {flex:1 1 100%; flex-wrap:wrap; padding-right:0;}
.c-line-list > li > a::after {display:none;}
.c-line-list > li time, 
.c-line-list > li strong {}
.c-line-list > li time   {flex:0 0 auto;}
.c-line-list > li strong {flex:0 0 auto;}
.c-line-list > li .tags {flex:0 0 auto;}
.c-line-list > li .tags > li {min-width:24vw;}
.c-line-list > li h2 {flex:1 1 100%; margin:0.5em 0 0; font-size:1.2rem;}
.c-line-list > li > a:hover > h2 {}
.c-line-list > li:last-child {}
}


/* データリスト */
.c-data-list {font-size:1.6rem;}
.c-data-list > li {padding:2em 0 1.5em; border:solid var(--color-main-light); border-width:0 0 1px;}
.c-data-list > li:last-child {border-bottom-width:0;}
.c-data-list > li::after {display:block; content:''; clear:both; height:0; overflow:hidden;}
.c-data-list > li > * {display:block; margin-left:190px; margin-top:2em;}
.c-data-list > li > h2 {float:left; width:170px; margin:0; color:var(--color-sub); font-weight:bold; line-height:inherit;}
.c-data-list > li > h2 + * {margin-top:0;}
.c-data-list > li > h2::before, 
.c-data-list > li > h2 + p::before {display:block; content:''; height:0; margin:-0.5em 0 0; overflow:hidden;}

@media screen and (max-width:599px) {
.c-data-list {font-size:1.2rem;}
.c-data-list > li {padding:1em 0;}
.c-data-list > li:last-child {}
.c-data-list > li::after {}
.c-data-list > li > * {margin-left:0; margin-top:1em;}
.c-data-list > li > h2 {float:none; width:auto; font-size:1.4rem; line-height:inherit;}
.c-data-list > li > h2 + * {margin-top:0.5em;}
.c-data-list > li > h2::before, 
.c-data-list > li > h2 + p::before {display:none;}
.c-data-list > li > h2 + p {margin-top:0;}
}


/* 実績リスト */
.c-achievements-list {font-size:1.6rem;}
.c-achievements-list > li {display:flex; align-items:flex-start; padding:1em 0; border:solid var(--color-main-light); border-width:1px 0 0;}
.c-achievements-list > li:last-child {border-bottom-width:1px;}
.c-achievements-list > li > * {margin-left:1em;}
.c-achievements-list > li > *:first-child {margin-left:0;}
.c-achievements-list > li > .tags {margin-top:0.2em;}
.c-achievements-list > li > h2 {flex:1 1 100%;}

@media screen and (max-width:599px) {
.c-achievements-list {font-size:1.2rem;}
.c-achievements-list > li {flex-wrap:wrap;}
.c-achievements-list > li:last-child {}
.c-achievements-list > li > * {}
.c-achievements-list > li > *:first-child {}
.c-achievements-list > li > .tags {margin:0;}
.c-achievements-list > li > h2 {margin:0.5em 0 0; font-weight:normal;}
}


/* カテゴリーリスト */
.c-category-list {display:flex; flex-wrap:wrap; margin:-30px -15px 0; font-size:1.4rem; font-weight:bold; line-height:1.2;}
.c-category-list > li {
	flex:0 1 calc(25% - 30px); display:flex; margin:30px 15px 0; padding:1.3em 1.5em; box-sizing:border-box; 
	background:var(--color-main-negative); border-radius:5px; border:1px solid var(--color-main-light);}
.c-category-list > li > a {
	display:flex; justify-content:flex-start; align-items:center; 
	width:100%; position:relative; margin:-1.5em; padding:inherit; padding-right:3em; text-decoration:none;}
.c-category-list > li > a::after {
	display:flex; justify-content:center; align-items:center; 
	content:'\e90d'; width:3em; position:absolute; right:0; top:0; bottom:0; 
	color:var(--color-sub-light); font:normal 1.2em/1 icons; transition:none;}
.c-category-list > li > a:hover {color:var(--color-main-alpha);}
.c-category-list > li.selected {border-color:var(--color-sub);}

@media screen and (max-width:599px) {
.c-category-list {margin:-4vw -2vw 0; font-size:1rem;}
.c-category-list > li {flex:0 1 calc(50% - 4vw); margin:4vw 2vw 0; border-radius:0.6666vw;}
.c-category-list > li > a {padding:inherit;}
.c-category-list > li > a::after {display:none;}
.c-category-list > li > a:hover {}
.c-category-list > li.selected {}
}



/* ニュースリスト */
.c-information-list {font-size:1.6rem; font-weight:bold; line-height:1; text-align:left;}
.c-information-list > li {
	display:flex; flex-wrap:wrap; align-items:center; padding:1.8em 0; border:solid var(--color-main-light); border-width:1px 0 0;}
.c-information-list > li > a {
	flex:0 0 100%; display:flex; flex-wrap:wrap; align-items:center; position:relative; 
	margin:-1.8em 0; padding:inherit; box-sizing:border-box; text-decoration:none;}
.c-information-list > li > a:hover {opacity:0.6;}
.c-information-list > li > a[target="_blank"] > h2::after {display:inline; content:'\e919'; font:normal 1em/1 icons;}
.c-information-list > li > a[href$=".pdf"] > h2::after {display:inline; content:'\e90f'; font:normal 1em/1 icons;}
.c-information-list > li time {color:#999;}
.c-information-list > li .categories {margin:0 0 0 1em;}
.c-information-list > li h2 {flex:0 0 100%; margin:0.7em 0 0; font-size:1.6rem; line-height:1.5;}

@media screen and (max-width:599px) {
.c-information-list {font-size:1rem;}
.c-information-list > li {padding:1.4em 0;}
.c-information-list > li:last-child {}
.c-information-list > li > a {margin:-1.4em 0;}
.c-information-list > li > a:hover {}
.c-information-list > li time {}
.c-information-list > li .categories {}
.c-information-list > li h2 {font-size:1.4rem;}
}


/* コンサルティングリスト */
.c-consulting-list {display:flex; flex-wrap:wrap; justify-content:space-between;}
.c-consulting-category {
	flex:1 1 100%; display:flex; flex-direction:column; position:relative; padding:65px 0 0; font-size:1.4rem; text-align:left;}
.c-consulting-category > h1 {color:var(--color-sub); font-size:2.2rem; line-height:1;}
.c-consulting-category > .c-consulting-items {
	flex:1 1 auto; display:flex; flex-wrap:wrap; justify-content:space-between; align-content:flex-start; 
	position:relative; margin:35px 0 0; padding:17px; border:1px solid var(--color-main-light); background:#fff; line-height:1.5;}
.c-consulting-category > .c-consulting-items > li {flex:0 1 310px; padding:0.5em 0; border-top:1px solid var(--color-main-light);}
.c-consulting-category > .c-consulting-items > li > a {
	display:block; position:relative; margin:-0.5em 0; padding:inherit; padding-right:2em; text-decoration:none;}
.c-consulting-category > .c-consulting-items > li > a::after {
	display:flex; justify-content:center; align-items:center; 
	content:'\e90d'; width:1.2em; position:absolute; right:0; top:0; bottom:0; 
	color:var(--color-sub-light); font:normal 1em/1 icons; transition:none;}
.c-consulting-category > .c-consulting-items > li > a:hover {color:var(--color-main-alpha);}
.c-consulting-category > .c-consulting-items > li span {display:inline-block;}
.c-consulting-category > .c-consulting-items::before {
	display:block; content:''; position:absolute; left:0; right:0; top:0; bottom:0; z-index:2; 
	border:18px solid #fff; pointer-events:none;}
.c-consulting-category > .c-consulting-category {background:#fff;}
.c-consulting-category > .c-consulting-category > h1 {line-height:1.5;}
.c-consulting-category > .c-consulting-category > .c-consulting-items::before, 
.c-consulting-category > .c-consulting-category > .c-consulting-items::after {
	display:block; content:''; flex:0 1 310px; order:1; position:static; border-width:0;}

.c-consulting-category#management {flex-direction:row; flex-wrap:wrap; margin:0 -15px;}
.c-consulting-category#management::before {display:none;}
.c-consulting-category#management > h1 {flex:0 0 100%; margin:0 15px;}
.c-consulting-category#management > .c-consulting-category {
	flex:0 1 calc(25% - 30px); position:relative; margin:30px 15px 0; padding:19px; 
	border:1px solid var(--color-main-light); box-sizing:border-box;}
.c-consulting-category#management > .c-consulting-category > .image {display:block; position:relative; margin:-20px -20px 0;}
.c-consulting-category#management > .c-consulting-category > .image::after {
	display:block; content:''; height:0; padding:71.6129% 0 0; overflow:hidden;}
.c-consulting-category#management > .c-consulting-category > .image > img {
	display:block; width:100%; height:100%; position:absolute; left:0; top:0; object-fit:cover; object-position:50% 50%;}
.c-consulting-category#management > .c-consulting-category > h1 {color:inherit; font-size:1.8rem;}
.c-consulting-category#management > .c-consulting-category > .c-consulting-items {margin:0.8em 0 0; padding:0; border-width:0;}
.c-consulting-category#management > .c-consulting-category > .image + h1 {margin:0.8em 0 0;}

@media screen and (min-width:600px) {
.c-consulting-category#public-enterprise {flex:0 1 730px;}
.c-consulting-category#research {flex:0 1 350px;}
}

@media screen and (max-width:599px) {
.c-consulting-list {}
.c-consulting-category {padding:10.6666vw 0 0; font-size:1.2rem;}
.c-consulting-category > h1 {font-size:1.8rem;}
.c-consulting-category > .c-consulting-items {display:block; margin:6.6666vw 0 0; padding:2vw 4vw;}
.c-consulting-category > .c-consulting-items > li {}
.c-consulting-category > .c-consulting-items > li:first-child {border-top-width:0;}
.c-consulting-category > .c-consulting-items > li > a {}
.c-consulting-category > .c-consulting-items > li > a::after {}
.c-consulting-category > .c-consulting-items > li > a:hover {}
.c-consulting-category > .c-consulting-items > li span {}
.c-consulting-category > .c-consulting-items::before {display:none;}
.c-consulting-category > .c-consulting-category {}
.c-consulting-category > .c-consulting-category > h1 {}
.c-consulting-category > .c-consulting-category > .c-consulting-items::before, 
.c-consulting-category > .c-consulting-category > .c-consulting-items::after {display:none;}

.c-consulting-category#management {flex-wrap:nowrap; margin:0 -8vw; padding-bottom:8vw; padding-right:8vw; overflow:auto;}
.c-consulting-category#management > h1 {display:none;}
.c-consulting-category#management > .c-consulting-category {flex:0 0 calc(100vw - 22vw); margin:0 2vw;}
.c-consulting-category#management > h1 + .c-consulting-category {margin-left:8vw;}
.c-consulting-category#management > .c-consulting-category:last-child {margin-right:8vw;}
.c-consulting-category#management > .c-consulting-category > .image {}
.c-consulting-category#management > .c-consulting-category > .image::after {}
.c-consulting-category#management > .c-consulting-category > .image > img {}
.c-consulting-category#management > .c-consulting-category > h1 {font-size:1.5rem;}
.c-consulting-category#management > .c-consulting-category > .c-consulting-items {}
.c-consulting-category#management > .c-consulting-category > .c-consulting-items > li:first-child {border-top-width:1px;}
.c-consulting-category#management > .c-consulting-category > .image + h1 {}
}


/* ページャー */
.c-pager {
	display:flex; align-items:center; padding:1.5em 0; border-top:1px solid var(--color-main-light); 
	font-size:1.6rem; text-align:center; line-height:1;}
.c-pager > b {display:none;}
.c-pager > ul {flex:1 1 auto; display:flex; justify-content:center;}
.c-pager > ul > li {display:flex; justify-content:center; align-items:center; padding:1em; box-sizing:border-box;}
.c-pager > ul > li > * {display:flex; justify-content:center; align-items:center; margin:-1em; padding:1em;}
.c-pager > ul > li.previous, 
.c-pager > ul > li.next     {display:flex; align-items:center; position:relative; padding:1em 2em; text-decoration:none;}
.c-pager > ul > li.previous > a, 
.c-pager > ul > li.next     > a {display:flex; align-items:center; margin:-1em -2em; padding:inherit; text-decoration:none;}
.c-pager > ul > li.previous {margin-right:auto;}
.c-pager > ul > li.next     {margin-left:auto;}
.c-pager > ul > li.previous::before, 
.c-pager > ul > li.next::after      {
	display:flex; justify-content:center; align-items:center; position:absolute; top:0; bottom:0; 
	font:bold 1.6em/1 icons; transition:none; pointer-events:none;}
.c-pager > ul > li.previous::before {content:"\e823"; left:0;}
.c-pager > ul > li.next::after      {content:"\e821"; right:0;}
.c-pager > ul > li.selected {}
.c-pager > ul > li.separator {}
.c-pager > ul > li.disabled {cursor:default; pointer-events:none; visibility:hidden;}
.c-pager > ul > li > a:hover {color:var(--color-main-alpha);}

@media screen and (max-width:599px) {
.c-pager {position:relative; margin:0; padding:2em 0; font-size:1.2rem; font-size:3.2vw;}
.c-pager > b {
	display:flex; justify-content:center; align-items:center; min-width:10.6666vw; min-height:10.6666vw; 
	position:absolute; left:50%; padding:1vw; transform:translateX(-50%); border:1px solid var(--color-sub); box-sizing:border-box; 
	font-weight:normal;}
.c-pager > ul {}
.c-pager > ul > li {display:none;}
.c-pager > ul > li.previous, 
.c-pager > ul > li.next {display:block;}
}


/* 記事詳細 */
.c-article {padding:0 0 70px; font-size:1.6rem; text-align:left;}
.c-article::after {display:block; content:''; clear:both; height:0; overflow:hidden;}
.c-article > header {
	display:flex; flex-direction:column; justify-content:center; align-items:flex-start; 
	min-height:200px; position:relative; margin:0 calc(50% - 50vw); padding:1em calc(50vw - 50%); box-sizing:border-box;
	background:var(--color-main-lighter);}
.c-article > header > strong {display:block; font-size:1.6rem; font-weight:bold; line-height:1.5;}
.c-article > header > h1 {color:var(--color-sub); font-size:3.2rem; line-height:1.3;}
.c-article > header > strong + h1 {margin:0.2em 0 0;}
.c-article > header > small {display:block; margin:0.5em 0 0; font-size:1.4rem;}
.c-article.has-image > header {min-height:480px; padding-right:calc(50vw - 50% + 595px);}
.c-article.has-image > header > .image {width:50%; position:absolute; left:50%; top:0; bottom:0; right:0;}
.c-article.has-image > header > .image > img {display:block; width:100%; height:100%; object-fit:cover;}
.c-article > .categories {}
.c-article > .page-nav {float:right; width:255px; margin:80px 0 0;}

.c-article-body {display:flex; flex-direction:column; margin:-2.5em auto 0;}
.c-article-body b, 
.c-article-body strong, 
.c-article-body h1, 
.c-article-body h2, 
.c-article-body h3, 
.c-article-body h4, 
.c-article-body h5, 
.c-article-body h6 {font-weight:bold;}
.c-article-body ul {padding:0 0 0 1em; text-indent:-1em;}
.c-article-body ul > li {}
.c-article-body ul > li::before {display:inline-block; content:'・'; width:1em; text-indent:0;}
.c-article-body ol {list-style-type:decimal; list-style-position:inside; padding:0 0 0 1em; text-indent:-1em;}
.c-article-body ol > li {}
.c-article-body > * {margin:2.5em 0 0;}
.c-article-body > *.aligncenter {text-align:center;}
.c-article-body > *.alignright {text-align:right;}
.c-article-body > *.has-text-align-center {text-align:center;}
.c-article-body > *.has-text-align-right {text-align:right;}
.c-article-body > h2 {margin:0; padding:2.5em 0 0; color:var(--color-sub); font-size:2rem; line-height:1.5;}
.c-article-body > h3 {margin:0; padding:2.5em 0 0; font-size:1.6rem; line-height:1.5;}
.c-article-body > h4 {padding:0.8em 1em; background:var(--color-sub-lighter); color:var(--color-sub); font-size:1.6rem; line-height:1.5;}
.c-article-body > p {}
.c-article-body > p.has-small-font-size  {font-size:1.4rem;}
.c-article-body > p.has-normal-font-size {font-size:1.6rem;}
.c-article-body > p.has-medium-font-size {font-size:2.2rem;}
.c-article > .c-article-body {width:730px; padding:80px 0 0;}
.c-article > .page-nav + .c-article-body {float:left;}
.c-article > .entries + .c-article-body {margin-left:0;}
 
.c-article .wp-block-group {}
.c-article .wp-block-group h1, 
.c-article .wp-block-group h2, 
.c-article .wp-block-group h3, 
.c-article .wp-block-group h4, 
.c-article .wp-block-group h5, 
.c-article .wp-block-group h6 {line-height:inherit;}
.c-article .wp-block-group > *, 
.c-article .wp-block-group > .wp-block-group__inner-container > * {margin:1em 0 0;}
.c-article .wp-block-group > *:first-child, 
.c-article .wp-block-group > .wp-block-group__inner-container > *:first-child {margin:0;}
.c-article .wp-block-group h1 + p, 
.c-article .wp-block-group h2 + p, 
.c-article .wp-block-group h3 + p, 
.c-article .wp-block-group h4 + p, 
.c-article .wp-block-group h5 + p, 
.c-article .wp-block-group h6 + p {margin-top:0;}

.c-article .wp-block-group.figure {
	margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); padding:80px calc(50vw - 50%); background:var(--color-main-lighter);}
.c-article .wp-block-group.figure h2 {font-size:2rem;}
.c-article .wp-block-group.figure:last-child {margin-bottom:-70px;}

.c-article .wp-block-quote {padding:2em; background:#ececec;}

.c-article .wp-block-gallery {margin-left:-140px; margin-right:-140px; font-size:1.1rem; line-height:1.2; color: #ccc; overflow:hidden;}
.c-article .wp-block-gallery + .wp-block-gallery {margin-top:20px;}
.c-article .wp-block-gallery figcaption {margin:1em 0 0; color:#111; font-size:1.4rem; line-height:1.5;}
.c-article .blocks-gallery-grid {display:flex; flex-wrap:wrap; margin:-20px 0 0 -20px;}
.c-article .blocks-gallery-item {flex:1 1 auto; margin:20px 0 0 20px;}
.c-article .blocks-gallery-item > figure {}
.c-article .blocks-gallery-item > figure > img {display:block; width:100%; max-width:100%; height:auto; margin:0 auto;}
.c-article .blocks-gallery-item__caption {margin:1em 0 0;}
.c-article .wp-block-gallery.columns-2 .blocks-gallery-item {flex:1 1; flex-basis:calc(50% - 20px);}
.c-article .wp-block-gallery.columns-3 .blocks-gallery-item {flex:1 1; flex-basis:calc(33.3333% - 20px);}
.c-article .wp-block-gallery.columns-4 .blocks-gallery-item {flex:1 1; flex-basis:calc(25% - 20px);}

.c-article .wp-block-image {align-self:center;}
.c-article .wp-block-image img {display:block; max-width:100%; height:auto; margin:0 auto;}
.c-article .wp-block-image figcaption {margin:1em 0 0; font-size:1.4rem; line-height:1.5;}
.c-article .wp-block-image.border img {border:1px solid #e7e7e7;}

.c-article .wp-block-buttons {display:flex; justify-content:center; align-items:center;}

.c-article .wp-block-button {margin:1em 0.5em 0;}
.c-article .wp-block-button > .wp-block-button__link {
	display:inline-block; min-width:300px; position:relative; padding:1.1em 3.5em; border:none; box-sizing:border-box; border-radius:2em; 
	background:var(--color-sub); color:#fff; font-size:1.8rem; line-height:1; text-decoration:none; text-align:center; cursor:pointer; 
	transition:all 0.2s ease-in-out 0s; transition-property:border-color,background-color,color,opacity;}
.c-article .wp-block-button > .wp-block-button__link::after {
	display:flex; justify-content:center; align-items:center; 
	content:'\e821'; width:1.8em; position:absolute; right:0; top:0; bottom:0; font:bold 1.7em/1 icons; transition:none;}
.c-article .wp-block-button > .wp-block-button__link:hover {background:var(--color-sub-light);}

.c-article .wp-block-button.is-style-outline > .wp-block-button__link {
	border:1px solid var(--color-sub); background-color:transparent; color:var(--color-main);}
.c-article .wp-block-button.is-style-outline > .wp-block-button__link:hover {opacity:0.6;}

.c-article .wp-block-separator {align-self:center; width:2em; border-color:#4d4d4d;}
.c-article .wp-block-separator.is-style-wide {width:100%; border-color:#dcdddd;}

@media screen and (max-width:1190px) {
.c-article > header {margin-left:-40px; margin-right:-40px; padding-left:40px; padding-right:40px;}
.c-article.has-image > header {padding-right:calc(50% + 80px);}
.c-article .wp-block-group.figure {margin-left:-230px; margin-right:-230px; padding-left:230px; padding-right:230px;}
}

@media screen and (max-width:599px) {
.c-article {padding:0 0 9.3333vw; font-size:1.2rem;}
.c-article::after {}
.c-article > header {min-height:21.3333vw; margin:0 -8vw; padding:1em 8vw;}
.c-article > header > strong {font-size:0.9rem;}
.c-article > header > h1 {font-size:1.8rem;}
.c-article > header > strong + h1 {}
.c-article > header > small {font-size:1rem;}
.c-article.has-image > header {min-height:0; padding-right:8vw;}
.c-article.has-image > header > .image {width:auto; position:static; margin:1.5em -8vw -1em;}
.c-article.has-image > header > .image > img {}
.c-article > .categories {}
.c-article > .page-nav {float:none; width:auto; margin:0 -8vw; padding:4vw 8vw;}

.c-article .blocks-gallery-item > figure {}
.c-article-body {}
.c-article-body b, 
.c-article-body strong, 
.c-article-body h1, 
.c-article-body h2, 
.c-article-body h3, 
.c-article-body h4, 
.c-article-body h5, 
.c-article-body h6 {}
.c-article-body ul {}
.c-article-body ul > li {}
.c-article-body ol {}
.c-article-body ol > li {}
.c-article-body > * {}
.c-article-body > *.aligncenter {}
.c-article-body > *.alignright {}
.c-article-body > *.has-text-align-center {}
.c-article-body > *.has-text-align-right {}
.c-article-body > h2 {}
.c-article-body > h3 {}
.c-article-body > h4 {font-size:1.4rem;}
.c-article-body > p {}
.c-article-body > p.has-small-font-size  {}
.c-article-body > p.has-normal-font-size {}
.c-article-body > p.has-medium-font-size {}
.c-article-body > h4 + h3 {padding:1em 0 0;}
.c-article-body > h4 + p {margin:1.5em 0 0;}
.c-article > .c-article-body {width:auto; padding:8vw 0 0;}
.c-article > .page-nav + .c-article-body {float:left;}
.c-article > .entries + .c-article-body {margin-left:0;}

 .c-article .wp-block-group {}
 .c-article .wp-block-group h1, 
 .c-article .wp-block-group h2, 
 .c-article .wp-block-group h3, 
 .c-article .wp-block-group h4, 
 .c-article .wp-block-group h5, 
 .c-article .wp-block-group h6 {line-height:inherit;}
 .c-article .wp-block-group > *, 
 .c-article .wp-block-group > .wp-block-group__inner-container > * {}
 .c-article .wp-block-group > *:first-child, 
 .c-article .wp-block-group > .wp-block-group__inner-container > *:first-child {}
 .c-article .wp-block-group h1 + p, 
 .c-article .wp-block-group h2 + p, 
 .c-article .wp-block-group h3 + p, 
 .c-article .wp-block-group h4 + p, 
 .c-article .wp-block-group h5 + p, 
 .c-article .wp-block-group h6 + p {}

.c-article .wp-block-group.figure {margin:8vw -8vw 0; padding:10.6666vw 8vw;}
.c-article .wp-block-group.figure h2 {font-size:1.2rem;}
.c-article .wp-block-group.figure:last-child {margin-bottom:-10.6666vw;}

.c-article .wp-block-gallery {margin-left:0; margin-right:0;}
.c-article .wp-block-gallery + .wp-block-gallery {margin-top:4vw;}
.c-article .wp-block-gallery figcaption {font-size:1.2rem;}
.c-article .blocks-gallery-grid {display:block; margin:-4vw 0 0;}
.c-article .blocks-gallery-item {margin:4vw 0 0;}
.c-article .blocks-gallery-item > figure {}
.c-article .blocks-gallery-item > figure > img {width:100%; height:auto;}
.c-article .blocks-gallery-item__caption {}
.c-article .wp-block-gallery.columns-2 .blocks-gallery-item {}
.c-article .wp-block-gallery.columns-3 .blocks-gallery-item {}
.c-article .wp-block-gallery.columns-4 .blocks-gallery-item {}

.c-article .wp-block-image {}
.c-article .wp-block-image img {max-width:100%; height:auto;}
.c-article .wp-block-image figcaption {font-size:1.2rem;}
.c-article .wp-block-image.border img {}

.c-article .wp-block-buttons {display:flex; justify-content:center; align-items:center;}

.c-article .wp-block-button {}
.c-article .wp-block-button > .wp-block-button__link {min-width:0; font-size:1.4rem;}
.c-article .wp-block-button > .wp-block-button__link::after {}
.c-article .wp-block-button > .wp-block-button__link:hover {}

.c-article .wp-block-button.is-style-outline > .wp-block-button__link {}
.c-article .wp-block-button.is-style-outline > .wp-block-button__link:hover {}

.c-article .wp-block-separator {}
.c-article .wp-block-separator.is-style-wide {}
}


/* フォーム */
.c-form {font-size:1.6rem;}
.c-form span {display:inline-block;}
.c-form button, 
.c-form textarea, 
.c-form select, 
.c-form input[type="submit"], 
.c-form input[type="text"], 
.c-form input[type="email"], 
.c-form input[type="tel"], 
.c-form input[type="search"], 
.c-form input[type="number"], 
.c-form input[type="password"] {position:relative; z-index:1; box-sizing:border-box; font-size:inherit; -webkit-appearance:none; appearance:none;}
.c-form input[type="date"] {position:relative; z-index:1; box-sizing:border-box; font-size:inherit;}
.c-form textarea, 
.c-form input[type="text"], 
.c-form input[type="email"], 
.c-form input[type="tel"], 
.c-form input[type="search"], 
.c-form input[type="number"], 
.c-form input[type="password"], 
.c-form input[type="date"], 
.c-form select, 
.c-form .c-form-file > label {
	border:1px solid transparent; border-radius:5px; 
	background:#fff; transition:all 0.2s 0s; transition-property:border-color,background-color;}
.c-form textarea, 
.c-form input[type="text"], 
.c-form input[type="email"], 
.c-form input[type="tel"], 
.c-form input[type="search"], 
.c-form input[type="number"], 
.c-form input[type="password"], 
.c-form input[type="date"], 
.c-form select {width:100%; padding:1em; background:var(--color-main-lighter);}
.c-form textarea {display:block; height:17em;}
.c-form input[type="text"] {}
.c-form input[type="email"] {}
.c-form input[type="tel"] {}
.c-form input[type="search"] {}
.c-form input[type="number"] {}
.c-form input[type="password"] {}
.c-form input[type="date"] {width:auto; min-width:300px;}
.c-form input[type="radio"] {margin:0; cursor:pointer;}
.c-form input[type="radio"] + label {display:inline-block; padding:0 0 0 0.3em; cursor:pointer;}
.c-form input[type="checkbox"] {margin:0; cursor:pointer;}
.c-form input[type="checkbox"] + label {display:inline-block; padding:0 0 0 0.3em; cursor:pointer;}

.c-form input[type="text"]:focus:not([readonly]), 
.c-form input[type="email"]:focus:not([readonly]), 
.c-form input[type="tel"]:focus:not([readonly]), 
.c-form input[type="search"]:focus:not([readonly]), 
.c-form input[type="password"]:focus:not([readonly]), 
.c-form input[type="date"]:focus:not([readonly]), 
.c-form textarea:focus:not([readonly]), 
.c-form select:focus:not([readonly]) {border-color:var(--color-sub); outline:none;}
.c-form textarea[readonly], 
.c-form input[type="text"][readonly], 
.c-form input[type="email"][readonly], 
.c-form input[type="tel"][readonly], 
.c-form input[type="search"][readonly], 
.c-form input[type="password"][readonly], 
.c-form input[type="date"][readonly], 
.c-form select[readonly] {pointer-events:none;}

.c-form-item.c-form-select {position:relative;}
.c-form-item.c-form-select::after {
	display:flex; justify-content:center; align-items:center; 
	content:"\e822"; width:2em; height:2.3em; position:absolute; right:0; top:0; z-index:2; font:bold 1.6em/1 icons; pointer-events:none;}
.c-form-item.c-form-select select {position:relative; padding:1em 3em 1em 1em; border-color:var(--color-main-light); background-color:#fff;}
.c-form-item.c-form-select select::-ms-expand {display:none;}

.c-form label.c-form-radio, 
.c-form label.c-form-checkbox {display:flex; align-items:center; flex-wrap:wrap; cursor:pointer;}
.c-form label.c-form-radio > input, 
.c-form label.c-form-checkbox > input {margin:0 0.3em 0 0;}

.c-form .c-form-file {display:flex; align-items:center; position:relative;}
.c-form .c-form-file > input[type="file"] {display:none;}
.c-form .c-form-file > label {flex:1 0 100%; position:relative; padding:1em 3em 1em 1em; box-sizing:border-box; cursor:pointer;}
.c-form .c-form-file > label::after {
	display:flex; justify-content:center; align-items:center; 
	content:"\e821"; width:2em; position:absolute; right:0; top:0; bottom:0; z-index:2; font:bold 1.6em/1 icons; pointer-events:none;}
.c-form .c-form-file > label:hover {border-color:var(--color-sub);}
.c-form .c-form-file > .c-form-file-clear {
	display:none; width:100%; height:100%; position:absolute; left:0; top:0; z-index:2; border:none; padding:0; border-radius:0; 
	background:transparent; font-size:1.2rem; white-space:nowrap; appearance:none; cursor:pointer; opacity:0;}
.c-form .c-form-file.c-form-file--selected > label::after {content:'\e834'; width:3em; font-size:1em; font-weight:normal; opacity:0.6;}
.c-form .c-form-file.c-form-file--selected > .c-form-file-clear {display:block;}
.c-form .c-form-file.c-form-file--selected > .c-form-file-clear:hover ~ label::after {opacity:1;}

.c-form-field {margin:1em 0 0; font-size:1.4rem; text-align:left;}
.c-form-field > label {}
.c-form-field .c-form-body {margin:0.5em 0 0;}

.c-form textarea.c-form--error, 
.c-form input[type="text"].c-form--error, 
.c-form input[type="email"].c-form--error, 
.c-form input[type="tel"].c-form--error, 
.c-form input[type="search"].c-form--error, 
.c-form input[type="number"].c-form--error, 
.c-form input[type="password"].c-form--error, 
.c-form input[type="date"].c-form--error, 
.c-form select.c-form--error, 
.c-form .c-form-file.c-form--error > label {background-color:#fff7f5;}

.c-form-row {display:flex; padding:1.5em 0 0; text-align:left;}
.c-form-row > header {flex:0 0 300px; padding:0.8em 30px 0.8em 0; box-sizing:border-box;}
.c-form-row > header > h1 {color:var(--color-sub);}
.c-form-row > header > small {display:block; margin:0.5em 0 0; font-size:1.2rem; line-height:1.5;}
.c-form-row > header > p {margin:20px 0 0;}
.c-form-row > .c-form-body {flex:1 1 auto; display:flex; flex-wrap:wrap; align-items:center; margin:-20px 0 0 -20px;}
.c-form-row > .c-form-body > * {flex:1 1 100%; display:flex; padding:20px 0 0 20px; box-sizing:border-box; line-height:1.5;}
.c-form-row > .c-form-body > div > label {display:block;}
.c-form-row > .c-form-body > div input[type="text"], 
.c-form-row > .c-form-body > div input[type="email"], 
.c-form-row > .c-form-body > div input[type="tel"], 
.c-form-row > .c-form-body > div input[type="search"], 
.c-form-row > .c-form-body > div input[type="number"], 
.c-form-row > .c-form-body > div input[type="password"], 
.c-form-row > .c-form-body > div textarea {width:100%;}
.c-form-row > .c-form-body > div i {display:inline-block; vertical-align:middle; margin:0 0.5em;}
.c-form-row > .c-form-body > div > label + * {margin-top:0.5em;}
.c-form-row > .c-form-body > div > small {display:block; margin:1em 0 0; font-size:1.2rem;}
.c-form-row > .c-form-body > div > small + small {margin-top:0.5em;}
.c-form-row > .c-form-body > small {display:block; font-size:1.2rem;}
.c-form-row > .c-form-body > ul.c-form-errors {flex:1 1 100%; display:block; padding:0.5em 0 0 20px; color:var(--color-caution);}
.c-form-row > .c-form-body > ul.c-form-errors > li {}
.c-form-row > .c-form-body .c-form-list {
	flex:1 1 100%; display:flex; flex-wrap:wrap; margin:-0.5em 0 0 -1em; padding-top:calc(20px + 0.8em); padding-bottom:0.8em;}
.c-form-row > .c-form-body .c-form-list > .c-form-item {flex:0 1 auto; display:flex; align-items:center; padding:0.5em 0 0 1em;}
.c-form-row > .c-form-body + .c-form-body {margin-top:0; padding-top:0;}

.c-form-item {flex:1 1 100%; display:flex; align-items:center;}

.c-form.c-form--confirm .c-form-row > .c-form-body {align-items:center; margin-left:0; margin-top:0; padding:0.8em 0; word-break:break-all;}
.c-form.c-form--confirm .c-form-row > .c-form-body > * {padding-left:0.5em; padding-top:0.5em;}
.c-form-row.c-form-line {display:block;}
.c-form-row.c-form-line > header {}
.c-form-row.c-form-line > header > h1 {padding-top:0;}
.c-form-row.c-form-line > .c-form-body {width:auto; margin:-20px 0 0 -20px; padding:1em 0 0;}
.c-form-row.c-form-line > .c-form-body > div {}
.c-form-row.c-form-text {}
.c-form-row.c-form-text .c-form-body > * {}
.c-form-row.c-form-number {}
.c-form-row.c-form-number .c-form-body > * {width:20%;}
.c-form-row.c-form-textarea {}
.c-form-row.c-form-textarea .c-form-body > * {width:100%;}
.c-form-row.c-form-select {}
.c-form-row.c-form-radio {}
.c-form-row.c-form-checkbox {}
.c-form-row.c-form-password {}
.c-form-row.c-form-password .c-form-body > * {width:100%; padding-right:50%;}
.c-form-row.c-form-email {}
.c-form-row.c-form-email.c-form--connected .c-form-body > * {width:50%;}
.c-form-row.c-form-email.c-form--connected .c-form-body > div::before {content:"@";}
.c-form-row.c-form-postal-code {}
.c-form-row.c-form-postal-code .c-form-body > * {width:30%;}
.c-form-row.c-form-postal-code.c-form--connected .c-form-body > * {width:25%;}
.c-form-row.c-form-phone-number {}
.c-form-row.c-form-phone-number .c-form-body > * {width:30%;}
.c-form-row.c-form-phone-number.c-form--connected .c-form-body > * {width:25%;}
.c-form-row.c-form-date {}
.c-form-row.c-form-address {}
.c-form-row.c-form-group > .c-form-body {align-items:flex-start;}
.c-form-row.c-form-group > .c-form-body > div {}
.c-form-row.c-form--connected > .c-form-body {}
.c-form-row.c-form--connected > .c-form-body > div {position:relative;}
.c-form-row.c-form--connected > .c-form-body > div::before {
	display:block; width:20px; content:"-"; position:absolute; left:0; top:50%; margin:-0.5em 0 0; padding:10px 0 0; text-align:center; line-height:1;}
.c-form-row.c-form--connected > .c-form-body > div:first-child::before {display:none;}

.c-form-category {
	display:block; margin:0 calc(50% - 50vw); padding:60px calc(50vw - 50%); color:var(--color-sub); text-align:left;}
.c-form-category > h1 {font-size:2.4rem;}
.c-form-category > h1 small {display:inline-block; margin:0 0 0 0.5em; font-size:1.4rem; font-weight:normal;}
.c-form-category:nth-of-type(even) {background-color:var(--color-main-lighter);}
.c-form-category:nth-of-type(even) textarea, 
.c-form-category:nth-of-type(even) input[type="text"], 
.c-form-category:nth-of-type(even) input[type="email"], 
.c-form-category:nth-of-type(even) input[type="tel"], 
.c-form-category:nth-of-type(even) input[type="search"], 
.c-form-category:nth-of-type(even) input[type="number"], 
.c-form-category:nth-of-type(even) input[type="password"], 
.c-form-category:nth-of-type(even) input[type="date"], 
.c-form-category:nth-of-type(even) select {background:var(--color-main-negative);}

.c-form-footer {display:flex; justify-content:center; align-items:center; flex-wrap:wrap; position:relative; margin:-10px -10px 0; padding:3em 0 0;}
.c-form-footer > button {margin:10px 10px 0; padding:1.1em 2em; border-width:2px; font-size:1.8rem;}
.c-form-footer > button::after {width:1.8em;}

.c-form-errors {color:var(--color-caution); font-size:1.6rem;}
.c-form-errors > li {}

.c-form-category.c-form--required > h1::after, 
.c-form-row.c-form--required > header > h1::after {
	display:inline-block; content:'*'; position:relative; top:-0.2em; margin:0 0 0 0.3em; color:var(--color-caution);}
.c-form.c-form--confirm .c-form-category.c-form--required > h1::after, 
.c-form.c-form--confirm .c-form-row.c-form--required > header > h1::after {display:none;}

.c-form-hidden {display:none !important;}

@media screen and (max-width:1190px) {
.c-form-category {margin-left:-40px; margin-right:-40px; padding-left:40px; padding-right:40px;}
}

@media screen and (max-width:599px) {
.c-form {font-size:1.3rem;}
.c-form span {}
.c-form button, 
.c-form textarea, 
.c-form select, 
.c-form input[type="submit"], 
.c-form input[type="text"], 
.c-form input[type="email"], 
.c-form input[type="tel"], 
.c-form input[type="search"], 
.c-form input[type="number"], 
.c-form input[type="password"], 
.c-form input[type="date"] {}
.c-form button {}
.c-form textarea, 
.c-form input[type="text"], 
.c-form input[type="email"], 
.c-form input[type="tel"], 
.c-form input[type="search"], 
.c-form input[type="number"], 
.c-form input[type="password"], 
.c-form input[type="date"], 
.c-form select, 
.c-form .c-form-file > label {border-radius:0.6666vw;}
.c-form textarea, 
.c-form input[type="text"], 
.c-form input[type="email"], 
.c-form input[type="tel"], 
.c-form input[type="search"], 
.c-form input[type="number"], 
.c-form input[type="password"], 
.c-form input[type="date"] {padding:0.5em; font-size:1.6rem;}
.c-form textarea {height:10em;}
.c-form input[type="text"] {}
.c-form input[type="email"] {}
.c-form input[type="tel"] {}
.c-form input[type="search"] {}
.c-form input[type="number"] {}
.c-form input[type="password"] {}
.c-form input[type="date"] {width:100%; min-width:0;}
.c-form input[type="radio"] {}
.c-form input[type="radio"] + label {}
.c-form input[type="checkbox"] {}
.c-form input[type="checkbox"] + label {}
.c-form input[type="submit"], 
.c-form button[type="submit"] {width:auto; height:auto; min-height:12.5vw; padding:4vw;}
.c-form input[type="submit"]:hover, .c-form button[type="submit"]:hover {}

.c-form-item.c-form-select {flex:1 1 100%;}
.c-form-item.c-form-select:after {width:2em;}
.c-form-item.c-form-select select {width:100%; padding:0.5em 2em 0.5em 0.5em; font-size:1.6rem;}
.c-form-item.c-form-select select::-ms-expand {}

.c-form-row {display:block; padding:4vw 0 0;}
.c-form-row:first-of-type {padding-top:1.2em; border-top-width:1px;}
.c-form-row > header {flex:1 1 100%; padding:0; font-size:1rem;}
.c-form-row > header > h1 {font-size:1.4rem;}
.c-form-row > header > small {font-size:1rem;}
.c-form-row > header > p {margin:1em 0 0;}
.c-form-row > .c-form-body {width:auto; margin:-1em 0 0 -4vw; padding:4vw 0 0;}
.c-form-row > .c-form-body > * {width:100%; padding:1em 0 0 4vw;}
.c-form-row > .c-form-body > div input[type="text"], 
.c-form-row > .c-form-body > div input[type="email"], 
.c-form-row > .c-form-body > div input[type="tel"], 
.c-form-row > .c-form-body > div input[type="search"], 
.c-form-row > .c-form-body > div input[type="number"], 
.c-form-row > .c-form-body > div input[type="password"], 
.c-form-row > .c-form-body > div input[type="date"], 
.c-form-row > .c-form-body > div textarea {}
.c-form-row > .c-form-body > div i {}
.c-form-row > .c-form-body > small {font-size:1.0rem;}
.c-form-row > .c-form-body .c-form-checkbox {}
.c-form-row > .c-form-body > ul.c-form-errors {padding:0.5em 0 0 4vw; font-size:1.0rem;}
.c-form-row > .c-form-body > ul.c-form-errors > li {}
.c-form-row > .c-form-body .c-form-list {margin:-0.5em 0 0 -4vw; padding-top:0.5em; padding-bottom:0;}
.c-form-row > .c-form-body .c-form-list > .c-form-item {padding:0.5em 0 0 4vw;}
.c-form-row > .c-form-body + .c-form-body {}

.c-form.c-form--confirm .c-form-row > .c-form-body {margin:0;}
.c-form.c-form--confirm .c-form-row > .c-form-body > * {width:auto;}
.c-form-row.c-form-line {}
.c-form-row.c-form-line > header {}
.c-form-row.c-form-line > header > h1 {}
.c-form-row.c-form-line > .c-form-body {width:auto; margin:-1em 0 0 -4vw; padding:1em 0 0;}
.c-form-row.c-form-line > .c-form-body > div {}
.c-form-row.c-form-text {}
.c-form-row.c-form-text .c-form-body > * {width:100%;}
.c-form-row.c-form-number {}
.c-form-row.c-form-number .c-form-body > * {width:100%;}
.c-form-row.c-form-textarea {}
.c-form-row.c-form-textarea .c-form-body > * {}
.c-form-row.c-form-select {}
.c-form-row.c-form-radios {}
.c-form-row.c-form-password {}
.c-form-row.c-form-password .c-form-body > * {padding-right:0;}
.c-form-row.c-form-email {}
.c-form-row.c-form-email.c-form--connected .c-form-body > * {}
.c-form-row.c-form-email.c-form--connected .c-form-body > div::before {}
.c-form-row.c-form-postal-code {}
.c-form-row.c-form-postal-code .c-form-body > * {width:100%;}
.c-form-row.c-form-postal-code.c-form--connected .c-form-body > * {width:50%;}
.c-form-row.c-form-phone-number {}
.c-form-row.c-form-phone-number .c-form-body > * {width:100%;}
.c-form-row.c-form-phone-number.c-form--connected .c-form-body > * {width:33.3333%;}
.c-form-row.c-form-date {}
.c-form-row.c-form-address {}
.c-form-row.c-form-group > .c-form-body {}
.c-form-row.c-form-group > .c-form-body > div {}
.c-form-row.c-form-connected > .c-form-body {}
.c-form-row.c-form--connected > .c-form-body > div {position:relative;}
.c-form-row.c-form--connected > .c-form-body > div::before {width:1em; padding:0;}
.c-form-row.c-form--connected > .c-form-body > div:first-child::before {}

.c-form-category {margin:0 -8vw; padding:8vw;}
.c-form-category > h1 {padding-bottom:0.5em; font-size:1.6rem;}
.c-form-category > h1 sup {}
.c-form-category > h1 small {font-size:1.2rem;}

.c-form-footer {margin:-4vw -2vw 0; padding:2em 0 0;}
.c-form-footer > * {flex:1 1 auto;}
.c-form-footer button.c-form-next:hover {}

.c-form-errors {font-size:1.2rem;}
.c-form-errors > li {}

.c-form-category.c-form--required > h1::after, 
.c-form-row.c-form--required > header > h1::after {}
.c-form.c-form--confirm .c-form-category.c-form--required > h1::after, 
.c-form.c-form--confirm .c-form-row.c-form--required > header > h1::after {}

.c-form-hidden {display:none;}
}


/** JS Components **/

/* fac.TrapScrolling */
.fac-trap-scrolling {}
@media screen and (max-width:599px) {
.fac-trap-scrolling {}
.fac-trap-scrolling::after {content:""; width:1px; height:1px; position:absolute; bottom:-3px;}
}

/* fac.Switcher */
.fac-switcher.fac-switcher-button, 
.fac-switcher .fac-switcher-button {cursor:pointer;}
.fac-switcher--height {transition:height 0.5s cubic-bezier(0.19,1,0.22,1) 0s; overflow:hidden;}
.fac-switcher--height.fac-switcher--hidden:not(.fac-switcher--shown) > *:not(.fac-switcher-head), 
html.fac-js-enabled:not(.fac-start) .fac-switcher--height.fac-switcher--hidden:not(.fac-switcher--shown) > *:not(.fac-switcher-head) {display:none;}

/* 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 .fac-gallery-item img {display:block; width:100%; height:auto;}
.fac-gallery--transition-none .fac-gallery-list {}
.fac-gallery--transition-none .fac-gallery-item {}
.fac-gallery--transition-slide .fac-gallery-list {display:flex; flex-wrap:nowrap;}
.fac-gallery--transition-slide .fac-gallery-item {flex:1 1 100%;}
.fac-gallery--direction-vertical .fac-gallery-slider {height:100%;}
.fac-gallery--direction-vertical .fac-gallery-list {flex-direction:column;}
.fac-gallery--direction-vertical .fac-gallery-item img {width:auto; height:100%;}
.fac-gallery .fac-gallery-nav {}
.fac-gallery .fac-gallery-nav > button {
	display:block; width:130px; position:absolute; top:0; bottom:0; z-index:3; padding:0; border:none; outline:none; 
	background:transparent; color:var(--color-sub); font-size:10rem; font-weight:normal; 
	text-decoration:none; text-indent:110%; white-space:nowrap; overflow:hidden; 
	cursor:pointer; pointer-events:auto; appearance:none;}
.fac-gallery .fac-gallery-nav > button::after {
	display:flex; justify-content:center; align-items:center; position:absolute; left:0; right:0; top:0; bottom:0; margin:auto; 
	color:inherit; font-size:1em; font-family:icons; font-weight:inherit; 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:hover {opacity:0.5;}
.fac-gallery .fac-gallery-previous {left:-130px;}
.fac-gallery .fac-gallery-next     {right:-130px;}
.fac-gallery .fac-gallery-previous::after {content:"\e823";}
.fac-gallery .fac-gallery-next::after {content:"\e821";}
.fac-gallery .fac-gallery-nav > ol {display:flex; justify-content: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:#ccc; 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:var(--color-sub);}
.fac-gallery--less .fac-gallery-nav {display:none;}
.fac-gallery:not(.fac-gallery--loop).fac-gallery--first .fac-gallery-nav > .fac-gallery-previous, 
.fac-gallery:not(.fac-gallery--loop).fac-gallery--last  .fac-gallery-nav > .fac-gallery-next {opacity:0; pointer-events:none;}
@media screen and (max-width:599px) {
.fac-gallery .fac-gallery-nav > button {width:10vw; font-size:5rem; font-weight:bold;}
.fac-gallery .fac-gallery-previous {left:0;}
.fac-gallery .fac-gallery-next     {right:0;}
.fac-gallery .fac-gallery-nav > ol > li {width:2.6666vw; padding:2.6666vw 0 0;}
.fac-gallery .fac-gallery-nav > ol > li::after {width:1.3333vw; height:1.3333vw}
}

/* fac.Popups */
.fac-popups {
	display:flex; justify-content:center; align-items:center; 
	min-width:1180px; min-height:500px; position:fixed; left:0; right:0; top:0; bottom:0; z-index:9999; padding:100px 40px; box-sizing:border-box; 
	opacity:0; overflow:hidden; pointer-events:none; transition:opacity 0.5s ease-in-out;}
.fac-popups .fac-popups-board {width:100%; position:relative; z-index:2; pointer-events:none;}
.fac-popups .fac-gallery-list {pointer-events:none;}
.fac-popups .fac-gallery-item {max-height:calc(100vh - 200px); position:relative; box-sizing:border-box; background:#fff; overflow:auto; -webkit-overflow-scrolling:touch;}
.fac-popups::after {
	content:""; position:absolute; left:0; right:0; top:0; bottom:0; z-index:1; margin:auto; background:var(--color-sub); opacity:0.8; -webkit-tap-highlight-color:rgba(0,0,0,0);}
.fac-popups .fac-popups-close {
	display:block; width:1em; height:0; position:absolute; right:0; top:0; z-index:3; padding:1em 0 0; border:2em solid transparent; outline:none; box-sizing:content-box; 
	background-color:transparent; font-size:2rem; cursor:pointer; appearance:none; overflow:hidden; transform:translate3d(0,0,0); transition:opacity 0.2s ease-in-out;}
.fac-popups .fac-popups-close::after {
	display:block; content:"\e832"; position:absolute; left:0; right:0; top:0; bottom:0; margin:auto; 
	color:var(--color-sub); font:normal 1em/1 icons; text-align:center;}
.fac-popups .fac-popups-close:hover {opacity:0.6;}
.fac-popups.fac-popups-show {opacity:1;}
.fac-popups.fac-popups-show .fac-gallery-item, 
.fac-popups.fac-popups-show .fac-popups-close, 
.fac-popups.fac-popups-show .fac-popups-background {pointer-events:auto;}
html.fac-initial .fac-popups {transition-duration:0s;}
@media screen and (max-width:599px) {
.fac-popups {min-width:280px; min-height:400px; padding:8vw;}
.fac-popups .fac-popups-board {}
.fac-popups .fac-gallery-slider {}
.fac-popups .fac-gallery-list {}
.fac-popups .fac-gallery-item {max-height:calc(100vh - 16vw);}
.fac-popups .fac-popups-close {border-width:1em; font-size:2rem;}
.fac-popups.fac-popups-show {}
}

/* .fac-popups-youtube */
.fac-popups.fac-popups-youtube .fac-popups-wrapper {height:0; padding:56.25% 0 0; overflow:hidden;}
.fac-popups.fac-popups-youtube .fac-popups-wrapper > iframe {width:100%; height:100%; position:absolute; left:0; top:0;}











