@charset "utf-8";
/* CSS Document */

/* -----------------------------------------------------------
	icon
------------------------------------------------------------*/
.fs-16 { font-size: 1.2em }
i.far {margin-right:5px}
i.fal {vertical-align: middle;}

/* -----------------------------------------------------------
	common
------------------------------------------------------------*/
html,body {
height:100%;
}
html {
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
body {
background-color:#D2C9C5;
font-weight: 400;
color:#444;
line-height:1.5;
-webkit-text-size-adjust: 100%;
-webkit-font-smoothing: antialiased;
-webkit-overflow-scrolling: touch;
}

body,.en {
    font-family:'Century Gothic', CenturyGothic, sans-serif,'Noto Sans', 'Noto Sans CJK JP', 'Noto Sans CJK JP Subset';
}
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

*:before,
*:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
p,li,dt,dd,th,td,div,span,em {
color:#444;
font-size: 16px;
line-height: 1.85;
word-wrap: break-word;
}

ul,ol {
padding-left:0;
}
li {
list-style: none;
}
/* cms */
.info-detail li {
list-style:inherit;
list-style-position:inside;
}

table {
width: 100%;
border-collapse: collapse;
}
a {
  color:#662E6B;
}
#header a:hover, #footer a:hover {
  text-decoration: none;
}

@media screen and ( min-width: 751px ){
  a {
  -webkit-transition: background  0.3s ease, color 0.3s ease;
  -moz-transition: background  0.3s ease, color 0.3s ease;
  -o-transition: background  0.3s ease, color 0.3s ease;
  transition: background  0.3s ease, color 0.3s ease;
}
	a:hover {
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	opacity: 0.7;
	text-decoration: none;
	/* color:inherit; */
	cursor:pointer;
  transition:opacity 0.3s;
	}

	a:hover img {
	-ms-filter: "alpha(opacity=70)";
	filter: alpha(opacity=70);
	}
	#page-top a:hover {
	    text-decoration: none;
	    opacity: 0.7;
	}
}


img {
line-height: 0;
max-width: 100%;
vertical-align: bottom;
}

article:after,main:after,
clearfix:after {
content: "";
display: block;
clear: both;
}
h1,h2,h3,h4,h5 {
color:#444;
}

/* -----------------------------------------------------------
common default
------------------------------------------------------------*/
.ac { margin:auto; }
.tc { text-align:center!important; }
.tl { text-align:left!important; }
.fl { float:left; }
.fr { float:right; }
.bold { font-weight:bold; }

.inline { display:inline-block; }
.block { display:block; }
.super { vertical-align: super; font-size:10px;}


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

@media screen and (min-width:768px) {
  html {
  font-size: 62.5%; /*標準サイズ 10px*/
  }
  body { font-size: 1.5rem; } /*font-size : 14px と同等*/
  h1 { font-size: 2.4rem; } /* font-size: 56px と同等 */
  h2 { font-size: 2.8rem; } /* font-size: 28px と同等 */
  p,div,span,li,i,td,th,em,dt,dd {
    font-size:1.6rem;
  }
}

@media screen and (max-width:1100px) {
  html {
  font-size: 55%;
  }
}

@media screen and (max-width:767px) {
  html {
  font-size: 62.5%;
  }
  body { font-size: 1.3rem; } /*font-size : 14px と同等*/
  h1 { font-size: 2.2rem; } /* font-size: 56px と同等 */
  h2 { font-size: 1.8rem; } /* font-size: 28px と同等 */
  p,div,span,li,i,td,th,em,dt,dd {
    font-size:1.3rem;
  }

}
/* -----------------------------------------------------------
page
------------------------------------------------------------*/

.full {
width: 100%;
margin: 0 auto;
}
.container {
margin: 0 auto;
max-width:1200px;/* 1170+30 */
}
.container.medium {
max-width:1000px;/* 970+30 */
margin: 0 auto;
}
/* -----------------------------------------------------------
bootstrap reset
------------------------------------------------------------*/

/* .no-gutter > [class*='col-'] {
padding-right:0;
padding-left:0;
} */
.row.no-gutter {
margin-left:0;
margin-right:0;
}

