@charset "utf-8";


* {
  padding: 0px;
  margin: 0px;
}
body {
  color: #333;
  font-family: "Noto Sans", "Noto Sans CJK JP","Noto Sans JP", "游ゴシック体", "Yu Gothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  font-size: 14px;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
}
ul,ol{
  list-style:none;
}
a{
  color:#333;
  text-decoration:none;
  transition:.3s all;
}
a:hover{
  color:#E60012;
  transition:.3s all;
}
img{
  max-width: 100%;
  vertical-align: bottom;
}
.clearfix::after{
  content: "";
  display: block;
  clear: both;
}
main{
  margin-bottom:60px;
}
.flex{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
label, input[type='checkbox'] {
    cursor: pointer;
}


/*- header -*/

header{
  margin-bottom:40px;
  background-color:#EEEDEB;
}
header .header-logo{
  float:left;
  margin:30px 0 0 0;
  line-height:1;
}
header .header-logo img{
  width:480px;
}
header .header-info{
  float:right;
  text-align:right;
  margin: 7px 0 12px;
  width:450px;
}
header .header-info .bun{
  float:right;
}
header .header-info .bun img{
  width:150px;
  margin:13px 0;
}
header .header-info ul{
  font-size:0;
  float:left;
}
header .header-info li{
  display: inline-block;
  width:90px;
  text-align:center;
  margin:12px 4px 0 1px;
}
header .header-info li a{
  display: block;
  background-color:#555;
  color:#fff;
  border-radius:5px;
  padding:3px;
  font-size:13px;
}
header .header-info li a.current,
header .header-info li a:hover{
  background-color:#E60012;
}
header .hm{
  display:none;
}

/*- footer -*/

footer .footer-inner-01{
  background-color:#E60012;
}
footer .footer-inner-01 ul{
  text-align:center;
  font-size:0;
}
footer .footer-inner-01 li{
  display:inline-block;
  font-size:14px;
}
footer .footer-inner-01 li a{
  display:block;
  padding:30px;
  color:#fff;
  font-weight:bold;
}
.footer-inner-01 li a:before{
  content:"";
  display: inline-block;
  width:8px;
  height:8px;
  border-left:1px solid #fff;
  border-top:1px solid #fff;
  margin-right:10px;
  transform: rotate(135deg);
}
footer .footer-inner-02{
  border-top:2px solid #E60012;
  text-align:center;
  padding-top:30px;
}
footer .footer-inner-02 .footer-logo img{
  width:300px;
}
footer .footer-inner-02 ul{
  text-align:center;
  font-size:0;
}
footer .footer-inner-02 .sns li{
  display:inline-block;
  font-size:14px;
  margin:20px 7px;
  width:32px;
  vertical-align: top;
}
footer .footer-inner-02 .sns li:nth-child(2){
  display:inline-block;
  font-size:14px;
  margin:20px 7px;
  width:31px;
  padding: 2px;
  background-color: #000;
}
footer .footer-inner-02 .sns li:nth-child(2) img{
  width:30px;
}
footer .footer-inner-02 .lnks li{
  display:inline-block;
  font-size:14px;
  font-weight:bold;
  margin:0 20px;
}
footer .footer-inner-03{
  text-align:center;
}
footer .footer-inner-03 .footer-copyright{
  font-size:12px;
  color:#666;
  padding:20px 0;
}

/*- common -*/

.wrapper{
  width:1180px;
  margin:0 auto;
}
.morebtn a{
  display:block;
  width:400px;
  background-color:#E60012;
  border:2px solid #fff;
  border-radius:8px;
  box-shadow:3px 3px 3px 0px rgba(0,0,0,0.4);
  text-align: center;
  padding:15px 0;
  color:#fff;
  font-weight:bold;
  margin:30px auto;
  font-size:15px;
}
.morebtn a:before{
  content:"";
  display: inline-block;
  width:10px;
  height:10px;
  border-left:1px solid #fff;
  border-top:1px solid #fff;
  margin-right:10px;
  transform: rotate(135deg);
}
.morebtn.back a:before{
  content:"";
  display: inline-block;
  width:10px;
  height:10px;
  border-left:1px solid #fff;
  border-top:1px solid #fff;
  margin-right:10px;
  transform: rotate(-45deg);
}
nav{
  border:3px solid #E60012;
  border-radius:10px;
  box-shadow:3px 3px 3px 0px rgba(0,0,0,0.4);
  padding:15px 20px;
}
nav .change,
nav .close{
  display:none;
}
nav .nav-s{
  margin-bottom:20px;
}
nav .ttl{
  border-bottom:1px solid #ccc;
  font-size:18px;
  font-weight:bold;
  padding:0 0 3px 0;
  margin-bottom:10px;
}
nav .nav-s .more{
  text-align:center;
}
nav .nav-s-01 li{
  float:left;
  width:79px;
  margin-right:8px;
}
nav .nav-s-01 li:last-child{
  margin-right:0px;
}
nav .nav-s-01 li a{
  display: block;
  background:#ccc;
  text-align:center;
  border-radius:4px;
  padding:4px 0;
  color:#fff;
}
nav .nav-s-01 li.current a,
nav .nav-s-01 li a:hover{
  background:#E60012;
}
nav .nav-s-06 ul{
  font-size:0;
  margin:15px -8px 0 0;
}
nav .nav-s-06 li{
  font-size:14px;
  display:inline-block;
  margin:0 8px 16px 0;
}
nav .nav-s-06 li a{
  border:1px solid #999;
  border-radius:3px;
  padding:4px 7px;
}
nav .nav-s-07 ul{
  font-size:0;
  margin:15px -8px 0 0;
}
nav .nav-s-07 li{
  font-size:14px;
  display:inline-block;
  margin:0 8px 16px 0;
}
nav .nav-s-07 li a{
  border:1px solid #999;
  border-radius:3px;
  padding:4px 20px 4px 7px;
  position:relative;
}
nav .nav-s-07 li a:hover{
  border:1px solid #E60012;
}
nav .nav-s-07 li a:before{
  content:"";
  position: absolute;
  top:9px;
  right:9px;
  display: block;
  border-left:2px solid #222;
  width:1px;
  height:10px;
  transform:rotate(-45deg);
}
nav .nav-s-07 li a:after{
  content:"";
  position: absolute;
  top:9px;
  right:9px;
  display: block;
  border-left:2px solid #222;
  width:1px;
  height:10px;
  transform:rotate(45deg);
}
nav .nav-s-07 li a:hover:before,
nav .nav-s-07 li a:hover:after{
  border-left:2px solid #E60012;
  transition:.3s all;
}
.selectdiv {
  position: relative;
  margin: 0 0 15px 0;
}
select::-ms-expand {
  display: none;
}
.selectdiv:after {
  position: absolute;
  content: '';
  font-size:14px;
  color: #fff;
  width:30px;
  height:24px;
  right: 7px;
  top: 7px;
  background:url(../img/common/down.svg) no-repeat;
  background-size:30px 24px;
  pointer-events: none;
}

.selectdiv select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  width: 100%;
  height: 38px;
  margin: 5px 0px;
  padding: 0px 10px;
  font-size: 14px;
  line-height: 1.5;
  background-color: #E60012;
  border: 2px solid #E60012;
  border-radius:4px;
  color:#fff;
  -ms-word-break: normal;
  word-break: normal;
}




