/*
 Theme Name:   toki_tcd069-child
 Template:     toki_tcd069
 Version:      1.0.0
*/
/** カラーパレットの変更 **/

/* black */
.has-black-background-color{
	background-color: #333;
}
.has-black-color{
	color: #333;
}
/* white */
.has-white-background-color{
	background-color: #fff;
}
.has-white-color{
	color: #fff;
}
/* gray */
.has-gray-background-color{
	background-color: #ABB8C3;
}
.has-gray-color{
	color: #ABB8C3;
}
/* pink */
.has-pink-background-color{
	background-color: #F78DA7;
}
.has-pink-color{
	color: #F78DA7;
}
/* red */
.has-red-background-color{
	background-color: #CF2E2E;
}
.has-red-color{
	color: #CF2E2E;
}
/* range */
.has-range-background-color{
	background-color: #FF6900;
}
.has-range-color{
	color: #FF6900;
}
/* amber */
.has-amber-background-color{
	background-color: #FCB900;
}
.has-amber-color{
	color: #FCB900;
}
/* green */
.has-green-background-color{
	background-color: #00D084;
}
.has-green-color{
	color: #00D084;
}
/* cyanblue */
.has-cyanblue-background-color{
	background-color: #0693E3;
}
.has-cyanblue-color{
	color: #0693E3;
}
/* ligthgray */
.has-lightgray-background-color{
	background-color: #f5f5f5;
}
.has-lightgray-color{
	color: #f5f5f5;
}
/* gold */
.has-gold-background-color{
	background-color: #84734b;
}
.has-gold-color{
	color: #84734b;
}
/* deepblue */
.has-deepblue-background-color{
	background-color: #00507D;
}
.has-deepblue-color{
	color: #00507D;
}
/* emerald */
.has-emerald-background-color{
	background-color: #0B83A1;
}
.has-emerald-color {
	color: #0B83A1;
}
/* キャプションだ縦になるのを調整↓ */
.single .elementor-widget-container .wp-block-image .aligncenter>figcaption,
.single .elementor-widget-container .wp-block-image.aligncenter>figcaption{
	display:inline-block;
}
.wp-block-image figcaption {
    font-size: 0.8em;
    line-height: 1.5em;
}

.ft-pg-bn{
	text-align:center;
}
body .post_row {
    line-height: 2;
}
#shop_data_list dd a,
#shop_data_list dd{
	overflow-wrap: break-word;
}
table td,
table th{
	word-break: break-all;
	word-wrap: break-all;
}
.post_content .wp-block-image .aligncenter{
	display: table;
}
.post_content blockquote cite{
	padding: 20px 0 20px 0;
}
.button-width100 a.elementor-button{
	width:100%;
	padding-right:20px;
	padding-left:20px;
}



/* カルーセル */
#footer_carousel { width:100%; height:150px; overflow:hidden; }
#footer_carousel .item { width:25%; }
#footer_carousel .item a {
  display:block; width:100%; height:150px; padding:10px; /*color:#fff;*/ position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#footer_carousel .image { width:130px; height:130px; position:relative; overflow:hidden; z-index:2; background:rgba(255,255,255,0.5); }
#footer_carousel .image img { width:100%; height:auto; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#footer_carousel .title {
 font-weight:normal; position:absolute; /*font-size:24px;*/ line-height:1.6;
 left:170px; right:30px; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
 -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;
}

/* ===== トップページ ===== */
/* 崩れてたので調整↓ */
#container div.indexBannerArea{
	max-width:100%;
	padding: 60px 30px 60px;
    box-sizing: border-box;
}
/* news */
#header_news{
	height:auto;
}
#header_news_inner{
	padding: 15px 0;
}
#header_news_inner .archive_link{
	top:auto;
	bottom:0;
}
#header_news_inner .post_link{
	height: 50px;
    line-height: 50px;
}

