@charset "UTF-8";
/****************************************************
* base 01基本スタイルシート *
*****************************************************/
/*! normalize.css v3.0.1 | MIT License | git.io/normalize */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */

[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
  background: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*基本・共通******************************************/
html {
	box-sizing: border-box;
}
*,
*:before,
*:after {
	box-sizing: inherit;
}
em{
	font-style: normal;
}
img { max-width:100%; height:auto;}

/*Link Config
----------------------------------------*/
a, a img, article {
	-webkit-transition: background 0.3s linear, color 0.3s linear, opacity 0.3s linear;
	transition: background 0.3s linear, color 0.3s linear, opacity 0.3s linear;
	outline: none;
}
a:link {
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
a:hover img {
	filter: alpha(opacity=70); /* IE7以下用 */
	-ms-filter: alpha(opacity=70); /* IE8用 */
	opacity: 0.7; /* Firefox 1.5以上, Opera, Safari用 */
}
a:focus {
	background-color: #3FF;
/*  box-sizing: border-box; */
}


/*ClearFix
----------------------------------------*/
/* For modern browsers */
.clear:before, .clear:after {
    display:block;
    clear:both;
    height:0px;
    visibility:hidden;
    content:".";
}
.clear {
    min-height: 1px; /*IE6、7対策*/
}

hr.clear{
	display:none;
}

/*読み上げ用隠し*/
.speech{
	margin:0;
	padding:0;
	display:block;
	width:1px;
	height:1px;
	position:absolute;
	left:-9999px ;
	overflow:hidden;
}
/*印刷のみ*/
.printOnly{
	display:none;
}

@media print{
/*印刷時*/
	.speech{
	  display:none;
	}
	.printOnly{
	  display:block;
	}
}
/*非表示*/
.hidden {
	display: none;
}
/*Helper*******/
.div50 { width:49%}
.div40 { width:39%}
.div60 { width:59%}
.div30 { width:31.8%}
.pl1p { padding-left:1%;}
.p10 { padding:10px;}
.fleft { float:left}
.fright { float: right}
.f-left { float:left}
.f-right { float: right}
.fleft-img { float:left; padding:0 10px 10px 0}
.fright-img { float: right; padding:0 0 10px 10px}
.inlinediv { display:inline-block; vertical-align:top}
.border-img {border:1px solid #584C9D;}
.txtc { text-align:center;}
.txtl { text-align:left;}
.txtr { text-align:right;}

/*sm*/
@media only screen and (max-width: 768px) {
	.pc-hidden {display: block;}
	.sp-hidden {display: none;}

	.div50 { width:100%}
	.div30 { width:47.8%}
	.fleft { float:none}
	.fright { float:none}
}
/*tablet*/
@media (min-width:769px) and (max-width:992px) {
	.pc-hidden {display: block;}
	.sp-hidden {display: block;}
	.tb-hidden {display: none;}

	.div30 { width:47.8%}
}
/*pc*/
@media (min-width:993px) {
	.pc-hidden {display: none;}
	.sp-hidden {display: block;}
}


/*ページ種別*******************************************************/
/*サイト・ホーム(トップページ)*/
body#homePage{}
/*目次*/
body#indexPage{}
/*一般コンテンツ*/
body#contentPage{}

/*構造 レイアウト*******************************************************/
body {
	font-family: "メイリオ", Meiryo, "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 0.95em;
	line-height: 1.4em;
	color: #333;
	width: 100%;
}
.wrapper {
	max-width:1000px;
	margin:0 auto;
}
.wrapper:after {
	content:" ";
	display:block;
	clear:both;
}

/*sm*/
@media only screen and (max-width: 768px) {
	#contents {width:98%; margin:0 auto 20px;}
	#side {width:98%; margin:20px auto 20px; padding:0; clear:both}
}
/*table/PC*/
@media (min-width:769px) {
	#contents{ width:100%; margin-bottom:20px;margin-left:-330px; padding-left:330px; float:right;}
	#side { float:left; width:300px; margin:0 0 20px;}
}



/*ヘッダー*******************************************************/
#pageTop .wrapper:after,
.headBox:after {
	content:" ";
	display:block;
	clear:both;
}

#pageTop h1 a{
	display:block;
}
#pageTop h1 a img{
	position:relative;
}

/*文字のみの場合*/
#pageTop h1 a span{
	display:inline-block;
	padding:10px;
	position:relative;
	color:#000;
	font-weight:bold;
	text-shadow: 2px 2px 1px #fff, -2px 2px 1px #fff, 2px -2px 1px #fff, -2px -2px 1px #fff;
}
#pageTop h1 a:hover,
#pageTop h1 a:focus,
#pageTop h1 a:active {
	background:#fff;
	background:rgba(255,255,255,0.5);
}

#pageTop .headBox{
	width:55%;
	float:right;
}

/*検索*/
#sitesearch {
	display: inline-block;
	width: 180px;
	margin: 5px 5px;
	font-size: 0.92105263157895em;
	padding-right:30px;
	padding-left:5px;
	border:1px solid #8C8C8C;
	background: #FFF;
	position: relative;
}
#sitesearch input#words {
	margin: 0;
	width: 140px;
	height: 28px;
	overflow: hidden;
	border: none !important;
	font-size: 100%;
