@charset "UTF-8";
/* CSS Document */
/* 基本設定-------------------------------------------*/
a {
  text-decoration: none;
  transition: all  0.3s;
  color: #333333;
  outline: none;
}

a:hover {
  opacity: 0.6;
}

a img,
a svg {
  text-decoration: none;
  transition: all  0.3s;
  color: #333333;
  outline: none;
}

div {
  outline: none;
  word-break: break-word;
}

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

svg {
  backface-visibility: hidden;
  transform: translateZ(0);
}

div, li, header, footer, dt, dd, section {
  box-sizing: border-box;
}

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

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

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

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

.pc-view {
  display: none !important;
}

.sp-view {
  display: block !important;
}

@media screen and (min-width: 769px) {
  .pc-view {
    display: block !important;
  }
  .sp-view {
    display: none !important;
  }
}

/*-- Base --*/
html {
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  color: #333333;
  background: #FFF;
  line-height: 1.8;
  font-family: "Noto Sans JP", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", "游ゴシック", YuGothic, "メイリオ", Meiryo,sans-serif;
  font-size: 12px;
  width: 100%;
  word-wrap: break-word;
  letter-spacing: 0.02em;
  padding-top: 54px;
}

@media screen and (min-width: 769px) {
  body {
    font-size: 16px;
    padding-top: 88px;
  }
  a[href*="tel:"] {
    text-decoration: none;
  }
}

/*-- HTML5 elements --*/
article, aside, details, figcaption, figure, footer, header, nav, section, summary {
  display: block;
  margin: 0;
  padding: 0;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*/
  /*/
  height: auto;
  overflow: hidden;
  /**/
}

strong {
  font-weight: bold;
}

section, article {
  position: relative;
}

::selection {
  background: #9c9c9c;
  color: #fff;
}

::-moz-selection {
  background: #9c9c9c;
  color: #fff;
}

/* 細かいパーツ-------------------------------------------*/
#page {
  position: relative;
  padding-top: 61px;
}

@media screen and (min-width: 769px) {
  #page {
    padding-top: 102px;
  }
}

.flex-wrapper {
  display: flex;
}

.box-inner {
  margin: 0 15px;
  position: relative;
}

@media screen and (min-width: 769px) {
  .box-inner {
    margin: 0 auto;
    padding: 0 10px;
    max-width: 1020px;
  }
  .pc-flex {
    display: flex;
  }
}

.font-en {
  font-family: 'Barlow Semi Condensed', sans-serif;
}

.icon-svg {
  position: absolute;
  width: 0;
  height: 0;
}

.btn {
  border: 1px solid #017A8A;
  font-size: 14px;
  position: relative;
  text-align: center;
  letter-spacing: 0.1em;
}

.btn img {
  vertical-align: middle;
}

.btn a {
  display: block;
  padding: 13px 10px 15px;
  color: #017A8A;
}

.btn.bg01 a {
  background: #017A8A;
  color: #fff;
}

.btn-detail {
  background: #fff;
}

@media screen and (min-width: 769px) {
  .btn {
    max-width: 465px;
    margin: 0 auto;
    font-size: 18px;
  }
  .btn a {
    padding: 12px 10px;
  }
}

.btn-more {
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-weight: 500;
  font-size: 18px;
}

.btn-more a {
  padding: 10px 10px 12px;
}

@media screen and (min-width: 769px) {
  .btn-more {
    width: 276px;
    margin: 0 auto;
  }
}

.icon-arrow01 {
  position: relative;
  width: 12px;
  height: 12px;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: all 0.3s ease;
}

.icon-arrow01:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 8px;
  height: 8px;
  border-top: 2px solid #333333;
  border-right: 2px solid #333333;
  transform: rotate(45deg);
  transition: all 0.3s ease;
}

.icon-arrow02 {
  position: relative;
}

.icon-arrow02::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 4px;
  border-right: 1px solid #333333;
  border-bottom: 1px solid #333333;
  transform: skewX(45deg);
  transition: all 0.3s ease;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 3px;
}

.icon-nw {
  position: relative;
  top: 0;
  bottom: 0;
  margin: auto;
}

.icon-nw:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 13px;
  height: 13px;
  background: url(/assets/images/common/icon-nw.svg) no-repeat;
  background-size: contain;
}

.font-s {
  font-size: 10px;
}

@media screen and (min-width: 769px) {
  .font-s {
    font-size: 12px;
  }
}

.page-bd {
  padding-bottom: 60px;
}

@media screen and (min-width: 769px) {
  .page-bd {
    padding-bottom: 85px;
  }
}

.bgW {
  background: #fff !important;
}

.mds-ttl {
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 9px;
}

@media screen and (min-width: 769px) {
  .mds-ttl {
    margin-bottom: 30px;
    font-size: 26px;
  }
}

.noinfo {
  text-align: center;
  padding: 20px 0;
}

.tel-pcolor a {
  color: #017A8A;
}

.contents-tbl .tel a {
  color: #333;
}

/* 共通ヘッダー-------------------------------------------*/
.cmn-hd {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  background: #fff;
  z-index: 98;
  border-bottom: 1px solid #cccccc;
}

.cmn-hd .hd-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 54px;
}

.cmn-hd .sclogo {
  margin-left: 15px;
}

.cmn-hd .sclogo img {
  width: 94px;
  vertical-align: initial;
}

.cmn-hd .ttl {
  max-width: 116px;
  margin: 0 auto;
  text-align: center;
}

.cmn-hd .ttl img {
  vertical-align: initial;
}

.cmn-hd .flex-wrapper {
  position: absolute;
  align-items: flex-end;
  flex-wrap: wrap;
}

