@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Roboto&display=swap');
@import url('https://fonts.googleapis.com/css?family=Cinzel&display=swap');
@import url('https://fonts.googleapis.com/css?family=Lato&display=swap');

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

body {
  line-height: 1.6;
  color: #222;
  font-size: 17px;
  width: 100%;
  -webkit-text-size-adjust: 100%;
  font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-align: center;
  margin: 0 auto;
  /* background-color: #f5f5eb; */
}

h1, h2, h3, h4, h5, h6, img,
p, div, ul, li, dl, dt, dd, figure {
  margin: 0;
  padding: 0; }

ul, li {
  list-style: none;
  display: inline-block; }

img {
  border: none;
  vertical-align: top;
  max-width: 100%;
  height: auto; 
}

a {
  text-decoration: none;
  color: #000; }

p{
  width:100%;
  max-width: 800px;
  margin:0 auto;
  line-height: 2.0;
  font-size: 17px;
  text-align: left;
}

#pagetop{
  font-size: 30px;
  padding-top: 15px;
  color: #fff;
  border-radius: 50%;
  height: 80px;
  width: 80px;
  background-color: #666;
  position: fixed;
  bottom: 10px;
  right: 20px;
  display: block;
  z-index: 100;
  opacity: 0.8;
}
#pagetop:hover{
  opacity: 0.9;
  background-color: #222;
}

/* menuBtn */
.hm_btn {
  position: relative;
  width: 30px;
  height: 30px;
  cursor: pointer;
  display: block;
  float: left;
  z-index: 2;
  padding: 5px 0;
  top: 6px;
}
.hm_btn::before {
  -webkit-box-shadow: #333 0 12px 0;
  box-shadow: #333 0 12px 0;
}
.hm_btn::after {
  bottom: 0;
}
.hm_btn::before,
.hm_btn::after {
  width: 30px;
  height: 2px;
  background: #333;
  display: block;
  content: '';
  position: absolute;
  -webkit-transition: -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
  transition: box-shadow 0.2s linear, transform 0.2s 0.2s;
}
.hm_menu_wrap {
  width :100%;
  height :10000px;
  position: absolute;
  left: -100%;
  top: 0;
  -webkit-transition: left 0.4s;
  transition: left 0.4s;
  background-color: rgba(0,0,0,0.85);
}
/* animation */
.hm_menu_check:checked ~ .hm_title {
  opacity: 1;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}
