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

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed');
/* ------------------------------------------------ */
.pc {}.sp {display: none;}.none {display: none;}
@media screen and (max-width: 767px) {
.pc {display: none;}.sp {display: block;}
}
.drawer .none {display: block!important;}
/* ------------------------------------------------ */
:root {
	--main: #000;
	--white: #fff;
	--black: #000;
	--gray1: #f2f2f2;
	--gray2: #ccc;
	--gray3: #666;
	--gray4: #333;
	--gray5: #f0f0f0;
	--gray6: #f8f8f8;
	--blue1: #005bab;
	--blue2: #56b9e2;
	--blue3: #1e96ff;
	--red1: #f00;
	--red2: #c00;
	--link1: #005bab;
	--link2: #fff;
	--link3: #497f93;
}
/*
	color: var(--blue1);
	background-color: var(--blue1);
*/
/* ------------------------------------------------ */
@-ms-viewport {width: device-width;}
@viewport {width: device-width;}
*{
margin:0;
padding:0;
}
html,body {
	height: 100%;
	line-height: 1;
	min-height:100%;
	font-size: 62.5%;
	margin: 0px auto;
}
body {
	color: #333;
	color: var(--black);
	font-size: 16px;
	font-size: 1.6rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	background-color: #fff;
	background-color: var(--white);
	background-attachment: fixed;
}
@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;
}
@media screen and (max-width: 1000px) {#container {width:100%;}}
@media screen and (max-width: 767px) {#container {width:100%;}}
body > #container {height: auto;}
a {
	text-decoration: underline;
	-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: #333;}
a:visited {color: #333;}
a:active {color: #ccc;}
a:hover {color: #ccc;}
@media screen and (min-width: 768px) {
	a img:hover {
		opacity: 0.8;
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
	}
}
@media screen and (max-width: 767px) {
	a img:active {
		opacity: 0.8;
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
	}
}
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;}
}
input,textarea,select,button {
	outline: none;
}
button,input,select {
	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] {
	-moz-appearance:textfield;
}
input[type='submit'],
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;-webkit-backface-visibility: hidden;image-rendering: -webkit-optimize-contrast;}
@media screen and (max-width: 767px) {
	img {max-width:100%;height:auto;}
}
p {}
.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;}
}
pre {}
.clear {clear: both;}
.clearfix:after {
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	content:".";
}
.clearfix {min-height: 1px;}
* html .clearfix {
	height: 1px;
}
ul {list-style-type:none;}
.attention {color: #c00;font-weight: bold;}
.nores {display: none;}
.norep {background-repeat: no-repeat;}
.strong {font-weight: bold;}
.strike {text-decoration: line-through;}
.fonts {font-size:0.8em;}
.fontb {font-size: 1.3em;}
.red {color: #f00;}
.red2 {color: #c00;}
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;
}
/* ------------------------------------------------ */
.width {
	width: 1200px;
	margin: 0px auto;
}
.widths {
	width: 900px;
	margin: 0px auto;
}
@media screen and (max-width: 1200px) {
	.width {
		width: auto;
	}
}
@media screen and (max-width: 900px) {
	.widths {
		width: auto;
	}
}
@media screen and (max-width: 767px) {
	.width,
	.widths {
		width: auto;
	}
}
/* ------------------------------------------------ */
.globalbloc {
}
.globalbox {
}
.globalleft {
}
.globallogo h1 {
	display: inline-block;
}
.globallogo a {
	display: inline-block;
	color: #fff;
	font-size: 40px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	text-decoration: none;
}
.globallogo a img {
	display: inline-block;
}
@media screen and (max-width: 767px) {
	.globalbloc {
		display: block;
		width: auto;
	}
	.globalbox {
		display: block;
		width: auto;
	}
	.globallogo {
		text-align: center;
	}
	.globallogo a img {
		width: 220px;
	}
}
.drawer .globallogo a img {
	width: 220px;
}
/* ------------------------------------------------ */
#header {
	position: relative;
	z-index: 4;
	width: 100%;
}
.header {
}
@media screen and (min-width: 768px) {
/*250905
	.header {
		position: absolute;
		z-index: 5;
		left: 0;
		top: 0;
		width: 100%;
	}
*/
}
.headerouter {
}
.headerinner {
	position: relative;
	max-width: 1200px;
	margin: 0px auto;
	padding: 10px 0px;
}
.headerbox {
}
.headerLeft {
}
@media screen and (min-width: 768px) {
	.headerRight {
		position: absolute;
		right: 0px;
		top: 0;
		z-index: 9999;
	}
}
.headerLeft {
}
.headerRight {
	text-align: right;
	vertical-align: bottom;
}

.header a {
	text-decoration: none;
}
.headerLeft .header-logo {
	text-align: center;
}
.drawer .header-logo {
	text-align: center;
}
.header-logo h1 {
	color: #fff;
	font-size: 10px;
	font-size: 1rem;
	font-weight: normal;
	margin-bottom: 5px;
}
.header-logo a {
}
.header-logo img {
}
.header-right {
	text-align: center;
}
.header-tel {
}
.headerRight .header-tel {
	display: inline-block;
	color: var(--blue1);
	background-color: var(--white);
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	padding: 5px 10px;
}
@media screen and (min-width: 768px) {
	.headerRight .header-tel {
		margin: 30px 0px 0px 0px;
	}
}
.drawer .header-tel {
	padding: 20px 0px;
}
.header-tel em {
	display: block;
	font-size: 14px;
	font-weight: 500;
}
.drawer .header-tel em {
	display: block;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
}
.header-tel a {
	display: inline-block;
	color: var(--blue1);
}
.drawer .header-tel a {
	color: var(--white);
}
.header-tel a svg {
	display: inline-block;
	width: 20px;
	vertical-align: middle;
	margin-right: 10px;
}
.header-tel a svg path {
	fill: var(--blue1);
}
.header-tel a span {
	display: inline-block;
	font-size: 34px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	vertical-align: middle;
}
.drawer .header-tel a span {
	font-size: 24px;
}
@media screen and (max-width: 767px) {
	.header-tel a span {
		font-size: 24px;
	}
}
.header-sns {
	padding: 0px 0px 20px 0px;
}
.drawer .header-sns {
}
.header-sns a svg {
	display: inline-block;
	width: 30px;
	vertical-align: middle;
}
.header-sns a svg path {
	fill: var(--white);
}
.header-contact {
}
.drawer .header-contact {
	padding: 0px 0px 20px 0px;
}
.header-contact a {
	display: inline-block;
	color: var(--blue1);
	background-color: var(--white);
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	padding: 5px 10px;
}
.header-contact a svg {
	display: inline-block;
	width: 20px;
	vertical-align: middle;
	margin-right: 10px;
}
.header-contact a svg path {
	fill: var(--blue1);
}
.header-contact a span {
	display: inline-block;
	font-size: 20px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	vertical-align: middle;
}
.header-contact a:hover {
	background-color: rgba(255,255,255,0.8)
}
@media screen and (max-width: 767px) {
	.header-logo {
		margin-bottom: 5px;
	}
	.header-logo img {
		width: auto;
	}
}
/* ------------------------------------------------ */
#header .header-sns {
	display: none;
}
.drawer .header-sns {
	display: block;
	text-align: center;
}
/* ------------------------------------------------ */
.header-nav {
/*
	position: absolute;
	z-index: 2;
	right: 0px;
	top: 0;
*/
}
#nav {
/*250905
	position:fixed;
	left: 0;
	top: 120px;
*/
	z-index: 998;
	width: 100%;
	background-color: rgba(0,91,171,0.8);
}
.page.home #nav {
	background-color: rgba(255,255,255,0.5);
}
#container.fixed #nav,
.page.home #container.fixed #nav {
	position:fixed;
	left: 0;
	top: 0;
	background-color: rgba(255,255,255,0.9);
	background-color: rgba(0,91,171,0.9);
}
#nav .nav ul li a {
	color: var(--white);
}
.page.home #nav .nav ul li a {
	color: var(--black);
}
#container.fixed #nav .nav ul li a,
.page.home #container.fixed #nav .nav ul li a {
	color: var(--white);
}
.drawer .nav ul li a {
	color: var(--blue1);
}

