@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: #333;
color:#FFF;
}

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

/* @group Fluid-img */

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

/* hide setting */

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

.hide-pc{
	display:none;
	}

/* @group HTML */

html {
	font-family:"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:#333;
}

/* @group General */

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

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

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

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


/* @group Anchor */

a{
	color:#333;
	-webkit-transition: 0.3s linear;
	-moz-transition: 0.3s linear;
	-o-transition: 0.3s linear;
	transition: 0.3s linear;
	text-decoration: none;
}

a:link{}

a:hover{
	text-decoration: underline;
	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%;
	border-bottom:#EAEAEA solid 1px;
}


#wrp header .inner-wrp{
	width:1300px;
	height:73px;
	padding:30px 0 0;
	position:relative;
	background-color:#fff;
}

header #logo{
	width:235px;
	height:53px;
	margin:0;
	background-image:url(../img/logo.png) ;
	background-size:contain;
	background-position:0 0;
	background-repeat:no-repeat;
	display:inline-block;
}

header #logo a{
	display:block;
	width:100%;
	height:100%;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

/* navigation */

header nav{
	display:inline-block;
	line-height:1;
	width:930px;
	text-align:right;
	vertical-align: top;
	padding-top:9px;
}

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

header nav li{
	display:inline-block;
	font-size:1.0rem;
	height:22px;
	text-align: left;
	margin-right:25px;
	background-image:url(../img/nav-bg01.png);
	background-position:center left;
	background-repeat:no-repeat;
	padding-left:12px;
}

header nav li a{
	display:inline-block;
	height:22px;
	background-position:center center;
	background-repeat:no-repeat;
	position: relative;
	width: 75px;
	/*
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	*/
}

header nav li a:hover{
	opacity: 1;
}

header nav li:last-child{ margin-right:0;}

/*
header nav li:before {
	content: '';
	width: 7px;
	height: 7px;
	display: inline-block;
	border-radius: 100%;
	background: #980000;
	position: relative;
	left: 0;
	top: -7px;
	margin-right:10px;
}
*/

header nav li.news a{ background-image:url(../img/nav-news.png) ;}
header nav li.about a{ background-image:url(../img/nav-about.png) ;}
header nav li.works a{ background-image:url(../img/nav-works.png) ;}
header nav li.faq a{ background-image:url(../img/nav-faq.png)  ;}
header nav li.flow a{ background-image:url(../img/nav-flow.png) ;}
header nav li.column a{ background-image:url(../img/nav-column.png) ;}
header nav li.access a{ background-image:url(../img/nav-access.png) ;}
header nav li.contact a{ background-image:url(../img/nav-contact.png) ;}

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

header nav li a span{
	visibility: hidden;
}

header nav li a:after{
	content: "イオ・コンダクトについて";
	display: inline-block;
	width: 105px;
	line-height: 1.3;
	font-size: 1.0rem;
	letter-spacing: 0.05em;
	text-align: center;
	position: absolute;
	bottom: -19px;
	left: -15px;
	color: #222;
	opacity: 0;
	transition: ease opacity 0.4s;
}

header nav li a:hover:after{
	opacity: 1;
}

header nav li.news a:after{ content: "お知らせ";}
header nav li.about a:after{ content: "io conductについて";}
header nav li.works a:after{ content: "実績紹介";}
header nav li.faq a:after{ content: "よくあるご質問";}
header nav li.flow a:after{ content: "建物が建つまで";}
header nav li.column a:after{ content: "コラム";}
header nav li.access a:after{ content: "アクセス";}
header nav li.contact a:after{ content: "お問い合わせ";}

/* sns-list-wrp */

header .sns-list-wrp {
	position: absolute;
	right: 0;
	top: 42px;
}

header .sns-list-wrp ul{
	display: flex;
}

header .sns-list-wrp ul li{
	display: inline-block;
	font-size: 2.6rem;
}

header .sns-list-wrp ul li:not(:last-child){
	margin-right: 10px;
}

header .sns-list-wrp ul li a{
	line-height: 1;
	color: #4b4b4b;
	vertical-align: bottom;
}

header .sns-list-wrp ul li{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 25px;
	height: 25px;
}

