@charset "utf-8";

/* =================================================

	libs
	 
----------------------------------------------------
*

	Base 

	Page Layout
	globalNav
	contents
	footer

*
================================================= */







/* =================================================

	Base

================================================= */

html {
	font-size: 62.5%;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", "メイリオ",Meiryo, "MS PGothic","MS Pゴシック", "Lucida Grande", sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-size: 12px;
	/* font-size: 14px; */
	line-height: 1.6;
	color: #1a1a1a;
}
html,
body {
	height: 100%;
}


/* ----------------------------------------------
	a
---------------------------------------------- */

a {
	text-decoration: none;
	color: #c00;
}
a:hover {
	color: #ccc;
}
a:hover img {
	opacity: .6;
}

/* small */
@media screen and (max-width: 750px){
a:hover img {
	opacity: 1;
}
}






/* =================================================

	Page Layout

================================================= */

#document {
	position: relative;
	width: 100%;
	min-width: 1000px;
	overflow: hidden;
}

#globalNav {
	position: absolute;
	z-index: 100;
	/* height: 65px; */
}

#contents {
	position: relative;
}

#footer {
	position: relative;
}

/* large */
@media screen and (max-width: 1000px){
#document {
	min-width: 0px;
	min-width: initial;
	min-width: none;
}
}

/* small */
@media screen and (max-width: 750px){
#globalNav {
	position: relative;
}
}


/* ----------------------------------------------
	pagetop
---------------------------------------------- */

#pagetotop {
	position: fixed;
	right: 20px;
	bottom: 20px;
	width: 56px;
	height: 56px;
	z-index: 200;
}







/* =================================================

	globalNav

================================================= */

#globalNav {
	width: 100%;
	padding: 15px 0px 14px;
	border-bottom: 1px solid #e6e6e6;
}

ul.gNav {
	width: 640px;
	margin: 0px auto;
	font-family: 'Open Sans', sans-serif;
}
ul.gNav:before,
ul.gNav:after { content: ""; display: table;}
ul.gNav:after { clear: both;}

ul.gNav li {
	display: table-cell;
	/float: left;
	height: 29px;
	text-align: center;
	vertical-align: middle;
	line-height: 28px;
}
ul.gNav li.navStore {
	padding-left: 10px;
}

ul.gNav li a {
	display: block;
	text-decoration: none;
	color: #1a1a1a;
	font-size:12px;
}
ul.gNav li.navHome a {
	width: 58px;
}
ul.gNav li.navWork a {
	width: 82px;
}
ul.gNav li.navAbout a {
	width: 70px;
}
ul.gNav li.navNews a {
	width: 76px;
}
ul.gNav li.navContact a {
	width: 86px;
}
ul.gNav li.navPrivacy a {
	width: 138px;
}
ul.gNav li.navStore a {
	width: 118px;
	border: 1px solid #1a1a1a;
}

ul.gNav li a:hover {
	color: #ccc;
	font-family: "Open Sans", sans-serif;
}
ul.gNav li.navStore a:hover {
	border: 1px solid #ccc;
}

#globalNav .gnavSm {
	display: none;
}

/* small */
@media screen and (max-width: 750px){

#globalNav {
	padding: 0px 0px;
	border-bottom: none;
	box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 6px 3px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 6px 3px;
	-moz-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 6px 3px;
}

#globalNav ul.gNav {
	width: auto;
	padding: 5px 1.5% 10px;
	border-bottom: 1px solid #1a1a1a;
	text-align: center;
}
#globalNav ul.gNav li {
	display: inline-block;
	height: auto;
}
#globalNav ul.gNav li a {
	display: inline-block;
}
#globalNav ul.gNav li.navHome a,
#globalNav ul.gNav li.navWork a,
#globalNav ul.gNav li.navAbout a,
#globalNav ul.gNav li.navNews a,
#globalNav ul.gNav li.navContact a,
#globalNav ul.gNav li.navPrivacy a,
#globalNav ul.gNav li.navStore a {
	width: auto;
	padding: 5px 15px;
}
#globalNav ul.gNav li.navContact {
	clear: left;
}
#globalNav ul.gNav li.navPrivacy {
}
#globalNav ul.gNav li.navStore {
	clear: left;
	float: none;
	padding-left: 0px;
	margin-top: 5px;
}
#globalNav ul.gNav li.navStore a {
	padding: 2px 8px;
	border-color: #949494;
}
#globalNav ul.gNav li a:hover {
	color: #1a1a1a;
}
#globalNav ul.gNav li.navStore a:hover {
	border: 1px solid #949494;
}

#globalNav .gnavSm {
	clear: both;
	display: block;
	font-family: 'Open Sans', sans-serif;
}
#globalNav .gnavSm a {
	display: block;
	padding: 15px 0px 14px;
	color: #1a1a1a;
	text-align: center;
}
#globalNav .gnavSm a span {
	display: inline-block;
	position: relative;
}
#globalNav .gnavSm a span:before {
	display: inline-block;
	position: absolute;
	left: -25px;
	top: 3px;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 9px 0px 9px;
	border-color: #1a1a1a transparent transparent transparent;
}
#globalNav .gnavSm a span.active:before {
	border-width: 0px 9px 15px 9px;
	border-color: transparent transparent #1a1a1a transparent;
}


/*
	js
---------------------------------------------- */
#globalNav ul.gNav {
	display: none;
}
}






/* =================================================

	common

================================================= */

/* ----------------------------------------------
	article
---------------------------------------------- */

#contents .article {
	padding-top: 90px;
}

/* small */
@media screen and (max-width: 750px){
#contents .article {
	padding-top: 8%;
}
}



/* ----------------------------------------------
	section
---------------------------------------------- */