a:focus, a:active {
outline: none;
outline-offset: 0;
text-decoration: none;
}
.btn:active, .btn.active {
box-shadow:none;
}
.btn:focus, .btn:active:focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn.active.focus {
outline:none;
}


/* -----------------------------------------------------------
共通ボックス
------------------------------------------------------------*/
.pb10 { padding-bottom:10px; }
.pb15 { padding-bottom:15px; }
.pb20 { padding-bottom:20px; }
.pb30 { padding-bottom:30px; }
.pb40 { padding-bottom:40px; }
.pb50 { padding-bottom:50px; }
.pb60 { padding-bottom:60px; }
.pb80 { padding-bottom:80px; }
.pb100 { padding-bottom:100px; }

.pt60 { padding-top:60px; }
.pt70 { padding-top:70px; }
.pt80 { padding-top:80px; }
.pt5 { padding-top:3px; }
.pl10 { padding-left:10px; }
.pl20 { padding-left:20px; }
.mt10 { margin-top:10px; }
.mt20 { margin-top:20px; }
.mt40 { margin-top:40px; }
.mt60 { margin-top:60px; }
.mt80 { margin-top:80px; }
.mt100 { margin-top:100px; }
.mt120 { margin-top:120px; }
.mt140 { margin-top:140px; }

.mb5 { margin-bottom:5px; }
.mb10 { margin-bottom:10px; }
.mb15 { margin-bottom:15px; }
.mb20 { margin-bottom:20px; }
.mb30 { margin-bottom:30px; }
.mb40 { margin-bottom:40px; }
.mb50 { margin-bottom:50px; }
.mb60 { margin-bottom:60px; }
.mb70 { margin-bottom:70px; }
.mb80 { margin-bottom:80px; }
.mb100 { margin-bottom:100px; }
.mb110 { margin-bottom:110px; }
.mb120 { margin-bottom:120px; }

.mr20 { margin-right:20px; }

.pt30 { padding-top: 30px; }
.pb20 { padding-bottom:20px; }

.vt { vertical-align: top; }
.tr { text-align :right; }
.bgfff { background: #fff; }

.fs14 { font-size: 14px; }
.fs16 { font-size: 16px; }
.fs18 { font-size: 18px; }
.fs20 { font-size: 20px; }
.fs22 { font-size: 22px; }
.fs24 { font-size: 24px; }
.fs26 { font-size: 26px; }
.fs28 { font-size: 28px; }
.fs30 { font-size: 30px; }
.fs32 { font-size: 32px; }
.fs34 { font-size: 34px; }
.fs36 { font-size: 36px; }
.fs38 { font-size: 38px; }
.fs40 { font-size: 40px; }

.fa {
line-height: 1;
}
i.far {
margin-left:3px;
}

/* -----------------------------------------------------------
header
------------------------------------------------------------*/
.second #header {
  height:60px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
/* -----------------------------------------------------------
btn
------------------------------------------------------------*/

button {
width: auto;
padding: 0;
margin: 0;
background: none;
border: 0;
font-size: 0;
line-height: 0;
overflow: visible;
cursor: pointer;
}
button:focus {
outline: none;
appearance: none;
}

/* -----------------------------------------------------------
PC MENU
------------------------------------------------------------*/

/* タブレット、PC768以上 */
@media screen and (min-width: 768px) {
a[href^="tel:"] { pointer-events: none; }
.sp {
display:none!important;
}
.sp-br {
  display: none;
}
.pc-none {
  display: none!important;
}
.sp-on {
  display: none;
}
#sp-mv {
  display: none;
}
.slick-slide {
position: relative;
width:100%;
height: 100%;
overflow: hidden;
}
.slick-slide:hover {
cursor: pointer;
}
.slick-slide * {
line-height: 1;
}
.slick-slide .hover-txt {
opacity: 0;
width: 100%;
height: calc(100% - 2px);
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
color: #fff;
background: rgba(0,0,0,0.5);
display: flex;
align-items: center;
text-align: left;
padding: 30px 25px 30px 35px;
line-height: 1.6;
font-size:1.5rem;
letter-spacing: 0.05em;
}
.slick-slide:hover .hover-txt {
opacity: 1;
transition:all 0.6s ease;
}
.slick-slide .hover-txt a {
  color:#fff;
  line-height: 1.6;
  font-size:1.5rem;
  letter-spacing: 0.05em;
}
.slick-slide .hover-txt.small-txt a {
  font-size:90%;
}
.slick-slide .hover-txt {
  transition:all 0.6s ease;
}
.slick-slide.hover .hover-txt {
  opacity: 1;
}
.slick-slide a:hover {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}
.slick-slide a:hover img {
  opacity: 1;
  -ms-filter: none;
  filter: none;
}

}

