@charset "UTF-8";
/* CSS Document */
@import url(//use.fontawesome.com/releases/v5.0.8/css/all.css);

html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}


@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}


html {
  font-family: -apple-system, BlinkMacSystemFont,"Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
		font-weight:500;
}
@media all and (-ms-high-contrast: none)  {
  html {
    font-family: Verdana, Meiryo, sans-serif;
  }
}
@media all and (-ms-high-contrast: active) {
  html {
    font-family: Verdana, Meiryo, sans-serif;
  }
}
body{
background: url('../images/header-bg.png') no-repeat 95% -40px;
background-size: 30%;
font-size: 100%;
line-height: 1.8;
}
a{
text-decoration: none;
color:#000;
/*transition: all 0.3s;*/
}
a:hover{
color:#D0121B;
}
img{
width: 100%;
height: auto;
}

#header-box,#top-textinbox,#footer-innerbox{
max-width: 1000px;
margin: 0 auto;
overflow: hidden;
}
#top-textbox{
padding-bottom: 8%;
}
#header-box{
padding-top: 40px;
padding-bottom: 35px;
}
h1{
width: 19.8%;
float: left;
}
#gmenu{
display: flex;
justify-content: flex-end;
/*float: right;*/
font-weight: bold;
/*overflow: hidden;*/
width: 62.2%;
margin-top: 4.0em;
margin-left:auto;
}
#gmenu li{
/*float:left;*/
margin-right: 3em;
}
#gmenu li:last-child{
margin-right: 0;
}
#gmenu li a{
display: block;
position: relative;
padding-bottom: 15px;
}
#gmenu li a img{
position: absolute;
left:0;
right: 0;
bottom:0;
margin: 0 auto;
opacity: 0;
transition: all 0.3s;
display: block;
}
#gmenu li.border01.ov a img{
opacity: 1;
}
#gmenu li.border01 a:hover img{
opacity: 1;
}
#topmain-box{
width: 100%;
position: relative;
margin-bottom: 8%;
}
#topmain-box .photo{
display: none;
z-index: 10;
}
#topmain-box #title{
width: 25%;
display: block;
position: absolute;
right: 7%;
top:0;
display: none;
z-index: 20;
}
#topmain-box #under-bar{
position: absolute;
width: 100%;
bottom:-7%;
z-index: 20;
}
.banner-box,#news-box.top{
width: 48%;
float: left;
margin-bottom: 5%;
overflow: hidden;
position: relative;
}
#news-box.top{
margin-bottom: 6%;
}
.banner-box{
border-bottom:5px solid #D0121B;
}
.banner-box.no-border{
border-bottom: none;
}
.banner-box.group{
width: 100%;
}
.banner-box.right{
float: right;
}
.banner-box strong{
display: block;
position: absolute;
z-index: 10;
}
a .banner-box .zoom-img{
display: block;
transform: scale(1);
transition: all .5s ease-out;
}
a:hover .banner-box .zoom-img{
transform: scale(1.1);
}
.right-box{
width:48%;
float: right;
}

#top-textbox{
background: url('../images/top-textbg.png') no-repeat -8% 130%;
background-size: 40%;
}

#news-box.top strong{
display: block;
}
.white-box01{
background:rgba(255,255,255,0.75);
overflow: hidden;
padding:20px 20px 5px 20px;
}
#news-box dl.news{
overflow: hidden;
margin-bottom: 15px;
}
#news-box dt{
float: left;
border-radius: 3px;
padding:2px;
color:#FFF;
width:14.16%;
font-size:0.9em;
text-align: center;
}
#news-box dt.news-icon{
background:#D0121B;
}
#news-box dt.event-icon{
background:#0B5595;
}
#news-box dt.media-icon{
background:#CB8D00;
}
#news-box dd{
float: right;
width: 79%;
}
#footer-box{
background: url('../images/footer-bg.png');
color:#FFF;
}
#footer-innerbox{
padding: 48px 0;
overflow: hidden;
}
#footer-innerbox a{
color:#FFF;
}
#footer-innerbox a:hover{
color:#D0121B;
}
#vi{
display: block;
float: left;
width: 10.3%;
margin-right: 10%;
}
#footer-menu{
float: right;
width: 70%;
margin-top: 5%;
line-height: 2;
display: table;
}
#footer-menu ul{
float: right;
display: table-cell;
padding-right: 0%;
padding-left: 6%;
border-right: 1px solid #555;
width: 40%;
}
#footer-menu ul.left{
width: 46%;
padding-left:0;
float: left;
}
#footer-menu ul ul{
float: none;
width: 100%;
border-right: none;
padding: 0;
}
#company-box{
display: table-cell;
padding-left:6%;
vertical-align: top;
}
#company-box strong{
font-weight: bold;
font-size:1.2em;
}

