/* ----------------------------------------------------------------

  Custom Properties

----------------------------------------------------------------- */
:root{
--key-color:#00428e;
}

/* ----------------------------------------------------------------
  Default
----------------------------------------------------------------- */
/* Base
----------------------------------------------- */
main {
display: block;
line-height: 1.55;
padding: 10px;
}

/* Link
----------------------------------------------- */

main a:visited,
[data-role='page'] a:visited {
}
main a:link,
main a:active,
main a:hover,
main a:focus,
[data-role='page'] a:link,
[data-role='page'] a:active,
[data-role='page'] a:hover,
[data-role='page'] a:focus {
}

/* form
----------------------------------------------- */
button,
input,
optgroup,
select,
textarea {
font: inherit;
margin: 0;
vertical-align: middle;
color: inherit;
}
input[type='text'],
input[type='url'],
input[type='email'],
input[type='password'],
textarea,
select {
font-size: 16px;
line-height: normal;
box-sizing: border-box;
width: 100%;
padding: 5px;
}
label {
margin: 0;
cursor: pointer;
}
label.disabled{
opacity: .5;
cursor: default;
}
input[type='text'] {
border: 1px solid #777;
border-radius: 5px;
}
button {
cursor: pointer;
}
input[type='checkbox']{
margin:0;
padding:0;
border:none;
width:20px;
height:20px;
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
display:inline-block;
vertical-align:baseline;
background:url(/element_sp/shared/images/icon/icon-form-checkbox.svg) 0 0 no-repeat;
background-size:100%;
vertical-align: middle;
}
input[type='checkbox']:checked{
background-image:url(/element_sp/shared/images/icon/icon-form-checkbox-on.svg);
}

input[type='radio']{
margin:0;
padding:0;
border:none;
width:15px;
height:15px;
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
display:inline-block;
vertical-align:baseline;
background:url(/element_sp/shared/images/icon/icon-form-radio.svg) 0 0 no-repeat;
background-size:100%;
}
input[type='radio']:checked{
background-image:url(/element_sp/shared/images/icon/icon-form-radio-on.svg);
}

/* .hdg-l1
----------------------------------------------- */
.hdg-l1{
margin:-10px -10px 0;
padding:8px 10px 5px;
color:#fff;
line-height:1.35;
background-color:#004c9a;
font-size:17px;
font-weight:bold;
text-align:center;
}

/* .hdg-l2
----------------------------------------------- */
.hdg-l2{
font-size: 15px;
}
.hdg-l2 a{
color:var(--cmn-font-color-link);
}
.hdg-sup {
display: block;
font-size: 12px;
margin: 4px 0 10px 0;
}
.sold-out .hdg-l2,
.sold-out .hdg-l2 a{
color:var(--cmn-font-color-base);
}

/* ----------------------------------------------------------------
  .search-result-header
----------------------------------------------------------------- */
/* .search-result-header
----------------------------------------------- */
.search-result-header{
margin: -11px -10px 0;
padding: 0 10px 10px;
border-top: 1px solid var(--key-color);
background: var(--key-color) url(/element_sp/shared/images/frame/bg.jpg) repeat 0 0;
background-size: 100% auto;
}
main .search-result-header .cmn-info{
margin:0 -8px;
padding-bottom:0;
}

/* .search-result-header-category
----------------------------------------------- */
.search-result-header .search-result-header-category{
margin: 12px 0 -4px;
color: #fff;
line-height: 1.35;
text-shadow: 0 1px 0 rgb(0 0 0 / 50%);
font-size: 14px;
}

/* .lead-header-inner
----------------------------------------------- */
.lead-header-inner{
padding: 8px 12px;
border-radius: 4px;
background-color: #fff;
font-size: 13px;
line-height: 1.35;
text-align: center;
margin-top:12px;
}
.lead-header-inner > b{
font-size: 15px;
display: block;
margin-bottom: 3px;
}

