﻿@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,600,700');

/* ===================================
	File Name   : common.css
	Description : Base Layout CSS
	
	Update Description :
	[2018/4/16] 新規作成

====================================== */

/*========== Style Contents ==========

	1. Global Redefinition
	2. Font Redefinition
	3. Box Setting
	4. Form Setting
	5. Common Items Setting
		- Basic Link
	 	- Header Items
		- Header Action
		- Global Navigation
		- Inner Right Navigation
	 	- Footer Items
		- Breadcrumbs
		- Page Top Button
		- Title Items
		- Sub Menu
		− Clear Fix

====================================== */



/*===== ■1. Global Redefinition =====*/
body {
	color: #333;
	line-height: 1.5;
	margin: 0px auto;
}

body::before {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/img/common/bg-dotted.png);
    z-index: -100;
	opacity: .35;
	content:'';
}

article img,
#article img { width: 100%;}

article img.origin,
#article img.origin { width: auto;}
#article img.origin2 { width: auto;}

@media only screen and (max-width: 750px){
	article img.origin,
	#article img.origin { width: 100%;}
}

#fixed-container {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: -101;
}

#fixed-container img {
	position: absolute;
}

/* 縦長 */
@media (max-aspect-ratio: 16/9) {
	#fixed-container img {
		height: 100%;
		left: 50%;
		transform: translateX(-50%);
	}
}

/* 横長 */
@media (aspect-ratio: 16/9), (min-aspect-ratio: 16/9) {
	#fixed-container img {
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	}
}

@media only screen and (max-width: 750px) {
		#fixed-container img {
			width: 750px;
			height: auto !important;
		}
}



/*===== ■2. Font Redefinition =====*/
@font-face {
  font-family: 'icon';
  src:  url('/css/fonts/sanyo.eot?izjl9a');
  src:  url('/css/fonts/sanyo.eot?izjl9a#iefix') format('embedded-opentype'),
    url('/css/fonts/sanyo.ttf?izjl9a') format('truetype'),
    url('/css/fonts/sanyo.woff?izjl9a') format('woff'),
    url('/css/fonts/sanyo.svg?izjl9a#sanyo') format('svg');
  font-weight: normal;
  font-style: normal;
}

i, cite, em, var, address, dfn {
    font-style: italic;
}

[class^="ico-"], [class*=" ico-"] {
	width: 0;
	height: 0;
	text-indent: -9999px;
  font-family: 'icon' !important;
  speak: none;
  color: rgba(99,98,98,1);
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico-blank:before { content: "\e900";}
.ico-lang:before { content: "\e901";}
.ico-search:before { content: "\e902";}

.entry-title:after{
    content: '\e901';
    display: inline-block;
    font-family: FontAwesome;
    font-weight: normal;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html { font-size: 62.5%;}

body {
	font-size: 1.6em;
	font-family: Arial,sans-serif;
}

::-webkit-input-placeholder { color: #999;}
::-moz-placeholder { color: #999;}
:-ms-input-placeholder { color: #999;}
:placeholder-shown { color: #999;}


@media only screen and (max-width: 750px){
	html { font-size: calc(100vw / 75);}
	body { font-size: 1.4rem;}
}
@media only screen and (max-width: 640px){
	html { font-size: calc(100vw / 64);}
}
@media only screen and (max-width: 480px){
	html { font-size: calc(100vw / 48);}
}
@media only screen and (max-width: 375px){
	html { font-size: calc(100vw / 37.5);}
}



/*===== ■3. Box Setting =====*/
main {
	display: block;
	position: relative;
	z-index: 2;
	margin: 0 auto;
/*	margin: 70px auto 0;  ヘッダーFix分*/
}

article,
#article {
	display: block;
	position: relative;
	padding: 30px 0;
	background:
		linear-gradient(315deg, #fff 0, #fff 0) no-repeat top left / 51% 51%,
		linear-gradient(225deg, transparent 84px, #fff 0) no-repeat top right / 51% 51%,
		linear-gradient(45deg, #fff 0, #fff 0) no-repeat bottom left / 51% 51%,
		linear-gradient(135deg, #fff 0, #fff 0) no-repeat bottom right / 51% 51%;
	transform: translateX(-100px);
	min-height: calc(100vh - 550px);
}

body#lower #article {
	background: #fff;
	transform: translateX(0);
	min-height: calc(100vh - 260px);
}

#main_wrapper {
	margin-bottom: 30px;
	transform: translateX(100px);
}
body#lower #main_wrapper { transform: translateX(0);}

#wrapper_column {
	display: flex;
	width: calc(100% - 130px);
	margin: 0 0 40px 30px;
}
body#lower #wrapper_column {
	width: 100%;
	margin: 0 0 30px;
}

#column_left {
	min-width: 60%;
	flex: 1;
	margin: 0 30px;
}

#column_right {
	width: 25%;
	min-width: 220px;
	padding: 0 20px;
}

#main_wrapper section,
#main_wrapper aside { position: relative;}

#main_wrapper .wrapper { margin: 0 20px;}


@media only screen and (max-width: 750px){
	main { margin: 60px auto 0;}
	
	article,
	#article {
		padding: 25px 0;
		background: #fff;
		transform: none;
		min-height: inherit;
	}
body#lower #article,
body#lower article {
	min-height: inherit;
	}

	#main_wrapper {
		margin-bottom: 0;
		transform: none;
	}
	
	#wrapper_column {
		flex-direction: column;
		width: auto;
		margin: 0 10px 10px;
	}
	
	#column_left {
		flex: auto;
		order: 2;
		margin: 0 10px;
	}
	#column_right {
		display: none;
		flex: auto;
		order: 1;
		margin: 0 0 20px;
	}
	
	#main_wrapper .wrapper { margin: 0 5px;}
}


/*===== ■4. Form Setting =====*/
/* Form Items */
label {
  position: relative;
  display: inline-block;
  word-break: break-all;
}

input[type="text"],
input[type="tel"],
input[type="number"],
input[type="email"],
input[type="date"]{
	width: 100%;
	margin: 0;
	padding: 5px 90px 5px 10px;
	height: 30px;
	border-radius: 3px;
	border: 1px solid #ebebeb;
	font-size: 1.4rem;
	box-sizing: border-box;
}