/*第2階層共通*/
#secondheader-box{
width: 100%;
position: relative;
margin-bottom: 0;
line-height: 0;
}
#secondheader-box .photo{
display: none;
z-index: 10;
}
#secondheader-box #title{
max-width: 1000px;
position: absolute;
right: 0;
left: 0;
top:0;
bottom: 0;
display: none;
z-index: 20;
margin:auto;
}
#second-textbox{
overflow: hidden;
padding: 5em 0;
}
#second-textinbox{
max-width: 1000px;
margin: 0 auto;
position: relative;
}
.center{
text-align: center;
}
.red{
color:#D0121B;
}
.red.bold{
font-weight: bold;
}
.line-height01{
line-height: 3em;
}
.margin-top01{
margin-top: 3em;
}
.margin-top02{
margin-top: 8em;
}
.margin-bottom01{
margin-bottom: 5em;
}
.margin-bottom02{
margin-bottom: 3em;
}
.margin-bottom03{
margin-bottom: 2em;
}
.wide85{
margin-left: auto;
margin-right: auto;
width: 85%;
}
.smalltext{
font-size:0.8em;
}
.black-text{
color:#000;
}

/*店舗*/

img.map-text{
position: absolute;
left: 0;
top:0;
width: 28.5%;
display: block;
}
#map{
position: relative;
margin: 0 auto 5em;
width: 86.087%;
}
#map .shikoku,#map .kansai,#map .chugoku,#map .global{
position: absolute;
}
#map .shikoku{
width: 13.939%;
bottom:4.6%;
left:24%;
z-index: 10;
}
#map .kansai{
width: 18.9%;
bottom:12.75%;
left:37.3%;
z-index: 9;
}
#map .chugoku{
width: 19.5%;
bottom:30.5%;
left:20%;
z-index: 8;
}
#map .global{
width: 28.71%;
bottom:0;
right:0;
z-index: 1;
}
/*
#map a img{
transition: all 0.5s;
opacity: 1;
}
#map a:hover img{
opacity: 0.7;
}
*/
#map a{
position: relative;
display: block;
}
#map i.fas{
font-size: 1.5em;
color:#D0121B;
position: absolute;
display: block;
width: 1em;
background: #FFF;
border: 2px solid #D0121B;
border-radius: 100px;
padding: 0.4em;
opacity: 0;
transition: all 0.3s;
z-index: 20;
}
#map i.fas.shikoku-search{
bottom: 0;
right: -8%;
}
#map i.fas.kansai-search{
bottom: 0;
right: -8%;
}
#map i.fas.chugoku-search{
left: -5%;
top: -5%;
}
#map i.fas.global-search{
bottom: 0;
right: 18%;
}
#map a:hover i.fas,#map a i.fas.over{
opacity: 1;
}
/*.scale {
width: 6.3em;
height: 6.3em;
overflow: hidden;
border: 2px solid red;
border-radius: 100px;
display: block;
bottom:0.4em;
left:1.7em;
position: absolute;
opacity: 0.1;
}
.scale {
	-moz-transition: -moz-transform 0.5s linear;
	-webkit-transition: -webkit-transform 0.5s linear;
	-o-transition: -o-transform 0.5s linear;
	-ms-transition: -ms-transform 0.5s linear;
	transition: transform 0.3s linear;
}
a:hover .scale,a .scale.over {
-webkit-transform: scale(1.5);
-moz-transform: scale(1.5);
-o-transform: scale(1.5);
-ms-transform: scale(1.5);
transform: scale(1.2);
opacity: 1;
}*/