.pagetop{
  position:fixed;
  right:0;
  bottom:0;
}
.pagetop a{
  display: block;
  background-color:#555;
  width:50px;
  height:50px;
  position:relative;
  bottom:-50px;
}
.pagetop a:after{
  content:"";
  position: absolute;
  top:22px;
  left:16px;
  display: block;
  border-left:1px solid #fff;
  border-bottom:1px solid #fff;
  width:16px;
  height:16px;
  transform:rotate(135deg);
}
.js-modal-open{
  cursor:pointer;
}
.c-modal {
  display: none;
  height: 100vh;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 3;
}
.c-modal_bg {
  background: rgba(0, 0, 0, 0.6);
  height: 100vh;
  width: 100%;
  position: fixed;
}
.c-modal_content {
  background: #fff;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 5px;
  width: 70%;
}
.c-modal_content_inner {
  position: relative;
  padding: 20px;
}
.c-modal_close {
  position: absolute;
  top:10px;
  right:15px;
  width:30px;
  height:30px;
  display: block;
}
.c-modal_close span{
  display:block;
  position:relative;
}
.c-modal_close span:after{
  content:"";
  display:block;
  position:absolute;
  top:13px;
  right:2px;
  width:24px;
  height:1px;
  border-top:2px solid #222;
  transform:rotate(135deg);
}
.c-modal_close span:before{
  content:"";
  display:block;
  position:absolute;
  top:13px;
  right:2px;
  width:24px;
  height:1px;
  border-top:2px solid #222;
  transform:rotate(45deg);
}
.c-modal .ttl{
  /*
  font-size:18px;
  border-bottom:1px solid #ccc;
  padding-bottom:5px;
  font-weight:bold;
  margin-bottom:10px;
  */
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 20px;
  border-left: 5px solid #E60012;
  padding-left: 5px;
}
.c-modal input[type=checkbox] {
  display: none;
}
.c-modal .submit{
  width:200px;
  margin:15px auto 0 auto;
}
.c-modal .submit button{
  border:1px solid #555;
  padding:8px 4px;
  border-radius: 4px;
  background-color: #fff;
  width:200px;
  margin:0 auto;
  font-weight:bold;
  cursor:pointer;
  outline: none;
}
.c-modal .sttl{
  font-size:15px;
  font-weight:bold;
  margin:4px 0 5px 0;
}

.s-keyword{
  position: relative;
}
.s-keyword input[type=text] {
  box-sizing: border-box;
  width: 100%;
  padding: 0.6em 0.3em;
  transition: 0.3s;
  border: 2px solid #ccc;
  border-radius: 4px;
  outline: none;
  font-size:14px;
}
.s-keyword input[type=text]:focus {
  border-color: #999;
}
.s-keyword .search {
  position: absolute;
  top: 0;
  right: 0;
  transition: 0.3s;
  border-style: none;
  background-color:#fff;
  margin:2px;
  padding:4px;
  outline: none;
  cursor:pointer;
}
.s-keyword input[type=text]:focus + .search {
  
}
.bg-gray{
  background-color: #eee;
}

/*- custom -*/