#nav .nav {
	max-width: 1200px;
	text-align: center;
	margin: 0px auto;
}
.drawer .nav {
}
#nav .nav-inner {
}
#nav .menu-globalnav-container {
	display: inline-block;
	vertical-align: middle;
}
#nav .nav-sns {
	display: inline-block;
	vertical-align: middle;
	width: 70px;
}
.drawer .nav-sns {
	display: none;
}

#nav .nav ul {
	display: table;
	width: 100%;
	table-layout: fixed;
	border-spacing: 0px;
	margin: 0px auto;
	display: block;
}
#nav .nav ul li {
	display: table-cell;
	display: inline-block;
	vertical-align: middle;
	padding: 0px 0px;
}
.drawer .nav ul li.nav-none {
	display: none;
}
.nav ul li a {
	display: block;
	position: relative;
	text-decoration: none;
	padding: 20px 0px;
}
#container.fixed #nav .nav ul li a {
	padding: 10px 0px;
}
.drawer .nav ul li a {
	background-color: rgba(255,255,255,1);
	border-top: 1px solid var(--black);
}
.drawer .nav ul li:last-child a {
	border-bottom: 1px solid var(--black);
}
.nav ul li a strong {
	display: block;
	font-size: 16px;
	font-weight: 500;
	white-space: nowrap;
	border-right: 1px solid;
	padding: 0px 20px;
}
.nav ul li:last-child a strong {
	border-right: none;
}
.drawer .nav ul li a strong {
	border-right: none;
}
#nav .nav ul li a strong {
}
#nav .nav ul li a::after {
	content: '';
	position: absolute;
	z-index: 1;
	left: 0;
	bottom: 10px;
	pointer-events: none;
	width: 100%;
	height: 2px;
	background: rgba(0,91,171,0.8);
	opacity: 0;
}
#nav .nav ul li a:hover::after {
	animation-name:navline;
	animation-delay: 0s;
	animation-duration: 0.5s;
	animation-fill-mode:forwards;
}
@keyframes navline {
	from {
	  transform: scale(0,0.2);
	  opacity: 0;
	}
	to {
	  transform: scale(1,1);
	  opacity: 1;
	}
}
.nav ul li a:hover {
	background-color: rgba(255,255,255,0)
}
.drawer .nav ul li a:active,
.drawer .nav ul li a:hover {
	background-color: rgba(255,255,255,0.3)
}
/* ------------------------------------------------ */
.drawer-ban {
	padding: 20px 5px;
}
.drawer-ban ul {
}
.drawer-ban ul li {
	margin-bottom: 10px;
}
.drawer-ban ul li img {
	border: 1px solid #fff;
}
/* ------------------------------------------------ */
#footer {
	position: relative;
	z-index: 10;
	background-color: var(--white);
	padding: 10px;
}
.footer {
}
.footerinner {
	text-align: center;
}
.footer-logo {
}
.footer-logo a {
	display: inline-block;
}
.footer-logo img {
	display: inline-block;
}
@media screen and (max-width: 767px) {
	.footer-logo img {
		width: auto;
	}
}
.footer-add {
	text-align: center;
	margin-bottom: 10px;
}
.footer-add strong {
}
.footer-add address {
	font-size: 12px;
}
.footer-sns {
	display: block;
	text-align: center;
	padding: 0px 0px 10px 0px;
}
.footer-link {
	font-size: 11px;
	text-align: center;
	margin-bottom: 10px;
}
.footer-link ul {
}
.footer-link li {
	display: inline-block;
	border-left: 1px solid #ccc;
	margin-left: 5px;
	padding-left: 5px;
}
.footer-link li:first-child {
	border-left: none;
	margin-left: 0px;
	padding-left: 0px;
}
.footer-link a {
	text-decoration: none;
}
@media screen and (max-width: 767px) {
	.footer-link li {
		display: block;
		border-left: none;
		border-bottom: 1px dashed #ccc;
		margin-left: 0px;
		padding: 10px;
	}
	.footer-link li:last-child {
		border-bottom: none;
	}
	.footer-link a:hover {
	}
}
.copyright {
	font-weight: 400;
	text-align: center;
	padding: 5px;
}
.copyright small {
	font-size: 10px;
}
/* ------------------------------------------------ */
.sns a {
	display: inline-block;
}
.sns svg {
	display: inline-block;
	width: 30px;
	height: 30px;
}
.sns svg path {
	fill: var(--white);
}
.page.home #nav .sns svg path {
	fill: var(--blue1);
}
.page.home #container.fixed #nav .sns svg path {
	fill: var(--white);
}