.navbtn {
  width: 55px;
  height: 54px;
  position: relative;
  text-align: center;
  font-weight: bold;
  font-size: 10px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.navbtn p {
  z-index: 1;
  position: relative;
}

.navbtn span {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  height: 2px;
  width: 22px;
  background-color: #333333;
  display: inline-block;
  box-sizing: border-box;
  transition: all 0.3s ease;
  z-index: 1;
}

.navbtn span:nth-of-type(1) {
  top: 8px;
}

.navbtn span:nth-of-type(2) {
  top: 16px;
}

.navbtn span:nth-of-type(3) {
  top: 24px;
}

.navbtn.show {
  background-color: #333333;
  color: #fff;
}

.navbtn.show span {
  opacity: 1;
  background-color: #fff;
}

.navbtn.show span:nth-child(1) {
  transform: translateY(11px) rotate(-45deg);
}

.navbtn.show span:nth-child(2) {
  opacity: 0;
}

.navbtn.show span:nth-child(3) {
  transform: translateY(-5px) rotate(45deg);
}

.navbtn.show:after {
  display: block;
  content: "";
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.3);
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
}

.btn-lang {
  font-family: 'Barlow Semi Condensed', sans-serif;
  padding-top: 10px;
}

.btn-lang span {
  opacity: 0;
}

.btn-lang img {
  width: 18px;
}

.btn-gnav p {
  position: absolute;
  bottom: 8px;
  left: 0;
  right: 0;
}

@media screen and (min-width: 769px) {
  .cmn-hd .hd-inner {
    align-items: center;
    height: 88px;
  }
  .cmn-hd .sclogo {
    margin-top: 0;
    margin-left: 22px;
  }
  .cmn-hd .sclogo img {
    width: auto;
  }
  .cmn-hd .ttl {
    width: auto;
    max-width: initial;
  }
  .navbtn {
    width: 88px;
    height: 87px;
  }
  .navbtn span {
    width: 27px;
  }
  .navbtn span:nth-of-type(1) {
    top: 18px;
  }
  .navbtn span:nth-of-type(2) {
    top: 28px;
  }
  .navbtn span:nth-of-type(3) {
    top: 38px;
  }
  .navbtn.show span:nth-child(3) {
    transform: translateY(-9px) rotate(45deg);
  }
  .btn-lang {
    font-size: 14px;
    padding-top: 21px;
  }
  .btn-lang img {
    width: 24px;
  }
  .btn-gnav p {
    font-size: 14px;
    bottom: 16px;
  }
}

/* グローバルナビ-------------------------------------------*/
body.fixed, html.fixed {
  overflow: hidden;
}

.nav-contents {
  display: none;
  position: fixed;
  top: 54px;
  left: 0;
  width: 100%;
  background: #333333;
  color: #ffffff;
  height: 100vh;
  z-index: 100;
}

.nav-contents .inner {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  padding-bottom: 190px;
}

.nav-contents a {
  color: #ffffff;
}

.nav-contents ul {
  padding: 0 18px 30px;
}

.nav-contents ul li {
  font-size: 14px;
}

.nav-contents ul li a {
  display: block;
  padding: 16px 0 16px 5px;
  border-bottom: 1px solid #cccccc;
  position: relative;
}

.nav-contents ul li .icon-arrow01 {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}

.nav-contents ul li .icon-arrow01::before {
  border-color: #ffffff;
}

.nav-contents .btn {
  margin: 0 18px;
  border-color: #ffffff;
}

@media screen and (min-width: 769px) {
  .nav-contents {
    top: 88px;
    height: auto;
  }
  .nav-contents ul {
    max-width: 1010px;
    margin: 0 auto;
    padding: 100px 10px 120px;
    display: flex;
    flex-wrap: wrap;
  }
  .nav-contents ul li {
    font-size: 18px;
    width: calc(100% / 4);
    padding-left: 30px;
  }
  .nav-contents ul li:nth-child(4n+1) {
    padding-left: 0;
  }
  .nav-contents ul li a {
    border-width: 0;
    padding: 20px 0 20px 5px;
  }
  .nav-contents ul li .icon-arrow01 {
    right: 10px;
  }
  .nav-contents ul li .icon-arrow01::before {
    border-width: 1px;
    width: 5px;
    height: 5px;
  }
  .nav-contents .btn {
    width: 276px;
    margin: 0 auto;
  }
}

#gnav .gnav li img {
  width: 4%;
  vertical-align: middle;
  padding-right: 13px;
}

#gnav .nav01 {
  padding-bottom: 0;
}

#gnav .nav02 li:first-child {
  border-top: 1px solid #cccccc;
}

@media screen and (min-width: 769px) {
  #gnav .gnav li img {
    width: 8%;
  }
  #gnav .gnav .nav-styling img {
    vertical-align: top;
    padding-top: 6px;
    width: 6%;
    padding-right: calc(13px + 2%);
  }
  #gnav .gnav .nav-styling span {
    display: inline-block;
    line-height: 1.44444444;
  }
  #gnav .nav01 {
    padding-bottom: 35px;
  }
  #gnav .nav02 {
    border-top: 1px solid #cccccc;
    padding: 30px 0 90px;
  }
  #gnav .nav02 li:first-child {
    border-top: none;
    width: 270px;
  }
  #gnav .nav02 li:nth-child(2) {
    padding-left: 60px;
  }
  #gnav .nav02 li:nth-child(2) .icon-arrow01 {
    right: 50px;
  }
  #langnav .langnav {
    justify-content: space-between;
  }
  #langnav .langnav li {
    width: 104px;
    padding-left: 0;
  }
  #langnav .langnav li .icon-arrow01 {
    right: -5px;
  }
}

/* アイコンが並ぶメニュー-------------------------------------------*/
.iconnav-list {
  display: flex;
  flex-wrap: wrap;
}

.iconnav-list li {
  width: calc(100% / 4 - 9px);
  margin-right: 12px;
  margin-bottom: 20px;
  font-size: 10px;
  text-align: center;
  font-feature-settings: "palt";
}

.iconnav-list li:nth-child(1) p {
  width: 110%;
}

.iconnav-list li:nth-child(4n) {
  margin-right: 0;
}

.iconnav-list li a {
  display: block;
}

.iconnav-list li svg {
  width: 48px;
  height: 48px;
  stroke: #333333;
  --waku-color:#ccc;
}

