/*
Theme Name: Design01
Version: 1.5
*/@charset "utf-8";
/* ------------------------------------------------ */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');

/* ------------------------------------------------ */
.pc {}.sp {display: none;}.none {display: none;}
@media screen and (max-width: 767px) {
.pc {display: none;}.sp {display: block;}
}
.drawer .none {display: block!important;}
/* ------------------------------------------------ */
.anim {
}
/* ----------------- */
.fade {
	opacity:0;
}
.fade.animated {
	animation-fill-mode:forwards;
	animation-duration: 1s;
	opacity:0;
}
.fade.animated.fade-top {animation-name:fade-top;}
.fade.animated.fade-btm {animation-name:fade-btm;}
.fade1.animated {animation-delay:0s;}
.fade2.animated {animation-delay:0.5s;}
.fade3.animated {animation-delay:1s;}
@keyframes fade-top {
	from {opacity: 0;transform: translateY(100px);}
	to {opacity: 1;transform: translateY(0);}
}
@keyframes fade-btm {
	from {opacity: 0;transform: translateY(-100px);}
	to {opacity: 1;transform: translateY(0);}
}
/* ----------------- */
.btna.animated a {
	animation-name: btna;
	animation-fill-mode:forwards;
	animation-duration: .5s;
	animation-timing-function: ease-in-out;
	transform-origin: bottom left 0px;
	opacity:0;
}
@keyframes btna {
0% {opacity: 0;transform: translateX(200px);}
60% {transform: translateX(-30px);}
80% {transform: translateX(10px);}
100% {opacity: 1;transform: translateX(0);}
}
/* ----------------- */
.scale.animated {
	animation-name: scalea;
	animation-fill-mode:forwards;
	animation-duration: .5s;
	animation-timing-function: ease-in-out;
}
@keyframes scalea {
0% {opacity: 0;transform: scale(0.5, 0.5);}
100% {opacity: 1;transform: scale(1, 1);}
}
/* ----------------- */
.splash.animated img {
	animation-name: splasha;
	animation-fill-mode:forwards;
	animation-duration: .5s;
	animation-timing-function: ease-in-out;
	
}
@keyframes splasha {
0% {opacity: 0;transform: scale(0.1, 0.1);}
100% {opacity: 1;transform: scale(1, 1);}
}
/* ------------------------------------------------ */
:root {
	--white: #fff;
	--black: #000;
	--gray1: #333;
	--gray2: #666;
	--gray3: #999;
	--gray4: #ccc;
	--gray5: #e6e6e6;
	--gray6: #f2f2f2;
	--color1: #707e8a;
	--color2: #9c815f;
	--color3: #3a4754;
	--color4: #776347;
	--font1: 'Noto Sans JP', sans-serif;
}
/* ------------------------------------------------ */
@-ms-viewport {width: device-width;}
@viewport {width: device-width;}
*{
margin:0;
padding:0;
}
html,body {
	height: 100%;
	font-size: 62.5%;
	margin: 0px auto;
}
body {
	color: var(--black);
	font-size: 16px;
	font-size: 1.6rem;
	font-size: 1.6vw;
	font-size: clamp(15px, 1.6vw, 16px);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	background-color: var(--white);
}
@media screen and (max-width: 767px) {
	body {
		font-size: 15px;
		font-size: 1.5rem;
		-webkit-text-size-adjust: 100%;
	}
}
#container {
	position: relative;
	height: 100%;
	min-height: 100%;
	text-align: left;
	margin: 0px auto;
	padding: 0px;
}
a {
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
a:link {color: var(--black);}
a:visited {color: var(--black);}
a:active {color: var(--color2);}
a:hover {color: var(--color2);}
a img {
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
/*
a:active img,
a:hover img {
	opacity: 0.8;
}
*/
a svg rect,
a svg path,
a svg circle,
a svg polygon{
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
h1,h2,h3,h4,h5,h6 {font-size:1em;}
em,i,address {font-style: normal;}
a[href^='tel'] {pointer-events: none;text-decoration: none;}
a[href^='tel'] img {display:inline-block;}
@media screen and (max-width: 767px) {
	a[href^='tel'] {pointer-events: auto;}
	a[href^='tel'] img {display:block;}
}
button,input,select,textarea {
	outline: none;
	font-family: var(--font1);
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0px 1000px white inset;
}
input[type='number']::-webkit-outer-spin-button,
input[type='number']::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input[type=number] {
	appearance:textfield;
}
input[type='submit'],
input[type='button'],
button {
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
img {display:block;max-width:100%;border:none;-ms-interpolation-mode: bicubic;backface-visibility: hidden;image-rendering: -webkit-optimize-contrast;}
@media screen and (max-width: 767px) {
	img {max-width:100%;height:auto;}
}
.center {text-align: center;}
.right {text-align: right;}
.imgleft {float: left;margin-right:5px;}
.imgright {float: right;margin-left:5px;}
@media screen and (max-width: 767px) {
	.imgleft {float: none;margin-right:0px;margin-bottom:10px;}
	.imgright {float: none;margin-left:0px;margin-bottom:10px;}
}
.clear {clear: both;}
.clearfix::after {
	display: block;
	content: "";
	clear: both;
	height: 0px;
	visibility: hidden;
}
ul {list-style-type:none;}
.attention,.error {color: #c00;font-weight: 700;}
.red {color: #f00;}
i.sup {
	position: relative;
	top: -0.2em;
	font-size: 0.7em;
	font-style: normal;
	vertical-align: top;
}
i.sub {
	position: relative;
	top: 0.2em;
	font-size: 0.5em;
	font-style: normal;
	vertical-align: bottom;
}
.sup {
	font-size:0.6em;
	font-style: normal;
	vertical-align: super;
}
/* ------------------------------------------------ */
.width {
	width: 1000px;
	margin: 0px auto;
}
.widths {
	width: 900px;
	margin: 0px auto;
}
@media screen and (max-width: 1000px) {
	.width {
		width: auto;
	}
}
@media screen and (max-width: 900px) {
	.widths {
		width: auto;
	}
}
.drawer .width,
.drawer .widths,
.drawer .widthb {
	width: auto;
}
/* ------------------------------------------------ */
#header {
}
.header {
	position: relative;
	z-index: 3;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.3s linear;
		background-color: rgba(0,0,0,1);
}
.header-outer {
}
.header-inner {
	position: relative;
	z-index: 1;
}
@media screen and (max-width:767px) {
	#header .header {
		background-color: rgba(0,0,0,1);
	}
}
@media screen and (min-width: 768px) {
	#header .header {
		position: fixed;
		left: 0px;
		top: 0px;
		z-index: 999;
		width: 100%;
		background-color: rgba(0,0,0,0);
	}
	body.home #header .header {
		background-color: rgba(0,0,0,0);
	}
	body.single #header .header {
		background-color: rgba(0,0,0,1);
	}
	#html_page-news body #header .header {
		background-color: rgba(0,0,0,1);
	}
	#container.fixed #header .header {
		background-color: rgba(0,0,0,0.0);
	}
	#container.fixed #header .header .header-logo{
		display: none;
	}
}
/* ------------------------------------------------ */
#header-logo {
}
.header-logo {
	text-align: center;
}
.header-logo h1 {
}
.header-logo h1 a {
	display: inline-block;
}
.header-logo h1 a img {
	display: inline-block;
	height: 60px;
}
#header .header-logo {
	padding: 10px 0px;
}
.drawer .header-logo {
	padding: 20px 0px;
}
/* ------------------------------------------------ */
#header #header-nav {
	display: none;
}
#header-nav {
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
#container.fixed #header-nav {
}
.nav {
	text-align: center;
}
.nav a {
		-webkit-transition: all 0.2s linear;
		-moz-transition: all 0.2s linear;
		-o-transition: all 0.2s linear;
		transition: all 0.2s linear;
}
.drawer .nav {
	text-align: left;
}
#header .nav ul {
	display: block;
}
.nav ul li {
	position: relative;
}
#header .nav ul li {
	display: inline-block;
	vertical-align: top;
}
#header .nav ul li.navnone {
	display: none;
}
.nav ul li a {
	display: block;
	position: relative;
	color: var(--black);
	text-decoration: none;
	padding: 20px 10px;
}
.drawer .nav ul li a {
	color: var(--white);
}
.nav ul li a span {
	display: block;
	font-size: 18px;
	font-family: var(--font1);
	font-weight: 700;
	text-transform: uppercase;
}
.nav ul li a strong {
	display: block;
	font-size: 12px;
	font-weight: 500;
}
.drawer .nav ul li a span {
	display: none;
}
.drawer .nav ul li a strong {
	font-size: 16px;
}
.drawer .nav ul li a {
	border-top: 2px solid var(--white);
}
.drawer .nav ul li:first-child a {
	border-top: 5px solid var(--white);
}
.drawer .nav ul li:last-child a {
	border-bottom: 5px solid var(--white);
}
.drawer .nav ul li ul li a {
	border-top: 2px dashed var(--white);
	padding: 20px 10px 20px 30px;
}
.drawer .nav ul li ul:first-child a,
.drawer .nav ul li ul:last-child a {
	border-top: none;
	border-top: 1px dashed var(--white);
	border-bottom: none;
}
.drawer .nav ul li a strong {
	font-weight: 700;
}
.drawer .nav ul li ul li a strong {
	font-weight: 500;
}
.nav ul li a:hover {
}
#header-nav .nav ul li a:hover {
	color: var(--color2);
}
.drawer .nav ul li a:active,
.drawer .nav ul li a:hover {
	color: var(--white);
	background-color: var(--color2);
}
@media screen and (min-width:768px) {
	#header .nav ul li#menu-item-43,
	#header .nav ul li#menu-item-44,
	#header .nav ul li#menu-item-45,
	#header .nav ul li#menu-item-51,
	#header .nav ul li#menu-item-42 {
		animation-name:nava;
		animation-fill-mode:forwards;
		animation-iteration-count: 1;
		animation-duration: 0.5s;
		opacity:0;
	}
	#header .nav ul li#menu-item-43 {animation-delay:0s;}
	#header .nav ul li#menu-item-44 {animation-delay:0.2s;}
	#header .nav ul li#menu-item-45 {animation-delay:0.4s;}
	#header .nav ul li#menu-item-51 {animation-delay:0.6s;}
	#header .nav ul li#menu-item-42 {animation-delay:0.8s;}
	@keyframes nava {
		from {opacity: 0;transform: translateY(-50px);}
		to {opacity: 1;transform: translateY(0);}
	}
}
@media screen and (min-width: 768px) {
	#header .nav ul li ul {
		display: block;
		position: absolute;
		z-index: 100;
		top: 100%;
		left: -50%;
		min-width: 220px;
		-webkit-transition: all 0.2s linear;
		-moz-transition: all 0.2s linear;
		-o-transition: all 0.2s linear;
		transition: all 0.2s linear;
		border-top: 5px solid transparent;
	}
	#header .nav ul li:hover ul {
		border-top: 5px solid var(--color2);
	}
	#header .nav ul li ul li {
		display: block;
		overflow: hidden;
		width: 100%;
		height: 0px;
		opacity: .5;
		-webkit-transition: all 0.2s linear;
		-moz-transition: all 0.2s linear;
		-o-transition: all 0.2s linear;
		transition: all 0.2s linear;
	}
	#header .nav ul li:hover ul li {
		height: auto;
		height: 60px;
		box-shadow: 1px 1px 3px 2px rgba(0,0,0,0.1);
		-moz-box-shadow: 1px 1px 3px 2px rgba(0,0,0,0.1);
		-webkit-box-shadow: 1px 1px 3px 2px rgba(0,0,0,0.1);
		margin-bottom: 5px;
		opacity: 1;
	}
	#header .nav ul li:hover ul li:last-child {
	}
	#header .nav ul li ul li a {
		color: var(--white);
		height: 100%;
		background-color: var(--black);
		padding: 20px 10px;
	}
	#header .nav ul li ul li a:hover {
		color: var(--white)!important;
		background-color: var(--color2);
	}
	#header .nav ul li ul li a strong {
		font-size: 15px;
	}
}
/* ------------------------------------------------ */
#footer {
	color: var(--white);
	background-color: var(--black);
}
.footer {
}
.footer-inner {
	padding: 20px 10px;
}
.footer-logo {
	text-align: center;
	margin-bottom: 0px;
}
.footer-logo a {
	display: inline-block;
	color: var(--white);
}
.footer-logo img {
	display: inline-block;
	width: 150px;
}
@media screen and (max-width: 767px) {
	.footer-logo img {
		width: 140px;
	}
}
.footer-link {
	text-align: center;
	padding: 10px 0px;
}
.footer-link ul {
	font-size: 0;
}
.footer-link li {
	font-size: 12px;
}
.footer-link a {
	color: var(--black);
	color: var(--white);
}
.footer-link a:hover {
	color: var(--color2);
}
@media screen and (max-width:479px) {
	.footer-link li {
		display: block;
	}
	.footer-link li.menu-item-has-children {
		display: block;
		width: auto;
	}
	.footer-link a {
		display: block;
		text-decoration: none;
		border-bottom: 1px solid var(--gray1);
		padding: 10px 5px;
	}
}
@media screen and (min-width:480px) {
	.footer-link ul {
		display: inline-block;
	}
	.footer-link li {
		display: inline-block;
	}
	.footer-link a {
		display: inline-block;
		border-right: 1px solid var(--gray4);
		padding: 0px 5px;
	}
	.footer-link ul.footernavmenu li:last-child a {
		border-right: none;
	}
	.footer-link ul.sub-menu li:last-child a {
		border-right: 1px solid var(--gray4);
	}
}
.copyright {
	font-weight: 400;
	text-align: center;
}
.copyright small {
	font-size: 10px;
}
/* ------------------------------------------------ */
.footer-con {
	color: var(--black);
	text-align: center;
	padding: 0px 10px;
}
.drawer .footer-con {
	padding: 30px 10px;
}
.footer-con dl {
	background-color: var(--white);
	padding: 10px;
	-moz-box-shadow: 1px 1px 3px 1px rgba(0,0,0,0.1);
	-webkit-box-shadow: 1px 1px 3px 1px rgba(0,0,0,0.1);
	box-shadow: 1px 1px 3px 1px rgba(0,0,0,0.1);
	margin-bottom: 10px;
}
.footer-con dl:nth-child(1) {
	border-color: var(--color1);
}
.footer-con dl:nth-child(2) {
	border-color: var(--color2);
}
@media screen and (min-width:768px) {
	#footer-con .footer-con {
		display: table;
		width: 100%;
		table-layout: fixed;
		border-spacing: 10px 0px;
		margin-bottom: 0px;
		padding: 0px;
	}
	#footer-con .footer-con dl {
		display: table-cell;
		vertical-align: top;
	}
}
.footer-con dt {
	font-size: 22px;
	font-weight: 900;
}
.footer-con dl:nth-child(1) dt {
	color: var(--color1);
}
.footer-con dl:nth-child(2) dt {
	color: var(--color2);
}
#footer-con .footer-con dt br {
	display: none;
}
.footer-con dd {
}
.footer-con ul {
}
.footer-con ul li {
	display: block;
	vertical-align: top;
	padding: 5px 10px;
}
@media screen and (min-width:768px) {
	#footer-con .footer-con ul {
		display: table;
		width: 100%;
		table-layout: fixed;
		border-spacing: 10px 0px;
	}
	#footer-con .footer-con ul li {
		display: table-cell;
		vertical-align: top;
		padding: 5px 0px;
	}
}
.footer-con ul li b {
	display: block;
	color: var(--white);
	line-height: 1em;
	margin-bottom: 5px;
	padding: 5px 5px;
}
.footer-con dl:nth-child(1) dd ul li b {
	background-color: var(--color1);
}
.footer-con dl:nth-child(2) dd ul li b {
	background-color: var(--color2);
}
.footer-con ul li a {
	display: inline-block;
	color: var(--black);
	text-decoration: none;
}
.footer-con ul li a svg {
	display: inline-block;
	width: 20px;
	margin-right: 10px;
}
.footer-con dl:nth-child(1) dd ul li a svg path,
.footer-con dl:nth-child(1) dd ul li a svg polygon {
	fill: var(--color1);
}
.footer-con dl:nth-child(2) dd ul li a svg path,
.footer-con dl:nth-child(2) dd ul li a svg polygon {
	fill: var(--color2);
}
.footer-con ul li a span {
	display: inline-block;
	font-size: 24px;
	font-weight: 700;
}
.footer-con ul li.tel a span,
.footer-con ul li.fax a span {
	font-family: 'Roboto Condensed', sans-serif;
}
.footer-con ul li.mail a span {
	font-size: 18px;
}
.footer-con ul li a em {
	display: block;
	font-size: 14px;
	font-weight: 500;
	line-height: 1em;
	padding: 5px 5px;
}
/*
.footer-con dl:nth-child(1) dd ul li a {
	color: var(--color1);
}
.footer-con dl:nth-child(2) dd ul li a {
	color: var(--color2);
}
*/
/* ---------------------------------------------------------------------- */
#slide-swiper {
	position: relative;
	z-index: 0;
