@charset "UTF-8";
/*
* updated 2019/08/07 
*/

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

 ALL

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

html * {
	/*-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;*/
	-webkit-font-smoothing: antialiased;
	-webkit-appearance: none;
	outline: none;
	-moz-osx-font-smoothing: grayscale;
}

html {
	-webkit-tap-highlight-color: transparent;
	font-size: 62.5%;
}

body {
	/* ゴシック */
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
	/* 明朝 */
	font-size: 1.6em;
/*	font-size: 14px;*/
	color: #343c48;
	-webkit-text-size-adjust: 100%;
	height: 100%;
	margin: 0;
}


html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, code, del, em, img, strong,
dl, dt, dd, ol, ul, li,
fieldset, form, label,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	vertical-align: middle;
	font-style: normal;
	font-weight: normal;
	line-height: 1.7;
}

article, aside, figure, footer, header, hgroup, menu, nav, section {
	margin: 0;
	padding: 0;
	border: none;
	display: block;
	outline: none;
}


h1, h2, h3, h4, h5, h6 {
/*  line-height: 1.47;*/
}

p {
/*	line-height: 1.67;*/
	font-size: 1.6rem;
	text-align:justify;
}

dt, dd, li, th, td, input, textarea {
/*  line-height: 1.67;
	text-align: justify;
	text-justify: inter-ideograph;*/
}

ul, ol {
	list-style-type: none;
	margin: 0;
}

a {
	color: #fff;
	text-decoration: none;
	text-align:justify;
	font-weight: bold;
}

a:hover {
	color: #fff;
	text-decoration: none;
	text-align:justify;
	font-weight: bold;
	opacity: 0.5;
}

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

 Header

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

header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
	height: 53px;
    background-color: #000;
	padding: 10px 0;
    z-index: 5;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
}

#header-area {
	width: 1200px;
	margin: 0 auto;
	color: #ffffff;
}

.logo {
	width: 148px;
	height: 25px;
	float: left;
}

#gnavi-area {
	float: right;
}

.gnavi ul li {
	display: inline-block;
	font-weight: bold;
	margin-left: 10px;
}

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

 Contents

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

#main-contents {
	width: 1200px;
	height: 100%;
	margin: 0 auto;
/*	padding-top: 53px;*/
}

/* TOP PAGE */

.top-image {
	width: 1200px;
	height: 500px;
	background-image: url(../images/topimage.jpg) 
}

.top-copy {
	padding: 160px 0 0 40px;
	width: 550px;
}

.copy {
	font-size: 20px;
	font-weight: bold;
	text-align:justify;
	background-color: rgba(255,255,255,0.5);
	padding: 15px;
}

#subnavi-area {
	height: 53px;
	background-color: #030000;
	margin: 0 auto;
}

.sabnavi {
	background-color: #3c3c3c;
	border-right: #fff 1px solid;
	width: 990px;
	height: 53px;
	margin: 0 auto 40px auto;
}

.sabnavi ul li {
	color: #fff;
	display: inline-block;
	font-weight: bold;
	width: 326px;
	height: 45px;
	border-left: 1px solid #FFF;
	text-align: center;
	font-size: 16px;
	padding-top: 8px;
}

.service-box {
	width: 960px;
	height: 255px;
	clear: both;
	margin: 0 auto 30px auto;
}

.service-content_l {
	width: 300px;
	height: 255px;
	margin-right: 30px;
	float: left;
}

.service-content_r {
	width: 300px;
	height: 255px;
	float: right;
}

.service-ph {
	width: 300px;
	height: 200px;
	margin-bottom: 10px;
}

.service-text {
	font-size:14px;
	line-height: 20px;
}

.topcopy-contents {
	width: 960px;
	margin: 0 auto 30px auto;
}

.title-about {
	width: 960px;
	border-bottom: solid 2px #000;
	text-align: center;
	margin: 20px 0;
}

.topcopy-text {
	text-align: center;
}

.service-title {
	width: 790px;
	margin: 0  auto 20px auto;
}

.release-title {
	width: 790px;
	margin: 0  auto 20px auto;
}

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

 Footer

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

footer {
	width: 100%;
	height: 220px;
	background-color: #000;
	margin-top: 40px;
}

#footer-area {
	width: 1200px;
	margin: 0 auto;
	color: #fff;
	padding-top: 20px;
}

.footer-logo {
	float: left;
	width: 150px;
	height: 100px;
	margin-right: 20px;
}

.footer-info {
	width: 430px;
	height: 82px;
	font-size: 16px;
	margin-bottom: 5px;
	float: left;
}

.footer-navi {
	float: right;
}

.footer-navi ul li {
	display: inline-block;
	margin-left: 10px;
}

.footer-barner {
	clear: both;
	width: 1200px;
	height: 46px;
}


.footer-barner ul li {
	display: inline-block;
}

