@charset "UTF-8";
/*
Theme Name: NewSite
*/
/*=======================================
リセット
=========================================*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, var, b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video, a {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box;
}

body {
  line-height: 1;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

ol, ul {
  list-style: none;
}

pre {
  white-space: pre-wrap;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  color: inherit;
  font: inherit;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

sup {
  font-size: 8px;
}

main {
  display: block;
}

em {
  font-style: normal;
}

div, ul, ol, dl {
  zoom: 1;
}

strong {
  font-weight: bold;
}

ul#wp-admin-bar-root-default:after {
  clear: none;
}

li > a {
  display: block;
  width: 100%;
}

iframe {
  vertical-align: bottom;
}

/* ----------------------------- フォーム要素リセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  font-size: 16px;
  outline: none;
  box-sizing: border-box;
  vertical-align: middle;
}

textarea {
  resize: vertical;
}

input[type='text'], input[type='search'], input[type='tel'], input[type='email'] {
  line-height: normal;
  /*ios placeholderのズレ*/
}

input[type='checkbox'],
input[type='radio'] {
  display: none;
}

input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer;
}

input[type='text'], input[type='email'], input[type='tel'], textarea {
  width: 100%;
}

select::-ms-expand {
  display: none;
}

input:placeholder-shown, textarea:placeholder-shown {
  color: #ccc;
  font-size: 100%;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #ccc;
  font-size: 100%;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #ccc;
  font-size: 100%;
}

/*=======================================
スクロールバー
=========================================*/
/*=======================================
ユーティリティクラス
=========================================*/
/*
  マージン
---------------------------------*/
/*pc用余白クラス*/
.u-mt0 {
  margin-top: 0px !important;
}