@media screen and (min-width: 769px) {
  .iconnav-list {
    flex-wrap: nowrap;
  }
  .iconnav-list li {
    margin-right: 20px;
    font-size: 14px;
  }
  .iconnav-list li:nth-child(4n) {
    margin-right: 20px;
  }
  .iconnav-list li:last-child {
    margin-right: 0;
  }
  .iconnav-list li svg {
    max-width: 86px;
    width: 100%;
    height: auto;
  }
  .iconnav-list li a:hover {
    opacity: 1;
    color: #017A8A;
  }
  .iconnav-list li a:hover svg {
    stroke: #017A8A;
    fill: #017A8A;
    --waku-color:#017A8A;
  }
  .iconnav-list li p {
    margin-top: 10px;
  }
}

/* 下層タイトル-------------------------------------------*/
.ttl-area {
  background: #333333;
  padding: 25px 0;
}

.ttl-mds {
  text-align: center;
  font-weight: bold;
  color: #ffffff;
  font-size: 25px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.ttl-mds .ttl-jp {
  font-size: 10px;
  font-weight: normal;
  display: block;
}

@media screen and (min-width: 769px) {
  .ttl-area {
    padding: 38px 0;
  }
  .ttl-mds {
    font-size: 44px;
  }
  .ttl-mds .ttl-jp {
    font-size: 14px;
  }
}

/* 下層小見出し-------------------------------------------*/
.submds {
  position: relative;
  font-weight: bold;
  font-size: 17px;
  padding-bottom: 10px;
  margin-bottom: 15px;
  border-bottom: 1px solid #017A8A;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 769px) {
  .submds {
    font-size: 26px;
    margin-bottom: 20px;
    padding-bottom: 15px;
  }
}

/* パンくず-------------------------------------------*/
.breadcrumb-area {
  background: #f5f5f5;
  display: block;
  margin: 0 auto;
  padding: 8px 0;
  border-bottom: 1px solid #898888;
  width: 100%;
}

.breadcrumb-area .breadcrumb {
  margin: 0 15px;
  font-size: 10px;
}

.breadcrumb-area .breadcrumb a {
  text-decoration: underline;
}

.breadcrumb-area .breadcrumb li {
  position: relative;
  padding-right: 22px;
  display: inline;
}

.breadcrumb-area .breadcrumb li:after {
  position: absolute;
  content: "";
  vertical-align: middle;
  transform: rotate(45deg);
  border-top: 1px solid #898888;
  border-right: 1px solid #898888;
  left: auto;
  width: 5px;
  height: 5px;
  right: 7px;
  bottom: 0;
  top: 0;
  margin: auto;
  text-decoration: none;
}

.breadcrumb-area .breadcrumb li:last-child:after {
  content: none;
}

.breadcrumb-area .breadcrumb li:last-child a {
  text-decoration: none;
}

.breadcrumb-area .current a {
  text-decoration: none;
}

@media screen and (min-width: 769px) {
  .breadcrumb-area {
    padding: 15px 0;
  }
  .breadcrumb-area .breadcrumb {
    font-size: 14px;
    margin: 0 auto;
    padding: 0 10px;
    max-width: 1020px;
  }
}

/* コンテンツエリア-------------------------------------------*/
.main-area {
  padding: 25px 0 0;
}

@media screen and (min-width: 769px) {
  .main-area {
    padding-top: 78px;
  }
}

/* 検索エリア-------------------------------------------*/
.tool-box .main-mds {
  font-weight: bold;
  margin-bottom: 10px;
  font-size: 15px;
}

.tool-box .tool {
  margin-bottom: 30px;
}

.tool-box .name {
  margin-bottom: 44px;
}

@media screen and (min-width: 769px) {
  .tool-box {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
  }
  .tool-box .main-mds {
    margin-bottom: 18px;
    font-size: 16px;
  }
  .tool-box .tool {
    margin-bottom: 0;
    width: 100%;
  }
  .tool-box .tool:nth-child(1) {
    width: 66%;
  }
  .tool-box .tool:nth-child(3) {
    width: 55%;
  }
  .tool-box .selector-wrapper {
    max-width: 250px;
    width: 100%;
    margin-bottom: 0;
    margin-left: 0;
  }
  .tool-box .keyword {
    max-width: 400px;
    width: 100%;
  }
  .tool-box .name {
    max-width: 250px;
    width: 100%;
    margin-bottom: 0;
    font-size: 14px;
    margin-right: 0;
  }
}

/* セレクトボックス-------------------------------------------*/
.selector-wrapper {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto 27px;
}

.selector-wrapper:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 8px;
  right: 17px;
  margin: auto;
  left: auto;
  width: 8px;
  height: 8px;
  border-top: 2px solid #333333;
  border-right: 2px solid #333333;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  pointer-events: none;
}

.selector-wrapper::after {
  content: "";
  position: absolute;
  right: 46px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 1px;
  height: 65%;
  background: #cccccc;
}

.selector-wrapper select {
  background: #FFF;
  color: #000;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  border: 1px solid #cccccc;
  padding: 20px 0 20px 15px;
  width: 100%;
  letter-spacing: 0.05em;
  font-size: 16px;
}

@media screen and (min-width: 769px) {
  .selector-wrapper:before {
    top: -4px;
    bottom: 0;
  }
  .selector-wrapper select {
    padding: 12px 50px 12px 18px;
    width: 100%;
  }
}

/* 検索フォーム-------------------------------------------*/
.keyword form {
  display: flex;
  border: 1px solid #cccccc;
  padding: 8px 0 8px 15px;
}

.keyword form input[type="text"] {
  outline: none;
  border: none;
  background: #fff;
  height: 36px;
  width: 100%;
  font-size: 16px;
}

.keyword form input[type="text"]::placeholder {
  color: #C9C9C9;
}

.keyword form .search-submit {
  width: 56px;
  border: none;
  transition: all 0.3s;
  background: #fff;
  cursor: pointer;
  background: url("/assets/images/common/icon-search.svg") no-repeat center center;
  background-size: 22px 22px;
  border-left: 1px solid #cccccc;
}

@media screen and (min-width: 769px) {
  .keyword form {
    max-width: 400px;
  }
  .keyword form .search-submit:hover {
    opacity: 0.6;
  }
}

/* お知らせ共通パーツ-------------------------------------------*/
.info-area .info-list dt {
  color: #017A8A;
  margin-bottom: 2px;
  font-size: 10px;
}

.info-area .info-list dd {
  margin-bottom: 20px;
}

.info-area .info-list dd a {
  text-decoration: underline;
}

