#main {
    max-width: 980px;
    margin: 0 auto;
}
#tx-page h1 {
    border-left: 10px solid #8dc4e0;
    padding: 0px 20px 0;
    font-size: 24px;
    margin-bottom: 15px;
    margin-top: 15px;
}
.asoview-wrap{
    background: url(../img/jtb/asoview-wrap.png) repeat;
    padding-bottom: 50px;
    font-weight: 300;
   font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', Meiryo,Osaka, 'ＭＳ Ｐゴシック', 'MS P Gothic', sans-serif;
}
.asoview-wrap *{
   font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', Meiryo,Osaka, 'ＭＳ Ｐゴシック', 'MS P Gothic', sans-serif;
}
.asoview-wrap img{
    max-width: 100%;
}
.main-img {
  text-align: center;
}
.main-text-img {
  text-align: center;
  margin-top: -100px;
}
.flex {
  display: flex;
  text-align: center;
}
h2.line {
    margin-bottom: 20px;
    font-size: 36px;
}
.asoview-wrap .h2{
    text-align: center;
    font-size: 34px
    }
.asoview-wrap h2 span.h2-img {
    display: block;
    line-height: 0;
}
.asoview-wrap h2 {
  position: relative;
text-align: center
/*  display: inline-block;*/

}
.asoview-wrap h2 span.h2-coupon {
    font-size: 40px;
}
.asoview-wrap h2 span.h2-coupon:before,
.asoview-wrap h2 span.h2-coupon:after {
  position: relative;
  display: inline-block;
  content: "";
  background: #2cabc6;
  width: 3px;
  height: 1.5em;
  margin: 0 1em;
  margin-top: -.2em;
  vertical-align: middle;
}
.asoview-wrap h2 span.h2-coupon:before {
    transform: rotate(-27deg);
    left: 225px;
    position: absolute;
    top: 42px;
}
.asoview-wrap h2 span.h2-coupon:after {
  transform: rotate(27deg);
    right: 225px;
    position: absolute;
    top: 42px;
}
    
    
.asoview-wrap h2.line:before, 
.asoview-wrap h2.line:after{
    content: '';
    position: absolute;
    top: 61%;
    display: inline-block;
    width: 27.5%;
    height: 2px;
    background: url(../img/asoview/h2-line.png) repeat-x;
}
.asoview-wrap .coupon h2.line:before, 
.asoview-wrap .coupon h2.line:after{
        width: 25%;
}
.asoview-wrap h2.line:before {
  left:0;
}
.asoview-wrap h2.line:after {
  right: 0;
}
.asoview-wrap h2.marker span {
    background: linear-gradient(transparent 60%, #f6ff8c 40%);
    font-size: 38px;
}
.asoview-wrap .aso h2.marker span {
    background: linear-gradient(transparent 60%, #ffd1d1 40%);
}
.asoview-wrap .asoview h2.marker span {
    background: linear-gradient(transparent 60%, #ffd7d7 40%);
    font-size: 38px;
}
.asoview-wrap .asoview img{
    display: block;
    margin: 0 auto;
}
.coupon {
    text-align: center;
    border-bottom: 2px dashed #2cabc6;
}
.coupon h2.line+p{
color:#2cabc6;
    font-weight: bold
    }
.coupon-item-box {
    border: #000 solid 3px;
    border-radius: 30px;
    padding: 15px 25px;
    margin: 30px;
    width: 40%;
}

.coupon .flex{
        margin: 0 auto;
        width: 770px
    }
    
.coupon-item-box p.coupon-head {
    display: inline-block;
    position: relative;
    height: 38px;
    line-height: 38px;
    text-align: center;
    padding: 0 30px;
    font-size: 22px;
    font-weight: bold;
    background: #f45a5a;
    color: #FFF;
    box-sizing: border-box;
    margin-bottom: 15px;
}
.coupon-item-box.green p.coupon-head{
    background: #3faa27
    }
.coupon-item-box p.coupon-head:before, .coupon-item-box p.coupon-head:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.coupon-item-box p.coupon-head:before {
    top: 0;
    left: 0;
    border-width: 19px 0px 19px 13px;
    border-color: transparent transparent transparent #fff;
    border-style: solid;
}
.coupon-item-box p.coupon-head:after {
  top: 0;
  right: 0;
  border-width: 19px 13px 19px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}
.coupon-item-box p.coupon-off {
    font-size: 50px;
    font-weight: bold;
        height: 115px;
}
.coupon-item-box.red {
    color: #f45a5a;
    box-shadow: 3px 3px 0 0 #f45a5a;
}
.coupon-item-box.green {
    color: #3faa27;
    box-shadow: 3px 3px 0 0 #3faa27;
}
.coupon-item-box p.coupon-off span.first {
    display: block;
    font-size: 25px;
    color: #f45a5a;
    border: 2px solid;
  width: 80%;
    margin: 0 auto;
    line-height: 140%;
}
.coupon-item-box p.coupon-off span.always {
    display: block;
    font-size: 25px;
    color: #3faa27;
    border: 2px solid;
  width: 80%;
    margin: 0 auto;
    line-height: 140%;
}

.otoku.aso p.title {
    border-bottom: 2px solid #f00;
    margin: 10px 0;
    text-align: left;
    
}
.otoku.aso .otoku-item .title+p{
    text-align: left;
}

.coupon-item-box p.code {
    font-size: 20px;
    font-weight: bold;
    border-bottom: 3px dotted #000;
    border-top: 3px dotted #000;
}
.coupon-item-box p.code span.l-text {
    font-size: 30px;
}
.coupon-item-box p.attention {
    color: #000;
    font-size: 14px;
    text-align: right;
}
.coupon-item-box p.copy button {
    background: #f45a5a;
    padding: 6px;
    display: block;
    width: 100%;
    margin: 5px 0;
    color: #fff;
}
.coupon-item-box.green p.copy button {
    background: #3faa27;
    }
    
.coupon > p.attention {
    background: #fffe85;
    padding: 8px;
    margin-bottom: 50px
}
.otoku.aso {
    border-bottom: 2px dashed #2cabc6;
    padding-bottom: 20px
}
    .otoku {
        text-align: center;
    }
.otoku .otoku-box {
    display: flex;
        margin-top: 40px;
}
.otoku.aso .otoku-box {
    flex-wrap: wrap;
}
.otoku p.title {
    color: #c65900;
    font-size: 26px;
    font-weight: bold;
    margin: 10px
}
.otoku .otoku-item {
    width: 50%;
    /* padding: 5px; */
    margin: 12px;
    box-sizing: border-box;
}
.otoku.aso .otoku-item{
    width: 47.5%;
}

.otoku .otoku-item a{
        color: #000
    }
.otoku .otoku-item img {
    border: 4px solid #000;
    box-shadow: 4px 5px 0 0 #ffd585;
}
.otoku .otoku-item:nth-child(2n) img {
    box-shadow: 4px 5px 0 0 #c1e8ef
    }

.otoku .otoku-item.add img {
    box-shadow: 4px 5px 0 0 #fddbff;
}
.otoku .add.otoku-item:nth-child(2n) img {
    box-shadow: 4px 5px 0 0 #c8e3ad;
    }
.link-list{
        display: flex;
        flex-wrap: wrap;
        width: 900px;
    margin: 0 auto;
}   
.link-list li img {
    width: 240px;
    height: 240px;
    object-fit: cover;
    border-radius: 50%;
    border: 4px solid #000;
    box-shadow: 6px 4px 0 #87e5fc;
}
.link-list li:nth-child(2) img {
    box-shadow: 6px 4px 0 #fbdcea;
}
.link-list li:nth-child(3) img {
    box-shadow: 6px 4px 0 #ffd9a2;
}
.link-list li:nth-child(4) img {
    box-shadow: 6px 4px 0 #c5ffb7;
}
.link-list li:nth-child(5) img {
    box-shadow: 6px 4px 0 #f5ce65;
}
.link-list li:nth-child(6) img {
    box-shadow: 6px 4px 0 #f8cfff;
}
.link-list li span {
    display: block;
    font-size: 24px;
    color: #000;
    font-weight: bold;
    margin-bottom: 35px;
}
.link-list li {
    width: 33%;
        text-align: center;
    }

a.other_btn {
    display: block;
    width: 70%;
    border: 4px solid #000;
    border-radius: 15px;
    padding: 20px;
    text-align: center;
    margin: 0 auto 60px;
    font-size: 30px;
    font-weight: bold;
    background: #f79700 url(../img/asoview/icon_arrow.png) no-repeat 95%;
    color: #fff;
    box-shadow: 4px 4px 0 #fffc1e;
    background-size: 12px 15px;
}
.genre a.other_btn {
    background: #2cabc6 url(../img/asoview/icon_arrow.png) no-repeat 95%;
}
.asoview a.other_btn {
    margin-bottom: 10px;
    background: #e43f3f url(../img/asoview/icon_arrow.png) no-repeat 95%;
}
.asoview h2.marker {
    margin-bottom: 35px;
}
.item-box {
    width: 100%;
    padding: 0;
    font-size: 22px;
    box-sizing: border-box;
    font-weight: bold;
    border: 4px solid;
}
.box-head {
    background: #0860c3;
    color: #fff;
    text-align: center;
    padding: 15px 5px;
    margin: 0;
    font-size: 32px;
    }
.box-inner {
  background: #fff;
  margin: 0;
  text-align: left;
    font-size: 17.5px;
  padding: 15px;
}

.box-inner.blue {
  color: #1062eb;
    background: #f6ffff;
}
    .box-inner ul{
        list-style: none;
        padding-left: 25px;
    }
.box-inner ul li {
    list-style: outside;
    margin-bottom: 0.5rem;
    line-height: 150%;
}
    .box-inner ul li.none{
        list-style: none;
        margin-left: -20px;
    }
.flex .box-inner{  text-align: center;font-size: 30px;}
 .box-inner ul .attention {
  background: #fff600;
  color: #f00;
  padding: 4px 0;
}
.box-inner.red {
    background: #fff1f4;
  color: #e53434;
}
.center {
  text-align: center;
  margin-bottom: 0;
}
.otoku,
.coupon,
.mokuteki,
.genre,
.asoview{
    margin-bottom: 110px;
}
.otoku.aso.round1 {
    margin-bottom: 0;
    border-bottom: none;
    margin-top: 50px;
}
h2.marker {
    margin-bottom: 35px;
}
button.js-copy{
    cursor: pointer;
    position: relative;
}
/* Tooltip */
.tooltip::after {
content: 'Copied!';
    background: #778b91;
    display: inline-block;
    color: #fff;
    border-radius: 0.4rem;
    position: absolute;
    left: 50%;
    bottom: -1.8rem;
    transform: translate(-50%, 0);
    font-size: .75rem;
    padding: 4px 10px 6px 10px;
    animation: fade-tooltip .5s 1s 1 forwards;
}

.offmark {
    background: #f00;
    color: #fff;
    display: inline-block;
    padding: 2px 5px;
    font-size: 13px;
    vertical-align: 5px;
    border-radius: 5px;
}
/*お得に利用できる遊び・施設はこちら真ん中寄せ*/
.otoku-box.item1{
    justify-content: center;
}
.otoku-box .resize{
    height: 210px;
    width: 100%;
    object-fit: cover;
}
/*クーポンリンク*/
.coupon-item-box.red .link a{
    background: #f45a5a;
    display: block;
    border-radius: 10px;
    color: #FFF;
    padding: 10px 0;
    font-weight: bold;
}
.coupon-item-box.green .link a{
    background: #3faa27;
    display: block;
    border-radius: 10px;
    color: #FFF;
    padding: 10px 0;
    font-weight: bold;
}
/* Animation */
@keyframes fade-tooltip {
  to { opacity: 0; }
}
button.js-copy:hover{
    opacity: 0.8
}
    .pc-none{
        display: none;
    }
    .sp-none{
        display:inline-block;
        
    }

@media screen and (min-width: 767px) {
    .center{
        text-align: center;
    }
.round1 .flex{
    width: 870px;
    flex-wrap: wrap;
}
.round1 .coupon{
    border-bottom: none;
}
.round1 .coupon-item-box.red {
    color: #f45a5a;
    box-shadow: 3px 3px 0 0 #f45a5a;
    width: 30%;
    margin: 0 15px 30px;
}
.round1 .round-img{
    width: 66%
}
.round1 .coupon-item-box.red {
    color: #f45a5a;
    box-shadow: 3px 3px 0 0 #f45a5a;
    margin: 0 15px 30px;
}
.round1 .coupon-item-box p.coupon-off {
    font-size: 30px;
    font-weight: bold;
    height: 86px;
}
    }
@media screen and (max-width: 767px) {
    img{
        max-width: 100%;
    }
#tx-page h1 {
    padding: 10px;
    font-size: 1.2rem;
    margin-bottom: 0;
}
    #tx-page .center{
        padding: 0 5px
    }
p.text {
    padding: 10px;
    font-size: 14px;
}
    a.sp-img{
        margin: 10px;
        display: block;
    }
h2.line {
    margin-bottom: 20px;
    font-size: 22px;
}
.coupon h2.line+p {
    color: #2cabc6;
    font-weight: bold;
    font-size: 15px;
    letter-spacing: -0.06em
}
.asoview-wrap h2.line:before, .asoview-wrap h2.line:after {
    width: 19.5%;
    }
.box-inner ul {
  list-style: none;
  padding: 0;
  margin: 0;
padding-left: 1rem;
  font-size: 0.9rem;
}  
.box-head {
font-size: 1.2rem;
}
.item-box {
    width: calc(100% - 20px);
    /* padding: 10px; */
    font-size: 20px;
    box-sizing: border-box;
    font-weight: bold;
    margin: 10px;
}
.main-text-img {
  text-align: center;
  width: 80%;
  margin: -40px auto 18px;
}
.asoview-wrap h2.marker span,
.asoview-wrap .asoview h2.marker span{
    font-size: 20px;
}
.asoview-wrap h2 span.h2-img img {
    height: 60px;
}
.asoview-wrap h2 .h2-coupon span.h2-img img {
       height: 28px
    }
.asoview-wrap h2 span.h2-coupon {
    font-size: 24px;
}
.asoview-wrap h2 span.h2-coupon:before {
    left: 25px;
    top: 28px;
    }
.asoview-wrap h2 span.h2-coupon:after {
    right: 25px;
    top: 28px;
    }
.asoview-wrap .coupon h2.line:before, .asoview-wrap .coupon h2.line:after {
    width: 10%;
}
.coupon .flex {
    margin: 0 auto 15px;
    width: 100%;
}
.coupon-item-box {
    border: #000 solid 2px;
    border-radius: 20px;
    padding: 6px 6px;
    margin: 5px;
    width: calc(50% - 13px);
    box-sizing: border-box;
}
.otoku.aso .otoku-item {
    width: 46%;
}
.offmark {
    background: #f00;
    color: #fff;
    display: block;
    padding: 2px 5px;
    font-size: 11px;
    vertical-align: 5px;
    border-radius: 5px;
}
.coupon-item-box p.coupon-off {
    font-size: 2.2rem;
    font-weight: bold;
/*        height: 18vw;*/
       height: 70px;
    line-height: 125%;
}
.coupon-item-box p.coupon-off span.first {
    display: block;
    font-size: 15px;
    color: #f45a5a;
    border: 2px solid;
width: 80%;
    margin: 0 auto;
    line-height: 134%;
}
.coupon-item-box p.coupon-off span.always {
    display: block;
    font-size: 15px;
    color: #3faa27;
    border: 2px solid;
width: 80%;
    margin: 0 auto;
    line-height: 134%;
}

.coupon-item-box p.coupon-head {
    display: inline-block;
    position: relative;
    height: 24px;
    line-height: 24px;
    text-align: center;
    padding: 0 30px;
        margin-bottom: 5px;
    font-size: 14px;
    }
.coupon-item-box p.coupon-head:before {
    top: 0;
    left: 0;
    border-width: 12px 0px 12px 6px;
    }
.coupon-item-box p.coupon-head:after {
    top: 0;
    right: 0;
    border-width: 12px 6px 12px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}
.coupon-item-box p.copy button {
    background: #f45a5a;
    padding: 6px;
    display: block;
    width: 100%;
    margin: 5px 0;
    color: #fff;
    font-size: 9px;
    letter-spacing: -0.09em;
}
.coupon-item-box.green p.coupon-off span{
    display: block;
    margin-bottom: 0;
}

.coupon-item-box p.copy img{
    vertical-align: middle;
/*    display: inline-block;*/
    padding-right: 5px;
    }
.coupon-item-box p.attention {
    font-size: 11px;
    letter-spacing: -0.095em;
}
.coupon-item-box p.code {
    font-size: 10px;
    border-bottom: 2px dotted #000;
    border-top: 2px dotted #000;
    }
.coupon-item-box p.code span.l-text {
    font-size: 17px;
}
.coupon > p.attention {
    font-size: 0.8rem;
    letter-spacing: -0.06em;
        margin-bottom: 10px;
}
.otoku .otoku-item img {
    border: 3px solid #000;}
.otoku .otoku-item {
    width: calc(50% - 7px);
    margin: 7px;
    font-size: 0.8rem;
    }
.otoku p.title {
font-size: 0.84rem;
    letter-spacing: -0.06em;
}
.link-list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
}
.link-list li img {
    width: 27vw;
    max-width: 240px;
    max-height: 240px;
    height: 27vw;
    border: 3px solid #000;
    }
.link-list li span {
    font-size: 18px;
    }
a.other_btn,
.genre a.other_btn,
.asoview a.other_btn {
    width: 90%;
    font-size: 17px;
    background-size: 13px 17px;
    padding: 12px;
    border: 3px solid #000;
    }
.asoview p {
    padding: 10px;
    font-size: 13px;
}
.asoview-wrap .asoview img {
    max-width: 80%;
}
.otoku, .coupon, .mokuteki, .genre, .asoview {
    margin-bottom: 50px;
}
.otoku.aso p.title {
    border-bottom: none;
    margin: 10px ;
    text-align: center;
}
.otoku.aso .otoku-item .title+p{
    text-align: left;
}
    
.round1 .flex {
    width: 100%;
    flex-wrap: wrap;
    display: block;
    text-align: center;
}
.round1 .coupon-item-box.red {
    color: #f45a5a;
    box-shadow: 3px 3px 0 0 #f45a5a;
    margin: 0 15px 30px;
    width: 60%;
    margin: 0 auto;
}
.round1 .coupon-item-box p.coupon-off {
    font-size: 30px;
    font-weight: bold;
    height: auto;
        padding: 5px 0;
}
    
    .pc-none{
        display:block;
    }
    .sp-none{
        display: none;
    }
    
    .otoku-box .resize{
    height: 22vw;
}
}


.round1 .coupon{
    border-bottom: none;
}

.round1 .round-img{

}

.round1 .coupon-item-box p.coupon-off span.always {
    font-size: 21px;
    color: #e61b6a;
        border: 2px solid;
}
.round1 .coupon-item-box p.coupon-head,
.round1 .coupon-item-box p.copy button{
     background: #e61b6a;   
}
.round1 .coupon-item-box.red {
    color: #e61b6a;
    box-shadow: 3px 3px 0 0 #e61b6a;
}