#top main,
#list main,
#detail main
{
  float:right;
  width:845px;
}
#top nav,
#list nav,
#detail nav
{
  float:left;
  width:300px;
}
#top .area-box .mapbg{
  background:url(../img/common/map.svg) no-repeat;
  height: 448px;
  position:relative;
  margin-bottom:20px;
  background-position: 0 30px;
}
#top .area-box .mapbg h2{
  border-left:5px solid #E60012;
  margin:15px 0 0 0;
  padding: 0 0 3px 10px;
  border-bottom:1px solid #E60012;
}
#top #map_link{
  position: absolute;
  top: 49px;
}
#top .area-box .map{
  font-size:0;
}
#top .area-box .map li a{
  font-size:13px;
  line-height:1.6;
  display:inline-block;
  margin:0 8px;
}
#top .area-box .map .area01{
  position: absolute;
  top:60px;
  left:500px;
  border-left:2px solid #FF8585;
}
#top .area-box .map .area02{
  position: absolute;
  top:200px;
  left:445px;
  border-left:2px solid #FDA200;
}
#top .area-box .map .area03{
  position: absolute;
  top:290px;
  left:415px;
  border-left:2px solid #1FC39D;
}
#top .area-box .map .area04{
  position: absolute;
  top:365px;
  left:335px;
  border-left:2px solid #8EC31F;
}
#top .area-box .map .area05{
  position: absolute;
  top:190px;
  left:240px;
  border-left:2px solid #73AE7D;
}
#top .area-box .map .area06{
  position: absolute;
  top:395px;
  left:260px;
  border-left:2px solid #7272FF;
}
#top .area-box .map .area07{
  position: absolute;
  top:240px;
  left:150px;
  border-left:2px solid #FF4848;
}
#top .area-box .map .area08{
  position: absolute;
  top:380px;
  left:160px;
  border-left:2px solid #D16EFF;
}
#top .area-box .map .area09{
  position: absolute;
  top:270px;
  left:13px;
  border-left:2px solid #471FC3;
}
#top .area-box .map .area10{
  position: absolute;
  top:410px;
  left:57px;
  border-left:2px solid #708F30;
}
#top .news-box li{
  border-bottom:1px solid #ccc;
  padding:16px 0;
}
#top .news-box li a{
  display:block;
}
#top .news-box li div{
  font-weight:bold;
  font-size:20px;
  line-height:1;
  margin-bottom:8px;
}
#top .news-box li a div span{
  vertical-align:bottom;
  width:110px;
  text-align:center;
  display:inline-block;
  background-color:#fff;
  padding:5px 0;
  color:#555;
  margin-left:20px;
  font-weight:normal;
  font-size:12px;
  line-height:1;
  transition:.3s all;
  border:1px solid #ccc;
}
#top .news-box li a:hover div span{
  transition:.3s all;
}
.new-box li{
  border-bottom:1px solid #ccc;
  padding:16px 0;
  position:relative;
}
.new-box li a:after{
  content: "";
  display:block;
  clear: both;
}
.new-box li a{
  display:block;
}
.new-box li a .thmb{
  float:left;
  overflow:hidden;
  /*
  width:200px;
  */
}
.new-box li a .thmb img{
  transition:.3s all;
}
.new-box li a:hover .thmb img{
  transform:scale(1.06,1.06);
  transition:.3s all;
}
.new-box li .txt{
  padding-left:210px;
}
.new-box li .ttl{
  font-weight:bold;
  font-size:20px;
  margin-bottom:10px;
  width: 270px;
}
.new-box li .ttl span{
  display:block;
  font-size:14px;
}
.new-box li .fv{
  position:absolute;
  top:16px;
  right:0;
  width:90px;
  height:27px;
  text-align:left;
  background: url(../img/common/star.svg) no-repeat right -28px;
  font-size:11px;
  line-height:27px;
  color:#666;
  cursor:pointer;
}
.new-box li .fv.current{
  background: url(../img/common/star.svg) no-repeat right top;
  color:#222;
}

#list .list-box .ttl{
  border-bottom:1px solid #999;
  margin-bottom:10px;
}
#list .list-box .ttl h1{
  float:left;
  margin:0 0 10px 0;
  font-size:28px;
}
#list .list-box .ttl p{
  float:right;
  padding-top:16px;
}
#list .list-box .condition{
  margin-bottom:40px;
  font-size:12px;
}
#list .list-box li{
  border-bottom:1px solid #ccc;
  padding:16px 0;
  position:relative;
}
#list .list-box li a:after{
  content: "";
  display:block;
  clear: both;
}
#list .list-box li a{
  display:block;
}
#list .list-box li .s-ttl{
  font-weight:bold;
  font-size:20px;
  margin-bottom:10px;
  border-left:5px solid #E60012;
  padding-left:10px;
}
#list .list-box li .s-ttl span{
  display:block;
  font-size:14px;
}
#list .list-box li a .thmb{
  float:left;
  width:275px;
  overflow:hidden;
}
#list .list-box li a .thmb img{
  transition:.3s all;
}
#list .list-box li a:hover .thmb img{
  transform:scale(1.06,1.06);
  transition:.3s all;
}
#list .list-box li .txt{
  padding-left:285px;
}
#list .list-box li .txt .s-thmb{
  float:right;
  width:275px;
  font-size:0;
}
#list .list-box li .txt .s-thmb img{
  width:135px;
  margin:0 5px 5px 0;
}
#list .list-box li .txt .s-thmb img:nth-child(even){
  display:inline-block;
  margin:0 0 5px 0;
}
#list .list-box li a .txt .s-txt{
  margin-right:285px;
  color:#222;
}
#list .list-box li a:hover .txt .s-txt{
  color:#222;
}
#list .list-box li .txt .s-txt .tag{
  font-weight:bold;
  margin-top:10px;
}
#list .list-box li .txt .s-txt .tag span{
  display: inline-block;
  background:#E60012;
  color:#fff;
  margin:0 5px 4px 0;
  border-radius:3px;
  font-size:12px;
  padding:2px 4px;
  white-space: nowrap;
}
#list .list-box li .fv{
  position:absolute;
  top:16px;
  right:0;
  width:90px;
  height:27px;
  text-align:left;
  background: url(../img/common/star.svg) no-repeat right -28px;
  font-size:11px;
  line-height:27px;
  color:#666;
  cursor:pointer;
}
#list .list-box li .fv.current{
  background: url(../img/common/star.svg) no-repeat right top;
  color:#222;
}