input[type="checkbox"],
input[type="radio"] {
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

input[type="checkbox"],
input[type="radio"] {
	display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

input[type="checkbox"] + span,
input[type="radio"] + span { padding-left: 24px;}


input[type="checkbox"] + span::before,
input[type="checkbox"] + span::after,
input[type="radio"] + span::before,
input[type="radio"] + span::after {
  display: inline-block;
  position: absolute;
  top: 1px;
  left: 0;
  box-sizing: border-box;
  content: '';
}
input[type="checkbox"] + span::before {
  z-index: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  background-color: #fff;
}
input[type="checkbox"] + span::after {
	z-index: 1;
	width: 8px;
	height: 12px;
	margin: 2px 6px;
}

input[type="checkbox"]:checked + span::before {
  border: 1px solid #636262;
	background: #fff;
}
input[type="checkbox"]:checked + span::after {
	border: 1px solid #636262;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

input[type="radio"] + span::before {
  z-index: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  border-radius: 50%;
  background-color: #fff;
}
input[type="radio"] + span::after {
	z-index: 1;
	width: 12px;
	height: 12px;
	margin: 4px 0 0 4px;
	border-radius: 50%;
}
input[type="radio"]:checked + span::before { border: 1px solid #636262;}
input[type="radio"]:checked + span::after { background: #636262;}

select {
  position: relative;
  z-index: 1;
	width: 100%;
  height: 35px;
  margin: 0;
  padding: 0 40px 0 10px;
  border: 1px solid #ccc;
	border-radius: 3px;
	font-size: 1.4rem;
	background: linear-gradient(#fff 0%, #ddd 100%);
	-webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
select::-ms-expand { display: none;}

.select_wrap {
  display: block;
  position: relative;
}
.select_wrap::before {
  position: absolute;
  z-index: 2;
  top: 1px;
  right: 1px;
	border-radius: 0 3px 3px 0;
	background: #333;
	height: calc(100% - 2px);
  width: 18px;
	pointer-events: none;
  content: '';
}
.select_wrap::after {
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  right: 7px;
  width: 6px;
  height: 6px;
  margin: 12px 0 0;
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
	pointer-events: none;
	transform: rotate(45deg);
  content: '';
}

textarea {
	width: 100%;
	margin: 0;
	padding: 10px;
	height: 100px;
	box-sizing: border-box;
	border-radius: 3px;
	border: 1px solid #ebebeb;
	font-size: 1.6rem;
}


@media only screen and (max-width: 750px){
	input[type="text"],
	input[type="tel"],
	input[type="number"],
	input[type="email"],
	input[type="date"],
	textarea { font-size: 1.4rem;}
}


/*===== ■5. Common Items Setting =====*/
/* Basic Link */
a {
	color: rgba(99,98,98,1);
	text-decoration: none;
	backface-visibility: hidden;
}

#main_wrapper a:not(.button) { text-decoration: none;}

a:visited {
	color: rgba(99,98,98,1);
	text-decoration: underline;
}
a.white:visited {
	color: #fff;
}

a:hover {
	color: #999;
	text-decoration: underline;
}

a[target="_blank"]:not(.img)::after {
	margin-left: 5px;
	font-family: 'icon';
	content: "\e900";
}

a[target="_blank"][href$=".pdf"]::after,
a[target="_blank"][href$=".zip"]::after,
a[target="_blank"][href$=".txt"]::after,
a[target="_blank"][href$=".doc"]::after,
a[target="_blank"][href$=".xls"]::after,
a[target="_blank"][href$=".xlsx"]::after {
	display: inline-block;
	position: relative;
	top: 1px;
	width: 16px;
	height: 14px;
	content:'';
}
a[target="_blank"][href$=".pdf"]::after { background: url(/img/common/ico-pdf.png) no-repeat right center / 16px auto;}
a[target="_blank"][href$=".zip"]::after { background: url(/img/common/ico-zip.png) no-repeat right center / 16px auto;}
a[target="_blank"][href$=".txt"]::after { background: url(/img/common/ico-txt.png) no-repeat right center / 16px auto;}
a[target="_blank"][href$=".doc"]::after { background: url(/img/common/ico-word.png) no-repeat right center / 16px auto;}
a[target="_blank"][href$=".xls"]::after,
a[target="_blank"][href$=".xlsx"]::after { background: url(/img/common/ico-excel.png) no-repeat right center / 16px auto;}


a.button {
	display: block;
	position: relative;
	width: 100%;
//	max-width: 500px;
	min-width: 250px;
	margin: 0 auto;
	padding: 15px 40px;
	box-sizing: border-box;
	border: 2px solid #636262;
	background: #636262;
	color: #fff;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: .05em;
	text-align: center;
	transition: all .2s ease-out;
}
a.button.next {
	min-width: unset;
	padding: 5px;
	border: 1px solid #636262;
	background: #fff;
	color: #636262;
}
a.button.next::after {
    position: absolute;
    top: 30%;
    left: 50%;
    border: 10px solid transparent;
    border-top: 12px solid #636262;
    content: '';
}
a.button.next:hover {
	background: #fff;
	color: #636262;
	text-decoration: none;
	transition: all .2s ease-out;
	opacity: 0.5;
}
a.button.white {
	border: 2px solid #fff;
	background: none;
}
a.button:hover {
	background: #fff;
	color: #636262;
	text-decoration: none;
	transition: all .2s ease-out;
}
a.button.red {
	border: 2px solid #c00;
	background: #c00;
}
a.button.red:hover {
	background: #fff;
	color: #c00;
	text-decoration: none;
	transition: all .2s ease-out;
}
a.button.red:hover i.arrow,
a.button.red:hover i.arrow::after { background: #c00;}


a.button i.arrow {
	position: absolute;
	top: 50%;
	right: 10px;
	width: 30px;
	height: 1px;
	background: #fff;
	transition: all .2s ease-out;
}
a.button i.arrow::after {
	position: absolute;
	top: -5px;
	right: 0;
	width: 10px;
	height: 2px;
	background: #fff;
	content:'';
	transform: skewX(50deg) rotate(-80deg);
}

a.button:hover i.arrow {
	right: 20px;
	width: 20px;
	background: #636262;
	transition: all .2s ease-out;
}
a.button:hover i.arrow::after { background:#636262;}

a.button:active i.arrow {
	right: 0px;
	width: 40px;
	opacity: 0;
}
a.button:active i.arrow::after {
	right: -10px;
	opacity: 0;
	transition: all .1s ease-out;
}

a:not(.button) {
	opacity: 1;
	transition: all .2s ease-out;
	text-decoration: none;
}
a:not(.button):hover {
	opacity: .6;
	text-decoration: none;
	transition: all .2s ease-out;
}

a.button.disabled {
	opacity: .6;
	pointer-events: none;
}

a.disabl {
	pointer-events: none;
}
a.button.limited {
	width: 80%;
	max-width: 640px;
}

.hamb {
	position: relative;
	width: 40px;
	height: 40px;
	border: 1px solid rgba(99,98,98,1);
}

.hamb span {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 50%;
	height: 2px;
	margin-top: -2px;
	background: rgba(99,98,98,1);
	transform: translate(-50%);
}
.hamb span::before,
.hamb span::after {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: rgba(99,98,98,1);
	transition: all .2s;
	content: '';
}
.hamb span::before { margin-top: -8px;}
.hamb span::after { margin-top: 8px;}

.hamb:hover span::before { margin-top: -6px;}
.hamb:hover span::after { margin-top: 6px;}

.hamb:active span {
	opacity: .6;
	backface-visibility: hidden;
}


@media only screen and (max-width: 750px){
	a:hover {
		color: inherit;
		text-decoration: inherit;
	}
	
	a.button { padding: 15px 30px;}
	
	a.button:hover {
		background: #636262;
		color: #fff;
		text-decoration: none;
		transition: none;
	}

	a.button i.arrow { transition: none;}

	a.button:hover i.arrow {
		right: 10px;
		width: 30px;
		background: #fff;
		transition: none;
	}
	a.button:hover i.arrow::after { background: #fff;}

	a.button:active i.arrow {
		right: 10px;
		width: 30px;
		opacity: 1;
	}
	a.button:active i.arrow::after {
		right: 0;
		opacity: 1;
		transition: none;
	}

	a:not(.button):hover {
		opacity: 1;
		text-decoration: inherit;
		transition: none;
	}
	
}



/* Header Items */
body > header {
	position: relative;
	display: flex;
	top: 0;
	z-index: 10;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 70px;
	padding: 0 20px;
	background: #fff;
}

body > header h1 img:first-child, 
body > header .com_logo img:first-child {
	height: 32px;
	margin-right: 10px;
}
body > header h1 img:first-child + img, 
body > header .com_logo img:first-child + img { height: 18px;}

body > header > ul { display: flex;}

body > header > ul > li:not(:last-child) { border-left: 1px dotted rgba(99,98,98,1);}

body > header > ul > li#head_switch {
	display: flex;
	align-items: center;
	margin-right: 10px;
	border: none;
}
body > header > ul > li#head_switch select {
	padding: 0 20px 0 10px;
	border: 1px solid #ebebeb;
	background: #fff;
	font-size: 1.2rem;
}
body > header > ul > li#head_switch .select_wrap::before {
	background: #fff;
	width: 10px;
}
body > header > ul > li#head_switch .select_wrap::after {
	border-bottom: 1px solid #636262;
	border-right: 1px solid #636262;
}

body > header > ul > li > a {
	display: block;
	height: 36px;
	padding: 2px 15px;
	font-size: 34px;
	line-height: 1.2;
	text-decoration: none !important;
}
body > header > ul > li > a:hover,
html.search_on a.active {
	position: relative;
	background: rgba(99,98,98,1);
	color: #fff;
	opacity: 1 !important;
}
body > header > ul > li > a:hover i,
body > header > ul > li > a.active i { color: #fff;}

body > header > ul > li .hamb {
	display: none;
	margin-left: 15px;
}

body > header > ul #search_wrap,
body > header > ul #lang_wrap { display: none;}

button.lang_close,
button.nav_close {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	width: 65px;
	height: 65px;
	border: none;
	background: rgba(99,98,98,1);
	font-size: 0;
	line-height: 0;
	text-indent: -9999px;
	transition: all .1s ease-out;
}
button.nav_close { display: none;}
button.lang_close:hover,
button.nav_close:hover { background: rgba(99,98,98,.5);}
button.lang_close::before,
button.nav_close::before,
button.lang_close::after,
button.nav_close::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 2px;
	background: #fff;
	content:'';
}
button.lang_close::before,
button.nav_close::before { transform: translate(-50%) rotate(-45deg);}
button.lang_close::after,
button.nav_close::after { transform: translate(-50%) rotate(45deg);}


@media only screen and (max-width: 750px){
	body > header {
		position: fixed;
		z-index: 10;
		height: 60px;
		padding: 10px;
	}
	
	body > header > ul > li#head_switch { display: none;}
	
	body > header > ul > li:last-child { border-left: 1px dotted rgba(99,98,98,1);}

	body > header > ul > li > a { padding: 2px 10px;}
		
	body > header > ul > li > a:hover {
		background: inherit;
		color: inherit;
	}
	body > header > ul > li > a:hover i { color: inherit;}
	
	body > header > ul > li .hamb { display: block;}
	
	button.lang_close,
	button.nav_close {
		position: fixed;
		width: 50px;
		height: 50px;
		transition: none;
	}
	button.nav_close { display: block;}
	button.lang_close:hover,
	button.nav_close:hover { background: rgba(99,98,98,1);}
	button.lang_close::before,
	button.nav_close::before,
	button.lang_close::after,
	button.nav_close::after {
		width: 40px;
	}
}

/* ロゴ部の為、ブレイクポイント例外 */
@media only screen and (max-width: 640px){
	body > header#header {
		padding: 0px 10px;
	}
	body > header#header h1, 
	body > header#header .com_logo {
		line-height: 1;
		width: 44%;
		max-width: 750px;
	}
	body > header#header h1 img:first-child, 
	body > header#header .com_logo img:first-child {
		margin: 0 0 5px;
	}
	body > header#header h1 img:first-child + span, 
	body > header#header .com_logo img:first-child + span {
		width: 100%;
		font-size: 1.4rem;
		height: auto;
	}
}
@media only screen and (max-width: 480px){
	body > header h1, 
	body > header .com_logo {
		line-height: 0;
		width: 44%;
		max-width: 750px;
	}
	body > header#header h1, 
	body > header#header .com_logo {
		line-height: 1;
	}
	body > header h1 img:first-child, 
	body > header .com_logo img:first-child {
		width: 100%;
		height: auto;
		margin: 0 0 5px;
	}
	body > header h1 img:first-child + img, 
	body > header .com_logo img:first-child + img {
		width: 29.09%;
		height: auto;
	}
	body > header#header h1 img:first-child + span, 
	body > header#header .com_logo img:first-child + span {
		width: 100%;
		font-size: 1.0rem;
		height: auto;
	}
}