@media screen and (min-width: 769px) {
  .info-area .info-list {
    margin-bottom: 10px;
    display: flex;
    flex-wrap: wrap;
  }
  .info-area .info-list dt {
    margin-bottom: 22px;
    font-size: 14px;
    padding-right: 5px;
  }
  .info-area .info-list dd {
    margin-bottom: 22px;
    width: 82%;
  }
  .info-area .info-list dd a {
    text-decoration: underline;
  }
}

/* カテゴリ一覧パーツ-------------------------------------------*/
.category-wrapper {
  margin-left: 15px;
  padding-bottom: 25px;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}

.category-wrapper .category-list {
  display: flex;
  flex-wrap: wrap;
  width: 1220px;
}

.category-wrapper .category-list label {
  cursor: pointer;
}

.category-wrapper .category-list li {
  padding-right: 10px;
  font-size: 11px;
  text-align: center;
  flex: 1;
  width: 122px;
}

.category-wrapper .category-list li a, .category-wrapper .category-list li label {
  padding: 12px 0;
  display: block;
  border-bottom: 1px solid #cccccc;
  position: relative;
}

.category-wrapper .category-list li.current a, .category-wrapper .category-list li.current label {
  color: #017A8A;
  border-color: #017A8A;
}

.category-wrapper .category-list li.current a::before, .category-wrapper .category-list li.current label::before {
  content: "";
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #017A8A;
}

@media screen and (min-width: 769px) {
  .category-wrapper {
    margin: 0 auto;
    padding: 0 10px 25px;
    max-width: 1020px;
    overflow-x: auto;
  }
  .category-wrapper .category-list {
    width: auto;
  }
  .category-wrapper .category-list li {
    padding-right: 20px;
    font-size: 16px;
    flex: initial;
    max-width: 200px;
    width: calc(100% / 5);
    margin-bottom: 15px;
  }
  .category-wrapper .category-list li:nth-child(5n) {
    padding-right: 0;
  }
  .category-wrapper .category-list li a:hover, .category-wrapper .category-list li label:hover {
    color: #017A8A;
    border-color: #017A8A;
    opacity: 1;
  }
  .category-wrapper .category-list li a:hover::before, .category-wrapper .category-list li label:hover::before {
    content: "";
    width: 100%;
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #017A8A;
  }
}

/* ショップ詳細用パーツ-------------------------------------------*/
.shopinfo-area {
  background: #f5f5f5;
  padding-bottom: 30px;
}

.shopinfo-area .info-txt01-weapper {
  margin-bottom: 25px;
}

.shopinfo-area .info-txt01 {
  border-left: 3px solid #333333;
  padding: 0 0 0 20px;
}

.shopinfo-area .info-txt01 .floor {
  margin-bottom: 3px;
  font-size: 14px;
  font-weight: bold;
  display: flex;
  vertical-align: middle;
}

.shopinfo-area .info-txt01 .category {
  color: #898888;
}

.shopinfo-area .info-txt01 .shopname {
  font-weight: bold;
  font-size: 20px;
}

.shopinfo-area .info-txt02 .shopimg {
  margin-bottom: 15px;
}

.shopinfo-area .info-txt02 .slick-slide img {
  width: 100%;
}

.shopinfo-area .info-txt02 .shopimg-wrapper {
  display: none;
}

.shopinfo-area .info-txt02 .thumbnail-wrapper {
  display: none;
  margin: 0 -5px;
}

.shopinfo-area .info-txt02 .thumbnail-wrapper .slick-track, .shopinfo-area .info-txt02 .thumbnail-wrapper .slick-list {
  transform: translate3d(0, 0, 0) !important;
}

