@charset "utf-8";
/*  style　[  Smart Phone ]
=================================================================== */
/* ～767px(xs) ____________________________________________________ */
@media screen and (max-width: 767px) {
    .xs-block {
    display: block;
  }
  .xs-space {
    margin-left: 1em;
  }
  
  .table-xs th {
    display: block;
    width: 100%;
  }
  .table-xs td {
    display: block;
    width: 100%;
  }
  .hidden-xs {
    display: none;
  }
  
  .container-lg {
    padding: 0;
  }
/*----------------------------------------------
   header
---------------------------------------------*/

.header-box h1 img {
	width: 100px;
	margin: 15px 0 0 10px;
}
 header.scroll-nav .header-box h1 {
  display: block;
}
.header-right {
  display: flex;
  justify-content: flex-end;
  width: 50%;
}
/* スクロールして「scroll-navクラス」がついたときのヘッダーデザイン */
header.scroll-nav {
  /* 余白を狭くする 
  padding: 10px 15px;*/
  /* 背景を白にする */
  background: none;
  /* コンテンツの背景が白でもナビゲーションだと分かりやすいように影をつける */
  box-shadow: none;
}


/*----------------------------------------------
   first-view
---------------------------------------------*/



/*----------------------------------------------
   section
---------------------------------------------*/

.page-item {
  padding: 3rem 3rem 6rem 3rem;
  width: 100%;
}




.article-header {
  width: 100%;
  position: relative;
  height: auto;
}







/*----------------------------------------------
   見出し
---------------------------------------------*/
h2.page-h2 {
  font-size: 3rem;
  padding: 20px 0;
}

h2.page-h2 span.en {
  font-family: "Carattere", cursive;
  display: block;
  letter-spacing: 5px;
}

h3.ttl-h3 {
  font-size: 1.3em;
	margin: 1.5em 0 1em 0;
}
h4 {
  font-size: 1.3em;
}



}

 @media only screen and (max-width: 599px) {
    html {
      font-size: 50%;
    }
	
	/* h3 */
.ttl-h3 {
  font-size: 1.1em;
}



/*----------------------------------------------
   lead
---------------------------------------------*/
.lead-text {
  display: table;
  text-align: center;
  font-size: 1em;
  line-height: 1.7;
  margin: 0 auto;
}




/* map */
#map {
  background: url(../images/bg-map-sp.jpg) center bottom;
  padding: 50px 0;
}
.map-box h2 {
  writing-mode: horizontal-tb;
  margin: 20px 0 0 0;
  font-size: 1.3em;
  width: 100%;
  text-align: center;
  text-shadow:  2px  2px 10px #fff ,
       -2px  2px 10px #fff ,
        2px -2px 10px #fff ,
       -2px -2px 10px #fff;
}
.map-box .map-img {
  width: 80%;
}


 }



/*----------------------------------------------
   480px以下
  ---------------------------------------------*/
@media screen and (max-width: 480px) {
  .footer-box h2 {
    font-size: 2.3rem;
    text-align: center;
  }
address {
  font-size: 1.8rem;
}
.copy {
  font-size: 1rem;
}
}


