@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/*個別ページ*/
#wrapper {
    overflow: hidden;
}
h2 {
    font-size :20px;
    margin-bottom: 20px;
    line-height: 30px;
    text-align :left;
    font-weight: bold;
}
img {
    max-width: 100%;
}
.container {
    font-family: YuGothic, /* Mac用 */ 'Yu Gothic', /* Windows用 */ sans-serif;
    background-image: url("../img/recommend_toure/background.png");
    background-size: cover;
    font-size :15px;
    padding :0 calc((100% - 1024px) / 2);
    margin: 60px 0;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
#top_img {
    background: url("../img/recommend_toure/haikei_top.jpg") ;
    background-size: cover;
    background-position-y: 47%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1024px;
    height: 293px;
    padding :0 calc((100% - 1024px) / 2);
    position: relative;
}
#top_img img {
    max-height: 100%;
    z-index :999;
}
#reccomend_toure_nav ul {
    display :flex;
    justify-content: space-around;
    align-items: center;
    background: linear-gradient(#1D37FF, #559CFF);
    padding :0 calc((100% - 1024px) / 2);
    height: 65px;
    line-height: 70px;
}
#reccomend_toure_nav ul li {
    height: 45px;
    padding :3px;
}

#reccomend_toure_nav ul li .underbar {
    background:url("../img/recommend_toure/nav_under.png") bottom no-repeat;
}
#reccomend_toure_nav img {
    max-height: 100%;
}
.reccomend_toure_left {
    width: 393px;
    height: 300px;
    margin-bottom :60px;
    display: flex;
    flex-wrap: wrap;
    position: relative; /*古いIEでulの幅が３００％出来なくて画像クリックでスライド出来ないのを修正*/
}

