@charset "UTF-8";
/* ===========================================================

	Title: global.css
	Created: 2021-4-8
	サイトの共通部分のスタイルを編集。
	推奨プレフィックス「global-」

=========================================================== */
/*
	print
	Header
		Header brand
		Header function
	Global Navigation
	Main
	Breadcrumb
	Contents
	Sub Navigation
	Footer
	
=========================================================== */

/* ===========================================================

	print

=========================================================== */
@media print {
  body {
    width: 1200px;
    transform: scale(0.8);
    -moz-transform: scale(0.8);
    -webkit-transform: scale(0.8);
    transform-origin: 0 0;
  }
}

/* ===========================================================

	Header

=========================================================== */
.global-header {
	display: block; padding: 0; margin: 0;
	background-color: rgba(255,255,255,1.00);
	position: fixed; top: 0; left: 0;
	width: 100%;
	min-width:1200px;
	z-index: 1000;
}

.global-header__inner {
	min-width: 1200px;
	display: flex;
	justify-content: space-between; 
	padding: 0 35px; 
	margin: 0 auto;
	position: relative;

}
.is_general .global-header__inner { height: 80px; }
.is_member .global-header__inner { height: 100px; }
@media print {
	.global-header {
		position: absolute;
	}
}
/* -----------------------------------------------------------
	Header brand
----------------------------------------------------------- */
.global-header__brand {
	display: block; padding: 0; margin: 0;
}
.global-header__brand a {
	display: block; padding: 0; margin: 0;
}
.is_general .global-header__brand a { padding: 20px 0; }
.is_member .global-header__brand a { padding: 30px 0; }
.global-header__brand img {
	width: auto; height: 40px; vertical-align: baseline;
}



/* ===========================================================

	Global Navigation

=========================================================== */

.global-navigation {
	display: block; padding: 0; margin: 0;
}
.is_general .global-navigation { top: 0; right: 0; }
.is_member .global-navigation { bottom: 0; right: 0; display: flex; align-items: center;}