/* Header Action */
/* Search */
#search_wrap {
	position: absolute;
	top: 70px;
	left: 20px;
	z-index: 99;
	width: calc(100% - 40px);
	padding: 20px;
	box-sizing: border-box;
	border-radius: 5px;
	background: rgba(99,98,98,.95);
}
#head_search > a.active::after {
	position: absolute;
	left: 50%;
	bottom: -20px;
	width: 0;
	height: 0;
	border: 15px solid transparent;
	border-bottom: 15px solid rgba(99,98,98,.95);
	transform: translateX(-50%);
	opacity: 0;
  animation-duration: .5s;
	animation-fill-mode: forwards;
	animation-name: search-on;
	content: '';
}

#search_wrap > div { display: flex;}

#search_wrap dl {
	flex: 3 0 auto;
	margin-right: 20px;
	text-align: center;
}

#search_wrap dt {
	display: inline-block;
	position: relative;
	margin-bottom: 10px;
	padding: 0 50px;
	color: #fff;
	line-height: 1;
}
#search_wrap dt::before,
#search_wrap dt::after {
	position: absolute;
	top: 50%;
	width: 40px;
	height: 1px;
	background:#fff;
	content: '';
}
#search_wrap dt::before { left: 0;}
#search_wrap dt::after { right: 0;}