.hm_menu_check:checked ~ .hm_btn::before {
  -webkit-box-shadow: transparent 0 0 0;
  box-shadow: transparent 0 0 0;
  -webkit-transform: rotate(45deg) translate3d(5.5px, 11px, 0);
  transform: rotate(45deg) translate3d(5.5px, 11px, 0);
  background-color: #333;
}
.hm_menu_check:checked ~ .hm_btn::after {
  -webkit-transform: rotate(-45deg) translate3d(5.5px, -11px, 0);
  transform: rotate(-45deg) translate3d(5.5px, -11px, 0);
  background-color: #333;
}
.hm_menu_check:checked ~ .hm_menu_wrap {
  left: 0;
}
.hm_menu_check:checked ~ .hm_menu_wrap .hm_list{
  left: 0;
  position: fixed;
  -webkit-transition: left 0.4s;
  transition: left 0.4s;
}
/* menu List */
.hm_list {
  list-style-type: none;
  margin: 60px 0 0;
  padding: 0;
  width: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  list-style: none;
  left: -100%;
  padding-bottom: 160px;
}
.hm_list::-webkit-scrollbar{
 display:none;
}
.hm_list{
 -ms-overflow-style:none;
}
.hm_list li{
  width: 100%;
  display: block;
}
.hm_list li:first-child {
  padding-top: 1em;
}
.hm_list li a {
  color: #fff;
  font-size: 16px;
  display: block;
  overflow: hidden;
  padding: 20px 22px;
  position: relative;
  text-decoration: none;
  z-index: 1;
  border-top: 1px solid #ccc;
}
.hm_list li:last-child {
  border-bottom: 1px solid #ccc;
}
.hm_list li a:hover::before {
  bottom: 0;
}
.hm_list li a:hover::after {
  opacity: 0.5;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
@media screen and (max-width: 750px) {
  .hm_menu_check:checked ~ .hm_btn::before {
    background-color: #fff;
  }
  .hm_menu_check:checked ~ .hm_btn::after {
    background-color: #fff;
  }
  .hm_wrap{
    top: 0;
    padding-top: 12px;
  }
}

/*******************************
common
*******************************/
ul.bread{
  display: block;
  width: 100%;
  text-align: left;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  margin-top: 5px;
}
ul.bread li:before {
  position: absolute;
  content: ">";
  left: 0;
}
ul.bread li:first-child:before {
  position: inherit;
  content: "";
}
ul.bread li{
  position: relative;
  font-size: 14px;
  font-weight: bold;
  color: #444;
  padding-left: 16px;
}
ul.bread li a{
  border-bottom: 1px solid #3091cc;
  font-weight: bold;
  color: #3091cc;
  font-size: 14px;
}
ul.bread li a:hover{
  color: #0e5988;
  border-bottom: 1px solid #0e5988;
}
.hr_line {
  position: relative;
  width: 100%;
  height: 100px;
}
.hr_line span{
  position: absolute;
  z-index: 200;
  left: 0;
  right: 0;
  top: -0;
  top: 0px;
  margin: 0 auto;
  background:url(../img/common/hr_st.png)bottom center/contain no-repeat;  
  content: "";
  width: 146px;
  height: 100px;
}
hr{
  width:100%;
  margin: 0;
  overflow: hidden;
  position: relative;
  background:url(../img/common/hr_Line.png)bottom center/contain no-repeat;
  height: 70px;
  margin-top:50px;
  border:none;
  z-index: 100;
}
hr:after{
  width:280px;
  height: 54px;
  position: absolute;
  overflow: hidden;
  z-index: 99;
  top: 9px;
  content: "";
  background:url(../img/common/h_tag_trainC.png)center center/auto no-repeat;
}
hr.ptn0:before{
  position: absolute;
  overflow: hidden;
  z-index: 99;
  content: "";
  top: 7px;
  left: 37%;
  width: 280px;
  height: 50px;
  background:url(../img/common/h_tag_trainC.png)center center/auto no-repeat;
}
hr.ptn0:after{
  top: 7px;
  left: 52%;
  width: 280px;
  height: 50px;
  background:url(../img/common/h_tag_trainB.png)center center/auto no-repeat;
}
hr.ptn1:after{
  animation: train 20s linear infinite;
  animation-iteration-count:infinite;
  animation-direction:alternate;
}
hr.ptn0:before{
  animation: trainThree 20s linear infinite;
  animation-iteration-count:infinite;
  animation-direction:alternate;
}
hr.ptn0:after{
  animation: trainFour 20s linear infinite;
  animation-iteration-count:infinite;
  animation-direction:alternate;
}
hr.ptn2:after{
  animation: trainTwo 16s linear infinite;
  transition-delay:5px;
  animation-iteration-count:infinite;
  animation-direction:alternate;
  width: 280px;
  background:url(../img/common/h_tag_trainD.png)center center/auto no-repeat;
}
@keyframes train {
  0% {   right:  0%;  }
  32% {   right:  33%;  }
  36% {   right:  35%;  }
  40% {   right:  37%;  }
  44% {   right:  39%;  }
  46% {   right:  40%;  }
  48% {   right:  41%;  }
  50% {   right:  42%;  }
  52% {   right:  43%;  }
  54% {   right:  44%;  }
  56% {   right:  45%;  }
  60% {   right:  47%;  }
  64% {   right:  49%;  }
  68% {   right:  52%;  }
  100% { right: 100%; }
}
@-webkit-keyframes train {
  0% {   right:  0%;  }
  32% {   right:  33%;  }
  36% {   right:  35%;  }
  40% {   right:  37%;  }
  44% {   right:  39%;  }
  46% {   right:  40%;  }
  48% {   right:  41%;  }
  50% {   right:  42%;  }
  52% {   right:  43%;  }
  54% {   right:  44%;  }
  56% {   right:  45%;  }
  60% {   right:  47%;  }
  64% {   right:  49%;  }
  68% {   right:  52%;  }
  100% { right: 100%; }
}
@keyframes trainTwo {
  0% {   left:  -10%;  }
  32% {   left:  33%;  }
  36% {   left:  35%;  }
  40% {   left:  37%;  }
  44% {   left:  39%;  }
  46% {   left:  40%;  }
  48% {   left:  41%;  }
  50% {   left:  42%;  }
  52% {   left:  43%;  }
  54% {   left:  44%;  }
  56% {   left:  45%;  }
  60% {   left:  47%;  }
  64% {   left:  49%;  }
  68% {   left:  52%;  }
  100% { left: 85%; }
}
@-webkit-keyframes trainTwo {
  0% {   left:  -10%;  }
  32% {   left:  33%;  }
  36% {   left:  35%;  }
  40% {   left:  37%;  }
  44% {   left:  39%;  }
  46% {   left:  40%;  }
  48% {   left:  41%;  }
  50% {   left:  42%;  }
  52% {   left:  43%;  }
  54% {   left:  44%;  }
  56% {   left:  45%;  }
  60% {   left:  47%;  }
  64% {   left:  49%;  }
  68% {   left:  52%;  }
  100% { left: 85%; }
}
@keyframes trainThree {
  0% {   right:  0%;  }
  32% {   right:  33%;  }
  36% {   right:  35%;  }
  40% {   right:  37%;  }
  44% {   right:  39%;  }
  46% {   right:  40%;  }
  48% {   right:  41%;  }
  50% {   right:  42%;  }
  52% {   right:  43%;  }
  54% {   right:  44%;  }
  56% {   right:  45%;  }
  60% {   right:  47%;  }
  64% {   right:  49%;  }
  68% {   right:  52%;  }
  100% { right: 100%; }
}
@-webkit-keyframes trainThree {
  0% {   right:  0%;  }
  32% {   right:  33%;  }
  36% {   right:  35%;  }
  40% {   right:  37%;  }
  44% {   right:  39%;  }
  46% {   right:  40%;  }
  48% {   right:  41%;  }
  50% {   right:  42%;  }
  52% {   right:  43%;  }
  54% {   right:  44%;  }
  56% {   right:  45%;  }
  60% {   right:  47%;  }
  64% {   right:  49%;  }
  68% {   right:  52%;  }
  100% { right: 100%; }
}
@keyframes trainFour {
  0% {   left:  -10%;  }
  32% {   left:  33%;  }
  36% {   left:  35%;  }
  40% {   left:  37%;  }
  44% {   left:  39%;  }
  46% {   left:  40%;  }
  48% {   left:  41%;  }
  50% {   left:  42%;  }
  52% {   left:  43%;  }
  54% {   left:  44%;  }
  56% {   left:  45%;  }
  60% {   left:  47%;  }
  64% {   left:  49%;  }
  68% {   left:  52%;  }
  100% { left: 85%; }
}
@-webkit-keyframes trainFour {
  0% {   left:  -10%;  }
  32% {   left:  33%;  }
  36% {   left:  35%;  }
  40% {   left:  37%;  }
  44% {   left:  39%;  }
  46% {   left:  40%;  }
  48% {   left:  41%;  }
  50% {   left:  42%;  }
  52% {   left:  43%;  }
  54% {   left:  44%;  }
  56% {   left:  45%;  }
  60% {   left:  47%;  }
  64% {   left:  49%;  }
  68% {   left:  52%;  }
  100% { left: 85%; }
}

h2{
  font-size: 25px;
  font-weight:bold;
  margin-top: 70px;
  margin-bottom: 30px ;
}
.wrap{
  max-width: 1200px;
  width: 96%;
  margin: 0 auto;
}
.underLine{
  background-image: linear-gradient(transparent 70%, #F9ba1b 30%);
  line-height: 1.5;
}

/*inlineFrame Map*/

/*
.mapWrap{
  width:90%;
  max-width: 1200px;
  height: 500px;
  margin-top:50px;
  position: relative;
}
.mapWrap > div{
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  margin:0 auto;
  width:100%;
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling:touch;
}
iframe.map{
  width:100%;
  height: 100%;
  border:none;
}*/

iframe.map{
  width:90%;
  max-width: 1200px;
  height: 500px;
  border: none;
  margin-top:50px;
/*  position: relative;
  z-index: 3000;*/
}


section{
  width: 100%;
  margin: 0 auto;
  display: block;
  padding-bottom: 50px;
  position: relative;
}
section.addBg:after{
  width: 450px;
  height: 135px;
  content: '';
  position: absolute;
  left:0;
  bottom: 0;
  overflow: hidden;
  background:url(../img/common/bg_01.png);
  z-index: -1;
}
section .secWrap{
  max-width: 1200px;
  width: 96%;
  margin: 0 auto;
  padding-bottom: 50px;
}
.captionTxt01{
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  display: inline-block;
}
a.btn01{
  background-color: #f98a1b;
  padding: 8px 17px;
  font-size: 14px;
  color: #fff;
  text-align: center;
  border-radius: 4px;
  margin-top: 30px;
  display: inline-block;
}
a.btn01.plus{
  display: block;
  max-width: 200px;
}

a.btn01:hover{
  background-color: #d35a11;
}
.topSns{
  background-color: #333;
  padding: 30px 0;
}
.topSns > div{
  margin: 10px;
  max-width: 1200px;
  margin :0 auto;
  width: 96%;
}
.footerNavi{
  display: inline-block;
  vertical-align: top;
  padding-top: 20px;
  width: 18%;
  text-align: left;
}
.footerNavi ul{
  text-align: left;
}
.footerNavi ul li{
  margin-bottom: 15px;
  display: block;
  padding-bottom: 5px;
}
.footerNavi ul li a{
  color: #fff;
  font-size: 14px;
}


/******************************************/

iframe #twitter-widget-0{
  margin: 0 auto;
  text-align: center;
}

.twitterBox{
  width: 30%;
  min-width: 270px;
  max-width: 300px;
    background:url(../img/common/bg_twi.gif) center center repeat ;
  background-size:auto;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
  margin: 0 auto;
  padding: 1.5em 0;
  margin-bottom: 1.5em;
  display: inline-block;
  margin:1% !important;
}
.twitterBox a{
  text-decoration: none;
  display: block;
  width: 240px ;
}
.twitterBox p{
  font-size: 20px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding-bottom: 5px;
}
.facebookBox{
  width: 30%;
  min-width: 270px;
  max-width: 300px;
    background:url(../img/common/bg_fb.gif) center center repeat ;
  background-size:auto;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
  margin: 0 auto;
  padding: 1.5em 0;
  margin-bottom: 1.5em;
    display: inline-block;
    margin:1% !important;
}
.facebookBox p{
  font-size: 20px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding-bottom: 5px;
}

.facebookBox iframe{
  padding: 0;
  margin:0 auto;
  width: 240px !important;
  text-align: center;
}
/******************************************/


/*******************************
top page
*******************************/
/*mainVisual*/
.mainVis{
  width: 100%;
  margin: 0 auto;
  /* height: 700px; */
  /* background: url(../img/top/mv.jpg) center center no-repeat;
  background-size: cover; */
  padding-top: 35px;
  background-color: #e6345e;
  padding: 40px 0;
}
.mainVis img{
  margin: 0 auto;
  text-align: center;
  max-width: 600px;
}
/*slide content*/
.slideCnt {
  padding: 0;
/*  margin-top: 150px;*/
  margin-top: 100px;
}
.slideCnt .slideTtl{
  width: 100%;
  background-color: #444;
  padding: 10px 30px;
  text-align: center;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
}
#infiniteslide1{
  margin: 0 auto;
  height: 300px;
  position: relative;
}
#infiniteslide1 ul{
    height: 300px;
    overflow: hidden; 
}
#infiniteslide1 ul li{
      margin-left: 0px; 
}
.imgWrap {
    overflow: hidden;
    width: 300px;
    height: 300px;
    position: relative;
}
.imgEff{
    overflow: hidden;
    display: block;
    transition-duration: 0.2s;
}
.imgEff img{
    position: relative;
    overflow: hidden;
    width: 300px;
    height: 300px;
}
.imgEff:hover {
    transform: scale(1.05);
    overflow: hidden;
}
.imgEff:before {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    background: radial-gradient(rgba(0,80,0, 0.1), rgba(0,80,0, 0.6));
    transition-duration: 0.1s;
    opacity: 0;
    display: flex;
    justify-content: center;
    align-items: center; 
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    filter: blur(5px);
    z-index: 3000;
}
/*ph_slideAjpg*/
.imgEff.area1:before {content: "にぎわいフェスタホームエリア";}
/*ph_slideFjpg*/
.imgEff.area2:before {content: "桴の響演";}
/*ph_slideGjpg*/
.imgEff.area3:before {content: "中野南口わいわい祭り";}
/*ph_slideEjpg*/
.imgEff.area4:before {content: "NAKANO Beat Park";}
/*ph_slideCjpg*/
.imgEff.area5:before {content: "身近な行政サービスPR";}
/*ph_slideDjpg*/
.imgEff.area6:before {content: "物産展(里・まち連携10周年記念)";}
/*ph_slideBjpg*/
.imgEff.area7:before {content: "税金広場";}
.imgEff:hover:before {
    opacity: 1;
    transform: scale(1.1);
    filter: blur(0);
}
@media (max-width: 750px) {
  .imgWrap{
    overflow: hidden;
    width: 200px;
    height: 200px;
  }
  #infiniteslide1{
    height: 200px;
  }
  #infiniteslide1 ul{
    height: 200px;
    overflow: hidden;
  }
  .imgWrap .imgEff img{
    width: 200px;
    height: 200px;
  }
  .imgEff:before {
    width: 200px;
    height: 200px;
    font-size: 13px;
    opacity: 1.0;
    filter: blur(0);
    background: radial-gradient(rgba(0, 80, 0, 0.1), rgba(0, 80, 0, 0.6)); /* 円形グラデーション */
  }
  .imgEff:hover:before {
      opacity: 1;
      transform: scale(1);
      filter: blur(0);
  }
  .imgEff:hover {
      transform: scale(1);
  }
}