@media only screen and (min-width: 769px) { /*NEWはPCのみ*/
/*.reccomend_toure_left li::before,*/
.list-inner:first-child::before {
    content :"";
    background-image: url("../img/recommend_toure/new.png");
    background-size: contain;
    position: absolute;
    width :50px;
    height :50px;
    top: -25px;
    left: -25px;
    z-index: 99;
}
}
.reccomend_toure_left ul {
    display: flex;
    height: 278px;
    width :300%;
    justify-content: center;
    position: absolute; /*古いIEでulの幅が３００％出来なくて画像クリックでスライド出来ないのを修正*/
}
.reccomend_toure_left li {
    width :35%;
    opacity: 0;
    border-radius: 7px;
    position: relative;
    display: inline-block;
}
#tab-1:checked ~ ul {
-webkit-transform: translateX(0);
transform: translateX(0);
}
#tab-2:checked ~ ul {
-webkit-transform: translateX(-33.333%);
transform: translateX(-33.333%);
}
#tab-3:checked ~ ul {
-webkit-transform: translateX(-66.6666%);
transform: translateX(-66.666%);
}
#tab-1:checked ~ .img_slide li:nth-child(1),
#tab-2:checked ~ .img_slide li:nth-child(2),
#tab-3:checked ~ .img_slide li:nth-child(3) {
    opacity:1;
    width :35%px;
    cursor: pointer;
}
#tab-1:checked ~ .img_slide li:nth-child(1) label,
#tab-2:checked ~ .img_slide li:nth-child(2) label,
#tab-3:checked ~ .img_slide li:nth-child(3) label {
    cursor: pointer;
}
#tab-1:checked ~ .slide-button label:nth-of-type(1),
#tab-2:checked ~ .slide-button label:nth-of-type(2),
#tab-3:checked ~ .slide-button label:nth-of-type(3) {
    background: black;
}
input {
    display: none;
}
.img_slide label{
    display: inline-block;
    height: 262px;
    width: 393px;
}
.img_slide label img {
    max-height: 100%;
    border-radius: 7px;
}
.slide-button {
    width :100%;
    position: absolute; /*古いIEでulの幅が３００％出来なくて画像クリックでスライド出来ないのを修正*/
    bottom: 0; /*古いIEでulの幅が３００％出来なくて画像クリックでスライド出来ないのを修正*/
}
.slide-button label{
    cursor: pointer;
    display: inline-block;
    box-sizing: border-box;
    border: 2px black solid;
    height: 10px;
    width: 10px;
    border-radius: 50%;
    margin: 0 9px;
}
.reccomend_toure_right {
    width :544px;
}
.recommend_toure_ilands {
    border: 0.5px #333333 solid;
    padding: 0px 10px 10px 10px;
    margin: 50px 0;
    text-align: left;
}
.recommend_toure_ilands span {
    display: inline-block;
    width: 100%;
    background: #333333;
    margin-bottom: 5px;
    color: white;
    padding: 2.5px 10px;
    margin-left: -10px;
    font-weight: bold;
}
.reccomend_toure_right p {
    text-align: left;
    padding: 15px 0;
    margin-bottom: 15px;
    border-top: 0.5px #333333 solid;
    border-bottom: 0.5px #333333 solid;
}
.reccomend_toure_description {
    line-height: 27px;
    text-align: left;
}
.jump_button {
    width: 542px;
}
.jump_button a span {
    font-size :12px;
}
.jump_button a:last-child {
    display: inline-block;
    margin: 50px 0;
    width :24%;
}
.jump_button a:hover:not(:last-child),
.jump_button a:link:hover:not(:last-child),
.jump_button a:visited:hover:not(:last-child) {
  border: 1px solid #d80606;
  color: #d80606;
  background: white;
  border-radius: 0;
}
.jump_button a:not(:last-child),
.jump_button a:link:not(:last-child),
.jump_button a:visited:not(:last-child) {
    padding: 13px 0;
    margin :20px 0;
    font-size: 15px;
    font-weight: 700;
    transition: all .2s ease-in-out;
    text-transform: uppercase;
    opacity: 1;
    width: 100%;
    display: inline-block;
    background: linear-gradient(#E31C24 70%, #E75A24);
    border: 1px solid #d80606;
    color: #fefefe;
    border-radius: 30px;
}
.jump_button p {
    color: red;
    text-align: left;
    font-weight: bold;
    margin-top: 50px;
    font-size: 20px;
}
/*アーカイブ用*/
.list-outter {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    font-size :13px;
    width :100%;
    margin-bottom: 40px;
}
.list-outter .img-background img {
    height: 100%;
    object-fit: cover;
}
.list-inner {
    position: relative;
    text-align: left;
    width: 216px;
    height: 270px;
    margin-left: 45px;
    margin-bottom: 100px;
    
}
.list-inner:first-child,  /*一番左の列揃え*/
.list-inner:nth-child(5),
.list-inner:nth-child(9),
.list-inner:nth-child(13){
    margin-left: 25px;
}
.list-inner:nth-last-child(1) {
    margin-right: auto;
}
.island-list_archive {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    font-weight: bold;
    border-top: 0.5px #666666 solid;
}
.island-list_archive li {
    background: #666666;
    color: white;
    font-size :11px;
    margin: 10px 5px 0 3%;
    border-radius: 7px;
    width: 43%;
    text-align: center;
}
.island-list_archive li:nth-child(3) {
    margin-right: 53%;
}
.island-list_archive li:nth-child(4) {
    margin-left: -47%;
}
.list-inner .title_link {
    color :black;
    display: block;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    font-weight: bold;
    overflow: hidden;
    margin: 10px 0;
    height: 60px;
}
.img-background {
    height: 143px;
    width :100%;
    text-align: center;
    background: #666666;
}
.traveling_plan .img-background,
.list-inner .img-background {
    border-radius: 7px;
}
/*related articl用*/
.panelListA {
    display: flex;
    justify-content: space-between;
}
#content .relevance .panelListA li {
    margin: 0;
    width: 23%;
}
.panelListA .text-block {
    color :black;
    font-size: 100%;
}
.text-block h3 a {
    font-weight: 700;
    line-height: 1.5em;
    text-decoration: none;
    color: #333333;
    display: block;
}
.traveling_plan {
    display: flex;
    justify-content: space-between;
    width: 1024px;
}
.traveling_plan li {
    width: 23%;
    list-style: none;
    font-size :12px;
}
.traveling_plan img {
    border-radius : 7px;
}
/*関連商品の個数が不明に対応*/
.traveling_plan li:nth-last-child(2) + li {
    margin-right: 50%;
}
.traveling_plan li:nth-last-child(3) + li + li {
    margin-right: 25%;
}
.traveling_plan li:nth-child(4) {
    margin: 0 !important;
}
#content [class*=panel] > li a:after { /*謎な三角を削除*/
    display: none;
}
/*SP*/
#reccomend_toure_nav_sp {
    display :none;
    position :relative;
}
#reccomend_toure_nav_sp label:nth-last-of-type(1) {
    position: absolute;
    color: blue;
    right: 5px;
    top: 110px;
    font-size: 70px;
    margin: 0 10px;
    z-index: 99999;
    transition-duration: 0.5s;
    opacity: 0;
}
＃reccomend_toure_nav_sp {
    height :100%;
}
#drop-2:checked ~ #reccomend_toure_nav_sp {
    transition-duration:1s;
}
#drop-1:checked ~ #reccomend_toure_nav_sp .drop_container {
    height: 1200px;
    transition-duration:1s;
}
#drop-1:checked ~ #reccomend_toure_nav_sp ul{
    height: 750px;
    transition-duration:1s;
}
#drop-1:checked ~ #reccomend_toure_nav_sp li:not(:first-child) {
    height: 15%;
    transition-duration: 0.5s;
    border-bottom: 2px blue solid;
    margin: 0 15%;
}
#drop-1:checked ~ #reccomend_toure_nav_sp label:nth-last-of-type(1) {
    transition-duration: 0.5s;
    opacity: 1;
}
#drop-1:checked ~ #reccomend_toure_nav_sp ul img {
    height: 100%;
}
@media only screen and (max-width: 769px) {

    .container {
        margin: 30px 0;
    }
    .list-inner {
        margin-bottom: 0;
    }
    #top_img {
        width: 100%;
        height: auto;
        padding :0;
        background-size: cover;
        background-position-x: 45%;
    }
    #top_img img {
        width :auto;
    }
    #reccomend_toure_nav {
        display: none;
    }
    #reccomend_toure_nav_sp {
        display: inherit;
        height: 110px;
        background: linear-gradient(#1D37FF, #559CFF);
    }
    #reccomend_toure_nav_sp p {
        color: white;
        font-size: 18px;
        line-height: 30px;
    }
    #reccomend_toure_nav_sp label:nth-child(1)::before,
    #reccomend_toure_nav_sp label:nth-child(1)::after {
        content: "";
        background: url(../img/recommend_toure/nav_icon.png);
        background-size: cover;
        display: inline-block;
        width: 22px;
        height: 33px;
    }
    #reccomend_toure_nav_sp ul {
        height :0;
    }
    #reccomend_toure_nav_sp .drop_container {
        transition-duration:1s;
        z-index: 1000;
        width: 100%;
        height: 0;
        background: hsla(0,0%,100%,.95);
        position :absolute;
    }
    #reccomend_toure_nav_sp li {
        transition-duration: 0.5s;
        height: 0;
    }
    #reccomend_toure_nav_sp li:nth-child(1) {
        height: 50px;
    }
    #reccomend_toure_nav_sp ul img {
        height: 0;
    }
    #reccomend_toure_nav_sp label,
    #reccomend_toure_nav_sp label img {
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    /*画像スライド*/
    .reccomend_toure_left {
        width: 100%;
        height: 550px;
    }
    .reccomend_toure_left ul {
        height: 500px;
    }
    .img_slide label {
        width: 100%;
        height: 100%;
    }
    .img_slide .list-inner::before {
        display: none;
    }
    .reccomend_toure_right,
    .jump_button {
        width :90%;
    }
    .jump_button p {
        font-size: 15px;
    }
    #content .relevance > .inner ul {
        flex-wrap: wrap;
        width: 100%;
    }
    #content .relevance .panelListA li {
        width :48%
    }
    #content .panelListA li .text-block {
        width :100%;
    }
    .traveling_plan li {
        width :48%;
        margin-bottom: 15px;
    }
    .img-background {
        height :100px;
    }
    #content .relevance h2 {
        margin: 10px 0 0 -5px;
    }

