@charset "utf-8";

/* @group Reset */

a { text-decoration : none;outline: none;}
a:focus{outline: none;}
ul, ol { list-style : none}
img { vertical-align : middle}

/* IE8+, Chrome */
input, button {
  outline: 0;
}

/* Firefox */
input::-moz-focus-inner, button::-moz-focus-inner {
  border: 0;
}

/* @group device setting */

.pc{display : none ;}

.sp-break{display:none;}

*::selection{
background: #585858;
color:#FFF;
}

*::-moz-selection {
background: #585858;
color:#FFF;
}

/* @group Fluid-img */

img {
	border:none;
	max-width : 100%;
	
}

/* hide setting */

.sp-menu-btn,
.sp-modal-menu{
	display: none;
}

.hide-pc{
	display:none;
	}

/* @group HTML */

html {
	font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 62.5%;
	line-height : 1.6;
	color:#646464;
}

/* @group General */

body {
	font-size: 1.0rem;
	background-color:#f5f5f5;
	-webkit-text-size-adjust: 100%;
}

#wrp{
	position:relative;
	margin:0 auto;
	text-align:center;
}

#wrp .inner-wrp{
	width:1180px;
	margin:0 auto;
}

.inner-wrp{
	text-align:left;
}


/* @group Anchor */

a{
	color:#646464;
	-webkit-transition: 0.3s linear;
	-moz-transition: 0.3s linear;
	-o-transition: 0.3s linear;
	transition: 0.3s linear;
}

a:link{}

a:hover{
	text-decoration: none;
	opacity:0.7;
}

a:visited{}

/* clearfix */

.clearfix:after {
	content: "."; 
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*¥*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* header */

header{
	background-color:#fff;
	width:100%;
}

header .inner-wrp{
	height:180px;
	padding:55px 0 0;
	box-sizing:border-box;
	position:relative;
	background-color:#fff;
}

header #logo{
	width:391px;
	height:44px;
	margin:0 auto 29px;
}

header #logo a{
	display:block;
	width:100%;
	height:100%;
	background-image: url(../img/logo.svg);
	background-size:391px 44px;
	background-repeat:no-repeat;
	background-position:0 0;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	margin-left:-14px;
}

/*
header #logo a{
	display:block;
	width:100%;
	height:100%;
	background-image:url(../img/logo.png);
	background-size:391px 44px;
	background-repeat:no-repeat;
	background-position:0 0;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	margin-left:-14px;
}
*/

/* navigation */

header nav{
	line-height:1;
}

header nav ul{
	text-align:center;
	font-size:0;
}

header nav a{
	color:#949494;
}


header nav li{
	font-weight:200;
	font-size:1.18rem;
	text-align:center;
	display:inline-block;
	padding:0 50px;
	letter-spacing:0.5px;
}

header nav li.current a{
	color:#646464;
	font-weight:normal;
}


header .lang-menu{
	position:absolute;
	right:0;
	top:135px;
}

header .lang-menu ul{
	font-size:0;
	line-height:1;
}

header .lang-menu ul li{
	display:inline-block;
	text-align:right;
	font-size:1.2rem;
}

header .lang-menu ul li.jp{
	padding-right:10px;
	border-right:#c8c8c8 solid 1px;
}

header .lang-menu ul li.en{
	padding-left:10px;
}

header .lang-menu ul li a{
	color:#c8c8c8;
}

header .lang-menu ul li.current a{
	color:#949494;
}

/* #page-ttl-wrp */

#page-ttl-wrp{
	background-color:#f5f5f5;
	padding:70px 0 56px;
	text-align:center;
	width:100%;
}

#page-ttl-wrp h1{
	font-size:2.6rem;
	text-decoration:underline;
	line-height:1;
	font-family:Georgia, "Times New Roman", Times, serif;
	margin:0 auto 70px;
	color:#969696;
	font-weight:normal;
	display:inline-block;
	width:1180px;
}

#page-ttl-wrp .page-nav-wrp{
	border-top:#e6e6e6 solid 1px;
	border-bottom:#e6e6e6 solid 1px;
	padding:24px 0;
	width:100%;
	text-align:center;
}

#page-ttl-wrp .page-nav{
	width:1180px;
	margin:0 auto;
	font-size:0;
}

#page-ttl-wrp .page-nav li{
	display:inline-block;
	margin:0 35px;
	line-height:1;
}

