@charset "UTF-8";

/* リセット */
body,
div,
p,
blockquote,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
li,
dl,
dt,
dd,
table,
caption,
tr,
td,
th,
address,
header,
footer,
nav,
article,
section,
aside,
figure {
  font-weight: normal;
  margin: 0px;
  padding: 0px;
}
body,
div,
p,
blockquote,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
dt,
dd,
address,
header,
footer,
nav,
article,
section,
aside,
figure {
  display: block;
}
ul,
ol {
  list-style-type: none;
}
img {
  border: none;
  vertical-align: middle;
}
a {
  text-decoration: none;
}

/* ユーティリティー */
.flt-l {
  float: left;
}
.flt-r {
  float: right;
}
.clrb {
  clear: both;
}
.fgo {
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Osaka, "平成ゴシック", "メイリオ", "Meiryo", Helvetica, Arial, Verdana, "ＭＳ Ｐゴシック", "MS UI Gothic", sans-serif;
}
.fmin {
  font-family: "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "平成明朝", "細明朝", "ＭＳ Ｐ明朝", Times, serif;
}
.kiwi {
  font-family: "kiwi-maru", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.clearfix:after {
  clear: both;
  content: ".";
  display: block;
  font-size: 0px;
  line-height: 0px;
  height: 0px;
  visibility: hidden;
  width: 0px;
}
* html .clearfix {
  zoom: 1;
} /* IE6 */
*:first-child + html .clearfix {
  zoom: 1;
} /* IE7 */

article {
  width: 100%;
}
.mover:hover,
a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -ms-filter: alpha(opacity=60);
}

body {
  border-top: 4px solid #997f71;
  color: #000;
  font-family: "Arial", "Hiragino Kaku Gothic ProN", Meiryo, "MS PGothic", Sans-serif;
  font-size: 75%;
  line-height: 1.67;
}

.page {
  height: auto;
  margin: 0 auto;
  width: 1235px;
}
.line {
  display: block;
}

.nolink {
  cursor: default;
  pointer-events: none;
}

/*ヘッダー*/
header div.page {
  position: relative;
}
h1 {
  text-align: center;
  padding: 35px 20px;
  width: 100%;
  box-sizing: border-box;
}
h1 img {
  height: auto;
  width: 100%;
  max-width: 317px;
}
#menubtn {
  display: none;
}

/*グローバルナビ*/
#glovalnavi {
  margin: 0 auto 47px auto;
}
#glovalnavi ul {
  display: flex;
  justify-content: space-between;
}
#glovalnavi li {
  text-align: center;
  /*width:15%;
	float:left;
	margin-right:2%;*/
  width: calc((99.9% - 90px) / 7);
}
#glovalnavi li.last {
  margin-right: 0;
}
#glovalnavi li a {
  width: 100%;
  height: 20px;
  border-bottom: 1px solid #dedede;
  display: block;
  padding: 20px 0;
  font-size: 116%;
  color: #000;
}
#glovalnavi li a:hover {
  background-color: #000;
  color: #fff;
}
#glovalnavi li.np a {
  background-color: #000;
  color: #fff;
}

/*トップページ*/
article#index {
  background-color: #f0f0f0;
}
#index h2 {
  width: 100%;
  margin-bottom: 40px;
}
#index h2 .img-s {
  display: none;
}
#index h2 img {
  width: 100%;
  height: auto;
}
#index h3 {
  width: 27%;
  float: left;
  margin-bottom: 10px;
}
#index h3 img {
  width: 100%;
  height: auto;
  padding: 12px 0;
}
a.morebtn {
  width: 120px;
  height: 20px;
  background: url(../imgs/common/arrow-r.png) center right no-repeat;
  background-size: contain;
  color: #000;
  display: block;
  float: right;
  padding: 10px 0;
}
#index section {
  margin-bottom: 60px;
}
#index section#sec01 {
  margin-bottom: 40px;
}
#index section#sec04 {
  padding-bottom: 60px;
  margin-bottom: 0;
}
#index section#sec05 {
  margin-bottom: 0;
}
#index section.mainbk {
  position: relative;
}
#index section.mainbk .mainbk__imgbk {
  display: flex;
  flex-wrap: wrap;
}
#index section.mainbk .mainbk__imgbk li {
  width: 25%;
}
#index section.mainbk .mainbk__imgbk li img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -o-object-fit: cover;
  object-position: center bottom;
  -o-object-position: center bottom;
}
#index section.mainbk .mainbk__ttl-wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1vw;
  position: absolute;
  top: 2.95vw;
  left: 50%;
  transform: translateX(-50%);
}
#index section.mainbk .mainbk__ttl {
  font-size: clamp(29px, 2.86vw, 55px);
  letter-spacing: 0.2em;
  text-align: center;
  color: #fff;
  text-shadow: 0px 0px 10px rgba(60, 64, 67, 0.6);
  margin: 0;
}
#index section.mainbk .mainbk__txt {
  font-size: clamp(16px, 1.56vw, 30px);
  line-height:1.4;
  text-align: center;
  color: #fff;
  text-shadow: 0px 0px 10px rgba(60, 64, 67, 0.6);
  margin: 0;
}
#index section.mainbk .mainbk__imgbk li,
#index section.mainbk .mainbk__ttl-wrap {
  opacity: 0;
}