dl.shop_area{
margin-bottom: 5em;
}
.shop_area dt:before{
content:'ー';
margin-right: 1em;
}
.shop_area dt{
color:#D0121B;
font-size:1.5em;
font-weight: bold;
margin-top: 5em;
margin-bottom: 1.5em;
}
.shop_area dt:first-child{
margin-top: 2em;
}
.shop_area dt span{
font-weight: normal;
color:#8D8D8D;
margin-left: 0.5em;
}
.shop_area dd{
margin-left: 3.1em;
margin-bottom: 3em;
}
.shop_area dd strong:before{
content: '';
display: inline-block;/*忘れずに！*/
width: 2em;
height: 1.4em;
background: url(../../shop/menou-icon.png) no-repeat;
background-size: contain;
vertical-align: middle;
margin-right: 0.2em;
}
.shop_area dd strong{
font-weight: bold;
display: block;
font-size:1.3em;
margin-bottom: 0.5em;
}
.info-box{
background:#F4F4F4;
display: table;
width: 100%;
}
.info-box .address,.info-box .info,.info-box .map-icon{
display: table-cell;
padding: 1em;
vertical-align: top;
}
.info-box .address{
width: 30%;
font-size:1.2em;
}
.info-box .address.global{
width: 76%;
}
.info-box .address span{
font-size:1.2em;
}
.info-box .address span em{
font-size:0.8em;
}
.info-box .info{
width: 45.3%;
border-collapse: separate;
border-spacing: 0 0.5em;
}
.info-box .info.global{
width: 20%;
}

.info-box .info th{
background: #FFF;
padding: 0.1em 0.5em;
}
.info-box .info td{
padding: 0 1.5em 0 1em;
}
.info-box .map-icon{
background:#EAEAEA;
line-height: 0;
width: 8.3%;
text-align: center;
vertical-align: middle;
}
.map-icon img{
width: 45%;
}

/*メニュー*/
#second-textbox.menu{
background: url(../../page-images/menu/bg.png) no-repeat 115% -8em;
background-size:80%;
}
h2.menu{
width: 35%;
margin: 0 auto 5em;
}

ul.ramen{
display: table;
width: 100%;
margin: 0 auto 1em;
}
ul.ramen li{
display: table-cell;
width: 37%;
padding: 0 4.5em;
vertical-align: middle;
}
ul.ramen li.photo{
width: 43%;
padding: 0;
}
ul.ramen li strong,ul.menu-etc li strong{
font-size:1.56em;
font-weight: bold;
margin-bottom: 0.5em;
display: block;
background: url(../../page-images/menu/icon.png) no-repeat left top;
background-size:1.6em;
padding-left: 2em;
}

ul.menu-etc{
overflow: hidden;
margin: 7em auto 0;
width: 85%;
}
ul.menu-etc li{
width: 33.8%;
margin-bottom: 5em;
float: left;
}
ul.menu-etc li:nth-child(even){
width: 45%;
float: right;
}
ul.menu-etc li img{
margin-bottom: 2em;
}

/*お知らせ*/
#news-box.second{
overflow: hidden;
width: 64.3%;
float: left;
border-right:1px solid #CCC;
padding-right:4em;
}
#news-sidebox{
width: 21.5%;
float: right;
}
#news-sidebox strong{
margin-bottom: 1em;
display: block;
}
#news-sidebox strong img{
width:80%;
}
#news-sidebox li{
list-style: none;
}
#news-sidebox li a{
background:#F4F4F4;
display: block;
margin-bottom: 1em;
padding: 0.5em 0 0.5em 5em;
font-weight: bold;
position: relative;
}
#news-sidebox li a:after{
content: ' ';
display: inline-block;
width: 14px;
height: 50px;
background:url(../../news/arrow-bg@2x.png) no-repeat;
background-size: contain;
position: absolute;
top:0;
right: 0;
}
#news-sidebox li.current-cat a:before{
content:'●';
display: inline-block;
font-size:0.5em;
margin-right: 0.5em;
vertical-align:middle;
}
#news-sidebox li.current-cat a{
padding-left: 4.3em;
}
#news-sidebox li a:hover,#news-sidebox li.current-cat a{
background:#D0121B;
color: #FFF;
}
#news-sidebox li img.arrow{
position: absolute;
top:0;
right: 0;
max-width: 14px;

}
#news-box.second dl.news{
overflow: hidden;
margin-bottom: 2em;
}
#news-box.second dt{
width:10.57%;
}
#news-box.second dd{
float: right;
width: 85.38%;
}
#news-box.second dd.days{
float: left;
clear: left;
width: 10.57%;
color:#8D8D8D;
font-size:0.8em;
text-align: center;
}