/* トップバナー用CSS（不要になったら削除OK） */
.topbn-2col{
	display: flex;
    max-width: 1000px;
    margin: 0 auto 20px;
    justify-content: space-between;
}
.topbn-2col.last{
	margin: 0 auto 90px;
}
.topbn-2col a {
    max-width: 49%;
}
.topbn-1col{
	max-width: 1000px;
	margin: 0 auto 60px;
	text-align: center;
}
.topbn-1col-a{
	max-width: 1000px;
	margin: 0 auto 20px;
	text-align: center;
}

/* サイドバーウィジェット　タグ */
.side_widget .tagcloud a{
	display: inline-block;
    margin-bottom: 5px;
	padding: 8px 10px 6px;
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 3px;
    font-size: 11px !important;
    font-weight: normal;
}
.side_widget .tagcloud a:before {
    content: "#";
    color: #666;
}

/* ブログ一覧　タグ */
#blog_list .item{
	height: 460px;
}
#blog_list .link{
	height: auto;
}
#blog_list .title_area{
	height:170px;
}
#blog_list .tag-list{
	height: 20px;
	margin-bottom:8px;
	overflow: hidden;
}
#blog_list .tag-list a{
	display:inline-block;
	margin:0 5px 5px 0;
	padding:5px 6px 3px;
    color: #999;
	border: 1px solid #999;
    border-radius: 3px;
	font-size: 10px;
}
#blog_list .tag-list a:first-child{
	display:none;
}
#blog_list .tag-list a:last-child{
	margin-right:0;
}
#blog_list .title a,
#blog_list .tag-list a{
	transition: 0.5s;
}
#blog_list .title a:hover,
#blog_list .tag-list a:hover{
	opacity:0.5;
}
body #blog_list .category a{
	color:#fff;
}
body #blog_list .image img{
	height: inherit;
	object-fit: cover;
}
/* ===== ヘッダー ===== */
/* 言語タブ */
.pc body #header #header_lang.type1 li a{
	color:#333 !important;
}

/* ヘッダー検索・カレンダーボタン */
.search_btn,
.calendar_btn{
	position: absolute;
    z-index: 50;
    top: 0px;
    display: inline-block;
    font-size: 15px;
    height: 80px;
    text-decoration: none;
    text-align: center;
}
.search_btn{
/* 	right: 240px; */
	right: 120px;
	width: 60px;
}
.calendar_btn{
	display: flex;
    align-items: center;
    justify-content: space-around;
	right: 130px;
	width: 100px;
}
.calendar_btn span{
	display: inline-block;
    margin-top: 5px;
}

.search_btn:before,
.calendar_btn:before{
	
	display: block;
    position: absolute;
    top: 32px;
    left: 0;;
    right: 0;
    margin: auto;
    font-size: 18px;
	font-weight:900;
    width: 18px;
    height: 18px;
    line-height: 18px;
}
.search_btn:before{
	content: url(svg/search-icon.svg);
    width: 18px;
    height: 18px;
	
}
/*.calendar_btn:before{
	content: "\f073";
}*/
/* ロゴ小さく */
#header_logo .mobile_logo_image{
	max-width: 120px;
	height: auto;
	object-fit: cover;
}
/* ヘッダー予約ボタン */
.h_rsv_btn{
	display: flex;
	align-items: center;
	position: absolute;
    top: 0;
    right: 130px;
	height: 70px;
	z-index: 50;
}
.h_rsv_btn span{
	display: inline-block;
	padding: 15px 15px 12px;
    background: #84734b;
	border-radius: 3px;
    color: #fff;
	text-decoration: none;
    text-align: center;
    transition: all 0.2s;  
}
.h_rsv_btn span:hover{
	opacity: 0.7;
}
.pc .h_rsv_btn{
    right: 190px;
	height: 80px;
}


/* Event&Fair その他のイベント情報 */
body #find_list2 .title{
	font-size:16px;
}

/* 施設ページ以外でのショップ詳細テーブル */