#index #sec01 ul li {
  text-align: center;
  width: 19%;
  height: 275px;
  background-color: #fff;
  border: 1px solid #dcdcdc;
  border-radius: 6px;
  box-sizing: border-box;
  float: left;
  padding: 14px;
  margin: 0 1.2% 1.2% 0;
}
#index #sec01 ul li.last {
  margin-right: 0;
}
#index #sec01 ul li figure {
  width: auto;
  margin: 0 0 12px 0;
}
#index #sec01 ul li figure {
  height: 115px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
}
#index #sec01 ul li h4 {
  color: #000000;
  width: auto;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  display: inline-block;
  /* *display: inline;
  *zoom: 1; */
  padding: 2px 6px;
  margin-bottom: 6px;
}
#index #sec01 ul li p {
  text-align: left;
  color: #6a6a6a;
}
#index #sec01 ul li p.date {
  text-align: center;
  font-size: 100%;
}
#index #sec01 ul li a {
  display: block;
}
#index #sec02 h3 {
  float: none;
}

.sliderarea {
  padding: 20px 70px 0 60px;
  background-color: #fff;
  border: 1px solid #dcdcdc;
  border-radius: 6px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
#sec03 .sliderarea {
  padding-bottom: 15px;
}
#sec04 .sliderarea {
  padding-bottom: 15px;
}

#index #sec02 .sliderarea ul li a {
  display: block;
}
#index #sec02 .sliderarea ul li a:hover {
  opacity: 0.8;
}
#index #sec02 .sliderarea ul li figure {
  margin-bottom: 5px;
}
#index #sec02 .sliderarea ul li figcaption {
  font-size: 12px;
  color: #969696;
}

#index #sec03 h3 {
  margin-right: 20px;
}
#index #sec03 #sec03_book,
#index #sec03 #sec03_disc {
  float: left;
  height: 24px;
  margin-top: 8px;
  background-repeat: no-repeat;
  background-position: left top;
  background-size: auto 100%;
}
#index #sec03 #sec03_book {
  padding-left: 40px;
  margin-right: 10px;
  background-image: url(../imgs/index/book_icon.png);
}
#index #sec03 #sec03_disc {
  padding-left: 30px;
  background-image: url(../imgs/index/cd_icon.png);
}
#index #sec03 #sec03_book li,
#index #sec03 #sec03_disc li {
  float: left;
  padding-top: 3px;
}
#index #sec03 #sec03_book li a,
#index #sec03 #sec03_disc li a {
  color: #231815;
  display: block;
}
#index #sec03 #sec03_book li a:after,
#index #sec03 #sec03_disc li a:after {
  content: "　/　";
}
#index #sec03 #sec03_book li:last-child a:after,
#index #sec03 #sec03_disc li:last-child a:after {
  content: "";
}
#index #sec03 #ranking {
  height: 225px;
}