#news-box.second p{
margin-bottom: 15px;
}

/*ページナビ*/
.wp-pagenavi{
width:100%;
margin:3em auto;
text-align:center;
overflow: hidden;
}
.wp-pagenavi em.border {
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 0 1em;
	text-align: center;
	width: 30em;
}
.wp-pagenavi em.border::before,
.wp-pagenavi em.border::after {
	position: absolute;
	top: 4em;
	content: '';
	width: 1000px;
	height: 1px;
	background-color: #D0121B;
}
.wp-pagenavi em.border::before {
	right: 100%;
}
.wp-pagenavi em.border::after {
	left: 100%;
}
.wp-pagenavi a, .wp-pagenavi a:link {
padding: 0 1em;
text-decoration: none;
color: #000;
}
.wp-pagenavi a.previouspostslink,.wp-pagenavi a.nextpostslink{
padding: 0 1em;
}
.wp-pagenavi a:visited {
text-decoration: none;
color: #000;
background-color: #FFFFFF;	
}
.wp-pagenavi a:hover {	
color: #D0121B;
}
.wp-pagenavi a:active {
text-decoration: none;
color: #D0121B;
}
.wp-pagenavi span.pages {
color: #000;
border: none;
}
.wp-pagenavi span.current {
padding: 0 1em;
color: #D0121B;
}
.wp-pagenavi span.extend {
padding: 0 1em ;
color: #000000;
}
.wp-pagenavi span.extend:after{
content:'...';
color:#000;
}
.wp-pagenavi a:visited.previouspostslink,.wp-pagenavi a:visited.nextpostslink,.wp-pagenavi a:visited.first,.wp-pagenavi a:visited.last{
color:#000;
}

/*詳細ページページナビ*/
.pagenavi {
	overflow: hidden;
	text-align: center;
	width:100%;
	margin:10% auto 0 auto;
}
.pagenavi.event{
max-width: 1000px;
margin: 0 auto 5%;
}
.pagenavi span {
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 0 1em;
	text-align: center;
	width: 30em;
}
.pagenavi span::before,
.pagenavi span::after {
	position: absolute;
	top: 1em;
	content: '';
	width: 200%;
	height: 1px;
	background-color: #CCC;
}
.pagenavi span::before {
	right: 100%;
}
.pagenavi span::after {
	left: 100%;
}
.pagenavi p{
display: inline-block;
vertical-align: middle;
margin: 0 5%;
}
.pagenavi p a{
color:#000;
}
.pagenavi p a:hover{
color:#D0121B;
}
.pagenavi .list{
width: 1.5em;
line-height: 0;
font-size:1.5em;
}
.pagenavi .list i{
color:#D0121B;
}
.pagenavi .list img{
width: 100%;
height: auto;
margin-bottom: 0;
}
.pagenavi i.fa-angle-left{
margin-right: 0.5em;
}
.pagenavi i.fa-angle-right{
margin-left: 0.5em;
}
.pagenavi p.next,.pagenavi p.prev{
width: 5em;
}

/*お知らせ詳細ページ*/
#news-box.second dl.news.detaile{
margin-bottom: 2em;
}
#news-box.second dl.detaile dt{
float: left;
margin-bottom: 1em;
margin-right: 1em;
}
#news-box.second dl.detaile dd{
float: none;
clear: both;
width: 100%;
}
#news-box.second dl.detaile dd strong{
font-weight: bold;
font-size:1.2em;
display: block;
}
#news-box.second dl.detaile dd.days{
float: left;
clear: none;
width: 10.57%;
margin-top: 0.3em;
}

/*FC*/

#second-textinbox.fc h2{
width:27.5%;
float: left;
}
#second-textinbox.fc ul.fc.right{
width: 60%;
float: right;
font-size:1.1em;
margin-bottom: 6.5em;
}
ul.fc{
padding-left: 0.5em;
}

