@charset "UTF-8";

#key .photo {
   background: url("../img/gourmet-map/key.jpg") no-repeat center top/cover;
}

@media only screen and (max-width: 767px) {
   #key .catch {
      background: url("../img/gourmet-map/key-catch-bg.png") no-repeat center top/cover;
      width: 60vw;
      height: 58vw;
      text-align: center;
      position: absolute;
      top: 22vw;
      left: 4vw;
      box-sizing: border-box;
      padding: 7vw 11vw 0 0;
   }

   #key h2 {
      font-weight: 400;
      font-size: 4vw;
      line-height: 1.5;
      letter-spacing: 0.1em;
   }

   #key h3 {
      font-weight: 800;
      font-size: 6.4vw;
      line-height: 1.5;
      letter-spacing: 0.05em;
      padding-top: 6vw;
   }
}

@media only screen and (min-width: 768px) {
   #key .photo {
      margin-left: 0;
   }

   #key .catch {
      background: url("../img/gourmet-map/key-catch-bg.png") no-repeat center top/cover;
      width: 485px;
      height: 470px;
      text-align: center;
      position: absolute;
      top: 100px;
      left: 7.8%;
      box-sizing: border-box;
      padding: 80px 80px 0 0;
   }

   #key h2 {
      font-weight: 400;
      font-size: 24px;
      line-height: 36px;
      letter-spacing: 0.1em;
   }

   #key h3 {
      font-weight: 800;
      font-size: 48px;
      line-height: 76px;
      letter-spacing: 0.05em;
      padding-top: 57px;
   }
}

.txt {
   text-align: start;
}

@media only screen and (max-width: 767px) {
   .txt br {
      display: none;
   }
}

@media only screen and (min-width: 768px) {
   .txt-c .txt {
      text-align: center;
   }
}

#sec1 {
   position: relative;
}

@media only screen and (max-width: 767px) {
   #sec1 {
      padding: 36vw 0 44vw;
   }

   #sec1 .wrap-sp {
      width: 100%;
      position: static;
   }

   #sec1 .photo {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1;
   }

   #sec1 .photo .img1 {
      width: 40vw;
      position: absolute;
      top: 4vw;
      right: 4vw;
   }

   #sec1 .photo .img2 {
      width: 40vw;
      position: absolute;
      bottom: 12vw;
      right: 4vw;
   }

   #sec1 .photo .img3 {
      width: 40vw;
      position: absolute;
      bottom: 0;
      left: 4vw;
   }
}

@media only screen and (min-width: 768px) {
   #sec1 {
      padding: 110px 0 50px;
   }

   #sec1 .txt-c {
      width: 92%;
      font-weight: 400;
      font-size: 18px;
      line-height: 42px;
      letter-spacing: 0.1em;
      padding: 77px 0 240px;
      text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff;
      position: relative;
      z-index: 1;
   }

   #sec1 .photo {
      width: 100%;
      max-width: 1200px;
      height: 525px;
      position: absolute;
      top: 110px;
      left: 50%;
      transform: translateX(-50%);
   }

   #sec1 .photo .img1 {
      position: absolute;
      top: 0;
      right: 5%;
   }

   #sec1 .photo .img2 {
      position: absolute;
      bottom: 75px;
      right: 12%;
   }

   #sec1 .photo .img3 {
      position: absolute;
      bottom: 0;
      left: 0;
   }
}

#kashimo,
#nakatsugawa {
   position: relative;
}

