@charset "UTF-8";
/*
Theme Name: abashiri
Theme URI:
Description: abashiri
Version: 1.0
Author: W-ONE
Author URI: http://www.wakasaone.com
*/
/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+Mono&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+Mono&display=swap");
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.cnt, .under .pan-inner, .top .pickup, .pagenavi, .archive-cnt, .layout, footer .f-inner, header .inner, header .h-top h1, header .h-top__inner {
  width: 100%;
  max-width: 1040px;
  box-sizing: border-box;
}

/* ========================================================= */
/* カラー */
/* ========================================================= */
.c_orange {
  color: #f4a261;
}

.c_green {
  color: rgb(0, 105, 52);
}

.c_pink {
  color: rgb(241, 81, 139);
}

.c_blue {
  color: rgb(0, 170, 235);
}

.c_red {
  color: #c21210;
}

/* ========================================================= */
/* フォントタイプ */
/* ========================================================= */
.f_base, .side-cnt .tag h1 button {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", メイリオ, Meiryo, "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", sans-serif;
}

.f_ar, .under-inquiry .inq-ttl {
  font-family: "arial";
}

.f_arb {
  font-family: "arial black";
}

.f_noto, .SnsPanel .SnsBtnList .shareBtn a, .SnsPanel .fbArea__label, .under-page .form-cnt .btnarea input, .under-dictionary .search-tb td a, .under-shop .shop-cnt h1, .under-single .crp_related h3, .under-single .post-head .post-meta .cate li a, .under-single .post-head h1, .under-single .page-img h1, .under .post-cnt .mw_wp_form .btnarea input,
.under .post-cnt .orderform .btnarea input, .under .post-cnt h4, .under .post-cnt h3, .under .post-cnt h2, .under .post-cnt h1, .under .pan, .top .pickup .post-blk figure figcaption, .top .pickup .post-blk h1, .pagenavi .nav a, .side-cnt .snsinfo .twitter, .side-cnt .snsinfo h1, .side-cnt .news h1 small, .side-cnt .ranking .tab-group li.tab, .side-cnt .ranking h1 small, .arch-list #more-button, .arch-list .post-blk figure figcaption, .arch-list .post-blk h1, .arch-list .arch-cat-ttl, .top-back, .sns-list li.fb a, #btm-btn ul li a.fd, footer .f-inner .f-menu li a, #g-nav .contact-btnarea .contact-btn, #g-nav .h-menu li a, #g-nav ul li a, .g-menuarea .g-menu li a, .g-menuarea .h-menu li a, header .h-top h1, p,
li,
dt,
dd,
table,
th,
td, body {
  font-family: "Noto Sans JP", sans-serif;
}

.f_notom, .top .pickup .post-blk figure figcaption .meta-info li.date, .top .pickup .post-blk .ribbon, .side-cnt .news h1, .side-cnt .tag h1, .side-cnt .ranking ul.wpp-list li::before, .side-cnt .ranking h1, .arch-list .post-blk.new::after, .arch-list .post-blk figure figcaption .meta-info li.date, footer .pagetop {
  font-family: "Noto Sans Mono", monospace;
}

/* ========================================================= */
/* 装飾 */
/* ========================================================= */
b,
.bold,
strong {
  font-weight: bold;
}

.normal {
  font-weight: normal;
}

.imgborder_dash {
  border: 1px dashed #999;
}

.imgshadow {
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
}

.photoframe {
  margin: 2px;
  border: 10px solid #fff;
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.6);
}

.underborder {
  border-bottom: 1px solid #ccc;
}

.under_border_da {
  border-bottom: 1px dashed #ccc;
}

.noborder,
article .norborder {
  border: none;
}

/* ========================================================= */
/* 表示 */
/* ========================================================= */
.nodisp {
  text-indent: -9999px;
}

.disp_none {
  display: none;
}

.ani, .SnsPanel .SnsBtnList .shareBtn a, .SnsPanel .SnsBtnList .shareBtn, .pagenavi .nav a, .g-menuarea .g-menu li .sub-menu li a, .g-menuarea .g-menu li a::before, .g-menuarea .g-menu li a, .g-menuarea .h-menu, .inquiry header .inner, header .inner, header .h-top .sns, header .h-top #search-wrap2, header .h-top .search-blk, header .h-top__inner, header .h-top::before {
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

@keyframes ani01 {
  0% {
    transform: translateY(0);
  }
  33.33333% {
    transform: translateY(-8px);
  }
  66.66667% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes rotate-ani01 {
  0% {
    transform: rotate(0deg) translateY(0);
  }
  3% {
    transform: rotate(-5deg) translateY(-8px);
  }
  6% {
    transform: rotate(0deg) translateY(0);
  }
  9% {
    transform: rotate(4deg);
  }
  11% {
    transform: rotate(0);
  }
  /*  75% {
    transform: rotate(5deg);
  }*/
  100% {
    transform: rotate(0deg);
  }
}
@keyframes zoom-ani01 {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes zoom-ani02 {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
/* ========================================================= */
/* レイアウト調整 */
/* ========================================================= */
.al-r {
  text-align: right;
}

.al-l {
  text-align: left;
}

.al-c {
  text-align: center;
}

.mauto, .under .pan-inner, .top .pickup, .pagenavi, .archive-cnt, .layout, footer .f-inner, header .inner, header .h-top h1, header .h-top__inner,
article .mauto,
article header .inner,
header article .inner,
article header .h-top__inner,
header article .h-top__inner {
  margin-left: auto;
  margin-right: auto;
}

.br-pc,
.dn-pc {
  display: block;
}

.br-sp,
.dn-sp {
  display: none;
}

.clearfix:before,
.clearfix:after {
  content: " "; /* 1 */
  display: table; /* 2 */
}

.clearfix:after {
  clear: both;
}

.clearfix {
  *zoom: 1;
}

.scroll {
  overflow: auto;
  white-space: nowrap;
}

.scroll::-webkit-scrollbar {
  height: 5px;
}

.scroll::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0);
}

.scroll::-webkit-scrollbar-thumb {
  /* スクロールバーのツマミの色 */
  background: rgba(255, 255, 255, 0.4);
}

/* tableにスクロールバーを追加 ここまで↑ */
.scroll table {
  /* tableの幅を100%に */
  width: 100%;
}

.scrollbox {
  position: relative;
  width: 100%;
  overflow: auto;
  scrollbar-base-color: #fff;
  scrollbar-3dlight-color: #ffffff;
  scrollbar-arrow-color: #ffffff;
  scrollbar-darkshadow-color: #ffffff;
  scrollbar-face-color: #f1f1f1;
  scrollbar-highlight-color: #f1f1f1;
  scrollbar-shadow-color: #f1f1f1;
  scrollbar-track-color: #ffffff;
}

/*スクロールバー全体*/
.scrollbox::-webkit-scrollbar {
  width: 10px;
}

/*横スクロールバー全体*/
.scrollbox::-webkit-scrollbar:horizontal {
  height: 10px;
}

/*スクロールバー上下左右末端のボタン*/
.scrollbox::-webkit-scrollbar-button {
  width: 10px;
  height: 10px;
}

/*ドラッグするツマミ部分*/
.scrollbox::-webkit-scrollbar-thumb {
  background: #f1f1f1;
}

/*右下角部分*/
.scrollbox::-webkit-scrollbar-corner {
  background-color: transparent;
}

html {
  font-size: 62.5%;
}

body {
  text-align: center;
  color: rgb(30, 30, 30);
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", メイリオ, Meiryo, "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: 1.5rem;
  position: relative;
  background-color: #f4f9fc;
}
body.fixed {
  overflow: auto;
  height: 100%;
}

p,
li,
dt,
dd,
table,
th,
td {
  line-height: 2;
}

img {
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: bottom;
}

a {
  color: rgb(0, 170, 235);
  text-decoration: none;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  text-decoration: underline;
}
a:visited {
  color: rgb(0, 170, 235);
}
a.noborder {
  text-decoration: none;
}
a.noborder:hover {
  opacity: 0.1;
}
a.nolink {
  pointer-events: none;
}
a.anchor {
  display: block;
  padding-top: 60px;
  margin-top: -60px;
}
a:hover,
a:hover img,
input[type=submit]:hover {
  opacity: 0.8;
}

input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
}
input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}
input[type=submit]:focus,
input[type=button]:focus {
  outline-offset: -2px;
}

@media screen and (max-width: 100px) {
  .cnt, .under .pan-inner, .top .pickup, .pagenavi, .archive-cnt, .layout, footer .f-inner, header .inner, header .h-top h1, header .h-top__inner {
    max-width: calc(100% - 30px);
  }
}
@media screen and (max-width: 767px) {
  .cnt, .under .pan-inner, .top .pickup, .pagenavi, .archive-cnt, .layout, footer .f-inner, header .inner, header .h-top h1, header .h-top__inner {
    max-width: calc(100% - 30px);
  }
  .br-pc,
  .dn-sp {
    display: none;
  }
  .br-sp,
  .dn-pc {
    display: block;
  }
  body {
    font-family: sans-serif;
    min-width: initial;
    font-size: 1.4rem;
  }
}
#wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  position: relative;
}

/* ====================================================================== */
/* HEADER */
/* ====================================================================== */
header {
  width: 100%;
  background-color: white;
  position: relative;
  box-sizing: border-box;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 15;
  border-top: 15px solid #66cdff;
}
header .h-top {
  position: relative;
}
header .h-top::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #66cdff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
header .h-top__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 36px;
  position: relative;
}
@media screen and (max-width: 767px) {
  header .h-top__inner {
    height: 30px;
  }
}
header .h-top h1 {
  font-size: 1.1rem;
  font-weight: 500;
  color: white;
  text-align: left;
}
header .h-top .search-blk {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  header .h-top .search-blk {
    display: none;
  }
}
header .h-top .search-blk input {
  width: 180px;
  max-width: 180px;
  padding-left: 30px;
  box-sizing: border-box;
  height: 24px;
  border: none;
  border-radius: 2px;
  background: url(img/icon/search.svg) no-repeat 8px center;
  background-size: 14px 14px;
  background-color: rgba(255, 255, 255, 0.9);
}
header .h-top #search-wrap2 {
  position: absolute;
  z-index: 50;
  top: 6px;
  right: 100px;
  opacity: 0;
}
@media screen and (max-width: 767px) {
  header .h-top #search-wrap2 {
    display: none;
  }
}
header .h-top #search-wrap2 #search-text {
  -webkit-appearance: none;
  width: 30px;
  height: 30px;
  border: none;
  background: url(img/icon/search.svg) no-repeat 10px center;
  background-size: 15px 15px;
  transition: all 0.5s;
  outline: none;
  cursor: pointer;
}
header .h-top #search-wrap2 #search-text:focus {
  width: 150px;
  padding: 0 0 0 50px;
  background-color: rgba(236, 236, 236, 0.9);
  border-radius: 5px;
}
header .h-top .sns {
  display: flex;
  position: absolute;
  top: 0;
  right: 50px;
}
@media screen and (max-width: 767px) {
  header .h-top .sns {
    right: 10px;
  }
}
header .h-top .sns li {
  margin: 0 5px;
}
header .h-top .sns li a {
  color: white;
}
header .h-top .sns li a i {
  font-size: 1.4rem;
}
header .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100px;
}
@media screen and (max-width: 767px) {
  header .inner {
    max-width: 100%;
    height: 60px;
    justify-content: center;
  }
}
header .logo {
  display: block;
  width: 200px;
}
@media screen and (max-width: 100px) {
  header .logo {
    position: absolute;
    width: 180px;
  }
}
@media screen and (max-width: 767px) {
  header .logo {
    width: 130px;
  }
}
header .logo img {
  display: block;
  width: 100%;
}
.inquiry header .h-top {
  height: 12px;
}
.inquiry header .inner {
  padding: 25px 0;
  justify-content: center;
  height: auto;
}