.top_txt01{
  font-size: 22px;
  line-height: 24px;
  max-width: 800px;
  width: auto;
  font-weight: bold;
  display: inline-block;
  color: #333;
  background-image: linear-gradient(transparent 70%, #F9ba1b 30%);
  margin-top: 15px;
  margin-bottom: 10px;
}
section .newsListWrap{
  max-width: 800px;
  width: 90%;
  margin: 0 auto;
  position: relative;
}

section .newsListWrap .ttltxt{
  font-size: 17px;
  font-weight: bold;
  padding-bottom: 5px;
  display: block;
}
section .newsListWrap .txt01{
  font-size: 17px;
  font-weight: normal;
  padding-bottom: 20px;
  display: block;
}
section .newsListWrap .txt02{
  font-size: 17px;
  font-weight: bold;
  padding-bottom: 5px;
  display: block;
}

#topDate{
  padding-top: 80px;
}
#topDate h2:first-child{
  margin-top: 0;
}
#topAbout{
  padding-top: 80px;
}
#topAbout h2:first-child{
  margin-top: 0;
}
#topSponsor{
  padding-top: 60px;
}
#topSponsor .wrap{
  padding: 20px;
  background-color: #fff;
  /* border-radius: 15px; */
}
#topSponsor h2:first-child{
  margin-top: 0;
}

  #topSponsor .wrap{
    padding: 0 0 60px;
    /* border-radius: 15px; */
  }
  .supTtl {
    position: relative;
    margin-bottom: 20px;
    vertical-align: middle;
  }
  .supTtl:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 10%;
    right: 10%;
    width: auto;
    height: 1px;
    background: #fff;
    background: -ms-linear-gradient(left, transparent, rgba(255, 255, 255, 1), transparent); 
    background: -moz-linear-gradient(left, transparent, rgba(255, 255, 255, 1), transparent);
    background: -webkit-linear-gradient(left, transparent, rgba(255, 255, 255, 1), transparent);
    background: linear-gradient(left, transparent, rgba(255, 255, 255, 1), transparent); 
  }
  .supTtl.ttl--premium {
    background: #000;
    /* border-radius: 15px 15px 0 0;
    -webkit-border-radius: 15px 15px 0 0;
    -moz-border-radius: 15px 15px 0 0; */
  }
  .supTtl.ttl--premium:before {
    display: none;
  }
  .supTtl.ttl--gold {
    background: #b5974f;
/*
    background: -ms-linear-gradient(left, transparent 0%, #b5974f 20%, #b5974f 80%, transparent 100%); 
    background: -moz-linear-gradient(left, transparent 0%, #b5974f 20%, #b5974f 80%, transparent 100%);
    background: -webkit-linear-gradient(left, transparent 0%, #b5974f 20%, #b5974f 80%, transparent 100%);
    background: linear-gradient(left, transparent 0%, #b5974f 20%, #b5974f 80%, transparent 100%); 
*/
  }
  .supTtl.ttl--silver {
    background: #f0f0f0;
  }
  .supTtl.ttl--other {
    background: #D7EEFF;
  }

  .supTtl.ttl--silver:before,.supTtl.ttl--other:before {
    background: #000;
    background: -ms-linear-gradient(left, transparent, rgba(0, 0, 0, 0.4), transparent); 
    background: -moz-linear-gradient(left, transparent, rgba(0, 0, 0, 0.4), transparent);
    background: -webkit-linear-gradient(left, transparent, rgba(0, 0, 0, 0.4), transparent);
    background: linear-gradient(left, transparent, rgba(0, 0, 0, 0.4), transparent); 
  }
  section.top_sponsor h2 {
    margin-bottom: 40px;
    font-size: 32px;
    letter-spacing: .4em;
  }
  section.top_sponsor .supTtl h4 {
    position: relative;
    display: inline-block;
    padding: 12px 30px 2px;
    background: #000;

    font-family: 'Lato', sans-serif;
/*
    font-family: 'Roboto', sans-serif;
*/
    font-size: 28px;
    font-weight: bold;
    letter-spacing: .08em;
    line-height: 1;
    color: #fff;
    z-index: 1;
  }
  section.top_sponsor .supTtl.ttl--premium h4 {
    background: #000;
    font-weight: bold;
/*
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.6) 10%, rgba(226, 198, 130, 1), rgba(255, 255, 255, 0.8) 70%);
*/
		background: -ms-linear-gradient(left, rgba(255, 255, 255, 1) 2%, rgba(211, 192, 104, 1), rgba(255, 255, 255, 1) 80%); 
		background: -moz-linear-gradient(left, rgba(255, 255, 255, 1) 2%, rgba(211, 192, 104, 1), rgba(255, 255, 255, 1) 80%);
		background: -webkit-linear-gradient(left, rgba(255, 255, 255, 1) 2%, rgba(211, 192, 104, 1), rgba(255, 255, 255, 1) 80%);
    background: linear-gradient(0deg, rgba(255, 255, 255, 1) 2%, rgba(211, 192, 104, 1), rgba(255, 255, 255, 1) 80%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: #e2c682;
  }
  section.top_sponsor .supTtl.ttl--premium h4:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -60px;
    width: 59px;
    height: 90px;
    margin-top: -40px;
    background: url(../img/icn-premium-left.png) no-repeat 0 0;
  }
  section.top_sponsor .supTtl.ttl--premium h4:after {
    content: "";
    position: absolute;
    top: 50%;
    right: -60px;
    width: 59px;
    height: 90px;
    margin-top: -40px;
    background: url(../img/icn-premium-right.png) no-repeat 0 0;
  }
  section.top_sponsor .supTtl.ttl--gold h4 {
    background: #b5974f;
    letter-spacing: .1em;
  }
  section.top_sponsor .supTtl.ttl--silver h4 {
    background: #f0f0f0;
    color: #000;
  }
  section.top_sponsor .supTtl.ttl--other h4 {
    background: #D7EEFF;
    color: #000;
  }



  section.top_sponsor .supTtl h4 span {
    font-size: 70%;
  }
  section.top_sponsor .supTtl.ttl--premium h4 {
    padding: 18px 30px 6px;
    font-family: 'Cinzel', serif;
    letter-spacing: .12em;
  }
  section.top_sponsor .supTtl.ttl--gold,
  section.top_sponsor .supTtl.ttl--silver,
  section.top_sponsor .supTtl.ttl--other {
    margin-top: 60px;
  }

  section.top_sponsor .supTtl.ttl--other.first{
    margin-top: 120px;
  }

