@charset "utf-8";

@font-face {
	font-display: swap;
}

*{
    margin: 0px;
	padding: 0px;
}

/*webフォント遅延読み込み
html {
    visibility: hidden;
}
html.wf-active,
html.loading-delay {
    visibility: visible;
}
*/
img{border: 0;}

a {outline: none;}

ul,ol { list-style-type: none;}
strong{	font-weight: 700;}

A:link{color:#2f3640;text-decoration:underline}
A:visited{color: #2f3640;text-decoration:none;}
A:active{color:#2f3640;text-decoration:none;}
A:hover{color:#2f3640;text-decoration:none;}

::selection{
	background: #14abe3;
	color: #fff;
}
::-moz-selection{
	background: #14abe3;
	color: #fff;
}

table{
	border-collapse:collapse;
}


input{
	font-family: noto-sans-cjk-jp,sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
	font-size: 100%;
	font-style: normal;
}

body{
	font-family: kozuka-gothic-pro,sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
	color:#000;
	font-weight: 400;
	font-style: normal;
	font-size: 15px;
	line-height: 1.5;
}
.wrapper{
	margin: 0 auto;
	width: 98%;
	max-width: 1200px;
	text-align:left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#container{
	text-align: left;
}


/* ページスクロールボタン */
#topcontrol{
	z-index: 200;
	right: 10px !important;
	bottom: 70px;
}


#topcontrol span{
	display: none;
}

@media screen and (min-width: 980px) {
	#topcontrol span{
		display: none;
	}
	.sp{
		display: none;
	}
	tr.sp,
	th.sp,
	td.sp{
		display: none;
	}
}
@media screen and (max-width: 979px) {
	body{
		font-size: 14px;
	}
	#container{
		min-width: auto;
		max-width: initial;
        overflow: hidden;
	}
	.sp{
		display: none;
	}
    #topcontrol{
        z-index: 200;
        right: 5px !important;
        bottom: 5px;
    }
}
@media screen and (max-width: 768px){
	body{
		font-size: 14px;
	}
	.sp{
		display: block;
	}
	tr.sp,
	th.sp,
	td.sp{
		display: block;
	}
	.pc{
		display: none;
	}
	tr.pc,
	th.pc,
	td.pc{
		display: none;
	}
	#topcontrol img{
		width: 50px !important;
		height: auto !important;
	}
}

/*header
************************************************************************************/
#header{
	height: 75px;
    margin: 0;
    position: relative;
	background: url("../img/toppage/slidebg_top.png") repeat-x bottom;
	padding-bottom: 54px;
}

#header .sitename {
    position: absolute;
	top: 0px;
	left: 0;
    width: 40%;
	height: 75px;
	line-height: 75px;
	z-index: 20;
	padding-left: 15px;
	
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#header .sitename img{
    max-width: 100%;
	max-height: 95%;
	width: auto;
    height: auto;
	vertical-align: middle;
}
#header #globalNav{
	position: absolute;
	z-index: 10;
	width: 100%;
	padding: 0 0 0 40%;
	top: 0;
	left: 0;
	height: 75px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
@media screen and (max-width: 979px) {
	#header .sitename {
		width: 30%;
		padding: 0 10px;
	}
	#header #globalNav{
		padding: 0 0 0 30%;
	}
}
@media screen and (max-width: 768px){
	#header .sitename {
		width: 100%;
		padding: 0 90px 0 0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		text-align: center;
	}
	#header .sitename img{
		max-height: 80%;
	}
}
@media screen and (max-width: 620px) {
/*sp*/
}
@media screen and (max-width: 480px){
}


/* globalNav
************************************************************************************/
#globalNav > ul{
	width: 100%;
	height: 75px;
	display: table;
	
	position: relative;
}
#globalNav > ul > li{
	display: table-cell;
	vertical-align: middle;
	height: 75px;
	text-align: center;
	font-weight: 700;
}
#globalNav ul > li{
    border-left:1px solid #7ab2f3;
}
#globalNav ul > li a{
	color: #3080AF;
	text-decoration: none;
	display: block;
}

#globalNav ul > li .menu_contents {
	background-color: #7ab2f3;
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	padding: 20px;
	
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#globalNav ul > li .menu_contents > ul{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-template-rows: auto;
	column-gap: 10px;
	row-gap: 10px;
	align-items: stretch;
}
#globalNav ul > li .menu_contents > ul > li {
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	background: #FFF;
	text-align: left;
}
#globalNav ul > li > .menu_contents > ul > li a{
	color: #3080af;
	font-weight: 400;
	line-height: 50px;
	display: block;
	position: relative;
	padding-left: 20px;
	font-size: 0.879em;
}

#globalNav ul > li > .menu_contents > ul > li a::before{
	content: "arrow_right";
	display: block;
	position: absolute;
	left: 0px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 10;
	width: 20px;
	height: 20px;
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 20px;	/* Preferred icon size */
	line-height: 20px;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;

	/* Support for all WebKit browsers. */
	-webkit-font-smoothing: antialiased;
	/* Support for Safari and Chrome. */
	text-rendering: optimizeLegibility;

	/* Support for Firefox. */
	-moz-osx-font-smoothing: grayscale;

	/* Support for IE. */
	font-feature-settings: 'liga';
}
#globalNav ul > li .menu_contents > ul > li.page_item_has_children > ul.children{
	display: none;
}