.copyright {
	clear: both;
	color: #fff;
	text-align: center;
	font-size: 12px;
	margin-top: 10px;
}

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

 Toppage

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

.carousel {
	width: 1200px;
	height: 151px;
	margin: 28px auto;
}

.carousel ul li {
	float: left;
	width: 400px;
	height: 135px;
	background-color: #3d3d3d;
}

.top-contents {
	width: 960px;
/*	height: 300px;*/
	margin: 28px auto;
	border: 1px #d3d3d3 solid;
	padding: 40px 0 40px;
	margin-bottom: 100px;
}

.news-box {
	width: 570px;
/*	height: 158px;*/
	margin: 0 auto;
}

.news-box h2 {
	width: 77px;
	height: 18px;
	margin-bottom: 2px;
	background-image: url(../images/news.png);
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}

.news-box ul li {
	line-height: 1.8rem;
}

.news-box img {
	margin-bottom: 2px;
	margin-right: 8px;
	margin-left: 10px;
}

.barner-box {
	width: 590px;
	float: right;
}

.barner-box ul li {
	float: left;
	width: 190px;
	height: 158px;
}

.barner-right {
	margin-right: 10px;
}

#pagetop {
/*    display: none;
    position: fixed;
    bottom: 30px;
    right: 30px;*/
/*	background: rgba(0,0,0,.7);
	text-align: center;
	color: #fff;*/
	padding: 10px;
	position: fixed;
	right: 15px;
	z-index: 100;	
}

#pagetop a {
    display: block;
    text-decoration: none;
    padding: 20px 10px;
}
 
#pagetop a:hover {
    display: block;
    text-align: center;
    text-decoration: none;
    padding:20px 10px;
}
#scrolltop {
/*    display: none;
    position: fixed;
    bottom: 30px;
    right: 30px;*/
/*	background: rgba(0,0,0,.7);
	text-align: center;
	color: #fff;*/
	padding: 10px;
	position: fixed;
	right: 15px;
	z-index: 100;	
}

#scrolltop a {
    display: block;
    text-decoration: none;
    padding: 20px 10px;
}
 
#scrolltop a:hover {
    display: block;
    text-align: center;
    text-decoration: none;
    padding:20px 10px;
}

.news-test {
	text-align: center;
}

.news-box ul li a{
	color: #000;
	text-decoration: underline;
}

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

 all page details

======================================== */
#pagetop-image {
	width: 1200px;
	height: 300px;
	padding-top: 53px;
}

.page-navi {
	width: 1200px;
	height: 50px;
	background-color: #000;
	margin-bottom: 40px;
}

.page-navi ul li {
	display: inline-block;
	font-weight: bold;
	width: 295px;
	padding-top: 10px;
	text-align: center;
	color:#FFF;
}

.page-navi_line {
	border-right: 1px solid #fff;
	height: 50px;
}

.page-navi_noline {
	height: 50px;
}

.page-navi3 {
	width: 1200px;
	height: 50px;
	background-color: #000;
	margin-bottom: 40px;
}

.page-navi3 ul li {
	display: inline-block;
	font-weight: bold;
	width: 395px;
	padding-top: 10px;
	text-align: center;
	color:#FFF;
}

.page-navi3_line {
	border-right: 1px solid #fff;
	height: 50px;
}

.page-navi3_noline {
	height: 50px;
}

#page-contents {
	width: 1200px;
	height: 100%;
	clear: both;
	margin-bottom: 40px;
}

#shoppage-contents {
	width: 1200px;
	height: 100%;
	clear: both;
}

#online {
	height:100vh;
}

#onlinestore-contents {
	width: 1200px;
	height: 240px;
	margin: 40px 0;
	clear: both;
}

#onlinestore-contents a {
	color: #3d3d3d;
}

#constructionpage-contents {
	width: 1200px;
	height: 100vh;
}

.page-title {
	padding: 0.1em 0.5em;/*上下 左右の余白*/
	background: transparent;/*背景透明に*/
	border-left: solid 5px #000;/*左線*/
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 15px;
  }

.page-title02 {
	padding: 0.1em 0.5em;/*上下 左右の余白*/
	background: transparent;/*背景透明に*/
	border-left: solid 5px #000;/*左線*/
	font-size: 20px;
	font-weight: bold;
	margin-top: 40px;
	margin-bottom: 15px;
  }
  
/* ========================================

 company

======================================== */
.company-box {
	width: 770px;
}

.company-box table {
	width: 770px;
	font-size: 16px;
	border-top: #d3d3d3 1px solid;
	border-collapse: collapse;
}

.company-box table th {
	text-align: left;
	padding: 1.2em;
	border-bottom: #d3d3d3 1px solid;
	background: #eee;
	width: 30%;
}

.company-box table td {
	text-align: left;
	padding: 1.2em;
	border-bottom: #d3d3d3 1px solid;
	width: 70%;
}

.company-box table td a {
	color: #343c48;
	font-weight: 0;
}