#search_wrap dd { position: relative;}

#search_wrap dd button {
	position: absolute;
	top: 1px;
	right: 1px;
	width: 80px;
	height: 28px;
	border-radius: 3px;
	background: #333;
	color: #fff;
	font-weight: bold;
	text-align: center;
	cursor: pointer;
}
#search_wrap dd button:hover { background: #636262;}

#search_wrap div > span {
	flex: 1 0 auto;
	padding: 10px 0 10px 20px;
	border-left: 1px solid #333;
}
#search_wrap > span a { max-width: none;}

html.search_on #search_wrap { display: block;}

html.search_on #search_wrap {
	opacity: 0;
	animation-duration: .5s;
	animation-fill-mode: forwards;
	animation-name: search-on;
}

@keyframes search-on {
  100% { opacity: 1;}
}


@media only screen and (max-width: 750px){
	#search_wrap {
		flex-direction: column;
		position: fixed;
		top: 60px;
		left: 0;
		z-index: 99;
		width: 100%;
		height: calc(100vh - 60px);
		padding: 0;
		border-radius: 0;
		background: rgba(235,235,235,.95);
	}

	#head_search > a.active::after { display: none;}
	
	#search_wrap > div {
		flex-direction: column;
		padding: 20px;
		background: rgba(99,98,98,.8);
	}
	
	#search_wrap dl {
		margin: 0 0 20px;
	}
	#search_wrap dl:last-of-type {
		padding-bottom: 20px;
		border-bottom: 1px solid #333;
	}
	
	#search_wrap dt {
		padding: 0 30px;
	}
	#search_wrap dt::before,
	#search_wrap dt::after {
		position: absolute;
		width: 20px;
	}

	#search_wrap dd button:hover { background: inherit;}
	
	#search_wrap div > span {
		margin: 0 auto;
		padding: 0;
		border-left: 0;
	}
	#search_wrap > span a { max-width: none;}

	html.search_on,
	html.search_on body { overflow: hidden;}
}


/* Languages */
#lang_wrap {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 100;
	overflow-y: scroll;
}

#lang_wrap #switch_sp { display: none;}

#lang_wrap > div {
	display: flex;
	width: 100vw;
	min-height: 100vh;
	padding-right: calc(100vw - 100%);
}

#lang_wrap > div > div {
	flex: 1;
	opacity: 1;
	transform: translateY(0);
}

#lang_wrap > div > div:nth-child(odd) { background: #f1f1f1;}
#lang_wrap > div > div:nth-child(even) { background: #ebebeb;}

#lang_wrap > div .h3 {
	display: block;
	position: relative;
	font-size: 5.0rem;
	font-family: 'Open Sans', sans-serif;
	margin-bottom: 30px;
	padding: 30px 10px 20px;
	text-align: center;
	white-space: nowrap;
}

div#lang_usa .h3 {
	font-size: 3.5rem;
	font-weight: bold;
	padding: 10px 10px 14px;
}

#lang_wrap > div .h3::before {
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 50px;
	height: 2px;
	background: #333;
	transform: translateX(-50%);
	content: '';
}

#lang_wrap > div a:hover { color: rgba(99,98,98,1);}

#lang_wrap > div div ul {
	background: rgba(99,98,98,.1);
/*	list-style-image: url(data:0);*/
	font-size: 0;
}

#lang_wrap > div div li { margin-bottom: 1px;}

#lang_wrap > div div ul a {
	display: flex;
	align-items: center;
	position: relative;
	min-height: 50px;
	padding: 15px 15px 15px 20px;
	box-sizing: border-box;
	background: rgba(99,98,98,.15);
	font-weight: bold;
	font-size: 1.4rem;
	line-height: 1.2;
}
#lang_wrap > div div ul a::before {
	position: absolute;
	top: 50%;
	left: 10px;
	border: 6px solid transparent;
	border-left: 6px solid rgba(99,98,98,1);
	transform: translateY(-50%);
	content: '';
}