#index #sec03 .sliderarea li {
  border-right: 1px solid #dccbb6;
  margin-right: 25px;
}
#index .rankborder {
  width: 100px;
  float: left;
  padding: 0 25px 0 0;
}
#index .rankimg {
  aspect-ratio: 5/7;
  width: 100px;
  height: 140px;
  margin: 0 auto 35px auto;
}
#index .rankimg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  -o-object-fit: contain;
  object-position: top center;
  -o-object-position: top center;
}
#index .topranknum {
  position: relative;
}
#index .topranknum div {
  position: absolute;
  width: 100px;
  height: 38px;
  top: 145px;
  left: 0;
  color: #9b6b2e;
}
#index .topranknum img {
  position: absolute;
  top: -15px;
  right: -15px;
  width: auto;
  height: 100%;
}
#index .toprank-title {
  font-size: 11px;
  font-weight: bold;
  line-height: 1.4;
  color: #000;
  width: 100px;
  height: 32px;
  overflow: hidden;
  margin: 0 auto 3px auto;
}
#index .toprankdata {
  width: 100px;
  height: 25px;
  color: #6a6a6a;
  margin: 0 auto;
  overflow: hidden;
}

#sec04ttl {
  position: relative;
}
#sec04 h3 {
  float: none;
}
#sec04ttl p {
  font-size: 12px;
  display: block;
  position: absolute;
  top: 22%;
  left: 20%;
}
#index #sec04 .sliderarea ul li {
  width: 140px;
  text-align: center;
  cursor: pointer;
}
#index #sec04 .sliderarea ul li:hover {
  opacity: 0.8;
}
#index #sec04 .sliderarea ul li img {
  width: auto;
  height: 140px;
  padding-bottom: 6px;
  display: inline;
}
#index #sec04 .sliderarea ul li h4 {
  font-weight: bold;
  color: #000;
}
#index #sec04 .sliderarea ul li h4 span {
  font-weight: normal;
  color: #6a6a6a;
}
#index #sec04 .sliderarea ul li a.under {
  text-decoration: underline;
}

#index .slideblk.noslide {
  width: 100%;
  padding: 3%;
}
#index .slideblk.noslide .slidearea {
  overflow-x: auto;
  overflow-y: hidden;
}
.chirashi {
  width: 100%;
  height: 100%;
  padding: 5%;
  display: none;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  top: 0;
  left: 0;
  z-index: 3001;
  text-align: center;
}
#zoomarea {
  width: 100%;
  height: 100%;
  padding: 5%;
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3000;
  display: none;
}
.imgarea {
  width: 100%;
  height: 100%;
  overflow: auto;
  position: relative;
}
.chirashi img {
  width: auto;
  height: 100%;
  display: none;
  /*position:absolute;*/
}
#zoombtn {
  display: none;
  position: fixed;
  bottom: 3%;
  left: 43%;
  z-index: 3001;
}
#zoombtn li {
  width: 50px;
  height: 35px;
  display: inline-block;
  background-color: #000;
  border-radius: 3px;
}
#zoombtn li a {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  line-height: 35px;
  color: #fff;
  display: block;
}
#zoombtn li#pagebtn {
  width: 100px;
}
#chirashi_cls {
  display: none;
}

/*イベント情報バナー*/
#event_bnr_wrap {
	padding-top:30px;
}
#event_bnr_wrap .event_bnr {
	text-align:center;
	display:block;
	width:100%;
	max-width:520px;
	margin:0 auto;
	padding:12px;
	box-sizing:border-box;
	border:2px solid #c9ac6a;
	background-color:#fff;
	transition:all 0.3s;
	position:relative;
}
#event_bnr_wrap .event_bnr::after {
	content:"";
	width:9px;
	height:15px;
	background:url(../imgs/common/event_bnr_arrow.svg) 0 0 no-repeat;
	background-size:contain;
	position:absolute;
	right:17px;
	bottom:13px;
	z-index:1;
}
#event_bnr_wrap .event_bnr img {
	width:70%;
	max-width:360px;
	height:auto;
}
#event_bnr_wrap .event_bnr:hover {
	opacity:1;
	background-color:#fffde5;
}

/*各ページ共通*/
.page_s {
  width: 900px;
  margin: 0 auto;
}
.page_s #maincontent {
  width: 70%;
}
.page_s #side_menu {
  width: 24%;
}

