/*=============================================
*
* 
*
=============================================*/
body {
	color: #000;
}
body img {
	width: auto;
}
p {
	text-align:left;
}
a {
	color: #231f20;
}
a:hover {
	/*opacity: 0.8;*/
}
span {
	display: inline;
} 
/*=============================================
*
* wrapper
*
=============================================*/
#wrapper {
	overflow:hidden;
	position:relative;
}
/*=============================================
*
*  header
*
=============================================*/
#header {
	background: #fff;
	height:auto;
	top: -80px;
	position: fixed;
	width: 100%;
	z-index: 500;
}
#header.comp {
	top: 0;
	
	transition: all 0.7s ease;
	-webkit-transition: all 0.7s ease;
}
#header::before {
	bottom: 0;
	content: " ";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 6000;
	
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#020075+0,c0b027+25,ff7ed0+75,d41095+100 */
	background: #020075; /* Old browsers */
	background: -moz-linear-gradient(left, #020075 0%, #c0b027 25%, #ff7ed0 75%, #d41095 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #020075 0%,#c0b027 25%,#ff7ed0 75%,#d41095 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #020075 0%,#c0b027 25%,#ff7ed0 75%,#d41095 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#020075', endColorstr='#d41095',GradientType=1 ); /* IE6-9 */
}


@media screen and (max-width:1000px){
	#header {
		
	}
}
@media screen and (max-width:700px){
	#header {
		min-height: 0;
	}
}
/* Inner */
#headerInner {
	height: 80px;
	margin:0 auto;
	max-width: 1400px;
	text-align: left;
	position: relative;
	width: 100%;

	transition: opacity 0.5s;
	-webkit-transition: opacity 0.5s;
	
	opacity: 0;
	-webkit-opacity: 0;
}
#headerInner.comp {
	opacity: 1;
	-webkit-opacity: 1;
}
@media screen and (max-width:1400px){
	#headerInner {
		
	}
}
@media screen and (max-width:1000px){
	#headerInner {
	}
}
@media screen and (max-width:700px){
	#headerInner  {
		height: 50px;
	}
}
/*---------------------------------------------
ロゴ
---------------------------------------------*/
#header #headerLogoArea {
	display: inline-block;
	left: 0;
	position: relative;
	top: 0;
	height: 100%;
	width: auto;
	z-index: 1000;
	
	animation-duration: 1.5s;
	animation-name: logo;	
	-webkit-animation-duration: 1.5s;
	-webkit-animation-name: logo;
}
@keyframes logo {
	0% {
		opacity: 0;
		-webkit-opacity: 0;
	}
	100% {
		opacity: 1;
		-webkit-opacity: 1;	
	}
}
@media screen and (max-width:1000px){
	#header #headerLogoArea {
		left: 10px;
		text-align: left;
	}
}
@media screen and (max-width:700px){
	#header #headerLogoArea {
		height: 40px;
		left: 10px;
	}
}
#header #headerInner h1.logo {
	height: 100%;
	max-width: 128px;
	padding: 10px 0 0 10px;
	width: 100%;
}
@media screen and (max-width:700px){
	#header #headerInner h1.logo {
		padding: 5px 0 0 0;
	}
}
#header #headerInner h1.logo a {
	display: block;
	height: 100%;
}
@media screen and (max-width:700px){
	#header #headerInner h1.logo a img {
		height: 100%;
		width: auto;
	}	
}
/*=============================================
*
*  headerNavArea
*
=============================================*/
#headerNavArea {
	margin-top: 0;
	position: absolute;
	top: 0;
	width: 100%;	
}
@media screen and (max-width:700px){
	#headerNavArea {
		border-bottom: 1px #ccc solid;
		padding: 50px 0 0 0;
		position: absolute;
		right: -100%;
		width: 100%;
		
		-webkit-transition: all 0.5s;
		transition: all 0.5s;
	}
}
#headerNavArea #headerNav {
	height: 100%;
	padding: 23px 0 0 0;
}
@media screen and (max-width:700px){
	#headerNavArea #headerNav {
		border-left: 1px #ccc solid;
		padding: 0;
	}
}
#headerNavArea.on {
	margin-right: 100%;
}
/* ============================================
#headerNavArea #headerNav01 
============================================ */
/*---------------------------------------------
#headerNav01
---------------------------------------------*/
#headerNavArea #headerNav01 {
	position: relative;
	text-align: right;
	width: auto;
}
/*---------------------------------------------
#headerNavArea #headerNav01 li
---------------------------------------------*/
#headerNavArea #headerNav01 li {
	display: inline-block;
	margin: 0;
	overflow: hidden;
	padding-right: 15px;
	list-style: none;
	width: auto;
}
@media screen and (max-width:700px){
	#headerNavArea #headerNav01 li {
		background: #fff;
		border-bottom: 1px #ccc solid;
		display: block;
		margin-bottom: 0;
		text-align: left;
	}
	#headerNavArea #headerNav01 li:first-child {
		border-top: 1px #ccc solid;
	}
}
/* a | ボタン　*/
#headerNavArea #headerNav01 li a {
	display: block;
	font-weight: 300;
	font-family: 'Marvel', sans-serif;
	line-height: 1;
	padding: 10px 0 10px 0;
	position: relative;
	text-decoration: none;
	width: auto;
	
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
#headerNavArea #headerNav01 li a::after {
	background: #000;
	bottom: 15px;
	content: " ";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100%;
	
	transform: scale(1,0);
	
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#020075+0,c0b027+25,ff7ed0+75,d41095+100 */
	background: #020075; /* Old browsers */
	background: -moz-linear-gradient(left, #020075 0%, #c0b027 25%, #ff7ed0 75%, #d41095 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #020075 0%,#c0b027 25%,#ff7ed0 75%,#d41095 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #020075 0%,#c0b027 25%,#ff7ed0 75%,#d41095 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#020075', endColorstr='#d41095',GradientType=1 ); /* IE6-9 */
}
#headerNavArea #headerNav01 li a:hover::after {
	bottom: 6px;
	transform: scale(1,1);
}
@media screen and (max-width:700px){
	#headerNavArea #headerNav01 li a:hover::after {
		transform: scale(0,0);
	}
}
#headerNavArea #headerNav01 li a:hover {
	
}
@media screen and (max-width:700px){
	#headerNavArea #headerNav01 li a {
		padding: 15px 0 15px 15px;
	}
}
/*=============================================
*
* drawerBtn | ドロワー
*
=============================================*/
#drawerBtn {
	background: #fff;
	cursor: pointer;
	height: 50px;
	overflow: hidden;
	position: absolute;
	right: 10px;
	top: 15px;
	width: 50px;
	z-index: 3000;
	
	display: none;

}
@media screen and (max-width:700px){
	#drawerBtn {
		display: block;
	}
}
@media screen and (max-width:700px){
	#drawerBtn {
		border: none;
		right: 0;
		top: 0;
	}
}
#drawerBtn.on {

}
#drawerBtn-icon {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 25px;
	height: 2px;
	margin: -2px 0 0 -12.5px;
	background: #1d1d1d;
	transition: .2s;
}
#drawerBtn-icon:before, 
#drawerBtn-icon:after {
	display: block; content: "";
	position: absolute;
	top: 50%; left: 50%;
	width: 25px; height: 2px;
	margin-left: -12.5px;
	background: #1d1d1d;
	transition: .3s; }