#lang_wrap > div div ul a span {
	width: 30px;
	margin-right: 5px;
	line-height: 0;
}
#lang_wrap > div div ul a span img { width: 100%;}


html.lang_on { overflow: hidden;}
html.lang_on #lang_wrap { display: block; overflow-x: hidden;}

html.lang_on #lang_wrap > div > div {
	min-height: 100vh;
	opacity: 0;
  animation-duration: .5s;
	animation-fill-mode: forwards;
	animation-name: lang-on;
}

#lang_wrap > div > div:nth-child(odd) { transform: translateY(-50%);}
#lang_wrap > div > div:nth-child(even) { transform: translateY(50%);}

@keyframes lang-on {
  100% {
		opacity: 1;
		transform: translateY(0);
  }
}

@keyframes lang-on-sp {
	100% {
		opacity: 1;
		transform: translate(0);
	}
}


@media only screen and (max-width: 750px){
	#lang_wrap #switch_sp {
		display: block;
		position: relative;
		margin-right: 10px
	}

	#lang_wrap > div {
		flex-direction: column;
		padding-top: 60px;
		background: rgba(235,235,235,.95);
	}
	
	#lang_wrap > div > div {
		flex: none;
		min-height: 0;
		padding-left: 4%;
	}
	
	#lang_wrap > div > div:nth-child(odd),
	#lang_wrap > div > div:nth-child(even) { background: none;}
	
	#lang_wrap > div .h3 {
		margin: 0;
		padding: 20px 10px;
		border-bottom: 1px solid #636262;
		color: #636262;
		font-size: 1.6rem;
		text-align: left;
		white-space: inherit;
	}

	#lang_wrap > div .h3::before,
	#lang_wrap > div .h3::after {
		position: absolute;
		left: inherit;
		bottom: inherit;
		top: 50%;
		right: 10px;
		width: 20px;
		height: 2px;
		background: #636262;
		transform: translate(0,-50%);
		content: '';
	}
	#lang_wrap > div .h3::after {
		right: 19px;
		width: 2px;
		height: 20px;
	}
	#lang_wrap > div .h3.active::after { display: none;}
	
	#lang_wrap > div .h3 b {
		display: inline-block;
		margin-left: 5px;
		font-size: 1.4rem;
	}
	
	#lang_wrap > div .h3 b::before {
		float: left;
		margin-right: 5px;
		content:'/';
	}
	
	#lang_wrap > div > div:nth-child(odd) { transform: translate(50%,0);}
	#lang_wrap > div > div:nth-child(even) { transform: translate(50%,0);}
	
	#lang_wrap > div div ul {
		display: none;
		background: none;
		margin-left: 10px;
	}
	
	html.lang_on #lang_wrap > div > div {
		min-height: 0;
		animation-name: lang-on-sp;
	}
}


/* Global Navigation */
#g_navi {
	position: relative; /* fixed; */
	/* top:70px; */
	/* left:0; */
	/* width:100%; */
	z-index: 3;
	box-sizing: border-box;
	padding-top: 2px;
	border-top: 1px solid #ebebeb;
	background: linear-gradient(to bottom, #fff, #ebebeb);
}

#g_navi > ul {
	display: flex;
	padding: 0 20px;
}

#g_navi > ul > li {
	flex: 1;
	height: 47px;
	padding: 0 3px 0 2px;
}
#g_navi > ul > li:first-child { padding: 0 3px;}

#g_navi > ul > li > span {
	display: block;
	position: relative;
	height: 100%;
}
#g_navi > ul > li > span::after,
#g_navi > ul > li:first-child > span::before {
	position: absolute;
	bottom: 0;
	right: -3px;
	width: 1px;
	height: 20px;
	background: #ccc;
	content: '';
}
#g_navi > ul > li:first-child > span::before { right: inherit; left: -3px;}


#g_navi > ul > li > span a {
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
	height: 100%;
	box-sizing: border-box;
	border-bottom: 2px solid #ccc;
	background: linear-gradient(to bottom, rgba(255,255,255,.0), rgba(235,235,235,.5) 50%, #fff);
	font-weight: bold;
}
#g_navi > ul > li > span a:hover,
#g_navi > ul > li > span a.active {
	border-color: #333;
	background: #ccc;
	color: #636262;
	opacity: 1;
}

#g_navi > ul > li.active > span a::after {
	transform: translateY(-50%) rotate(225deg);
}

#g_navi > ul ul {
	display: none;
	flex-wrap: wrap;
	position: absolute;
	/* left: 0; */
	z-index: 2;
	min-width: calc((100% - 40px) / 6); /* width: calc(100% - 40px); */
	margin: 0; /* margin: 0 20px; */
	padding: 10px 20px; /* padding: 20px 40px; */
	box-sizing: border-box;
	background: rgba(0,0,0,.8);
}
#g_navi > ul li:last-child ul {
	right: 20px;
}

#g_navi > ul ul li {
	width: 100%; /* width: 33%; */
	box-sizing: border-box;
	padding: 10px 20px 10px 0;
}

#g_navi > ul ul a {
	display: inline-block;
	position: relative;
	color: #fff;
	padding-left: 10px;
	line-height: 1.2;
}

#g_navi > ul ul a::before {
	position: absolute;
	top: 5px;
	left: 0;
	border: 4px solid transparent;
	border-left: 5px solid #fff;
	content: '';
}
#g_navi > ul ul li.product_list_pc {
	width: 100%;
}
#g_navi > ul ul table {
	width: 100%;
	background-color: #fff;
}

#g_navi > ul ul table td {
	padding: 20px;
	width: 25%;
	vertical-align: top;
}
#g_navi > ul ul table td img {
	width: 100%;
}
#g_navi > ul ul p a {
	color: #636262;
}
#g_navi > ul ul p a::before {
	position: absolute;
	top: 5px;
	left: 0;
	border: 4px solid transparent;
	border-left: 5px solid #636262;
	content: '';
}

