/* カスタマイズ用CSS */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&display=swap');
/*-----詳細ページ----*/
.clearfix:after { 
content: "";
clear: both;
display: block;
}

.ec-productRole__title .ec-headingTitle {
    font-size:20px !important;
    font-weight:700;
    letter-spacing:0;
    padding:8px 0;
    border-bottom:1px solid #000;
    text-align:left;
}
.ec-off1Grid,
.ec-productRole__description{
    line-height:2em;
}

.ec-layoutRole__contents {
    margin:50px 0;
}
/*-----img-----*/
img {
	max-width: 100%;
	height: auto;
	border:0;
	margin: 0;
	padding: 0;
	vertical-align:middle;
}

a:hover img{
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
}

.ec-tit-login {
    font-size:25px;
    font-weight:700;
    color: #d00202;
    margin-bottom: 20px;
    margin-left: 20px;
}
/*-----text-----*/
a {}
a:hover {color:#ea535e;}
.bold {font-weight:bold;}
.center {
    display:block;
    text-align:center;
    margin:auto;
}

.right-img{
    padding-left:10px;
    float:right;
}
.right-img img{
    width:auto;
}
@media (max-width:768px){
    .right-img{
        display:block;
        padding-left:0px;
        float:none;
        margin:0 auto 15px;
    }
    .right-img img{
        display:block;
        margin:auto;
    }
}
.moji1 { 
	text-indent:-1em;
	padding-left:1em;
	text-align:left;
	margin-bottom:0.5em;
}
span {display:inline-block;}

body {
	font-family:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
}

/*********************************
all
*********************************/
.inner{
	display:block;
	width:90%;
	max-width:1060px;
	padding:0;
	margin:auto;
}

h2 {
	font-size:26px;
	font-weight:500;
	letter-spacing:0.3em;
	margin-bottom:50px;
	text-align:center;
	font-family: 'Noto Serif JP', serif;
}
h2 span{
	display:block;
	font-size:16px;
	font-weight:500;
	letter-spacing:0.1em;
	margin-top:10px;
}

h4{
    	padding:0.2em 0.5em;
    	margin:1.5em 0 1em;
    	border-bottom:1px solid #808080;
    	border-left:5px solid #808080;
}
/*ヘッター3*/
.block-header{
    background:#000;
    color:#fff;
    	font-family: 'Noto Serif JP', serif;
}
.block-header .container{
   max-width: calc(100% - 80px);
}
.block-header .nav li{
   font-weight: 700;
   font-size:16px;
}
.block-header .nav a{
   color:#fff;
}
.headnav{
	background:#f0f0f0;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	padding:12px 0;
	border-bottom:1px solid #d2d2d2;
}
.headnav .container{
   max-width: 100%;
}
.headnav li{
	width: calc(100% / 7) ;
	border-right:1px solid #b4b4b4;
	line-height:2em;
}
.headnav li:nth-of-type(7) {border:0;}
.block-header .headnav a{color:#000;}
.headnav a:hover{color:red;}

/*--------------------------------------------
footer
--------------------------------------------*/
#footer {
	background:#f0f0f0;
	border-top:1px solid #a2a2a2;
	font-size:12px;
	text-align:center;
	padding:0;
	margin:0;
}


#footer .nav-foot {
	display:block;
	text-align:center;
	margin:20px auto;
}

#footer .nav-foot li{
	display:inline-block;
	font-size:12px;
	font-weight:700;
	line-height:2;
	padding:0;
}

#footer .nav-foot li a{color:#000;text-decoration: none;}
#footer .nav-foot li a:hover{color:#003399;}

#footer .nav-foot li:before {
	content: "|";
	color:#404040;
	font-weight: 700;
	padding: 0 15px;
}
#footer .nav-foot li:first-child:before {content: none;}

#footer .copy {
	display:block;
	background:#fff;
	padding:22px 0;
}

@media only screen and ( max-width : 600px ) {
	#footer .nav-foot li:before {
		padding: 0 10px;
	}
}

/*********************************
main
*********************************/
#main {
	position:relative;
	display:block;
	text-align:center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
}
#main .img{
	width: 100%;
	height:712px;
	object-fit: cover;
	overflow: hidden;
}
#main .inner{
	position:absolute;
	left:0;
	right:0;
	top:180px;
	display:flex;
	justify-content: space-between;
	align-items: flex-end;
	width:90%;
	max-width:1060px;
	margin:auto;
	z-index:10;
}
#main .text-area{
	max-width:560px;
	width:52.83%;
	font-size:19px;
	color:#000;
	text-align:left;
	line-height:2em;
	margin-bottom:1em;
}
#main h2{
	max-width:398px;
	width:37.54%;
	margin:0;
}


