@charset "utf-8";

/**
 *
 * style
 *
 */
.cd-main-header .kitty_logo {
    position: absolute;
    top: 0;
    left: 0;
    width: 3.5%;
    margin: auto;
}

.main_d_box .pannavi {
  background: #fffff6;
  padding: 0.5em 3em;
}

.main_d_box .pannavi ol {}

.main_d_box .pannavi ol li {
  font-size: 0.8rem;
  font-weight: 300;
  line-height: 1.7em;
  letter-spacing: 0.15em;
  color: #6D6D6D;
  float: left;
  margin-left: 0.5em;
}

.main_d_box .pannavi ol li a {}

.main_d_box .pannavi ol li a:hover {}

.main_d_box .pannavi ol li span {
  color: #a6a6a6;
  margin-left: 0.5em;
}


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

.cd-main-header .kitty_logo {
    position: absolute;
    top: 17%;
    left: 35%;
    width: 29%;
    margin: auto;
}

.main_d_box .pannavi {
  background: #fffff6;
  padding: 0.5em 1em;
}

.main_d_box .pannavi ol li {
  font-size: 2.8vw;
  font-weight: 300;
  line-height: 1.7em;
  letter-spacing: 0.15em;
  color: #6D6D6D;
  float: left;
  margin-left: 0.05em;
}

}

#right_bnr {display: none;}

.top-bg {
 width: 50vw;
 height: 125vh;
 position: absolute;
 top: 24vh;
 right: 0;
}
.top-bg .bg {
 width: 100%;
 height: 100%;
 background: #EFE8D9;
}

.title-en {
 margin-bottom: 1.5em;
 letter-spacing: 0.14em;
 line-height: 1.4;
 color: #C7887F;
 font-size: 12px;
 font-family: semplicitapro, sans-serif;
 font-weight: 500;
}
.tit-box .title-en { margin-bottom: 1em;}

.tit-box .title {
 letter-spacing: 0.16em;
 line-height: 1.6;
 color: #000;
 font-size: 20px;
 font-weight: 500;
}

@media screen and (max-width: 1200px) {
 .title-en { font-size: 10px;}
 .tit-box .title { font-size: 16px;}
}
@media screen and (max-width: 768px) {
 .title-en { font-size: 9px;}
 .tit-box .title { font-size: 14px;}
}

figure {
 display: block;
 line-height: 0;
}


/*--------------------------------------------------------------------------
 cont01だよ
---------------------------------------------------------------------------*/

.cont01 {
  
}

.cont01 .co01_0 {
  max-width: 1280px;
  margin: auto;
}

.cont01 .sm_d {
  color: #bfbfbf;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 0.8rem;
  padding: 7% 0 0.5%;
}

.cont01 h1 {
  color: #333;
  line-height: 1.8em;
  letter-spacing: 0.1em;
  font-size: 1.6rem;
  padding-bottom: 4%;
}

.cont01 .co01_in {}

.cont01 .co01_in h2 {
  color: #333;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 1.2rem;
  padding: 7% 0 2em;
  text-align: center;
}

.cont01 .co01_in p {
  color: #808080;
  line-height: 1.9em;
  letter-spacing: 0.2em;
  font-size: 0.8rem;
  padding: 1% 10em 5%;
}

.cont01 .co01_in ul {
 max-width: 800px;
 margin: 0 auto 8%;
 letter-spacing: -5px;
 font-size: 0;
 overflow: visible;
}
/*
.cont01 .co01_in*/

.cont01 .co01_in ul li {
  margin: 4.66%;
  display: inline-block;
  /**: ;
  display: inline;
  *: ;*/
  zoom: 1;
  vertical-align: middle;
}

.cont01 .co01_in ul li img {
 max-height:100%;
 width:auto;
 max-width:100%;
 margin:0;
 padding:0;
 display:block;
 vertical-align:bottom;
 box-shadow: 5px 10px 25px rgba(0,0,0,0.2);
}

.cont01 .co01_in .close {
 width: 90%;
 max-width: 280px;
 height: 50px;
 margin: 60px auto 0;
 display: block;
 color: #FFF;
 font-size: 14px;
 background-color: #333 !important;
 -webkit-border-radius: 25px;
         border-radius: 25px;
 position: relative;
 -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
     -ms-transition: all 0.4s;
      -o-transition: all 0.4s;
         transition: all 0.4s;
}