/*	outline: none;*/
	margin: 0;
	color: #666;
}
#sitesearch #go {
	display: block;
	position: absolute;
	top:0;
	right:0;
	padding: 0 0 0 30px;
	width: 0;
	height:100%;
	overflow: hidden;
	background:none;
	border: none;
}
#sitesearch #go:after{
	position: absolute;
	top:50%;
	left:50%;
	font-size: 14px;
	margin-top:-.5em;
	margin-left:-.5em;
	line-height:1;
	font: normal normal normal 14px/1 FontAwesome;
	color:#3B3B3B;
	content: "\f002";/*fa-search*/
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
/*ナビ*/
ul.nav, .nav ul{
	margin:0;
	padding:0;
	list-style:none;
}
.nav li{
	display:inline-block;
}
.headBox ul.nav{
	display: inline-block;
	list-style:none;
	margin-top:3px;
}
.headBox .nav li{
	padding-bottom: 5px;
}
.headBox  .nav li a{
	display:inline-block;
}
#pageTop .btn-menu a:before,
.headBox .nav li a:before{
	font: normal normal normal 14px/1 FontAwesome;
	color:#3B3B3B;
	display: inline-block;
	width: 1.28571429em;
	text-align: center;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.headBox .nav  li a.access:before{
	content: "\f279";/*fa-map*/
}
.headBox .nav  li a.sitemap:before{
	content: "\f0e8";/*fa-sitemap*/
}
.headBox .nav  li a.inquiry:before{
	content: "\f2b6";/*fa-envelope-open*/
}

/*ボタン*/
.headBox .btn{
	margin:2px 5px;
	padding: 0;
	float:left;
	font-size:1.18421052631579em;
}

.headBox .btn a{
	text-align:center;
	display:block;
	padding: 5px 10px;
}
/*英語*/
#pageTop .btn-en a{
	color:#FFF;
	background:#397ca8;
}
/*資料請求*/
#pageTop .btn-request a{
	color:#FFF;
	background:#669933;
}
/*メニュー*/
#pageTop .btn-menu a{
	font-size:15px;
	color:#FFF;
	background:#424242;
}
#pageTop .btn-menu a:before{
	color:#FFF;
	content: "\f0c9";/*fa-bars*/
}

/**ツール*/
#toolbar{
	display: inline-block;
}
#toolbar>div{
	color:#333;
	background:#F3CD0B;
	margin: 5px;
	padding:3px;
	float:left;
}
#toolbar p{
	margin:0;
	padding-left:4px;
	display: inline-block;
	vertical-align: middle;
	line-height: 1.2;
}
#toolbar ul{
	margin:0; padding: 0;
	list-style: none;
	display: inline-block;
	vertical-align: middle;
}
#toolbar ul li{
	display:inline-block;
}
#toolbar ul li a{
	display:inline-block;
	color:#333;
	background:#FFF;
	padding:2px 5px 1px;
	vertical-align:middle;
	border: 1px solid #FFF;
}
#toolbar a.kuro { background:#000; color:#fff; border:1px solid #000;}
#toolbar a.dai {font-size: 1.25em;/*19px*/ }

/*sm AND tablet*/
@media (max-width:992px) {
	#pageTop h1, #pageTop .headBox{
		clear: both;
		float: none;
		width: 100%;
		text-align: center;
	}
	#pageTop .headBox{
		font-size:15px;
		margin: 10px auto 0;
		padding: 10px 0 0;
		border-top: 2px #3C3C3C solid;
	}
	#sitesearch{
		margin: 0 auto 15px;
		display: block;
		width: 250px;
	}
	.headBox .btn{
		margin: 0;
		font-size:18px;
		 width:33.333%;
	}
	.headBox .btn a{
		padding:10px 0;
	}
	#pageTop ul.nav,#toolbar{
		display: none;
	}
}
/* PC */
@media (min-width:993px) {
	#pageTop .wrapper{
		padding-top:15px;
	}
	#pageTop h1{
		margin:0;
		float:left;
	}
	.headBox .btn-request, .headBox .btn-menu{
		display: none;
	}
}

/**英語版*/
:lang(en) #pageTop{
	border-bottom: 3px #3C3C3C solid;
	padding-bottom: 10px ;
}
/*日本語*/
#pageTop .btn-ja {
	float:right;
}
#pageTop .btn-ja a{
	color:#FFF;
	background:#397ca8;
}
/*sm AND tablet*/
@media (max-width:992px) {
	:lang(en) #pageTop .headBox{
		padding: 0;
		border-top: none;
	}
	:lang(en) .headBox .btn{
		width:100%;
	}
}
/* PC */
@media (min-width:993px) {
	:lang(en) .headBox{
		padding-top:15px;
	}
}
/*ヘッダー固定 SNSボタン設置*/
body {margin-top:191px;}
header#pageTop {position:fixed;width:100%;max-width:inherit;top:0;z-index:999;}
.sns-area {position:fixed;top:191px;right:0;z-index:998;border-left:2px solid #252f66;border-bottom:2px solid #252f66;background-color:#FFF;box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);}
.sns-area ul {padding:0.8em 0.8em 1em 0.8em;margin:0;}
.sns-area ul li {list-style:none;font-size:0;width:45px;height:50px;}
.sns-area ul li:last-child {width:45px;height:45px;}
.sns-area ul li img {width:45px;height:45px;}
@media only screen and (max-width: 1080px){
header#pageTop {width:1080px;}
}
@media only screen and (max-width: 992px){
body {margin-top:162px;}
header#pageTop {width:100%;}
header#pageTop h1 {text-align:left;margin:0.3em 0;}
header#pageTop h1 img {width:240px;margin-left:10px;}
.sns-area {top:0;right:5px;z-index:1000;border:none;box-shadow:none;background-color:inherit;width:70px;}
.sns-area ul {text-align:right;padding:0.3em 0 0 0.3em;}
.sns-area ul li {display:inline-block;vertical-align:top;width:25px;height:29px;}
.sns-area ul li:last-child {width:25px;height:25px;}
.sns-area ul li a {display:block;width:25px;height:25px;}
.sns-area ul li img {width:25px;height:25px;border:1px solid #252f66;}
}
@media print{
header#pageTop {position:absolute;}
.sns-area {display:none;}
}
/*メニューバー********************************************************/
#nav{
	border-bottom:4px #252f66 solid;
}
#nav >ul{
	text-align:center;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}
#nav li a ,
#nav li span {
	display:block; text-align:center;
	letter-spacing: normal; /* 文字間を通常に戻す */
}
/*対象者別*/
#nav .target{
	margin: 0; padding:5px 0;
	color:#FFF;
	background:linear-gradient(#292c75, #232148);
}
#nav .target li {
	min-width:177px;
}
/*
#nav .target li.indexli {
	min-width:auto;
}*/
#nav .target .activmenu{
	background: #666;
}
#nav .target li span ,
#nav .target li a{
	padding:0 3px;
	border-left:1px solid #fff; color:#FFF;
}
#nav .target li:last-child a{border-right:1px solid #fff; }


/*ガイド*/
#nav .guide{
	background:#F2F2F2;
}
#nav .guide li{
	padding:16px 0;
	min-width:130px;
}
#nav .guide .activmenu{
	background: #868686;
}
#nav .guide li a{
	font-weight:bold;
	padding:0 2px;
	border-left:1px solid #868686; color:#000;
}
#nav .guide li:last-child a{  border-right:1px solid #868686; }