@media screen and (min-width: 1040px) {
  header.is-fixed .inner {
    height: 80px;
  }
  header.is-fixed #search-wrap {
    top: 25px;
  }
  header.is-fixed .site-ttl {
    transform: scale(0.9);
  }
  header.is-fixed .g-menuarea .h-menu {
    margin-top: 0;
    transform: scale(0.85);
  }
  .inquiry header.is-fixed .inner {
    padding: 15px 0;
    height: auto;
  }
}
/* ----------------------------------------- */
/* グローバルメニュー
/* ----------------------------------------- */
.g-menuarea {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 1em 0;
}
@media screen and (max-width: 100px) {
  .g-menuarea {
    margin: 0 0 0 auto;
  }
}
.g-menuarea .h-menu {
  margin-top: 10px;
  display: flex;
  transform-origin: 100% 50%;
}
.g-menuarea .h-menu li {
  margin-right: 30px;
}
.g-menuarea .h-menu li a {
  display: flex;
  align-items: center;
  height: 40px;
  font-size: 1.4rem;
  font-weight: 500;
  color: rgb(30, 30, 30);
  text-decoration: none;
  position: relative;
}
.g-menuarea .h-menu li a::before {
  content: "";
  display: inline-block;
  margin-right: 5px;
  width: 26px;
  height: 26px;
}
.g-menuarea .h-menu li a.ss::before {
  width: 23px;
  height: 23px;
  margin-right: 10px;
  background: url(img/icon/ss.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .h-menu li a.shop::before {
  background: url(img/icon/shop.svg?01) no-repeat center;
  background-size: contain;
}
.g-menuarea .h-menu li a.knife::before {
  background: url(img/icon/knife.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0 1em;
}
@media screen and (max-width: 767px) {
  .g-menuarea .g-menu {
    display: none;
  }
}
.g-menuarea .g-menu li {
  position: relative;
}
.g-menuarea .g-menu li a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  color: rgb(30, 30, 30);
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: none;
  position: relative;
  text-align: left;
  line-height: 1.5;
  box-sizing: border-box;
  gap: 0 0.35em;
  padding: 0.35em 0;
}
@media screen and (max-width: 100px) {
  .g-menuarea .g-menu li a {
    height: 22px;
    font-size: 1.3rem;
    letter-spacing: -0.05em;
  }
}
.g-menuarea .g-menu li a:hover {
  color: #0b5c87;
}
.g-menuarea .g-menu li a:hover::before {
  width: 100%;
}
.g-menuarea .g-menu li a img {
  display: block;
  width: 18px;
  aspect-ratio: 1/1;
  object-fit: contain;
  object-position: center;
}
.g-menuarea .g-menu li a span {
  position: relative;
}
@media screen and (max-width: 100px) {
  .g-menuarea .g-menu li a span {
    padding-left: 22px;
  }
}
.g-menuarea .g-menu li a::before {
  content: "";
  display: inline-block;
  width: 0%;
  height: 1.5px;
  background-color: #66cdff;
  position: absolute;
  bottom: 0;
  left: 0;
}
.g-menuarea .g-menu li a::after {
  content: "";
  display: block;
  width: 1px;
  height: 60%;
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.g-menuarea .g-menu li:last-child a::after {
  display: none;
}
.g-menuarea .g-menu li .submenuWrap {
  display: none;
  width: 200px;
  max-width: 200px;
  margin: 0;
  box-sizing: border-box;
  position: absolute;
  top: 30px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  background-color: white;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.15);
}
.g-menuarea .g-menu li .sub-menu {
  display: flex;
  flex-direction: column;
  margin: 0;
}
.g-menuarea .g-menu li .sub-menu li {
  box-sizing: border-box;
}
.g-menuarea .g-menu li .sub-menu li::after {
  width: 5px;
  height: 1px;
  right: -2.5px;
  background-color: white;
  display: none;
  text-align: left;
}
.g-menuarea .g-menu li .sub-menu li:last-child a {
  border-bottom: none;
}
.g-menuarea .g-menu li .sub-menu li a {
  justify-content: center;
  height: auto;
  padding: 0.5em;
  font-size: 1.3rem;
  font-weight: 400;
  color: rgb(30, 30, 30);
  text-decoration: none;
  position: relative;
  text-align: center !important;
  line-height: 1.2;
  box-sizing: border-box;
}
.g-menuarea .g-menu li .sub-menu li a:hover {
  color: #c21210;
  opacity: 1;
}
.g-menuarea .g-menu li .sub-menu li a::before {
  display: none;
}
.g-menuarea .g-menu li .sub-menu li a::after {
  display: none;
}
.g-menuarea .g-menu li .sub-menu li a span::before {
  display: none;
}
.g-menuarea .g-menu li .sub-menu li.no-border a {
  border-bottom: none;
}
.g-menuarea .g-menu li .sub-menu li.sub a {
  padding-left: 1.5em;
  font-size: 1.2rem;
}
.g-menuarea .g-menu li .sub-menu li.sub a:hover::before {
  background-color: white;
}
.g-menuarea .g-menu li .sub-menu li.sub a::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 1px;
  background-color: rgb(30, 30, 30);
  top: 15px;
  left: 3px;
  right: auto;
}
.g-menuarea .g-menu li.tsukiji-otc-market a span::before {
  background: url(img/icon/g-menu/tsukiji-otc-market.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.qanda a span::before {
  background: url(img/icon/g-menu/qanda.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.knife a span::before {
  background: url(img/icon/g-menu/knife.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.gourmet a span::before {
  background: url(img/icon/g-menu/tsukiji-otc-market.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.sightseeing a span::before {
  background: url(img/icon/g-menu/sightseeing.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.news a span::before {
  background: url(img/icon/g-menu/news.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.event a span::before {
  background: url(img/icon/g-menu/event.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.open a span::before {
  background: url(img/icon/g-menu/open.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.traffic a span::before {
  background: url(img/icon/g-menu/traffic.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.life a span::before {
  background: url(img/icon/g-menu/life.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.recipe a span::before {
  background: url(img/icon/g-menu/recipe.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.real-estate a span::before {
  background: url(img/icon/g-menu/real-estate.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.recruit a span::before {
  background: url(img/icon/g-menu/recruit.svg) no-repeat center;
  background-size: contain;
}
.g-menuarea .g-menu li.flower a span::before {
  background: url(img/icon/g-menu/flower.svg) no-repeat center;
  background-size: contain;
}

.SearchToggle {
  padding: 0 1em;
  position: relative;
}
.SearchToggle i {
  color: #0b5c87;
}

.headArea {
  display: inline-flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .headArea {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
}
.headArea .SnsIcon {
  display: flex;
  gap: 0 1em;
}
.headArea .SnsIcon a {
  text-decoration: none;
  color: #0b5c87;
}

#SearchBox {
  display: none;
}

.SearchBox {
  position: absolute;
  top: 30px;
  right: 0;
  min-width: 360px;
  border-radius: 7px;
  background-color: white;
  box-shadow: 1px 1px 5px rgba(151, 178, 194, 0.5);
  z-index: 15;
}
@media screen and (max-width: 767px) {
  .SearchBox {
    min-width: 270px;
    left: auto;
    right: 0;
    transform: translateX(0);
  }
}
.SearchBox--wide {
  position: relative;
  top: auto;
  left: auto;
  transform: translateX(0);
  display: block;
}
.SearchBox__inner {
  padding: 1em;
}
.SearchBox__column {
  display: flex;
  gap: 0 0.5em;
}
.SearchBox input[name=s] {
  width: 100%;
  max-width: 100%;
  height: 40px;
  max-height: 40px;
  font-size: 1.6rem;
  padding: 0.5em;
  border: none;
  border: 1px solid rgba(153, 153, 153, 0.5);
  background-color: white;
  box-sizing: border-box;
  border-radius: 5px;
}
@media screen and (max-width: 767px) {
  .SearchBox input[name=s] {
    font-size: 1.4rem;
  }
}
.SearchBox input[name=s]::placeholder {
  color: rgba(153, 153, 153, 0.5);
}
.SearchBox button[type=submit] {
  min-width: 60px;
  border: none;
  background-color: none;
  background-color: #66cdff;
  color: white;
  border-radius: 4px;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .SearchBox button[type=submit] {
    min-width: 50px;
  }
}

/* ----------------------------------------- */
/* メニュー
/* ----------------------------------------- */
#g-nav {
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position: fixed;
  z-index: 999;
  /*ナビのスタート位置と形状*/
  top: 0;
  left: -120%;
  width: 100%;
  height: 100vh; /*ナビの高さ*/
  background: rgba(255, 255, 255, 0.9);
  background-color: white;
  /*動き*/
  transition: all 0.4s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive {
  left: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list {
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100vh; /*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#g-nav ul {
  display: flex;
  flex-wrap: wrap;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  padding-top: 50px;
}
#g-nav ul li {
  width: 50%;
  margin: 0;
  padding: 0;
  position: relative;
  text-align: center;
  border-bottom: 1px solid #ccc;
}
#g-nav ul li a {
  display: flex;
  align-items: center;
  padding: 1em 1em;
  padding: 1.25em 0;
  margin: 0;
  text-decoration: none;
  position: relative;
  font-size: 1.6rem;
  font-weight: 700;
  color: rgb(30, 30, 30);
  text-align: left;
  gap: 0 0.5em;
}
#g-nav ul li a::after {
  content: "\f054";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 15px;
  font-size: 1.1rem;
  font-weight: normal;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
}
#g-nav ul li a:hover {
  text-decoration: none;
}
#g-nav ul li a img {
  display: block;
  width: 20px;
  height: 20px;
  object-fit: contain;
  object-position: center;
}
#g-nav ul li a span {
  position: relative;
}
#g-nav ul li.menu-item-has-children a {
  pointer-events: none;
}
#g-nav ul li.menu-item-has-children a::after {
  content: "\f078";
}
#g-nav ul.sub-menu {
  padding-top: 0;
  display: none;
}
#g-nav ul.sub-menu li {
  border-bottom: none;
}
#g-nav ul.sub-menu li a {
  pointer-events: visible;
  padding: 10px 0 10px 15px;
  font-size: 1.4rem;
}
#g-nav ul.sub-menu li a::after {
  content: "\f054";
}
#g-nav ul.sub-menu li a span::before {
  display: none;
}
#g-nav ul.ctmenu {
  margin-top: 50px;
  padding-top: 0;
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
}
#g-nav ul.ctmenu li {
  border: none;
}
#g-nav ul.ctmenu li a {
  padding: 0.5em 1em;
  color: rgb(30, 30, 30);
  position: relative;
  font-size: 1.5rem;
  font-weight: 300;
}
#g-nav ul.ctmenu li a::before {
  content: "";
  display: inline-block;
  margin-right: 0.5em;
  width: 12px;
  height: 12px;
  vertical-align: middle;
}
#g-nav .h-menu {
  margin-top: 0;
  display: flex;
}
#g-nav .h-menu li {
  width: 33.3333333333%;
  border-bottom: none;
  border-right: 1px solid #ccc;
}
#g-nav .h-menu li:last-child {
  border-right: none;
}
#g-nav .h-menu li a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 50px;
  font-size: 1.3rem;
  font-weight: 500;
  color: rgb(30, 30, 30);
  text-decoration: none;
  position: relative;
  letter-spacing: -0.025em;
}
#g-nav .h-menu li a::before {
  content: "";
  display: block;
  width: 35px;
  height: 35px;
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#g-nav .h-menu li a::after {
  display: none;
}
#g-nav .h-menu li a.ss::before {
  background: url(img/icon/ss.svg) no-repeat center;
  background-size: contain;
}
#g-nav .h-menu li a.shop::before {
  background: url(img/icon/shop.svg) no-repeat center;
  background-size: contain;
}
#g-nav .h-menu li a.knife::before {
  background: url(img/icon/knife.svg) no-repeat center;
  background-size: contain;
}
#g-nav .f-menu {
  margin-top: 30px;
  margin-top: 0;
  display: flex;
  flex-direction: column;
}
#g-nav .f-menu li {
  width: 100%;
  border-bottom: none;
}
#g-nav .f-menu li a {
  padding: 0.25em 0;
  font-size: 1.4rem;
}
#g-nav .f-menu li a::after {
  display: none;
}
#g-nav .tel-info {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  text-align: left;
  position: relative;
}
#g-nav .tel-info p {
  margin-top: 0;
  font-size: 1.5rem;
  line-height: 1.5;
}
#g-nav .tel-info p:nth-of-type(1) {
  color: #c21210;
  font-weight: bold;
}
#g-nav .tel-info p .tel {
  padding-left: 50px;
  font-size: 2.4rem;
  font-weight: 900;
  color: rgb(30, 30, 30);
  position: relative;
}
#g-nav .tel-info p .tel a {
  color: rgb(30, 30, 30);
  text-decoration: none;
}
#g-nav .tel-info p .tel::before {
  content: "";
  display: flex;
  width: 32px;
  height: 32px;
  background: url(img/icon/phone.svg) no-repeat center;
  background-size: 14px auto;
  border: 2px solid #f4a261;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  border-radius: 50%;
}
#g-nav .tel-info p small {
  font-size: 1.3rem;
}
#g-nav .contact-btnarea {
  width: 85%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
#g-nav .contact-btnarea .contact-btn {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: calc(50% - 15px);
  max-width: calc(50% - 15px);
  height: 65px;
  background-color: #f4a261;
  font-size: 1.4rem;
  font-weight: 700;
  color: white;
  text-decoration: none;
  text-align: center;
  line-height: 1.3;
  box-sizing: border-box;
  position: relative;
}
#g-nav .contact-btnarea .contact-btn.option-btn {
  background-color: #c21210;
}
#g-nav .contact-btnarea .contact-btn small {
  font-size: 1.3rem;
}

.openbtn1 {
  position: fixed;
  z-index: 9999;
  top: 35px;
  top: 20px;
  left: 0;
  cursor: pointer;
  width: 50px;
  height: 50px;
  display: none;
  /*×に変化*/
}
@media screen and (max-width: 767px) {
  .openbtn1 {
    display: block;
  }
}
.openbtn1 span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 14px;
  height: 2px;
  border-radius: 2px;
  background-color: rgb(30, 30, 30);
  width: 50%;
}
.openbtn1 span:nth-of-type(1) {
  top: 15px;
}
.openbtn1 span:nth-of-type(2) {
  top: 25px;
}
.openbtn1 span:nth-of-type(3) {
  top: 35px;
}
.openbtn1.active span:nth-of-type(1) {
  top: 18px;
  left: 18px;
  transform: translateY(6px) rotate(-45deg);
  width: 40%;
}
.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn1.active span:nth-of-type(3) {
  top: 30px;
  left: 18px;
  transform: translateY(-6px) rotate(45deg);
  width: 40%;
}

/* ====================================================================== */
/* CONTENT */
/* ====================================================================== */
article {
  padding-bottom: 70px;
  text-align: left;
  position: relative;
  overflow: hidden;
}

/* --------------------------------------------------- */
/* パラグラフ */
/* --------------------------------------------------- */
article p {
  margin-top: 50px;
}

/* --------------------------------------------------- */
/* Table */
/* --------------------------------------------------- */
article table {
  width: 100%;
  margin-top: 50px;
  border-collapse: collapse;
}

/* --------------------------------------------------- */
/* UL OL */
/* --------------------------------------------------- */
article ul,
article ol {
  margin-top: 50px;
}
article ul.list-disc li,
article ol.list-disc li {
  margin-left: 20px;
  list-style-type: disc;
}
article ul.list-none li,
article ol.list-none li {
  margin-left: 20px;
  list-style-type: none;
}
article ul.list-num li,
article ol.list-num li {
  margin-left: 20px;
  list-style-type: decimal;
}

/* ====================================================================== */
/* Footer */
/* ====================================================================== */
footer {
  margin: auto 0 0;
  padding: 0;
  width: 100%;
  position: relative;
  z-index: 100;
  background-color: white;
}
#front footer {
  /*    position: absolute;
  bottom: 0;*/
}
footer .pagetop {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  background-color: #66cdff;
  text-decoration: none;
  color: white;
}
footer .pagetop i {
  margin-right: 10px;
  font-size: 3rem;
}
footer .f-inner {
  padding: 50px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
footer .f-inner .logo {
  display: block;
  width: 100px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  footer .f-inner .logo {
    width: 70px;
  }
}
footer .f-inner .logo img {
  display: block;
  width: 100%;
}
footer .f-inner .f-menu {
  margin-top: 20px;
  display: flex;
  justify-content: center;
  gap: 0 1em;
}
@media screen and (max-width: 767px) {
  footer .f-inner .f-menu {
    flex-wrap: wrap;
  }
}
footer .f-inner .f-menu li a {
  font-size: 1.3rem;
  color: rgb(30, 30, 30);
  text-decoration: none;
  position: relative;
}
@media screen and (max-width: 767px) {
  footer .f-inner .f-menu li a {
    font-size: 1.2rem;
  }
}
footer .f-inner .f-menu li a::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 80%;
  background-color: #ccc;
  position: absolute;
  top: 50%;
  right: -0.5em;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  footer .f-inner .f-menu li a::after {
    display: none;
  }
}
footer .f-inner .f-menu li:last-child a::after {
  display: none;
}
footer .f-inner .copyright {
  display: block;
  margin-top: 10px;
  font-size: 1.1rem;
  opacity: 0.7;
}

.sfsiplus_footerLnk {
  display: none !important;
}

/*
#btm-btn {
  width: 100%;
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 200;
  display: none;

  .btm-contact {
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    height: 100px;
    background-color: white;
    position: relative;
    box-sizing: border-box;
    @include box-shadow(0 0 3px rgba($c_base, 0.5));

    &::after {
      content: "";
      display: block;
      width: 30%;
      height: 100%;
      background-color: white;
      position: absolute;
      top: 0;
      right: 0;
      z-index: 1;
    }

    .inner {
      @include ct;
      height: 100%;
      display:flex;
      align-items:center;
      // justify-content:space-between;
      position: relative;
      background-color: white;
      z-index: 10;
    }

    .site-ttl {
      // display:flex;
      // flex-direction:column;
      @extend .f_noto;
      font-size: 1.1rem;
      font-weight: 700;
      text-align: left;
      a {
        display:flex;
        margin-top: 1em;
        text-decoration: none;
        img {
          display: block;
          height: 30px;
        }

        .docomo {
          margin-right: 25px;
          display:flex;
          flex-direction:column;
          color: $c_base;

          img {
            height: 20px;
          }
          span {
            display: block;
            margin-top: 0.25em;
          }
        }
      }
    }

    .contact-area {
      display:flex;
      align-items:center;
      height: 100px;
      position: absolute;
      top: 0;
      right: 0;

      .caution {
        @extend .f_noto;
        color: $c_red;
        font-weight: bold;
      }

      .tel-info {
        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:flex-end;
        padding: 0 30px 0 55px;
        height: 100%;
        // background-color: #eef3f8;
        box-sizing: border-box;
        text-align: left;
        position: relative;

        &::before {
          content: "";
          display:flex;
          width: 32px;
          height: 32px;
          background: url(img/icon/phone.svg) no-repeat center;
          background-size: 14px auto;
          border: 2px solid $c_orange;
          position: absolute;
          top: 50%;
          left: 15px;
          transform: translateY(-50%);
          border-radius:50%;
        }

        p {
          margin-top: 0;
          font-size: 1.1rem;
          line-height: 1.5;

          .tel {
            font-size: 2.4rem;
            font-weight: 900;
          }

          small {
            font-size: 1.2rem;
          }
        }
      }

      .contact-btn {
        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:center;
        width: 120px;
        max-width: 120px;
        height: 100%;
        background-color: $c_orange;
        @extend .f_noto;
        font-size: 1.3rem;
        color: white;
        text-decoration: none;
        text-align: center;
        line-height: 1.5;
        box-sizing: border-box;
        position: relative;

        &.option-btn {
          background-color: $c_red;
        }

        small {
          font-size: 1.3rem;
        }
      }
    }
  }

  ul {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    z-index: 10;
    li {
      a {
        &.pagetop {
          display:flex;
          flex-direction:column;
          align-items:center;
          justify-content:center;
          width: 68px;
          height: 68px;
          font-size: 1.2rem;
          text-decoration: none;
          line-height: 1.1;
          // background-color: rgba(white,.8);
          color: $c_base;
          img {
            width: 30px;
            height: auto;
            object-fit: cover;
            margin-bottom: 0.5em;
          }
        }
      }
    }
  }
}*/
#btm-btn {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 200;
  display: none;
}
#btm-btn ul li a.fd {
  font-size: 2.8rem;
  font-weight: 600;
  color: rgb(30, 30, 30);
  position: relative;
  text-decoration: none;
  display: none;
}
#btm-btn ul li a.fd::before {
  content: "";
  display: inline-block;
  margin-right: 0;
  width: 38px;
  height: 32px;
  background: url(img/icon/fd.svg) no-repeat;
  background-size: contain;
  vertical-align: -0.15em;
}
#btm-btn ul li a.contact-btn {
  display: inline-block;
  padding: 10px 20px;
  background-color: #006b33;
  font-size: 1.4rem;
  color: #fff100;
  text-decoration: none;
  display: none;
}
#btm-btn ul li a.contact-btn::before {
  content: "";
  display: inline-block;
  margin-right: 0.5em;
  width: 21px;
  height: 14px;
  background: url(img/icon/mail_yellow.svg) no-repeat;
  background-size: contain;
  vertical-align: middle;
}
#btm-btn ul li a.pagetop {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 70px;
  font-size: 1.2rem;
  text-decoration: none;
  line-height: 1.1;
  background-color: #f4a261;
  color: white;
}
@media screen and (max-width: 767px) {
  #btm-btn ul li a.pagetop {
    width: 40px;
    height: 60px;
  }
}
#btm-btn ul li a.pagetop i {
  font-size: 2.4rem;
}
@media screen and (max-width: 767px) {
  #btm-btn ul li a.pagetop i {
    font-size: 2rem;
  }
}

/* ================================================================== */
/* Modal */
/* ================================================================== */
.iziModal {
  max-width: 60% !important;
  margin-top: 180px !important;
  /*  margin-right: 50px !important;*/
}
.iziModal .wrap {
  margin: 0.5em;
  padding: 4em;
  overflow: hidden;
  text-align: left;
  background-color: rgb(255, 255, 255);
}
.iziModal .wrap p strong {
  font-size: 2.4rem;
}
.iziModal .wrap img {
  width: 280px;
  float: left;
  margin-right: 50px;
}

.sns-list {
  margin: 0;
  display: flex;
  justify-content: center;
  padding: 0 30px;
}
@media screen and (max-width: 767px) {
  .sns-list {
    padding: 0 15px;
    flex-wrap: wrap;
  }
}
.sns-list li {
  margin: 0 5px;
}
@media screen and (max-width: 767px) {
  .sns-list li {
    margin-top: 10px;
  }
}
.sns-list li a {
  margin-top: 2px;
  width: 100px;
  height: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ccc;
  border-radius: 4px;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .sns-list li a {
    width: 50px;
    margin-top: 0;
  }
}
.sns-list li a img {
  display: block;
  width: 18px;
}
.sns-list li.fblike {
  margin: 0;
}
@media screen and (max-width: 767px) {
  .sns-list li.fblike {
    margin-top: 10px;
  }
}
.sns-list li.fb a {
  background-color: #4267b2;
  font-size: 1.2rem;
  font-weight: 700;
  color: white;
}
@media screen and (max-width: 767px) {
  .sns-list li.fb a {
    width: 100px;
  }
}
.sns-list li.tw a {
  background-color: black;
}
.sns-list li.hb a {
  background-color: #00a5de;
}
.sns-list li.hb a i {
  color: white;
}
.sns-list li.pk a {
  background-color: #ef3f56;
}

.top-back {
  margin: 0 auto 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% - 60px);
  height: 42px;
  border: 1px solid #999;
  font-size: 1.6rem;
  font-weight: 500;
  color: rgb(30, 30, 30) !important;
  text-decoration: none;
  position: relative;
  border-radius: 4px;
  gap: 0 0.5em;
}
@media screen and (max-width: 767px) {
  .top-back {
    width: calc(100% - 30px);
    font-size: 1.4rem;
  }
}
.top-back:hover {
  background-color: #66cdff;
  color: white !important;
  border-color: #66cdff;
}

/* ================================================================== */
/* Common */
/* ================================================================== */
.layout {
  margin-top: 70px;
  margin-top: 150px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .layout {
    margin-top: 100px;
    flex-direction: column;
    justify-content: flex-start;
    padding: 0 5%;
  }
}
.layout .MainCnt {
  width: 65%;
}
@media screen and (max-width: 767px) {
  .layout .MainCnt {
    width: 100%;
  }
}

.archive-cnt {
  margin-top: 70px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (max-width: 100px) {
  .archive-cnt {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .archive-cnt {
    margin-top: 40px;
    flex-direction: column;
  }
}
.archive-cnt.center {
  margin-top: 0;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .archive-cnt.center {
    margin-top: 20px !important;
  }
}
.archive-cnt.center .post-wrap {
  box-shadow: 1px 1px 4px rgba(102, 102, 102, 0.3);
}

.arch-list {
  width: 100%;
}
@media screen and (max-width: 100px) {
  .arch-list {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .arch-list {
    width: 100%;
  }
}
.arch-list-wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media screen and (max-width: 100px) {
  .arch-list-wrap {
    justify-content: flex-start;
  }
}
.arch-list .arch-cat-ttl {
  display: flex;
  justify-content: center;
  text-align: center;
  margin-bottom: 50px;
  padding-bottom: 15px;
  padding-bottom: 1em;
  font-size: 2.8rem;
  font-weight: 700;
  position: relative;
  gap: 0 0.5em;
}
@media screen and (max-width: 767px) {
  .arch-list .arch-cat-ttl {
    font-size: 2.1rem;
  }
}
.arch-list .arch-cat-ttl img {
  display: block;
  width: 32px;
  height: 32px;
  object-fit: contain;
  object-position: center;
}
@media screen and (max-width: 767px) {
  .arch-list .arch-cat-ttl img {
    width: 24px;
    height: 24px;
  }
}
.arch-list .arch-cat-ttl::after {
  content: "";
  display: inline-block;
  width: 80px;
  height: 4px;
  background-color: #0b5c87;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .arch-list .arch-cat-ttl::after {
    width: 100px;
  }
}
.arch-list .post-blk {
  margin-top: 50px;
  width: calc(50% - 25px);
  max-width: calc(50% - 25px);
  padding: 0;
  background-color: white;
  box-sizing: border-box;
  position: relative;
  border-radius: 7px;
  overflow: hidden;
  box-shadow: 1px 1px 5px rgba(151, 178, 194, 0.5);
}
@media screen and (max-width: 100px) {
  .arch-list .post-blk {
    width: calc(33.3333333333% - 20px);
    max-width: calc(33.3333333333% - 20px);
    margin-right: calc((100% - (33.3333333333% - 20px) * 3) / 2);
  }
}
@media screen and (max-width: 767px) {
  .arch-list .post-blk {
    margin-top: 20px;
    width: calc(50% - 10px);
    max-width: calc(50% - 10px);
  }
}
.arch-list .post-blk:nth-of-type(-n + 2) {
  margin-top: 0;
}
@media screen and (max-width: 100px) {
  .arch-list .post-blk:nth-of-type(-n + 3) {
    margin-top: 0;
  }
}
@media screen and (max-width: 100px) {
  .arch-list .post-blk:nth-of-type(3n) {
    margin-right: 0;
  }
}
.arch-list .post-blk .post-link {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.arch-list .post-blk .post-link:hover {
  background-color: rgba(255, 255, 255, 0.2);
}
.arch-list .post-blk h1 {
  display: block;
  padding: 0 0 0 80px;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.2;
}
.arch-list .post-blk figure img {
  display: block;
  width: 100%;
  height: 200px;
  object-fit: cover;
}
@media screen and (max-width: 100px) {
  .arch-list .post-blk figure img {
    height: 160px;
  }
}
@media screen and (max-width: 767px) {
  .arch-list .post-blk figure img {
    height: 120px;
  }
}
.arch-list .post-blk figure .no-image {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 200px;
}
@media screen and (max-width: 100px) {
  .arch-list .post-blk figure .no-image {
    height: 160px;
  }
}
@media screen and (max-width: 767px) {
  .arch-list .post-blk figure .no-image {
    height: 120px;
  }
}
.arch-list .post-blk figure .no-image img {
  display: block;
  width: 70%;
  height: auto;
  object-fit: contain;
}
.arch-list .post-blk figure figcaption {
  display: block;
  padding: 25px;
  font-size: 1.4rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .arch-list .post-blk figure figcaption {
    padding: 15px;
    font-size: 1.3rem;
  }
}
.arch-list .post-blk figure figcaption .meta-info {
  margin-top: 15px;
  padding-top: 10px;
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid #ccc;
}
.arch-list .post-blk figure figcaption .meta-info li {
  font-size: 1.2rem;
  position: relative;
}
.arch-list .post-blk figure figcaption .meta-info li.date {
  padding-left: 1.25em;
}
.arch-list .post-blk figure figcaption .meta-info li.date::before {
  content: "\f017";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  font-size: 1.1rem;
  font-weight: normal;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
}
.arch-list .post-blk figure figcaption .meta-info li.cate a,
.arch-list .post-blk figure figcaption .meta-info li.cate span {
  display: inline-block;
  margin-left: 0.5em;
  padding: 0.25em 0.5em;
  position: relative;
  z-index: 10;
  border: 1px solid #999;
  color: rgb(30, 30, 30);
  line-height: 1.2;
  text-decoration: none;
  border-radius: 3px;
}
@media screen and (max-width: 767px) {
  .arch-list .post-blk figure figcaption .meta-info li.cate a:first-child,
  .arch-list .post-blk figure figcaption .meta-info li.cate span:first-child {
    margin-left: 0;
  }
}
.arch-list .post-blk.new::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent #f4a261;
  border-width: 0 0 45px 45px;
  z-index: 1;
}
.arch-list .post-blk.new::after {
  content: "NEW";
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 28px;
  height: 28px;
  z-index: 1;
  font-size: 1.1rem;
  color: white;
  transform: rotate(-45deg);
}
.arch-list #more-button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 50px auto 0;
  width: 300px;
  height: 50px;
  background-color: #66cdff;
  font-size: 1.8rem;
  color: white;
  text-decoration: none;
  position: relative;
  border: none;
  cursor: pointer;
  border-radius: 4px;
}
@media screen and (max-width: 767px) {
  .arch-list #more-button {
    margin-top: 30px;
    width: 240px;
    height: 40px;
    font-size: 1.5rem;
  }
}
.arch-list #more-button::after {
  content: "\f078";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 25px;
  font-size: 1.1rem;
  font-weight: normal;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Pro";
}
@media screen and (max-width: 767px) {
  .arch-list #more-button::after {
    right: 10px;
  }
}
.arch-list .scroller-status {
  display: none !important;
}

.side-cnt {
  width: calc(35% - 50px);
}
@media screen and (max-width: 100px) {
  .side-cnt {
    margin-top: 50px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .side-cnt {
    margin-top: 40px;
    width: auto;
  }
}
.side-cnt .chara {
  display: block;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .side-cnt .chara {
    display: none;
  }
}
.side-cnt .ranking {
  padding: 15px;
  background-color: white;
  border-radius: 7px;
  box-shadow: 1px 1px 5px rgba(151, 178, 194, 0.5);
}
@media screen and (max-width: 100px) {
  .side-cnt .ranking {
    width: 48%;
    max-width: 48%;
    order: 1;
    box-sizing: border-box;
  }
}
.side-cnt .ranking h1 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.2;
  position: relative;
  gap: 0 0.35em;
  color: #0b5c87;
}
.side-cnt .ranking h1 .icon {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  aspect-ratio: 1/1;
  border: 1.5px solid #0b5c87;
  border-radius: 50%;
}
.side-cnt .ranking h1 .icon img {
  margin: 0;
  padding: 0;
  display: block;
  width: 70%;
}
.side-cnt .ranking h1 small {
  font-size: 1.3rem;
  font-weight: normal;
}
.side-cnt .ranking .tab-group {
  margin-top: 20px;
  display: flex;
  position: relative;
  z-index: 1;
}
.side-cnt .ranking .tab-group li.tab {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 33.3333333333%;
  max-width: 33.3333333333%;
  height: 40px;
  font-size: 1.4rem;
  font-weight: 500;
  list-style: none;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  background-color: #eef3f8;
  border-right: 1px solid white;
}
.side-cnt .ranking .tab-group li.tab:first-child {
  border-radius: 4px 0 0 4px;
}
.side-cnt .ranking .tab-group li.tab:last-child {
  border-radius: 0 4px 4px 0;
}
.side-cnt .ranking .tab-group li.tab:nth-of-type(3n) {
  border-right: none;
}
.side-cnt .ranking .tab-group li.tab.tab-active {
  background-color: rgb(30, 30, 30);
  transition: all 0.2s ease-out;
  color: white;
}
.side-cnt .ranking .panel {
  display: none;
  position: relative;
  z-index: 1;
}
.side-cnt .ranking .panel.panel-show {
  display: block;
}
.side-cnt .ranking ul.wpp-list {
  margin-top: 15px;
  counter-reset: num;
}
.side-cnt .ranking ul.wpp-list li {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 15px 0;
  border-bottom: 1px solid #ccc;
  position: relative;
}
.side-cnt .ranking ul.wpp-list li::before {
  counter-increment: num;
  content: counter(num);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 15px;
  left: 0;
  z-index: 1;
  background-color: rgba(11, 92, 135, 0.8);
  font-size: 1.2rem;
  color: white;
  border-radius: 3px 0 0 0;
}
.side-cnt .ranking ul.wpp-list li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.side-cnt .ranking ul.wpp-list li a:nth-of-type(1) {
  display: block;
  min-width: 25%;
  width: 25%;
}
.side-cnt .ranking ul.wpp-list li a:nth-of-type(1) img {
  display: block;
  width: 100% !important;
  height: 70px !important;
  object-fit: cover;
  aspect-ratio: 1/1;
  border-radius: 5px;
}
.side-cnt .ranking ul.wpp-list li a.wpp-post-title {
  width: calc(65% - 20px);
  max-height: 80px;
  font-size: 1.3rem;
  color: rgb(30, 30, 30);
  line-height: 1.5;
  overflow: hidden;
  text-decoration: none;
}
.side-cnt .tag {
  margin-top: 30px;
}
@media screen and (max-width: 100px) {
  .side-cnt .tag {
    width: 48%;
    order: 3;
  }
}
.side-cnt .tag h1 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 40px;
  background-color: #66cdff;
  font-size: 2rem;
  color: white;
  position: relative;
  border-radius: 5px;
}
.side-cnt .tag h1 button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  background-color: transparent;
  position: absolute;
  top: 50%;
  right: 15px;
  font-size: 1.3rem;
  font-weight: normal;
  color: white;
  border: 1px solid white;
  transform: translateY(-50%);
  border-radius: 3px;
}
.side-cnt .tag-list {
  position: relative;
  overflow: hidden;
}
.side-cnt .tag-list.toggle {
  position: relative;
  height: 100px;
  overflow-y: hidden;
}
.side-cnt .tag-list ul {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
  gap: 0.35em;
}
.side-cnt .tag-list ul li {
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .side-cnt .tag-list ul li {
    margin-top: 10px;
  }
}
.side-cnt .tag-list ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.35em 0.35em 0.35em 1.5em;
  text-decoration: none;
  background-color: white;
  color: rgb(30, 30, 30);
  text-decoration: none;
  font-size: 1.1rem;
  border-radius: 3px;
  line-height: 1.2;
  position: relative;
  border: 1px solid #97b2c2;
  box-shadow: 1px 1px 3px rgba(151, 178, 194, 0.5);
}
@media screen and (max-width: 767px) {
  .side-cnt .tag-list ul li a {
    padding: 0.5em 0.5em 0.5em 1.5em;
  }
}
.side-cnt .tag-list ul li a::before {
  content: "\f292";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 5px;
  font-size: 1rem;
  font-weight: normal;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Pro";
}
.side-cnt .news {
  margin-top: 30px;
  padding: 15px;
  background-color: white;
  border-radius: 7px;
  box-shadow: 1px 1px 5px rgba(151, 178, 194, 0.5);
}
@media screen and (max-width: 100px) {
  .side-cnt .news {
    margin-top: 0;
    width: 48%;
    max-width: 48%;
    order: 2;
    box-sizing: border-box;
  }
}
.side-cnt .news h1 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.2;
  position: relative;
  gap: 0 0.35em;
  color: #0b5c87;
}
.side-cnt .news h1 .icon {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  aspect-ratio: 1/1;
  border: 1.5px solid #0b5c87;
  border-radius: 50%;
}
.side-cnt .news h1 .icon img {
  margin: 0;
  padding: 0;
  display: block;
  width: 70%;
}
.side-cnt .news h1 small {
  font-size: 1.3rem;
  font-weight: normal;
}
.side-cnt .news ul {
  margin-top: 15px;
}
.side-cnt .news ul li:last-child a {
  padding-bottom: 0;
  border-bottom: none;
}
.side-cnt .news ul li a {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  padding: 15px 0;
  border-bottom: 1px solid #ccc;
  text-decoration: none;
  position: relative;
  gap: 0 1em;
}
.side-cnt .news ul li a figure {
  display: block;
  min-width: 25%;
  width: 25%;
}
.side-cnt .news ul li a figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
  border-radius: 5px;
}
.side-cnt .news ul li a figure .no-image {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.side-cnt .news ul li a figure .no-image img {
  display: block;
  width: 85%;
  height: auto;
  object-fit: contain;
  aspect-ratio: 1/1;
}
.side-cnt .news ul li a .post-ttl {
  width: 100%;
  font-size: 1.3rem;
  color: rgb(30, 30, 30);
  line-height: 1.5;
}
.side-cnt .news .more-btn {
  margin: 30px auto 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0.5em 1.5em;
  border: 1px solid rgb(30, 30, 30);
  color: rgb(30, 30, 30);
  text-decoration: none;
  border-radius: 5px;
  position: relative;
  font-size: 1.5rem;
  gap: 0 0.35em;
}
.side-cnt .news .more-btn::after {
  content: "\f105";
  display: inline-block;
  font-size: 1.1rem;
  font-weight: normal;
  font-family: "Font Awesome 5 Pro";
}
@media screen and (max-width: 767px) {
  .side-cnt .news .more-btn::after {
    right: 10px;
  }
}
.side-cnt .side-bnr {
  margin-top: 15px;
  overflow: hidden;
}
@media screen and (max-width: 100px) {
  .side-cnt .side-bnr {
    margin-top: 30px;
    width: 48%;
    order: 4;
  }
}
.side-cnt .side-bnr .bnr {
  display: block;
  margin-top: 15px;
  width: 100%;
  height: 80px;
  background-color: white;
  border: 1px solid #999;
  box-sizing: border-box;
}
@media screen and (max-width: 100px) {
  .side-cnt .side-bnr .bnr:nth-of-type(1) {
    margin-top: 0;
  }
}
.side-cnt .side-bnr .bnr img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.side-cnt .snsinfo {
  margin-top: 30px;
  padding: 15px;
  background-color: white;
  border-radius: 7px;
  box-shadow: 1px 1px 5px rgba(151, 178, 194, 0.5);
}
@media screen and (max-width: 100px) {
  .side-cnt .snsinfo {
    order: 5;
  }
}
.side-cnt .snsinfo h1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.2;
  position: relative;
}
.side-cnt .snsinfo p {
  margin-top: 20px;
  font-size: 1.3rem;
}
.side-cnt .snsinfo .twitter {
  margin-top: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  background-color: black;
  border-radius: 4px;
  font-size: 1.8rem;
  font-weight: 500;
  color: white;
  text-decoration: none;
  position: relative;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .side-cnt .snsinfo .twitter {
    margin-bottom: 15px;
  }
}
.side-cnt .snsinfo .twitter i {
  margin-right: 10px;
}
.side-cnt .snsinfo .fb-page {
  margin-top: 15px !important;
}
@media screen and (max-width: 767px) {
  .side-cnt .snsinfo .fb-page {
    width: 100% !important;
    margin: 15px auto 0 !important;
  }
}

/* ================================================================== */
/* Parts */
/* ================================================================== */
.pagenavi {
  display: flex;
  justify-content: center;
  margin: 30px 0 100px;
  margin: 30px 0;
  text-align: center;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 767px) {
  .pagenavi {
    margin-top: 30px;
    padding-bottom: 0;
  }
}
.pagenavi .nav {
  margin: 0 15px;
}
@media screen and (max-width: 767px) {
  .pagenavi .nav {
    margin: 0 10px;
  }
}
.pagenavi .nav.prev a::before {
  margin-right: 0.5em;
  font-family: "Font Awesome 5 Pro";
  content: "\f053";
  font-weight: normal;
  font-size: 1.3rem;
}
.pagenavi .nav.next a::after {
  margin-left: 0.5em;
  font-family: "Font Awesome 5 Pro";
  content: "\f054";
  font-weight: normal;
  font-size: 1.3rem;
}
.pagenavi .nav a {
  display: inline-block;
  margin: 0;
  padding: 0.75em 2em;
  text-decoration: none;
  color: black;
  font-size: 1.4rem;
  position: relative;
  border: 1px solid #808080;
  border-radius: 4px;
}
@media screen and (max-width: 767px) {
  .pagenavi .nav a {
    padding: 0.75em 1em;
    font-size: 1.3rem;
  }
}
.pagenavi .nav a:hover {
  opacity: 1;
  background-color: #0b5c87;
  color: white;
}

.btm_pgnav {
  display: block;
  margin: 50px auto 0;
}
.btm_pgnav .wp-pagenavi {
  padding: 1em 0;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.btm_pgnav .wp-pagenavi a,
.btm_pgnav .wp-pagenavi span {
  text-decoration: none;
  border: none;
  border-right: 1px solid #1e1e1e;
  padding: 0.5em 1em;
  margin: 0;
  color: rgb(30, 30, 30);
  box-sizing: border-box;
}
.btm_pgnav .wp-pagenavi a.page, .btm_pgnav .wp-pagenavi a.current,
.btm_pgnav .wp-pagenavi span.page,
.btm_pgnav .wp-pagenavi span.current {
  display: flex;
  justify-content: center;
  align-items: center;
}
.btm_pgnav .wp-pagenavi a.pages, .btm_pgnav .wp-pagenavi a.nextpostslink, .btm_pgnav .wp-pagenavi a.previouspostslink,
.btm_pgnav .wp-pagenavi span.pages,
.btm_pgnav .wp-pagenavi span.nextpostslink,
.btm_pgnav .wp-pagenavi span.previouspostslink {
  border: none;
}
.btm_pgnav .wp-pagenavi a.pages:hover, .btm_pgnav .wp-pagenavi a.nextpostslink:hover, .btm_pgnav .wp-pagenavi a.previouspostslink:hover,
.btm_pgnav .wp-pagenavi span.pages:hover,
.btm_pgnav .wp-pagenavi span.nextpostslink:hover,
.btm_pgnav .wp-pagenavi span.previouspostslink:hover {
  background-color: transparent;
  color: rgb(30, 30, 30);
  font-weight: normal;
}
.btm_pgnav .wp-pagenavi a:hover,
.btm_pgnav .wp-pagenavi span.current {
  color: rgb(0, 170, 235);
  font-weight: normal;
  opacity: 1;
  font-weight: bold;
}

/* ================================================================== */
/* TOP */
/* ================================================================== */
.Fv__column {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.Fv .swiper-main {
  margin: 0;
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
}
.Fv .swiper-main .swiper-slide a {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.Fv .swiper-main .swiper-slide img {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto !important;
  object-fit: cover;
  aspect-ratio: 5/3.5;
}
@media screen and (max-width: 767px) {
  .Fv .swiper-main .swiper-slide img {
    aspect-ratio: 5/4;
  }
}
.Fv .swiper-main .swiper-slide .PostCnt {
  width: 100%;
  box-sizing: border-box;
  padding: 2.5%;
  padding-bottom: 10%;
  text-align: left;
  color: white;
  background-color: rgba(11, 92, 135, 0.65);
  position: absolute;
  bottom: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .Fv .swiper-main .swiper-slide .PostCnt {
    padding: 5%;
    padding-bottom: 12.5%;
  }
}
.Fv .swiper-main .swiper-slide .PostCnt .sl-ttl {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: 1.8rem;
  font-weight: bold;
  gap: 0.5em 0;
}
@media screen and (max-width: 767px) {
  .Fv .swiper-main .swiper-slide .PostCnt .sl-ttl {
    font-size: 1.6rem;
    line-height: 1.3;
  }
}
.Fv .swiper-main .swiper-slide .PostCnt .sl-ttl small {
  font-size: 1.2rem;
  font-weight: 200;
}
@media screen and (max-width: 767px) {
  .Fv .swiper-main .swiper-slide .PostCnt .sl-ttl small {
    font-size: 1rem;
  }
}
.Fv .swiper-main .swiper-horizontal > .swiper-pagination-bullets,
.Fv .swiper-main .swiper-pagination-bullets.swiper-pagination-horizontal,
.Fv .swiper-main .swiper-pagination-custom,
.Fv .swiper-main .swiper-pagination-fraction {
  bottom: 15px;
}
.Fv .swiper-main .swiper-pagination-bullet {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.4);
  opacity: 0.6;
  margin: 0 8px;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .Fv .swiper-main .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
  }
}
.Fv .swiper-main .swiper-pagination-bullet-active {
  background-color: rgba(255, 255, 255, 0.8);
  transform: scale(1.2);
  opacity: 1;
}
.Fv__block {
  width: 100%;
  max-width: calc(35% - 50px);
}
.Fv .chara-smp {
  display: none;
}
@media screen and (max-width: 767px) {
  .Fv .chara-smp {
    display: block;
    width: 80%;
  }
}

.top .pickup {
  margin-top: 70px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .top .pickup {
    margin-top: 40px;
    max-width: calc(100% - 30px);
    flex-direction: column;
  }
}
.top .pickup .post-blk {
  width: calc(50% - 25px);
  max-width: calc(50% - 25px);
  padding: 15px;
  background-color: white;
  box-sizing: border-box;
  position: relative;
}
@media screen and (max-width: 767px) {
  .top .pickup .post-blk {
    width: 100%;
    max-width: 100%;
    margin-top: 30px;
  }
}
.top .pickup .post-blk .post-link {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.top .pickup .post-blk .post-link:hover {
  background-color: rgba(255, 255, 255, 0.2);
}
.top .pickup .post-blk .ribbon {
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  padding: 10px;
  width: 80px;
  max-width: 80px;
  box-sizing: border-box;
  font-size: 1.3rem;
  font-weight: bold;
  color: white;
  background: #c21210;
  position: absolute;
  top: 15px;
  left: -10px;
}
.top .pickup .post-blk .ribbon::before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 10px transparent;
  border-right: solid 10px #5f0201;
}
.top .pickup .post-blk h1 {
  display: block;
  padding: 0 0 0 80px;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .top .pickup .post-blk h1 {
    font-size: 1.4rem;
  }
}
.top .pickup .post-blk figure {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 20px;
}
.top .pickup .post-blk figure img {
  display: block;
  width: 200px;
  height: 140px;
  object-fit: cover;
}
@media screen and (max-width: 100px) {
  .top .pickup .post-blk figure img {
    width: 140px;
    height: 100px;
  }
}
@media screen and (max-width: 767px) {
  .top .pickup .post-blk figure img {
    width: 120px;
    height: 90px;
  }
}
.top .pickup .post-blk figure .no-image {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 200px;
  height: 140px;
}
@media screen and (max-width: 100px) {
  .top .pickup .post-blk figure .no-image {
    width: 140px;
    height: 100px;
  }
}
@media screen and (max-width: 767px) {
  .top .pickup .post-blk figure .no-image {
    width: 120px;
    height: 90px;
  }
}
.top .pickup .post-blk figure .no-image img {
  display: block;
  width: 70%;
  height: auto;
  object-fit: contain;
}
.top .pickup .post-blk figure figcaption {
  display: block;
  width: calc(100% - 200px - 30px);
  font-size: 1.4rem;
  line-height: 1.5;
}
@media screen and (max-width: 100px) {
  .top .pickup .post-blk figure figcaption {
    width: calc(100% - 140px - 20px);
  }
}
@media screen and (max-width: 767px) {
  .top .pickup .post-blk figure figcaption {
    width: calc(100% - 120px - 20px);
  }
}
.top .pickup .post-blk figure figcaption .meta-info {
  margin-top: 15px;
  padding-top: 10px;
  display: flex;
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 100px) {
  .top .pickup .post-blk figure figcaption .meta-info {
    flex-direction: column;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 767px) {
  .top .pickup .post-blk figure figcaption .meta-info {
    flex-wrap: wrap;
  }
}
.top .pickup .post-blk figure figcaption .meta-info li {
  font-size: 1.2rem;
  position: relative;
}
.top .pickup .post-blk figure figcaption .meta-info li.date {
  padding-left: 1.25em;
}
.top .pickup .post-blk figure figcaption .meta-info li.date::before {
  content: "\f017";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  font-size: 1.1rem;
  font-weight: normal;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
}
.top .pickup .post-blk figure figcaption .meta-info li.cate a {
  display: inline-block;
  margin-left: 1.5em;
  padding: 0.25em 0.5em;
  position: relative;
  z-index: 10;
  border: 1px solid #999;
  color: rgb(30, 30, 30);
  line-height: 1.2;
  text-decoration: none;
}
@media screen and (max-width: 100px) {
  .top .pickup .post-blk figure figcaption .meta-info li.cate a:first-child {
    margin-left: 0;
  }
}

/* ================================================================== */
/* Under（下層） */
/* ================================================================== */
.under {
  margin-top: 115px;
  /* ================================================================== */
  /* Page / Single */
  /* ================================================================== */
  /* ================================================================== */
  /* Shop */
  /* ================================================================== */
  /* ================================================================== */
  /* Knife */
  /* ================================================================== */
  /* ================================================================== */
  /* Dictionary */
  /* ================================================================== */
  /* ================================================================== */
  /* Contact */
  /* ================================================================== */
  /* ================================================================== */
  /* Inquiry */
  /* ================================================================== */
}
@media screen and (max-width: 767px) {
  .under {
    margin-top: 90px;
  }
}
.under .pan {
  display: flex;
  align-items: center;
  width: 100%;
  height: 30px;
  background-color: #66cdff;
  font-size: 1.2rem;
  color: white;
  position: relative;
}
@media screen and (max-width: 767px) {
  .under .pan {
    padding: 0.5em 5%;
    height: auto;
    line-height: 1.5;
    font-size: 1rem;
  }
}
.under .pan-inner {
  position: relative;
  z-index: 5;
}
.under .pan a {
  color: white;
}
.under .archive-cnt {
  margin-top: 40px;
}
.under .post-wrap {
  background-color: white;
  box-sizing: border-box;
  overflow: hidden;
  border-radius: 7px;
  box-shadow: 1px 1px 5px rgba(151, 178, 194, 0.5);
}
@media screen and (max-width: 100px) {
  .under .post-wrap {
    width: 100%;
    max-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .under .post-wrap {
    width: 100%;
    max-width: 100%;
  }
}
.under .ad {
  max-width: calc(100% - 50px);
  margin: 15px auto 0;
}
@media screen and (max-width: 767px) {
  .under .ad {
    max-width: calc(100% - 30px);
  }
}
.under .post-cnt {
  margin-top: 30px;
  padding: 25px 30px;
}
@media screen and (max-width: 767px) {
  .under .post-cnt {
    padding: 15px;
  }
}
.under .post-cnt.u-pb0 {
  padding-bottom: 0;
}
.under .post-cnt h1 {
  display: flex;
  align-items: center;
  margin-bottom: 50px;
  padding-left: 40px;
  min-height: 50px;
  background-color: #66cdff;
  color: white;
  font-size: 2.4rem;
  font-weight: 700;
  position: relative;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .under .post-cnt h1 {
    padding-left: 30px;
    font-size: 1.8rem;
  }
}
.under .post-cnt h1::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 60%;
  background-color: white;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .under .post-cnt h1::before {
    width: 5px;
  }
}
.under .post-cnt h2 {
  margin-bottom: 50px;
  padding: 15px;
  font-size: 2.1rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  border-left: 10px solid #66cdff;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .under .post-cnt h2 {
    padding-left: 10px;
    font-size: 1.7rem;
  }
}
.under .post-cnt h2::before {
  /*        content: "";
  display: inline-block;
  width: 100%;
  height: 3px;
  background-color: #d4d4d4;
  border-left: 200px solid $c_red;
  box-sizing: border-box;
  position: absolute;
  bottom: 0;
  left: 0;*/
}
.under .post-cnt h3 {
  display: flex;
  align-items: center;
  margin-bottom: 50px;
  padding-left: 20px;
  min-height: 50px;
  background-color: #efefef;
  font-size: 1.8rem;
  font-weight: bold;
  position: relative;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .under .post-cnt h3 {
    padding-left: 10px;
    padding-right: 10px;
    font-size: 1.6rem;
  }
}
.under .post-cnt h4 {
  display: flex;
  align-items: center;
  margin-bottom: 50px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
}
@media screen and (max-width: 767px) {
  .under .post-cnt h4 {
    font-size: 1.5rem;
  }
}
.under .post-cnt h4::after {
  content: "";
  flex-grow: 1;
  border-bottom: 1px solid #ccc;
  margin-left: 20px;
  padding-right: 20px;
}
.under .post-cnt p {
  margin: 0 0 50px;
}
.under .post-cnt img {
  display: block;
  margin: 0 auto 50px;
  max-width: 100%;
  height: auto;
}
.under .post-cnt img.alignleft {
  float: left;
  margin: 0 0 50px 0;
  max-width: initial;
}
.under .post-cnt img.alignright {
  float: right;
  margin: 0 0 50px 0;
  max-width: initial;
}
.under .post-cnt ul,
.under .post-cnt ol {
  margin: 0 0 50px;
}
.under .post-cnt ul li {
  margin-left: 1em;
  list-style-type: disc;
}
.under .post-cnt ul.list-man {
  padding-left: 80px;
  position: relative;
  min-height: 100px;
}
@media screen and (max-width: 767px) {
  .under .post-cnt ul.list-man {
    padding-left: 60px;
    min-height: 75px;
  }
}
.under .post-cnt ul.list-man::before {
  content: "";
  display: inline-block;
  width: 80px;
  height: 100px;
  background: url(img/common/list-man.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .under .post-cnt ul.list-man::before {
    width: 60px;
    height: 75px;
  }
}
.under .post-cnt ul.list-man li {
  list-style-type: none;
}
.under .post-cnt ul.list-woman {
  padding-left: 80px;
  position: relative;
  min-height: 100px;
}
@media screen and (max-width: 767px) {
  .under .post-cnt ul.list-woman {
    padding-left: 60px;
    min-height: 75px;
  }
}
.under .post-cnt ul.list-woman::before {
  content: "";
  display: inline-block;
  width: 80px;
  height: 100px;
  background: url(img/common/list-woman.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .under .post-cnt ul.list-woman::before {
    width: 60px;
    height: 75px;
  }
}
.under .post-cnt ul.list-woman li {
  list-style-type: none;
}
.under .post-cnt ol li {
  margin-left: 1em;
  list-style-type: decimal;
}
.under .post-cnt table {
  width: 100%;
  margin: 0 0 50px;
}
.under .post-cnt table th,
.under .post-cnt table td {
  padding: 0.75em;
  border: 1px solid #999;
  vertical-align: middle;
}
.under .post-cnt table th {
  background-color: #efefef;
  font-weight: bold;
  text-align: center;
}
.under .post-cnt div {
  margin-bottom: 50px;
  max-width: 100%;
  padding: 10px;
  background-color: #fcfcfc;
  border: 1px dashed #ccc;
  line-height: 1.5;
  box-sizing: border-box;
}
.under .post-cnt div.if-c {
  padding: 0;
  background-color: transparent;
  border: none;
  text-align: center;
}
.under .post-cnt div.if-c iframe {
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .under .post-cnt div.if-c iframe {
    max-height: 200px;
  }
}
.under .post-cnt div p {
  margin: 0;
}
.under .post-cnt blockquote {
  margin-bottom: 50px;
  padding: 10px;
  border: 1px dashed #ccc;
  font-style: italic;
  font-size: 1.3rem;
}
.under .post-cnt blockquote p {
  margin: 0;
}
.under .post-cnt iframe {
  display: block;
  max-width: 100%;
  max-height: 300px;
}
@media screen and (max-width: 767px) {
  .under .post-cnt iframe {
    max-height: 200px;
  }
}
.under .post-cnt .wp-caption {
  padding: 0;
  border: none;
}
.under .post-cnt .wp-caption img {
  margin-bottom: 15px;
}
.under .post-cnt .wp-caption .wp-caption-text {
  text-align: center;
}
.under .post-cnt a.tel {
  color: rgb(30, 30, 30);
  text-decoration: none;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .under .post-cnt a.tel {
    pointer-events: visible;
  }
}
.under .post-cnt .orderinfo {
  margin-bottom: 25px;
  border: 1px solid #999;
}
.under .post-cnt .orderinfo dl dt,
.under .post-cnt .orderinfo dl dd {
  padding: 0.5em;
  line-height: 1.5;
}
.under .post-cnt .orderinfo dl dt {
  padding-left: 1.5em;
  font-weight: bold;
  padding-bottom: 0;
  position: relative;
}
.under .post-cnt .orderinfo dl dt::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: #ff0000;
  position: absolute;
  top: 13px;
  left: 0;
}
.under .post-cnt .orderinfo dl dd {
  padding-top: 0;
  padding-left: 1.5em;
}
.under .post-cnt .orderinfo + p {
  margin-bottom: 0;
}
.under .post-cnt .dl-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .under .post-cnt .dl-info .txt {
    width: calc(100% - 120px - 15px);
  }
}
.under .post-cnt .dl-info .dl-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.5em;
  height: 40px;
  font-size: 1.4rem;
  background-color: rgb(0, 170, 235);
  color: white;
  text-decoration: none;
  border-radius: 4px;
}
@media screen and (max-width: 767px) {
  .under .post-cnt .dl-info .dl-btn {
    width: 120px;
    max-width: 120px;
    padding: 0;
    text-align: center;
  }
}
.under .post-cnt .dl-info .dl-btn i {
  margin-right: 5px;
}
.under .post-cnt .dl-info + p {
  margin-top: 0;
}
.under .post-cnt .mw_wp_form,
.under .post-cnt .orderform {
  padding: 0;
  background-color: transparent;
  border: none;
}
.under .post-cnt .mw_wp_form .formbox,
.under .post-cnt .orderform .formbox {
  padding: 0;
  background-color: transparent;
  border: none;
}
.under .post-cnt .mw_wp_form .formbox .notnull,
.under .post-cnt .orderform .formbox .notnull {
  display: inline-block;
  margin-left: 1em;
  padding: 0.35em 0.5em 0.5em;
  background-color: #c21210;
  color: white;
  font-size: 1.1rem;
  font-weight: normal;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .under .post-cnt .mw_wp_form .formbox table tr:last-child td,
  .under .post-cnt .orderform .formbox table tr:last-child td {
    border-bottom: 1px solid #999;
  }
}
.under .post-cnt .mw_wp_form .formbox table th,
.under .post-cnt .mw_wp_form .formbox table td,
.under .post-cnt .orderform .formbox table th,
.under .post-cnt .orderform .formbox table td {
  padding: 0.75em;
}
@media screen and (max-width: 767px) {
  .under .post-cnt .mw_wp_form .formbox table th,
  .under .post-cnt .mw_wp_form .formbox table td,
  .under .post-cnt .orderform .formbox table th,
  .under .post-cnt .orderform .formbox table td {
    display: block;
    padding: 1em;
    border-bottom: none;
  }
}
.under .post-cnt .mw_wp_form .formbox table th,
.under .post-cnt .orderform .formbox table th {
  width: 30%;
  max-width: 30%;
}
@media screen and (max-width: 767px) {
  .under .post-cnt .mw_wp_form .formbox table th,
  .under .post-cnt .orderform .formbox table th {
    width: auto;
    max-width: initial;
    text-align: left;
  }
}
.under .post-cnt .mw_wp_form .formbox table td,
.under .post-cnt .orderform .formbox table td {
  font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
  .under .post-cnt .mw_wp_form .formbox table td,
  .under .post-cnt .orderform .formbox table td {
    font-size: 1.4rem;
  }
}
.under .post-cnt .mw_wp_form .formbox table td .row,
.under .post-cnt .orderform .formbox table td .row {
  margin-top: 0.75em;
  overflow: hidden;
}
.under .post-cnt .mw_wp_form .formbox table td .col,
.under .post-cnt .orderform .formbox table td .col {
  margin: 0 0.5em;
}
.under .post-cnt .mw_wp_form .formbox table td input[type=text],
.under .post-cnt .mw_wp_form .formbox table td input[type=email],
.under .post-cnt .mw_wp_form .formbox table td select,
.under .post-cnt .mw_wp_form .formbox table td textarea,
.under .post-cnt .orderform .formbox table td input[type=text],
.under .post-cnt .orderform .formbox table td input[type=email],
.under .post-cnt .orderform .formbox table td select,
.under .post-cnt .orderform .formbox table td textarea {
  width: 100%;
  max-width: 100%;
  font-size: 1.5rem;
  margin-bottom: 1em;
  padding: 0.75em;
  border: none;
  border: 1px solid rgba(30, 30, 30, 0.5);
  box-sizing: border-box;
  border-radius: 5px;
}
@media screen and (max-width: 767px) {
  .under .post-cnt .mw_wp_form .formbox table td input[type=text],
  .under .post-cnt .mw_wp_form .formbox table td input[type=email],
  .under .post-cnt .mw_wp_form .formbox table td select,
  .under .post-cnt .mw_wp_form .formbox table td textarea,
  .under .post-cnt .orderform .formbox table td input[type=text],
  .under .post-cnt .orderform .formbox table td input[type=email],
  .under .post-cnt .orderform .formbox table td select,
  .under .post-cnt .orderform .formbox table td textarea {
    padding: 0.5em;
    font-size: 1.4rem;
  }
}
.under .post-cnt .mw_wp_form .formbox table td input[type=text]::placeholder,
.under .post-cnt .mw_wp_form .formbox table td input[type=email]::placeholder,
.under .post-cnt .mw_wp_form .formbox table td select::placeholder,
.under .post-cnt .mw_wp_form .formbox table td textarea::placeholder,
.under .post-cnt .orderform .formbox table td input[type=text]::placeholder,
.under .post-cnt .orderform .formbox table td input[type=email]::placeholder,
.under .post-cnt .orderform .formbox table td select::placeholder,
.under .post-cnt .orderform .formbox table td textarea::placeholder {
  color: rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 767px) {
  .under .post-cnt .mw_wp_form .formbox table td input[type=text]::placeholder,
  .under .post-cnt .mw_wp_form .formbox table td input[type=email]::placeholder,
  .under .post-cnt .mw_wp_form .formbox table td select::placeholder,
  .under .post-cnt .mw_wp_form .formbox table td textarea::placeholder,
  .under .post-cnt .orderform .formbox table td input[type=text]::placeholder,
  .under .post-cnt .orderform .formbox table td input[type=email]::placeholder,
  .under .post-cnt .orderform .formbox table td select::placeholder,
  .under .post-cnt .orderform .formbox table td textarea::placeholder {
    font-size: 1.3rem;
  }
}
.under .post-cnt .mw_wp_form .formbox table td input[type=text]:nth-last-of-type(1),
.under .post-cnt .mw_wp_form .formbox table td input[type=email]:nth-last-of-type(1),
.under .post-cnt .mw_wp_form .formbox table td select:nth-last-of-type(1),
.under .post-cnt .mw_wp_form .formbox table td textarea:nth-last-of-type(1),
.under .post-cnt .orderform .formbox table td input[type=text]:nth-last-of-type(1),
.under .post-cnt .orderform .formbox table td input[type=email]:nth-last-of-type(1),
.under .post-cnt .orderform .formbox table td select:nth-last-of-type(1),
.under .post-cnt .orderform .formbox table td textarea:nth-last-of-type(1) {
  margin-bottom: 0;
}
.under .post-cnt .mw_wp_form .formbox table td input[type=text]:disabled,
.under .post-cnt .mw_wp_form .formbox table td input[type=email]:disabled,
.under .post-cnt .mw_wp_form .formbox table td select:disabled,
.under .post-cnt .mw_wp_form .formbox table td textarea:disabled,
.under .post-cnt .orderform .formbox table td input[type=text]:disabled,
.under .post-cnt .orderform .formbox table td input[type=email]:disabled,
.under .post-cnt .orderform .formbox table td select:disabled,
.under .post-cnt .orderform .formbox table td textarea:disabled {
  background-color: #f1f1f1;
}
.under .post-cnt .mw_wp_form .formbox table td input[type=radio],
.under .post-cnt .mw_wp_form .formbox table td input[type=checkbox],
.under .post-cnt .orderform .formbox table td input[type=radio],
.under .post-cnt .orderform .formbox table td input[type=checkbox] {
  width: 20px;
  height: 20px;
  vertical-align: -0.2em;
}
.under .post-cnt .mw_wp_form .formbox table td select,
.under .post-cnt .orderform .formbox table td select {
  width: auto;
  font-size: 100%;
}
.under .post-cnt .mw_wp_form .formbox table td textarea,
.under .post-cnt .orderform .formbox table td textarea {
  width: 100%;
  max-width: 100%;
  font-family: sans-serif;
}
.under .post-cnt .mw_wp_form .formbox table td input[name=お名前（姓）],
.under .post-cnt .mw_wp_form .formbox table td input[name=お名前（名）],
.under .post-cnt .orderform .formbox table td input[name=お名前（姓）],
.under .post-cnt .orderform .formbox table td input[name=お名前（名）] {
  width: 35%;
  max-width: 35%;
  margin-bottom: 0;
}
.under .post-cnt .mw_wp_form .formbox table td input[name=お名前（姓）],
.under .post-cnt .orderform .formbox table td input[name=お名前（姓）] {
  margin-right: 10px;
}
.under .post-cnt .mw_wp_form .formbox table td input[name=郵便番号],
.under .post-cnt .orderform .formbox table td input[name=郵便番号] {
  width: 150px;
  max-width: 150px;
  font-size: 1.5rem;
  padding: 0.75em;
  border: none;
  border: 1px solid rgba(30, 30, 30, 0.5);
  box-sizing: border-box;
  border-radius: 5px;
}
.under .post-cnt .mw_wp_form .formbox table td input[type=email],
.under .post-cnt .orderform .formbox table td input[type=email] {
  width: 100%;
  max-width: 100%;
}
.under .post-cnt .mw_wp_form .formbox table td .mwform-tel-field input,
.under .post-cnt .mw_wp_form .formbox table td .mwform-zip-field input,
.under .post-cnt .orderform .formbox table td .mwform-tel-field input,
.under .post-cnt .orderform .formbox table td .mwform-zip-field input {
  width: auto;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .under .post-cnt .mw_wp_form .formbox table td .mwform-radio-field,
  .under .post-cnt .orderform .formbox table td .mwform-radio-field {
    display: block;
    margin: 0;
  }
}
.under .post-cnt .mw_wp_form .formbox table td .c-txt,
.under .post-cnt .orderform .formbox table td .c-txt {
  margin-top: 10px;
  display: block;
  font-size: 1.3rem;
  color: #c21210;
  line-height: 1.5;
}
.under .post-cnt .mw_wp_form .btnarea,
.under .post-cnt .orderform .btnarea {
  display: flex;
  justify-content: center;
  margin-top: 30px;
  text-align: center;
  padding: 0;
  background-color: transparent;
  border: none;
}
.under .post-cnt .mw_wp_form .btnarea input,
.under .post-cnt .orderform .btnarea input {
  margin-top: 0;
  margin-left: 20px;
  margin-right: 20px;
  padding: 1em 2.5em;
  font-size: 1.8rem;
  font-weight: 700;
  color: white;
  border: none;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .under .post-cnt .mw_wp_form .btnarea input,
  .under .post-cnt .orderform .btnarea input {
    margin-left: 10px;
    margin-right: 10px;
    padding: 0.75em 2em;
    font-size: 1.5rem;
  }
}
.under .post-cnt .mw_wp_form .btnarea input.send_btn, .under .post-cnt .mw_wp_form .btnarea input.send_btn2,
.under .post-cnt .orderform .btnarea input.send_btn,
.under .post-cnt .orderform .btnarea input.send_btn2 {
  background-color: #c21210;
  color: white;
}
.under .post-cnt .mw_wp_form .btnarea input.send_btn:disabled, .under .post-cnt .mw_wp_form .btnarea input.send_btn2:disabled,
.under .post-cnt .orderform .btnarea input.send_btn:disabled,
.under .post-cnt .orderform .btnarea input.send_btn2:disabled {
  opacity: 0.5 !important;
  border: 1px solid #ccc;
}
.under .post-cnt .mw_wp_form .btnarea input.upd_btn,
.under .post-cnt .orderform .btnarea input.upd_btn {
  background-color: rgba(204, 204, 204, 0.1);
  border: 1px solid #cccccc;
  color: rgb(30, 30, 30);
}
.under .post-cnt .mw_wp_form .mw_wp_form_input .btnarea input.send_btn2,
.under .post-cnt .orderform .mw_wp_form_input .btnarea input.send_btn2 {
  display: none;
  background-color: #f4a261;
  color: rgb(255, 255, 255);
}
.under .post-cnt .mw_wp_form .mw_wp_form_confirm .inp_mes,
.under .post-cnt .orderform .mw_wp_form_confirm .inp_mes {
  display: none;
}
.under .post-cnt .mw_wp_form .mw_wp_form_confirm .privacy_wrap,
.under .post-cnt .orderform .mw_wp_form_confirm .privacy_wrap {
  display: none !important;
}
.under .post-cnt .mw_wp_form .mw_wp_form_confirm .privacy,
.under .post-cnt .orderform .mw_wp_form_confirm .privacy {
  display: none !important;
}
.under .post-cnt .mw_wp_form .mw_wp_form_confirm .conf_mes,
.under .post-cnt .orderform .mw_wp_form_confirm .conf_mes {
  display: block;
}
.under .post-cnt .mw_wp_form .mw_wp_form_confirm .formbox table td .row,
.under .post-cnt .orderform .mw_wp_form_confirm .formbox table td .row {
  margin-top: 0;
}
.under .post-cnt .mw_wp_form .mw_wp_form_confirm .formbox table tr:nth-of-type(4) td .row,
.under .post-cnt .orderform .mw_wp_form_confirm .formbox table tr:nth-of-type(4) td .row {
  display: none;
}
.under-single .page-img {
  margin-bottom: 30px;
  min-height: 120px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .under-single .page-img {
    margin-bottom: 15px;
  }
}
.under-single .page-img img {
  display: block;
  width: 100%;
  height: 300px;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .under-single .page-img img {
    height: 220px;
  }
}
.under-single .page-img-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.25);
  position: absolute;
  top: 0;
  left: 0;
}
.under-single .page-img h1 {
  display: inline-block;
  padding-bottom: 1em;
  color: white;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .under-single .page-img h1 {
    font-size: 2rem;
  }
}
.under-single .page-img h1::after {
  content: "";
  display: inline-block;
  width: 80px;
  height: 4px;
  background-color: white;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.under-single .page-img.page-no-img .page-img-inner {
  background-color: transparent;
}
.under-single .page-img.page-no-img h1 {
  color: rgb(30, 30, 30);
}
.under-single .page-img.page-no-img h1::after {
  background-color: #66cdff;
  background-color: #0b5c87;
}
.under-single .post-img {
  position: relative;
}
.under-single .post-img img {
  display: block;
  width: 100%;
  height: 300px;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .under-single .post-img img {
    height: 220px;
  }
}
.under-single .post-img.narrow {
  margin-top: 30px;
  padding: 0 30px;
}
@media screen and (max-width: 767px) {
  .under-single .post-img.narrow {
    padding: 0 20px;
  }
}
.under-single .post-head {
  margin-top: 30px;
  padding: 25px 30px 0;
}
@media screen and (max-width: 767px) {
  .under-single .post-head {
    padding: 15px 15px 0;
  }
}
.under-single .post-head h1 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  padding-bottom: 0.5em;
  border-bottom: 1px solid rgb(30, 30, 30);
}
@media screen and (max-width: 767px) {
  .under-single .post-head h1 {
    font-size: 1.6rem;
  }
}
.under-single .post-head h1 small {
  font-size: 1.5rem;
}
.under-single .post-head .post-meta {
  margin-top: 15px;
  padding-bottom: 30px;
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.under-single .post-head .post-meta .date {
  display: inline-block;
  margin-top: 0.5em;
  width: 100px;
  padding: 0.25em;
  font-size: 1.3rem;
  position: relative;
}
.under-single .post-head .post-meta .date i {
  margin-right: 5px;
}
.under-single .post-head .post-meta .cate {
  margin: 0;
  display: flex;
}
.under-single .post-head .post-meta .cate li {
  margin-top: 0.5em;
  margin-right: 10px;
}
.under-single .post-head .post-meta .cate li a {
  display: inline-block;
  padding: 0.25em 1em;
  font-size: 1.3rem;
  color: rgb(30, 30, 30);
  border: 1px solid rgb(30, 30, 30);
  line-height: 1.3;
  text-decoration: none;
  border-radius: 3px;
}
.under-single .post-head .post-meta .tag-info {
  margin-top: 0.5em;
}
.under-single .post-head .post-meta .tag-info img {
  display: inline-block;
  margin-right: 10px;
  width: 14px;
  vertical-align: middle;
}
.under-single .post-head .post-meta .tag-info a {
  font-size: 1.3rem;
}
.under-single .post-head .post-meta .sfsi_shortcode_container {
  position: absolute;
  top: 0;
  right: 0;
  width: 140px !important;
  z-index: 2;
}
.under-single .crp_related {
  padding: 0 30px 30px;
}
.under-single .crp_related h3 {
  display: flex;
  align-items: center;
  padding-left: 20px;
  min-height: 50px;
  background-color: #efefef;
  font-size: 1.8rem;
  font-weight: bold;
  position: relative;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .under-single .crp_related h3 {
    padding-left: 10px;
    padding-right: 10px;
    font-size: 1.6rem;
  }
}
.under-single .crp_related ul {
  margin-top: 30px;
}
.under-single .crp_related ul li {
  margin-left: 1em;
  list-style-type: disc;
}
.under-shop .page-img {
  margin-bottom: 0;
}
.under-shop .shop-cnt {
  margin-top: 0;
  padding: 0 30px 25px;
}
@media screen and (max-width: 767px) {
  .under-shop .shop-cnt {
    padding: 15px;
  }
}
.under-shop .shop-cnt h1 {
  display: flex;
  align-items: center;
  margin-bottom: 50px;
  padding-left: 40px;
  min-height: 50px;
  background-color: #c21210;
  color: white;
  font-size: 2.4rem;
  font-weight: 700;
  position: relative;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .under-shop .shop-cnt h1 {
    padding-left: 30px;
    font-size: 1.8rem;
  }
}
.under-shop .shop-cnt h1::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 60%;
  background-color: white;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .under-shop .shop-cnt h1::before {
    width: 5px;
  }
}
.under-shop dl.jenre {
  width: 100%;
  text-align: left;
  border: 1px solid #ccc;
  box-sizing: border-box;
  overflow: hidden;
}
.under-shop dl dt,
.under-shop dl dd {
  position: relative;
}
.under-shop dl dt {
  display: flex;
  align-items: center;
  min-height: 40px;
  padding: 10px 20px;
  line-height: 1.5;
  font-size: 1.8rem;
  font-weight: bold;
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .under-shop dl dt {
    font-size: 1.6rem;
  }
}
.under-shop dl dt:nth-of-type(1) {
  border-top: none;
}
.under-shop dl dt span::before, .under-shop dl dt span::after {
  content: "";
  display: block;
  width: 16px;
  height: 2px;
  position: absolute;
  right: 15px;
  top: 30px;
  background-color: rgb(30, 30, 30);
}
.under-shop dl dt span::after {
  transform: translateY(-50%) rotate(0);
  transition: 0.2s;
}
.under-shop dl dt span.active::after {
  transform: rotate(90deg);
  transition: 0.2s;
}
.under-shop dl dt:hover {
  cursor: pointer;
}
.under-shop dl dd {
  display: none;
  padding: 0 20px 15px;
}
.under-shop dl dd ul {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .under-shop dl dd ul {
    flex-direction: column;
  }
}
.under-shop dl dd ul li {
  width: 33.3333333333%;
}
@media screen and (max-width: 767px) {
  .under-shop dl dd ul li {
    width: auto;
  }
}
.under-shop dl dd ul li a {
  display: block;
  padding: 0.25em 0;
  font-size: 1.6rem;
  color: rgb(30, 30, 30);
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .under-shop dl dd ul li a {
    line-height: 1.5;
  }
}
.under-shop .post-head h1 {
  padding-left: 50px;
  position: relative;
}
.under-shop .post-head h1::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 26px;
  background: url(img/icon/shop.svg) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
.under-shop .post-head h1 small {
  display: inline-block;
  position: relative;
}
.under-shop .post-head h1 small::before {
  content: "（";
}
.under-shop .post-head h1 small::after {
  content: "）";
}
.under-shop .gaiyo {
  margin-bottom: 30px !important;
}
@media screen and (max-width: 767px) {
  .under-shop .gaiyo tr:last-child td {
    border-bottom: 1px solid #999 !important;
  }
}
@media screen and (max-width: 767px) {
  .under-shop .gaiyo th,
  .under-shop .gaiyo td {
    display: block;
    box-sizing: border-box;
  }
}
.under-shop .gaiyo th {
  width: 25%;
  max-width: 25%;
  vertical-align: top !important;
}
@media screen and (max-width: 767px) {
  .under-shop .gaiyo th {
    width: 100%;
    max-width: initial;
    border-bottom: none !important;
  }
}
@media screen and (max-width: 767px) {
  .under-shop .gaiyo td {
    border-bottom: none !important;
  }
}
.under-shop .gaiyo td .kana {
  position: relative;
}
.under-shop .gaiyo td .kana::before {
  content: "（";
}
.under-shop .gaiyo td .kana::after {
  content: "）";
}
.under-shop .gaiyo td iframe {
  display: block;
  width: 100%;
  height: 240px;
}
@media screen and (max-width: 767px) {
  .under-shop .gaiyo td iframe {
    max-height: 200px;
  }
}
.under-shop .gaiyo td a {
  display: block;
  word-break: break-all;
}
.under-shop .gaiyo td img {
  margin: 0;
}
.under-shop .gaiyo + p {
  margin-bottom: 0;
}
.under-shop .gaiyo .tel-link {
  pointer-events: none;
  color: rgb(30, 30, 30);
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .under-shop .gaiyo .tel-link {
    color: rgb(0, 170, 235);
    text-decoration: underline;
    pointer-events: visible;
  }
}
.under-shop .top-back {
  margin-top: 30px;
}
.under-shop .shop-list {
  margin-bottom: 30px;
}
.under-shop .shop-list tr {
  position: relative;
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list tr:not(:nth-of-type(1)) td:nth-of-type(1) {
    border-top: 1px solid #999;
  }
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list tr:last-child td:last-child {
    border-bottom: 1px solid #999;
  }
}
.under-shop .shop-list th,
.under-shop .shop-list td {
  padding: 0.75em;
  border: 1px solid #999;
  vertical-align: middle;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list th,
  .under-shop .shop-list td {
    display: block;
  }
}
.under-shop .shop-list th {
  padding: 0.25em 0;
  background-color: #efefef;
  font-weight: bold;
  text-align: center;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list th {
    display: none;
  }
}
.under-shop .shop-list td {
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list td {
    width: 100%;
    max-width: 100%;
    padding-left: 80px;
    line-height: 1.3;
    border-top: none;
    border-bottom: none;
    position: relative;
    z-index: 1;
  }
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list td::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
  }
}
.under-shop .shop-list td:nth-of-type(1) {
  width: 180px;
  max-width: 180px;
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list td:nth-of-type(1) {
    width: 100%;
    max-width: initial;
    background-color: #efefef;
  }
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list td:nth-of-type(1)::before {
    content: "店舗名";
  }
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list td:nth-of-type(2)::before {
    content: "住所";
  }
}
.under-shop .shop-list td:nth-of-type(3) {
  width: 120px;
  max-width: 120px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list td:nth-of-type(3) {
    width: 100%;
    max-width: initial;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list td:nth-of-type(3)::before {
    content: "TEL";
  }
}
.under-shop .shop-list td .kana {
  display: block;
  position: relative;
  font-size: 1.3rem;
}
.under-shop .shop-list td .kana::before {
  content: "（";
}
.under-shop .shop-list td .kana::after {
  content: "）";
}
.under-shop .shop-list td a {
  /*          display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;


  &:hover{
    background-color: #efefef;
    @include opacity(.3);
  }*/
}
.under-shop .shop-list td a.tel-link {
  pointer-events: none;
  text-decoration: none;
  color: rgb(30, 30, 30);
}
@media screen and (max-width: 767px) {
  .under-shop .shop-list td a.tel-link {
    pointer-events: visible;
  }
}
.under-shop .shop-list + p {
  margin-bottom: 0;
}
.under-knife .post-img img {
  height: auto;
}
.under-knife .post-head h1::before {
  background: url(img/icon/knife.svg) no-repeat center;
  background-size: contain;
}
.under-knife .knife-list {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .under-knife .knife-list td {
    padding-left: 100px;
  }
}
.under-knife .knife-list td:nth-of-type(1) {
  width: auto;
  max-width: initial;
}
@media screen and (max-width: 767px) {
  .under-knife .knife-list td:nth-of-type(1)::before {
    content: "商品名";
  }
}
.under-knife .knife-list td:nth-of-type(2) {
  width: 200px;
  max-width: 200px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .under-knife .knife-list td:nth-of-type(2) {
    width: auto;
    max-width: initial;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .under-knife .knife-list td:nth-of-type(2)::before {
    content: "メーカー名";
  }
}
.under-knife .knife-list td:nth-of-type(3) {
  width: 100px;
  max-width: 100px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .under-knife .knife-list td:nth-of-type(3) {
    width: auto;
    max-width: initial;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .under-knife .knife-list td:nth-of-type(3)::before {
    content: "刃の長さ";
  }
}
.under-knife .knife-list td:nth-of-type(4) {
  width: 100px;
  max-width: 100px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .under-knife .knife-list td:nth-of-type(4) {
    width: auto;
    max-width: initial;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .under-knife .knife-list td:nth-of-type(4)::before {
    content: "刃の材質";
  }
}
.under-dictionary .page-img {
  margin-bottom: 0;
}
.under-dictionary .post-cnt:nth-of-type(1) {
  margin-top: 0;
  padding-top: 0;
}
.under-dictionary .post-head h1 {
  padding-left: 50px;
  position: relative;
}
.under-dictionary .post-head h1::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 26px;
  background: url(img/icon/ss.svg) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
.under-dictionary .post-head h1 small {
  display: inline-block;
  position: relative;
}
.under-dictionary .post-head h1 small::before {
  content: "（";
}
.under-dictionary .post-head h1 small::after {
  content: "）";
}
.under-dictionary .post-list {
  margin: 0;
  padding: 0;
  border: 1px solid #ccc;
}
.under-dictionary .post-list li {
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  list-style-type: none;
  border-bottom: 1px solid #ccc;
}
.under-dictionary .post-list li:last-child {
  border-bottom: none;
}
.under-dictionary .post-list li a {
  display: block;
  padding: 0.5em 1.5em;
  color: rgb(30, 30, 30);
  font-weight: 500;
  text-decoration: none;
  position: relative;
}
.under-dictionary .post-list li a:hover {
  background-color: #eef3f8;
}
.under-dictionary .post-list li a::after {
  content: "\f054";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;
  font-size: 1.4rem;
  font-weight: normal;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  color: #c21210;
}
.under-dictionary .kanren th {
  width: 25%;
  max-width: 25%;
  vertical-align: top !important;
}
.under-dictionary .kanren td a {
  display: block;
}
.under-dictionary .search-tb {
  table-layout: fixed;
}
.under-dictionary .search-tb td {
  padding: 0 !important;
  width: 20%;
  max-width: 20%;
  box-sizing: border-box;
  text-align: center;
}
.under-dictionary .search-tb td a {
  display: block;
  padding: 0.5em 0;
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  text-decoration: none;
  color: rgb(30, 30, 30);
}
@media screen and (max-width: 767px) {
  .under-dictionary .search-tb td a {
    font-size: 1.5rem;
  }
}
.under-dictionary .search-tb td a:hover {
  background-color: #eef3f8;
}
.under-page .form-cnt {
  margin-top: 30px;
  padding: 25px 30px;
}
@media screen and (max-width: 767px) {
  .under-page .form-cnt {
    padding: 15px;
  }
}
.under-page .form-cnt p:nth-of-type(1) {
  margin-top: 0;
}
.under-page .form-cnt .formbox .notnull {
  display: inline-block;
  margin-left: 1em;
  padding: 0.35em 0.5em 0.5em;
  background-color: #f4a261;
  color: white;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1;
  border-radius: 3px;
}
.under-page .form-cnt .formbox table th,
.under-page .form-cnt .formbox table td {
  display: block;
  padding: 1em 0;
  box-sizing: border-box;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .under-page .form-cnt .formbox table th,
  .under-page .form-cnt .formbox table td {
    display: block;
  }
}
.under-page .form-cnt .formbox table th {
  font-size: 1.7rem;
  font-weight: 700;
  padding-bottom: 0;
}
.under-page .form-cnt .formbox table td {
  padding-top: 0.5em;
}
.under-page .form-cnt .formbox table td .row {
  margin-top: 0.75em;
  overflow: hidden;
}
.under-page .form-cnt .formbox table td .col {
  margin: 0 0.5em;
}
.under-page .form-cnt .formbox table td input[type=text],
.under-page .form-cnt .formbox table td input[type=email],
.under-page .form-cnt .formbox table td select,
.under-page .form-cnt .formbox table td textarea {
  width: 100%;
  max-width: 100%;
  font-size: 1.6rem;
  margin-bottom: 1em;
  padding: 0.75em;
  border: none;
  border: 1px solid rgba(30, 30, 30, 0.5);
  box-sizing: border-box;
  border-radius: 5px;
}
@media screen and (max-width: 767px) {
  .under-page .form-cnt .formbox table td input[type=text],
  .under-page .form-cnt .formbox table td input[type=email],
  .under-page .form-cnt .formbox table td select,
  .under-page .form-cnt .formbox table td textarea {
    font-size: 1.4rem;
  }
}
.under-page .form-cnt .formbox table td input[type=text]::placeholder,
.under-page .form-cnt .formbox table td input[type=email]::placeholder,
.under-page .form-cnt .formbox table td select::placeholder,
.under-page .form-cnt .formbox table td textarea::placeholder {
  color: rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 767px) {
  .under-page .form-cnt .formbox table td input[type=text]::placeholder,
  .under-page .form-cnt .formbox table td input[type=email]::placeholder,
  .under-page .form-cnt .formbox table td select::placeholder,
  .under-page .form-cnt .formbox table td textarea::placeholder {
    font-size: 1.3rem;
  }
}
.under-page .form-cnt .formbox table td input[type=text]:nth-last-of-type(1),
.under-page .form-cnt .formbox table td input[type=email]:nth-last-of-type(1),
.under-page .form-cnt .formbox table td select:nth-last-of-type(1),
.under-page .form-cnt .formbox table td textarea:nth-last-of-type(1) {
  margin-bottom: 0;
}
.under-page .form-cnt .formbox table td input[type=text]:disabled,
.under-page .form-cnt .formbox table td input[type=email]:disabled,
.under-page .form-cnt .formbox table td select:disabled,
.under-page .form-cnt .formbox table td textarea:disabled {
  background-color: #f1f1f1;
}
.under-page .form-cnt .formbox table td input[type=radio],
.under-page .form-cnt .formbox table td input[type=checkbox] {
  width: 20px;
  height: 20px;
  vertical-align: -0.2em;
}
.under-page .form-cnt .formbox table td select {
  width: auto;
  font-size: 100%;
}
.under-page .form-cnt .formbox table td textarea {
  width: 100%;
  max-width: 100%;
  font-family: sans-serif;
}
.under-page .form-cnt .formbox table td input[type=email] {
  width: 100%;
  max-width: 100%;
}
.under-page .form-cnt .formbox table td .mwform-tel-field input,
.under-page .form-cnt .formbox table td .mwform-zip-field input {
  width: auto;
}
.under-page .form-cnt .btnarea {
  display: flex;
  justify-content: center;
  margin-top: 30px;
  text-align: center;
}
.under-page .form-cnt .btnarea input {
  margin-top: 0;
  margin-left: 20px;
  margin-right: 20px;
  padding: 1em 2.5em;
  font-size: 1.8rem;
  font-weight: 700;
  color: white;
  border: none;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .under-page .form-cnt .btnarea input {
    margin-left: 10px;
    margin-right: 10px;
    padding: 0.75em 2em;
    font-size: 1.5rem;
  }
}
.under-page .form-cnt .btnarea input.send_btn, .under-page .form-cnt .btnarea input.send_btn2 {
  background-color: #66cdff;
  border-radius: 4px;
  color: white;
}
.under-page .form-cnt .btnarea input.send_btn:disabled, .under-page .form-cnt .btnarea input.send_btn2:disabled {
  opacity: 0.5 !important;
  border: 1px solid #ccc;
}
.under-page .form-cnt .btnarea input.upd_btn {
  background-color: rgba(204, 204, 204, 0.1);
  border: 1px solid #cccccc;
  color: rgb(30, 30, 30);
}
.under-page .form-cnt .mw_wp_form_input .btnarea input.send_btn2 {
  display: none;
  background-color: #f4a261;
  color: rgb(255, 255, 255);
}
.under-page .form-cnt .mw_wp_form_confirm .inp_mes {
  display: none;
}
.under-page .form-cnt .mw_wp_form_confirm .privacy_wrap {
  display: none !important;
}
.under-page .form-cnt .mw_wp_form_confirm .privacy {
  display: none !important;
}
.under-page .form-cnt .mw_wp_form_confirm .conf_mes {
  display: block;
}
.under-page .form-cnt .mw_wp_form_confirm .formbox table td .row {
  margin-top: 0;
}
.under-page .form-cnt .mw_wp_form_confirm .formbox table tr:nth-of-type(4) td .row {
  display: none;
}
.under-inquiry {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .under-inquiry {
    padding-bottom: 20px;
  }
}
.under-inquiry .inq-ttl {
  display: table;
  margin: 30px auto 0;
  font-size: 4rem;
  font-weight: bold;
}
.under-inquiry .form-cnt {
  margin-top: 0;
  padding-bottom: 50px;
}
.under-inquiry .form-cnt .pg-img {
  display: block;
  width: 100%;
}
.under-inquiry .form-cnt p:nth-of-type(1) {
  margin-top: 0;
  text-align: center;
}
.under-inquiry .form-cnt p.conf_mes {
  margin-top: 0;
  display: none;
  text-align: center;
}
.under-inquiry .form-cnt .formbox .notnull {
  display: inline-block;
  margin-left: 0.25em;
  padding: 0;
  background-color: transparent;
  color: #c21210;
  font-size: 2.4rem;
  font-weight: normal;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .under-inquiry .form-cnt .formbox .notnull {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .under-inquiry .form-cnt .formbox .fl {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
.under-inquiry .form-cnt .formbox .fl--row {
  display: flex;
  gap: 0 0.5em;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .under-inquiry .form-cnt .formbox .fl--row {
    justify-content: flex-start;
    gap: 0;
  }
}
.under-inquiry .form-cnt .formbox .mw-wp-form_image img {
  display: block;
  max-width: 50%;
}
@media screen and (max-width: 767px) {
  .under-inquiry .form-cnt .formbox .mw-wp-form_image img {
    max-width: 100%;
  }
}
.under-inquiry .form-cnt .formbox input[name="包丁のサイズ(刃の長さ)"] {
  width: 15% !important;
  max-width: 15% !important;
}
@media screen and (max-width: 767px) {
  .under-inquiry .form-cnt .formbox input[name="包丁のサイズ(刃の長さ)"] {
    width: 40%;
    max-width: 40%;
    margin-right: 15px;
  }
}
.under-inquiry .form-cnt .formbox input.other {
  width: 220px !important;
  max-width: 220px !important;
}
@media screen and (max-width: 767px) {
  .under-inquiry .form-cnt .formbox input.other {
    width: calc(100% - 4em) !important;
    max-width: calc(100% - 4em) !important;
    margin: 0 0.5em;
  }
}
@media screen and (max-width: 767px) {
  .under-inquiry .form-cnt .formbox .mwform-checkbox-field {
    width: 100%;
    margin: 0;
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .under-inquiry .form-cnt .formbox .mwform-checkbox-field.horizontal-item {
    padding: 0;
    margin: 0;
  }
}
.under-inquiry .form-cnt .mw_wp_form_confirm .pg-img {
  display: none;
}
.under-inquiry .form-cnt .mw_wp_form_confirm .inp_mes {
  display: none;
}
.under-inquiry .form-cnt .mw_wp_form_confirm .conf_mes {
  display: block;
}
.under-inquiry .post-cnt--mpReset {
  margin-top: 0 !important;
}

.error-pink input[type=text],
.error-pink input[type=email],
.error-pink input[type=tel],
.error-pink input[type=url],
.error-pink select,
.error-pink textarea {
  background: rgba(255, 192, 203, 0.5) !important;
}

.EventCalendar {
  position: relative;
}
.EventCalendar__label {
  display: block;
  margin: 0;
  text-align: center;
  line-height: 1.2;
  font-size: 1.7rem;
  font-weight: bold;
}
.EventCalendar .calendars .xo-month {
  border-color: #d8e0e5;
}
.EventCalendar .calendars .xo-month th,
.EventCalendar .calendars .xo-month td {
  font-size: 1.3rem;
  line-height: 1;
  border-color: #d8e0e5;
}
.EventCalendar .calendars .xo-month thead th {
  line-height: 2;
  background-color: #66cdff;
  color: white !important;
}
.EventCalendar .holiday-titles {
  display: flex;
  gap: 0 0.5em;
}
.EventCalendar .calLink {
  display: block;
  width: 100%;
  height: calc(100% - 40px - 40px);
  position: absolute;
  top: 40px;
  left: 0;
}
.EventCalendar--large {
  padding: 0 35px;
}
@media screen and (max-width: 767px) {
  .EventCalendar--large {
    padding: 0 15px;
  }
}
.EventCalendar--large .calendars .xo-month th,
.EventCalendar--large .calendars .xo-month td {
  font-size: 1.7rem;
}
@media screen and (max-width: 767px) {
  .EventCalendar--large .calendars .xo-month th,
  .EventCalendar--large .calendars .xo-month td {
    font-size: 1.5rem;
  }
}
.EventCalendar--large .calendars .xo-month .calendar-caption {
  font-size: 2rem !important;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .EventCalendar--large .calendars .xo-month .calendar-caption {
    font-size: 1.7rem !important;
  }
}
.EventCalendar--large .Notes {
  margin-top: 35px;
  display: flex;
  gap: 0 0.25em;
  line-height: 1.7;
  position: relative;
}
.EventCalendar--large .Notes::before {
  content: "※";
}

.post-wrap--calendar {
  padding-bottom: 100px;
}

.Timetable {
  padding-bottom: 70px !important;
}
.Timetable div {
  margin-bottom: 0px !important;
  background-color: transparent !important;
  border: none !important;
}
.Timetable__inner {
  padding: 0 !important;
}
.Timetable__column {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  gap: 0 50px;
}
@media screen and (max-width: 767px) {
  .Timetable__column {
    flex-direction: column;
    justify-content: flex-start;
    gap: 35px 0;
  }
}
.Timetable__img {
  display: block;
  width: 45%;
  min-width: 45%;
}
@media screen and (max-width: 767px) {
  .Timetable__img {
    width: 80%;
    min-width: initial;
  }
}
.Timetable__img img {
  display: block;
  width: 100%;
  margin: 0 !important;
}
.Timetable-List {
  display: flex;
  font-weight: bold;
  gap: 0 1em;
  line-height: 1.5;
  font-size: 1.6rem;
}
.Timetable-List .time {
  min-width: 110px;
}

.related {
  border: 1px solid black;
  position: relative;
}
.related__title {
  padding: 0.25em 1em;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background-color: #c21210;
  color: white;
  position: absolute;
  top: -1em;
  left: -0.5em;
  z-index: 10;
  font-size: 1.3rem;
  font-weight: 600;
  gap: 0 0.5em;
}
@media screen and (max-width: 767px) {
  .related__title {
    font-size: 1.1rem;
  }
}
.related__inner {
  padding: 0 !important;
  margin-bottom: 0 !important;
  background-color: transparent !important;
  border: none !important;
}
.related .relatedBox {
  padding: 0 !important;
  margin-bottom: 0 !important;
  background-color: transparent !important;
  border: none !important;
  position: relative;
}
.related .relatedBox a {
  padding: 0;
  padding: 15px !important;
  padding-top: 35px !important;
  display: flex;
  gap: 0 15px;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .related .relatedBox a {
    padding: 10px !important;
    padding-top: 25px !important;
  }
}
.related .relatedBox__img {
  display: block;
  width: 140px;
  min-width: 140px;
}
@media screen and (max-width: 767px) {
  .related .relatedBox__img {
    width: 90px;
    min-width: 90px;
  }
}
.related .relatedBox__img img {
  display: block;
  margin: 0 !important;
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 5/3.5;
}
.related .relatedBox__block {
  padding: 0 !important;
  margin-bottom: 0 !important;
  width: 100%;
  position: relative;
  background-color: transparent !important;
  border: none !important;
}
.related .relatedBox__caption {
  font-size: 1.6rem;
  font-weight: 600;
  color: rgb(30, 30, 30);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .related .relatedBox__caption {
    font-size: 1.4rem;
  }
}
.related .readMore {
  display: inline-flex;
  align-items: center;
  position: absolute;
  bottom: 15px;
  right: 15px;
  font-size: 1.4rem;
  gap: 0 0.5em;
}
@media screen and (max-width: 767px) {
  .related .readMore {
    display: table;
    font-size: 1.2rem;
    position: relative;
    bottom: auto;
    right: auto;
    margin: 0 0 0 auto;
    padding-right: 1em;
    padding-bottom: 1em;
  }
}

.SnsPanel__inner {
  padding: 5%;
}
.SnsPanel .fbArea {
  background-color: #e2eaf5;
}
.SnsPanel .fbArea__column {
  display: flex;
}
.SnsPanel .fbArea__img {
  display: block;
  min-width: 60%;
  width: 60%;
  height: 150px;
}
@media screen and (max-width: 767px) {
  .SnsPanel .fbArea__img {
    height: 120px;
  }
}
.SnsPanel .fbArea__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.SnsPanel .fbArea__block {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.5em 0;
}
@media screen and (max-width: 767px) {
  .SnsPanel .fbArea__block {
    gap: 0.75em 0;
  }
}
.SnsPanel .fbArea__label {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.3;
  text-align: center;
}
.SnsPanel .SnsBtnList__column {
  margin-top: 25px;
  display: flex;
  gap: 0 25px;
}
@media screen and (max-width: 767px) {
  .SnsPanel .SnsBtnList__column {
    gap: 0 10px;
  }
}
.SnsPanel .SnsBtnList__column--2 {
  justify-content: center;
}
.SnsPanel .SnsBtnList .shareBtn {
  display: block;
  width: 50%;
  border-radius: 4px;
}
.SnsPanel .SnsBtnList .shareBtn:hover {
  filter: brightness(130%);
}
.SnsPanel .SnsBtnList .shareBtn--fb {
  background-color: #1877f2;
}
.SnsPanel .SnsBtnList .shareBtn--twitter {
  background-color: black;
}
.SnsPanel .SnsBtnList .shareBtn--twitter:hover {
  background-color: #333;
}
.SnsPanel .SnsBtnList .shareBtn a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  color: white;
  gap: 0 0.5em;
  padding: 1em 0.5em;
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .SnsPanel .SnsBtnList .shareBtn a {
    font-size: 1.4rem;
  }
}
.SnsPanel .SnsBtnList .followBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 0.5em;
}

.weatherNews {
  width: 100%;
  margin-top: 25px;
  background-color: white;
}
.weatherNews #weather1 img {
  height: 70% !important;
}

.adBnr {
  display: flex;
  align-items: center;
  position: relative;
  background-color: white;
  border: 1px solid #0b5c87;
  box-sizing: border-box;
  padding: 1.5em 1em;
  text-decoration: none;
  gap: 0 0.5em;
  overflow: hidden;
}
.adBnr--smp {
  display: none;
}
@media screen and (max-width: 767px) {
  .adBnr--smp {
    margin-top: 25px;
    display: block;
  }
}
.adBnr__bg {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: auto;
  height: 100%;
}
.adBnr .Logo {
  display: block;
  min-width: 40px;
  width: 40px;
}
.adBnr__label {
  color: #0b5c87;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.3;
}
.adBnr + .ranking {
  margin-top: 25px;
}

.Payment {
  background-color: #f1f3f7 !important;
  border-radius: 15px;
  text-align: center !important;
}
@media screen and (max-width: 767px) {
  .Payment {
    width: 100%;
    border-radius: 10px;
  }
}
.Payment__inner {
  margin-bottom: 0 !important;
  padding: 5% !important;
  border: none !important;
  background-color: transparent !important;
}
.Payment__label {
  justify-content: center;
  margin-bottom: 1em !important;
  padding: 0 !important;
  background-color: transparent !important;
  gap: 0 0.5em !important;
}
.Payment .cardLogo {
  margin-top: 1.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1em;
}
.Payment .cardLogo img {
  display: block;
  width: auto;
  height: 30px;
  margin: 0 !important;
  padding: 0 !important;
}
.Payment .paymentBtn {
  max-width: 60%;
  margin: 35px auto 0;
  padding: 2.5em 0;
  background-color: white;
  border-radius: 15px;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .Payment .paymentBtn {
    max-width: 100%;
  }
}
.Payment .paymentBtn div {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background-color: transparent !important;
  text-align: center !important;
}
.Payment .Notes {
  display: block;
  margin-top: 2.5em;
  font-size: 11px !important;
}

.contactBtn {
  display: flex;
  justify-content: center;
}
.contactBtn a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background-color: #66cdff;
  color: white;
  padding: 1.25em 2.5em;
  border-radius: 7px;
  font-size: 1.8rem;
}

.cnt, header .h-top__inner, header .h-top h1, header .inner, footer .f-inner, .layout, .archive-cnt, .pagenavi, .top .pickup, .under .pan-inner {
  width: 100%;
  max-width: 1040px;
  box-sizing: border-box;
}

/* ========================================================= */
/* カラー */
/* ========================================================= */
.c_orange {
  color: #f4a261;
}

.c_green {
  color: rgb(0, 105, 52);
}

.c_pink {
  color: rgb(241, 81, 139);
}

.c_blue {
  color: rgb(0, 170, 235);
}

.c_red {
  color: #c21210;
}

/* ========================================================= */
/* フォントタイプ */
/* ========================================================= */
.f_base, .side-cnt .tag h1 button {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", メイリオ, Meiryo, "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", sans-serif;
}

.f_ar, .under-inquiry .inq-ttl {
  font-family: "arial";
}

.f_arb {
  font-family: "arial black";
}

.f_noto, body, p,
li,
dt,
dd,
table,
th,
td, header .h-top h1, .g-menuarea .h-menu li a, .g-menuarea .g-menu li a, #g-nav ul li a, #g-nav .h-menu li a, #g-nav .contact-btnarea .contact-btn, footer .f-inner .f-menu li a, #btm-btn ul li a.fd, .sns-list li.fb a, .top-back, .arch-list .arch-cat-ttl, .arch-list .post-blk h1, .arch-list .post-blk figure figcaption, .arch-list #more-button, .side-cnt .ranking h1 small, .side-cnt .ranking .tab-group li.tab, .side-cnt .news h1 small, .side-cnt .snsinfo h1, .side-cnt .snsinfo .twitter, .pagenavi .nav a, .top .pickup .post-blk h1, .top .pickup .post-blk figure figcaption, .under .pan, .under .post-cnt h1, .under .post-cnt h2, .under .post-cnt h3, .under .post-cnt h4, .under .post-cnt .mw_wp_form .btnarea input,
.under .post-cnt .orderform .btnarea input, .under-single .page-img h1, .under-single .post-head h1, .under-single .post-head .post-meta .cate li a, .under-single .crp_related h3, .under-shop .shop-cnt h1, .under-dictionary .search-tb td a, .under-page .form-cnt .btnarea input, .SnsPanel .fbArea__label, .SnsPanel .SnsBtnList .shareBtn a {
  font-family: "Noto Sans JP", sans-serif;
}

.f_notom, footer .pagetop, .arch-list .post-blk figure figcaption .meta-info li.date, .arch-list .post-blk.new::after, .side-cnt .ranking h1, .side-cnt .ranking ul.wpp-list li::before, .side-cnt .tag h1, .side-cnt .news h1, .top .pickup .post-blk .ribbon, .top .pickup .post-blk figure figcaption .meta-info li.date {
  font-family: "Noto Sans Mono", monospace;
}

/* ========================================================= */
/* 装飾 */
/* ========================================================= */
b,
.bold,
strong {
  font-weight: bold;
}

.normal {
  font-weight: normal;
}

.imgborder_dash {
  border: 1px dashed #999;
}

.imgshadow {
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
}

.photoframe {
  margin: 2px;
  border: 10px solid #fff;
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.6);
}

.underborder {
  border-bottom: 1px solid #ccc;
}

.under_border_da {
  border-bottom: 1px dashed #ccc;
}

.noborder,
article .norborder {
  border: none;
}

/* ========================================================= */
/* 表示 */
/* ========================================================= */
.nodisp {
  text-indent: -9999px;
}

.disp_none {
  display: none;
}

.ani, header .h-top::before, header .h-top__inner, header .h-top .search-blk, header .h-top #search-wrap2, header .h-top .sns, header .inner, .inquiry header .inner, .g-menuarea .h-menu, .g-menuarea .g-menu li a, .g-menuarea .g-menu li a::before, .g-menuarea .g-menu li .sub-menu li a, .pagenavi .nav a, .SnsPanel .SnsBtnList .shareBtn, .SnsPanel .SnsBtnList .shareBtn a {
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

@keyframes ani01 {
  0% {
    transform: translateY(0);
  }
  33.33333% {
    transform: translateY(-8px);
  }
  66.66667% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes rotate-ani01 {
  0% {
    transform: rotate(0deg) translateY(0);
  }
  3% {
    transform: rotate(-5deg) translateY(-8px);
  }
  6% {
    transform: rotate(0deg) translateY(0);
  }
  9% {
    transform: rotate(4deg);
  }
  11% {
    transform: rotate(0);
  }
  /*  75% {
    transform: rotate(5deg);
  }*/
  100% {
    transform: rotate(0deg);
  }
}
@keyframes zoom-ani01 {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes zoom-ani02 {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
/* ========================================================= */
/* レイアウト調整 */
/* ========================================================= */
.al-r {
  text-align: right;
}

.al-l {
  text-align: left;
}

.al-c {
  text-align: center;
}

.mauto, header .h-top__inner, header .h-top h1, header .inner, footer .f-inner, .layout, .archive-cnt, .pagenavi, .top .pickup, .under .pan-inner,
article .mauto,
article header .h-top__inner,
header article .h-top__inner,
article header .inner,
header article .inner {
  margin-left: auto;
  margin-right: auto;
}

.br-pc,
.dn-pc {
  display: block;
}

.br-sp,
.dn-sp {
  display: none;
}

.clearfix:before,
.clearfix:after {
  content: " "; /* 1 */
  display: table; /* 2 */
}

.clearfix:after {
  clear: both;
}

.clearfix {
  *zoom: 1;
}

.scroll {
  overflow: auto;
  white-space: nowrap;
}

.scroll::-webkit-scrollbar {
  height: 5px;
}

.scroll::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0);
}

.scroll::-webkit-scrollbar-thumb {
  /* スクロールバーのツマミの色 */
  background: rgba(255, 255, 255, 0.4);
}

/* tableにスクロールバーを追加 ここまで↑ */
.scroll table {
  /* tableの幅を100%に */
  width: 100%;
}

.scrollbox {
  position: relative;
  width: 100%;
  overflow: auto;
  scrollbar-base-color: #fff;
  scrollbar-3dlight-color: #ffffff;
  scrollbar-arrow-color: #ffffff;
  scrollbar-darkshadow-color: #ffffff;
  scrollbar-face-color: #f1f1f1;
  scrollbar-highlight-color: #f1f1f1;
  scrollbar-shadow-color: #f1f1f1;
  scrollbar-track-color: #ffffff;
}

/*スクロールバー全体*/
.scrollbox::-webkit-scrollbar {
  width: 10px;
}

/*横スクロールバー全体*/
.scrollbox::-webkit-scrollbar:horizontal {
  height: 10px;
}

/*スクロールバー上下左右末端のボタン*/
.scrollbox::-webkit-scrollbar-button {
  width: 10px;
  height: 10px;
}

/*ドラッグするツマミ部分*/
.scrollbox::-webkit-scrollbar-thumb {
  background: #f1f1f1;
}

/*右下角部分*/
.scrollbox::-webkit-scrollbar-corner {
  background-color: transparent;
}

/*!
utility > utility
------------------------------
*/
.u-mauto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.u-mlauto {
  margin-left: auto !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

.u-mt150 {
  margin-top: 150px !important;
}

.u-mt200 {
  margin-top: 200px !important;
}

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

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

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

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

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

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

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

.u-mlauto {
  margin-left: auto !important;
}

.u-ml5 {
  margin-left: 10px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

.u-ml15 {
  margin-left: 15px !important;
}

.u-ml25 {
  margin-left: 25px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

.u-ml70 {
  margin-left: 70px !important;
}

.u-ml100 {
  margin-left: 100px !important;
}

.u-mr5 {
  margin-right: 5px !important;
}

.u-mr10 {
  margin-right: 10px !important;
}

.u-mr15 {
  margin-right: 15px !important;
}

.u-mr25 {
  margin-right: 25px !important;
}

.u-mr50 {
  margin-right: 50px !important;
}

.u-mr70 {
  margin-right: 70px !important;
}

.u-mr100 {
  margin-right: 100px !important;
}

.u-mlr25 {
  margin-left: 25px !important;
  margin-right: 25px !important;
}

.u-p-reset {
  padding: 0 !important;
}

.u-ptb {
  padding: 100px 0 !important;
}
@media screen and (max-width: 767px) {
  .u-ptb {
    padding: 50px 0 !important;
  }
}

.u-ptb100 {
  padding: 100px 0 !important;
}

.u-ptb70 {
  padding: 70px 0 !important;
}
@media screen and (max-width: 767px) {
  .u-ptb70 {
    padding-top: 35px !important;
  }
}

.u-ptb50 {
  padding: 50px 0 !important;
}

.u-ptb35 {
  padding: 35px 0 !important;
}

.u-pt {
  padding-top: 100px !important;
}
@media screen and (max-width: 767px) {
  .u-pt {
    padding-top: 50px !important;
  }
}

.u-pb {
  padding-bottom: 100px !important;
}
@media screen and (max-width: 767px) {
  .u-pb {
    padding-bottom: 50px !important;
  }
}

.u-pt50 {
  padding-top: 50px !important;
}

.u-pt70 {
  padding-top: 70px !important;
}

.u-pt100 {
  padding-top: 100px !important;
}

.u-pt150 {
  padding-top: 150px !important;
}

.u-pt200 {
  padding-top: 200px !important;
}

.u-pb15 {
  padding-bottom: 15px !important;
}

.u-pb25 {
  padding-bottom: 25px !important;
}

.u-pb50 {
  padding-bottom: 50px !important;
}

.u-pb100 {
  padding-bottom: 100px !important;
}

.u-pb200 {
  padding-bottom: 200px !important;
}

@media screen and (max-width: 767px) {
  .u-sp-m-reset {
    margin: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mauto {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mlauto {
    margin-left: 0 !important;
    margin-left: auto !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt0 {
    margin-top: 0px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt5 {
    margin-top: 5px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt10 {
    margin-top: 10px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt15 {
    margin-top: 15px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt25 {
    margin-top: 25px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt35 {
    margin-top: 35px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt50 {
    margin-top: 50px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt70 {
    margin-top: 70px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt80 {
    margin-top: 80px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt100 {
    margin-top: 100px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mt150 {
    margin-top: 150px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mb5 {
    margin-bottom: 5px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-mb50 {
    margin-bottom: 50px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-ml0 {
    margin-left: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-ml15 {
    margin-left: 15px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-ml35 {
    margin-left: 35px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-ptb {
    padding: 70px 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-ptb15 {
    padding: 15px 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-ptb25 {
    padding: 25px 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-ptb35 {
    padding: 35px 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-ptb50 {
    padding: 50px 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pt {
    padding-top: 70px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pt0 {
    padding-top: 0px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pt35 {
    padding-top: 35px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pt50 {
    padding-top: 50px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pt70 {
    padding-top: 70px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pt100 {
    padding-top: 100px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pb {
    padding-bottom: 70px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pb0 {
    padding-bottom: 0px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pb25 {
    padding-bottom: 25px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-pb50 {
    padding-bottom: 50px !important;
  }
}

.u-fll {
  float: left;
}

.u-flr {
  float: right;
}

@media screen and (max-width: 767px) {
  .u-sp-fl-reset {
    float: none !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-flr {
    float: right !important;
  }
}

.u-alc {
  text-align: center !important;
}

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

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

@media screen and (max-width: 767px) {
  .u-sp-alc {
    text-align: center !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-all {
    text-align: left !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-alr {
    text-align: right !important;
  }
}

.u-vat {
  vertical-align: top !important;
}

.u-vam {
  vertical-align: middle !important;
}

.u-vab {
  vertical-align: bottom !important;
}

.u-wnum {
  width: 4em !important;
  max-width: 4em !important;
}

.u-w10 {
  width: 10% !important;
  max-width: 10% !important;
}

.u-w15 {
  width: 15% !important;
  max-width: 15% !important;
}

.u-w20 {
  width: 20% !important;
  max-width: 20% !important;
}

.u-w25 {
  width: 25% !important;
  max-width: 25% !important;
}

.u-w30 {
  width: 30% !important;
  max-width: 30% !important;
}

.u-w35 {
  width: 35% !important;
  max-width: 35% !important;
}

.u-w40 {
  width: 40% !important;
  max-width: 40% !important;
}

.u-w45 {
  width: 45% !important;
  max-width: 45% !important;
}

.u-w50 {
  width: 50% !important;
  max-width: 50% !important;
}

.u-w55 {
  width: 55% !important;
  max-width: 55% !important;
}

.u-w60 {
  width: 60% !important;
  max-width: 60% !important;
}

.u-w70 {
  width: 70% !important;
  max-width: 70% !important;
}

.u-w80 {
  width: 80% !important;
  max-width: 80% !important;
}

.u-w90 {
  width: 90% !important;
  max-width: 90% !important;
}

.u-w100 {
  width: 100% !important;
  max-width: 100% !important;
}

@media screen and (max-width: 767px) {
  .u-sp-w-reset {
    width: auto !important;
    max-width: initial !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-w30 {
    width: 30% !important;
    max-width: 30% !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-w35 {
    width: 35% !important;
    max-width: 35% !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-w40 {
    width: 40% !important;
    max-width: 40% !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-w50 {
    width: 50% !important;
    max-width: 50% !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-w70 {
    width: 70% !important;
    max-width: 70% !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-w80 {
    width: 80% !important;
    max-width: 80% !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-w90 {
    width: 90% !important;
    max-width: 90% !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-w100 {
    width: 100% !important;
    max-width: 100% !important;
  }
}

.u-of-hidden {
  overflow: hidden;
}

.u-bold {
  font-weight: 600;
}

.u-txtSmall {
  font-size: 1.4rem;
}

.u-txtLarge {
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  .u-txtLarge {
    font-size: 1.6rem;
  }
}

.u-uline {
  display: inline;
  text-decoration: underline;
}

.u-btmMarker {
  background: linear-gradient(transparent 60%, #ffffa3 60%);
}

@media screen and (max-width: 767px) {
  .u-sp-dispNone {
    display: none !important;
  }
}

.u-disp-Block {
  display: block;
}

.u-border {
  border: 1px solid #ccc;
  box-sizing: border-box;
}

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