/*
	height: 100%;
*/
	background-color: var(--black);
}
swiper-container {
	position: relative;
/*
	height: 100%;
*/
}
swiper-slide {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
/*
	height: 100%;
*/
	width: auto;
	overflow: hidden;
}
/*
@media screen and (max-width:1399px) {
	swiper-slide {
	overflow: hidden;
	}
}
@media screen and (min-width:1400px) {
	swiper-slide {
	width: auto;
	overflow: visible;
	}
}
*/

swiper-slide a {
	display: block;
}
swiper-slide a:hover {
	color: var(--black);
}

swiper-slide .slide-tex {
	position: absolute;
	z-index: 2;
	left: 0;
	bottom: 120px;
	width: 100%;
	text-align: center;
}
swiper-slide .slide-tex div {
}

swiper-slide .slide-tex span {
	color: var(--white);
	font-size: 50px;
	font-weight: 900;
	line-height: 1em;
}
swiper-slide .slide-img {
	position: relative;
/*
	height: 100%;
*/
}
swiper-slide .slide-img img {
/*
	width: auto;
	max-width: none;
	height: 100%;
	max-width: none;
	max-height: 900px;
*/
	margin: 0px auto;
}
@media screen and (max-width:767px) {
	swiper-slide .slide-img img {
		max-height: 500px;
	}
}
@media screen and (min-width:768px) {
	swiper-slide .slide-img img {
	/*
		width: auto;
		max-width: none;
		height: 100%;
	*/
		max-width: none;
		max-height: 900px;
	}
}
swiper-slide .slide-img::before,
swiper-slide .slide-img::after {
	position: absolute;
	content: "";
	z-index: 1;
	left: 0px;
	bottom: 0px;
	width: 100%;
	height: 50%;
}
swiper-slide .slide-img::before {
	background-color: rgba(0,0,0,0.5);
background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);

}
/*
swiper-slide .slide-img::after {
	background-color: rgba(0,0,0,0.2);
	background-image: linear-gradient(45deg, rgba(0,0,0,0.1) 25%, transparent 25%, transparent 75%, rgba(0,0,0,0.1) 75%, rgba(0,0,0,0.1)), linear-gradient(45deg, rgba(0,0,0,0.1) 25%, transparent 25%, transparent 75%, rgba(0,0,0,0.1) 75%, rgba(0,0,0,0.1));
	background-position: 0 0, 3px 3px;
	background-size: 6px 6px;
}
*/
swiper-slide .slide-link {
	position: absolute;
	z-index: 2;
	left: 0px;
	bottom: 50px;
	width: 100%;
	line-height: 1em;
	text-align: center;
}
swiper-slide .slide-link b {
	display: inline-block;
	color: var(--white);
	font-weight: 700;
	line-height: 1em;
	text-align: center;
	background-color: var(--black);
	padding: 20px 50px;
}
swiper-slide a:hover .slide-link b {
	color: var(--black);
	background-color: var(--white);
}
swiper-slide .slide-logo {
	position: absolute;
	z-index: 2;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}