.shop_data_tb th,
.post_tb td:first-child{
	width: 180px;
	box-sizing: border-box;
	background: #f2f2f2;
    font-weight: normal;
}
.shop_data_tb th,
.shop_data_tb td{
	border: 1px solid #ccc;
    padding: 10px 15px;
    line-height: 2.2;
}

/* table */
.page_tb table { margin:50px 0 24px 0; width:100% !important; }
.page_tb td, .page_tb th { border:1px solid #ccc; padding:10px 15px; line-height:2.2; background:#fff; }
.page_tb th,.post_tb td:first-child { background:#f2f2f2; font-weight:normal; }

/* ===== ショートコード用 ===== */
/* 予約するボタン */
body .sc-btn,
body .sc-btn2{
	margin: 50px auto 30px;
	font-weight:bold;
}
body .sc-btn a,
body a.sc-btn{
	display: block;
	max-width:350px;
	padding: calc(0.667em + 2px) calc(1.333em + 2px);
	background: #00507d;
	color: #fff !important;
	border-radius: 30px;
	line-height: 2.4;
	text-align: center;
	font-weight:normal;
	transition: all 0.2s;
}
body .sc-btn2 a,
body a.sc-btn2{
	display: block;
	max-width:350px;
	margin:20px auto 0;
	padding: 14px 25px 12px;
	background: rgb(242,117,7);
	background:linear-gradient(0deg, rgba(242,117,7,1) 0%, rgba(252,158,76,1) 100%);
	color: #fff !important;
	border-radius: 10px;
	font-size: 18px;
	line-height: 1.5;
	text-align: center;
	text-shadow: 0px 1px 1px rgba(0,0,0,0.34);
	transition: all 0.2s;
	box-shadow: inset 0px -1px 3px #8f4708; 
}
body .sc-btn2 strong::after{
	content:url("/wp-content/uploads/2023/01/arrow-orange.webp");
	display:inline-block;
	margin-right: -15px;
	padding-left:15px;
	vertical-align: middle;
    line-height: 1;
}
body .sc-btn a{
	margin-top:20px;
	margin-right: auto;
    margin-left: auto;
}
body .sc-btn a:hover,
body a.sc-btn:hover{
	opacity:0.7;
}

.shop-ota-btn a{
	display: inline-block;
}
p.sc-title{
	font-size:24px;
    margin: 0 0 0.8em 0;
    padding: 10px 0 0 0;
	line-height: 1.4;
	font-weight:600;
}
/* CGM用のボタン */
.cgm-btn{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
    margin-bottom: 50px;
    padding: 3% 2%;
    border: 1px solid #ccc;
    border-radius: 10px;
}
.cgm-btn a{
	width:35%;
	box-sizing: border-box;
	padding:0 2%;
	margin-top: 10px;
}
.cgm-btn.btn3{
	justify-content: left;
}
.cgm-btn.btn3 a{
	width:33%;
}
body p.cgm-txt{
	text-align: center;
    margin-bottom: -21px;
}
body p.cgm-txt strong{
	display: inline-block;
    margin: 0 auto;
    background: #fff;
    padding: 0 20px;
	font-weight:400;
}
/* 地域クーポンflag */
.cp-flag{
	display: inline-block;
    padding: 5px 6px 4px 5px;
    color: #00507d;
    border: 1px solid #81939d;
    border-radius: 5px;
    font-size: 10px;
    line-height: 1;
}
.cp-flag-txt{
	display:inline-block;
	margin-right:15px;
}
/* ===== 定休日カレンダー ===== */
.shop-holiday{
	margin:0 20px 144px;
	text-align: center;
}
.shop-holiday #archive_catch .catch{
	color: #07689f;
}
.shop-holiday table{
	max-width:800px;
	margin: 0 auto;
	
}
.shop-holiday table tr >*{
	border: 1px solid #ddd;
	vertical-align: middle;
	padding: 15px 20px;
	line-height: 2;
	word-break: break-word;
}
.shop-holiday table th{
	width: 20%;
	background: #07689f;
	color: #fff;
	font-size: 16px;
	font-weight: normal;

}
.shop-holiday table td{
	text-align: left;
}
/* ===== 食材カレンダー ===== */
.elementor .seasonal-calendar .elementor-tab-content{
	padding: 0;
}
.seasonal-calendar table{
	margin-bottom: 0;
}
.seasonal-calendar table tr th,
.seasonal-calendar table tr th a{
	color: #000;
	text-align:left;
	font-size:12px;
}
.seasonal-calendar table tr th a{
	text-decoration: underline;
}
.seasonal-calendar table tr td{
	padding: 10px 0;
	text-align: center;
	color: transparent;
}
.seasonal-calendar table tr td.on-season span{
		display: block;
}
/* 秋 */
.seasonal-calendar #elementor-tab-content-1611 table tr td.on-season span,
.seasonal-calendar #elementor-tab-content-1611 table tr:nth-child(even) th,
.seasonal-calendar.autumn table tr td.on-season span,
.seasonal-calendar.autumn table tr:nth-child(even) th{
	background: #FFD5A0;
}
.seasonal-calendar #elementor-tab-content-1611 table tr:nth-child(odd) th,
.seasonal-calendar.autumn table tr:nth-child(odd) th{
	background: #FFEECB;
}
/* 冬 */
.seasonal-calendar #elementor-tab-content-1612 table tr td.on-season span,
.seasonal-calendar #elementor-tab-content-1612 table tr:nth-child(even) th,
.seasonal-calendar.winter table tr td.on-season span,
.seasonal-calendar.winter table tr:nth-child(even) th{
	background: #C4DFF0;
}
.seasonal-calendar #elementor-tab-content-1612 table tr:nth-child(odd) th,
.seasonal-calendar.winter table tr:nth-child(odd) th{
	background: #E7F2F9;
}
/* 春 */
.seasonal-calendar #elementor-tab-content-1613 table tr td.on-season span,
.seasonal-calendar #elementor-tab-content-1613 table tr:nth-child(even) th,
.seasonal-calendar.spring table tr td.on-season span,
.seasonal-calendar.spring table tr:nth-child(even) th{
	background: #FFDDE8;
}
.seasonal-calendar #elementor-tab-content-1613 table tr:nth-child(odd) th,
.seasonal-calendar.spring table tr:nth-child(odd) th{
	background: #FFF0F5;
}
/* 夏 */
.seasonal-calendar #elementor-tab-content-1614 table tr td.on-season span,
.seasonal-calendar #elementor-tab-content-1614 table tr:nth-child(even) th,
.seasonal-calendar.summer table tr td.on-season span,
.seasonal-calendar.summer table tr:nth-child(even) th{
	background: #BEF5E6;
}
.seasonal-calendar #elementor-tab-content-1614 table tr:nth-child(odd) th,
.seasonal-calendar.summer table tr:nth-child(odd) th{
	background: #D4FAE4;
}
.seasonal-calendar table tr:first-child th{
	background: #f2f2f2 !important;
}

/* フッターパソナグループバナー */
.pasona-g-banner{
	display: flex;
    flex-direction: column;
    align-items: center;
    width: calc(100% / 3 - 2px);
	max-width: 100%;
	padding: 60px 50px;
    box-sizing: border-box;
	border-left: solid 1px rgba(255,255,255,0.6);
}
.pasona-g-banner a{
	margin-bottom:10px;
}
/* フッター相互リンクバナー */
#footer_free_space{
	background:#f5f5f5;
}
#footer_free_space .post_content{
	max-width: 1180px;
    margin: 0 auto;
	padding: 50px 0 0;
}
#footer_free_space a{
	display:inline-block;
	width:22%;
	margin:0 1.5% 15px;
}
#footer_free_space a img{
	max-width:100%;
}