#page-ttl-wrp .page-nav a{
	/*color:#aaa;*/
	color:#949494;
	font-size:1.2rem;
	font-weight:200;
	letter-spacing:1px;
}

#page-ttl-wrp .page-nav a:before{
	font-family: FontAwesome;
	content:"\f0d7";
	color:#ddd;
	padding-right:10px;
}

/* #main */

#main{
	padding-bottom:100px;
}

/*　下層共通　*/
.secondaly #main{
	background-color:#f5f5f5;
}

.secondaly #main .inner-wrp{
	background-color:#fff;
	width:1000px;
	padding:90px;
	overflow:hidden;
}

.secondaly #main .section-wrp{
	margin-bottom:150px;	
}

.secondaly #main .sec-ttl{
	font-size:2.4rem;
	font-weight:100;
	letter-spacing:1px;
	text-align:center;
	margin-bottom:65px;
	color:#969696;
}

.secondaly .sec-s-ttl{
	font-size:2.6rem;
	color:#646464;
	font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho",serif;
	font-weight: normal;
	line-height:1;
	margin-bottom:20px;
}

.secondaly .sec-ss-ttl{
	font-size:1.8rem;
	font-weight:normal;
	line-height:2;
	margin-bottom:12px;
}

.secondaly .description-wrp p{
	font-size:1.3rem;
	line-height:2.3;
}
	
	
	
/* footer */
footer{
	background-color:#f5f5f5;
}

footer .inner-wrp{
	padding-bottom:35px;
	text-align:center;
}

footer #sns-wrp{
	margin-bottom:30px;
}

footer #sns-wrp ul{
	font-size:0;
}

footer #sns-wrp li{
	display:inline-block;
	font-size:1.8rem;
}

footer #sns-wrp li a{
	color:#c5c5c5;
}

footer #sns-wrp .txt{
	display:none;
}

footer #sns-wrp .fa-stack{
	height:38px;
	width:38px;
	margin:0 5px;
	}

footer #sns-wrp .fa-stack-2x{
	font-size:3.8rem;
}

footer #sns-wrp .fa-stack-1x{
	padding-top:1px;
	font-size:1.9rem;
	line-height:3.8rem;
}

footer small{
	font-size:1.1rem;
	color:#969696;
}

/* トップへ戻るボタン */

#page-top {
	width:50px;
	height:50px;
    position: fixed;
    bottom: 60px;
    right: 60px;
    z-index: 10;
}

#page-top a {
    background-color: #505050;
    border-radius: 50px;
    color: #fff;
    display: block;
    height: 50px;
    opacity: 0.7;
    text-align: center;
    text-decoration: none;
    width: 50px;
}

#page-top a:hover{
	opacity:1;
	}

#page-top a i{
	line-height:50px;
	font-size:2.0rem;
	margin-top:-3px;
}


/* pc-fixed-nav */

#pc-fixed-nav{
	display:none;
	width:100%;
	height:70px;
	background-color:rgba(97,97,97,1);
	color:#FFF;
	position:fixed;
	top:0;
	left:0;
	z-index:-99;
	display:block;
	opacity:0;
}

#pc-fixed-nav .inner-wrp{
	background-color:rgba(97,97,97,1);
	color:#FFF;
	width:1180px;
	padding:28px 0 0;
	height:70px;
	box-sizing:border-box;
	margin:0 auto;
	position:relative;
}

#pc-fixed-nav .inner-wrp a{
	color:#c4cfe4;
}

#pc-fixed-nav .inner-wrp .pc-fixed-nav-menu ul{
	font-size:0;
}

#pc-fixed-nav .inner-wrp .pc-fixed-nav-menu li{
	font-size:1.2rem;
	font-weight:200;
	display:inline-block;
	margin-right:70px;
	letter-spacing:1px;
}

#pc-fixed-nav .inner-wrp .pc-fixed-nav-menu li.current a{
	color:#fff;
	font-weight:normal;
}

#pc-fixed-nav h1{
	display:block;
	width:101px;
	height:35px;
	position:absolute;
	top:19px;
	left:0;
	
}

#pc-fixed-nav h1 a{
	display:block;
	width:101px;
	height:35px;
	overflow:hidden;
	text-indent: 100%;
	white-space: nowrap;
	background-image: url(../img/logo-white.svg);
	background-repeat:no-repeat;
	background-size: 101px 35px;
	background-position:0 0;
}

#pc-fixed-nav .pc-fixed-nav-menu{
	padding-left:360px;
}

#pc-fixed-nav .lang-menu{
	position:absolute;
	right:0;
	top:28px;
}