#detail .detail-box .ttl{
  border-bottom:1px solid #999;
  margin-bottom:10px;
}
#detail .detail-box .ttl h1{
  float:left;
  margin:0 0 10px 0;
  font-size:28px;
}
#detail .detail-box .condition{
  margin-bottom:40px;
  font-size:12px;
}
#detail .detail-box .s-ttl{
  position:relative;
}
#detail .detail-box .s-ttl h1{
  border-left:7px solid #E60012;
  padding-left:15px;
  margin:25px 0;
  font-size:28px;
  line-height:1.2;
}
#detail .detail-box .s-ttl h1 span{
  display: block;
  margin:10px 0 15px 0;
  font-size:16px;
}
#detail .detail-box .s-ttl .fv{
  position:absolute;
  top:0;
  right:0;
  width:90px;
  height:27px;
  text-align:left;
  background: url(../img/common/star.svg) no-repeat right -28px;
  font-size:11px;
  line-height:27px;
  color:#666;
  cursor:pointer;
}
#detail .detail-box .s-ttl .fv.current{
  background: url(../img/common/star.svg) no-repeat right top;
  color:#222;
}
#detail .detail-box .sbox h2{
  color:#E60012;
  font-size:22px;
  border-bottom:solid 2px #E60012;
  padding:5px 0;
  margin-bottom:15px;
}
#detail .lists{
  margin-bottom:40px;
}
#detail .lists dl{
  border-bottom:1px solid #ccc;
  padding:10px 0;
}
#detail .lists dl:after{
  content: "";
  display: block;
  clear: both;
}
#detail .lists dt{
  float:left;
  width:200px;
  font-size:15px;
  line-height:1.8;
}
#detail .lists dd{
  padding-left:220px;
  font-size:15px;
  line-height:1.8;
  word-wrap: break-word;
}
#detail .lists dd span{
  display: inline-block;
  background:#E60012;
  color:#fff;
  margin:0 5px 4px 0;
  border-radius:3px;
  font-size:12px;
  padding:2px 4px;
  white-space: nowrap;
}
#detail .detail-map-box iframe{
  width:845px;
  height:480px;
}
#detail .detail-map-box p{
  padding-top:10px;
  font-size:12px;
}
#detail .g-earth-link{
  padding-top:10px;
  font-size:15px;
  text-align: center;
}
#detail .detail-box .detail-performance-box h2{
  margin-bottom:0;
}
#detail .detail-performance-box .tbl li{
  border-bottom:1px solid #ccc;
  display: flex;
}
#detail .detail-performance-box .tbl li > div{
  float:left;
  padding: 10px;
}
#detail .detail-performance-box .tbl li div:nth-child(1){
  width:10%;
  border-right:1px solid #ccc;
  text-align: center;
}
#detail .detail-performance-box .tbl li div:nth-child(2){
  width:70%;
  border-right:1px solid #ccc;
}
#detail .detail-performance-box .tbl li div:nth-child(3){
  width:20%;
  text-align: center;
}
#detail .detail-performance-box .tbl li > div span.sp{
  display:none;
}



