@charset "UTF-8";

/* --------------------------------
	header
-------------------------------- */
header {
	position: relative;
    width: 100%;
	height: 600px;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	background: url(../img/main2.png) no-repeat top center;
	z-index:3;
	overflow:hidden;
}
header.page {
	height: 260px;
	background: url(../img/pgmain.png) no-repeat top center;
}
.hedline {
	display:block;
	height: 27px;
	background-color: #44648d;
}
.hedline h1 {
    font-size: 1.1rem;
    letter-spacing: 0.1em;
    color: #c2b6ac;
    text-align: center;
    padding-top: 8px;
}
.hed {
	width:1000px;
	margin:0 auto;
}
.hed ul {
	text-align:right;
}
.hed ul li {
	display:inline-block;
}
.hed ul li a {
    font-size: 1.15rem;
    line-height: 1;
    letter-spacing: 0.02em;
    position: relative;
    display: inline-block;
	padding:0 20px;
    color: #e0cab3;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}
.hed ul li a:hover {
	color:#FFFFFF;
}
.hed ul li.conct {
	padding-left: 20px;
	background: #44648d;
	border-radius:0 0 10px 10px;
}
.hed ul li.conct a {
	vertical-align:top;
    padding-left: 0;
	padding-top: 3px;
}
.hed ul li.simap {
}
.hed ul li.simap a {
    padding-left: 20px;
}
.hed ul li.conct a:before {
	content: "\f003";
    font-family: 'FontAwesome';
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    margin-right: 5px;
	font-size: 1.35rem;
    vertical-align: bottom;
}
.hed ul li.simap a:before {
	content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    background: url(../img/mk_sitemap.png) no-repeat;
    background-size: contain;
    top: -2px;
    left: 0;
}

/* -- PC nav -- */
#nav {
    top: -100px;
	margin-top:100px;
	position:relative;
}
nav.pcnav {
	position:relative;
	width: 1000px;
	margin: 0 auto;
	padding-top: 10px;
}
nav.pcnav .fixlogo {
	display:none;
}
nav.pcnav ul {
	width:100%;
	text-align:right;
}
nav.pcnav ul li {
	display:inline-block;
	vertical-align:middle;
}
nav.pcnav ul li a {
	display:block;
	font-size:13px;
	line-height:1.2;
	letter-spacing: 0.1em;
	padding:10px 25px;
	margin:0 2px;
	color:#FFFFFF;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}
nav.pcnav ul li a:hover {
	color: #44648d;
}
nav.pcnav ul li.hom {
}
nav.pcnav ul li.hom a {
    position: relative;
    display: inline-block;
    padding-left: 33px;
	padding-top: 10px;
    padding-bottom: 10px;
}
nav.pcnav ul li.hom a:hover {
	color: #FFFFFF;
	background: #6586c1;
	border-radius:5px;
}
nav.pcnav ul li.hom a:before {
	content: "";
    position: absolute;
    width: 14px;
    height: 15px;
    background: url(../img/nav_home.png) no-repeat;
    background-size: contain;
    top: 10px;
    left: 14px;
}
nav.pcnav ul li.hom a.on:hover {
	background:none;
}
nav.pcnav ul li a.on {
	border-bottom:3px solid #FFFFFF;
	margin:0;
	color: #FFFFFF;
}
nav.pcnav ul li a.on:hover {
	color: #FFFFFF;
}
nav.pcnav .hvr-underline-from-center:before {
	background: #6586c1;
    height: 2px;
}

/* -- #nav fixed -- */
#nav.fixed {
	width:100%;
    top: 0;
    position: fixed;
	z-index:10;
    margin-top: 0;
    padding-top: 0;
    background: rgba(68,100,141,.80);
	box-shadow: 0px 0px 4px 0px rgba(74,74,74,.6);
    transition: top 0.5s ease-in;
    -webkit-transition: top 0.5s ease-in;
    -moz-transition: top 0.5s ease-in;
}
#nav.fixed nav.pcnav {
	padding-top: 3px;
	padding-bottom:2px;
}
#nav.fixed nav.pcnav .fixlogo {
	font-family: 'Arsenal', sans-serif;
	position: absolute;
    display: inline-block;
    top: 5px;
    left: 20px;
    font-size: 3.2rem;
	letter-spacing:0.03em;
    line-height: 1;
    color: rgba(255,255,255,1.00);
}

/* -- hed etc -- */
.navline {
	width: 1000px;
    position: absolute;
    top: 100px;
    left: 0;
    right: 0;
    margin: auto;
    border-top: 1px solid #c2eae2;
}
.tateline {
	height: 200px;
    position: absolute;
    border-left: 1px solid #c9f3ea;
    top: -50px;
    left: 50px;
}
.hedtxt {
    background-image: url(../img/toptitle_line.png);
    background-repeat: no-repeat;
    background-position: top left;
    height: 204px;
    display: inline-block;
    margin-left: 20px;
    margin-top: 100px;
    padding-left: 25px;
	position: relative;
    z-index: 2;
}
.hedtxt .tai {
}
.hedtxt .txt {
	position: relative;
    z-index: 2;
}
.hedtxt .txt p {
	font-family: 'Cormorant Garamond', serif;
	font-size:3.4rem;
	letter-spacing:0.01em;
	line-height:1.4;
	margin-top: 10px;
	color:#6586c1;
}


