@charset "UTF-8";

/*
======== table of content. ===============

summary:ワイヤーフレーム要素

- browser
- base link color
- html
- body
- wrapper
- header
- nav#globalmenu
- content
- footer
- #buttons

==========================================
*/

@media screen and (min-width: 768px) {
.outfit .outfitcontent .list_nav li a:hover { background-color: #f99c3e; color: #fff; }
}

@media screen and (max-width: 640px) {

/*----------------------------------------
753
------------------------------------------*/
/* 共通
------------------------------------------*/
img {
  max-width: 100%;
  height: auto;
}
#shichigosan #content {
	padding:10px 10px 210px;
}

#content #inner,
.schedule #content #inner,
.faq #content #inner {
	background:none;
}

aside {
	float:none;
	width:100%;
}

#shichigosan aside h1 a {
	display:block;
	width:100%;
	max-height:160px;
	margin-bottom:20px;
	background:url(../images/title_shichi_sp.png) no-repeat 0 0;
	background-size:contain;
}

#localnav {
	margin-bottom:20px;
}

#localnav li {
	position:relative;
	padding:4px;
	margin-bottom:5px;
}

#localnav a {
	display:block;
	position:relative;
	height:30px;
	line-height:30px;
	border:1px solid #fff;
	background:none;
	color:#fff;
	overflow:hidden;
}

#localnav #trigger {
	padding:0;
	background-color:#eb5279;
}


/* content
------------------------------------------*/

#main {
	float:none;
	position:relative;
	width:auto;
	padding:10px;
}

.bluecontent h1,
.skycontent h1,
.pinkcontent h1,
.redcontent h1,
.purplecontent h1 {
	width:auto;
	padding-left:20px;
	background-position:100% 0;
	color:#fff;
	font-size:128%;
	line-height:42px;
}

.titlefix h2 {
	width:100%;
}

.forpc { display:none; }
img.forpc { display:none; }
br.forpc { display:none; }

.forsp { display:block; }
br.forsp { display:inline; }
img.forsp { display:inline; }


.btn_red a,
.btn_purple a {
	width:100%;
	padding: 2px; 
	font-size: 18px;
}
.btn_red a > span,
.btn_purple a > span {
height: 60px;
padding-top: 18px;
}
.btn_red a > span span,
.btn_purple a > span span {
display: block;
}

footer {
	position:relative;
	height:200px;
	margin:-200px auto 0;
}


/* トップ
------------------------------------------*/
.point h2 {
	width:60%;
	margin-bottom:10px;
	padding-left:20px;
	font-size:16px;
	line-height:34px;
}
.point li {
	position:relative;
	width:auto;
	color:#e73462;
	font-size:114%;
}
.point li:first-child {
	margin-bottom:10px;
	padding-bottom:10px;
	background:url(../images/bd_dotted_5.png) repeat-x 0 100%;
}
.point li:last-child {
	margin-bottom:30px;
}

.point .photowrap img {
	width:110px !important;
	height:110px !important;
}

.bluecontent,
.orangecontent dl {
	line-height:30px;
}

.bluecontent dt,
.orangecontent dt {
	float:none;
	width:100%;
	height:30px;
}

.bluecontent dd,
.orangecontent dd {
	margin-left:0;
	padding:5px 10px;
}

.bluecontent .sch_table,
.orangecontent .sch_table {
	padding-bottom:5px;
}

.bluecontent .sch_table dt,
.orangecontent .sch_table dt {
	margin-bottom:10px;
}

.bluecontent .sch_table dd,
.orangecontent .sch_table dd {
	clear:both;
	margin-left:0;
}

.bluecontent .sch_table .txt_notice {
	position:relative;
	top:0;
	left:0;
	width:100%;
	margin-top:10px;
}

.bluecontent .sch_table .txt_notice_l {
	margin-top:0;
	padding:10px;
}

.bluecontent .sch_table li,
.orangecontent .sch_table li {
	position:relative;
	padding:5px 0 5px 60px;
	letter-spacing:-1px;
	line-height:1.28;
}


.bluecontent .sch_table .month,
.orangecontent .sch_table .month {
	display:inline-block;
	position:absolute;
	left:0;
	width:48px;
	font-size:142%;
}

.bluecontent .sch_table .text_ll,
.orangecontent .sch_table .text_ll {
	font-size:142% !important;
}

.bluecontent .sch_table .adjust,
.orangecontent .sch_table .adjust {
	margin-left:0;
}


.bluecontent .sch_table dd .photowrap {
	position:relative;
	right:auto;
	top:auto;
	width:100%;
	margin-top:10px;
	text-align:center;
}
.bluecontent .sch_table dd .photowrap img {
	width:100%;
	height:auto;
}
.bluecontent .sch_table dd .photowrap img + img {
	margin-top:10px;
}

.bluecontent .time_table,
.orangecontent .time_table {
	padding-bottom:0;
}

.bluecontent .time_table .absolute,
.orangecontent .time_table .absolute {
	display:none;
}

.access img {
	float:none;
	margin:0 0 10px;
	padding:2px;
}

.contactbox.titlefix h2 {
	width:100%;
}

.contactbox .photowrap {
	display:none;
}

.contactbox .dial {
	font-size:100%;
}

.contactbox .dial span {
	display:block;
}

.contactbox p {
	font-size:67%;
}

.contactbox .arrow_rr {
	font-size:100%;
}

.bluecontent .box_counter,
.orangecontent .box_counter { padding: 20px 0 0; }
.bluecontent .box_counter p span.forpc,
.orangecontent .box_counter p span.forpc { display: none;}



.box_covid19 .img_covid img { flex-shrink: 0; flex-basis: 50%; width: 50%; }