header .sns-list-wrp ul li i{
	vertical-align: bottom;
}

header .sns-list-wrp ul li.fb{
	width: 16px;
}

header .sns-list-wrp ul li.fb img{
	height: 24px;
}


header .sns-list-wrp ul li.in img{
	height: 24px;
}

header .sns-list-wrp ul li.blog img{
	height: 24px;
}



/* #main */

#main{
	font-size:1.6rem;
	line-height:2.2;
	padding-bottom:90px;
}

.index-ttl{
	text-align:center;
	background-image:url(../img/ttl-bg01.png);
	background-position:0 85%;
	background-repeat:no-repeat;
	background-size:contain;
	margin-bottom:40px;
}

.top-sns-list-wrp {
	display: none;
}

/*　下層共通　*/

.secondaly #main{
	padding:40px 0 30px;	
}

.secondaly #ttl-wrp .inner-wrp{
	color:#000;
	}

#ttl-wrp{
	/*border-top:#ccc solid 1px;*/
	border-bottom:#eaeaea solid 1px;
	background-position:50% 0;
	background-repeat:no-repeat;
	background-size: auto 100%;
}

#ttl-wrp .inner-wrp h1{
	text-align:center;
	padding:15px 0 35px;
}

#ttl-wrp .inner-wrp h1 .en{
	width:200px;
	height:75px;
	margin:0 auto;
	display:block;
	background-position:50% 50%;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background-repeat:no-repeat;
}

.secondaly #ttl-wrp .jp{
	display:block;
	font-size:1.3rem;
	font-weight:bold;
}


.about #ttl-wrp{
	background-image:url(../img/about/about-ttlbg.jpg);
}

.works #ttl-wrp{
	background-image:url(../img/works/works-ttlbg.jpg);
}

.faq #ttl-wrp{
	background-image:url(../img/faq/faq-ttlbg.jpg);
}

.flow #ttl-wrp{
	background-image:url(../img/flow/flow-ttlbg.jpg);
}

.access #ttl-wrp{
	background-image:url(../img/access/access-ttlbg.jpg);
}

.contact #ttl-wrp{
	background-image:url(../img/contact/contact-ttlbg.jpg);
}


.about #ttl-wrp .inner-wrp h1 .en{
	background-image:url(../img/about/ttl-about.png);
}

.works #ttl-wrp .inner-wrp h1 .en{
	background-image:url(../img/works/ttl-works.png);
}

.faq #ttl-wrp .inner-wrp h1 .en{
	background-image:url(../img/faq/ttl-faq.png);
}

.flow #ttl-wrp .inner-wrp h1 .en{
	background-image:url(../img/flow/ttl-flow.png);
}

.access #ttl-wrp .inner-wrp h1 .en{
	background-image:url(../img/access/ttl-access.png);
}

.contact #ttl-wrp .inner-wrp h1 .en{
	background-image:url(../img/contact/ttl-contact.png);
}

#pageBute{
	text-align:center;
	margin-bottom:30px;
}

#pageBute .link_page{
	background-color:#999;
	color:#FFF;
	padding:0px 12px;
	margin:0 5px;
	display:inline-block;
	text-decoration:none;
}

.link_before{
	margin-right:10px;
	font-size:1.3rem;
}

.link_next{
	margin-left:10px;
	font-size:1.3rem;
}

#pageBute .current_page{
	background-color:#000;
	color:#FFF;
	padding:0px 12px;
	margin:0 5px;
	display:inline-block;	
	}

	
/* footer */
footer{
	padding:50px 0 0;
	background-color:#eee;
}

footer a{
	color:#fff;
}

footer .menu-wrp{
	margin-bottom:35px;
}

footer .menu-wrp .inner-wrp{
	text-align:center;
}

footer .menu-wrp ul{
	font-size:0;
}

footer .menu-wrp ul.top{
	margin-bottom:30px;
}

footer .menu-wrp li{
	display:inline-block;
	padding:0 25px;
	text-align:center;
	font-size:1.4rem;
	font-family:"Helvetica", "HelveticaNeue", "Helvetica Neue",
}