.shopinfo-area .info-txt02 .thumbnail-wrapper .thumbnail {
  padding: 5px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.shopinfo-area .info-txt02 .thumbnail-wrapper .slick-current img {
  box-shadow: 0px 0px 0px 2px #ccc;
}

.shopinfo-area .detail-txt {
  margin-bottom: 25px;
}

.shopinfo-area .tel-txt {
  color: #017A8A;
  font-size: 15px;
  padding: 15px 0;
  text-align: center;
  border-top: 1px solid #017A8A;
  border-bottom: 1px solid #017A8A;
}

@media screen and (min-width: 769px) {
  .shopinfo-area {
    padding-top: 55px;
    padding-bottom: 50px;
  }
  .shopinfo-area a {
    display: block;
  }
  .shopinfo-area .shopinfo-inner {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    margin-bottom: 30px;
  }
  .shopinfo-area .info-txt01-weapper {
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    flex: 1;
  }
  .shopinfo-area .info-txt01-weapper .btn-detail {
    max-width: 350px;
    width: 100%;
    margin-left: 0;
    margin-top: auto;
  }
  .shopinfo-area .info-txt01 {
    border-left-width: 2px;
    padding: 0 0 0 25px;
    margin-bottom: 30px;
  }
  .shopinfo-area .info-txt01 .category {
    font-size: 14px;
  }
  .shopinfo-area .info-txt01 .shopname {
    font-size: 28px;
  }
  .shopinfo-area .detail-txt {
    margin-bottom: 0;
    font-size: 14px;
  }
  .shopinfo-area .tel-txt {
    font-size: 16px;
  }
  .shopinfo-area .info-txt02-weapper {
    margin-right: 50px;
  }
  .shopinfo-area .info-txt02 {
    min-width: 400px;
  }
  .shopinfo-area .info-txt02 .shopimg {
    width: 400px;
    margin-bottom: 0;
  }
  .shopinfo-area .info-txt02 .shopimg-wrapper {
    width: 400px;
  }
  .shopinfo-area .info-txt02 .thumbnail-wrapper {
    width: 400px;
    margin: 0;
  }
  .shopinfo-area .info-txt02 .thumbnail-wrapper .thumbnail {
    max-width: 134px;
  }
  .shopinfo-area .info-txt02 .thumbnail-wrapper .thumbnail:hover {
    opacity: 0.7;
  }
}

.shopinfo2 {
  padding: 33px 0 40px;
  margin-top: 44px;
}

.shopinfo2 .mds {
  text-align: center;
  margin-bottom: 20px;
  font-weight: bold;
  font-size: 20px;
}

.shopinfo2 .shopinfo-tbl {
  font-size: 14px;
  background: #fff;
  margin-bottom: 30px;
  width: 100%;
}

.shopinfo2 .shopinfo-tbl a {
  text-decoration: underline;
}

.shopinfo2 .shopinfo-tbl th, .shopinfo2 .shopinfo-tbl td {
  vertical-align: middle;
  padding: 11px;
}

.shopinfo2 .shopinfo-tbl th {
  border: 2px solid #ffffff;
  background: #f5f5f5;
  text-align: center;
  width: 30%;
}

.shopinfo2 .shopinfo-tbl td {
  border: 2px solid #f5f5f5;
}

.shopinfo2 .shopinfo-tbl .shopname {
  font-weight: bold;
  font-size: 15px;
}

.btn-tbl {
  border: 1px solid #333333;
  font-size: 12px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  letter-spacing: 0.1em;
  width: 109px;
  box-sizing: border-box;
  margin-top: 5px;
}

.btn-tbl.detail {
  width: 119px;
}

.btn-tbl.detail a {
  padding-left: 10px;
}

.btn-tbl a {
  display: block;
  padding: 0 0 0 18px;
  text-decoration: none !important;
}

@media screen and (min-width: 769px) {
  .shopinfo2 {
    margin-top: 85px;
    padding: 50px 0 55px;
  }
  .shopinfo2 .mds {
    font-size: 30px;
    margin-bottom: 35px;
  }
  .shopinfo2 .shopinfo-tbl {
    margin-bottom: 40px;
  }
  .shopinfo2 .shopinfo-tbl .pc-flex {
    justify-content: space-between;
  }
  .btn-tbl {
    margin-top: 0;
    margin-right: 30px;
    border: none;
    padding: 0;
    width: auto;
  }
  .btn-tbl.detail {
    width: 120px;
    margin-right: 0;
    margin-left: auto;
    font-size: 14px;
  }
  .btn-tbl.detail .icon-arrow02::before {
    width: 113px;
    top: 24px;
    left: -104px;
  }
  .btn-tbl a {
    display: inline;
    padding: 0;
  }
  .btn-tbl .icon-arrow02::before {
    width: 86px;
    height: 6px;
    top: 16px;
    left: -76px;
  }
}

/* ブログ・ニュース＆イベント・フード・スタイリング一覧共通パーツ-------------------------------------------*/
.article-list {
  display: flex;
  flex-wrap: wrap;
}

.article-list li {
  width: calc(100% / 2 - 10px);
  margin-right: 20px;
  margin-bottom: 30px;
}

.article-list li:nth-child(2n) {
  margin-right: 0;
}

.article-list li .img-area {
  position: relative;
  margin-bottom: 10px;
  background: #ffffff;
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
}

.article-list li .img-area:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.article-list li .img-area img {
  width: 100%;
  height: 100%;
  border: none !important;
  object-fit: cover;
}

.article-list li .img-area .icon-new {
  position: absolute;
  top: 0;
  left: 0;
}

.article-list li .img-area .icon-new::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 45px 45px 0 0;
  border-color: #333333 transparent transparent transparent;
}

.article-list li .img-area .icon-new span {
  color: #ffffff;
  z-index: 1;
  position: relative;
  font-size: 10px;
  transform: rotate(-45deg);
  display: block;
  right: -2px;
  top: 7px;
}

.article-list li .img-area .icon-category {
  position: absolute;
  right: 0;
  bottom: 0;
  background: #ffffff;
  font-size: 10px;
  color: #cccccc;
  padding: 2px 8px;
}

.article-list li .img-area .filter-more {
  transition: all 0.3s ease;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background: rgba(1, 122, 138, 0.6);
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-weight: 500;
  font-size: 16px;
}

.article-list li .img-area .filter-more span {
  border: 1px solid #fff;
  padding: 15px;
  width: 70%;
  text-align: center;
}

.article-list li .date {
  color: #017A8A;
  font-size: 10px;
}

.article-list li .date-wrapper {
  display: flex;
}

.article-list li .date-wrapper .date {
  margin-right: auto;
}

.article-list li .date-wrapper .floor {
  background: #ffffff;
  font-size: 10px;
  color: #898888;
  padding: 2px 5px;
}

.article-list li .title {
  font-weight: bold;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin-bottom: 5px;
  line-height: 1.6;
}

.article-list li .shopname {
  font-size: 10px;
}

.article-list.blog li {
  margin-bottom: 25px;
}

.article-list.blog li .img-area .icon-category {
  color: #017A8A;
}

.article-list.blog .title {
  -webkit-line-clamp: 2;
}

.newslist li .img-area {
  position: relative;
  overflow: hidden;
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
}

.newslist li .img-area:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.newslist li .img-area img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 100%;
  width: auto;
  max-height: 100%;
  height: auto;
  border: none !important;
}

.foodlist li .img-area,
.stylinglist li .img-area {
  aspect-ratio: 235/313;
  height: auto;
}

.foodlist li .img-area .icon-new span,
.stylinglist li .img-area .icon-new span {
  letter-spacing: 0.02em;
  line-height: 1.8;
}

.foodlist li .detail,
.stylinglist li .detail {
  font-size: 12px;
  letter-spacing: 0.14em;
  line-height: 1.33333333;
}

.foodlist li .detail .shop, .foodlist li .detail .item, .foodlist li .detail .price, .foodlist li .detail .scene,
.stylinglist li .detail .shop,
.stylinglist li .detail .item,
.stylinglist li .detail .price,
.stylinglist li .detail .scene {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  word-break: break-all;
}

.foodlist li .detail .shop,
.stylinglist li .detail .shop {
  font-size: 12px;
  color: #949494;
  font-weight: 500;
}

.foodlist li .detail p,
.stylinglist li .detail p {
  margin-top: 6px;
}

.foodlist li .detail p .sub,
.stylinglist li .detail p .sub {
  color: #949494;
  padding-right: 5px;
}

.foodlist li .detail .nickname,
.foodlist li .detail .item,
.stylinglist li .detail .nickname,
.stylinglist li .detail .item {
  font-weight: 500;
}

