/*==================================
メインビジュアルの個別設定
==================================*/
#ContMainSlider {
background: url(../img/other_header.jpg) no-repeat center center;
background-size: cover;
}

#ContMainSlider .ContMainTitleBG {
background: -webkit-linear-gradient(left, rgba(30,92,128,0.8) 0%,rgba(30,92,128,0) 100%);
background: linear-gradient(to right, rgba(30,92,128,0.8) 0%,rgba(30,92,128,0) 100%);
}

/*==================================
ページコンテンツの設定
==================================*/
#PageCategoryWrapper form#pageCategory {
width: 100%;
}

@media screen and (max-width: 980px) {
#PageCategoryWrapper li a {
font-size: 0.8em;
}
}

@media screen and (max-width: 940px) {
#PageCategoryWrapper li a {
padding-left: 15px;
padding-right: 15px;
}
}

@media screen and (max-width: 900px) {
#PageCategoryWrapper li a {
padding-left: 12px;
padding-right: 12px;
}
}

@media screen and (max-width: 850px) {
#PageCategoryWrapper li a {
padding-left: 9px;
padding-right: 9px;
}
}

@media screen and (max-width: 820px) {
#PageCategoryWrapper li a {
padding-left: 7px;
padding-right:7px;
}
}

@media screen and (max-width: 800px) {
#PageCategoryWrapper li a {
padding-left: 5px;
padding-right:5px;
}
}

#FormWrapper h3 {
border-left: 5px solid #2979A5;
padding-left: 5px;
margin-bottom: 10px;
}

#FormWrapper .MoreBtn.btnLeft {
margin: 0;
padding-left: 0;
padding-bottom: 40px;
}

#FormWrapper strong.required {
background: #C1272D;
padding: 2px;
padding-left: 7px;
padding-right: 7px;
color: #FFF;
border-radius: 3px;
font-weight: 400;
margin-right: 5px;
}

#FormWrapper p a {
color: #222;
}

#FormWrapper p a:hover {
text-decoration: none;
}

#FormWrapper table {
line-height: 1.7;
padding-bottom: 40px;
}

#FormWrapper th {
position: relative;
}

#FormWrapper th.hissu {
background: #DDD;
}


#FormWrapper th strong.required {
font-size: 0.8em;
position: absolute;
right: 5px;
top:50%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}

#FormWrapper input[type="text"],
#FormWrapper input[type="tel"],
#FormWrapper textarea {
border: 1px solid #CCC;
padding: 3px;
border-radius: 3px;
margin-left: 3px;
margin-right: 3px;
font-size: 1em;
box-sizing: border-box;
font-family: 'Roboto',  AppleSystem, 'ヒラギノ角ゴシック','Hiragino Sans', メイリオ, Meiryo, sans-serif;
}

#FormWrapper input[type="radio"] {
position: relative;
top:-3px;
display: inline-block;
margin-right: 5px;
}

#FormWrapper input[type="checkbox"] {
position: relative;
top:-1px;
display: inline-block;
margin-right: 5px;
}

#FormWrapper select {
position: relative;
top:-1px;
font-size: 0.9em;
box-sizing: border-box;
font-family: 'Roboto',  AppleSystem, 'ヒラギノ角ゴシック','Hiragino Sans', メイリオ, Meiryo, sans-serif;
}

#FormWrapper dt {
padding-right: 10px;
font-weight: 500;
}

#FormWrapper dd em {
padding-right: 20px;
}

#FormWrapper dd select {
margin-right: 5px;
}

#FormWrapper textarea {
width: 99%;
line-height: 1.6;
}

#FormWrapper .coution {
font-size: 0.7rem;
}

.w40 {
width: 27%;
max-width: 150px;
}

.w50 {
width: 50%;
}

.w80 {
width: 50%;
}

.w100 {
width: 99%;
}

@media screen and (max-width: 320px) {
.w40 {
width: 22%;
}
#FormWrapper .coution {
font-size: 0.65rem;
font-feature-settings : "palt" 1;
}
}

@media screen and (max-width: 800px) {
#FormWrapper th strong.required {
position: relative;
right: inherit;
top:-2px;
-webkit-transform:none;
transform:none;
margin-left: 5px;
}
#FormWrapper .coution {
display: block;
padding-top: 5px;
padding-left: 3px;
}
#FormWrapper th strong.required {
font-size: 0.7em;
position: absolute;
right: 5px;
top:50%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
}

@media screen and (max-width: 750px) {
.tableGrey th {
border-left: 5px solid #CCC;
margin-bottom: 1px;
}
.tableGrey th.hissu {
border-left: 5px solid #C1272D;
margin-bottom: 1px;
}
}

/* 送信ボタン全体 */
#SubmitBtn {
text-align: center;
padding-bottom: 40px;
clear: both;
}

/* 送信ボタン */
#SubmitBtn .submit {
background: #88bc05;
border: 0;
padding: 10px;
padding-left: 20px;
padding-right: 20px;
font-family: 'Roboto',  AppleSystem, 'ヒラギノ角ゴシック','Hiragino Sans', メイリオ, Meiryo, sans-serif;
font-size: 1em;
color: #FFF;
cursor: pointer;
border-radius: 3px;
box-shadow: 0 2px 0 rgba(136, 188, 5,0.3);
margin: 5px;
transition: all 0.3s ease;
-webkit-appearance:none;
}