/**************************************************************

cont02だよ

**************************************************************/

.cont02 {
  position: relative;
}

.cont02::before {
    content: "";
    width: 100%;
    height: 41vw;
    display: block;
    background: #fff8f6;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.cont02 .co02_01 {
  margin: 4% auto auto;
  padding-bottom: 5%;
}

.cont02 .co02_01 h2 {
  color: #c7887f;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 0.8rem;
  padding: 13% 0 6%;
}

.cont02 .co02_01 .co02_01in {}

.cont02 .co02_01 .co02_01in .co02_01_l {
  float: left;
  width: 48%;
  margin: auto;
  padding-left: 6%;
}

.cont02 .co02_01 .co02_01in .co02_01_r {
  float: right;
  width: 48%;
  margin: auto;
  padding-right: 6%;
}

.cont02 .co02_01 .co02_01in .co02_01_r .pimg,
.cont02 .co02_01 .co02_01in .co02_01_l .pimg {
  position: relative;
  margin-bottom: 5%;
}

.cont02 .co02_01 .co02_01in .co02_01_l .pimg #abs_img01 {
  position: absolute;
  top: 15%;
  left: -14%;
  width: 60%;
  margin: auto;
}

.cont02 .co02_01 .co02_01in .co02_01_r .pimg #abs_img02 {
  position: absolute;
  top: 65%;
  right: -14%;
  width: 60%;
  margin: auto;
}

.cont02 .co02_01 .co02_01in .co02_01_l .pimg .abs_img01 img {
  max-width: 100%;
}

.cont02 .co02_01 .co02_01in .co02_01_r .pimg a,
.cont02 .co02_01 .co02_01in .co02_01_l .pimg a {
  display: flex;
}

.cont02 .co02_01 .co02_01in .co02_01_r .pimg a picture,
.cont02 .co02_01 .co02_01in .co02_01_l .pimg a picture {
  display: inline-block;
  text-align: center;
}

.cont02 .co02_01 .co02_01in .co02_01_r .pimg a picture img,
.cont02 .co02_01 .co02_01in .co02_01_l .pimg a picture img {
  max-width: 100%;
}

.cont02 .co02_01 .co02_01in .co02_01_r h3,
.cont02 .co02_01 .co02_01in .co02_01_l h3 {
  color: #333;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 1.5rem;
  padding-bottom: 4%;
}

.cont02 .co02_01 .co02_01in .co02_01_r h4,
.cont02 .co02_01 .co02_01in .co02_01_l h4 {
  color: #6d6d6d;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 0.8rem;
  padding-bottom: 4%;
}

.cont02 .co02_01 .co02_01in .co02_01_r p.hdt,
.cont02 .co02_01 .co02_01in .co02_01_l p.hdt {
  color: #333;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 1.5rem;
  padding-bottom: 7%;
  font-weight: 200;
}

.cont02 .co02_01 .co02_01in .co02_01_r p.link_p,
.cont02 .co02_01 .co02_01in .co02_01_l p.link_p {
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 0.9rem;
  padding-bottom: 4%;
  text-align: right;
}

.cont02 .co02_01 .co02_01in .co02_01_r p.link_p a,
.cont02 .co02_01 .co02_01in .co02_01_l p.link_p a {
  display: inline-block;
  /*text-align: right;*/
  padding-right: 8%;
  position: relative;
  font-weight: 700;
  color: #333;
}


.cont02 .co02_01 .co02_01in .co02_01_r p.link_p a:before,
.cont02 .co02_01 .co02_01in .co02_01_l p.link_p a:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 100%;
  height: 1px;
  background: #333;
  transform: scale(0, 1);
  transform-origin: left;
  transition: 0.4s;
}

.cont02 .co02_01 .co02_01in .co02_01_r p.link_p a:hover,
.cont02 .co02_01 .co02_01in .co02_01_l p.link_p a:hover {
  color: #e88383;
}

.cont02 .co02_01 .co02_01in .co02_01_r p.link_p a:hover:before,
.cont02 .co02_01 .co02_01in .co02_01_l p.link_p a:hover:before {
  transform: scale(1);
}


/**************************************************************

cont03だよ

**************************************************************/

.cont03 {
  background: #fffff6;
}

