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

SP

-------------------------------- */
header{
  width: 100%;
}

#header{
  width: 100%;
  height: 80px;
  background:rgba(0,0,0,1);
}

#header .logo-area{
  color: #FFF;
  position: absolute;
  top:7px;
  left: 7px;
}

#header h1{
  font-size: 1.2rem;
  line-height: 1.5;
  font-weight: bold;
}

#header .head-nav{display: none;}

#header .sub-area{display: none;}

#nav-drawer {
  position: fixed;
  top:0px;
  right: 0px;
  z-index: 999;
}

#sp-header .logo{
  width: 250px;
  padding: 20px;
}

#nav-drawer button{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background: none;
  border-radius: 0;
  outline: none;
  z-index: 99;
}

.menu {
  position: fixed;
  top: 0;
  right: -85vw;
  width: 80vw;
  height: 100vh;
  background-color: #000;
  box-shadow: 0 0 5px 0 rgba(0,0,0, 0.5);
  transition: all .5s ease;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.menu--isOpen {
  position: fixed;
  right: 0;
  top:0;
  width: 60vw;
}

.menu__button {
  position: fixed;
  right: 10px;
  top: 16px;
  width: 50px;
  height: 50px;
  border-radius: 5px;
  border: none;
}

.menu__button span {
  display: block;
  width: 80%;
  margin: auto;
  height: 4px;
  background-color: #00a1c3;
  position: absolute;
  left: 0;
  right: 0;
  top: calc((100% - 4px)/2);
  border-radius: 3px;
  transition: .2s;
}

.menu__lineTop {
  transform: translateY(-10px);
}

.menu__lineMiddle {}

.menu__lineBottom {
  transform: translateY(10px);
}

.menu--isOpen .menu__lineTop {
  transform: rotate(45deg); 
  background-color: #00a1c3; 
}

.menu--isOpen .menu__lineMiddle {
  opacity: 0;
}

.menu--isOpen .menu__lineBottom {
  transform: rotate(-45deg);
  background-color: #00a1c3;  
}

.sp-menu{
  width: 100%;
  position: relative;
  top:36px;
}

.sp-menu ul{
  width: 100%;
  color: #00a1c3;
}

.sp-menu li{
  width: 100%;
  color: #00a1c3;
  border-top: 1px solid #333333;
}

.sp-menu li:last-child{
  border-top: 1px solid #333333;
  border-bottom: 1px solid #333333;
}

.sp-menu li a{
  display: block;
  padding: 20px 10px;
  color: #ffffff;
}


.sp-menu-title{
  font-size: 20px;
  color: #00a1c3;
  font-weight: bold;
  padding-left: 10px;
  margin-bottom: 30px;
}


#sp-gnavi-menu input {
  display: none;
}

#sp-gnavi-menu input[type="checkbox"]:checked + label + ul {
  display: block;
}

#sp-gnavi-menu input[type="checkbox"]:checked + label > i {
  transform: rotate(180deg);
}

#sp-gnavi-menu label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 8px;
  width: 100%;
}

#sp-gnavi-menu label span {
  font-size: 14px;
}
#sp-gnavi-menu .dropdown-content {
  display: none;
  background-color: #fff;
}

#sp-gnavi-menu .dropdown-content a {
  display: block;
  padding: 15px 15px;
  font-size: 14px;
  color: #00a1c3;
}


.tanso-main-title{
  font-size: 1.7rem;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
}

.tanso-wrap{
  width: 95%;
  margin:0 auto 0;
}

.btn-orange{
  width: 250px;
  margin:0 auto 0;
}

.btn-orange a{
  display: block;
  text-align: center;
  color: #FFF;
  background-color: #e88e37;
  border-radius: 40px;
  padding: 20px 0px;
}

.btn-orange a:hover{
  transform: scale(0.95);
}

.btn-gold{
  width: 250px;
  margin:0 auto 0;
}

.btn-gold a{
  display: block;
  text-align: center;
  color: #FFF;
  background-color: #b39a56;
  border-radius: 40px;
  padding: 20px 0px;
}

.btn-gold a:hover{
  transform: scale(0.95);
}

.btn-pink{
  width: 250px;
  margin:0 auto 0;
}

.btn-pink a{
  display: block;
  text-align: center;
  color: #FFF;
  background-color: #b35c56;
  border-radius: 40px;
  padding: 20px 0px;
}

.btn-pink a:hover{
  transform: scale(0.95);
}

#main-image{
  width: 100%;
  position: relative;
}

#main-image .flag{
  width: 100%;
  position: absolute;
  top:0;
  left: 0;
}

#main-image .flag img{
  width: 100%;
  height: auto;
}

#news{
  width: 100%;
  padding: 40px 0px;
  background-color: #f2f2f2;
}

#news .news-area{
  width: 90%;
  margin:0 auto 0;
}

#news ul.news-list{
  width: 100%;
  display:-ms-flexbox;
  display:-webkit-flex;
  display: flex;
  -ms-flex-wrap:wrap;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
  align-items: center;
}

#news ul.news-list li a{
  text-decoration: underline;
}

#news ul.news-list li:nth-of-type(1){
  width: 30%;
}

#news ul.news-list li:nth-of-type(2){
  width: 70%;
}

#news ul.news-list li:nth-of-type(3){
  width: 100%;
  display: block;
  line-height: 1.5;
  margin-top: 15px;
}

#news .icon-t_topic{
  font-size: 0.87rem;
  color: #FFF;
  text-align: center;
  background-color: #e9a23c;
  padding: 7px 10px;
  border-radius: 4px;
}