#news .news-box .archive{
  float:right;
  width:140px;
  padding-top:16px;
}
#news .news-box .archive .a-ttl{
  font-weight:bold;
  font-size:20px;
  border-bottom:1px solid #999;
  padding-bottom:5px;
  margin-bottom:15px;
}
#news .news-box .archive li a{
  display:block;
  font-size:16px;
  margin-bottom:5px;
}
#news .news-box .archive li a:before{
  content:"";
  display:inline-block;
  width:10px;
  height:10px;
  border-left:1px solid #E60012;
  border-bottom:1px solid #E60012;
  transform: rotate(-135deg);
  margin-right:10px;
}
#news .news-box .newslist{
  padding-right:180px;
}
#news .news-box .newslist.pin{
  margin-bottom: 30px;
}
#news .news-box .ttl{
  border-bottom:1px solid #999;
  margin-bottom:10px;
}
#news .news-box .new-box .ttl{
  border-bottom:none;
}
#news .news-box .ttl h1,
#news .news-box .ttl .h1{
  float:left;
  margin:0 0 10px 0;
  font-size:28px;
  font-weight:bold;
}
#news .news-box .newslist li{
  border-bottom:1px solid #ccc;
  padding:16px 0;
}
#news .news-box .newslist.pin li{
  border-bottom:1px solid #E60012;
}
#news .news-box .newslist li a{
  display:block;
}
#news .news-box .newslist li div{
  font-weight:bold;
  font-size:20px;
  line-height:1;
  margin-bottom:8px;
}
#news .news-box .newslist li a div span{
  vertical-align:bottom;
  width:110px;
  text-align:center;
  display:inline-block;
  background-color:#555;
  padding:5px 0;
  color:#fff;
  margin-left:20px;
  font-weight:normal;
  font-size:12px;
  line-height:1;
  transition:.3s all;
}
#news .news-box .newslist li a:hover div span{
  background-color:#E60012;
  transition:.3s all;
}
#news .news-box .newsdetail{
  padding:16px 180px 0 0;
}
#news .news-box .news-date{
  font-weight:bold;
  font-size:18px;
}
#news .news-box .maintxt{
  font-size:16px;
  line-height:1.8;
  margin-bottom:60px;
}
#news .news-box .newsdetail h1{
  font-weight:bold;
  font-size:28px;
  margin:5px 0 25px 0;
  border-bottom:1px solid #ccc;
  padding-bottom:10px;
}
#news .detail-box h2{
  color:#E60012;
  font-size:22px;
  border-bottom:solid 2px #E60012;
  padding:5px 0;
  margin-bottom:10px;
}
#news .lists{
  margin-bottom:40px;
}
#news .lists dl{
  border-bottom:1px solid #ccc;
  padding:15px 0;
}
#news .lists dl:after{
  content: "";
  display: block;
  clear: both;
}
#news .lists dt{
  float:left;
  width:200px;
  font-size:15px;
  line-height:1.8;
}
#news .lists dd{
  padding-left:220px;
  font-size:15px;
  line-height:1.8;
  word-wrap: break-word;
}
#news .lists dd span{
  display: inline-block;
  background:#E60012;
  color:#fff;
  margin:0 5px 4px 0;
  border-radius:3px;
  font-size:12px;
  padding:2px 4px;
  white-space: nowrap;
}
#news .new-box li {
    padding:10px 0;
}
#news .news-box .detail-performance-box h2{
  margin-bottom:1px;
}
#news .news-box .detail-performance-box .tbl li{
  border-bottom:1px solid #ccc;
  display: flex;
}
#news .news-box .detail-performance-box .tbl li > div{
  float:left;
  padding:15px;
}
#news .news-box .detail-performance-box .tbl li div:nth-child(1){
  width:32%;
  border-right:1px solid #ccc;
}
#news .news-box .detail-performance-box .tbl li div:nth-child(2){
  width:18%;
  border-right:1px solid #ccc;
}
#news .news-box .detail-performance-box .tbl li div:nth-child(3){
  width:50%;
  border-right:none;
}
#news .news-box .detail-performance-box .tbl li > div span.sp{
  display:none;
}