/*---------------------------------------------
flexbox
-----------------------------------------------*/
/* 天地中央 */
.flexbox {
	display:flex;
	display: -webkit-flex;
	display:-ms-flexbox;
	align-items: center;
}



/*---------------------------------------------
共通
-----------------------------------------------*/
h1 {
  margin:0;
}



/* -----------------------------------------------------------
index
------------------------------------------------------------*/
#mv {
  min-height:400px;
  height:calc(100vh - 40%);
}
.mv-inner {
  min-height:400px;
  width:100%;
  height:100%;
  display: flex;
  justify-content:space-between;
  align-items: center;;
}
.mv-inner #logo-area {
  width:38%;
  max-width: 448px;
  text-align: center;
}
.mv-inner #logo-area img {
  width:240px;
  height: 29px;
}
.mv-inner #txt-area {
  width:62%;
}
.mv-inner #txt-area p {
  line-height: 2;
}


/* -----------------------------------------------------------
footer
------------------------------------------------------------*/
#footer-copyright {
    display: flex;
    align-items: center;
    background: #fff;
    height: 50px;
  }
#footer-wrap {
  padding-top:50px;
  min-height: 200px;
  height: 100%;
  display: flex;
  align-items: center;
}
.footer-menu {
  max-width: 533px;
  margin: auto;
  display: flex;
  justify-content: space-between;
}
ul.sns-privacy-link {
  padding-top: 60px;
  margin:0;
  text-align: right;
  display: flex;
  justify-content: flex-end;
  align-content: center;
}
.insta-link {
  display: flex;
  justify-content: center;
  align-content: center;
}
.sns-privacy-link li a {
  display: flex;
  justify-content: center;
  align-items: center;
}
.sns-privacy-link li.insta-link i {
  font-size: 24px;
  margin:2px 8px;
}
.sns-privacy-link li.pinterest-link i {
  font-size: 23px;
  margin:2px 8px;
}
.sns-privacy-link .privacy-link {
  font-size:1.4rem;
  margin: 0 16px;
}

.logo-uk img {
  /* width:267px;
  height: 29px; */
  width:178px;
  height: 21px;
}
.footer-menu li a {
  font-size: 21px;
  height: 38px;
}
.footer-menu li a {
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.copy-txt {
  text-align: right;
  font-size: 1.4rem;
}

/* -----------------------------------------------------------
slick slide
------------------------------------------------------------*/
#slick-wrap {
  background: #fff;
  padding:46px 0;
}
/* カルーセル */
#slick-wrap {
  padding: 50px 0;
  background: #fff;
  overflow: hidden;
}
#slick-wrap .slick-slide img, #slider img,.thumbnail-item img {
  margin:auto;
}
.carousel {
}

.slider-container {
  display: none;
  position: relative;
	padding:32px 0 10px;
}
.slider-container.initialized {
  display:block;
}
.slider {
  margin: 0 96px;
  overflow: hidden;
}
.slick-list {
  margin-right: -30px;  /* ガター分ネガティブマージン */
}

.slick-slide {
  margin: 0 30px 0 0;  /* ガター */
}
.slick-slide {
}

/*---------------------------------------------
second セカンドページ 共通
-----------------------------------------------*/
.second #header {
  height:60px;
  width:100%;
  padding:0 32px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
