@charset "utf-8";

/* common ---------------- */

.inner {z-index: 0;}/*スタッキングコンテキスト*/

/* wrapper */
#wrapper { background-color: #eee3de; background-image: url(/img/bg.png); overflow: hidden; }

/* header */
#header .sitename { width: 30%; max-width: 180px; }

/*slider*/
.slick-arrow { position: absolute; top: 50%; width: 30px; height: 30px; z-index: 999; text-indent: -9999px; background: #fff; border: none; opacity: 1; border-radius: 50%; cursor: pointer; -webkit-transform: translateY(-50%); transform: translateY(-50%); -webkit-transition: all .3s; transition: all .3s; }
.slick-prev { left: -1em; }
.slick-next { right: -1em; }
.slick-arrow:before { content: ""; position: absolute; top: 50%; right: 12px; width: 12px; height: 12px; margin-top: -6px; opacity: 1; border-top: 1px solid #6d2b39; border-right: 1px solid #6d2b39; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.slick-arrow.slick-prev:before {  right: auto;  left: 12px;  -webkit-transform: rotate(-135deg);  transform: rotate(-135deg); }

/* main */
.pageTitle { position: absolute;  top: 0;  left: 0px;  width: 53%;  height: 400px;  background-color: #6d2b39; }
.pageTitle span { display: block; color: #fff; line-height: 1.5; }
.pageTitle .en { font-size: 5em; letter-spacing: 4px; }
.pageTitle .honoka { font-size: 1.4em; }
.pic { position: absolute;  right: 0px;  top: 0px;  height: 450px;  width: 47%;  background-position: center center;  background-repeat: no-repeat;  background-size: cover; }

#quality .pic{ background-image:url(../img/quality/pagetitle.jpg) ; }
#flow .pic{ background-image:url(../img/flow/pagetitle.jpg) ; }
#catalog .pic{ background-image:url(../img/catalog/pagetitle.jpg) ; }
#catalog .pic.pic2{ background-image:url(../img/catalog/pagetitle2.jpg) ; background-position:center left; }
#plan .pic{ background-image:url(../img/plan/pagetitle.jpg) ; }
#faq .pic{ background-image:url(../img/faq/pagetitle.jpg) ; }
#blog .pic{ background-image:url(../img/blog/pagetitle.jpg) ; }
#company .pic{ background-image:url(../img/company/pagetitle.jpg) ; }
#law .pic{ background-image:url(../img/law/pagetitle.jpg) ; }
#sitemap .pic{ background-image:url(../img/sitemap/pagetitle.jpg) ; }
#contact .pic,#booking .pic{ background-image:url(../img/contact/pagetitle.jpg) ; }
#privacy .pic{ background-image:url(../img/contact/pagetitle.jpg) ; }
#calendar .pic{ background-image:url(../img/calendar/pagetitle.jpg) ; background-position:center left; }

/* pan */
#pan { padding-top:25px; font-size: .85em; color:#3F1100; }
#pan li{ float:left;}
#pan li:after{ content:"　>　"; }
#pan li:last-child:after{ content:" "; }

/* contents */
#contents { position: relative; padding:60vw 0 10em; background: url(../img/bg_contents.png) no-repeat right bottom; background-size: 30%; }
#contents::before { content: "";  position: absolute;  top: 50vw;  left: -7%;  width: 30%;  height: 17%;  max-height: 237px;  max-width: 300px;  background: url(../img/bg_pagetitle.png) no-repeat 0 0 / 55%; }

/* タイトル */
.subTitle{ margin: 3em auto 1em;  text-align: center;  font-size: 1.5em; }
.subTitle .honoka { position: relative; }
.subTitle .honoka::before { content: ''; position: absolute; top:-.6em; left:-.6em; width: 85px; height: 75px; background-image:url(../img/subttl_icon.png); background-repeat: no-repeat; }
.conTitle { margin-top: 2em; padding: .5em 1em; font-family: serif; font-weight: bold; font-size: 1.1em; background: #c4a6a8; }
.secTitle { margin: 2em auto 1.5em; font-family: 'honoka',serif; font-size: 1.25em; border-bottom: 2px solid #b36371; }

/* タブ切替 */
.tabNav li { width: 100%; margin: auto 0.8% 1.5%; padding: 1em; text-align: center; background: #c4a6a8; position: relative; cursor: pointer; }
.tabNav li a { display:block; }
.tabNav li span { position: relative; padding-right: 1em; }
.tabNav li span::before { content: ""; position: absolute; top: 50%; right: -.5em; width: 7px;  height: 7px; margin-top: -5px; border-right: 1px solid; border-bottom: 1px solid; -webkit-transform: rotate( 45deg ); transform: rotate( 45deg ); }

/*装飾box*/
.deco-box { position: relative; background: #f0dbdb; margin: 6rem 3rem; padding: 2.2rem 6rem; color: #2b0b00;}
.deco-box::before { content: ''; position: absolute; z-index: -1; top: -3rem; left: -3rem; height: 100%; width: 30% ; background: #6d2b3a; }
.deco-box::after { content: ''; position: absolute; top: -2.5rem; left: -2.5rem; width: 9em; height: 10em; background: url(/img/deco_box.png) no-repeat; background-size: contain ;}
.deco-box>.ttl { font-size: 1.6rem; }
.deco-box>.ttl>.en { display: block; position: absolute; z-index: 1; top: -1em; left: 0; width: 100%; margin: auto; font-size: 5rem; color: #ce818f; letter-spacing: 1px; }
.deco-box>.box-lead { margin: 1rem 0 1.5rem; padding: 1.5rem 0 ; border-bottom: 2px solid #f8eded;}

/*お問い合わせボタン*/
.contactbox .button { width: 16em ; max-width: 80%; padding: 0; line-height: 3rem; text-align: center; color: #fff; background-color: #b36371; border: none;}
.contactbox .button:hover { background-color: #6d2b39;}
.contactbox .button::before { display: inline-block; width: 1em; height: 1em; margin-right: 2em; background: url(/img/icon_mail.png) no-repeat left bottom; background-size: contain; content: ''; }

/*特徴・魅力-----------------*/
#quality #contents { padding-bottom: 0; }
#quality .subTitle { font-size: 1.5em; }
#quality .secBox { margin-top: 5.5em; }
#quality .title { font-size: 1.15em; }

#quality .lead .title { font-size: 1.6em; color: #a80931; line-height: 1.5; }
#quality .lead .title span { position: relative; }
#quality .lead .title > span::before { content: ""; position: absolute; top: -12%; right: -1.5em; width: 9vh; height: 7vh; max-height: 111px; max-width: 154px;  background: url(../img/quality/bg_lead01.png) no-repeat 0 0 / 100%; }
#quality .lead .title > span::after { content: ""; position: absolute; bottom: -.5em; left: -4.5em; width: 6vh; height: 6vh; max-height: 119px; max-width: 120px; background: url(../img/quality/bg_contents01.png) no-repeat 0 0 / 100%; }
#quality .lead p { margin: 0 auto; font-size: 1.2em; }
#quality .lead ul li span { padding: .5em; font-size: 1.35em; background: url(../img/quality/bg_lead02.png) no-repeat 0 0 / 100%; }
#quality .lead ul li span:nth-child(3) { background: url(../img/quality/bg_lead03.png) no-repeat 0 0 / 100%; }

#quality .feature .title::before,#quality .charm .title::before,#quality .furisode .title::before{ position: absolute; top: -1.5em; left: 0; right: 0; font-family:'muralscript',serif; color: #cd909b; font-size: 3.5em; text-align: center; letter-spacing: 2.5px; }

#quality .feature { position: relative; width: 90%; margin-right: 0; margin-left: auto; padding: 1.5em 0 0; background-color: #e8dbdb; line-height: 2; }
#quality .feature .txt { width: 85%; }
#quality .feature .title::before { content: "Feature"; text-align: left; }
#quality .feature span.big { text-shadow: 0 0 #a70a31; color: #a70a31; }
/* #quality .feature figure {width: 74%; max-width: 371px; }
#quality .feature figure:nth-child(2) {width: 45%; max-width: 325px; } */

#quality .feature figure { position:absolute; width: 30%; max-width: 371px; top:-1.5em; right:0; bottom: auto; }
#quality .feature figure:nth-child(2) { width: 21%; max-width: 325px; top:25%; bottom:auto; left: -6em; }

#quality .charm { position: relative; margin-top: 8em; padding: 2em 0; }
#quality .charm::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 90%; height: 95%; background-color: #f0dbdb; z-index: 0; }
#quality .charm .title::before { content: "Charm Point"; top:-1.4em; }
#quality .charm ul li { color: #fff; }
#quality .charm ul li:nth-child(even)  { margin-left: 0; }
/* #quality .charm ul li + li { padding-top: 1%; }
#quality .charm ul li:nth-child(3) { padding: 5% 0; }
#quality .charm ul li:nth-child(4) { padding-top:4%; }
#quality .charm ul li:nth-child(5) { padding-top:2%; } */
#quality .charm ul li div { width: 95%; margin-top: 2em; padding: 5% 4% 19%; background-color: #816078; z-index: -1; position: relative; }
#quality .charm ul li div::before {  position: absolute;  background-image: url(../img/quality/bg_charm02.png);
    content: '';  display: block;  top: -1em;  right: -1em;  width: 4em;
    height: 4em;  background-size: 100%;  background-repeat: no-repeat; opacity: 0.65; }
#quality .charm ul li div::after { position: absolute; content: ''; display: block;
left: -1em; bottom: -2em; width: 96px; height: 84px; background-image: url(../img/quality/bg_charm04.png); background-repeat: no-repeat; opacity: 0.65; }
#quality .charm ul li:nth-child(even) div { background-color: #c17b88; }
#quality .charm ul li:nth-child(even) div::before { right: auto; left: -1em; background-image: url(../img/quality/bg_charm01.png); }
#quality .charm ul li:nth-child(even) div::after { right: -1em;  left: auto;  background-image: url(../img/quality/bg_charm03.png); }
#quality .charm ul li .honoka { padding-bottom: .5em; border-bottom: 2px solid #ffffff50; font-size: 1.5em; line-height: 1.4; text-shadow: 1px 0 #fff; }
#quality .charm ul li .honoka .big { font-size: 1.25em; }
#quality .charm ul li .honoka span.small { display: block; text-shadow: none; }
#quality .charm ul li p { font-size: .9em; }

#quality .bnr_area { margin: 0 auto 2em; padding: 3%; text-align: center; background-color: #e4d3d3; }
#quality .bnr_area .honoka { font-size: 1.45em; letter-spacing: 2px; }
#quality .bnr_area .honoka span { position: relative; }
#quality .bnr_area .honoka span::before,#quality .bnr_area .honoka span::after { content: "";  position: absolute;  width: 5vh;  height: 7vh;  max-height: 157px;  max-width: 146px; }
#quality .bnr_area .honoka span::before { left:-2em;  background: url(../img/quality/bg_bnrarea01.png) no-repeat 0 0 / 100%; }
#quality .bnr_area .honoka span::after { right:-2em;  background: url(../img/quality/bg_bnrarea02.png) no-repeat 0 0 / 100%; }
#quality .bnr_area .button { font-size: .8em; }

#quality .furisode { padding: 3em 0 6em; background-color: #892c41; }
#quality .furisode .title::before { content: "About Furisode"; }
#quality .furisode section { width: 95%; margin-left: auto; padding: 2em 0 1em; background-color: #f0dbdb; }
#quality .furisode section:nth-child(2) { margin-left: 0; }
#quality .furisode section + section { margin-top: 6%; }
#quality .furisode .lead { margin: 2em 0; letter-spacing: 2px; }
#quality .furisode .lead_ttl { font-size: 2em; color: #a80931; }
#quality .furisode .lead span { padding: 0 1em 0; font-size: 1.3em; background: url(../img/quality/bg_lead04.png) no-repeat 0 0 / 100%;}
#quality .furisode .box { padding: 5% 3%; background-color: #f6f2f0; }
#quality .furisode .box p { width: 90%; margin: auto; }

#quality .furisode .icon_ttl { position: absolute; }
#quality .furisode .subTitle .honoka::before { left: -1em; width: 82px;  height: 81px;  background-image: url(../img/quality/icon_ttl01.png);  z-index: -1; }

#quality .furisode .txt .circle { position: relative; margin: 1em 0 2em; }
#quality .furisode .txt .circle li { position: relative; display: block; width: 24%; color: #fff; font-size: 1.25em; text-align: center;  border-radius: 50%; background: #816078; }
#quality .furisode .txt .circle li:before { content: ""; display: block; padding-top: 100%; }
#quality .furisode .txt .circle li .vh_ctr {  left: 28%;  -webkit-transform: translate(-18%, -50%);  transform: translate(-18%, -50%);  line-height: 1; }
#quality .furisode .txt .circle li:nth-child(2) .vh_ctr { left: 34%; }
#quality .furisode .txt .circle li + li { margin-left: 2%; }
#quality .furisode .txt .icon_list01 { margin: 2.5em 0; line-height: 1.8; }
#quality .furisode .txt .icon_list01 li { position: relative; padding-left: 1em; font-size: 1.2em; letter-spacing: 1px; }
#quality .furisode .txt .icon_list01 li::before { content: ''; position: absolute; top:5px; width: 1em; height: 1em; margin-left: -1.1em; background: url(../img/quality/icon_ttl01.png) no-repeat 0 0 / 100%; z-index: -1; }

#quality .furisode .process .subTitle { margin-top: 1em; }
#quality .furisode .process .subTitle + p { font-size: 1.05em; }
#quality .furisode .process .subTitle + p .big { font-size: 1.2em; }

#quality .furisode .process .icon_list02 li { position: relative; height: 12em; padding: .3em 0 .5em; font-size: 1.1em; -ms-writing-mode: tb-rl; writing-mode: tb-rl; background-color: #bdaab8; z-index: -2; }
#quality .furisode .process .icon_list02 li:nth-child(n+5):nth-child(-n+8),
#quality .furisode .process .icon_list02 li:nth-child(n+10):nth-child(-n+11),
#quality .furisode .process .icon_list02 li:nth-child(n+13):nth-child(-n+14)
 { background-color: #d5a1a6; }
#quality .furisode .icon_list02 li:not(:last-child):after
{content: ""; position: absolute;  top: 0;  bottom: 0; left: 100%;  margin: auto; border-width: 5px 0 5px 6px; border-style: solid;  border-color: transparent transparent transparent #bdaab8;  width: 0; height: 0; }
#quality .furisode .process .icon_list02 li:nth-child(n+5):nth-child(-n+8):after,
#quality .furisode .process .icon_list02 li:nth-child(n+10):nth-child(-n+11):after,
#quality .furisode .process .icon_list02 li:nth-child(n+13):nth-child(-n+14):after
{ border-color: transparent transparent transparent #d5a1a6; }

#quality .furisode .process .icon_list02 li span { position: relative; width: 1.2em; font-family:'muralscript',serif;  font-style: italic;  font-weight:bold;  font-size: 1em;  text-align: center;  -ms-writing-mode: horizontal-tb; writing-mode: horizontal-tb; }
#quality .furisode .process .icon_list02 li span::before { content: ''; display: block; position: absolute;
top:4px; width: 1.2em; height: 1.2em; background: url(../img/quality/icon_ttl02.png) no-repeat 0 0 / 100%;
z-index: -1; }

#quality .furisode .process .process_list { margin: 2em 0; }
#quality .furisode .process .process_list li { margin: 1% 0; padding: 0 4%; background:#fff; z-index: -2; }
#quality .furisode .process .process_list li div { width: 67%; }
#quality .furisode .process .process_list .honoka { margin: .5em auto; padding-left: .34em; font-size: 1.25em; border-bottom: 2px solid #c4a6a8; }
#quality .furisode .process .process_list .honoka span {  position: relative; padding-right: .6em;  font-family: 'muralscript',serif;  font-style: italic; font-weight: bold;  font-size: 1.1em;  color: #fff; }
#quality .furisode .process .process_list .honoka span::before { content: ''; display: block; position: absolute; top: -3px; left: -6px; width: 1.4em; height: 1.4em; background: url(../img/quality/icon_ttl01.png) no-repeat 0 0 / 100%; z-index: -1; }
#quality .furisode .process .process_list li figure { margin-top: 15%; }

#quality .message { padding: 6% 0; background: url(../img/quality/bg_message.jpg); background-size: cover; }
#quality .message p{ width: 80%; margin: auto; padding: 3%; font-size: 1.15em; background: rgba(255, 255, 255, 0.7); letter-spacing: 0.5px; line-height: 1.7; }

#quality .furisode section { position: relative; }
#quality .charm::after,#quality .furisode .process::before {
    content: "";
    position: absolute;
    top: -3em;
    left: -3em;
    width: 11vh;
    height: 16vh;
    max-width: 292px;
    max-height: 398px;
    background: url(../img/quality/bg_contents02.png) no-repeat 0 0 / 100%;
}
#quality .furisode section::before,#quality .furisode .process::after {
    content: "";
    position: absolute;
    top: -7em;
    right: -1em;
    width: 11vh;
    height: 11vh;
    max-width: 176px;
    max-height: 172px;
    background: url(../img/quality/bg_contents01.png) no-repeat 0 0 / 100%;
}
#quality .furisode .process::after { top: auto; right: -3em; bottom:-3em; }


/*撮影プラン-----------------*/
#plan #contents { padding-bottom: 0; }
#plan .secBox { margin-top: 5.5em; }
#plan .title { font-size: 1.15em; }

#plan .lead { width: 95%; position: relative; margin: auto auto auto 0; padding: 2em 0 0; background-color: #e8dbdb; }
#plan .lead .title { font-size: 1.3em; filter: drop-shadow(1px 1px 10px #e8dbdb);}
#plan .lead p { line-height: 1.5; }
#plan a:hover{ color: #2b0b00; }

#plan .plan_nav,#plan .points,#plan .plan_label { position: relative; padding: 1.7em 0 3em; }
#plan .points { padding-bottom: 8em; }
#plan .plan_label { padding-bottom: 1em; }
#plan .plan_nav::before,#plan .points::before,#plan .plan_label::before{ position: absolute; top: -1em; left: 0; right: 0; font-family: 'muralscript',serif; color: #ce818f; font-size: 3.5em; text-align: center; letter-spacing: 1px; }

/* プランナビ */
#plan .plan_nav > div { padding: 0 6%; }
#plan .plan_nav > div::before { content: ""; position: absolute; top: -12%; right: -12%; width: 26%; height: 70%; max-height: 156px; max-width: 215px; background: url(../img/plan/bg_plannav01.png) no-repeat 0 0 / 80%; }
#plan .plan_nav > div::after { content: "";  position: absolute; bottom: -6%; left: -6%; width: 8vh; height: 7vh; max-height: 172px;  max-width: 175px; background: url(../img/plan/bg_plannav02.png) no-repeat 0 0 / 80%; }
#plan .plan_nav { background-color: #f0dbdb; }
#plan .plan_nav::before { content: "Special Photo Plan"; }
#plan .plan_nav ul li{ position: relative; width: 100%; }
#plan .plan_nav ul li .navTitle { margin-bottom: 1em; text-align: center; background: none; border-bottom:2px solid #e9c9cc;  }
#plan .plan_nav ul li a { display: block; position: relative; overflow: hidden;  width: 100%; }
#plan .plan_nav ul li figcaption{ display: grid; align-items: center; position: absolute; bottom: 0; width: 100%; height: 2.8em; color:#fff; background-color: #a13347; text-align: center; line-height: 1.3; overflow: hidden; }
#plan .plan_nav ul li:nth-child(2) figcaption{ background-color: #a67f9c; }

#plan .plan_nav ul:last-child li{ width: 46%; font-size: .85em; }
#plan .plan_nav ul:last-child li a { padding-top: 100%; }
#plan .plan_nav ul:last-child li img { position: absolute; top: 50%; left: 50%; max-width: 150%;   max-height: 150%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -webkit-transition: all .2s; transition: all .2s; }
#plan .plan_nav ul:last-child li:nth-child(1) figcaption{ background-color: #89ac75; }
#plan .plan_nav ul:last-child li:nth-child(2) figcaption{ background-color: #cb9a39; }
#plan .plan_nav ul:last-child li:nth-child(3) figcaption{ background-color: #cf7b8b; }
#plan .plan_nav ul:last-child li:nth-child(4) figcaption{ background-color: #7aa4c4; }

/* おすすめポイント */
#plan .points { padding-bottom: 8em; }
#plan .points::before { content: "Recommended Points"; }
#plan .points dl { margin-top: 5%; }
#plan .points dl dt { position: relative; }
#plan .points dl.accordion dt::after { content: ""; position: absolute; top: .3em; bottom: 0; right: 4%; margin: auto; width: 7px; height: 7px; border-bottom: 2px solid #fff; border-right: 2px solid #fff; -webkit-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg); }
#plan .points dl.accordion dt.active:after {  -webkit-transform: translateY(-50%) rotate(-135deg);  transform: translateY(-50%) rotate(-135deg); }
#plan .points > div { z-index: 1; }
#plan .points > div > dl dt { background-image: url(../img/plan/bg_points03.png); background-repeat: no-repeat; background-position: top right; background-position-x: 112%; background-position-y: 14%; }
#plan .points > div > dl:nth-child(2) dt { background-image: url(../img/plan/bg_points01.png); background-position-x: 107%; background-position-y: 16%; }
#plan .points > div > dl:nth-child(3) dt { background-image: url(../img/plan/bg_points02.png); background-position-x: 107%; background-position-y: 35%; }
#plan .points dl dt { padding: 2% 3%; font-family: 'honoka'; font-size: 1.15em; color: #fff; background-color: #865c7b; }

#plan .points dl dd { padding: 1% 3% 3%; background-color: #fff; }
#plan .points dl dd .num { font-size: 1.5em; line-height: 1.1em; }

#plan .points::after{ content: "";  display: block;  position: absolute; bottom: 0;  right: 0; width: 80%; height: 80%; background-color: #e8dbdb; }

/* プラン詳細 */
#plan .plan_label::before { text-align: left; }
#plan .planList { padding: 5em 0; background-color: #892c41; }
#plan .planList section { width: 95%; padding: 1em 0 3em; background-color: #f0dbdb; }
#plan .planList section + section { margin-top: 3em; }
#plan .planList:nth-child(odd) { background-color: #875779; }
#plan .planList:nth-child(odd) .plan_label::before { color: #c38db3; }
#plan .planList:nth-child(odd) section { background-color: #e8dbdb; }

#plan .plan_label .title { position: relative; margin-bottom: .5em; padding-left: 1em; color: #fff; font-size: 1.6em; }
#plan .plan_label .title::before { content: ''; position: absolute; top: 0; left: 0; width: 1.7em; height: 1.7em; background-image: url(../img/plan/planttl_icon.png); background-repeat: no-repeat; background-size: 100%; z-index: -1; }
#plan .lunch .plan_label::before { content: "Lunch and Photo"; }
#plan .studio .plan_label::before { content: "Studio Photo"; }
#plan .hotel .plan_label::before { content: "Hotel Photo"; }
#plan .kyotofree .plan_label::before { content: "Kyoto Free Photo"; }

#plan .planList section .title { margin-bottom: 1em; font-size: 1.4em; border-bottom: 2px solid #c4a6a8; }
#plan .planList section .title .small { font-size: .65em; }
#plan .planList section .title > div { margin-left: auto; }
#plan .planList section .plan_icon { margin-bottom: .3em; }
#plan .planList section .plan_icon span { position: relative; padding: .5em .5em .5em 2.5em; color: #fff; background-color: #ce818f; font-size: .85em; }
#plan .planList section .plan_icon span::before { content: '';  position: absolute;  top: 25%;  left: 1em;  width: 1.5em; height: 1.5em;  background-repeat: no-repeat;  background-size: 75%; }
#plan .planList.lunch .plan_icon span::before { background-image: url(../img/plan/lunch_icon.png); }
#plan .planList.studio .plan_icon span::before { background-image: url(../img/plan/studio_icon.png); }
#plan .planList.hotel .plan_icon span::before {  width: 1em; height: 1.3em; background-image: url(../img/plan/hotel_icon.png); }
#plan .planList.kyotofree .plan_icon span::before { top: 5%; width: 1em; height: 1.6em; background-image: url(../img/plan/kyotofree_icon.png); }

#plan .planList section .en{ margin: 0; font-size: 1.5em; letter-spacing: 1px; color: #a61234; }
#plan .planList section .txt { font-size: .95em; }
#plan .planList section .txt .honoka { font-size: 1.25em; line-height: 2.8;  }
#plan .planList section .txt .honoka span { padding: .5em; background-color: rgba(255,255,255,0.5); }
#plan .planList section .txt figure { width: 32%; margin-left: auto; }
#plan .planList section#eno .txt figure { width: 80%; }
#plan .planList section .img_item_nav li{ width: 19.2%; }
#plan .planList section .img_item_nav li + li { margin-left: .5em; }
#plan .planList section .setBox { position: relative; margin-top: 2em; margin-bottom: 1.5em; padding: 1.5em 0 2.5em; background-color: rgba(255,255,255,0.5); }
#plan .planList section .setBox::before { content: "";  position: absolute;  top: 1em;  left: 1em; width: 6vh; height: 6vh;  max-width: 132px;  max-height: 129px;  background: url(../img/plan/bg_setbox01.png) no-repeat 0 0 / 100%; }
#plan .planList section .setBox::after { content: "";  position: absolute;  bottom: 1em;  right: 1em; width: 6vh; height: 6vh; max-width: 132px;  max-height: 129px;   background: url(../img/plan/bg_setbox02.png) no-repeat 0 0 / 100%; }
#plan .planList section .setBox .inner { width: 80%; }
#plan .planList section .setBox .title { margin-top: 0; font-size: 1.3em; border-bottom: 2px solid #dcc6c9; }
#plan .planList section .setBox ul.flex li { position: relative; width: 100%; padding: .3em 0 .3em 2.5em; }
#plan .planList section .setBox ul.flex li::before { content: ''; position: absolute;  top: 0;  left: 0;  width: 2.1em; height: 2.1em;  background-repeat: no-repeat;  background-size: 100%; }
#plan .planList section .setBox .kome { margin-top: 1.5em; }

.planList #yoshikawa .setBox ul.flex li::before { background-image: url(../img/plan/setbox_icon01.png); }
.planList #rikichi .setBox ul.flex li::before { background-image: url(../img/plan/setbox_icon06.png); }
.studio.planList section .setBox ul.flex li::before { background-image: url(../img/plan/setbox_icon07.png); }
.planList #anahotel .setBox ul.flex li::before { background-image: url(../img/plan/setbox_icon07.png); }
.planList #kyotofree .setBox ul.flex li::before { background-image: url(../img/plan/setbox_icon08.png); }
#plan .planList section .setBox ul.flex li:nth-child(2)::before { background-image: url(../img/plan/setbox_icon02.png); }
#plan .planList section .setBox ul.flex li:nth-child(3)::before { background-image: url(../img/plan/setbox_icon03.png); }
#plan .planList section .setBox ul.flex li:nth-child(4)::before { background-image: url(../img/plan/setbox_icon04.png); }
#plan .planList section .setBox ul.flex li:nth-child(5)::before { background-image: url(../img/plan/setbox_icon05.png); }
#plan .planList section .setBox dt { width: 7em; }
#plan .planList section .setBox dd { flex: 1; }

#plan .planList #rikichi, #plan .planList #collection, #plan .planList #kyotofree { margin-left: auto; }
#plan .planList #rikichi > div, #plan .planList #collection > div, #plan .planList #kyotofree > div { margin-left: 5%; }

#plan .planList #kyotofree section .setBox { padding-bottom: 3.5em; }

#plan .planList { position: relative; }
#plan .planList::before{ content: "";  position: absolute; top: -3em; right: -3.5em; width: 11vh; height: 16vh; max-width: 292px;  max-height: 398px;  background: url(../img/plan/bg_planlist.png) no-repeat 0 0 / 100%; }
#plan .planList::after{ content: "";  position: absolute; bottom: 1em; left: -3.5em; width: 11vh; height: 16vh; max-width: 292px;  max-height: 398px;  background: url(../img/plan/bg_planlist.png) no-repeat 0 0 / 100%; }

/*ご利用の流れ-----------------*/
#flow section { margin-top: 4em; }
#flow .conTtl{ font-size: 2.9em; font-family: 'honoka',serif; }
#flow .rentalNav li:nth-child(3) { position: relative; background: #a71334; color: #fff; }
#flow .rentalNav li:nth-child(3)::before { position: absolute; content: 'おすすめ!'; top:0; left: .5em; font-size: .9em; color: #fff; }

.flowList > li{ position:relative; width:100%; margin-bottom: 4%; padding:2em 1em 0; font-size:15px; background: #fff; counter-increment: stepNum; border: 1px solid #b36371; }
.flowList > li.okini { width: 100%; }
.flowList .ttl { position: relative; font-size: 1.05em; text-align: center; }
.flowList .ttl::before { content: counter(stepNum); position: absolute; top: 0; bottom: 0; left: 0; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); font-size: 5rem; line-height: 1; font-size: 4em; font-style: italic; font-family: 'muralscript',serif; color: #a61234; }
.flowList .button3 { width: 100%; }
.flowList > li .flowIcon { width: 30%; margin: auto; position: relative; }
.flowList > li .flowIcon p { padding-top: 95%; background: #fff; border: 2px solid #b36371; border-radius: 100%; position: relative; }
.flowList > li .flowIcon img { width: 100%; }
#flow .okini{ padding:1.5em; }
#flow .okini:after { content: "";  position: absolute;  top: 100%;  left: 0;  right: 0; bottom: auto; margin: auto;  border-width: 10px 7px 0 7px;  border-style: solid;  border-color: #b36371 transparent transparent transparent;  width: 0;  height: 0; }
.flowList > li:not(:last-child):after { content: ""; position: absolute; top: 100%; left: 0; right:0; margin: auto;  border-width: 10px 7px 0 7px;  border-style: solid;   border-color: #b36371 transparent transparent transparent;  width: 0; height: 0; }
.info_data,.info_data2 { width: 100%; display: none; }
.info_data.active {  display: block; -webkit-animation: fadeIn 1.5s ease 0s 1 normal;  animation: fadeIn 1.5s ease 0s 1 normal; }
.info_data2.active {  display: flex; -webkit-animation: fadeIn 1.5s ease 0s 1 normal;  animation: fadeIn 1.5s ease 0s 1 normal; }
.flowList.info_data2.active {  padding: 0; }
.flowList > li.okini { counter-increment: none; }
.flowList.info_data2 .ttl.num7::before { content: '7'; }
.flowList.info_data2 .ttl.num8::before { content: '8'; }
.flowList.info_data2 .ttl.num9::before { content: '9'; }
.flowList.noOkini >li { width: 100%; }

#flow .tokyo_img,#flow .kyoto_img,#flow .jitaku_img,#flow .catalog_img,#flow .maedori_img,#flow .order_img{ position: relative; }
#flow figure  { position: relative; }
#flow figure::before { position: absolute; content: ''; top: -5%; left: -5%; width: 18%; height: 22%; background: url(/img/flow/bg_flow_point01.png) no-repeat; background-size: 95%; }
#flow figure::after { position: absolute; content: ''; bottom: -5%; right: -5%; width: 18%; height: 23%; background-size: 95%;  background-image: url(/img/flow/bg_flow_point02.png); background-repeat: no-repeat; }
#flow .lead{ position: absolute; top: 25%; left: 5%; filter: drop-shadow(1px 1px 10px #eee3de); }
#flow .order_img .lead  { top:20%; }
#flow .tokyo_img .lead,#flow .jitaku_img .lead,#flow .maedori_img .lead { top: 25%; right: 5%; left: auto; filter: drop-shadow(1px 1px 10px #fff); text-shadow: 0px 0 8px #e3c0bf5e; }
#flow .okiniList { width: 100%; }
#flow .okiniList li { width: 49%; }
#flow .okiniList .okini.active { background: #fff; }
#flow .okiniList .okini { margin:2% 0; background: #c4a6a8; border: 1px solid #b36371; position: relative; }

.bank { width: 100%; margin-top:1em; padding:2em; border:1px dashed #6d2b39; background: #e4d4d3; }
.bank h3 { text-align:center; font-size: 16px; font-weight:bold; color:#A51233;}

.btnList { margin-top: 2em; }
.btnList li {position: relative; width: 49%; margin-top: 2%; background: #000; }
.btnList li a { display: block; padding: 13% 0; overflow: hidden; color: #fff;
    position: relative;  z-index: 1; }
.btnList li h4 span { filter: drop-shadow(0 0 5px black); }
.btnList li h4 span.honoka { font-size: 2.1em; }
.btnList li .bg_img { position: absolute; z-index: -1; top: 0; right: 0; bottom: 0; left: 0;  width: 100%;
    height: 100%; background: no-repeat center / cover; background-position-y: 15%; opacity: 0.8; background-image: url(../img/flow/btn_catalog.jpg); }
.btnList li:nth-child(2) .bg_img { background-image: url(../img/flow/btn_calendar.jpg); }

/*振袖カタログ-----------------*/
#catalog .data_head { margin-bottom: 1rem; align-items: baseline; border-bottom: 2px solid #c4a6a8; }
#catalog .kimonoDetail .data_head { border: none;}

#catalog .data_head .Title { font-size: 1.6rem; }
#catalog h2.subTitle + p { margin:-3rem auto 3rem; font-size:1.25em; }

#catalog .data_body,#catalog .data_body .btn_catalog  { border-top: 2px solid #c4a6a8;padding-top: 1rem; margin-top: 1rem; }

#catalog .data_body .btn_catalog  { padding-top: 2rem; margin: 2rem auto 3rem; }

#catalog dl.price { margin: .5rem .8rem .2rem; font-size:.9rem }

#catalog dl.price>div.flex { align-items: baseline;}
#catalog dl.price>div.flex>dd { font-size: .75rem; }

/*ボタン類*/
#catalog a.btn_arrow { position: relative; display: block; padding: 1rem 2rem .8rem; max-width: 20rem; margin:1rem auto 1rem 0; color: #fff; background: #b36371;}
#catalog a.btn_arrow:hover { background: #be7a86;}
#catalog a.btn_arrow::after { content: ''; position: absolute; right: 1.6rem; bottom: 45%; width: 3rem; max-width: 20%; height: .4rem; border: 1px solid #fff; border-width: 0 2px 1px 0; transform: skewX(45deg); -webkit-transition: all .3s; transition: all .3s;}
#catalog a.btn_arrow:hover::after { right: 1rem; }

#catalog .data a.btn_arrow { padding-left: 3rem; }
#catalog .data a.btn_arrow::before{ content: ''; display: block; position: absolute; top: 0; bottom: 0; left: 1rem; margin: auto; width: 1.6rem; height: 1.6rem;}
#catalog .data a.btn_arrow.contact::before{ background: url(/img/icon_mail.svg) center no-repeat; background-size: contain; }
#catalog .data a.btn_arrow.rental::before{ background: url(/img/icon_heart.svg) center no-repeat; background-size: contain; }

#catalog a.btn_arrow.contact{ background: #865c7b;}
#catalog a.btn_arrow.contact:hover{ background: #996b8d; }

#catalog a>p.btn_arrow{ position: absolute; left: 0; right: 0; bottom: 0; width: 80%; padding: .6em 10%; margin: .5rem auto; color: #fff; background: #a61234; border: 1px solid #a61234 ; }
#catalog a>p.btn_arrow::after{ content: ''; position: absolute; right: 12%; bottom: 45%; width: 3rem; max-width: 20%; height: .4rem; border: 1px solid #fff; border-width: 0 2px 1px 0; transform: skewX(45deg); -webkit-transition: all .3s; transition: all .3s;}
#catalog a:hover>p.btn_arrow{ color: #a61234; background: #fff; }
#catalog a:hover>p.btn_arrow::after{ border-color: #a61234; right: 8%; }

/*カタログ一覧ページ-----------------*/
/*検索フォーム*/
#catalog .searchbox { background: #fff; margin: 2rem 0; padding: 3em 5%;}
#catalog form.search { margin: auto; }
#catalog form.search>h3 {font-size: 1.6em;}

#catalog form.search input {margin: .5rem; max-width: 80%;}
#catalog form.search input[name="h"] { width:5em; }

#catalog form.search dl::after {display: block; margin-top: -2px; width: 100%; border-bottom: 2px solid #f5edea;content: ''; }
#catalog form.search dt,#catalog form.search dd {border-bottom: 2px solid #f5edea; }
#catalog form.search dt { width:20%; min-width: 8em; padding: 1.5em 0; text-align: center; background:#f5edea; border-color: #fff; }
#catalog form.search dd { width:80%; max-width: calc(100% - 8em); padding: 1em 1.5em; }

#catalog form.search dd>p {margin: 0;}

#catalog form.search dd>.kome {margin-left: 2em;}
#catalog form.search dd>.kome>li {margin:0 0 .5em;}

#catalog form.search dd>.kome>li>a.arrow {padding:0 .4em; text-indent: 0; line-height: 1.2; border-bottom: 1px solid #2b0b00;}
#catalog form.search dd>.kome>li>a.arrow::after { content: ''; display: inline-block; border: solid; border-color: transparent #2b0b00; border-width:.32em 0 .32rem .8em; margin-left:.4em; margin-right:.2em; -webkit-transition:inherit; transition:inherit;}
#catalog form.search dd>.kome>li>a.arrow:hover { border-color: #a61234;}
#catalog form.search dd>.kome>li>a.arrow:hover::after { border-color: transparent #a61234; margin-left:.6rem; margin-right:0;}

#catalog .color>label{ min-width: 10em; align-items: center; }
#catalog .color>label>input{ order: -1; margin-right: .4em;}
#catalog .color>label::before{ display: inline-block; width: 1em; height: 1em; margin-right: .2em; content: ''; }
#catalog .color>.Red::before { background: #cd1125; }
#catalog .color>.Pink::before { background: #F58F98; }
#catalog .color>.Yellow::before { background: #edb651; }
#catalog .color>.Violet::before { background: #BE84B8; }
#catalog .color>.Blue::before { background: #0087d2; }
#catalog .color>.Green::before { background: #3EB370; }
#catalog .color>.White::before { background: #fff; border: 1px solid #ccc; }
#catalog .color>.Gray::before { background: #999999; }
#catalog .color>.Black::before { background: #000; }
#catalog .color>.Others::before { display: none;}

#catalog .submit { margin:2rem auto 1rem; }
#catalog .submit .button { min-width: 16rem; padding: 1rem 2rem; margin: 0; text-align: center; color: #fff; font-size: 1em; border: 1px solid #b36371; background: #b36371; z-index: 1; }
#catalog .submit .button:hover { color: #b36371; background: #fff; -webkit-transition: all .3s; transition: all .3s; }

/*一覧*/
#catalog .ex { margin:0; font-size:15px; text-align:center; }

.listKimono::after{ content: ''; width: 32%; height: 0; }
.listKimono>li { width:32%; margin: 2rem 0;}
.listKimono>li>a { display: block; height: 100%; position: relative; padding-bottom: 4rem;}
.listKimono>li>a:hover { color: inherit;}

#catalog .image { background: #fff; position: relative; height: 0; padding-bottom: 120%; overflow: hidden; color: #fff; }
#catalog .image>p { position: absolute; z-index: 1; margin: 0; /*padding:.5em 1.5em .4em;*/padding: .3em 1em .2em; font-size: .9rem; }

#catalog .image>p.code { background:#865c7ba6;}
#catalog .image>p.height { bottom: 0; right: 0; background: #b36371b6;  }
#catalog .image>figure { position: absolute; top: 0; bottom: 0; left: 0; right: 0; align-items: center;}
#catalog .image>figure>img { max-width: none; max-height: 100%; width: 80%; }

#catalog p.status::before {content:'※';}

/*ページ送り*/
.pagination{ clear:both; margin:30px 0; text-align:center; }
.pagination a, .pagination span { display:inline-block; margin:3px; padding:4px 10px; }
.pagination a{ color:#303030; text-decoration:none; background-color:#FFF; border:1px solid #865c7b; }
.pagination a:hover{ color:#FFF; background-color:#a77f9c; border:1px solid #a77f9c; }
.pagination span.current{ color:#FFF; background-color:#865c7b; border:1px solid #865c7b; }
.pagination span.disabled { border:1px solid #CCC; color:#CCC; }

/*ナビ*/
#photosNav { padding: 0 0 2%; margin: 0; margin-left: -2%; }
#photosNav>li { position: relative; height: 0; padding-bottom: 33%; width: 18%; margin: 2% 0 0 2%; overflow: hidden; background: #fff;}
#photosNav>li>a{ display: block; position: absolute; left: 0; right: 0; margin: auto; height: 100%; text-align: center;}
#photosNav>li>a>img {  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
  max-width: none;
}
.kimonoDetail>.data { width:39%; }
.kimonoDetail>.data>.data_head {position: absolute; top: 0;}
.kimonoDetail p.code{ position: relative; margin: 0; padding:.5em 1.5em .4em; color: #fff; background:#865c7b; }
.box_dashed { padding: 0 1rem; margin: 1rem auto; border: 1px dashed #6d2b39; background: #e4d4d3; }
.box_dashed2 { padding: 0 1rem; margin: 1rem auto; border: 1px dashed #743a65; background: #eacdce; }
.box_dashed .kome {  margin: 1rem auto; }

/*カタログ詳細ページ-----------------*/

.kimonoDetail { margin-top: 5rem ; }
.kimonoDetail>.slide { width:59%; }
#photosImg li { position: relative; height: 0; padding-bottom: 100%; background:#fff; }
#photosImg li>figure.flex{ position: absolute; height: 100%; width: 100%; align-items: center; }
#photosImg li>figure.flex>img{ max-width: 100%; max-height: 100%;}

.kimonoDetail .status { color: #d69618 }

.data_body>h3 { margin: 1em 0 ; }
.data_body > p.height { margin: 0;  padding: .3em 1em .2em; font-size: .9rem; color: #fff; background: #b36371; }

/*最近見た商品一覧*/
#viewList { width: 90%; max-width: 1400px; margin: 4rem auto 0; }
#viewList li {width: 19%; margin:0 .5%; background: #fff;}
#viewList a { display:block; position: relative; padding: 2rem 0 1rem;}
#viewList p.code { position: absolute; top: 0; left: 0; margin: 0; padding:.2em .5em ; color: #fff; background: #865c7b;}

#viewList li>a>figure { position: relative; height: 0; padding-bottom: 80%; }
#viewList li>a>figure>img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; max-height: 90%; max-width: 90%; width: auto; height: auto; }
#viewList .name {
    display:block; margin:10px 0; font-size:90%; font-weight:normal;
}
#viewList .price { margin:10px 0 0; line-height:120%; }

#viewList dd { margin-bottom: .5rem; }

/*よくある質問-----------------*/
#faq .tabNav li { background: #b36371; }
#faq .tabNav li a { color: #fff; font-size: 1.15em; }
#faq .tabNav li span::before { width: 9px; height: 9px; margin-top: -7px; border-right: 2px solid; border-bottom: 2px solid; }
#faq .secTitle { border-bottom: 6px solid #b36371; }

dl.faq { margin-top: 2.5em; }
dl.faq dt.conTitle { margin-top: 2em; padding-left: 3em; z-index: 1; }
dl.faq dd{ padding: 1em 0 1em 3.5em; }
dl.faq dt,dl.faq dd{ position: relative; }
dl.faq dt.conTitle::before { content: "Q";  position: absolute; top: 0; left: .57em; color: #7b3e6b; font-size: 1.5em; font-weight: bold; font-family: 'EB Garamond'; }
dl.faq dd:before { content: 'A'; position: absolute; font-size: 2em; top: 0; left: .38em; font-weight: bold; font-family: 'muralscript'; color: #a61234; }
dl.faq dt::after { content: ""; position: absolute; top: 0; bottom: 0; right: 20px; margin: auto; width: 7px; height: 7px; border-bottom: 2px solid #7b3e6b; border-right: 2px solid #7b3e6b; -webkit-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg); }
dl.faq dt.active:after { -webkit-transform: translateY(-50%) rotate(-135deg); transform: translateY(-50%) rotate(-135deg); }
dl.faq .button3 { padding-left: 1em; }

/*開催カレンダー-----------------*/

#calendar .tabNav {margin-bottom: 2em;}
#calendar .tabNav>li { width: 30%; padding: 0;}
#calendar .tabNav>li>a { padding: 1em; color: #fff; background-color: #b36371;}
#calendar .tabNav>li>a:hover { background-color: #6d2b39;}

.calendar .ng,
.calendar .ok { text-align: center; font-size: 1.6rem; min-width: 1em; line-height: 1rem;}
.calendar .ng { color: #666;}
.calendar .ok { color: #f90;}

.calendar{ margin: 0 auto 0; padding:3em 1px; position:relative; z-index:1; }

.calendar>.iblock>li>.small{ padding-left: 1rem; }

.calendar .ttl{ width:80%; margin:1rem auto .5rem; text-align:center; font-size:1.8rem;  line-height:1; align-items: baseline; }
.calendar .ttl em { text-align:center; font-size:2.5rem;  }
.calendar .ttl .en { font-size: 1.2em; }
.calendar table { width:100%; border-spacing:0; border-collapse:collapse; }
.calendar .week { background-color:#888; }
.calendar .week td { height:auto; font-size:17px; font-weight:100; text-align:center; color:#fff; padding-top:7px; padding-bottom:7px; border-left:1px solid #fff; }
.calendar .week td.sun { background-color: #ac5363; }
.calendar .week td.sat { background-color: #43679a; }
.calendar tbody { background:#FFF; }
.calendar tbody td { padding:0; vertical-align:top; }
.calendar td>b { display:block; padding:5px 5px 2px; line-height:1.2; }
.calendar dl { margin: 0 .2rem .2rem; }
.calendar dt, .calendar dd { margin-top: .2rem; line-height: 1.6rem; text-align: center; }
.calendar dt {width: 50%; padding-top: .1rem; font-size:.8em; color: #fff;}
.calendar dt.kyoto { background: #993366; }
.calendar dt.tokyo { background: #548235; }
.calendar dd {width: 50%; text-align: center; font-size: 1.6rem;}
.calendar .ng { color: #666; padding-top: .2rem;}
.calendar .ok>a { display: block; height: 100%; color: #f90; padding-top: .2rem;}
.calendar p.big { margin: .2rem; font-size: 2em; line-height: 3.6rem; }
.calendar p.txt { border: 1px solid #ddd; margin: .2rem; padding: .3rem .5rem .2em; font-size: .8rem;}

/*アクセス-----------------*/
#access #tenji_tokyo { margin-bottom:100px; }
#tenji_tokyo > div,#tenji_kyoto > div { width: 100%; }
.point li { display:inline-block; width: 32%; margin-top:2em; padding: .5em .3em; color: #fff; background: #b36371; }

/*会社概要-----------------*/
#company .dlList dt { position: relative; width: 100%; padding: 1em 0 0 1.5em;  text-align: left; }
#company .dlList dt:before {  content: ''; position: absolute;  left: .3em;  background-color: #6d2b39; width: .8em;  height: .8em;  top: 1.45em; }
#company .dlList dd{ width: 100%; padding: .3em 0 1.1em 1.5em; border-bottom: 2px solid #d8cdcf; }
#company .dlList dt.flex { align-items: center; }

/*サイトマップ-----------------*/
.sitemap > ul > li { position: relative; padding: 1em 1em 1em 1.5em; border-bottom: 2px solid #d8cdcf; }
.sitemap > ul > li:before { content: ''; position: absolute; left: .3em; background-color: #6d2b39;  width: .8em;  height: .8em; top: 1.45em; }

/*お問合わせ-----------------*/
.contact>form>.note { padding: 0 1rem; margin: 2rem auto; max-width: 800px; border: 1px solid #892c41; background: #fff;}

.contact .omitate .button3 { margin: 0; }
form#myForm table { width:100%; border:2px solid #c4a6a8; }
form#myForm table tr:last-child>th, form#myForm table tr:last-child>td { border-bottom: none; }
form#myForm th { width: 100%;  border-bottom: 2px solid #eee3de; text-align: left; background: #c4a6a8; }
form#myForm td { -webkit-box-flex: 1;  -ms-flex: 1;  flex: 1; }
form#myForm label>input[type="radio"],form#myForm label>input[type="checkbox"] {margin-right: .3rem;}

form#myForm label.flex{margin-bottom: .2rem;}
form#myForm label.flex>span>small { display: block; line-height: 1;margin-bottom: .4rem;}
form#myForm .submit { margin: 2rem auto; max-width: 1000px; }
form#myForm .submit .button2{ min-width: 10rem; margin: 1rem 0; }
form#myForm .submit .button2.back{ color: #865c7b; background: #fff; }
form#myForm .submit .button2.back:hover{ color: #fff; background: #865c7b; }

label.error { color:#a61234; font-weight: bold; margin-left:5px; font-size:15px; }
input.error, textarea.error { border:1px solid #a61234; }
div.error, label.error { display: none; }
.contact section.privacy{ margin-top: 6rem; }

/*プライバシーポリシー-----------------*/
#privacy .button2 { margin-top: 2em; }
#privacy p+p { margin-top: 2.5em; }

/*レンタル規約-----------------*/
#law .pageTitle .en { font-size: 2.8em; letter-spacing: 0; }
#law .subTitle { letter-spacing: -1px; }
#law h3.conTitle { background: #6d2b39; color: #fff; text-align: center; }
#law .button2 { margin-bottom: 2em; }
#law #contents ul { margin: 1em auto; }
#law ul.kome li { margin-left:.5em; }
#law ul.kome li::before { content: '（注）';}
#law table tr td:first-child { display: list-item; list-style-type:square; margin-left: 1.4em; text-indent: -.5em; }
#law .cancell { padding: 1em; border: 1px dashed #6d2b39; }

/* ================================================================
  レスポンシブ
=================================================================== */
/* 600以上(PC・タブレット) */
@media screen and (min-width: 600px) {
#header .sitename { left: 1.5em; width: 30%; max-width: 180px; margin-top: 1em; }
.pageTitle .vh_ctr { top:53%; left: 23%; -webkit-transform: translate(-10%, -50%);  transform: translate(-10%, -50%);}

#contents { padding-top:450px; }
#contents::after { width: 33%; }
#contents::before { top: 310px;  left: -4%;  min-width: 220px; }
.subTitle {  margin: 2em auto; font-size: 2.5em; }
.conTitle { padding: 1em; font-size: 1.2em; }
.secTitle { font-size: 2em; }
.tabNav li{ width: 30%; }

/*特徴・魅力-----------------*/
#quality .subTitle { font-size: 2.5em; }
#quality .title { font-size: 1.5em; letter-spacing: 1px; }
#quality .title::before { font-size: 4.5em; }

#quality .lead .title { font-size: 2.5em; }
#quality .lead .title > span::before { width: 10vh; height: 8vh; }
#quality .lead .title > span::after { width: 7vh; height: 7vh; }
#quality .lead ul li span { font-size: 1.75em; }
#quality .lead p { margin: .5em auto; font-size: 1.5em; }

#quality .feature { padding: 2.7em 0; }
#quality .feature .txt { width: 50%; min-width: 458px;  margin-left: 9%; }

/* #quality .feature figure { position:absolute; right: 1em; bottom: -4em; width: 37%; max-width: 371px; }
#quality .feature figure:nth-child(2) { top: auto; bottom: 1em; width: 38%; max-width: 325px; } */
#quality .feature figure { position:absolute; width: 30%; top:-1.5em; right:0; bottom: auto; }
#quality .feature figure:nth-child(2) { width: 21%; top:25%; bottom:auto; left: -6em; }

#quality .secBox.charm { margin-top: 11em; }
#quality .charm { padding: 2.7em 0; }
#quality .charm ul li + li { padding-top: 7em; }
#quality .charm ul li:nth-child(3) { padding-top: 11em; }
#quality .charm ul li:nth-child(4) { padding-top: 7em; }
#quality .charm ul li:nth-child(5) { padding: 7em 0; }
#quality .charm ul li { position: relative; }
#quality .charm ul li div { position: absolute; left: 1%; width: 66%; margin-top: 2em; padding: 4% 6% 2.5% 3%; background-position: 1% 1%;
    background-size: 10%; }
#quality .charm ul li:nth-child(even) div { left: auto; right:1%; padding: 4% 3% 2.5% 6%; background-position: 99% 1%; }
#quality .charm ul li figure { width: 36%; margin-left: auto; }
#quality .charm ul li:nth-child(even) figure { margin-left: 0; }
#quality .charm ul li .honoka { letter-spacing: 1px; }
#quality .charm ul li div::before { top: 3%;  right: 6%; }
#quality .charm ul li div::after { bottom: -7%; }
#quality .charm ul li:nth-child(even) div::before { left: 6%; }

#quality .bnr_area { width: 85%; margin: 3em auto; }
#quality .bnr_area .honoka { font-size: 2em; }
#quality .bnr_area .honoka span::before,#quality .bnr_area .honoka span::after { width: 8vh;  height: 10vh; }
#quality .bnr_area .honoka span::before { left:-4em; }
#quality .bnr_area .honoka span::after { right:-4em; }
#quality .bnr_area .button { font-size: 1em; }

#quality .furisode section { padding: 3em 0 6em; }
#quality .furisode .lead_ttl { font-size: 3em; }
#quality .furisode .lead span { padding: .3em .5em .3em .3em; font-size: 1.4em; }
#quality .furisode .lead { margin: 4em 0 2em; }
#quality .furisode .box p { line-height: 2; }
#quality .furisode div.flex { position: relative; }
#quality .furisode .txt { line-height: 2; }
#quality .furisode .txt .circle { position: relative; margin: 2em 0 3em; }
#quality .furisode .txt .circle li { width: 17%; font-size: 1.5em; }
#quality .furisode .txt .circle li .vh_ctr {  left: 33%;  -webkit-transform: translate(-25%, -50%);  transform: translate(-25%, -50%);  line-height: 1; }
#quality .furisode .txt .circle li:nth-child(2) .vh_ctr { left: 39%; }
#quality .furisode .txt p { font-size: 1.05em; }
#quality .furisode .txt .icon_list01 li { font-size:1.45em; }
#quality .furisode .txt .icon_list01 li::before { width: 30px; height: 29px; margin-left: -1.5em; }
#quality .furisode div.flex figure { width: 85%;  margin: auto; }

#quality .furisode .process .subTitle + p { font-size: 1.5em; }
#quality .furisode .process .icon_list02 li { padding: .3em .1em .5em; font-size: 1.1em; }
#quality .furisode .process .icon_list02 li span { width: 22px; }
#quality .furisode .process .icon_list02 li span::before { width: 25px; height: 25px; }
#quality .furisode .process .icon_list02 { margin: 3em 0; }
#quality .furisode .icon_list02 li:not(:last-child):after { border-width: 7px 0 7px 8px; }
#quality .furisode .process .process_list li { margin: 0.5% 0; padding: 0 2.5% 2.5%; }
#quality .furisode .process .process_list li div { width: 70%; }
#quality .furisode .process .process_list .honoka { font-size: 1.7em; }
#quality .furisode .process .process_list .honoka span::before { top: -7px; left: -10px; width: 1.5em; height: 1.5em; }
#quality .message p { font-size: 1.5em; letter-spacing: 2px; }
#quality .furisode section::before {  top: -3em; }

/*撮影プラン-----------------*/
#plan .pageTitle span.en { font-size: 4em; letter-spacing: 2px; }
#plan .secBox { margin-top: 8em; }

#plan .title { font-size: 1.5em; letter-spacing: 1px; }

#plan .lead { width: 90%; }
#plan .lead > .inner { margin-right: 0; }
#plan .lead { padding: 3em 0; background-image: url(../img/plan/bg_lead.png); background-repeat: no-repeat; background-position: bottom right; background-size: contain; }
#plan .lead .title { font-size: 1.6em; letter-spacing: 1.5px; }

#plan .plan_nav, #plan .plan_label { padding: 2.7em 0; }
#plan .plan_nav::before,#plan .points::before,#plan .plan_label::before { font-size: 4.5em; }

/*　プランナビ　*/
#plan .plan_nav ul { margin: 4% 0; }
#plan .plan_nav ul:last-child li{ width: 23%; }
#plan .plan_nav ul li{ width: 48%; }
#plan .plan_nav ul li .navTitle { top: 1.5em; }
#plan .plan_nav > div::after { bottom: -20%; left: -10%; width: 13vh; height: 11vh; }

/* おすすめポイント */
#plan .points > div > div dl { width: 49%; }
#plan .points dl { margin-top: 2%; }
#plan .points dl dt { padding: 1% 3%; letter-spacing: 1.5px; font-size: 1.5em; }
#plan .points dl.accordion dt::after { width: .5em; height: .5em; }
#plan .points dl dd .num { font-size: 2em; }

/* プラン詳細　*/
#plan .planList { padding: 8em 0; }
#plan .plan_label { padding-bottom: 0; }
#plan .plan_label .title { font-size: 3em; }
#plan .planList section { padding: 4em 0 5em; }
#plan .planList section .plan_icon span { font-size: 1.1em; letter-spacing: 2px; }
#plan .planList section .title { font-size: 2.2em; }
#plan .planList section .main_area { position: relative; }
/* #plan .planList section .main figure {width: 47%;} */
#plan .planList section .txt { padding-top: 0; }
#plan .planList section .txt .honoka { margin-top: 0; line-height: 2.5; }
#plan .planList section .setBox { margin-top: 3em; }
#plan .planList section .setBox .title { font-size: 1.9em; }
#plan .planList section .setBox::before,#plan .planList section .setBox::after{ width: 10vh; height: 10vh; }
#plan .planList section .en{ font-size: 2.5em; }

/*カタログ詳細-----------------*/
.deco-box>.ttl {  font-size: 2rem; }
.deco-box>.ttl>.en { letter-spacing: 4px; }

/*ご利用の流れ-----------------*/
#flow section { margin-top: 6em; }
.flowList { padding: 4em 0 0; }
.flowList > li{ position:relative; width:32%; margin-bottom: 1.3%; }
.flowList > li:not(:last-child):after { top:0; bottom:0; left:100%; border-width: 10px 0 10px 12px; border-style: solid; border-color: transparent transparent transparent #b36371; }
#order .flowList > li { width: 48.5%; }
#order .flowList > li .flowIcon { width:20%; }
#order .flowList > li.okini { width: 100%; }
#catalog .flowList > li { margin-right: 1.3%; }
.flowList.noOkini > li .flowIcon { width: 9%; }

/*よくあるご質問-----------------*/
dl.faq dt.conTitle { margin-top: 2.7em; padding-left: 3.5em;  }
dl.faq dt.conTitle::before { top:.1em; font-size: 1.7em;}
dl.faq dd { padding: 1em 1.5em 1em 4.5em; }
dl.faq dd:before { font-size: 2.5em; }
#faq .tabNav { margin-top: 3em; }
#faq .tabNav li { margin: auto 5%; }

/*開催カレンダー-----------------*/
.calendar .ttl { font-size: 2.5rem; }
.calendar .ttl em { font-size: 4rem; }
.calendar tbody td { width:14.28%; height:8em; border:1px solid #ddd; }
.calendar .week2 { display:none; }
#tenji_tokyo figure,#tenji_kyoto figure { width: 80%; margin: auto; }

/*会社概要-----------------*/
#company .dlList { width: 90%; margin: auto; }
#company .dlList dt {  width: 26%;  padding: 1em 1em 1em 3em; border-bottom: 2px solid #6d2b39;}
#company .dlList dt:before { left: 1.5em; }
#company .dlList dt.flex:before {  top: 2.25em; }
#company .dlList dd {  width: 74%;  padding: 1em 1.5em 1em 2.5em; }

/*サイトマップ-----------------*/
.sitemap > ul { width: 48%; }
.sitemap > ul > li { padding-left: 3em; }
.sitemap > ul > li:before { left: 1.5em; }

/*お問合わせ-----------------*/
.contact .button { margin: 2em auto; font-size: 1.2em; }
.contact .omitate .button3 { float: right; }
form#myForm table tr { display: flex; }
form#myForm table tr.hide { display: none; }
form#myForm table th,form#myForm table td {  padding: 1em 1.5em; }
form#myForm th { width: 26%; min-width: 10em; }
form#myForm td{ border-bottom: 2px solid #c4a6a8; }
form#myForm .submit .button { font-size: 1.4em; }

/*規約-----------------*/
#law .pageTitle .en { font-size: 4.7em; }
#law h3.conTitle { padding: .6em; font-size: 1.5em; }

}


/* 768px以上(PC) */
@media screen and (min-width: 768px) {
.slick-next {   right: 53%;  }

#quality .subTitle { font-size: 2.3em; }
#quality .title { margin-bottom: 1em; }
#quality .feature { padding: 2em 0; }
#quality .feature .title::before { content: "Feature"; text-align: left; }

#plan .title { margin-bottom: 1em; }
#plan .planList section .txt { position: absolute; top: 0;right: 0;left: auto; }
}

/* 769px以上(PC) */
@media screen and (min-width: 769px) {
  #plan .points dl dd figure { width: 44%; margin-top: 1em; }
}

/* 960px以上(PC) */
@media screen and (min-width: 960px) {

/*main*/
.pageTitle { width: 540px;  height: 450px;  }
.pageTitle span.en { font-size: 7.5em; }
.pageTitle span.honoka { padding-left: 1em; font-size: 1.7em; }
.pic { height: 500px;  width: calc(100% - 540px); }

.subTitle {  margin: 3em auto 2em; }

#contents { padding-top:500px; }
#contents::before { top: 350px;  left: -1%;  width: 21%; }
#contents::after { width: 25%; height: 52vh; }

/*特徴・魅力-----------------*/
#quality .subTitle { font-size: 2.5em; }
#quality .title { font-size: 1.9em; }
#quality .secBox { margin-top: 8em; }

#quality .lead ul li span { font-size: 2em; }
#quality .lead p { margin: .5em auto; font-size: 1.8em; }
#quality .lead .title > span::before { width: 20vh; height: 15vh; right: -3em; }
#quality .lead .title > span::after { width: 14vh; height: 14vh; left: -6em; }
#quality .feature .txt { margin-left: 14%; }
#quality .feature figure { top:-3em; }
#quality .feature figure:nth-child(2) { width: 23%; }
#quality .charm ul li:nth-child(2) {  padding-top: 5em; }
#quality .charm ul li:nth-child(3) {  padding-top: 8em; }
#quality .charm ul li:nth-child(4) { padding-top: 5em; }

#quality .charm ul li div { left: 7%; width: 60%; margin-top: 1.5em; }
#quality .charm ul li:nth-child(even) div { right:7%; }
#quality .charm ul li .honoka { font-size: 2em; }
#quality .charm ul li .honoka span.small { display: block; font-size: .65em; font-weight: normal; }
#quality .charm ul li:nth-child(5) {  padding-top: 7vh; }

#quality .bnr_area { margin: 3em auto 4em; }
#quality .bnr_area .honoka { font-size: 2.8em; }
#quality .bnr_area .honoka span::before { left:-3.5em; }
#quality .bnr_area .honoka span::after { right:-3.5em; }


#quality .furisode .txt { width: 63%; }
#quality .furisode .txt .circle li { width: 21%; }
#quality .furisode div.flex figure {  position: absolute; width: 56%; right: -15%; }
#quality .furisode .process .process_list li { width: 49.5%; }
#quality .furisode .process .icon_list02 li { font-size: 1.3em; }
#quality .message p { font-size: 2em; }

#quality .charm::after,#quality .furisode .process::before{ width: 17vh;  height: 23vh; }
#quality .furisode section::before,#quality .furisode .process::after { width: 15vh;  height: 16vh;  }

/*撮影プラン-----------------*/
#plan .pageTitle span.en { font-size: 6.5em; }
#plan .title { font-size: 1.9em; }
#plan .secBox { margin-top: 11em; }

#plan .plan_nav::before,#plan .points::before,#plan .plan_label::before { font-size: 5em; letter-spacing: 5px; }

#plan .plan_nav::before, #plan .points::before, #plan .label::before { font-size: 6.5em; }

#plan .plan_nav ul li .navTitle { font-size: 1.2em; }
#plan .plan_nav > div::after { width: 20vh; height: 15vh; }

#plan .points dl dt { font-size: 1.85em; }
#plan .points dl.accordion dt::after { right: 1.3em; }
#plan .points dl.accordion dd p { width: 51%; }
#plan .points > div > div dl dt { padding: 1% 6%; }
#plan .points > div > div dl dd { padding: 3% 6%; }

#plan .planList section { width: 90%; }
#plan .planList section + section { margin-top: 5em; }
#plan .planList section .setBox .inner { width: 70%; }
#plan .planList section .setBox ul.flex li { width: 49%; }
#plan .planList section .setBox::before { top: 1.5em; left: 1.5em; }
#plan .planList section .setBox::after { right: 1.5em;  bottom: 1.5em; }
#plan .planList section .setBox::before,#plan .planList section .setBox::after{ width: 8em; height: 8em; }
#plan .planList section .main figure { width: 50%; }
#plan .planList section .txt .honoka { font-size: 1.48em; }

#plan .planList::before{ top:-4em; }

/*カタログ詳細*/
#catalog .data_head .Title {font-size: 2rem; padding: .5rem 0;}
#catalog .data_head dl.price{ font-size: 1rem; }
#catalog .data_head dl.price>div.flex>dd { font-size: 1rem; }

/*ご利用の流れ-----------------*/
#flow .rentalNav li{ width: 24%; }
.flowList .ttl { font-size: 1.2em; }
.flowList > li{ padding: 2em 1.5em 1em; }
#flow .conTtl{ margin-bottom: .8em; }

/*アクセス-----------------*/
#tenji_tokyo > div,#tenji_kyoto > div{ width: 45%; }

/*規約-----------------*/
#law .pageTitle .en { font-size: 5.5em; }

}

/* 1200px以上(PC) */
@media screen and (min-width: 1200px) {
  /*slider*/
.slick-prev {   left: -1em;  }
.slick-next {  right: 48%; }
.slick-arrow {  width: 40px;  height: 40px;  }
.slick-arrow.slick-prev:before { left: 17px; }
.slick-arrow:before { right:17px; }

#quality .lead .title > span::before { width: 20vh; height: 15vh; }
#quality .lead .title > span::after { width: 14vh; height: 14vh; }
#quality .feature { position: relative; width: 85%; }
#quality .feature .txt { margin-left: 20%; }
/* #quality .feature figure:nth-child(2) { left: -2em; } */

#quality .secBox.charm { margin-top: 13em; }
#quality .charm::before { width: 75%; height: 90%; }
#quality .charm ul li + li { padding-top: 2em; }
#quality .charm ul li:nth-child(2) {  padding-top: 1em; }
#quality .charm ul li:nth-child(3) {  padding-top: 3em; }
#quality .charm ul li:nth-child(4) { padding-top: 1em; }
#quality .charm ul li:nth-child(5) { padding: 1em 0; }
#quality .bnr_area { width: 80%; }
#quality .bnr_area .honoka span::before,#quality .bnr_area .honoka span::after { width: 14vh;  height: 16vh; }

#quality .furisode .process .process_list .honoka { font-size: 2em; }
#quality .furisode .process .process_list .honoka span::before { width: 50px; height: 49px; }
#quality .furisode .txt { width:50%; }
#quality .furisode div.flex figure { width: 60%; right:-18%; }

#plan .planList section .txt { width: 48%; padding: 8% 2% 0 2%; }

#quality .message p { width: 70%; }
}

/* 1700px以上(PC) */
@media screen and (min-width: 1700px) {
#contents::after { width: 27%; height: 60vh; }

#quality .feature figure { right: 15%; }
/* #quality .feature figure:nth-child(2) { left: 2em; } */
#quality .message p { width: 60%; }
#plan .planList::before{ width: 27vh;  height: 37vh; }
#plan .planList::after { width: 27vh;  height: 37vh;  }

#quality .charm::after,#quality .furisode .process::before{ width: 27vh;  height: 37vh; }
#quality .furisode section::before,#quality .furisode .process::after { width: 19vh;  height: 19vh;  }
}

/* ================================================================
  タブレット
=================================================================== */
/* 1024以下 (タブレット横以下) */
@media screen and (max-width: 1024px) {
    #flow .kyoto_img::before { top: -3em; left: -3em; }
    #flow .kyoto_img::after { bottom: -3em; right: -3em; }
    footer p span { display: block; }

  #plan .planList section#anahotel .txt {/* padding-top:0; */}

    /* カタログ-------------------------------------------*/
    #catalog dl.price {margin: 1rem 0 0;}
    #catalog dl.price>div{ margin: .5rem 0; line-height: 1.4; }
    #catalog .listKimono dl.price>div>dt,
    #catalog .listKimono dl.price>div>dd{ width: 100%;}
}

/* 959以下 (タブレット以下) */
@media screen and (max-width: 959px) {

    .deco-box {padding: 8% 5% 5% ;}
    .deco-box>.ttl>.en { font-size: 10vw; padding-left: .5em; top: -.7em;}
    .deco-box::before { width: 100%;}
    .deco-box::after { width: 18vw; height: 20vw; }

    #viewList a { padding: 12% 0 6%;}
    #catalog .image>p,#viewList p.code { font-size: 1.5vw;}
    /* #catalog .image>figure { padding: 3.6vw; } */

    /* detail */
    .kimonoDetail>.fleft,
    .kimonoDetail>.fright { width: 49%; }

    #viewList li {width: 32%; margin:1%; margin-right: 0;}

   /* 特徴・魅力 -------------------------------------------*/
    #quality .furisode .process .icon_list02 li { width: 4.5%;
    margin-right: 1%; }
    #quality .subTitle { margin-bottom: 0; }

   /* 撮影プラン -------------------------------------------*/
    #plan .pic { background-position-x: 70%; }
    #plan .points > div > dl dt { background-size: 40%; }

    /* ご利用の流れ -------------------------------------------*/
    .flowList .button3 { padding-left: 1em; font-size: .9em; }
    #flow .maedori_img .lead, #flow .jitaku_img .lead { top: 17%; right: 1%; }

    /* アクセス -------------------------------------------*/
    .point { width: 65%; }

}

/* 767以下(タブレット) */
@media screen and (max-width: 767px) {
#plan .planList section .txt { position: inherit; margin-top: 3em; }

#flow .conTtl { font-size: 2em; }
#flow .tokyo_img .conTtl,#flow .jitaku_img .conTtl,#flow .maedori_img .conTtl { left: auto; right: .5em; }

}

/* 960-1199 */
@media screen and (min-width:960px) and ( max-width:1199px) {
#plan .planList section#eno .en { padding-top: 2em; }
#quality .furisode .process .process_list li figure { width: 26%; margin-top: 18%; }
#quality .furisode div.flex figure { width: 56%; top:15%; }
}

/* 768-1199 */
@media screen and (min-width:768px) and (max-width:1199px) {
#plan .planList section .en { padding-top: 1em; }
#plan .planList section .main figure { width: 45%; }
#plan .planList section .txt { width: 53%; padding-top: 0; }
}

/* 600-959 */
@media screen and (min-width:600px) and ( max-width:959px) {
.flowList > li .flowIcon { width: 40%; }
#quality .furisode .process .process_list li figure { margin-top: auto; }
#quality .charm ul li div::before { width: 2.5em;  height: 2.5em; }
#quality .charm ul li div::after { background-size: 100%;  width: 4em;  height: 4em; }
}



/* ================================================================
  スマホ
=================================================================== */
@media screen and (max-width: 599px){
	.pageTitle { height: 60vw;}
	.pageTitle .en { font-size: 3.5em; letter-spacing: 1px; }
	.pageTitle .honoka { font-size: 1em; }
	.pageTitle .vh_ctr { top: 30%; left: 7%; padding-right: .3em; -webkit-transform: none; transform: none; line-height: 1.6; }
	.pic { height: 65vw; }

	.subTitle .honoka::before { background-size: 50%; }
    .tabNav li { padding: .8em; }

    /*装飾box*/
    .deco-box { margin: 6em 0 6em 1.5rem; font-size: .8rem;}
    .deco-box::before {top: -1.5rem; left: -1.5rem; height: 100%; width: 100% ;}
    .deco-box::after {top: -1.2rem; left: -1.2rem;}
    .deco-box>.ttl {font-size: 1.2rem;}
    .deco-box>.box-lead { margin: 1rem 0; padding: 0 0 1rem;}

  /* 特徴・魅力 -------------------------------------------*/
  #quality .secBox.lead { margin-top: 3em; }
  #quality .secBox.lead li { margin-top: 3%; }
  #quality .lead .title { padding-bottom: .5em; }
  #quality .lead .title > span::before { top:-1em; }
  #quality .charm >.inner {  width: 100%;  }
  #quality .charm figure { width: 50%; margin-top: -19%; margin-left: auto; }
  #quality .charm ul li:nth-child(even) div { margin-left: auto; }
  #quality .charm ul li:nth-child(even) figure { margin-left: 0; }
  #quality .charm ul li p.small { font-size: .8em; }
  /* #quality .feature figure { margin-left: auto; margin-top: -14em; }
  #quality .feature figure:nth-child(2) { margin-top: 5em; margin-left: -2em; } */
  #quality .feature { padding-bottom: 57%; }
  #quality .feature figure {
    position: absolute;
    width: 40%;
    top: auto;
    right: 0;
    bottom: auto;
}
  #quality .feature figure:nth-child(2) {
    width: 51%;
    top: auto;
    bottom: 4%;
    left: 1em;
}
  #quality .furisode .secBox { margin-top: 3em; }
  #quality .furisode .lead span{ display: inline-block; }
  #quality .furisode .txt .icon_list01 li { line-height: 1.6; }
  #quality .furisode .txt .icon_list01 li + li { margin-top: 1.5%; }
  #quality .furisode div.flex figure {  margin-right: -5em; }

  #quality .furisode .process .icon_list02 li { width: 8.7%; height: 11em; margin-right: .5em; }
  #quality .furisode .process .icon_list02 li:nth-child(n+10) {  margin-top: 2%; }
  #quality .furisode .process .process_list li figure { width: 29%; }


  /* 撮影プラン -------------------------------------------*/
  #plan .pageTitle .en { font-size: 2.5em; }
  #plan .plan_nav > div::before { top: 4%; right: -6%; max-height: 53px; z-index: 1; }
  #plan .plan_nav > div::after { bottom: -6%; left: -6%; }
  #plan .plan_nav ul li { margin: 2%; }
  #plan .points dd .big { font-size: 1.1em; }
  #plan .planList section .gallery li { margin-bottom: 1%; }
  #plan .planList section .txt .small { font-size: .8em; }
  #plan .points > div > div dl { width: 100%; }
  #plan .planList section .title > div { width: 100%; text-align: right; }

  /*カタログ*/
  #catalog h2.subTitle + p { margin-top: 0; font-size: 1rem;}
  #catalog .searchbox { padding: 5%;}
  #catalog .searchbox>form>dl>dt{ font-size: .9em; padding: .2rem; min-width: 6em; }
  #catalog .searchbox>form>dl>dd{ font-size: .9em; padding: .5rem; }
  #catalog .searchbox>form>dl>dd input{ margin: 0 .2em .2em;}
  #catalog .color>label{ min-width: 50%;}

  #catalog .data_body .btn_catalog>a { margin: 1rem auto;}

  .listKimono>li { width: 49%; }
  .listKimono>li>a { padding-bottom: 3rem; }
  #catalog .image { padding-bottom: 150%; }
  #catalog .image>p,#viewList p.code{ font-size: 2.5vw;}
  #catalog .image>figure { padding: 0;}
  #catalog .image>figure>img { width: 100%; }
  #viewList li>a>figure { padding-bottom: 100%; }

  #catalog a>p.btn_arrow { padding: .2em 10%;}
  .kimonoDetail>.fleft,
  .kimonoDetail>.fright { float: none; width: auto; }

  #viewList li {width: 48%; margin:1%;}



  /* ご利用の流れ -------------------------------------------*/
  #flow .conTtl { position: absolute; top:17%; left: 5%; font-size: 1.5em; }
  #flow #tokyo .conTtl,#flow #catalog .conTtl { top:28%; }
  #flow .lead { position: static; }
	.btnList li { width: 100%; }
  #flow .okini { margin-bottom:4%; padding: .5em; }

  /* カレンダー -------------------------------------------*/
  .calendar table { border: 1px solid #ddd; border-bottom: none; }
  .calendar tbody td.none { display:none; }

  .calendar tbody td { position: relative; display:block; padding: .5rem .5rem .5rem 5rem; border-bottom: 1px solid#ddd; }
  .calendar tbody td b { position: absolute; left: .7rem; width: 4rem; padding: 0; font-size: 1rem; }
  .calendar tbody b span.sp_only { display: block; margin-top: .2rem; font-size: .6rem;}

  .calendar dt, .calendar dd { width: 25%;}
  .calendar p.big { line-height: 1.6rem;}
  .calendar p.txt { text-align: left; margin:.5rem .3rem 0;}

  .calendar tbody td.w0 { background:#e1c3c6; }
  .calendar tbody td.w0 b { color: #bf4343; }
  .calendar tbody td.w0 p.txt { border-color: #ca969b; }
  .calendar tbody td.w6 { background:#dee5ec; }
  .calendar tbody td.w6 b { color: #334c82; }
  .calendar tbody td.w6 p.txt { border-color: #9db2c7; }

  .calendar .day p { position:relative; margin:0; padding:0; overflow:hidden; }
  .calendar .day .link { padding:10px 10px 10px 100px;; overflow:hidden; background: #fff; }
  .calendar .day a.link { border-top: 1px solid #eee; }
  .calendar .day p + p { margin-top:15px; }
  .calendar .day td b { position:absolute; top:50%; left:19px; margin-top:-8px; font-size:16px; line-height:1.2; color:#2b0b00; }
  .calendar .day td b .week2 { font-size:13px; }
  .calendar .day td b .week2::before { content:"日"; margin-right:3px; color:#2b0b00; }
  .calendar .week { display:none; }
  .calendar [class^="cat-"], .calendar [class^="cal-"],
  .calendar [class^="reser-"] { display:block; margin:2px 5px; }
  .calendar [class^="cat-"], .calendar [class^="cal-"] {
  	float:left;
  }
  .calendar [class^="cat-"] { font-size:14px; font-weight:bold; }
  .calendar [class^="cal-"] { padding:3px 8px 1px; border-radius:5px; color:#FFF; }
  .calendar .day p [class^="reser-"] { padding-top:5px; font-size:12px; clear: both; }
  .calendar .day p[data-label="Sat"] b,
  .calendar .day td p[data-label="Sat"] b .week2::before { color: #334c82; }
  .calendar .day p[data-label="Sun"] b,
  .calendar .day td p[data-label="Sun"] b .week2::before { color: #bf4343; }
  .calendar .day p[data-label="Sat"] a.link { background:#dee5ec; }
  .calendar .day p[data-label="Sun"] a.link { background:#e1c3c6; }

  .calendar .day .link { display:block; padding:10px 10px 10px 100px;; overflow:hidden; }
  .calendar .day a.link { border-top: 1px solid #eee; }
  .calendar .day span.link { background:#eee; }

  /* アクセス -------------------------------------------*/
  .point { width: 100%; }
  #tenji_kyoto .big,#tenji_tokyo .big { font-size: 1.1em; }
  #tenji_tokyo figure,#tenji_kyoto figure { margin-top: 3em; z-index: 1;}

  /* お問い合わせ -------------------------------------------*/
	.contact .omitate .button3 { margin: 1em auto; }
  form#myForm table tr > * { display:block!important; padding: .4em 1em; }
  form#myForm th { line-height:39px; }

  img[src="img/btn_privacy.png"], img[src="img/btn_rental.png"] { width:240px; }
  img[src="img/btn_rental.png"] { margin-bottom:10px; margin-left:12px; }
  #contact .link.green a { height:auto; margin-top:10px; padding:0; line-height:35px; }

  /* サイトマップ -------------------------------------------*/
	.sitemap.flex{ display: block; }

	/* レンタル規約 -------------------------------------------*/
	#law td { display: contents; }

}
@media screen and (max-width: 360px){
  .pageTitle { width: 60%; }
  .pic { width: 40%; }
  #quality .feature .title::before, #quality .charm .title::before, #quality .furisode .title::before
  { font-size: 2.8em; }
  #quality .furisode .txt .circle li { font-size: 1em; }
  #quality .furisode .process .icon_list02 li { width: 8.3%; }
}
