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

@import url('https://fonts.googleapis.com/css?family=Poiret+One');
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);

/* 共通 */
.js-fade{ opacity: 0; transition: 1s; transform: translate(0,60px); -webkit-transform: translate(0,60px); }
.js-fade-in{ opacity: 1; transform: translate(0,0);	-webkit-transform: translate(0,0); }

@media screen and (min-width: 768px) {

html{ font-size: 62.5% }
body{ font-family: YuMincho, 'Yu Mincho', serif; color: #000000; background: url(../img/common/mainbg.png) left top repeat-y; background-size: 100% auto; }

*{ margin:0; padding:0; }
a{ color: inherit; text-decoration: none; }

/* common */
.poiret{ font-family: 'Poiret One', serif; }
.min-demi{ font-family: "游明朝", "YuMincho", serif; font-weight: bold; }
.inner{ max-width: 980px; margin: 0 auto;}
.clearfix::after{
  content: "";
  display: block;
  clear: both;
}
.sp{ display: none; }
.g{ font-family: YuGothic, 'Yu Gothic', sans-serif; }
.aln_c{ text-align: center; }
.aln_r{ text-align: right; }
.h2-title::before{ content: ""; background: url(../img/common/title_bg.png) left top repeat-x; display: block; width:104px; height: 13px; margin:0 auto;  }
.h2-title{ letter-spacing: 0.1em; font-size: 6.2rem;  font-weight: bold; text-align: center; margin-bottom: 5px;  clear: both;}
.h2-title_heading{font-size: 2.2rem;  font-weight: normal; text-align: center; margin-bottom: 30px; }
	

.more{clear: both;  text-align: center; }
.more img{ width: 36px; height: 23px; }
.fl_l{ float: left; }
.fl_r{ float: right; }
/* header */
.header{ padding: 0 0; background-color: #46195a; display: block;}
.logo-wrap{ float: left; display: block; min-height: 100%; font-size:0; line-height:0; }
.logo{ font-size: 4rem; color: #fff; font-weight: normal; font-family: 'Poiret One', serif; }
.header__nav{ float: right; }
/*
.header__nav__contact{  float: right; border-radius: 0 0 5px 5px / 0 0 5px 5px; background-color: #EEEEEE; display: block; padding: 10px 0 4px; width: 120px; margin-right: 14px;}
.header__nav__contact.current,.header__nav__contact:hover{ background-color: #f3dda6; }
.header__nav__contact_txt::before{ display: block; content: ""; height: 12px; background: url(../img/common/arrow_g_down.png) center top no-repeat; }
.header__nav__contact_txt{ color: #46195a; text-align: center; font-size: 1.6rem; }
*/
.header__nav__contact{ float:right; background:url("../img/top/contact_txt.jpg"); width:165px; height:48px; font-size:0; line-height:0; margin-right:14px; }
.header__nav-list{ float: right; padding-top: 30px; padding-bottom: 0; margin-bottom: 0;}
.header__nav-list-link{ color: #fff; font-size: 1.4rem; display: inline-block; margin-right: 17px; }
.header__nav-list-link:last-child{ margin-right: 14px; }
.header__nav-list-link.current,.header__nav-list-link:hover{ color: #453708; }

/* footer */
.footer{ position: relative; font-size: 1.4rem; padding-top: 65px; }
.pagetop{ position: absolute; top:20px; right: 40px; }
.pagetop img{ width:62px; 48px;  }
.footer-link-wrap{ list-style: none; margin-left: 20px; margin-bottom: 5px; }
.footer-link{  }
.footer-link::before{ content: url(../img/common/arrow_b_right.png); background-size: 6px 7px; display: inline-block;}
.footer-link.current{ color: #46195a; }
.footer-link.current::before{ content: url(../img/common/arrow_g_right.png); display: inline-block; }
.footer-bg_g{ background-color: #EEEEEE; padding: 20px; }
.copy{ background-color: #46195a; color: #fff; text-align: center; line-height: 50px; }

/* common */
.contents{ padding: 50px 0; }
.h2_wrap{ display: table; width: 100%; }
.h2-title_un{ display: table-cell; height: 204px; vertical-align: middle; font-size: 6.2rem; text-align: center; font-weight: normal; letter-spacing: 0.1em; }
/* Concept */
.h2-title_un.concept{ background: url(../img/top/background _img2.JPG) center top no-repeat;}
.concept_txt01{ font-size: 2.4rem; margin-bottom: 17px; text-align: center; } 
.concept_txt02{ font-size: 1.8rem; margin-bottom: 36px; text-align: center; } 

/* menu */
.h2-title_un.menu{ background: url(../img/top/background _img3.jpg) center top no-repeat; }
.h3-border{ overflow: hidden; text-align: center; font-weight:normal; font-size: 5.1rem; margin-bottom: 20px;}
.h3-border__inner{ display: inline-block; padding: 0 0.5em; position: relative; }
.h3-border__inner::before,.h3-border__inner::after{ background: url(../img/common/title_bg.png) center center repeat-x; content: ""; width: 99em;  height: 13px; position: absolute; top: 50%; }
.h3-border__inner::before{ left: 100%; }
.h3-border__inner::after{ right: 100%; }
.h3_border__fontsmall{ font-size: 1.6rem;}
.h4-menu{ font-size: 2.2rem; }
.h4-menu::before{ content: "◆"; color:#46195a; margin-right: 9px; }
.menu-title{ margin-left: 30px; color: #46195a; font-size: 2.2rem; margin-bottom: 4px;}
.menu-list-wrap{ list-style: none; margin-left:30px; }
.menu-list{ display: inline-block; font-size: 1.5rem; text-align: center; width: 65px; background-color: #928747; color: #fff; margin-right: 7px; border-radius: 15px; letter-spacing: -0.1em; margin-bottom:7px; }
.menu-list_big{ display: inline-block; font-size: 1.5rem; text-align: center; width: 125px; background-color: #928747; color: #fff; margin-right: 7px; border-radius: 15px; letter-spacing: -0.1em; margin-bottom:7px; }
.menu-list_fit{ display: inline-block; font-size: 1.5rem; text-align: center; padding: 0 1em; background-color: #928747; color: #fff; margin-right: 7px; border-radius: 15px; letter-spacing: -0.1em; margin-bottom:7px; }
.menu-txt{ font-size: 1.6rem; margin-left: 30px; margin-bottom: 30px; }
.menu-img-list_wrap{ list-style: none; margin-bottom: 30px; }
.menu-img-list{ float: left; width: 314px; margin-right: 19px; }
.menu-img-list:last-child{ margin-right: 0; }
.menu-border{ margin-left: 30px; border-bottom: 1px solid #46195a; border-top: 1px solid #46195a; color: #46195a; font-size: 2.2rem;  margin-bottom: 8px; line-height: 2;}
.caution{ color: #B20000; margin-left: 2em; }

/* questions */
.h2-title_un.questions{ background: url(../img/questions/h2_bg_questions.jpg) center top no-repeat;}
.q_box{ padding: 30px 0 40px 20px;  background: url(../img/questions/questions_border_bottom.jpg) left bottom repeat-x; }
.q_box:last-child{ margin-bottom: 20px;}
.q_box:first-child{ padding-top: 0; }
.q_box__q{ display: table; font-size: 1.6rem;}
.q_box__q span,.q_box__a span{ display: table-cell; vertical-align: middle; padding-left: 14px; }
.q_box__q::before{ display: table-cell; background: url(../img/questions/icon_q.gif) left top no-repeat; background-size: 48px 48px; height: 48px; width:48px;  content: ""; }
.q_box__a{ display: table; font-size: 1.6rem; vertical-align: middle; padding-top: 20px;  }
.q_box__a::before{ display: table-cell; background: url(../img/questions/icon_a.gif) left top no-repeat; background-size: 48px 48px; height: 48px; width:48px;  content: ""; }
.q_txt{ font-size: 1.6rem; }

/* contact */
.h2-title_un.contact{ background: url(../img/contact/h2_bg_contact.jpg) center top no-repeat;}
.contact__read{ background-color: #DFE6EE; padding: 12px; font-size: 1.6rem; margin-bottom: 7px; box-sizing: border-box; }
.contact__wrap { font-size: 1.6rem; width: 100%; display: table; }
.contact__txt{ width: 320px; padding: 15px 0; vertical-align: top; display: table-cell; }
.contact__txt_02{ width: 5em; padding: 15px 8px 0 0; vertical-align: top; display: table-cell; }
.contact__formparts{ padding: 15px 0; display: table-cell; }
.contact__txt_small{  width: 320px; font-size: 1.2rem; padding: 15px 0; vertical-align: top; display: table-cell; }
.text{ padding: 7px; width: 100%; box-sizing: border-box; }
.text02,.text03,.text04{ padding: 7px; margin-right: 5px; margin-bottom: 7px; }
.text02 + .text02{ margin-left:8px; }
.text03,.text04{ width: 100%; }
.textarea{ padding: 7px; width: 100%; box-sizing: border-box; }
.radio{ margin-right: 5px; }
.radio + .radio{ margin-left:8px; }
.input-button{ border-style: none; width: 292px; background: #46195a url(../img/common/arrow_w_right_db.png) right 15px center no-repeat; background-size: 9px 8px; font-size:1.6rem; text-align: center; color: #fff; line-height:60px; margin: 0 auto; display:block; }

/* privacy */
.h2-title_un.privacy{ background:none; }
.privacy__txt{ font-size: 1.6rem; margin-bottom: 30px; } 
.privacy__button{ width: 292px; background: #CCCCCC url(../img/common/arrow_b_right_db.png) right 15px center no-repeat; background-size: 9px 10px; font-size:1.6rem; text-align: center; color: #000; line-height:60px; margin: 0 auto; display:block; }
 }

@media screen and (max-width: 767px) { 
	
	
html{ font-size: 31.25% }
body{ font-family: "Sawarabi Mincho"; color: #000000; background: url(../img/common/mainbg.png) left top repeat-y; background-size: 100% auto; }

*{ margin:0; padding:0; }
a{ color: inherit; text-decoration: none; }

	
/* common */
.maxwidth__img{ max-width: 100%; }
.maxwidth__img01{float: left; margin: 0 0 0 2%; height:50px; }
.maxwidth__img02{ float: right;}
.pc{ display: none; }
.poiret{ font-family: 'Poiret One', serif; }
.min-demi{ font-family: "Sawarabi Mincho";  font-weight: bold; }
.clearfix::after{
  content: "";
  display: block;
  clear: both;
}
.lh1{ line-height: 1; }
.g{ font-family: YuGothic, 'Yu Gothic', sans-serif; }
.aln_c{ text-align: center; }
.h2-title::before{ content: ""; background: url(../img/sp/common/title_bg.png) left top repeat-x; background-size: 1px 13px; display: block; width:104px; height: 14px; margin:0 auto;  }
.h2-title{ letter-spacing: 0.1em; font-size: 6.2rem;  font-weight: bold; text-align: center; margin-bottom: 5px;  clear: both; }
.h2-title_heading{font-size: 2.6rem;  font-weight: normal; text-align: center; margin-bottom: 30px; }
	

.more{width: 800px; text-align: center; margin-bottom: 7px;}
.more img{ width: 46px; height: 36px; }
.mb10{ margin-bottom: 10px; }
/* header */
.header{ background-color: #46195a; height: 50px; width: 100%;}
.logo-wrap{ width: 100%;}
.logo{ font-size: 5.7rem; color: #fff; font-weight: normal;  margin: 0 0 5px 5px; line-height: 1.2; }
.menu{ float: right; height: 39px; }
.header__nav_sp{ position:fixed; top:50px; left:0; width:100%; background: rgba(0,0,0,0.50); overflow: hidden; z-index: 100; }
.header__nav-list-link_sp{ font-size: 2.4rem; display: block; line-height: 42px; background: #fff url(../img/sp/common/arrow_g_right.png) right 10px center no-repeat; background-size:6px 10px;  border-bottom: 1px solid #46195a; padding-left: 7px;}
.header__nav-list-link_sp:last-child{ border-bottom:none; }

/* footer */
.footer{ position: relative; font-size: 2.4rem; padding-top: 20px; }
.pagetop{ position: absolute; top:6px; right: 10px; }
.pagetop img{ width:37px; 20px;  }
.footer-link-wrap{ list-style: none; margin-left: 20px; margin-bottom: 5px; }
.footer-link{  }
.footer-link::before{ content:""; background: url(../img/common/arrow_b_right.png) left center no-repeat; width: 5px; height: 6px; background-size: 5px 6px; display: inline-block; margin-right:5px;}
.footer-bg_g{ background-color: #EEEEEE; padding: 20px; }
.copy{ background-color: #46195a; color: #fff; text-align: center; line-height: 30px; }


/* common */
.contents{ padding: 30px 10px; }
.h2_wrap{ display: table; width: 100%; }
.h2-title_un{ display: table-cell; height: 102px; vertical-align: middle; font-size: 7.4rem; text-align: center; font-weight: normal; letter-spacing: 0.1em; width: 100%; }
/* Concept */
.h2-title_un.concept{ background: url(../img/sp/top/sp_background _img2.jpg) right top no-repeat; background-size: 100% auto;}
.concept_txt01{ font-size: 3.2rem; margin-bottom: 17px; text-align: center; } 
.concept_txt02{ font-size: 2.4rem; margin-bottom: 36px; text-align: center; } 

/* menu */
.h2-title_un.menu{ background: url(../img/sp/top/sp_background _img3.jpg) center top no-repeat; background-size: 100% auto; }
.h3-border{ overflow: hidden; text-align: center; font-weight:normal; font-size: 6.6rem; margin-bottom: 10px; line-height: 1.4;}
.h3-border__inner{ display: inline-block; padding: 0 0.5em; position: relative; }
.h3-border__inner::before,.h3-border__inner::after{ background:url(../img/sp/common/title_bg.png) left top repeat-x; background-size: 1px 8px; content: ""; width: 99em;  height: 7px; position: absolute; top: 50%; }
.h3-border__inner::before{ left: 100%; }
.h3-border__inner::after{ right: 100%; }
.h3_border__fontsmall{ font-size: 2.4rem;}
.h4-menu{ font-size: 3rem; }
.h4-menu::before{ content: "◆"; color:#46195a; margin-right: 6px; }
.menu-title{ color: #46195a; font-size: 3rem; margin-bottom: 4px;}
.menu-list-wrap{ list-style: none; }
.menu-list{ display: inline-block; font-size: 2.4rem ; text-align: center; width: 65px; background-color: #928747; color: #fff; margin-right: 7px; border-radius: 15px; letter-spacing: -0.1em; margin-bottom:7px; }
.menu-list_big{ display: inline-block; font-size: 2.4rem; text-align: center; width: 125px; background-color: #928747; color: #fff; margin-right: 7px; border-radius: 15px; letter-spacing: -0.1em; margin-bottom:7px; }
.menu-list_fit{ display: inline-block; font-size: 2.4rem; text-align: center; padding: 0 1em; background-color: #928747; color: #fff; margin-right: 7px; border-radius: 15px; letter-spacing: -0.1em; margin-bottom:7px; }
.menu-txt{ font-size: 2.4rem; margin-bottom: 15px; }
.menu-img-list_wrap{ list-style: none;  margin: 0 -10px 15px 0; }
.menu-img-list{ float: left; width: 50%; padding-right: 10px; box-sizing: border-box; }
.menu-img-list img{ width: 100%; height: auto; }
.menu-border{ border-top: 1px solid #46195a; color: #46195a; font-size: 3rem;  margin-bottom: 8px; line-height: 2;}
.caution{ color: #B20000; margin-left: 2em; }

/* questions */
.h2-title_un.questions{ background: url(../img/sp/questions/h2_bg_questions.jpg) right top no-repeat; background-size: 100% auto;}
.q_box{ padding: 20px 0 27px;  background: url(../img/sp/questions/questions_border_bottom.jpg) left bottom repeat-x; background-size: 1px 7px; }
.q_box:last-child{ margin-bottom: 20px;}
.q_box:first-child{ padding-top: 0; }
.q_box__q{ display: table; font-size: 2.4rem;}
.q_box__q span,.q_box__a span{ display: table-cell; vertical-align: middle; padding-left: 10px; }
.q_box__q::before{ display: table-cell; background: url(../img/questions/icon_q.gif) left top no-repeat; height: 32px; width:32px; background-size: 32px 32px; content: ""; }
.q_box__a{ display: table; font-size: 2.4rem; vertical-align: middle; padding-top: 20px;  }
.q_box__a::before{ display: table-cell; background: url(../img/questions/icon_a.gif) left top no-repeat; height: 32px; width:32px; background-size: 32px 32px; content: ""; }
.q_txt{ font-size: 2.4rem; }

/* contact */
.h2-title_un.contact{ background: url(../img/sp/contact/h2_bg_contact.jpg) right top no-repeat; background-size: 100% auto;}
.contact__read{ background-color: #DFE6EE; padding: 12px; font-size: 2.4rem; margin-bottom: 14px; box-sizing: border-box; }
.contact__form { font-size: 2.4rem; width: 100%; }
.contact__txt{ font-size: 2.4rem; margin-bottom: 8px; }
.contact__txt_02{ font-size: 2.4rem; margin-bottom: 8px; }
.contact__formparts{ font-size: 2.4rem; margin-bottom: 8px; }
.contact__txt_small{ font-size: 2.4rem; margin-bottom: 8px; }
.text{ padding: 7px; width: 100%; box-sizing: border-box; }
.text02{ padding: 7px; margin-right: 5px; margin-bottom: 7px; }
.text02 + .text02{ margin-left:8px; }
.text03{ padding: 7px; width: 8em;}
.text04{ padding: 7px; width: 100%; box-sizing: border-box; }
.textarea{ padding: 7px; width: 100%; box-sizing: border-box; }
.radio{ margin-right: 5px; }
.radio + .radio{ margin-left:8px; }
.input-button{ border-style: none; width: 171px; background: #46195a url(../img/sp/common/arrow_w_right_db.png) right 15px center no-repeat; background-size: 6px 7px;  font-size:2.4rem; text-align: center; color: #fff; line-height:40px; margin: 0 auto; display:block; }

/* privacy */
.h2-title_un.privacy{ background:none; }
.privacy__txt{ font-size: 2.4rem; margin-bottom: 30px; } 
.privacy__button{ width: 171px; background: #CCCCCC url(../img/sp/common/arrow_b_right_db.png) right 15px center no-repeat; background-size: 6px 7px;  font-size:2.4rem; text-align: center; color: #000; line-height:40px; margin: 0 auto; display:block; }

}
