@charset "UTF-8";


/* font
----------------------------------------------- */
:root { 
	--mincho: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", serif; 
	--gothic: 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; }


/* default sp
	----------------------------------------------- */
* { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, section, summary, time, mark, audio, video { padding: 0; margin: 0; font: inherit; word-wrap: break-word; border: 0; vertical-align: baseline; outline: none; }
body { padding: 0; margin: 0; color: #000; font-size: 3.6vw; font-family: 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; -webkit-text-size-adjust: 100%; font-style: normal; line-height: 1; }
article, aside, canvas, details, figcaption, figure, header, footer, hgroup, main, menu, nav, section, summary { display: block; }
blockquote, q { quotes: none; }
strong, b { font-weight: bold; }
ul, ol, li { list-style: none; }
table { border-spacing: 0; border-collapse: collapse; }
img, video, object { height: auto; border: none; display: block; }
ins { background: none; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
hr { height: 1px; padding: 0; margin: 1em 0; border: 0; border-top: 1px solid #ccc; display: block; }
*:before, *:after {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;-moz-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);-o-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);-webkit-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);}
a { text-decoration: none; display: block; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
a:hover { opacity: 0.6; }
.clearfix:after { content: ''; display: block; clear: both; }
.pc { display: none; }
.sp { display: block; }

.container{position: relative;overflow: hidden;z-index: 1;width: 100%;}
.wrap{position: relative;}


/* header sp
----------------------------------------------- */
.header-logo { z-index: 3;width: 24vw; position: absolute; top: 4vw; left: 4vw;}
.header-logo img { width: 100%; }


/* footer sp
----------------------------------------------- */
footer{padding: 8vw 0 22vw;}
footer p{letter-spacing: 0.04em;font-size: 3.2vw; font-family: var(--mincho);color: #444;text-align: center;}

/* fix */
.footer-fixed{width:100%;opacity:0;visibility:hidden;position:fixed;bottom:0;left: 0;-moz-transition:all 0.4s cubic-bezier(0.76,0,0.24,1);-o-transition:all 0.4s cubic-bezier(0.76,0,0.24,1);-webkit-transition:all 0.4s cubic-bezier(0.76,0,0.24,1);transition:all 0.4s cubic-bezier(0.76,0,0.24,1);display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-pack: justify;justify-content: space-between;z-index: 5;}
.footer-fixed.active{opacity:1;visibility:visible;}
.footer-fixed a img{width:100%;}


/* contents sp
----------------------------------------------- */
.main img{width:100%;}

/* hero */
.hero{position: relative;z-index: 2;}
.hero-item{position: relative;z-index: 1;margin-top: -32.5vw;}

/* cv */
.cv{position: relative;}
.cv .cv-bg{width: 94vw;margin: 0 auto;padding: 10vw 0;}
.cv .cv-btn{position: absolute;left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%);display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-pack: justify;justify-content: space-between;width: 84vw;bottom: 30vw;}

.cv.cv02 .cv-bg{width: 100%;padding: 0;}
.cv.cv02 .cv-btn{bottom: 15vw;}


/* ba */
.ba{background: url("../images/ba-bg.jpg") no-repeat top center;background-size: 100%;padding: 52vw 0 28vw;}
.ba-items { width: 100%; margin-bottom: 14vw; }
.ba-item { width: 80vw; margin: 0 3vw; }
.ba-item img { width: 100%; }
.ba .slick-prev,.ba .slick-next{width: 12vw;height: 12vw; top: 88vw;}
.ba .slick-prev{left: 10vw;content: "";background: url("../images/arrow-left.png") no-repeat top center;background-size: 100%;}
.ba .slick-next{right: 10vw;content: "";background: url("../images/arrow-right.png") no-repeat top center;background-size: 100%;}
.ba .slick-dots li button:before,.ba .slick-dots li button:before{display: none;}

.ba .slick-prev:hover, .ba .slick-prev:focus {background: url("../images/arrow-left.png") no-repeat top center; background-size: contain;}
.ba .slick-next:hover, .ba .slick-next:focus{background: url("../images/arrow-right.png") no-repeat top center; background-size: contain;}


/*
 reason ba表示対応 
.ba{position: relative;z-index: 1;}
.reason{position: relative;z-index: 2;margin-top: -18vw;}
.cv.cv02 .cv-btn{bottom: 28vw;}
*/


/* introduction */
.introduction{position: relative;padding-bottom: 36vw;background: url(../images/waku-b.jpg) no-repeat bottom center,url(../images/waku-t.jpg) repeat-y top center;background-size: 100%;}
.introduction-btn{font-family: var(--mincho); position: absolute;right: 8.6vw;top: 121vw; width: 76vw;background: #5c442f;color: #fff;padding: 3.4vw;font-size: 4vw;}
.introduction-btn::after{ content: '';width: 4vw;height: 3vw;background: url("../images/arrow-updown.png") no-repeat center;background-size: 100%;position: absolute;top: 4vw;right: 4vw;}
.introduction-btn.open::after {-moz-transform: rotate(180deg);-ms-transform: rotate(180deg);-webkit-transform: rotate(180deg);transform: rotate(180deg);}
.introduction-more{display: none;margin-bottom: -10vw;}
.introduction-more p{text-align: justify;text-justify: inter-ideograph;line-height: 1.5;width: 76vw;padding-top: 16vw;margin: 0 8.5vw 0 auto;font-size: 4vw;}

/* qa */
.qa{ padding: 20vw 0 30vw;}
.qa h2{width: 30vw;margin:0 auto 12vw;}
.qa-list {width: 92vw;margin: 0 auto;}
.qa-list li {margin: 0 auto 8vw;}
.qa-list li:last-child { margin-bottom: 0; }
.qa-item .qa-q {width: 5vw;position: relative;}
.qa-item .title {background: #f3ebe9;position: relative;cursor: pointer;line-height: 1.5;padding: 2.8vw 12vw 2.8vw 3.4vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;justify-content: space-between;-webkit-justify-content: space-between;align-items: center;-webkit-align-items: center;flex-wrap: wrap;-webkit-flex-wrap: wrap;}
.qa-item .title:before, .qa-item .title:after {content: '';background: #aeaeae;position: absolute;top: 0;right: 0;}
.qa-item .title:before {width: 15px;height: 1px;top: 50.5%;right: 13px;}
.qa-item .title:after {width: 1px;height: 15px;top: 54%;right: 20px;-webkit-transition: 0.3s;transition: 0.3s;margin-top: -12px;transform: translate(0, 3px);}
.qa-item .title.open:after {-moz-transform: rotate(90deg) translate(3px, 0);-ms-transform: rotate(90deg) translate(3px, 0);-webkit-transform: rotate(90deg) translate(3px, 0);transform: rotate(90deg) translate(3px, 0);}
.qa-item .title-text {font-size: 4vw;line-height: 1.4;width: 90%;margin-bottom: 0;}
.qa-item .title.long{-webkit-box-align: start;align-items: flex-start;}
.qa-item .title.long .qa-q{padding-top: 1vw;}
.qa-item .answer {display: none;padding: 4% 0;font-size: 3.8vw;line-height: 1.6;text-align: justify;text-justify: inter-ideograph;}
.qa-item .answer .att{text-indent: -2%;padding-left: 2%;margin: 0;background: none;border: none;line-height: 1.8;}
.qa-list li:nth-child(1) .answer{display:block;}
.qa-item a { color: #000; }
.qa-item dd .indent{text-indent: -3%;padding-left: 3%;}
.qa-item dd .qa-link{display: inline;border-bottom: 1px solid #9a7268;color: #9a7268;font-weight: bold;}

/* message */
.message{margin-bottom: 10vw;}

/* about */
.about2 .sakura-btn{position: relative;}
.about2 .sakura-btn img{position: absolute;left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%);display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-pack: justify;justify-content: space-between;width: 84vw;bottom: 30vw;}

/* sakura */
.sakura-bg{width: 94vw;margin: 0 auto;padding: 10vw 0;}


/* pc
----------------------------------------------- */
@media screen and (min-width: 736px) {
	
body{font-size: 16px;}
/*body::before {content: '';width: 100vw;height: 100vh;background: url(../images/bg.jpg) repeat top center;background-size: cover;position: fixed;top: 0;left: 0;}*/
	
.pc { display: block; }
.sp { display: none; }
	
.wrap{width:570px;margin:0 auto;background:#fff;-moz-box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);-webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);}
	
	
/* header
----------------------------------------------- */
.header-logo { width: 160px; top: 20px; left: 20px;}


/* footer
----------------------------------------------- */
footer{padding: 30px 0 120px;}
footer p{font-size: 14px;}

/* fix */
.footer-fixed{width:570px;left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%);}

	
/* contents
----------------------------------------------- */
.main img{width:auto;max-width: 100%;}

/* hero */
.hero-item{margin-top: -184px;}

/* cv */
.cv .cv-bg{width: 535px;padding: 50px 0;margin: 0 auto;}
.cv .cv-btn{width: 475px;bottom: 166px;}
.cv.cv02 .cv-bg{margin: 0;}
.cv.cv02 .cv-btn{bottom: 94px;}
	
/* ba */
.ba{padding: 310px 0 180px;}
.ba-items { margin-bottom: 40px; }
.ba-item { width: 460px; margin: 0 15px; }
.ba .slick-prev,.ba .slick-next{width: 65px;height: 65px; top: 500px;}
.ba .slick-prev{left: 70px;}
.ba .slick-next{right: 70px;}
.ba .slick-dots { bottom: -90px; }
.ba .slick-dots li { width: 10px; height: 10px; margin: 0 8px; }
	
/*
 reason ba表示対応 
.reason{margin-top: -100px;}
.cv.cv02 .cv-btn{bottom: 165px;}
*/
	
/* introduction */
.introduction{padding-bottom: 220px;}
.introduction-btn{right: 54px;top: 685px; width: 420px;padding: 20px;font-size: 22px;}
.introduction-btn::after{ font-size: 40px;right: 20px;}
.introduction-btn::after{ width: 22px;height: 13px;top: 26px;right: 20px;}
.introduction-more{margin-bottom: -70px;}
.introduction-more p{width: 420px;padding-top: 80px;margin: 0 54px 0 auto;font-size: 18px;}

/* qa */
.qa{padding: 80px 0 120px;}
.qa h2{width: 173px;margin:0 auto 70px;}
.qa-list {width: 460px;}
.qa-list li {margin: 0 auto 30px;}
.qa-item .qa-q { margin-right: 15px; width: 29px;}
.qa-item .title {padding: 14px 30px 14px 18px;justify-content: flex-start;-webkit-justify-content: flex-start;}
.qa-item .title:before {width: 20px;top: 48%;right: 20px;}
.qa-item .title:after {height: 20px;top: 48%;right: 29px;-webkit-transition: 0.3s;transition: 0.3s;margin-top: -12px;transform: translate(0, 3px);}
.qa-item .title.long .qa-q{padding-top: 4px;}
.qa-item .answer {padding: 15px 0;font-size: 22px;line-height: 1.7;}
.qa-item .answer .att{text-indent: -2%;padding-left: 2%;margin: 0;background: none;border: none;line-height: 1.8;}
.qa-item .title-text{width: auto;font-size: 24px;}
	
/* message */
.message{margin-bottom: 40px;}

/* sakura */
.sakura-bg{width: 535px;padding: 50px 0;margin: 0 auto;}

}


/* retina用 ----------------------------------------------- */

@media screen and (min-width: 736px) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 736px) and (min-resolution: 2dppx) {
	
/*.body::before {background-image: url(../images/bg@2x.jpg);}*/
.ba{background: url("../images/ba-bg@2x.jpg") no-repeat top center;background-size: 100%;}
.ba .slick-prev{background: url("../images/arrow-left@2x.png") no-repeat top center;background-size: 100%;}
.ba .slick-next{background: url("../images/arrow-right@2x.png") no-repeat top center;background-size: 100%;}
.introduction{background: url(../images/waku-b@2x.jpg) no-repeat bottom center,url(../images/waku-t@2x.jpg) repeat-y top center;background-size: 100%;}
.introduction-btn::after{background: url("../images/arrow-updown@2x.png") no-repeat center;background-size: 100%;}
	
}