#news .icon-t_event{
  font-size: 0.87rem;
  color: #FFF;
  text-align: center;
  background-color: #4599ee;
  padding: 7px 10px;
  border-radius: 4px; 
}

#news .icon-t_news{
  font-size: 0.87rem;
  color: #FFF;
  text-align: center;
  background-color: #e06895;
  padding: 7px 10px;
  border-radius: 4px; 
}

#gaiyo{
  width: 100%;
  padding: 40px 0px;
  background-color: #e8e0d1;
}

#gaiyo table{
  width: 100%;
}

#gaiyo table tr{
  width: 100%;
}

#gaiyo table th{
  width: 100%;
  display: block;
  font-size: 1rem;
  line-height: 1.7;
  text-align: left;
  border-bottom: 1px solid #333;
  padding: 5px;
}

#gaiyo table td{
  width: 100%;
  display: block;
  font-size: 1rem;
  line-height: 1.7;
  padding: 10px;
}

#about{
  width: 100%;
  background-image: url(../img/bk_about.jpg);
  background-size: cover;
  background-position: center;
  padding: 40px 0px;
}

#about h2{
  font-size: 1rem;
  line-height: 1.5;
  color: #FFF;
}

#about h2 span{
  font-size: 2rem;
  font-weight: bold;
}

#about h3{
  font-size: 1.2rem;
  line-height: 1.3;
  font-weight: bold;
}

#about .about-area{
  width: 100%;
}


#about .about-area .left-photo{
  width: 100%;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  overflow: hidden;
}

#about .about-area .right-text{
  width: 100%;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #e8e0d1;
  padding: 20px; 
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  margin-bottom: 40px;
}


#about .about-area .right-photo{
  width: 100%;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  overflow: hidden;
}

#about .about-area .left-text{
  width: 100%;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #e8e0d1;
  padding: 20px; 
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  margin-bottom: 40px;
}


#service{
  width: 100%;
  background-image: url(../img/bk_service.jpg);
  background-size: cover;
  background-position: center;
  padding: 40px 0px;
}

#service h2{
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
}

#service h3{
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  margin:20px 0px 10px 0px;
}

#service p{
  font-size: 1rem;
  line-height: 1.5;
}

#service ul.service-list{
  width: 100%;
  display:-ms-flexbox;
  display:-webkit-flex;
  display: flex;
  -ms-flex-wrap:wrap;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
}

#service ul.service-list li{
  width: 100%;
  margin-bottom: 30px;
}


#service .service-image{
  display: block;
  border-radius: 8px;
  overflow: hidden;
}


#kameiten{
  width: 100%;
  padding: 80px 0px;
}

#kameiten h2{
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
}

#kameiten h3{
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 5px;
}

#kameiten ul.shop-list{
  width: 100%;
  display:-ms-flexbox;
  display:-webkit-flex;
  display: flex;
  -ms-flex-wrap:wrap;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
}

#kameiten ul.shop-list li{
  width: 100%;
  margin-bottom: 30px;
  border:1px solid #000;
  border-radius: 6px;
  overflow: hidden;
}

#kameiten .kameiten-image{
  width: 100%;
  transition: all .5s ease;
}

#kameiten .kameiten-image img{
  width: 100%;
  height: auto;
}

#kameiten .kameiten-image:hover{
  transform: scale(1.05);
}

#kameiten .shop-text{
  width: 100%;
  font-size: 0.8rem;
  line-height: 1.5;
  padding: 10px 20px; 
}

#tansoblog{
  width: 100%;
  line-height:1.5;
  background-image: url(../img/bk_blog.jpg);
  padding: 40px 0px;
}

#tansoblog h2{
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
}

#tansoblog h3{
  font-size: 1rem;
  line-height: 1.5;
  margin-top: 5px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#tansoblog ul.blog-list{
  width: 100%;
  display:-ms-flexbox;
  display:-webkit-flex;
  display: flex;
  -ms-flex-wrap:wrap;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
}

#tansoblog ul.blog-list li{
  width: 48.5%;
  margin-right: 3%;
  margin-bottom: 3%;
  border:1px solid #000;
  background-color: #FFF;
  border-radius: 6px;
  overflow: hidden;
}

#tansoblog ul.blog-list li:nth-of-type(2n){
  margin-right: 0;
}

#tansoblog .blog-image{
  width: 100%;
  transition: all .5s ease;
}

#tansoblog .blog-image img{
  width: 100%;
  height: auto;
}

#tansoblog .blog-image:hover{
  transform: scale(1.05);
}

#tansoblog .blog-text {
  width: 100%;
  font-size: 0.87rem;
  line-height: 1.5;
  padding: 10px;
}

#tansoblog .blog-text a{
  text-decoration: underline;
}

#tansoblog .blog-text a:hover{
  color: #b35c56;
}


#footer{
  width: 100%;
}

#footer .blue-area{
  width: 100%;
  font-size: 0.87rem;
  line-height: 1.5;
  background-color: #159fe6;
  padding: 20px 20px;
}

#footer .gray-area{
  width: 100%;
  font-size: 0.87rem;
  line-height: 1.5;
  color: #c9c9c9;
  background-color: #3b3c3b;
  padding: 24px 20px 20px 20px;
}

#footer .gray-area a{
  color: #c9c9c9;
  text-decoration: underline;
}

#footer ul.footmenu{
  width: 100%;
}

#footer ul.footmenu li{
  font-size: 1rem;
  margin-bottom: 20px;
}

#footer .copy{
  width: 100%;
  font-size: 12px;
  text-align: left;
  margin-top: 20px;
}