/* SHOPページ */
/* 口コミ */
.review{
	margin-bottom: 30px;
    padding: 2em 1.5em 1.5em;
    border: 1px solid #ddd;
    box-shadow: 1px 1px 4px #ddd;
	line-height: 2;
}
.review .review-writer{
	margin:0;
    padding-top: 10px;
    border-top: 1px #00507D dashed;
    color: #333;
	text-align: right;
	font-size: 0.7em;
}
.review::before {
    content: "”";
	color: #00507D;
}
.review-writer::after {
    content: "”";
	color: #00507D;
	display: inline-block;
	margin-left:5px;
	font-size:16px;
}
/*アクセス詳細*/
#access_desc{
	margin-top:68px;
}
/* アバターバナー */
.avatar_bn_close{
	position: absolute;
	top: -20px;
    right: 0;
	display: inline-block;
	width: 35px;
    height: 35px;
	border-radius: 30px;
	background: rgba(255,255,255,0.9);
    color: #000;
    font-weight: bold;
    font-size: 40px;
    text-align: center;
	line-height: 0.95;
    vertical-align: middle;
	cursor: pointer;
}
.avetar-top-fix{
	position: fixed;
    bottom: 90px;
    right: 1%;
    z-index: 100;
}
.avetar-top-fix img{
	max-width: 320px;
	height: auto;
}
/* デフォルトのアバターマナーの非表示 */
#avacomWidget .avacomWidget__container--close {
 display: none;
}
/* ページ内のフォントをゴシックに */
body .font-gothic{
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro", Sans-serif;
}

