@charset "UTF-8";
/*-------------------------------------------------

	 reset

-------------------------------------------------*/
html {
 font-size: 62.5%;
 height: 100%;
 letter-spacing: .1em;
}
body {
 height: 100%;
}
a[href] {
 transition: all .4s ease;
 outline: none;
 text-decoration: none;
}
a:hover {
 text-decoration-color: inherit;
}
a:focus {
 outline: none;
}
button, input, select, textarea {
 background-color: transparent;
 border-style: none;
 color: inherit;
}
/*-------------------------------------------------

	 font

-------------------------------------------------*/
.f-min {
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 font-style: normal;
}
.f-normal {
 font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", sans-serif;
}
/* clearfix
--------------------- */
.clearfix:after {
 content: ".";
 display: block;
 height: 0;
 clear: both;
 visibility: hidden;
}
.clearfix {
 display: inline-block;
}
* html .clearfix {
 height: 1%;
}
.clearfix {
 display: block;
}
* {
 margin: 0;
 padding: 0;
 outline: none;
 -webkit-appearance: none;
}
* {
 min-height: 0;
 min-width: 0;
}
*, ::before, ::after {
 background-repeat: no-repeat;
 box-sizing: inherit;
}
/* text
--------------------- */
body {
 color: #111;
 background-color: #fff;
 font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", sans-serif;
 font-size: 1.4rem;
 line-height: 1.65;
 scrolling: yes;
 position: relative;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 min-width: 320px;
 overflow-x: hidden;
 overflow-y: scroll;
 text-rendering: optimizeLegibility;
 text-size-adjust: 100%;
 -webkit-text-size-adjust: 100%;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
 body {
  font-size: 1.3rem;
 }
}
@media screen and (max-width: 767px) {
 body {
  font-size: 1.2rem;
 }
}
body.fixed {
 position: fixed;
 width: 100%;
 height: 100%;
}
img {
 max-width: 100%;
 height: auto;
 border: none;
 vertical-align: bottom;
}
table {
 border-collapse: collapse;
}
button, input, select {
 border: none;
 box-sizing: border-box;
 /*font-family: "YakuHanJP", Noto Sans JP, "Hiragino Sans", "繝偵Λ繧ｮ繝手ｧ偵ざ ProN W3", "Hiragino Kaku Gothic ProN", "繝｡繧､繝ｪ繧ｪ", Meiryo, "Helvetica Neue", Helvetica, sans-serif;*/
 font-family: Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
button, select {
 cursor: pointer;
}
select {
 -moz-appearance: none;
 text-indent: 0.01px;
 text-overflow: "";
}
select::-ms-expand {
 display: none;
}
h1, h2, h3 {
 font-weight: normal;
}
.slick-list {
 _zoom: 1;
 overflow: hidden;
}
/*---------------------------
	 utility
---------------------------*/
/* link
--------------------- */
a {
 /*color: #fff;*/
 text-decoration: none;
 overflow: hidden;
 outline: none;
 cursor: pointer;
}
a:hover {
 text-decoration: none;
}
a[href^="tel:"] {
 pointer-events: none;
 color: inherit;
 text-decoration: none !important;
}
@media screen and (max-width: 989px) {
 a[href^="tel:"] {
  pointer-events: all;
 }
}
/*---------------------------
	 list
---------------------------*/
.l-normal li {
 position: relative;
 margin-left: 1em;
 text-indent: -1em;
 text-align: left;
 line-height: 1.4;
}
.l-normal li:nth-child(n+2) {
 margin-top: 3px;
}
.l-normal.l-space-long li:nth-child(n+2) {
 margin-top: 10px;
}
ol.l-counter-normal, ol.l-counter-circle {
 counter-reset: l-counter;
}
ol.l-counter-circle ul li:before {
 content: none;
}
ol.l-counter-normal li, ol.l-counter-circle li {
 position: relative;
 margin-top: 3px;
}
ol.l-counter-normal li {
 padding-left: 25px;
}
ol.l-counter-circle li {
 padding-left: 22px;
}
ol.l-counter-circle ul li {
 padding-left: 0;
}
ol.l-counter-normal li:before {
 content: counter(l-counter)".";
 counter-increment: l-counter;
 display: block;
 float: left;
 margin-left: -20px;
 text-align: left;
}
ol.l-counter-circle li:before {
 content: counter(l-counter);
 counter-increment: l-counter;
 position: relative;
 top: 5px;
 border: 1px solid #001345;
 display: block;
 float: left;
 line-height: 14px;
 margin-left: -22px;
 text-align: center;
 height: 16px;
 width: 16px;
 border-radius: 50%;
 font-size: 1.1rem;
}
ol.l-counter-circle.l-reset {
 counter-reset: l-counter 3;
}
ol.l-counter-circle.column li:before {
 margin-left: 0;
}
ol.l-counter-circle.column li p {
 padding-left: 30px;
}
@media screen and (max-width: 767px) {
 ol.l-counter-circle.column li {
  padding-left: 0;
 }
}
.l-square {
 margin-left: 1.5em;
}
.l-square li {
 position: relative;
 margin-bottom: 0.5em;
}
.l-square li:last-child {
 margin-bottom: 0;
}
.l-square li::before {
 content: "";
 display: block;
 position: absolute;
 top: 10px;
 left: -16px;
 bottom: auto;
 right: auto;
 margin: auto;
 width: 6px;
 height: 6px;
 background-color: rgba(0, 19, 69, 1);
}
.l-square li.l-square-law::before {
 background-color: rgba(25, 156, 200, 1);
}
.l-square li.l-square-bme::before {
 background-color: rgba(76, 175, 147, 1);
}
.l-square li.l-square-csp::before {
 background-color: rgba(240, 133, 39, 1);
}
.l-square li.l-square-com::before {
 background-color: rgba(204, 204, 204, 1);
}
/*-------------------------------------------------
	 header
-------------------------------------------------*/
.header .pc-nav * {
 transition: all .4s ease;
}
.header {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 background-color: rgba(255, 255, 255, .9);
 box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.05);
 z-index: 10;
}
.header-inner {
 position: relative;
}
.header .header-logo img {
 width: 151px;
 height: 51px;
}
@media screen and (min-width: 1025px) {
 .header {
  height: 120px;
 }
 .header .header-logo {
  position: absolute;
  top: 32px;
 }
}
@media screen and (min-width: 1251px) {
 .header .header-logo {
  left: 27px;
 }
}
@media screen and (max-width: 1250px) {
 .header .header-logo {
  left: 15px;
 }
}
@media screen and (max-width: 1024px) {
 .header {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100px;
 }
}
@media screen and (max-width: 767px) {
 .header {
  height: 48px;
 }
 .header .header-logo img {
  width: 80px;
  height: 26px;
 }
}
/*-------------------------------------------------
	 nav pc
-------------------------------------------------*/
.pc-nav .nav-above {
 display: flex;
 justify-content: flex-end;
}
.nav-above .snav {
 display: flex;
}
.nav-above .snav li {
 width: 160px;
 margin-left: 1px;
}
.nav-above .snav li a {
 display: block;
 height: 30px;
 padding: 9px 5px 10px;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 font-style: normal;
 background-color: #111;
 color: #fff;
 font-size: 1.1rem;
 line-height: 1;
 text-align: center;
}
.nav-above .snav li a:hover {
 opacity: .8;
}
.pc-nav .btn-lang {
 position: relative;
 width: 160px;
}
.pc-nav .btn-lang .btn-lang-ttl {
 position: relative;
 cursor: pointer;
 height: 30px;
 padding: 5px 30px 5px 30px;
 background-color: #8F6D48;
 font-size: 1.2rem;
 font-family: 'Barlow Condensed', sans-serif;
 color: #fff;
 text-align: center;
 -webkit-transition-property: all;
 transition-property: all;
 -webkit-transition-duration: 0.5s;
 transition-duration: 0.5s;
}
.pc-nav .btn-lang .btn-lang-ttl::before {
 content: "";
 position: absolute;
 top: 50%;
 right: 0.9em;
 width: 5px;
 height: 5px;
 border-bottom: 1px solid #fff;
 border-right: 1px solid #fff;
 transform: translateY(-50%) rotate(45deg);
}
.pc-nav .btn-lang .btn-lang-ttl:hover {
 opacity: .8;
}
.pc-nav .btn-lang .open:before {
 transform: rotate(225deg);
}
.pc-nav .btn-lang .btn-lang-inner {
 display: none;
}
@media screen and (min-width: 768px) {
 .pc-nav .btn-lang .btn-lang-inner {
  position: absolute;
  top: 30px;
  left: 0;
  width: 100%;
  background: #fff;
 }
}
.pc-nav .btn-lang .btn-lang-inner .btn-lang-list li {
 background-color: #8F6D48;
 border-top: 1px solid rgba(255, 255, 255, .1);
}
.pc-nav .btn-lang .btn-lang-inner .btn-lang-list li a {
 display: block;
 padding: 3px;
 font-size: 1.1rem;
 color: #fff;
 text-align: center;
}
.pc-nav .btn-search {
 display: flex;
 align-items: center;
 justify-content: center;
 width: 30px;
 height: 30px;
 background-color: #C14911;
 cursor: pointer;
 transition: all .4s ease;
}
.pc-nav .btn-search:hover {
 opacity: .8;
}
.pc-nav .btn-search button {
 background: url("../img/common/icon-search-white.svg") no-repeat 0 0 / contain;
 width: 12px;
 height: 12px;
}
.pc-nav .btn-search.is-active button {
 background: url("../img/common/icon-close.svg") no-repeat 0 0 / contain;
}
.pc-nav .site-serach {
 visibility: hidden;
 opacity: 0;
 transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.site-serach.is-active {
 visibility: visible;
 opacity: 1;
}
.site-serach {
 position: absolute;
 top: 30px;
 right: 0;
 background: #C14911;
}
.cse-search-box {
 display: flex;
}
.pc-nav .cse-search-box {
 padding: 9px;
}
#hamburger .cse-search-box {
 width: 100%;
 height: 40px;
}
.cse-search-box .g-custom-input {
 padding: 5px 10px;
 background-color: rgba(255, 255, 255, .2) !important;
 border: none !important;
 border-radius: 0 !important;
 color: #fff;
}
.pc-nav .cse-search-box .g-custom-input {
 width: 250px;
}
#hamburger .cse-search-box .g-custom-input {
 width: calc(100% - 40px);
}
.cse-search-box .g-search-btn {
 position: relative;
 margin-left: 0 !important;
 background: rgba(255, 255, 255, .2) url("../img/common/icon-search-white.svg") no-repeat 50% 50% / contain;
 background-size: 12px 12px;
 color: #fff;
}
.pc-nav .cse-search-box .g-search-btn {
 width: 30px;
 height: 30px;
}
#hamburger .cse-search-box .g-search-btn {
 width: 40px;
 height: 40px;
}
.cse-search-box .g-search-btn::before {
 position: absolute;
 top: 50%;
 left: 0;
 width: 1px;
 height: 16px;
 content: "";
 background: rgba(255, 255, 255, .2);
 -webkit-transform: translateY(-50%);
 transform: translateY(-50%);
}
.pc-nav .gnav {
 display: flex;
 justify-content: flex-end;
 margin-top: 35px;
 margin-bottom: 35px;
}
.pc-nav .gnav li {
 display: flex;
 border-left: 1px solid #ccc;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 line-height: 1;
}
.pc-nav .gnav li:first-child {
 border-left: none;
}
.pc-nav .gnav li a {
 padding: 0 20px;
}
.pc-nav .gnav li a:hover {
 color: #8F6D48;
}
@media screen and (max-width: 1450px) {
 .nav-above .snav li, .pc-nav .btn-lang {
  width: 140px;
 }
 .nav-above .snav li a {
  padding-right: 2px;
  padding-left: 2px;
 }
 .nav-above .snav li a:first-child {
  letter-spacing: 0;
 }
 .pc-nav .gnav li {
  font-size: 1.3rem;
 }
 .pc-nav .gnav li a {
  padding: 0 17px;
 }
}
@media screen and (max-width: 1250px) {
 .nav-above .snav li {
  width: 120px;
 }
 .pc-nav .btn-lang {
  width: 90px;
 }
 .nav-above .snav li a {
  font-size: 1rem;
 }
 .pc-nav .btn-lang .btn-lang-ttl {
  padding-left: 10px;
  font-size: 1.15rem;
  text-align: left;
 }
 .nav-above .snav li a:first-child {
  letter-spacing: 0;
 }
 .pc-nav .gnav li {
  font-size: 1.25rem;
 }
 .pc-nav .gnav li a {
  padding: 0 10px;
 }
}
@media screen and (max-width: 1024px) {
 .pc-nav {
  display: none;
 }
}
/*-------------------------------------------------
	 hamburger
-------------------------------------------------*/
.open-hamburger {
 position: absolute;
 top: 10px;
 right: 20px;
 z-index: 1000;
 display: block;
 background-color: transparent;
 transition: all .4s ease-out;
 will-change: height, background;
}
.open-hamburger::after, .open-hamburger span {
 position: absolute;
 left: 22px;
 width: 37px;
 border-top: 1px solid #111;
}
.open-hamburger::after {
 content: "";
 top: 36px;
 transition: 0.3s transform ease;
}
.open-hamburger span {
 top: 44px;
 transition: all 0.3s;
}
.open-hamburger.on span, .open-hamburger.on::after {
 top: 38px;
}
.open-hamburger.on span {
 transform: rotate(45deg);
}
.open-hamburger.on::after {
 transform: rotate(-45deg);
}
@media screen and (min-width: 1025px) {
 .open-hamburger {
  display: none;
 }
}
@media screen and (min-width: 768px) {
 .open-hamburger {
  width: 80px;
  height: 80px;
 }
}
@media screen and (max-width: 767px) {
 .open-hamburger {
  position: fixed;
  top: 0;
  right: 0;
  height: 50px;
  width: 50px;
 }
 .open-hamburger::after, .open-hamburger span {
  left: 13px;
  width: 24px;
 }
 .open-hamburger::after {
  top: 27px;
 }
 .open-hamburger span {
  top: 22px;
 }
 .open-hamburger.on span, .open-hamburger.on::after {
  top: 24px;
 }
}
#hamburger {
 position: fixed;
 width: 100%;
 height: 100%;
 left: 0;
 top: 50px;
 z-index: 1400;
 background: rgba(0, 0, 0, .9);
 display: none;
 overflow-scrolling: touch;
 -webkit-overflow-scrolling: touch;
 overflow-y: auto;
}
#hamburger {
 top: 100px;
}
#hamburger .hamburger-inner {
 position: relative;
 width: 90%;
 margin: 0 auto;
 padding: 40px 0;
}
@media screen and (max-width: 767px) {
 #hamburger {
  top: 48px;
  overflow-y: auto;
 }
 #hamburger .hamburger-inner {
  width: 100%;
  padding: 20px 20px 80px;
 }
}
#hamburger .hamburger-inner::after {
 content: "";
 clear: both;
}
.nav {
 display: flex;
 flex-wrap: wrap;
 position: relative;
}
.nav > li {
 position: relative;
 width: 100%;
 border-bottom: 1px solid rgba(255, 255, 255, .2);
}
@media screen and (max-width: 767px) {
 .nav {
  display: block;
 }
 .nav > li {
  width: 100%;
 }
}
.nav a {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 padding-left: 20px;
 color: #fff;
 height: 70px;
 line-height: 1.35;
 font-size: 1.4rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 font-style: normal;
}
.nav a span {
 margin-left: 15px;
 font-size: 1.2rem;
}
.nav a span::before {
 content: "/";
 padding-right: 15px;
}
@media screen and (min-width:1025px), print {
 .nav a:hover {
  color: #fa1414;
 }
}
@media screen and (max-width: 1024px) {
 .nav a span {
  margin-left: 10px;
 }
 .nav a span::before {
  padding-right: 10px;
 }
}
@media screen and (max-width: 767px) {
 .nav a {
  padding-left: 15px;
  height: 50px;
  line-height: 1.35;
  font-size: 1.3rem;
 }
}
.toggle {
 position: relative;
}
.toggle > a {
 position: relative;
 width: calc(100% - 60px);
 z-index: 4;
}
@media screen and (max-width: 767px) {
 .toggle > a {
  width: calc(100% - 50px);
 }
}
.nav-sub {
 display: -webkit-box;
 display: -moz-box;
 display: -ms-flexbox;
 display: -webkit-flex;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 background-color: #262626;
 background-color: rgba(38, 38, 38, .9);
 border-top: 1px solid #333;
}
.nav-sub li:nth-child(-n+2) {
 border-top: none;
}
.nav-sub li:nth-child(n+2) {
 border-top: 1px solid #333;
}
.nav-sub li.border-btm {
 border-bottom: 1px solid #3d617d;
}
.nav-sub a {
 position: relative;
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 font-size: 1.45rem;
 font-weight: normal;
}
.nav-sub a::before {
 content: "";
 position: absolute;
 vertical-align: middle;
 top: 50%;
 left: 20px;
 width: 6px;
 height: 6px;
 border-bottom: 1px solid #999;
 border-right: 1px solid #999;
 -webkit-transform: translateY(50%) rotate(90deg);
 transform: translateY(-50%) rotate(90deg);
}
.nav-sub a {
 padding-left: 35px;
 font-size: 1.3rem;
}
.accordion-toggle, .accordion-content {
 cursor: pointer;
 position: relative;
}
.accordion-content {
 display: none;
}
.icon-plus {
 position: absolute;
 top: 0;
 right: 0;
 width: 70px;
 height: 70px;
 z-index: 3;
}
@media screen and (max-width: 767px) {
 .icon-plus {
  width: 50px;
  height: 50px;
 }
}
.icon-plus::before, .icon-plus::after {
 content: "";
 display: block;
 position: absolute;
 top: 50%;
 right: 18px;
 width: 9px;
 height: 1px;
 margin-top: -1px;
 background-color: #fff;
 transform-origin: 50% 50%;
 transition: all 0.3s ease-out;
}
@media screen and (max-width: 767px) {
 .icon-plus::before, .icon-plus::after {
  top: 25px;
  right: 20px;
 }
}
.icon-plus::before {
 transform: rotate(-90deg);
 opacity: 1;
 z-index: 2;
}
.icon-plus.active-tab {
 transition: all 0.3s ease;
}
.icon-plus.active-tab::before {
 transform: rotate(0deg);
 background: #fff !important;
}
.icon-plus.active-tab::after {
 transform: rotate(180deg);
 background: #fff !important;
 opacity: 0;
}
.nav {
 margin-top: 25px;
}
.nav li {
 position: relative;
}
.nav > li::before {
 content: "";
 position: absolute;
 top: 50%;
 right: 20px;
 width: 6px;
 height: 6px;
 border-bottom: 1px solid #fff;
 border-right: 1px solid #fff;
 -webkit-transform: translateY(50%) rotate(-45deg);
 transform: translateY(-50%) rotate(-45deg);
}
.nav > li.toggle::before {
 display: none;
}
@media screen and (max-width: 767px) {
 .nav > li::before {
  border-bottom-width: 1px;
  border-right-width: 1px;
  top: 25px;
 }
}
@media screen and (min-width:768px), print {
 .menu-link, .nav-sub a, .icon-plus {
  transition: all 0.25s ease-in;
 }
}
#hamburger .hamburger-nav-above {
 display: flex;
 justify-content: space-between;
 z-index: 5;
}
#hamburger .btn-search {
 height: 40px;
}
#hamburger .btn-lang, #hamburger .btn-snav, #hamburger .btn-search {
 position: relative;
}
@media screen and (min-width: 768px) {
 #hamburger .btn-lang, #hamburger .btn-snav, #hamburger .btn-search {
  width: 31.5%;
 }
}
@media screen and (max-width: 767px) {
 #hamburger .hamburger-nav-above {
  display: block;
 }
 #hamburger .btn-snav, #hamburger .btn-search {
  margin-top: 20px;
 }
}
#hamburger .btn-lang .btn-lang-ttl, #hamburger .btn-snav .btn-snav-ttl {
 cursor: pointer;
 position: relative;
 display: flex;
 align-items: center;
 padding: 0 10px;
 border: 1px solid rgba(255, 255, 255, 1);
 height: 40px;
 color: #fff;
 transition-property: all;
 transition-duration: 0.5s;
}
#hamburger .btn-lang .btn-lang-ttl {
 font-size: 1.3rem;
 font-family: 'Barlow Condensed', sans-serif;
}
#hamburger .btn-snav .btn-snav-ttl {
 font-size: 1.2rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 line-height: 1;
}
#hamburger .btn-lang .btn-lang-ttl:before, #hamburger .btn-lang .btn-lang-ttl:after, #hamburger .btn-snav .btn-snav-ttl:before, #hamburger .btn-snav .btn-snav-ttl:after {
 content: "";
 position: absolute;
 top: 50%;
 width: 9px;
 height: 1px;
 background: #fff;
 transition: all 0.3s ease-in-out;
}
#hamburger .btn-lang .btn-lang-ttl:before, #hamburger .btn-snav .btn-snav-ttl:before {
 transform: rotate(90deg);
 right: 12px;
}
#hamburger .btn-lang .btn-lang-ttl:after, #hamburger .btn-snav .btn-snav-ttl:after {
 right: 12px;
}
#hamburger .btn-lang .open:before, #hamburger .btn-snav .open:before {
 transform: rotate(180deg);
 background: #fff;
}
#hamburger .btn-lang .open:after, #hamburger .btn-snav .open:after {
 opacity: 0;
}
#hamburger .btn-lang .btn-lang-inner, #hamburger .btn-snav .btn-snav-inner {
 display: none;
}
#hamburger .btn-lang .btn-lang-inner, #hamburger .btn-snav .btn-snav-inner {
 position: absolute;
 top: 40px;
 left: 0;
 width: 100%;
 padding: 0 15px;
 background-color: #fff;
 z-index: 5;
}
#hamburger .btn-lang .btn-lang-inner{
	z-index: 6;
}
#hamburger .btn-lang .btn-lang-inner .btn-lang-list li, #hamburger .btn-snav .btn-snav-inner .btn-snav-list li {
 border-bottom: 1px solid rgba(0, 0, 0, .1);
}
#hamburger .btn-lang .btn-lang-inner .btn-lang-list li:last-child, #hamburger .btn-snav .btn-snav-inner .btn-snav-list li:last-child {
 border-bottom: none;
}
#hamburger .btn-lang .btn-lang-inner .btn-lang-list li a, #hamburger .btn-snav .btn-snav-inner .btn-snav-list li a {
 display: block;
 padding: 15px 0;
 font-size: 1.2rem;
 color: #111;
}
.pr {
 margin-top: 120px;
 padding: 50px;
 background-color: #f7f7f7;
}
.pr-inner {
 position: relative;
 max-width: 1260px;
 margin: 0 auto;
}
.pr h4 {
 padding: 0 0 30px 10px;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 line-height: 1;
}
.pr ul li img {
 border: 1px solid #ddd;
}
.pr .slick-slide {
 margin: 0 20px;
}
@media screen and (max-width: 1024px) {
 .pr {
  margin-top: 120px;
  padding: 50px;
 }
}
@media screen and (max-width: 767px) {
 .pr {
  margin-top: 60px;
  padding: 40px;
 }
 .pr h4 {
  padding: 0 0 20px 0;
  text-align: center;
 }
 .pr .slick-slide {
  margin: 0 10px;
 }
}
/*-------------------------------------------------
	 slick
-------------------------------------------------*/
.slick-prev, .slick-next, .slick-prev:after, .slick-next:after {
 width: 23px;
 height: 35px;
}
@media screen and (max-width: 767px) {
 .slick-prev, .slick-next, .slick-prev:after, .slick-next:after {
  width: 16px;
  height: 24px;
 }
}
.slick-prev, .slick-next {
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 -webkit-transform: translateY(-50%);
 -ms-transform: translateY(-50%);
 display: flex;
 align-items: center;
 justify-content: center;
 padding: 0;
 background: none;
 border: none;
 border-radius: 0;
 cursor: pointer;
 color: transparent;
 font-size: 0;
 line-height: 0;
 outline: none;
 z-index: 1;
}
.slick-prev {
 left: -24px;
}
.slick-next {
 right: -24px;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
 color: transparent;
 outline: none;
 border: 0;
}
.slick-prev:hover:after, .slick-prev:focus:after, .slick-next:hover:after, .slick-next:focus:after {
 opacity: .7;
}
.slick-prev:after, .slick-next:after {
 content: "";
 transition: .5s;
}
.slick-prev:after {
 background: url("../img/common/slide-prev.svg") no-repeat 0 0 / contain;
}
.slick-next:after {
 background: url("../img/common/slide-next.svg") no-repeat 0 0 / contain;
}
.slick-slider {
 position: relative;
 display: block;
 box-sizing: border-box;
 -webkit-user-select: none;
 -moz-user-select: none;
 -ms-user-select: none;
 user-select: none;
 -webkit-touch-callout: none;
 -khtml-user-select: none;
 -ms-touch-action: pan-y;
 touch-action: pan-y;
 -webkit-tap-highlight-color: transparent;
}
.slick-list {
 position: relative;
 display: block;
 overflow: hidden;
 margin: 0;
 padding: 0;
}
.slick-list:focus {
 outline: none;
}
.slick-list.dragging {
 cursor: pointer;
 cursor: hand;
}
.slick-slider .slick-track, .slick-slider .slick-list {
 -webkit-transform: translate3d(0, 0, 0);
 -moz-transform: translate3d(0, 0, 0);
 -ms-transform: translate3d(0, 0, 0);
 -o-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
.slick-track {
 position: relative;
 top: 0;
 left: 0;
 display: block;
}
.slick-track:before, .slick-track:after {
 content: "";
 display: table;
}
.slick-track:after {
 clear: both;
}
.slick-loading .slick-track {
 visibility: hidden;
}
.slick-slide {
 display: none;
 float: left;
 height: 100%;
 min-height: 1px;
}
[dir='rtl'] .slick-slide {
 float: right;
}
.slick-slide a {
 transform: all .4s;
}
.slick-slide a:hover {
 opacity: .7;
}
.slick-slide img {
 display: block;
 margin: 0 auto;
 vertical-align: bottom;
}
.slick-slide.slick-loading img {
 display: none;
}
.slick-slide.dragging img {
 pointer-events: none;
}
.slick-initialized .slick-slide {
 display: block;
}
.slick-loading .slick-slide {
 visibility: hidden;
}
.slick-vertical .slick-slide {
 display: block;
 height: auto;
 border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
 display: none;
}
.slick-dots {
 position: relative;
 bottom: -10px;
 text-align: right;
}
.slick-dots li {
 position: relative;
 display: inline-block;
 width: 6px !important;
 height: 6px !important;
 margin: 0 5px;
 padding: 0;
 cursor: pointer;
 background: transparent;
}
.slick-dots li:last-child {
 margin-right: 0;
}
.slick-dots li a {
 opacity: 1;
}
ul.slide-inner li a:hover {
 transition: all .4s;
}
.slick-dots li button {
 font-size: 0;
 line-height: 0;
 display: block;
 width: 6px !important;
 height: 6px !important;
 cursor: pointer;
 background-color: #999;
 outline: none;
 border-radius: 50%;
 margin: 0;
 padding: 0;
 border: none;
}
.slick-dots li button:hover, .slick-dots li button:focus {
 outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
 opacity: 1;
}
.slick-dots li button:before {
 position: absolute;
 top: 0;
 left: 0;
 width: 10px;
 height: 10px;
 border-radius: 50%;
 content: "";
 text-align: center;
 background: transparent;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
 opacity: 1;
 background: #C14911;
 width: 100%;
 height: 100%;
}
@media screen and (max-width: 767px) {
 .slick-dots li button, .slick-dots li button:before {
  width: 5px !important;
  height: 5px !important;
 }
}
.slider .slick-slide {
 position: relative;
 overflow: hidden;
}
.slider .thum {
 padding-top: 65.996%;
}
.slider .thum img {
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 width: 100%;
 height: 100%;
 object-fit: contain;
}
.slider p {
 position: absolute;
 bottom: 0;
 left: 0;
 width: 100%;
 display: block;
 background: rgba(0, 0, 0, .7);
 padding: 10px 5px;
 color: #fff;
 font-size: 1.2rem;
 text-align: center;
}
/*-------------------------------------------------
	 footer
-------------------------------------------------*/
.footer a {
 transition: all .4s;
}
.footer a:hover {
 opacity: .7;
}
.footer-above {
 background-color: #1a1a1a;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
}
.footer-above-inner {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
 max-width: 1240px;
 margin: 0 auto;
 padding: 40px;
}
.footer-above .footer-info {
 color: #fff;
}
.footer-above .footer-logo {
 display: flex;
 align-items: flex-end;
}
.footer-above .footer-logo p {
 padding-left: 15px;
 font-size: 1.5rem;
 letter-spacing: .5em;
}
.footer-above em {
 display: block;
 padding-top: 20px;
 font-size: 1rem;
 font-style: normal;
}
.footer-above h3 {
 padding-top: 10px;
 font-size: 1.5rem;
}
.footer-above address {
 padding: 10px 0;
 font-style: normal;
}
.footer-above address p {
 font-size: 1.2rem;
 color: #ccc;
 line-height: 1.8;
}
.footer-above address p span {
 padding-left: 10px;
}
.footer-above .footer-info ul {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
}
.footer-above .footer-info ul li a {
 color: #ccc;
 font-size: 1.1rem;
}
.footer-above .footer-info ul li a::after {
 content: "│";
 margin: 0 15px;
}
.footer-above .footer-info ul li:last-child a::after {
 display: none;
 margin-right: 0;
}
.footer-above .footer-sns ul {
 display: flex;
}
.footer-above .footer-sns ul li:nth-child(n+2) {
 margin-left: 25px;
}
.footer-above .footer-sns ul li a {
 display: block;
}
.footer-under {
 background-color: #222;
 border-top: 1px solid #333;
}
.footer-under-inner {
 display: flex;
 align-items: center;
 justify-content: space-between;
 max-width: 1260px;
 margin: 0 auto;
 padding: 20px 40px;
}
.footer-under {
 color: #999;
}
.footer-under ul {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
}
.footer-under li a {
 color: #999;
 font-size: 1rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 line-height: 1;
}
.footer-under li a::after {
 content: "│";
 margin: 0 15px;
}
.footer-under li:last-child a::after {
 display: none;
 margin-right: 0;
}
.footer-under small {
 font-size: 1rem;
 font-family: 'B arlow Condensed', sans-serif;
 line-height: 1;
}
.footer-under small br {
 display: none;
}
@media screen and (max-width: 1024px) {
 .footer-under-inner {
  flex-direction: column-reverse;
 }
 .footer-under ul {
  margin-bottom: 20px;
 }
}
@media screen and (max-width: 767px) {
 .footer-above-inner {
  padding: 40px 20px;
 }
 .footer-above .footer-logo {
  display: block;
  text-align: center;
 }
 .footer-above .footer-logo p {
  padding: 15px 0 0;
  font-size: 1.2rem;
 }
 .footer-above em {
  font-size: 1rem;
  text-align: center;
 }
 .footer-above h3 {
  font-size: 1.1rem;
  text-align: center;
 }
 .footer-above address {
  font-style: normal;
 }
 .footer-above address p {
  font-size: 1.2rem;
  color: #ccc;
  line-height: 1.8;
  text-align: center;
 }
 .footer-above .footer-sns {
  width: 100%;
  margin-top: 10px;
  text-align: center;
 }
 .footer-above .footer-sns ul {
  justify-content: center;
 }
 .footer-above .footer-info ul, .footer-under ul {
  display: none;
 }
 .footer-under-inner {
  padding: 15px 20px;
 }
 .footer-under small {
  font-size: .9rem;
  text-align: center;
  line-height: 1.6;
 }
 .footer-under small br {
  display: inherit;
 }
}
/*-------------------------------------------------
	 ttl
-------------------------------------------------*/
.headline {
 text-align: center;
}
.headline h2 {
 font-size: 3.2rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 letter-spacing: .3em;
 line-height: 1.3;
}
.headline span {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 font-size: 1rem;
 font-family: 'Libre Baskerville', serif;
 font-weight: 400;
 color: #8F6D48;
}
.headline span::before, .headline span::after {
 content: "";
 width: 5px;
 height: 1px;
 background-color: currentColor;
}
.headline span::before {
 margin-right: 5px;
}
.headline span::after {
 margin-left: 5px;
}
@media screen and (max-width: 1024px) {
 .headline h2 {
  font-size: 2.6rem;
 }
}
@media screen and (max-width: 767px) {
 .headline h2 {
  font-size: 2rem;
 }
}
.heading {
 margin-bottom: 30px;
 padding-bottom: 15px;
 border-bottom: 1px dotted #ccc;
 font-size: 2.2rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 letter-spacing: .3em;
 line-height: 1.3;
}
@media screen and (max-width: 1024px) {
 .heading {
  font-size: 1.8rem;
 }
}
@media screen and (max-width: 767px) {
 .heading {
  margin-bottom: 20px;
  padding-bottom: 10px;
  font-size: 1.6rem;
 }
}
.heading2 {
 display: flex;
 align-items: center;
 padding-bottom: 15px;
 border-bottom: 1px dotted #ccc;
 font-size: 1.8rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 letter-spacing: .3em;
 line-height: 1.3;
}
.heading2 span {
 margin-left: 20px;
 font-size: 1rem;
 font-family: 'Libre Baskerville', serif;
 font-weight: 400;
 letter-spacing: .3em;
 line-height: 1.3;
 color: #8F6D48;
}
.heading2 span::before {
 content: "-"
}
.heading2 span::after {
 content: "-"
}
@media screen and (max-width: 1024px) {
 .heading2 {
  font-size: 1.6rem;
  letter-spacing: .2em;
 }
 .heading2 span {
  margin-left: 15px;
  font-size: .9rem;
 }
}
@media screen and (max-width: 767px) {
 .heading2 {
  font-size: 1.4rem;
  letter-spacing: .1em;
 }
 .heading2 span {
  margin-left: 10px;
  font-size: .8rem;
 }
}
.ttl {
 position: relative;
 width: 100%;
 height: 500px;
 background-repeat: no-repeat;
 background-size: cover;
 background-position: center center;
 color: #fff;
 text-align: center;
}
.ttl::before, .ttl::after {
 content: "";
 position: absolute;
 right: 0;
 left: 0;
 margin-right: auto;
 margin-left: auto;
 width: 1px;
}
.ttl::before {
 bottom: -50px;
 height: 100px;
 background-color: #7E90A0;
}
.ttl::after {
 bottom: 14px;
 height: 40px;
 background-color: #fff;
}
.ttl .ttl-bg {
 position: relative;
 display: flex;
 align-items: center;
 justify-content: center;
 width: 100%;
 height: 100%;
 padding-top: 120px;
}
.ttl .ttl-bg::before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 background-image: url("../img/common/dot.png");
 background-repeat: repeat;
}
.ttl .ttl-inner {
 position: relative;
}
.ttl h1 {
 display: inline-block;
 margin-bottom: 15px;
 padding: 0 5em 15px;
 border-bottom: 1px solid rgba(255, 255, 255, 0.3);
 font-size: 2rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 font-style: normal;
 line-height: 1;
 letter-spacing: .5em;
 color: #fff;
 text-shadow: 0 0 5px #111;
}
.ttl p {
 font-size: 1.2rem;
 font-family: 'Libre Baskerville', serif;
 letter-spacing: .16em;
 text-shadow: 0 0 5px #111;
}
@media screen and (max-width: 1024px) {
 .ttl {
  height: 350px;
 }
 .ttl .ttl-bg {
  padding-top: 100px;
 }
 .ttl::before {
  bottom: -30px;
  height: 60px;
 }
 .ttl::after {
  bottom: 10px;
  height: 20px;
 }
 .ttl h1 {
  font-size: 1.75rem;
 }
 .ttl p {
  font-size: 1.1rem;
 }
}
@media screen and (max-width: 767px) {
 .ttl {
  height: 200px;
 }
 .ttl .ttl-bg {
  padding-top: 48px;
 }
 .ttl::before {
  bottom: -20px;
  height: 30px;
 }
 .ttl::after {
  bottom: 5px;
  height: 10px;
 }
 .ttl h1 {
  margin-bottom: 10px;
  padding: 0 4em 10px;
  font-size: 1.5rem;
  letter-spacing: .3em;
 }
 .ttl p {
  font-size: 1rem;
 }
}
/*-------------------------------------------------
	 breadcrumb
-------------------------------------------------*/
.breadcrumb {
 width: 100%;
 z-index: 5;
}
@media screen and (min-width: 768px) {}
.breadcrumb li {
 position: relative;
 display: inline;
 margin: 0 8px 0 0;
 padding: 0 18px 0 0;
 font-size: 1.2rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 font-style: normal;
 line-height: 1;
}
.breadcrumb li:last-child {
 margin-right: 0;
 padding-right: 0;
}
.breadcrumb li::after {
 content: "";
 position: absolute;
 top: 4px;
 right: 0;
 display: block;
 width: 7px;
 height: 7px;
 background-image: url(../img/common/arrow-breadcrumb.svg);
 background-repeat: no-repeat;
 background-size: contain;
}
.breadcrumb li:last-child::after {
 display: none;
}
.breadcrumb li, .breadcrumb li a {
 color: #111;
}
.breadcrumb li a:hover {
 text-decoration: underline;
}
.breadcrumb {
 display: flex;
 justify-content: flex-end;
}
.breadcrumb ul {
 padding: 15px;
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
}
@media screen and (max-width: 1024px) {
 .breadcrumb li {
  font-size: 1.1rem;
 }
}
@media screen and (max-width:767px) {
 .breadcrumb {
  display: none;
 }
}
/*-------------------------------------------------
	 pager
-------------------------------------------------*/
.pager {
 display: flex;
 align-items: center;
 justify-content: center;
 margin-top: 120px;
 text-align: center;
}
.pager > * {
 margin: 0 5px;
 padding: 8px 14px;
 font-family: 'Libre Baskerville', serif;
 color: #333;
 text-align: center;
}
.pager a {
 background-color: #fff;
 border: 1px solid #ddd;
}
.pager a:hover, .pager span {
 background-color: #111;
 color: #fff !important;
}
.pager span {
 display: flex;
 align-items: center;
}
.pager span.pn, .pager span.previous, .pager > span.next {
 padding: 0 2px;
 background: transparent !important;
 border: none;
 color: #333 !important;
}
.pager span.previous a:hover, .pager span.next a:hover {
 color: #5F5C07 !important;
}
.pager span.pn a, .pager span.previous a, .pager span.next a {
 position: static;
 display: inline-block;
 padding: 5px 0;
 color: #333 !important;
 background: transparent !important;
 border: none;
 font-size: 1.2rem;
}
@media screen and (max-width:767px) {
 .pager {
  margin-top: 60px;
 }
 .pager > * {
  margin: 0 2px 0;
  padding: 4px 10px;
 }
 .pager a, .pager span {
  font-size: 1.2rem;
 }
 .pager span.pn a, .pager span.previous a, .pager span.next a {
  display: inline-block;
  padding: 10px 0;
  position: static;
  border: none;
  background: transparent !important;
 }
}
/*-------------------------------------------------
	 scrooll top
-------------------------------------------------*/
#scroolltop {
 -webkit-transform: rotate(90deg);
 transform: rotate(90deg);
 display: block;
 font-size: 1.1rem;
 font-weight: 500;
 line-height: 1;
 text-decoration: none;
 letter-spacing: .2em;
 opacity: 0;
 color: #fff;
 z-index: 10;
}
#scroolltop {
 position: fixed;
 padding-left: 35px;
}
#scroolltop:hover {
 opacity: 0.8;
 text-decoration: none;
}
#scroolltop.show {
 opacity: 1;
}
#scroolltop::before, #scroolltop::after {
 content: "";
 position: absolute;
 background-color: #fff;
 -webkit-transition-duration: .6s;
 transition-duration: .6s;
 -webkit-transition-timing-function: cubic-bezier(.075, .82, .165, 1);
 transition-timing-function: cubic-bezier(.075, .82, .165, 1);
}
#scroolltop::before {
 top: 0;
 bottom: 0;
 right: 0;
 left: 10px;
 margin-top: auto;
 margin-bottom: auto;
 width: 20px;
 height: 1px;
}
#scroolltop::after {
 top: 4px;
 bottom: 0;
 right: 0;
 left: 9px;
 width: 5px;
 height: 1px;
 -moz-transform: rotate(-45deg);
 -webkit-transform: rotate(-45deg);
 -o-transform: rotate(-45deg);
 -ms-transform: rotate(-45deg);
}
#scroolltop:hover::before {
 width: 30px;
 left: 0;
}
#scroolltop:hover::after {
 left: -1px;
}
@media screen and (min-width:1025px), print {
 #scroolltop {
  right: -25px;
  bottom: 250px;
 }
}
@media screen and (min-width: 768px) and (max-width:1024px) {
 #scroolltop {
  right: -25px;
  bottom: 170px;
 }
}
@media screen and (max-width: 767px) {
 #scroolltop {
  right: -35px;
  bottom: 130px;
 }
}
/*-------------------------------------------------
	 layout
-------------------------------------------------*/
.content {
 margin-top: 120px;
 padding-right: 50px;
 padding-left: 50px;
}
.content-full {
 padding-right: 0;
 padding-left: 0;
}
.box {
 position: relative;
 margin-right: auto;
 margin-left: auto;
}
.box-l {
 max-width: 1690px;
}
.box-m {
 max-width: 1260px;
}
.box-s {
 max-width: 980px;
}
@media screen and (max-width: 1024px) {
 .content {
  margin-top: 70px;
  padding-right: 40px;
  padding-left: 40px;
 }
}
@media screen and (max-width: 767px) {
 .content {
  margin-top: 50px;
  padding-right: 20px;
  padding-left: 20px;
 }
}
/*-------------------------------------------------
	 col
-------------------------------------------------*/
.l-col2, .l-col3, .l-col4 {
 display: flex;
 flex-wrap: wrap;
}
.l-col2 li, .l-col3 li, .l-col4 li {
 position: relative;
 display: block;
}
.l-col2 li img, .l-col3 li img, .l-col4 li img {
 margin: 0 auto;
}
.l-col2 li {
 width: 47.5%;
}
.l-col2 li:nth-child(even) {
 margin-left: 5%;
}
.l-col2 li:nth-child(n+3) {
 margin-top: 5%;
}
.l-photo a {
 transition: all .4s;
}
.l-photo a:hover {
 opacity: .8;
}
@media screen and (min-width: 1261px) {
 .l-col4 li {
  width: 23.6686390533%;
  margin-right: 1.77514792899%;
 }
 .l-col4 li:nth-child(4n) {
  margin-right: 0;
 }
 .l-col4 li:nth-child(n+5) {
  margin-top: 1.77514792899%;
 }
 .l-tag li:nth-child(n+5) {
  margin-top: 2.375%;
 }
}
@media screen and (min-width: 1025px) and (max-width: 1260px) {
 .l-col4 li {
  width: 32%;
  margin-right: 2%;
 }
 .l-col4 li:nth-child(3n) {
  margin-right: 0;
 }
 .l-col4 li:nth-child(n+4) {
  margin-top: 2%;
 }
 .l-tag li:nth-child(n+4) {
  margin-top: 2.9%;
 }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
 .l-col4 li {
  width: 48%;
  margin-right: 4%;
 }
 .l-col4 li:nth-child(2n) {
  margin-right: 0;
 }
 .l-col4 li:nth-child(n+3) {
  margin-top: 4%;
 }
 .l-tag li:nth-child(n+3) {
  margin-top: 5%;
 }
}
@media screen and (max-width: 767px) {
 .l-col4 li:nth-child(n+2) {
  margin-top: 5%;
 }
 .l-tag li:nth-child(n+2) {
  margin-top: 10%;
 }
}
@media screen and (min-width:768px) {
 .l-col3 li {
  width: 31.5%;
  margin-right: 2.75%;
 }
 .l-col3 li:nth-child(3n) {
  margin-right: 0;
 }
 .l-col3 li:nth-child(n+4) {
  margin-top: 50px;
 }
 .l-col2 li h3, .l-col3 li h3 {
  padding: 10px 0 10px;
  font-size: 1.5rem;
  text-align: center;
 }
}
@media screen and (max-width:767px) {
 .l-col3 li {
  width: 47.5%;
  margin-right: 5%;
 }
 .l-col3 li:nth-child(even) {
  margin-right: 0;
 }
 .l-col3 li:nth-child(n+3) {
  margin-top: 25px;
 }
 .l-col2 li h3, .l-col3 li h3 {
  padding: 5px 0 0;
  font-size: 1.3rem;
 }
}
.l-photo figure {
 position: relative;
 overflow: hidden;
 padding-top: 66.5%;
}
.l-photo figure img {
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%) scale(1);
 width: 100%;
 height: 100%;
 object-fit: cover;
 font-family: 'object-fit: cover; object-position: 50% 50%;';
 -webkit-transition: all .4s ease-in-out;
 transition: all .4s ease-in-out;
}
.l-basic figure:hover img {
 -webkit-transform: translate(-50%, -50%) scale(1.1);
 transform: translate(-50%, -50%) scale(1.1);
}
.l-basic li {
 padding-bottom: 20px;
 outline: 1px solid #ddd;
}
.l-basic h3 {
 padding: 15px 10px;
 font-size: 1.8rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 white-space: nowrap;
 overflow: hidden;
 -o-text-overflow: ellipsis;
 text-overflow: ellipsis;
}
.l-basic h3 + p, .l-basic .event-date + p {
 padding: 0 10px;
 font-size: 1.3rem;
 display: -webkit-box;
 -webkit-box-orient: vertical;
 -webkit-line-clamp: 3;
 overflow: hidden;
}
.l-basic .category-tag {
 display: flex;
 flex-wrap: wrap;
 padding: 10px;
}
.l-basic .category-tag span {
 background-color: #fff;
 margin: 10px 10px 0 0;
 padding: 7px 10px 6px;
 border: 1px solid #010101;
 font-size: 1.1rem;
 line-height: 1;
}
@media screen and (max-width: 1024px) {
 .l-basic li {
  padding-bottom: 10px;
  outline: 1px solid #ddd;
 }
 .l-basic h3 {
  font-size: 1.65rem;
 }
 .l-basic h3 + p {
  font-size: 1.25rem;
 }
 .l-basic .category-tag {
  padding: 10px;
 }
 .l-basic .category-tag span {
  font-size: 1.05rem;
 }
}
@media screen and (max-width: 767px) {
 .l-basic h3 {
  padding: 15px 10px;
  font-size: 1.5rem;
  font-family: source-han-serif-japanese, serif;
 }
 .l-basic h3 + p {
  font-size: 1.2rem;
 }
 .l-basic .category-tag span {
  padding: 5px 8px 4px;
  font-size: 1rem;
 }
}
.area-tag {
 position: absolute;
 top: -9px;
 left: 12px;
 z-index: 2;
}
.area-tag span {
 position: relative;
 display: block;
 padding: 10px 12px;
 font-size: 1.2rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 color: #fff;
}
.area-tag::after {
 content: "";
 position: absolute;
 top: 0;
 right: -11px;
 display: block;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 9px 0 0 11px;
 border-top-color: transparent;
 border-right-color: transparent;
 border-bottom-color: transparent;
}
.l-area-tag {
 display: flex;
 flex-wrap: wrap;
 margin-top: -10px;
}
.l-area-tag li {
 padding: 10px 12px;
 font-size: 1.2rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 color: #fff;
 line-height: 1;
 margin: 0 10px 10px 0;
}
@media screen and (max-width: 767px) {
 .l-area-tag li {
  padding: 6px 8px;
  font-size: 1.1rem;
  margin: 0 5px 5px 0;
 }
}
.l-area-tag .area-tag-himeji, .area-tag.area-tag-himeji span {
 background-color: #EB5728;
}
.area-tag.area-tag-himeji::after {
 border-left-color: #8D3733;
}
.l-area-tag .area-tag-tegarayama, .area-tag.area-tag-tegarayama span {
 background-color: #C0AB30;
}
.area-tag.area-tag-tegarayama::after {
 border-left-color: #7A6C1F;
}
.l-area-tag .area-tag-sakurayama, .area-tag.area-tag-sakurayama span {
 background-color: #D1982E;
}
.area-tag.area-tag-sakurayama::after {
 border-left-color: #88631E;
}
.l-area-tag .area-tag-syosya, .area-tag.area-tag-syosya span {
 background-color: #E5677F;
}
.area-tag.area-tag-syosya::after {
 border-left-color: #771528;
}
.l-area-tag .area-tag-yumesaki, .area-tag.area-tag-yumesaki span {
 background-color: #9EB51A;
}
.area-tag.area-tag-yumesaki::after {
 border-left-color: #687711;
}
.l-area-tag .area-tag-koudera, .area-tag.area-tag-koudera span {
 background-color: #7BB1A1;
}
.area-tag.area-tag-koudera::after {
 border-left-color: #32564B;
}
.l-area-tag .area-tag-yasutomi, .area-tag.area-tag-yasutomi span {
 background-color: #65C0D0;
}
.area-tag.area-tag-yasutomi::after {
 border-left-color: #0C538D;
}
.l-area-tag .area-tag-toyotomi, .area-tag.area-tag-toyotomi span {
 background-color: #837FA2;
}
.area-tag.area-tag-toyotomi::after {
 border-left-color: #494660;
}
.l-area-tag .area-tag-ieshima, .area-tag.area-tag-ieshima span {
 background-color: #2895EE;
}
.area-tag.area-tag-ieshima::after {
 border-left-color: #0C538D;
}
.l-area-tag .area-tag-seaside, .area-tag.area-tag-seaside span {
 background-color: #1A27D9;
}
.area-tag.area-tag-seaside::after {
 border-left-color: #070E73;
}
.l-area-tag .area-tag-other, .area-tag.area-tag-other span {
 background-color: #7F7F7F;
}
.area-tag.area-tag-other::after {
 border-left-color: #414141;
}
.l-area-tag .category-tag-spot {
 border: 1px solid #111;
 color: #111;
}
.page-lead {
 text-align: center;
}
.page-lead h2 {
 position: relative;
 padding-bottom: 30px;
 margin-bottom: 30px;
 font-size: 3.2rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
}
@media screen and (max-width: 1024px) {
 .page-lead h2 {
  padding-bottom: 30px;
  margin-bottom: 30px;
  font-size: 2.6rem;
 }
}
@media screen and (max-width: 767px) {
 .page-lead h2 {
  padding-bottom: 30px;
  margin-bottom: 30px;
  font-size: 2rem;
 }
}
.page-lead h2::before {
 content: "";
 position: absolute;
 bottom: 0;
 right: 0;
 left: 0;
 width: 15px;
 height: 1px;
 margin-right: auto;
 margin-left: auto;
 background-color: #111;
}
.page-lead p {
 font-size: 1.3rem;
 line-height: 1.8;
}
@media screen and (max-width: 767px) {
 .page-lead p {
  text-align: left;
  line-height: 1.6;
 }
}
.entry-number, .search-number {
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
}
.entry-number {
 display: flex;
 justify-content: flex-end;
 margin: 20px 0 40px;
}
@media screen and (max-width: 767px) {
 .entry-number {
  margin: 10px 0 20px;
 }
}
.search-number {
 margin: 50px 0;
 padding: 20px 0;
 border-top: 1px dotted #d1d1d1;
 border-bottom: 1px dotted #d1d1d1;
}
.entry-number dl, .entry-number dl dd, .search-number dl, .search-number dl dd {
 display: flex;
 flex-wrap: wrap;
 align-items: flex-end;
}
.entry-number em, .search-number em {
 padding-left: .2em;
 font-size: 5rem;
 font-family: 'Libre Baskerville', serif;
 font-weight: 400;
 font-style: normal;
 line-height: 1;
}
.entry-number dl dd, .search-number ul li:last-child dl dd {
 color: #C6C1AB;
}
.search-number dl dd span {
 margin-right: 10px;
 padding: 5px;
 border: 1px solid #111;
 border-radius: 3px;
 font-size: 1.1rem;
 font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", sans-serif;
 line-height: 1;
}
/*.search-number dl dd span:nth-child(n+2){
	margin-left: 10px;
}*/
@media screen and (min-width:768px) {
 .search-number ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
 }
 .search-number ul li:first-child {
  width: 70%;
 }
 .search-number ul li:last-child {
  flex: 1 0 0;
  text-align: right;
 }
 .search-number ul li:last-child dl {
  display: flex;
  align-items: center;
  justify-content: flex-end;
 }
 .search-number ul li:last-child dl dt {
  display: flex;
 }
}
@media screen and (max-width:767px) {
 .search-number {
  margin: 25px 0;
  padding: 10px 0;
  font-size: 1.3rem;
 }
 .search-number ul li:last-child {
  margin-top: 10px;
 }
 .entry-number em, .search-number em {
  font-size: 2.8rem;
 }
 .search-number dl dd span {
  margin-top: 3px;
  margin-right: 3px;
  padding: 5px;
  font-size: 1rem;
 }
}
.research-box {}
.research {
 display: flex;
}
.research-item {
 flex: 1 0 0;
 padding-right: 70px;
}
.research-map {
 width: 21.1834319527%;
 /*width: 358px;*/
}
.research {
 margin: 0 auto;
}
.research-box h4 {
 font-size: 1.5rem;
 font-weight: 600;
 color: #8F6D48;
 letter-spacing: .02em;
}
.research-box h3.ttl-area {
 padding: 0 0 10px 43px;
 background: url(../img/common/icon-area.png) no-repeat 10px 0;
 background-size: 23px 25px;
}
.research-box h3.ttl-category, .research-box h3.ttl-genre {
 padding: 0 0 10px 43px;
 background: url(../img/common/icon-category.png) no-repeat 10px 0;
 background-size: 23px 25px;
}
.research-box ul#research-area li, .research-box ul#research-category li, .research-box ul#research-genre li {
 padding-top: 5px;
}
.research-box ul#research-genre li {
 float: left;
 width: 18%;
 margin-right: 2%;
}
.research-box ul#research-area li {
 float: left;
 width: 18%;
 margin-right: 2%;
}
#cat-chk01-toggle, #cat-chk02-toggle, #cat-chk03-toggle, #cat-chk04-toggle, #cat-chk05-toggle, #cat-chk06-toggle, #cat-chk07-toggle, #cat-chk08-toggle {
 display: none;
 padding-left: 20px;
 background: url(../img/common/icon-search-toggle.gif) no-repeat 0 0;
}
#cat-chk01-toggle ul, #cat-chk02-toggle ul, #cat-chk03-toggle ul, #cat-chk04-toggle ul, #cat-chk05-toggle ul, #cat-chk06-toggle ul, #cat-chk07-toggle ul, #cat-chk08-toggle {
 padding: 10px;
 background-color: #F7F7F7;
 border-radius: 3px;
}
#cat-chk01-toggle ul li, #cat-chk02-toggle ul li, #cat-chk03-toggle ul li, #cat-chk04-toggle ul li, #cat-chk05-toggle ul li, #cat-chk06-toggle ul li, #cat-chk07-toggle ul li, #cat-chk08-toggle {
 float: left;
 margin-right: 2%;
}
.btn-research {
 display: flex;
 align-items: center;
 justify-content: center;
 margin: 30px 0 0;
 padding: 15px 10em;
 outline: 1px solid #8F6D48;
 font-size: 1.4rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 color: #8F6D48;
 letter-spacing: .2em;
 text-align: center;
 transition: all .4s ease;
}
.btn-research::before {
 content: "";
 width: 10px;
 height: 10px;
 margin-right: 6px;
 background-image: url("../img/common/icon-search-brown.svg");
 background-repeat: no-repeat;
 background-size: contain;
 background-position: 50% 50%;
}
.btn-research:hover {
 background-color: #8F6D48;
 color: #fff;
}
.btn-research:hover::before {
 background-image: url("../img/common/icon-search-white.svg");
}
.form-checkbox {
 display: inline-flex;
 align-items: center;
 cursor: pointer;
}
.form-checkbox input {
 margin: 0;
 width: 0;
 opacity: 0;
}
.form-checkbox input:checked + span {
 background: #8F6D48;
 border: 1px solid #8F6D48;
 transition: all .45s ease-in-out;
}
.form-checkbox input:checked + span::before {
 content: "";
 display: block;
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 background: url("../img/common/icon-check-white.svg") no-repeat 0 0 / contain;
}
.form-checkbox span {
 position: relative;
 top: 0;
 left: 0;
 display: block;
 width: 18px;
 height: 18px;
 border: solid 1px #ddd;
 background: #fff;
 border-radius: 4px;
}
.form-checkbox em {
 margin-left: 8px;
 display: block;
 font-size: 1.3rem;
 font-style: normal;
}
.form-checkbox input:checked + span + em {
 color: #8F6D48;
}
.research-item-area, .research-item-category {
 display: flex;
 flex-wrap: wrap;
 margin-bottom: 20px;
 padding-bottom: 25px;
 border-bottom: 1px dotted #ccc;
}
.research-item-area li, .research-item-category li {
 padding-top: 10px;
 padding-right: 2rem;
}
.research-item-area li {
 width: 16.6666666667%;
}
@media screen and (max-width: 1260px) {
 .research-item-area li {
  width: 25%;
 }
}
@media screen and (max-width: 1024px) {
 .research {
  align-items: center;
 }
 .research-item {
  padding-right: 40px;
 }
 .research-map {
  width: 32%;
 }
 .research-item-area li {
  width: inherit;
 }
 .form-checkbox em {
  margin-left: 6px;
  font-size: 1.2rem;
 }
 .btn-research {
  margin: 25px 0 0;
  padding: 15px 6em;
 }
}
@media screen and (max-width: 767px) {
 .research {
  display: block;
 }
 .research-item {
  padding-right: 0;
 }
 .research-map {
  display: none;
 }
 .research-box h4 {
  font-size: 1.4rem;
 }
 .btn-research {
  margin: 25px auto 0;
  padding: 15px 4em;
 }
}
.select-box {
 position: relative;
 margin-top: 60px;
}
@media screen and (max-width: 1024px) {
 .select-box {
  margin-top: 40px;
 }
}
.select-box .btn-select-ttl {
 cursor: pointer;
 position: relative;
 display: inline-flex;
 align-items: center;
 padding: 0 5em;
 border: 1px solid #111;
 height: 50px;
 transition-property: all;
 transition-duration: 0.5s;
}
.select-box .btn-select-ttl:hover {
 opacity: .7;
}
.select-box .btn-select-ttl:before, .select-box .btn-select-ttl:after {
 content: "";
 position: absolute;
 top: 50%;
 width: 9px;
 height: 1px;
 background: #111;
 transition: all 0.3s ease-in-out;
}
.select-box .btn-select-ttl:before {
 transform: rotate(90deg);
 right: 12px;
}
.select-box .btn-select-ttl:after {
 right: 12px;
}
.select-box .open {
 background-color: #111;
 color: #fff;
}
.select-box .open:before {
 transform: rotate(180deg);
 background: #fff;
}
.select-box .open:after {
 opacity: 0;
}
.select-box .select-inner {
 display: none;
}
.select-box .select-inner {
 position: absolute;
 top: 50px;
 left: -1px;
 width: calc(100% + 2px);
 padding: 50px 0;
 background-color: #fff;
 border-bottom: 1px solid #111;
 z-index: 5;
}
@media screen and (max-width: 767px) {
 .select-box .select-inner {
  padding: 30px 0;
 }
 /*	.select-box .btn-select-ttl{
		width: 90%;
	}*/
 .research-box {
  text-align: left;
 }
 .select-box {
  text-align: center;
 }
}
.select-list {
 display: flex;
 flex-wrap: wrap;
}
.select-box .select-list .select-inner {
 position: absolute;
 top: 51px;
}
@media screen and (min-width: 768px) {
 .select-list > li:nth-child(n+2) {
  margin-left: 20px;
 }
}
@media screen and (max-width:767px) {
 .select-box .select-list {
  margin-bottom: 25px;
 }
 .select-box .select-list > li {
  width: 100%;
  text-align: center;
 }
 .select-box .select-list > li:nth-child(n+2) {
  margin-top: 15px;
 }
}
.dtl.dtl-col2 {
 display: flex;
 justify-content: space-between;
}
.dtl .main {
 width: 71.4285714286%;
}
.dtl .side {
 width: 19.8412698413%;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
}
@media screen and (max-width: 1024px) {
 .dtl.dtl-col2 {
  display: block;
 }
 .dtl .main {
  width: 100%;
 }
 .dtl .side {
  display: none;
 }
}
.dtl .main .article-lead {
 margin-top: 50px;
 line-height: 1.8;
}
.dtl .main .article-index {
 margin-top: 70px;
}
.dtl .main .article-index p {
 display: inline-block;
 padding: 20px 40px 17px;
 background-color: #C6C1AB;
 font-size: 1.8rem;
 font-family: 'Libre Baskerville', serif;
 color: #fff;
 line-height: 1;
}
.dtl .main .article-index-inner {
 padding: 10px 45px 45px;
 background-size: auto auto;
 background-color: rgba(255, 255, 255, 1);
 background-image: repeating-linear-gradient(-45deg, transparent, transparent 3px, rgba(250, 250, 250, 1) 3px, rgba(250, 250, 250, 1) 5px);
 border: 3px solid #C6C1AB;
}
.dtl .main .article-index li {
 display: flex;
 align-items: center;
 position: relative;
 padding: 20px 0;
 font-size: 1.6rem;
 border-bottom: 1px dashed #ccc;
}
.dtl .main .article-index li a {
 text-decoration: underline;
}
.dtl .main .article-index li a:hover {
 text-decoration: none;
}
.dtl .main .article-index li dl {
 display: flex;
 align-items: flex-start;
}
.dtl .main .article-index li dl dt {
 width: 3.5rem;
}
.dtl .main .article-index li dl dd {
 flex: 1 0 0;
}
.dtl .main .article-index li span {
 font-family: 'Libre Baskerville', serif;
 font-size: 1.8rem;
}
.dtl .main .article-ttl {
 margin-top: 50px;
 margin-bottom: 30px;
 padding-bottom: 15px;
 border-bottom: 1px dotted #ccc;
}
.dtl .main .article-ttl dl {
 display: flex;
 align-items: flex-start;
}
.dtl .main .article-ttl dt {
 width: 3.5rem;
}
.dtl .main .article-ttl dt span {
 font-family: 'Libre Baskerville', serif;
 font-size: 2.4rem;
 color: #8F6D48;
 line-height: 1.3;
}
.dtl .main .article-ttl dd {
 flex: 1 0 0;
}
.dtl .main .article-ttl h3 {
 font-size: 2.2rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 700;
 letter-spacing: .3em;
 line-height: 1.3;
 color: #8F6D48;
}
@media screen and (max-width: 767px) {
 .dtl .main .article-lead {
  margin-top: 40px;
 }
 .dtl .main .article-index {
  margin-top: 40px;
 }
 .dtl .main .article-index p {
  padding: 10px 20px 8px;
  font-size: 1.5rem;
 }
 .dtl .main .article-index-inner {
  padding: 5px 15px 15px;
  border-width: 2px;
 }
 .dtl .main .article-index li {
  padding: 10px 0;
  font-size: 1.3rem;
 }
 .dtl .main .article-index li dl dt {
  width: 3rem;
 }
 .dtl .main .article-index li span {
  font-size: 1.3rem;
 }
 .dtl .main .article-ttl dt span {
  font-size: 1.6rem;
 }
 .dtl .main .article-ttl h3 {
  font-size: 1.6rem;
  letter-spacing: .1em;
 }
 .dtl .main .article-ttl dt {
  width: 3rem;
 }
}
.dtl .side h4 {
 padding: 10px;
 border-top: 1px solid #ddd;
 border-bottom: 1px solid #ddd;
 letter-spacing: .2em;
}
.dtl .side li {
 position: relative;
 margin-top: 20px;
 padding-left: 15px;
 font-size: 1.2rem;
}
.dtl .side li::after {
 content: "";
 display: block;
 position: absolute;
 top: .5em;
 left: 0;
 width: 10px;
 height: 10px;
 border: 3px solid #8F6D48;
 border-radius: 100%;
}
.dtl .side .side-more-list li a {
 display: block;
 white-space: nowrap;
 overflow: hidden;
 -o-text-overflow: ellipsis;
 text-overflow: ellipsis;
}
.a-link span {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 position: relative;
}
.a-link span::after {
 content: "";
 margin-left: 6px;
 width: 6px;
 height: 6px;
 border-top: 1px solid #111;
 border-right: 1px solid #111;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
}
.a-link.a-link-back span::after {
 display: none;
}
.a-link.a-link-back span::before {
 content: "";
 margin-right: 6px;
 width: 6px;
 height: 6px;
 border-bottom: 1px solid #111;
 border-left: 1px solid #111;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
}
.a-link {
 letter-spacing: 0;
 line-height: 1.66667;
 word-break: break-all;
 color: inherit;
 font-weight: inherit;
 position: relative;
 display: -webkit-inline-box;
 display: -ms-inline-flexbox;
 display: inline-flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 padding-bottom: 2px;
}
.a-link::before {
 -webkit-transform: scaleX(1);
 transform: scaleX(1);
 -webkit-transform-origin: 100% 0;
 transform-origin: 100% 0
}
.a-link::after, .a-link::before {
 content: "";
 display: block;
 position: absolute;
 bottom: 0;
 left: 0;
 width: 100%;
 height: 1px;
 border-bottom: 1px solid #111;
}
.a-link::after {
 -webkit-transform: scaleX(0);
 transform: scaleX(0);
 -webkit-transform-origin: 0 0;
 transform-origin: 0 0
}
.a-link:hover::before, .hover .a-link::before {
 -webkit-transition: .3s cubic-bezier(.215, .61, .355, 1);
 transition: .3s cubic-bezier(.215, .61, .355, 1);
 -webkit-transform: scaleX(0);
 transform: scaleX(0)
}
.a-link:hover::after, .hover .a-link::after {
 -webkit-transition: .3s cubic-bezier(.215, .61, .355, 1) .25s;
 transition: .3s cubic-bezier(.215, .61, .355, 1) .25s;
 -webkit-transform: scaleX(1);
 transform: scaleX(1)
}