#header h1 a {
  line-height: 1;
  vertical-align: top;
}
#header h1 img {
  width:183px;
  height: 22px;
}
.second #kv {
  height:150px;
  width:100%;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.kv-inner h1 {
  font-size:1.8rem;
  text-align: center;
}
.kv-inner p.h1-en {
  font-size: 3.6rem;
  color:#662E6B;
  line-height: 1;
  text-align: center;
}
.second .wrap {
  background: #F4F0EF;
  padding:50px 0 15px;
}
ul.local-nav {
  margin:0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap:wrap;
}
ul.local-nav li {
  width:15%;
  max-width:180px;
  margin:0 0 20px;
  text-align: center;
}
ul.local-nav li a {
  width:100%;
  height:50px;
  background: #fff;
  border:3px solid #D2C9C5;
  line-height: 1.2;
  padding:5px 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  color:#662E6B;
  font-size:1.8rem;
}
ul.local-nav li a span,ul.local-nav li a div {
  line-height: 1.2;
  color:#662E6B;
  font-size:1.8rem;
}

.wrap h2 {
  background: #D2C9C5;
  font-size:1.8rem;
  padding:0 26px;
  height: 50px;
  width:100%;
  margin:30px 0 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.wrap h3.ttl-h3 {
  font-size:1.8rem;
  padding:0 0 10px 10px;
  color:#444;
  border-bottom:2px dotted #221714;
  margin:40px 0 0;
}

.card-box h3 {
  font-size:1.8rem;
  padding: 0 0 20px 0px;
  margin:0 0 25px 0;
  position: relative;
}
.card-box h3:after {
  content:"";
  position: absolute;
  left:0;
  bottom:0;
  width: 72px;
  height: 2px;
  background: #662E6B;
}
.card-box {
  background: #fff;
  border:1px solid #999;
  box-shadow: 3px 3px 0 rgb(0,0,0,0.15);
  padding:25px 30px 20px;
  height: 100%;
}
.card-wrap {
  margin:40px 0;
}
.detail-wrap li {
  font-size:1.6rem;
  line-height: 1.4;
  position: relative;
  padding:0 0 0 30px;
  margin-bottom:6px;
}
.detail-wrap li:before {
  content: "\f1ad";
  font-family: "Font Awesome 5 Pro";
  font-weight: 200;
  color:#88668B;
  position: absolute;
  left:0;
  top:0;
  font-size: 16px;
}
.detail-wrap li.address:before {
  content: "\f1ad";
  left:2px;
}
.detail-wrap li.tel:before {
  content: "\f879";
}
.detail-wrap li.fax:before {
  content: "\f1ac";
}
.detail-wrap li.email:before {
  content: "\f0e0";
}
.detail-wrap li.website:before {
  content: "\f108";
}
.detail-wrap li a {
  color:#444;
}
.detail-wrap li.email a,
.detail-wrap li.website a {
  text-decoration: underline;
}

/* privacy */
.pp h3 {
  margin:50px 0 20px;
  font-size:18px;
}
.pp h3:first-child {
  margin-top:0;
}
.pp p {
  margin-bottom:10px;
}
.privacy .pp {
  margin:40px 0 80px;
}



/* -----------------------------------------------------------
404 notfound
------------------------------------------------------------*/
.notfound-read {
  margin-top:40px;
}

.notfound-img {
background:#fff;
padding: 20px;
border-radius: 100%;
display: inline-block;
}
.notfound-read .col-sm-4 {
  padding:0;
}
.notfound-read .col-sm-8 {
  margin-top:20px;
}
.notfound .btn-area {
  margin:80px auto 120px;
  text-align: center;
  justify-content: center;
}
.notfound .btn-area li {
  max-width:470px;
  width:100%;
}

/*---------------------------------------------
mediaQuery レスポンシブ
-----------------------------------------------*/
@media screen and (min-width: 1170px) {
  .pc-m {
    display: none;
  }
}

/* index */
@media screen and (max-width: 1600px) {
.slick-slide .hover-txt {
  font-size:1.4rem;
  }
}
@media screen and (max-width:1100px) {
  .mv-inner {
  margin:auto;
  width:94%;
}
.mv-inner #logo-area {
    width: 28%;
  }
  .mv-inner #txt-area {
      width: 66%;
  }
}