.company-map {
	width: 390px;
	float: right;
	margin-bottom: 40px;
}

.company-map iframe {
	width: 390px;
	height: 400px;
}

#company {
	margin-top:-53px;
	padding-top:53px;
}

/*#boss {
	margin-top:-53px;
	padding-top:53px;
}

#philosophy {
	margin-top:-53px;
	padding-top:53px;
}

#businessinfo {
	margin-top:-53px;
	padding-top:53px;
}*/

.company-dtitle {
	background: linear-gradient(transparent 60%, #CCC 30%);
	font-size: 2.0rem;
	font-weight: bold;
}

.company-dtitle2 {
	background: linear-gradient(transparent 60%, #CCC 30%);
	font-size: 2.0rem;
	font-weight: bold;
	margin-top: 10px;
}

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

 privacy

======================================== */
.privacy-title {
	font-size: 18px;
	font-weight: bold;
	margin-top: 20px;
}

.privacy-day {
	text-align: right;
	margin-top: 20px;
}

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

 contact

======================================== */
.contact-area {
	background: #CCC;/*背景色*/
	padding: 0.15em;/*文字まわり（上下左右）の余白*/
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	margin: 15px 0;
}

.contact-box table {
	width: 1200px;
	font-size: 16px;
	border-bottom: 1px solid #d3d3d3;
	border-top: 1px solid #d3d3d3;
	border-collapse: collapse;
}

.contact-box th {
	width: 30%;
	text-align: left;
	padding: 20px;
	border-bottom: 1px solid #d3d3d3;
}

.contact-box td {
	width: 70px;
	border-bottom: 1px solid #d3d3d3;
}

.cp_iptxt {
	position: relative;
	width: 80%;
	margin: 40px 3%;
}
.cp_iptxt input[type='text'] {
	font: 15px/24px sans-serif;
	box-sizing: border-box;
	width: 80%;
	padding: 0.3em;
	transition: 0.3s;
	letter-spacing: 1px;
	color: d3d3d3;
	border: 1px solid #ccc;
	border-radius: 4px;
}
.ef input[type='text']:focus {
	border: 1px solid #ccc;
	outline: none;
	box-shadow: 0 0 5px 1px rgba(218,60,65, .5);
}

.contact-text {
	width: 80%;
	height: 100px;
	margin: 20px 0 10px 0;
	border: 1px solid #ccc;
	border-radius: 4px;
}

.button-box {
	text-align: center;
}

select {
	font: 15px/24px sans-serif;
	width: 60%;
	padding: 0.3em;
	transition: 0.3s;
	letter-spacing: 1px;
	color: #aaaaaa;
	border: 1px solid #ccc;
	border-radius: 4px;
}

#submit_button {
    // 幅と高さを指定
    width: 150px;
	padding: 10px;
	margin-top: 20px;
	text-align: center;
}

.privacy-day a {
	color: #343c48;
	text-decoration: none;
	text-align:justify;
}

.privacy-day a:hover {
	color: #343c48;
	text-decoration: none;
	text-align:justify;
	opacity: 0.5;
}

.required {
	color: #F00;
}

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

 shoplist

======================================== */
#shoplist-box {
	width: 1200px;
	height: 333px;
}

#shoplist-box02 {
	width: 1200px;
	height: 333px;
	margin-bottom: 30px;
}

.shop-title {
	background: linear-gradient(transparent 70%, #CCC 30%);
	font-size: 24px;
	font-weight: bold;
	margin-top: -15px;
	margin-bottom: 10px;
}

.shoplist-ph {
	width: 400px;
	height: 333px;
	background: #d3d3d3;
	float: left;
}

.shoplist-ph02 {
	width: 400px;
	height: 333px;
	background: #d3d3d3;
	float: left;
}

.shoplist-textbox {
	width: 780px;
	height: 333px;
	float: right;
}

.shoplist-textbox p {
	font-size: 18px;
}

.shoplist-textbox a {
	color: #343c48;
}

#kanagawa {
	margin-top:-53px;
	padding-top:53px;
}

#tokyo {
	margin-top:-53px;
	padding-top:53px;
}

#hyogo {
	margin-top:-53px;
	padding-top:53px;
}

#osaka {
	margin-top:-53px;
	padding-top:53px;
}

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

 Under Construction

======================================== */
.construction {
	text-align: center;
	margin-top: 200px;
}


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

 onlinestore

======================================== */
.online-lbox {
	width: 575px;
	height: 212px;
	float: left;
}

.online-rbox {
	width: 575px;
	height: 212px;
	float: right;
}



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

 add_230524

======================================== */
.banner-middle{
	text-align: center;
	display: block;
	margin-bottom: 70px;
}
.banner-saiyou{
	text-align: center;
	display: inline-block;
}
.banner-saiyou img{
	text-align: center;
	display: block;
	width: 960px;
}
