@charset "utf-8";
body {
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

:root {
	--color-primary: #131C56;
	--color-primary2: #0C2762;
	--border:#6081A7;
	--border2:#425184;
	--txt:#85A5CB;
	--white:#fff;
}

body {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
	font-size:16px;
	line-height:1.6;
	word-wrap: break-word;
	color: var(--white);
	background:var(--color-primary);
}

.en{
	font-family: "Cormorant", serif;
}

@media screen and (max-width: 800px) {
body {
	font-size:14px;
}
}

a{
	color: #fff;
}


h1,h2,h3,h4,h5,h6{
	font-weight:normal;
}

/* contents
-------------------------------------------------------------------*/
#breadcrumb{
	padding:190px 20px 0 20px;
}

#breadcrumb ul{
	max-width:990px;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
	font-size:12px;
}

#breadcrumb ul li,
#breadcrumb ul li a{
	color: var(--txt);
}

#breadcrumb ul li:not(:first-child){
	padding:0 0 0 30px;
	position:relative;
}

#breadcrumb ul li:not(:first-child):after {
    content: ">";
    position: absolute;
    left: 10px;
    top: -1px;
}

.img{
	line-height:0;
}

.wrap {
	min-width:1024px;
	position:relative;
	overflow:hidden;
}

.wd{
	max-width:990px;
	margin:0 auto;
	box-sizing:border-box;
	position:relative;
}


.contents{
	clear:both;
}

.scale{
	width:100%;
	height:auto;
}

.sp{
	display:none !important;
}

.left{
	float:left;
}

.right{
	float:right;
}

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

.coverimg{
	overflow:hidden;
	position:relative;
}

.coverimg:before{
	content: "";
	display: block;
	padding-top: 100%;
}

.coverimg img{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	object-fit: cover;
	transition:1s all;
}

@media screen and (max-width: 800px) {
#breadcrumb {
    padding: 90px 20px 0 20px;
}	
	
.wrap {
	min-width:inherit;
	box-sizing:border-box;
	contain:inherit;
}

.spleft{
	float:left;
}

.spright{
	float:right;
}

.spscale{
	width:100%;
	height:auto;
}

.contents{
	margin:0;
	padding:0;
}

.wd{
	width:100%;
	margin:0 auto;
	box-sizing:border-box;
}

.spscale{
	width:100%;
	height:auto;
}

img{
	max-width:100%;
	height:auto;
	margin:0 auto;
}

.pc{
	display:none !important;
}

.sp{
	display:block !important;
}

.spleft{
	float:left;
}

.spright{
	float:right;
}

input{
	font-size:16px;
}
}


/* header
-------------------------------------------------------------------*/
header{
	position:absolute;
	left:0;
	right:0;
	top:0;
	z-index:999;
	width:100%;
	box-sizing:border-box;
	padding:20px 30px;
	text-align:center;
	background:var(--color-primary);
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.home header{
	background:none;
}

header .logo{
	line-height:0;
	text-align:left;
}

header nav ul{
	display:flex;
}

header nav ul > li{
	padding:0 40px 0 0;
	font-weight:700;
	font-family: "Cormorant", serif;
}

.clone_gnav {
	position: fixed;
	top: 0;
	left: 0;
	right:0;
	margin:0 auto;
	z-index: 10001;
	width: 100%;
	transition: .3s;
	transform: translateY(-100%);
	min-width:1000px;
	background:var(--color-primary) !important;
}

.clone_gnav.is-show,
body.nav-open .clone_gnav {
    transform: translateY(0) !important;
}

.triger-wrap{
	display:none;
}

@media screen and (max-width: 1120px) {
header .logo{
	width:120px;
}

header nav ul > li{
	padding:0 20px 0 0;
}
}


@media screen and (max-width: 800px) {
header {
    padding: 13px;
    display:block;
}
	
header .logo{
	width:100px;
	position:relative;
	line-height:0;
	z-index:1000;
}

header nav{
    top:0;
	bottom:0;
	right:0;
	left:0;
    z-index: 998;
    position: fixed;
    height: 100%;
	box-sizing:border-box;
	padding:13px 13px 90px 13px;
	overflow:auto;
	background:var(--color-primary);
	display:none;
	width:100%;
	text-align:center;
	overflow:auto;
}

header nav ul {
    display:block;
	padding:100px 0 0 0;
}

header nav ul > li{
	padding:0 0 30px 0;
	font-size:20px;
}

.triger-wrap{
	display:block;
	width:60px;
	height:60px;
	position:absolute;
    right:0;
    top: 0;
	z-index:9999;
}

.top-trigger,
.top-trigger span {
	display: block;
	transition: all .4s;
	box-sizing: border-box;
    z-index: 9999;
}

.top-trigger {
    position: relative;
    width: 100%;
    height: 100%;
	cursor: pointer;
	transition: all 0.2s ease-in-out;
}

.top-trigger span {
	position: absolute;
	width: 30px;
	height: 1px;
	background-color: var(--white);
    z-index: 99999;
	top:50%;
	left:50%;
	transform: translate(-50%, -50%);
}

.top-trigger span:nth-of-type(1) {
    margin-top: -7px;
}

.top-trigger span:nth-of-type(2) {
    margin-top: 0;
}

.top-trigger span:nth-of-type(3) {
    margin-top: 7px;
}

.triger-wrap.active span:nth-of-type(1) {
	margin-top: 0;
	transform: translate(-50%, -50%) rotate(-45deg);
	
	
}
.triger-wrap.active span:nth-of-type(2) {
	opacity:0;
}
.triger-wrap.active span:nth-of-type(3) {
	transform: translate(-50%, -50%) rotate(45deg);
	margin-top: 0;
}

.clone_gnav {
	min-width:inherit;
	z-index: 10001;
}

.clone_gnav nav {
	position: fixed;
	top: 0;
	left: 0;
	height: 100vh;
	z-index: 10002;
	transform: none;
}

body.nav-open .clone_gnav {
	transform: translateY(0);
	transition: none;
	visibility: visible;
	display: block;
	z-index: 10001;
}
	
body.nav-open .clone_gnav .logo,
body.nav-open header .logo {
	z-index: 10010;
	position: relative;
}	
	
body.nav-open .clone_gnav .triger-wrap,
body.nav-open header .triger-wrap {
	z-index: 10011;
	position: absolute;
}
	
header nav {
	z-index: 10005;
}
}

/* footer
-------------------------------------------------------------------*/
footer .copy{
	font-size:12px;
	text-align:center;
	padding:30px 0;
	font-weight:500;
}