.foodlist li .detail .nickname,
.foodlist li .detail .scene,
.stylinglist li .detail .nickname,
.stylinglist li .detail .scene {
  -webkit-line-clamp: 1;
}

.foodlist li .detail .price,
.stylinglist li .detail .price {
  line-height: 1.5;
}

.foodlist li .detail .like,
.stylinglist li .detail .like {
  display: flex;
  align-items: center;
}

.foodlist li .detail .like .icon,
.stylinglist li .detail .like .icon {
  display: inline-block;
  margin-right: 5px;
  width: 15px;
  height: 15px;
  background: url(../images/common/icon_heart-off.svg) bottom/100% no-repeat;
}

.foodlist li .detail .like.on .icon,
.stylinglist li .detail .like.on .icon {
  background: url(../images/common/icon_heart-on.svg) bottom/100% no-repeat;
}

@media screen and (min-width: 769px) {
  .article-list li {
    width: calc(100% / 4 - 18px);
    margin-right: 24px;
    margin-bottom: 40px;
  }
  .article-list li:nth-child(2n) {
    margin-right: 24px;
  }
  .article-list li:nth-child(4n) {
    margin-right: 0;
  }
  .article-list li a {
    display: block;
  }
  .article-list li a:hover {
    opacity: 1;
  }
  .article-list li a:hover .filter-more {
    opacity: 1;
    display: flex;
  }
  .article-list li .img-area {
    margin-bottom: 10px;
    max-width: 232px;
    max-height: 232px;
    height: 22.5vw;
  }
  .article-list li .img-area .icon-new {
    position: absolute;
    top: 0;
    left: 0;
  }
  .article-list li .img-area .icon-new::after {
    border-width: 70px 70px 0 0;
  }
  .article-list li .img-area .icon-new span {
    font-size: 14px;
    right: -6px;
    top: 10px;
  }
  .article-list li .img-area .icon-category {
    font-size: 14px;
  }
  .article-list li .date {
    font-size: 14px;
    min-width: 77px;
  }
  .article-list li .date-wrapper {
    display: flex;
  }
  .article-list li .date-wrapper .floor {
    font-size: 14px;
  }
  .article-list li .title {
    -webkit-line-clamp: 2;
  }
  .article-list li .shopname {
    font-size: 14px;
  }
  .article-list.blog li {
    margin-bottom: 65px;
  }
  .newslist li .img-area {
    max-width: initial;
    max-height: initial;
    height: auto;
  }
  .foodlist li .img-area,
  .stylinglist li .img-area {
    aspect-ratio: 235/313;
    height: auto;
    max-height: none;
  }
  .foodlist li .detail .shop,
  .stylinglist li .detail .shop {
    font-size: 14px;
    line-height: 1.35714286;
  }
  .foodlist li .detail .nickname,
  .foodlist li .detail .item,
  .stylinglist li .detail .nickname,
  .stylinglist li .detail .item {
    font-size: 14px;
  }
}

/* WYSIWYG-------------------------------------------*/
.blog-detail-box .category {
  font-size: 14px;
  color: #898888;
  margin-bottom: 10px;
}

.blog-detail-box .date {
  color: #017A8A;
  margin-bottom: 10px;
}

.blog-detail-box .ttl {
  font-weight: bold;
  padding-bottom: 15px;
  margin-bottom: 30px;
  border-bottom: 1px solid #333333;
  font-size: 15px;
}

.blog-detail-box .url {
  margin-bottom: 5px;
}

.blog-detail-box .url a {
  text-decoration: underline;
}

.blog-detail-box .main-txt-box {
  margin-bottom: 30px;
  padding: 0 0 20px;
  border-bottom: 1px solid #cccccc;
}

.main-txt-box p {
  margin: 0 0 5px;
}

.main-txt-box a {
  text-decoration: underline;
}

.main-txt-box strong, .main-txt-box b {
  font-weight: bold;
}

.main-txt-box em {
  font-style: italic;
}

.main-txt-box img {
  max-width: 100%;
  margin: 0 auto;
  display: block;
  max-height: 600px;
  width: auto;
  height: auto;
}

.main-txt-box ul {
  list-style-type: disc;
}

.main-txt-box ol {
  list-style-type: decimal;
}

.main-txt-box table th {
  text-align: center;
  vertical-align: inherit;
  font-weight: bold;
}

.main-txt-box .fwN, .main-txt-box caption, .main-txt-box h1, .main-txt-box h2, .main-txt-box h3, .main-txt-box h4, .main-txt-box h5, .main-txt-box h6, .main-txt-box td, .main-txt-box th {
  margin: 0;
}

.main-txt-box h1 {
  font-size: 2em;
}

.main-txt-box h2 {
  font-size: 1.5em;
}

.main-txt-box h3 {
  font-size: 1.17em;
}

.main-txt-box h4 {
  font-size: 1em;
}

.main-txt-box h5 {
  font-size: 0.83em;
}

.main-txt-box h6 {
  font-size: 0.67em;
}

.main-txt-box hr {
  display: block;
}

@media screen and (min-width: 769px) {
  .blog-detail-box .category {
    font-size: 20px;
    margin-bottom: 15px;
  }
  .blog-detail-box .date {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .blog-detail-box .ttl {
    font-size: 26px;
    padding-bottom: 40px;
    margin-bottom: 50px;
  }
  .blog-detail-box .main-txt-box {
    margin-bottom: 50px;
  }
  .main-txt-box .url {
    margin-bottom: 20px;
  }
}

/* ページャー-------------------------------------------*/
.pager-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 30px 0 0;
}

.pager-box li {
  position: relative;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-weight: bold;
  font-size: 16px;
  border: 1px solid #017A8A;
  width: 45px;
  height: 45px;
}

.pager-box li.current {
  background: #017A8A;
  color: #ffffff;
}

.pager-box li.current a {
  color: #ffffff;
}