#footer .sns svg path {
	fill: var(--blue1);
}

#nav .nav ul li a {
	color: var(--white);
}
/* ---------------------------------------------------------------------- */
#slide {
	position: relative;
	z-index: 0;
overflow: hidden;
}
#slide::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	min-width: 100%;
	min-height: 100%;
	background-color: rgba(255,255,255,0.1);
	background-image: linear-gradient(45deg, rgba(255,255,255,0.2) 25%, transparent 25%, transparent 75%, rgba(255,255,255,0.2) 75%, rgba(255,255,255,0.2)), linear-gradient(45deg, rgba(255,255,255,0.2) 25%, transparent 25%, transparent 75%, rgba(255,255,255,0.2) 75%, rgba(255,255,255,0.2));
	background-position: 0 0, 3px 3px;
	background-size: 6px 6px;
}
.slide {
	width: 100%;
	height: 100%;
}
.swiper {
	width: 100%;
	height: 100%;
}
.swiper-slide {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
.swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/*
.swiper-slide {
	width: 100%;
	max-width: 1000px;
}
*/
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  --swiper-navigation-color: #ffffff;
  background: #ffffff;
}
.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}
@media screen and (max-width: 767px) {
	.swiper-slide {
		width: 100%;
		max-width: none;
	}
}
/* ------------------------------------------------ */
#mv{
	overflow: hidden;
	position: relative;
	z-index: 0;
	background-color: var(--white);
}
.video-bg {
	position: relative;
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	pointer-events: none;
	width: 100%;
}
.video-bg::before {
	content: "";
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	height: calc(93vh);
	height: 56.25vw;
	min-width: 100%;
	min-height: 100%;
	background-color: rgba(255,255,255,0.5);
	background-color: rgba(0,0,0,0);
	box-sizing: border-box;
	line-height: 1em;
}
.video-bg::after {
/*
	content: "";
	position: absolute;
	z-index: 2;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	height: calc(93vh);
	height: 56.25vw;
	min-width: 100%;
	min-height: 100%;
	background-color: rgba(0,0,0,0.1);
	background-image: linear-gradient(45deg, rgba(0,0,0,0.02) 25%, transparent 25%, transparent 75%, rgba(0,0,0,0.02) 75%, rgba(0,0,0,0.02)), linear-gradient(45deg, rgba(0,0,0,0.02) 25%, transparent 25%, transparent 75%, rgba(0,0,0,0.02) 75%, rgba(0,0,0,0.02));
	background-position: 0 0, 3px 3px;
	background-size: 6px 6px;
	box-sizing: border-box;
	line-height: 1em;
*/
}
#video {
	position: relative;
	z-index: 0;
	margin: 0;
	line-height: 1em;
	width: 100%;
}
#bg-video {
	width: 100%;
}


