@charset "utf-8";

/*PCSP共通設定*/
article {background-color:#fff;background: url(../images/bg.jpg) repeat;}

#toppage_colophon.colophon ul#toppage_colophon_ul.fx.fx_just.fx_row_2 li:nth-of-type(1),
#toppage_colophon.colophon ul#toppage_colophon_ul.fx.fx_just.fx_row_2 li:nth-of-type(2){ display: none;}


/*title*/
.fv_contents {
position: absolute;
width: 500px;
height: auto;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

img {max-width: 100%;}

.plan_item .plan_head .summary h4 {color: #fff;} 
.plan_item .plan_head .summary h4 span {color: #000;} 
.plan_item .plan_head .summary h4.naha::before {background-color: #EC407A;}
.plan_item .plan_head .summary h4.nanjo::before {background-color: #9C27B0;}
.plan_item .plan_head .summary h4.onna::before {background-color: #2196F3;}
.plan_item .plan_head .summary h4.yomitani::before {background-color: #4CAF50;}
.plan_item .plan_head .summary h4.higashi::before {background-color: #009688;}
.plan_item .plan_head .summary h4.miyako::before {background-color: #FF9800;}
.plan_item .plan_head .summary h4.ishigaki::before {background-color: #FF5722;}
.plan_item .plan_head .summary h4.kume::before {background-color: #BD5C58;}

.space_b{
	display: block;
	margin-bottom: 20px;}

/*759px以下*/
@media screen and (max-width: 759.9px) {
#wrapper {line-height: 1.4;}
.spnone{display:none;}

/* CSS */
#dirPathBlock,
#anchorLinkBlock {
font-size: 10px;
margin: 1% 1% 0 1%;
}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
h1 {
font-size: 12px;
margin: 0 1%;
}

.inner{
width: 96%;
margin: 0 2%;
box-sizing: border-box;
}


/*title*/
#fv {
background: url(../images/mv_sp.jpg) no-repeat center;
background-size: cover;
text-align: center;
height: 133vw;
width: 100%;
position: relative;
}

.fv_contents {
width: 80%;
height: auto;
}
}

/*760px以上*/
@media screen and (min-width: 760px) {
/* CSS */
#wrapper {line-height: 1.231;}
#dirPathBlock,
h1,
.iframe_end-content_gadget,
#anchorLinkBlock{
width: 100%;
max-width:950px;
min-width:760px;
margin: auto;
}

.pcnone{display:none;}

/*panlist&back*/
#dirPathBlock,
#anchorLinkBlock {
width: 100%;
margin: 0 auto;
display: block;
font-size: 12px;
}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
h1 {
font-size: 14px;
width: auto;
max-width: 950px;
margin: 0 auto 5px;
}

.inner{
width: 96%;
max-width:950px;
margin: 0 auto;
display: block;
}

/*title*/
#fv {
background: url(../images/mv.jpg) no-repeat center;
background-size: cover;
text-align: center;
height: 660px;
width: 100%;
position: relative;
}	
}

/* ===== GENERAL ===== */
.okinawa_optional {}
.okinawa_optional figure {
margin:0;
padding:0;
}

/* ===== FLEX ===== */
.fx {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
}
.fx_just {justify-content: space-between;}
.fx_center {justify-content: center;}

.fx_row_2 > *, .fx_row_3 > *, .fx_row_4 > * {width: 100%;}

/*760px以上*/
@media screen and (min-width: 760px),print {
.fx_row_2 > * {width: 48%;}
.fx_row_3 > * {width: 31.33%;}
.fx_row_4 > * {width: 23%;}
}


/* ===== TITLE ===== */
.headline {
color:#029ee4;
font-size:40px;
font-weight: 700;
margin-bottom: 24px;
text-align: center;
}
.headline > span {
display: block;
font-family: 'Oswald', sans-serif;
font-size:18px;
}

/*760px以上*/
@media screen and (min-width: 760px),print {
.headline {
font-size:56px;
margin-bottom: 40px;
}
.headline > span {font-size:24px;}
}


/* ===== TOP ===== */
.attention {margin: 40px auto;}
.attention p a {
background-color: #fff;
border-radius:8px;
box-shadow:0 3px #7d6953;
color:#333;
display: block;
font-size:16px;
font-weight: 700;
line-height: 1.6;
padding: .5em;
text-align: center;
-webkit-border-radius:8px;
-ms-border-radius:8px;
transition: .3s all;
-webkit-transition: .3s all;
-ms-transition: .3s all;
}
.attention p a:hover {
background-color: #7d6953;
box-shadow:0 0 #7d6953;
color:#fff;
opacity: 1;
}
.attention p a > em {
color:#ef6e6e;
display: block;
}

.attention .go_info a {
box-shadow:0 3px #009944;
color:#009944;
margin-top: 1em;
padding: 1em .5em;
}
.attention .go_info a:hover {
background-color: #009944;
}

.pre_reserve img {
height: auto;
margin-right: 3px;
vertical-align: middle;
width: 80px;
}
.sakidori img {
height: auto;
margin: 4px 0 8px;
vertical-align: middle;
width: 111px;
}
.sakidori + .sakidori {margin-left:8px}

.top_plan {margin:48px auto;}
.top_plan li {
background-color: #000;
line-height: 0;
position: relative;
}
.top_plan li:not(:last-child) {margin-bottom: 24px;}
.top_plan li a {
display: block;
transition: .3s;
-webkit-transition: .3s;
-ms-transition: .3s;
}
.top_plan li .summary {
color:#fff;
line-height: 1.8;
text-align: center;
width: 100%;
position: absolute;
top:50%;
left:50%;
transform: translate(-50%,-50%);
z-index: 2;
-webkit-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
}
.top_plan li .summary h3 {
font-size:32px;
font-weight: 700;
text-shadow: 1px 1px 4px #000,-1px -1px 4px #000;
}
.top_plan li .summary p {
color:#999;
display: block;
font-family: 'Oswald', sans-serif;
font-size:20px;
letter-spacing: .25em;
}
.top_plan li a .summary p {
background-color: #029ee4;
border-radius:20px;
color:#fff;
letter-spacing: 0;
line-height: 40px;
margin: 0 auto;
width:10em;
-webkit-border-radius:20px;
-ms-border-radius:20px;
transition: .3s;
-webkit-transition: .3s;
-ms-transition: .3s;
}
.top_plan li a:hover .summary p {
background-color: #ceff00;
color:#000;
}

.top_plan li img {
opacity: .2;
transition: .3s;
-webkit-transition: .3s;
-ms-transition: .3s;
}
.top_plan li a img {opacity: .8;}
.top_plan li a:hover,
.top_plan li a:hover img {opacity: 1;}

/*760px以上*/
@media screen and (min-width: 760px),print {
.attention {margin: 80px auto;}
.attention p a {
border-radius:16px;
font-size:20px;
}

.top_plan {margin:80px auto;}
.top_plan li:not(:last-child) {margin-bottom: 40px;}
.top_plan li .summary h3 {font-size:48px;}
}


/* ===== LEV.2 ===== */
.plan_select {margin-bottom:40px;}
.plan_select .anchor{
background-color: #fff;
box-shadow: 2px 2px 6px #666;
padding: 16px 8px;
}
.plan_select .anchor .fx {align-items: center;}
.plan_select .anchor li {
align-self: stretch;
box-sizing: border-box;
text-align: center;
width: 50%;
position: relative;
}
.plan_select .anchor li:nth-child(3),
.plan_select .anchor li:nth-child(4) {
border-top:1px solid #000;
margin-top: 8px;
padding-top: 8px;
}
.plan_select .anchor li:nth-child(1)::after,
.plan_select .anchor li:nth-child(3)::after {
border-right:1px solid #000;
content:'';
height:3.2em;
width:1px;
position: absolute;
right:-5%;
top:0;
}
.plan_select .anchor li:nth-child(3)::after {height:2em;}
.plan_select .anchor li a {
display: block;
color: #000;
font-size:16px;
font-weight: 700;
}
.plan_select .anchor li a span {
display: block;
font-size:12px;
font-weight: 300;
}
.plan_select .anchor li a:hover {color:#029ee4;}

.plan_body {margin-bottom:48px;}

.plan_body .cat_label {
background-color: #029ee4;
border-radius: 8px;
color:#fff;
display: block;
font-size:20px;
font-weight:700;
margin:0 auto 32px;
padding: 8px;
text-align: center;
width: 10em;
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
-ms-border-radius: 8px;
-o-border-radius: 8px;
}
.plan_body .cat_label > span {
display: block;
font-size:14px;
}

.plan_item {
background-color: #fff;
box-shadow: 2px 2px 6px #666;
margin-bottom: 24px;
padding: 16px;
position: relative;
}

.plan_item .plan_head {
margin-bottom: 24px;
padding-bottom: 60px;
}
.plan_item .plan_head figure {margin-bottom:16px;}
.plan_item .plan_head .summary {}
.plan_item .plan_head .summary h4 {
font-size:18px;
font-weight: 700;
margin-bottom: 24px;
position: relative;
}
.plan_item .plan_head .summary h4::before {
background-color: #ceff00;
border-radius: 14px;
content:attr(title);
display: block;
font-size:14px;
margin-bottom: 8px;
padding: 5px 0;
text-align: center;
width: 6em;
-webkit-border-radius: 14px;
-ms-border-radius: 14px;
-moz-border-radius: 14px;
-o-border-radius: 14px;
}
.plan_item .plan_head .summary h4.extend::before {width:14em;}

.plan_item .plan_head .summary h4.naha2::before {
background-color: #EC407A;
border-radius: 14px;
content:attr(title);
display: block;
font-size:14px;
margin-bottom: 8px;
padding: 5px 10px;
text-align: center;
width: 10em;
-webkit-border-radius: 14px;
-ms-border-radius: 14px;
-moz-border-radius: 14px;
-o-border-radius: 14px;
}

.plan_item .plan_head .summary h4.no_caption {margin-top:1.5em; color: #000;}
.plan_item .plan_head .summary h4.no_caption::before {display: none;}

.plan_item .plan_head .summary h4 .tx_sm {
font-size:77%;
font-weight: normal;
}

.plan_item .plan_head .summary .tx_lead {
font-size:16px;
line-height: 1.6;
}

.plan_item .detail_open {
background-color: #ceff00;
cursor: pointer;
font-size:16px;
font-weight: 700;
line-height: 40px;
text-align: center;
width: 100%;
position: absolute;
bottom:0;
left:0;
}
.plan_item .detail_open::after {content:'詳しく見る'}
.plan_item .detail_open.is-active::after {content:'閉じる'}

.plan_item .detail_open span {
position: relative;
top:6px
}
.plan_item .detail_open.is-active span {
transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
}

.plan_item__inner {display: none;}
.plan_item__inner.is-active {
display: block;
margin-top: -56px;
padding-bottom: 48px;
}
.plan_item__inner dl {
display: inline-flex;
flex-wrap: wrap;
font-size:14px;
}
.plan_item__inner dt {
box-sizing: border-box;
margin-bottom: 4px;
padding-left:1em;
width: 100%;
position: relative;
}
.plan_item__inner dt > span {
font-feature-settings: 'palt';
font-size:12px;
-webkit-font-feature-settings: 'palt';
-moz-font-feature-settings: 'palt';
}
.plan_item__inner dt::before {
color:#ceff00;
content:'●';
font-size:14px;
position: absolute;
left:0;
top:0;
}
.plan_item__inner dd {
border-bottom:1px solid #ddd;
margin-bottom: 8px;
padding-bottom: 8px;
width: 100%;
}
.plan_item__inner dt:nth-last-child(2),
.plan_item__inner dd:last-child {border:none;}
.plan_item__inner dd > em {
color:#e72a35;
font-size:118%;
font-weight: 700;
}
.plan_item__inner dd > strong {
color: #009944;
display: block;
font-weight: 700;
margin-top: 8px;
}


.plan_item__inner .for_store {
border-top:4px solid #ddd;
font-size:14px;
padding-top: 16px;
}
.plan_item__inner .for_store h5 {
font-weight: 700;
margin-bottom: 16px;
}
.plan_item__inner .for_store h5 > span {margin-left: 8px;}
.plan_item__inner .for_store p {line-height: 1.6;}
.plan_item__inner .for_store p + p {margin-top:8px;}

/*760px以上*/
@media screen and (min-width: 760px),print {
.plan_select {margin-bottom:64px;}
.plan_select .anchor{padding: 24px;}
.plan_select .anchor li {
align-self: center;
flex:1;
}
.plan_select .anchor li:nth-child(3),
.plan_select .anchor li:nth-child(4) {
border-top:none;
margin-top: 0;
padding-top: 0;
}
.plan_select .anchor li:nth-child(1)::after,
.plan_select .anchor li:nth-child(3)::after {display: none;}
.plan_select .anchor li:not(:last-child) {border-right:1px solid #666;}
.plan_select .anchor li a {font-size:20px;}
.plan_select .anchor li a span {font-size:15px;}

.plan_body {margin-bottom:80px;}

.plan_body .cat_label {
font-size:32px;
margin:0 auto 40px;
}
.plan_body .cat_label > span {font-size:18px;}

.plan_item .plan_head {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
flex-direction: row-reverse;
padding-bottom: 1em;
}

.plan_item .plan_head figure {width:37.11%;}
.plan_item .plan_head .summary {width:62%;}
.plan_item .plan_head .summary h4 {font-size:24px;}
.plan_item .plan_head .summary h4::before {
background-color: #ceff00;font-size:16px;}
.plan_item .plan_head .summary .tx_lead {font-size:18px;}

.plan_item__inner.is-active {margin-top: 0px;}

.plan_item__inner dt > span {
display: block;
font-size:13px;
}
.plan_item__inner dl {font-size:16px;}
.plan_item__inner dt {
border-bottom:1px solid #ddd;
margin-bottom: 8px;
padding:0 0 8px 1em;
width:8em;
}
.plan_item__inner dt::before {
font-size:.75em;
left:0;
top:.2em;
}
.plan_item__inner dd {width:calc(100% - 8em);}

.plan_item__inner .for_store {font-size:16px;}
}


/* ===== ページリンク ===== */
.l_nav li {
background-color: #000;
line-height: 0;
position: relative;
}
.l_nav li:not(:last-child) {margin-bottom: 24px;}
.l_nav li a {
display: block;
transition: .3s;
-webkit-transition: .3s;
-ms-transition: .3s;
}
.l_nav li .summary {
color:#fff;
line-height: 1.8;
text-align: center;
width: 100%;
position: absolute;
top:50%;
left:50%;
transform: translate(-50%,-50%);
z-index: 2;
-webkit-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
}
.l_nav li .summary h3 {
font-size:32px;
font-weight: 700;
text-shadow: 1px 1px 4px #000,-1px -1px 4px #000;
}
.l_nav li .summary p {
color:#999;
display: block;
font-family: 'Oswald', sans-serif;
font-size:20px;
letter-spacing: .25em;
}
.l_nav li a .summary p {
background-color: #029ee4;
border-radius:20px;
color:#fff;
letter-spacing: 0;
line-height: 40px;
margin: 0 auto;
width:10em;
-webkit-border-radius:20px;
-ms-border-radius:20px;
transition: .3s;
-webkit-transition: .3s;
-ms-transition: .3s;
}
.l_nav li a:hover .summary p {
background-color: #ceff00;
color:#000;
}

.l_nav li img {
opacity: .2;
transition: .3s;
-webkit-transition: .3s;
-ms-transition: .3s;
}
.l_nav li a img {opacity: .8;}
.l_nav li a:hover,
.l_nav li a:hover img {opacity: 1;}


/*760px以上*/
@media screen and (min-width: 760px),print {
.l_nav li:not(:last-child) {margin-bottom: 40px;}
.l_nav li .summary h3 {font-size:48px;}
}



/* ===== クーポン等 ===== */
.colophon {margin:48px auto 0;}
.colophon_bnr {
background-color: #fff;
padding:40px 0 8px;
}
.colophon_pamph {
/*background-color: #029ee4;*/
background-color: #fff;
/*box-shadow: 0 4px 6px #999;*/
padding: 40px 0;
}

.colophon hr {
background: none;
border:none;
display: block;
height: 16px;
}

.colophon .subhead {
border-left:8px solid #ef6e6e;
font-size:24px;
line-height: 1.6;
margin-bottom: 16px;
padding-left: 16px;
}

.colophon li {margin-bottom: 16px;}

.colophon .fx_row_2 > * {width:48%;}
/*.colophon .fx_row_2 .full {width:100%;}*/

.colophon_pamph p {
position: relative;
overflow: hidden;
}

.shining::after {
content: '';
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: -150%;
background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
transform: skewX(-25deg);
-webkit-transform: skewX(-25deg);
-moz-transform: skewX(-25deg);
-ms-transform: skewX(-25deg);
-o-transform: skewX(-25deg);
animation: 6s linear shine-loop infinite;
-webkit-animation: 6s linear shine-loop infinite;
}
@keyframes shine-loop {
0% {
left:-150%;
}
10% {
left:100%;
}
20% {
left:200%;
}
100% {
left:200%;
}
}

.digpan_list{
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 20px;
}
.digpan_list li{
padding: 0;
width: calc(50% - 20px);
line-height: 1.3;
background: #fff;
text-align: center;
}
.digpan_list li img{
width:min(100% , 200px);
height: auto;
box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.2);
}
.digpan_list li p{
font-weight: 600;
padding: 10px 0;
text-align: center;
}

.digpan_bt a{
position: relative;
display: flex;
justify-content: space-around;
align-items: center;
margin: 20px auto;
padding: 15px 20px;
border-radius: 6px;
background: #df062f;
font-size: 1.1em;
font-weight: 600;
color: #fff;
width:80%;
}
.digpan_bt a::after {
content: '';
width: 5px;
height: 5px;
border-top: 3px solid #fff;
border-right: 3px solid #fff;
transform: rotate(45deg) translateY(-48%);
position: absolute;
top: 48%;
right: 20px;
}

/*760px以上*/
@media screen and (min-width: 760px),print {
.digpan_list{
display: flex;
flex-wrap: wrap;
justify-content: center;
gap:min(3%, 42px);
}
.digpan_list li{
padding: 0;
width:calc(80% / 4);
line-height: 1.5;
background: #fff;
}
.digpan_list li img{
width: 100%;
height: auto;
box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.2);
}
.digpan_list li:hover{
transform: translate3d(0.1rem, 0.1rem, 0);
transition: all 0.2s;
}
.digpan_list li p{
font-weight: 600;
padding: 15px 0;
text-align: center;
}

.digpan_bt a{
position: relative;
display: flex;
justify-content: space-around;
align-items: center;
margin: 20px auto;
padding: 20px 25px;
border-radius: 6px;
background: #df062f;
font-size: 18px;
font-weight: 600;
color: #fff;
width:60%;
}
.digpan_bt a::after {
content: '';
width: 8px;
height: 8px;
border-top: 3px solid #fff;
border-right: 3px solid #fff;
transform: rotate(45deg) translateY(-48%);
position: absolute;
top: 48%;
right: 20px;
}
.digpan_bt a:hover{
transform: translate3d(0.1rem, 0.1rem, 0);
transition: all 0.2s;
}
}


/*760px以上*/
@media screen and (min-width: 760px),print {
.colophon {margin:64px auto 0;}
.colophon_bnr {padding: 64px 0 8px;}
.colophon_pamph {padding: 64px 0;}

.colophon hr {height: 40px;}

.colophon .subhead {
font-size:40px;
margin-bottom: 24px;
}

.colophon li {margin-bottom: 24px;}
}


/* ===== 共通のご案内 ===== */
.inner_information {
background-color: #fff;
margin-bottom: 3em;
padding-bottom: .1em;
}

.common_information .headline,
.optional_faq .headline {color:#e48c00}

.inner_information h3 {
background-color: #e48c00;
color:#fff;
font-size:16px;
font-weight: 700;
line-height: 1.8;
padding: 1em;
text-align: center;
}
.inner_information h3 > span {
display: block;
font-size:12px;
font-weight: 300;
}
.inner_information.for_store h3 {
background-color: #7d6953;
}

.inner_information .tx_lg {
font-size:16px;
font-weight: 700;
margin: 2em 0;
text-align: center;
}

.common_information dt,
.common_information dd,
.common_information li {font-size:12px;}

.common_information dl.schedule {
font-size:14px;
text-align: left;
margin: 40px !important;
}
.common_information dl.schedule dt {
font-weight: bold;
margin-bottom: 10px;
}
.common_information dl.schedule dd table {
width: 100%;
overflow: hidden;
margin-bottom: -20px;
border: 1px solid #5a5757;
border-collapse: collapse;
border-spacing: 0;
}
.common_information dl.schedule dd table th {
width: 3em;
padding: 30px;
border-right: 1px solid #5a5757;
}
.common_information dl.schedule dd table td {
text-align: center;
padding-left: 10px;
}
.common_information dl.schedule dd table .td_bg {
color: #fff;
padding: 22px 0;
background: #D13E3E;
border-top: 1px solid #5a5757;
}
.common_information ul.infoList {
text-align: left;
margin: 40px 40px 20px 40px !important;
}
.common_information ul.infoList li {
position: relative;
margin-bottom: 10px;
padding-left: 14px;
}
.common_information ul.infoList .att,
.common_information dl.infoAbout .att {color: #e72a35;}

.common_information ul.infoList .att2,
.common_information dl.infoAbout .att2 {color: #009944;}

.common_information ul.infoList li::before {
color: #5a5757;
content: "●";
font-size: 1em;
position: absolute;
top: 0;
left: 0;
}
.common_information ul.infoList li.att::before {
color: #e72a35;
content: "●";
font-size: 1em;
position: absolute;
top: 0;
left: 0;
}
.common_information dl.infoAbout {
text-align: left;
margin: 20px 40px 40px 40px;
}
.common_information dl.infoAbout dt {color: #009944;}
.common_information dl.infoAbout dd {margin-bottom: 20px;}
.common_information dl.infoAbout dd li {
position: relative;
margin-bottom: 10px;
padding-left: 14px;
}
.common_information dl.infoAbout li.att::before {
color: #e72a35;
content: "●";
font-size: 1em;
position: absolute;
top: 0;
left: 0;
}
.common_information dl.infoAbout dd ul li::before {
color: #5a5757;
content: "●";
font-size: 1em;
position: absolute;
top: 0;
left: 0;
}
.common_information dl.infoAbout dd ul li li {margin-top: 10px;}
.common_information dl.infoAbout dd ul li li::before {
color: #5a5757;
content: "・";
font-size: 1em;
position: absolute;
top: 0;
left: 0;
}

.inner_information.for_store ul {margin: 40px;}
.inner_information.for_store li {
position: relative;
margin-bottom: 10px;
padding-left: 14px;
}

.inner_information.for_store li::before {
content: "●";
font-size: 1em;
position: absolute;
top: 0;
left: 0;
}

/*760px以上*/
@media screen and (min-width: 760px),print {
.inner_information h3 {
font-size:24px;
line-height: 1.8;
padding: .75em;
}
.inner_information h3 > span {font-size:16px;}

.inner_information .tx_lg {
font-size:20px;
margin: 2em 0;
}

.common_information dt,
.common_information dd,
.common_information li {font-size:14px;}

.common_information dl.schedule {font-size:16px;}

.common_information ul.infoList li::before,
.common_information ul.infoList li.att::before,
.common_information dl.infoAbout li.att::before,
.common_information dl.infoAbout dd ul li::before,
.common_information dl.infoAbout dd ul li li::before,
.inner_information.for_store li::before {
font-size: .25rem;
top: 2px;
}
}


/*759px以下*/
@media screen and (max-width: 759.9px) {
.common_information .table-wrap {
overflow-x: scroll;
overflow-y: hidden;
min-height: 180px;
}
.common_information dl.schedule dd table {width: 1020px;}
.table-wrap::-webkit-scrollbar {width: 10px;}
.table-wrap::-webkit-scrollbar-track {background-color: #eee;}
.table-wrap::-webkit-scrollbar-thumb {
border-radius: 9999px;
background-color: #ccc;
}
}


/* ===== FAQ ===== */
.optional_faq {padding-bottom: 48px;}

.optional_faq dl {font-size:14px;}
.optional_faq dt {
background-color: #fff;
box-shadow: 1px 1px 2px #666;
font-weight: 700;
margin-bottom: 1px;
padding: 16px;
position: relative;
}
.optional_faq dt span {
display: block;
padding: 0 32px;
position: relative;
}
.optional_faq dt::before {
background-color: #e48c00;
color:#fff;
content:'Q';
display: block;
font-family: 'Oswald', sans-serif;
font-size:16px;
line-height: 24px;
margin-right: 8px;
text-align: center;
width: 24px;
position: absolute;
top:12px
}

.optional_faq dt span::before,
.optional_faq dt span::after {
background-color: #e48c00;
content: '';
height: 4px;
margin: auto 0;
width: 20px;
position: absolute;
right: 0;
top: 6px;
transition: all 0.3s;
-webkit-transition: all 0.3s;
-ms-transition: all 0.3s;
}
.optional_faq dt span::after {
transform: rotate(90deg);
-webkit-transform: rotate(90deg);
-ms-transform: rotate(90deg);
}
.optional_faq dt.is-active span::before {
transform: rotate(180deg);
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
}
.optional_faq dt.is-active span::after { 
opacity: 0;
transform: rotate(180deg);
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
}

.optional_faq dd {
background-color: #e5f5f5;
box-shadow: 1px 1px 2px #666;
display: none;
margin-bottom:1px;
padding: 16px;
position: relative;
}
.optional_faq dd span {
display: inline-block;
padding-left: 32px;
position: relative;
}
.optional_faq dd::before {
background-color: #029ee4;
color:#fff;
content:'A';
display: inline-block;
font-family: 'Oswald', sans-serif;
font-size:16px;
line-height: 24px;
text-align: center;
width: 24px;
position: absolute;
top:12px
}
.optional_faq dd.is-active {display: block;}

/*760px以上*/
@media screen and (min-width: 760px),print {
.optional_faq {padding-bottom: 80px;}

.optional_faq dl {font-size:18px;}
.optional_faq dt span,
.optional_faq dd span {padding-left: 40px;}
.optional_faq dt::before,
.optional_faq dd::before {
font-size:20px;
line-height: 28px;
width: 28px;
}
}



/* ------------------------------------------

shopinfo

------------------------------------------ */
/*759px以下*/
@media screen and (max-width: 759.9px) {
#shopinfo{
background: #f0f6ff;
padding: 48px 0;
}

.commonTit{
text-align:center;
margin-bottom:25px;
padding: 0 10px 15px 10px;
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
background: url("../images/h2dot.png") no-repeat center bottom;
background-size: 64px;
}

.commonTit span{
display:inline-block;
font-weight:bold;
font-size:120%;
color:#333;
}


.shopNakasu,
.shopOther{
width: 90%;
margin: 0 auto 20px auto;
}

.shopNakasu .titShopinfo{
margin: 0;
padding: 10px 0;
color: #fff;
font-size: 130%;
font-weight:bold;
background: #124089 url("../images/ico_shop.png") no-repeat 10px 10px;
background-size: 24px;
text-align: center;
}
.shopOther .titShopinfo{
margin: 0;
padding: 10px 0;
color: #fff;
font-size: 130%;
font-weight:bold;
background: #124089;
text-align: center;
}

.shopNakasu .inner,
.shopOther .inner{
background: #fff;
border-right:solid 1px #bdbdbd;
border-bottom:solid 1px #bdbdbd;
border-left:solid 1px #bdbdbd;
margin:0;
width: 100%;
}

/*shopNakasu*/
.shopNakasu dl{
margin: 0;
padding: 20px 15px 0 15px !important;
}
.shopNakasu dt{
color: #124089;
font-size: 110%;
font-weight: bold;
margin: 0;
padding: 0 0 5px 0;
}
.shopNakasu dd{
margin: 0;
padding:0 0 20px 0 !important;
font-size: 110%;
line-height: 1.7;
}
.kome{
font-size: 12px;
line-height: 1.3;
}
.payment{
margin:0;
padding:0;
}
.payment li{
display: inline-block;
color:#fff;
border-radius: 3px;
padding: 1px 10px !important;
margin-right: 10px;
}
.payment li:nth-child(1){background: #ff718c;}
.payment li:nth-child(2){background: #5c9bff;}


/*shopOther*/
.shopOther ul{
margin: 0;
padding: 20px 15px 5px 15px !important;
}
.shopOther li{
float: left;
width:48%;
}
.shopOther li:nth-child(2n){
float:right;
}

.shopOther li a{
position:relative;
background:#124089;
display:block;
padding:10px 0;
text-align:center;
color:#FFF!important;
-webkit-border-radius: 5px;
border-radius: 5px;
font-family:sans-serif;
margin:0 0 15px 0;
text-decoration: none;
font-weight: bold;
letter-spacing: 2px;
}
.shopOther li a:after{
content:"";
width: 0;
height: 0;
border-style: solid;
border-width: 5px 0 5px 7px;
border-color: transparent transparent transparent #ffffff;
position:absolute;
top: 15px;
right:10px;
}
}

/*760px以上*/
@media screen and (min-width: 760px),print {
#shopinfo{
background: #f0f6ff;
padding: 80px 0;
}

.commonTit{
text-align:center;
margin-bottom:40px;
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
padding-bottom: 20px;
background: url("../images/h2dot.png") no-repeat center bottom;
background-size: 84px;
}

.commonTit span{
display:inline-block;
font-weight:bold;
font-size:36px;
color:#333;
}

.shopNakasu .titShopinfo{
margin: 0;
padding: 18px 0 10px;
width: 100%;
color: #fff;
font-size: 22px;
font-weight:bold;
background: #124089 url("../images/ico_shop.png") no-repeat 24px 15px;
background-size: 40px;
text-align: center;
}
.shopOther .titShopinfo{
margin: 0;
padding: 18px 0 10px;
width: 100%;
color: #fff;
font-size: 22px;
font-weight:bold;
text-align: center;
background: #124089;
}
.shopNakasu .inner,
.shopOther .inner{
margin: 0;
padding: 0;
width: 458px;
background: #fff;
border-right:solid 1px #bdbdbd;
border-bottom:solid 1px #bdbdbd;
border-left:solid 1px #bdbdbd;
}
.shopNakasu{
float: left;
}
.shopOther{
float: right;
}

/*shopNakasu*/
.shopNakasu dl{
padding: 25px 20px 0 20px !important;
}
.shopNakasu dt{
clear: both;
float: left;
width: 25%;
color: #124089;
font-weight: bold;
}
.shopNakasu dd{
float: left;
width: 75%;
padding-bottom: 20px !important;
line-height: 1.7;
}
.kome{
font-size: 12px;
line-height: 1.3;
}
.payment li{
display: inline-block;
color:#fff;
border-radius: 3px;
padding: 1px 10px !important;
margin-right: 10px;
}
.payment li:nth-child(1){background: #ff718c;}
.payment li:nth-child(2){background: #5c9bff;}

/*shopOther*/
.shopOther ul{
padding: 25px 0 5px 45px !important;
}
.shopOther li a{
position:relative;
float: left;
background:#124089;
display:block;
padding:15px 0;
text-align:center;
color:#FFF!important;
-webkit-border-radius: 5px;
border-radius: 5px;
width:170px;
font-size:14px;
font-family:sans-serif;
margin:0 25px 20px 0;
text-decoration: none;
font-weight: bold;
letter-spacing: 3px;
}

.shopOther li a:after{
content:"";
width: 0;
height: 0;
border-style: solid;
border-width: 6px 0 6px 10px;
border-color: transparent transparent transparent #ffffff;
position:absolute;
top: 20px;
right:20px;
}
}


/*760px以上*/
@media screen and (min-width: 760px),print {
.note { display: block;text-indent: -1em; margin-left: 1em;}
.note12_5 { display: block;text-indent: -12.5em; margin-left: 12.5em;}
.pdl12 { padding-left: 1.2em;}
.pdl17 { padding-left: 1.7em;}
}