.dtl .side .side-more-list li a::before,
.dtl .side .side-more-list li a::after{
	display: none;
}
.dtl .side .side-more-list li a{
	text-decoration: underline;
}
.dtl .side .side-more-list li a:hover{
	text-decoration: none;
}

.btn a {
 display: inline-flex;
 justify-content: center;
 align-items: center;
 position: relative;
 max-width: 100%;
 font-size: 1.6rem;
 font-family: source-han-serif-japanese, serif;
 font-weight: 400;
 color: #8F6D48;
 text-decoration: none;
 background-color: #fff;
 border: 1px solid #8F6D48;
 z-index: 1;
}
.btn a::before, .btn a::after {
 content: "";
 display: inline-block;
 width: 2em;
 flex-basis: 2em;
 float: left;
}
.btn a span {
 position: relative;
 display: block;
 padding: 1.318em 10.75em;
 z-index: 2;
}
.btn a, .btn a::before, .btn a::after {
 transition-property: color, transform;
 transition-duration: 0.35s;
 transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}
.btn a:hover {
 color: #fff;
 background-color: #8F6D48;
}
.btn a span::after {
 content: "";
 position: absolute;
 top: 50%;
 right: -1em;
 width: 25px;
 height: 9px;
 background: url("../img/common/btn-arrow-brown.svg") no-repeat 0 50% / contain;
 z-index: 3;
 transform: translateY(-50%);
 -webkit-transform: translateY(-50%);
 -ms-transform: translateY(-50%);
}
.btn a:hover span::after {
 background-image: url("../img/common/btn-arrow-white.svg");
}
.btn.-flexible {
 width: auto;
 display: inline-block;
}
.btn.-flexible a {
 display: inline-block;
}
.link-box {
 margin-top: 120px;
 text-align: center;
}
@media screen and (max-width: 1024px) {
 .btn a span {
  padding: 1.05em 5.75em;
  font-size: 1.5rem;
 }
 .link-box {
  margin-top: 80px;
 }
}
@media screen and (max-width: 767px) {
 .btn a span {
  padding: .8em 1.2em;
  font-size: 1.4rem;
 }
 .btn a span::after {
  width: 20px;
  height: 7px;
  right: -1.5em;
 }
 .link-box {
  margin-top: 60px;
 }
}
table.info-table {
 width: 100%;
 margin-top: 5em;
 border-top: 1px dotted #ccc;
}
table.info-table th, table.info-table td {
 padding: 1.5em 1em;
 border-bottom: 1px dotted #ccc;
}
table.info-table td a {
 color: #A37E39;
 text-decoration: underline;
}
table.info-table td a:hover {
 text-decoration: none;
}
table.info-table th {
 width: 130px;
 vertical-align: middle;
}
@media screen and (max-width:767px) {
 table.info-table {
  border-top: none;
 }
 table.info-table th, table.info-table td {
  display: block;
  padding: .75em;
  border-bottom: none;
 }
 table.info-table th {
  background: #f6f6f6;
  border-top: 1px dotted #dadada;
  width: 100%;
  text-align: left;
 }
 table.info-table td {
  margin-bottom: 1em;
 }
}
.l-info {
 display: flex;
 flex-wrap: wrap;
}
.l-info li {
 border-bottom: 1px dotted #ccc;
}
.l-info li dl {
 display: flex;
}
.l-info li dl dt {
 font-weight: 600;
}
.l-info li dl dd {
 flex: 1 0 0;
}
.l-info li a {
 color: #8F6D48;
 text-decoration: underline;
}
.l-info li a:hover {
 text-decoration: none;
}
@media screen and (min-width: 768px) {
 .l-info li {
  width: 47.5%;
  margin-right: 5%;
  padding: 30px 0 30px 20px;
 }
 .l-info li:nth-child(even) {
  margin-right: 0;
 }
 .l-info li dl dt {
  width: 110px;
 }
}
@media screen and (max-width: 767px) {
 .l-info li {
  width: 100%;
  padding: 20px 0;
 }
 .l-info li dl dt {
  width: 80px;
 }
}
.sns-links {
 display: flex;
 flex-wrap: wrap;
 margin: 18px 0;
}
.sns-links li {
 width: 70px;
}
.sns-links li:nth-child(n+2) {
 margin-left: 15px;
}
.sns-links li a {
 display: block;
 padding: 0 5px;
 border-radius: 4px;
 text-align: center;
 transition: all .4s ease;
}
.sns-links li:nth-child(1) a {
 background-color: #3B5A9A;
}
.sns-links li:nth-child(2) a {
 background-color: #2CA7E0;
}
.sns-links li:nth-child(3) a {
 background-color: #28C00B;
}
.sns-links li a:hover {
 opacity: .8;
}
@media screen and (max-width: 767px) {
 .sns-links {
  margin: 10px 0;
 }
 .sns-links li {
  width: 60px;
 }
 .sns-links li:nth-child(n+2) {
  margin-left: 10px;
 }
}
.slide-vertical {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
 position: relative;
}
.slide-vertical .slide {
 position: relative;
 width: 79.5%;
 margin: 0;
 padding: 0;
}
.slide-vertical .slide .thum {
 padding-top: 66.6685%;
 position: relative;
}
.slide-vertical .slide .thum img {
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 width: 100%;
 height: 100%;
 object-fit: contain;
}
.slide-vertical .slide-navigation {
 line-height: 0;
 position: relative;
 width: 18.878%;
 margin: 0;
 border: 1px solid #ddd;
 overflow: hidden;
}
.slide-vertical .slide-navigation .item {
 position: relative;
 margin: 5px 0;
 cursor: pointer;
}
.slide-vertical .slide-navigation .item .image {
 position: relative;
 overflow: hidden;
}
.slide-vertical .slide-navigation .item .thum {
 position: relative;
 padding-top: 65.8931%;
 cursor: pointer;
}
.slide-vertical .slide-navigation .item .thum img {
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 width: 100%;
 height: 100%;
 object-fit: contain;
}
.slide-vertical .slide-navigation .slick-list {
 overflow: inherit;
}
.slide-vertical .slide-navigation .item .image::after {
 position: absolute;
 top: 0;
 left: 0;
 display: block;
 width: 100%;
 height: 100%;
 content: "";
 opacity: 0.5;
 background: #000;
}
.slide-vertical .slide-navigation .slick-current .image::after {
 opacity: 0;
}
.slick-vertical .slick-slide {
 border: 0 solid transparent;
}
.slide-vertical .slick-arrow {
 z-index: 999;
}
.slide-vertical .slick-prev, .slide-vertical .slick-next, .slide-vertical .slick-prev::after, .slide-vertical .slick-next::after {
 width: 22px !important;
 height: 15px !important;
}
.slide-vertical .slick-prev {
 top: 25px;
 bottom: auto;
 left: 0;
 right: 0;
 margin: auto;
}
.slide-vertical .slick-next {
 top: inherit;
 bottom: 5px;
 left: 0;
 right: 0;
 margin: auto;
}
.slide-vertical .slick-prev::after, .slide-vertical .slick-next::after {
 content: "";
 position: absolute;
 top: 0;
 bottom: 0;
 margin-top: auto;
 margin-bottom: auto;
}
@media screen and (min-width: 768px) {
 .slide-vertical .slide-navigation {
  /*height: 520px;*/
  padding: 40px 15px;
 }
 .slide-vertical .slick-prev::after {
  background: url("../img/common/slide-thum-prev.svg") no-repeat 0 0 / contain;
 }
 .slide-vertical .slick-next::after {
  background: url("../img/common/slide-thum-next.svg") no-repeat 0 0 / contain;
 }
}
@media screen and (max-width: 767px) {
 .slide-vertical .slide {
  width: 100%;
 }
 .slide-vertical .slide-navigation {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0 25px;
  border: none;
 }
 .slide-vertical .slide-navigation .item {
  margin-right: 0;
  margin-left: 0;
 }
 .slide-vertical .slide-navigation .slick-list {
  width: 100%;
  padding: 0 !important;
 }
 .slide-vertical .slick-prev, .slide-vertical .slick-next, .slide-vertical .slick-prev::after, .slide-vertical .slick-next::after {
  width: 15px !important;
  height: 22px !important;
 }
 .slide-vertical .slick-prev {
  top: 20px;
  bottom: 0;
  right: auto;
  left: 0;
 }
 .slide-vertical .slick-next {
  top: 20px;
  bottom: 0;
  right: 0;
  left: auto;
 }
 .slide-vertical .slick-prev::after {
  background: url("../img/common/slide-prev.svg") no-repeat 0 0 / contain;
 }
 .slide-vertical .slick-next::after {
  background: url("../img/common/slide-next.svg") no-repeat 0 0 / contain;
 }
}
.g-map {
 position: relative;
 padding-top: 56.25%;
 height: 0;
 overflow: hidden;
 border: 1px solid #ddd;
}
.g-map iframe {
 position: absolute;
 padding: 5px;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}