a.sponsorBtn{
  padding: 20px 10px;
  max-width: 800px;
  display: block;
  margin: 0 auto;
  width: 96%;
  font-size: 30px;
  font-weight: bold;
  background-color: #ffd700;
  margin-top: 30px;
  margin-bottom: 30px;
  border:3px solid #fff;
  position: relative;
}

a.newsBtn{
  padding: 20px 10px;
  max-width: 800px;
  display: block;
  margin: 0 auto;
  width: 96%;
  font-size: 30px;
  font-weight: bold;
  background-color: #444;
  margin-top: 30px;
  margin-bottom: 30px;
  border:3px solid #fff;
  position: relative;
  color: yellow;
}



a.sponsorBtn span{
  display: block;
  font-size: 14px;
  width: 90%;
  margin: 0 auto;
  margin-top: 10px;
}

a.newsBtn span{
  display: block;
  font-size: 14px;
  width: 90%;
  margin: 0 auto;
  margin-top: 10px;
}


a.sponsorBtn:hover,a.newsBtn:hover{
  opacity: 0.7;
}

a.sponsorBtn img,a.newsBtn img{
  position: absolute;
  width: 100px;
  height: 100px;
  top: -30px;
  right: 10px;

}

/*******************************
top page news list
*******************************/
dl.top_newsList{
  display: block;
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  margin-top: 20px;
}
dl.top_newsList dt{
  width: 6em;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  font-weight: bold;
  font-size: 17px;
  margin: 0 auto;
  margin-bottom: 0.5em;
}
dl.top_newsList dd{
  width: calc(100% - 7.5em);
  max-width: 600px;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  margin-bottom: 0.5em;
}
dl.top_newsList dd a{
  border-bottom: 1px solid #3091cc;
  font-weight: bold;
  color: #3091cc;
  font-size: 17px;
}
dl.top_newsList dd a:hover{
  color: #0e5988;
  border-bottom: 1px solid #0e5988;
}

