@charset "UTF-8";

@font-face
{
	font-family: 'Roboto-R';
	src:
		url('../_fonts/Roboto-Regular.ttf') format('truetype')
	;
	font-weight: 400;
}

@font-face
{
	font-family: 'Roboto-M';
	src:
		url('../_fonts/Roboto-Medium.ttf') format('truetype')
	;
	font-weight: 500;
}

@font-face
{
	font-family: 'GG-N';
	src:
		url('../_fonts/GenShinGothic-Normal-web.woff') format('woff'),
		url('../_fonts/GenShinGothic-Normal-web.ttf') format('truetype')
	;
	font-weight: 400;
}

@font-face
{
	font-family: 'GG-M';
	src:
		url('../_fonts/GenShinGothic-Medium-web.woff') format('woff'),
		url('../_fonts/GenShinGothic-Medium-web.ttf') format('truetype')
	;
	font-weight: 500;
}

.roboto
{
	font-family: Roboto-R, sans-serif;
	font-weight: 400;
}

body
{
	-webkit-text-size-adjust: 100%; 
	color: #323232;
	line-height:1.75;
	letter-spacing:0.05em;
	font-size: 14px;
	font-family: GG-N, sans-serif;
	font-weight: 400;
	background-color: rgb(200, 200, 200);
	word-wrap: break-word;
	position: relative;
}

#allWrapper
{
	position: relative;
	overflow-x: hidden;
	overflow-y: visible;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	min-height: 100vh;
	margin 0 auto;
	background-color: rgb(255, 255, 255);
}

._contents
{
	max-width: 1440px;
}

a:not([class])
{
	color: #323232;
	display: inline-frame;
	text-decoration: under-line;
	
	-webkit-transition: color .5s ease;
	-moz-transition: color .5s ease;
	-ms-transition: color .5s ease;
	-o-transition: color .5s ease;
	transition: color .5s ease;
}

a:not([class]):hover
{	
	color: #323232;
	alpha
}

/* ボーダーローダー */
#loader
{
	position:fixed;
	height:100%;
	width:100%;
	top: 0px;
	left: 0px;
	background-color: rgb(255, 255, 255);
	z-index:9999;
}

#loader:after
{
	content: ""; 
	display: block;
	position: absolute;
	width: 2.5rem;
	height: 2.5rem;
	box-sizing:border-box;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	border: 1px solid #004DA0;
	border-right-color: transparent;
	
	top: 50%;
	left: 50%;
	margin-top:-1.25rem;
	margin-left:-1.25rem; 

	animation: circle-spin 1s linear infinite; /*1秒毎にくるくる回転するアニメーション*/
}

/* くるくるローダー */
.loader
{
	position:absolute;
	height:100%;
	width:100%;
	top: 0px;
	left:0px;
	z-index:9998;
}

.loader:after
{
	content: ""; 
	display: block;

	box-sizing:border-box;
	position: absolute;
	width: 30px;
	height: 30px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	border: 3px solid rgb(150, 150, 150);
	border-right-color: transparent;
	
	top: 50%;
	left: 50%;
	margin-top:-30px;
	margin-left:-30px; 

	animation: circle-spin 1s linear infinite; /*1秒毎にくるくる回転するアニメーション*/
}

@keyframes circle-spin
{
	0%
	{
		transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		filter:alpha(opacity=20);
		-moz-opacity: .2;
		opacity: .2;
	} /*0%の時は20％の透明度*/
	50%
	{
		transform: rotate(180deg);
		-ms-transform: rotate(180deg);
		filter:alpha(opacity=100);
		-moz-opacity: 1;
		opacity: 1;
	} /*50%の時は透明度なし*/
	100%
	{
		transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		filter:alpha(opacity=20);
		-moz-opacity: .2;
		opacity: .2;
	} /*100%の時に20％の透明度に戻る*/
}


.pageContainer
{
	position: relative;
	box-sizing: border-box;
	margin: 0rem auto;
	z-index:1;
	
	-webkit-transition: width .7s ease;
	-moz-transition: width .7s ease;
	-ms-transition: width .7s ease;
	-o-transition: width .7s ease;
	transition: width .7s ease;
}
/*.pageContainer:not(#titleWrapper){overflow-x: hidden;}*/

.pageContainer .transY
{
	position: relative;
	box-sizing: border-box;
	
	transform: translateY(5rem);
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	
	-webkit-transition: transform .7s ease, opacity .7s ease;
	-moz-transition: transform .7s ease, opacity .7s ease;
	-ms-transition: transform .7s ease, opacity .7s ease;
	-o-transition: transform .7s ease, opacity .7s ease;
	transition: transform .7s ease, opacity .7s ease;
}
.pageContainer.end .transY
{
	transform: translateY(0rem);
	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}

.pageContainer .marginY
{
	position: relative;
	box-sizing: border-box;
	
	margin-top: 5rem;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	
	-webkit-transition: margin-top .7s ease, opacity .7s ease;
	-moz-transition: margin-top .7s ease, opacity .7s ease;
	-ms-transition: margin-top .7s ease, opacity .7s ease;
	-o-transition: margin-top .7s ease, opacity .7s ease;
	transition: margin-top .7s ease, opacity .7s ease;
}
.pageContainer.end .marginY
{
	margin-top: 0rem;
	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}