@keyframes nav-on-sp {
	100% {
		opacity: 1;
		transform: translate(0);
	}
}

@media only screen and (max-width: 750px) {
#g_navi > ul ul li.product_list_pc {
    display: none;
}
}
@media only screen and (min-width: 751px) {
#g_navi > ul ul li.product_list_sp {
    display: none;
}
}

@media only screen and (max-width: 750px){
	html.nav_on { overflow: hidden;}
	html.nav_on #g_navi { display: block; overflow-x: hidden;}

	#g_navi {
		display: none;
		overflow-y: scroll;
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 100;
		padding: 0;
		background: rgba(235,235,235,.95);
	}

	#g_navi > ul {
		flex-direction: column;
		padding: 60px 0 0 4%;
		opacity: 0;
		transform: translateX(50%);
	}
	html.nav_on #g_navi > ul { animation: .5s forwards nav-on-sp;}

	#g_navi > ul > li {
		flex: 1;
		height: auto;
		padding: 0;
	}
	#g_navi > ul > li:first-child { padding: 0;}
	
	#g_navi > ul > li > span {
		position: relative;
		height: auto;
		padding-right: 40px;
		border-bottom: 1px solid #636262;
	}
	
	#g_navi > ul > li.dropdown > span::before,
	#g_navi > ul > li.dropdown > span::after {
		position: absolute;
		left: inherit;
		top: 50%;
		right: 10px;
		width: 20px;
		height: 2px;
		border: none;
		background: #636262;
		transform: translate(0,-50%);
		content: '';
	}
	#g_navi > ul > li.dropdown > span::after {
		right: 19px;
		width: 2px;
		height: 20px;
	}
	#g_navi > ul > li.dropdown > span.active::after { display: none;}	
	
	#g_navi > ul > li > span a {
		display: block;
		margin: 0;
		padding: 20px 10px;
		border-bottom: none;
		background: none;
		color: #636262;
		font-size: 1.6rem;
		line-height: 1.3;
		text-align: left;
		white-space: inherit;
	}
	
	#g_navi > ul > li > span a:hover,
	#g_navi > ul > li > span a.active {
		border-color: inherit;
		background: inherit;
	}

	#g_navi > ul ul {
		display: none;
		position: static;
		width: 100%;
		margin-left: 10px;
		padding: 0;
		background: none;
	}

	#g_navi > ul ul li {
		width: auto;
		margin: 0 0 1px;
		padding: 0;
	}

	#g_navi > ul ul a {
		display: flex;
		align-items: center;
		min-height: 50px;
		padding: 15px 15px 15px 20px;
		box-sizing: border-box;
		background: rgba(99,98,98,.15);
		color: rgba(99,98,98,1);
		font-weight: bold;
	}

	#g_navi > ul ul a::before {
		position: absolute;
		top: 50%;
		left: 10px;
		border: 6px solid transparent;
		border-left: 6px solid rgba(99,98,98,1);
		transform: translateY(-50%);
	}
}


/* Inner Right Navigation */
#right_floating a { text-decoration: none !important;}

#right_floating > em,
#right_floating > a {
	display: block;
	position: relative;
	margin-bottom: 15px;
	padding: 15px 0;
	background: #636262;
	color: #fff;
	font-weight: bold;
	font-size: 1.8rem;
	text-align: center;
	letter-spacing: .03em;
	line-height: 1.2;
}

#right_floating > ul > li {
	margin-bottom: 15px;
	padding: 0 5px 15px;
	border-bottom: 1px solid #ddd;
	line-height: 1.3;
}

#right_floating > ul > li > a {
	display: inline-block;
	position: relative;
	padding-left: 12px;
}

#right_floating > ul > li > a::before {
	position: absolute;
	top: 4px;
	left: 0;
	border: 5px solid transparent;
	border-left: 6px solid #636262;
	content: '';
}

#right_floating > ul > li.dropdown {
	position: relative;
	padding-right: 45px;
}
#right_floating > ul > li.dropdown button {
	display: block;
	position: absolute;
	top: -4px;
	right: 0;
	width: 30px;
	height: 30px;
	background: none;
	cursor: pointer;
}
#right_floating > ul > li.dropdown button:hover { opacity: .5;}
#right_floating > ul > li.dropdown button::before,
#right_floating > ul > li.dropdown button::after {
	position: absolute;
	background: #999;
	content:'';
}
#right_floating > ul > li.dropdown button::before {
	top: 50%;
	left: 0;
	width: 80%;
	height: 1px;
	margin: 0 10%;
	transform: translateY(-50%);
}
#right_floating > ul > li.dropdown button::after {
	top: 0;
	left: 50%;
	width: 1px;
	height: 80%;
	margin: 10% 0;
	transform: translateX(-50%);
}

#right_floating > ul > li.dropdown.on button::after { display: none;}


#right_floating > ul ul {
	display: none;
	margin: 0 12px;
}

#right_floating > ul li.open ul { display: block;}

#right_floating > ul ul li {	margin-top: 5px;}

#right_floating > ul ul a {
	display: inline-block;
	position: relative;
	padding-left: 12px;
	font-size: 1.4rem;
	line-height: 1.3;
}

#right_floating > ul ul a::before {
	position:  absolute;
	top: 7px;
	left: 0;
	width: 10px;
	height: 1px;
	background: #636262;
	content: '';
}


#right_floating > ul a.active { font-weight: bold;}


/* Footer Items */
footer { background: rgba(99,98,98,1);
}
#footer_sitemap {
	padding: 10px 20px 0 20px;
}


#footer_sitemap ul {
	color: #fff;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

#footer_sitemap li {
	margin-right: 20px;
	margin-bottom: 10px;
}


#footer_sitemap li a {
	display: inline-block;
	position: relative;
	padding-left: 10px;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.3;
}
#footer_sitemap li a::before {
	position: absolute;
	top: 5px;
	left: 0;
	border: 4px solid transparent;
	border-left: 5px solid #fff;
	content: '';
}

footer > p {
	padding: 10px 0;
	background: #4a4949;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1;
	text-align: center;
	font-family: 'Open Sans', sans-serif;
}