#pc-fixed-nav .lang-menu ul{
	font-size:0;
}

#pc-fixed-nav .lang-menu ul li {
    display: inline-block;
    font-size: 1.2rem;
    text-align: right;
}

#pc-fixed-nav .lang-menu ul li.jp {
    border-right: 1px solid #c8c8c8;
    padding-right: 10px;
}

#pc-fixed-nav .lang-menu ul li.en {
    padding-left: 10px;
}


#pc-fixed-nav .lang-menu ul li.current a{
	color:#fff;
}


/* スマホ版 768px*/

@media screen and (max-width: 768px) {
	
	.sp-break{display: inline;}
	
	img{
		width:100%;
	}
	
	.hide-pc{
	display: inline;
	}

	/* @group General */

	body {
		font-size: 1.0rem;
		background-color:#f5f5f5;
	}
	
	#wrp{
		position:relative;
		margin:0 auto;
		text-align:center;
	}
	
	#wrp .inner-wrp{
		width: 100%;
		margin:0 auto;
	}
	
	.inner-wrp{
		text-align:left;
	}

	/* header */
	
	header{
		background-color:#fff;
		height:62px;
		width:100%;
		overflow:hidden;
		position:fixed;
		top:0;
		left:0;
		z-index:10;
	}
	
	header .inner-wrp{
		height:62px;
		padding:0;
		box-sizing:border-box;
		position:relative;
		overflow:hidden;
	}
	
	header #logo{
		width:100px;
		height:35px;
		margin:0 auto 0;
		position:absolute;
		top:15px;
		left:15px;
	}
	
	header #logo a{
		display:block;
		width:100%;
		height:100%;
		background-image:url(../img/logo.svg);
		background-size:100px 35px;
		background-repeat:no-repeat;
		background-position:0 0;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
		margin-left: 0;
	}
	
	.index header #logo a{
		background-image:url(../img/logo-white.svg);
	}
		
	/* navigation */
	
	header nav{
		display:none;
	}
		
	header .lang-menu{
		display:none;
	}
	
	#wrp #pc-fixed-nav{
		display:none !important;
	}

	.sp-menu-btn {
		position: fixed;
		top: 10px;
		right: 14px;
		width: 40px;
		height: 40px;
		line-height: 40px;
		text-align: center;
		cursor: pointer;
		z-index: 13;
		display:block;
	}
	
	.sp-menu-btn span:after {
		/*content: url(../img/sp-menu2.svg);*/
		display:inline-block;
		content:"";
		height:40px;
		width:40px;
		background-image: url(../img/sp-menu.svg);
		background-size: 50% auto;
		background-position: 50% 50%;
		background-repeat:no-repeat;
	}