/* .tab-container
------------------------------------------------ */
/* .tab
----------------------------------------------- */
.tab-container{
}
.tab{
display: table;
width: 100%;
margin: 0;
border-top: 1px solid #bbb;
}
.tab > li{
display: table-cell;
width: 50%;
vertical-align: middle;
border-left: 1px solid #bbb;
border-bottom: 1px solid #bbb;
box-sizing: border-box;
background-color: #f5f5f5;
}
.tab > li:first-child{
border-left: none;
}
.tab > li.active{
background-color: #fff;
border-bottom: 1px solid #fff;
}
.tab > li > a{
display: block;
padding: 12px 0 11px;
text-align: center;
font-size: 14px;
color: #555;
}
.tab > li.active > a{
font-weight: bold;
color:var(--cmn-font-color-base);
}
.tab > li .num{
font-size: 12px;
}
.search-result .tab{
border-top: 0;
margin-bottom: 15px;
}

/* ----------------------------------------------------------------
  .search-result
----------------------------------------------------------------- */
/* .search-result
----------------------------------------------- */
.search-result{
margin:0 -10px;
}

/* ----------------------------------------------------------------
  .form-search-tbl
----------------------------------------------------------------- */
.form-search-tbl{
margin:0;
width:100%;
border-collapse:collapse;
font-size:14px;
line-height:1.25;
box-sizing: border-box;
overflow: hidden;
}
.form-search-tbl > li{
display: table;
width: 100%;
}
.form-search-tbl > li > div{
display: table-cell;
}
.form-search-tbl .search-desc{
padding-right:5px;
width:4.55em;
text-align:left;
font-size:12px;
}
.form-search-tbl .search-desc .form-searcn-tip-container,
.form-search-tbl .search-desc .form-search-tip-container{
padding-right:15px;
position:relative;
display:block;
}
.form-search-tbl .search-desc .form-searcn-tip-container .cmn-tip-btn,
.form-search-tbl .search-desc .form-search-tip-container .cmn-tip-btn{
position:absolute;
top:0;
right:0;
}
.form-search-tbl li:first-child .search-item{
padding:0;
}
.form-search-tbl li:first-child .search-item .form-search-list{
margin: 10px;
}
.form-search-tbl li.date:first-child .search-item{
padding-bottom:10px;
}
.form-search-tbl li:first-child .search-desc.align-top{
padding-top:13px;
}
.form-search-tbl li.date .search-desc{
padding-top:21px;
vertical-align:top;
}
.form-search-tbl li.num .search-desc{
padding-top:38px;
vertical-align:top;
}
.form-search-tbl .keyword .search-desc{
padding-top:13px;
vertical-align:top;
}
.form-search-tbl li:last-child .search-item input[type='checkbox']{
margin-right: 3px;
}
.form-search-tbl li:last-child .search-item {
padding-left: 10px;
}

/* .form-search-box > .form-search-tbl
----------------------------------------------- */
.form-search-box,
.detail-tbl-box {
background: #fff;
border-top:1px solid #e5e5e5;
margin-bottom: 20px;
}
.detail-tbl-box + .cmn-sns-list{
margin-top: -1px;
}
.detail-plan-header > .form-search-box{
margin-top:-5px;
}
.form-search-tbl > li > div{
border-bottom:1px solid #e5e5e5;
}
.form-search-tbl > li > div:first-child{
padding:10px;
vertical-align: middle;
font-weight: bold;
}
.form-search-tbl td{
padding: 0;
}
.form-search-tbl td ul{
margin: 10px;
}
.form-search-tbl .spot td ul.link-list{
margin: 0;
padding: 8px 0 0 0;
}
.form-search-tbl .spot td .select-box{
margin: 0 10px 10px 10px;
}
.form-search-tbl td .form-search-col{
margin:10px;
}
.form-search-tbl .search-desc{
width:5em;
background-color:#f5f5f5;
}
.hdg-l2-05 + .form-search-tbl .search-desc{
width: 4.5em;
}
.form-search-tbl td{
position:relative;
}
.form-search-tbl td img.no-images{
width: 75px;
height: 20px;
}

/* .form-custom-select
----------------------------------------------- */
.form-custom-select{
border:1px solid #999;
display:block;
min-height:38px;
padding:0;
box-sizing:border-box;
border-radius:4px;
background-color:#fff;
position:relative;
}
.form-custom-select:before{
margin-top:-3px;
content:'';
display:block;
width:0;
height:0;
position:absolute;
top:50%;
right:7px;
display:block;
border-width:7px 6px 0 6px;
border-color:#888 transparent transparent transparent;
border-style:solid;
}
.form-custom-select select{
padding:5px 20px 5px 7px;
border:none;
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
box-sizing:border-box;
background-color:transparent;
font-size:16px;
color:var(--cmn-font-color-base);
}
.form-custom-select select.is-unselected{
opacity: .5
}
.form-custom-select.is-disabled{
border-color:#d1d1d1;
}
.form-custom-select.is-disabled select{
color:#999;
}