@media only screen and (max-width: 750px){
	footer { background: rgba(99,98,98,.8);}
	
	#footer_sitemap {
		flex-direction: column;
		padding: 10px 0 0;
		background: rgba(99,98,98,1);
		font-size: 1.5rem;
	}
}

/* Breadcrumbs */
#footmark {
	display: flex;
	/* top: 120px; */
	align-items: center;
	position: relative;
	width: calc(100% - 270px);
	height: 60px;
	margin-top: auto;
	padding: 0 20px;
	box-sizing: border-box;
	background: rgba(0,0,0,.65);
	/* z-index: 2; */
}
#footmark::after {
	position: absolute;
	top: 0;
	right: -50px;
	width: 50px;
	height: 60px;
	background: url(/img/common/bg-footmark.png) no-repeat;
	content: '';
}

body#lower #footmark { width: 100%;}
body#lower #footmark::after {display: none;}

#footmark ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
}

#footmark li {
	color: #fff;
	font-size: 1.4rem;
}

#footmark li:not(:first-child) {
	position: relative;
	margin-left: 10px;
	padding-left: 25px;
}

#footmark li:not(:first-child)::before {
	position: absolute;
	top: 0%;
	left: 0;
	width: 15px;
	height: 0px;
	color: #999999;
	content: '>';
}

#footmark a { color: #fff;}


@media only screen and (max-width: 750px){
	#footmark {
		overflow-x: auto;
		width: 100%;
		/* top: 0px; */
		height: auto;
		padding: 10px 20px;
	}

	#footmark::after { display: none;}

	#footmark ul { flex-wrap: nowrap;}

	#footmark li { white-space: nowrap;}
	#footmark li:last-child { padding-right: 20px;}

	#footmark li:not(:first-child) {
		position: relative;
		margin-left: 10px;
		padding-left: 25px;
	}

	#footmark li:not(:first-child)::before {
		position: absolute;
		top: 50%;
		left: 0;
		width: 15px;
		height: 1px;
		background: #636262;
		content: '';
	}
}


/* recaptcha badge */
.grecaptcha-badge{
	z-index: 3;
	margin-bottom: 70px;
}


/* Page Top Button */
a.pagetop {
	display: block;
	width: 40px;
	height: 40px;
	margin: 0 auto;
	padding: 15px;
	box-sizing: content-box;
}

a.pagetop span {
	display: block;
	position: relative;
	width: 32px;
	height: 2px;
	margin: 30px auto 0;
	background: rgba(99,98,98,1);
}
a.pagetop span::before {
	position: absolute;
	top: -20px;
	left: 4px;
	width: 22px;
	height: 22px;
	border-top: 2px solid rgba(99,98,98,1);
	border-right: 2px solid rgba(99,98,98,1);
	opacity: 1;
	transform: rotate(-45deg);
	transition: all .2s ease-out;
  animation-duration: .2s;
	animation-fill-mode: forwards;
	content: '';
}

a.pagetop:hover span::before {
	top: -15px;
	transition: all .2s ease-out;
}

a.pagetop:active span::before {
	animation-name: top-on;
}

@keyframes top-on {
  100% {
    top: -30px;
    opacity: 0;
  }
}


/* Title Items */
#article h1 { margin: 0px 0px 15px;}
h2 { margin: 0px 0px 15px;}

h1.assembly-title {
	position: relative;
    margin-bottom: 30px;
	padding: 15px 0px;
	border-bottom: 1px solid #636262;
	font-weight: bold;
	font-size: 3.8rem;
    line-height: 1.2;
}

h3,
.h3 {
	margin: 0 20px 25px;
	font-weight: 600;
	font-size: 5.0rem;
	line-height: 1.3;
	font-family: 'Open Sans', sans-serif;
	text-align: center;
}
h3.release-item, 
h3.assembly-item {
	margin: 0 0 0 10px;
	padding: 0;
	font-weight: bold;
	font-size: 100%;
	line-height: unset;
	background: unset;
	font-family: Arial,sans-serif;
	text-align: left;
}
h3 b,
.h3 b {
	display: block;
	font-weight: bold;
	font-size: 1.8rem;
}

h2 + h3 {
	padding: 15px 20px;
	background: #ebebeb;
	font-size: 2.4rem;
	text-align: left;
}

h2 + h3.assembly-item {
	padding: 0px;
	background: none;
	font-size: 100%;
}

h3.def {
	margin: 0;
	font-size: 2.4rem;
	line-height: 1.2;
	text-align: left;
}

h3.bar {
	margin: 0;
	padding: 10px;
	border-left: 5px solid #636262;
	border-bottom: 1px dotted #ccc;
	background: #fff;
	font-size: 2.2rem;
	line-height: 1.2;
	text-align: left;
}

h3.bar02 {
	margin: 0 0 20px;
	padding: 10px;
	background: #ebebeb;
	font-size: 2.2rem;
	line-height: 1.2;
	text-align: left;
}

h2.assembly-item {
	margin-bottom: 30px;
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.2;
	background: unset;
	font-family: Arial,sans-serif;
	text-align: left;
}
h2.assembly-item span.ckbox::before {
    content: "";
    width: 1.5em;
    height: .9em;
    display: inline-block;
    background: url(/america/img/icon_check_green.png) center / contain no-repeat;
}

#visual h1 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 290px;
	color: #fff;
	font-weight: bold;
	font-size: 3.6rem;
	line-height: 1;
	text-align: center;
}

#visual h1 b {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #fff;
	font-weight: 600;
	font-size: 2.4rem;
	font-family: 'Open Sans', sans-serif;
}

#article .news_def, 
#article h2.def {
	position: relative;
	margin-bottom: 30px;
	padding: 25px;
	border-bottom: 1px solid #636262;
	font-weight: bold;
	font-size: 3.8rem;
	line-height: 1.2;
}
#article .news_def::before, 
#article h2.def::before {
	position: absolute;
	top: 0;
	left: 0;
	margin: -25px 0 0 -25px;
	border: 25px solid transparent;
	border-bottom: 25px solid #636262;
	content: '';
	transform: rotate(-45deg);
}