/*sm AND tablet*/
@media (max-width:992px) {
	#nav{
		padding-top:10px;
		background-color: #111;
		color: #fff;
		width: 100%;
		display:none;
	}
	#nav li {
		padding: 1em;
	}
	#nav .target li{
		width:180px;
		border-bottom: dotted 1px #fff;
	}
	#nav .guide li{
		width:150px;
		border-bottom: dotted 1px #000;
	}
	#nav .target li a ,#nav .guide li a,
	#nav .target li:last-child  a ,#nav .guide li:last-child  a{
		border-left:0;
		border-right:0;
	}
	/*
	#nav .target li.indexli {
		display:none;
	}*/
}

/*フッター*******************************************************/
#pageFot{
	clear: both;
}
#fotBox{
	padding-bottom:3px;
	border-top: 4px #252f66 solid;
	clear: both;
	background: url(../WSR/images/f-bg.png) no-repeat center top #F2F2F2;
	text-align: center;
}
#fotBox:after {
	content:" ";
	display:block;
	clear:both;
}
#fotBox .nav{
	margin:20px 0;
}
#fotBox .nav li {padding:0 15px; border-left:1px solid #999;}
#fotBox .nav li:last-child {  border-right:1px solid #999;}

#fotBox .logo{
	margin:15px 0;
}
#fotBox .logo img{
	margin: 0 auto;
}
#fotBox p{
	margin:15px 0;
}
#fotBox #copyright{
	margin:10px 0;
}

/*巻き上げ***/
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
#page-top a {
	display: block;
	min-width: 180px;
	margin:0;
	padding:12px;
	line-height:1.2;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #424242;
	border-radius: 5px;
}
#page-top a:hover {
	text-decoration: none;
	background: #999;
}


/*カテゴリ別ヘッダー*/
.catHeader,.catMain {
	overflow: hidden;
}
.catMain h2 {  color:#000;  text-align:center; }
/*sm*/	
@media only screen and (max-width: 768px) {
	.catHeader{ border-bottom:2px solid #3C3C3C;background: #F0F0F0; margin-bottom:20px;}
	.catHeader img{  display:none}
	.catMain { padding:0 20px;}
	.catMain h2 { font-size:24px; }
}
/*tabletandpc*/
@media (min-width:768px)  {
	.catHeader { position:relative; border-bottom:2px solid #3C3C3C;margin-bottom:0px;background:none;}
	.catHeader img{ width:100%; height:auto; margin:0 auto; display:block}
	.catMain { position: absolute; top: 50%; left: 50%;min-width:300px;-webkit-transform: translate(-50%, -50%);transform: translate(-50%, -50%);background: url(../WSR/images/h2-bg.png);padding:0 20px; }
	.catMain h2 {font-size:28px; }
}

/*カテゴリ別サイドメニュー*/
#side nav{
	margin:0 0 20px;
	border-bottom: 3px solid #3c3c3c;
}
#side nav h3{
	margin:0 0 8px;
	padding: 10px;
	font-size:100%;
	color: #FFF;
	background: linear-gradient(#5a5a5a, #000);
}
#side nav ul{
	list-style:none;
	margin:0; padding:0; 
	border-top:3px solid #3c3c3c;
}
#side nav h3+ul {
    border-top-width:0;
}
#side nav h3.speech+ul {
    border-top-width: 3px;
}
#side nav li+li{
	display:block;
	border-top:1px solid #3c3c3c;
}
#side nav li span.label,
#side nav li a{
	display:block; 
	padding:10px 0 10px 15px;
	position: relative;
}

/*1階層目 大分類*/
#side nav >ul> li>a:before{
	content:" ";
	display:block;
	position: absolute;
	left:0; top:15px;
	width:10px; height:10px;
	background:#ccc;
}
#side nav >ul> li a.active{
	text-decoration: underline;
}
/*2階層目 子項目*/
#side nav ul ul{
	border-top-width:1px;
	border-bottom:1px solid #3c3c3c;
	margin-bottom:15px;
}
#side nav ul ul li+li{
	border-top-style:dotted;
}
/*3階層目 孫項目*/
#side nav ul ul ul{
	border-top-style:dotted;
	border-bottom:none;
	margin-bottom:10px;
	padding-left:15px;
}
#side nav ul ul ul li span.label,
#side nav ul ul ul li a{
	font-size:90%;
	padding:5px 0 5px 10px;
}
/*Accordion*/
.accordion-panel {
	display: none;
}
#side nav ul.accordion-panel {
	border-top-width:3px;
}
.accordion-control:after{
	color: inherit;
	content: "\f067";/*fa-plus*/	
	width:15px;
	height: 15px;
	line-height: 15px;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 15px;
	display: block;
	top:15px;
	right:3px;
	position: absolute;
}
.accordion-control.open:after {
	content: "\f068";/*fa-minus*/	
}


/*パンクズ****/
.pankuzu{
	margin:15px;
}
.pankuzu ol {  list-style:none; padding:0; margin:0;}
.pankuzu ol li{ display:inline-block;}
.pankuzu ol li a:after{
	content:"\20\3E";
}
/*サイド*************/
.sidecont{
	margin:0 0 20px;
}
@media only screen and (max-width: 768px) {
	.comMenu{
		text-align: center;
	}
	.comMenu>*{
		vertical-align: top;
		display: inline-block;
	}
}
.sidecont h4{
	font-size:1.38157894736842em;/*21px*/
	text-align:center;
	border-bottom:2px solid #3c3c3c;
	padding:0 0 5px; margin:0 0 10px
}

#side .btn,
#side .bnr{
	width:300px;
	margin: 0 0 15px;
}
#side .btn a,
#side .bnr a{
	overflow: hidden;
	display: block;
}
#side .btn img,
#side .bnr img{
	display: block;
}
.sidecont .btn p{
	margin:0; padding:5px;
}

#side .border img{
	border: 1px #252f66 solid;
}
#side .btnS a{
	color: #FFF;
	background-color:#333;
	font-size: 24px;
	padding: 0 0 0 100px;
	line-height: 78px;
}



#side .btnL a{
	border:1px solid #584C9D;
	color:#000;
	background-color:#fff;
	padding:160px 0 10px 75px;
	font-size:15px;
}
#side .btnL strong{
	display: block;
	font-size:18px; font-weight:bold;
}