/* .search-result-num
----------------------------------------------- */
.search-result .search-result-num{
padding:5px 10px;
color:#fff;
line-height:1.25;
background-color:#666;
font-size:12px;
}
.search-result .search-result-num .num{
font-family:Arial;
}
.search-result .search-result-num > b{
font-size:14px;
font-weight:normal;
}

/* .search-result-sort
----------------------------------------------- */
.search-result .search-result-sort{
padding:12px 10px;
}
.search-result .search-result-sort .form-custom-select{
margin:0;
-webkit-box-flex:1;
-webkit-flex:1;
-ms-flex:1;
flex:1;
}
.search-result .search-result-sort .search-result-sort-btn{
margin-left:7px;
border:1px solid #bbb;
border-radius:4px;
width:85px;
background-color:#fff;
font-size:14px;
}
.search-result .search-result-sort .search-result-sort-btn.disabled{
opacity: .5;
cursor: default;
}

/* .search-result-item
----------------------------------------------- */
.search-result .search-result-item{
border-top:6px solid #666;
padding:15px 10px 0;
line-height:1.35;
position:relative;
}
.search-result-item.sold-out .search-result-item-box{
opacity: .5;
}
.search-result-item.sold-out .ic-sold-out{
background: url(/element_sp/final/shared/images/ic-soldout.png) no-repeat;
background-size: 160px 50px;
display: block;
width: 160px;
height: 50px;
top: 50%;
left: 50%;
margin-top: -25px;
margin-left: -80px;
position: absolute;
text-indent: -9999px;
z-index: 3;
}

/* .search-result-item detail-tbl
----------------------------------------------- */
.search-result-item .form-search-tbl > li > div:first-child{
font-weight: normal;
}
.search-result-item .form-search-tbl li .search-item{
padding: 10px;
font-size: 12px;
}
.search-result-item .form-search-tbl li .search-item img{
max-height:20px;
}

/* .label-status
----------------------------------------------- */
.label-status {
margin: 0 0 10px 0;
}
.label-status li{
display: inline-block;
min-width: 82px;
text-align: center;
font-size: 11px;
color: #fff;
font-weight: bold;
background: #666;
height: 18px;
line-height: 18px;
}
.label-status li:last-child{
margin-left: 5px;
background: #e1f3f8;
border: 1px solid #b1e2f0;
color: #555;
}
.sold-out .label-status li:last-child{
margin-left: 5px;
background: #fff;
border: 1px solid #ccc;
color: #555;
}

/* .detail-tbl-box
----------------------------------------------- */
.detail-tbl-box{
margin: 0 -10px;
}
.detail-tbl-box .plan-price{
color: #e30707;
display: block;
}
.sold-out .detail-tbl-box .plan-price{
color:var(--cmn-font-color-base);
}
.detail-tbl-box .plan-price b{
font-size: 22px;
font-family: arial;
padding-right: 3px;
}
.plan-toggle-hook{
display: inline-block;
margin: 5px 0 0;
color: #a4a4a4;
line-height: 12px;
background-size: 12px;
}
.plan-toggle-hook:before{
margin-right: 5px;
content: '...';
color:var(--cmn-font-color-base);
display: inline-block;
vertical-align: bottom;
}
.toggle-more.is-active .plan-toggle-hook {
background: url(/element_sp/shared/images/icon/icon-toggle-minus.svg) no-repeat;
color:var(--cmn-font-color-base);
padding: 0 0 0 17px;
float: right;
opacity: .6;
}
.toggle-more.is-active .plan-toggle-hook:before{
display: none;
}
.toggle-more .toggle-more-container span{
display: none;
}
.toggle-more.is-active .toggle-more-container span{
display: inline;
}
.toggle-more .toggle-more-container{
display: inline;
}
.toggle-more.is-active .toggle-more-container{
display: block;
}

/* .sns-list
----------------------------------------------- */
.sns-list{
text-align: right;
margin: 10px 0 15px;
}
.sold-out .sns-list{
display: none;
}
.sns-list li{
display: inline-block;
max-width: 70px;
max-height: 20px;
line-height: 1;
margin-left: 8px;
vertical-align: top;
}
.sns-list li img{
width: 100%;
height: 100%;
}