@media only screen and (max-width: 767px) {

   #kashimo,
   #nakatsugawa {
      padding: 0 0 20vw;
   }

   #kashimo h2,
   #nakatsugawa h2 {
      border: 1px solid #222;
      text-align: center;
      font-weight: 700;
      font-size: 6vw;
      letter-spacing: 0.2em;
      line-height: 1.5;
      padding: 6vw 0;
   }

   #kashimo .block,
   #nakatsugawa .block {
      padding: 12vw 0;
   }

   #kashimo .block .box,
   #nakatsugawa .block .box {
      padding-top: 12vw;
   }

   #kashimo .block .col1,
   #nakatsugawa .block .col1 {
      display: flex;
      flex-wrap: wrap;
      gap: 12vw 4%;
      padding-bottom: 12vw;
   }

   #kashimo .block .col1 .item,
   #nakatsugawa .block .col1 .item {
      width: 48%;
   }

   #kashimo .block .col1 .no,
   #nakatsugawa .block .col1 .no {
      background-color: #fa2e04;
      color: #fff;
      width: 30px;
      height: 30px;
      line-height: 30px;
      letter-spacing: 0;
      border-radius: 50%;
      text-align: center;
      margin: 0 auto;
   }

   #kashimo .block .col1 h3,
   #nakatsugawa .block .col1 h3 {
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 44px;
      text-align: center;
      font-weight: 400;
      line-height: 22px;
      letter-spacing: 0.05em;
      padding-top: 6px;
   }

   #kashimo .block .col1 .tag,
   #nakatsugawa .block .col1 .tag {
      display: flex;
      justify-content: center;
      gap: 10px;
      text-align: center;
      font-weight: 700;
      font-size: 12px;
      letter-spacing: 0.1em;
      line-height: 25px;
      padding-top: 8px;
   }

   #kashimo .block .col1 .tag span,
   #nakatsugawa .block .col1 .tag span {
      display: inline-block;
      box-sizing: border-box;
      border: 1px solid transparent;
      padding: 0 12px;
   }

   #kashimo .block .col1 .tag span[data-text*="飲食店"],
   #nakatsugawa .block .col1 .tag span[data-text*="飲食店"] {
      background-color: #ffc411;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="カフェ"],
   #kashimo .block .col1 .tag span[data-text*="和菓子"],
   #nakatsugawa .block .col1 .tag span[data-text*="カフェ"],
   #nakatsugawa .block .col1 .tag span[data-text*="和菓子"] {
      background-color: #dee6c4;
      border-color: #94a657;
   }

   #kashimo .block .col1 .tag span[data-text*="販売所"],
   #nakatsugawa .block .col1 .tag span[data-text*="販売所"] {
      background-color: #f84747;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="文化施設"],
   #nakatsugawa .block .col1 .tag span[data-text*="文化施設"] {
      background-color: #844e00;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="劇場"],
   #nakatsugawa .block .col1 .tag span[data-text*="劇場"] {
      background-color: #471100;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="商業施設"],
   #nakatsugawa .block .col1 .tag span[data-text*="商業施設"] {
      background-color: #747474;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="居酒屋"],
   #nakatsugawa .block .col1 .tag span[data-text*="居酒屋"] {
      background-color: #ead6cf;
      border-color: #471100;
   }

   #kashimo .block .col1 .tag span[data-text*="和食"],
   #nakatsugawa .block .col1 .tag span[data-text*="和食"] {
      background-color: #dfcfb8;
      border-color: #804e07;
   }

   #kashimo .block .col1 .tag span[data-text*="名所"],
   #nakatsugawa .block .col1 .tag span[data-text*="名所"] {
      background-color: #95c109;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="観光地"],
   #nakatsugawa .block .col1 .tag span[data-text*="観光地"] {
      background-color: #fa7c00;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="温泉"],
   #nakatsugawa .block .col1 .tag span[data-text*="温泉"] {
      background-color: #0093fa;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="宿泊施設"],
   #nakatsugawa .block .col1 .tag span[data-text*="宿泊施設"] {
      background-color: #0f38a0;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="名産品"],
   #nakatsugawa .block .col1 .tag span[data-text*="名産品"] {
      background-color: #4cb300;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="タグ"],
   #nakatsugawa .block .col1 .tag span[data-text*="タグ"] {
      background-color: #ababab;
      color: #fff;
      border-color: #222;
   }

   #kashimo .block .col1 .tag span[data-text*="タグタグ"],
   #nakatsugawa .block .col1 .tag span[data-text*="タグタグ"] {
      background-color: #fff;
      border-color: #222;
      color: #222;
   }

   #kashimo .block .col1 .tag span[data-text*="ゴルフ場"],
   #nakatsugawa .block .col1 .tag span[data-text*="ゴルフ場"] {
      background-color: #475c00;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="スポーツ施設"],
   #nakatsugawa .block .col1 .tag span[data-text*="スポーツ施設"] {
      background-color: #1f8300;
      color: #fff;
   }

   #kashimo .block .col1 .slider-fade,
   #nakatsugawa .block .col1 .slider-fade {
      margin-top: 30px;
   }

   #kashimo .block .col1 .text,
   #nakatsugawa .block .col1 .text {
      height: 180px;
      overflow: hidden;
      font-size: 14px;
      line-height: 24px;
      letter-spacing: 0;
      padding-top: 28px;
      position: relative;
      transition: all 0.3s linear;
   }

   #kashimo .block .col1 .text:after,
   #nakatsugawa .block .col1 .text:after {
      content: '';
      width: 100%;
      height: 100%;
      background: linear-gradient(to bottom, transparent, #fff);
      position: absolute;
      bottom: 0;
      left: 0;
      transition: all 0.1s linear;
   }

   #kashimo .block .col1 .text.more,
   #nakatsugawa .block .col1 .text.more {
      height: auto;
   }

   #kashimo .block .col1 .text.more:after,
   #nakatsugawa .block .col1 .text.more:after {
      opacity: 0;
   }

   #kashimo .block .col1 h4,
   #nakatsugawa .block .col1 h4 {
      font-size: 16px;
      line-height: 24px;
      letter-spacing: 0.1em;
      text-align: center;
   }

   #kashimo .block .col1 h4+p,
   #nakatsugawa .block .col1 h4+p {
      padding-top: 10px;
   }

   #kashimo .block .col1 dl,
   #nakatsugawa .block .col1 dl {
      letter-spacing: 0.1em;
      line-height: 18px;
      padding-top: 24px;
   }

   #kashimo .block .col1 dl+dl,
   #nakatsugawa .block .col1 dl+dl {
      padding-top: 17px;
   }

   #kashimo .block .col1 dl dd a,
   #nakatsugawa .block .col1 dl dd a {
      display: inline-block;
      border-bottom: 1px solid;
   }

   #kashimo .block .col1 dl dd a:hover,
   #nakatsugawa .block .col1 dl dd a:hover {
      border-color: transparent;
   }

   #kashimo .block .col1 .url,
   #nakatsugawa .block .col1 .url {
      padding-top: 15px;
   }

   #kashimo .block .col1 .url a,
   #nakatsugawa .block .col1 .url a {
      display: inline-block;
      border-bottom: 1px solid transparent;
   }

   #kashimo .block .col1 .url a:hover,
   #nakatsugawa .block .col1 .url a:hover {
      border-color: #222;
   }

   #kashimo .block .col1 .readmore,
   #nakatsugawa .block .col1 .readmore {
      text-align: center;
      font-size: 14px;
      letter-spacing: 0.2em;
      border-bottom: 1px solid #222;
      position: relative;
      padding: 5px 0;
      margin-top: 2px;
      cursor: pointer;
   }

   #kashimo .block .col1 .readmore:after,
   #nakatsugawa .block .col1 .readmore:after {
      content: "+";
      font-size: 30px;
      line-height: 1;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translateY(-50%);
   }

   #kashimo .block .col1 .readmore.less:after,
   #nakatsugawa .block .col1 .readmore.less:after {
      content: "−";
   }

   #kashimo .block .col2 .item,
   #nakatsugawa .block .col2 .item {
      padding-bottom: 60px;
   }

   #kashimo .block .col2 .item:last-child,
   #nakatsugawa .block .col2 .item:last-child {
      padding-bottom: 0;
   }

   #kashimo .block .col2 .no,
   #nakatsugawa .block .col2 .no {
      background-color: #ba11d8;
      color: #fff;
      width: 30px;
      height: 30px;
      line-height: 30px;
      letter-spacing: 0;
      border-radius: 50%;
      text-align: center;
      margin: 0 auto;
   }

   #kashimo .block .col2 .no.b,
   #nakatsugawa .block .col2 .no.b {
      background-color: #c0c0c0;
      color: #c0c0c0;
   }

   #kashimo .block .col2 .no.c,
   #nakatsugawa .block .col2 .no.c {
      background-color: #222;
      color: #222;
   }

   #kashimo .block .col2 h3,
   #nakatsugawa .block .col2 h3 {
      text-align: center;
      font-weight: 400;
      line-height: 22px;
      letter-spacing: 0.1em;
      padding-top: 7px;
   }

   #kashimo .block .col2 .tag,
   #nakatsugawa .block .col2 .tag {
      display: flex;
      justify-content: center;
      gap: 10px;
      text-align: center;
      font-weight: 700;
      font-size: 12px;
      letter-spacing: 0.1em;
      line-height: 25px;
      padding-top: 15px;
   }

   #kashimo .block .col2 .tag span,
   #nakatsugawa .block .col2 .tag span {
      display: inline-block;
      box-sizing: border-box;
      border: 1px solid transparent;
      padding: 0 12px;
   }

   #kashimo .block .col2 .tag span[data-text*="名所"],
   #nakatsugawa .block .col2 .tag span[data-text*="名所"] {
      background-color: #95c109;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="観光地"],
   #nakatsugawa .block .col2 .tag span[data-text*="観光地"] {
      background-color: #fa7c00;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="温泉"],
   #nakatsugawa .block .col2 .tag span[data-text*="温泉"] {
      background-color: #0093fa;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="宿泊施設"],
   #nakatsugawa .block .col2 .tag span[data-text*="宿泊施設"] {
      background-color: #0f38a0;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="タグ"],
   #nakatsugawa .block .col2 .tag span[data-text*="タグ"] {
      background-color: #fffac8;
      color: #222;
      border-color: #222;
   }

   #kashimo .block .col2 .tag span[data-text*="タグタグ"],
   #nakatsugawa .block .col2 .tag span[data-text*="タグタグ"] {
      background-color: #8b8b8b;
      color: #fff;
      border-color: #222;
   }

   #kashimo .block .col2 .tag span[data-text*="名産品"],
   #nakatsugawa .block .col2 .tag span[data-text*="名産品"] {
      background-color: #4cb300;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="飲食店"],
   #nakatsugawa .block .col2 .tag span[data-text*="飲食店"] {
      background-color: #ffc411;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="焼肉"],
   #nakatsugawa .block .col2 .tag span[data-text*="焼肉"] {
      background-color: #222;
      color: #fff;
   }

   #kashimo .block .col2 .d-flex,
   #nakatsugawa .block .col2 .d-flex {
      gap: 4%;
      padding-top: 28px;
   }

   #kashimo .block .col2 .slider-fade,
   #nakatsugawa .block .col2 .slider-fade {
      width: 48%;
   }

   #kashimo .block .col2 .text,
   #nakatsugawa .block .col2 .text {
      width: 48%;
      height: 42vw;
      font-size: 14px;
      line-height: 24px;
      letter-spacing: 0;
      overflow: hidden;
      position: relative;
      transition: all 0.3s linear;
   }

   #kashimo .block .col2 .text:after,
   #nakatsugawa .block .col2 .text:after {
      content: '';
      width: 100%;
      height: 100%;
      background: linear-gradient(to bottom, transparent, #fff);
      position: absolute;
      bottom: 0;
      left: 0;
      transition: all 0.1s linear;
   }

   #kashimo .block .col2 .text.more,
   #nakatsugawa .block .col2 .text.more {
      height: auto;
   }

   #kashimo .block .col2 .text.more:after,
   #nakatsugawa .block .col2 .text.more:after {
      opacity: 0;
   }

   #kashimo .block .col2 h4,
   #nakatsugawa .block .col2 h4 {
      font-size: 16px;
      line-height: 24px;
      letter-spacing: 0.1em;
      text-align: center;
   }

   #kashimo .block .col2 h4+p,
   #nakatsugawa .block .col2 h4+p {
      padding-top: 10px;
   }

   #kashimo .block .col2 dl,
   #nakatsugawa .block .col2 dl {
      letter-spacing: 0.1em;
      line-height: 18px;
      padding-top: 24px;
   }

   #kashimo .block .col2 dl+dl,
   #nakatsugawa .block .col2 dl+dl {
      padding-top: 17px;
   }

   #kashimo .block .col2 dl dd a,
   #nakatsugawa .block .col2 dl dd a {
      display: inline-block;
      border-bottom: 1px solid;
   }

   #kashimo .block .col2 dl dd a:hover,
   #nakatsugawa .block .col2 dl dd a:hover {
      border-color: transparent;
   }

   #kashimo .block .col2 .url,
   #nakatsugawa .block .col2 .url {
      padding-top: 15px;
   }

   #kashimo .block .col2 .url a,
   #nakatsugawa .block .col2 .url a {
      display: inline-block;
      border-bottom: 1px solid transparent;
   }

   #kashimo .block .col2 .url a:hover,
   #nakatsugawa .block .col2 .url a:hover {
      border-color: #222;
   }

   #kashimo .block .col2 .readmore,
   #nakatsugawa .block .col2 .readmore {
      text-align: center;
      font-size: 14px;
      letter-spacing: 0.2em;
      border-bottom: 1px solid #222;
      position: relative;
      padding: 5px 0;
      cursor: pointer;
   }

   #kashimo .block .col2 .readmore:after,
   #nakatsugawa .block .col2 .readmore:after {
      content: "+";
      font-size: 30px;
      line-height: 1;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translateY(-50%);
   }

   #kashimo .block .col2 .readmore.less:after,
   #nakatsugawa .block .col2 .readmore.less:after {
      content: "−";
   }

   #kashimo .block1,
   #nakatsugawa .block1 {
      border: 1px solid #222;
      padding: 8vw 4vw;
   }

   #kashimo .block1 h3,
   #nakatsugawa .block1 h3 {
      font-weight: 400;
      letter-spacing: 0.1em;
      text-align: center;
   }

   #kashimo .block1 .box,
   #nakatsugawa .block1 .box {
      display: flex;
      flex-wrap: wrap;
      gap: 4vw 4%;
      padding-top: 4vw;
   }

   #kashimo .block1 .box .slider-fade,
   #nakatsugawa .block1 .box .slider-fade {
      width: 100%;
   }

   #kashimo .block1 .box .text,
   #nakatsugawa .block1 .box .text {
      width: 100%;
      font-size: 14px;
      letter-spacing: 0;
      line-height: 24px;
   }

   #kashimo .block1 .box h4,
   #nakatsugawa .block1 .box h4 {
      font-size: 16px;
      letter-spacing: 0.1em;
      text-align: center;
   }

   #kashimo .block1 .box .txt,
   #nakatsugawa .block1 .box .txt {
      padding-top: 15px;
   }

   #kashimo .block1 .box dl,
   #nakatsugawa .block1 .box dl {
      letter-spacing: 0.1em;
      line-height: 18px;
      padding-top: 24px;
   }

   #kashimo .block1 .box dl+dl,
   #nakatsugawa .block1 .box dl+dl {
      padding-top: 17px;
   }

   #kashimo .block1 .box dl dd a,
   #nakatsugawa .block1 .box dl dd a {
      display: inline-block;
      border-bottom: 1px solid;
   }

   #kashimo .block1 .box dl dd a:hover,
   #nakatsugawa .block1 .box dl dd a:hover {
      border-color: transparent;
   }

   #kashimo .block1 .box .url,
   #nakatsugawa .block1 .box .url {
      padding-top: 15px;
   }

   #kashimo {
      padding-top: 20vw;
   }
}