.secondaly .sp-menu-btn span:after {
		background-image: url(../img/sp-menu2.svg);
	}

	
	/* 開閉用ボタンがクリックされた時のスタイル */
	.open .sp-menu-btn span:after {
		display:inline-block;
		content:"";
		height:40px;
		width:40px;
		background-image:url(../img/sp-close.svg);
		background-size: 50% auto;
		background-position: 50% 50%;
		background-repeat:no-repeat;
		
	}
	
	.sp-modal-menu {
		position: fixed;
		display: table;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		/*background-color:rgba(38, 38, 38,0.97);*/
		background-color:rgba(38, 38, 38,1.00);
		-webkit-transition: all .5s;
		transition: all .5s;
		visibility: hidden;
		opacity: 0;
		z-index:11;
	}
	
	.sp-modal-menu #sp-modal-menu-logo{
			width:100px;
			height:35px;
			margin:0 auto 0;
			position:absolute;
			top:15px;
			left:15px;
		}
	
	.sp-modal-menu #sp-modal-menu-logo a{
		display:block;
		width:100%;
		height:100%;
		background-image:url(../img/logo-white.svg);
		background-size:100px 35px;
		background-repeat:no-repeat;
		background-position:0 0;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
		margin-left: 0;
	}

	.sp-modal-menu ul {
		display: table-cell;
		vertical-align: middle;
		text-align:center;
		font-size:0;
	}
	
	.sp-modal-menu li {
		width: 300px;
		height: 50px;
		line-height: 50px;
		margin: 0 auto;
		text-align: center;
		font-size:1.2rem;
	}
	
	.sp-modal-menu li a {
		display: block;
		color: #f0f0f0;
		font-weight:200;
		letter-spacing:1px;
	}
	
	.sp-modal-menu li.current a,
	.sp-modal-menu li a.current {
		font-weight:bold;
	}
	
	.sp-modal-menu .lang-menu{
		margin-top:40px;
		display:inline-block;
		width:85px;
		height:50px;
		box-sizing:border-box;
		border-top: #D1D5D8 solid 1px;
		border-bottom: #D1D5D8 solid 1px;	
	}
	
	.sp-modal-menu .lang-menu a{
		display:inline-block;
		width:38px;
		height:50px;
	}
	
	.sp-modal-menu .lang-menu span{
		display:inline-block;
		font-size:1.0rem;
		height:50px;
		line-height:50px;
	}
	

	/* 開閉用ボタンがクリックされた時のスタイル */
	.open .sp-modal-menu {
		/*cursor: url(/common/img/close.svg),auto;*/
		color: #f0f0f0;
		-webkit-transition: all .5s;
		transition: all .5s;
		visibility: visible;
		opacity: 1;
		z-index:11;
	}

	/* #page-ttl-wrp */
	
	#page-ttl-wrp{
		background-color:#f5f5f5;
		padding:100px 0 32px;
		text-align:center;
	}
	
	#page-ttl-wrp h1{
		font-size:1.3rem;
		font-family:Georgia, "Times New Roman", Times, serif;
		margin-bottom:32px;
		font-weight:bold;
		width:100%;
	}
	
	#page-ttl-wrp .page-nav-wrp{
		padding:0;
	}
	
	#page-ttl-wrp .page-nav{
		padding:16px 0;
		width:100%;
	}
	
	#page-ttl-wrp .page-nav li{
		margin:0 5px;
		line-height:2.3;
	}
	
	#page-ttl-wrp .page-nav a{
		font-size:1.1rem;
		letter-spacing:1px;
	}
	
	#page-ttl-wrp .page-nav a:before{
		font-family: FontAwesome;
		content:"\f0d7";
		color:#ddd;
		padding-right:3px;
	}
	

	/* #main */
	
	#main{
		padding-bottom:60px;
	}	
	
	/*　下層共通　*/
	.secondaly #main{
		background-color:#f5f5f5;
		padding:0 27px 60px; 
	}
		
	.secondaly #main .inner-wrp{
		background-color:#fff;
		width: auto;
		padding:40px 17px;
		overflow:hidden;
	}

	.secondaly #main .section-wrp{
		margin-bottom:60px;	
	}
	
	.secondaly #main .section-wrp:last-child{
		margin-bottom:0;	
	}
	
	.secondaly #main .sec-ttl{
		font-size:1.4rem;
		margin-bottom:40px;
	}

	.secondaly .sec-s-ttl{
		font-size:1.7rem;
		line-height:1.5;
		margin-bottom:9px;
	}
	
	.secondaly .sec-ss-ttl{
		font-size:1.3rem;
		margin-bottom:9px;
	}
	
	.secondaly .description-wrp p{
		font-size:1.0rem;
		line-height:2.3;
	}
	
	

	/* トップへ戻るボタン */
	
	#page-top {
		width:40px;
		height:40px;
		position: fixed;
		bottom: 25px;
		right: 27px;
		z-index: 10;
	}
	
	#page-top a {
		background-color: #585858;
		border-radius: 40px;
		color: #fff;
		display: block;
		height: 40px;
		opacity: 0.7;
		text-align: center;
		text-decoration: none;
		width: 40px;
	}
	
	#page-top a:hover{
		opacity:1;
		}
	
	#page-top a i{
		line-height:40px;
		font-size:1.6rem;
		margin-top:-1px;
	}
	
	/* footer */

	footer .inner-wrp{
		padding-bottom:22px;
		text-align:center;
	}
	
	footer #sns-wrp{
		margin-bottom:15px;
	}
	
	footer #sns-wrp li{
		font-size:1.8rem;
	}
	
	footer #sns-wrp li a{
		color:#c5c5c5;
	}
	
	footer #sns-wrp .txt{
		display:none;
	}
	
	footer #sns-wrp .fa-stack{
		height:38px;
		width:38px;
		margin:0 5px;
		}
	
	footer #sns-wrp .fa-stack-2x{
		font-size:3.8rem;
	}
	
	footer #sns-wrp .fa-stack-1x{
		padding-top:0px;
		font-size:1.9rem;
		line-height:3.8rem;
	}
	
	footer small{
		font-size:1.1rem;
		color:#969696;
	}



}