#maincontent {
  width: 860px;
  height: auto;
  float: right;
  margin-bottom: 50px;
  color: #6a6a6a;
}
#pankuzu {
  margin-bottom: 18px;
}
#pankuzu li {
  float: left;
  margin: 0 7px 0 0;
}
#pankuzu li a {
  color: #000;
}
#pankuzu li:first-child:before {
  content: url("../imgs/shop/logo_s.png");
  padding-right: 5px;
  vertical-align: -2px;
}
#pankuzu li:after {
  content: ">";
  padding-left: 7px;
  color: #997f71;
}
#pankuzu li:last-child {
  color: #6a6a6a;
}
#pankuzu li:last-child:after {
  content: "";
}

#side_menu {
  float: left;
  width: 270px;
  height: auto;
  color: #6a6a6a;
}
#side_menu h3 {
  border-bottom: 1px solid #dcdcdc;
  padding-bottom: 10px;
  margin-bottom: 15px;
  font-size: 116%;
  color: #231815;
}
#side_menu ul {
  margin-bottom: 60px;
}
#side_menu ul li a {
  line-height: 2;
  color: #6a6a6a;
}
#side_menu .storelist ul li:before {
  content: "●";
  padding-right: 3px;
}
#side_menu .category ul li {
  font-size: 105%;
  line-height: 2;
}
.col_bl1 {
  color: #395ca2;
}
.col_y1 {
  color: #e6c719;
}
.col_rd1 {
  color: #e61f19;
}
.col_bk {
  color: #000;
}
.col_gr1 {
  color: #005256;
}
.col_rd2 {
  color: #e4004f;
}
.col_y2 {
  color: #fccf00;
}
.col_bl3 {
  color: #363480;
}
.col_bl4 {
  color: #008bd5;
}
.col_gr2 {
  color: #c4d700;
}
.col_bl5 {
  color: #00adba;
}
.col_or {
  color: #f08300;
}

#side_menu .bnrarea ul {
  margin-bottom: 0;
}
#side_menu .bnrarea ul li {
  margin-bottom: 10px;
}
#side_menu .bnrarea ul li a {
  display: block;
  color: #6a6a6a;
}
#side_menu .bnrarea ul img {
  width: 100%;
  height: auto;
}

#side_menu .bnrarea div {
  width: 100%;
  height: auto;
  margin-bottom: 15px;
}

#side_menu .bnrarea div.igpop a img {
  width: 100%;
  height: auto;
}

/* ページトップSNSアイコン */
#snsicon {
  position: absolute;
  top: 15px;
  right: 5px;
}
#snsicon li {
  width: 80px;
  height: 26px;
  float: left;
  margin-right: 5px;
}

#snsicon li:first-child {
  /*2025/08/29追記 */
  display: none;
}

#snsicon li:last-child {
  margin-right: 0;
}
#snsicon li a {
  display: block;
}
#snsicon li img {
  width: 100%;
  height: auto;
}

/*YouTube*/
#ytblk {
  font-size: 0;
  max-width: 165px;
  position: absolute;
  top: 45px;
  right: 5px;
  /*2025/08/29追記 */
  display: none;
}
#ytblk li {
  border: 1px solid #dedede;
}
#ytblk li:first-child {
  margin-bottom: 5px;
}
#ytblk li a {
  text-align: center;
  display: table;
}
#ytblk li p {
  color: #000;
  /*font-size:11px;*/
  font-size: 10px;
  font-weight: bold;
  line-height: 1;
  vertical-align: middle;
  display: table-cell;
  padding: 5px;
}
#ytblk li span {
  vertical-align: middle;
  display: table-cell;
  /*width:45%;*/
  width: 40%;
}
#ytblk li span img {
  width: 100%;
}

/*TN花巻ブログバナー*/
#secbnr {
  font-size: 0;
  text-align: center;
  margin-bottom: 40px;
}
#secbnr .blogblk {
  display: inline-block;
  padding: 15px;
  max-width: 400px;
  border: 3px solid #e95478;
  background-color: #fff;
  box-sizing: border-box;
}
#secbnr .blogblk .imgblk {
  float: left;
  width: calc((99.9% - 20px) * 0.4);
  height: auto;
  margin-right: 20px;
}
#secbnr .blogblk .imgblk img {
  width: 100%;
  height: auto;
}
#secbnr .blogblk .bnr_tx {
  float: left;
  width: calc((99.9% - 20px) * 0.6);
  padding: 2% 0;
}
#secbnr .blogblk .bnr_tx p {
  color: #333;
  font-size: 20px;
  font-weight: bold;
  text-align: left;
  line-height: 1.4;
  -moz-text-shadow: 1px 1px 5px #919191;
  -webkit-text-shadow: 1px 1px 5px #919191;
  text-shadow: 1px 1px 5px #919191;
}
#secbnr .blogblk .bnr_tx p span {
  display: block;
  margin-bottom: 15px;
}