footer .menu-wrp li a{ color:#000;}

footer .menu-wrp .btm li a:after{
	content: "\f08e";
	font-family: FontAwesome;
	padding-left:10px;
}

/* sns-list-wrp */

footer .sns-list-wrp {
	margin: 30px auto 0;
	text-align: center;
}

footer .sns-list-wrp ul{
	display: flex;
	margin: 0 auto;
	align-items: center;
    justify-content: center;
}

footer .sns-list-wrp ul li{
	display: inline-block;
	font-size: 2.6rem;
}

footer .sns-list-wrp ul li:not(:last-child){
	margin-right: 10px;
}

footer .sns-list-wrp ul li a{
	line-height: 1;
	color: #4b4b4b;
	vertical-align: bottom;
}

footer .sns-list-wrp ul li{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 25px;
	height: 25px;
	padding: 0 5px;
}

footer .sns-list-wrp ul li i{
	vertical-align: bottom;
}

footer .sns-list-wrp ul li.fb{
	width: 16px;
}

footer .sns-list-wrp ul li.fb img{
	height: 24px;
}


footer .sns-list-wrp ul li.in img{
	height: 24px;
}

footer .sns-list-wrp ul li.blog img{
	height: 24px;
}


footer .footer-btm-wrp{
	background-color:#000;
}

footer .footer-btm-wrp li{
	display:inline-block;
	padding:0 25px;
	text-align:center;
	font-size:1.4rem;
}


footer .footer-btm-wrp .inner-wrp{
	padding:50px 0;
	text-align:center;
	color:#fff;
}

footer .footer-btm-wrp h1{
	margin-bottom:30px;
}

footer .footer-btm-wrp .address{
	font-size:1.2rem;
	line-height:1.6;
	margin-bottom:20px;
}

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

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

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

#page-top a {
    background-color: #333;
    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(24,48,89,1.0);
	color:#FFF;
	position:fixed;
	top:0;
	left:0;
	z-index:-99;
	display:block;
	opacity:0;
}