#main h3{
	font-size:38px;
	font-weight:700;
	margin-bottom:1em;
}
@media only screen and ( max-width : 1060px ) {
	#main .inner{
		top:21.22%;
	}
}
@media (max-width:768px){
	#main .img{
		height:350px;
	}
	#main .inner{
		top:auto;
		bottom:2%;
		flex-direction: column;
	}
	#main .text-area{
		max-width:auto;
		width:100%;
		font-size:16px;
		line-height:1.6em;
		margin-bottom:1em;
	}

	#main h4{
		font-size:22px;
		margin-bottom:1em;
	}
}
/*********************************
info
*********************************/
.ec-layoutRole__contents{
    max-width:100%;
    width:100%;
}
#info{
	display:block;
	background:#000;
	color:#fff;
	padding:70px 0;
	text-align:center;
	margin:auto;
	font-size:18px;
	
}

#info h2 {
	text-align:left;
}
#info h2 span{
	display:inline-block;
	font-size:16px;
	font-weight:500;
	letter-spacing:0.1em;
	margin-top:0px;
	margin-left:4em;
}
.news {
	border-top:1px solid #fff;
	border-bottom:1px solid #fff;
	padding:1em 0;
	text-align:left;

}

.ec-newsRole__newsTitle,
.ec-newsRole__newsDate,
.news{
	color:#000000 !important;
}

.news li{
	display: flex;
	flex-direction: row;
	padding:1em 0;
}

.ec-newsRole__newsDate{
	width:5em;
	margin-right:2em;
}

/*********************************
商品products
*********************************/
#products{
	display:block;
	width:90%;
	max-width:1060px;
	padding:70px 0;
	margin:auto;
}

h2 {
	margin-bottom:80px;
}


#products > h3 {
	font-size:22px;
	font-weight:500;
	letter-spacing:0.1em;
	margin:0 auto 50px;
	text-align:center;
	font-family: 'Noto Serif JP', serif;
	padding-bottom:15px;
	border-bottom:1px solid #000;
}
#products > h3 span{
	display:block;
	font-size:18px;
	font-weight:500;
	letter-spacing:0.1em;
	margin-top:10px;
}

.item{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width:100%;
	padding:0;
	margin:0;
}

.item li{
	width:33%;
	padding:0;
	line-height:1;
	margin-bottom:30px;
}

@media (max-width:768px){
	.item li{
		width:49%;
	}
}

.item li .photo{
	display:block;
	padding:0;

}

.item li .photo img{
	width:100%;
	height:180px;
	object-fit: cover;
	overflow:hidden;
}

.item li h3{
	font-size:14px;
	line-height:1.2;
	margin:1em 0 0.5em;
	text-align:left;
	border:0;
}
.item li .cate{
	display:block;
	font-size:12px;
}

.item li a{
	color:#000;
}

.item li a:hover{
	color:red;
}

.cell.empty {
	background-color:none;
	border:0;
	height: 0;
	padding-top: 0;
	padding-bottom: 0;
	margin-top: 0;
	margin-bottom: 0;
	box-shadow:0 0 0px rgba(0,0,0,0);
}

/*ボタン*/
.btn-more{
	text-align:right;
	transition:0.5s;
	margin:0 auto 80px;
}
.btn-more a{
	color:#000;
}

.btn-more :hover{
	margin-right:-10px;
}

/*********************************
movie
*********************************/
#movie{
	display:block;
	padding:70px 0;
	text-align:center;
	margin:auto;
	font-size:18px;
}

.movie-area{
	display:block;
	background:#000;
	padding:0;
	margin:0 auto 60px;
	max-height:430px;
	overflow:hidden;
}
.video{
position:relative;
max-width:766px;
width:100%;
padding-top:56.25%;
margin:auto;
z-index:1;
}
.video iframe{
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
max-height:430px;
}

/*ボタン*/
.btn-next{
	width:250px;
	text-align:center;
	margin:35px auto 55px;
	display:block;
	border:2px solid #000;
	border-radius:1.5em;
	font-size:22px;
	line-height:2.63em;
	color:#000;
}

.btn-next a{
	color:#000;
	display:block;
}

.btn-next:hover{
	background:#f0f0f0;
	border-radius:1.5em;
	color:#000;
	font-size:22px;
}


/*address*/
address{
	display:block;
	font-size:17px;
	line-height:2em;
	margin:auto;
}

/*メインナビ*/
.sns {
	display:block;
	margin-top:40px;
}

.sns li {
	display:inline-block;
	vertical-align:middle;
	margin:0 13px;
}

p{
  text-align:justify;
  word-break:break-all; 
  text-justify:inter-ideograph;
  text-justify:inter-character;
  word-wrap:break-word;
  overflow-wrap:break-word;
}