/*ツイッター*/
#sns {
  font-size: 0;
  text-align: center;
}
#sns .tw {
  text-align: left;
  display: inline-block;
  width: calc((99.9% - 30px) / 2);
  max-width: 420px;
  margin-right: 30px;
  margin-bottom: 50px;
  overflow: hidden;
}
#sns .tw.last {
  margin-right: 0;
}
#sns .tw a {
  display: block;
}
#sns .tw h3 {
  font-size: 18px;
  float: none;
  width: 100%;
}
#sns .tw h3:before {
  content: "●";
  font-size: 24px;
}
#sns .tw img {
  width: 100%;
  height: auto;
}

/*インスタ & Youtube*/
#ig,
#youtube {
  max-width: 870px;
  margin: 0 auto 20px;
}
#youtube {
  padding-bottom: 50px;
}
#ig h3,
#youtube h3 {
  font-size: 18px;
  float: none;
  width: 100%;
}
#ig h3:before,
#youtube h3:before {
  content: "●";
  font-size: 24px;
}
.iglist {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.iglist li {
  width: calc((100% - 30px) / 2);
  max-width: 420px;
  margin-bottom: 30px;
}
.iglist li a {
  display: block;
}
.iglist li a img {
  width: 100%;
  height: auto;
}

/*フッター*/
footer {
  padding: 35px 0 15px 0;
}
footer h4 {
  width: 130px;
  height: auto;
  float: left;
  margin-right: 30px;
}
footer h4 img {
  width: 100%;
  height: auto;
}
footer ul {
  float: left;
  padding-top: 4px;
}
footer ul li {
  display: inline-block;
  /* *display: inline;
  *zoom: 1; */
  padding-right: 20px;
}
footer ul li a {
  color: #6a6a6a;
}
footer #footer_rgt {
  float: right;
}
footer #footer_rgt #footer_sns {
  margin-bottom: 5px;
}
footer #footer_rgt #footer_sns #footer_sns_tw {
  float: right;
}
footer #footer_rgt #footer_sns .fb-like {
  float: right;
  margin-right: 10px;
}
footer p {
  font-size: 83%;
  color: #95908f;
}

@media screen and (min-width: 961px) and (max-width: 1235px) {
  .page {
    width: 96%;
  }

  h1 {
    width: 37%;
    margin: 0 auto;
  }
  #glovalnavi li {
    width: 15%;
    margin-right: 2%;
  }
  #glovalnavi li a {
    width: 100%;
  }
  /*各ページ共通*/
  #maincontent {
    width: 70%;
  }
  #side_menu {
    width: 22%;
    height: auto;
  }
  #index #sec01 ul li figure {
    background-size: auto 100%;
  }
  #index #sec03 h3 {
    float: none;
    margin: 0;
  }
  #index #sec03 a.morebtn {
    margin-bottom: 10px;
  }
}

@media screen and (min-width: 769px) and (max-width: 960px) {
  .page {
    width: 96%;
  }
  .page_s {
    width: 96%;
  }

  h1 {
    width: 37%;
    margin: 0 auto;
  }
  #glovalnavi li {
    width: 15%;
    margin-right: 2%;
  }
  #glovalnavi li a {
    width: 100%;
  }
  #index h3 {
    width: 40%;
  }
  #sec04ttl p {
    top: 22%;
    left: 27%;
  }
  #index #sec01 ul li,
  #index #sec01 ul li.last {
    text-align: center;
    width: 24%;
    height: 260px;
    margin: 0 2% 2% 0;
    padding: 1.5%;
  }

  #index #sec01 ul li:nth-child(even) {
    width: 23%;
  }
  #index #sec01 ul li:nth-child(4n) {
    margin-right: 0;
  }
  #index #sec01 ul li {
    display: none;
  }
  #index #sec01 ul li:nth-child(-n + 8) {
    display: block;
  }
  #index #sec01 ul li figure {
    background-size: auto 100%;
  }
  #index #sec03 h3 {
    float: none;
    margin: 0;
  }
  #index #sec03 #sec03_book {
    float: none;
    margin: 0;
  }
  #index #sec03 a.morebtn {
    margin-bottom: 10px;
  }
  /*各ページ共通*/
  #maincontent {
    width: 68%;
  }
  #side_menu {
    width: 22%;
    height: auto;
  }
  #side_menu div.bnrarea {
    font-size: 90%;
  }

  /*TN花巻ブログバナー*/
  #secbnr .blogblk .bnr_tx p {
    font-size: 19px;
  }
}