#drawerBtn-icon:before {
	margin-top: -6px;
}
#drawerBtn-icon:after {
	margin-top: 4px;
}

#drawerBtn .close {
	background: transparent;
}
#drawerBtn .close:before ,
#drawerBtn .close:after {
	margin-top: 0;
}
#drawerBtn .close:before {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#drawerBtn .close:after {
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}

.screen {
	background: #fff;
	height: 100%;
	left: 0;
	opacity: 0.8;
	position: absolute;
	top: 0;
	width: 100%;
	
	display: none;
}
@media screen and (max-width:700px){
	.screen.on {
		display: block;
	}
}
/*panel { display: none; width: 100%; margin: 0; padding: 120px 0; background: #E3F2FD; text-align: center; }*/
/*=============================================
*
* main
*
=============================================*/
#main {
	background: #fff;
	opacity: 0;
	-webkit-opacity: 0;
}
#main.comp {
	transition: opacity 0.5s;
	-webkit-transition: opacity 0.5s;
	
	opacity: 1;
	-webkit-opacity: 1;
}
@media screen and (max-width:800px){
	#main {

	}
}
/*=============================================
*
* sec / contents
*
=============================================*/
section {
	background: #fff;
	padding: 30px 0 60px 0;
	position: relative;
}
@media screen and (max-width:600px){
	section {
		padding: 30px 0 20px 0;
	}
}
.inner ,
.wrap {
	margin: 0 auto;
	max-width: 1200px;
	width: auto;
}
@media screen and (max-width:1220px){
	.inner ,
	.wrap {
		padding: 0 15px;
	}
}
@media screen and (max-width:700px){
	.inner ,
	.wrap {
		padding: 0;
	}
}
.contents {
	/*padding: 0 10px;*/
	position: relative;
	text-align: left;
}
.contents.fl {
	float: left;
}
.contents.fr {
	float: right;
}
/*=============================================
*
* テキスト共通
*
=============================================*/
/*---------------------------------------------
txt
---------------------------------------------*/
.txt {
	color: #000;
	display:block;
	font-size: 14px;
	letter-spacing:0.05em;
	line-height: 1.5;
	text-align: center;
	word-wrap: break-word;
}
.note {
	color: #ed880e;
	display:block;
	font-size: 14px;
	letter-spacing:0.1em;
	line-height: 1.5;
	word-wrap: break-word;
	text-align: left;
}
@media screen and (max-width:1300px){
	.note {
		font-size: 14px;
	}
}
@media screen and (max-width:1000px){
	.note {
		text-align: center;
	}
}
@media screen and (max-width:640px){
	.br01 {
		display: none;
	}
}
/* 改行 */
.br02 {
	display: none;
}
@media screen and (max-width:1000px){
	.br02 {
		display: block;
	}
}
.bold {
	font-weight: bold;
}
.ac {
	text-align: center;
}
.al {
	text-align: left;
}
.ar {
	text-align: right;
}
/* ※ */
.kome {
	color: #666666;
	font-size: 70%;
}
/*=============================================
*
* 見出し共通
*
=============================================*/
#hArea h1.heading ,
#hArea02 h1.heading ,
#hArea03 h1.heading {
	margin-bottom: 30px;
}
h1.heading.en {
	font-size: 53.22px;
	letter-spacing: 0.15em;
	margin-bottom: 30px;
	text-align: center;
}
@media screen and (max-width:700px){
	h1.heading {
		margin-bottom: 5px;
	}
}
/* */
h1.heading {
	display: block;
	font-size: 31px;
	position: relative;
}
h1.heading .en {
	font-family: 'Megrim', cursive;
	font-size: 60px;
	font-weight: 100;
	letter-spacing: 0.15em;
}
@media screen and (max-width:700px){
	h1.heading .en {
		font-size: 30px;
	}
}
.copy {
	color: #aaa;
	font-family: 'Tulpen One', cursive;
	font-size: 35px;
	font-weight: 100;
	letter-spacing: 0.15em;
	margin-bottom: 30px;
}
@media screen and (max-width:700px){
	.copy {
		font-size: 18px;
	}
}
.heading.type1 {
	color: #000;
	display:block;
	font-size: 16px;
	font-weight: bold;
	letter-spacing:0.05em;
	line-height: 1.5;	
}
h2.heading  {
	color: #121f74;
	display:block;
	font-size: 25px;
	letter-spacing:0.05em;
	line-height: 1.5;
	word-wrap: break-word;
}
/*=============================================
*
* 共通ボタン
*
=============================================*/
/*=============================================
*
* ボタン共通
*
=============================================*/
.btnArea a:hover ,
input[type="submit"]:hover ,
input[type="button"]:hover {
	/*opacity: 0.85;
	-webkit-opacity: 0.85;
	*/
}
.btn {
	overflow: hidden;
}
.btn a {
	display: block;
	text-decoration: none;
}
/* ============================================
.btnType1
============================================ */
.btn.btnType1 {
	max-width: 190px;
}
.btn.btnType1 a {
	background: url(../images/common/btnBack1.svg) no-repeat center center;
	color: #fff;
	font-family: 'Lato', sans-serif;
	font-size: 14px;
	font-weight: 300;
	height: 75px;
	letter-spacing: 0.15em;
	line-height: 75px;
	max-width: 185px;
	text-align: center;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
}
.btn.btnType1 a:hover {
	opacity: 0.9;
}
/*=============================================
*
* スクロ-ル共通
*
=============================================*/