@media only screen and (min-width: 768px) {

   #kashimo,
   #nakatsugawa {
      padding: 0 4% 200px;
   }

   #kashimo .wrap-sp,
   #nakatsugawa .wrap-sp {
      position: relative;
   }

   #kashimo h2,
   #nakatsugawa h2 {
      border: 1px solid #222;
      text-align: center;
      font-weight: 700;
      font-size: 30px;
      letter-spacing: 0.2em;
      line-height: 36px;
      padding: 43px 0 49px;
   }

   #kashimo .block,
   #nakatsugawa .block {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      padding-top: 70px;
      padding-bottom: 100px;
   }

   #kashimo .block .map,
   #nakatsugawa .block .map {
      width: 45.5%;
      max-width: 500px;
   }

   #kashimo .block .map img,
   #nakatsugawa .block .map img {
      position: sticky;
      top: 20px;
   }

   #kashimo .block .box,
   #nakatsugawa .block .box {
      width: 46.4%;
   }

   #kashimo .block .col1,
   #nakatsugawa .block .col1 {
      display: flex;
      flex-wrap: wrap;
      gap: 70px 32px;
      padding-bottom: 70px;
   }

   #kashimo .block .col1 .item,
   #nakatsugawa .block .col1 .item {
      width: calc(50% - 16px);
   }

   #kashimo .block .col1 .no,
   #nakatsugawa .block .col1 .no {
      background-color: #fa2e04;
      color: #fff;
      width: 30px;
      height: 30px;
      line-height: 30px;
      letter-spacing: 0;
      border-radius: 50%;
      text-align: center;
      margin: 0 auto;
   }

   #kashimo .block .col1 h3,
   #nakatsugawa .block .col1 h3 {
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 44px;
      text-align: center;
      font-weight: 400;
      line-height: 22px;
      letter-spacing: 0.1em;
      padding-top: 6px;
   }

   #kashimo .block .col1 .tag,
   #nakatsugawa .block .col1 .tag {
      display: flex;
      justify-content: center;
      gap: 10px;
      text-align: center;
      font-weight: 700;
      font-size: 12px;
      letter-spacing: 0.1em;
      line-height: 25px;
      padding-top: 8px;
   }

   #kashimo .block .col1 .tag span,
   #nakatsugawa .block .col1 .tag span {
      display: inline-block;
      box-sizing: border-box;
      border: 1px solid transparent;
      padding: 0 12px;
   }

   #kashimo .block .col1 .tag span[data-text*="飲食店"],
   #nakatsugawa .block .col1 .tag span[data-text*="飲食店"] {
      background-color: #ffc411;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="カフェ"],
   #kashimo .block .col1 .tag span[data-text*="和菓子"],
   #nakatsugawa .block .col1 .tag span[data-text*="カフェ"],
   #nakatsugawa .block .col1 .tag span[data-text*="和菓子"] {
      background-color: #dee6c4;
      border-color: #94a657;
   }

   #kashimo .block .col1 .tag span[data-text*="販売所"],
   #nakatsugawa .block .col1 .tag span[data-text*="販売所"] {
      background-color: #f84747;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="文化施設"],
   #nakatsugawa .block .col1 .tag span[data-text*="文化施設"] {
      background-color: #844e00;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="劇場"],
   #nakatsugawa .block .col1 .tag span[data-text*="劇場"] {
      background-color: #471100;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="商業施設"],
   #nakatsugawa .block .col1 .tag span[data-text*="商業施設"] {
      background-color: #747474;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="居酒屋"],
   #nakatsugawa .block .col1 .tag span[data-text*="居酒屋"] {
      background-color: #ead6cf;
      border-color: #471100;
   }

   #kashimo .block .col1 .tag span[data-text*="和食"],
   #nakatsugawa .block .col1 .tag span[data-text*="和食"] {
      background-color: #dfcfb8;
      border-color: #804e07;
   }

   #kashimo .block .col1 .tag span[data-text*="名所"],
   #nakatsugawa .block .col1 .tag span[data-text*="名所"] {
      background-color: #95c109;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="観光地"],
   #nakatsugawa .block .col1 .tag span[data-text*="観光地"] {
      background-color: #fa7c00;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="温泉"],
   #nakatsugawa .block .col1 .tag span[data-text*="温泉"] {
      background-color: #0093fa;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="宿泊施設"],
   #nakatsugawa .block .col1 .tag span[data-text*="宿泊施設"] {
      background-color: #0f38a0;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="名産品"],
   #nakatsugawa .block .col1 .tag span[data-text*="名産品"] {
      background-color: #4cb300;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="タグ"],
   #nakatsugawa .block .col1 .tag span[data-text*="タグ"] {
      background-color: #ababab;
      color: #fff;
      border-color: #222;
   }

   #kashimo .block .col1 .tag span[data-text*="タグタグ"],
   #nakatsugawa .block .col1 .tag span[data-text*="タグタグ"] {
      background-color: #fff;
      border-color: #222;
      color: #222;
   }

   #kashimo .block .col1 .tag span[data-text*="ゴルフ場"],
   #nakatsugawa .block .col1 .tag span[data-text*="ゴルフ場"] {
      background-color: #475c00;
      color: #fff;
   }

   #kashimo .block .col1 .tag span[data-text*="スポーツ施設"],
   #nakatsugawa .block .col1 .tag span[data-text*="スポーツ施設"] {
      background-color: #1f8300;
      color: #fff;
   }

   #kashimo .block .col1 .slider-fade,
   #nakatsugawa .block .col1 .slider-fade {
      margin-top: 30px;
   }

   #kashimo .block .col1 .text,
   #nakatsugawa .block .col1 .text {
      height: 180px;
      overflow: hidden;
      font-size: 14px;
      line-height: 24px;
      letter-spacing: 0;
      padding-top: 28px;
      position: relative;
      transition: all 0.3s linear;
   }

   #kashimo .block .col1 .text:after,
   #nakatsugawa .block .col1 .text:after {
      content: '';
      width: 100%;
      height: 100%;
      background: linear-gradient(to bottom, transparent, #fff);
      position: absolute;
      bottom: 0;
      left: 0;
      transition: all 0.1s linear;
   }

   #kashimo .block .col1 .text.more,
   #nakatsugawa .block .col1 .text.more {
      height: auto;
   }

   #kashimo .block .col1 .text.more:after,
   #nakatsugawa .block .col1 .text.more:after {
      opacity: 0;
   }

   #kashimo .block .col1 h4,
   #nakatsugawa .block .col1 h4 {
      font-size: 16px;
      line-height: 24px;
      letter-spacing: 0.1em;
      text-align: center;
   }

   #kashimo .block .col1 h4+p,
   #nakatsugawa .block .col1 h4+p {
      padding-top: 10px;
   }

   #kashimo .block .col1 dl,
   #nakatsugawa .block .col1 dl {
      letter-spacing: 0.1em;
      line-height: 18px;
      padding-top: 24px;
   }

   #kashimo .block .col1 dl+dl,
   #nakatsugawa .block .col1 dl+dl {
      padding-top: 17px;
   }

   #kashimo .block .col1 dl dd a,
   #nakatsugawa .block .col1 dl dd a {
      display: inline-block;
      border-bottom: 1px solid;
   }

   #kashimo .block .col1 dl dd a:hover,
   #nakatsugawa .block .col1 dl dd a:hover {
      border-color: transparent;
   }

   #kashimo .block .col1 .url,
   #nakatsugawa .block .col1 .url {
      padding-top: 15px;
   }

   #kashimo .block .col1 .url a,
   #nakatsugawa .block .col1 .url a {
      display: inline-block;
      border-bottom: 1px solid transparent;
   }

   #kashimo .block .col1 .url a:hover,
   #nakatsugawa .block .col1 .url a:hover {
      border-color: #222;
   }

   #kashimo .block .col1 .readmore,
   #nakatsugawa .block .col1 .readmore {
      text-align: center;
      font-size: 14px;
      letter-spacing: 0.2em;
      border-bottom: 1px solid #222;
      position: relative;
      padding: 5px 0;
      margin-top: 2px;
      cursor: pointer;
   }

   #kashimo .block .col1 .readmore:after,
   #nakatsugawa .block .col1 .readmore:after {
      content: "+";
      font-size: 30px;
      line-height: 1;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translateY(-50%);
   }

   #kashimo .block .col1 .readmore.less:after,
   #nakatsugawa .block .col1 .readmore.less:after {
      content: "−";
   }

   #kashimo .block .col2 .item,
   #nakatsugawa .block .col2 .item {
      padding-bottom: 60px;
   }

   #kashimo .block .col2 .item:last-child,
   #nakatsugawa .block .col2 .item:last-child {
      padding-bottom: 0;
   }

   #kashimo .block .col2 .no,
   #nakatsugawa .block .col2 .no {
      background-color: #ba11d8;
      color: #fff;
      width: 30px;
      height: 30px;
      line-height: 30px;
      letter-spacing: 0;
      border-radius: 50%;
      text-align: center;
      margin: 0 auto;
   }

   #kashimo .block .col2 .no.b,
   #nakatsugawa .block .col2 .no.b {
      background-color: #c0c0c0;
      color: #c0c0c0;
   }

   #kashimo .block .col2 .no.c,
   #nakatsugawa .block .col2 .no.c {
      background-color: #222;
      color: #222;
   }

   #kashimo .block .col2 h3,
   #nakatsugawa .block .col2 h3 {
      text-align: center;
      font-weight: 400;
      line-height: 22px;
      letter-spacing: 0.1em;
      padding-top: 7px;
   }

   #kashimo .block .col2 .tag,
   #nakatsugawa .block .col2 .tag {
      display: flex;
      justify-content: center;
      gap: 10px;
      text-align: center;
      font-weight: 700;
      font-size: 12px;
      letter-spacing: 0.1em;
      line-height: 25px;
      padding-top: 15px;
   }

   #kashimo .block .col2 .tag span,
   #nakatsugawa .block .col2 .tag span {
      display: inline-block;
      box-sizing: border-box;
      border: 1px solid transparent;
      padding: 0 12px;
   }

   #kashimo .block .col2 .tag span[data-text*="名所"],
   #nakatsugawa .block .col2 .tag span[data-text*="名所"] {
      background-color: #95c109;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="観光地"],
   #nakatsugawa .block .col2 .tag span[data-text*="観光地"] {
      background-color: #fa7c00;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="温泉"],
   #nakatsugawa .block .col2 .tag span[data-text*="温泉"] {
      background-color: #0093fa;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="宿泊施設"],
   #nakatsugawa .block .col2 .tag span[data-text*="宿泊施設"] {
      background-color: #0f38a0;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="タグ"],
   #nakatsugawa .block .col2 .tag span[data-text*="タグ"] {
      background-color: #fffac8;
      color: #222;
      border-color: #222;
   }

   #kashimo .block .col2 .tag span[data-text*="タグタグ"],
   #nakatsugawa .block .col2 .tag span[data-text*="タグタグ"] {
      background-color: #8b8b8b;
      color: #fff;
      border-color: #222;
   }

   #kashimo .block .col2 .tag span[data-text*="名産品"],
   #nakatsugawa .block .col2 .tag span[data-text*="名産品"] {
      background-color: #4cb300;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="飲食店"],
   #nakatsugawa .block .col2 .tag span[data-text*="飲食店"] {
      background-color: #ffc411;
      color: #fff;
   }

   #kashimo .block .col2 .tag span[data-text*="焼肉"],
   #nakatsugawa .block .col2 .tag span[data-text*="焼肉"] {
      background-color: #222;
      color: #fff;
   }

   #kashimo .block .col2 .d-flex,
   #nakatsugawa .block .col2 .d-flex {
      gap: 30px;
      padding-top: 28px;
   }

   #kashimo .block .col2 .slider-fade,
   #nakatsugawa .block .col2 .slider-fade {
      width: calc(50% - 15px);
   }

   #kashimo .block .col2 .text,
   #nakatsugawa .block .col2 .text {
      width: calc(50% - 15px);
      height: 240px;
      font-size: 14px;
      line-height: 24px;
      letter-spacing: 0;
      overflow: hidden;
      position: relative;
      transition: all 0.3s linear;
   }

   #kashimo .block .col2 .text:after,
   #nakatsugawa .block .col2 .text:after {
      content: '';
      width: 100%;
      height: 100%;
      background: linear-gradient(to bottom, transparent, #fff);
      position: absolute;
      bottom: 0;
      left: 0;
      transition: all 0.1s linear;
   }

   #kashimo .block .col2 .text.more,
   #nakatsugawa .block .col2 .text.more {
      height: auto;
   }

   #kashimo .block .col2 .text.more:after,
   #nakatsugawa .block .col2 .text.more:after {
      opacity: 0;
   }

   #kashimo .block .col2 h4,
   #nakatsugawa .block .col2 h4 {
      font-size: 16px;
      line-height: 24px;
      letter-spacing: 0.1em;
      text-align: center;
   }

   #kashimo .block .col2 h4+p,
   #nakatsugawa .block .col2 h4+p {
      padding-top: 10px;
   }

   #kashimo .block .col2 dl,
   #nakatsugawa .block .col2 dl {
      letter-spacing: 0.1em;
      line-height: 18px;
      padding-top: 24px;
   }

   #kashimo .block .col2 dl+dl,
   #nakatsugawa .block .col2 dl+dl {
      padding-top: 17px;
   }

   #kashimo .block .col2 dl dd a,
   #nakatsugawa .block .col2 dl dd a {
      display: inline-block;
      border-bottom: 1px solid;
   }

   #kashimo .block .col2 dl dd a:hover,
   #nakatsugawa .block .col2 dl dd a:hover {
      border-color: transparent;
   }

   #kashimo .block .col2 .url,
   #nakatsugawa .block .col2 .url {
      padding-top: 15px;
   }

   #kashimo .block .col2 .url a,
   #nakatsugawa .block .col2 .url a {
      display: inline-block;
      border-bottom: 1px solid transparent;
   }

   #kashimo .block .col2 .url a:hover,
   #nakatsugawa .block .col2 .url a:hover {
      border-color: #222;
   }

   #kashimo .block .col2 .readmore,
   #nakatsugawa .block .col2 .readmore {
      text-align: center;
      font-size: 14px;
      letter-spacing: 0.2em;
      border-bottom: 1px solid #222;
      position: relative;
      padding: 5px 0;
      cursor: pointer;
   }

   #kashimo .block .col2 .readmore:after,
   #nakatsugawa .block .col2 .readmore:after {
      content: "+";
      font-size: 30px;
      line-height: 1;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translateY(-50%);
   }

   #kashimo .block .col2 .readmore.less:after,
   #nakatsugawa .block .col2 .readmore.less:after {
      content: "−";
   }

   #kashimo .block1,
   #nakatsugawa .block1 {
      border: 1px solid #222;
      padding: 40px 50px 46px;
   }

   #kashimo .block1 h3,
   #nakatsugawa .block1 h3 {
      font-weight: 400;
      letter-spacing: 0.1em;
      text-align: center;
   }

   #kashimo .block1 .box,
   #nakatsugawa .block1 .box {
      display: flex;
      flex-wrap: wrap;
      gap: 50px;
      padding-top: 42px;
   }

   #kashimo .block1 .box .slider-fade,
   #nakatsugawa .block1 .box .slider-fade {
      width: 240px;
      padding-top: 8px;
   }

   #kashimo .block1 .box .text,
   #nakatsugawa .block1 .box .text {
      width: calc(100% - 290px);
      font-size: 14px;
      letter-spacing: 0;
      line-height: 24px;
   }

   #kashimo .block1 .box h4,
   #nakatsugawa .block1 .box h4 {
      font-size: 16px;
      letter-spacing: 0.1em;
      text-align: center;
   }

   #kashimo .block1 .box .txt,
   #nakatsugawa .block1 .box .txt {
      padding-top: 15px;
   }

   #kashimo .block1 .box dl,
   #nakatsugawa .block1 .box dl {
      letter-spacing: 0.1em;
      line-height: 18px;
      padding-top: 24px;
   }

   #kashimo .block1 .box dl+dl,
   #nakatsugawa .block1 .box dl+dl {
      padding-top: 17px;
   }

   #kashimo .block1 .box dl dd a,
   #nakatsugawa .block1 .box dl dd a {
      display: inline-block;
      border-bottom: 1px solid;
   }

   #kashimo .block1 .box dl dd a:hover,
   #nakatsugawa .block1 .box dl dd a:hover {
      border-color: transparent;
   }

   #kashimo .block1 .box .url,
   #nakatsugawa .block1 .box .url {
      padding-top: 15px;
   }

   #nakatsugawa {
      padding-bottom: 103px;
   }

   #nakatsugawa .block .col1 .no {
      background-color: #044afa;
   }
}