@media screen and (max-width: 768px) {
  .page {
    height: auto;
    margin: 0 auto;
    width: 96%;
  }
  .line {
    display: block;
  }

  .page_s {
    width: 96%;
  }
  .page_s #maincontent {
    width: 100%;
    float: none;
    margin-bottom: 60px;
  }
  .page_s #side_menu {
    width: 100%;
    float: none;
  }

  header div.page {
    position: relative;
  }

  h1 {
    /*width:45%;*/
    /*margin:20px auto;*/
    padding: 35px 20px 40px;
    position: relative;
    left: -20px;
  }
  #menubtn {
    text-align: center;
    width: 20%;
    /*background-color:#000;*/
    background: rgb(0, 0, 0);

    background: -moz-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 1)), color-stop(100%, rgba(20, 20, 20, 1)));

    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    background: -o-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    background: -ms-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    background: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#141414',GradientType=0 );

    border-radius: 5px;
    display: block;
    /*float:left;*/
    padding: 5px 0;
    /*margin-top:-52px;*/
    font-size: 110%;
    font-weight: bold;
    color: #fff;
    position: absolute;
    top: 15px;
    left: 10px;
    z-index: 2;
  }

  /*グローバルナビ*/
  #glovalnavi {
    display: none;
    margin-bottom: 15px;
  }
  #glovalnavi ul {
    /*width:100%;*/
    display: block;
  }
  #glovalnavi ul li {
    width: 100%;
    /*width:50%;
		float:left;*/
    margin: 0;
    border-bottom: 1px solid #666;
  }
  #glovalnavi ul a {
    text-align: center;
    /*background-color:#000;*/
    background: rgb(0, 0, 0);

    background: -moz-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 1)), color-stop(100%, rgba(20, 20, 20, 1)));

    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    background: -o-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    background: -ms-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    background: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(20, 20, 20, 1) 100%);

    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#141414',GradientType=0 );

    border-bottom: none;
    padding: 2% 0 !important;
    height: auto;
    display: block;
    font-weight: bold;
    font-size: 130% !important;
    line-height: 2;
    text-decoration: none;
    color: #fff;
  }

  /*トップページ*/
  article#index {
    background-color: #f0f0f0;
  }
  #index h2 {
    width: 100%;
    margin-bottom: 5%;
  }
  #index h2 .img-s {
    display: none;
  }
  #index h2 img {
    width: 100%;
    height: auto;
  }
  #index h3 {
    width: 40%;
  }
  #sec04ttl p {
    top: 22%;
    left: 27%;
  }
  a.morebtn {
    width: 120px;
    height: 20px;
    background: url(../imgs/common/arrow-r.png) center right no-repeat;
    background-size: contain;
    display: block;
    float: right;
    padding: 10px 0;
    color: #000;
  }

  #index section.mainbk .mainbk__imgbk li {
    width: 50%;
    height: 50vw;
  }
  
  #index section.mainbk .mainbk__ttl-wrap {
	top: 50%;
	transform: translate(-50%, -50%);
  }

  #index section.mainbk .mainbk__ttl {
    font-size: 6.18vw;
    top: 1.56vw;
  }

  #index #sec01 ul li {
    text-align: center;
    width: 31.5%;
    height: 260px;
    padding: 1.5%;
    margin: 0 2.7% 2% 0;
  }

  #index #sec01 ul li {
    display: none;
  }
  #index #sec01 ul li:nth-child(-n + 3) {
    display: block;
  }

  #index #sec01 ul li:nth-child(3n) {
    margin-right: 0;
  }
  #index #sec01 ul li figure {
    background-size: auto 100%;
  }
  #index #sec01 ul li h4 {
    width: auto;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    display: inline-block;
    /* *display: inline;
    *zoom: 1; */
    padding: 2px 6px;
    margin-bottom: 12px;
  }
  #index #sec01 ul li p {
    text-align: left;
    color: #6a6a6a;
  }
  #index #sec01 ul li p span {
    text-align: center;
    display: block;
    font-size: 91%;
  }
  #index #sec03 h3 {
    float: none;
    margin: 0;
  }
  #index #sec03 #sec03_book {
    float: none;
    margin: 0;
  }
  #index #sec03 a.morebtn {
    margin-bottom: 10px;
  }

  /*各ページ共通*/
  #maincontent {
    width: 100%;
    float: none;
    margin-bottom: 0;
  }
  #side_menu {
    width: 100%;
    height: auto;
    float: none;
  }
  #side_menu .category {
    display: none;
  }
  #side_menu .bnrarea ul,
  #side_menu .storelist ul {
    height: auto;
  }
  #side_menu .bnrarea ul li,
  #side_menu .storelist ul li {
    width: 49%;
    float: left;
    margin-right: 0;
  }
  #side_menu .bnrarea ul li:nth-child(even),
  #side_menu .storelist ul li:nth-child(even) {
    float: right;
  }
  #side_menu div.bnrarea {
    height: auto;
    margin-bottom: 20px;
  }
  #side_menu div.bnrarea {
    font-size: 90%;
  }
  #side_menu div.bnrarea ul {
    margin-bottom: 0;
  }
  #side_menu div.bnrarea ul.last {
    margin-bottom: 8%;
  }

  #side_menu .bnrarea div {
    width: 49%;
    height: auto;
    margin: 0 auto;
    margin-bottom: 15px;
  }

  /*TN花巻ブログバナー*/
  #secbnr .blogblk .bnr_tx p {
    font-size: 18px;
  }

  /*フッター*/
  footer {
    text-align: center;
    padding: 25px 0 20px 0;
  }
  footer h4 {
    width: 130px;
    height: auto;
    float: none;
    margin: 0 auto 8px auto;
  }
  footer h4 img {
    width: 100%;
  }
  footer ul {
    width: auto;
    float: none;
    padding-top: 6px;
    margin: 0 auto 10px auto;
  }
  footer ul li {
    padding-right: 10px;
  }
  footer ul li:last-child {
    margin-right: 0;
  }
  footer ul li a {
    display: block;
    color: #6a6a6a;
  }
  footer #footer_rgt {
    float: none;
    text-align: center;
  }
  footer #footer_rgt #footer_sns {
    width: 195px;
    margin: 0 auto 5px auto;
  }

  footer p {
    font-size: 83%;
    color: #95908f;
  }
  #snsicon {
    /*width: 155px;*/
  }
  #snsicon li {
    /*float:none;*/
    /*margin-right:0;*/
    margin-bottom: 6px;
    width: 75px;
    height: auto;
  }
  #snsicon li:nth-child(2n) {
    /*margin-right: 0;*/
  }
  #snsicon li:nth-child(3n) {
    float: right;
    margin-right: 0;
  }

  /*YouTube*/
  #ytblk {
    max-width: 310px;
    margin: 0 auto;
    position: absolute;
    top: 80px;
    right: 0;
    left: 0;
  }
  #ytblk li {
    display: inline-block;
    width: calc((100% - 10px) / 2);
  }
  #ytblk li:first-child {
    margin-bottom: 0;
    margin-right: 5px;
  }
  #ytblk li p {
    font-size: 10px;
    padding: 0;
  }
}

