@charset "utf-8";
/* CSS Document */

/*
Theme Name: シャンフルーブ
Version: 3.1
Author: k-design
*/

@import url(css/post.css);

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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, button{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline;}

body, html{width:100%;box-sizing:border-box;}

body{
	font-size:100%;
	font-weight:500;
	line-height:1.8;
	font-family:"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "Noto Sans JP";
	letter-spacing:0.1em;
}

p{margin-bottom:16px;}
ol, ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption, th, td{font-weight:normal;text-align:left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";content:none;}
blockquote, q{quotes:none;}
a{font-size:100%;vertical-align:baseline;background:transparent;text-decoration:none;}
img{max-width: 100%;height: auto;width /***/:auto;vertical-align:bottom;}
img.res{width:100%;}
a img{border: 0;}
a:hover img,a:active img{-moz-opacity:0.8;opacity:0.8;filter:alpha(opacity=80);}
input, select{vertical-align:middle;}

/* パンくずリスト */
.bread_crumbs{margin:0 0 120px;font-size:13px;clear:both;}
.bread_crumbs.en{font-weight:700;}
.bread_crumbs li{margin-right:3px;display:inline;color:#333333;letter-spacing:1.5px;}
.bread_crumbs li a{color:#333333;}
.bread_crumbs li a:hover{text-decoration:underline;}
.box{margin-bottom:64px;}

/* 注意 */
.red{color:#FF0000;}

/* text */
.txt_r{text-align:right;}
.txt_c{text-align:center;}
.alignleft{margin:0 16px 16px 0;float:left;}
.alignright{margin:0 0 16px 16px;float:right;}

/* ===== Navigation ===== */
.navigation{padding:24px 0;line-height:18px;overflow:hidden;clear:both;border-bottom:1px dotted #CCCCCC;}

.navigation a{position:relative;}
.navigation a:before,.navigation a:after{width: 6px;height: 6px;position: absolute;content: "";top: 50%;z-index: 0;}
.nav-previous{float:left;width:40%;}
.nav-previous a{padding-left:24px;}
.nav-next{float:right;text-align:right;width:40%;}
.nav-next a{padding-right:24px;}
.nav-previous a:before{border-top: 2px solid #10193A;border-left: 2px solid #10193A;
	left:4px;-webkit-transform: translateY(-41%) rotate(-45deg);transform: translateY(-41%) rotate(-45deg);}
.nav-next a:after{border-top: 2px solid #10193A;border-right: 2px solid #10193A;
	right:4px;-webkit-transform: translateY(-41%) rotate(45deg);transform: translateY(-41%) rotate(45deg);}
.wp-pagenavi {padding:40px 0;clear: both;text-align:center;}
.wp-pagenavi a, .wp-pagenavi span {color: #001433;background-color: #FFFFFF;padding: 8px 15px;margin: 0 2px;white-space: nowrap;-webkit-transition: 0.2s ease-in-out;-moz-transition: 0.2s ease-in-out;-o-transition: 0.2s ease-in-out;transition: 0.2s ease-in-out;text-align: center;text-decoration: none;border: thin dotted #10193A;display: inline-block;}
.wp-pagenavi a:hover{color: #fff;background-color: #10193A;}
.wp-pagenavi span.current{color: #fff;background-color: #10193A;}

/* ===== 全体 ===== */
.l_wrap{max-width:1280px;margin:0 auto;}
.wrap{max-width:1000px;margin:0 auto;}
.pc{display: block;}
.sp, .mb{display: none;}
.clear:after{content:"";display:block;clear:both;}
.en{font-family:"Urbanist", sans-serif;font-weight:500;}

.flex_box{margin-bottom:40px;display:flex;justify-content:space-between;flex-wrap:wrap;}
.two_flex .item{width:48%;position:relative;}
.three_flex .item{width:32%;position:relative;}
.three_flex::after{content:"";display: block;width:32%;}
.four_flex .item{width:24%;position:relative;}
.four_flex::before{content:"";display: block;width:24%;order:1;}
.four_flex::after{content:"";display: block;width:24%;}
.box_link{width:100%;height:100%;position:absolute;top:0;left:0;text-indent:-9999px;white-space:nowrap;overflow:hidden;}
.list_center{display:block;text-align:center;}
.list_center li{display:inline-block;}
/* youtube埋め込みレスポンシブ */
.movie{height:0;padding-bottom:56.25%;position:relative;overflow: hidden;}
.movie iframe{width:100%;height:100%;position:absolute;top:0;left:0;}
/* Google mapの下余白&レスポンシブ */
.map iframe{vertical-align:bottom;}
/* 画像ポップアップ */
.lightbox-target{width:100%;position:fixed;top:-100%;left:0;background:rgba(0, 0, 0, 0.7);opacity:0;transition:opacity 0.5s ease-in-out;overflow:hidden;z-index:300;}
.lightbox-target .container{margin:auto;position:absolute;top:50vh;left:50vw;background-color:white;box-shadow:0px 0px 8px rgba(0, 0, 0, 0.3);transition:0.5s ease-in-out;text-align:left;transform:translate3d(-50%, -50%, 0);}
a.lightbox-close{width:50px;height:50px;line-height:50px;margin:0;display:block;background:white;color:black;text-decoration:none;position:absolute;top:0;right:0;text-align:center;}
.lightbox-target:target{opacity:1;top:0;bottom:0;}
.lightbox-target:target img{max-height:560px;vertical-align:top;}
/* ※ */
.kome > li{margin-left:0!important;padding-left:24px;list-style:none!important;position:relative;}
.kome > li:before{content:"※";position:absolute;top:0;left:0;}
/* 丸文字 */
.maru{margin:0;padding:0;counter-reset:my-counter;}
.maru > li{margin-left:0!important;padding-left:30px;list-style:none!important;position:relative;}
.maru > li::before{width:18px;height:18px;content:counter(my-counter);counter-increment:my-counter;border:1px solid;border-radius:50%;box-sizing:border-box;display:flex;justify-content:center;align-items:center;font-size:85%;line-height:1;position:absolute;top:4px;left: 0;}

.arrow{position:relative;display:inline-block;padding:10px;}
.arrow::before{content:'';width:10px;height:10px;border-top:solid 2px #FFFFFF;border-right:solid 2px #FFFFFF;position:absolute;left:48%;bottom:8px;transform:translateX(-48%);transition:0.4s;}
.arrow:hover::before{bottom:0;}
.arrow.arrow-bottom::before{transform:rotate(135deg);}.btn_dsn2{width:240px;text-align:center;}

.stickarrow::after{width:60px;height:4px;margin-left:12px;content:"";display:inline-block;border-bottom:1px solid #000;border-right:1px solid #000;transform:skew(45deg);transition:0.2s;}

.view_more{width:70%;margin:0 auto 24px;padding:8px 12px;border:1px solid #FFFFFF;position:relative;text-align:center;}
.view_more::after{width:64px;height:1px;content:"";background:#FFFFFF;position:absolute;top:50%;right:-32px;transform:translateY(-50%);}

.all_view{width:240px;margin:0 auto 24px;position:relative;text-align:center;}
.all_view a{padding:8px 12px;display:block;border:1px solid #000000;font-weight:700;color:#000000;transition:0.4s;}
.all_view a::after{width:64px;height:1px;content:"";background:#d1afa3;position:absolute;top:50%;right:-32px;transform:translateY(-50%);}
.all_view a:hover{background:#000000;color:#FFFFFF;}

#page-top{position:fixed;bottom:0;right:16px;background-color:rgba(0,0,0,0.6);font-size:12px;}
#page-top a{width:40px;height:40px;line-height:40px;display: block;position:relative;border-radius:50%;color:#FFFFFF;text-decoration: none;text-align: center;}

/* ===== header ===== */
#header{padding:8px 3%;position:relative;display:flex;justify-content:space-between;align-items:center;box-shadow:0px 1px 10px 0px #7e7d7d;}
#header div#logo{width:80px;}
/* ===== global_menu ===== */
#global_menu ul li{width: auto;padding:10px;display:inline-block;font-size:18px;font-weight:700;color:#d1afa3;text-align:center;line-height:1.2;}
#global_menu ul li:hover{background:url("image/icon_cake.png")no-repeat center center / 52px;}
#global_menu ul li small{display:block;font-size:10px;}
#global_menu ul li a{color:#d1afa3;}

/* front_page */
.home #header{width:180px;height:100vh;margin-bottom:64px;padding:48px 0 0;background:#d1afa3;display:block;box-shadow:inherit;box-sizing:border-box;text-align:center;}
.home #header #logo{width:140px;margin:0 auto 24px;}
/* global_menu */
.home #global_menu ul li{display:block;color:#FFFFFF;}
.home #global_menu ul li a{color:#FFFFFF;}
/* mainimage */
.mainimage{width:calc(100% - 180px);height:100vh;position:absolute;top:0;right:0;}
.mainimage img{width:100%;height:100%;object-fit:cover;}
/* xmas_fixed */
#xmas_fixed{max-width:156px;min-width:100px;position:fixed;left:12px;bottom:12px;z-index:100;}
/* ===== contents ===== */
#contents{padding-bottom:40px;}
section{padding:64px 0;}
.page_title{margin-bottom:48px;position:relative;font-size:60px;font-weight:500;letter-spacing:0.1em;text-indent:0.1em;text-align:center;}
.page_title::before{width:160px;height:1px;content:"";background:#d1afa3;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%) rotate(-45deg);z-index:-1;}
.concept_txt{margin-bottom:24px;font-size:24px;font-weight:500;font-family: "Noto Serif JP", serif;}
/* === calendar === */
.calendar_item .calendar_image{height:60vh;}
.calendar_item .calendar_image img{width:100%;height:100%;object-fit:cover;}
.calendar_box{margin-top:-50vh;padding:24px;background:#FFFFFF;box-shadow:2px 2px 6px #000000;position:relative;box-sizing:border-box;}
.calendar_box table{width:100%;border-collapse:separate;border-spacing:8px;}
.calendar_box table caption{padding-top:24px;caption-side:bottom;}
.calendar_box table caption ul{display:flex;justify-content:flex-end;font-size:14px;}
.calendar_box table caption ul li{margin-left:12px;padding-left:52px;position:relative;}
.calendar_box table caption ul li::before{width:40px;height:16px;content:"";position:absolute;top:50%;left:0;transform:translateY(-50%);}
.calendar_box table caption ul li.shortday::before{background:#eafafb;}
.calendar_box table caption ul li.holiday::before{background:#fde9e9;}
.calendar_box table caption ul li.chirstmasday::before{background:#c8f0dc;}
.calendar_box table th, .calendar_box table td{padding:16px 12px;font-weight:700;text-align:center;}
.calendar_box table thead th{background:#F3F3F3;}
.calendar_box table thead th:nth-of-type(1){background:#eafafb;}
.calendar_box table thead th:nth-of-type(4){background:#fde9e9;}
.calendar_box table tbody td{background:#fff6e6;}
.calendar_box table tbody td:nth-of-type(1){background:#eafafb;}
.calendar_box table tbody td:nth-of-type(4){background:#fde9e9;}
.calendar_box table tbody .shortday{background:#eafafb!important;}
.calendar_box table tbody .chirstmasday{background:#c8f0dc!important;}
.calendar_box table tbody .holiday{background:#fde9e9!important;}
.calendar_box table tbody td.bg_none{background:none!important;}
#calendar .calendar_box h3{font-size:30px;font-weight:700;}
#calendar .calendar_box h3 span{margin-left:24px;font-size:20px;font-weight:600;}
/* === concept === */
#concept{display:flex;justify-content:space-between;flex-wrap:wrap;}
#concept .concept_detail{width:48%;display:flex;justify-content:center;flex-direction:column;text-align:center;}
#concept .concept_detail p.catch{font-size:24px;}
#concept .concept_detail p:last-of-type{margin-bottom:0;}
#concept .concept_image{width:48%;height:100%;}
#concept .concept_image img{width:100%;height:100%;object-fit:cover;}
/* === instagram === */
#instagram .insta_list li{margin:1% 0;}
/* === service === */
#service .service_item{position:relative;}
#service .service_item .service_image{height:60vh;}
#service .service_item .service_image img{width:100%;height:100%;object-fit:cover;}
#service .service_item .service_item_detail{width:320px;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);text-align:center;color:#FFFFFF;}
#service .service_item:nth-of-type(2) .service_item_detail{left:30%;}
#service .service_item:nth-of-type(3) .service_item_detail{left:70%;}
#service h2.page_title{text-shadow:4px 2px black;letter-spacing:0.2em;text-indent:0.2em;}
#service h2.page_title::before{top:36%;}
#service h2.page_title small{display:block;font-size:21px;letter-spacing:0.1em;text-indent:0.1em;}
#service .service_item .service_item_detail .view_more{transition:0.4s;}
#service .service_item:hover .service_item_detail .view_more{background:#FFFFFF;color:#000000;}
#service .service_item:hover .service_item_detail .view_more::after{background:#000000;}

#service .season .service_item_detail{width:auto;}
#service .season .view_more{width:240px;}
/* ===== con_box ===== */
.page #con_box{padding-top:0;}
#con_box .contact_image{width:calc(100% - 320px);}
#con_box .contact_image img{width:100%;height:100%;object-fit:cover;}
#con_box .contact_detail{width:320px;padding:24px 12px;background:#d1afa3;display:flex;justify-content:center;flex-direction:column;box-sizing:border-box;color:#fff;}
#con_box .contact_detail h3.page_title{margin:0 0 12px;font-size:36px;}
#con_box .contact_detail h3.page_title::before{width:120px;background:#FFF;z-index:1;}
#con_box .contact_detail p.small{font-size:12px;}
#con_box .contact_detail p.tel{margin-bottom:0;font-size:28px;}
#con_box .contact_detail p.tel span{padding-left:32px;background:url('image/tel_wt.png') no-repeat left center / 20px;}
/* ===== shop_info ===== */
#shop_info{padding-bottom:0 !important;}
#shop_info .shop_info_img{height:60vh;}
#shop_info .shop_info_img img{width:100%;height:60vh;object-fit:cover;}
#shop_info .adress_box{margin-bottom:0;padding:64px 0;align-items: center;}
#shop_info .adress_box h3{margin-bottom:1rem;font-size:24px;font-weight:600;}
#shop_info .adress_box p:last-of-type{margin-bottom:0;}
#shop_info .adress_box .contact_box{font-size:20px;font-weight:600;}
#shop_info .adress_box .contact_box span{padding-right:10px;color:#d1afa3;}
/* ===== footer ===== */
#footer{padding:48px 0;background:#d1afa3;}
/* f_box */
#footer .f_box{display: flex;flex-wrap:wrap;justify-content: flex-start;align-items: flex-start;}
#footer .f_box .f_box_image{width:40%;text-align: center;}
#footer .f_box .f_box_image img{width:120px;}
#footer .f_box .f_box_detail{width:calc(100% - 40%);}
/* f_nav */
#footer .f_nav{margin-bottom:24px;display:inline-grid;column-gap:2em;grid-template-columns:repeat(3, auto);}
#footer .f_nav li{margin-bottom:4px;}
#footer .f_nav li a{color:#FFFFFF;font-weight: 700;}
#footer div.copy{font-size:11px;color:#FFFFFF}

/* ===== 共通 ===== */
#sub_head{margin-bottom:12px;}
h1.sub_title{margin:0;padding:40px 0;}
h1.sub_title::before{display:none;}
h1.sub_title span{font-size:25px;margin-top: -20px;display: block;}
.sub_main_img img{width:100%;height:30vh;object-fit:cover;}
.sub_page_bg{background:url("image/sub_page_bg.svg") no-repeat right top -12px / 35%;background-attachment:fixed;}
.page #contents{padding-bottom:0;}

/* === 商品紹介 === */
.product .product_list li{padding:16px 12px;background:no-repeat center center / cover;box-sizing:border-box;position:relative;color:#FFFFFF;}
.product .product_list li:hover .view_more{background:#FFFFFF;color:#000000;}
.product .product_list li.cake{background-image:url("image/product/cake.jpg?20251125");}
.product .product_list li.baked{background-image:url("image/product/baked.jpg?20251125");}
.product .product_list li.gift{background-image:url("image/product/gift.jpg?20251125");}
.product .product_list li .page_title{padding-top:8%;font-size:48px;}
.product .product_list li .page_title::before{width:120px;background:#FFFFFF;z-index:1;}
.product .product_list li .page_title small{display:block;font-size:18px;font-family: "Noto Serif JP", serif;}
.product .product_list li .view_more{transition:0.4s;}

.product #contents .sub_page_bg{padding-bottom:144px;}
.product #contents .concept_txt{margin-bottom:64px;}
.product #contents .product_item .product_img{margin-bottom:8px;}
.product #contents .product_item h3{margin-bottom:8px;border-bottom:1px solid #000000;font-size:21px;font-weight:600;font-family: "Noto Serif JP", serif;letter-spacing:0.1em;text-indent:0.1em;}
.product #contents .product_item h3 span.en{float:right;}
.product #contents .product_item h3 span.en small{font-size:12px;}
.product #contents .product_item p{margin-bottom:12px;font-size:15px;}
.product #contents .product_item p:last-of-type{margin-bottom:0;}
/* cake */
.product .cake_wrap{display:flex;justify-content:space-between;flex-wrap:wrap;}
.product .cake_wrap .cake_item{width:48%;margin-bottom:48px;}
/* gift */
.product #contents .gift_wrap .gift_img{margin-bottom:0;}
.product #contents .gift_item{margin-bottom:24px;display:flex;justify-content:space-between;flex-wrap:wrap;}
.product #contents .gift_item .gift_img{width:380px;}
.product #contents .gift_item .gift_detail{width:calc(100% - 420px);}
/* ===== 採用情報 ===== */
/* recruit_request */
#recruit_request{width:100%;padding:0;position:relative;}
#recruit_request .request_bg img{width:100%;height:100%;object-fit:cover;}
#recruit_request .request_box{position:absolute;top:24%;left:10%;color:#FFFFFF;}
#recruit_request .request_box h3{text-shadow: 5px 5px 5px #333;}
#recruit_request .request_box h3.page_title::before{background:#fff;}
#recruit_request .request_box li{margin-bottom:10px;}
/* recruit_detail */
#recruit_detail{margin-bottom:48px;position:relative;overflow:hidden;}
#recruit_detail h3{width:300px;margin:0 auto;background:#fff;}
/* recruit_detail_box */
#recruit_detail .recruit_detail_box{width:100%;margin:-50px auto 0;padding:50px 24px;border:1px solid #d1afa3;box-sizing:border-box;}
/* recruit_item */
#recruit_detail .recruit_item{margin:52px 0;position:relative;display:flex;justify-content:space-between;flex-wrap:wrap;}
/* img_box */
#recruit_detail .recruit_item .img_box{width:100%;height:380px;margin-bottom:16px;position:relative;}
#recruit_detail .recruit_item .img_box img{width:100%;height:100%;margin-left:-40%;object-fit:cover;}
#recruit_detail .recruit_item:nth-of-type(even) .img_box img{margin-left:40%;}
/* recruit_head */
#recruit_detail .recruit_item .recruit_head{width:40%;position:absolute;top:0;right:0;order:1;}
#recruit_detail .recruit_item .recruit_head h4{margin:0 0 0 20%;padding-top:72px;background:no-repeat center top / 60px;font-size:36px;font-family:"Noto Serif JP", serif;color:#634b3f;writing-mode:vertical-rl;}
#recruit_detail .recruit_item:nth-of-type(even) .recruit_head{left:0;right:inherit;}
#recruit_detail .recruit_item:nth-of-type(even) .recruit_head h4{margin:0 20% 0 auto;}
#recruit_detail .recruit_item:nth-of-type(1) .recruit_head h4{background-image:url("image/recruit/recruit_detail_icon01.png");}
#recruit_detail .recruit_item:nth-of-type(2) .recruit_head h4{background-image:url("image/recruit/recruit_detail_icon02.png");}
#recruit_detail .recruit_item:nth-of-type(3) .recruit_head h4{background-image:url("image/recruit/recruit_detail_icon03.png");}
/* txt_item */
#recruit_detail .recruit_item .txt_item{width:60%;}
#recruit_detail .recruit_item:nth-of-type(even) .txt_item{margin-left:auto;}

/* ===== single ===== */
.single #contents h2.page_title{padding: 0.2em 0;border-top: solid 3px #333333;border-bottom: solid 3px #333333;color:#333333}
.entry_data{font-size:11px;text-align:right;}

/* ===== error404 ===== */
.error404 #contents{padding-top:80px;text-align:center;}
.error404 #contents h1{margin:0;font-size:600%;font-family:Arial, Helvetica, "sans-serif";font-weight:600;line-height:1;color:#E60019;}
.error404 #contents h2{border-bottom:none;}
.error404 #contents p a{text-decoration:underline;}

@media screen and (min-width: 1025px) {
	#global_menu{display:block !important;}
}
@media screen and (min-width: 741px) {
	a[href^="tel:"]{pointer-events:none;cursor:default;text-decoration: none;}
}

@media screen and (max-width: 1280px) {
	.l_wrap{width:90%;}
	
	#recruit_request .request_bg{height:50vh;}
	#recruit_request .request_box{top:16%;}
}

@media screen and (max-width: 1024px) {
	.pc{display: none;}
	.sp{display:block;}
	.wrap{width:90%;}
	/* === overlayMenuBtn === */
	.overlayMenuBtn{height:32px;position:absolute;top:50%;right:3%;transform:translateY(-50%);cursor:pointer;z-index:100001;}
	.overlayMenuBtn span{width:32px;position:relative;display:block;border:2px solid #d1afa3;transition:.5s;background-color:#d1afa3;}
	.overlayMenuBtn span:nth-child(1){top: 0;}
	.overlayMenuBtn span:nth-child(2){top: 8px;}
	.overlayMenuBtn span:nth-child(3){top: 16px;}
	/* overlayMenu */
	.overlayMenu{width:100%;height:100vh;display:none;position:fixed;overflow:auto;background:#FFFFFF;z-index:100000;color:#333333;top:0;left:0;}
	.overlayMenuInner{padding:64px 4% 40px;}
	/* overlayMenuItem */
	.overlayMenuItem #sp_logo{margin-bottom:24px;text-align:center;}
	.overlayMenuItem #sp_logo img{width:120px;}
	.overlayMenuItem ul.sp_menu{margin:20px 0 40px;padding:0;list-style-type:none;}
	.overlayMenuItem ul.sp_menu li{border-top:1px solid #CCC;line-height:1.4;}
	.overlayMenuItem ul.sp_menu li:last-child{border-bottom:1px solid #CCC;}
	.overlayMenuItem ul.sp_menu li small{display:block;font-size:11px;}
	.overlayMenuItem ul.sp_menu li a{width:100%;padding:12px 24px;display:block;box-sizing:border-box;color:#333333;text-decoration:none;transition:.5s;}
	.overlayMenuItem ul.sp_menu li a:hover{background-color:#d1afa3;color:#FFFFFF;}
	
	#header, .home #header{width:100%;height:inherit;margin:0;padding:8px 3%;background-color:rgba(255,255,255,0.8);position:sticky;top:0;z-index:999;box-sizing:border-box;}
	#header #logo, .home #header #logo{width:64px;margin:0;}
	.mainimage{width:100%;height:inherit;position:inherit;top:inherit;right:inherit;}
/* xmas_fixed */
	#xmas_fixed{min-width:120px;right:inherit;top:inherit;left:12px;bottom:12px;}
	
	/* ===== global_menu ===== */
	#global_menu{display:none;}
	/* service */
	#service .service_item .service_image{height:40vh;}
	#service .service_item .service_item_detail h2.page_title{margin-bottom:0;}
	/* concept_detail */
	#contents .concept_detail p{padding:0 5%;}
/* ===== 採用情報 ===== */
	#recruit_detail .recruit_item .img_box img{margin-left:-30%;}
	#recruit_detail .recruit_item:nth-of-type(even) .img_box img{margin-left:30%;}
	#recruit_detail .recruit_item .recruit_head{width:30%;}
	#recruit_detail .recruit_item .txt_item{width:70%;}
}

@media screen and (max-width: 800px) {
	#concept .concept_detail{width:100%;}
	#concept .concept_image{display:none;}
	
	/* ===== con_box ===== */
	#con_box .flex_box{flex-direction: column;}
	#con_box .contact_image{display:none;}
	#con_box .contact_detail{width:100%;margin:0;}
	#con_box .contact_detail h3.page_title{margin-top:16px;}
	#con_box .contact_detail p{margin-bottom:8px;}
	#con_box .contact_detail p.small br{display:none;}
	/* ===== shop_info ===== */
	#shop_info .adress_box .item{width:100%;margin-bottom:16px;}
	#shop_info .adress_box .item p{margin-bottom:8px;}
	#shop_info .adress_box .contact_box span:nth-of-type(2){padding-left:16px;}
	#shop_info .adress_box .contact_box span:nth-of-type(2)::before{padding-right:16px;content:"／";font-size:15px;color:#000000;}
	#shop_info .adress_box .contact_box br{display:none;}
/* === 商品紹介 === */
	.product .product_list li{width:100%;margin:8px auto;}
	.product .product_list li .page_title{margin-bottom:32px;padding-top:4%;}
	
	.product #contents .gift_item{margin:8px 0;}
	.product #contents .gift_item .gift_img{width:100%;margin-bottom:12px;}
	.product #contents .gift_item .gift_detail{width:100%;}
/* ===== 採用情報 ===== */
	#recruit_detail .recruit_item .img_box img{margin-left:-17%;}
	#recruit_detail .recruit_item:nth-of-type(even) .img_box img{margin-left:17%;}
	#recruit_detail .recruit_item .recruit_head{width:15%;}
	#recruit_detail .recruit_item .txt_item{width:83%;}
}

@media screen and (max-width: 740px) {
	.page_title{font-size:48px;}
	.concept_txt{padding:0 5%;font-size:18px;}
	
	.table_scroll{overflow: auto;white-space: nowrap;display:block;}
	.table_scroll::-webkit-scrollbar{height: 5px;}
	.table_scroll::-webkit-scrollbar-track{background: #333;}
	.table_scroll::-webkit-scrollbar-thumb {background: #999;}
	.table-scroll table{width:100%;}
	a[href^="tel:"]{text-decoration:none;color:#000000;}
	
	.two_flex .item{width:100%;margin:0 0 40px;}
	.three_flex .item{width:100%;}
	.four_flex .item{width:48%;}
	.four_flex::before{content:"";display: block;width:48%;order:1;}
	.four_flex::after{content:"";display: block;width:48%;}
	
	section{padding:48px 0;}
/* === mainimage === */
	.mainimage{height:50vh;}
/* xmas_fixed */
	#xmas_fixed{width:240px;max-width:inherit;}
/* === calendar_box === */
	.calendar_box{padding:16px;}
	.calendar_box table caption{padding-top:12px;}
	.calendar_box table caption ul{flex-wrap:wrap;}
	.calendar_box table caption ul li{width:100%;}
	.calendar_box table th, .calendar_box table td{padding:12px 4px;}
	
/* === instagram === */
	#instagram .insta_list li{width:48%;}
/* === service === */
	#service .service_item:nth-of-type(2) .service_item_detail{left:50%;}
	#service .service_item:nth-of-type(3) .service_item_detail{left:50%;}
/* ===== footer ===== */
	#footer div.copy{margin-bottom:80px;}
}

@media screen and (max-width: 640px) {
	.mb{display:block;}
	.page_title{font-size:42px;}
	.page_title::before{width:120px;}
/* ===== shop_info ===== */
	#shop_info{margin:0 auto 1rem;padding:0;}
	#shop_info .adress_box .item{text-align:center;}
	#shop_info .adress_box .item h3{font-size:21px;}
	#shop_info .adress_box .item p{font-size:14px;}
	#shop_info .adress_box .contact_box{font-size:18px;}
	#shop_info .adress_box .contact_box span:nth-of-type(2){padding-left:0;}
	#shop_info .adress_box .contact_box span:nth-of-type(2)::before{padding-right:0;content:"";}
	#shop_info .adress_box .contact_box br{display:block;}
/* ===== footer ===== */
	#footer .f_box{flex-direction:column-reverse;}
	#footer .f_box .f_box_image{width:100%;order:2;}
	#footer .f_box .f_box_detail{width:100%;text-align:center;order:1;}
	#footer .f_nav{text-align:center;grid-template-columns:repeat(1, auto);}
	
/* === 商品紹介 === */
	.product .product_list li .page_title{margin-bottom:12px;}
	.product .product_list li .view_more{display:none;}
	.product .cake_wrap .cake_item{width:100%;}
	.product #contents .product_item h3{font-size:19px;}
/* ===== 採用情報 ===== */
	#recruit_request .request_box{width:90%;top:50%;left:50%;transform:translate(-50%, -50%);}
	#recruit_request .request_box ul li{font-size:14px;}
	#recruit_detail .recruit_item .recruit_head h4{padding-top:52px;background-size:42px;font-size:24px;}
	#recruit_detail .recruit_item:nth-of-type(even) .recruit_head h4{margin-left:-6px !important;}
	#recruit_detail .recruit_item .txt_item{width:100%;}
}