/* ------------------------------------------------ */
.drawertrig {
	background-color: var(--white);
	-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);
}
.drawer-open .drawertrig {
	background: transparent;
	box-shadow: none;
}
.drawer-open .drawertrig span {background: rgba(0,0,0,0);}
.drawertrig span, .drawertrig span::before, .drawertrig span::after {
	background: var(--blue1);
}
.drawer-open .drawertrig span::before, .drawer-open .drawertrig span::after {
	background: #fff;
}
.drawer {
	background-color: var(--blue1);
}
#drawertrig a {
	text-decoration: none;
}
#drawertrig a em {
	display: block;
	text-align: center;
	padding-top: 28px;
}
#drawertrig a em::before,
#drawertrig a em::after {
	font-size: 11px;
}
#drawertrig a em::before {
	content: "";
}
#drawertrig a em::after {
	content: "Menu";
	color: var(--blue1);
}
.drawer-open #drawertrig a em::before {
	content: "Close";
	color: var(--white);
}
.drawer-open #drawertrig a em::after {
	content: "";
}
/* ------------------------------------------------ */
.gotop{
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 9999;
}
.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;
	border: 1px solid #000;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	margin-left: auto;
	margin-right: 10px;
	margin-bottom: 10px;
/*
	-moz-box-shadow: 0px 0px 0px 1px rgba(255,255,255,1);
	-webkit-box-shadow: 0px 0px 0px 1px rgba(255,255,255,1);
	box-shadow: 0px 0px 0px 1px rgba(255,255,255,1);
*/
}
.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: #000;
	transform: rotate(45deg);
	margin-left: -5px;
}
.gotop a::after {
	bottom: -10px;
	z-index: 0;
	width: 1px;
	height: 31px;
	background-color: #000;
/*
	border: 1px solid #fff;
	margin-left: -1px;
*/
}
.gotop a:hover {
	background-color: var(--blue2);
	border: 1px solid var(--blue2);
}
.gotop a:hover::before {
	bottom: 20px;
	border-color: #fff;
}
.gotop a:hover::after {
	bottom: 0px;
	background-color: #fff;
/*
	border: 1px solid #000;
*/
}
.gotop a span {
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
/* ------------------------------------------------ */
.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 {
	position: relative;
	line-height: 1.8em;
}
.main {
	background-color: var(--white);
}
/* --------- */
#top {
}
.top {
}
/* primary------------------------------------------------ */
.primary {
	margin-bottom: 20px;
	padding: 0px;
}
@media screen and (max-width: 767px) {
	.primary {
		padding: 5px;
	}
}
/* ------------------------------------------------ */
.tex {
	margin-bottom: 10px;
	padding: 5px 10px;
}
.tex p {margin-bottom: 10px;}
.tex p:last-child {margin-bottom: 0px;}
/* link------------------------------------------------ */
.link {
	text-align: center;
}
.link.more {
}
.link ul {
	text-align: center;
}
.link li {
	margin-bottom: 5px;
}
.link.inline li {
	display: inline-block;
	margin: 0px 5px;
}
@media screen and (max-width: 767px) {
	.link.inline li {
		display: block;
		margin: 0px 0px 10px 0px;
	}
	.link.inline li:last-child {
		margin: 0px;
	}
}
.link li a {
	display: block;
}