.pager-box li a {
  color: #017A8A;
  display: block;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.pager-box li .icon-arrow01 {
  position: absolute;
}

.pager-box li .icon-arrow01::before {
  border-color: #017A8A;
  width: 12px;
  height: 12px;
}

.pager-box .btn-back {
  border: none;
  width: 35px;
}

.pager-box .btn-back .icon-arrow01 {
  left: 5px;
}

.pager-box .btn-back .icon-arrow01::before {
  transform: rotate(225deg);
}

.pager-box .btn-next {
  border: none;
  width: 35px;
}

.pager-box .btn-next .icon-arrow01 {
  right: 5px;
}

.pager-box .disable {
  opacity: 0;
  visibility: hidden;
}

@media screen and (min-width: 769px) {
  .pager-box {
    max-width: 360px;
    margin: 0 auto;
  }
}

/* 右下のPAGETOPボタン-------------------------------------------*/
.btn-pagetop {
  cursor: pointer;
  transition: 0.3s;
  position: fixed;
  bottom: 5%;
  right: 3%;
  z-index: 9;
  display: block !important;
  opacity: 1;
  width: 50px;
  height: 50px;
}

.btn-pagetop:hover {
  opacity: 0.7;
}

.btn-hide {
  opacity: 0;
  visibility: hidden;
  transition: all  0.3s;
}

.btn-hide:hover {
  visibility: hidden;
}

/* 静的ページの共通パーツ-------------------------------------------*/
.static-area .mds-fwb {
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 10px;
}

.static-area .contents-hd {
  margin-bottom: 45px;
}

.static-area .contents-hd .img-box {
  margin-bottom: 20px;
  text-align: center;
}

.static-area .contents-hd .img-box img {
  max-width: 215px;
}

.static-area .contents-hd .txt-box {
  text-align: center;
  border-top: 2px solid;
  border-bottom: 2px solid;
  padding: 12px 0;
  font-size: 20px;
  font-weight: bold;
  border-color: #000;
  font-size: 17px;
  margin-bottom: 25px;
}

.static-area .contents-hd .txt-ttl {
  margin-bottom: 25px;
}

.static-area .contents-hd .catch01 {
  font-size: 14px;
  text-align: center;
}

.static-area .contents-hd .catch01 p {
  margin-bottom: 5px;
}

.static-area .contents-hd .fukidashi {
  color: #fff;
  background: #000;
  position: relative;
  padding: 16px 10px;
  margin-right: 10%;
}

.static-area .contents-hd .fukidashi::before {
  content: "";
  position: absolute;
  margin: auto;
  right: -9px;
  top: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 9px;
  border-color: transparent transparent transparent #000;
}

.static-area .contents-hd .fukidashi .txt01 {
  font-size: 11px;
  font-weight: normal;
}

.static-area .contents-hd .fukidashi .txt02 {
  font-size: 17px;
}

.static-area .c-box {
  margin-bottom: 45px;
}

.static-area .c-box:last-child {
  margin-bottom: 0;
}

.static-area .c-box p {
  margin-bottom: 15px;
}

.static-area .c-box .submds-s {
  margin-bottom: 0;
}

.static-area .c-box .icon-tel {
  position: relative;
  margin-right: 25px;
}

.static-area .c-box .icon-tel::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 16px;
  height: 16px;
  background: url(/assets/images/common/icon-tel.png) no-repeat;
  background-size: contain;
}

.static-area .tokuten-list {
  margin: 30px 0 35px;
}

.static-area .tokuten-list li {
  position: relative;
  padding: 43px 15px 18px;
  margin-bottom: 20px;
  font-size: 14px;
}

.static-area .tokuten-list li .mds {
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
  position: absolute;
  top: -10px;
  left: 0;
  padding: 2px 20px;
}

.static-area .tokuten-list li .mds span {
  font-family: 'Barlow Semi Condensed', sans-serif;
  padding-left: 5px;
  font-size: 16px;
}

.static-area .tokuten-list li p {
  margin-bottom: 0;
}

.static-area .tokuten-list li .note {
  font-size: 11px;
  margin-top: 5px;
}

.static-area .tokuten-list.list-l li .mds {
  font-size: 17px;
}

.static-area .tokuten-txt-box {
  border: 1px solid;
  font-size: 14px;
  padding: 10px 15px;
}

.static-area .tokuten-txt-box h4 {
  margin-top: -40px;
  margin-bottom: 10px;
  font-weight: bold;
  text-align: center;
  font-size: 17px;
}

.static-area .tokuten-txt-box h4 span {
  padding: 0 15px;
  background: #fff;
}

.static-area .info-box {
  border: 1px solid #017A8A;
  padding: 15px 20px 10px;
  margin: 40px auto 30px;
  text-align: center;
}

.static-area .info-box .mds-fwb {
  font-size: 12px;
  margin-bottom: 8px;
}

.static-area .tel-box li .tel-num {
  font-size: 23px;
  font-weight: 500;
  font-family: 'Barlow Semi Condensed', sans-serif;
  letter-spacing: 0.1em;
  margin: 10px 0;
  line-height: 1;
}

.static-area .tel-box li .tel-num span {
  font-size: 12px;
  font-weight: normal;
}

