@charset "UTF-8";
/* Variables
   ========================================================================== */
/*
  英語フォント
*/
/*
  明朝体
*/
/*
  縦書きテキスト
*/
/*
  上下黒線中緑のライン
*/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b, strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code, kbd, samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button, input, optgroup, select, textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button, input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button, select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"], [type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

/* Base
   ========================================================================== */
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline; }

*, *:before, *:after {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

/*
  サイト共通の設定
*/
body {
  font-family: YakuHanJP, 'Noto Sans JP', sans-serif;
  line-height: 1.6875;
  color: #333333;
  font-size: 14px; }
  @media screen and (min-width: 768px) {
    body {
      font-size: 16px; } }
  @media screen and (min-width: 1200px) {
    body {
      font-size: 16px; } }

/*
  英語フォント
*/
.__fonten {
  font-family: 'Montserrat', sans-serif; }

/*
  明朝体
*/
.__mincho {
  font-family: 'Noto Serif JP', serif; }

/*
  縦書きテキスト
*/
.__vertical-rl {
  writing-mode: vertical-rl; }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0; }

ul, li, ol {
  margin: 0;
  padding: 0;
  list-style: none; }

p {
  word-wrap: break-word;
  overflow-wrap: break-word; }

figure {
  margin: 0; }

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

.__cf:before, .__cf:after {
  display: table;
  content: " "; }

.__cf:after {
  clear: both; }

.__cf {
  *zoom: 1; }

a {
  color: #000000;
  transition: all 0.3s ease 0s;
  cursor: pointer;
  text-decoration: none; }

a:hover {
  color: #000000; }

a:hover img {
  opacity: 0.7; }

a.__white {
  color: #ffffff; }

a.__black {
  color: #000000; }

a[href^="tel:"] {
  cursor: default;
  text-decoration: none; }

.wrapper {
  overflow: hidden; }

@media (max-width: 767px) {
  .br_pc {
    display: none; } }

.br_sp {
  display: none; }
  @media (max-width: 767px) {
    .br_sp {
      display: block; } }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 0.7; }
  .hamburger.is-active:hover {
    opacity: 0.7; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #000; }

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }

/*
 * 3DX
 */
.hamburger--3dx .hamburger-box {
  perspective: 80px; }
.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(180deg); }
  .hamburger--3dx.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dx.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DX Reverse
 */
.hamburger--3dx-r .hamburger-box {
  perspective: 80px; }
.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(-180deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DY
 */
.hamburger--3dy .hamburger-box {
  perspective: 80px; }
.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(-180deg); }
  .hamburger--3dy.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dy.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DY Reverse
 */
.hamburger--3dy-r .hamburger-box {
  perspective: 80px; }
.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DXY
 */
.hamburger--3dxy .hamburger-box {
  perspective: 80px; }
.hamburger--3dxy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg); }
  .hamburger--3dxy.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dxy.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DXY Reverse
 */
.hamburger--3dxy-r .hamburger-box {
  perspective: 80px; }
.hamburger--3dxy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dxy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg); }
  .hamburger--3dxy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dxy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * Arrow
 */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); }
.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
 * Arrow Right
 */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); }
.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
 * Arrow Alt
 */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }
.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }
.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }
.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
 * Arrow Alt Right
 */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }
.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }
.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }
.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
 * Arrow Turn
 */
.hamburger--arrowturn.is-active .hamburger-inner {
  transform: rotate(-180deg); }
  .hamburger--arrowturn.is-active .hamburger-inner::before {
    transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); }
  .hamburger--arrowturn.is-active .hamburger-inner::after {
    transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
 * Arrow Turn Right
 */
.hamburger--arrowturn-r.is-active .hamburger-inner {
  transform: rotate(-180deg); }
  .hamburger--arrowturn-r.is-active .hamburger-inner::before {
    transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); }
  .hamburger--arrowturn-r.is-active .hamburger-inner::after {
    transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
 * Boring
 */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none; }
.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg); }
  .hamburger--boring.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--boring.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg); }

/*
 * Collapse
 */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Collapse Reverse
 */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse-r .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse-r .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Elastic
 */
.hamburger--elastic .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic .hamburger-inner::before {
    top: 10px;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic .hamburger-inner::after {
    top: 20px;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-270deg);
    transition-delay: 0.075s; }

/*
 * Elastic Reverse
 */
.hamburger--elastic-r .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic-r .hamburger-inner::before {
    top: 10px;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic-r .hamburger-inner::after {
    top: 20px;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic-r.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(270deg);
    transition-delay: 0.075s; }

/*
 * Emphatic
 */
.hamburger--emphatic {
  overflow: hidden; }
  .hamburger--emphatic .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::after {
      top: 10px;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent !important; }
    .hamburger--emphatic.is-active .hamburger-inner::before {
      left: -80px;
      top: -80px;
      transform: translate3d(80px, 80px, 0) rotate(45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic.is-active .hamburger-inner::after {
      right: -80px;
      top: -80px;
      transform: translate3d(-80px, 80px, 0) rotate(-45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
 * Emphatic Reverse
 */
.hamburger--emphatic-r {
  overflow: hidden; }
  .hamburger--emphatic-r .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::after {
      top: 10px;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic-r.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent !important; }
    .hamburger--emphatic-r.is-active .hamburger-inner::before {
      left: -80px;
      top: 80px;
      transform: translate3d(80px, -80px, 0) rotate(-45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic-r.is-active .hamburger-inner::after {
      right: -80px;
      top: 80px;
      transform: translate3d(-80px, -80px, 0) rotate(45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
 * Minus
 */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
  transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear; }
.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
  opacity: 0;
  transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear; }
.hamburger--minus.is-active .hamburger-inner::before {
  top: 0; }
.hamburger--minus.is-active .hamburger-inner::after {
  bottom: 0; }

/*
 * Slider
 */
.hamburger--slider .hamburger-inner {
  top: 2px; }
  .hamburger--slider .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider .hamburger-inner::after {
    top: 20px; }
.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--slider.is-active .hamburger-inner::before {
    transform: rotate(-45deg) translate3d(-5.7142857143px, -6px, 0);
    opacity: 0; }
  .hamburger--slider.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-90deg); }

/*
 * Slider Reverse
 */
.hamburger--slider-r .hamburger-inner {
  top: 2px; }
  .hamburger--slider-r .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider-r .hamburger-inner::after {
    top: 20px; }
.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-45deg); }
  .hamburger--slider-r.is-active .hamburger-inner::before {
    transform: rotate(45deg) translate3d(5.7142857143px, -6px, 0);
    opacity: 0; }
  .hamburger--slider-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(90deg); }

/*
 * Spin
 */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Spin Reverse
 */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin-r .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin-r .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Spring
 */
.hamburger--spring .hamburger-inner {
  top: 2px;
  transition: background-color 0s 0.13s linear; }
  .hamburger--spring .hamburger-inner::before {
    top: 10px;
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring .hamburger-inner::after {
    top: 20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent !important; }
  .hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(-45deg); }

/*
 * Spring Reverse
 */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring-r .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear; }
  .hamburger--spring-r .hamburger-inner::before {
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spring-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear; }
  .hamburger--spring-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Stand
 */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Stand Reverse
 */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand-r .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand-r .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Squeeze
 */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
  .hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Vortex
 */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex .hamburger-inner::after {
    transition-property: bottom, transform; }
.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg); }

/*
 * Vortex Reverse
 */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex-r .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex-r .hamburger-inner::after {
    transition-property: bottom, transform; }
.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg); }

/*// ==========================================================================
// Layout
// ==========================================================================*/
/* header
   ========================================================================== */