.cont03 .co03_01 {
  padding: 0.5% 0 5.5% ;
}

.cont03 .co03_01 .sm_d {
  color: #333;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 0.8rem;
  padding: 7% 0 0.5%;
}

.cont03 .co03_01 h2 {
  color: #333;
  line-height: 1.8em;
  letter-spacing: 0.1em;
  font-size: 1.6rem;
  padding-bottom: 4%;
}

.cont03 .co03_01 h2 span {
  color: #ea959f;
}

.cont03 .co03_01 .st_box {
  display: flex;
  flex-direction: row;
  align-content: space-between;
  flex-wrap: wrap;
}

.cont03 .co03_01 .st_box .stb_in {
  width: 48%;
  margin: 1% 1% 3%;
}

.cont03 .co03_01 .st_box .stb_in a {}

.cont03 .co03_01 .st_box .stb_in a picture {
  display: inline-block;
  margin-bottom: 2%;
}

.cont03 .co03_01 .st_box .stb_in a picture img {
  max-width: 100%;
}

.cont03 .co03_01 .st_box .stb_in a h3 {
  color: #333;
  line-height: 1.7em;
  letter-spacing: 0.1em;
  font-size: 0.8rem;
}

.cont03 .co03_01 .st_box .stb_in a p {
  color: #333;
  line-height: 1.8em;
  letter-spacing: 0.1em;
  font-size: 1.25rem;
}


.cont03 .co03_01 .area_btn {
  margin: 3em auto 0;
}

.cont03 .co03_01 .area_btn p.link_p {
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 0.9rem;
  padding-bottom: 4%;
  text-align: right;
}

.cont03 .co03_01 .area_btn p.link_p a {
  display: inline-block;
  /*text-align: right;*/
  padding-right: 4%;
  position: relative;
  font-weight: 700;
  color: #333;
}


.cont03 .co03_01 .area_btn p.link_p a:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 100%;
  height: 1px;
  background: #333;
  transform: scale(0, 1);
  transform-origin: left;
  transition: 0.4s;
}

.cont03 .co03_01 .area_btn p.link_p a:hover {
  color: #e88383;
}

.cont03 .co03_01 .area_btn p.link_p a:hover:before {
  transform: scale(1);
}




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

/*--------------------------------------------------------------------------
 cont01だよ
---------------------------------------------------------------------------*/

.cont01 {
  width: 90%;
  margin: auto auto 15%;
}

.cont01 .co01_0 {
  max-width: 1280px;
  margin: auto;
}

.cont01 .sm_d {
  color: #bfbfbf;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 2.8vw;
  padding: 7% 0 0.5%;
}

.cont01 h1 {
  color: #333;
  line-height: 1.8em;
  letter-spacing: 0.1em;
  font-size: 3.8vw;
  padding-bottom: 4%;
}

.cont01 .co01_in {
  width: 90%;
  margin: auto;
}

.cont01 .co01_in h2 {
  color: #333;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 3.8vw;
  padding: 7% 0 0.5em;
  text-align: left;
}

.cont01 .co01_in p {
  color: #808080;
  line-height: 1.9em;
  letter-spacing: 0.2em;
  font-size: 2.8vw;
  padding: 1% 0em 3em;
}

.cont01 .co01_in ul {
 max-width: 1490px;
 margin: 0 auto 8%;
 letter-spacing: -5px;
 font-size: 0;
 overflow: visible;
}

.cont01 .co01_in ul li {
 margin: 1.66%;
 display:inline-block;*display:inline;*zoom:1;
 vertical-align: middle;
}

.cont01 .co01_in ul li img {
  width: 100%;
  max-width: none;
  height: auto;
  max-height: none;
  box-shadow: 3px 6px 10px rgba(0,0,0,0.2);
}

.cont01 .co01_in .close {
 width: 90%;
 max-width: 280px;
 height: 50px;
 margin: 60px auto 0;
 display: block;
 color: #FFF;
 font-size: 14px;
 background-color: #333 !important;
 -webkit-border-radius: 25px;
         border-radius: 25px;
 position: relative;
 -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
     -ms-transition: all 0.4s;
      -o-transition: all 0.4s;
         transition: all 0.4s;
}


/**************************************************************

cont02だよ

**************************************************************/

.cont02 {}