/*******************************
top page sponsor
*******************************/

section.top_sponsor{
  width: 94%;
  max-width: 1000px;
  margin: 0 auto;
  overflow: hidden;
  }

section.top_sponsor h4{
  font-size: 25px;
  font-weight: bold;
  margin: 0 auto;
  text-align: center;
  padding-top: 40px;
  margin-bottom: 10px;
}

section.top_sponsor hr {
  display: block;
  width: 94%;
  max-width: 1000px;
  height: 1px;
  background-color: #444;
  border: 0;
  text-align: center;
  margin-bottom: 20px;
margin: 0 auto;
}

section.top_sponsor div.mar1{
  margin: 0.75em 0.5em;
  display: inline-block;
  width: 36%;
}
section.top_sponsor div.logo_area div a{
  display: inline-block;
  padding-top: 0px;
  text-decoration: none;
  color: #000;
  margin: 20px 8px;

/*  border-bottom: 1px solid #000;*/
}

section.top_sponsor div.logo_area div a:hover{
  border-bottom: none;
  opacity: 0.8;
}

section.top_sponsor div.logo_area div img{
  max-width: 100%;
  width: 100%;
  display: inline-block;
  width: 86%;
  max-width: 400px;
}

section.top_sponsor div.logo_area div img.square{
  max-width: 240px;
}

section.top_sponsor div div a span{
  color: #d32435;
}