@media screen and (min-width: 769px) {
  .static-area .font-s {
    font-size: 14px;
  }
  .static-area .mds-fwb {
    font-size: 18px;
  }
  .static-area .contents-hd {
    margin-bottom: 90px;
  }
  .static-area .contents-hd .pc-flex {
    align-items: center;
  }
  .static-area .contents-hd .txt-box {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .static-area .contents-hd .fukidashi {
    padding: 20px;
    max-width: 160px;
  }
  .static-area .contents-hd .fukidashi::before {
    content: "";
    right: -9px;
    border-width: 5px 0 5px 9px;
    border-color: transparent transparent transparent #000;
  }
  .static-area .contents-hd .fukidashi .txt01 {
    font-size: 14px;
  }
  .static-area .contents-hd .fukidashi .txt02 {
    font-size: 22px;
  }
  .static-area .c-box {
    margin-bottom: 100px;
  }
  .static-area .c-box .icon-tel {
    margin-right: 40px;
  }
  .static-area .c-box .icon-tel::before {
    width: 23px;
    height: 23px;
  }
  .static-area .tokuten-list {
    display: flex;
    flex-wrap: wrap;
  }
  .static-area .tokuten-list li {
    width: calc(100% / 2 - 10px);
    margin-right: 20px;
    margin-bottom: 40px;
    font-size: 18px;
    padding: 35px 30px;
  }
  .static-area .tokuten-list li:nth-child(2n) {
    margin-right: 0;
  }
  .static-area .tokuten-list li .mds {
    top: -18px;
    font-size: 16px;
  }
  .static-area .tokuten-list li .mds span {
    font-size: 22px;
  }
  .static-area .tokuten-list li .note {
    font-size: 14px;
    margin-top: 12px;
  }
  .static-area .tokuten-txt-box {
    font-size: 18px;
    padding: 25px 30px 20px;
  }
  .static-area .tokuten-txt-box h4 {
    font-size: 26px;
    margin-top: -48px;
    margin-bottom: 25px;
  }
  .static-area .tokuten-txt-box h4 span {
    padding: 0 45px;
  }
  .static-area .tel-box li .tel-num {
    font-size: 30px;
  }
  .static-area .tel-box li .tel-num span {
    font-size: 16px;
  }
}

/* 静的ページの共通パーツその2-------------------------------------------*/
.ttl-s {
  padding: 35px 0;
}

.ttl-s .ttl-mds {
  font-size: 20px;
}

@media screen and (min-width: 769px) {
  .ttl-s {
    padding: 55px 0;
  }
  .ttl-s .ttl-mds {
    font-size: 34px;
  }
}

.txt-style-box .contents-tbl {
  margin: 15px 0 40px;
  width: 100%;
}

.txt-style-box .contents-tbl a {
  text-decoration: underline;
}

.txt-style-box .contents-tbl th, .txt-style-box .contents-tbl td {
  border: 2px solid #F5F5F5;
  vertical-align: middle;
}

.txt-style-box .contents-tbl th {
  background: #F5F5F5;
  text-align: center;
  padding: 13px 10px;
  width: 30%;
  border-bottom: 2px solid #fff;
}

.txt-style-box .contents-tbl td {
  padding: 10px;
}

.txt-style-box .contents-tbl td .btn {
  margin: 15px 0;
}

.txt-style-box .contents-tbl td .btn a {
  text-decoration: none;
}

.txt-style-box p {
  margin-bottom: 15px;
}

.txt-style-box .txt-list {
  list-style: decimal;
}

.txt-style-box .txt-list li {
  margin-bottom: 15px;
  margin-left: 13px;
}

.txt-style-box .mds-txt {
  font-weight: 500;
  margin-bottom: 0;
}

.txt-style-box .indent-txt {
  margin-bottom: 15px;
  padding-left: 10px;
}

.txt-style-box .c-box {
  margin-bottom: 35px;
}

@media screen and (min-width: 769px) {
  .txt-style-box .contents-tbl {
    margin: 30px 0 90px;
  }
  .txt-style-box .contents-tbl th, .txt-style-box .contents-tbl td {
    font-size: 16px;
  }
  .txt-style-box .contents-tbl th {
    padding: 30px 10px;
  }
  .txt-style-box .contents-tbl td {
    padding: 22px 20px;
  }
  .txt-style-box .contents-tbl td .pc-flex {
    justify-content: space-between;
  }
  .txt-style-box .contents-tbl td .pc-flex .btn {
    margin-left: 0;
    width: 48.5%;
  }
  .txt-style-box .contents-tbl .font-s {
    font-size: 14px;
  }
  .txt-style-box p {
    margin-bottom: 40px;
  }
  .txt-style-box .txt-list li {
    margin-bottom: 40px;
    margin-left: 18px;
  }
  .txt-style-box .mds-txt {
    margin-bottom: 0;
  }
  .txt-style-box .indent-txt {
    margin-bottom: 40px;
    padding-left: 15px;
  }
  .txt-style-box .c-box {
    margin-bottom: 75px;
  }
  .txt-style-box .font-s {
    font-size: 14px;
  }
}

/* フッター-------------------------------------------*/
.ft-nav {
  background: #f5f5f5;
  padding: 30px 0 10px;
}

.ft-nav .btn-top {
  margin-bottom: 30px;
}

.cmn-ft {
  background: #333333;
  padding: 25px 0;
  position: relative;
  color: #ffffff;
}

.cmn-ft a {
  color: #ffffff;
}

.cmn-ft .icon-arrow01 {
  margin-right: 18px;
}

.cmn-ft .icon-arrow01::before {
  border-color: #ffffff;
  width: 6px;
  height: 6px;
}

.cmn-ft .ft-box01 {
  margin-bottom: 38px;
}

.cmn-ft .ft-box01 .txtnav {
  margin-bottom: 25px;
}

.cmn-ft .ft-box01 .txtnav li {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 25px;
}

.cmn-ft .ft-box01 .txtnav .txt-ttl {
  margin-bottom: 12px;
}

.cmn-ft .ft-box01 .txtnav .navtxt-s {
  font-weight: normal;
  margin-bottom: 12px;
}

.cmn-ft .ft-box02 {
  text-align: center;
}

.cmn-ft .ft-box02 .ft-logo {
  margin-bottom: 12px;
}

.cmn-ft .ft-box02 .ft-logo svg {
  width: 100%;
  fill: #ffffff;
}

.cmn-ft .ft-box02 address {
  margin-bottom: 25px;
}

.cmn-ft .copyright {
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-weight: 500;
  font-size: 10px;
  color: #898888;
}

@media screen and (min-width: 769px) {
  .ft-nav {
    padding: 60px 0 52px;
  }
  .ft-nav .btn-top {
    margin-bottom: 36px;
  }
  .cmn-ft {
    padding: 50px 0 30px;
  }
  .cmn-ft .ft-box01 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
  }
  .cmn-ft .ft-box01 .txtnav {
    margin-bottom: 0;
  }
  .cmn-ft .ft-box01 .txtnav li {
    font-size: 16px;
  }
  .cmn-ft .ft-box01 .txtnav .navtxt-s {
    font-size: 14px;
    margin-bottom: 10px;
  }
  .cmn-ft .ft-box02 .ft-logo {
    margin-bottom: 15px;
  }
  .cmn-ft .ft-box02 address {
    margin-bottom: 40px;
  }
  .cmn-ft .copyright {
    font-size: 14px;
  }
}

/*# sourceMappingURL=_map/common.css.map */