/* --------------------------------
	footer
-------------------------------- */
footer {
	position: relative;
    width: 100%;
	margin-top:200px;
}
footer .balloon {
	z-index:1;
}
.fotbg {
	position: relative;
    width: 100%;
	padding: 30px 0 10px;
	background-color: #44648d;
	z-index: 2;
}
.fotarea {
	margin:0 auto;
	width:900px;
	display:block;
	overflow:hidden;
}
.fotarea h3 {
	font-size: 1.7rem;
    color: #c2b6ac;
    padding-bottom: 10px;
    letter-spacing: 0.1em;
}
.fotarea p.txt {
	line-height: 1.6;
	color:#EEEEEE;
}
.fotarea ul {
	margin-left: 6%;
}
.fotarea ul li {
	width:18%;
	display:inline-block;
	padding:8px 0;
}
.fotarea ul li a {
	font-size:1.2rem;
	letter-spacing:0.1em;
	color:#c2b6ac;
	display:inline-block;
	position:relative;
	padding-left: 20px;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}
.fotarea ul li a:hover {
	color: #FFFFFF;
	/*text-shadow: 0px 0px 4px #FFF, -0px 0px 4px #FFF, 0px -0px 4px #FFF, -0px -0px 4px #FFF rgba(255, 255, 255, 0.8);*/
}
.fotarea ul li a.fotmk1:before {
	content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    background: url(../img/fmk_about.png) no-repeat;
    background-size: contain;
    top: 2px;
    left: 0;
}
.fotarea ul li a.fotmk2:before {
	content: "";
    position: absolute;
    width: 17px;
    height: 14px;
    background: url(../img/fmk_links.png) no-repeat;
    background-size: contain;
    top: 2px;
    left: 0;
}
.fotarea ul li a.fotmk3:before {
	content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    background: url(../img/fmk_meeting.png) no-repeat;
    background-size: contain;
    top: 2px;
    left: 0;
}
.fotarea ul li a.fotmk4:before {
	content: "";
    position: absolute;
    width: 13px;
    height: 13px;
    background: url(../img/fmk_sitemap.png) no-repeat;
    background-size: contain;
    top: 2px;
    left: 0;
}
.fotarea ul li a.fotmk5:before {
	content: "";
    position: absolute;
    width: 18px;
    height: 14px;
    background: url(../img/fmk_member.png) no-repeat;
    background-size: contain;
    top: 2px;
    left: 0;
}
.fotarea ul li a.fotmk6:before {
	content: "";
    position: absolute;
    width: 16px;
    height: 13px;
    background: url(../img/fmk_contact.png) no-repeat;
    background-size: contain;
    top: 3px;
    left: 0;
}
.fotarea ul li a.fotmk7:before {
	content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    background: url(../img/fmk_schol.png) no-repeat;
    background-size: contain;
    top: 1px;
    left: 0;
}
.fotarea ul li a.fotmk8:before {
	content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    background: url(../img/fmk_commerce.png) no-repeat;
    background-size: contain;
    top: 1px;
    left: 0;
}
.fotcop {
	text-align:center;
	font-size:1.1rem;
	color:#CCCCCC;
	padding-top: 50px;
}


/* --------------------------------
	kazari
-------------------------------- */
#topjanp {
    position: fixed;
    bottom: 30px;
    right: 40px;
	z-index:9;
}
#topjanp a {
	display:block;
}

/* bgmoov */
.bgmoov {
    height: 2000px;
    width: 100%;
    max-width: 1700px;
    position: absolute;
    overflow: hidden;
    top: 5px;
    left: 163px;
    right: 0;
    margin: 0 auto;
    z-index: 1;
}
section .inner div {
	-moz-animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	
	-moz-animation-direction: alternate;
	-webkit-animation-direction: alternate;
	animation-direction: alternate;
	
	-moz-animation-timing-function: linear;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;  
	/*
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
	*/
}
.balloon .inner div {
    position: absolute;
    display: block;
}

.flake {
	-moz-animation-name: Drop;
	-webkit-animation-name: Drop;
	animation-name: Drop;
    left: -125px;
    top: 270px;
	background:url(../img/bgbottom.png) no-repeat;
	background-size:100%;
    width: 975px;
    height: 382px;
    -webkit-animation-duration: 16s;
    animation-duration: 16s;
    -webkit-animation-delay: .5s;
    animation-delay: .5s;
}
@-webkit-keyframes Drop {
    0% {
		left: -125px;
		top: 270px;
		background-size:100%;
    }
    50% {
		left: -10px;
		top: 350px;
		background-size:75%;
    }
    100% {
		left: -125px;
		top: 270px;
		background-size:100%;
    }
}
@keyframes Drop {
    0% {
		left: -125px;
		top: 270px;
		background-size:100%;
    }
    50% {
		left: -10px;
		top: 350px;
		background-size:75%;
    }
    100% {
		left: -125px;
		top: 270px;
		background-size:100%;
    }
}

