@charset "utf-8";

/* ===========================================================================
    contact
=========================================================================== */
/* [pagetitle] ----------------------------------------*/
.pagetitle { background:url(../img/img-pagetitle-001.jpg) 0 50% / cover no-repeat; }

/* [calendar-area] ------------------------------------*/
.calendar-area { margin:74px 0 0; }
.calendar-area .area-inner { position:relative; padding:0 0 0 284px; }
.calendar-area h2 { font-weight:normal; letter-spacing:0.12em; width:201px; position:absolute; top:-22px; left:0; margin:0; }
.calendar-area h2 .en { border-bottom:4px solid #000; display:block; font-size:14px; padding:0 0 6px; }
.calendar-area h2 .ja { display:block; font-size:39px; line-height:1.3; white-space:nowrap; -ms-writing-mode:tb-rl; writing-mode:vertical-rl; position:absolute; top:54px; left:50%; transform:translate(-50%, 0); padding:0 0 88px; }
@media all and (-ms-high-contrast: none) {
.calendar-area h2 .ja { margin-left:-10px; }
}
.calendar-area h2 .ja::before { background:url(../../common/img/ico-title-001.png) 0 0 no-repeat; content:""; width:58px; height:58px; position:absolute; left:50%; bottom:0; margin:0 0 0 -29px; }
@media all and (-ms-high-contrast: none) {
.calendar-area h2 .ja::before { margin-left:-19px; }
}
.calendar-area h2 .ja rt { font-size:14px; margin:0 0 0 5px; }
.calendar-area .calendar { margin:30px 0 0; }
.calendar-area .calendar iframe { width:100%; }

/* [contact-area] -------------------------------------*/
.contact-area { margin:124px 0 0; }
.contact-area .area-inner { min-height:300px; position:relative; padding:0 0 0 284px; }
.contact-area h2 { font-weight:normal; letter-spacing:0.12em; width:201px; position:absolute; top:-22px; left:0; margin:0; }
.contact-area h2 .en { border-bottom:4px solid #000; display:block; font-size:14px; padding:0 0 6px; }
.contact-area h2 .ja { display:block; font-size:39px; line-height:1.3; white-space:nowrap; -ms-writing-mode:tb-rl; writing-mode:vertical-rl; position:absolute; top:54px; left:50%; transform:translate(-50%, 0); padding:0 0 88px; }
@media all and (-ms-high-contrast: none) {
.contact-area h2 .ja { margin-left:-10px; }
}
.contact-area h2 .ja::before { background:url(../../common/img/ico-title-001.png) 0 0 no-repeat; content:""; width:58px; height:58px; position:absolute; left:50%; bottom:0; margin:0 0 0 -29px; }
@media all and (-ms-high-contrast: none) {
.contact-area h2 .ja::before { margin-left:-19px; }
}
.contact-area h2 .ja rt { font-size:14px; margin:0 0 0 5px; }
.contact-area table th { width:165px; }
.contact-area table th span { color:#e10000; }
.contact-area table th span.small { color:#000; display:inline-block; line-height:1.3; }
.contact-area table td { font-size:14px; }
.contact-area table td .error { color:#e10000; display:block; }
.contact-area table td .radio-wrap { display:flex; flex-wrap:wrap; }
.contact-area table td .radio-wrap div { margin-right:3em; }
.contact-area table td .radio-wrap div:last-child { margin-right:0; }
.contact-area table td .radio-wrap input { vertical-align:middle; margin:0 5px 0 10px; }
.contact-area table td .radio-wrap label { vertical-align:middle; }
.contact-area table td .check-wrap { display:flex; flex-wrap:wrap; }
.contact-area table td .check-wrap div { margin-right:3em; }
.contact-area table td .check-wrap div:last-child { margin-right:0; }
.contact-area table td .check-wrap input { vertical-align:middle; margin:0 5px 0 10px; }
.contact-area table td .check-wrap label { vertical-align:middle; }
.contact-area table td .input-wrap { display:flex; flex-wrap:wrap; }
.contact-area table td .input-wrap > div { margin-right:1em; }
.contact-area table td .input-wrap > div:last-child { margin-right:0; }
.contact-area table td .w40 { width:40px; }
.contact-area table td .w160 { width:160px; }
.contact-area table td .w400 { width:400px; }
.contact-area table td .ml05em { margin-left:0.5em; }
.contact-area table td .ml08em { margin-left:0.8em; }
.contact-area table td .mr05em { margin-right:0.5em; }
.contact-area table td textarea { width:100%; height:80px; }
.contact-area table td .takeout { margin:8px 0 0; }
.contact-area table td .takeout dl { margin:0; }
.contact-area table td .takeout dl dt { background:#ffd5d5; font-weight:normal; padding:6px 13px; }
.contact-area table td .takeout dl dd { background:#ffefef; padding:15px 20px 29px 30px; }
.contact-area table td .seat { margin:0; }
.contact-area table td .seat dl { margin:0; }
.contact-area table td .seat dl dt { background:#ffe763; font-weight:normal; padding:6px 13px; }
.contact-area table td .seat dl dd { background:#fff6c6; padding:15px 20px 20px 30px; }
.contact-area table td table { border:none; margin:5px 0 10px; }
.contact-area table td table td { border:none; padding:5px 0; }
.contact-area table td table td:first-child { padding-right:35px; }
.contact-area table td table td:first-child input { margin-right:10px; }
.contact-area .btn { display:flex; flex-wrap:wrap; justify-content:center; margin:26px 0 0; }
.contact-area .btn p { width:220px; margin:0 15px; }
.contact-area .btn p a { border:none; display:block; text-align:center; text-decoration:none; line-height:56px; width:100%; height:56px; position:relative; }
.contact-area .btn p button { border:none; cursor:pointer; text-align:center; width:100%; height:56px; position:relative; padding:0; -webkit-appearance:none; }
.contact-area .btn p .submit { background:#636363; color:#fff; }
.contact-area .btn p .submit::before { border:1px solid #fff; content:""; position:absolute; top:4px; left:4px; right:4px; bottom:4px; }
.contact-area .btn p .submit::after { border-top:2px solid #fff; border-right:2px solid #fff; content:""; width:8px; height:8px; position:absolute; top:22px; left:20px; transform:rotate(45deg); }
.contact-area .btn p .back { background:#e7e7e7; color:#000; }
.contact-area .btn p .back::before { border:1px solid #000; content:""; position:absolute; top:4px; left:4px; right:4px; bottom:4px; }
.contact-area .btn p .back::after { border-top:2px solid #000; border-right:2px solid #000; content:""; width:8px; height:8px; position:absolute; top:22px; left:20px; transform:rotate(225deg); }
.contact-area .takeout-foodpanda { margin:40px 0 0; }
.contact-area .takeout-foodpanda p { font-size:14px; margin:0; }
.contact-area .takeout-foodpanda dl { border:3px solid #d70b61; display:flex; margin:10px 0 0; padding:21px 32px 20px; }
.contact-area .takeout-foodpanda dl dd { font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','ＭＳ Ｐゴシック',Osaka,Arial,Helvetica,sans-serif; font-size:14px; font-weight:bold; text-align:center; line-height:30px; height:30px; margin:0 0 0 19px; }
.contact-area .takeout-foodpanda dl dt + dd { margin:0 0 0 36px; }
.contact-area .takeout-foodpanda dl dd a { background:#d70b61; display:block; padding:0 12px; }
.contact-area .takeout-foodpanda dl dd a:link,
.contact-area .takeout-foodpanda dl dd a:visited,
.contact-area .takeout-foodpanda dl dd a:hover,
.contact-area .takeout-foodpanda dl dd a:active { color:#fff; text-decoration:none; }
.contact-area .takeout-demaecan { margin:54px 0 0; }
.contact-area .takeout-demaecan p { font-size:14px; margin:0; }
.contact-area .takeout-demaecan dl { border:3px solid #eb312c; display:flex; margin:10px 0 0; padding:21px 32px 20px; }
.contact-area .takeout-demaecan dl dd { font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','ＭＳ Ｐゴシック',Osaka,Arial,Helvetica,sans-serif; font-size:14px; font-weight:bold; text-align:center; line-height:30px; height:30px; margin:0 0 0 19px; }
.contact-area .takeout-demaecan dl dt + dd { margin:0 0 0 36px; }
.contact-area .takeout-demaecan dl dd a { background:#eb312c; display:block; padding:0 12px; }
.contact-area .takeout-demaecan dl dd a:link,
.contact-area .takeout-demaecan dl dd a:visited,
.contact-area .takeout-demaecan dl dd a:hover,
.contact-area .takeout-demaecan dl dd a:active { color:#fff; text-decoration:none; }

@media screen and (max-width: 598px) {
/* [pagetitle] ----------------------------------------*/
.pagetitle { background-image:url(../img/img-pagetitle-001_sp.jpg); }

/* [calendar-area] ------------------------------------*/
.calendar-area { margin:5px 0 0; }
.calendar-area .area-inner { min-height:0; padding:0 20px; }
.calendar-area h2 { width:100px; position:static; margin:0 auto; }
.calendar-area h2 .en { border-bottom:2px solid #000; font-size:7px; padding:0 0 2px; }
.calendar-area h2 .ja { font-size:19px; top:30px; padding:0; }
.calendar-area h2 .ja::before { display:none; }
.calendar-area h2 + p { padding:117px 0 0; }
.calendar-area .calendar {}

/* [contact-area] -------------------------------------*/
.contact-area { margin:60px 0 0; }
.contact-area .area-inner { padding:0 20px; }
.contact-area h2 { width:100px; position:static; margin:0 auto; }
.contact-area h2 .en { border-bottom:2px solid #000; font-size:7px; padding:0 0 2px; }
.contact-area h2 .ja { font-size:19px; top:30px; padding:0; }
.contact-area h2 .ja::before { display:none; }
.contact-area h2 + p { padding:87px 0 0; }
.contact-area table { border-top:none; }
.contact-area table th,
.contact-area table td { border:none; border-top:1px solid #b0b0b0; display:block; }
.contact-area table th { box-sizing:border-box; width:100%; }
.contact-area table td .input-wrap div { margin-bottom:10px; }
.contact-area table td .w160 { width:100%; }
.contact-area table td .w400 { width:100%; }
.contact-area table td .cuisine,
.contact-area table td .seatdetail,
.contact-area table td .course { width:100%; margin-left:0; }
.contact-area table td .takeout dl dd { padding:15px 15px 19px; }
.contact-area table td .seat dl dd { padding:15px 15px 20px; }
.contact-area table td table td:nth-child(2) { padding-left:25px; }
.contact-area .btn { display:block; }
.contact-area .btn p { width:100%; margin:10px 0 0; }
.contact-area .takeout-foodpanda dl { display:block; text-align:center; padding:19px 15px 18px; }
.contact-area .takeout-foodpanda dl dt { width:178px; margin:0 auto; }
.contact-area .takeout-foodpanda dl dd { font-size:13px; max-width:178px; line-height:28px; height:28px; margin:7px auto 0; }
.contact-area .takeout-foodpanda dl dt + dd { margin:16px auto 0; }
.contact-area .takeout-foodpanda dl dd a { padding:0; }
.contact-area .takeout-demaecan dl { display:block; text-align:center; padding:19px 15px 18px; }
.contact-area .takeout-demaecan dl dt { width:178px; margin:0 auto; }
.contact-area .takeout-demaecan dl dd { font-size:13px; max-width:178px; line-height:28px; height:28px; margin:7px auto 0; }
.contact-area .takeout-demaecan dl dt + dd { margin:16px auto 0; }
.contact-area .takeout-demaecan dl dd a { padding:0; }
}