/*=============================================
*
*  footer
*
=============================================*/
#footer {
	border-top: 1px #333 solid;
	height: auto;
	margin: 0 auto;
	padding: 20px 0;
	width: 100%;
	
	
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#020075+0,c0b027+25,ff7ed0+75,d41095+100 */
	background: #020075; /* Old browsers */
	background: -moz-linear-gradient(left, #020075 0%, #c0b027 25%, #ff7ed0 75%, #d41095 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #020075 0%,#c0b027 25%,#ff7ed0 75%,#d41095 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #020075 0%,#c0b027 25%,#ff7ed0 75%,#d41095 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#020075', endColorstr='#d41095',GradientType=1 ); /* IE6-9 */
}
#footer .inner {
	margin: 0 auto;
	max-width: 1100px;
	position: relative;
	width: 100%;
}
/* ============================================
#footerNav01 , #footerNav02, #footerNav03
============================================ */
#footer #footerNav {
	text-align: center;
	width: auto;
}

@media screen and (max-width:850px){
	#footer #footerNav {
		
	}
}
#footer #footerNav li  {
	display: inline-block;
	margin-bottom: 20px;
	padding: 0 10px;
}
#footer #footerNav li a  {
	color: #fff;
	display: block;
	font-family: 'Marvel', sans-serif;
	font-size: 12px;
	text-decoration: none;
	width: auto;
}
#footer .snsBtn ,
#footer .sharesBtn {
	margin-bottom: 10px;
	padding: 0 15px;
}
#footer .snsBtn li ,
#footer .sharesBtn li {
	display: inline-block;
	margin: 0 3px 5px 3px;
	vertical-align: top;
}
#footer .snsBtn li a  {
	font-size: 11px;
}
/* ============================================
pageTop | ぺージトップ
============================================ */
#footer #pageTop {
	background: url(../images/common/pageTopBtn.svg) no-repeat center center;
	background-size: 40px;
	bottom: -57px;
	cursor: pointer;
	height: 47px;
	position: fixed;
	text-indent: -9999em;
	right: 10px;
	width: 47px;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
}
#footer #pageTop:hover {
	opacity: 0.9;
	-webkit-opacity: 0.9;
}
@media screen and (max-width:700px){
	#footer #pageTop {
		background-size: 25px;
		bottom: -55px;
		height: 45px;
		right: 0;
		width: 45px;
	}
}
#footer #pageTop.on {
	bottom: 10px;
}
@media screen and (max-width:700px){
	#footer #pageTop.on {
		bottom: 0;
	}
}
#footer #pageTop a {
	display: block;
}
/* ============================================
#copyright | コピーライト
============================================ */
#copyright {
	margin: 0 auto;
	text-align: center;
}
#copyright small {
	color: #fff;
	display: block;
	font-family: 'Megrim', cursive;
	font-size: 11px;
	margin: 0 auto;
	width: auto;
}
/*=============================================
*
* ローダー
*
=============================================*/
.loader {
	width: 30%;
	/*border-bottom: 1px solid black;*/
	display: flex;
	justify-content: space-around;
	left: 50%;
	margin: 0 auto 0 -15%;
	perspective: 1000px;
	position: fixed;
	top: 50%;
	
	animation: fadeIn 0.7s;
	-webkit-animation: fadeIn 0.7s;
}
.loader::after {
	background: #000;
	bottom: 0;
	content: " ";
	height: 1px;
	position: absolute;
	width: 100%;
	
	transform: scale(0,1);
	-webkit-transform: scale(0,1);
	
	animation: scaleBorder 0.7s linear 0s forwards;
	-webkit-animation:  scaleBorder 0.7s linear 0s forwards;
}
.loader.comp {
	display: none;
}
.loader div {
	font-size: 12px;
	font-family: 'Marvel', sans-serif;
	transform-style: preserve-3d;
}
.loader div:nth-child(1) {
  animation: turn 3s infinite;
  animation-delay: 100ms;
}
.loader div:nth-child(2) {
  animation: turn 3s infinite;
  animation-delay: 200ms;
}
.loader div:nth-child(3) {
  animation: turn 3s infinite;
  animation-delay: 300ms;
}
.loader div:nth-child(4) {
  animation: turn 3s infinite;
  animation-delay: 400ms;
}
.loader div:nth-child(5) {
  animation: turn 3s infinite;
  animation-delay: 500ms;
}
.loader div:nth-child(6) {
  animation: turn 3s infinite;
  animation-delay: 600ms;
}
.loader div:nth-child(7) {
  animation: turn 3s infinite;
  animation-delay: 700ms;
}
@keyframes turn {
  0% {
    transform: rotateX(0deg);
    transform-origin: 0 4vw;
  }
  100% {
    transform: rotateX(360deg);
    transform-origin: 0 4vw;
  }
}
@-webkit-keyframes turn {
  0% {
    transform: rotateX(0deg);
    transform-origin: 0 4vw;
  }
  100% {
    transform: rotateX(360deg);
    transform-origin: 0 4vw;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes scaleBorder {
  0% {
    
  }
  100% {
    transform: scale(1,1);
	-webkit-transform: scale(1,1);
  }
}
@-webkit-keyframes scaleBorder {
  0% {
    
  }
  100% {
    transform: scale(1,1);
	-webkit-transform: scale(1,1);
  }
}

/* ==================================================
   テーブル
================================================== */
.tbType1 {
	border-collapse: collapse;
	margin: 0 auto;
	max-width: 900px;
	width: 100%;
}
.tbType1 th {
	font-size: 13px;
	font-weight: normal;
	padding: 12px 10px;
	text-align: left;
	vertical-align: middle;
	width: 30%;
	
	text-shadow: 2px  2px 3px white,-2px  2px 3px white,2px -2px 3px white,-2px -2px 3px white;
}
@media screen and (max-width:700px){
	.tbType1 th {
		display: block;
		font-size: 12px;
		padding: 6px 10px;
		width: 100%;
	}
}
.tbType1 td {
	font-size: 14px;
	padding: 12px 10px;
	text-align: left;
	vertical-align: middle;
	width: auto;
}
@media screen and (max-width:700px){
	.tbType1 td {
		display: block;
		padding: 0px 10px;
		width: 100%;
	}
}