section.top_sponsor div.logo_area{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  -moz-box-pack: center;    /*Firefox21*/
  -webkit-justify-content: center; /*PC-Safari,iOS8.4*/
  justify-content:center;
  -webkit-flex-wrap:wrap;/*--- safariï¼ˆPCï¼‰ç”¨ ---*/
  flex-wrap:wrap;
  table-layout: fixed;
  align-items: center;
  -ms-align-items: center;
  -webkit-align-items: center;
  margin:0 auto;
}
section.top_sponsor div.logo_area{
  max-width: 920px
}
section.top_sponsor .logo_area.premium span.cap{
  font-size: 14px;
  padding: 0 15px;
  color: #999;
}
section.top_sponsor .logo_area.premium a img{
  max-width:400px;
  width:100%;
}
section.top_sponsor .logo_area.gold a img{
  max-width:360px;
  width:80%;
}
section.top_sponsor .logo_area.silver a img{
  max-width:300px;
  width:90%;
}
section.top_sponsor div.logo_area.premium > div{
  width: 80%;
} 
section.top_sponsor div.logo_area.gold > div{
  width: 40%;
}
section.top_sponsor div.logo_area.silver > div{
  width: 30%;
}


/*******************************
top page sponsor
*******************************/

footer{
  width:100%;
  margin: 0 auto;
}
footer .footerWrap{
  background-color: #333;
  width:100%;
  padding:20px;
  margin: 0 auto;
  color: #fff;
  padding: 10px 10px 20px 10px;
}

footer .footerWrap ul {
    display: block;
    width: 80%;
    max-width: 960px;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 30px;
}
footer .footerWrap ul li{
    display: inline-block;
    margin: 0 auto;
}
footer .footerWrap ul li a{
      display: block;
      font-size: 14px;
      color: #fff;
      }
footer .footerWrap ul li a:before{
        content: '|';
        display: inline-block;
        margin-right: 6px;
}
footer .footerWrap ul li:last-child a{
              content: '|';
            display: inline-block;
            margin-right: 0;
            margin-left: 6px;
}
footer .credit{
  text-align:center;
  font-size: 13px;
  color: #fff;
}

/*******************************
sponsor Page
*******************************/
section.sponsor iframe.map{
  max-width: 800px;
  margin-top: 0;
}
section.sponsor h3{
  font-size: 18px;
  font-weight: bold;
  margin-top: 10px;
  margin-bottom: 5px;
}
section.sponsor h4{
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 1em;
}
section.sponsor h4 b{
  font-size: 13px;
}
section.sponsor div.boxWrap01{
  display: block;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding:30px 20px;
  background-color: #fff;
  border-radius: 10px;
}
section.sponsor div.boxWrap01 > div{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 20px 0;
}
section.sponsor div.boxWrap01 > div > div:first-child{
  display: inline-block;
  vertical-align: middle;
  width: 48%;
}
section.sponsor div.boxWrap01 > div > div:nth-child(2){
  display: inline-block;
  vertical-align: middle;
  width: calc(100% - (46% + 40px));
}
section.sponsor div.boxWrap01 > div > div p{
  font-size: 18px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}
section.sponsor .pdfWrap{
  max-width: 800px;
  width: 100%;
  background-color: #fff;
  padding: 20px 30px;
  display: block;
  margin: 0 auto;
  margin-top: 30px;
  margin-bottom: 30px;
  text-align: left;
  border:1px solid #000; 
}
section.sponsor .pdfWrap ul{
  display: block;
  margin-bottom: 10px;
}
section.sponsor .pdfWrap ul li{
  display: block;
}

section.sponsor .pdfWrap ul li:nth-child(4){
  margin-top: 20px;
}

section.sponsor .pdfWrap a{
  border-bottom: 1px solid #0e5988;
  font-weight: bold;
  color: #0e5988;
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
  display: inline-block;
  font-weight: bold;
  margin-top: 10px;
}
section.sponsor .pdfWrap p{
  width: 100%;
  text-align: left;
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 10px;
}
section.sponsor .pdfWrap a:hover{
  color: red;
  border-bottom: 1px solid red;
}

section.sponsor .pdfWrap b{
  margin-top: 15px;
  display: block;
  line-height: 1.6;
}
section.sponsor .sFnt{
  font-size: 13px;
}
/*******************************
StampRally Page
*******************************/
/*body.stamp{
  background-color: #fff;
}*/

section.stamp h2{
  margin-bottom: 30px;
  margin-top: 8%;
}
section.stamp h2 img{
  max-width: 284px;
  width: 40%;
}
section.stamp p{
  width: 96%;
  max-width: 720px;
  display: block;
  margin: 0 auto;
}
section.stamp iframe.map{
  width: 96%;
  max-width: 800px;
  display: block;
  margin: 0 auto;  
}
section.stamp.sponsorLogo a{
  display: block;
  margin: 0 auto;
  margin-bottom: 3%;
} 


section.stamp div.mar1{
/*  margin: 0.75em 0.5em;*/
  display: block;
  margin: 0 auto;
  margin-bottom: 1.25em;
}
section.stamp div.logo_area div a{
  display: inline-block;
  padding-top: 0px;
  text-decoration: none;
  color: #000;
  margin-bottom: 0;
/*  border-bottom: 1px solid #000;*/
}

section.stamp div.logo_area div a:hover{
  border-bottom: none;
  opacity: 0.8;
}

section.stamp div.logo_area div img{
  max-width: 100%;
  width: 100%;
  display: inline-block;
}

section.stamp div div a span{
  color: #d32435;
}

section.stamp div.logo_area{
/*  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  -moz-box-pack: center;
  -webkit-justify-content: center;
  justify-content:center;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
  table-layout: fixed;*/
  display: block;
  margin:0 auto;
}

section .logo_area a img{
  max-width:400px;
  width:90%;
}
section div.logo_area > div{
  width: 70%;
} 

section div.logo_area.buppin p{
  font-size: 16px;
  font-weight: bold;
  margin: 0 auto;
  text-align: center;
  padding: 8px 16px;
  border: 1px solid #aaa;
  display: inline-block;
  width: 100%;
  max-width: 360px;
}
section div.logo_area.buppin p.noBrd{
  border:none; 
}
section div.logo_area.buppin p a{
  margin-bottom: 0;
}
section div.logo_area.buppin p a img{
  max-width: 300px;
  width: 90%;
}