ul.fc li:before{
content: '';
	width: 0.35em;
	height: 0.35em;
	display: inline-block;
	border-radius: 100%;
	background:#D0121B;
	position: relative;
	left: -0.5em;
	top: -0.2em;
}
ul.fc li{
margin-bottom: 0.5em;
padding-left: 0.35em;
text-indent: -0.35em;
}
.fc dl{
width: 46.5%;
border-right:1px solid #D5D5D5;
padding-right: 3.4%;
float: left;
}
.fc dl.right{
float: right;
padding-right: 0;
padding-left: 3.4%;
border-right: 0;
}
.fc dt{
margin-bottom: 2em;
margin-top: -1.5em;
}
strong.fc{
font-weight: bold;
font-size:1.2em;
margin-bottom: 0.5em;
display: block;
}
.fc p{
margin-bottom: 2em;
}
ul.faq{
margin-bottom: 2em;
}
.faq li{
text-indent: -1em;
padding-left:1em;
margin-bottom: 1em;
}
.faq li strong{
font-weight: bold;
display: block;
}
.form p{
margin-top: 2em;
}
.form dl{
float: none;
width: 100%;
border:none;
overflow: hidden;
padding: 0;
}
.fc .form dt{
margin: 0 0 1em 0;
padding: 0.8em 0;
float: left;
width: 18%;
text-align: right;
}
.fc .form dd{
padding: 0.3em 0;
margin-bottom: 1em;
width: 75%;
float: right;
}
.fc .form dd.margin{
padding-top:0.8em;
}
.form .list{
padding-left:1em;
}
.form .list:before{
content: '';
width: 0.35em;
height: 0.35em;
display: inline-block;
border-radius: 100%;
background:#D0121B;
position: relative;
left: -0.5em;
top: -0.2em;
}
.form .list.black:before{
background:#000;
}
.form input[type='text'],.form input[type='email'],.form textarea{
width: 87.5%;
padding: 0.5em;
border: none;
background:#F4F4F4;
}
.form input[type='submit']{
border-radius: 0;
border:2px solid #D0121B;
color:#FFF;
font-weight: bold;
padding: 10px;
background:#D0121B;
width: 90%;
cursor: pointer;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-size:1.3em;
}
.form input[type='submit']:hover{
border:2px solid #D0121B;
color:#D0121B;
background: #FFF;
}
.form input[type='button']{
display: block;
margin: 0 auto 2em auto;
padding:5px 10px;
}
.form label,.form input[type='checkbox']{
cursor: pointer;
}
span.wpcf7-list-item{
margin: 0 2em 0 0 !important;
}
.wpcf7c-conf{/*確認前のテキストボックス*/
background:#FFF !important;
border-bottom:1px solid #CCC !important;
}


/*会社概要*/
h2.about-us{
float: left;
width: 15.5%;
}
.about-us_box{
float: right;
width: 72.5%;
overflow: hidden;
}
.about-us_box .left{
float: left;
width: 53.1%;
}
.about-us_box .right{
float: right;
width: 37.93%;
}
.about-us_box h3{
width: 72.72%;
margin-bottom: 1em;
}
.about-us_box strong{
display: block;
position: relative;
margin-bottom: 1em;
}
.about-us_box strong span{
color:#D0121B;
font-weight: bold;
font-size:1.4em;
display: inline-block;
margin: 0;
width: 5.7em;
}
.about-us_box strong.short span{
width: 5.3em;
}
.about-us_box strong::after {
	position: absolute;
	top: 1.2em;
	content: '';
	width: 200%;
	height: 1px;
	background-color: #D0121B;
}
.about-us_box strong.short::after {
width: 73%;
}
.about-us_box strong span::after {
	left: 100%;
}

.about-us_box table{
width: 100%;
table-layout: fixed;
}
.about-us_box th,.about-us_box td{
padding: 0.5em 0;
border-bottom: 1px solid #D5D5D5;
vertical-align: top;
}
.about-us_box th{
width:7.5em;
}

/*.about-us_box li{
list-style: disc;
margin-left: 2em;
}*/


@media (max-width:1000px){
#header-box,#top-textinbox,#footer-innerbox{
max-width:auto;
width: 95%;
}
#gmenu{
width: 65%;
}
#gmenu li{
margin-right: 7%;
}

}