swiper-slide .slide-logo img {
	width: 150px;
}
/* ------------------------------------------------ */
#drawertriger {
	-webkit-transition: -webkit-transform 0.3s;
	-moz-transition: -moz-transform 0.3s;
	transition: transform 0.3s;
	position: fixed;
	right: 0px;
	top: 0px;
	z-index: 9999;
}
.drawertrig {
	display: block;
	text-align: center;
	cursor: pointer;
}
.drawertrig span, .drawertrig span::before, .drawertrig span::after {
	position: absolute;
	display: inline-block;
	height: 2px;
	width: 34px;
}
.drawertrig span {
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%,-40%);
	-moz-transform: translate(-50%,-40%);
	-ms-transform: translate(-50%,-40%);
	-o-transform: translate(-50%,-40%);
	transform: translate(-50%,-40%);
	-webkit-transition: background 0.3s 0.3s;
	-moz-transition: background 0.3s 0.3s;
	transition: background 0.3s 0.3s;
}
.drawertrig span::before, .drawertrig span::after {
	content: '';
	right: 0px;
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform-origin: 0% 50%;
	-moz-transform-origin: 0% 50%;
	-ms-transform-origin: 0% 50%;
	-o-transform-origin: 0% 50%;
	transform-origin: 0% 50%;
	-webkit-transition: -webkit-transform 0.3s 0.3s;
	-moz-transition: -moz-transform 0.3s 0.3s;
	transition: transform 0.3s 0.3s;
}
.drawertrig span::before {
	top: -10px;
}
.drawertrig span::after {
	top: 10px;
}
.drawer-open .drawertrig span {
}
.drawer-open .drawertrig span::before, .drawer-open .drawertrig span::after {
}
.drawer-open .drawertrig span::before {
	-webkit-transform: translateX(4px) translateY(-3px) rotate(45deg);
	-moz-transform: translateX(4px) translateY(-3px) rotate(45deg);
	-ms-transform: translateX(4px) translateY(-3px) rotate(45deg);
	-o-transform: translateX(4px) translateY(-3px) rotate(45deg);
	transform: translateX(4px) translateY(-3px) rotate(45deg);
}
.drawer-open .drawertrig span::after {
	-webkit-transform: translateX(4px) translateY(2px) rotate(-45deg);
	-moz-transform: translateX(4px) translateY(2px) rotate(-45deg);
	-ms-transform: translateX(4px) translateY(2px) rotate(-45deg);
	-o-transform: translateX(4px) translateY(2px) rotate(-45deg);
	transform: translateX(4px) translateY(2px) rotate(-45deg);
}
.drawer {
	position: fixed;
	z-index: 9998;
	right: -120%;
	top: 0;
	height: 100%;
	width: 300px;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}