#pc-fixed-nav .inner-wrp{
	background-color:rgba(24,48,89,1.0);
	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) {
	
	.pc-header nav{
		display:none;
	}

	#wrp .inner-wrp{
		width:100%;
		margin:0 auto;
	}
	
	#wrp header{
		height:65px;
		overflow:hidden;
	
	}
		
	#wrp header #logo{
		height:35px;
		width:168px;
		margin:0 auto;
		text-align:center;
	}
	
	#wrp header .inner-wrp{
		padding:15px 0 0 0;
		text-align: center;
		height:50px;
		overflow:hidden;
		width: auto;
	}

	#wrp header .inner-wrp .sns-list-wrp{
		display: none;
	}

	.top-sns-list-wrp {
		display: block;
	}

	.top-sns-list-wrp {
		margin: 15px auto 10px;
		padding: 10px;
	}

	.top-sns-list-wrp ul{
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.top-sns-list-wrp ul li{
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.top-sns-list-wrp ul li:not(:last-child){
		margin-right: 20px;
	}

	.top-sns-list-wrp ul li a{
		line-height: 1;
		vertical-align: bottom;
	}

	.top-sns-list-wrp ul li img{
		vertical-align: bottom;
		height: 24px;
	}

	.top-sns-list-wrp ul li.fb{
		width: 16px;
	}

	
	#main{
		padding:15px;
	}

	
	
	.secondaly #main {
    	padding:15px;
	}
	
	
	.index-ttl{
		background-image:none;
		margin-bottom:20px;
	}
	
	footer {
		background-color: #eee;
		padding: 0 0;
	}
	
	footer .menu-wrp {
    	margin-bottom: 0;
	}
	
	footer .menu-wrp ul.top{
		margin:0 0 0 0;
	}
	
	footer .menu-wrp li{
		display:block;
		text-align:left;
		position:relative;
		padding:0;
	}
	
	footer .menu-wrp li a{
		color:#000;
		display:block;
		padding:18px;
		border-bottom:#ccc solid 1px;
		text-decoration:none;
		background-color: #eee;	
	}
	
	footer .menu-wrp li a:hover{
		opacity:0.7;
		background-color: #f7f7f7;
	}
	
	footer .menu-wrp li a:after{
		content: "\f105";
		font-family: FontAwesome;
		position:absolute;
		right:16px;
		font-size:1.8rem;
	}
	
	footer .footer-btm-wrp .inner-wrp{
	padding:40px 0 50px;
	}
	
	footer .footer-btm-wrp h1{
		width:180px;
		text-align:center;
		margin:0 auto 17px;
	}


	/* sns-list-wrp */

	footer .sns-list-wrp {
		margin: 30px auto 50px;
	}

	footer .sns-list-wrp ul{
		display: flex;
		align-items: center;
		justify-content: center;
	}

	footer .sns-list-wrp ul li{
		display: inline-block;
		font-size: 2.6rem;
		padding: 0;
	}

	footer .sns-list-wrp ul li:not(:last-child){
		margin-right: 17px;
	}

	footer .sns-list-wrp ul li a{
		line-height: 1;
		color: #4b4b4b;
		vertical-align: bottom;
		padding: 0;
		border: none;
	}

	footer .sns-list-wrp ul li a:after{
		display: none;
	}

	footer .sns-list-wrp ul li{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 25px;
		height: 25px;
	}

	footer .sns-list-wrp ul li i{
		vertical-align: bottom;
	}

	footer .sns-list-wrp ul li.fb{
		width: 16px;
	}

	footer .sns-list-wrp ul li.fb img{
		height: 24px;
	}


	header .sns-list-wrp ul li.in img{
		height: 24px;
	}

	header .sns-list-wrp ul li.blog img{
		height: 24px;
	}

	.sp-menu-btn {
		position: fixed;
		top: 10px;
		right: 14px;
		width: 40px;
		height: 40px;
		line-height: 40px;
		text-align: center;
		cursor: pointer;
		z-index: 103;
		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-menu.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: none;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		/*background-color:rgba(24,48,89,0.97);*/
		background-color:rgba(00,00,00,1.00);
		-webkit-transition: all .5s;
		transition: all .5s;
		visibility: hidden;
		opacity: 0;
		z-index:101;
	}

	.sp-modal-menu .sp-modal-menu-hdr{
		margin: 0 auto 20px;
	}

	.sp-modal-menu .sp-modal-menu-hdr h1 img{
		width: 165px;
	}
	
	.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: 45px;
		line-height: 45px;
		margin: 0 auto;
		text-align: center;
		font-size:1.4rem;
	}
	
	.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 .sns-list-wrp {
		margin: 30px auto 30px;
	}

	.sp-modal-menu .sns-list-wrp ul{
		display: flex;
		flex-direction: row;
	}

	.sp-modal-menu .sns-list-wrp ul li{
		display: inline-block;
		font-size: 2.6rem;
		height: auto;
		width: auto;
	}

	.sp-modal-menu .sns-list-wrp ul li:not(:last-child){
		margin-right: 25px;
	}

	.sp-modal-menu .sns-list-wrp ul li a{
		line-height: 1;
		color: #fff;
		vertical-align: bottom;
		border: none;
	}

	.sp-modal-menu .sns-list-wrp ul li i{
		vertical-align: bottom;
	}

	.sp-modal-menu .sns-list-wrp ul li img{
		height: 24px;
		width: auto;
	}

	
	.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:101;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}

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

	#pageBute{
		font-size:1.2rem;
	}
	
	.link_before{
		margin-right:10px;
		font-size:1.2rem;
	}
		
	.link_next{
		margin-left:10px;
		font-size:1.2rem;
	}

	#pageBute .link_page{
		padding:0px 8px;
		margin:0 3px;
	}
		
	#pageBute .current_page{
		padding:0px 8px;
		margin:0 3px;
	}
		
	#pageBute{
		text-align:center;
		margin-bottom:10px;
	}
	
	#ttl-wrp .inner-wrp h1{
		text-align:center;
		padding:10px 0 20px;
	}

	#ttl-wrp .inner-wrp h1 .en{
		height:65px;
		background-size:contain;
	}

	.secondaly #ttl-wrp .jp{
		font-size:1.3rem;
	}

	#ttl-wrp{
		background-size: cover;
	}
		
	
}

