@charset "UTF-8";

body {
	font-family: 'Montserrat', 游ゴシック体, "Yu Gothic", YuGothic, "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ ProN", sans-serif;
	margin: 0;
	line-height: 1.8em;
}

a.anchor {
	display: block !important;
	padding-top: 70px !important;
	margin-top: -70px !important;
}

.shop_page_h2 {
	text-align: center;
	margin-bottom: 45px;
}

h2,
h3 {
	color: #444;
	font-weight: bold;
}

p {
	font-size: 16px;
	color: #444;
}

.img_responsive {
	width: 100%;
}

section {
	padding: 65px 0;
}

.title_img {
	width: auto;
	height: 48px;
	text-align: center;
	margin: 0 auto;
}

.title_jpn {
	font-size: 17px;
}

.underline_pink {
	background: linear-gradient(transparent 70%, #FABFBB 70%);
}

.underline_yellow {
	background: linear-gradient(transparent 70%, #FFDA77 70%);
}

.white_btn {
	color: #886C3D;
	width: 100%;
	max-width: 309px;
	display: inline-block;
	border-radius: 10px;
	text-align: center;
	padding: 15px 5px;
	font-size: 16px;
	line-height: 1em;
	vertical-align: middle;
	text-decoration: none;
	border: 1px solid #886C3D;
	background: #fff;
	position: relative;
}

i.fas.fa-angle-right {
	position: absolute;
	right: 10px;
}

.white_btn:hover {
	background: #FEFCEE;
}

.pink_btn {
	background: #f88a83;
	/* Old browsers */
	background: -moz-linear-gradient(top, #f88a83 0%, #f56057 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #f88a83 0%, #f56057 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #f88a83 0%, #f56057 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88a83', endColorstr='#f56057', GradientType=0);
	/* IE6-9 */
	color: #fff;
	width: 100%;
	max-width: 309px;
	display: inline-block;
	border-radius: 10px;
	text-align: center;
	padding: 7px 5px;
	font-size: 16px;
	line-height: 1em;
	vertical-align: middle;
	text-decoration: none;
	height: 48px;
}

.pink_btn:hover {
	background: #FFAAA4;
	/* Old browsers */
	background: -moz-linear-gradient(top, #FFAAA4 0%, #F66A62 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #FFAAA4 0%, #F66A62 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #FFAAA4 0%, #F66A62 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFAAA4', endColorstr='#F66A62', GradientType=0);
	/* IE6-9 */
}

.yoyaku_icon:before {
	content: url("../../common/images/calendar.svg");
	display: inline-block;
	padding-right: 15px;
}

/*2カラム*/

@media screen and (min-width: 769px) {
	.flex_wrapper {
		display: flex;
		width: 100%;
		max-width: 1100px;
		margin: 0 auto;
		justify-content: flex-start;
		flex-wrap: wrap;
		gap: 0 2.5%;
	}
}

@media screen and (max-width: 768px) {
.flex_wrapper {
	display: flex;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	justify-content: space-between;
	flex-wrap: wrap;
}
}

.align_items_center {
	align-items: center;
}

.col2_innner {
	width: 48%;
}

/*3カラム*/

.col3_innner {
	width: 31%;
}

/*5カラム*/

.col5_inner {
	width: 18%;
}

.col5_inner img {
	width: 100%;
	max-width: 182px;
}

.font_ss {
	font-size: 12px;
}

.font_s {
	font-size: 14px;
}

.contents_box {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}

.beige_bg {
	background: #F4F0E4;
}

.ivory_bg {
	background: #FFFBEF
}

.dot_blue_bg {
	background-image: url("../images/dot_blue.png");
	background-repeat: repeat;
	background-size: 30px;
}

.dot_beige_bg {
	background-image: url("../images/dot_beige.png");
	background-repeat: repeat;
	background-size: 30px;
}

.dot_beige_bg_access {
	background-image: url("../images/dot_beige.png");
	background-repeat: repeat;
	background-size: 30px;
}

.shikaku_bg {
	background-image: url("../images/shop_bg.gif");
	background-repeat: repeat;
}

.naname_bg {
	background-image: url("../images/top_shop_bg.gif");
	background-repeat: repeat;
}

.costume_bg {
	background-image: url("../images/costume_bg.jpg");
	background-size: cover;
	background-position: center;
}

.costume_bg-otsu {
	background-image: url("../images/costume_bg-otsu.png?20230627_02");
	background-size: cover;
	background-position-y: 35%;
}

/*メインビジュアル(210209大塚・竹ノ塚も一度は要素を全て指定する)*/
/*メインビジュアル(2103016・八戸も追加)*/
.main_visual,
.main_visual_otsuka1,
.main_visual_otsuka2,
.main_visual_otsuka3,
.main_visual_takenotsuka1,
.main_visual_takenotsuka2,
.main_visual_takenotsuka3,
.main_visual_hachinohe1,
.main_visual_hachinohe2,
.main_visual_hachinohe3,
.main_visual_hachinohe4,
.main_visual_hachinohe5,
.main_visual_hachinohe6,
.main_visual_hachinohe7,
.main_visual_hachinohe8,
.main_visual_hachinohe9,
.main_visual_hachinohe10,
.main_visual_hachinohe11,
.main_visual_tokoname1,
.main_visual_tokoname2,
.main_visual_tokoname3,
.main_visual_tokoname4,
.main_visual_tokoname5,
.main_visual_uji1,
.main_visual_uji2,
.main_visual_uji3,
.main_visual_uji4,
.main_visual_tsuyama1,
.main_visual_takatsuki1,
.main_visual_otsu,
.main_visual_arakawa1,
.main_visual_arakawa2,
.main_visual_arakawa3,
.main_visual_kyouto1 {
	background-image: url("../images/main_visual.png?230904");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	width: 100%;
	height: 444px;
	margin-top: 60px;
}


/* 210208 大塚店画像を指定 */
.main_visual_otsuka1 {
	background-image: url("../images/otsuka/choco_otsuka_slide01.jpg");
}

.main_visual_otsuka2 {
	background-image: url("../images/otsuka/choco_otsuka_slide02.jpg");
}

.main_visual_otsuka3 {
	background-image: url("../images/otsuka/choco_otsuka_slide03.jpg");
}

/* 210208 竹ノ塚店画像を指定 */
.main_visual_takenotsuka1 {
	background-image: url("../images/takenotsuka/choco_takenotsuka_slide01.jpg");
}

.main_visual_takenotsuka2 {
	background-image: url("../images/takenotsuka/choco_takenotsuka_slide02.jpg");
}

.main_visual_takenotsuka3 {
	background-image: url("../images/takenotsuka/choco_takenotsuka_slide03.jpg");
}

/* 210316 八戸店画像を指定 */
.main_visual_hachinohe7 {
	background-image: url("../images/hachinohe/banner_753campaign.jpg");
}

.main_visual_hachinohe8 {
	background-image: url("../images/hachinohe/choco_hachinohe_m1000campaign_pc.jpg");
}

.main_visual_hachinohe9 {
	background-image: url("../images/hachinohe/choco_hachinohe_mplan.jpg");
}

/* 240731 八戸店画像を指定 */
.main_visual_hachinohe10 {
	background-image: url("../images/hachinohe/choco_hachinohe_slide15.jpg");
}

.main_visual_hachinohe11 {
	background-image: url("../images/hachinohe/choco_hachinohe_slide16.jpg");
}


/* 20241216 常滑店画像を指定 */
.main_visual_tokoname1 {
	background-image: url("../images/tokoname/choco_tokoname_slide04.jpg?20241216");
}

.main_visual_tokoname2 {
	background-image: url("../images/tokoname/choco_tokoname_slide05.jpg?20241216");
}

.main_visual_tokoname3 {
	background-image: url("../images/tokoname/choco_tokoname_slide06.jpg?20241216");
}

.main_visual_tokoname4 {
	background-image: url("../images/tokoname/choco_tokoname_slide07.jpg?20241216");
}

.main_visual_tokoname5 {
	background-image: url("../images/tokoname/choco_tokoname_slide08.jpg?20241216");
}

/* 210504 宇治店画像を指定 */
.main_visual_uji1 {
	background-image: url("../images/uji/choco_uji_slide01.jpg");
}

.main_visual_uji2 {
	background-image: url("../images/uji/choco_uji_slide02.jpg");
}

.main_visual_uji3 {
	background-image: url("../images/uji/choco_uji_slide03.jpg");
}

.main_visual_uji4 {
	background-image: url("../images/uji/choco_uji_slide04_nyuen_pc.jpg");
}

/* 210708 津山店画像を指定 */
.main_visual_tsuyama1 {
	background-image: url("../images/tsuyama/choco_tsuyama_slide02.jpg");
}

/* 210504 高槻店画像を指定 */
.main_visual_takatsuki1 {
	background-image: url("../images/takatsuki/choco_takatsuki_slide01.jpg");
}

/* 230614 大津店画像を指定 */
.main_visual_otsu {
	background-image: url("../images/otsu/choco_otsu_slide01.png");
}

/* 240708 荒川店画像を指定 */
.main_visual_arakawa1 {
	background-image: url("../images/arakawa/choco_arakawa_slide01.jpg");
}

.main_visual_arakawa2 {
	background-image: url("../images/arakawa/choco_arakawa_slide02.jpg");
}

.main_visual_arakawa3 {
	background-image: url("../images/arakawa/choco_arakawa_slide03.jpg");
}

/* 250318 京都店画像を指定 */
.main_visual_kyouto1 {
	background-image: url("../images/kyouto/choco_kyouto_slide01.jpg");
}

/*店舗問い合わせボタン*/

.col2_innner_contact {
	width: 48%;
}

.contact_area_flex {
	display: flex;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	justify-content: space-between;
}

.name_img {
	width: 350px;
	height: 69px;
	margin: 15px 0;
}

.shop_telephone {
	font-size: 28px;
	font-weight: bold;
	color: #886B3D;
}

.contact_area {
	margin: 45px 0;
}

.contact_btn_wrapper {
	display: flex;
	justify-content: space-around;
	margin: 30px 50px;
}

.border_left {
	border-left: 1px dotted #444;
}

.contact_btn {
	background: #f88a83;
	/* Old browsers */
	background: -moz-linear-gradient(top, #f88a83 0%, #f56057 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #f88a83 0%, #f56057 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #f88a83 0%, #f56057 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88a83', endColorstr='#f56057', GradientType=0);
	/* IE6-9 */
	color: #fff;
	width: 120px;
	height: 100px;
	display: inline-block;
	border-radius: 10px;
	text-align: center;
	padding: 15px 5px;
	font-size: 16px;
	line-height: 1em;
	vertical-align: middle;
	text-decoration: none;
}

.contact_btn:hover {
	background: #FFAAA4;
	/* Old browsers */
	background: -moz-linear-gradient(top, #FFAAA4 0%, #F66A62 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, #FFAAA4 0%, #F66A62 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #FFAAA4 0%, #F66A62 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFAAA4', endColorstr='#F66A62', GradientType=0);
	/* IE6-9 */
}

.contact_btn_icon_yoyaku {
	display: block;
	margin: 0 auto 16px auto;
}

.contact_btn_icon_mail {
	width: 32px;
	display: block;
	margin: 0 auto 17px auto;
}

.contact_btn_icon_login {
	display: block;
	margin: 0 auto 16px auto;
}

.contact_btn_icon_shiryou {
	display: block;
	margin: 0 auto 16px auto;
}

/*イベント・キャンペーン*/

.event_contents {
	display: flex;
	margin: 0;
	justify-content: space-between;
	max-width: 1100px;
	margin: 0 auto;
}

.event_contents a {
	color: #444;
}

.event_contents a:hover img {
	transform: scale(1.2, 1.2);
	transition: 0.3s;
}

.event_contents a:active {
	color: #444;
}

.event_contents_inner_1st {
	display: block;
	width: 93%;
}

.event_contents_inner {
	display: block;
	width: 93%;
}

.event_text {
	width: 100%;
	/*max-width:260px;*/
	margin-top: 15px;
}

.event_thumb {
	width: 100%;
	/*max-width: 279px;*/
	overflow: hidden;
}

.event_thumb img {
	width: 100%;
	/*max-width: 279px;*/
	display: block;
}

.event_thumb_img {
	width: 100%;
}

/*お知らせ*/
.closed_info {
	color: #886B3D;
	font-size: 18px;
	margin-bottom: 10px;
	line-height: 28px;
}

.closed_info_content {
	max-width: 1100px;
	background-color: #fff;
	margin: 45px auto;
	padding: 50px 25px;
}

.info_bg {
	background: #FCF9F9;
	text-align: left;
	padding: 20px;
	margin: 45px auto;
}

.info_box {
	max-width: 900px;
	margin: 0 auto;
}

.info_subtitle {
	position: relative;
	display: inline-block;
	padding: 0 45px;
	font-size: 18px;
	margin: 40px 0 25px 0;
}

.info_subtitle:before {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 25px;
	height: 2px;
	background-color: #444;
	-webkit-transform: rotate(-60deg);
	transform: rotate(-60deg);
	right: 0;
}

.info_subtitle:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 25px;
	height: 2px;
	background-color: #444;
	-webkit-transform: rotate(60deg);
	transform: rotate(60deg);
	left: 0;
}

.col2_innner_movie {
	width: 50%;
	padding: 0 50px;
}

.movie-wrap {
	position: relative;
	padding-bottom: 56.25%;
	/*アスペクト比 16:9の場合の縦幅*/
	height: 0;
	overflow: hidden;
}

.movie-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.sns_icon_col {
	margin: 0 auto;
	display: flex;
	justify-content: space-around;
	padding: 0 30px;
}

.sns_icon_col a {
	width: 32%;
	color: #444;
}

.sns_icon {
	max-width: 60px;
	margin: 80px 30px;
	margin: 81px 30px 0 30px;
}

.sns_icon_col a:hover img {
	transform: scale(1.2, 1.2);
	transition: 0.3s;
}

/*撮影コース*/

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

/*.js-modal-open img:hover{
	border: 3px solid #444;
}*/
.tab {
	margin: 50px 0;
}

.tab li {
	display: inline-block;
}

.tabContents {
	display: none;
}

.tabContents.active {
	display: block;
}

.tabContents h3 {
	font-size: 16px;
	padding-top: 10px;
}

.tabContents img {
	display: block;
	overflow: hidden;
}

.tabContents a {
	text-decoration: none;
}

.tabContents a:hover img {
	border: 5px solid #FABFBB;
	border-radius: 15px;
}

.tab_btn {
	background: #fff;
	border: 1px solid #886C3D;
	padding: 15px;
}

.wrap {
	max-width: 960px;
	margin: 30px auto;
}

.box {
	width: 100%;
}

.tab {
	list-style: none;
}

/*アクティブの時*/

.tab li.current {
	position: relative;
	background: #FEFCEE;
	border: 2px solid #886C3D;
	border-radius: 10px;
}

.tab li.current :after,
.tab li.current :before {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.tab li.current :after {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #FEFCEE;
	border-width: 15px;
	margin-left: -15px;
}

.tab li.current :before {
	border-color: rgba(136, 108, 61, 0);
	border-top-color: #886C3D;
	border-width: 18px;
	margin-left: -18px;
}

.tab li a {
	display: block;
	border: 2px solid #886C3D;
	padding: 10px 40px;
	color: #886C3D;
	text-decoration: none;
	text-align: center;
	border-radius: 10px;
	line-height: 1.5em;
	background: #fff;
}

.tab li.current a {
	color: #886C3D;
	border: none;
	background: #FEFCEE;
}

.tab_btn_text {
	font-size: 16px;
	font-weight: bold;
}

.tab_btn_text_S {
	font-size: 14px;
	font-weight: normal !important;
}

.tabContents {
	clear: both;
	display: none;
	padding: 10px;
}

.tabContents.current {
	display: block;
}

/*モダール*/

.col2_innner_modal {
	width: 50%;
}

.content {
	margin: 0 auto;
	padding: 40px;
}

.modal {
	display: none;
	height: 100vh;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 2;
}

.modal__bg {
	background: rgba(0, 0, 0, 0.8);
	height: 100vh;
	position: absolute;
	width: 100%;
}

.modal__content {
	background-image: url("../images/dot_blue.png");
	background-repeat: repeat;
	background-size: 30px;
	left: 50%;
	padding: 40px;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	max-width: 724px;
}

.modal_img {
	width: 100%;
	max-width: 227px;
}

.flex_wrapper_modal {
	display: flex;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}

.point_wrapper {
	display: flex;
	margin: 30px 0;
}

.modal_point {
	width: 100%;
	max-width: 54px;
	margin-right: 15px;
}

.modal_title {
	font-size: 27px;
	font-weight: bold;
	margin-bottom: 30px;
	line-height: 1.6em;
}

.modal_btn {
	margin: 40px 0 20px 0;
}

a.js-modal-close {
	text-decoration: none;
	width: 30px;
	height: 30px;
	display: block;
	border-radius: 5px;
	padding-top: 2px;
	font-weight: bold;
	font-size: 30px;
	background-color: #EFE3CD;
	color: #886C3D;
	margin-left: auto;
}

a.js-modal-close:hover {
	background: #fff7ea;
	color: #A48757;
}

.my-parts {
	display: block;
	width: 30px;
	height: 30px;
	position: relative;
	cursor: pointer;
	margin-left: auto;
	background: #EFE3CD;
	border-radius: 5px;
}

.my-parts span::before,
.my-parts span::after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 84%;
	height: 10%;
	margin: -8% 0 0 -42%;
	background: #886C3D;
}

.my-parts span::before {
	transform: rotate(-45deg);
}

.my-parts span::after {
	transform: rotate(45deg);
}

/*チョコの魅力*/

.point_img {
	max-width: 480px;
}

.point_title_1 {
	max-width: 304px;
}

.point_title_2 {
	max-width: 293px;
}

.point_title_13 {
	max-width: 345px;
}

.point_textbox {
	padding: 0 40px;
}

.title_img_choco {
	height: 88px;
}

/*衣裳の案内*/

/*.swiper-slide {
	margin: 0!important;
	width: 100%;
}
.swiper-slide img {
	width: 100%;
}
*/
.costume_slide img {
	width: 100%;
}



/*店舗情報*/

.shop_title {
	margin-bottom: 10px;
	line-height: 1.8em;
}

.shop_info_box {
	background: #fff;
	padding: 50px;
}

.shop_choco {
	font-size: 20px;
	color: #886B3D;
}

.shop_name {
	font-size: 28px;
	color: #886B3D;
}

table.shopinfo {
	width: 100%;
	color: #444;
}

.shopinfo th {
	width: 20%;
}

.shop_info_dot {
	border-top: 1px dotted #D2BA94;
}

.shopinfo th,
.shopinfo td {
	padding: 10px;
	border-bottom: 1px dotted #D2BA94;
}

.shop_telephone {
	font-size: 21px;
	font-weight: bold;
	color: #886B3D;
	text-decoration: none;
}

.shop_telephone:before {
	content: '';
	/*何も入れない*/
	display: inline-block;
	/*忘れずに！*/
	width: 30px;
	/*画像の幅*/
	height: 30px;
	/*画像の高さ*/
	background-image: url("../../common/images/tel_brown.svg");
	background-size: contain;
	vertical-align: middle;
	margin-right: 15px;
}

.slick-slide img {
	width: 100%;
}

.shop_layout .slick-dots {
	margin-top: 5px;
	display: flex;
	justify-content: center;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	bottom: auto;
	max-width: 960px;
}

.shop_layout .slick-dots li {
	list-style: none;
	display: inline-block;
	width: 100%;
	height: auto;
	margin: 0;
}

.shop_layout .slick-dots li img {
	opacity: 0.5;
	width: 100%;
	height: auto;
}

.shop_info_subtitle {
	position: relative;
	display: inline-block;
	padding: 0 45px;
	font-size: 18px;
	margin: 20px;
}

.shop_info_subtitle:before {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 25px;
	height: 2px;
	background-color: #444;
	-webkit-transform: rotate(-60deg);
	transform: rotate(-60deg);
	right: 0;
}

.shop_info_subtitle:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 25px;
	height: 2px;
	background-color: #444;
	-webkit-transform: rotate(60deg);
	transform: rotate(60deg);
	left: 0;
}

.shop_info_sns_icon_col {
	margin: 0 auto;
	display: flex;
	justify-content: space-around;
	padding: 0 90px;
}

.shop_sns_icon {
	width: 40px;
	margin: 0 15px;
}

.shop_info_sns_icon_col a:hover img {
	transform: scale(1.2, 1.2);
	transition: 0.3s;
}

/*アクセス*/

.access_box {
	background: #fff;
	padding: 50px;
	text-align: center;
	margin-bottom: 30px;
}

.access_box_title {
	margin-bottom: 1rem;
	font-size: 130%;
	background-color: #FFF;
	position: relative;
	color: #ceb287;
}

.access_box_title:before {
	position: absolute;
	content: "";
	width: 30px;
	height: 1px;
	background-color: #ceb287;
	left: 90%;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

.access_box_title:after {
	position: absolute;
	content: "";
	width: 30px;
	height: 1px;
	background-color: #ceb287;
	right: 90%;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

.fa-subway {
	color: #ceb287;
	font-size: 30px;
	margin: 7px;
}

.fa-car {
	color: #ceb287;
	font-size: 30px;
	margin: 7px;
}

.gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 87.25%;
	position: relative;
}

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

#map {
	height: 400px;
	margin-top: 60px;
}

/*ページトップボタン*/
#goto_top {
	position: fixed;
	right: 3%;
	bottom: 6%;
}

#goto_top a {
	width: 50px;
	height: 50px;
	border-radius: 10px;
	background: #fabfbb;
	display: block;
	color: #fff;
	text-align: center;
	line-height: 48px;
	text-decoration: none;
	font-weight: bold;
	font-size: 40px;
}

.banner_pc {
	display: block !important;
}

.banner_sp {
	display: none !important;
}

/* 210316 バナーの上に写真を載せる */
.banner_frame {
	width: 55%;
	max-width: 800px;
	justify-content: center;
	margin: 0 auto;
	display: flex;
	position: absolute;
	top: 75%;
	left: 1%;
}

.banner_btn {
	width: 245px;
	border: 2px solid #cab39e;
	padding: 10px 0;
	border-radius: 5px;
	margin: 0 0 0 10px;
	color: #927b66;
	background-color: #fff;
}

.banner_btn:hover {
	background-color: rgb(180, 157, 140);
	color: #fff;
	border: 2px solid rgb(180, 157, 140);
}

/* 20210208 メインビジュアルをスライダー化 */
.slick-dotted.slick-slider {
	margin-bottom: 60px;
}

.slick-dots {
	bottom: -35px;
}

/* 210316 オムツバナーをhoverした際、写真を切り替える */
.banner_raiten {
	width: 95%;
	max-width: 900px;
	margin: 30px auto;
	position: relative;
}

.banner_raiten .active {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
}

.banner_raiten:hover .active {
	opacity: 1;
}

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

/* 宇治店バナーの設定 */
.uji_banner {
	width: 900px;
	position: relative;
	display: flex;
	margin: 0 auto 30px;
	justify-content: space-between;
}


/* スマホ-------------------------------------------------------------- */

@media screen and (max-width: 768px) {
	h2 {
		margin-bottom: 30px;
	}

	p {
		font-size: 16px;
	}

	section {
		padding: 45px 0;
	}

	.main_visual {
		height: 348px;
		margin-top: 134px;
	}

	/*2カラム*/
	.flex_wrapper {
		width: 100%;
		margin: 0 auto;
		justify-content: space-between;
	}

	.col2_innner {
		width: 100%;
		padding: 0 15px;
	}

	/*3カラム*/
	.col3_innner {}

	/*5カラム*/
	.col5_inner {
		width: 32%;
	}

	/*店舗問い合わせボタン*/
	.col2_innner_contact {
		width: 100%;
	}

	.contact_area {
		background-color: rgb(255, 255, 255, 0.7);
		margin: 0px 0 0 0;
	}

	.contact_area_flex {
		display: block;
		width: 100%;
	}

	.border_left {
		border-left: none;
	}

	.name_img {
		width: 100%;
		max-width: 300px;
		margin: 15px 0;
	}

	.contact_btn_wrapper {
		margin: 0;
	}

	.contact_btn {
		border-radius: 0;
		width: 100%;
		border-left: 1px dotted #fff;
	}

	.contact_btn:first-child {
		border-left: none;
	}

	/*イベント・キャンペーン*/
	.event_contents {
		/* margin: 0 15px;*/
	}

	.event_contents_inner_1st {
		display: flex;
		width: 100%;
		margin-top: 0;
	}

	.event_contents_inner {
		display: flex;
		width: 100%;
		margin-top: 30px;
	}

	.event_text {
		width: 50%;
		padding-left: 15px;
	}

	.event_text h3 {
		font-size: 16px;
	}

	.event_text p {
		font-size: 14px;
	}

	.event_thumb {
		width: 50%;
	}

	.event_thumb_img {
		width: 100%;
	}

	.event_innner_img .cp_box *,
	.cp_box *:before,
	.cp_box *:after {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	.cp_box {
		width: auto;
		margin: 0 15px;
	}

	.cp_box label {
		color: #886C3D;
		width: 100%;
		max-width: 309px;
		display: block;
		border-radius: 10px;
		text-align: center;
		padding: 15px 5px;
		font-size: 16px;
		line-height: 1em;
		vertical-align: middle;
		text-decoration: none;
		border: 1px solid #886C3D;
		background: #fff;
		position: relative;
		margin: 30px auto 15px auto;
	}

	.cp_box label:hover {
		transition: all 0.3s;
		color: #886C3D;
		background: #FEFCEE;
	}

	.fa-angle-down {
		position: absolute;
		right: 10px
	}

	.cp_box label::after {
		font-family: "Font Awesome 5 Free";
		content: '\f107';
		font-weight: 900;
		color: #886C3D;
		position: absolute;
		right: 15px;
	}

	.cp_box input:checked~label:hover::after {
		font-family: "Font Awesome 5 Free";
		content: '\f106';
		font-weight: 900;
		color: #886C3D;
		position: absolute;
		right: 15px;
	}

	.cp_box input {
		display: none;
	}

	.cp_box .cp_container {
		position: relative;
		z-index: 10;
		overflow: hidden;
		height: 0;
		margin-top: -1px;
		transition: height 0.3s ease-in-out, box-shadow 0.6s linear;
	}

	.cp_box input:checked~div {
		transition: height 0.5s ease-in-out, box-shadow 0.1s linear;
	}

	/* 続きを読むを押すと表示されるテキストの高さ */
	.cp_box input:checked~div.cp_container {
		height: auto;
	}

	.cp_container a {
		color: #444;
	}

	.cp_container a:active {
		color: #444;
	}

	/*お知らせ*/
	.info_bg {
		margin: 0 15px;
	}

	.col2_innner_movie {
		width: 100%;
		padding: 0 15px;
	}

	.col2_innner_modal p {
		margin-left: 15px;
		font-size: 14px;
	}

	.sns_icon_col a {
		width: 100%;
	}

	.sns_icon {
		margin: 0 15px;
		max-width: 65px
	}

	.closed_info_content_sp {
		width: 100%;
		padding: 0 15px;
	}

	/*撮影コース*/
	.col2_innner_modal {
		width: 50%;
	}

	.modal_title {
		font-size: 20px;
		margin-left: 15px;
		margin-bottom: 10px;
	}

	.point_wrapper {
		text-align: left;
	}

	.point_wrapper p {
		font-size: 16px;
	}

	.tab li a {
		padding: 10px 15px;
	}

	.modal__content {
		padding: 20px;
		width: 93%;
	}

	a.js-modal-close {
		border-radius: 5px;
		/*padding-top: 5px;*/
		font-weight: bold;
		font-size: 15px;
		vertical-align: middle；
	}



	/*チョコの魅力*/
	.point_img {
		width: 100%;
		max-width: 300px;
	}

	.row-reverse {
		flex-direction: column-reverse;
	}

	.point_textbox {
		margin-bottom: 40px;
	}

	/*衣裳のご案内*/
	.costume_slide img {
		max-width: 200px !important;
	}

	#costume p {
		font-size: 1rem;
		padding: 5px 0;
		width: 95%;
		margin: 0 auto;
		background-color: #F4F0E4;
		border-radius: 5px;
	}

	/*店舗情報*/
	.shop_info_box {
		padding: 15px;
		width: 93%;
	}

	.shop_choco {
		font-size: 16px;
	}

	.shop_name {
		font-size: 20px;
	}

	table.shopinfo {
		margin: 20px 0 30px 0;
	}

	.shopinfo th {
		width: 30%;
	}

	.sp_sns {
		width: 100%;
	}

	.shop_sns_icon {
		width: 65px;
	}

	.sns_icon_col {
		width: auto;
	}

	.tel_btn_sp {
		background: #f88a83;
		background: -moz-linear-gradient(top, #f88a83 0%, #f56057 100%);
		background: -webkit-linear-gradient(top, #f88a83 0%, #f56057 100%);
		background: linear-gradient(to bottom, #f88a83 0%, #f56057 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88a83', endColorstr='#f56057', GradientType=0);
		color: #fff;
		width: 100%;
		max-width: 309px;
		display: inline-block;
		border-radius: 10px;
		text-align: center;
		padding: 12px 5px;
		font-size: 16px;
		line-height: 1em;
		vertical-align: middle;
		text-decoration: none;
		height: 48px;
		margin-top: 61px;
		font-size: 20px;
		font-weight: bold;
	}

	.tel_btn_sp:before {
		content: url("../../common/images/tel.svg");
		display: inline-block;
		padding-right: 15px;
	}

	/*アクセス*/
	#map {
		margin-top: 15px;
	}

	/*ページトップボタン*/
	#goto_top {
		position: fixed;
		right: 3%;
		bottom: 5%;
	}

	.banner_pc {
		display: none !important;
	}

	.banner_sp {
		display: block !important;
	}

	.banner_sp {
		width: 95%;
	}

	/* 210316 リンクボタンをバナーの上にのせる*/
	.banner_frame {
		width: 92%;
		padding: 0;
		justify-content: space-around;
		left: 5%;

	}

	.banner_btn {
		width: 168px;
		border: 2px solid #cab39e;
		color: #927b66;
		padding: 5px 0;
		border-radius: 5px;
		margin: 0 6px 0 0;
		background-color: #fff;
	}

	/* 20210208 メインビジュアルをスライダー化 */
	.slick_position {
		position: relative;
	}

	.contact_area {
		position: absolute;
		width: 100%;
		z-index: 1;
	}

	.dot_beige_bg {
		margin-top: 195px;
	}

	.slick-dots {
		bottom: 15px;
		z-index: 1;
		/* モーダル背景に表示されていたので、1に変更 */
	}

	.slick-dotted.slick-slider {
		margin-bottom: 0;
	}

	/* 210208 大塚店画像指定 */
	.main_visual_otsuka1 {
		background-image: url("../images/otsuka/choco_otsuka_slide01_sp.jpg");
	}

	.main_visual_otsuka2 {
		background-image: url("../images/otsuka/choco_otsuka_slide02_sp.jpg");
		background-position: 45% 25%;
	}

	.main_visual_otsuka3 {
		background-image: url("../images/otsuka/choco_otsuka_slide03_sp.jpg");
		background-position: 15% 25%;
	}

	/* 210208 竹ノ塚店画像指定 */
	.main_visual_takenotsuka1 {
		background-image: url("../images/takenotsuka/choco_takenotsuka_slide01_sp.jpg");
	}

	.main_visual_takenotsuka2 {
		background-image: url("../images/takenotsuka/choco_takenotsuka_slide02_sp.jpg");
		background-position: 45% 25%;
	}

	.main_visual_takenotsuka3 {
		background-image: url("../images/takenotsuka/choco_takenotsuka_slide03_sp.jpg");
		background-position: 5% 25%;
	}

	/* 210316 八戸店画像を指定 */

	.main_visual_hachinohe7 {
		background-image: url("../images/hachinohe/choco_hachinohe_slide17_sp.jpg?20251209");
	}

	.main_visual_hachinohe8 {
		background-image: url("../images/hachinohe/choco_hachinohe_slide18_sp.jpg");
	}

	.main_visual_hachinohe9 {
		background-image: url("../images/hachinohe/choco_hachinohe_slide19_sp.jpg");
	}

	/* 240731 八戸店画像を指定 */
	.main_visual_hachinohe10 {
		/* background-image: url("../images/hachinohe/choco_hachinohe_slide15_sp.jpg"); */
	}

	.main_visual_hachinohe11 {
		/* background-image: url("../images/hachinohe/choco_hachinohe_slide16_sp.jpg"); */
	}
	
	/* 241216 常滑店画像を指定 */
	.main_visual_tokoname1 {
		background-image: url("../images/tokoname/choco_tokoname_slide04_sp.jpg");
	}

	.main_visual_tokoname2 {
		background-image: url("../images/tokoname/choco_tokoname_slide05_sp.jpg");
		background-position: 45% 25%;
	}

	.main_visual_tokoname3 {
		background-image: url("../images/tokoname/choco_tokoname_slide06_sp.jpg");
		background-position: 45% 75%;
	}

	.main_visual_tokoname4 {
		background-image: url("../images/tokoname/choco_tokoname_slide07_sp.jpg");
		background-position: 45% 75%;
	}

	.main_visual_tokoname5 {
		background-image: url("../images/tokoname/choco_tokoname_slide08_sp.jpg");
		background-position: 45% 75%;
	}

	/* 210504 宇治店画像を指定 */
	.main_visual_uji1 {
		background-image: url("../images/uji/choco_uji_slide01_sp.jpg");
	}

	.main_visual_uji2 {
		background-image: url("../images/uji/choco_uji_slide02_sp.jpg");
	}

	.main_visual_uji3 {
		background-image: url("../images/uji/choco_uji_slide03_sp.jpg");
	}

	.main_visual_uji4 {
		background-image: url("../images/uji/choco_uji_slide04_nyuen_sp.jpg");
	}

	/* 210708 津山店画像を指定 */
	.main_visual_tsuyama1 {
		background-image: url("../images/tsuyama/choco_tsuyama_slide03_sp.jpg");
	}

	/* 210504 高槻店画像を指定 */
	.main_visual_takatsuki1 {
		background-image: url("../images/takatsuki/choco_takatsuki_slide01_sp.jpg");
	}

	/* 230614 大津店画像を指定 */
	.main_visual_otsu {
		background-image: url("../images/otsu/choco_otsu_slide01_sp.png");
	}

	/* 240708 荒川店画像を指定 */
	.main_visual_arakawa1 {
		background-image: url("../images/arakawa/choco_arakawa_slide01_sp.jpg");
	}

	.main_visual_arakawa2 {
		background-image: url("../images/arakawa/choco_arakawa_slide02_sp.jpg");
	}

	.main_visual_arakawa3 {
		background-image: url("../images/arakawa/choco_arakawa_slide03_sp.jpg");
	}

	/* 250324 京都店画像を指定 */
	.main_visual_kyouto1 {
		background-image: url("../images/kyouto/choco_kyouto_slide01_sp.jpg");
	}

	/* 210316 オムツバナーをhoverした際、写真を切り替える */
	.banner_raiten {
		width: 95%;
		height: auto;
	}

	.banner_memorial {
		width: 100%;
		height: auto;
	}

	/* 宇治店バナーの設定 */
	.uji_banner {
		display: block;
		width: 95%;
	}

	.uji_banner01 {
		margin-bottom: 30px;
	}

}