/*******************************
areaTop Page
*******************************/
section.areaTop{
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}

section.areaTop .areaDetail{
  display: table;
  width: 100%;
  margin: 0 auto;
  margin-bottom: 40px;
}
section.areaTop .areaDetail > div{
  display: inline-block;
  vertical-align: top;
}
section.areaTop .areaDetail > div.leftCnt{
  width: 240px;
}
section.areaTop .areaDetail > div.leftCnt img{
  width: 100%;
}
section.areaTop .areaDetail > div.rightCnt{
  width: calc(100% - 320px);
  padding-left: 20px;
  text-align: left;
}
section.areaTop .areaDetail > div.rightCnt .ttl{
  font-size: 22px;
  font-weight: bold;
/*  color: #E7292D;*/
  color: #222;
  line-height: 1.4;
  margin-bottom: 10px;
}
section.areaTop .areaDetail > div.rightCnt p.place{
  font-size: 15px;
  font-weight: bold;
}
section.areaTop .areaDetail > div.rightCnt p{
  line-height: 1.6;
}
section.areaTop .areaDetail > div.rightCnt a.contact{
  font-size: 14px;
  font-weight: bold;
  border-bottom: 1px solid #333;
  color: #333;
  display: inline-block;
  margin-top: 10px;
}
section.areaTop .areaDetail > div.rightCnt .btn01{
  margin-top: 15px;
}



/*******************************
sitemap Page
*******************************/
section.sitemap h2{
  margin-bottom: 50px;
}
section.sitemap h3{
  text-align: center;
  font-size: 18px;
  margin-top: 40px;
}
section.sitemap ul{
  display: block;
  width: 90%;
  margin: 0 auto;
}
section.sitemap ul li{
  display: inline-block;
  margin: 15px 10px 5px 10px;
  font-size: 15px;
  color: #333;
}
section.sitemap ul li.db{
  display: block;
}
section.sitemap ul li a{
  font-size: 15px;
  border-bottom: 1px solid #3091cc;
  color: #3091cc;
}
section.sitemap ul li a:hover{
  color: #0e5988;
  border-bottom: 1px solid #0e5988;
}




.sp { display: none; }
.pc { display: block; }



@media (max-width: 750px) {
  .sp{display: block;}
  .pc{display: none;}
  header{
    height: 70px;
  }
  header .hm_wrap.pc{
    display: none;
  }
  hr{
    background:url(../img/common/hr_Line_sp.png)center center/contain no-repeat;
  }
  hr:after,hr.ptn2:after{
    background-size: 70%;
  }
  hr.ptn0:after,hr.ptn0:before{
    top: -8px;
    left: 50%;
    background-size: 70%;
  }
  hr.ptn0:before{
    left: 25%;
  }
  hr.ptn1:after{
    top:-10px;
  }
  hr.ptn2:after{
    top:-10px;
  }
  .hr_line img{
    top: 0;
    bottom: 0;
    width: 101px;
    height: 69px;
    z-index: 300;
  }
  hr span {
    top:85px;
  }
  .mainVis{
    /* background:url(../img/top/mv_sp.jpg) left 50% bottom no-repeat ;
    background-size: 120%; */
    /* padding: 50%; */
    height: auto;
    position: relative;
    /* padding-top: 70px; */
  }
  .mainVis img{
    /* position: absolute; */
    width: 96%;
    max-width: 600px;
    /* top: 50%;
    left: 50%;
    transform: translate(-50%,-63%); */
  }
  .wrap{
    width: 94%;
    margin: 0 auto;
  }
  .captionTxt01{
    max-width: 600px;
    width: 80%;
    margin:0 auto;
    text-align: center;
    display: block;
  }
  section.addBg:after{
    width: 225px;
    height: 67px;
    background-size: 100%;
  }
  dl.top_newsList {
    margin-top: 15px;
  }
  dl.top_newsList dt{
    width:90%;
    display: block;
    margin-bottom: 5px;
    text-align: center;
    font-size: 15px;
    margin-bottom: 0.25em;
  }
  dl.top_newsList dd{
    width: 90%;
    max-width: inherit;
    text-align: center;
    margin-bottom: 1em;
  }
  dl.top_newsList dd a{
    font-size: 15px;
  }
  iframe.map{
    z-index: 3001;
  }
  .footerNavi{
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
  }
  .footerNavi ul{
    width: 100%;
  }
  .footerNavi li{
    border-bottom: 1px solid #fff;
    width: 100%;
  }
  .topSns > div{
    width: 90%;
  }
  section.top_sponsor div.logo_area.premium > div{
    width: 100%;
  } 
  section.top_sponsor div.logo_area.gold > div{
    width: 80%;
  }
  section.top_sponsor div.logo_area.silver > div{
    width: 60%;
  }
  #pagetop{
    font-size: 20px;
    padding-top: 15px;
    height: 60px;
    width: 60px;
  }
  .hr_line span{
    top: -10px;
    background:url(../img/common/hr_st.png)center center/contain no-repeat;  
    width: 120px;
    height: 70px;
  }
  section.sponsor div.boxWrap01 > div{
    display: block;
    margin-bottom: 40px;
    border-bottom: 1px solid #666;
    padding-bottom: 20px;
  }
  section.sponsor div.boxWrap01 > div > div:first-child{
    display: block;
    width: 100%
    max-width:400px;
    margin: 0 auto;
  }
  section.sponsor div.boxWrap01 > div > div:nth-child(2){
    display: block;
    width: 100%;
    text-align: center;
  }
  section.areaTop .areaDetail{
    display: block;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 40px;
  }
  section.areaTop .areaDetail > div.leftCnt{
    width: 80%;
    max-width: 360px;
    margin-bottom: 30px;
  }
  section.areaTop .areaDetail > div.rightCnt{
    width: 90%;
    padding-left: 0;
    border-bottom: 1px solid #333;
    padding-bottom: 30px;
  }
  section.areaTop .areaDetail > div.rightCnt p{
    text-align: center;
  }  
  section.areaTop .areaDetail > div.rightCnt .ttl{
    text-align: center;
  }
  section.areaTop .areaDetail > div.rightCnt p.place{
    text-align: center;
  }
  section.areaTop .areaDetail > div.rightCnt p.captionTxt01.tal{
    text-align: center;
    width: 100%;
  }
  section.areaTop .areaDetail > div.rightCnt a.contact{
    text-align: center;
  }
  section.areaTop .areaDetail > div.rightCnt .btn01{
    text-align: center;
    display: block;
    padding: 15px 17px;
    margin: 0 auto;
    margin-top: 15px;
  }
  section.areaTop .areaDetail > div.rightCnt > div{
    display: block;
    text-align: center;
    margin: 0 auto;
    width: 100%;
  }
  #topSponsor .wrap{
    padding: 0 0 60px;
    border-radius: 15px;
  }
  .supTtl {
    position: relative;
    margin-bottom: 20px;
    vertical-align: middle;
  }
  section.top_sponsor h2 {
    margin-bottom: 20px;
    font-size: 24px;
  }
  section.top_sponsor .supTtl h4 {
    padding: 12px 10px 2px;
    font-size: 20px;
  }
  section.top_sponsor .supTtl h4 span {
    display: block;
    padding-top: 5px;
  }
	section.top_sponsor .supTtl.ttl--premium h4 span {
    display: inline;
	}
  section.top_sponsor .supTtl.ttl--premium h4:before {
    left: -30px;
  }
  section.top_sponsor .supTtl.ttl--premium h4:after {
    right: -30px;
  }
  section.top_sponsor .supTtl.ttl--premium h4 {
    padding: 18px 20px 6px;
  }
  section.top_sponsor .supTtl.ttl--gold,
  section.top_sponsor .supTtl.ttl--silver,
  section.top_sponsor .supTtl.ttl--other {
    margin-top: 40px;
  }
  section.top_sponsor .supTtl.ttl--other.first{
    margin-top: 80px;
  }
  section.top_sponsor div.logo_area.silver > div {
    width: 70%;
  }
  a.sponsorBtn{
    padding: 15px 10px;
    font-size: 24px;
  }
  hr{
    margin-top: 30px;
  }
  #topDate{
    padding-top: 20px;
  }
  h2{
    margin-top: 40px;
    margin-bottom: 5px;
  }
  .newsListWrap h2{
    margin-top: 10px;
  }
  #topAbout{
    padding-top: 10px;
  }
  #topSponsor{
    padding-top: 20px;
  }
  section.top_sponsor div.mar1{
    width: 70%;
  }
  section.top_sponsor div.mar1 p{
    padding: 0;
  }  
}