/*動画*/
#sMovie p{
	margin:0;
	padding:10px 0;
}
/*携帯*/
#mCode{
	text-align: left;
	border: 1px #252f66 solid;
}
#mCode img{
	float: left;
}



/*共通パーツ**************************************/
main section{
	clear:both;
}
/*概要*/
main .about{
	clear:both;
	margin-bottom:1em;
}
/*本文見出し*/
.maincont h3 {
	font-size: 1.18421052631579em;/*18px*/
	border-bottom: 1px solid #3C3C3C;
	border-top: 3px solid #3C3C3C;
	display: block;
	padding: 15px;
	margin:0 0 20px;
}
.maincont h4 {
	border-bottom:1px solid #aba3cf;
	border-left:10px solid #aba3cf;
	font-size: 1.18421052631579em;/*18px*/
	margin:5px 0; padding:5px 0 5px 10px;
}
.maincont h5 {
	position: relative;
	font-size:1.05263157894737em;/*16px*/
	margin:5px 0 10px;
	padding:5px 0 5px 25px;
}
.maincont h5:before {
	position: absolute;
	top: 5px;
	left:0;
	display: block;
	content: "";
	height: 18px;
	width: 18px;
	border: 4px solid #aba3cf;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}

/*本文エディタ*/
.txtPart{
	margin:0 0 1em;
	clear: both;
}
.txtPart p:last-child{
	margin-bottom:0;
}
/*clearfix*/
.txtPart:after,
main section:after,
main .about:after {
	content:" ";
	display:block;
	clear:both;
}
/*本文:リスト装飾**/
.txtPart ul,.txtPart ol{
	margin:1em 0;
	padding:0 0 0 2em;
	list-style-position: outside;
}
.txtPart li{
	margin:0 0 10px;
}
.txtPart ul li{
	list-style: none;
}
.txtPart ul li:before{
	margin-left:-15px;
	width:15px;
	height: 15px;
	line-height: 15px;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 4px;
	color:#aba3cf;
	content: "\f111";/*fa-circle*/
	display: inline-block;
	vertical-align: middle;
}
.txtPart ul li ul li:before{
	content: "\f10c";/*fa-circle-o*/	
}
.txtPart  ul li ul li ul li:before{
	content: "\f0c8";/*fa-square*/	
}

/*リンク*/
.iLinks a,
a.iLinks{
	padding-left:20px;
	display:inline-block;
	vertical-align:middle;
	word-break: break-all;
}
.iLinks a:before,
a.iLinks:before{
	margin-left:-20px;
	width:20px;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 15px;
	color:#3B3B3B;
	content: "\f0da";/*fa-caret-right*/
	display: inline-block;
	vertical-align: middle;
	text-align: center;
}

ul.iLinks{
	/*clear:both;*/
	list-style-type:none;
}
ul.iLinks li{
	margin-bottom: 10px;
	list-style-type:none;
	vertical-align:middle;
}
/*別ウィンドウアイコン*/
.nw {
	position: relative;
	display: inline-block;
	margin-left:3px;
	padding-top: 18px;
	width:20px;
	height:0;
	vertical-align: middle;
	overflow: hidden;
}
.nw:before{
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 15px;
	content: "\f08e";/*fa-external-link*/
	position: absolute;
	display: inline-block;
	vertical-align: middle;
	line-height:18px;
	left:3px;
	top:0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}


/**添付画像*/
/*添付画像:1枚(右)*/
.iFigureR{
	clear:both;
	float:right;
	padding-left:2%;
	padding-right:0px;
}
/*添付画像:1枚(左)*/
.iFigureL{
	clear:left;
	float:left;
	padding-left:0px;
	padding-right:2%;
}
.iFigureR,
.iFigureL{
	margin:0 0 10px;
	width:41%;
	text-align:center;
}
.rowBlock{
	display:table;
}
.rowBlock .iFigureL,
.rowBlock .txtPTxt{
	display:table-cell;
	float:none;
	vertical-align:top;
}
/*添付画像:1枚(中央)*/
.iFigureC{
	clear:both;
	text-align:center;
	padding:0;
	margin:10px 0;
	text-align:center;
}



/*添付画像:複数を行別中央配置*/
.iFigure{
	clear:both;
	margin:5px 0;
	padding:0;
	text-align:center;
}
.iFigure ul{
	list-style-type:none;
	display:block;
	margin:0;
	padding:0;
}
.iFigure li{
	display:block;
	margin:0 0 10px;
	list-style-type:none;
	width: 49%;
	float:left;
}
.iFigure li:nth-child(2n){
	float:right;
}
.iFigure li:nth-child(2n+1){
	clear:both;
}
/*添付画像:画像*/
.iFigureR img, .iFigureL img, .iFigureC img,
.iFigure li img{
	display:block;
	margin:0 auto;
}

/*添付画像:キャプション*/
.iFigure li p,
.iFigureC p,
.iFigure p,
figcaption{
	word-wrap:break-word;
	font-size:100%;
	text-align:center;
}

/*clearfix*/
.iFigure ul:after{  
	visibility: hidden;  
	display: block;  
	font-size: 0;  
	content: " ";  
	clear: both;  
	height: 0;  
}
/*sm*/	
@media only screen and (max-width: 768px) {
	.rowBlock, .rowBlock .iFigureL, .rowBlock .txtPTxt{
		display: block;  
	}
	.iFigureR, .iFigureL, .iFigure li{
		width:100%; float:none;
		padding:0; margin:0 0 10px;
	}
}



/**添付書類*/
ul.iPapers{
	/*clear:both;*/
	list-style-type:none;
}
ul.iPapers li{
	list-style-type:none;
	margin-bottom: 10px;
}
ul.iPapers li a{
	padding-left:20px;
	font-weight:bold;
	display:inline-block;
	vertical-align:middle;
	word-break: break-all;
}
/*添付書類:アイコン*/
.iPapers a:before{
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 18px;
	content:"\f016";
	display:inline-block;
	vertical-align:middle;
	margin-left: -20px;
	width:20px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.iPapers  a.PDF:before {
	content: "\f1c1";
}
.iPapers  a.DOC:before {
	content: "\f1c2";
}
.iPapers  a.XLS:before {
	content: "\f1c3";
}

/*外部などコード埋め込み*/
div.gCode{
	clear:both;
	overflow:hidden;
	margin:10px;
	text-align:center;
}
div.gCode iframe,
div.gCode object{
	margin:0 auto;
	text-align:left;
	max-width:100%;
}
/*レスポンシブ化*/
.RFrameWrap{
	position: relative;
	padding-bottom: 60%;/*縦横比 default*/
	height: 0;
	overflow: hidden;
}
.RFrameWrap iframe {
	margin:0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
/*clearfix*/
.gCode:after{  
	content:" ";
	display:block;
	clear:both;
}

/*表*/
.maincont table {
	border: 1px solid #3C3C3C;
	width: 100%;
	margin-bottom: 10px;
}
.maincont table caption{
	text-align: left;
	font-weight: bold;
}
.maincont table th, .maincont table td{
	border:1px solid #3C3C3C;
	padding: 5px;
}
.maincont table th {
	font-weight: bold;
	background: #E6E6E6;
	text-align: left;
	vertical-align: middle;
}
/*テーブル レスポンシブ widthガード→Scroll対応**************/
@media only screen and (max-width: 768px) {
	.tableScroll{
		margin:5px;
		overflow: auto;
		overflow-y: hidden;
		width: 100%;
		min-height: .01%;
		-ms-overflow-style: -ms-autohiding-scrollbar;
	}
	.tableScroll::-webkit-scrollbar{
		height: 5px;
	}
	.tableScroll::-webkit-scrollbar-track{
		background: #F1F1F1;
	}
	.tableScroll::-webkit-scrollbar-thumb {
		background: #BCBCBC;
	}
	.maincont .tableScroll table,
	.tableScroll table{
		margin:0;
		max-width:none;
	}
	.tableScroll table th,
	.tableScroll table td{
		white-space: nowrap;
	}
}


/*お問い合わせ先*************************************/
#sOffice{
	padding:10px;
	border:1px solid #3C3C3C;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
#sOffice h4{
	border-left:none; margin-bottom:10px;
}
#sOffice p{
	margin: 10px ;
}

/*窓口一覧*/
ul.OfficeInfo{
	margin:10px 0;
	padding:0;
	list-style-type:none;
}
ul.OfficeInfo li{
	margin:0 10px 10px;
}

/* 記事フッター **************************/
#contentFoot{
	padding:0 ;
	margin:30px 0 ;
	overflow:hidden;
	border-top: 1px solid #3c3c3c;
}
/*更新日**/
p.lastDate{
	text-align:right;
	display:block;
	margin:0;
	padding:10px;
}