.flake1 {
	-moz-animation-name: Drop1;
	-webkit-animation-name: Drop1;
	animation-name: Drop1;
    left: -20%;
    top: 290px;
	background:url(../img/bgleft.png) no-repeat;
    width: 569px;
    height: 565px;
    -webkit-animation-duration: 30s;
    animation-duration: 30s;
    -webkit-animation-delay: 5.0s;
    animation-delay: 5.0s;
}
@-webkit-keyframes Drop1 {
    0% {
		top: 290px;
		left: -20%;
    }
    25% {
		top: 390px;
		left: -25%;
    }
    50% {
		top: 490px;
		left: -17%;
    }
    75% {
		top: 390px;
		left: -25%;
    }
    100% {
		top: 290px;
		left: -20%;
    }
}
@keyframes Drop1 {
    0% {
		top: 290px;
		left: -20%;
    }
    25% {
		top: 390px;
		left: -25%;
    }
    50% {
		top: 490px;
		left: -17%;
    }
    75% {
		top: 390px;
		left: -25%;
    }
    100% {
		top: 290px;
		left: -20%;
    }
}

.flake2 {
	-moz-animation-name: Drop2;
	-webkit-animation-name: Drop2;
	animation-name: Drop2;
    right:-24%;
    top: -40px;
	background:url(../img/bgright.png) no-repeat;
    width: 603px;
    height: 602px;
    -webkit-animation-duration: 30s;
    animation-duration: 30s;
    -webkit-animation-delay: 1.0s;
    animation-delay: 1.0s;
}
@-webkit-keyframes Drop2 {
    0% {
		top: -40px;
		right:-24%;
    }
    25% {
		top: 60px;
		right:-30%;
    }
    50% {
		top: 160px;
		right:-20%;
    }
    75% {
		top: 60px;
		right:-30%;
    }
    100% {
		top: -40px;
		right:-24%;
    }
}
@keyframes Drop2 {
    0% {
		top: -40px;
		right:-24%;
    }
    25% {
		top: 60px;
		right:-30%;
    }
    50% {
		top: 160px;
		right:-20%;
    }
    75% {
		top: 60px;
		right:-30%;
    }
    100% {
		top: -40px;
		right:-24%;
    }
}

.flake3 {
	-moz-animation-name: Drop3;
	-webkit-animation-name: Drop3;
	animation-name: Drop3;
    right:-30%;
    bottom: 200px;
	background:url(../img/bgbottom.png) no-repeat;
    width: 975px;
    height: 382px;
    -webkit-animation-duration: 130s;
    animation-duration: 130s;
    -webkit-animation-delay: 3.0s;
    animation-delay: 3.0s;
}
@-webkit-keyframes Drop3 {
    0% {
		bottom: 200px;
		right:-30%;
    }
    25% {
		bottom: 150px;
		right:15%;
    }
    50% {
		bottom: 200px;
		right:60%;
    }
    75% {
		bottom: 150px;
		right:15%;
    }
    100% {
		bottom: 200px;
		right:-30%;
    }
}
@keyframes Drop3 {
    0% {
		bottom: 200px;
		right:-30%;
    }
    25% {
		bottom: 150px;
		right:15%;
    }
    50% {
		bottom: 200px;
		right:60%;
    }
    75% {
		bottom: 150px;
		right:15%;
    }
    100% {
		bottom: 200px;
		right:-30%;
    }
}

.animeA {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;

  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  
  -webkit-animation-timing-function: ease;
  animation-timing-function: ease;
  
  -webkit-animation-fill-mode:both;
  animation-fill-mode:both;
/*
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;*/
}


/* --------------------------------
	  pan
-------------------------------- */
.breadcrumb.page {
    padding: 0 5px;
    margin-bottom: 0;
    list-style: none;
	border-radius: 0;
	background: none;
	margin:0 auto;
}
.breadcrumb.page li {
    font-size: 12px;
	letter-spacing: 0.1em;
}
.breadcrumb.page li.active {
	color: #a0a0a0;
}
.breadcrumb.page li a {
	display:block;
	color: #a0a0a0;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}
.breadcrumb.page li a:hover {
	color: #6586c1;
	text-decoration: underline;
}
.breadcrumb.page > li + li:before {
    content: "\003e";
    font-family: "FontAwesome";
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
	color: #B1B1B1;
    font-size: 14px;
	padding: 0 10px;
}

/*バナー*/
.banner{
	display:flex;
	width:860px;
	margin:0 auto 70px;
}
.banner img{
	max-width:250px;
	margin:0 10px;
}
.banner a{
	display:block;
}
.banner2{
	display:flex;
	width:860px;
	margin:70px auto 0;
}
.banner2 img{
	max-width:250px;
	margin:0 10px;
}
.banner2 a{
	display:block;
}
.banner3{
	display:flex;
	position:absolute;
	top:500px;
	left:90px;
}
.banner3 img{
	max-width:250px;
	margin:0 10px;
}
.banner3 a{
	display:block;
}