#SubmitBtn .submit.disabled {
background: #CCC;
border: 0;
padding: 10px;
padding-left: 20px;
padding-right: 20px;
font-family: 'Roboto',  AppleSystem, 'ヒラギノ角ゴシック','Hiragino Sans', メイリオ, Meiryo, sans-serif;
font-size: 1em;
color: #FFF;
cursor: pointer;
border-radius: 3px;
box-shadow: 0 2px 0 rgba(0,0, 0,0.3);
margin: 5px;
transition: all 0.3s ease;
-webkit-appearance:none;
cursor: default;
}

/* リセットボタン */
#SubmitBtn .reset {
background: #999;
border: 0;
padding: 10px;
padding-left: 20px;
padding-right: 20px;
font-family: 'Roboto',  AppleSystem, 'ヒラギノ角ゴシック','Hiragino Sans', メイリオ, Meiryo, sans-serif;
font-size: 1em;
color: #FFF;
cursor: pointer;
border-radius: 3px;
box-shadow: 0 2px 0 rgba(0,0, 0,0.2);
margin: 5px;
transition: all 0.3s ease;
-webkit-appearance:none;
}

#SubmitBtn .submit:hover,
#SubmitBtn .reset:hover {
opacity: 0.7;
}

#SubmitBtn .submit.disabled:hover {
opacity: 1;
}

#FormWrapper p.recaptcha_txt {
text-align: center;
padding-bottom: 10px;
}

#recaptcha_wrapper {
max-width: 307px;
margin: auto;
padding-bottom: 20px;
}

/* 送信完了ページ */
.kakomiGrey {
margin-top: 20px;
margin-bottom: 20px;
}

.ERR {
color: red;
}

em.ERR {
display: block;
}

em.ERR i {
padding-left: 0.2rem;
padding-right: 0.2rem;
opacity: 0.7;
}

/* エラーセクション */
.err_section {
border: 2px solid red;
padding: 10px;
font-size: 0.9em;
line-height: 1.7;
border-radius: 3px;
margin-bottom: 20px;
}

.err_section p {
font-weight: 700;
}

/* 各種申し込みフォーム */
.entry_form_wrapper table {
width: 100%;
font-size: 0.9em;
line-height: 1.6;
}

@media screen and (max-width: 750px) {
.entry_form_wrapper {
overflow: auto;
white-space: nowrap;
}

#FormWrapper .entry_form_wrapper table {
width: 100%;
padding-bottom: 10px;
}
.entry_form_wrapper::-webkit-scrollbar{
height: 5px;
}
.entry_form_wrapper::-webkit-scrollbar-track{
background: #F1F1F1;
}
.entry_form_wrapper::-webkit-scrollbar-thumb {
background: #BCBCBC;
}
}

.entry_form_caption {
padding-top: 15px;
font-size: 0.8rem;
line-height: 1.7;
display: none;
}

@media screen and (max-width: 750px) {
.entry_form_caption {
display: block;
}
}

.entry_form_wrapper th {
background: #E3E3E3;
font-weight: 400;
padding: 10px;
max-width: 300px;
}

.entry_form_wrapper td {
background: #F1F1F1;
font-weight: 400;
padding: 10px;
text-align: center;
word-break: keep-all;
}

.entry_form_wrapper td a {
color: rgb(255, 255, 255);
cursor: pointer;
box-shadow: rgba(136, 188, 5, 0.3) 0px 2px 0px;
background: rgb(136, 188, 5);
padding: 10px;
border-radius: 3px;
display: block;
text-decoration: none;
}

.entry_form_wrapper td a.end {
color: rgb(255, 255, 255);
cursor: default;
box-shadow: rgba(0, 0, 0, 0.3) 0px 2px 0px;
background: #999;
padding: 10px;
border-radius: 3px;
display: block;
text-decoration: none;
}

.ContBox .entry_form_wrapper td a i.fa-chevron-circle-right {
padding-right: 5px;
color: rgb(255, 255, 255);
}

.entry_form_wrapper td .end_date {
color: #666;
text-decoration: line-through;
}

/*==================================
日程変更・座席寄附お申込みフォーム
==================================*/
.form_caption_header {
background: #F1F1F1;
border: 1px solid #CCC;
padding: 20px;
margin-bottom: 20px;
font-size: 0.85rem;
line-height: 1.7;
}

.form_caption_header.last {
margin-top: 20px;
}

.form_caption_header.last span {
display: block;
padding-bottom: 20px;
padding-left: 5px;
}

.form_caption_header.last span:last-child {
padding-bottom: 0;
}

#FormWrapper .form_caption_header h3 {
border: 0;
border-bottom: 1px solid #CCC;
font-weight: 700;
}

.form_caption_header ul {
list-style: disc outside;
margin-left: 1.4rem;
}

.form_caption_header li {
padding-top: 5px;
}


.grecaptcha-badge { visibility: hidden; }