.link a {
	display: inline-block;
	position: relative;
	font-weight: 500;
	font-size: 1.2em;
	text-decoration: none;
	letter-spacing: 0.1em;
	-webkit-transition: border 0.5s ease-out;
	transition: border 0.5s ease-out;
	transition-delay: 0.8s;
	cursor: pointer;
	overflow: hidden;
	outline: none;
	box-shadow: 1px 1px 5px 2px rgba(0,0,0,0.3);
	-moz-box-shadow: 1px 1px 5px 2px rgba(0,0,0,0.3);
	-webkit-box-shadow: 1px 1px 5px 2px rgba(0,0,0,0.3);
}
.link a {
	color: var(--link2);
	background: var(--link1);
	border: none;
	-webkit-transition: all 0.7s ease;
	transition: all 0.7s ease;
}
.link.more a {
	font-size: 14px;
}
.link a span {
	display: block;
	position: relative;
	z-index: 1;
	border-top: 2px solid var(--link2);
	border-bottom: 2px solid var(--link2);
	padding: 20px 50px;
}
.link.more a span {
	font-size: 14px;
	padding: 5px 30px;
}
.link a:before,
.link a:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0px;
	z-index: 3;
	width: 0px;
	height: 3px;
	background: var(--link3);
	transition: all 0.4s ease;
}
.link a:after {
	top: inherit;
	left: inherit;
	bottom: 0;
	right: 0;
}
.link.arrow span::before,
.link.arrow span::after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	width: 2px;
	height: 6px;
	background: var(--link2);
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.link.arrow span::before {
	-webkit-transform: skewX(30deg);
	transform: skewX(30deg);
	margin-top: -6px;
}
.link.arrow span::after {
	-webkit-transform: skewX(-30deg);
	transform: skewX(-30deg);
}
.link a:hover {
	background: var(--link2);
	color: var(--link3);
}
.link a:hover:before,
.link a:hover:after {
	-webkit-transition: all 0.7s ease;
	transition: all 0.7s ease;
	width: 100%;
}
.link.arrow a:hover span::before,
.link.arrow a:hover span::after {
	background: var(--link3);
}
/* table------------------------------------------------ */
table {
	width: 100%;
}
.table {
	width: 100%;
	border-collapse:sepalate;
	/*border-collapse:collapse;*/
	border-spacing: 3px;
	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;
}

