/* @charset "utf-8"; */

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

html, /*body, div, */span, object, iframe,
h1, h2, h3, h4, h5, h6, /*p, */blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
/*table, caption, tbody, tfoot, thead, tr, th, td,*/
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
body, div, p
/*table, caption, tbody, tfoot, thead, tr, th, td*/ {
	border:0;
	outline:0;
	font-size:12px;
	vertical-align:baseline;
	background:transparent;
}
@media only screen and (min-width: 321px) {/* for iPad,PC */
	body, div, p
	/*table, caption, tbody, tfoot, thead, tr, th, td*/ {
		font-size:100%;
	}
}

body {
	line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

ol, ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

a {
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

/* change colours to suit your needs */
ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

/* change colours to suit your needs */
mark {
	background-color:#ff9;
	color:#000; 
	font-style:italic;
	font-weight:bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom:1px dotted;
	cursor:help;
}

/*table {
	border-collapse:collapse;
	border-spacing:0;
}*/

/* change border colour to suit your needs */
hr {
	display:block;
	height:1px;
	border:0;
	border-top:1px solid #cccccc;
	margin:1em 0;
	padding:0;
}

input, select {
	vertical-align:middle;
}

img {
	vertical-align: top;
	font-size:0;
	line-height: 0;
}

.clear {
	clear: both;
}


/* サイト共通
------------------------------------------------- */
body {
	font-size: 100%;
	font-family: 'Noto Sans Japanese', serif;
	color: #000;
	text-align: center;
	background: #fff;
	position: relative;
	overflow: hidden;
	visibility: hidden;
	margin: 0;
	font-size: 14px;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	body {
		font-size: 16px;
	}
}
a {
	color: #048CE4;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
em {
	font-style: normal;
	font-weight: bold;
}
address {
	font-style: normal;
}
.nowrap {
	white-space: nowrap;
}
@media only screen and (max-width: 768px) {/* for SP */
.auto-break {
	display: inline-block;
}
}
.lineheight {
	line-height: 1.8;
}

br.sp {
	display: block;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	br.sp {
		display: none;
	}
}

/* ヘッダ
============================ */
/* ショップ名
--------------------------- */
.shop a {
	display: inline-block;
	font-size: 11px;
	position: fixed;
	top: 12px;
	left: 12px;
	z-index: 2;
	color: #fff;
	filter: alpha(opacity=70);
	opacity: 0.7;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	transition: all 0.5s;
}
.shop a:hover {
	filter: alpha(opacity=50);
	opacity: 0.5;
	text-decoration: none;
}
.shop a span {
	display: block;
	font-size: 14px;
	margin: 6px 0 0;
	text-align: left;
}

@media only screen and (min-width: 769px) {/* for iPad,PC */
	.shop a {
		font-size: 12px;
		top: 25px;
		left: 25px;
	}
	.top .shop {
		display: none;
	}
	.shop a span {
		font-size: 18px;
		margin: 10px 0 0;
	}
}

/* スライドナビ
============================ */
#navi_open {
	cursor: pointer;
	display: inline-block;
	position: fixed;
	top: 10px;
	right: 10px;
	z-index: 2;
}
#navi_close {
	position:absolute;
	top:10px;
	right:10px;
	cursor:pointer;
}
#navi_open span,
#navi_close span {
	color: #fff;
	font-size: 1.625em; /*26px*/
	-webkit-transition:all 0.5s;
	-moz-transition:all 0.5s;
	transition:all 0.5s;
	filter:alpha(opacity=70);
	opacity:0.7;
}
@media only screen and (min-width: 769px) {/* for iPad,PC */
	#navi_open {
		top: 25px;
		right: 25px;
	}
	#navi_close {
		top:25px;
		right:25px;
	}
	#navi_open span,
	#navi_close span {
		font-size: 3.125em; /*50x*/
	}
}
#navi_open:hover span,
#navi_close:hover span {
	filter:alpha(opacity=50);
	opacity:0.5;
}
#naviArea {
	display:none;
	position:fixed;
	width:100%;
	height:100%;
	top:0;
	right:0;
	color:#fff;
	opacity:0.95;
	filter:alpha(opacity=95);
	background:#15191b;
	overflow:auto;
	-webkit-overflow-scrolling:touch;
	text-align:center;
	z-index:100;
}
#naviArea .layer {
	position:absolute;
	background:#15191b;
	z-index:100;
}
#naviArea a {
	color: #fff;
	text-decoration: none;
}
#naviArea a:hover {
	text-decoration:none;
	color: #1c96c2;
	-webkit-transition:all 0.5s;
	-moz-transition:all 0.5s;
	transition:all 0.5s;
}