#fc .fclist-box .ttl,
#fc .fcdetail-box .ttl{
  border-bottom:1px solid #999;
  margin-bottom:10px;
}
#fc .fclist-box .ttl h1,
#fc .fclist-box .ttl .h1,
#fc .fcdetail-box .ttl h1,
#fc .fcdetail-box .ttl .h1{
  margin: 0 0 10px 0;
  font-size: 28px;
  font-weight: bold;
}
#fc .areattl{
  font-size:18px;
  color:#E60012;
  border-bottom:1px solid #E60012;
  padding-bottom:5px;
}
#fc .fclist{
  margin-bottom:30px;
}
#fc .fclist li{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  border-bottom:1px solid #ccc;
  padding:16px 0;
}
#fc .fclist li div:nth-child(1){
  width:25%;
  position:relative;
  padding:0 10px 0 20px;
  font-weight: bold;
}
#fc .fclist li div:nth-child(2){
  width:65%;
  border-left:1px solid #ccc;
  padding:0 10px;
}
#fc .fclist li div:nth-child(3){
  width:10%;
}
#fc .fclist li div:nth-child(1) input{
  position:absolute;
  top:4px;
  left:0;
}
#fc .fclist li .btn a{
  display:block;
  background:#E60012;
  padding:5px 10px 5px 5px;
  text-align:center;
  color:#fff;
  font-weight:bold;
  border-radius:4px;
}
#fc .fclist li .btn a:before{
  content:"";
  display:inline-block;
  transform: rotate(-135deg);
  width:9px;
  height:9px;
  border-bottom:1px solid #fff;
  border-left:1px solid #fff;
  margin-right:10px;
}
#fc .back{
  margin:0 0 40px 0;
}
#fc .back a:before{
  content:"";
  display:inline-block;
  transform: rotate(45deg);
  width:9px;
  height:9px;
  border-bottom:1px solid #E60012;
  border-left:1px solid #E60012;
  margin-right:8px;
}
#fc .detail-main{
  margin:0 0 40px 0;
  position: relative;
}
#fc .detail-main h1{
  line-height:1.2;
  border-left:7px solid #E60012;
  padding-left:15px;
  margin:0 0 20px 0;
  font-size:32px;
}
#fc .detail-main .ph{
  float:left;
  width:448px;
}
#fc .detail-main .morebtn{
  position: absolute;
  right:0;
  bottom:0;
  width:180px;
}
#fc .detail-main .morebtn a{
  width:180px;
  margin-bottom:0;
}
#fc .detail-main .txt{
  padding:0 0 0 470px;
}
#fc .detail-main .message{
  margin-bottom: 30px;
}
#fc .detail-main .txt p{
  font-size:15px;
  line-height:1.7;
  margin-bottom:10px;
}
#fc .fcdetail-box .sbox h2 {
  color:#E60012;
  border-bottom: 1px solid #E60012;
  padding-bottom:6px;
  margin-bottom:1px;
}
#fc .fcdetail-box .detail-performance-box{
  margin-bottom:40px;
}
#fc .detail-performance-box .tbl li{
  border-bottom:1px solid #ccc;
  display: flex;
}
#fc .detail-performance-box .tbl li > div{
  float:left;
  padding:15px;
}
#fc .detail-performance-box .tbl li div:nth-child(1){
  width:20%;
  border-right:1px solid #ccc;
}
#fc .detail-performance-box .tbl li div:nth-child(2){
  width:10%;
  border-right:1px solid #ccc;
}
#fc .detail-performance-box .tbl li div:nth-child(3){
  width:23%;
  border-right:1px solid #ccc;
}
#fc .detail-performance-box .tbl li div:nth-child(4){
  width:24%;
  border-right:1px solid #ccc;
}
#fc .detail-performance-box .tbl li div:nth-child(5){
  width:23%;
  word-break: break-all;
}
#fc .detail-performance-box .tbl li > div span.sp{
  display:none;
}
#fc .fcdetail-box .txt .ttl {
    border-bottom: none;
}
#fc .fc-nav{
  margin-bottom:30px;
}
#fc .fc-nav li{
  float:left;
  width:220px;
  margin-right:30px;
}
#fc .fc-nav li p{
  font-weight:bold;
  margin-bottom:5px;
}
.p-nav{
  text-align: center;
  padding:30px 0 15px 0;
  font-size:0;
}
.p-nav li{
  display: inline-block;
}
.p-nav li a,
.p-nav li span{
  display:block;
  padding:10px 15px;
  border-right:1px solid #ccc;
  font-size:16px;
  line-height:1;
}
.p-nav li:first-child{
  width:115px;
  padding:0;
  text-align:left;
}
.p-nav li:last-child{
  width:115px;
  padding:0;
  text-align:right;
}
.p-nav li:last-child a{
  border-right:none;
}
.p-nav li.current span{
  font-weight:bold;
  color:#E60012;
}

.sbs{
  text-align:center;
}
.sbs .morebtn{
  display:inline-block;
  margin:0 10px;
}
.sbs .morebtn a{
  width:400px;
  background-color:#999;
}
#contact .f-box h2{
  margin-bottom:20px;
}
#contact .f-box p{
  font-size:16px;
  line-height:1.6;
  margin-bottom:40px;
}

#header_navi{
}
.h-nav{
  text-align: center;
  background: #E60012;
  padding: 10px 0;
  z-index: 2;
}
#header_navi ul{
  width: 1180px;
  margin: 0 auto;
}
#header_navi li{
  display: inline-block;
  width: auto;
  border-right: 2px solid #fff;
}
#header_navi li.apply{
}
#header_navi li:last-child{
  border-right: none;
}
#header_navi li a{
  display: block;
  height: 36px;
  line-height: 36px;
  font-size:1.1rem;
  color: #fff;
  text-decoration: none;
  padding: 0 22px;
}
.lang_en #header_navi li a{
  font-size:1.0rem;
  padding: 0 18px;
}
#header_navi li a:hover,
#header_navi li.active{
  color: #E60012;
  background: #fff;
}
#header_navi li.active a{
  color: #E60012;
}
footer{
  border-top: 3px solid #E60012;
}

#pager{
  margin-top: 30px;
  text-align: center;
}

#pager li {
  margin: 0 5px;
  display: inline-block;
  background: #fff;
  width: auto;
  min-width: 30px;
  height: 30x;
  font-size: 1.6rem;
  line-height: 30px;
  text-align: center;
  color: #ccc;
  border: 1px solid #ccc;
  border-radius: 3px;
}
#pager li a{
  text-align: center;
  display:block;
  color: #333;
  text-decoration: none;
  padding: 0 5px;
}

#pager li:hover,
#pager li.active{
  border: 1px solid #c00;
}
#pager li.none:hover{
  border: 1px solid #ccc;
}
#pager li:hover a,
#pager li.active a{
  color: #c00;
  font-weight: bold;
}
#pager li.active a{
  cursor: default;
}

#notfound_message,
#zhcn_no_contents{
  height:400px;
  padding-top: 150px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 300;
}