#contents .section {
	padding-top: 92px;
	padding-bottom: 120px;
}
#contents .sectionOdd {
	padding-top: 92px;
	padding-bottom: 120px;
	color: #fff;
	background-color: #1a1a1a;
}

/* medium */
@media screen and (max-width: 978px){
#contents .section {
}
#contents .sectionOdd {
}
}

/* small */
@media screen and (max-width: 750px){
#contents .section,
#contents .sectionOdd {
	padding-top: 8%;
	padding-bottom: 10%;
}
}



/* ----------------------------------------------
	width
---------------------------------------------- */

#contents .widthCmn,
#contents .widthCmn03 {
	width: 978px;
	margin-left: auto;
	margin-right: auto;
}
#contents .widthCmn02 {
	margin-left: auto;
	margin-right: auto;
}

/* large */
@media screen and (max-width: 1000px){
#contents .widthCmn,
#contents .widthCmn03 {
	width: 94%;
}
}

/* medium */
@media screen and (max-width: 978px){
#contents .widthCmn {
	width: 94%;
	text-align: center;
}
}

/* small */
@media screen and (max-width: 750px){
#contents .widthCmn,
#contents .widthCmn02,
#contents .widthCmn03 {
	width: 78%;
}
}



/* ----------------------------------------------
	button variation
---------------------------------------------- */

/*	btn01 , btn02
---------------------------------------------- */

.btn01 {
	margin-top: 60px;
}

.btn01:has(> a:nth-of-type(2)) {
	display: flex;
	justify-content: center;
}

.btn01:has(> a:nth-of-type(2)) > a {
	margin-left: 0;
	margin-right: 0;
}

.btn01:has(> a:nth-of-type(2)) > a + a {
	margin-left: 20px;
}

.btn01 a {
	display: block;
	width: 126px;
	/* width: 148px; */
	height: 24px;
	padding: 5px 5px 2px;
	/* padding: 5px 5px 4px; */
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #1a1a1a;
	text-align: center;
	vertical-align: middle;
	font-family: 'Open Sans', sans-serif;
	text-decoration: none;
	color: #1a1a1a;
}
.btn01 a:hover {
	color: #fff;
	background-color: #1a1a1a;
}

.btn02 {
	margin-top: 60px;
}
.btn02 a {
	display: block;
	width: 126px;
	/* width: 148px; */
	height: 24px;
	padding: 5px 5px 2px;
	/* padding: 5px 5px 4px; */
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #fff;
	text-align: center;
	vertical-align: middle;
	font-family: 'Open Sans', sans-serif;
	font-weight: normal;
	text-decoration: none;
	color: #fff;
}
.btn02 a:hover,
.btn02 a.current {
	color: #1a1a1a;
	background-color: #fff;
}

/* small */
@media screen and (max-width: 750px){
.btn01,
.btn02 {
	margin-top: 10%;
}
.btn01 a,
.btn02 a {
	width: 97%;
	height: auto;
	padding: 4% 1.5%;
	font-size: 24px;
}

.btn01:has(> a:nth-of-type(2)) {
	flex-direction: column;
}

.btn01:has(> a:nth-of-type(2)) > a + a {
	margin-left: 0;
	margin-top: 20px;
}

.btn01 a:hover {
	color: #1a1a1a;
	background-color: #fff;
}
.btn02 a:hover {
	color: #fff;
	background-color: #1a1a1a;
}
}


/*	btnForm
---------------------------------------------- */

.btnForm {
	margin-top: 60px;
}
.btnForm a {
	display: block;
	width: 296px;
	/* width: 348px; */
	height: 34px;
	/* height: 40px; */
	padding: 16px 5px 4px;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #1a1a1a;
	/*border: 1px solid #fff;*/
	text-align: center;
	vertical-align: middle;
	font-family: 'Open Sans', sans-serif;
	font-size: 13px;
	/* font-size: 16px; */
	/*color: #fff;*/
	color: #1a1a1a;
}
.btnForm a:hover {
	color: #fff;
	/*color: #1a1a1a;*/
	background-color: #1a1a1a;
	/*background-color: #fff;*/
}

/* small */
@media screen and (max-width: 750px){
.btnForm {
	margin-top: 10%;
}
.btnForm a {
	width: 94%;
	height: auto;
	padding: 4% 3%;
	font-size: 16px;
}
.btnForm a:hover {
	color: #1a1a1a;
	background-color: #fff;
}
}



/* ----------------------------------------------
	title variation
---------------------------------------------- */

/*	ttl
---------------------------------------------- */

.ttl,
.ttlOdd {
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	/* padding-bottom: 23px; */
	text-align: center;
	font-family: 'Roboto', sans-serif;
	font-weight: lighter;
	font-size: 51px;
}
.ttl {
	background: url(../img/ttl_bg.png) center bottom no-repeat;
	color: #666666;
}
.ttlOdd {
	color: #fff;
	background: url(../img/ttl_bg_odd.png) center bottom no-repeat;
	/*font-size:48px;*/
}

/* small */
@media screen and (max-width: 750px){
.ttl,
.ttlOdd {
	padding-bottom: 0px;
	font-size: large;
	line-height: 1.0;
	background: none;
}
.ttl:after,
.ttlOdd:after {
	display: block;
	content: "";
	width: 158px;
	height: 0px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 10px;
}
.ttl:after {
	border-bottom: 3px solid #1a1a1a;
}
.ttlOdd:after {
	border-bottom: 3px solid #fff;
}
}





/* =================================================

	footer

================================================= */

#footer {
	padding: 30px 20px 25px;
	text-align: center;
}

#footer .copyright {
	padding-top: 20px;
	font-family: 'Open Sans', sans-serif;
	font-size: 12px;
	/* font-size: 14px; */
	line-height: 1.4;
	color: #999999;
}