.global-navigation__function { display: block; padding: 0; margin: 0; min-width:1200px; height: 50px; padding: 10px 32px; border-bottom: 1px solid #ddd;}
.global-navigation__function ul {
	display: flex; padding: 0; margin: 0 -1px; justify-content: flex-end;
}
.global-navigation__function li {
	display: block; padding: 0 1px; margin: 0;
}
.global-navigation__function a {
	display: block; padding: 5px 0; margin: 0;
	text-align: center; color: #fff;
	font-size: 1.4rem; line-height: 20px;
	width: 120px; font-weight: bold;
}
.global-navigation__function--admin a {
	background-color: rgba(102,102,102,1.00);
}
.global-navigation__function--admin a:hover {
	background-color: rgba(102,102,102,0.60);
}
.global-navigation__function--logout a {
	background-color: rgba(206,39,10,1.00);
}
.global-navigation__function--logout a:hover {
	background-color: rgba(206,39,10,0.60);
}
.global-navigation__function--navi {
	position: relative;
	margin-right: 30px !important;
}
.global-navigation__function--navi a {
	color: #000;
	font-weight: normal;
	width: auto;
}

.global-navigation__function--navi::before {
	position: absolute;
	top: 50%;
	left: -10px;
	margin: -4px -4px 0;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 7px;
	border-color: transparent transparent transparent #c7000a;
}


.global-navigation__main { display: block; padding: 0; margin: 0; }
.global-navigation__main_inner { display: flex; padding: 0; margin: 0; }
.global-navigation dl {
	display: block; margin: 0;
	position: relative;
}
.is_general .global-navigation dl { padding: 10px 0; }
.is_member .global-navigation dl { padding: 0; }
.global-navigation__main dt {
	display: block; padding: 10px 0; margin: 0;
	position: relative; z-index: 5;
}
.global-navigation__main dt a {
	display: block; margin: 0; padding: 0 1.0em; position: relative;
	line-height: 40px;
	text-align: center;
}
.global-navigation__main dl.is_select dt a:hover,
.global-navigation__main dl.is_select dt a { color: #000; }

.global-navigation__main dt a::after {
	display: block; padding: 0; margin: 0;
	width: 0; height: 2px; background-color: transparent;
	position: absolute; bottom: 5px; right: 50%;
	content: ""; transition: all 0.5s;
}
.global-navigation__main dt a:hover::after,
.global-navigation__main dl.is_select dt a:hover::after,
.global-navigation__main dl.is_select dt a::after,
.global-navigation__main dl:hover dt a:after {
	margin: 0 -20px 0 0;
	width: 40px; background-color: rgba(216,173,61,1.00);
}
.global-navigation__main dt a:hover::after,
.global-navigation__main dl:hover dt a:after { background-color: rgba(206,39,10,1.00); }
.global-navigation__main dt a:hover,
.global-navigation__main dl:hover dt a { color: rgba(206,39,10,1.00); }

.global-navigation__main dd {
	display: none; padding: 0; margin: 0;
	position: relative; z-index: 4;
}

.global-navigation__main dd {
	display: block; padding: 0 0; margin: 0 -100px 0 0;
	position: absolute; top: 40px; right: 50%;
	height: 0; width: 200px;
	text-align: center; font-size: 1.4rem;
	transition: all 0.5s;
	overflow: hidden; opacity: 0.0;
	background-color: rgba(255,255,255,0.00);
	box-shadow: 0 0 0 rgba(0,0,0,0.0);
	z-index: 4;
}
.global-navigation__main dl:last-child dd {
	margin: 0; right: 0;
}
.global-navigation__main dl:hover dd {
	display: block; height: auto; opacity: 1.0;
	background-color: #fff;
	box-shadow: 0 5px 5px 0 rgba(0,0,0,0.1);
}
.is_general .global-navigation__main dl:hover dd { top: 80px; }
.is_member .global-navigation__main dl:hover dd { top: 60px; }

.global-navigation__main ul {
	display: block; padding: 0 0 0 0; margin: 0;
}
.global-navigation__main li {
	display: block; padding: 0 0 0 0; margin: 0;
	border-bottom: solid 1px #ddd;
}
.global-navigation__main li a {
	display: block; padding: 1.0em 1em; margin: 0;
	line-height: 1.4;
}
.global-navigation__main li a:hover {
	background-color: rgba(206,39,10,0.85); color: #fff;
}



.global-navigation__main dd a.is_current,
.global-navigation__main dd a.is_current:hover {
	background-color: rgba(216,173,61,0.05);
	color: rgba(216,173,61,1.00);
	pointer-events: none;
}


/* ===========================================================

	Main

=========================================================== */

.global-main {
	display: block; padding: 0; margin: 0;
	width: 100%;
}
.is_general .global-main { padding: 80px 0 0 0; }
.is_member .global-main { padding: 150px 0 0 0; }

.global-main__body {
	display: flex; padding: 0; margin: 0 auto; clear: both;
	width: 100%; justify-content: space-between;
	height: calc(100% - 45px);
}

/* ===========================================================

	Breadcrumb

=========================================================== */



.global-breadcrumb {
	display: block; padding: 15px 32px; margin: 0 auto ;
	width: 100%; font-size: 1.4rem; text-align: left;
	background-image: linear-gradient(180deg,rgba(206,39,10,0.025) 0%,rgba(206,39,10,0.0) 100%);
}
.global-breadcrumb ul {
	display: flex; padding: 0; margin: 0; clear: both;
	width: 1200px;
}
.global-breadcrumb li {
	display: block; padding: 0; margin: 0;
	position: relative;
}
.global-breadcrumb a {
	display: block; padding: 0; margin: 0;
	text-decoration: none; font-weight: normal;
}
.global-breadcrumb a::after {
	display: inline-block; padding: 0; margin: 0 1.0em;
	content: "\f105"; color: rgba(206,39,10,1.00);
	font-family: FontAwesome;
}
.global-breadcrumb li:last-child a::after {
	display: none;
}


/* ===========================================================

	Contents

=========================================================== */

.global-contents { display: block; width:100%; padding: 0 0 112px 0; margin: 0; }

.global-contents__inner {
	display: block; padding: 0; margin: 0 auto; width:930px;
}


/* ===========================================================

	contents-title

=========================================================== */

.contents-title {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0; margin: 0 0 2.0em 0;
	height: 120px;
	font-size: 2.8rem; font-weight: 700; letter-spacing: 0.10em;
	position: relative;
	text-align: center;
	color: #CE2712;
	background-color: #FAE9E5;
}


/* ===========================================================

	Sub Navigation

=========================================================== */

.global-subnavigation { display: block; padding: 0; margin: 0; background-color: #F9F9F9;}

.global-submenu {
	display: block; padding: 0; margin: 0;
	width: 200px;
}

.global-submenu {
	display: block; padding: 0; margin: 0;
}
.global-submenu h2 {
	display: flex; padding: 0; margin: 0;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem; line-height: 1.4;
	color: #fff;
	background-color: #CE270A;
	height: 120px;
}
.global-submenu h2 a {
	display: block; margin: 0;
	text-align: center;
	color: #fff;
}
.global-submenu dl {
	display: block; padding: 0; margin: 0;
}
.global-submenu dt {
	display: block; padding: 0; margin: 10px;
	font-size: 1.4rem; line-height: 1.4;
	background-color: #fff;
}
.global-submenu dt a {
	display: block; padding: 1.5em 1em 1.5em 2.0em; margin: 0;
	position: relative;
}
.global-submenu dt a:hover {
	background-color: rgba(206,39,10,0.80);
	color: #fff;
}
.global-submenu dt a::after {
	position: absolute;
	top: 50%;
	left: 20px;
	margin: -3px -3px 0;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #c7000a;
}
.global-submenu dt a:hover::after {
	color: #fff;
}

.global-submenu dt a.is_current,
.global-submenu dt a.is_current:hover {
	color:  rgba(206,39,10,0.80);
	pointer-events: none;
}
.global-submenu dt a.is_current::after,
.global-submenu dt a.is_current:hover::after {
	color:  rgba(206,39,10,0.80);
}





/* ===========================================================

	Footer Sitemap

=========================================================== */

.global-footer-sitemap {
	display: block; padding: 0; margin: 0;
	width: 100%;
	background-color: #E8EAEC;
}
.global-footer-sitemap__inner {
	display: block; padding: 70px; margin: 0 auto;
	min-width: 1200px; position: relative;
}

.footer-sitemap {
	display: flex; padding: 0; margin: 0 -1.0em;
}
.footer-sitemap dl {
	display: block; padding: 0 1.0em; margin: 0;
	width: calc(100% / 4);
}
.footer-sitemap dt {
    display: block;
    padding: 0px 0 0 8px;
    margin: 0 0 3rem 0;
	font-size: 16px;
}
.footer-sitemap dt a {
	display: block; padding: 0; margin: 0;
}
.footer-sitemap dd {
	display: block; padding: 0 0 0 10px; margin: 0;
}
.footer-sitemap dd a {
	display: block; padding: 0 0 0 1.0em; margin: 0;
	position: relative;
}
.footer-sitemap dd a::after {
	display: block; padding: 0; margin: 0; content: "\f0da";
	font-family: FontAwesome; color: rgba(206,39,10,1.00);
	position: absolute; top: 0; left: 0;
	transition: all 0.5s;
}
.footer-sitemap ul {
	display: block; padding: 0; margin: 0;
	font-size: 1.2rem;
}
.footer-sitemap li {
	display: block; padding: 0; margin: 10px 0 0 0;
}


/* ===========================================================

	Footer

=========================================================== */

.global-footer {
	display: block; padding: 0; margin: 0;
	width: 100%;
	background-color: rgba(255,255,255,1.00);
	color: rgba(0,0,0,1.00);
	border-top: 10px solid #CE2712;
}


.is_general .global-footer__inner {
	display: flex;
	padding: 35px 32px; 
	margin: 0 auto;
	min-width: 1200px;
	height: 120px;
	position: relative;
	justify-content: space-between;
	align-items: center;
}
.is_member .global-footer__inner {
	display: flex;
	padding: 35px 32px; 
	margin: 0 auto;
	min-width: 1200px;
	position: relative;
	justify-content: space-between;
	align-items: center;
}
.global-footer__nav {
	display: block; padding: 0; margin: 0;
	font-size: 1.4rem;
}
.is_general .global-footer__nav ul {
	display: flex; padding: 0; margin: 0; margin-bottom: 16px;
}
.is_member .global-footer__nav ul {
	display: flex; padding: 0; margin: 0;
}
.global-footer__nav li {
	display: block; padding: 0 13px; margin: 0;
	border-left: solid 1px rgba(0,0,0,1.00);
}
.global-footer__nav li:first-child {
	padding: 0 13px 0 0;
	border-left: none;
}
.global-footer__nav a {
	display: block; padding: 0; margin: 0;
	color: rgba(0,0,0,1.00);
}

.global-copyright {
	display: block; padding: 0; margin: 0;
	font-family: Arial, Helvetica, "sans-serif";
	font-size: 1.2rem;
}
.global-banner__inner {
	display: flex;
	align-items: center;
}
.global-banner__inner span {
	margin-right: 30px;
}
.global-banner__inner img {
	border-left: 1px solid #CCCCCC;
	padding: 12px 0 12px 30px;
}

.is_member .global-banner__inner {
	justify-content: center;
	padding: 20px;
}