.img-box {
  display: flex;
  align-items: center;
  justify-content: center;
  outline: 1px solid #ccc;
  margin: 0;
  vertical-align: middle;
  background:#efefef;
}
#list .thmb .img-box{
  width: 275px;
  height: 206px;
}
#list .thmb .img-box img{
  max-width: 275px;
  max-height: 206px;
}
#list .s-thmb .img-outer{
  width: 135px;
  float: left;
  margin-bottom: 5px;
}
#list .s-thmb .img-outer:nth-child(even){
  margin-left: 5px;
}
#list .s-thmb .img-box{
  width: 135px;
  height: 101px;
}
#list .s-thmb .img-box img{
  max-width: 135px;
  max-height: 101px;
}
#list .list-box li .txt .s-thmb img{
    width: auto;
    margin: 0;
}
#detail .main_img.img-box {
  position:relative;
  width: 850px;
  height: 500px;
}
#detail .main_img.img-box img{
  max-width: 850px;
  max-height: 500px;
}
#detail .thumb .img-box {
  width: 180px;
  height: 135px;
}
#detail .thumb .img-box img {
  max-width: 180px;
  max-height: 135px;
}
#detail .detail-box .thumb li {
    width: 190px;
    margin: 0 0 10px 0;
}
#fc .ph .img-box {
  width: 450px;
  height: 337px;
}
#fc .ph .img-box img {
  max-width: 448px;
  max-height: 335px;
}
#fc .thmb .img-box {
  width: 200px;
  height: 150px;
}
#fc .thmb .img-box img {
  max-width: 200px;
  max-height: 150px;
}
#top .thmb .img-box {
  width: 200px;
  height: 150px;
}
#top .thmb .img-box img {
  max-width: 200px;
  max-height: 150px;
}
#news .thmb .img-box {
  width: 200px;
  height: 150px;
}
#news .thmb .img-box img {
  max-width: 200px;
  max-height: 150px;
}

.c-modal_content {
  background: #fff;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 5px;
  width: 90%;
  height: 80%;
  overflow-y: scroll;
  color: #333;
}

.c-modal_content .box-inner{
  margin-bottom: 20px;
}
.c-modal_content .box-inner:after{
  clear: both;
  display: block;
  content: '';
}
#modal01 .c-modal_content .box-inner .headline{
  font-size: 18px;
  font-weight: 500;
  float:left;
  width: 90px;
  text-align: right;
  margin-right: 20px;
  padding-top: 5px;
}
#modal01 .c-modal_content .box-inner ul{
  width: 780px;
  float:left;
  padding-left: 15px;
}

#modal02 .c-modal_content .box-inner .headline{
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  text-align: left;
}
#modal02 .c-modal_content .box-inner .headline:after {
  border-top: 1px solid;
  content: "";
  flex-grow: 1;
  color :#ccc;
}
#modal02 .c-modal_content .box-inner .headline:after {
  margin-left: 1rem;
}

.c-modal_content .box-inner li{
  display: inline-block;
}
.c-modal_content .box-inner li span{
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 2px 20px;
  display: inline-block;
  margin: 5px 4px;
  background: #fff;
  text-align: center;
  cursor: pointer;
  transition: background-color 150ms ease-in;
}
.c-modal_content .box-inner li span:hover,
.c-modal_content .box-inner input[type=checkbox]:checked + span {
  color: #fff;
  background-color: #E60012;
  transition: background-color 150ms ease-in;
}
.c-modal_content .box-inner input[type=checkbox]:checked:hover + span {
  color: rgba(255,255,255,0.7);
}

.c-modal_content .box-inner input[type=checkbox]:checked + span:before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 15px;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAaCAYAAACgoey0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAX9JREFUeNpi+P//PwMNsS4QbwBiLnQ5WlqqAsRP/0PARiBmoYfFkkB8+z8qWALEjLS0mB+IL/3HDibSymJQXB7/jx/UgNSCvU4lwAbEG4DYkwi1WUxUspQZiOcRaSkIWOAKMk0Sg3jaf+IBOIVjMyQWiH8DsR+RljaTYOkBWJ5GNwRk2R+ooh9A7ETA0jwSLL0ATfEYqRpkyVc0xR+A2AyHpdFA/I9IS0F5WhRbAWIEtQQbeAXE6lhC5jeRlj4GYgVsRaYK1HBCmmWgmuyxhAwu8BpaXjNgs/gYkYbcAGIXPCGDDkCOM8eVPkCEFhE+JhX8BGJnfAkTxgC57BOVLAXlihBC2RA9Vf+k0FJQKk8nJv+jCwQi5WNyQAWxpR02wRQS8icy6CKlmMUlUUGipfOQK3lKLAbhdhIKfWZS6258kiAfzCZg6V4gZiOn0UBIAcgn63BYehK50Ke2xQxQH+3FUoqJUtJMIlYhLxAfxVJu09xiWENuMxCrUaNhCBBgAOAVfjALa5TLAAAAAElFTkSuQmCC);
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  background-size: 15px 13px;
}

.c-modal .submit button:hover {
  color: #fff;
  background-color: #E60012;
  transition: background-color 150ms ease-in;
  border: 1px solid #E60012;
}