/*ページ内ショートカットリスト**************/
.idxInter {
	margin: 0 0 20px;
	padding:0 20px;
	border-bottom:1px dotted #999;
}
.maincont *+.idxInter {
	margin-top: 16px;
}
.idxInter p{
	margin-top: 0;
	font-weight:bold;
	margin-bottom:10px;
}
.idxInter ul{padding:0; margin:0 0 10px 10px;}
.idxInter ul li { display:inline-block; list-style:none; margin:0 30px 10px 0;}
.idxInter ul li a:before {display: inline-block;vertical-align: middle;text-align: center;margin-left: -15px;width: 15px;height: 15px;line-height: 15px;font: normal normal normal 14px/1 FontAwesome;font-size: 15px;color: #ABA3CF;content: "\f0da";}

/*目次*************************************/
.idxBox ul,
.idxBox li{
	margin:0;
	padding:0;
	list-style-type:none;
}
.idxBox ul{
	padding-top:10px;
}
.idxBox li{
	margin-bottom:10px;
}

/*項目*/
.idxBox li ul{
	padding-left:10px;
}
.idxBox li h4+ ul{
	padding-left:0px;
}
.idxBox li ul li{
	margin-bottom:5px;
}

.idxBox li a,
.idxBox li .label{
	padding-left: 20px;
	display:inline-block;
	word-break: break-all;
	vertical-align: middle;
}
.idxBox li a:before,
.idxBox li .label:before{
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	margin-left:-15px;
	width:15px;
	height:15px;
	line-height:15px;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 15px;
	color:#3B3B3B;
	content: "\f0da";/*fa-caret-right*/
}
#ContentList li li li *:before,
#subContentList  li li *:before{
	content: "\f105";/*fa-angle-right */
	font-size: 12px;
}
/*分類カラム*/
#ContentList >ul>li{
	float:left;
	padding-right:5px;
   	width: 33.333333%;
}
#ContentList >ul>li:nth-child(3n+1){
	clear:both;
}
#ContentList >ul>li img{
	display: block;
	border: 1px solid #584C9D;
}

/*tablet*/
@media (max-width:992px){
	#ContentList  >ul>li{
   		 width: 50%;
	}
	#ContentList >ul>li:nth-child(3n+1){
		clear:none;
	}
	#ContentList >ul>li:nth-child(2n+1){
		clear:both;
	}
}
/* sp */
@media only screen and (max-width: 767px){
	#ContentList >ul>li img{
		display: none;
	}
}
/*clearfix*/
.idxBox:after {
	content:" ";
	display:block;
	clear:both;
}
/*サイトマップ**********/
#siteMap li ul{
	padding:0 0 10px 25px;
}
#siteMap ul li a:before,
#siteMap ul li .label:before{
	text-align: center;
	width: 20px;
	margin-left: -20px;
}
#siteMap h5+ul >li> a:before,
#siteMap h5+ul >li> .label:before{
	font-size:8px;
	padding-top: 1px;
	text-align: left;
	content: "\f111";/*fa-circle*/
}
#siteMap h5+ul li li a:before,
#siteMap h5+ul li li .label:before{
	text-align: center;
	content: "\f0da";/*fa-caret-right*/
}
#siteMap h5+ul li li li a:before,
#siteMap h5+ul li li li .label:before{
	text-align: left;
	content: "\2514";/*└*/
}


/*関連サイトリンクボタン**********/
.LinkBtn{
	display:block;
	margin: 0 0 10px;
}
.LinkBtn a{
	padding: 10px;
	display:block;
	color:#FFF !important;
	background:#424242; 
}
.LinkBtn a img{
	float: left;
	padding: 0 10px 0 0;
}
.LinkBtn a h3{
	font-size:110%;
	line-height: 1.2;
	margin: 0 0 15px;
	padding: 0;
}
.LinkBtn a p{
	margin: 0;
	line-height: 1.2em;
}
/*黒*/
.LinkBtn.color1 a{
	color:#FFF;
	background:#424242; 
}
/*青*/
.LinkBtn.color2 a{
	background: #2978BF;
}
/*赤*/
.LinkBtn.color3 a{
	background: #CE3D6F;
}
/*紫*/
.LinkBtn.color4 a{
	background: #6152A5;
}