.pageContainer .transX
{
	position: relative;
	box-sizing: border-box;
	
	transform: translateX(5rem);
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	
	-webkit-transition: transform .7s ease, opacity .7s ease;
	-moz-transition: transform .7s ease, opacity .7s ease;
	-ms-transition: transform .7s ease, opacity .7s ease;
	-o-transition: transform .7s ease, opacity .7s ease;
	transition: transform .7s ease, opacity .7s ease;
}
.pageContainer.end .transX
{
	transform: translateX(0rem);
	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}

.linkBt, .pdfLink, .linkBtL
{
	font-family: 'Roboto-M', 'GG-M', sans-serif;
	font-weight: 500;
	
	display: inline-block;
	box-sizing: border-box;
	cursor: pointer;
	position: relative;
	text-decoration: none;
	color: #004DA0;
	border: 1px solid #004DA0;
	
	line-height:1;
	padding: .2rem .3rem;
	font-size: .8rem;
	margin: 0 1.5rem;
	letter-spacing: 0;
	
	-webkit-transition: color .5s ease, background-color .5s ease;
	-moz-transition: color .5s ease, background-color .5s ease;
	-ms-transition: color .5s ease, background-color .5s ease;
	-o-transition: color .5s ease, background-color .5s ease;
	transition: color .5s ease, background-color .5s ease;
}

.linkBt{font-size: .8em; margin-left: .5em; transform: translateY(-.3em);}
.pdfLink{font-size: .9em; display:block; margin-top: 1em;}
.linkBtL{font-size: .9em; display:block; padding: 1em 4em;}
.linkBtL p{display: inline-block; padding-right: 1em; position: relative;}
.linkBtL p:before
{
	content:"";
	display: block;
	position: absolute;
	right: 0;
	top: .2em;
	width: .5em;
	height: .5em;
	border-style: solid;
	border-width: 1px 1px 0 0;
	transform: rotate(45deg);
}

.linkBt:hover, .pdfLink:hover, .linkBtL:hover
{
	background-color: #004DA0;
	color: rgb(255, 255, 255);
}


/********* Selector *********/

#selector
{
	font-family: 'Roboto-M', 'GG-M', sans-serif;
	font-weight: 500;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	-webkit-align-items: center;
	align-items: center;

	-webkit-justify-content: center;
	justify-content: center;
	
	z-index: 9900;
	box-sizing:border-box;
}

#selector > div
{
	width: 100%;
	background-color: #ffffff;
}