.u-mt5 {
  margin-top: 5px !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-mt15 {
  margin-top: 15px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-mt25 {
  margin-top: 25px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-mt35 {
  margin-top: 35px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-mt45 {
  margin-top: 45px !important;
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-mt55 {
  margin-top: 55px !important;
}

.u-mt60 {
  margin-top: 60px !important;
}

.u-mt65 {
  margin-top: 65px !important;
}

.u-mt70 {
  margin-top: 70px !important;
}

.u-mt75 {
  margin-top: 75px !important;
}

.u-mt80 {
  margin-top: 80px !important;
}

.u-mt85 {
  margin-top: 85px !important;
}

.u-mt90 {
  margin-top: 90px !important;
}

.u-mt95 {
  margin-top: 95px !important;
}

.u-mt100 {
  margin-top: 100px !important;
}

.u-mt105 {
  margin-top: 105px !important;
}

.u-mt110 {
  margin-top: 110px !important;
}

.u-mt115 {
  margin-top: 115px !important;
}

.u-mt120 {
  margin-top: 120px !important;
}

.u-mb0 {
  margin-bottom: 0px !important;
}

.u-mb5 {
  margin-bottom: 5px !important;
}

.u-mb10 {
  margin-bottom: 10px !important;
}

.u-mb15 {
  margin-bottom: 15px !important;
}

.u-mb20 {
  margin-bottom: 20px !important;
}

.u-mb25 {
  margin-bottom: 25px !important;
}

.u-mb30 {
  margin-bottom: 30px !important;
}

.u-mb35 {
  margin-bottom: 35px !important;
}

.u-mb40 {
  margin-bottom: 40px !important;
}

.u-mb45 {
  margin-bottom: 45px !important;
}

.u-mb50 {
  margin-bottom: 50px !important;
}

.u-mb55 {
  margin-bottom: 55px !important;
}

.u-mb60 {
  margin-bottom: 60px !important;
}

.u-mb65 {
  margin-bottom: 65px !important;
}

.u-mb70 {
  margin-bottom: 70px !important;
}

.u-mb75 {
  margin-bottom: 75px !important;
}

.u-mb80 {
  margin-bottom: 80px !important;
}

.u-mb85 {
  margin-bottom: 85px !important;
}

.u-mb90 {
  margin-bottom: 90px !important;
}

.u-mb95 {
  margin-bottom: 95px !important;
}

.u-mb100 {
  margin-bottom: 100px !important;
}

.u-mb105 {
  margin-bottom: 105px !important;
}

.u-mb110 {
  margin-bottom: 110px !important;
}

.u-mb115 {
  margin-bottom: 115px !important;
}

.u-mb120 {
  margin-bottom: 120px !important;
}

.u-my0 {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.u-my5 {
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}

.u-my10 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.u-my15 {
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}

.u-my20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.u-my25 {
  margin-top: 25px !important;
  margin-bottom: 25px !important;
}

.u-my30 {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.u-my35 {
  margin-top: 35px !important;
  margin-bottom: 35px !important;
}

.u-my40 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.u-my45 {
  margin-top: 45px !important;
  margin-bottom: 45px !important;
}

.u-my50 {
  margin-top: 50px !important;
  margin-bottom: 50px !important;
}

.u-my55 {
  margin-top: 55px !important;
  margin-bottom: 55px !important;
}

.u-my60 {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

.u-my65 {
  margin-top: 65px !important;
  margin-bottom: 65px !important;
}

.u-my70 {
  margin-top: 70px !important;
  margin-bottom: 70px !important;
}

.u-my75 {
  margin-top: 75px !important;
  margin-bottom: 75px !important;
}

.u-my80 {
  margin-top: 80px !important;
  margin-bottom: 80px !important;
}

.u-my85 {
  margin-top: 85px !important;
  margin-bottom: 85px !important;
}

.u-my90 {
  margin-top: 90px !important;
  margin-bottom: 90px !important;
}

.u-my95 {
  margin-top: 95px !important;
  margin-bottom: 95px !important;
}

.u-my100 {
  margin-top: 100px !important;
  margin-bottom: 100px !important;
}

.u-my105 {
  margin-top: 105px !important;
  margin-bottom: 105px !important;
}

.u-my110 {
  margin-top: 110px !important;
  margin-bottom: 110px !important;
}

.u-my115 {
  margin-top: 115px !important;
  margin-bottom: 115px !important;
}

.u-my120 {
  margin-top: 120px !important;
  margin-bottom: 120px !important;
}

/*sp用余白クラス*/
@media (max-width: 767px) {
  .u-mtsp0 {
    margin-top: 0px !important;
  }
  .u-mtsp5 {
    margin-top: 5px !important;
  }
  .u-mtsp10 {
    margin-top: 10px !important;
  }
  .u-mtsp15 {
    margin-top: 15px !important;
  }
  .u-mtsp20 {
    margin-top: 20px !important;
  }
  .u-mtsp25 {
    margin-top: 25px !important;
  }
  .u-mtsp30 {
    margin-top: 30px !important;
  }
  .u-mtsp35 {
    margin-top: 35px !important;
  }
  .u-mtsp40 {
    margin-top: 40px !important;
  }
  .u-mtsp45 {
    margin-top: 45px !important;
  }
  .u-mtsp50 {
    margin-top: 50px !important;
  }
  .u-mtsp55 {
    margin-top: 55px !important;
  }
  .u-mtsp60 {
    margin-top: 60px !important;
  }
  .u-mtsp65 {
    margin-top: 65px !important;
  }
  .u-mtsp70 {
    margin-top: 70px !important;
  }
  .u-mtsp75 {
    margin-top: 75px !important;
  }
  .u-mtsp80 {
    margin-top: 80px !important;
  }
  .u-mtsp85 {
    margin-top: 85px !important;
  }
  .u-mtsp90 {
    margin-top: 90px !important;
  }
  .u-mtsp95 {
    margin-top: 95px !important;
  }
  .u-mtsp100 {
    margin-top: 100px !important;
  }
  .u-mtsp105 {
    margin-top: 105px !important;
  }
  .u-mtsp110 {
    margin-top: 110px !important;
  }
  .u-mtsp115 {
    margin-top: 115px !important;
  }
  .u-mtsp120 {
    margin-top: 120px !important;
  }
  .u-mbsp0 {
    margin-bottom: 0px !important;
  }
  .u-mbsp5 {
    margin-bottom: 5px !important;
  }
  .u-mbsp10 {
    margin-bottom: 10px !important;
  }
  .u-mbsp15 {
    margin-bottom: 15px !important;
  }
  .u-mbsp20 {
    margin-bottom: 20px !important;
  }
  .u-mbsp25 {
    margin-bottom: 25px !important;
  }
  .u-mbsp30 {
    margin-bottom: 30px !important;
  }
  .u-mbsp35 {
    margin-bottom: 35px !important;
  }
  .u-mbsp40 {
    margin-bottom: 40px !important;
  }
  .u-mbsp45 {
    margin-bottom: 45px !important;
  }
  .u-mbsp50 {
    margin-bottom: 50px !important;
  }
  .u-mbsp55 {
    margin-bottom: 55px !important;
  }
  .u-mbsp60 {
    margin-bottom: 60px !important;
  }
  .u-mbsp65 {
    margin-bottom: 65px !important;
  }
  .u-mbsp70 {
    margin-bottom: 70px !important;
  }
  .u-mbsp75 {
    margin-bottom: 75px !important;
  }
  .u-mbsp80 {
    margin-bottom: 80px !important;
  }
  .u-mbsp85 {
    margin-bottom: 85px !important;
  }
  .u-mbsp90 {
    margin-bottom: 90px !important;
  }
  .u-mbsp95 {
    margin-bottom: 95px !important;
  }
  .u-mbsp100 {
    margin-bottom: 100px !important;
  }
  .u-mbsp105 {
    margin-bottom: 105px !important;
  }
  .u-mbsp110 {
    margin-bottom: 110px !important;
  }
  .u-mbsp115 {
    margin-bottom: 115px !important;
  }
  .u-mbsp120 {
    margin-bottom: 120px !important;
  }
  .u-mysp0 {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
  }
  .u-mysp5 {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
  }
  .u-mysp10 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .u-mysp15 {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
  }
  .u-mysp20 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .u-mysp25 {
    margin-top: 25px !important;
    margin-bottom: 25px !important;
  }
  .u-mysp30 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .u-mysp35 {
    margin-top: 35px !important;
    margin-bottom: 35px !important;
  }
  .u-mysp40 {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
  }
  .u-mysp45 {
    margin-top: 45px !important;
    margin-bottom: 45px !important;
  }
  .u-mysp50 {
    margin-top: 50px !important;
    margin-bottom: 50px !important;
  }
  .u-mysp55 {
    margin-top: 55px !important;
    margin-bottom: 55px !important;
  }
  .u-mysp60 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .u-mysp65 {
    margin-top: 65px !important;
    margin-bottom: 65px !important;
  }
  .u-mysp70 {
    margin-top: 70px !important;
    margin-bottom: 70px !important;
  }
  .u-mysp75 {
    margin-top: 75px !important;
    margin-bottom: 75px !important;
  }
  .u-mysp80 {
    margin-top: 80px !important;
    margin-bottom: 80px !important;
  }
  .u-mysp85 {
    margin-top: 85px !important;
    margin-bottom: 85px !important;
  }
  .u-mysp90 {
    margin-top: 90px !important;
    margin-bottom: 90px !important;
  }
  .u-mysp95 {
    margin-top: 95px !important;
    margin-bottom: 95px !important;
  }
  .u-mysp100 {
    margin-top: 100px !important;
    margin-bottom: 100px !important;
  }
  .u-mysp105 {
    margin-top: 105px !important;
    margin-bottom: 105px !important;
  }
  .u-mysp110 {
    margin-top: 110px !important;
    margin-bottom: 110px !important;
  }
  .u-mysp115 {
    margin-top: 115px !important;
    margin-bottom: 115px !important;
  }
  .u-mysp120 {
    margin-top: 120px !important;
    margin-bottom: 120px !important;
  }
}

/*
  文字構え
---------------------------------*/
.u-center {
  text-align: center !important;
}

.u-center th, .u-center td {
  text-align: center !important;
}

.u-right {
  text-align: right !important;
}

.u-right th, .u-right td {
  text-align: right !important;
}

.u-left {
  text-align: left !important;
}

.u-left th, .u-left td {
  text-align: left !important;
}

.u-indent {
  text-indent: -1rem;
  margin-left: 1rem;
}

/*  
  フォント
---------------------------------*/
.u-mincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",'Noto Serif JP', serif;
}

.u-gothic {
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ　Ｐゴシック", "MS PGothic", sans-serif;
}

.u-italic {
  font-style: italic;
}

/* ----------------------------- 全体 */
html {
  font-size: 62.5%;
}

body {
  font-size: 14px;
  line-height: 1.8;
  color: #333;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ　Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  background: #fff;
  position: relative;
  -webkit-text-size-adjust: 100%;
}

h1, h2, h3, h4, h5 {
  line-height: 1.4;
}

a {
  text-decoration: none;
  transition: .2s;
}

a:hover, a:active {
  text-decoration: none;
}

a:hover {
  opacity: .7;
}

img, svg {
  max-width: 100%;
  height: auto;
}

@media (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
  body {
    min-width: 1100px;
  }
  a[href^='tel:'] {
    pointer-events: none;
  }
}

/*pc*/
@media (max-width: 767px) {
  a:hover {
    opacity: 1 !important;
  }
  .pc-only {
    display: none !important;
  }
}

/*sp*/
/* ----------------------------- 各ページ共通 */
/*=======================================
汎用パーツ
=========================================*/
/*  
  タイトル
---------------------------------*/
/*  
  ボタン
---------------------------------*/
/*  
  テーブル
---------------------------------*/
/*  
  センタリング
---------------------------------*/
.c-wrap, .c-wrap-1180, .c-wrap-1150, .c-wrap-1100, .c-wrap-1000, .c-wrap-960, .c-wrap-900, .c-wrap-850, .c-wrap-800, .c-wrap-750, .c-wrap-650, .c-wrap-600 {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  padding-right: 15px;
  padding-left: 15px;
  box-sizing: content-box;
}

.c-wrap-1180 {
  max-width: 1180px;
}

.c-wrap-1150 {
  max-width: 1150px;
}

.c-wrap-1100 {
  max-width: 1100px;
}

.c-wrap-1000 {
  max-width: 1000px;
}

.c-wrap-960 {
  max-width: 960px;
}

.c-wrap-900 {
  max-width: 900px;
}

.c-wrap-850 {
  max-width: 850px;
}

.c-wrap-800 {
  max-width: 800px;
}

.c-wrap-750 {
  max-width: 750px;
}

.c-wrap-650 {
  max-width: 650px;
}

.c-wrap-600 {
  max-width: 600px;
}

/*  
  iframe
---------------------------------*/
.c-iframe-wrap {
  position: relative;
  width: 100%;
}

.c-iframe-wrap::before {
  content: '';
  display: block;
  padding-top: 56.25%;
}

.c-iframe-wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
  vertical-align: bottom;
}

/*=======================================
レイアウト
=========================================*/
/*
  wp
---------------------------------*/
.l-entrybody {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: .05rem;
  word-break: break-all;
}

.l-entrybody p {
  margin: 0 0 1em;
}

.l-entrybody p:last-child {
  margin-bottom: 0 !important;
}

.l-entrybody > p, .l-entrybody > ul, .l-entrybody > ol, .l-entrybody > div, .l-entrybody > table {
  margin: 0 0 2em;
}

.l-entrybody > figure {
  margin: 0 0 1em;
}

.l-entrybody ul, .l-entrybody ol {
  text-align: left;
}

.l-entrybody > ul {
  padding: 0 0 0 1em;
  list-style-type: disc;
}

.l-entrybody > ol {
  padding: 0 0 0 1.5em;
  list-style-type: decimal;
}

.l-entrybody > ul > li {
  margin: .25em 0;
  text-align: left;
}

.l-entrybody li > a {
  display: inline;
}

.l-entrybody a {
  text-decoration: underline;
}

.l-entrybody iframe {
  max-width: 100%;
}

.l-entrybody h1, .l-entrybody h2, .l-entrybody h3, .l-entrybody h4, .l-entrybody h5, .l-entrybody h6 {
  margin: 1.7em 0 .85em;
}

.l-entrybody h1:first-child, .l-entrybody h2:first-child, .l-entrybody h3:first-child, .l-entrybody h4:first-child, .l-entrybody h5:first-child, .l-entrybody h6:first-child {
  margin-top: 0;
}

.l-entrybody h1 {
  font-size: 180%;
}

.l-entrybody h2 {
  font-size: 150%;
}

.l-entrybody h3 {
  font-size: 132%;
}

.l-entrybody h4 {
  font-size: 116%;
}

.l-entrybody h5 {
  font-size: 108%;
}

.l-entrybody h6 {
  font-size: 100%;
}

.l-entrybody table {
  width: 100%;
  font-size: 85%;
}

.l-entrybody td {
  padding: .5em .75em;
  border: 1px solid #ddd;
}

.l-entrybody th {
  padding: .5em .75em;
  border: 1px solid #ddd;
  background: #f7f7f7;
}

.l-entrybody .aligncenter {
  display: block;
  margin: 0 auto;
}

.l-entrybody .alignright {
  float: right;
}

.l-entrybody .alignleft {
  float: left;
}

.l-entrybody .wp-block-column:not(:first-child) {
  margin-top: 2em;
}

.l-entrybody .wp-block-column {
  flex-basis: 100% !important;
}

/*=======================================
ヘッダー
=========================================*/
/*=======================================
spメニュー
=========================================*/
.c-toggler {
  width: 50px;
  height: 32px;
  text-align: center;
}

.c-toggler__border {
  display: block;
  width: 21px;
  height: 16px;
  margin: 0 auto;
}

.c-toggler__border span {
  display: block;
  height: 2px;
  width: 22px;
  background-color: #000;
  border-radius: 4px;
  margin: 5px auto;
  transition: .3s ease;
}

.c-toggler__border-one {
  margin-top: 0 !important;
}

.c-toggler__border-three {
  margin-bottom: 0 !important;
}

.c-toggler__text {
  text-align: center;
  margin-top: 6px;
  font-size: 11px;
  font-weight: bold;
  color: #000;
  font-size: 0.5625rem;
  line-height: 1;
}

.c-toggler__text-close {
  display: none;
}

.c-toggler[aria-expanded="true"] .c-toggler__border-one {
  -webkit-transform: translateY(7px) rotate(-45deg);
  transform: translateY(7px) rotate(-45deg);
}

.c-toggler[aria-expanded="true"] .c-toggler__border-two {
  opacity: 0;
}

.c-toggler[aria-expanded="true"] .c-toggler__border-three {
  -webkit-transform: translateY(-7px) rotate(45deg);
  transform: translateY(-7px) rotate(45deg);
}

.c-toggler[aria-expanded="true"] .c-toggler__text-open {
  display: none;
}

.c-toggler[aria-expanded="true"] .c-toggler__text-close {
  display: inline;
}

/*=======================================
ヘッダー（スマホ横）
=========================================*/
/*orientation: landscape*/
/*=======================================
フッター
=========================================*/
/*=======================================
ページトップへ
=========================================*/
.l-pagetop {
  position: fixed;
  right: 30px;
  bottom: 30px;
  z-index: 999;
}

/* ----------------------------- トップページ */
/*=======================================
トップページ
=========================================*/
.p-top-calendar {
  margin-top: 50px;
}

.p-top-calendar .title {
  padding: 5px;
  font-size: 2.7rem;
  color: #fff;
  text-align: center;
  background: #9a8178;
  border: 2px solid #000;
  border-bottom: none;
}

.p-top-calendar .title_blue {
  background: #171c61;
}

.p-top-calendar .table-wrap {
  border: 2px solid #000;
  overflow: hidden;
}

.p-top-calendar table {
  width: calc(100% + 4px);
  margin: -2px;
  background: #fff;
  table-layout: fixed;
}

.p-top-calendar th {
  width: 180px;
  padding: 5px 0;
  font-size: 2rem;
  text-align: center;
  vertical-align: middle;
  border: 2px solid #000;
}

.p-top-calendar td {
  padding: 5px 0;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: -.005em;
  vertical-align: middle;
  border: 2px solid #000;
}

.p-top-calendar span {
  font-size: 1.7rem;
  color: #dc0012;
}

.p-top-shops .shops {
  display: flex;
  justify-content: space-between;
  text-align: center;
  font-weight: bold;
}

.p-top-shops .shops__item {
  width: 21.3%;
}

.p-top-shops .shops__logo {
  margin-bottom: 10px;
}

.p-top-shops .shops__map {
  margin-bottom: 10px;
}

.p-top-shops .shops__map iframe {
  width: 100%;
}

.p-top-shops .shops__title-sub {
  display: block;
  font-size: .8rem;
}

.p-top-shops .shops__title-main {
  font-size: 2rem;
  line-height: 1;
}

.p-top-shops .shops__head {
  display: flex;
  flex-direction: column;
  height: 80px;
  margin-bottom: 10px;
}

.p-top-shops .shops__access {
  margin-top: auto;
  padding-bottom: 5px;
  font-size: 1rem;
  line-height: 1.4;
  border-bottom: 1px solid #000;
}

.p-top-shops .shops__block {
  height: 60px;
  margin-bottom: 10px;
}

.p-top-shops .shops__num {
  font-size: 1.4rem;
  line-height: 1.5;
}

.p-top-shops .shops__note {
  font-size: .8rem;
}

.p-top-shops .shops__btn {
  margin-bottom: 10px;
}

.p-top-shops .sns {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 15px;
}

.p-top-shops .sns li {
  margin: 0 5px;
}

.p-top-shops .capable {
  padding: 7px 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

.l-header {
  position: fixed;
  top: 40px;
  left: 0;
  z-index: 99;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 15px 85px;
  background: url(img/goldline.png) repeat-x top 10px center, url(img/goldline.png) repeat-x bottom 10px center;
  background-color: #fff;
}

.l-header .shops {
  display: flex;
  align-items: center;
}

.l-header .shops li {
  margin-left: 30px;
  line-height: 1;
}

.l-header .shops a {
  display: inline-flex;
}

.p-top__gra {
  background: linear-gradient(#bed3ed 0%, rgba(190, 211, 237, 0.4) 20%, rgba(190, 211, 237, 0)) 100%;
}

.p-top__kv {
  padding: 60px 15px 140px;
  background: url(img/kv_bg.jpg) #bed3ed no-repeat top center;
  background-size: cover;
}

.p-top__kv h1 {
  position: relative;
  z-index: 99;
  text-align: center;
}

.p-top__lead {
  margin-bottom: 80px;
  position: relative;
  text-align: center;
  font-weight: bold;
  background: linear-gradient(#bed3ed, rgba(190, 211, 237, 0));
}

.p-top__lead::before {
  position: absolute;
  display: block;
  content: '';
  top: -100px;
  left: 0;
  width: 100%;
  height: 100px;
  background: linear-gradient(rgba(190, 211, 237, 0), #bed3ed);
}

.p-top__lead .title1 {
  margin-bottom: 30px;
}

.p-top__lead .text {
  margin-bottom: 30px;
  font-size: 2.4rem;
  text-align: center;
}

.p-top__lead .shops {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}

.p-top__lead .covid {
  padding: 15px 30px;
  background: #fff;
}

.p-top__lead .title2 {
  margin-bottom: 45px;
}

.p-top__lead .note {
  max-width: 635px;
  margin-right: auto;
  margin-left: auto;
  padding: 5px 0;
  margin-bottom: 45px;
  font-size: 1.8rem;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

.p-top__special {
  position: relative;
  padding: 200px 0 220px;
  background: url(img/special_bg.png) top -100px center;
  background-size: cover;
  text-align: center;
}

.p-top__special h2 {
  margin-bottom: 60px;
}

.p-top__special .yutai {
  margin-bottom: -55px;
}

.p-top__special .mukinri {
  margin-bottom: -20px;
}

.p-top__special .head {
  margin-bottom: 15px;
  color: #42210b;
}

.p-top__special .head__title {
  padding-bottom: 5px;
  margin-bottom: 25px;
  font-size: 3.6rem;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",'Noto Serif JP', serif;
  background: url(img/special_border1.png) no-repeat center bottom;
}

.p-top__special .head__title_red {
  color: #B90D23;
  background: url(img/special_border3.png) no-repeat center bottom;
}

.p-top__special .head__text {
  margin-bottom: 5px;
  font-size: 2rem;
  line-height: 1.6;
  font-weight: bold;
}

.p-top__special .head__note {
  font-size: 1.2rem;
}

.p-top__special .sns {
  margin-bottom: 45px;
  background: #fff;
  border: 2px solid #b19f66;
}

.p-top__special .sns__head {
  padding: 10px 25px;
  font-size: 2rem;
  line-height: 1.5;
  color: #fff;
  font-weight: bold;
  background: #b19f66;
}

.p-top__special .sns__foot {
  display: flex;
  padding: 15px 0;
}

.p-top__special .sns__box {
  width: 50%;
}

.p-top__special .sns__box:nth-child(2) {
  border-left: 2px solid #221714;
}

.p-top__special .sns__title {
  font-size: 2.5rem;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",'Noto Serif JP', serif;
  font-weight: bold;
}

.p-top__special .sns__box-inner {
  display: flex;
  justify-content: center;
}

.p-top__special .sns__box-col {
  margin: 0 12px;
}

.p-top__special .sns__box-col p {
  margin-top: 5px;
  font-size: 1.2rem;
  font-weight: bold;
}

.p-top__special .card {
  position: relative;
  margin-bottom: 120px;
}

.p-top__special .card__text {
  margin-bottom: 20px;
  font-size: 1.9rem;
  line-height: 1.6;
  letter-spacing: .1rem;
  font-weight: bold;
}

.p-top__special .card__note {
  margin-top: 10px;
  font-size: 9px;
}

.p-top__special .card__deco1 {
  position: absolute;
  top: 0;
  left: 30px;
}

.p-top__special .card__deco2 {
  position: absolute;
  top: 0;
  right: 30px;
}

.p-top__special .watch {
  margin-top: 45px;
  text-align: left;
}

.p-top__special .watch__list {
  display: flex;
  margin-bottom: 25px;
  overflow: hidden;
}

.p-top__special .watch__item {
  display: flex;
  align-items: flex-end;
  width: 33%;
}

.p-top__special .watch__image {
  position: relative;
  z-index: 3;
  flex-shrink: 0;
}

.p-top__special .watch__block {
  margin-left: -30px;
  padding: 0 0 0 35px;
}

.p-top__special .watch__price {
  position: relative;
  z-index: 2;
  display: table;
  padding: 5px 20px 5px 0;
  font-size: 2.6rem;
  color: #fff;
  font-weight: bold;
  line-height: 1;
  white-space: nowrap;
}

.p-top__special .watch__price::before {
  position: absolute;
  display: block;
  content: '';
  z-index: -1;
  top: 0;
  right: 0;
  width: calc(100% + 80px);
  height: 100%;
  background: #ca101a;
}

.p-top__special .watch__price-small {
  font-size: 1.4rem;
}

.p-top__special .watch__detail {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100px;
  margin-bottom: 10px;
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 1.2;
}

.p-top__special .watch__detail-large {
  display: block;
  margin-top: 5px;
  font-size: 1.5rem;
  font-weight: bold;
}

.p-top__special .watch__pay {
  position: relative;
  z-index: 2;
  padding: 10px 0 10px;
  font-size: 1.3rem;
  line-height: 1.4;
  font-weight: bold;
}

.p-top__special .watch__pay::before {
  position: absolute;
  display: block;
  content: '';
  z-index: -2;
  right: 0;
  top: 0;
  width: 120%;
  border-top: 1px solid #000;
}

.p-top__special .watch__pay span {
  position: relative;
  z-index: 3;
}

.p-top__special .watch__note {
  padding: 7px 15px;
  font-size: 1.2rem;
  text-align: center;
  font-weight: bold;
  line-height: 1.6;
}

.p-top__special .watch__brand {
  max-width: 900px;
  margin-right: auto;
  margin-left: auto;
  padding: 25px 30px;
  margin-top: 90px;
  font-size: 2.2rem;
  line-height: 1.6;
  background: #fff;
  border: 1px solid #000;
  text-align: justify;
}

.p-top-links {
  text-align: center;
  color: #fff;
}

.p-top-links__btn {
  display: table;
  margin: 0 auto 25px;
}

.p-top-links__text {
  margin-bottom: 25px;
  font-size: 1.9rem;
  text-align: center;
}

.p-top-links__block {
  display: flex;
  align-items: center;
}

.p-top-links__here {
  display: flex;
  align-items: center;
  width: 245px;
  height: 60px;
  margin-right: 28px;
  padding: 0 30px 0 15px;
  line-height: 1.4;
  font-size: 1.7rem;
  background: url(img/arrow_right.svg) no-repeat center right 15px;
  background-size: 15px 16px;
  background-color: orangered;
  border-radius: 8px;
}

.p-top-links__sns {
  display: flex;
}

.p-top-links__sns-item {
  margin-right: 28px;
}

.p-top__information {
  padding-bottom: 180px;
  background: rgba(251, 176, 59, 0.1);
}

.p-top__information h2 {
  margin-bottom: 100px;
  padding: 25px 15px;
  font-size: 4rem;
  letter-spacing: .15rem;
  text-align: center;
  font-weight: normal;
  background: #CCCCCC;
}

.p-top__information .banner {
  display: flex;
  justify-content: space-between;
  margin-bottom: 60px;
}

.p-top__information .card {
  margin-bottom: 60px;
  background: #fff;
  border: 3px solid #3c0001;
}

.p-top__information .card__title {
  font-size: 2.8rem;
  color: #fff;
  font-weight: bold;
  text-align: center;
  background: #3c0001;
}

.p-top__information .card__block {
  display: flex;
  flex-direction: row-reverse;
  padding: 30px;
}

.p-top__information .card__image {
  flex-shrink: 0;
}

.p-top__information .card__text {
  padding: 0 35px 0 0;
  font-size: 2.1rem;
  line-height: 1.5;
}

.p-top__information .servise {
  margin-bottom: 160px;
  background: #fff;
  border: 3px solid #b19f66;
}

.p-top__information .servise__title {
  font-size: 2.8rem;
  color: #fff;
  font-weight: bold;
  text-align: center;
  background: #b19f66;
}

.p-top__information .servise__block {
  display: flex;
  flex-direction: row-reverse;
  padding: 30px;
}

.p-top__information .servise__text {
  padding: 0 20px 0 0;
  font-size: 2.1rem;
  line-height: 1.5;
  text-align: center;
}

.p-top__information .servise__text p {
  margin-bottom: 25px;
  text-align: left;
}

.p-top__information .servise__image {
  flex-shrink: 0;
}

.l-footer {
  padding: 28px 15px;
  text-align: center;
  background: url(img/footer_bg.jpg) no-repeat center;
  background-size: cover;
  border-top: 7px solid #171c61;
  border-bottom: 7px solid #171c61;
}

/*▼スマホ▼*/
@media (max-width: 767px) {
  .p-top-calendar {
    margin-top: 50px;
    margin-right: -15px;
  }
  .p-top-calendar .title {
    font-size: 1.8rem;
  }
  .p-top-calendar .table-wrap {
    overflow-x: scroll;
  }
  .p-top-calendar .sticky {
    position: -webkit-sticky;
    position: sticky;
    left: -2px;
    background: #fff;
  }
  .p-top-calendar .sticky:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0px;
    width: 100%;
    height: 100%;
    border-right: 2px solid #000;
  }
  .p-top-calendar .table-inner {
    width: 700px;
  }
  .p-top-calendar th {
    width: 110px;
    padding: 5px 0;
    font-size: 1.2rem;
  }
  .p-top-calendar td {
    padding: 5px 0;
    font-size: 1.1rem;
    letter-spacing: -.005em;
  }
  .p-top-calendar span {
    font-size: 1.5rem;
  }
  .p-top-shops .shops {
    display: block;
  }
  .p-top-shops .shops__item {
    width: 100%;
    margin-bottom: 45px;
  }
  .p-top-shops .shops__logo {
    margin-bottom: 15px;
  }
  .p-top-shops .shops__map {
    margin-bottom: 15px;
  }
  .p-top-shops .shops__title-sub {
    font-size: 1.4rem;
  }
  .p-top-shops .shops__title-main {
    font-size: 2.4rem;
  }
  .p-top-shops .shops__head {
    height: inherit;
    margin-bottom: 15px;
    height: inherit;
  }
  .p-top-shops .shops__access {
    padding-bottom: 5px;
    font-size: 1rem;
    line-height: 1.4;
    border-bottom: 1px solid #000;
  }
  .p-top-shops .shops__block {
    height: inherit;
    margin-bottom: 15px;
  }
  .p-top-shops .shops__num {
    font-size: 1.6rem;
  }
  .p-top-shops .shops__note {
    font-size: 1rem;
  }
  .p-top-shops .shops__btn {
    margin-bottom: 15px;
  }
  .p-top-shops .capable img {
    width: 280px;
  }
  .l-header {
    top: 15px;
    left: 0;
    z-index: 99;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 60px;
    padding: 10px;
    background: url(img/goldline.png) repeat-x top 5px center, url(img/goldline.png) repeat-x bottom 5px center;
    background-color: #fff;
  }
  .l-header .shops li {
    display: flex;
    align-items: center;
    width: 33%;
    margin-left: 15px;
    line-height: 1;
  }
  .p-top__kv {
    padding: 60px 15px;
  }
  .p-top__lead {
    margin-bottom: 0;
    padding: 0;
  }
  .p-top__lead::before {
    position: absolute;
    display: block;
    content: '';
    top: -60px;
    height: 60px;
  }
  .p-top__lead .text {
    margin-bottom: 30px;
    font-size: 1.6rem;
  }
  .p-top__lead .title2 {
    margin-bottom: 30px;
  }
  .p-top__lead .shops {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 30px;
  }
  .p-top__lead .shops li {
    margin-bottom: 15px;
    width: 49%;
  }
  .p-top__lead .note {
    font-size: 1.6rem;
    line-height: 1.6;
  }
  .p-top__lead .covid {
    padding: 15px;
  }
  .p-top__special {
    padding: 60px 0 0px;
  }
  .p-top__special::after {
    position: absolute;
    display: block;
    content: '';
    bottom: 0;
    left: 0;
    width: 100%;
    height: 150px;
    background-size: auto 150px;
  }
  .p-top__special h2 {
    margin-bottom: 45px;
  }
  .p-top__special .yutai {
    margin-bottom: -30px;
  }
  .p-top__special .yutai {
    margin-bottom: -30px;
  }
  .p-top__special .head__title {
    padding-bottom: 5px;
    margin-bottom: 15px;
    font-size: 2.4rem;
    background-size: 100%;
  }
  .p-top__special .head__text {
    font-size: 1.6rem;
  }
  .p-top__special .sns {
    margin-bottom: 45px;
  }
  .p-top__special .sns__head {
    padding: 10px 15px;
    font-size: 1.6rem;
    line-height: 1.4;
  }
  .p-top__special .sns__foot {
    display: block;
    padding: 15px;
  }
  .p-top__special .sns__box {
    width: 100%;
  }
  .p-top__special .sns__box:nth-child(2) {
    padding-top: 15px;
    margin-top: 15px;
    border-left: none;
    border-top: 1px solid #221714;
  }
  .p-top__special .sns__title {
    margin-bottom: 15;
    font-size: 2rem;
  }
  .p-top__special .sns__box-col {
    margin: 0 10px;
  }
  .p-top__special .card {
    position: relative;
    margin-bottom: 0;
    padding-bottom: 60px;
    background-size: 100%;
  }
  .p-top__special .card__image {
    margin-bottom: 15px;
  }
  .p-top__special .card__text {
    margin-bottom: 15px;
    font-size: 1.6rem;
  }
  .p-top__special .watch {
    margin-top: 45px;
    margin-bottom: 60px;
  }
  .p-top__special .watch__list {
    display: block;
    margin-bottom: 15px;
  }
  .p-top__special .watch__price {
    position: relative;
    z-index: 2;
    margin-bottom: 15px;
  }
  .p-top__special .watch__item {
    margin-bottom: 45px;
    width: 100%;
  }
  .p-top__special .watch__detail {
    height: inherit;
  }
  .p-top__special .watch__pay::before {
    position: absolute;
    display: block;
    content: '';
    width: 120%;
  }
  .p-top__special .watch__note {
    padding: 10px 0;
    font-size: 1.2rem;
  }
  .p-top__special .watch__brand {
    margin-top: 30px;
    padding: 15px;
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .p-top-links__btn {
    display: table;
    margin: 0 auto 15px;
  }
  .p-top-links__text {
    margin-bottom: 15px;
    font-size: 1.6rem;
    text-align: center;
  }
  .p-top-links__block {
    display: block;
  }
  .p-top-links__here {
    justify-content: center;
    width: 100%;
    margin-right: 0;
    padding: 0 45px 0 15px;
    margin-bottom: 20px;
    line-height: 1.4;
    font-size: 1.6rem;
    text-align: center;
    background-image: url(img/arrow_bottom.svg);
    background-size: 18px 16px;
  }
  .p-top-links__sns {
    justify-content: center;
  }
  .p-top-links__sns-item {
    margin: 0 10px;
  }
  .p-top-shop-title {
    display: block;
    height: inherit;
  }
  .p-top-shop-title span {
    display: block;
    margin-left: 0;
    font-size: 1.6rem;
  }
  .p-top-shop-title img {
    max-width: 240px;
  }
  .p-top-shop-title span + span {
    margin-top: 15px;
  }
  .p-top-shop-title__logo {
    display: block;
    padding: 30px 15px;
    text-align: center;
  }
  .p-top__information {
    padding-bottom: 60px;
  }
  .p-top__information h2 {
    margin-bottom: 45px;
    padding: 15px 15px;
    font-size: 2.8rem;
  }
  .p-top__information .banner {
    display: block;
    margin-bottom: 30px;
  }
  .p-top__information .banner a {
    display: block;
  }
  .p-top__information .banner a + a {
    margin-top: 10px;
  }
  .p-top__information .card {
    margin-bottom: 30px;
  }
  .p-top__information .card__title {
    padding: 5px;
    font-size: 2.4rem;
  }
  .p-top__information .card__block {
    display: block;
    padding: 15px;
  }
  .p-top__information .card__image {
    margin-bottom: 15px;
    text-align: center;
  }
  .p-top__information .card__text {
    padding: 0;
    font-size: 1.4rem;
  }
  .p-top__information .servise {
    margin-bottom: 75px;
  }
  .p-top__information .servise__title {
    padding: 5px;
    font-size: 2rem;
  }
  .p-top__information .servise__block {
    display: block;
    padding: 15px;
  }
  .p-top__information .servise__text {
    padding: 0;
    margin-top: 15px;
    font-size: 1.4rem;
  }
  .p-top__information .servise__text p {
    margin-bottom: 15px;
  }
  .l-footer {
    padding: 30px 15px;
  }
}

/* ----------------------------- 下層ページ */
/*=======================================
下層ページ
=========================================*/
/*=======================================
お問い合わせ
=========================================*/
/*  
  sumoselect
---------------------------------*/
/*  
  チェックボックス（隣接セレクタ）
---------------------------------*/
/*  
  チェックボックス（間接セレクタ）
---------------------------------*/
/* ----------------------------- 投稿 */
/*=======================================
投稿
=========================================*/
/*  
  xxxxxxxx
---------------------------------*/
/*  
  xxxxxxxx
---------------------------------*/