.search-result .cmn-ad-bnr {
margin: 0;
padding: 15px 10px;
border-top: 6px solid #666;
background-color: #f5f5f5;
}

/* .product-introduce
----------------------------------------------- */
.product-introduce{
background: #e6e6e6;
text-align: center;
font-weight: bold;
font-size: 14px;
padding: 10px 0;
line-height: 1.1;
margin: -15px -10px 15px -10px;
}
.product-introduce-error{
padding: 25px 0;
text-align: center;
color:var(--cmn-font-color-red);
font-weight: bold;
font-size: 14px;
margin: -15px -10px 0 -10px;
}
.product-introduce-other{
background: #666666;
color: #fff;
text-align: left;
font-weight: bold;
font-size: 14px;
padding:4px 10px 10px;
line-height: 1.1;
margin: -15px -10px 15px -10px;
}

/* ----------------------------------------------------------------
  loading
----------------------------------------------------------------- */
@-webkit-keyframes loading{
0%{
-webkit-transform:rotate(0deg);
transform:rotate(0deg);
}
100%{
-webkit-transform:rotate(360deg);
transform:rotate(360deg);
}
}
@keyframes loading{
0%{
-webkit-transform:rotate(0deg);
transform:rotate(0deg);
}
100%{
-webkit-transform:rotate(360deg);
transform:rotate(360deg);
}
}
.loading{
margin:20px auto 40px;
color:transparent;
width:40px;
height:40px;
overflow:hidden;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none;
background:url(/element_sp/shared/images/icon/icon-loading.svg) 0 0 no-repeat;
background-size:100%;
text-align:center;
-webkit-animation:1s linear 0s infinite loading;
animation:1s linear 0s infinite loading;
-webkit-backface-visibility:hidden;
backface-visibility:hidden;
}
.agt-link-loading .loading{
margin:0 auto 20px;
width: 25px;
height: 25px;
}

/* ----------------------------------------------------------------
  Error
----------------------------------------------------------------- */
/* .error
----------------------------------------------- */
.error{
margin:30px 0 ;
padding:0 10px;
text-align: center;
}
.error .error-catch{
margin:10px 0;
}
.error .error-catch strong{
color:#e30707;
}
.error p{
margin:0;
}
.error .btn {
margin: 20px auto 0;
padding: 8px 10px;
border: 1px solid #bbb;
border-radius: 5px;
color: #555;
display: table;
min-width: 55%;
text-align: center;
font-weight: bold;
font-size: 13px;
background-color: #fff;
}

/* ----------------------------------------------------------------
  .agt-link
----------------------------------------------------------------- */
/* .agt-link
----------------------------------------------- */
.agt-link{
margin:10px 0;
color:#333;
text-align:center;
font-size:13px;
}

/* .agt-link-catch
----------------------------------------------- */
.agt-link .agt-link-catch{
margin:10px 0 20px;
}
.agt-link .agt-link-catch > b{
margin-bottom:2px;
display:block;
font-size:15px;
}
.agt-link .agt-link-catch .agt-link-logo img{
max-width: 100px;
}
.agt-link .agt-link-loading .agt-hotel-info{
margin-bottom: 14px;
text-align: left;
}
/* .agt-link-catch-arrow
----------------------------------------------- */
.agt-link .agt-link-catch-arrow{
margin-top:10px;
}
.agt-link .agt-link-catch-arrow:before{
content:'';
display:inline-block;
width:50px;
height:40px;
background:url(/element_sp/shared/images/icon/icon-velko.svg) 50% 50% no-repeat;
background-size:100% auto;
vertical-align:middle;
}
.agt-link .agt-link-catch-arrow > span{
margin-left:60px;
display:inline-block;
width:90px;
height:35px;
position:relative;
vertical-align:middle;
}
.agt-link .agt-link-catch-arrow > span:before,
.agt-link .agt-link-catch-arrow > span:after{
content:'';
display:block;
position:absolute;
bottom:50%;
-webkit-transform:translateY(50%);
transform:translateY(50%);
}
.agt-link .agt-link-catch-arrow > span:before{
width:18px;
height:8px;
left:-35px;
background-color:#333;
}
.agt-link .agt-link-catch-arrow > span:after{
left:-20px;
width:0;
height:0;
border-width:10px 0 10px 10px;
border-color:transparent transparent transparent #333;
border-style:solid;
}
.agt-link .agt-link-catch-arrow > span img{
position:absolute;
bottom:50%;
right:50%;
-webkit-transform:translate(50%, 50%);
transform:translate(50%, 50%);
max-height:100%;
max-width:90%;
}