@media screen and (min-width: 900px) {
  .pc-s {
    display: none;
  }
}

@media screen and (min-width: 1024px) {
br.pcs {
  display: none;
}
}
@media screen and (max-width: 1023px) {
  .tb-none {
    display: none!important;
  }
  .slick-slide .hover-txt {
    display: none!important;
  }

}

/*--------------------------------------------------
767px以下
/*--------------------------------------------------*/

@media screen and (max-width: 767px) {
.pc-on {
  display: none;
}
  br.pcs {
    display: none;
  }
.pc,.sp-none,.pc-s,.pc-m {
display:none!important;
}
.sp-none {
  display: none!important;
}
.col-12.img {
  text-align: center;
  margin:auto;
  width:80%;
}
.col-12 .notfound-img img {
margin: 0 auto;
}

p, li, dt, dd, th, td, div, span, em {
font-size:14px;
}
.col-md-4 {
text-align: center;
}
.col-12 .sp-table img {
  margin: 0 auto;
}
.col-md-4 p, .col-md-4 li, .col-md-4 span,
.col-md-4 h2,.col-md-4 h3,.col-md-4 h4,.col-md-4 h5,.col-md-4 dl,.col-md-4 dt,.col-md-4 dd {
text-align: left;
}
#main h2+h3 {
margin-top:40px !important;
}
.pc-s,.pc-m {
  display: none;
}
#header h1 {
  text-align:center;
}
.second .wrap {
  padding: 30px 0 60px;
}
.second #kv {
  height: 100px;
}
.kv-inner p.h1-en {
  font-size: 2.4rem;
}
.kv-inner h1 {
  font-size: 1.4rem;
  line-height: 1;
}
.second #header {
  height: 50px;
  justify-content: center;
}

ul.local-nav {
  margin:0 -6px;
}
ul.local-nav li {
  width:calc(16.66% - 6px);
  max-width: 100%;
  margin: 3px;
  text-align: center;
}
ul.local-nav li a {
  font-size: 1.3rem;
  padding:0;
}
ul.local-nav li a span,ul.local-nav li a div {
  font-size: 1.3rem;
}
.wrap h2 {
  padding: 0 11px;
}
.detail-wrap li {
  font-size: 1.5rem;
}
.card-box {
  padding: 25px 25px 20px;
}
.card-wrap {
    margin: 26px 0 0;
}

#footer-wrap {
  padding-top: 40px;
  height: 240px;
}
ul.footer-menu {
  justify-content: center;
  flex-wrap:wrap;
}
ul.footer-menu li {
  width:100%;
  line-height: 1;
}
.footer-menu li.logo-uk {
  margin-top:20px;
}
ul.sns-privacy-link {
  flex-wrap: wrap;
  justify-content: center;
  padding-top: 27px;
}
.sns-privacy-link .privacy-link {
  width:100%;
  margin: 10px 16px;
}
.insta-link {

}
.copy-txt {
  text-align: center;
  font-size: 1.3rem;
}
#footer-copyright {
  align-items: flex-start;
  padding-top:2px;
  height:42px;
}
.mv-inner {
  flex-wrap:wrap;
  width:100%;
  min-height: inherit;
  padding:0 23px;
}
.mv-inner #logo-area,
.mv-inner #txt-area {
  width:100%;
  max-width:100%;
}
.mv-inner #logo-area {
  margin:60px 0 55px;
}
#txt-area {
  margin:30px 0 40px;
}
#sp-mv {
  margin:auto;
}
#slick-wrap {
  padding: 23px 0 18px;
}
.slick-list {
  margin-right: -15px;  /* ガター分ネガティブマージン */
}
.slick-slide {
  margin: 0 15px 0 0;  /* ガター */
}
.pp h3 {
  margin:0px 0 20px;
}
.privacy .pp {
    margin: 10px 0 0px;
}

}

/* ====================================================== */
/* sm サイズ*/
@media screen and (max-width: 575px) {

}
@media screen and (min-width: 501px) {
.sp-sm {
  display: none!important;
  }
}

@media screen and (max-width: 374px) {

}