.slideNavi p {
	font-size: 22px;
	text-align: center;
}
.slideNavi p span {
	display: block;
	font-size: 12px;
	margin: 40px 0 12px;
}
.slideNavi ul.navi {
	width: 80%;
	margin: 20px 10% 0;
	text-align: left;
}
.slideNavi ul.navi li {
	list-style: none;
	font-size: 14px;
	margin: 0.5em;
}
.slideNavi ul.navi li span {
	font-size: 20px;
	display: inline-block;
	padding: 0.4em 0.8em;
}
.slideNavi ul.navi + ul {
	margin-top: 0;
}

@media only screen and (min-width: 769px) {/* for iPad,PC */
.slideNavi p {
	font-size: 52px;
	margin: 0.5em auto;
	width: 80%;
	max-width: 800px;
}
.slideNavi p span {
	font-size: 22px;
	margin: 80px 0 20px;
}

.slideNavi ul.navi {
	display: table;
	width: 80%;
	max-width: 800px;
	margin: 60px auto 0;
}
.slideNavi ul.navi li {
	font-size: 18px;
	margin: 0.5em;
	display: table-cell;
	width: 25%;
	text-align: center;
}
.slideNavi ul.navi li span {
	font-size: 50px;
	display: block;
	padding: 0.3em;
}
.slideNavi ul.navi + ul {
	margin-top: 30px;
}
}

/* トップページ
============================ */


/* #container
--------------------------- */
#container {
	top: 0;
	left: 0;
	width: 100%;
	position: absolute;
	z-index: 1;
}

/* .stageBase
--------------------------- */
.stageBase {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	color: #fff;
}
.stageBase .wrap {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 75%;
	max-width: 768px;
	height: 360px;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
@media only screen and (min-width: 769px) {/* for iPad,PC */
	.stageBase .wrap {
		height: 540px;
	}
}
.stageBase h1 {
	font-size: 30px;
	margin: 0.5em 0 1em;
	letter-spacing: -0.02em;
}
.stageBase h1>span {
	font-weight: normal;
	display: block;
	font-size: 14px;
	line-height: 1.4;
	margin: 0 0 1.2em;
}
@media only screen and (min-width: 769px) {/* for iPad,PC */
	.stageBase h1 {
		font-size: 56px;
		margin: 1em 0 0.5em;
	}
	.stageBase h1>span {
		font-size: 18px;
	}
}
.second h1,
.stageBase h2 {
	display: inline-block;
	font-size: 1.625em; /*26px*/
	margin: 0 0 0.3em;
	font-weight: normal;
	border-bottom: 2px solid #fff;
	padding: 0 0 0.4em;
	color: #fff;
}
.second h1 span,
.stageBase h2 span {
	display: block;
	font-size: 2.625em; /*42px*/
	margin: 0.2em;
}
.stageBase .copy,
.stageBase .copy2 {
	line-height: 1.5;
}
@media only screen and (min-width: 769px) {/* for iPad,PC */
	.stageBase h2 {
		font-size: 36px;
		margin: 0 0 1em;
	}
	.stageBase h2 span {
		font-size: 48px;
	}
	.stageBase .copy {
		font-size: 20px;
		line-height: 1.8;
	}
	.stageBase .copy2 {
		font-size: 20px;
		line-height: 1.8;
		padding-top: 30px;
	}
}


/* 背景設定
--------------------------- */
#stage1,#stage3,#stage5,#stage7 {background:#34495E;}
#stage2,#stage4,#stage6,#stage8 {background:#2980B9;}

#stage1 {
	background:#34495E;
	background: url(../images/bg1.jpg) center center no-repeat;
	background-size: cover;
}
@media only screen and (min-width: 769px) {/* for iPad,PC */
	#stage1 {
		background-attachment: fixed;
	}
}

/* ボタン
--------------------------- */
.btn a {
	margin: 20px auto 10px;
	padding: 16px 0 16px 16px;
	display: block;
	width: 84%;
	background: transparent;
	color: #fff;
	font-size: 16px;
	position: relative;
	border: 2px solid #fff;
	box-sizing: border-box;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	transition: all 0.5s;
}
.btn a span {
	position: absolute;
	left: 10px;
}
.btn a:hover {
	background: #fff;
	color: #2980B9;
	border: 2px solid #fff;
	text-decoration: none;
}
.btn a.gray:hover {
	color: #34495E;
}
.btn+.btn a {
	margin: 10px auto 10px;
}
.time, .phone {
	font-size: 26px;
	font-family: 'Signika', sans-serif;
	font-weight: 400;
}
@media only screen and (min-width: 769px) {/* for iPad,PC */
	.btn a {
		margin: 30px auto 20px;
		width: 340px;
		font-size: 24px;
	}
	.btn a span {
		left: 20px;
	}
	.time {
		font-size: 40px;
	}
	.phone {
		font-size: 40px;
	}
}