#article h2.def_c {
	position: relative;
	margin-bottom: 30px;
	padding: 25px;
	border-bottom: 1px solid #636262;
	font-weight: bold;
	font-size: 3.8rem;
	line-height: 1.2;
}
#article h2.def_p::before {
	position: absolute;
	top: 0;
	left: 0;
	margin: -25px 0 0 -25px;
	border: 25px solid transparent;
	border-bottom: 25px solid #b8183f;
	content: '';
	transform: rotate(-45deg);
}
#article h2.def_p {
	position: relative;
	margin-bottom: 30px;
	padding: 25px;
	border-bottom: 1px solid #636262;
	font-weight: bold;
	font-size: 3.8rem;
	line-height: 1.2;
}
#article h2.def_s::before {
	position: absolute;
	top: 0;
	left: 0;
	margin: -25px 0 0 -25px;
	border: 25px solid transparent;
	border-bottom: 25px solid #395daa;
	content: '';
	transform: rotate(-45deg);
}
#article h2.def_s {
	position: relative;
	margin-bottom: 30px;
	padding: 25px;
	border-bottom: 1px solid #636262;
	font-weight: bold;
	font-size: 3.8rem;
	line-height: 1.2;
}
#article h2.def_c::before {
	position: absolute;
	top: 0;
	left: 0;
	margin: -25px 0 0 -25px;
	border: 25px solid transparent;
	border-bottom: 25px solid #ddb900;
	content: '';
	transform: rotate(-45deg);
}
#article .news_def b, 
#article h2.def b {
	position: absolute;
	bottom: 5px;
	right: 5px;
	text-align: right;
	font-weight: 600;
	font-size: 1.6rem;
	font-family: 'Open Sans', sans-serif;
}
#article h2.def_c b {
	position: absolute;
	bottom: 5px;
	right: 5px;
	text-align: right;
	font-weight: 600;
	font-size: 1.6rem;
	font-family: 'Open Sans', sans-serif;
}

#article h2.def_p b {
	position: absolute;
	bottom: 5px;
	right: 5px;
	text-align: right;
	font-weight: 600;
	font-size: 1.6rem;
	font-family: 'Open Sans', sans-serif;
}
#article h2.def_s b {
	position: absolute;
	bottom: 5px;
	right: 5px;
	text-align: right;
	font-weight: 600;
	font-size: 1.6rem;
	font-family: 'Open Sans', sans-serif;
}

#article .news_bar, 
#article h2.bar {
	margin-bottom: 30px;
	padding: 15px 20px;
	border-left: 5px solid #636262;
	font-weight: 600;
	font-size: 2.4rem;
	line-height: 1.2;
	font-family: 'Open Sans', sans-serif;
}



@media only screen and (max-width: 750px){
	h3,
    .h3 { font-size: 3rem;}
	h3 b,
    .h3 b {
		display: block;
		margin-left: 5px;
		font-size: 1.2rem;
	}
	
	h2 + h3 {
		margin: 0 5px 15px;
		padding: 10px;
		font-size: 1.8rem;
		text-align: left;
	}


	h1.assembly-title {
		padding: 15px 0px;
		font-size: 2.8rem;
	}
	h2.assembly-item {
		padding: 15px 0px;
		font-size: 2.2rem;
	}

	#visual h1 {
		height: 200px;
		font-size: 2.6rem;
	}

	#visual h1 b {font-size: 1.6rem;}

	#article .news_def, 
	#article h2.def {
		margin-bottom: 15px;
		padding: 15px;
		font-size: 2.2rem;
	}
	#article .news_def::before, 
	#article h2.def::before {
		margin: -15px 0 0 -15px;
		border: 15px solid transparent;
		border-bottom: 15px solid #636262;
	}
	#article h2.def_p::before {
		margin: -15px 0 0 -15px;
		border: 15px solid transparent;
		border-bottom: 15px solid #b8183f;
	}
	#article h2.def_s::before {
		margin: -15px 0 0 -15px;
		border: 15px solid transparent;
		border-bottom: 15px solid #395daa;
	}
	#article h2.def_c::before {
		margin: -15px 0 0 -15px;
		border: 15px solid transparent;
		border-bottom: 15px solid #ddb900;
	}
	#article .news_def b, 
	#article h2.def b { display: none;}
	
	#article .news_bar, 
	#article h2.bar {
		position: relative;
		margin-bottom: 15px;
		padding: 15px;
		border: none;
		border-bottom: 1px solid #636262;
		font-size: 2.2rem;
	}
	#article .news_bar::before, 
	#article h2.bar::before {
		position: absolute;
		top: 0;
		left: 0;
		margin: -15px 0 0 -15px;
		border: 15px solid transparent;
		border-bottom: 15px solid #636262;
		content: '';
		transform: rotate(-45deg);
	}
	
	h3.def,
	h3.bar,
	h3.bar02 { font-size: 1.8rem;}
}


/* Sub Menu */
aside#side_menu {
	display: none;
	position: fixed;
	bottom: 10px;
	right: 10px;
	width: 80px;
	border-radius: 5px;
	border: 1px solid rgba(255,255,255,.7);
	background: linear-gradient(180deg, rgba(255,255,255,.8), rgba(255,255,255,.4) 50%, rgba(255,255,255,.8));
	transform: translateY(-50%);
	box-shadow: 0 0 3px rgba(0,0,0,.2);
}

aside#side_menu_form {
	display: none;
	position: fixed;
	bottom: 120px; /* 50px; */
	right: 10px;
	width: 80px;
	border-radius: 5px;
	border: 1px solid rgba(255,255,255,.7);
	background: linear-gradient(180deg, rgba(255,255,255,.8), rgba(255,255,255,.4) 50%, rgba(255,255,255,.8));
	transform: translateY(-50%);
	box-shadow: 0 0 3px rgba(0,0,0,.2);
}

@media only screen and (max-width: 750px){
	aside#side_menu { display: none !important;}
	aside#side_menu_form { display: none !important;}
}


/* Clear Fix */
.obj::after {
	display: block;
	clear: both;
	content: '';