@media screen and (max-width: 640px) {
  /*ヘッダー*/
  /*header div {
		padding-top:40px;
	}*/
  /*h1 {
		width:65%;
		float:right;
		margin:5px 0;
		padding:10px 0 0;
	}*/
  /*#menubtn {
		text-align:center;
		width:20%;
		background-color:#000;
		border-radius:5px;
		display:block;
		float:left;
		padding:5px 0;
		margin:10px 0;
		font-size:110%;
		font-weight:bold;
		color:#fff;
	}*/

  /*グローバルナビ*/
  #glovalnavi {
    display: none;
  }
  #glovalnavi ul {
    width: 100%;
  }
  #glovalnavi ul li {
    width: 100%;
    margin: 0;
  }
  #glovalnavi ul a {
    text-align: center;
    background-color: #000;
    border-bottom: none;
    padding: 2% 0;
    display: block;
    font-weight: bold;
    font-size: 100%;
    line-height: 2;
    text-decoration: none;
    color: #fff;
  }

  /*トップページ*/
  #index h2 .img-pc {
    display: none;
  }
  #index h2 .img-s {
    display: block;
  }
  #index h3 {
    width: 65%;
  }
  #sec04ttl p {
    top: 23%;
    left: 42%;
  }
  a.morebtn {
    width: auto;
    height: auto;
    background: url(../imgs/common/arrow-r.png) center right no-repeat;
    background-size: contain;
    display: block;
    float: right;
    padding: 0 2em 0 0;
    margin-top: 2%;
    color: #000;
  }
  #index #sec01 ul li {
    text-align: center;
    width: 49%;
    padding: 3%;
    margin: 0 0 2% 0;
    float: none;
    overflow: hidden;
  }
  #index #sec01 ul li:nth-child(odd) {
    float: right;
  }
  #index #sec01 ul li figure {
    width: 100%;
    box-sizing: border-box;
    margin: 0 0 5% 0;
    background-size: 100% auto;
  }
  #index #sec01 ul li:nth-child(-n + 4) {
    display: block;
  }
  #index #sec03 #sec03_book {
    float: left;
    padding-left: 0;
    background-image: none;
  }
  #index #sec03 #sec03_disc {
    float: left;
    padding: 0;
    margin: 0;
    background-image: none;
  }

  #index #sec03 #sec03_book li:last-child a:after {
    content: "　/　";
  }

  #sec02 .sliderarea {
    padding-bottom: 20px;
  }
  .sliderarea li img {
    height: auto;
  }
  #index .rankborder {
    width: 30%;
    padding-right: 5%;
  }
  #index .rankborder:nth-child(3n) {
    padding-right: 0;
  }
  #index .rankimg {
    width: 100%;
    margin-bottom: 8px;
  }
  /* #index .rankimg img {
    width: 100%;
    height: auto;
  } */
  #index .topranknum {
    position: static;
  }
  #index .topranknum img {
    display: none;
  }
  #index .topranknum div {
    font-size: 11px;
    line-height: 25px;
    width: 100%;
    height: 20px;
    position: relative;
    top: 0;
    margin-bottom: 6px;
  }
  #index .topranknum div img {
    height: 15px;
    display: block;
    position: absolute;
    top: 4px;
    right: 0;
  }
  #index .toprank-title {
    width: 100%;
    height: auto;
  }
  #index .toprankdata {
    width: 100%;
    height: auto;
    display: none;
  }
  #index #sec04 .sliderarea ul li h4 span {
    display: block;
  }
  #index #sec04 .sliderarea ul li img {
    height: 140px;
  }

  #zoombtn {
    left: 5%;
  }

  /*各ページ共通*/
  #maincontent {
    width: 100%;
    float: none;
    margin-bottom: 5%;
  }

  /* ページトップSNSアイコン */
  #snsicon {
    /*display:none;*/
    /*width:235px;*/
  }

  /*ツイッター*/
  /* #sns .tw {
    width: 100%;
    max-width: 420px;
    margin-right: 0;
  } */

  /*TN花巻ブログバナー*/
  #secbnr .blogblk {
    padding: 10px;
  }
  #secbnr .blogblk .bnr_tx p {
    font-size: 17px;
  }

  /*インスタ*/
  .iglist li {
    width: calc((100% - 20px) / 2);
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 480px) {
  /*TN花巻ブログバナー*/
  #secbnr .blogblk .bnr_tx p {
    font-size: 15px;
  }
  /*ツイッター*/
  #sns .tw {
    width: 100%;
    max-width: 420px;
    margin-right: 0;
  }
  /*インスタ*/
  .iglist li {
    width: 100%;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 320px) {
  /*TN花巻ブログバナー*/
  #secbnr .blogblk .bnr_tx p {
    font-size: 14px;
  }

  /*JOYFIT24 YouTube*/
  /*#yt-jf24 p {
		display:none;
	}*/

  /*YouTube*/
  #ytblk {
    padding: 0 5px;
  }
}