/* 目次 */
.mokuji{
	background: #f9f9f9;
    border: 1px solid #aaa;
    padding: 10px;
	margin-top:2em !important;
    margin-bottom: 1em;
    width: auto;
	display: table;
}
.mokuji::before {
    content: "目次";
    display: block;
    text-align: center;
    font-weight: 600;
}
/* 天気ボタン */
.tenki-btn {
   display: flex;
    align-items: center;
    justify-content: center;
    width: calc(100% - 40px);
    max-width: 350px;
    margin: 30px auto 0;
    padding: 8px 10px 13px;
    background: #00507D;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

.tenki-btn a {
    color: #fff;
    text-decoration: none;
}

.tenki-btn:hover {
    opacity: 0.6;
}

.c-arrow {
    position: relative;
    top: 4px;
    display: inline-block;
    width: 18px;
    margin-left: 10px;
    border-radius: 50%;
    border: 1px solid #00507D;
    background: #fff;
    aspect-ratio: 1;
}

.c-arrow:before {
    top: 6px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.c-arrow:after {
    bottom: 6px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.c-arrow:before,
.c-arrow:after {
    content: '';
    width: 6px;
    right: 5px;
    height: 2px;
    border-radius: 1px;
    background: #00507D;
    position: absolute;
}
@media screen and (max-width:1230px) {
	/* ヘッダー検索ボタン */
	.search_btn{
		height: 70px;
/* 		right:160px; */
		right:60px;
	}
	.calendar_btn{
		height: 70px;
		right:60px;
	}
	.search_btn:before,
	.calendar_btn:before{
		top: 28px;
	}
}
@media screen and (max-width:1024px) {
/* トップバナー用CSS（不要になったら削除OK） */
	.topbn-1col{
		margin: 0 auto 30px;
	}
	.topbn-1col-a{
		margin: 0 auto 15px;
	}
	/* Event&Fair その他のイベント情報 */
	body #find_list2 .title{
		font-size:14px;
	}

}
@media screen and (max-width:950px) {
	/* news */
	#header_news_inner {
    	padding:0 0 5px;
	}
	#header_news_inner .archive_link{
		padding-top:15px;
	}
	body #header_news_inner .post_link{
		padding:10px 0;
		border-bottom: 1px dotted #ddd;
	}
}
@media screen and (max-width:768px) {
	/* フッターパソナグループバナー */
	.pasona-g-banner{
		width: auto;
		padding: 30px 0px 28px;
    	margin: 0 20px;
		border-left: 0;
	}
	/*shopページ　アクセス詳細*/
	#access_desc{
		margin-top:25px;
	}
	/* アクセスページのボタン */
	.sp-button-width100 a.elementor-button{
		width:100%;
		padding-right:20px;
		padding-left:20px;
	}

}
@media screen and (max-width:750px) {
	/* ヘッダー検索・カレンダーボタン */
	.search_btn{
		width: 40px;
		height: 60px;
/* 		right:150px; */
	}
	.calendar_btn{
		width: 100px;
		height: 60px;
		right:50px;
	}
	.calendar_btn span{
		font-size: 14px;
	}
	.search_btn:before,
	.calendar_btn:before{
		top: 23px;
	}
	/* ヘッダー 予約ボタン */
	.mobile .h_rsv_btn{
		right: 115px;
		height: 60px;
	}
}
@media screen and (max-width:500px) {
	/* トップスライダー */
	body #header_slider_wrap,
	body #header_slider,
	body #header_slider .item{
		height: 300px;
	}
	body #header_slider{
		background: #fff;
	}
	
	.topbn-2col{
		margin: 0 auto 10px;
	}
	.topbn-2col.last{
		margin: 0 auto 30px;
	}
	.topbn-1col-a{
		margin: 0 auto 5px;
	}
	
	/* フッターカルーセル */
	#footer_carousel { width:100%; height:110px; overflow:hidden; }
	#footer_carousel .item { width:calc(100% / 3); }
	#footer_carousel .item a { height:110px; padding:10px; }
	#footer_carousel .image { width:90px; height:90px; }
	#footer_carousel .title { font-size:16px; left:120px; right:20px; }
	
	/* ブログ一覧　タグ */
	body #blog_list .title_area{
		height:140px;
	}
	body #blog_list .title_area .date {
    	bottom: 13px;
	}
	body #blog_list .title_area .title:before{
		content:none;
	}
	
	/* 施設ページ以外でのショップ詳細テーブル */
	.shop_data_tb th,
	.post_tb td:first-child{
		width:100px;
	}
	.shop_data_map{
		height: 250px;
	}
	/* アバターバナー */
	.avetar-top-fix img{
		max-width: 68%;
    	margin: 0 16%;
	}
	.avetar-top-fix{
		right:0;
		bottom: 90px;
	}
	.avatar_bn_close{
		top: -20px;
		right: 8%;
	}
	
	/* 画像モーダルスクロールの設定 */
	.modaal-gallery-item.is_active{
		width: 200%;
    	overflow: scroll;
	}
	
	/* tableスクロール */
	.table-scroll{
		overflow: scroll;
	}
	.table-scroll td, .table-scroll th {
    	white-space: nowrap;
	}	.seasonal-calendar table tr:first-child th{
		/*-ms-writing-mode: tb-rl;
		-webkit-writing-mode: vertical-rl;
		writing-mode: vertical-rl;*/
		text-align:center;
	}
	/* 食材カレンダー */
	.seasonal-calendar table tr:first-child th span {
		text-combine-upright: all;
		display:block;
	}

	.seasonal-calendar table tr th,
	.seasonal-calendar table tr td{
		padding: 5px 0;
		font-size: 10px;
	}
	.seasonal-calendar table tr th:first-child{
		padding:5px;
		width: 80px;
	}
	
	/* フッター相互リンクバナー */
	#footer_free_space .post_content{
		padding: 50px 2% 0;
	}
	#footer_free_space a{
	width:46%;
	margin:0 2% 10px;
	}
	
	/* ===== ショートコード用 =====*/
	p.sc-title{
		font-size:20px;
	}
	.cgm-btn{
		/*flex-direction: column;*/
		justify-content:left;
		padding: 5% 2%;
	}
	.cgm-btn a,
	.cgm-btn.btn3 a{
		width: 50%;
		margin-top: 10px;
	}
	body p.cgm-txt strong{
		font-size:16px;
	}
	

}
/* iphone SE 対策 */
@media screen and (max-width:350px) {
	#header_logo .mobile_logo_image{
		max-width: 115px;
		height: auto;
	}
}