/* 1スクロールjsの#pageNav
--------------------------------- */
#pageNav {
	top: 0;
	right: 10px;
	width: 15px;
	text-align: center;
	position: fixed;
	z-index: 2;
}
@media only screen and (min-width: 769px) {/* for iPad,PC */
	#pageNav {
		right: 25px;
	}
}
#pageNav ul {
	width: 15px;
	display: block;
}
#pageNav ul li {
	padding-bottom: 10px;
	width: 16px;
	height: 16px;
	display: block;
	overflow: hidden;
}
#pageNav ul li a {
	display: block;
	color: #fff;
	-webkit-transition:all 0.5s;
	-moz-transition:all 0.5s;
	transition:all 0.5s;
	filter:alpha(opacity=70);
	opacity:0.7;
	font-family: "メイリオ";
	font-size: 0.875em; /*14px*/
}
#pageNav ul li a:hover {
	text-decoration: none;
}
#pageNav ul li a:before {
	content: "○"
}
#pageNav ul li.activeStage a:before {
	content: "●"
}

/* #pageDown
--------------------------- */
#pageDown {
	bottom: 10px;
	left: 0;
	width: 100%;
	text-align: center;
	position: fixed;
	overflow: hidden;
	z-index: 3;
}
#pageDown a {
	color: #fff;
	margin: 0 auto;
	display: block;
	font-family: 'themify';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	font-size: 2.000em; /*32px*/
	-webkit-transition:all 0.5s;
	-moz-transition:all 0.5s;
	transition:all 0.5s;
	filter:alpha(opacity=70);
	opacity:0.7;
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
@media only screen and (min-width: 769px) {/* for iPad,PC */
	#pageDown {
		bottom: 25px;
	}
	#pageDown a {
		font-size: 3.500em; /*56px*/
	}
}
#pageDown a:before {
	content: "\e64b"; /*.ti-angle-down*/
}
#pageDown a:hover {
	text-decoration: none;
}

/* オンマウス
--------------------------- */
.navi_open a:hover,
#pageNav ul li a:hover,
#pageDown a:hover {
	opacity: 0.7;
	-webkit-transition:all 0.5s;
	-moz-transition:all 0.5s;
	transition:all 0.5s;
}

/* フッタ
============================ */
footer {
	background: #34495E;
	color: #fff;
	height: 30px;
	line-height: 30px;
	font-size: 11px;
	font-family: 'Signika', sans-serif;
	font-weight: normal;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	footer {
		font-size: 14px;
	}
}

/* セカンドページ
============================ */
body.second {
	visibility: visible;
	overflow: auto;
	z-index: 1;
}

body.second .visual {
	background: #34495E;
	height: 180px;
	padding-top: 80px;
	margin: 0 0 40px;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	body.second .visual {
		height: 240px;
	}
}
body.second .wrap {
	margin: 0 auto 80px;
	color: #34495E;
}
body.second .wrap .intro+h2 {
	margin: 2em 0 0.5em;
}
body.second .wrap h2 {
	display: inline-block;
	font-size: 1.375em; /*22px*/
	border-bottom: 2px solid #34495E;;
	padding: 0 0 0.3em;
	margin: 2em 0 0.5em;
}
body.second .wrap ul {
	text-align: left;
	list-style: disc;
	padding: 1em 0 0;
}
body.second .wrap ul li {
	margin: 0 0 0.6em;
}
body.second .wrap ul.col2 {
	width: 80%;
	margin: 0 0 0 20%;
	overflow: hidden;
}
body.second .wrap ul.col2 li {
	width: 50%;
	float: left;
	margin-left: 1em;
}
body.second .wrap p {
	line-height: 1.8;
	margin: 0 20px;
}

/* 家電販売
============================ */
#sales ul {
	width: 220px;
	margin: 0 auto;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	#sales ul {
		width: 500px;
	}
}

/* 各種工事
============================ */
#work ul {
	width: 280px;
	margin: 0 auto;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	#work ul {
		width: 500px;
	}
}
#work ul li span {
	width: 12em;
	display: inline-block;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	#work ul li span {
		width: 12em;
	}
}

/* パソコン
============================ */
#pc ul {
	width: 280px;
	margin: 0 auto;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	#pc ul {
		width: 500px;
	}
}
#pc ul li span {
	width: 8em;
	display: inline-block;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	#pc ul li span {
		width: 12em;
	}
}

/* チバデンについて
============================ */
#about ul {
	text-align: center;
	line-height: 1.6;
}
#about #map_canvas {
	width: 80%;
	height: 250px;
	margin: 10px auto 0;
	}
	@media only screen and (min-width: 769px) {/* for iPad,PC */
	#about  #map_canvas {
		width: 600px;
		height: 400px;
	}
}