/* .agt-link-loading
----------------------------------------------- */
.agt-link .agt-link-loading{
margin-top:20px;
position:relative;
}
.agt-link .agt-link-loading > p{
margin:0;
}
.agt-link .agt-link-loading > p > span{
display:block;
}

/* .notice-box
----------------------------------------------- */

.notice-box{
background: #fff5f5;
padding: 10px;
margin-bottom: 20px;
}
.notice-info > b{
text-align: center;
font-size: 13px;
color: #e30707;
display: block;
margin-bottom: 5px;
}
.notice-info{
font-size: 13px;
text-align: left;
}
.notice-info > span{
color: #e30707;
}

/* .area-list
----------------------------------------------- */
.form-search-tbl .search-item ul.area-list{
display: block;
width: 100%;
border-bottom: 1px solid #e5e5e5;
padding-left: 10px;
box-sizing: border-box;
margin: 0;
font-size: 0;
}
.form-search-tbl .search-item ul.area-list:last-child{
border: 0;
}
.form-search-tbl .search-item ul.area-list li{
display: inline-block;
width: 33.3%;
vertical-align: middle;
position: relative;
padding: 10px 10px 10px 23px;
box-sizing: border-box;
font-size: 14px;
}
.form-search-tbl .search-item ul.area-list li input[type='checkbox']{
position: absolute;
top: 50%;
left: 0;
margin-top: -10px;
}

/* .related-box-02
----------------------------------------------- */
.related-box-02 {
margin: 40px 0 0 0;
}
.hdg-l2-06 {
margin: 0 -10px;
padding: 7px 10px;
color:var(--cmn-font-color-base);
font-size: 14px;
font-weight: bold;
background-color: #e5e5e5;
}
/* .list-01
----------------------------------------------- */
.list-01{
margin:0 -10px;
}
.list-01.branch-font li a{
font-size:14px;
}
.list-01.branch-border > li:last-child{
border-bottom:none;
}
.list-01 > li{
border-bottom:1px solid #e5e5e5;
}
.list-01 > li a{
position:relative;
display:block;
padding:10px 25px 10px 10px;
background-color:#fff;
font-size:13px;
color:#333;
line-height:1.4;
min-height:40px;
box-sizing:border-box;
}
.list-01 > li a:after{
content:"";
position:absolute;
top:50%;
right:10px;
margin-top:-5px;
height:8px;
width:8px;
display:block;
border:1px solid #bfbfbf;
border-left-width:0;
border-bottom-width:0;
-webkit-transform:rotate(45deg);
transform:rotate(45deg);
}
.list-01 > li a.toggle-hook:after{
display: none;
}
.list-01 .toggle > .toggle-hook{
margin:-1px 0 0 0;
}
.list-01 a + .list-01{
border-top:1px solid #e9e9e9;
}
.list-01 .list-01{
margin:0;
}
.list-01 .list-01 li{
padding-left:15px;
}
.list-01 .list-01 li:last-child{
border-bottom:none;
}
.list-01 .list-01 .list-01 li{
padding-left:30px;
}

/* .cmn-notice-list
----------------------------------------------- */
.str-container .cmn-notice-list{
margin-bottom:14px;
}

/* ----------------------------------------------------------------
  Notfound
----------------------------------------------------------------- */
/* .error-item
----------------------------------------------- */
.error-item{
text-align:left;
padding: 20px 0;
}
.error-item .hdg-notfound{
font-size:16px;
font-weight:normal;
}
.error-align-c{
text-align:center;
}
.error-item strong{
color:#e93939;
font-weight:normal;
}
.error-item p:not([class]){
font-size:14px;
}
.error-item .txt-notfound{
font-size:12px;
}
.error-item .btn {
margin: 20px auto 0;
padding: 8px 10px;
border: 1px solid #bbb;
border-radius: 5px;
color: var(--cmn-font-color-base);
display: table;
min-width: 55%;
text-align: center;
font-size: 14px;
background-color: #fff;
}