@charset "utf-8";
/*--------------------------------------
	copyright :
--------------------------------------*/

@import url(normalize.css);
@import url(../_plugin/fontawesome/css/all.min.css);
/*@import url(https://unpkg.com/aos@next/dist/aos.css);*/
/*@import url(../_plugin/OwlCarousel/assets/owl.carousel.min.css);
@import url(../_plugin/OwlCarousel/assets/owl.theme.default.css);*/
/*@import url(../_plugin/lightGallery/css/lightgallery.min.css);*/
@import url(common_parts.css);
@import url(common.css);


/* 各ページ共通 ==============================*/
#main .inner { padding-bottom: 10rem; background: url(../_data/_img/common/backgrand_img01.jpg); }
section { position: relative; }
section:not(#mv) { margin: -10rem 0 0; padding: 10rem 2rem 0; }
section .sec_inner { padding: 5rem 0 0; }
section:not(:nth-of-type(1)) .sec_inner { padding-top: 5rem; }
section h2 { position: relative; margin-bottom: 2rem; padding-left: 5rem; font-size: 2.6rem; line-height: 1.5; }
section h2 span { font-size: 1.9rem; vertical-align: baseline; }
section p { margin: 2rem 0; font-size: 1.5rem; line-height: 1.7; }
@media screen and ( min-width: 481px ) {
	#main .inner { padding-bottom: 6.5rem; background: url(../_data/_img/common/backgrand_img01.jpg); }
	section:not(#mv) { margin: -10rem 0 9rem; padding: 10rem 3rem 0; }
	section:not(:nth-of-type(1)) .sec_inner { padding-top: 0; }
	section .img_wrap { display: flex; }
}
@media screen and ( min-width: 769px ) {
	section h2 { padding: 0; }
	section:not(#mv) { margin: -10rem 0 9rem; padding: 10rem 6.5rem 0; }
	section .sec_inner { padding: 0 7rem; }
	section:nth-of-type(1) .sec_inner h2 { margin-top: 7.5rem; }
	section:not(:nth-of-type(1)) .sec_inner { padding-top: 0; }
	section p span { display: block; }
}

/* history 好洋について==============================*/
/* 共通 */
#history h2 { padding-left: 5rem; }
#history h2::before { position: absolute; top: 50%; left: -1.5rem; content:""; display: block; width: 100%; height: 100%; background: url(../_data/_img/common/icon_rhombus01.png)no-repeat; transform: translateY(-50%); }
#history #cboxMiddleRight,
#history #cboxMiddleLeft,
#history #cboxClose { display: none; }
@media screen and ( min-width: 768px ) {
	#history #main section ,
	#history #main section  .sec_inner { padding-left: 0; padding-right: 0; }
	#history #main > .inner { padding: 0 6.5rem; }
	#history .left_wrap { width: 100%; max-width: 620px; margin-right: 3rem; }
	#history .right_wrap { width: 100%; max-width: 410px; }
}
/* about */
#about .flb { margin-top: 3rem; }
#about .flb h3 { font-weight: normal; font-size: 2.2rem; border-bottom: 1px #000 solid; }
#about .flb p { margin-top: 1rem; }
#about .flb .img_box { text-align: center; }
#about .flb .text_box { margin-top: 2rem; flex-grow: 2; }
@media screen and ( min-width: 768px ) {
	#about .flb h3,
	#about .flb p { padding-left: 1rem; }
	#about .flb .text_box { margin: 0; }
}
/* rekishi */
#rekishi h3 { font-weight: normal; font-size: 1.9rem; }
/* media */
#media .melody,
#media .img_box { margin-left: 22px; }
#media .melody p { cursor: pointer; }
@media screen and ( min-width: 768px ) {
	#media .sec_inner { margin: 0; padding: 16rem 0 0; }
}
/* dento */
.dento{ display: flex; margin-top: 10px; padding-left: 1em;}
#history .dento_txt-area{ display: flex; padding-top: 10px; padding-left: 15px;}
#history .dento_img{ display: inline-block; max-width: 65px; padding: 0 5px; font-size: 80%; text-align: right;}
#about .flb p.dento-caption{ padding-left: 0.5rem; margin-top: 0.5rem;}
@media screen and ( max-width: 768px ) {
	#history .dento_img{ padding-right: 15px; }
}
@media screen and ( min-width: 481px ) {
	#history h2::before { left: -1rem; }
}



/* shop 店舗紹介==============================*/
/* 共通 */
#shop section h2::before { position: absolute; top: 50%; left: -1.5rem; content:""; display: block; width: 100%; height: 100%; background: url(../_data/_img/common/icon_rhombus01.png)no-repeat; transform: translateY(-50%); }
#shop p { line-height: 1.5; }
/* shop_info */
#shop_info ul { margin-bottom: 1rem; }
#shop_info .flb p { margin-right: auto; }
#shop_info .map_wrap { margin: 3rem 0; }
#shop_info .shop_data li:not(:nth-last-of-type(1)) { margin-right: 1rem; }
#shop_info .shop_data li { padding: 2px 9px; font-size: 1.2rem; color: #fff; background: #FF777C; border-radius: 4px; }
#shop_info .shop_data p { margin: 0; }
/* repair */
#repair .contact_info { position: relative; padding: 1rem; background: #fff; border: 1px #000 solid; opacity: 0.8; }
#repair dl { margin-bottom: 2rem; align-items: center; align-items: flex-end; }
#repair dl dt { width: 15%; min-width: 110px; padding: 2px 9px; font-size: 1.2rem; color: #fff; background: #91915C; border-radius: 4px; margin-bottom: 1rem; }
#repair dl dd { margin-left: 1rem; font-weight: bold; font-size: 3rem; line-height: 1; }
#repair dd span { font-weight: normal; font-size: 1.2rem; vertical-align: baseline; }
#repair dl a { color: inherit; }
@media screen and ( min-width: 481px ) {
	#repair dd span { font-size: initial; }
}
@media screen and ( min-width: 768px ) {
	#shop section h2::before { left: -7rem; }
	#repair dl dt { margin-bottom: 0; }
}
@media screen and ( min-width: 950px ) {
	#repair .contact_info { padding: 1rem 1rem 3rem 1rem; }
	#repair dl.flb { flex-wrap: wrap; }
	#repair dl dd { width: calc(75% - 1rem ); }
	#repair .reception { position: absolute; bottom: 1.5em; right: 0; margin: 0; line-height: 1; }
}
/* technique 技法==============================*/
/* 共通 */
#technique main section { margin-bottom: 5rem; }
#technique main section:not(:nth-of-type(1)) { margin-top: 0; padding-top: 0; }
#technique main section:not(:nth-of-type(1)) .sec_inner { padding-top: 0; }
#technique section h2::before { position: absolute; top: 50%; left: -1.5rem; content:""; display: block; width: 100%; height: 100%; background: url(../_data/_img/common/icon_rhombus01.png)no-repeat; transform: translateY(-50%); }
#technique .box_wrap { margin: 3rem 0; }
#technique .box_wrap h3 { position: relative; padding-left: 7rem; font-size: 1.8rem; line-height: 1.5; background-color: #eaeac6; background: #eaeac6; background: -moz-linear-gradient(left,rgba(234,234,198,1),rgba(234,234,198,0)); background: -webkit-linear-gradient(left,rgba(234,234,198,1),rgba(234,234,198,0)); background: linear-gradient(to right, rgba(234,234,198,1),rgba(234,234,198,0)); }
#technique .box_wrap h3::before { position: absolute; top: 50%; left: 3rem; content:""; display: block; width: 100%; height: 18px; background: url(../_data/_img/common/icon_rhombus02.png)no-repeat; transform: translateY(-50%); }
#technique .box_wrap .flb { margin: 2rem; flex-wrap: wrap; }
#technique .box_wrap .flb .img_box { margin: 0 0 1rem 0; text-align: center; }
@media screen and ( min-width: 768px ) {
	#technique section h2::before { left: -7rem; }
	#technique .box_wrap { margin: 5rem 0 7.5rem; }
	#technique .box_wrap .flb { margin: 2rem 4rem 0; }
	#technique .box_wrap .flb .img_box { width: calc( (99.999% - 2.5rem) / 2 ); margin: 0 2.5rem 0 0; text-align: left; }
	#technique .box_wrap .flb .text_box { width: calc( (99.999% - 2.5rem) / 2 ); }
}

/* technique 技法==============================*/
/* 共通 */
#fivefestivals main section { margin-bottom: 5rem; }
#fivefestivals main section:not(:nth-of-type(1)) { margin-top: 0; padding-top: 0; }
#fivefestivals main section:not(:nth-of-type(1)) .sec_inner { padding-top: 0; }
#fivefestivals section h2::before { position: absolute; top: 50%; left: -1.5rem; content:""; display: block; width: 100%; height: 100%; background: url(../_data/_img/common/icon_rhombus01.png)no-repeat; transform: translateY(-50%); }
#fivefestivals .box_wrap { margin: 3rem 0; }
#fivefestivals .box_wrap h3 { position: relative; padding-left: 5rem; font-size: 1.8rem; line-height: 1.5; background-color: #eaeac6; background: #eaeac6; background: -moz-linear-gradient(left,rgba(234,234,198,1),rgba(234,234,198,0)); background: -webkit-linear-gradient(left,rgba(234,234,198,1),rgba(234,234,198,0)); background: linear-gradient(to right, rgba(234,234,198,1),rgba(234,234,198,0)); }
#fivefestivals .box_wrap h3::before { position: absolute; top: 50%; left: 1rem; content:""; display: block; width: 100%; height: 18px; background: url(../_data/_img/common/icon_rhombus02.png)no-repeat; transform: translateY(-50%); }
#fivefestivals .flb_r { margin: 2rem 1rem; flex-wrap: wrap; }
#fivefestivals .flb_r .img_box { margin: 0 0 1rem 0; text-align: center; }
#fivefestivals .dub_img { display: flex; }
#fivefestivals .dub_img img { width: 50%; }
#fivefestivals dl dt span { display: inline; padding: 0.2rem 0.9rem; font-size: 1.2rem; color: #fff; text-align: center; border-radius: 5px; }
#fivefestivals dl dt span { background: #FF777C; }
#fivefestivals dl dt:not(:nth-of-type(1)) span,
#fivefestivals dl div dt span { background: #91915C; }
#fivefestivals dl dd { font-size: 1.3rem; line-height: 1.5; }
#fivefestivals dl dd:not(:nth-last-of-type(1)) { margin-bottom: 1.5rem; }
@media screen and ( min-width: 481px ) {
	#fivefestivals .box_wrap h3 { padding-left: 7rem; }
	#fivefestivals .box_wrap h3::before { left: 3rem; }
}
@media screen and ( min-width: 768px ) {
	#fivefestivals section h2::before { left: -7rem; }
	#fivefestivals .box_wrap { margin: 5rem 0 7.5rem; }
	#fivefestivals .box_wrap .flb_r { margin: 2rem 4rem 0; }
	#fivefestivals .box_wrap .img_box { width: calc(25% - 2rem); margin: 0 0 1rem 4rem; text-align: right; }
	#fivefestivals .box_wrap .img_box img:not(:nth-last-of-type(1)) { margin-bottom: 2rem; }
	#fivefestivals .box_wrap .dub_img { display: block; }
	#fivefestivals .box_wrap .dub_img img { width: 100%; }
	#fivefestivals .box_wrap .text_box { width: calc( 75% - 2rem ); }
	#fivefestivals dl { flex-wrap: wrap; }
	#fivefestivals dl dt { width: 60px; margin-right: 3rem; }
	#fivefestivals dl dd { width: calc( 100% - 90px ); }
	#fivefestivals dl dd > span { display: block; }
}


/* faq Ｑ＆Ａ==============================*/
#faq section h2::before { position: absolute; top: 50%; left: -2rem; content:""; display: block; width: 100%; height: 100%; background: url(../_data/_img/common/icon_rhombus01.png)no-repeat; transform: translateY(-50%); }
#faq dl dt { position: relative; padding-left: 1.5em; font-weight: bold; font-size: 1.8rem; line-height: 1.5; background: #eaeac6; background: -moz-linear-gradient(left,rgba(234,234,198,1),rgba(234,234,198,0)); background: -webkit-linear-gradient(left,rgba(234,234,198,1),rgba(234,234,198,0)); background: linear-gradient(to right, rgba(234,234,198,1),rgba(234,234,198,0)); }
#faq dl dt::before { position: absolute; top: 0; left: 0; content:"Q."; display: block; width: 1em; height: 1em; }
#faq dl dd { margin: 1.5rem 1rem 1.5rem 2em; font-size: 1.5rem; line-height: 1.5; }
@media screen and ( min-width: 768px ) {
	#faq section h2::before { left: -7rem; }
	#faq dl { padding: 0 2.5rem; }
	#faq dl dd { margin: 1.5rem 4rem; }
	#faq dl dd > span { display: block; }
}

/* hinaningyo 雛人形==============================*/
/* 共通 */
#hinaningyo h2::before { position: absolute; top: 50%; left: -1.5rem; content:""; display: block; width: 100%; height: 100%; background: url(../_data/_img/common/icon_rhombus04.png)no-repeat; transform: translateY(-50%); }
#hinaningyo section .img_box { text-align: center; }
@media screen and ( min-width: 481px ) {
	#hinaningyo section:not(#costume) h2 { line-height: 1; }
}
@media screen and ( min-width: 769px ) {
	#hinaningyo h2::before { left: -7rem; }
	#hinaningyo section .img_box:nth-of-type(2) { text-align: right; flex-grow: 2; }
}
/* costume */
#costume h2::before { background: url(../_data/_img/common/icon_rhombus03.png)no-repeat; }
@media screen and ( min-width: 769px ) {
	#costume .img_box { text-align: right; flex-grow: 2; }
}

/* gogatsuningyo 五月人形==============================*/
#gogatsuningyo h2::before { position: absolute; top: 50%; left: -1.5rem; content:""; display: block; width: 100%; height: 100%; background: url(../_data/_img/common/icon_rhombus05.png)no-repeat; transform: translateY(-50%); }
#gogatsuningyo .img_box { text-align: center; }
#gogatsuningyo .img_box:not(:nth-last-of-type(1)) { margin: 0 0 3rem 0; }
@media screen and ( min-width: 769px ) {
	#gogatsuningyo h2::before { left: -7rem; }
	#gogatsuningyo .img_box { text-align: left; }
	#gogatsuningyo .img_box:not(:nth-last-of-type(1)) { margin: 0 3rem 0 0; }
}

/* yoroikazari */
#yoroikazari .flb div:nth-of-type(2) img:nth-of-type(1) { margin-bottom: 3rem; }
@media screen and ( min-width: 769px ) {
	#yoroikazari .flb div:nth-of-type(1) { width: calc( 100% + 3rem ); }
	#yoroikazari .flb div:nth-of-type(2) { width: calc( 100% - 3rem ); }
}

/* season 季節・贈り物==============================*/
/* 共通 */
#season h2::before { position: absolute; top: 50%; left: -1.5rem; content:""; display: block; width: 100%; height: 100%; background: url(../_data/_img/common/icon_rhombus06.png)no-repeat; transform: translateY(-50%); }
@media screen and ( min-width: 481px ) {
	#season .img_wrap .img_box:not(:nth-last-of-type(1)) { margin-right: 2rem; }
}
@media screen and ( min-width: 769px ) {
	#season h2::before { left: -7rem; }
}
/* decoration 自分流飾り==============================*/
#decoration #mv .inner { position: relative; }
#decoration #mv h2 { position: absolute; top: 1rem; left: 1.5rem; font-size: 4rem; color: #fff; }
#decoration #mv img { width: 100%; }
#decoration h2 { padding-left: 0; line-height: 1.3; }
#decoration h2 span { display: block; }
#decoration .list .mark { top: 50%; transform: translateY(-50%); }
#decoration .box_wrap { margin: 3rem 0; }
#decoration .img_box p { margin: 1rem 0; }
@media screen and ( min-width: 481px ) {
	#decoration #mv h2 { left: 3rem; font-size: 4.5rem; }
}
@media screen and ( min-width: 769px ) {
	#decoration #mv h2 { top: auto; bottom: 0; left: 13.5rem; font-size: 5rem; }
	#decoration .img_box p { margin: 0; }
	#decoration .flb { align-items: baseline; }
	#decoration .w50 img { width: 50%; margin-right: 2rem; }
}
/* cation */
#cation h2 { padding-left: 1em; font-size: 2rem; }