.l-header {
  position: absolute;
  width: 100%;
  min-height: 60px;
  top: 0;
  left: 0;
  /*background: rgba(247, 246, 237, 0.7);*/
  z-index: 10000;
  	/*  @media ( max-width: $screen-lg-min ){
      min-height: 64px;
      position: fixed;
    } */ }
  @media (max-width: 767px) {
    .l-header {
      background: #ffffff; } }

.admin-bar .l-header {
  top: 32px; }
  @media (max-width: 767px) {
    .admin-bar .l-header {
      top: 46px; } }

/* main　　共通パーツ
   ========================================================================== */
/* テキスト装飾 */
/* 文字強調 */
.c-txt01 {
  font-weight: bold; }

.c-txt02 {
  font-size: 1.3125rem; }

/* 文字中央寄せ */
.c-center {
  text-align: center; }

.c-left {
  text-align: left; }

/* リストスタイル */
ul.c-list {
  list-style: none;
  margin: 1em 0 1em;
  padding: 0; }
  ul.c-list li {
    text-indent: -1.5em;
    margin-left: 1.5em;
    /*margin-bottom: .5em;*/ }
    ul.c-list li:before {
      content: "●";
      color: #00c3af;
      /*			width: 1em;
      height: 1em;
      display: inline-block;*/
      margin-right: 0.5em; }
    ul.c-list li:last-child {
      margin-bottom: 0; }

ol.c-list {
  counter-reset: ol_li;
  list-style: none;
  margin: 1em 0 1em;
  padding: 0;
  text-indent: -1.5em;
  margin-left: 1.5em;
  margin-bottom: .5em; }
  ol.c-list li:before {
    counter-increment: ol_li;
    /* li の数を一つずつ増加 */
    content: counter(ol_li) ".";
    /* 数を表示 */
    color: #2cafc8;
    margin-right: 10px; }
  ol.c-list:last-child {
    margin-bottom: 0; }

/* テーブルスタイル */
.c-table {
  width: 100%;
  margin: 30px auto;
  border-collapse: collapse;
  border: 1px solid #1a3031;
  background: #ffffff; }
  .c-table th {
    border: 1px solid #1a3031;
    padding: 10px 15px;
    font-weight: bold;
    font-size: 1.125rem;
    background: #efecd6;
    text-align: left;
    color: #1c3738; }
    @media (max-width: 767px) {
      .c-table th {
        padding: 10px; } }
  .c-table td {
    border: 1px solid #1a3031;
    padding: 10px 15px; }
    @media (max-width: 767px) {
      .c-table td {
        padding: 10px; } }
  @media (max-width: 767px) {
    .c-table__block th {
      display: block;
      width: 100%;
      text-align: left;
      border-bottom: none; }
    .c-table__block td {
      display: block;
      width: 100%; } }

/* page 個別ページタイトル
   ========================================================================== */
.l-page-head {
  background: url("../img/common/img-header.jpg");
  background-size: cover;
  margin: 86px 0 0;
  position: relative;
  border-bottom: 1px solid #000000;
  border-top: 1px solid #000000; }
  @media (max-width: 767px) {
    .l-page-head {
      margin: 64px 0 0; } }

.l-page-head__title {
  font-weight: 700;
  font-size: 2.25rem;
  color: #ffffff; }
  @media (max-width: 767px) {
    .l-page-head__title {
      font-size: 1.8rem; } }
  .l-page-head__title span {
    font-size: 0.875rem;
    display: block;
    letter-spacing: 0.1rem; }

.l-page-head__inner {
  width: calc(100% - 30px);
  min-height: 235px;
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: center; }
  @media (max-width: 767px) {
    .l-page-head__inner {
      min-height: 140px; } }

/*　投稿2カラムレイアウト
   ========================================================================== */
.l-entries {
  display: flex;
  justify-content: space-between; }
  .l-entries.c-container {
    max-width: 1000px; }
  @media (max-width: 767px) {
    .l-entries {
      display: block; } }

.l-entries__main {
  max-width: 900px;
  width: 75%; }
  @media (max-width: 767px) {
    .l-entries__main {
      width: auto;
      max-width: none;
      margin: 0 10px; } }

.l-entries__side {
  max-width: 250px;
  width: 20.83%; }
  @media (max-width: 767px) {
    .l-entries__side {
      width: auto;
      max-width: none; } }

/* footer
   ========================================================================== */
.l-footer {
  background: #ffff00;
  position: relative; }

/*// -----------------------------------------------------------------
// Component
// -----------------------------------------------------------------*/
/* container
   ========================================================================== */
.c-container {
  margin: 0 auto;
  max-width: 1000px;
  position: relative; }
  @media (max-width: 1000px) {
    .c-container {
      width: calc(100% - 20px); } }

.c-fullwidth {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding: 0px calc(50vw - 50%); }
  @media (max-width: 767px) {
    .c-fullwidth {
      padding: 0px calc(50vw - 50%); } }

/* 薄いグリーン */
.c-bg01 {
  background: #eff4ea; }

/*　濃いグリーン　*/
.c-bg02 {
  background: #00c3af; }

/* header
   ========================================================================== */
.c-header {
  position: relative;
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .c-header {
      min-height: 64px; } }

.c-header__ttl {
  display: flex;
  align-items: center;
  justify-content: left;
  align-self: flex-start; }
  @media (max-width: 767px) {
    .c-header__ttl {
      display: block;
      width: 100%; } }

.c-header__logo {
  line-height: 1;
  margin: 18px 22px; }
  .c-header__logo img {
    width: 280px; }
  @media (max-width: 767px) {
    .c-header__logo {
      margin: 7px 11px 8px; } }

.c-header__right--col {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /*width: 100%;*/
  max-width: 880px;
  padding: 20px 20px 20px 10px;
  background: #ffffff; }

/* PCナビ */
.c-header__global-nav {
  margin-right: 20px; }
  @media (max-width: 767px) {
    .c-header__global-nav {
      display: none; } }
  .c-header__global-nav ul {
    padding: 0;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%; }
    @media (max-width: 991px) {
      .c-header__global-nav ul {
        font-size: 12px; } }
  .c-header__global-nav li {
    margin: 0 1.1rem;
    position: relative;
    white-space: nowrap; }
    @media (max-width: 1150px) {
      .c-header__global-nav li {
        margin: 0 0.4rem; } }
  .c-header__global-nav li a {
    font-weight: 700; }
    .c-header__global-nav li a:hover:after {
      position: absolute;
      bottom: -4px;
      left: 0;
      content: "";
      display: block;
      width: 100%;
      height: 1px;
      border-bottom: 1px solid #1c3738; }
    .c-header__global-nav li a.__current:after {
      position: absolute;
      bottom: -4px;
      left: 0;
      content: "";
      display: block;
      width: 100%;
      height: 1px;
      border-bottom: 1px solid #1c3738; }

/* SPナビ */
.c-header__nav--sp {
  position: absolute;
  top: 0;
  right: 0;
  display: none;
  color: #000000;
  padding: 9px 3px 10px 5px;
  height: 64px;
  width: 64px; }
  @media (max-width: 767px) {
    .c-header__nav--sp {
      display: flex;
      justify-content: center;
      align-items: center; } }
  .c-header__nav--sp img {
    width: 30px; }
  .c-header__nav--sp a {
    display: block; }

.c-header__nav--sp__menu {
  display: table-cell; }
  .c-header__nav--sp__menu .hamburger {
    padding: 5px; }
    .c-header__nav--sp__menu .hamburger:hover {
      opacity: 1; }
    .c-header__nav--sp__menu .hamburger .hamburger-inner, .c-header__nav--sp__menu .hamburger .hamburger-inner::after, .c-header__nav--sp__menu .hamburger .hamburger-inner::before {
      background-color: #000000;
      height: 1px; }
    .c-header__nav--sp__menu .hamburger .hamburger-label {
      font-size: 9px;
      letter-spacing: 0.1rem;
      color: #000000;
      display: block;
      width: 50px;
      bottom: -17px;
      position: absolute;
      text-align: center;
      left: -5px; }

.c-header-sp__nav {
  z-index: 100;
  position: absolute;
  top: 64px;
  bottom: auto;
  left: 0;
  width: 100%;
  display: none;
  background: #ffffff;
  border-bottom: solid 28px #00c3af; }

.c-header-sp__nav--list {
  padding: 0;
  list-style: none; }

.c-header-sp__nav--item {
  width: 100%;
  border-bottom: 1px solid #1e3031; }
  .c-header-sp__nav--item a {
    display: block;
    background: #00c3af;
    font-size: 1.2857rem;
    padding: 16px 20px;
    font-weight: 700;
    color: #ffffff; }
  .c-header-sp__nav--item.__link-onlineshop a {
    background: #ffff00 url("../img/common/icn-btn01.png") no-repeat 98% center;
    color: #000000; }
    @media (max-width: 767px) {
      .c-header-sp__nav--item.__link-onlineshop a {
        background-size: 12px 14px; } }

/* スマホサブメニュー */
.c-header-sp__nav--information {
  font-family: 'Noto Serif JP', serif;
  display: table;
  max-width: 82%;
  margin: 21px auto; }

.c-header-sp__nav--sns {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ffffff;
  border-bottom: solid 1px #000000;
  padding: 0 20px 30px; }
  .c-header-sp__nav--sns p {
    margin: 0 20px;
    width: 50px; }

/* footer
   ========================================================================== */
/*フォローボタン　*/
.c-footer-link__sns {
  padding: 44px 0;
  display: flex;
  justify-content: center; }
  @media (max-width: 767px) {
    .c-footer-link__sns {
      flex-direction: column; } }

.c-footer-link__sns--list {
  display: flex;
  justify-content: space-around;
  width: 100%;
  max-width: 800px; }
  @media (max-width: 767px) {
    .c-footer-link__sns--list {
      padding: 0 5%; } }

.c-footer-link__sns--list-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 20px; }
  @media (max-width: 767px) {
    .c-footer-link__sns--list-ttl {
      width: 50%;
      margin: 0 auto; } }

.c-footer-link__sns--list-item {
  width: 30%;
  max-width: 180px;
  margin: 0 1.5%;
  text-align: center;
  flex-shrink: 1; }
  .c-footer-link__sns--list-item .__sns-icn {
    font-size: 1.3125rem;
    max-width: 100px;
    margin: 0 auto 10px;
    line-height: 1; }
    @media (max-width: 767px) {
      .c-footer-link__sns--list-item .__sns-icn {
        font-size: 12px;
        max-width: 60px; } }
    .c-footer-link__sns--list-item .__sns-icn span {
      display: block;
      padding-bottom: 10px; }
  .c-footer-link__sns--list-item .__sns-txt {
    font-size: 0.875rem;
    text-align: left; }
    @media (max-width: 767px) {
      .c-footer-link__sns--list-item .__sns-txt {
        display: none; } }

/* フッターエリア */
.c-footer {
  display: flex;
  justify-content: space-between;
  padding: 32px 0;
  font-size: 0.875rem; }
  @media (max-width: 767px) {
    .c-footer {
      flex-direction: column;
      padding-bottom: 30px; } }
  .c-footer a:hover {
    text-decoration: underline; }

.c-footer__information {
  letter-spacing: 0.2rem;
  margin-right: 22px; }
  @media (max-width: 1220px) {
    .c-footer__information {
      margin-right: 12px; } }
  @media (max-width: 991px) {
    .c-footer__information {
      display: table;
      margin: 0 auto; } }

.c-footer__global-nav {
  display: flex;
  margin-right: auto; }
  @media (max-width: 991px) {
    .c-footer__global-nav {
      flex-wrap: wrap;
      justify-content: space-between;
      width: 48%; } }
  .c-footer__global-nav ul {
    display: flex;
    flex-direction: column;
    margin: 0 2%;
    /*		@media (max-width: $screen-sm-max) {
    	margin: 0;
    }*/ }
    @media (max-width: 991px) {
      .c-footer__global-nav ul {
        width: 48%;
        margin: 0 1%; } }
  .c-footer__global-nav li {
    margin: 0 1%;
    border-bottom: 1px solid #bfbf00;
    font-weight: 700;
    min-width: 120px;
    /*letter-spacing: 0.1rem;*/ }
    .c-footer__global-nav li a {
      display: block;
      padding: 5px;
      white-space: nowrap; }
  @media (max-width: 767px) {
    .c-footer__global-nav {
      padding: 30px 0;
      width: auto;
      margin: 0 auto; } }

.c-footer__onlineshop {
  margin: 0 auto;
  max-width: 280px;
  font-size: 0.875rem; }
  @media (max-width: 1220px) {
    .c-footer__onlineshop {
      white-space: nowrap; } }
  @media (max-width: 991px) {
    .c-footer__onlineshop {
      /*width: 160px;*/ } }
  @media (max-width: 767px) {
    .c-footer__onlineshop {
      max-width: 77%;
      margin: 0 auto; } }
  .c-footer__onlineshop a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 22px;
    background: #00c3af;
    font-size: 0.875rem;
    font-weight: 700;
    color: #ffffff;
    padding: 10px 24px;
    position: relative; }
    @media (max-width: 991px) {
      .c-footer__onlineshop a {
        font-size: 0.8571rem;
        padding: 14px 22px 14px 18px; } }
    .c-footer__onlineshop a:hover {
      color: #ffffff;
      text-decoration: none;
      opacity: 0.7;
      			/*			border: 1px solid #518b46;
      			background: #518b46;
      			transition: .2s;
      
      			*/ }

.c-footer__sns {
  margin: 20px 0;
  /*	@media (max-width: $screen-xs-max) {
  	display: none;
  }*/
  display: flex;
  justify-content: center; }
  .c-footer__sns li {
    margin: 0 2%;
    width: 36px; }

/*.c-footer__english-link {
	a:after {
		font-family: "Font Awesome 5 Free";
		content: "\f24d";
		font-weight: normal;
		margin-left: 8px;
	}
	a:hover {
		color: #518b46;
		text-decoration: none;
	}
}*/
.c-footer__copyright {
  letter-spacing: 0.2rem;
  color: #ffffff;
  text-align: center;
  padding: 14px;
  background: #00c3af;
  border-top: 1px solid #000000; }

/* firstviews
   ========================================================================== */
/* forms
   ========================================================================== */
/* pagetop
   ========================================================================== */
/* TOPへ戻るボタン */
.c-pagetop {
  position: fixed;
  bottom: 2%;
  right: 5%;
  z-index: 1000; }
  @media (max-width: 767px) {
    .c-pagetop {
      bottom: 15px;
      width: 60px;
      height: auto; } }

/* breadcrumb
   ========================================================================== */
.c-breadcrumb {
  margin: 0 0 62px;
  padding: 16px 0;
  background: #eff4ea;
  border-bottom: 1px solid #000000; }
  @media (max-width: 767px) {
    .c-breadcrumb {
      margin-bottom: 20px;
      font-size: 12px;
      z-index: 1000;
      position: relative; } }

.c-breadcrumb__box {
  max-width: 1000px;
  margin: 0 auto;
  width: calc(100% - 30px); }
  .c-breadcrumb__box .fa-arrow-circle-right {
    color: #2cafc8;
    margin: 0 10px; }

.c-breadcrumb__partition:before {
  font-family: "Font Awesome 5 Free";
  content: "\f138";
  font-weight: 900;
  display: inline-block;
  margin: 0 10px;
  color: #00c3af; }
  @media (max-width: 767px) {
    .c-breadcrumb__partition:before {
      margin: 0 5px; } }

/* entries
   ========================================================================== */
/* 一覧 */
.c-entries__list {
  list-style: none;
  padding: 0;
  margin: 0 0 30px 0; }

.c-entries__item {
  margin-bottom: 38px; }
  .c-entries__item:not(:last-child) {
    border-bottom: 1px solid #000000; }

.c-entries__item--link {
  height: 100%;
  text-decoration: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-flow: row;
  padding: 0 0 38px; }
  @media (max-width: 767px) {
    .c-entries__item--link {
      flex-direction: column; } }
  .c-entries__item--link:hover {
    opacity: 0.7; }
    .c-entries__item--link:hover img {
      opacity: 1; }
  .c-entries__item--link .c-entries__item--summary {
    width: 61.11%;
    padding-right: 4%; }
    @media (max-width: 767px) {
      .c-entries__item--link .c-entries__item--summary {
        width: 100%;
        padding-right: 0; } }

.c-entries__item--figure {
  overflow: hidden;
  width: 33.56%;
  max-width: 302px;
  line-height: 0; }
  .c-entries__item--figure img {
    border-radius: 16% / 16%; }
  @media (max-width: 767px) {
    .c-entries__item--figure {
      margin: 20px auto 0;
      text-align: center;
      width: 100%;
      max-width: 100%; } }

/* 一覧タイトル */
.c-entries__item--ttl {
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.4; }
  @media (max-width: 767px) {
    .c-entries__item--ttl {
      margin-top: 20px;
      font-size: 0.875rem;
      font-size: 1.125rem;
      font-weight: bold; } }

/* 一覧　記事カテゴリー・投稿日 */
.c-entries__item--meta {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #b1b1b1;
  margin-bottom: 22px; }
  @media (max-width: 767px) {
    .c-entries__item--meta {
      margin-top: 5px;
      border-bottom: 0;
      margin-bottom: 10px; } }

.c-entries__cate--list {
  margin-left: 10px; }

.c-entries__cate--list-item {
  background: #00c3af;
  font-size: 0.75rem;
  padding: 2px 20px;
  border-radius: 5px;
  color: #ffffff;
  margin: 0 8px 0 0; }
  @media (max-width: 767px) {
    .c-entries__cate--list-item {
      font-size: 0.750rem; } }

.c-entries__date {
  color: #b1b1b1;
  font-size: 0.875rem; }
  @media (max-width: 767px) {
    .c-entries__date {
      font-size: 0.625rem; } }

/* entry
   ========================================================================== */
/* 記事タイトル */
.c-entry__ttl {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.4; }

/* 記事カテゴリー・投稿日 */
.c-entry__item--meta {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #b1b1b1;
  margin-bottom: 22px;
  justify-content: flex-start;
  padding: 5px 0; }

.c-entry__cate--list {
  margin-left: 10px; }

.c-entry__cate--list-item {
  background: #00c3af;
  font-size: 0.75rem;
  padding: 5px 20px;
  border-radius: 5px;
  color: #ffffff;
  margin: 0 8px 0 0; }

.c-entry__date {
  color: #b1b1b1;
  font-size: 0.875rem; }

/* 投稿エリア */
.c-entry-post__contents {
  margin-bottom: 74px; }

.c-entry__event--detailarea:after {
  content: "";
  height: 20px;
  width: 100%;
  display: block;
  background: #eff4ea;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000; }

.c-entry__event--detail-ttl {
  font-size: 1.5rem; }
  .c-entry__event--detail-ttl:after {
    content: "";
    height: 20px;
    width: 100%;
    display: block;
    background: #eff4ea;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000; }

.c-entry__event--detail-table {
  padding: 23px 0; }
  .c-entry__event--detail-table table {
    border-collapse: collapse;
    width: 100%; }
    .c-entry__event--detail-table table tr {
      border-bottom: 1px dashed #b8b8b8; }
    .c-entry__event--detail-table table th, .c-entry__event--detail-table table td {
      padding: 20px;
      vertical-align: top;
      text-align: left; }
    .c-entry__event--detail-table table th {
      width: 18%; }

.c-entry__event--detail-map {
  padding: 26px 0; }
  .c-entry__event--detail-map iframe {
    width: 100%;
    height: 45vh; }

/* pagenavi
   ========================================================================== */
.c-pagenavi .wp-pagenavi {
  margin: 40px 0;
  border: 0;
  text-align: center;
  font-size: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative; }

.c-pagenavi .wp-pagenavi .pages {
  display: none; }

.c-pagenavi .previouspostslink, .c-pagenavi .nextpostslink {
  display: flex;
  /*	flex-wrap: wrap;*/
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  margin: 0 10px 20px;
  /*		position: absolute;*/ }
.c-pagenavi .previouspostslink {
  /*	left: 0;
  top: 0;*/ }
.c-pagenavi .nextpostslink {
  /*	right: 0;
  bottom: 0;*/ }
.c-pagenavi .page, .c-pagenavi .current {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 10px 20px;
  text-decoration: none;
  font-size: 1.25rem;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #e5e5e5;
  border: 1px solid #000000; }
.c-pagenavi .page:hover {
  background: #ffff00;
  border: 1px solid #ffff00; }
.c-pagenavi .extend {
  display: none; }
.c-pagenavi .current {
  border: 1px solid #ffff00;
  background: #ffff00; }
.c-pagenavi .c-backnumber__arowwbg {
  width: 30px;
  height: 30px;
  margin: 0 5px;
  border-radius: 50%;
  background: #1c3738;
  color: #fff;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center; }
.c-pagenavi .first {
  display: none; }
.c-pagenavi .last {
  display: none; }

/**
 * 詳細ページング
 */
.c-backnumber {
  margin-top: 48px; }

.c-backnumber__inner {
  	/*  display: flex;
    align-items: stretch;
    justify-content: flex-end; */
  /*border: 1px solid #1a3031;*/
  overflow: hidden;
  position: relative;
  /*&:before {
  	content: "";
  	display: block;
  	background: #1a3031;
  	width: 1px;
  	height: 100%;
  	position: absolute;
  	left: 50%;
  	top: 0;
  	@media (max-width: $screen-xs-max) {
  		display: none;
  	}
  }*/ }

.c-backnumber__block {
  margin-bottom: 20px;
  /*	&:nth-child(2) {
  	@media (max-width: $screen-xs-max) {
  		border-top: 1px solid #1a3031;
  	}
  }*/ }
  .c-backnumber__block.__prev {
    float: left; }
    @media (max-width: 767px) {
      .c-backnumber__block.__prev {
        float: none; } }
  .c-backnumber__block.__next {
    float: right; }
    @media (max-width: 767px) {
      .c-backnumber__block.__next {
        float: none; } }

.c-backnumber__block {
  max-width: 350px;
  width: 48%;
  text-align: left; }
  @media (max-width: 767px) {
    .c-backnumber__block {
      width: 100%;
      max-width: none; } }

.c-backnumber__link {
  display: flex;
  justify-content: space-between;
  background: #eff4ea;
  border-bottom: 1px solid #a0a0a0;
  border-top: 1px solid #a0a0a0;
  padding: 20px;
  text-decoration: none;
  height: 100%; }
  .c-backnumber__link img:hover {
    opacity: 1; }
  .c-backnumber__link:hover {
    opacity: 0.7;
    transition: .2s; }

.c-backnumber__data {
  width: 56%; }

.c-backnumber__ttl {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4; }
  @media (max-width: 767px) {
    .c-backnumber__ttl {
      font-size: 0.875rem; } }

.c-backnumber__img {
  width: 40%; }

.c-backnumber__text {
  border-radius: 26px;
  background: #ffff00;
  border: 1px solid #000000;
  padding: 11px 20px 11px 20px;
  position: relative;
  display: flex;
  align-items: center; }

.__next .c-backnumber__text {
  justify-content: flex-end; }
  .__next .c-backnumber__text:after {
    content: "";
    background: url("../img/common/icn-btn01.png") no-repeat left top;
    background-size: cover;
    width: 11px;
    height: 13px;
    display: block;
    margin-left: 10px;
    /*			position: absolute;
    	right:14px;
    	top: 50%;
    	transform: translateY(-50%);*/ }

.__prev .c-backnumber__text:before {
  content: "";
  background: url("../img/common/icn-btn02.png") no-repeat left top;
  background-size: cover;
  width: 11px;
  height: 13px;
  display: block;
  margin-right: 10px;
  /*			position: absolute;
  	right:14px;
  	top: 50%;
  	transform: translateY(-50%);*/ }

/* editor
   ========================================================================== */
/* Markup */
.c-editor h2 {
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  margin: 1em 0;
  color: #1c3738;
  border-bottom: 1px solid #c0c0c0;
  padding-bottom: 20px;
  padding-left: 20px; }
  .c-editor h2:before {
    content: "";
    background: #00c3af;
    position: absolute;
    left: 0;
    bottom: 20px;
    display: block;
    height: calc(100% - 20px);
    width: 9px; }

.c-editor h3 {
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  margin: 1em 0;
  color: #1c3738;
  border-bottom: 1px solid #c0c0c0;
  padding-bottom: 20px;
  padding-left: 20px; }
  @media (max-width: 767px) {
    .c-editor h3 {
      font-size: 1.25rem;
      border-bottom: none;
      margin-bottom: 0px; } }
  .c-editor h3:before {
    content: "";
    background: #00c3af;
    position: absolute;
    left: 0;
    bottom: 20px;
    display: block;
    height: calc(100% - 20px);
    width: 9px; }

.c-editor h4 {
  font-size: 1.3125rem;
  font-weight: 700;
  margin-top: 0;
  line-height: 1.4; }
  @media (max-width: 767px) {
    .c-editor h4 {
      margin-top: 1em;
      font-size: 1rem; } }

.c-editor h5 {
  color: #00c3af;
  font-size: 1.3125rem;
  font-weight: 700;
  margin-top: 0;
  line-height: 1.4; }
  @media (max-width: 767px) {
    .c-editor h5 {
      margin-top: 1em;
      font-size: 1rem; } }

.c-editor h6 {
  font-size: 1rem;
  margin: 1em 0;
  font-weight: 700; }

.c-editor p {
  margin: 0 0 1em; }

.c-editor a {
  color: #0400ff;
  text-decoration: underline; }
  .c-editor a:hover {
    text-decoration: none; }
  .c-editor a:visited {
    color: #e600ff; }

.c-editor strong {
  font-weight: 700; }

.c-editor b {
  font-weight: 700; }

.c-editor em {
  font-weight: 700;
  font-style: normal; }

.c-editor hr {
  border-top: 1px solid #000000; }

.c-editor ul {
  list-style: none;
  margin: 1em 0 1em;
  padding: 0; }
  .c-editor ul li {
    margin-bottom: .5em;
    margin-left: 20px;
    text-indent: -20px; }
    .c-editor ul li:before {
      content: "";
      display: inline-block;
      width: 14px;
      height: 14px;
      background: #00c3af;
      border-radius: 50%;
      margin-right: 5px; }
    .c-editor ul li:last-child {
      margin-bottom: 0; }

.c-editor ol {
  list-style: none;
  margin: 1em 0 1em;
  padding: 0;
  counter-reset: number; }

.c-editor ol li {
  margin-left: 1.5em;
  margin-bottom: .5em;
  position: relative;
  padding: 0 0 0 8px; }
  .c-editor ol li:before {
    counter-increment: number;
    /* li の数を一つずつ増加 */
    content: counter(number);
    /* 数を表示 */
    color: #ffffff;
    /*	margin-right: 5px;*/
    font-size: 12px;
    background: #00c3af;
    border-radius: 50%;
    position: absolute;
    display: inline-block;
    left: -20px;
    top: 3px;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center; }

.c-editor table {
  width: 100%;
  margin: 30px auto;
  border-collapse: collapse; }

.c-editor table tr th {
  padding: 15px;
  background: #00c3af; }
  @media (max-width: 767px) {
    .c-editor table tr th {
      padding: 10px; } }

.c-editor table tr td {
  padding: 15px; }
  @media (max-width: 767px) {
    .c-editor table tr td {
      padding: 10px; } }

.c-editor table tr:nth-child(odd) {
  background: #eff4ea; }

.c-editor table tr:nth-child(even) {
  background: #f7f9f5; }

@media (max-width: 767px) {
  .c-editor table th, .c-editor table td {
    display: block;
    width: 100%; }

  .c-editor table tr:last-child td:last-child {
    width: 100%; } }
@media (max-width: 767px) {
  .c-editor table {
    width: 100% !important; } }
.c-editor blockquote {
  border: 14px solid #eff4ea;
  padding: 3em;
  position: relative;
  z-index: 1;
  margin: 2em 0; }

.c-editor blockquote:before {
  font-size: 2.5em;
  line-height: 1;
  color: #eff4ea;
  position: absolute;
  z-index: -1;
  font-family: "Font Awesome 5 Free";
  content: "\f10d";
  font-weight: 900;
  left: 0.2em;
  top: 0.2em; }

.c-editor blockquote:after {
  font-size: 2em;
  line-height: 1;
  color: #eff4ea;
  position: absolute;
  z-index: -1;
  font-family: FontAwesome;
  font-family: "Font Awesome 5 Free";
  content: "\f10e";
  font-weight: 900;
  right: 0.2em;
  bottom: 0.2em; }

.c-editor blockquote p {
  display: inline; }

.c-editor img {
  max-width: 100%;
  height: auto; }

.c-editor img.aligncenter {
  display: block;
  margin: 0 auto; }

.c-editor img.alignright {
  display: inline;
  float: right; }

.c-editor img.alignleft {
  display: inline;
  float: left; }

/*.c-editor a:hover img {
	display: block;
}*/
.c-editor pre {
  white-space: pre-wrap;
  width: 100%;
  background: #fff;
  padding: 20px; }

/* コンポーネント */
.wpac-alert {
  display: block;
  border: 1px solid #FDF5E7;
  background: #FDF5E7;
  border-radius: 3px;
  color: #FF0000;
  padding: .9rem;
  font-weight: bold; }

.wpac-columns {
  margin: 10px 0; }

.wpac-columns__row {
  display: flex;
  flex-wrap: wrap; }

.wpac-columns__row {
  display: flex;
  flex-wrap: wrap; }

.wpac-columns__col {
  padding-right: .9rem;
  padding-left: .9rem;
  margin-bottom: 1.8rem; }

.wpac-columns__col--1-1 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 50%; }

@media (max-width: 767px) {
  .wpac-columns__col--1-1 {
    width: 100%; } }
.wpac-columns__col--1-2 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 50%; }

.wpac-columns__col--lg-1-3 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 33.3333%; }

@media (min-width: 768px) and (max-width: 991px) {
  .wpac-columns__col--1-1.wpac-columns__col--lg-1-3 {
    width: 100%; } }
@media (max-width: 767px) {
  .wpac-columns__col--lg-1-3 {
    width: 100%; } }
.wpac-columns__col--1-3 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 33.3333%; }

.wpac-columns__col--lg-1-4 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 25%; }

@media (min-width: 768px) and (max-width: 991px) {
  .wpac-columns__col--1-1.wpac-columns__col--lg-1-4 {
    width: 100%; } }
@media (max-width: 767px) {
  .wpac-columns__col--1-1.wpac-columns__col--lg-1-4 {
    width: 100%; } }
.wpac-columns__col--1-4 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 25%; }

@media (max-width: 767px) {
  .wpac-columns__col--1-2.wpac-columns__col--lg-1-4 {
    width: 50%; } }
.wpac-highlighter {
  background: linear-gradient(transparent 60%, #ff6 60%); }

.wpac-read {
  background: #eff4ea;
  padding: 2em; }

/* heading
   ========================================================================== */
.c-ttl01 {
  line-height: 1.5;
  font-size: 0.875rem;
  font-weight: normal;
  color: #000000;
  margin-bottom: 14px;
  text-align: center;
  margin: 1.75rem auto;
  position: relative;
  display: table; }
  .c-ttl01 .english-txt {
    font-weight: 400;
    display: block;
    font-size: 2.25rem;
    line-height: 1;
    letter-spacing: 0.03em;
    margin-bottom: 1rem;
    font-family: 'Montserrat', sans-serif; }
    @media (max-width: 767px) {
      .c-ttl01 .english-txt {
        margin-bottom: 0.5rem; } }
    .c-ttl01 .english-txt.__txt-green {
      color: #00c3af;
      font-weight: 700; }
    .c-ttl01 .english-txt.__txt-white {
      color: #ffffff;
      font-weight: 700; }
  .c-ttl01.tl {
    text-align: left; }

.c-ttl02 {
  font-size: 2.25rem;
  font-weight: 700;
  margin-top: 0; }
  @media (max-width: 767px) {
    .c-ttl02 {
      font-size: 1.8rem; } }

.c-ttl03 {
  font-size: 1.875rem;
  font-weight: 700;
  margin-top: 0;
  line-height: 1.4; }
  @media (max-width: 767px) {
    .c-ttl03 {
      font-size: 1.125rem; } }

.c-ttl04 {
  	/*	.c-editor h2
  	.p-spot-entry__block--ttl
  と同じスタイル
  
  */
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  margin: 1em 0;
  color: #1c3738;
  border-bottom: 1px solid #c0c0c0;
  padding-bottom: 20px;
  padding-left: 20px; }
  @media (max-width: 767px) {
    .c-ttl04 {
      font-size: 1.25rem;
      border-bottom: none;
      margin-bottom: 0px; } }
  .c-ttl04:before {
    content: "";
    background: #00c3af;
    position: absolute;
    left: 0;
    bottom: 20px;
    display: block;
    height: calc(100% - 20px);
    width: 9px; }

/* section
   ========================================================================== */
/* txt
   ========================================================================== */
/* btn
   ========================================================================== */
/* 角丸黄色ボタン */
.c-btn01 {
  margin: 0 auto 1em;
  display: table; }
  .c-btn01 a {
    text-decoration: none;
    display: flex;
    align-items: center;
    /*justify-content: center;*/
    border-radius: 26px;
    background: #ffff00;
    border: 1px solid #000000;
    font-size: 0.875rem;
    font-weight: 700;
    text-align: center;
    color: #000000;
    padding: 11px 40px 11px 24px;
    position: relative; }
    @media (max-width: 991px) {
      .c-btn01 a {
        /*	font-size: 12px;
        			padding: 8px 22px 8px 18px;*/ } }
    .c-btn01 a:after {
      content: "";
      background: url("../img/common/icn-btn01.png") no-repeat left top;
      background-size: cover;
      width: 11px;
      height: 13px;
      display: block;
      position: absolute;
      right: 14px;
      top: 50%;
      transform: translateY(-50%); }
      @media (max-width: 991px) {
        .c-btn01 a:after {
          	/*			right:8px;
          	width: 9px;
          height:11px;*/ } }
    .c-btn01 a:hover {
      color: #000000;
      opacity: 0.7; }

/* 角丸黄色ボタン　大　 */
.c-btn01_l {
  margin: 2.8em auto 1em;
  display: table;
  width: 100%;
  max-width: 450px; }
  @media (max-width: 767px) {
    .c-btn01_l {
      width: auto;
      max-width: none; } }
  .c-btn01_l a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 40px;
    background: #ffff00;
    border: 1px solid #000000;
    font-size: 1.3125rem;
    font-weight: 700;
    letter-spacing: 0.1rem;
    color: #000000;
    padding: 23px 60px 23px 32px;
    position: relative; }
    @media (max-width: 991px) {
      .c-btn01_l a {
        font-size: 0.875rem;
        padding: 11px 40px 11px 24px; } }
    .c-btn01_l a:after {
      content: "";
      background: url("../img/common/icn-btn01.png") no-repeat left top;
      width: 15px;
      height: 18px;
      display: block;
      position: absolute;
      right: 32px;
      top: 50%;
      transform: translateY(-50%); }
      @media (max-width: 767px) {
        .c-btn01_l a:after {
          background: url("../img/common/icn-btn01.png") no-repeat left top;
          background-size: cover;
          width: 11px;
          height: 13px;
          right: 14px; } }
    .c-btn01_l a:hover {
      color: #000000;
      opacity: 0.7; }

.c-bg02 .c-btn01_l a {
  border: 1px solid #00c3af;
  background: #ffffff; }
  .c-bg02 .c-btn01_l a:hover {
    opacity: 0.7; }

/* 外部リンク */
.c-btn01 a[target="_blank"]:after {
  font-family: "Font Awesome 5 Free";
  content: "\f24d";
  font-weight: normal;
  margin-left: 8px;
  margin-right: 8px;
  margin-top: 0;
  background: none;
  transform: translateY(-80%); }

/* 外部リンク */
.c-btn01 a[href$=".pdf"] {
  padding-right: 50px; }
  .c-btn01 a[href$=".pdf"]:after {
    content: "";
    background: url("../img/common/icn-pdf.png") no-repeat left top;
    background-size: contain;
    width: 21px;
    height: 24px;
    display: block;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%); }
    @media (max-width: 767px) {
      .c-btn01 a[href$=".pdf"]:after {
        right: 24px; } }

/* ボタン右寄せ */
.c-btn01.tr {
  margin-right: 0; }
  @media (max-width: 767px) {
    .c-btn01.tr {
      margin-right: auto; } }

/* ボタン左寄せ */
.c-btn01.tl {
  margin-left: 0; }
  @media (max-width: 767px) {
    .c-btn01.tl {
      margin-left: auto; } }

.c-btn-shop {
  margin: 0 0 0 auto;
  width: 200px; }
  @media (max-width: 991px) {
    .c-btn-shop {
      width: 160px; } }
  @media (max-width: 1130px) {
    .c-btn-shop {
      display: none; } }
  @media (max-width: 767px) {
    .c-btn-shop {
      display: none; } }
  .c-btn-shop a {
    text-decoration: none;
    display: flex;
    align-items: center;
    /*justify-content: center;*/
    border-radius: 22px;
    background: #ffff00;
    border: 1px solid #000000;
    font-size: 0.875rem;
    font-weight: 700;
    text-align: center;
    color: #000000;
    padding: 10px 24px;
    position: relative; }
    @media (max-width: 1150px) {
      .c-btn-shop a {
        font-size: 14px;
        padding: 8px 22px 8px 18px; } }
    .c-btn-shop a:after {
      content: "";
      background: url("../img/common/icn-btn01.png") no-repeat left top;
      background-size: cover;
      width: 11px;
      height: 13px;
      display: block;
      position: absolute;
      right: 14px;
      top: 50%;
      transform: translateY(-50%); }
      @media (max-width: 991px) {
        .c-btn-shop a:after {
          right: 8px;
          width: 9px;
          height: 11px; } }
    .c-btn-shop a:hover {
      color: #000000;
      opacity: 0.7;
      /*
      transition: .2s;
      */ }

/* cta
   ========================================================================== */
/* faq
   ========================================================================== */
/* block カラムレイアウト
   ========================================================================== */
/* 2カラム */
.c-col2-wrap {
  display: flex;
  /*justify-content: space-between;*/
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .c-col2-wrap {
      flex-direction: column; } }

.c-col2-item {
  flex-basis: 48%; }
  @media (max-width: 767px) {
    .c-col2-item {
      flex-basis: auto;
      margin-right: auto;
      margin-left: auto; } }
  .c-col2-item:not(:nth-child(2n)) {
    margin-right: 4%; }
    @media (max-width: 767px) {
      .c-col2-item:not(:nth-child(2n)) {
        margin-right: auto; } }

/* 3カラム */
.c-col3-wrap {
  display: flex;
  /*justify-content: space-between;*/
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .c-col3-wrap {
      flex-direction: column; } }

.c-col3-item {
  flex-basis: 30%;
  /*	*/ }
  @media (max-width: 767px) {
    .c-col3-item {
      flex-basis: auto;
      margin-left: auto;
      margin-right: auto; } }
  .c-col3-item:not(:nth-child(3n)) {
    margin-right: auto; }
    @media (max-width: 767px) {
      .c-col3-item:not(:nth-child(3n)) {
        margin-right: auto; } }

/* 4カラム */
.c-col4-wrap {
  display: flex;
  /*justify-content: space-between;*/
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .c-col4-wrap {
      flex-direction: column; } }

.c-col4-item {
  flex-basis: 22.75%; }
  @media (max-width: 767px) {
    .c-col4-item {
      flex-basis: auto;
      margin-left: auto;
      margin-right: auto; } }
  .c-col4-item:not(:nth-child(4n)) {
    margin-right: 3%; }
    @media (max-width: 767px) {
      .c-col4-item:not(:nth-child(4n)) {
        margin-right: auto; } }

/* side
   ========================================================================== */
.c-side__widget {
  margin-bottom: 60px; }
  @media (max-width: 767px) {
    .c-side__widget {
      margin: 0 10px 60px; } }

.c-side__widget-title {
  position: relative;
  font-size: 1.3125rem;
  font-weight: bold;
  margin-bottom: 25px; }
  @media (max-width: 767px) {
    .c-side__widget-title {
      font-size: 1.125rem; } }
  .c-side__widget-title:after {
    content: "";
    height: 20px;
    width: 100%;
    display: block;
    background: #eff4ea;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000; }

.c-side__widget-list {
  list-style: none;
  margin: 1em 0 1em;
  padding: 0; }

.c-side__widget-list .children {
  padding-left: 1.1em; }

.c-side-link {
  display: block; }

/* カテゴリーリスト */
.c-side__widget-list.c-categorylist li {
  padding: 10px; }
  .c-side__widget-list.c-categorylist li a {
    display: flex;
    align-items: center; }
    .c-side__widget-list.c-categorylist li a:before {
      content: "";
      background: url("../img/entries/icn-side-category.png") no-repeat center center;
      background-size: contain;
      display: block;
      width: 23px;
      height: 23px;
      margin-right: 10px; }
  .c-side__widget-list.c-categorylist li a:hover {
    text-decoration: underline; }

/* 最新記事リスト */
.c-side__widget-list.c-postlist li {
  margin-bottom: 14px;
  border-bottom: 1px solid #808080;
  padding: 0 0 14px; }
  .c-side__widget-list.c-postlist li a:hover {
    opacity: 0.7; }

.c-side__widget-list.c-postlist .c-side-ttl {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4; }
  @media (max-width: 767px) {
    .c-side__widget-list.c-postlist .c-side-ttl {
      font-size: 0.875rem;
      font-weight: bold; } }

.c-side__widget-list.c-postlist .c-side-meta {
  margin: 5px 0 0;
  display: flex;
  align-items: center; }

.c-side__widget-list.c-postlist .c-side-date {
  color: #b1b1b1;
  font-size: 0.875rem;
  display: block; }
  @media (max-width: 767px) {
    .c-side__widget-list.c-postlist .c-side-date {
      font-size: 0.625rem; } }

.c-side__widget-list .c-side-cate {
  font-size: 0.75rem;
  border-radius: 5px;
  background: #00c3af;
  margin: 0 0 0 10px;
  padding: 2px 15px;
  color: #ffffff;
  display: inline-block; }
  @media (max-width: 767px) {
    .c-side__widget-list .c-side-cate {
      font-size: 0.750rem; } }

/* アーカイブ */
.c-side__widget--select {
  border: 1px solid #000000;
  background: #ffff00;
  position: relative;
  border-radius: 28px; }
  .c-side__widget--select select {
    width: 100%;
    padding: 16px 20px 16px 20px;
    border: none;
    background: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
  .c-side__widget--select:after {
    content: "▼";
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%); }

/*// -----------------------------------------------------------------
// Project
// -----------------------------------------------------------------*/
/* トップページ
   ========================================================================== */
/* topページ メインビジュアル */
.p-toppage__mainvisual {
  position: relative; }

.p-toppage__mainvisual--slide {
  /*max-height: 850px;*/ }
  .p-toppage__mainvisual--slide img {
    width: 100%;
    height: 100vh;
    /*max-height: 850px;*/
    object-fit: cover; }

.p-toppage__mainvisual--slide-txt {
  position: absolute;
  width: 100%;
  height: 100%;
  max-width: 1000px;
  top: 0;
  left: 50%;
  transform: translateX(-50%); }
  .p-toppage__mainvisual--slide-txt .slide-txt-lead {
    position: absolute;
    top: calc(7% + 100px);
    left: 0;
    font-size: 1.125rem;
    letter-spacing: 0.1rem;
    writing-mode: vertical-rl;
    font-family: 'Noto Serif JP', serif; }
    @media (max-width: 767px) {
      .p-toppage__mainvisual--slide-txt .slide-txt-lead {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: space-around;
        left: 50%;
        transform: translateX(-50%);
        margin: 0; } }
    .p-toppage__mainvisual--slide-txt .slide-txt-lead span {
      background: #ffff;
      display: inline-block;
      margin: 0 0.5rem;
      padding: 1rem; }
      @media (max-width: 767px) {
        .p-toppage__mainvisual--slide-txt .slide-txt-lead span {
          margin: 0 0.25rem;
          padding: .5rem; } }

.p-toppage__mainvisual--slide-logo {
  position: absolute;
  bottom: 3%;
  right: 0;
  z-index: 5;
  text-align: right; }
  @media (max-width: 991px) {
    .p-toppage__mainvisual--slide-logo img {
      width: 60%;
      height: auto; } }
  @media (max-width: 767px) {
    .p-toppage__mainvisual--slide-logo img {
      width: 32.5%;
      height: auto;
      margin-right: 25px; } }

.p-toppage__mainvisual--slide-scroll {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, -10%); }
  @media (max-width: 767px) {
    .p-toppage__mainvisual--slide-scroll {
      display: none; } }

/* トップページ　お知らせ */
.p-toppage__news {
  padding-top: 44px;
  padding-bottom: 44px; }

.p-toppage__news > .c-ttl01 {
  margin: 4.75rem auto; }
  @media (max-width: 767px) {
    .p-toppage__news > .c-ttl01 {
      margin: 1.75rem auto; } }

.p-toppage__news > .c-ttl01:after {
  content: url("../img/index/ttl-news.png");
  position: absolute;
  right: -30px;
  top: 0;
  transform: translate(100%, -34%); }
  @media (max-width: 767px) {
    .p-toppage__news > .c-ttl01:after {
      display: none; } }

.p-toppage__news--list {
  margin-bottom: 55px; }

.p-toppage__news--list-item {
  margin-bottom: 22px;
  border-bottom: 1px solid #a3a3a3;
  padding: 10px; }
  @media (max-width: 767px) {
    .p-toppage__news--list-item {
      margin-bottom: 0; } }

.p-toppage__news--list-item a {
  display: flex;
  align-items: center; }
  .p-toppage__news--list-item a:hover .p-toppage__news--list-ttl {
    text-decoration: underline; }
  @media (max-width: 767px) {
    .p-toppage__news--list-item a {
      flex-wrap: wrap; } }

.p-toppage__news--list-ttl {
  font-size: 1rem;
  color: #333333;
  font-weight: normal; }
  @media (max-width: 767px) {
    .p-toppage__news--list-ttl {
      flex-basis: 100%;
      font-size: 0.875rem;
      font-weight: bold;
      margin: 5px 0 0; } }

.p-toppage__news--list-cate {
  background: #00c3af;
  color: #fff;
  border-radius: 10px;
  padding: 3px 14px;
  margin: 0 22px;
  font-size: 1rem;
  position: relative;
  white-space: nowrap; }
  @media (max-width: 767px) {
    .p-toppage__news--list-cate {
      font-size: 0.750rem;
      margin: 0 10px; } }

.p-toppage__news--list-date {
  white-space: nowrap; }
  @media (max-width: 767px) {
    .p-toppage__news--list-date {
      margin: 0;
      padding: 0;
      font-size: 0.625rem; } }

/* トップページ　イベント */
.p-toppage__event {
  padding-bottom: 44px; }

.p-toppage__event > .c-ttl01 {
  margin: 4.75rem auto; }
  @media (max-width: 767px) {
    .p-toppage__event > .c-ttl01 {
      margin: 1.75rem auto; } }

.p-toppage__event > .c-ttl01:before {
  content: url("../img/index/ttl-event.png");
  position: absolute;
  left: -20px;
  top: 0;
  transform: translate(-100%, -30%); }
  @media (max-width: 767px) {
    .p-toppage__event > .c-ttl01:before {
      display: none; } }

.p-toppage__event--list {
  margin-bottom: 55px; }
  @media (max-width: 767px) {
    .p-toppage__event--list {
      margin-bottom: 0; } }

.p-toppage__event--list-box {
  margin-bottom: 22px; }
  @media (max-width: 767px) {
    .p-toppage__event--list-box {
      padding: 0 10px 0; } }

.p-toppage__event--list-box a {
  padding: 0 0 3.4rem;
  display: flex;
  height: 100%;
  flex-direction: column;
  position: relative;
  text-align: center; }
  @media (max-width: 767px) {
    .p-toppage__event--list-box a {
      padding: 0 0 2.4rem; } }

@media (max-width: 767px) {
  .p-toppage__event--list-box a.__end {
    padding: 0; } }

.p-toppage__event--list-img {
  max-width: 302px;
  margin: 0 auto 12px;
  line-height: 0; }
  @media (max-width: 767px) {
    .p-toppage__event--list-img {
      max-width: 100%; } }
  .p-toppage__event--list-img img {
    /*border-radius: 40% / 46%;*/
    border-radius: 16% / 16%; }

.p-toppage__event--list-ttl {
  font-size: 1rem;
  color: #333333;
  font-weight: normal;
  margin: 0;
  text-align: left;
  line-height: 1.4;
  font-weight: bold; }
  @media (max-width: 767px) {
    .p-toppage__event--list-ttl {
      max-width: 302px;
      font-size: 0.875rem;
      margin: 0 auto; } }

.p-toppage__event--list-date {
  color: #adadad;
  text-align: center;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%); }

/* 自然と遊ぶ */
.p-toppage__play .c-bg01 > .c-ttl01 {
  margin: 3.75rem auto; }
  @media (max-width: 767px) {
    .p-toppage__play .c-bg01 > .c-ttl01 {
      margin: 1.75rem auto; } }

.p-toppage__play .c-bg01 > .c-ttl01:after {
  content: url("../img/index/ttl-play.png");
  position: absolute;
  right: -20px;
  top: 0;
  transform: translate(100%, -30%); }
  @media (max-width: 767px) {
    .p-toppage__play .c-bg01 > .c-ttl01:after {
      display: none; } }

.p-toppage__play--main-img {
  height: 55vh;
  background: url("../img/index/img-play-main.jpg") no-repeat left center;
  background-size: 100% auto;
  background-attachment: fixed; }
  @media (max-width: 767px) {
    .p-toppage__play--main-img {
      height: 35vh;
      background: url("../img/index/img-play-main.jpg") no-repeat center center;
      background-size: 100% auto;
      background-attachment: inherit; } }

.p-toppage__play .c-bg01 {
  padding-top: 84px;
  padding-bottom: 84px; }

.p-toppage__play--list {
  margin-bottom: 55px; }

.p-toppage__play--list-box {
  margin-bottom: 22px;
  max-width: 380px; }
  @media (max-width: 767px) {
    .p-toppage__play--list-box {
      margin: 0 auto 10px; } }

.p-toppage__play--list-img img {
  border-radius: 34% / 45%; }

.p-toppage__play--list-btn {
  display: flex;
  align-items: center; }
  @media (max-width: 991px) {
    .p-toppage__play--list-btn .p-toppage__play--icn {
      width: 20%; } }
  @media (max-width: 767px) {
    .p-toppage__play--list-btn .p-toppage__play--icn {
      width: auto; } }
  .p-toppage__play--list-btn .c-btn01 {
    width: 60%;
    max-width: 222px; }
    @media (max-width: 991px) {
      .p-toppage__play--list-btn .c-btn01 {
        white-space: nowrap;
        width: 80%; } }
    @media (max-width: 767px) {
      .p-toppage__play--list-btn .c-btn01 {
        white-space: normal; } }
    .p-toppage__play--list-btn .c-btn01 a {
      /*font-size: 1.125rem;*/ }

/* 観光スポット */
.p-toppage__tourist {
  padding: 87px 0; }

.p-toppage__tourist .c-bg01 {
  padding-top: 44px;
  padding-bottom: 44px; }

/*にこ淵*/
.p-toppage__tourist--nikobuchi {
  display: flex;
  margin-right: calc(50% - 50vw);
  justify-content: space-between; }
  @media (max-width: 767px) {
    .p-toppage__tourist--nikobuchi {
      flex-direction: column-reverse; } }

.p-toppage__tourist--nikobuchi-left {
  flex-basis: 34%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  max-width: 300px; }
  @media (max-width: 767px) {
    .p-toppage__tourist--nikobuchi-left {
      max-width: none;
      display: block;
      margin-right: calc(50vw - 50% + 5px);
      padding: 0 10px; } }

.p-toppage__tourist--nikobuchi-img-small {
  margin-bottom: 55px; }
  @media (max-width: 991px) {
    .p-toppage__tourist--nikobuchi-img-small {
      display: none; } }
  .p-toppage__tourist--nikobuchi-img-small img {
    border-radius: 30px; }

.p-toppage__tourist--nikobuchi-ttl {
  font-size: 3.4375rem;
  line-height: 1.4;
  writing-mode: vertical-rl;
  margin: 25px 0 25px auto; }
  @media (max-width: 991px) {
    .p-toppage__tourist--nikobuchi-ttl {
      margin: 25px 0 25px auto;
      font-size: 2.5rem; } }
  @media (max-width: 767px) {
    .p-toppage__tourist--nikobuchi-ttl {
      writing-mode: horizontal-tb;
      margin: 0; } }
  .p-toppage__tourist--nikobuchi-ttl .__english-name {
    display: block;
    font-size: 0.875rem;
    margin: 10px 0; }
    @media (max-width: 767px) {
      .p-toppage__tourist--nikobuchi-ttl .__english-name {
        font-size: 0.625rem;
        margin: 0 4px; } }
  .p-toppage__tourist--nikobuchi-ttl .__upright-txt {
    text-orientation: upright; }

.p-toppage__tourist--nikobuchi-txt {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 300px;
  width: 680px;
  padding: 50px 60px;
  transform: translateX(calc(100% - 300px)); }
  @media (max-width: 767px) {
    .p-toppage__tourist--nikobuchi-txt {
      width: auto;
      border-radius: 0;
      transform: translateX(0);
      padding: 0; } }

.p-toppage__tourist--nikobuchi-right {
  flex-basis: 66%; }
  @media (max-width: 767px) {
    .p-toppage__tourist--nikobuchi-right {
      margin-left: 5%; } }

.p-toppage__tourist--nikobuchi-img-large {
  border-radius: 120px 0 0 120px;
  overflow: hidden; }
  @media (max-width: 767px) {
    .p-toppage__tourist--nikobuchi-img-large {
      border-radius: 60px 0 0 60px; } }
  .p-toppage__tourist--nikobuchi-img-large img {
    width: 100%;
    height: auto;
    object-fit: cover; }

/*UFOライン*/
.p-toppage__tourist--yuholine {
  display: flex;
  margin-top: 85px;
  margin-bottom: 85px;
  margin-left: calc(50% - 50vw);
  justify-content: space-between;
  flex-direction: row-reverse; }
  @media (max-width: 767px) {
    .p-toppage__tourist--yuholine {
      flex-direction: column-reverse;
      margin-top: 45px;
      margin-bottom: 45px; } }

.p-toppage__tourist--yuholine-right {
  flex-basis: 34%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  max-width: 300px; }
  @media (max-width: 767px) {
    .p-toppage__tourist--yuholine-right {
      max-width: none;
      display: block;
      margin-left: calc(50vw - 50% + 5px);
      padding: 0 10px; } }

.p-toppage__tourist--yuholine-img-small {
  margin-bottom: 55px; }
  @media (max-width: 991px) {
    .p-toppage__tourist--yuholine-img-small {
      display: none; } }
  .p-toppage__tourist--yuholine-img-small img {
    border-radius: 30px; }

.p-toppage__tourist--yuholine-ttl {
  font-size: 3.4375rem;
  line-height: 1.4;
  writing-mode: vertical-rl;
  margin: 25px 0 25px auto; }
  @media (max-width: 991px) {
    .p-toppage__tourist--yuholine-ttl {
      margin: 25px 0 25px auto;
      font-size: 2.5rem; } }
  @media (max-width: 767px) {
    .p-toppage__tourist--yuholine-ttl {
      writing-mode: horizontal-tb;
      margin: 0; } }
  .p-toppage__tourist--yuholine-ttl .__english-name {
    display: block;
    font-size: 0.875rem;
    margin: 10px 0; }
    @media (max-width: 767px) {
      .p-toppage__tourist--yuholine-ttl .__english-name {
        font-size: 0.625rem;
        margin: 0 4px; } }
  .p-toppage__tourist--yuholine-ttl .__upright-txt {
    text-orientation: upright; }
  .p-toppage__tourist--yuholine-ttl:before {
    content: url("../img/index/ttl-tourist-yuholine.png");
    display: block; }
    @media (max-width: 767px) {
      .p-toppage__tourist--yuholine-ttl:before {
        display: none; } }

.p-toppage__tourist--yuholine-txt {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 300px;
  width: 680px;
  padding: 50px 0 50px 60px;
  position: relative; }
  @media (max-width: 767px) {
    .p-toppage__tourist--yuholine-txt {
      width: auto;
      border-radius: 0;
      transform: translateX(0);
      padding: 0; } }

.p-toppage__tourist--yuholine-left {
  flex-basis: 66%; }
  @media (max-width: 767px) {
    .p-toppage__tourist--yuholine-left {
      margin-right: 5%; } }

.p-toppage__tourist--yuholine-img-large {
  border-radius: 0 120px 120px 0;
  overflow: hidden; }
  @media (max-width: 767px) {
    .p-toppage__tourist--yuholine-img-large {
      border-radius: 0 60px 60px 0; } }
  .p-toppage__tourist--yuholine-img-large img {
    width: 100%;
    height: auto;
    object-fit: cover; }

/* その他観光スポット */
.p-toppage__tourist--list {
  margin-bottom: 55px; }
  @media (max-width: 767px) {
    .p-toppage__tourist--list {
      margin: 0 10px; } }

.p-toppage__tourist--list-box {
  margin-bottom: 22px; }
  @media (max-width: 767px) {
    .p-toppage__tourist--list-box {
      /*margin: 0 auto 10px;*/ } }

.p-toppage__tourist--list-img {
  text-align: center;
  line-height: 0; }
  .p-toppage__tourist--list-img img {
    border-radius: 16% / 16%; }

.p-toppage__tourist--list-ttl {
  font-size: 1.5rem;
  text-align: center;
  line-height: 1.4;
  margin-top: 1rem; }
  .p-toppage__tourist--list-ttl span {
    font-size: 0.75rem;
    display: block;
    margin: 12px auto;
    color: #959595;
    font-weight: normal; }
    @media (max-width: 767px) {
      .p-toppage__tourist--list-ttl span {
        margin: 0; } }

.p-toppage__tourist--list-summary {
  margin-bottom: 2rem;
  font-size: 0.875rem;
  line-height: 1.75; }
  @media (max-width: 767px) {
    .p-toppage__tourist--list-summary {
      margin-bottom: 1rem; } }

/* カテゴリ別観光スポット */
.p-toppage__tourism--txt {
  text-align: center;
  margin-bottom: 30px; }

.p-toppage__tourism--main-img {
  height: 55vh;
  background: url("../img/index/img-tourism-main.jpg") no-repeat left center;
  background-size: 100% auto;
  background-attachment: fixed; }
  @media (max-width: 767px) {
    .p-toppage__tourism--main-img {
      height: 35vh;
      background: url("../img/index/img-tourism-main.jpg") no-repeat center bottom;
      background-size: 100% auto;
      background-attachment: inherit; } }

.p-toppage__tourism .c-bg02 {
  padding-top: 34px;
  padding-bottom: 84px; }

.p-toppage__tourism--icn-list {
  display: flex;
  justify-content: center;
  margin-bottom: 50px; }
  @media (max-width: 767px) {
    .p-toppage__tourism--icn-list {
      flex-wrap: wrap; } }

.p-toppage__tourism--icn-list-item {
  margin: 0 .5% .5%;
  text-align: center; }
  @media (max-width: 767px) {
    .p-toppage__tourism--icn-list-item {
      margin: 0 1.5% 1.5%;
      width: 30%; } }

/* いの町観光の魅力 */
.p-toppage__appeal {
  padding: 44px 0; }

.p-toppage__appeal > .c-ttl01 {
  margin: 4.75rem auto; }
  @media (max-width: 767px) {
    .p-toppage__appeal > .c-ttl01 {
      margin: 1.75rem auto; } }

.p-toppage__appeal > .c-ttl01:after {
  content: url("../img/index/ttl-appeal.png");
  position: absolute;
  right: -20px;
  top: 0;
  transform: translate(100%, -30%); }
  @media (max-width: 767px) {
    .p-toppage__appeal > .c-ttl01:after {
      display: none; } }

.p-toppage__appeal--wrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 55px; }
  @media (max-width: 767px) {
    .p-toppage__appeal--wrap {
      flex-direction: column;
      margin: 0 10px 0; } }

.p-toppage__appeal--img-col {
  flex-basis: 22.56%; }
  @media (max-width: 767px) {
    .p-toppage__appeal--img-col {
      text-align: center;
      display: none; }
      .p-toppage__appeal--img-col .__second-img {
        display: none; }
      .p-toppage__appeal--img-col img {
        width: 100%; } }

.p-toppage__appeal--txt-col {
  flex-basis: 67.67%; }

.p-toppage__appeal--txt-catch {
  font-size: 2.25rem;
  margin-top: 0;
  font-weight: 700;
  color: #000000; }
  @media (max-width: 767px) {
    .p-toppage__appeal--txt-catch {
      font-size: 2rem;
      line-height: 1.4;
      margin: 0; } }

.p-toppage__appeal--txt-lead {
  max-width: 700px;
  margin: 36px 0; }
  @media (max-width: 767px) {
    .p-toppage__appeal--txt-lead {
      margin: 10px 0; } }
  .p-toppage__appeal--txt-lead span {
    display: inline-block; }

.p-toppage__appeal--txt-bottom-img {
  margin-right: calc(50% - 50vw); }
  .p-toppage__appeal--txt-bottom-img img {
    object-fit: cover;
    width: 100%;
    height: 100%; }
  @media (max-width: 767px) {
    .p-toppage__appeal--txt-bottom-img {
      margin-left: -10px;
      margin-right: -10px; } }

/* いの町観光協会について */
.p-toppage__about {
  padding: 44px 0 0; }

.p-toppage__about > .c-ttl01 {
  margin: 4.75rem auto; }
  @media (max-width: 767px) {
    .p-toppage__about > .c-ttl01 {
      margin: 1.75rem auto; } }

.p-toppage__about > .c-ttl01:before {
  content: url("../img/index/ttl-about.png");
  position: absolute;
  left: -20px;
  top: 0;
  transform: translate(-100%, -30%); }
  @media (max-width: 767px) {
    .p-toppage__about > .c-ttl01:before {
      display: none; } }

.p-toppage__about--txt-catch {
  font-size: 2.25rem;
  margin-top: 0;
  font-weight: 700;
  text-align: center; }
  @media (max-width: 767px) {
    .p-toppage__about--txt-catch {
      font-size: 2rem;
      line-height: 1.4; } }

.p-toppage__about--txt-lead {
  max-width: 700px;
  margin: 36px auto;
  text-align: center;
  color: #000000; }
  @media (max-width: 767px) {
    .p-toppage__about--txt-lead {
      text-align: left; } }

.p-toppage__about--img-wrap {
  display: flex;
  justify-content: space-between;
  max-width: 1280px;
  margin: 0 auto 55px; }
  @media (max-width: 767px) {
    .p-toppage__about--img-wrap {
      flex-direction: column; } }

.p-toppage__about--img-leftcol {
  flex-basis: 70.31%; }
  .p-toppage__about--img-leftcol p {
    margin: 0; }
  @media (max-width: 767px) {
    .p-toppage__about--img-leftcol {
      text-align: center;
      margin-left: -10px;
      margin-right: -10px; } }

.p-toppage__about--img-rightcol {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  flex-basis: 26.65%; }
  .p-toppage__about--img-rightcol p {
    margin: 0; }
  @media (max-width: 767px) {
    .p-toppage__about--img-rightcol {
      display: none; } }

.p-toppage__about--onlineshop {
  margin: 110px auto 40px;
  text-align: center; }
  @media (max-width: 767px) {
    .p-toppage__about--onlineshop {
      margin: 63px auto;
      padding: 0 5%; } }

/* お知らせ・イベント
   ========================================================================== */
.p-information .l-page-head {
  background: url("../img/information/img-header.jpg");
  background-size: cover; }

/* スポット
   ========================================================================== */
/* =============
スポット一覧ページ
=================== */
.p-spot-entries .l-page-head {
  background: url("../img/spot/img-header.jpg");
  background-size: cover; }

.p-spot-entries .l-page-head__inner {
  min-height: 435px;
  transform: translateY(25%); }
  @media (max-width: 767px) {
    .p-spot-entries .l-page-head__inner {
      min-height: 185px; } }

.p-spot-entries__list {
  list-style: none;
  padding: 0;
  margin: 0 0 30px 0; }
  @media (max-width: 767px) {
    .p-spot-entries__list {
      margin: 0 10px 30px; } }

.p-spot-entries__item {
  border-bottom: 1px solid #000000;
  padding: 40px 0; }
  @media (max-width: 767px) {
    .p-spot-entries__item {
      padding: 25px 0; } }

.p-spot-entries__item--link {
  text-decoration: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-flow: row;
  padding: 20px 20px; }
  @media (max-width: 767px) {
    .p-spot-entries__item--link {
      flex-direction: column;
      padding: 0; } }
  .p-spot-entries__item--link:hover {
    opacity: 0.7; }
    .p-spot-entries__item--link:hover img {
      opacity: 1; }
  .p-spot-entries__item--link .p-spot-entries__item--summary {
    width: 48.4375%; }
    @media (max-width: 767px) {
      .p-spot-entries__item--link .p-spot-entries__item--summary {
        width: 100%; } }

.p-spot-entries__item--figure {
  overflow: hidden;
  width: 46.875%;
  max-width: 451px;
  line-height: 0; }
  @media (max-width: 767px) {
    .p-spot-entries__item--figure {
      margin: 0 auto 0;
      text-align: center;
      width: 100%; } }

/* 一覧投稿タイトル */
.p-spot-entries__item--ttl {
  font-size: 1.875rem;
  font-weight: 700;
  margin-bottom: 1em;
  line-height: 1.4; }
  @media (max-width: 767px) {
    .p-spot-entries__item--ttl {
      margin-top: 0.5em;
      margin-bottom: 0.5em; } }

.p-spot-entries__item--ttl span {
  display: block;
  font-size: 0.625rem;
  color: #808080;
  margin: 0 4px; }

/* 一覧投稿キャッチコピー */
.p-spot-entries__item-chatch {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.4; }
  @media (max-width: 767px) {
    .p-spot-entries__item-chatch {
      font-size: 1.125rem; } }
  .p-spot-entries__item-chatch:after {
    content: "";
    display: block;
    width: 140px;
    height: 1px;
    background: #000000;
    margin: 0.8em 0 1em; }

/* 一覧投稿カテゴリーアイコン */
.p-spot-entries__item--meta-cate {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 22px; }
  @media (max-width: 767px) {
    .p-spot-entries__item--meta-cate {
      margin-bottom: 0; } }

.p-spot-entries__item--meta-cate-icn {
  margin-right: 10px;
  max-width: 56px; }
  .p-spot-entries__item--meta-cate-icn img {
    width: 56px;
    height: auto; }

/* 一覧投稿お問い合わせ先情報 */
.p-spot-entries__item-excerpt {
  border-collapse: collapse;
  width: 100%; }
  .p-spot-entries__item-excerpt tr:not(:last-child) {
    border-bottom: 1px dashed #b8b8b8; }
  .p-spot-entries__item-excerpt th, .p-spot-entries__item-excerpt td {
    padding: 10px;
    vertical-align: top;
    text-align: left;
    font-size: 0.875rem; }
    @media (max-width: 767px) {
      .p-spot-entries__item-excerpt th, .p-spot-entries__item-excerpt td {
        display: block;
        width: 100%; } }
  .p-spot-entries__item-excerpt th {
    width: 30%;
    padding-right: 10px; }
    @media (max-width: 767px) {
      .p-spot-entries__item-excerpt th {
        width: 100%;
        padding: 10px 5px 0; } }
  @media (max-width: 767px) {
    .p-spot-entries__item-excerpt td {
      padding: 0 5px 10px; } }
  @media (max-width: 767px) {
    .p-spot-entries__item-excerpt tr:last-child td {
      padding: 0 5px 0px; } }

/* =============
スポット詳細ページ
=================== */
.p-spot-entry__header {
  background: #eff4ea;
  border-bottom: 1px solid #000000;
  border-top: 1px solid #000000; }
  @media (max-width: 767px) {
    .p-spot-entry__header {
      margin: 64px 0 0; } }

.p-spot-entry__header .l-page-head__inner {
  width: 100%;
  min-height: 600px;
  max-width: none;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: stretch; }
  @media (max-width: 767px) {
    .p-spot-entry__header .l-page-head__inner {
      min-height: inherit;
      display: block; } }

.p-spot-entry__header--ttl {
  display: flex;
  justify-content: center;
  flex-direction: column;
  width: 36%;
  min-width: 360px;
  padding: 20px; }
  @media (max-width: 767px) {
    .p-spot-entry__header--ttl {
      width: auto; } }

.p-spot-entry__header--ttl .l-page-head__title {
  font-weight: 700;
  font-size: 3rem;
  color: #000000;
  line-height: 1.25; }
  @media (max-width: 767px) {
    .p-spot-entry__header--ttl .l-page-head__title {
      font-size: 1.8rem;
      line-height: 1.4; } }
  .p-spot-entry__header--ttl .l-page-head__title span {
    font-size: 0.75rem;
    display: block;
    color: #999999;
    letter-spacing: 0.1rem;
    margin: 1em 0; }
    @media (max-width: 767px) {
      .p-spot-entry__header--ttl .l-page-head__title span {
        font-size: 0.625rem;
        margin: 0 4px; } }

/* ヘッダーキャッチコピー */
.p-spot-entry__header--catch {
  font-size: 1.875rem;
  border-bottom: 1px solid #000000;
  line-height: 1.5;
  font-weight: 700;
  margin: 20px 0;
  padding: 20px 0; }
  @media (max-width: 767px) {
    .p-spot-entry__header--catch {
      margin-top: 0;
      font-size: 1.125rem; } }

/* ヘッダーカテゴリーアイコン */
.p-spot-entry__header--cate-list {
  display: flex;
  flex-wrap: wrap; }

.p-spot-entry__header--cate-list-item {
  margin-right: 10px;
  max-width: 56px; }
  .p-spot-entry__header--cate-list-item img {
    width: 56px;
    height: auto; }

.p-spot-entry__header--img {
  flex-grow: 2; }
  .p-spot-entry__header--img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    vertical-align: bottom; }
    @media (max-width: 767px) {
      .p-spot-entry__header--img img {
        width: 100%;
        height: auto; } }

.p-spot-entry__header--img-pc {
  flex-grow: 2;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover; }
  @media (max-width: 767px) {
    .p-spot-entry__header--img-pc {
      display: none; } }

.p-spot-entry__header--img-sp {
  display: none; }
  @media (max-width: 767px) {
    .p-spot-entry__header--img-sp {
      display: block; }
      .p-spot-entry__header--img-sp img {
        vertical-align: bottom; } }

/* ブロック部分 */
.p-spot-entry__block {
  margin: 100px 0; }
  @media (max-width: 767px) {
    .p-spot-entry__block {
      margin: 0 10px 24px; } }

.p-spot-entry__block--ttl {
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  margin: 1em 0;
  color: #1c3738;
  border-bottom: 1px solid #c0c0c0;
  padding-bottom: 20px;
  padding-left: 20px; }
  @media (max-width: 767px) {
    .p-spot-entry__block--ttl {
      font-size: 1.25rem;
      border-bottom: none;
      margin-bottom: 0px; } }
  .p-spot-entry__block--ttl:before {
    content: "";
    background: #00c3af;
    position: absolute;
    left: 0;
    bottom: 20px;
    display: block;
    height: calc(100% - 20px);
    width: 9px; }

.p-spot-entry__inner-wrap {
  display: flex;
  justify-content: space-between;
  margin: 57px 0; }
  .p-spot-entry__inner-wrap.__photo-right {
    flex-direction: row-reverse; }
  @media (max-width: 767px) {
    .p-spot-entry__inner-wrap {
      display: block;
      margin: 0 0 44px; } }

/* 画像配置ある場合のみ幅固定 */
.__photo-right .p-spot-entry__textarea,
.__photo-left .p-spot-entry__textarea {
  flex-basis: 46.67%;
  word-break: break-all; }

.p-spot-entry__copy {
  font-size: 1.3125rem;
  font-weight: 700;
  margin-top: 0;
  line-height: 1.4; }
  @media (max-width: 767px) {
    .p-spot-entry__copy {
      margin-top: 1em;
      font-size: 1rem; } }

.p-spot-entry__photo {
  flex-basis: 47.5%;
  line-height: 0; }

/* スポット情報 */
.p-spot-entry__detail:after {
  content: "";
  height: 20px;
  width: 100%;
  display: block;
  background: #eff4ea;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000; }

@media (max-width: 767px) {
  .p-spot-entry__detail--inner {
    margin: 0 10px; } }

.p-spot-entry__detail--ttl {
  font-size: 1.5rem; }
  @media (max-width: 767px) {
    .p-spot-entry__detail--ttl {
      font-size: 1.125rem; } }
  .p-spot-entry__detail--ttl:after {
    content: "";
    height: 20px;
    width: 100%;
    display: block;
    background: #eff4ea;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000; }

.p-spot-entry__detail--table {
  padding: 23px 0; }
  @media (max-width: 767px) {
    .p-spot-entry__detail--table {
      padding: 0; } }
  .p-spot-entry__detail--table table {
    border-collapse: collapse;
    width: 100%; }
    .p-spot-entry__detail--table table tr:not(:last-child) {
      border-bottom: 1px dashed #b8b8b8; }
    .p-spot-entry__detail--table table th, .p-spot-entry__detail--table table td {
      padding: 20px;
      vertical-align: top;
      text-align: left;
      word-break: break-all; }
      @media (max-width: 767px) {
        .p-spot-entry__detail--table table th, .p-spot-entry__detail--table table td {
          padding: 10px 5px 0;
          display: block;
          width: 100%; } }
    .p-spot-entry__detail--table table th {
      width: 18%;
      padding-right: 10px; }
      @media (max-width: 767px) {
        .p-spot-entry__detail--table table th {
          width: 100%; } }
    @media (max-width: 767px) {
      .p-spot-entry__detail--table table td {
        padding: 0px 5px 10px; } }
  .p-spot-entry__detail--table a {
    text-decoration: underline; }
    .p-spot-entry__detail--table a:hover {
      text-decoration: none; }

/*
.p-spot-entry__detail--map {
		padding: 26px 0;
	iframe {
		width: 100%;
		height: 45vh;
	}
}*/
/* みんなにシェアしよう！ */
.p-spot-entry__share {
  padding: 76px 0; }
  @media (max-width: 767px) {
    .p-spot-entry__share {
      padding: 16px 0; } }

.p-spot-entry__share--btn {
  max-width: 680px;
  margin: 60px auto;
  display: flex;
  justify-content: space-around;
  padding: 34px 90px;
  border-radius: 100px;
  background: #eff4ea;
  font-size: 1.125rem;
  position: relative; }
  @media (max-width: 767px) {
    .p-spot-entry__share--btn {
      padding: 34px 40px;
      margin: 60px 10px; } }
  .p-spot-entry__share--btn:before {
    content: "みんなにシェアしよう！";
    background: #00c3af;
    color: #ffffff;
    font-size: 0.875rem;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    padding: 10px 27px;
    border-radius: 60px;
    transform: translate(-30%, -50%); }
    @media (max-width: 767px) {
      .p-spot-entry__share--btn:before {
        transform: translate(10%, -50%); } }

.p-spot-entry__share--btn-item {
  width: 30%;
  max-width: 80px;
  margin: 0 1.5%;
  text-align: center;
  flex-shrink: 1; }
  @media (max-width: 767px) {
    .p-spot-entry__share--btn-item {
      max-width: 60px; } }
  @media (max-width: 767px) {
    .p-spot-entry__share--btn-item span {
      max-width: 60px;
      font-size: 12px;
      display: block; } }

/*  周辺スポット
*/
.p-spot-entry__surrounding .c-bg01 > .c-ttl01 {
  margin: 3.75rem auto; }
  @media (max-width: 767px) {
    .p-spot-entry__surrounding .c-bg01 > .c-ttl01 {
      margin: 1.75rem auto; } }

.p-spot-entry__surrounding .c-bg01 > .c-ttl01:after {
  content: url("../img/spot/ttl-surrounding.png");
  position: absolute;
  right: -20px;
  top: 0;
  transform: translate(100%, -30%); }
  @media (max-width: 767px) {
    .p-spot-entry__surrounding .c-bg01 > .c-ttl01:after {
      display: none; } }

.p-spot-entry__surrounding .c-bg01 {
  padding-top: 62px;
  padding-bottom: 30px; }

.p-spot-entry__surrounding--list {
  margin-bottom: 35px; }
  @media (max-width: 767px) {
    .p-spot-entry__surrounding--list {
      margin: 0 10px 35px; } }

.p-spot-entry__surrounding--list-box {
  margin-bottom: 22px; }
  @media (max-width: 767px) {
    .p-spot-entry__surrounding--list-box {
      /*margin: 0 auto 10px;*/ } }

.p-spot-entry__surrounding--list-img {
  text-align: center;
  line-height: 0; }
  .p-spot-entry__surrounding--list-img img {
    border-radius: 16% / 16%; }

.p-spot-entry__surrounding--list-ttl {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 1rem; }
  @media (max-width: 767px) {
    .p-spot-entry__surrounding--list-ttl {
      margin-bottom: 1rem; } }
  .p-spot-entry__surrounding--list-ttl span {
    font-size: 0.75rem;
    display: block;
    margin: 12px auto 20px;
    color: #959595;
    font-weight: normal; }
    @media (max-width: 767px) {
      .p-spot-entry__surrounding--list-ttl span {
        margin: 0; } }

.p-spot-entry__surrounding--list-summary {
  font-size: 0.875rem;
  line-height: 1.75; }

/*  体験イベント情報
*/
.p-spot-entry__event > .c-ttl01 {
  margin: 4.75rem auto; }
  @media (max-width: 767px) {
    .p-spot-entry__event > .c-ttl01 {
      margin: 1.75rem auto; } }

.p-spot-entry__event > .c-ttl01:before {
  content: url("../img/spot/ttl-event.png");
  position: absolute;
  left: -20px;
  top: 0;
  transform: translate(-100%, -30%); }
  @media (max-width: 767px) {
    .p-spot-entry__event > .c-ttl01:before {
      display: none; } }

.p-spot-entry__event .c-bg01 {
  padding-top: 84px;
  padding-bottom: 84px; }

.p-spot-entry__event--list {
  margin-bottom: 55px; }

.p-spot-entry__event--list-box {
  margin-bottom: 22px; }
  @media (max-width: 767px) {
    .p-spot-entry__event--list-box {
      /*margin: 0 auto 10px;*/ } }

.p-spot-entry__event--list-img {
  text-align: center; }
  .p-spot-entry__event--list-img img {
    border-radius: 16% / 16%; }

.p-spot-entry__event--list-ttl {
  font-size: 1.5rem;
  line-height: 1.25;
  margin-bottom: 2rem; }
  .p-spot-entry__event--list-ttl span {
    font-size: 0.75rem;
    display: block;
    margin: 12px 0;
    color: #959595;
    font-weight: normal; }

/* カテゴリーアイコンリンク 一覧＆詳細どちらも利用 */
.c-spot__category-link--inner {
  display: flex;
  align-items: center; }
  @media (max-width: 767px) {
    .c-spot__category-link--inner {
      display: block; } }

.c-spot__category-link--ttl {
  font-size: 0.875rem;
  border-bottom: 5px solid #000000;
  white-space: nowrap;
  display: table;
  margin: 0 20px 3rem 0;
  line-height: 2; }
  @media (max-width: 767px) {
    .c-spot__category-link--ttl {
      margin: 0 auto 3rem; } }

.c-spot__category-link--icn-list {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
  align-items: center; }
  @media (max-width: 767px) {
    .c-spot__category-link--icn-list {
      flex-wrap: wrap; } }

.c-spot__category-link--icn-list-item {
  margin: 0 .5% .5%;
  text-align: center; }
  @media (max-width: 767px) {
    .c-spot__category-link--icn-list-item {
      margin: 0 2% 1.5%;
      width: 20%; } }

/* 一覧ページ余白調整 */
.p-spot-entries .c-spot__category-link:after {
  content: "";
  height: 20px;
  width: 100%;
  display: block;
  background: #eff4ea;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
  margin-top: 23px; }

/* 詳細ページ背景色余白調整 */
.p-spot-entry .c-spot__category-link .c-bg02 {
  padding-top: 100px;
  padding-bottom: 84px; }
  @media (max-width: 767px) {
    .p-spot-entry .c-spot__category-link .c-bg02 {
      padding-top: 60px;
      padding-bottom: 54px; } }

/* いの町観光協会会員様一覧
   ========================================================================== */
.p-about .l-page-head {
  background: url("../img/about/img-header.jpg");
  background-size: cover; }

.p-about .l-page-head__inner {
  min-height: 435px;
  transform: translateY(25%); }
  @media (max-width: 767px) {
    .p-about .l-page-head__inner {
      min-height: 205px; } }

/* メッセージ */
.p-about__message {
  margin-top: 110px;
  margin-bottom: 84px; }
  @media (max-width: 767px) {
    .p-about__message {
      margin-bottom: 60px; } }

.p-about__message--inner {
  max-width: 780px;
  margin: 0 auto; }
  @media (max-width: 767px) {
    .p-about__message--inner {
      margin: 0 10px; } }
  .p-about__message--inner p {
    line-height: 2.125; }

.p-about__message--ttl {
  text-align: center;
  line-height: 1.4; }

/* 使命 */
.p-about__mission {
  margin-bottom: 90px; }
  @media (max-width: 767px) {
    .p-about__mission {
      margin-bottom: 60px; } }

.p-about__mission--inner {
  max-width: 780px;
  margin: 0 auto; }
  @media (max-width: 767px) {
    .p-about__mission--inner {
      margin: 0 10px; } }
  .p-about__mission--inner p {
    line-height: 2.125; }

.p-about__mission--ttl {
  text-align: center;
  line-height: 1.4; }

/* 事業内容 */
.p-about__project:before {
  content: "";
  height: 20px;
  width: 100%;
  display: block;
  background: #eff4ea;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
  margin-bottom: 60px; }

.p-about__project--numbering-ttl {
  font-size: 1.5rem;
  display: flex;
  align-items: center;
  font-weight: 700;
  margin: 0 0 2rem; }
  .p-about__project--numbering-ttl .icn-numbering {
    background: #ffff00;
    border: 1px solid #000000;
    border-radius: 50%;
    line-height: 1;
    font-size: 2rem;
    width: 4rem;
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px; }

/* 事業内容 1.施設管理事業 */
.p-about__project--facility {
  padding: 59px 0;
  border-bottom: 1px solid #c0c0c0; }
  @media (max-width: 767px) {
    .p-about__project--facility {
      padding: 29px 0;
      margin: 0 10px; } }

.p-about__project--facility-wrap {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .p-about__project--facility-wrap {
      flex-direction: column-reverse; } }

.p-about__project--facility-img-col {
  flex-basis: 50%; }
  @media (max-width: 767px) {
    .p-about__project--facility-img-col {
      text-align: center;
      margin-bottom: 22px; } }

.p-about__project--facility-txt-col {
  flex-basis: 46%; }
  .p-about__project--facility-txt-col .c-btn01 {
    margin-top: 2.25rem; }
    .p-about__project--facility-txt-col .c-btn01 a {
      font-size: 1.125rem; }

/* 事業内容 2.観光事業 */
.p-about__project--tourism {
  padding: 80px 0 68px; }
  @media (max-width: 767px) {
    .p-about__project--tourism {
      padding: 42px 0;
      margin: 0 10px; } }

.p-about__project--tourism-list {
  margin-top: 44px;
  margin-bottom: 45px; }
  @media (max-width: 767px) {
    .p-about__project--tourism-list {
      margin-bottom: 0; } }

.p-about__project--tourism-list-box {
  margin-bottom: 22px; }
  @media (max-width: 767px) {
    .p-about__project--tourism-list-box {
      /*margin: 0 auto 10px;*/ } }

.p-about__project--tourism-list-img {
  text-align: center;
  margin-bottom: 20px; }
  .p-about__project--tourism-list-img img {
    vertical-align: bottom;
    border-radius: 30px; }
    @media (max-width: 767px) {
      .p-about__project--tourism-list-img img {
        width: 100%; } }

.p-about__project--tourism-list-ttl {
  font-size: 1.3125rem;
  text-align: center; }

.p-about__project--tourism-list-summary {
  margin-bottom: 2rem;
  font-size: 0.875rem;
  line-height: 1.75; }

.p-about__project--tourism-bottom-img {
  height: 55vh;
  background: url("../img/about/img-project-tourism-bottom.jpg") no-repeat left center;
  background-size: 100% auto;
  background-attachment: fixed; }
  @media (max-width: 767px) {
    .p-about__project--tourism-bottom-img {
      height: 35vh;
      background: url("../img/about/img-project-tourism-bottom.jpg") no-repeat center center;
      background-size: 100% auto;
      background-attachment: inherit; } }

/* 事業内容 3.情報事業 */
.p-about__project--information {
  border-bottom: 1px solid #c0c0c0;
  padding: 77px 0; }
  @media (max-width: 767px) {
    .p-about__project--information {
      padding: 0;
      margin: 0 10px; } }

.p-about__project--information-wrap {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse; }
  @media (max-width: 767px) {
    .p-about__project--information-wrap {
      flex-direction: column; } }

.p-about__project--information-img-col {
  flex-basis: 20.5%; }
  @media (max-width: 767px) {
    .p-about__project--information-img-col {
      display: none; } }
  .p-about__project--information-img-col .p-about__project--information-img-inner {
    margin-left: calc(50% - 50vw); }
  .p-about__project--information-img-col img {
    object-fit: cover;
    width: 100%;
    height: auto;
    max-height: 800px; }
  @media (max-width: 767px) {
    .p-about__project--information-img-col {
      text-align: center; } }

.p-about__project--information-txt-col {
  flex-basis: 65%; }

.p-about__project--information-list {
  margin-top: 44px;
  margin-bottom: 105px; }
  @media (max-width: 767px) {
    .p-about__project--information-list {
      margin-bottom: 0; } }

.p-about__project--information-list-box {
  margin-bottom: 22px; }
  @media (max-width: 767px) {
    .p-about__project--information-list-box {
      /*margin: 0 auto 10px;*/ } }

.p-about__project--information-list-img {
  text-align: center;
  margin-bottom: 20px;
  line-height: 0; }
  .p-about__project--information-list-img img {
    vertical-align: bottom;
    border-radius: 30px; }
    @media (max-width: 767px) {
      .p-about__project--information-list-img img {
        width: 100%; } }

.p-about__project--information-list-ttl {
  font-size: 1.3125rem;
  text-align: center; }

.p-about__project--information-list-summary {
  margin-bottom: 2rem;
  font-size: 0.875rem;
  line-height: 1.75; }

/* 事業内容 4.その他・会員事業 */
.p-about__project--member {
  padding: 69px 0; }
  @media (max-width: 767px) {
    .p-about__project--member {
      padding: 42px 0;
      margin: 0 10px; } }

.p-about__project--member .p-about__project--numbering-ttl {
  flex-direction: column;
  align-items: center; }
  .p-about__project--member .p-about__project--numbering-ttl .icn-numbering {
    margin-right: 0; }

.p-about__project--member .p-about__project--overview-txt {
  text-align: center; }
  @media (max-width: 767px) {
    .p-about__project--member .p-about__project--overview-txt {
      text-align: left; } }

.p-about__member--inner {
  max-width: 760px;
  margin: 0 auto; }

/* 協会概要 */
.p-about__information {
  margin-bottom: 110px; }
  .p-about__information:before {
    content: "";
    height: 20px;
    width: 100%;
    display: block;
    background: #eff4ea;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    margin-bottom: 60px; }
  @media (max-width: 767px) {
    .p-about__information {
      margin-bottom: 60px; } }

.p-about__information--wrap {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  margin-top: 53px; }
  @media (max-width: 767px) {
    .p-about__information--wrap {
      flex-direction: column-reverse; } }

.p-about__information--img-col {
  flex-basis: 45.8%; }
  @media (max-width: 767px) {
    .p-about__information--img-col {
      margin-bottom: 33px; } }
  @media (max-width: 767px) {
    .p-about__information--img-col {
      text-align: center; } }

.p-about__information--txt-col {
  flex-basis: 50%; }

.p-about__information--table {
  border-collapse: collapse;
  width: 100%;
  border-top: 1px solid #c0c0c0; }

.p-about__information--table th {
  font-size: 1.125rem;
  text-align: left;
  border-bottom: 1px solid #c0c0c0;
  padding: 35px 20px; }
  @media (max-width: 767px) {
    .p-about__information--table th {
      padding: 35px 10px;
      font-size: 1rem;
      width: 100px; } }

.p-about__information--table td {
  border-bottom: 1px solid #c0c0c0;
  padding: 35px 20px 35px 20px; }

/* アクセス */
.p-about__access {
  margin-bottom: 150px; }
  .p-about__access:before {
    content: "";
    height: 20px;
    width: 100%;
    display: block;
    background: #eff4ea;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    margin-bottom: 60px; }
  @media (max-width: 767px) {
    .p-about__access {
      margin-bottom: 60px; } }

.p-about__access--directions-wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 53px; }
  @media (max-width: 767px) {
    .p-about__access--directions-wrap {
      flex-direction: column;
      margin: 0 10px; } }

.p-about__access--directions-car {
  flex-basis: 38%; }

.p-about__access--directions-public {
  flex-basis: 55.7%; }

.p-about__access--directions-ttl {
  border-bottom: 1px solid #000000;
  font-size: 1.5rem;
  padding-bottom: 0.5rem;
  margin-bottom: 0.5rem; }
  @media (max-width: 767px) {
    .p-about__access--directions-ttl {
      font-size: 1.3125rem; } }

.p-about__access--route {
  display: flex;
  align-items: center;
  margin: 22px 0; }
  @media (max-width: 767px) {
    .p-about__access--route {
      display: block; } }
  .p-about__access--route .icn-transport {
    width: 94px;
    margin-right: 14px; }
    @media (max-width: 767px) {
      .p-about__access--route .icn-transport {
        display: inline-block;
        width: 64px; } }
  .p-about__access--route p {
    margin: 0; }
    @media (max-width: 767px) {
      .p-about__access--route p {
        margin: inherit; } }

.p-about__access iframe {
  width: 100%;
  height: 50vh;
  max-height: 490px;
  margin: 60px 0; }

/* いの町の魅力
   ========================================================================== */
.p-attraction .l-page-head {
  background: url("../img/attraction/img-header.jpg");
  background-size: cover; }

.p-attraction .l-page-head__inner {
  height: 75vh;
  max-height: 800px;
  min-height: 600px;
  /*	transform: translateY(50%);*/ }
  @media (max-width: 767px) {
    .p-attraction .l-page-head__inner {
      max-height: 440px; } }

.p-attraction .l-page-head__title {
  margin: 0 auto;
  text-align: center; }

/* アクティビティ　いの町の食　一覧共通 */
@media (max-width: 767px) {
  .p-attraction__meal--recommendation {
    margin: 0 10px; } }

.c-attraction__versatile--list {
  list-style: none;
  padding: 0;
  margin: 68px 0; }
  @media (max-width: 767px) {
    .c-attraction__versatile--list {
      margin: 38px 0; } }

.c-attraction__versatile--list-item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-flow: row;
  padding: 20px 0; }
  @media (max-width: 767px) {
    .c-attraction__versatile--list-item {
      flex-direction: column; } }

.c-attraction__versatile--list-item-txt {
  flex-basis: 55%; }
  @media (max-width: 767px) {
    .c-attraction__versatile--list-item-txt {
      width: 100%; } }

.c-attraction__versatile--list-item-figure {
  overflow: hidden;
  flex-basis: 40%;
  max-width: 400px;
  line-height: 0; }
  .c-attraction__versatile--list-item-figure img {
    border-radius: 20px; }
  @media (max-width: 767px) {
    .c-attraction__versatile--list-item-figure {
      margin: 0 auto 0;
      text-align: center;
      width: 100%; } }

.c-attraction__versatile--list-item-ttl {
  font-size: 1.5rem;
  font-weight: 700; }
  @media (max-width: 767px) {
    .c-attraction__versatile--list-item-ttl {
      margin: 1rem 0 0; } }

@media (max-width: 767px) {
  .c-attraction__versatile--list-item-summary {
    margin: 1rem 0 0; } }

/* こぼれ話共通 */
.p-attraction__oddly {
  background: #eff4ea;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  min-height: 700px;
  display: flex; }
  @media (max-width: 767px) {
    .p-attraction__oddly {
      min-height: inherit;
      display: block; } }
  .p-attraction__oddly.__one-column {
    flex-direction: column; }

.p-attraction__oddly--txt {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  flex-basis: 50%;
  min-width: 360px;
  padding: 30px 50px; }
  @media (max-width: 767px) {
    .p-attraction__oddly--txt {
      width: auto;
      padding: 20px; } }

.p-attraction__oddly--txt-inner {
  max-width: 560px; }

.p-attraction__oddly--ttl-point > p {
  background: #00c3af;
  color: #ffffff;
  padding: 8px 24px;
  border-radius: 20px;
  display: table;
  position: relative;
  margin-bottom: 20px; }
  .p-attraction__oddly--ttl-point > p:after {
    content: "";
    display: block;
    width: 34px;
    height: 27px;
    background: url("../img/attraction/bg-oddly-point.png") no-repeat left top;
    position: absolute;
    top: 100%;
    left: 30px; }

.p-attraction__oddly--ttl {
  font-weight: 700;
  font-size: 2.5rem;
  text-align: center;
  line-height: 1.25;
  margin-bottom: 1em; }
  @media (max-width: 767px) {
    .p-attraction__oddly--ttl {
      font-size: 1.8rem; } }
  .p-attraction__oddly--ttl span {
    display: block;
    font-size: 1.5rem; }
  .p-attraction__oddly--ttl:after {
    content: "";
    display: block;
    width: 100px;
    height: 1px;
    background: #00c3af;
    margin: 1em auto; }

.p-attraction__oddly--catch {
  font-size: 1.375rem;
  font-weight: 700;
  margin-bottom: 1em;
  line-height: 1.4; }

.p-attraction__oddly--img {
  flex-grow: 2;
  	/*figure {
  height: 100%;
  		margin-right: calc(50% - 50vw);}*/
  /*img{
  	width: 100%;
  	height: auto;
  	vertical-align: bottom;
  	object-fit: cover;
  }*/ }
  .p-attraction__oddly--img.__img-ryu {
    line-height: 0; }
    .p-attraction__oddly--img.__img-ryu .__img {
      width: 100%; }
  .p-attraction__oddly--img.__img-washi {
    background: url("../img/attraction/img-oddly-washi.jpg") no-repeat center center;
    background-size: cover; }

#js-ryu__slide {
  margin: 0; }

/* 魅力ページメイン */
.p-attraction__main {
  padding: 78px 0 126px; }
  @media (max-width: 767px) {
    .p-attraction__main {
      padding: 28px 10px 42px; } }

.p-attraction__main--inner {
  text-align: center;
  margin-bottom: 84px; }
  @media (max-width: 767px) {
    .p-attraction__main--inner {
      margin-bottom: 44px; } }

.p-attraction__main--ttl {
  font-size: 2.5rem;
  margin-bottom: 3rem; }
  @media (max-width: 767px) {
    .p-attraction__main--ttl {
      font-size: 2rem;
      line-height: 1.4;
      text-align: left; } }

.p-attraction__main--lead {
  font-size: 1.25rem;
  font-weight: 700; }
  @media (max-width: 767px) {
    .p-attraction__main--lead {
      text-align: left;
      font-size: 1.125rem; } }

/* アイコンページナビ */
.p-attraction__main--nav .p-attraction__main--nav-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }

.p-attraction__main--nav .nav-list-item {
  max-width: 206px;
  max-height: 206px;
  margin: 0 1% 20px;
  line-height: 1; }
  @media (max-width: 767px) {
    .p-attraction__main--nav .nav-list-item {
      flex-basis: 22%; } }
  .p-attraction__main--nav .nav-list-item a {
    background: #eff4ea;
    display: block;
    border-radius: 50%;
    border: 1px solid #000000;
    height: auto; }
    @media (max-width: 767px) {
      .p-attraction__main--nav .nav-list-item a {
        overflow: hidden;
        width: 77px;
        height: 77px;
        display: flex;
        justify-content: center;
        align-items: center; } }
  .p-attraction__main--nav .nav-list-item a:hover {
    background: #ffff00; }
    .p-attraction__main--nav .nav-list-item a:hover img {
      opacity: 1; }
  @media (max-width: 767px) {
    .p-attraction__main--nav .nav-list-item img {
      object-fit: cover;
      width: 70px;
      height: 70px;
      zoom: 1.2;
      margin-top: -5px; } }

/* いの町の自然 */
.p-attraction__nature--main-img {
  height: 55vh;
  background: url("../img/attraction/img-nature-main.jpg") no-repeat left center;
  background-size: 100% auto;
  background-attachment: fixed; }
  @media (max-width: 767px) {
    .p-attraction__nature--main-img {
      height: 35vh;
      background: url("../img/attraction/img-nature-main.jpg") no-repeat center center;
      background-size: 100% 100%;
      background-attachment: inherit; } }

.p-attraction__nature > .c-ttl01:before {
  content: "";
  background: url("../img/attraction/ttl-nature.png") no-repeat center center;
  width: 172px;
  height: 172px;
  display: block;
  margin: 67px auto 44px; }
  @media (max-width: 767px) {
    .p-attraction__nature > .c-ttl01:before {
      width: 72px;
      height: 72px;
      background-size: cover;
      margin: 27px auto 24px; } }

.p-attraction__nature--inner {
  text-align: center;
  margin-bottom: 84px; }
  @media (max-width: 767px) {
    .p-attraction__nature--inner {
      margin: 0 10px 56px; } }

.p-attraction__nature--ttl {
  font-size: 2.25rem;
  margin: 5.125rem 0 2.8125rem; }
  @media (max-width: 767px) {
    .p-attraction__nature--ttl {
      font-size: 2rem;
      line-height: 1.4;
      max-width: 225px;
      width: 100%;
      margin: 0 auto; }
      .p-attraction__nature--ttl .__left {
        text-align: left;
        display: block; }
      .p-attraction__nature--ttl .__center {
        text-align: center;
        display: block; }
      .p-attraction__nature--ttl .__right {
        text-align: right;
        display: block; }
      .p-attraction__nature--ttl .__bottom1 {
        font-size: 1.125rem;
        line-height: 1.4;
        display: inline-block;
        text-align: left;
        display: inherit;
        margin-top: 8px; }
      .p-attraction__nature--ttl .__bottom2 {
        font-size: 1.125rem;
        line-height: 1.4;
        display: inline-block;
        text-align: right;
        display: inherit; }
      .p-attraction__nature--ttl .__all {
        font-size: 1.125rem;
        line-height: 1.4;
        display: inline-block;
        text-align: left; } }

@media (max-width: 767px) {
  .p-attraction__nature--lead {
    text-align: left;
    margin-top: 1.75rem; } }

/*自然ベネフィット*/
.p-attraction__nature--benefit {
  display: flex;
  justify-content: space-between;
  margin-bottom: 78px; }
  @media (max-width: 767px) {
    .p-attraction__nature--benefit {
      display: block;
      margin-bottom: 30px; } }
  .p-attraction__nature--benefit:nth-child(even) {
    flex-direction: row-reverse; }

.p-attraction__nature--benefit-txt {
  flex-basis: 35%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  max-width: 350px; }
  @media (max-width: 767px) {
    .p-attraction__nature--benefit-txt {
      max-width: none;
      display: block;
      margin: 10px 10px 0; } }

.p-attraction__nature--benefit-ttl {
  font-size: 3.4375rem;
  line-height: 1.3;
  writing-mode: vertical-rl;
  margin: 25px auto; }
  @media (max-width: 991px) {
    .p-attraction__nature--benefit-ttl {
      margin: 25px 0 25px auto;
      font-size: 2.5rem; } }
  @media (max-width: 767px) {
    .p-attraction__nature--benefit-ttl {
      writing-mode: horizontal-tb;
      margin: 0; } }
  .p-attraction__nature--benefit-ttl .__english-name {
    display: block;
    font-size: 0.875rem;
    margin: 10px 0; }
    @media (max-width: 767px) {
      .p-attraction__nature--benefit-ttl .__english-name {
        font-size: 0.625rem;
        margin: 0 4px; } }
  .p-attraction__nature--benefit-ttl .__upright-txt {
    text-orientation: upright; }
  .p-attraction__nature--benefit-ttl .__niyodo-ttl {
    display: block;
    font-size: 2.1875rem; }
    @media (max-width: 767px) {
      .p-attraction__nature--benefit-ttl .__niyodo-ttl {
        font-size: 1.8rem; } }

.p-attraction__nature--benefit-img {
  flex-basis: 60%; }

.p-attraction__nature--benefit-img-large {
  line-height: 0; }
  .p-attraction__nature--benefit-img-large img {
    width: 100%;
    height: auto;
    object-fit: cover; }

/* おすすめアクティビティ */
.p-attraction__nature--activity {
  margin: 60px 0; }
  @media (max-width: 767px) {
    .p-attraction__nature--activity {
      margin: 60px 10px; } }

/* 季節アイコン */
.p-attraction__nature--activity-season-list {
  margin: 15px 0;
  display: flex; }
  @media (max-width: 767px) {
    .p-attraction__nature--activity-season-list {
      margin: 5px 0 15px; } }

.p-attraction__nature--activity-season-list-item {
  font-size: 1.125rem;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  margin-right: 10px;
  border-radius: 50%;
  line-height: 1; }
  @media (max-width: 767px) {
    .p-attraction__nature--activity-season-list-item {
      width: 30px;
      height: 30px;
      font-size: 1rem; } }
  .p-attraction__nature--activity-season-list-item.__spring {
    background: #ff8ca7; }
  .p-attraction__nature--activity-season-list-item.__summer {
    background: #ffa300; }
  .p-attraction__nature--activity-season-list-item.__autumn {
    background: #a17a1f; }
  .p-attraction__nature--activity-season-list-item.__winter {
    background: #83abcf; }

/* いの町の文化 */
.p-attraction__culture--main-img {
  height: 55vh;
  background: url("../img/attraction/img-culture-main.jpg") no-repeat left center;
  background-size: 100% auto;
  background-attachment: fixed;
  display: none; }
  @media (max-width: 767px) {
    .p-attraction__culture--main-img {
      height: 35vh;
      background: url("../img/attraction/img-culture-main.jpg") no-repeat center center;
      background-size: 100% 100%;
      background-attachment: inherit; } }

.p-attraction__culture .c-ttl01:before {
  content: "";
  background: url("../img/attraction/ttl-culture.png") no-repeat center center;
  width: 172px;
  height: 172px;
  display: block;
  margin: 100px auto 44px; }
  @media (max-width: 767px) {
    .p-attraction__culture .c-ttl01:before {
      width: 72px;
      height: 72px;
      background-size: cover;
      margin: 27px auto 24px; } }

.p-attraction__culture--inner {
  text-align: center;
  margin-bottom: 146px; }
  @media (max-width: 767px) {
    .p-attraction__culture--inner {
      margin: 0 10px 56px; } }

.p-attraction__culture--ttl {
  font-size: 2.25rem;
  margin: 5.125rem 0 2.8125rem; }
  @media (max-width: 767px) {
    .p-attraction__culture--ttl {
      font-size: 2rem;
      line-height: 1.4; } }

@media (max-width: 767px) {
  .p-attraction__culture--lead {
    text-align: left; } }

/* いの町の食 */
.p-attraction__meal .c-ttl01:before {
  content: "";
  background: url("../img/attraction/ttl-meal.png") no-repeat center center;
  width: 172px;
  height: 172px;
  display: block;
  margin: 100px auto 44px; }
  @media (max-width: 767px) {
    .p-attraction__meal .c-ttl01:before {
      width: 72px;
      height: 72px;
      background-size: cover;
      margin: 27px auto 24px; } }

.p-attraction__meal--main-img {
  height: 55vh;
  background: url("../img/attraction/img-meal-main.jpg") no-repeat left center;
  background-size: 100% auto;
  background-attachment: fixed; }
  @media (max-width: 767px) {
    .p-attraction__meal--main-img {
      height: 35vh;
      background: url("../img/attraction/img-meal-main.jpg") no-repeat center center;
      background-size: 100% 100%;
      background-attachment: inherit; } }

.p-attraction__meal--inner {
  text-align: center;
  margin-bottom: 146px; }
  @media (max-width: 767px) {
    .p-attraction__meal--inner {
      margin: 0 10px 56px; } }

.p-attraction__meal--ttl {
  font-size: 2.25rem;
  margin: 5.125rem 0 2.8125rem; }
  @media (max-width: 767px) {
    .p-attraction__meal--ttl {
      font-size: 2rem;
      line-height: 1.4; } }

@media (max-width: 767px) {
  .p-attraction__meal--lead {
    text-align: left; } }

.p-attraction__meal--onlineshop {
  margin: 90px auto 170px;
  text-align: center; }
  @media (max-width: 767px) {
    .p-attraction__meal--onlineshop {
      margin: 40px auto 70px; } }

/* いの町に泊まる */
.p-attraction__stay--main-img {
  height: 55vh;
  background: url("../img/attraction/img-stay-main.jpg") no-repeat left center;
  background-size: 100% auto;
  background-attachment: fixed; }
  @media (max-width: 767px) {
    .p-attraction__stay--main-img {
      height: 35vh;
      background: url("../img/attraction/img-stay-main.jpg") no-repeat center center;
      background-size: 100% 100%;
      background-attachment: inherit; } }

.p-attraction__stay .c-ttl01:before {
  content: "";
  background: url("../img/attraction/ttl-stay.png") no-repeat center center;
  width: 172px;
  height: 172px;
  display: block;
  margin: 100px auto 44px; }
  @media (max-width: 767px) {
    .p-attraction__stay .c-ttl01:before {
      width: 72px;
      height: 72px;
      background-size: cover;
      margin: 27px auto 24px; } }

.p-attraction__stay--lead {
  display: flex;
  margin-top: 83px;
  margin-right: calc(50% - 50vw);
  margin-bottom: 63px;
  /*margin-left: calc(50% - 50vw);*/
  justify-content: space-between; }
  @media (max-width: 767px) {
    .p-attraction__stay--lead {
      flex-direction: column-reverse; } }

.p-attraction__stay--lead-left {
  flex-basis: 34%;
  display: flex;
  flex-direction: column; }
  @media (max-width: 767px) {
    .p-attraction__stay--lead-left {
      max-width: none;
      display: block;
      margin-right: calc(50vw - 50% + 10px);
      padding: 0;
      margin: 0 10px; } }

.p-attraction__stay--lead-ttl {
  font-size: 1.875rem;
  line-height: 1.4;
  margin: 25px 20px 25px 0; }
  @media (max-width: 991px) {
    .p-attraction__stay--lead-ttl {
      margin: 25px 0 25px; } }
  @media (max-width: 767px) {
    .p-attraction__stay--lead-ttl {
      margin: 0;
      line-height: 1.4;
      font-size: 1.5rem; } }

.p-attraction__stay--lead-txt {
  margin-right: 20px; }
  @media (max-width: 767px) {
    .p-attraction__stay--lead-txt {
      margin-right: 0; } }

.p-attraction__stay--lead-catch {
  font-size: 1.375rem;
  font-weight: 700; }
  @media (max-width: 767px) {
    .p-attraction__stay--lead-catch {
      font-size: 1.125rem; } }

.p-attraction__stay--lead-right {
  flex-basis: 66%; }
  @media (max-width: 767px) {
    .p-attraction__stay--lead-right {
      margin-bottom: 22px; } }

.p-attraction__stay--lead-img-large {
  border-radius: 60px 0 0 60px;
  overflow: hidden; }
  @media (max-width: 767px) {
    .p-attraction__stay--lead-img-large {
      border-radius: 30px 0 0 30px; } }
  .p-attraction__stay--lead-img-large img {
    width: 100%;
    height: auto;
    object-fit: cover; }

/* その他観光スポット */
.p-attraction__stay--list {
  margin-bottom: 55px; }
  @media (max-width: 767px) {
    .p-attraction__stay--list {
      margin: 0 10px 55px; } }

.p-attraction__stay--list-box {
  margin-bottom: 22px; }
  @media (max-width: 767px) {
    .p-attraction__stay--list-box {
      /*margin: 0 auto 10px;*/ } }

.p-attraction__stay--list-img {
  text-align: center;
  line-height: 0; }
  .p-attraction__stay--list-img img {
    border-radius: 16% / 16%; }
    @media (max-width: 767px) {
      .p-attraction__stay--list-img img {
        width: 100%; } }

.p-attraction__stay--list-ttl {
  font-size: 1.5rem;
  text-align: center;
  line-height: 1.25;
  margin-top: 1rem; }
  .p-attraction__stay--list-ttl span {
    font-size: 0.75rem;
    display: block;
    margin: 12px auto;
    color: #959595;
    font-weight: normal; }

.p-attraction__stay--list-summary {
  margin-bottom: 2rem;
  font-size: 0.875rem;
  line-height: 1.75; }

/* もっと知る */
@media (max-width: 767px) {
  .p-attraction__knowmore--inner {
    margin: 0 10px; } }

.p-attraction__knowmore .c-bg02 {
  padding-top: 64px;
  padding-bottom: 84px; }

.p-attraction__knowmore--contact {
  margin: 33px 0 60px;
  padding-bottom: 60px;
  position: relative; }
  .p-attraction__knowmore--contact:after {
    content: "";
    display: block;
    width: 50%;
    height: 1px;
    position: absolute;
    left: 50%;
    bottom: 0;
    background: #ffffff;
    transform: translateX(-50%); }
    @media (max-width: 767px) {
      .p-attraction__knowmore--contact:after {
        display: none; } }
  .p-attraction__knowmore--contact .btn-tel a {
    border-radius: 80px;
    background: #eff4ea;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 26px 30px;
    margin: 15px auto;
    width: 100%;
    flex-direction: column;
    border: 1px solid #000000;
    min-height: 160px; }
    @media (max-width: 767px) {
      .p-attraction__knowmore--contact .btn-tel a {
        min-height: 120px;
        padding: 0; } }
  .p-attraction__knowmore--contact .btn-tel-ttl {
    font-weight: 700;
    margin: 0 10px; }
  .p-attraction__knowmore--contact .btn-tel-number {
    font-weight: 700;
    font-size: 2.25rem;
    line-height: 1.35; }
    .p-attraction__knowmore--contact .btn-tel-number:first-letter {
      color: #00c3af; }
    @media (max-width: 767px) {
      .p-attraction__knowmore--contact .btn-tel-number {
        font-size: 2rem;
        line-height: 1.4; } }
  .p-attraction__knowmore--contact .btn-tel-open-time {
    font-size: 0.875rem;
    margin: 0 10px; }
  .p-attraction__knowmore--contact .btn-form a {
    border-radius: 80px;
    background: #ffff00;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 26px 30px;
    margin: 15px auto;
    width: 100%;
    flex-direction: column;
    border: 1px solid #000000;
    min-height: 160px;
    font-size: 1.5rem;
    font-weight: 700;
    position: relative; }
    @media (max-width: 767px) {
      .p-attraction__knowmore--contact .btn-form a {
        min-height: 120px;
        padding: 0; } }
    .p-attraction__knowmore--contact .btn-form a:after {
      content: "";
      background: url("../img/common/icn-btn01.png") no-repeat left top;
      width: 15px;
      height: 18px;
      display: block;
      position: absolute;
      right: 32px;
      top: 50%;
      transform: translateY(-50%); }
      @media (max-width: 767px) {
        .p-attraction__knowmore--contact .btn-form a:after {
          right: 24px; } }
    @media (max-width: 767px) {
      .p-attraction__knowmore--contact .btn-form a {
        /*padding: 20px;*/ } }

@media (max-width: 767px) {
  .p-attraction__knowmore--contact-item {
    width: 100%; } }

@media (max-width: 767px) {
  .p-attraction__knowmore--guide-item {
    margin-bottom: 22px; } }

.p-attraction__knowmore--guide-box {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px; }

.p-attraction__knowmore--guide-txt {
  flex-basis: 60%; }

.p-attraction__knowmore--guide-ttl {
  font-size: 3rem;
  font-weight: 300;
  margin-bottom: 40px;
  line-height: 1.35; }
  @media (max-width: 767px) {
    .p-attraction__knowmore--guide-ttl {
      font-size: 2rem; } }
  .p-attraction__knowmore--guide-ttl .__official {
    font-size: 1.3125rem;
    font-weight: 700;
    display: block; }
  .p-attraction__knowmore--guide-ttl .__type {
    font-size: 1.875rem;
    font-weight: 700;
    display: block; }
    @media (max-width: 767px) {
      .p-attraction__knowmore--guide-ttl .__type {
        font-size: 1.3125rem;
        line-height: 1.4; } }
  .p-attraction__knowmore--guide-ttl:after {
    content: "";
    display: block;
    width: 50px;
    height: 1px;
    margin-top: 14px;
    background: #000000; }

.p-attraction__knowmore--guide-img {
  flex-basis: 35.1%; }

.p-attraction__knowmore--guide-btn .c-btn01 {
  display: block; }
  @media (max-width: 767px) {
    .p-attraction__knowmore--guide-btn .c-btn01 {
      width: 100%;
      max-width: none; } }

.p-attraction__knowmore--guide-btn .c-btn01 a {
  text-align: center;
  max-width: 300px;
  margin: 0 auto;
  display: block; }
  @media (max-width: 767px) {
    .p-attraction__knowmore--guide-btn .c-btn01 a {
      max-width: none;
      width: 80%; } }

/* いの町観光協会会員様一覧
   ========================================================================== */
.p-member .l-page-head {
  background: url("../img/member/img-header.jpg");
  background-size: cover; }

.p-member .l-page-head__inner {
  min-height: 435px;
  transform: translateY(25%); }
  @media (max-width: 767px) {
    .p-member .l-page-head__inner {
      min-height: 205px; } }

.p-member__category--nav {
  max-width: 1000px;
  margin: 0 auto; }

.p-member__category--nav-all-btn {
  margin: 72px auto 87px;
  text-align: center; }
  @media (max-width: 767px) {
    .p-member__category--nav-all-btn {
      margin: 52px auto 67px; } }
  .p-member__category--nav-all-btn a {
    border: 1px solid #000000;
    background: #ffff00;
    padding: 6px 20px 6px 20px;
    font-size: 1.875rem;
    letter-spacing: 0.1em;
    font-weight: 700;
    text-align: center;
    border-radius: 28px;
    max-width: 300px;
    width: 80%;
    display: inline-block; }
    .p-member__category--nav-all-btn a:hover {
      opacity: 0.7; }

/* PC用アイコンリスト */
.p-member__category--nav .p-member__category--nav-ttl {
  text-align: center;
  padding-bottom: 10px; }
  @media (max-width: 767px) {
    .p-member__category--nav .p-member__category--nav-ttl {
      display: none; } }
  .p-member__category--nav .p-member__category--nav-ttl:after {
    content: "";
    height: 20px;
    width: 100%;
    display: block;
    background: #eff4ea;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    margin-top: 20px; }

.p-member__category--nav .p-member__category--nav-list {
  display: flex;
  flex-wrap: wrap;
  padding: 30px 0; }
  .p-member__category--nav .p-member__category--nav-list:after {
    content: "";
    height: 20px;
    width: 100%;
    display: block;
    background: #eff4ea;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    margin-top: 20px; }
  @media (max-width: 767px) {
    .p-member__category--nav .p-member__category--nav-list {
      display: none; } }

.p-member__category--nav .nav-list-item {
  max-width: 162px;
  max-height: 162px;
  margin: 0 1% 20px;
  line-height: 1; }
  @media (max-width: 767px) {
    .p-member__category--nav .nav-list-item {
      flex-basis: 22%; } }
  .p-member__category--nav .nav-list-item a {
    background: #eff4ea;
    display: block;
    border-radius: 50%;
    border: 1px solid #eff4ea;
    height: auto; }
  .p-member__category--nav .nav-list-item a:hover {
    background: #ffff00;
    border: 1px solid #000000;
    opacity: 0.7; }
    .p-member__category--nav .nav-list-item a:hover img {
      opacity: 1; }

/*SP用プルダウンメニュー*/
.p-member__category--nav-list-sp {
  display: none;
  border: 1px solid #000000;
  /*background: $secondary-color;*/
  position: relative;
  border-radius: 10px;
  margin: 60px 0 60px; }
  @media (max-width: 767px) {
    .p-member__category--nav-list-sp {
      display: block;
      margin: 60px 10px 60px; } }
  .p-member__category--nav-list-sp select {
    margin: 0 auto;
    width: 100%;
    padding: 16px 20px 16px 20px;
    border: none;
    background: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 1.5rem;
    font-weight: 700; }
  .p-member__category--nav-list-sp:after {
    content: "▼";
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%); }

.p-member__main {
  margin-bottom: 150px; }
  @media (max-width: 767px) {
    .p-member__main {
      margin-bottom: 60px; } }

@media (max-width: 767px) {
  .p-member__list {
    margin: 0 10px; }
    .p-member__list:before {
      content: "";
      height: 20px;
      width: 100%;
      display: block;
      background: #eff4ea;
      border-top: 1px solid #000000;
      border-bottom: 1px solid #000000; } }
.p-member__list:after {
  content: "";
  height: 20px;
  width: 100%;
  display: block;
  background: #eff4ea;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000; }
  @media (max-width: 767px) {
    .p-member__list:after {
      display: none; } }

.p-member__list--item {
  display: flex;
  padding: 60px 10px;
  font-size: 0.875rem; }
  @media (max-width: 767px) {
    .p-member__list--item {
      display: block;
      padding: 30px 10px;
      border-bottom: 1px solid #000000; } }
  .p-member__list--item:not(:last-child) {
    border-bottom: 1px solid #000000; }
    @media (max-width: 767px) {
      .p-member__list--item:not(:last-child) {
        border-bottom: 1px solid #000000; } }

.p-member__list--namebox {
  flex-basis: 43%;
  display: flex; }

.p-member__icn {
  flex-shrink: 0;
  margin-right: 20px; }
  .p-member__icn img {
    width: 96px;
    height: 96px;
    background: #eff4ea;
    border-radius: 50%; }

.p-member__name {
  font-weight: 700;
  font-size: 1.875rem;
  line-height: 1.4;
  /*	text-align: left;*/
  /*
  margin: 1.5rem 0;
  padding: 0.5rem 0;*/ }
  @media (max-width: 767px) {
    .p-member__name {
      font-size: 1.5rem; } }

.p-member__kana {
  font-weight: 700;
  font-size: 1rem;
  display: block; }
  @media (max-width: 767px) {
    .p-member__kana {
      font-size: 0.625rem; } }

.p-member__list--addressbox {
  flex-basis: 36%;
  padding-left: 20px; }
  @media (max-width: 767px) {
    .p-member__list--addressbox {
      padding: 20px 0; } }
  .p-member__list--addressbox table {
    border-collapse: collapse; }
  .p-member__list--addressbox th {
    font-weight: 400;
    padding: 4px 14px 4px 0;
    white-space: nowrap;
    border-right: 1px solid #000000;
    vertical-align: top; }
  .p-member__list--addressbox td {
    padding: 4px 0 4px 14px; }

.p-member__list--websitebox {
  margin-left: auto;
  flex-basis: 16%; }
  @media (max-width: 767px) {
    .p-member__list--websitebox {
      margin: 0 auto; } }
  .p-member__list--websitebox .c-btn01 {
    width: 100%;
    max-width: 220px;
    font-size: 1.125rem;
    white-space: nowrap; }

/* お問い合わせ
   ========================================================================== */
.p-contact .l-page-head {
  background: url("../img/contact/img-header.jpg");
  background-size: cover; }

@media (max-width: 767px) {
  .p-contact__main--inner,
  .p-contact__mailform--inner,
  .p-contact__mailform--complete__inner {
    margin: 0 10px; } }

.p-contact__main--tel {
  border-radius: 44px;
  background: #eff4ea;
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 22px 30px;
  margin: 55px 0;
  max-width: 800px; }
  @media (max-width: 767px) {
    .p-contact__main--tel {
      flex-direction: column;
      /*padding: 20px;*/ } }

.p-contact__main--tel-ttl {
  font-weight: 700;
  margin: 0 10px; }

.p-contact__main--tel-number {
  font-weight: 700;
  font-size: 1.75rem;
  margin: 0 10px; }

.p-contact__main--tel-open-time {
  font-size: 0.875rem;
  margin: 0 10px; }

/* メールフォーム */
.p-contact__mailform {
  padding-bottom: 30px; }
  .p-contact__mailform label {
    cursor: pointer; }

@media (max-width: 767px) {
  .p-contact__mailform h2 {
    font-size: 1.125rem; } }

.p-contact__mailform--table-wrap:before {
  content: "";
  height: 20px;
  width: 100%;
  display: block;
  background: #eff4ea;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000; }
.p-contact__mailform--table-wrap:after {
  content: "";
  height: 20px;
  width: 100%;
  display: block;
  background: #eff4ea;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000; }

.p-contact__mailform--table {
  margin: 0;
  width: 100%;
  border-collapse: collapse; }
  @media (max-width: 767px) {
    .p-contact__mailform--table {
      display: block;
      /* スマホ時のレイアウト崩れ対策 */ }
      .p-contact__mailform--table tbody {
        width: 100%;
        display: block; } }
  .p-contact__mailform--table tr {
    border-bottom: 1px solid #000000; }
    .p-contact__mailform--table tr:last-child {
      border-bottom: none; }
    @media (max-width: 767px) {
      .p-contact__mailform--table tr {
        display: block; } }
  .p-contact__mailform--table th {
    font-size: 1.125rem;
    padding: 35px 20px;
    width: 25%;
    vertical-align: top;
    text-align: left; }
    @media (max-width: 767px) {
      .p-contact__mailform--table th {
        display: block;
        width: 100%;
        padding: 15px 15px 0; } }
  .p-contact__mailform--table td {
    padding: 35px 20px; }
    .p-contact__mailform--table td p {
      margin: 0;
      font-size: 0.875rem; }
    .p-contact__mailform--table td .error {
      color: #ff0000; }
    .p-contact__mailform--table td input[type="text"], .p-contact__mailform--table td input[type="tel"], .p-contact__mailform--table td input[type="email"] {
      background: #f2f2f2;
      border: none;
      padding: 11px 24px;
      width: 100%;
      max-width: 500px;
      display: inline-block;
      margin-bottom: 5px;
      border-radius: 30px; }
      @media (max-width: 767px) {
        .p-contact__mailform--table td input[type="text"], .p-contact__mailform--table td input[type="tel"], .p-contact__mailform--table td input[type="email"] {
          width: 100%; } }
      .p-contact__mailform--table td input[type="text"].short-area, .p-contact__mailform--table td input[type="tel"].short-area, .p-contact__mailform--table td input[type="email"].short-area {
        max-width: 25%; }
        @media (max-width: 767px) {
          .p-contact__mailform--table td input[type="text"].short-area, .p-contact__mailform--table td input[type="tel"].short-area, .p-contact__mailform--table td input[type="email"].short-area {
            max-width: 30%; } }
    .p-contact__mailform--table td input[type="checkbox"] {
      border: 1px solid #000000; }
    .p-contact__mailform--table td textarea {
      background: #f2f2f2;
      border: none;
      border-radius: 14px;
      padding: 25px 20px;
      width: 100%;
      min-height: 250px; }
    @media (max-width: 767px) {
      .p-contact__mailform--table td {
        display: block;
        padding: 15px; } }

.mwform-radio-field {
  display: block;
  margin-left: 0 !important; }

.txt-required {
  font-weight: normal;
  font-size: 0.875rem;
  color: #ff0000;
  margin-left: 10px; }

.privacy-txt {
  text-align: center;
  line-height: 1.7; }
  .privacy-txt a {
    text-decoration: underline; }
  @media (max-width: 767px) {
    .privacy-txt {
      text-align: left; } }

.submit-btn {
  margin: 80px auto 50px;
  max-width: 320px; }
  .submit-btn input[type="submit"] {
    width: calc(100% - 6px);
    height: 100%;
    min-height: 3.5rem;
    border: 1px solid #000000;
    background: #ffff00 url("../img/common/icn-btn01.png") no-repeat 96% center;
    border-radius: 30px;
    margin: 3px;
    font-weight: 700;
    font-size: 1.25rem;
    color: #000000; }
    @media (max-width: 767px) {
      .submit-btn input[type="submit"] {
        background-size: 11px 13px; } }
  .submit-btn:hover {
    cursor: pointer; }
    .submit-btn:hover input[type="submit"] {
      cursor: pointer;
      opacity: 0.7;
      /*			color: #ffffff;
      border: 1px solid #1a3031;
      transition: .2s;
      background: #1a3031;*/ }

/* 送信完了画面 */
.p-contact__mailform--complete {
  font-size: 1.125rem;
  text-align: center;
  margin: 80px auto; }
  .p-contact__mailform--complete:before {
    content: "";
    height: 20px;
    width: 100%;
    display: block;
    background: #eff4ea;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    margin-bottom: 80px; }
  .p-contact__mailform--complete:after {
    content: "";
    height: 20px;
    width: 100%;
    display: block;
    background: #eff4ea;
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    margin-top: 80px; }

.p-contact__mailform--complete--btn-wrap {
  display: flex;
  justify-content: center;
  margin: 80px 0; }
  @media (max-width: 767px) {
    .p-contact__mailform--complete--btn-wrap {
      display: block; } }

.p-contact__mailform--complete--btn-wrap .c-btn01 {
  min-width: 200px;
  margin-left: 20px;
  margin-right: 20px; }

/* 個人情報保護方針
   ========================================================================== */
.p-policy__main {
  margin-bottom: 150px; }
  @media (max-width: 767px) {
    .p-policy__main {
      margin-bottom: 60px; } }

@media (max-width: 767px) {
  .p-policy__main--inner {
    margin: 0 10px; } }

.c-policy__ttl {
  font-weight: 700;
  font-size: 1.875rem;
  line-height: 1.4;
  text-align: left;
  margin: 3em 0 1em;
  border-bottom: 1px solid #000000;
  padding-bottom: 10px;
  /*	&:first-child {
  		margin-top: 0;
  	}*/ }
  @media (max-width: 767px) {
    .c-policy__ttl {
      font-size: 1.25rem; } }
  .c-policy__ttl:after {
    margin-top: 0.5em; }

/*# sourceMappingURL=app.css.map */