#globalNav ul > li.login{
	background: #5b73d6;
}
#globalNav ul > li.login a{
	color: #FFF;
}
#globalNav ul > li.login a span{
	background: #FFF;
	color: #4b4b4b;
	width: 1.5em;
	height: 1.5em;
	padding: 0;
	text-align: center;
	line-height: 1.5em;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	display: inline-block;
	margin-right: 3px;
}
#globalNav ul > li.logged:hover{
	background: #bbe6e8;
}
#globalNav ul > li.logged a{
	padding: 3px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	background: #eea900;
	color: #FFF;
	font-weight: normal;
	font-size: 0.897em;
	margin: 0 auto;
	width: 80%;
}

@media screen and (min-width: 980px) {
	#globalNav ul li,
	#globalNav ul > li:hover a,
	#globalNav ul > li .menu_contents > ul > li{
		-webkit-transition: all .3s ease-in-out;
		-moz-transition: all .3s ease-in-out;
		-o-transition: all .3s ease-in-out;
		transition: all .3s ease-in-out;
	}
	#globalNav ul li:hover{
		background: #7ab2f3;
	}
	#globalNav ul > li:hover a{
		color: #FFF;
	}
	#globalNav ul > li > .menu_contents > ul > li a:hover{
		background: #3080af;
		color: #FFF;
	}
}

@media screen and (max-width: 768px){
	#globalNav{
		display: none;
	}
}
@media screen and (max-width: 620px) {
/*sp*/
}
@media screen and (max-width: 480px){
}


/*contents
************************************************************************************/
/*layout
----------------------------------------------------------------------*/
#main{
	margin: 0;
	padding: 54px 0 0 0;
	background: url("../img/toppage/slidebg_bottom.png") repeat-x top, url("../img/common/bg_right.png") no-repeat top right, url("../img/common/bg_left.png") no-repeat left bottom;
	width: 100%;
}



/*footer
************************************************************************************/
#footer{
	padding: 40px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	color: #FFF;
	background: #999;
}
#footer a{
	color: #FFF;
	text-decoration: none;
}

#footer .btn-login{
	background: #5b73d6;
	width: 200px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border: 1px solid #FFF;
	margin-bottom: 15px;
	text-align: center;
}

#footer .btn-login a{
	color: #FFF;
	text-decoration: none;
	display: block;
	padding: 10px 15px;
	text-align: center;
}

#footer .btn-login span{
	color: #FFF;
	padding: 0;
	margin-right: 5px;
	text-align: center;
}
#footer .btn-login span.ico_member:before{
	content: "lock";
	text-align: center;
	display: inline-block;
	vertical-align: middle;
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 14px;	/* Preferred icon size */
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;

	/* Support for all WebKit browsers. */
	-webkit-font-smoothing: antialiased;
	/* Support for Safari and Chrome. */
	text-rendering: optimizeLegibility;

	/* Support for Firefox. */
	-moz-osx-font-smoothing: grayscale;

	/* Support for IE. */
	font-feature-settings: 'liga';
	padding: 0;
}

#footer .btn-login span a{
	color: #4b4b4b;
}

#footer > ul{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-pack:justify;
	-moz-box-pack:justify;
	-webkit-flex-pack:justify;
	-moz-flex-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	-moz-justify-content:space-between;
	justify-content:space-between;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
}

#footer ul dl{
	margin-bottom: 2.5em;
}

#footer ul dt{
	font-weight: 700;
	margin-bottom: .5em;
}
#footer ul dd li{
	margin-bottom: .5em;
	font-size: 0.898em;
}
#footer ul dd li:before{
	content: "-";
	color: #FFF;
	padding-right: .5em;
}

#footer .copyright{
	padding: 30px 0 0;
	margin-top: 30px;
	border-top: 1px solid #d5d5d5;
	font-size: 0.8965em;
}

#globalNav ul > li > .menu_contents > ul > li span.description,
#footer ul dd li span.description{
	display: none !important;
}

span.ico_member:before{
	content: "lock";
	display: inline-block;
	vertical-align: middle;
	margin: 0 3px;
	width: 20px;
	height: 20px;
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 14px;	/* Preferred icon size */
	line-height: 20px;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;

	/* Support for all WebKit browsers. */
	-webkit-font-smoothing: antialiased;
	/* Support for Safari and Chrome. */
	text-rendering: optimizeLegibility;

	/* Support for Firefox. */
	-moz-osx-font-smoothing: grayscale;

	/* Support for IE. */
	font-feature-settings: 'liga';
}

@media screen and (min-width: 980px) {
	#footer ul a{
		position: relative;
		display: inline-block;
		-webkit-transition: .3s;
		-moz-transition: all .3s;
		-o-transition: all .3s;
		transition: all .3s;
		text-decoration: none;
	}
	#footer ul a::after{
		position: absolute;
		bottom: 0;
		left: 0;
		content: '';
		width: 0;
		height: 1px;
		background-color: #FFE24B;
		-webkit-transition: .3s;
		-moz-transition: all .3s;
		-o-transition: all .3s;
		transition: all .3s;
	}
	#footer ul a:hover::after{
		width: 100%;
	}
}

@media screen and (max-width: 979px) {
/*tablet*/
}
@media screen and (max-width: 768px){
/*smart phone*/
}
@media screen and (max-width: 620px) {
/*sp*/
}
@media screen and (max-width: 480px){
}
