@charset "utf-8";
/* メインビジュアル
------------------------------------------------ */
.cmn_ttl {
	text-align: center;
	font-size: 38px;
	letter-spacing: 3px;
	line-height: 130%;
	font-weight: 500;

}

.cmn_ttl_large {
	font-size: 44px;
	color: #CC0066;
}

/* メインビジュアル
------------------------------------------------ */
.main_img {
	min-width: 1080px;
	position: relative;
}

.main_img img {
	width: 100%;
	vertical-align: top;
}

.main_img_txt_block {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.main_img_txt_box {
	width: 44.4%;
	margin: 8.5% auto 0 auto;
	text-align: center;
}

.main_img_txt01 {
	font-size: 40px;
	line-height: 110%;
}

.main_img_txt02 {
	font-size: 20px;
	line-height: 110%;
	margin-top: 3.5%;
}

.main_img_txt02_large {
	font-size: 28px;
}

.main_img_txt03 {
	font-size: 23px;
	line-height: 110%;
	margin-top: 0.8%;
}

.main_img_txt04 {
	font-size: 32px;
	line-height: 110%;
	margin-top: 3%;
text-shadow:
        #ffffff 1px 1px 0, #ffffff -1px -1px 0,/*右下、左上*/
        #ffffff -1px 1px 0, #ffffff 1px -1px 0,/*右上、左下*/
        #ffffff 0px 1px 0, #ffffff  0-1px 0,/*右、左*/
        #ffffff -1px 0 0, #ffffff 1px 0 0;/*上、下*/

}
.main_img_txt04_large {
	font-size: 38px;
}






/* 早めの振袖選び
------------------------------------------------ */
.kimono_early_area {
	background: url(../images/top/bg01.png) repeat 0 0;
}

.kimono_early_content {
	padding: 100px 0 92px 0;
}

.kimono_early_img img {
	max-width: 100%;
	vertical-align: top;
}

.ribbon_area {
	background: #C7000A;
}

.ribbon_content {
	height: 10px;
	position: relative;
}

.ribbon_img {
	position: absolute;
	top: -49px;
	left: 6px;
	z-index: 2;
}

.ribbon_img img {
	max-width: 100%;
	vertical-align: top;
}

/* いつから？
------------------------------------------------ */
.kimono_when_area {
	background: url(../images/top/bg02.png) repeat 0 0;
	position: relative;
}

.kimono_when_bg {
	background: url(../images/top/kimono_when_bg.png) no-repeat 100% 100%;

}

.kimono_when_content {
	padding: 95px 0 56px 0;
}

.kimono_when_ttl {
	margin-bottom: 50px;
}

.kimono_when_data {
	padding: 0 0 35px 12px;
}

.kimono_when_data img {
	max-width: 100%;
	vertical-align: top;
}

.kimono_when_data_txt {
	font-size: 18px;
	width: 583px;
	margin: 0 0 0 28px;
}

.kimono_when_arrow {
	position: absolute;
	bottom: -37px;
	left: 50%;
	margin: 0 0 0 -66px;
	z-index: 2;
}

/* 優先予約締切時期
------------------------------------------------ */
.reserv_timing_area {
	background: url(../images/top/bg21.png) repeat 0 0;
	position: relative;
}

.reserv_timing_bg {
	background: url(../images/top/reserv_timing_bg01.png) no-repeat 0 100%;
}

.reserv_timing_bg02 {
	background: url(../images/top/reserv_timing_bg02.png) no-repeat 100% 100%;
}

.reserv_timing_bg03 {
	background: url(../images/top/reserv_timing_bg03.png) no-repeat 0 100%;
}

.reserv_timing_bg03_02 {
	background: url(../images/top/reserv_timing_img02.png) no-repeat 0 100%;
}

.reserv_timing_content {
	padding: 109px 0 87px 0;
}

.reserv_timing_ttl {
	margin-bottom: 20px;
}

.reserv_timing_block {
	text-align: center;
	margin-bottom: 27px;
}

.reserv_timing_list {
	display: table;
	margin: 0 auto;
}

.reserv_timing_box {
	width: 290px;
	height: 58px;
	text-align: center;
	font-size: 26px;
	font-weight: 500;
	box-sizing: border-box;
	padding: 18px 0 0 0;
	color: #ffffff;
	display: table-cell;
}

.reserv_timing_box01 {
	background: #138B8B;
}

.reserv_timing_box02 {
	background: #F5A200;
}

.reserv_timing_box03 {
	background: #CC0066;
}
.reserv_timing_txt_box {
	display: table;
	margin: 0 auto;
	font-size: 20px;
	line-height: 140%;
}

.reserv_timing_txt {
	padding-left: 50px;
}

/* 早めのご来店で、こんなにお得！
------------------------------------------------ */
.obtained_area {
	background: url(../images/top/bg03.png) repeat 0 0;
}

.obtained_content {
	padding: 110px 0 229px 0;
}

.obtained_img_block {
	position: relative;
	height: 382px;
	margin: 0 0 0 8px;
}

.obtained_img_img01 {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
}

.obtained_img_img02 {
	position: absolute;
	top: 0;
	left: 351px;
	z-index: 2;
}

.obtained_img_img03 {
	position: absolute;
	top: 0;
	left: 701px;
	z-index: 1;
}

.obtained_img_ttl {
	position: absolute;
	top: 123px;
	left: 94px;
}
.obtained_img_txt {
	position: absolute;
	top: 198px;
	left: 53px;
	width: 225px;
	font-size: 32px;
	font-weight: 500;
	line-height: 130%;
	text-align: center;
}

.obtained_img_txt_small {
	font-size: 24px;
}

.obtained_img_sub_txt {
	width: 290px;
	font-size: 20px;
	font-weight: 500;
	margin: 28px 0 0 18px;
	line-height: 130%;
}


/* あまのや
------------------------------------------------ */
.amanoya_area img {
	width: 100%;
	vertical-align: top;
}

/* 来店予約
------------------------------------------------ */
.reserv_area {
	background: url(../images/top/bg04.png) no-repeat center 0;
	background-size: cover;
}

.reserv_content {
	padding: 44px 0 0 0;
}

.reserv_block {
	width: 900px;
	margin: 0 auto;
	position: relative;
}

.reserv_block_img img {
	max-width: 100%;
	vertical-align: top;
}

.reserv_txt_block {
	position: absolute;
	top: 37px;
	left: 28px;
	width: 194px;
	font-size: 20px;
	color: #C7251F;
}

.reserv_txt_large {
	font-size: 24px;
}

.reserv_date_block {
	position: absolute;
	top: 45px;
	left: 238px;
	font-size: 29px;
	color: #ffffff;
}


.reserv_tel_block {
	position: absolute;
	top: 176px;
	right: 60px;
	width: 335px;
	text-align: center;
}

.reserv_tel_ttl {
	font-size: 32px;
	font-weight: 500;
	margin-bottom: 13px;
}

.reserv_tel_num {
	font-size: 36px;
	font-weight: 500;
	color: #C6251F;
	margin-bottom: 12px;
}

.reserv_tel_icon {
	display: inline-block;
	padding: 0 0 0 55px;
	background: url(../images/top/icon_tel.png) no-repeat 0 0;
}

.reserv_tel_time {
	font-size: 18px;
}

.reserv_web_block {
	position: absolute;
	top: 338px;
	right: 60px;
	width: 335px;
	text-align: center;
}

.reserv_web_ttl {
	font-size: 32px;
	font-weight: 500;
	margin-bottom: 10px;
}

/* 振袖コレクション
------------------------------------------------ */
.collection_area {
	background: url(../images/top/bg05.png) repeat-y center 0;
	background-size: 100% auto;
	position: relative;
}

.collection_ribbon {
	position: absolute;
	top: 0;
	left: 0;
}

.collection_content {
	padding: 97px 0 70px 0;
}

.collection_ttl {
	margin-bottom: 23px;
}

.collection_slide_block {
	background: url(../images/top/bg06.png) repeat center 0;
	padding: 23px 31px;
}

.collection_slide_img {
	padding: 0 9px;
	text-align: center;
}

.collection_slide_img {
	max-width: 100%;
	vertical-align: top;
}

/* セット価格
------------------------------------------------ */
.set_price_content {
	padding: 0 0 97px 0;
}

.set_price_block {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	padding: 8px;
	position: relative;
}
.set_price_block_mt {
	margin-top: 79px;
}
.set_price_buy_block {
	background: #C94799;
}
.set_price_rental_block {
	background: #60BEC0;
}
.set_price_remake_block {
	background: #FFCC00;
}

.set_price_cat {
	position: absolute;
	top: -11px;
	left: 0;
}

.set_price_in_block {
	background: #ffffff;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding: 0 0 16px 0;
}

.set_price_ttl {
	padding: 21px 0 16px 261px;
}

.set_buy_list li {
	float: left;
}

.set_buy_cat {
	background: url(../images/top/bg07.png) repeat 0 0;
	height: 50px;
	padding: 0 17px;
	text-align: center;
	vertical-align: middle;
	display: table-cell;
	font-size: 18px;
	font-weight: 600;
	line-height: 110%;
}

.set_buy_cat_icon {
	height: 50px;
	padding: 0 2px;
	text-align: center;
	vertical-align: middle;
	display: table-cell;
	font-size: 26px;
/*
	font-weight: 500;
*/
}
.set_buy_cat_icon img {
	vertical-align: top;
}

.set_price_info_block {
	margin: 0 auto;
	width: 967px;
}

.set_price_info_img {
	width: 480px;
	float: left;
	position: relative;
}
.set_price_info_img img {
	max-width: 100%;
	vertical-align: top;
}

.set_price_img_icon {
	position: absolute;
	bottom: 0;
	right: -29px;
	z-index: 2;
}

.set_price_info_ri {
	width: 459px;
	float: right;
}

.set_price_info_ttl {
	font-size: 30px;
	font-weight: 500;
	text-align: center;
	padding: 20px 0 8px 0;
}

.set_price_info_sub_ttl {
	font-size: 20px;
	padding: 15px 0 0 0;
}

.set_price_info_remake_ttl {
	font-size: 22px;
	font-weight: 500;
	padding: 20px 0 8px 0;
}

.set_price_info_remake_ttl_cat {
	display: inline-block;
	background: url(../images/top/bg12.png) repeat 0 0;
	font-size: 24px;
	padding: 10px 17px 4px 17px;
	margin: 0 28px 0 0;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}



.set_price_box {
	position: relative;
}

.set_price_box_buy {
	background: url(../images/top/bg08.png) repeat-x 0 0;
}

.set_price_box_buy_bg {
	background: url(../images/top/bg08.png) repeat-x 0 100%;
}

.set_price_box_rental {
	background: url(../images/top/bg10.png) repeat-x 0 0;
}

.set_price_box_rental_bg {
	background: url(../images/top/bg10.png) repeat-x 0 100%;
}

.set_price_box_remake {
	background: url(../images/top/bg13.png) repeat-x 0 0;
}

.set_price_box_remake_bg {
	background: url(../images/top/bg13.png) repeat-x 0 100%;
}

.set_price_info_img_icon {
	position: absolute;
	bottom: -45px;
	right: -26px;
}

.set_price_in_box {
	padding: 23px 0 24px 0;
}

.set_price_box_buy_txt {
	font-size: 16px;
	padding: 0 0 11px 24px;
	line-height: 130%;
}

.set_price {
	display: table;
	margin: 0 auto;
}

.set_price01 {
	font-size: 16px;
	font-weight: 500;
	display: table-cell;
	vertical-align: bottom;
	text-align: center;
	padding: 10px 0 0 0;
	line-height: 120%;
}
.set_price01 .large{
	font-size: 25px;
	color: #D03866;
}
.set_price01_large{
	font-size: 25px;
}
.set_price02 {
	display: table-cell;
	vertical-align: bottom;
	padding: 10px 0 0 0;
}
.set_price02 .txt_price {
	font-size: 40px;
	font-weight: 500;
	color: #D03866;
}

.set_price02 .txt_yen_off {
	font-size: 32px;
	font-weight: 500;
	color: #D03866;
}

.set_price02 .txt_yen {
	font-size: 20px;
	font-weight: 500;
	color: #D03866;
	position: relative;
}
.set_price02 .txt_yen02 {
	padding: 0 14px 0 24px;
	margin-left: -10px;
}

.set_price02 .txt_yen:before {
	position: absolute;
	top: -18px;
	left: 0;
/*	content: '(税抜)';*/
	font-size: 20px;
	width: 100%;
	color: #D03866;
	font-weight: 500;
}

.set_price_cmn_txt {
	font-size: 20px;
	font-weight: 500;
	padding: 17px 20px 0 37px;
	line-height: 160%;
}

.set_price_ttl {
	padding: 21px 0 16px 261px;
}

.set_price_ttl_rental {
	background: url(../images/top/bg09.png) repeat 0 0;
	margin: 0 27px 0 0;
	font-size: 24px;
	font-weight: 500;
	padding: 16px 15px 11px 32px;
}

.set_price_ttl_remake {
	background: url(../images/top/bg11.png) repeat 0 0;
	margin: 0 27px 0 0;
	font-size: 24px;
	font-weight: 500;
	padding: 16px 15px 11px 32px;
}


.set_price_remake_price_box {
	width: 100%;
	margin: 10px 0 0 0;
}

.set_price_remake_price_box_mt {
	margin: 20px 0 0 0;
}


.set_price_remake_price01_box {
	vertical-align: middle;
	text-align: left;
	width: 170px;
}


.set_price_remake_price01 {
	background: url(../images/top/line_gray.gif) repeat-x 0 center;
	padding: 0 25px 0 0;
	font-size: 18px;
}

.set_price_remake_price01 span {
	display: inline-block;
	background: #ffffff;
	padding: 0 17px 0 0;
}

.set_price_remake_price_box .set_price02 {
	text-align: right;
}




/* 振袖選びから成人式までの流れ
------------------------------------------------ */
.flow_area {
	background: url(../images/top/bg14.png) repeat 0 0;
}

.flow_area_bg {
	background: url(../images/top/flow_bg.png) no-repeat 0 0;

}

.flow_area_bg02 {
	background: url(../images/top/flow_bg02.png) no-repeat center 34px;
}

.flow_content {
	padding: 111px 0 97px 0;
}

.flow_ttl {
	margin-bottom: 94px;
}

.flow_list {
	padding-bottom: 90px;
}

.flow_list_pb {
	padding-bottom: 90px;
}

.flow_list_bg {
	background: url(../images/top/flow_bg03.png) no-repeat center 374px;
}

.flow_list_bg02 {
	background: url(../images/top/flow_bg03.png) no-repeat 280px 364px;
}

.flow_list_bg03 {
	background: url(../images/top/flow_bg03.png) no-repeat 485px 364px;
}

.flow_list_bg04 {
	background: url(../images/top/flow_bg03.png) no-repeat 87px 364px;
}


.flow_list_ttl {
	font-size: 38px;
	font-weight: 500;
	padding: 24px 0 8px 95px;
	margin-bottom: 7px;
}

.flow01 {
	background: url(../images/top/no01.png) no-repeat 0 0;
}

.flow02 {
	background: url(../images/top/no02.png) no-repeat 0 0;
}

.flow03 {
	background: url(../images/top/no03.png) no-repeat 0 0;
}

.flow04 {
	background: url(../images/top/no04.png) no-repeat 0 0;
}

.flow05 {
	background: url(../images/top/no05.png) no-repeat 0 0;
}

.flow06 {
	background: url(../images/top/no06.png) no-repeat 0 0;
}

.flow07 {
	background: url(../images/top/no07.png) no-repeat 0 0;
}

.flow08 {
	background: url(../images/top/no08.png) no-repeat 0 0;
}

.flow09 {
	background: url(../images/top/no09.png) no-repeat 0 0;
}

.flow10 {
	background: url(../images/top/no10.png) no-repeat 0 0;
}

.flow_list_box {
	background: url(../images/top/bg15.png) repeat-x 0 0 #ffffff;
/*
	width: 325px;
*/
	box-sizing: border-box;
	padding: 37px 15px 15px 15px;
}

.flow_list_txt {
	font-size: 18px;
	padding: 0 2px 26px 5px;
	line-height: 160%;
}

.flow_list_img {
	position: relative;
}

.flow_list_img img {
	max-width: 100%;
	vertical-align: top;
}

.flow02_btn {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	text-align: center;
}

.flow_list_li {
	width: 325px;
	float: left;
	position: relative;
	padding-right: 24px;
}

.flow_list_li_last {
	width: 325px;
	float: left;
}

.flow_list_li_twobox {
	width: 672px;
	float: left;
	position: relative;
	padding-right: 24px;
}

.flow_list_arrow {
	position: absolute;
	top: 135px;
	right: -10px;
	z-index: 2;
}

.flow_one_ttl_block {
	text-align: center;
}

.flow_one_ttl {
	font-size: 38px;
	font-weight: 500;
	padding: 24px 0 8px 95px;
	display: inline-block;
	margin-bottom: 7px;
}

.flow_one_box {
	background: url(../images/top/bg15.png) repeat-x 0 0 #ffffff;
	box-sizing: border-box;
	padding: 12px 0 0 0;
}

.flow_one_box_bg {
	background: url(../images/top/flow_bg04.png) no-repeat 0 0;
	box-sizing: border-box;
	padding: 73px 15px 56px 68px;
	position: relative;
}

.flow_one_txt {
	font-size: 18px;
	line-height: 160%;
	width: 441px;
}

.flow_one_img {
	position: absolute;
	bottom: 0;
	right: 0;
}

.flow_one_img img {
	vertical-align: top;
}

.flow10_box {
	box-sizing: border-box;
	padding: 37px 24px 25px 342px;
	position: relative;
}

.flow10_txt {
	float: left;
	width: 377px;
	font-size: 18px;
}

.flow10_img01 {
	float: right;
	width: 268px;
}

.flow10_img02 {
	position: absolute;
	bottom: -43px;
	left: 0;
}

.flow10_box img {
	vertical-align: top;
}

.flow10_txt_list li {
	background: url(../images/top/flow_txt_line.png) no-repeat 0 2px;
	padding: 0 0 0 16px;
	margin-top: 34px;
}

/* 思い出に残る撮影会
------------------------------------------------ */
.photo_area {
	background: url(../images/top/bg16.png) repeat 0 0;
}

.photo_area_bg {
	background: url(../images/top/photo_bg.png) no-repeat center 138px;
}

.photo_content {
	padding: 80px 0 84px 0;
}
.photo_content_bg {
	background: url(../images/top/photo_bg02.png) no-repeat 0 30px;
}

.photo_ttl {
	margin-bottom: 240px;

}

.photo_main_block {
	width: 560px;
	margin: 0 auto 54px auto;
	padding: 15px;
	box-sizing: border-box;
	background: #ffffff;
	box-shadow:4px 4px 6px -1px #cbcbcb;
}

.photo_slide_img {
	padding: 0 0 40px 0;
}

.photo_slide_img img {
	max-width: 100%;
	vertical-align: top;
	margin: 0 auto;
}

.photo_slide_info {
	padding: 0 28px 0 14px;
}

.photo_slide_ttl {
	font-size: 20px;
	font-weight: 500;
}

.photo_slide_txt {
	font-size: 18px;
}

.photo_slide_thumb_img {
	max-width: 102px;
	vertical-align: top;
	padding: 4px;
	background: #ffffff;
	margin: 0 auto;
}

/* 前撮り撮影の流れ
------------------------------------------------ */
.take_before_area {
	background: url(../images/top/bg17.png) repeat 0 0;
}

.take_before_area_bg {
	background: url(../images/top/take_before_bg.png) no-repeat 100% 0;
}

.take_before_area_bg02 {
	background: url(../images/top/take_before_bg02.png) no-repeat 0 100%;
}

.take_before_area_bg03 {
	background: url(../images/top/take_before_bg03.png) no-repeat center 27px;
}

.take_before_content {
	padding: 116px 0 28px 0;
}

.take_before_ttl {
	margin-bottom: 50px;
}

.take_before_list li {
	width: 512px;
	float: left;
}

.take_before_bg_br01 {
	background: url(../images/top/take_before_bg_br01.png) no-repeat 100% 100% #FFFFFF;
}

.take_before_bg_tl01 {
	background: url(../images/top/take_before_bg_tl01.png) no-repeat 0 0;
}

.take_before_bg_br02 {
	background: url(../images/top/take_before_bg_br02.png) no-repeat 100% 100% #EEEEEE;
}

.take_before_bg_tl02 {
	background: url(../images/top/take_before_bg_tl02.png) no-repeat 0 0;
}

.take_before_box {
	padding: 63px 54px 33px 50px;
}

.take_before_list_ttl {
	padding: 7px 0 13px 52px;
	font-size: 32px;
	font-weight: 500;
	color: #333333;
}

.take_no01 {
	background: url(../images/top/take_no01.png) no-repeat 0 0;
}

.take_no02 {
	background: url(../images/top/take_no02.png) no-repeat 0 0;
}

.take_no03 {
	background: url(../images/top/take_no03.png) no-repeat 0 0;
}

.take_no04 {
	background: url(../images/top/take_no04.png) no-repeat 0 0;
}

.take_before_list_img {
	width: 273px;
	float: left;
}

.take_before_list_img img {
	max-width: 100%;
	vertical-align: top;
}

.take_before_list_txt {
	width: 135px;
	float: right;
	padding: 30px 0 0 0;
}

.take_before_list_txt p {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	float: right;
	font-size: 20px;
	height: 290px;
	line-height: 140%;
}
.take_before_list_en {
    -moz-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
	display: inline-block;
	margin: 4px 0 0 0;
}

.take_before_staff_img {
	text-align: center;
}

.take_before_staff_img img {
	vertical-align: bottom;
}

/* あまのやのサポートシステム
------------------------------------------------ */
.support_area {
	background: url(../images/top/bg18.png) repeat 0 0;
	position: relative;
}

.support_area_arrow {
	position: absolute;
	bottom: -37px;
	left: 50%;
	margin-left: -64px;
}

.support_content {
	padding: 99px 0 102px 0;
}

.support_ttl {
	margin-bottom: 48px;
}

.support_ttl_large {
	font-size: 44px;
	color: #A7864F;
}

.support_ttl_icon {
	background: url(../images/top/support_logo.png) no-repeat 0 0;
	display: inline-block;
	padding: 8px 0 0 70px;
}

.support_list {
	margin: 0 0 0 -14px;
}

.support_list li {
	width: 334px;
	position: relative;
	float: left;
}

.support_info_box {
	position: absolute;
	width: 320px;
	top: 75px;
	left: 14px;
	text-align: center;
}

.support_info_ttl {
	font-size: 38px;
	font-weight: 500;
	color: #CE3730;
	margin-bottom: 20px;
}

.support_info_txt {
	font-size: 28px;
	font-weight: 500;
	margin-bottom: 15px;
	line-height: 130%;
}

.support_info_sub_txt {
	font-size: 18px;
	line-height: 130%;
}

.support_info_sub_txt02 {
	padding: 0 0 0 90px;
	text-align: left;
}

.support_info_sub_txt .sub {
	font-size: 15px;
}

/* あまのや７つの特徴
------------------------------------------------ */
.chara_area {
	background: url(../images/top/bg20.png) repeat 0 0;
	position: relative;
}

.chara_area_bg {
	background: url(../images/top/chara_area_bg.png) no-repeat center 0;
}


.chara_content {
	padding: 119px 0 75px 0;
	position: relative;
}

.chara_ttl {
	margin-bottom: 46px;
	padding-right: 50px;
}

.chara_ttl_large {
	font-size: 44px;
	color: #D38174;
}

.chara_ttl_icon {
	background: url(../images/top/chara_logo.png) no-repeat 0 4px;
	display: inline-block;
	padding: 8px 0 0 70px;
}

.chara_info_area {
	background: url(../images/top/chara_info_bg.png) no-repeat center 0;
	width: 1024px;
	height: 759px;
	box-sizing: border-box;
	padding: 54px 81px 0 81px;
}

.chara_info_list li {
	background: url(../images/top/chara_line.png) repeat-x 0 100%;
}

.chara_info_txt {
	font-size: 20px;
	line-height: 140%;
	padding: 20px 0 17px 72px;
	width: 470px;
}

.chara_info01 {
	background: url(../images/top/chara_no01.png) no-repeat 2px 20px;
}

.chara_info02 {
	background: url(../images/top/chara_no02.png) no-repeat 2px 20px;
}

.chara_info03 {
	background: url(../images/top/chara_no03.png) no-repeat 2px 20px;
}

.chara_info04 {
	background: url(../images/top/chara_no04.png) no-repeat 2px 20px;
}

.chara_info05 {
	background: url(../images/top/chara_no05.png) no-repeat 2px 20px;
}

.chara_info06 {
	background: url(../images/top/chara_no06.png) no-repeat 2px 20px;
}

.chara_info07 {
	background: url(../images/top/chara_no07.png) no-repeat 2px 20px;
}


.chara_img {
	position: absolute;
	bottom: 0;
	right: -118px;
}

.chara_img img {
	vertical-align: top;
}


/* ご来場予約
------------------------------------------------ */
.reserve_content {
	padding-top: 75px;
	padding-bottom: 114px;
}

.reserve_ttl {
	text-align: center;
	font-size: 44px;
	font-weight: 500;
	margin-bottom: 43px;
}

.reserve_present_img {
	text-align: center;
	margin-bottom: 43px;
}

.reserve_present_img img {
	vertical-align: top;
}

.reserve_step_block {
	margin-bottom: 100px;
}

.reserve_step li {
	width: 336px;
	height: 101px;
	float: left;
	text-align: center;
	box-sizing: border-box;
	padding: 43px 18px 0 0;
	background: url(../images/reserve/step_off.png) no-repeat 0 0;
	font-size: 36px;
	font-weight: 500;
	color: #ffffff;
	margin: 0 0 0 6px;
}

.reserve_step li.reserve_step_on {
	background: url(../images/reserve/step_on.png) no-repeat 0 0;
}

.reserve_step li.first {
	margin-left: 0;
}

.reserve_lead_txt {
	font-size: 18px;
	margin-bottom: 11px;
}


.form_req_box {
	position: relative;
	padding: 10px 100px 0 0;
}

.form_req_box .form_req_icon,
.form_req_box .form_any_icon {
	position: absolute;
	top: -2px;
	right: 0;
}

.form_req_icon {
	background: #FF4759;
	border: 2px solid #FF4759;
	width: 95px;
	height: 44px;
	color: #ffffff;
	box-sizing: border-box;
	text-align: center;
	padding: 8px 0 0 0;
	font-size: 22px;
	font-weight: normal;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.form_any_icon {
	background: #ffffff;
	border: 2px solid #FF4658;
	width: 95px;
	height: 44px;
	color: #FF4658;
	box-sizing: border-box;
	text-align: center;
	padding: 8px 0 0 0;
	font-size: 22px;
	font-weight: normal;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.reserve_lead_txt .form_req_icon {
	display: inline-block;
	margin-right: 5px;
	width: 73px;
	height: 34px;
	padding: 5px 0 0 0;
	font-size: 18px;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
}

.reserve_form_block {
	position: relative;
}

.reserve_form_tbl {
	width: 100%;
	border-collapse: collapse;
	font-size: 22px;
	border-top: 3px solid #C7000A;
	border-bottom: 3px solid #C7000A;
}

.reserve_form_tbl th {
	width: 328px;
	background: url(../images/reserve/form_bg.png) repeat 0 0;
	vertical-align: top;
	box-sizing: border-box;
	padding: 48px 15px 42px 12px;
	border-bottom: 1px solid #CCCCCC;
}

.reserve_form_tbl td {
	vertical-align: top;
	box-sizing: border-box;
	padding: 48px 0 42px 15px;
	border-bottom: 1px solid #CCCCCC;
}

.reserve_form_tbl .form_visit_date th,
.reserve_form_tbl .form_visit_date td {
	border-bottom: none;
	padding-bottom: 24px;
}
.reserve_form_tbl .form_visit_time th,
.reserve_form_tbl .form_visit_time td {
	padding-top: 0;
}
.reserve_form_tbl .form_first th,
.reserve_form_tbl .form_first td {
	padding-top: 110px;
}

.reserve_form_tbl .form_last th,
.reserve_form_tbl .form_last td {
	border-bottom: none;
}

.form_inp01 {
	border: 1px solid #888888;
	font-size: 22px;
	padding: 10px;
	width: 265px;
	box-sizing: border-box;
}

.form_inp02 {
	border: 1px solid #888888;
	font-size: 22px;
	padding: 10px;
	width: 48%;
	box-sizing: border-box;
}

.form_inp03 {
	border: 1px solid #888888;
	font-size: 22px;
	padding: 10px;
	width: 100%;
	box-sizing: border-box;
}

.form_inp04 {
	border: 1px solid #888888;
	font-size: 22px;
	padding: 10px;
	width: 105px;
	box-sizing: border-box;
}

.form_textarea01 {
	border: 1px solid #888888;
	font-size: 22px;
	padding: 10px;
	width: 100%;
	height: 240px;
	box-sizing: border-box;
}

.form_select01 {
	border: 1px solid #888888;
	font-size: 22px;
	padding: 10px;
	box-sizing: border-box;
	width: 265px;
}

.form_select02 {
	border: 1px solid #888888;
	font-size: 22px;
	padding: 10px;
	box-sizing: border-box;
	width: 100%;
}

.form_inp_mt {
	margin-top: 24px;
}

.form_inp_space {
	padding-left: 2%;
}

.form_btn {
	text-align: center;
	margin-top: 56px;
}

.form_btn li {
	display: inline;
	padding: 0 5px;
}

.form_btn li img {
	vertical-align: top;
}

.form_thanks_txt {
	text-align: center;
	padding: 50px 0 0 0;
}

.ErrTip {
	color: #E61F19;
	display: block;
	padding-top: 10px;
}

.form_field_err {
	border: 1px solid #E61F19;
	background: #FEF5F5;
}


.reserve_form_icon_ribbon_top {
	position: absolute;
	top: -14px;
	left: 328px;
}

.reserve_form_icon_ribbon_btm {
	position: absolute;
	bottom: -50px;
	left: 644px;
}


.form_thanks_txt {
	text-align: center;
	padding: 50px 0 0 0;
	font-size: 22px;
	line-height: 160%;
}

.btn_next_bg {
	background: url(../images/reserve/btn_conf.jpg) no-repeat 0 0;
	width: 386px;
	height: 101px;
	display: inline-block;
}
.btn_back_bg {
	background: url(../images/reserve/btn_back.jpg) no-repeat 0 0;
	width: 386px;
	height: 101px;
	display: inline-block;
}
.btn_conf {
	background: url(../images/reserve/icon_arrow.png) no-repeat 75% center;
	width: 386px;
	height: 101px;
	border: none;
	font-size: 30px;
	font-weight: 500;
	color: #333333;
}

.btn_send {
	background: url(../images/reserve/icon_arrow.png) no-repeat 61.8% center;
	width: 386px;
	height: 101px;
	border: none;
	font-size: 30px;
	font-weight: 500;
	color: #333333;
}

.btn_back {
	background: url(../images/reserve/icon_arrow_back.png) no-repeat 13.9% center;
	width: 386px;
	height: 101px;
	border: none;
	font-size: 30px;
	font-weight: 500;
	color: #787878;
}

.btn_top_bg {
	background: url(../images/reserve/btn_conf.jpg) no-repeat 0 0;
	width: 386px;
	height: 101px;
	display: inline-block;
}

a.btn_top {
	background: url(../images/reserve/icon_arrow_pink.png) no-repeat 67.6% center;
	width: 386px;
	height: 101px;
	border: none;
	font-size: 30px;
	font-weight: 500;
	color: #CC0066;
	display: inline-block;
	text-decoration: none;
	line-height: 101px;
}




/* radio */
.radio_design input[type=radio] {
	display: none;		/* 標準スタイル */
}
.radio_label {
	position: relative;		/* ボックスの位置を指定する */
	padding: 0 0 0 42px;	/* ボックス内側の余白を指定する */
	color: #634625;
	font-size: 22px;
	font-weight: 500;
	display: inline-block;
}
.radio_label:hover:after {
	border-color: #DCDCDC;	/* ボックスの境界線を実線で指定する */
}
.radio_label:after,  .radio_label:before{
	position: absolute;	/* ボックスの位置を指定する */
	content: "";		/* ボックスのコンテンツ */
	display: block;		/* ブロックレベル要素化する */
	top: 50%;			/* 上部から配置の基準位置を決める */
}
.radio_label:after {
	left: 15px;			/* 左から配置の基準位置を決める */
	margin-top: -10px;	/* チェック枠の位置 */
	width: 16px;		/* ボックスの横幅を指定する */
	height: 16px;		/* ボックスの高さを指定する */
	border: 2px solid #DCDCDC;	/* ボックスの境界線を実線で指定する */
	border-radius: 50%;		/* ボックスの角丸を指定する */
}
.radio_label:before {
	left: 20px;			/* 左から配置の基準位置を決める */
	margin-top: -5px;	/* チェックマークの位置 */
	width: 10px;		/* ボックスの横幅を指定する */
	height: 10px;		/* ボックスの高さを指定する */
	background: #FF4759;/* ボックスの背景色を指定する */
	border-radius: 50%;	/* ボックスの角丸を指定する */
	opacity: 0;			/* 要素を透過指定する */
}
.radio_design input[type=radio]:checked + .radio_label:before {
	opacity: 1;		/* 要素を表示する */
}