.c-modal_content .box-inner .area1{ border-left: 2px solid #FF8585; }
.c-modal_content .box-inner .area2{ border-left: 2px solid #FDA200; }
.c-modal_content .box-inner .area3{ border-left: 2px solid #1FC39D; }
.c-modal_content .box-inner .area4{ border-left: 2px solid #8EC31F; }
.c-modal_content .box-inner .area5{ border-left: 2px solid #73AE7D; }
.c-modal_content .box-inner .area6{ border-left: 2px solid #7272FF; }
.c-modal_content .box-inner .area7{ border-left: 2px solid #FF4848; }
.c-modal_content .box-inner .area8{ border-left: 2px solid #D16EFF; }
.c-modal_content .box-inner .area9{ border-left: 2px solid #471FC3; }
.c-modal_content .box-inner .area10{ border-left: 2px solid #708F30; }

#detail .lists a {
    color: #F06060;
    text-decoration: underline;
}

#detail .detail-near-box {
  width: 100%;
  margin-bottom: 20px;
  vertical-align: top;
  padding-bottom: 15px;
  border-bottom: 1px solid #ccc;
}
#detail .detail-near-box ul{
  display: flex;
  flex-wrap:wrap;
  justify-content: left;
}
#detail .detail-near-box li {
  margin:0 25px 25px 0;
  width: 180px;
}
#detail .detail-near-box li:nth-child(4),
#detail .detail-near-box li:nth-child(8) {
  margin-right:0;
}
#detail .detail-near-box li a:hover{
  color: #E60012;
}
#detail .detail-near-box .img-box {
  width: 180px;
  height: 135px;
  overflow: hidden;
}
#detail .detail-near-box .img-box img {
  max-width: 180px;
  max-height: 135px;
  transition:.3s all;
}
#detail .detail-near-box a:hover .img-box img{
  transform:scale(1.1,1.1);
  transition:.3s all;
}
#detail #map{
  width: 100%;
  height:450px;
}
#detail .slick-slider{
  margin: 0 20px;
}
#detail .main_img{
  position:relative;
}
#detail  .player {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

#detail #play_btn{
  position: absolute;
  z-index:2;
  font-size: 2.5rem;
  cursor: pointer;
  color: #fff;
  width: 100px;
  height: 60px;
  padding-top: 8px;
  text-align: center;
  background-color: #f00;
  border-radius: 10px;
  border:1px solid #f00;
  vertical-align: top;
  line-height: 1.0;
}
#detail #play_btn:hover{
  color: #f00;
  background-color: #fff;
  border:1px solid #f00;
}
#detail .y_thumb{
  z-index:1;
}
#detail .main_img iframe{
  position:absolute;
  top: 0;
  left: 0;
  width:100% ;
  height:100% ;
}
#detail .detail-performance-box .tbl li div:nth-child(2) .title{
  font-size: 1.1rem;
}
#detail .detail-performance-box .tbl li div:nth-child(3) a{
  text-decoration: none;
  color: #E60012;
}
#detail .detail-performance-box .tbl li div:nth-child(3) span{
  display: inline-block;
  font-size: 0.9rem;
  border-radius: 5px;
  width: 150px;
  text-align: center;
  border: 1px solid #999;
}
#detail .detail-performance-box .tbl li div:nth-child(3) span.hp{
  margin-bottom: 7px;
}
#detail .detail-performance-box .tbl li div:nth-child(3) span.hp a{
  color : #666;
  display: block;
  padding: 3px 10px;
}
#detail .detail-performance-box .tbl li div:nth-child(3) span.hp a:hover{
  color : #E60012;
}
#detail .detail-performance-box .tbl li div:nth-child(3) span.jcdb{
  background-color: transparent;
  padding: 3px 10px;
}
/*
  英語版の日本地図
*/
#top .area-box br.en2 {
  display: none;
}
#top.lang_en .area-box br.en,
#top.lang_en .area-box br.en2 {
  display: block;
}
#top.lang_en .area-box br {
  display: none;
}
#top.lang_en .area-box .map li {
    padding-left: 7px;
}
#top.lang_en .area-box .map li a {
    font-size: 11px;
    margin: 0 10px 0 0;
}
/*

#top .area-box .map .area02{
}
#top .area-box .map .area03{
}
#top .area-box .map .area04{
}
#top .area-box .map .area05{
}
#top .area-box .map .area06{
}
#top .area-box .map .area07{
}
#top .area-box .map .area08{
}
#top .area-box .map .area09{
}
#top .area-box .map .area10{
}
*/
#top.lang_en .area-box .map .area01 {
  top:60px;
  left:485px;
}
#top.lang_en .area-box .map .area02{
  top:180px;
  left:445px;
}
#top.lang_en .area-box .map .area03{
  top:280px;
  left:425px;
}
#top.lang_en .area-box .map .area04 {
  top:370px;
  left:300px;
}
#top.lang_en .area-box .map .area05{
  top:180px;
  left:255px;
}
#top.lang_en .area-box .map .area06{
  top:405px;
  left:260px;
}
#top.lang_en .area-box .map .area07{
  top:225px;
  left:150px;
}
#top.lang_en .area-box .map .area08 {
  top:380px;
  left:160px;
}
#top.lang_en .area-box .map .area09{
  top:270px;
  left:13px;
}
#top.lang_en .area-box .map .area10{
  top:410px;
  left:57px;
}
#top .news-box .fa-thumbtack,
#news .newslist .fa-thumbtack{
  font-size: 1.1rem;
  color: #E60012;
}



#movie_banner{
  margin-top: 20px;
  font-size: 1.0em;
  text-align:center;
}
#movie_banner a{
  color: #E60012;
  text-decoration: underline;
}
#vr_link{
  margin-bottom: 20px;
  text-align: center;
}
#vr_link a{
  color: #E60012;
  text-decoration: underline;
}