@media only screen and (min-width: 1400px) {

   #kashimo .wrap-sp,
   #nakatsugawa .wrap-sp {
      width: 91.7%;
   }
}


.btn_gourmet7rin a{
   margin: -30px auto 40px;
   width: 86%;
   display: block;
   color:#fff;
   text-align: center;
   font-size: 22px;
   font-weight: bold;
   line-height: 32px;
   letter-spacing: 2px;
   background-color: #d52a00;
   border-radius: 0px;
   padding: 25px 0;
   text-decoration: none;
   box-sizing:border-box;
}
@media only screen and (min-width: 768px) {
   .btn_gourmet7rin a{
   margin: -100px auto 80px;
   width: 500px;
   display: block;
   text-align: center;
   font-size: 30px;
   line-height: 42px;
   border-radius: 0px;
   padding: 35px 0;
   text-decoration: none;
   box-sizing: border-box;
   letter-spacing: 2px;
   }
}

.news_img{
   width: 80%;
   margin: -50px auto 0;
}
@media only screen and (min-width: 768px) {
   .news_img{
   width: 500px;
   margin: -100px auto 0;
}
}	

.news_txtlink{
   text-align: center;
   font-weight: bold;
   text-decoration: underline;
   font-size: 17px;
   margin-bottom: 60px;
}
@media only screen and (min-width: 768px) {
.news_txtlink{
   font-size: 20px;
   margin-bottom: 80px;
}
}