.cont02::before {
    content: "";
    width: 100%;
    height: 250vw;
    display: block;
    background: #fff8f6;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.cont02 .co02_01 {
  margin: 4% auto 7%;
}

.cont02 .co02_01 h2 {
  color: #c7887f;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 3.2vw;
  padding: 13% 0 6%;
}

.cont02 .co02_01 .co02_01in {}

.cont02 .co02_01 .co02_01in .co02_01_l {
  float: none;
  width: 80%;
  margin: 6% auto 10%;
  padding-left: 0%;
}

.cont02 .co02_01 .co02_01in .co02_01_r {
  float: none;
  width: 80%;
  margin: 6% auto 10%;
  padding-right: 0%;
}

.cont02 .co02_01 .co02_01in .co02_01_r .pimg,
.cont02 .co02_01 .co02_01in .co02_01_l .pimg {
  position: relative;
  margin-bottom: 5%;
}

.cont02 .co02_01 .co02_01in .co02_01_l .pimg #abs_img01 {
  position: absolute;
  top: 15%;
  left: -14%;
  width: 60%;
  margin: auto;
}

.cont02 .co02_01 .co02_01in .co02_01_r .pimg #abs_img02 {
  position: absolute;
  top: 65%;
  right: -14%;
  width: 60%;
  margin: auto;
}


.cont02 .co02_01 .co02_01in .co02_01_r .pimg a,
.cont02 .co02_01 .co02_01in .co02_01_l .pimg a {
  display: flex;
}

.cont02 .co02_01 .co02_01in .co02_01_r h3,
.cont02 .co02_01 .co02_01in .co02_01_l h3 {
  color: #333;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 4.5vw;
  padding-bottom: 4%;
}

.cont02 .co02_01 .co02_01in .co02_01_r h4,
.cont02 .co02_01 .co02_01in .co02_01_l h4 {
  color: #6d6d6d;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 3vw;
  padding-bottom: 4%;
}

.cont02 .co02_01 .co02_01in .co02_01_r p.hdt,
.cont02 .co02_01 .co02_01in .co02_01_l p.hdt {
  color: #333;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 4.2vw;
  padding-bottom: 7%;
  font-weight: 200;
}

.cont02 .co02_01 .co02_01in .co02_01_r p.link_p,
.cont02 .co02_01 .co02_01in .co02_01_l p.link_p {
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 3.2vw;
  padding-bottom: 4%;
  text-align: left;
}



/**************************************************************

cont03だよ

**************************************************************/

.cont03 {
  background: #fffff6;
}

.cont03 .co03_01 {
  padding: 0.5% 0 9% ;
}

.cont03 .co03_01 .sm_d {
  color: #333;
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 2.8vw;
  padding: 12% 0 0.5%;
}

.cont03 .co03_01 h2 {
  color: #333;
  line-height: 1.8em;
  letter-spacing: 0.1em;
  font-size: 4.5vw;
  padding-bottom: 0;
}

.cont03 .co03_01 h2 span {
  color: #ea959f;
}


.cont03 .co03_01 .showimg {
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
}

.cont03 .co03_01 .st_box {
  display: flex;
  flex-direction: row;
  align-content: space-between;
  flex-wrap: nowrap;
  margin: 5% auto 3%;
  overflow: hidden;
  width: 1200px;
}

.cont03 .co03_01 .st_box .stb_in {
  width: 98%;
  margin: 3% 1% 0;
}

.cont03 .co03_01 .st_box .stb_in a {}

.cont03 .co03_01 .st_box .stb_in a picture {
  display: inline-block;
  margin-bottom: 2%;
}

.cont03 .co03_01 .st_box .stb_in a picture img {
  max-width: 100%;
}

.cont03 .co03_01 .st_box .stb_in a h3 {
  color: #333;
  line-height: 1.7em;
  letter-spacing: 0.1em;
  font-size: 3vw;
}

.cont03 .co03_01 .st_box .stb_in a p {
  color: #333;
  line-height: 1.8em;
  letter-spacing: 0.1em;
  font-size: 3.5vw;
}


.cont03 .co03_01 .area_btn {
  margin: 3em auto 0;
}

.cont03 .co03_01 .area_btn p.link_p {
  line-height: 1.6em;
  letter-spacing: 0.1em;
  font-size: 3.2vw;
  padding-bottom: 4%;
  text-align: left;
}






}