/*トップページ*/
li.list-inner {
    width: 40%;
    margin-left: 6%;
}
.island-list_archive li {
    font-size: 8px;
}

}/*@media only screen and (max-width: 769px)*/

@media only screen and (max-width: 415px) {
    #reccomend_toure_nav_sp {
        height: 45px;
    }
    #reccomend_toure_nav_sp label:nth-last-of-type(1) {
        top: 50px;
        font-size: 40px;
    }
    #drop-1:checked ~ #reccomend_toure_nav_sp ul {
        height: 400px;
        transition-duration: 0.5s;
    }
    #reccomend_toure_nav_sp label:nth-child(1)::before,
    #reccomend_toure_nav_sp label:nth-child(1)::after {

        width: 10px;
        height: 14px;
    }
    li.list-inner {
        width: 45%;
        margin-left: calc(10% /3);
    }
    .list-inner:first-child, 
    .list-inner:nth-child(5), 
    .list-inner:nth-child(9), 
    .list-inner:nth-child(13) {
        margin-left: calc(10% /3);
    }
    .reccomend_toure_left {
        height: 250px;
    }
    .reccomend_toure_left ul {
        height: 220px;
    }
    .jump_button a:link:not(:last-child) {
        margin: 10px 0;
    }

}/*@media only screen and (max-width: 415px)*/
@media only screen and (max-width: 375px){
    .island-list_archive li {
        margin: 5px 1px 0 1px;
        width :48%;
        font-size: 8px;
    }
}