#selector .logo_bt
{
	position:relative;
	box-sizing:border-box;
	padding: 0rem 2rem 0;
	width: 100%;

	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	-webkit-align-items: center;
	align-items: center;

	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#selector .selector
{
	position:relative;
	box-sizing:border-box;
	width: 100%;
	margin-top: .5rem;
	
	border-bottom: 1px solid rgb(200, 200, 200);

	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	-webkit-justify-content: center;
	justify-content: center;
	
	-webkit-transition: transform .2s ease;
	-moz-transition: transform .2s ease;
	-ms-transition: transform .2s ease;
	-o-transition: transform .2s ease;
	transition: transform .2s ease;
}

#selector .logoWrapper
{
	position:relative;
	box-sizing:border-box;
	width: 100%;

	margin: .75rem 0;

	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	-webkit-align-items: flex-end;
	align-items: flex-end;
}

#selector .logo
{
	display: block;
	position: relative;
	width: 12rem;
	margin-right: 1rem;
	box-sizing:border-box;
	text-indent: -9999px;
	font-size: 0;
	
	background-size: contain;
	background-position: 0% 50%;
	background-repeat: no-repeat;
	
	-webkit-transition: width .2s ease;
	-moz-transition: width .2s ease;
	-ms-transition: width .2s ease;
	-o-transition: width .2s ease;
	transition: width .2s ease;
}
#selector .logo:after
{
	position: relative;
	content:"";
	display: block;
	padding-top: 35%;
	
	-webkit-transition: padding .2s ease;
	-moz-transition: padding .2s ease;
	-ms-transition: padding .2s ease;
	-o-transition: padding .2s ease;
	transition: padding .2s ease;
}

#selector .logoWrapper > div p
{
	font-family: 'Roboto-M', 'GG-M', sans-serif;
	font-weight: 500;
	line-height: 1;
}

.sc #selector .logo, .hamburger #selector .logo
{
	width: 8rem;
}

.svg #selector .logo{background-image: url(../_img/logo.svg)}
.no-svg #selector .logo{background-image: url(../_img/logo.png)}

.btWrapper
{
	position:absolute;
	right: 0;
	top: 0;
	height: 100%;
	box-sizing:border-box;

	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
}

.btWrapper a
{
	position: relative;
	box-sizing:border-box;
	width: 8rem;
	height: 100%;
	background-color: #004DA0;
	color: #ffffff;
	text-decoration: none;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;
	
	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.btWrapper a:first-child
{
	border-right: 2px solid #ffffff;
}

.btWrapper a span
{
	display: block;
}

.btWrapper a .text
{
	margin-top: .3rem;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}

.sc .btWrapper a .text, .hamburger .btWrapper a .text
{
	margin-top: 0rem;
	font-size: 0;
}

.btWrapper a .mark
{
	position: relative;
	width: 3.75rem;
	background-size: cover;
}

.btWrapper a .mark:after
{
	position: relative;
	content:"";
	display: block;
	padding-top: 60%;
	
	-webkit-transition: padding .2s ease;
	-moz-transition: padding .2s ease;
	-ms-transition: padding .2s ease;
	-o-transition: padding .2s ease;
	transition: padding .2s ease;
}

.svg .btWrapper a.product_support .mark{background-image: url(../_img/bt_support.svg)}
.no-svg .btWrapper a.product_support .mark{background-image: url(../_img/bt_support.png)}
.svg .btWrapper a.contact .mark{background-image: url(../_img/bt_contact.svg)}
.no-svg .btWrapper a.contact .mark{background-image: url(../_img/bt_contactpng)}

.selector ul
{
	list-style-type: none;
	letter-spacing: .2rem;
}

#selector .selector ul
{
	width: 100%;
	max-width: calc(1440px - 4rem);
	box-sizing:border-box;
	border-style: solid;
	border-color: rgb(200, 200, 200);
	border-width: 0 1px;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.selector li
{
	box-sizing:border-box;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	position: relative;

	-webkit-align-items: center;
	align-items: center;

	border-left: 1px solid rgb(200, 200, 200);
	width: calc(100% / 3);

	padding: 1em 1em 1em 1em;
}

.selector li:first-child{border-left-width: 0;}

.selector li.lang a, .linksWrapper .lang a
{
	text-decoration: none;
	font-size: .7em;
	padding: .2em .2em .2em .4em;
	border: 1px solid;
}

.selector .sns
{
	padding-left: 0;
}

.selector .sns a, .linksWrapper  .sns a
{
	display: block;
	position: relative;
	width: 1em;
	height: 1em;
	background-size: cover;
	background-position: 50% 50%;
}
.svg .selector li.sns a.fb, .svg .loaded .selector li.sns a.fb, .svg .linksWrapper a.fb{background-image: url(../_img/fb.svg)}
.no-svg .selector li.sns a.fb, .no-svg .loaded .selector li.sns a.fb, .no-svg .linksWrapper a.fb{background-image: url(../_img/fb.png)}
.svg .selector li.sns a.ig, .svg .loaded .selector li.sns a.ig, .svg .linksWrapper a.ig{background-image: url(../_img/ig.svg)}
.no-svg .selector li.sns a.ig, .no-svg .loaded .selector li.sns a.ig, .no-svg .linksWrapper a.ig{background-image: url(../_img/ig.png)}

.selector li a.information
{
	border-style: solid;
	border-color: rgb(255, 255, 255);
	border-width: 0 1px;
	padding: 0 2em;
}

.selector li.linkSubBt:hover .sub
{
	height: auto;
	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}

.selector li.linkSubBt .sub
{
	height: 0;
	top: 1em;
	left: -1.5em;
	padding-top: .5em;
	position: absolute;
	background-color: rgba(255, 255, 255, 0);
	
/*	background-image: radial-gradient(rgba(205, 190, 0, .5) 50%, rgba(115, 100, 0, 1) 0), radial-gradient(rgba(205, 190, 0, .5) 50%, rgba(115, 100, 0, 1) 0);
	background-position: 0 0, 2px 2px;
	background-size: 4px 4px;*/
	
	box-sizing:border-box;
	overflow: hidden;
	line-height: 1.75;
	
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-ms-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}
.loaded .selector .sub div
{
	position: relative;
	padding: .5em 0;
	background-color: rgba(255, 255, 255, 1);
}

.selector li.linkSubBt .sub:hover + a.menuBt:after
{
	transform: scale(1, 1);
}

.selector .subBtWrapper, .linksWrapper .subBtWrapper
{
	position: relative;
}

.selector .sub div p
{
	position: relative;
	padding-left: 1.5em; 
    padding-right: 1.5em;
	margin-bottom: .25em;
	box-sizing:border-box;
}
.selector .sub div p a
{
	display: inline-block;
	position: relative;
	
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}

.selector .sub div a.subBt{font-size: .9em; letter-spacing: .2em;}
/*.selector .sub div a.subBt:before
{
	content:"";
	display: block;
	position: absolute;
	width: .3em;
	height: .3em;
	top: 50%;
	left: .75em;
	margin-top: -.2em;
	border-style: solid;
	border-width: 1px 1px 0 0;
	
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);

	-webkit-transition: all .1s ease;
	-moz-transition: all .1s ease;
	-ms-transition: all .1s ease;
	-o-transition: all .1s ease;
	transition: all .1s ease;
}
.selector .sub div a.subBt:hover:before
{
	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}*/

.selector .sub div a.subBt:before
{
	content:"";
	display: block;
	position: absolute;
	width: 100%;
	height: 2px;
	bottom: -3px;
	left: 0em;
	background-color: rgb(255, 255, 255);
	
	transform-origin: center top;
	transform: scale(0, 0);
	
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}
.selector .sub div a.subBt:hover:before
{
	transform: scale(1, 1);
}
.loaded .selector .sub div a.subBt:before{background-color: #323232;}

.selector li a
{
	font-size: 1em;
	padding: 0em;
	
	position: relative;
	box-sizing:border-box;
	display: block;
	text-decoration: none;
	cursor: pointer;
	color: #004DA0;
	width: 100%;
	text-align: center;
	letter-spacing: 0;
	line-height: 1.5;
	
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;	
}
.loaded .selector li a{color: #323232;}

.selector li a p{text-align: center;}

.selector li.menu:after
{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 5px;
	background-color: #28AAE1;
	left: 0;
	bottom: 0;
	
	transform-origin: center center;
	transform: scale(0, 1);
	
	-webkit-transition:all .3s ease;
	-moz-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-o-transition:all .3s ease;
	transition:all .3s ease;
}

.selector li.menu.now:after, body:not(.touch) .selector li.menu:hover:after
{
	transform: scale(1, 1);
}

#menuList
{
	font-family: Roboto-R, serif;
	font-weight: 400;

	position:fixed; 
	box-sizing:border-box;
	top: 0rem;
	padding: 5em;
	width:100%;
	height:100vh;
	z-index: 8999;
	background-color: rgb(255, 255, 255);
}

#menuList .selector
{
	font-size: 1em;
	position: relative;
	max-width: 400px;
	margin: 0 auto;
	text-align: center;
}
#menuList .selector li
{
	margin: 1rem 0;
}

#menuList a.tel
{
	display: inline-block;
	margin-top: 1em;
	position: relative;
	padding-left: 1.25em;
	line-height: 1;
	color: inherit;
	text-decoration: none;
}
#menuList a.tel:before
{
	content: "";
	display: block;
	position:absolute;
	left: 0;
	top: 0;
	background-color: rgb(50, 50, 50);
	border: 2px solid rgb(50, 50, 50);
	box-sizing: border-box;
	border-radius: 50%;
	width: 1em;
	height: 1em;
	background-size: contain;
	background-position: 50% 50%;
	-webkit-transition:all .3s ease;
	-moz-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-o-transition:all .3s ease;
	transition:all .3s ease;
}
.svg #menuList a.tel:before{background-image: url(../_img/tel.svg)}
.no-svg #menuList a.tel .tel:before{background-image: url(../_img/tel.png)}

#menuList a.tel:hover:before
{
	border-color: rgb(105, 171, 219);
	background-color: rgb(105, 171, 219);
}

#menuBt
{
	display: none;
	width: 20px;
	height:  20px;
	position: relative;
	cursor: pointer;
}
#menuBt span
{
	transition: all 0.3s;
	transform: rotate(0deg);
	width: 20px;
	height: 2px;
	display: block;
	position: absolute;
	background: #004DA0;
}

#menuBt .top
{
	transform: translateY(0px);
}
#menuBt .middle
{
	transform: translateY(7px);
}
#menuBt .bottom
 {
	 transform: translateY(14px);
}

#menuBt.menuBtOpen .middle
{
	display: none;
}
#menuBt.menuBtOpen .top
{
	top: 10px;
	background: #004DA0;
	transform: rotate(-45deg);
}
#menuBt.menuBtOpen .bottom
{
	top: 10px;
	background: #004DA0;
	transform: rotate(45deg);
}

.sectionTitle p{font-size: 1.2rem;}


/********GO TOP******/

#goTopBt
{
	position:fixed;
	bottom: 3rem;
	right: 0;
	z-index:9800;
	display:none;
	cursor:pointer;
	width: 2rem;
	height: 2rem;
	background-color: rgba(150, 150, 150, 1);
	-webkit-transition:bottom .3s ease;
	-moz-transition:bottom .3s ease;
	-ms-transition:bottom .3s ease;
	-o-transition:bottom .3s ease;
	transition:bottom .3s ease;
}
#goTopBt:after
{
	content:"";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	top: calc(50% - .4rem);
	left: calc(50% - .5rem);
	border-style: solid;
	border-width: 0 .5rem .8rem .5rem;
	border-color: transparent transparent rgb(255, 255, 255) transparent;
	opacity: 0;

	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	box-sizing: border-box;
}


/*********************************************************************/
/*************************** Google Search *****************************/
/*********************************************************************/

#menuList .searchArea
{
	width: 100%;
}

#selector .googleBt
{
	position: absolute;
	right: 18rem;
}

.googleBt form
{
	box-sizing:border-box;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
}

.searchGo
{
	position: relative;
	width: 4rem;
	height: 2rem;
	background-color: rgb(150, 150, 150);
}

.searchGo:before
{
	content:"";
	display: block;
	position: absolute;
	top: calc(50% - .5rem);
	left: calc(50% - .5rem);
	width:.5rem;
	height: .5rem;
	border:2px solid white;
	border-radius: 50%;
}
.searchGo:after
{
	content: "";
	position: absolute;
	display: block;
	height: .5rem;
	left: calc(50% + .3rem);
	top: calc(50% + .1rem);
	border-left: 2px solid white;
	transform: rotate(-45deg);
}

.googleBt input
{
	box-sizing:border-box;
	background-color: rgb(255, 255, 255);
	border: 1px solid rgb(150, 150, 150);
	padding: .5rem;
	font-size: 1rem;
	height: 2rem;
	width: 100%;
	-moz-border-radius: 0em;
	-webkit-border-radius: 0em;
	border-radius: 0em;
	-webkit-appearance: none;
	
	-webkit-transition: background-colo .5s ease;
	-moz-transition: background-colo .5s ease;
	-ms-transition: background-colo .5s ease;
	-o-transition: background-colo .5s ease;
	transition: background-colo .5s ease;
}

.googleBt input:focus
{
	outline: 0;
	background-color: rgb(255, 255, 255);
	border: 1px solid rgb(50, 50, 50);
}

/*********************************************************************/
/****************************** Footer ********************************/
/*********************************************************************/

#footer
{
	font-size: 1rem;
	position: relative;
	z-index: 1001;

	padding: 4rem 4rem;

	width: 100%;
	box-sizing:border-box;
	background-color: #EBF0F5;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;
	
	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
}

#topic_path
{
	width: 100%;
	box-sizing: border-box;
	color: white;
	background-color: #004DA0;
	overflow: auto;
}

#topic_path::-webkit-scrollbar {
  display: none;
}

#topic_path >div
{
	box-sizing: border-box;
	padding: .5rem 4rem;
	white-space: nowrap;
}

#topic_path a
{
	display: inline-block;
	color:rgba(255, 255, 255, .8);
	text-decoration: none;
}

#topic_path a:last-child
{
	font-family: 'Roboto-M', 'GG-M', sans-serif;
	font-weight: 500;
	color:rgba(255, 255, 255, 1);
	margin-right: 4rem;
}

#topic_path span
{
	display: inline-block;
	position: relative;
	width: 1rem;
	height:1rem;
	margin: 0 1rem;
}
#topic_path span:before
{
	content:"";
	position:absolute;
	
	top: .45rem;
	width: calc(.5rem);
	height: calc(.5rem);
	border-style:solid;
	border-color: rgba(255, 255, 255, .8);
	border-width: 1px 1px 0 0;
	transform: rotate(45deg);
	transform-origin: 50% 50%;
}

#footer .logo
{
	width: 70px;
	display: block;
	position:relative;
	box-sizing:border-box;
	line-height:0;
	font-size: 0;
	text-decoration: none;
	text-indent: -9999px;
	
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 0% 0%;
}
#footer .logo:after
{
	content:"";
	display:block;
	position: relative;
	padding-top: 50%;
}
.svg #footer .logo{background-image: url(../_img/logo_w.svg)}
.no-svg #footer .logo{background-image: url(../_img/logo_w.png)}

#footer .links
{
	width: 100%;
}

#footer .boxlLnksWrapper
{
	position: relative;
	width: 100%;
	box-sizing:border-box;
	margin-bottom: 2rem;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	-webkit-align-items: stretch;
	align-items: stretch;
	
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#footer .boxlLnksWrapper > div
{
	position: relative;
	width: calc(50% - 1rem);
	box-sizing:border-box;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	-webkit-align-items: stretch;
	align-items: stretch;
	
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#footer .boxlLnksWrapper a.boxLink
{
	text-align: center;
	position: relative;
	background-color: #004DA0;
	color: #ffffff;
	font-size: .9em;
	font-family: 'Roboto-M', 'GG-M', sans-serif;
	font-weight: 500;
	
	padding: .25rem;
	width: calc(50% - 1.5rem);
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;
}

#footer .boxlLnksWrapper a.boxLink > p
{
	white-space: nowrap;
}

#footer .boxlLnksWrapper a.boxLink .contact, #footer .boxlLnksWrapper a.boxLink .support
{
	display: inline-block;
	width: 2rem;
	margin-right: 1em;
}
#footer .boxlLnksWrapper a.boxLink .contact:after, #footer .boxlLnksWrapper a.boxLink .support:after
{
	position: relative;
	content:"";
	display: block;
	padding-top: 60%;
}
.svg #footer .boxlLnksWrapper a.boxLink .contact{background-image: url(../_img/bt_contact.svg)}
.no-svg #footer .boxlLnksWrapper a.boxLink .contact{background-image: url(../_img/bt_contact.png)}

.svg #footer .boxlLnksWrapper a.boxLink .support{background-image: url(../_img/bt_support.svg)}
.no-svg #footer .boxlLnksWrapper a.boxLink .support{background-image: url(../_img/bt_support.png)}

#footer .boxlLnksWrapper a.boxLink .icon
{
	display: inline-block;
	font-size: .8em;
	color: #004DA0;
	background-color: #ffffff;
	padding: .3em .75em;
	line-height: 1;
	margin-right: 1em;
}

#footer .boxlLnksWrapper > div a
{
	display: block;
	position: relative;
	color: #004DA0;
	text-decoration: none;
	letter-spacing: .1em;
	margin-bottom: .5em;
}

#footer a > span, #footer .cssacc + .accshow + label span
{
	position: relative;
	display: inline-block;
}

#footer .accshow
{
	margin-top: .5em;
}

#footer .accshow a
{
	position: relative;
	display: block;
	text-decoration: none;
	font-size: .8em;
	white-space: nowrap;
	color: #004DA0;
}

#footer .accshow a:last-child
{
	margin-bottom: 1rem;
}

#footer .company_linksWrapper
{
	position: relative;
	width: 100%;
	box-sizing:border-box;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	-webkit-align-items: stretch;
	align-items: stretch;
	
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#footer .linksWrapperWrapper
{
	width: 100%;
	position: relative;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	-webkit-justify-content: space-between;
	justify-content: space-between;
	
/*	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;*/
}

#footer .company_info
{
	width: 100%;
	margin-right: 5rem; 
	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
	
}

#footer .logoWrapper
{
	position:relative;
	box-sizing:border-box;
	width: 100%;
	margin-bottom: 1rem;

	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	-webkit-align-items: flex-end;
	align-items: flex-end;
}

#footer .logo
{
	display: block;
	position: relative;
	width: 7rem;
	margin-right: 1rem;
	box-sizing:border-box;
	text-indent: -9999px;
	font-size: 0;
	
	background-size: contain;
	background-position: 0% 50%;
	background-repeat: no-repeat;
	
	-webkit-transition: width .2s ease;
	-moz-transition: width .2s ease;
	-ms-transition: width .2s ease;
	-o-transition: width .2s ease;
	transition: width .2s ease;
}
#footer .logo:after
{
	position: relative;
	content:"";
	display: block;
	padding-top: 35%;
	
	-webkit-transition: padding .2s ease;
	-moz-transition: padding .2s ease;
	-ms-transition: padding .2s ease;
	-o-transition: padding .2s ease;
	transition: padding .2s ease;
}

#footer .logoWrapper > div p
{
	font-family: 'Roboto-M', 'GG-M', sans-serif;
	font-weight: 500;
	line-height: 1;
}

.svg #footer .logo{background-image: url(../_img/logo.svg)}
.no-svg #footer .logo{background-image: url(../_img/logo.png)}


#footer .addWrapperWrapper
{
	position: relative;
	width: 100%;

	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
/*	-webkit-justify-content: space-between;
	justify-content: space-between;*/
}

#footer .addWrapperWrapper .addWrapper
{
	margin-left: 2rem;
}
#footer .addWrapperWrapper .addWrapper:first-child
{
	margin-left: 0rem;
}

#footer .addWrapper span
{
	display: block;
}

#footer .addWrapper .name
{
	font-size: 1em;
	font-family: 'Roboto-M', 'GG-M', sans-serif;
	font-weight: 500;
}

#footer .addWrapper .info
{
	margin-top: .5em;
	font-size: .8em;
}

#footer .addWrapper .info p
{
	white-space: nowrap;
}

#footer .addWrapper .info p.tokyo_logo
{
	position: relative;
	width: 10rem;
	margin-top: .5rem;
	background-size: cover;
}
#footer .addWrapper .info p.tokyo_logo:after
{
	content:"";
	display:block;
	position: relative;
	padding-top: 26%;
}
.svg #footer .addWrapper .info p.tokyo_logo{background-image: url(../_img/logo_weavers.svg);}
.no-svg #footer .addWrapper .info p.tokyo_logo{background-image: url(../_img/logo_weavers.png);}

#footer .secTitle
{
	margin: 0; 
}

#footer .linksWrapper{margin-left: 2rem;}
#footer .linksWrapper:first-child{margin-left: 0;}

#footer .accbox label, #footer .links.sub > p
{
	color: #004DA0;
	padding-right: 2em;
	font-family: 'Roboto-M', 'GG-M', sans-serif;
	font-weight: 500;
	white-space: nowrap;
	border-bottom: 1px solid;
}

#footer .accbox label
{
	display: none;
	border-style: solid;
	border-width: 1px 0 0 0;
}

.archives
{
	margin-top: 5rem;
}

.accbox
{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	-moz-flex-direction: column-reverse;
	-webkit-flex-direction: column-reverse;
	flex-direction: column-reverse;
}

.archives.accbox a
{
	text-decoration: none;
	display: block;
	position: relative;
	margin-bottom: 1em;
}

.archives.accbox a:last-child
{
	margin-bottom: 0em;
}

body:not(.touch) .archives.accbox a:hover
{
	color: #004DA0;
}

#footer .cssacc + .accshow + label:before
{
	content: "";
	display: block;
	position: absolute;
    width: 1em;
    height: 2px;
	top: calc(50% - 2px + .5em);
	right: 0;
	background-color: #004DA0;

	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
}

#footer .cssacc:checked + .accshow + label:before
{
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#footer .cssacc + .accshow + label:after
{
	content: "";
	display: block;
	position: absolute;
    width: 1em;
    height: 2px;
	top: calc(50% - 2px + .5em);
	right: 0;
	background-color: #004DA0;
	
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}

#footer .cssacc:checked + .accshow + label:after
{
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

.credit
{
	font-size: .7rem;
	position: relative;
	margin: 0 auto;
	text-align: center;
	width: 100%;
	max-width: 1440px;
	padding: 2rem 0;
	background-color: #004DA0;
	color: #ffffff;
}

/*****************************************************************
************************  Modal Window ***************************
*****************************************************************/

a.modalWindowBt
{
	cursor: pointer;
	display: block;
	margin: 1em 1em;
	background-color: white;
	color:#323232;
	font-size:1.1em;
	text-align: center;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}
a.modalWindowBt span{display: block; padding:1em; text-align: center;}

a.modalWindowBt:hover
{
	background-color: rgb(255, 233, 0);
	color:white;
}
div.modalWindow
{
/*	display: none;*/
}

#modalWindow
{
	position:fixed;
	left: 0;
	top: 0;
	
	box-sizing:border-box;
	padding: 2em;
	width:100%;
	height: 100vh;
	z-index: 9999;
	background-color: rgba(0, 0, 0, .3);
	
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
}

#modalWindow:after
{
	content: ""; 
	display: block;
	position: absolute;
	z-index: 9000;
	width: 2.5rem;
	height: 2.5rem;
	box-sizing:border-box;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	border: 2px solid rgb(255, 255, 255);
	border-right-color: transparent;
	
	top: 50%;
	left: 50%;
	margin-top:-1.25rem;
	margin-left:-1.25rem; 

	animation: circle-spin 1s linear infinite; /*1秒毎にくるくる回転するアニメーション*/
}

#modalWindow.loaded:after
{
	display: none;
}

#modalWindow .modalBg
{
	position: fixed;
	width: 100%;
	height: 100%;
}

#modalWindow .contents_area
{
	position:relative;
	box-sizing:border-box;
	max-width:900px;
	padding: 5em;
	margin: 3em auto;
/*	word-wrap: break-word;*/
	background-color: rgb(255, 255, 255);
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
	
	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;
	
	top: 5em;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	
/*	transform-origin: center center;
	transform: scale(0, 0); fixed が効かなくなる*/
	
	-webkit-transition: all .5s ease;
	-moz-transition: all .5s ease;
	-ms-transition: all .5s ease;
	-o-transition: all .5s ease;
	transition: all .5s ease;
}

#modalWindow.loaded .contents_area
{
/*	transform: scale(1, 1);*/
	top: 0em;
	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}

#modalWindow img
{
	max-width:100%;
	height: auto;
}

#modalWindow .text h1
{
	font-family: 'Roboto-M', 'GG-M', sans-serif;
	font-weight: 500;
	font-size: 1.3em;
	margin-bottom: 1em;
}

#modalWindow .text p
{
	margin-bottom: 1em;
}

#modalWindow .closeBtWrapper
{
	width: 2em;
	height: 2em;
	position: absolute;
	top: 1rem;
	right: 1rem;
}

#modalWindow .closeBtWrapper .closeBt
{
	position: fixed;
	cursor:pointer; 
	text-indent: -9999px;
	width:3em;
	height: 3em;
}
#modalWindow .closeBtWrapper .closeBt:before
{
	content: "";
	display: block;
	position: absolute;
	width: 2em;
	height: 2px;
	top: 1.5em;
	right: 1em;
	background-color: #323232;

	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	
	-webkit-transition:all .3s ease;
	-moz-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-o-transition:all .3s ease;
	transition:all .3s ease;
}
#modalWindow .closeBtWrapper .closeBt:after
{
	content: "";
	display: block;
	position: absolute;
	width: 2em;
	height: 2px;
	top: 1.5em;
	right: 1em;
	background-color: #323232;
	
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	
	-webkit-transition:all .3s ease;
	-moz-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-o-transition:all .3s ease;
	transition:all .3s ease;
}


/*//////////////////////////////////////////////////////////////////////////////////
///////////////////////////////// MEDIA SCREEN /////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////*/


@media screen and (max-width: 1300px)
{
	#footer .company_linksWrapper
	{
		-moz-flex-direction: column-reverse;
		-webkit-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}
	#footer .addWrapperWrapper, #footer .linksWrapperWrapper
	 {
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}
	#footer .linksWrapperWrapper
	{
		margin-bottom: 3rem;
	}
	
	#footer .boxlLnksWrapper
	{
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	#footer .boxlLnksWrapper > div
	{
		width: 100%;
	}
}

@media screen and (max-width: 1200px)
{
	#selector .selector ul
	{
		border-width: 0;
	}
}

@media screen and (min-width: 1101px)
{
	#selector .searchArea
	{
		width: 15rem;
	}
}

@media screen and (max-width: 1100px)
{
	.selector li a span
	{
		display: block;
		text-align: center;
	}
	
	#selector .searchArea
	{
		width: 10rem;
	}
}

@media screen and (min-width: 901px)
{
	#menuList{display: none;}
	
	#footer .accbox .accshow
	{
		opacity: 1;
		height: auto;
	}

}

@media screen and (max-width: 900px)
{
	.selector li:last-child{padding-right: 2rem;}
	.sc #selector, .hamburger #selector{padding-bottom: 0em;}
	
	#selector .selector .lang .menu .twitter
	{
		display: none;
	}
	
	#selector .googleBt
	{
		display: none;
	}
	
	#menuList a > span
	{
		position: relative;
		display: inline-block;
	}
	
	.selectorSubBts
	{
		padding: 1em 2em 0 2em;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}
	
	#selector
	{
		border-top-width: 0px;
		flex-direction: row-reverse;
	}
	#selector .wrapper
	{
		-webkit-align-items: center;
		align-items: center;
	}
	#selector a.afg{margin-left: 1rem;}
	#selector #selectorBts{display:none;}
	#selectorSubBts{display: none;}
	
	#selector .selector .lang
	{
		margin-left: 2rem;
		margin-right: 0;
	}

	#selector .selector
	{
		margin-top: 0;
	}

	.btWrapper{display: none;}

	#menuBt
	{
		display: block;
		width: 2rem;
		height:  1.5rem;
	}
	.sc #menuBt, .hamburger #menuBt
	{
	}
	
	#menuBt span
	{
		width: 2rem;
	}
	#menuBt .top
	{
		transform: translateY(0px);
	}
	#menuBt .middle
	{
		transform: translateY(.75rem);
	}
	#menuBt .bottom
	 {
		 transform: translateY(1.5rem);
	}

	#menuList
	{
		color: #323232;
		position:fixed; 
		box-sizing:border-box;
		top: 0em;
		width:100%;
		height:100vh;
		z-index: 9800;
		background-color: #004DA0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
	
	.linksWrapper .menuBt
	{
		font-family: Roboto-M, GG-M, sans-serif;
		font-weight: 500;
	}
	
	.linksWrapper .links a{color: rgb(255, 255, 255);}
	.linksWrapper .links.menu a
	{
		text-decoration: none;
		display: block;
		font-size: 1rem;
	}
	
	.linksWrapper .links a br{display: none;}
	.linksWrapper .links.menu
	{
		width: 100%;
		padding-right: 0em;
		padding-top: 2em;
		padding-bottom: 1em;
		display: block;
		border-bottom: 1px solid rgba(255, 255, 255, .2);
	}
	.linksWrapper .links:last-child{border-bottom-width:0;}
	.linksWrapper .links.menu .linkParent{position: relative;}
	.linksWrapper .links.menu .opBt
	{
		display: block;
		position: relative;
		cursor: pointer;
		width: 100%;
		height:100%;
		top: 0;
		left: 0;
	}
	.linksWrapper .links.menu .opBt:after
	{
		content: "";
		position: absolute;
		width: .8rem;
		height: 2px;
		background-color: rgb(244, 232, 0);
		top: 50%;
		right: .5px;
		margin-top: -.15rem;
		-webkit-transition: all .2s ease;
		-moz-transition: all .2s ease;
		-ms-transition: all .2s ease;
		-o-transition: all .2s ease;
		transition: all .2s ease;
	}
	.linksWrapper .links.menu .opBt._op:after
	{
		transform: rotate( 45deg );
		-ms-transform: rotate( 45deg );
	}
	
	.linksWrapper .links.menu .opBt:before
	{
		content: "";
		position: absolute;
		width: 2px;
		height: .8rem;
		background-color: rgb(244, 232, 0);
		right: .35rem;
		top: 50%;
		margin-top: -.5rem;
		-webkit-transition: all .2s ease;
		-moz-transition: all .2s ease;
		-ms-transition: all .2s ease;
		-o-transition: all .2s ease;
		transition: all .2s ease;
	}
	.linksWrapper .links.menu .opBt._op:before
	{
		transform: rotate( 45deg );
		-ms-transform: rotate( 45deg );
	}
	
	.linksWrapper .links.menu .wrapper
	{
		height: 0;
		position: relative;
		overflow: hidden;
	}
	
	.linksWrapper .links.menu .wrapper div
	{
		margin-top: 0;
		padding-bottom: .5rem;
	}
	
	.linksWrapper .links.menu .wrapper
	{
		-webkit-transition: all .2s ease;
		-moz-transition: all .2s ease;
		-ms-transition: all .2s ease;
		-o-transition: all .2s ease;
		transition: all .2s ease;
	}

	.linksWrapper a.subBt
	{
		padding-left: 2em; font-size: .9em; position: relative;
		color: rgba(255, 255, 255, .8);
	}
	.linksWrapper a.subBt:before
	{
		content:"";
		display: block;
		position: absolute;
		width: 1em;
		height: 1px;
		top: 50%;
		left: 0;
	
		transform: scale(.5,1);
		transform-origin: left center;
		background-color: rgb(244, 232, 0);
	
		-webkit-transition: transform .1s ease;
		-moz-transition: transform .1s ease;
		-ms-transition: transform .1s ease;
		-o-transition: transform .1s ease;
		transition: transform .1s ease;
	}
	body:not(.touch) .linksWrapper a.subBt:hover:before
	{
		transform: scale(1,1);
	}

	.linksWrapper .links.menu a{margin-bottom: .5em;}
	
	.linksWrapper .otherLinks
	{
		font-size: 1.5em;
		margin-top: 2em;
		display:-webkit-box;
		display:-moz-box;
		display:-ms-box;
		display:-webkit-flexbox;
		display:-moz-flexbox;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:-moz-flex;
		display:-ms-flex;
		display:flex;
	
		-webkit-align-items: center;
		align-items: center;
		
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}
	
	.otherLinks .links{margin-right: 1em;}
	
	#footer .linksWrapperWrapper
	{
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	#footer .accbox label, #footer .links.sub > p
	{
		padding-top: .5rem;
	}
	
	#footer .accbox label
	{
		display: block;
	}
	
	#footer .linksWrapper
	{
		margin-left: 0;
	}
	
	#footer .linksWrapper .links.sub > p
	{
		display: none;
	}
	
	#footer .addWrapperWrapper .addWrapper
	{
		margin-top: 1rem;
		padding-bottom: 1rem;
		border-bottom: 1px solid rgba(0, 0, 0, .2);
	}
	#footer .addWrapperWrapper .addWrapper:last-child
	{
		padding-bottom: 0;
		border-bottom: 0px solid rgba(0, 0, 0, .2);
	}
	
	#footer .boxlLnksWrapper > div
	{
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	#footer .boxlLnksWrapper a.boxLink
	{
		width: 100%;
	}
	#footer .addWrapperWrapper
	{
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	#footer .addWrapperWrapper .addWrapper
	{
		margin-left: 0;
	}
	#footer .addWrapper .info p
	{
		white-space: normal;
	}
	#footer .addWrapper span
	{
		display: inline-block;
	}
	#footer .linksWrapper:last-child
	{
		border-bottom: 1px solid #004DA0;
	}
}

@media screen and (max-width: 650px)
{
	body
	{
		font-size: 14px; 
		line-height:1.75;
	}
	
	#selector .logo_bt
	{
		padding: .5rem 1rem
	}
	
	#selector .logoWrapper > div p
	{
		font-size: .6rem;
	}
	
	#selector .logo
	{
		width: 8rem;
	}
	
	.sc #selector .logo
	{
		width: 7rem;
	}
	
	#menuList
	{
		padding: 5rem 1.5rem 8rem 1.5rem;
	}
	
	#footer
	{
		padding: 4rem 2rem;
	}
	
	#topic_path >div
	{
		padding: .5rem 2rem;
	}
	
	#topic_path a:last-child
	{
		margin-right: 2rem;
	}
	
	.credit span
	{
		display: block;
		text-align: center;
	}
}

@media screen and (max-width: 350px)
{
	#footer .boxlLnksWrapper a.boxLink
	{
		font-size:.75em;
	}
}