.boxtxt{
  /* border:2px solid #333; */
  background-color: #ecefec;
  color:#333;
  padding: 20px;
  line-height: 1.6; 
  width: 90%;
  max-width: 800px;
  margin: 0 auto; 
  margin-top:20px;
}
.boxtxt h3{
  font-size: 20px;
}
.boxtxt h5{
  padding-top: 12px;
}
.boxtxt p{
  font-size: 17px;
  line-height: 1.4;
  padding-top: 5px;
}

.indent{
  text-indent: -1em;
  padding-left: 1em;
  display: block;
}



.db{display: block;}
.mt0{margin-top: 0;}
.mb0{margin-bottom: 0;}
.mb10{margin-bottom: 10px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px;}
.mb60{margin-bottom: 60px;}
.uLine{text-decoration: underline;}
.tac{text-align: center;}
.tal{text-align: left;}
.w60p{width: 60%;}
.clrRed{color: red;}
.mar1{margin: 0.75em 0.5em;display: inline-block;}
.mt60{margin-top: 60px;}


.tirasiWrap{
  margin-top: 50px;
  padding-bottom: 0px;

}
.tirasiWrap a{
  display: inline-block;
}
.tirasiWrap a:hover{
  opacity: 0.9;
}
.tirasiWrap .tirasi_image{
  display: block;
  width: 70%;
  max-width: 500px;
  margin: 0 auto;
}

.sponsor_logo{
  border: 1px solid #bbb;
}

.bustourWrap{
  max-width: 800px;
  width: 90%;
  margin: 0 auto;
  margin-top: 50px;
}

.bustourWrap a:hover{
  opacity: 0.8;
}


.boxtxt_wrap2{
  background-color: rgb(15, 80, 142);
  color:#fff;
  padding: 35px 20px;
  line-height: 1.6; 
  width: 100%;
  max-width: 100%;
  margin: 0 auto; 
  margin-top:30px;
  margin-bottom: 20px;
}
.boxtxt_wrap2 .inner{
  width: 98%;
  max-width: 800px;
  margin: 0 auto;
}
.boxtxt_wrap2 .inner .iframeWrap{
	width: 100%;
	margin:0 auto;
	margin-top: 20px;
  margin-bottom: 20px;
  position: relative;
  padding-bottom: 50.25%;
  height: 0;
  overflow: hidden;  
}
.boxtxt_wrap2 .inner .iframeWrap iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.boxtxt_wrap2 p{
line-height: 1.45;
margin-bottom: 10px;
}

.boxtxt_wrap2 .title{
  line-height: 1.5;
  margin-bottom: 0px;
  font-size: 20px;
  margin-top: 15px;
}

.boxtxt_wrap2 a.link{
  color: #b4e2ff;
  display: block;
  text-align: left;
  margin-bottom: 15px;
}