/*
table {
	width: 100%;
}
.table {
	display:table;
	width: 100%;
	border-collapse:sepalate; //collapse
	border-spacing: 5px;
	empty-cells:show;
	margin: 0px auto;
}
.row{
	display:table-row;
}
.th{
	display:table-cell;
	width: 25%;
	text-align: center;
	vertical-align: middle;
	background-color: #f5f3f2;
	border: 1px solid #dcdddd;
	padding: 5px;
}
.td {
	display:table-cell;
	border: 1px solid #dcdddd;
	padding: 5px;
}
.contact table p {
	padding-bottom:5px;
}
@media screen and (max-width:767px) {
	.table,
	.row,
	.th,
	.th:before{
		display:block;
	}
	.table,
	.row .th:last-child{
		border-bottom:none;
	}
	.row{
		margin:20px 0;
	}
	.row .th:nth-child(1){ 
	}
	.row .th:last-child{
	}
	.row:last-child .th,
	.th{
		width: auto;
	}
	.th:before{
		font-weight:bold;
		padding-right:20px;
		font-size:12px;
		content:" "attr(data-label)"";
	}
	.td {
		display: block;
		border: none;
		padding: 10px;
	}
}
*/
/* ------------------------------------------------ */
.photo {}.photo ul {display: table;width: 100%;table-layout: fixed;border-spacing: 0px;margin: 0px auto;}.photo li {display: table-cell;vertical-align: top;}.photo li img {margin: 0px auto;}@media screen and (max-width: 767px) {.photo ul {display: block;width: auto;}.photo li {display: block;}}
.photo.photoB ul {display: table;width: 100%;table-layout: fixed;border-spacing: 0px;margin: 0px auto;}.photo.photoB li {display: table-cell;vertical-align: top;}}
.photo.flex {}.photo.flex ul {display: flex;flex-wrap: wrap;-webkit-flex-wrap: wrap;align-items: flex-start;align-content: flex-start;}.photo.flex li {width: 25%;}
/* ------------------------------------------------ */
.movie {z-index: 9998!important;width: 560px;margin: 0 auto;padding:0;}.movie iframe{z-index: 9998!important;}@media screen and (max-width: 767px){.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;}}.tableboxA,.tableblocA dl,.tableblocA ul {}.tabletdA,.tableblocA li,.tableblocA dt,.tableblocA dd {}@media screen and (max-width: 767px) {.tableboxA,.tableblocA dl,.tableblocA ul {display: table;width: 100%;table-layout: fixed;border-spacing: 0px;margin: 0px auto;list-style-type: none;}.tabletdA,.tableblocA li,.tableblocA dt,.tableblocA dd {display: table-cell;vertical-align: top;}}@media screen and (max-width: 479px) {.tableboxA,.tableblocA dl,.tableblocA ul {display: block;width: auto;}.tabletdA,.tableblocA li,.tableblocA dt,.tableblocA dd {display: block;width: auto;}}.tableboxB,.tableblocB dl,.tableblocB ul {}.tabletdB,.tableblocB li,.tableblocB dt,.tableblocB dd {}@media screen and (max-width: 767px) {.tableboxB,.tableblocB dl,.tableblocB ul {display: table;width: 100%;table-layout: fixed;border-spacing: 0px;margin: 0px auto;list-style-type: none;}.tabletdB,.tableblocB li,.tableblocB dt,.tableblocB dd {display: table-cell;vertical-align: top;}}.tableboxC,.tableblocC dl,.tableblocC ul {}.tabletdC,.tableblocC li,.tableblocC dt,.tableblocC dd {}@media screen and (max-width: 767px) {.tableboxC,.tableblocC dl,.tableblocC ul {display: table;width: 100%;table-layout: fixed;border-spacing: 0px;margin: 0px auto;list-style-type: none;}.tabletdC,.tableblocC li,.tableblocC dt,.tableblocC dd {display: table-cell;vertical-align: top;}}@media screen and (max-width: 679px) {.tableboxC,.tableblocC dl,.tableblocC ul {display: block;width: auto;}.tabletdC,.tableblocC li,.tableblocC dt,.tableblocC dd {display: block;width: auto;}}
.notablebloc dl,.notablebloc ul {display: block;width: auto;}.notablebloc li,.notablebloc dt,.notablebloc dd {display: block;width: auto;}
.tableinner {}.tableinner dl {background-color: #fff;border-top: 1px solid #000;margin: 0px auto;}.tableinner dl:last-child {border-bottom: 1px solid #000;}.tableinner dt {width: 20%;color: var(--blue1);font-weight: 700;line-height: 1.6em;text-align: center;vertical-align: middle;border-right: 1px solid #000;padding: 20px 10px;}.tableinner dd {padding: 20px 20px;}@media screen and (max-width: 767px) {.tableinner dt {width: auto;border-right: none;border-bottom: 1px dashed #ccc;padding: 10px 10px;}.tableinner dd {padding: 10px 10px;}}.tableinner dd p {margin-bottom: 10px;}.tableinner dd p:last-child {margin-bottom: 0px;}
/* ------------------------------------------------ */
.flexbloc {display: flex;flex-direction: row;flex-wrap: nowrap;align-items: stretch;align-content: stretch;justify-content: flex-start;}.flexbloc .flexitem {flex-grow: 1;/*flex-basis: auto;flex-grow: 0;flex-shrink: 1;order: 1;*/}.flexinline {font-size: 0;line-height: 1em;}.flexinline .flexitem {display: inline-flex;display: -webkit-inline-flex;display: -webkit-inline-box;display: -ms-inline-flexbox;width: 200px;font-size: 16px;line-height: 1em;}.flexbox {}.flexbox ul {display: flex;align-items: stretch;align-content: stretch;justify-content: stretch;flex-wrap: wrap;}.flexbox li {flex-grow: 1;}
/* ------------------------------------------------ */
.inlinebloc dl,.inlinebloc ul {font-size: 0;line-height: 1em;list-style-type: none;}.inlinebloc li,.inlinebloc dt,.inlinebloc dd {display: inline-block;font-size: 16px;line-height: 1em;}@media screen and (max-width: 767px) {.inlineblocA dl,.inlineblocA ul {display: block;}.inlineblocA li,.inlineblocA dt,.inlineblocA dd {display: block;}}@media screen and (max-width: 479px) {.inlineblocB dl,.inlineblocB ul {display: block;}.inlineblocB li,.inlineblocB dt,.inlineblocB dd {display: block;}}
/* ------------------------------------------------ */
.map iframe {width:100%;height:500px;}@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;
	}
}
/* ------------------------------------------------ */
.recaptcha_policy {
	text-align: center;
	font-size: 13px;
	padding: 20px 0px;
}
.recaptcha_policy a {
	text-decoration: underline;
}
.grecaptcha-badge { visibility: hidden; }

/* ------------------------------------------------ */