/* 実施日
------------------------------------------*/
.schedule .titlefix h2 {
	width:100%;
}

.schedule .titlefix .absolute {
	position:relative;
	top:0;
	left:0;
	text-align:right;
}

.schedule .titlefix .text_0 img {
	width:100%;
	max-width:364px;
	height:auto;
	margin-bottom:10px;
}

.schedule .titlefix .text_0 img:nth-child(1),
.schedule .titlefix .text_0 img:nth-child(2) {
	margin-right:0;
}

.schedule .titlefix .pt10 img {
	width:100%;
	height:auto;
}

.schedule .titlefix .pt10 img:first-child {
	margin:0 0 20px!important;
}

.schedule .titlefix .color_red {
	font-size:86%;
}

.bluecontent .h40 {
	height: auto!important;
}

/* プラン
------------------------------------------*/
.rentalpack .mb20 img {
	width:100%;
	height:auto;
}

.rentalpack li {
	font-size:86%;
}

.rentalpack li img {
	width:45px;
	height:45px;
}

.rentalpack li p {
	margin-left:60px;
}

.rentalpack li strong {
	font-size:200%;
	line-height:1.5;
}

.rentalpack li span {
	font-size:128%;
}

.rentalpack .absolute {
	display:none;
}

.privilege .titlefix .text_ll {
	font-size:142% !important;
}

.privilege .titlefix .text_l {
	font-size:100% !important;
}

.privilege .titlefix img,
.privilege .titlefix .adjust {
	position:relative;
	top:0;
	right:0;
	float:right;
}

.privilege h1.line2 img {
  width: 42px;
  height: 24px;
  margin-right: 10px;
}


.dress .left {
	width:39%;
	max-width:166px;
	height:auto;
}

.dress .left img {
	width:100%;
	max-width:166px;
	height:auto;
}

.dress .price1 {
	width:61%;
	text-align:center;
	white-space:nowrap;
}

.dress .right {
	float:left;
	width:100%;
}

.dress .titlefix {
	clear:both;
	float:none;
	width:auto;
}

.dress .bd_purple img {
	width:30%;
	max-width:112px;
	height:auto;
	margin:0 0 0 20px;
}

.dress .titlefix p,
.family .box p {
	font-size:100%;
}

/* オプション
------------------------------------------*/
.makeup {
	margin-bottom:20px;
	padding:140px 0 0 0;
	background:url(../images/bg_makeup_sp.png) no-repeat 0 0;
	background-size:contain;
}

.makeup li {
	text-align:center;
}

.makeup li img {
	float:none;
	margin:0 0 10px;
}

.makeup li h2 {
	margin:0;
	font-size:128%;
}

.photo {
	padding:114px 0 0 0;
	background:url(../images/bg_photo_sp.png) no-repeat 0 0;
	background-size:contain;
}

.photo .maintitle {
	font-size:114%;
}

.photo .titlefix.innotefix {
	padding-top:60px;
}
.photo .titlefix .notefix {
	top: 36px;
	left:0;
	width:96%;
	text-align:right;
}

.photo .sky {
	float:none;
	width:auto;
	margin-bottom:10px;
}

.photo h3 {
	margin-bottom:0;
	font-size:114%;
}

.photo h3.subtitle {
	margin-bottom:10px;
}

.photo .baseprice {
	float:none;
	margin:12px 0;
}

.photo .packprice {
	text-align:center;
}
.photo .packprice.sakura { margin-top: 10px; }

.photo .packprice span {
	display:block;
	margin-right:0;
	margin-bottom: 5px;
	padding: 2px 10px;
}

.photo .packprice span.text_s {
	display:inline;
	padding: 0;
	vertical-align: baseline;
}

.photo .alignright {
	text-align:left!important;
}

/* よくある質問
------------------------------------------*/
.faq #main h1 {
	font-size:120%;
	letter-spacing:-1px;
}

.question {
	font-size:86%;
	line-height:1.3;
}

.answer {
	font-size:86%;
	line-height:1.5;
}



/* 衣裳コレクション
------------------------------------------*/
.outfit .outfitcontent h3 { }
.outfit .outfitcontent ul { }
.outfit .outfitcontent li { width:46.5%; margin-bottom:20px; }
.outfit .outfitcontent li a { -webkit-tap-highlight-color: transparent; -webkit-tap-highlight-color:rgba(0,0,0,0); }

.outfit .outfitcontent .list_links li { width: 47.25%; }

.outfit .outfitcontent .list_nav { flex-wrap: wrap; }
.outfit .outfitcontent .list_nav li { width: 47.25%; margin-bottom: 20px; }


} /* @media screen and (max-width: 640px)  */


@media screen and (max-width: 480px) {

#shichigosan aside h1 a {
	max-height:120px;
}

.point h2 {
	width:46%;
}

.access img {
	float:none;
	width:254px !important;
	height:174px !important;
	margin:0 0 10px;
	padding:2px;
}

.makeup {
	padding:110px 0 0 0;
}

.photo {
	padding:92px 0 0 0;
}

}

@media screen and (max-width: 400px) {

#shichigosan aside h1 a {
	max-height:100px;
}

.point h2 {
	width:46%;
}

.access img {
	float:none;
	width:254px !important;
	height:174px !important;
	margin:0 0 10px;
	padding:2px;
}

.makeup {
	padding:84px 0 0 0;
}

.photo {
	padding:70px 0 0 0;
}

.btn_red a,
.btn_purple a {
	font-size: 16px;
}

}


@media screen and (max-width: 360px) {
.btn_red a {
	font-size: 14px;
}
.privilege h1.line2 {
letter-spacing: -1px;
}

}