.drawer-open .drawer {
	right: 0;
}
.overlay {
	position: fixed;
	z-index: 999;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	cursor: pointer;
	background-color: rgba(0,0,0, 0.5);
	visibility: hidden;
	opacity: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: opacity 0.3s 0s, visibility 0s 0.3s, -webkit-transform 0.3s 0s;
	-moz-transition: opacity 0.3s 0s, visibility 0s 0.3s, -moz-transform 0.3s 0s;
	transition: opacity 0.3s 0s, visibility 0s 0.3s, transform 0.3s 0s;
}
.overlay.is-visible {
	opacity: 1;
	visibility: visible;
	-webkit-transition: opacity 0.3s 0s, visibility 0s 0s, -webkit-transform 0.3s 0s;
	-moz-transition: opacity 0.3s 0s, visibility 0s 0s, -moz-transform 0.3s 0s;
	transition: opacity 0.3s 0s, visibility 0s 0s, transform 0.3s 0s;
}
.drawer-open #drawertriger {
	-webkit-transform: translateX(-300px);
	-moz-transform: translateX(-300px);
	-ms-transform: translateX(-300px);
	-o-transform: translateX(-300px);
	transform: translateX(-300px);
}
/* ----------------- */
.drawer-open #drawertriger {
	right: 10px;
	top: 10px;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.drawertrig {
	width: 50px;
	height: 50px;
	background-color: var(--color1);
	-moz-box-shadow: 1px 1px 3px 1px rgba(0,0,0,0.1);
	-webkit-box-shadow: 1px 1px 3px 1px rgba(0,0,0,0.1);
	box-shadow: 0px 0px 3px 1px rgba(0,0,0,0.1);
	overflow: hidden;
}
#drawertrig a em {
	display: block;
	text-align: center;
	padding-top: 60px;
}
#container.fixed #drawertriger .drawertrig {
}
#container .drawertrig span {
	top: 50%;
}
@media screen and (min-width: 768px) {
	.drawertrig {
	}
	#container.fixed #drawertriger .drawertrig {
		width: 50px;
		height: 50px;
	}
	#container.fixed .drawertrig span {
		top: 50%;
	}
}
.drawer-open .drawertrig {
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 50px;
}
.drawer-open .drawertrig span {background: rgba(0,0,0,0);}
.drawertrig span, .drawertrig span::before, .drawertrig span::after {
	background: var(--white);
}
.drawer-open .drawertrig span::before, .drawer-open .drawertrig span::after {
	background: var(--white);
}
.drawer {
	color: var(--white);
	background-color: var(--black);
}
/* ------------------------------------------------ */
.gotop{
	position: fixed;
	bottom: -50px;
	right: 0;
	z-index: 9999;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.gotop.block {
	bottom: 0;
	visibility: visible;
	opacity: 1;
}
.gotop a,
.gotop a::before,
.gotop a::after {
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.gotop a {
	display: block;
	position: relative;
	width: 40px;
	height: 40px;
	background-color: var(--color1);
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	margin-left: auto;
	margin-right: 10px;
	margin-bottom: 10px;
}
.gotop a::before,
.gotop a::after {
	display: inline-block;
	content: "";
	position: absolute;
	left: 50%;
}
.gotop a::before {
	bottom: 10px;
	z-index: 1;
	width: 10px;
	height: 10px;
	border-top: 1px solid;
	border-left: 1px solid;
	border-color: var(--white);
	transform: rotate(45deg);
	margin-left: -5px;
}
.gotop a::after {
	bottom: -10px;
	z-index: 0;
	width: 1px;
	height: 31px;
	background-color: var(--white);
}
.gotop a:hover {
	background-color: var(--color2);
}
.gotop a:hover::before {
	bottom: 20px;
	border-color: #fff;
}
.gotop a:hover::after {
	bottom: 0px;
	background-color: #fff;
}
.gotop a span {
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
/* ------------------------------------------------ */
.panlink {
	width: 1100px;
	margin: 0px auto;
}
.panlink {
	font-size: 0.8em;
	padding: 10px 10px;
}
.panlink span {
	display: inline-block;
	font-weight: 700;
}
.panlink a span {
	display: inline-block;
	font-weight: 400;
}
@media screen and (max-width: 767px) {
	.panlink {
		width: auto;
	}
}
/* ------------------------------------------------ */
#wrap {
}
#main {
	line-height: 1.8em;
	padding: 0px 0px 100px 0px;
}
body#body-recruit #main {
	padding: 0px 0px 0px 0px;
}
body.single #main {
	padding: 70px 0px 0px 0px;
}
.main {
}
@media screen and (max-width: 767px) {
	#main {
		padding: 0px 0px 10px 0px;
	}
}
/* link------------------------------------------------ */
.link {
	text-align: center;
	padding: 30px 0px;
}
.link-bloc {
	text-align: center;
}
.link-bloc .link {
	display: inline-block;
	vertical-align: top;
	padding: 5px 10px;
}
.link a {
	display: inline-block;
	min-width: 300px;
	position: relative;
	text-decoration: none;
	text-align: center;
	background: transparent;
	outline: none;
}
.link a::before {
	content: "";
	position: absolute;
	z-index: 0;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
	top:4px;
	left:0;
	width: 100%;
	height: 100%;
}
.link a span {
	display: block;
	position: relative;
	z-index: 2;
	padding: 20px 30px;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.link a span::before,
.link a span::after {
	content: "";
	position: absolute;
	z-index: 3;
	right: 20px;
	top: 50%;
	width: 2px;
	height: 8px;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.link a span::before {
	-webkit-transform: skewX(40deg);
	transform: skewX(40deg);
	margin-top: -8px;
}
.link a span::after {
	-webkit-transform: skewX(-40deg);
	transform: skewX(-40deg);
}
.link a:hover span::before {
	-webkit-transform: skewX(50deg);
	transform: skewX(50deg);
}
.link a:hover span::after {
	-webkit-transform: skewX(-50deg);
	transform: skewX(-50deg);
}


.link a {
	color: var(--white);
}
.link a::before {
	background-color: var(--black);
}
.link a span {
	background-color: var(--color1);
}
.link a span::before,
.link a span::after {
	background-color: var(--white);
}
.link a:hover {
	border-color:transparent; 
}
.link a:hover span {
	background-color: var(--black);
	background-color: var(--color2);
	transform: translateY(4px);
}
/* ------------------------------------------------ */
table {
	width: 100%;
}
.table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0px;
	empty-cells:show;
	margin: 0px auto 10px auto;
}
.table th {
	width: 25%;
	color: #fff;
	font-weight: normal;
	background-color: #666;
	text-align: center;
	padding: 5px;
}
.table td {
	border: 1px solid #999;
	padding: 5px;
}
/* ------------------------------------------------ */
.photo ul {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
	list-style: none;
}
.photo ul::after {
	display: block;
	content: "";
	clear: both;
}
.photo ul li {
	width: calc(33.33% - 10px);
	margin: 5px;
	box-sizing: border-box; 
}
@media screen and (max-width:767px) {
	.photo ul li {
		width: calc(50% - 10px); 
	}
}
.photo ul li img {margin:0px auto;}
/* ------------------------------------------------ */
.movie {position: relative;width: auto;padding-bottom: 56.25%;height: 0;overflow: hidden;}.movie iframe {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
/* ------------------------------------------------ */
.tablebox,.tablebloc dl,.tablebloc ul {display: table;width: 100%;table-layout: fixed;border-spacing: 0px;margin: 0px auto;list-style-type: none;}
.tabletd,.tablebloc li,.tablebloc dt,.tablebloc dd {display: table-cell;vertical-align: top;}
@media screen and (max-width: 767px) {.tablebox,.tablebloc dl,.tablebloc ul {display: block;width: auto;}.tabletd,.tablebloc li,.tablebloc dt,.tablebloc dd {display: block;width: auto;}}
.tableinner {
}
.tableinner dl {
	background-color: #fff;
	border-top: 1px dashed #000;
	margin: 0px auto;
}
.tableinner dl:first-child {
	border-top: 2px solid #000;
}
.tableinner dl:last-child {
	border-bottom: 2px solid #000;
}
.tableinner dl dt {
	width: 20%;
	font-weight: 700;
	text-align: center;
	vertical-align: middle;
	padding: 20px 10px;
}
.tableinner dl dd {
	padding: 20px 20px;
}
@media screen and (max-width: 767px) {
	.tableinner dl {
		border-top: 1px solid #000;
	}
	.tableinner dl dt {
		width: auto;
		border-right: none;
		border-bottom: 1px dashed #999;
		padding: 10px 10px;
	}
	.tableinner dl dd {
		padding: 10px 10px;
	}
}
.tableinner dl dd p {
	margin-bottom: 10px;
}
.tableinner dl dd p:last-child {
	margin-bottom: 0px;
}
/* ------------------------------------------------ */
.map iframe {width:100%;height:400px;}@media screen and (max-width: 767px) {.map iframe {height:200px;}}
/* ------------------------------------------------ */
#contact {
}
.contact {
}
.message {
	text-align: center;
	background-color: #f2f2f2;
	margin-bottom: 30px;
	padding: 30px 30px;
}
.message p {
	margin-bottom: 10px;
}
.message p:last-child {
	margin-bottom: 0px;
}
.message .link a {/*.link*/
	font-size: 13px;
	padding: 5px 50px;
}
@media screen and (max-width: 767px) {
	.message {
		padding: 10px;
	}
}
.message-link {
	text-align: right;
}
.message-link a {
	display: inline-block;
	position: relative;
	font-weight: 700;
	vertical-align: middle;
	padding-right: 15px;
}
.message-link a span::after {
	content: "";
	position: absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%);
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 5px 0px 5px 8px;
	border-color: transparent transparent transparent var(--color1);
	}
/* ------------------------------------------------ */