.LinkBtn:after,
.LinkBtn a:after {
	content:" ";
	display:block;
	clear:both;
}



/*新着一覧*/
.topicList{
	margin-bottom: 30px;
}
.topicList p.entry{
	padding:10px;
	margin: 15px 0;
}
.topicList .entry{
	margin: 15px 0;
	display:block;
	padding:0 10px 10px;
	list-style-type:none;
	overflow:hidden;
}
.topicList .entry li{
	display:block;
	margin-bottom: 5px;
	padding-bottom: 5px;
	line-height: 2em;
	border-bottom: 1px dotted #CCC;
}
.topicList .entry li a{
	display:block;
	text-decoration:underline;
}
.topicList .entry li time{
	display: inline-block;
	vertical-align: middle;
}

/*ラベル*/
.topicList .entry li i{
	display: inline-block;
	line-height:1.5;
	vertical-align: middle;
	font-style: normal;
	color:#FFF;
	background:#333;
	font-weight:bold;
	padding:1px 8px 0;
	margin:0 5px 0;
	border-radius: 3px; -webkit-border-radius: 3px;  -moz-border-radius: 3px;
}
.topicList .entry li i.event { background:#4288C7;}
.topicList .entry li i.nyusi { background:#B80000;}
.topicList .entry li i.nyusi:first-letter {letter-spacing : 2em;}
.topicList .entry li i.saiyo { background:#b55c28;}
.topicList .entry li i.news { background:#099D00;}
.topicList .entry li i.carrier { background:#333;}
.topicList .entry li i.graduate{ background:#1d2184;}
.topicList .entry li i.student { background:#693905;}
.topicList .entry li i.campus { background:#e4007e;}
.topicList .entry li i.international { background:#4b0082;}

/*カテゴリTOPの新着*/
#topicCategory.topicList{
	border-bottom: 1px solid #3C3C3C;
}
#topicCategory .entry li a{
	display:inline;
}
/*一覧へ*/
.list-btn{ text-align:right; margin:0;}
.topicList .list-btn a{ display: inline-block; background:#3C3C3C; color:#FFF; padding:3px 10px; margin:5px 10px; }


.topicList:after,
.entry:after {
	content:" ";
	display:block;
	clear:both;
}

/*Gallery********************************************/
/* Slider v1.6.0 ベース*/
.slick-list,.slick-slider,.slick-track{position:relative;display:block}.slick-loading .slick-slide,.slick-loading .slick-track{visibility:hidden}.slick-slider{box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{top:0;left:0}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}

/*slick-theme-------------*/
/* Slider */
.slick-loading .slick-list
{
    background: #fff url('../WSR/images/ajax-loader.gif') center center no-repeat;
}



/* Icons */
@font-face
{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;

    src: url('../WSR/fonts/slick.eot');
    src: url('../WSR/fonts/slick.eot?#iefix') format('embedded-opentype'), url('../WSR/fonts/slick.woff') format('woff'), url('../WSR/fonts/slick.ttf') format('truetype'), url('../WSR/fonts/slick.svg#slick') format('svg');
}
/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position:absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}


.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color:black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/*左右の矢印の位置を変える*/

.slick-prev
{
    left:20px;z-index: 100;
}
[dir='rtl'] .slick-prev
{
    right: -25px;
    left: auto;
}
.slick-prev:before
{
    content: '←';
}
[dir='rtl'] .slick-prev:before
{
    content: '→';
}

.slick-next
{
    right: 20px;z-index: 99;
}
[dir='rtl'] .slick-next
{
    right: auto;
    left: -25px;
}
.slick-next:before
{
    content: '→';
}
[dir='rtl'] .slick-next:before
{
    content: '←';
}

/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 12px;
    line-height: 20px;

    position: absolute;
    top: -30px;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: black;
}


/*英語版調整*/
/*メニュー*/
#side nav.enMenu h3{
	background: linear-gradient(#703577, #412452);
}
#side nav.enMenu >ul> li>a:before{
	background: #703577;
}

/*関連リンク*/
#side .LinkBtn p{
	font-weight: bold;
	font-size: 12px;
	line-height:1.3;
} 


:lang(ja) {
	
	@media (max-width: 992px) {
	  body {
	    margin-top: 0;
	  }
	  header#pageTop {
	    display: flex;
	    align-items: center;
	    justify-content: space-between;
	    position: sticky;
	  }
	  header#pageTop * {
	    display: none;
	  }
	  header#pageTop .wrapper {
	    display: contents;
	  }
	  header#pageTop .wrapper h1 {
	    width: fit-content;
	  }
	  header#pageTop .wrapper :is(h1, h1 *) {
	    display: block;
	  }
	  .sns-area {
	    display: none;
	  }
	  #page-top {
	    margin: 0;
	    bottom: 70px;
	    right: 10px;
	  }
	}
	button#pageTop-spMenu {
	  display: none;
	}
	@media (max-width: 992px) {
	  button#pageTop-spMenu {
	    display: block;
	    width: 64px;
	    height: 44px;
	    margin: 0;
	    padding: 0 10px;
	    display: grid;
	    grid-template-columns: 1fr;
	    grid-template-rows: 1fr auto;
	    border: none;
	    background-color: #fff0;
	    transition-property: opacity;
	    transition-duration: 0.3s;
	    transition-timing-function: linear;
	    overflow: clip;
	  }
	  button#pageTop-spMenu.active [id="pageTop-spMenu-icon"] div:nth-child(1) {
	    translate: 0;
	    rotate: -25deg;
	  }
	  button#pageTop-spMenu.active [id="pageTop-spMenu-icon"] div:nth-child(2) {
	    translate: 150%;
	  }
	  button#pageTop-spMenu.active [id="pageTop-spMenu-icon"] div:nth-child(3) {
	    translate: 0;
	    rotate: 25deg;
	  }
	  button#pageTop-spMenu.active [id="pageTop-spMenu-txt"] span:nth-child(1) {
	    opacity: 0;
	  }
	  button#pageTop-spMenu.active [id="pageTop-spMenu-txt"] span:nth-child(2) {
	    opacity: 1;
	  }
	}
	@media (max-width: 992px) and (any-hover: hover) {
	  button#pageTop-spMenu:hover {
	    opacity: 0.7;
	  }
	}
	@media (max-width: 992px) {
	  button#pageTop-spMenu * {
	    display: block;
	    margin: 0;
	    padding: 0;
	  }
	  button#pageTop-spMenu [id="pageTop-spMenu-icon"] {
	    width: 100%;
	    height: calc(100% / 6 * 5);
	    position: relative;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	  }
	  button#pageTop-spMenu [id="pageTop-spMenu-icon"] div {
	    position: absolute;
	    width: 100%;
	    height: calc(100% / 5);
	    background-color: #aba3cf;
	    transition-property: translate rotate;
	    transition-duration: 0.3s;
	    transition-timing-function: ease;
	  }
	  button#pageTop-spMenu [id="pageTop-spMenu-icon"] div:nth-child(1) {
	    translate: 0 -200%;
	  }
	  button#pageTop-spMenu [id="pageTop-spMenu-icon"] div:nth-child(3) {
	    translate: 0 200%;
	  }
	  button#pageTop-spMenu [id="pageTop-spMenu-txt"] {
	    font-size: 12.5px;
	    line-height: 1;
	    height: 1lh;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    position: relative;
	  }
	  button#pageTop-spMenu [id="pageTop-spMenu-txt"] span {
	    position: absolute;
	    transition-property: opacity;
	    transition-duration: 0.3s;
	    transition-timing-function: linear;
	  }
	  button#pageTop-spMenu [id="pageTop-spMenu-txt"] span:nth-child(2) {
	    opacity: 0;
	  }
	}
	:has(#pageTop-spMenu.active) #spMenu {
	  opacity: 1;
	  pointer-events: auto;
	}
	#spMenu {
	  display: none;
	}
	@media (max-width: 992px) {
	  #spMenu {
	    display: flex;
	    flex-direction: column;
	    justify-content: start;
	    align-items: stretch;
	    position: fixed;
	    top: 62.44px;
	    left: 0;
	    width: 100%;
	
	    height: calc(100lvh - 62.44px);
	    padding: 0 10px calc(100lvh - 100svh + 20px);
	    overflow-y: auto;
	    background-color: rgba(37, 37, 37, 0.95);
	    z-index: 998;
	    opacity: 0;
	    pointer-events: none;
	    transition-property: opacity;
	    transition-duration: 0.3s;
	    transition-timing-function: ease;
	  }
	  #spMenu * {
	    margin: 0;
	    padding: 0;
	  }
	  #spMenu [id="spMenu-search"] {
	    background-color: white;
	    border: solid 1px gray;
	    border-radius: 5px;
	    display: grid;
	    grid-template-columns: 1fr auto;
	    margin-top: 15px;
	  }
	  #spMenu [id="spMenu-search"] input {
	    background-color: #fff0;
	    border: none;
	    margin-block: 5px;
	    margin-inline: 5px 0;
	  }
	  #spMenu [id="spMenu-search"] button {
	    background-color: #fff0;
	    border: none;
	    height: 33.5px;
	    width: 33.5px;
	    aspect-ratio: 1/1;
	    font-size: 1.3em;
	    color: #aba3cf;
	  }
	  #spMenu ul {
	    list-style: none;
	  }
	  #spMenu [id="spMenu-target"] {
	    margin-top: 5px;
	  }
	  #spMenu [id="spMenu-target"] li {
	    border-bottom: dashed 1px white;
	  }
	  #spMenu [id="spMenu-target"] li a {
	    display: flex;
	    justify-content: space-between;
	    align-items: center;
	    color: white;
	    padding: 10px;
	  }
	  #spMenu [id="spMenu-target"] li a i {
	    margin-right: 0.5em;
	  }
	  #spMenu [id="spMenu-target"] li a::after {
	    content: "";
	    display: inline-block;
	    margin-left: auto;
	    height: 1em;
	    width: 0.583em;
	    background-size: contain;
	    background-position: center;
	    background-repeat: no-repeat;
	  }
	  #spMenu [id="spMenu-guide"] {
	    display: flex;
	    flex-wrap: wrap;
	    justify-content: start;
	    align-items: start;
	    gap: 10px;
	    margin-top: 15px;
	    font-weight: bold;
	  }
	  #spMenu [id="spMenu-guide"] a {
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    background-color: white;
	    color: #333333;
	    padding: 5px 10px;
	    border-radius: 100lvmax;
	  }
	  #spMenu [id="spMenu-english"] {
	    margin-top: 15px;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    background-color: #35709b;
	    position: relative;
	    padding: 10px;
	    color: white;
	    font-weight: bold;
	    border-radius: 5px;
	  }
	  #spMenu [id="spMenu-english"]::after {
	    content: "";
	    display: inline-block;
	    margin-left: auto;
	    height: 1em;
	    width: 0.583em;
	    background-size: contain;
	    background-position: center;
	    background-repeat: no-repeat;
	  }
	
	  #spMenu [id="spMenu-others"] {
	    margin-top: 15px;
	    display: grid;
	    grid-template-columns: 4fr 6fr 6fr;
	    gap: 10px;
	  }
	  #spMenu [id="spMenu-others"] a {
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    padding-block: 10px;
	    border: solid 2px #35709b;
	    background-color: white;
	    position: relative;
	    border-radius: 5px;
	    font-weight: bold;
	    color: #039;
	  }
	  #spMenu [id="spMenu-others"] li a::after {
	    content: "";
	    display: inline-block;
	    margin-left: 5px;
	    height: 1em;
	    width: 0.583em;
	    background-size: contain;
	    background-position: center;
	    background-repeat: no-repeat;
	    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxNy4xIiBiYXNlUHJvZmlsZT0idGlueSIgdmVyc2lvbj0iMS4yIj48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiMwMzkiIHN0cm9rZS13aWR0aD0iMiIgZD0ibS43LjcgNy44IDcuOC03LjggNy45Ii8+PC9zdmc+);
	  }
	  #spMenu [id="spMenu-target"] li a::after,
	  #spMenu [id="spMenu-english"]::after {
	    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxNy4xIiBiYXNlUHJvZmlsZT0idGlueSIgdmVyc2lvbj0iMS4yIj48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiNGRkYiIHN0cm9rZS13aWR0aD0iMiIgZD0ibS43LjcgNy44IDcuOC03LjggNy45Ii8+PC9zdmc+);
	  }
	}
	#spBottomMenu {
	  display: none;
	}
	@media (max-width: 992px) {
	  #spBottomMenu {
	    position: fixed;
	    bottom: 0;
	    display: grid;
	    grid-template-columns: 160fr 135fr 135fr;
	    width: 100%;
	    height: 60px;
	    background-color: white;
	    z-index: 997;
	  }
	  #spBottomMenu * {
	    display: block;
	    margin: 0;
	    padding: 0;
	  }
	  #spBottomMenu ul {
	    list-style: none;
	    display: flex;
	    justify-content: space-evenly;
	    align-items: center;
	  }
	  #spBottomMenu ul a {
	    width: 35px;
	    height: 35px;
	  }
	  #spBottomMenu > a {
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    color: white;
	
	    &::after {
	      content: "";
	      display: inline-block;
	      margin-left: 0.5em;
	      height: 1.5em;
	      width: 1.5em;
	      background-size: contain;
	      background-repeat: no-repeat;
	      background-position: center;
	    }
	  }
	
	  #spBottomMenu [id="spBottomMenu-examinfo"] {
	    background-color: #000d63;
	    &::after {
	      background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNi41IiBoZWlnaHQ9IjIzLjUiIGJhc2VQcm9maWxlPSJ0aW55IiB2ZXJzaW9uPSIxLjIiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xNy45IDIzLjVILjljLS41IDAtLjktLjQtLjktLjlWLjlDMCAuNC40IDAgLjkgMGgxN2MuNSAwIC45LjQuOS45djRjMCAuNC0uMy43LS43LjdzLS43LS4zLS43LS43VjEuNGgtMTZ2MjAuOGgxNi4xdi0zLjNjMC0uNC4zLS43LjctLjdzLjcuMy43Ljd2My44YzAgLjUtLjQuOS0uOS45Ii8+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTkgMjEuMmMtLjQgMC0uNy0uMy0uNy0uN3YtLjFsLjgtNC40YzAtLjEgMC0uMy4yLS40TDIxLjcgMy4zYy4zLS4zLjktLjMgMS4yIDBsMy4zIDMuM2MuMy4zLjMuOSAwIDEuMkwxMy45IDIwLjFzLS4yLjItLjQuMmwtNC40LjhIOW00LjQtMS40Wm0tMi45LTMuMi0uNiAzLjIgMy4yLS42TDI0LjkgNy4zbC0yLjYtMi42LTExLjggMTEuOFpNMy45IDEwLjRoOC4zYy40IDAgLjctLjMuNy0uNyAwLS40LS4zLS43LS43LS43SDMuOWMtLjQgMC0uNy4zLS44LjYgMCAuNC4zLjcuNi44aC4xTTMuOSAxNC42aDRjLjQgMCAuNy0uMy43LS43IDAtLjQtLjMtLjctLjctLjdoLTRjLS40IDAtLjcuMy0uOC42IDAgLjQuMy43LjYuOGguMSIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Im0xMi40IDE0LjYgMi43IDIuN2MuMy4zLjcuMyAxIDBzLjMtLjcgMC0xbC0yLjctMi43Yy0uMy0uMy0uNy0uMy0xIDBzLS4zLjcgMCAxTTkuMyA2LjFoNS42Yy40IDAgLjctLjMuNy0uNyAwLS40LS4zLS43LS43LS43SDkuM2MtLjQgMC0uNy4zLS43LjcgMCAuNC4zLjcuNy43TTMuOSA2LjFoMi41Yy40IDAgLjctLjMuNy0uNyAwLS40LS4zLS43LS43LS43SDMuOWMtLjQgMC0uNy4zLS44LjYgMCAuNC4zLjcuNi44aC4xTTMuOSAxOC44aDIuNWMuNCAwIC43LS4zLjctLjcgMC0uNC0uMy0uNy0uNy0uN0gzLjljLS40IDAtLjcuMy0uOC42IDAgLjQuMy43LjYuOGguMSIvPjwvc3ZnPg==);
	    }
	  }
	  #spBottomMenu [id="spBottomMenu-materials"] {
	    background-color: #50a72d;
	    &::after {
	      background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNSIgaGVpZ2h0PSIyMy41IiBiYXNlUHJvZmlsZT0idGlueSIgdmVyc2lvbj0iMS4yIj48cGF0aCBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yNSAxMC40YzAtLjQtLjMtLjctLjctLjdIMjRsLTExLjQgNi4yTDEgOS44Yy0uMy0uMi0uOCAwLTEgLjNWMjIuOGMwIC40LjMuNy43LjdoMjMuNWMuNCAwIC43LS4zLjctLjdWMTAuNFptLTEuNSAxLjJ2MTAuNUgxLjRWMTEuNmwxMC43IDUuOGMuMi4xLjUuMS43IDBsMTAuNy01LjhaIi8+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTcuNCAxMC41aDEwLjFjLjQgMCAuNy0uMy43LS43IDAtLjQtLjMtLjctLjctLjdINy40Yy0uNCAwLS43LjMtLjcuN3MuMy43LjcuN003LjQgNi4zaDEwLjFjLjQgMCAuNy0uMy43LS43IDAtLjQtLjMtLjctLjctLjdINy40Yy0uNCAwLS43LjMtLjcuN3MuMy43LjcuNyIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik01LjIgMTIuM1YxLjRoMTQuNXYxMC45bDEuNC0uOFYuN2MuMS0uNC0uMy0uNy0uNi0uN2gtMTZjLS40IDAtLjcuMy0uNy43djEwLjhsMS40LjgiLz48cGF0aCBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yNC4zIDZoLTMuOHYxLjRoMy4xdjIuNGwtMTEuMSA2LTExLjEtNlY3LjRoMy4xVjZILjdjLS40IDAtLjcuMy0uNy43djMuNWMwIC4zLjEuNS40LjZsMTEuOCA2LjRjLjIuMS41LjEuNyAwbDExLjgtNi40Yy4yLS4xLjQtLjQuNC0uNlY2LjdjMC0uNC0uMy0uNy0uNy0uNyIvPjwvc3ZnPg==);
	    }
	  }
	}

}