/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.menu-list {
    margin: 0;
    padding: 0;
}

.menu-list__item {
    display: flex;
    align-items: baseline;
    width: 100%;
    margin-bottom: 12px;
    border-bottom: 1px dotted #666;
}

.menu-list__name,
.menu-list__price {
    margin: 0;
    padding: 0;
}

.menu-list__name {
    white-space: nowrap;
}


.menu-list__price {
    width: 100%;
    text-align: right;
    white-space: nowrap;
    color: #000 !important;
    font-weight: bold;
}

.menu{
    color:#000 !important;
}

/*カスタムテーブル*/
.custum-table table{
	width:100%;
	border-collapse:collapse;
}

.custum-table th{
	display:none;
}

.custum-table td:first-child{
	width:25%;
	white-space:nowrap;
}

.custum-table td{
	padding:16px 20px;
	border-bottom:1px solid #ddd;
	text-align:left;
	vertical-align:top;
}

/* SP */
@media (max-width:767px){

	.menu-list__item{
		display:flex;
		flex-direction:column;
		align-items:flex-start;
		gap:2px;
		padding:8px 0;
		margin:0;
		border-bottom:1px solid #eee;
	}

	/* 商品名 */
	.menu-list__name{
		font-size:0.85rem;
		line-height:1.45;
		font-weight:400;
		white-space:normal;
		letter-spacing:0;
	}

	/* 点線を消す */
	.menu-list__dot{
		display:none;
	}

	/* 価格 */
	.menu-list__price{
		width:auto;
		margin-top:2px;
		padding:2px 0;
		font-size:0.95rem;
		line-height:1.2;
		font-weight:700;
		text-align:left;
		color:#111 !important;
		background:none;
	}

	/* 見出し */
	.menu-title{
		font-size:1rem;
		line-height:1.4;
		font-weight:700;
		margin:16px 0 8px;
		padding-bottom:4px;
		border-bottom:2px solid #333;
	}
}

/* コンタクトフォーム */
/* ==========================================
   Contact Form 7
========================================== */

.CF7_table{
	width:100%;
	border-collapse:collapse;
	border:none !important;
}

.CF7_table,
.CF7_table tbody,
.CF7_table tr,
.CF7_table th,
.CF7_table td{
	border:none !important;
	background:transparent !important;
	box-shadow:none !important;
}

.CF7_table tr{
	display:block;
	margin-bottom:26px;
}

.CF7_table th,
.CF7_table td{
	display:block;
	width:100%;
	padding:0;
	text-align:left;
	vertical-align:top;
}

.CF7_table th{
	margin-bottom:10px;
	font-size:15px;
	font-weight:700;
	line-height:1.6;
	color:#222;
}

/* 必須・任意 */

.CF7_req,
.CF7_unreq{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:38px;
	padding:4px 8px;
	margin-right:10px;
	border-radius:4px;
	font-size:11px;
	font-weight:700;
	line-height:1;
	letter-spacing:.04em;
}

.CF7_req{
	background:#a20f3b;
	color:#fff;
}

.CF7_unreq{
	background:#eee;
	color:#666;
}

/* 入力欄 */

.CF7_table input[type="text"],
.CF7_table input[type="email"],
.CF7_table input[type="tel"],
.CF7_table textarea,
.CF7_table select{
	width:100%;
	padding:15px 16px;
	border:1px solid #ddd;
	border-radius:6px;
	background:#fff;
	font-size:15px;
	line-height:1.7;
	color:#222;
	box-sizing:border-box;
	transition:.25s;
	appearance:none;
	-webkit-appearance:none;
}

.CF7_table input::placeholder,
.CF7_table textarea::placeholder{
	color:#aaa;
}

.CF7_table input:focus,
.CF7_table textarea:focus,
.CF7_table select:focus{
	outline:none;
	border-color:#a20f3b;
	box-shadow:0 0 0 3px rgba(162,15,59,.08);
}

.CF7_table textarea{
	min-height:220px;
	resize:vertical;
}

/* チェックボックス・ラジオ */

.CF7_table .wpcf7-list-item{
	display:inline-block;
	margin:0 18px 10px 0;
}

/* 送信ボタン */

.CF7_btn{
	margin-top:34px;
	text-align:center;
}

.CF7_btn input[type="submit"]{
	display:inline-block;
	min-width:220px;
	padding:16px 44px;
	border:none;
	border-radius:6px;
	background:#a20f3b;
	color:#fff;
	font-size:15px;
	font-weight:700;
	letter-spacing:.08em;
	cursor:pointer;
	transition:.25s;
}

.CF7_btn input[type="submit"]:hover{
	background:#7d0d2f;
	transform:translateY(-2px);
}

/* エラー */

.wpcf7-not-valid-tip{
	margin-top:7px;
	font-size:13px;
	font-weight:700;
	color:#d70022;
}

.wpcf7 form .wpcf7-response-output{
	margin-top:28px;
	padding:14px 16px;
	border:none !important;
	border-radius:6px;
	background:#f6f6f6;
	font-size:14px;
	line-height:1.8;
}

/* スマホ */

@media (max-width:768px){

	.CF7_table tr{
		margin-bottom:24px;
	}

	.CF7_table th{
		margin-bottom:8px;
		font-size:14px;
	}

	.CF7_table input[type="text"],
	.CF7_table input[type="email"],
	.CF7_table input[type="tel"],
	.CF7_table textarea,
	.CF7_table select{
		padding:14px;
		font-size:14px;
	}

	.CF7_table textarea{
		min-height:170px;
	}

	.CF7_btn input[type="submit"]{
		width:100%;
		min-width:auto;
		padding:16px 20px;
	}

}