@charset "utf-8";

/* common */
main {
    max-width: none;
    padding: 0;
}
#aroundtrip .inner {
    position: relative;
    width: 100%;
    max-width: 1120px;
    margin: auto;
    padding: 0 5px;
}
#aroundtrip .midashi {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-bottom: 36px;
    font-size: 24px;
    color: #000 !important;
    text-align: center;
    line-height: 1em;
    font-family: ten-mincho, serif;
}
#aroundtrip .midashi::before,
#aroundtrip .midashi::after {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-right: .7em;
}
#aroundtrip .midashi::after {
    margin-right: 0;
    margin-left: .7em;
    transform: scale(-1,1);
}
#aroundtrip .midashi.blue::before,
#aroundtrip .midashi.blue::after {
    background: url('https://osaka-info.jp/information/around-trip/common/img/entrance_2023/deco_txt_blue.png') no-repeat center/contain;
}
#aroundtrip .midashi.red::before,
#aroundtrip .midashi.red::after {
    background: url('https://osaka-info.jp/information/around-trip/common/img/entrance_2023/deco_txt_red.png') no-repeat center/contain;
}
#aroundtrip .midashi.pink::before,
#aroundtrip .midashi.pink::after {
    background: url('https://osaka-info.jp/information/around-trip/common/img/entrance_2023/deco_txt_pink.png') no-repeat center/contain;
}
#aroundtrip .midashi.yellow::before,
#aroundtrip .midashi.yellow::after {
    background: url('https://osaka-info.jp/information/around-trip/common/img/entrance_2023/deco_txt_yellow.png') no-repeat center/contain;
}
#aroundtrip .aroundtrip_content__bnr {
    width: 360px;
    margin:50px auto 0;
}
/* aroundtrip_mv */
#aroundtrip .aroundtrip_mv img {
    width: 100%;
}

/* aroundtrip_nav */
#aroundtrip .aroundtrip_nav {
    padding: 43px 0;
    background-color: #E7F6F9;
}
#aroundtrip .aroundtrip_nav .inner {
    display: flex;
    align-items: center;
    padding: 0 65px;
    background: linear-gradient(180deg, #E7F6F9 0%, #E7F6F9 11%, #FFF 11%, #FFF 89%, #E7F6F9 89%, #E7F6F9 100%);
}
#aroundtrip .aroundtrip_nav .ttl {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 188px;
    height: 188px;
}
#aroundtrip .aroundtrip_nav .ttl::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 188px;
    height: 188px;
    background: url('https://osaka-info.jp/information/around-trip/common/img/entrance_2023/nav_circle.png') no-repeat center/cover;;
    animation: 15s linear infinite rotation;
}
@keyframes rotation {
    0% {
      transform: rotate(0);
    }
  
    100% {
      transform: rotate(360deg);
    }
}
#aroundtrip .aroundtrip_nav .ttl img {
    max-width: 100%;
}
#aroundtrip .aroundtrip_nav .nav {
    display: flex;
    align-items: flex-end;
    width: calc(100% - 188px);
}
#aroundtrip .aroundtrip_nav .nav li {
    position: relative;
    margin-top: -40px;
    padding: 0 44px;
}
#aroundtrip.en .aroundtrip_nav .nav li {
    margin-top: -10px;
}
#aroundtrip .aroundtrip_nav .nav li:first-child {
    padding-left: 25px;
}
#aroundtrip .aroundtrip_nav .nav li:last-child {
    padding-right: 20px;
}
#aroundtrip .aroundtrip_nav .nav li:not(:last-child)::after {
    content: '';
    position: absolute;
    bottom: 40px;
    right: -2px;
    display: block;
    width: 5px;
    height: 38px;
    background: url('https://osaka-info.jp/information/around-trip/common/img/entrance_2023/deco_nav.png') no-repeat center/cover;
}
#aroundtrip .aroundtrip_nav .nav li a:hover img {
    opacity: 1;
}
#aroundtrip .aroundtrip_nav .nav li a:hover img:first-child {
    transform: rotate(5deg);
}

/* aroundtrip_pickup 240313更新*/
#aroundtrip .aroundtrip_pickup {
    padding: 62px 0;
    .banner-list{
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: center;
        gap:20px 4%;
        .banner-item:not(:only-child){
            width: 48%;
        }
        /*
        .banner-item:nth-child(-n+2){
            width: 48%;
        }
        .banner-item:last-child{
            width: 100%;
        }*/
        & a{
            display: block;
            width: 100%;
        }
        & img {
            width: 100%;
        }
    }
}

/* aroundtrip_content */
#aroundtrip .aroundtrip_content {
    padding: 145px 0 180px;
}
#aroundtrip .aroundtrip_content#kanto {
    background: #FAF1F1;
}
#aroundtrip .aroundtrip_content#chubu_hokuriku {
    background: #EFF6FB;
}
#aroundtrip .aroundtrip_content#kansai {
    background: #F7ECEC;
}
#aroundtrip .aroundtrip_content#chugoku_shikoku {
    background: #FBF8EF;
}

/* aroundtrip_content__head */
#aroundtrip .aroundtrip_content__head {
    display: flex;
    justify-content: space-between;
}
#aroundtrip .aroundtrip_content__head .txt {
    width: 443px;
    margin-top: 35px;
}
#aroundtrip #chubu_hokuriku .aroundtrip_content__head .txt,
#aroundtrip #chugoku_shikoku .aroundtrip_content__head .txt {
    margin-top: -30px;
}
#aroundtrip .aroundtrip_content__head .txt h2 {
    display: flex;
    justify-content: center;
}
#aroundtrip .aroundtrip_content__head .txt h2 img {
    max-width: 100%;
    margin-bottom: 30px;
}
#aroundtrip .aroundtrip_content__head .txt p {
    line-height: 30px;
}
#aroundtrip .aroundtrip_content__head .img {
    width: 668px;
}

/* aroundtrip_content__map */
#aroundtrip .aroundtrip_content__map {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 25px;
}
#aroundtrip #kanto .aroundtrip_content__map .img {
    width: 500px;
}
#aroundtrip #kanto .aroundtrip_content__map .txt {
    width: 521px;
    margin-bottom: 63px;
}
#aroundtrip #chubu_hokuriku .aroundtrip_content__map .img {
    width: 540px;
}
#aroundtrip #chubu_hokuriku .aroundtrip_content__map .txt {
    width: 521px;
    margin-bottom: 100px;
}
#aroundtrip #kansai .aroundtrip_content__map .img {
    width: 475px;
}
#aroundtrip #kansai .aroundtrip_content__map .txt {
    width: 521px;
    margin-bottom: 130px;
}
#aroundtrip #chugoku_shikoku .aroundtrip_content__map .img {
    width: 546px;
}
#aroundtrip #chugoku_shikoku .aroundtrip_content__map .txt {
    width: 521px;
    margin-bottom: 110px;
}
#aroundtrip .aroundtrip_content__map .txt img {
    max-width: 100%;
    margin-bottom: 15px;
}
#aroundtrip .aroundtrip_content__map .txt p {
    font-size: 16px;
    line-height: 30px;
}

/* aroundtrip_content__list */
#aroundtrip .aroundtrip_content__list.mt {
    margin-top: 60px;
}
#aroundtrip .aroundtrip_content__list ul {
    display: flex;
    flex-wrap: wrap;
    gap:20px;
    justify-content: left;
}
#aroundtrip .aroundtrip_content__list ul li {
    border-radius: 5px;
    box-shadow: 5px 5px 0 rgba(70, 70, 70, .1);
    overflow: hidden;
    cursor: pointer;
}
#aroundtrip .aroundtrip_content__list ul.col1 {
    max-width: 360px;
    margin-left:auto;
    margin-right:auto;
}
#aroundtrip .aroundtrip_content__list ul.col1 li {
    width: 100%;
}
#aroundtrip .aroundtrip_content__list ul.col2 {
    max-width: 740px;
    margin-left:auto;
    margin-right:auto;
}
#aroundtrip .aroundtrip_content__list ul.col2 li {
    width: calc(50% - 10px);
    max-width: 360px;
}
#aroundtrip .aroundtrip_content__list ul.col3 li {
    width: calc(33% - 14px);
    max-width: 360px;
}
#aroundtrip .aroundtrip_content__list ul li:last-child {
    margin-right: 0 !important;
}
#aroundtrip .aroundtrip_content__list ul.col2 + .col2 {
    margin-top: 20px;
}
#aroundtrip .aroundtrip_content__list ul.pickup li {
    width: calc(25% - 15px);
    max-width: 266px;
    box-shadow: none;
}
#aroundtrip .aroundtrip_content__list ul.pickup li .img {
    border-radius: 5px;
    overflow: hidden;
}
#aroundtrip .aroundtrip_content__list ul li .img {
    overflow: hidden;
}
#aroundtrip .aroundtrip_content__list ul li:hover .img img {
    transform: scale(1.1);
}
#aroundtrip .aroundtrip_content__list ul.col1 li .txt,
#aroundtrip .aroundtrip_content__list ul.col2 li .txt,
#aroundtrip .aroundtrip_content__list ul.col3 li .txt {
    min-height: 112px;
    height: 100%;
    padding: 20px 38px;
    background-color: #FFF;
    font-size: 17px;
    line-height: 24px;
    font-family: ten-mincho, serif;
}
#aroundtrip .aroundtrip_content__list ul.pickup li .txt {
    font-size: 13px;
    line-height: 20px;
}
#aroundtrip .aroundtrip_content__list ul.pickup li .ttl {
    display: inline-block;
    width: auto;
    margin: 15px 0 5px;
    padding: 5px 15px;
    border-radius: 5px;
}
#aroundtrip .aroundtrip_content__list ul.pickup li .name {
    display: block;
    margin-bottom: 5px;
    font-size: 15px;
}
#aroundtrip #kanto .aroundtrip_content__list ul.pickup li .ttl {
    background-color: #F7CBCB;
    color: #EC3434;
}
#aroundtrip #chubu_hokuriku .aroundtrip_content__list ul.pickup li .ttl,
#aroundtrip #chugoku_shikoku .aroundtrip_content__list ul.pickup li .ttl {
    background-color: #CDE7F1;
    color: #47A9C9;
}

/* aroundtrip_content__pref */
#aroundtrip .aroundtrip_content__pref {
    display: flex;
    justify-content: space-between;
    margin: 125px 50px 60px;
    padding: 60px;
    background: #FFF;
    border-radius: 5px;
}
#aroundtrip .aroundtrip_content__pref .txt {
    width: 431px;
}
#aroundtrip .aroundtrip_content__pref .txt img {
    max-width: 100%;
    margin-bottom: 15px;
}
#aroundtrip .aroundtrip_content__pref .txt p {
    line-height: 30px;
}
#aroundtrip .aroundtrip_content__pref .img {
    width: 429px;
}

/* aroundtrip_content__pref */
#aroundtrip .aroundtrip_side_nav {
    display: none;
    position: fixed;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}
#aroundtrip .aroundtrip_side_nav li {
    transition: .3s;
}
#aroundtrip .aroundtrip_side_nav li:not(:last-child) {
    margin-bottom: 50px;
}
#aroundtrip .aroundtrip_side_nav li:hover {
    opacity: .7;
    transition: .3s;
}
#aroundtrip .aroundtrip_side_nav li a {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    color: #9B9696;
    font-size: 18px;
    font-family: ten-mincho, serif;
    text-align: right;
    line-height: 1em;
}
#aroundtrip .aroundtrip_side_nav li.active.red a {
    color: #EC3434;
}
#aroundtrip .aroundtrip_side_nav li.active.blue a {
    color: #47A9C9;
}
#aroundtrip .aroundtrip_side_nav li.active.pink a {
    color: #EC7D7D;
}
#aroundtrip .aroundtrip_side_nav li.active.yellow a {
    color: #FFAA00;
}
#aroundtrip .aroundtrip_side_nav li a span {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left: 10px;
    border: 1px solid #8C8989;
    border-radius: 10px;
}
#aroundtrip .aroundtrip_side_nav li a span::after {
    content: '';
    position: absolute;
    top: 5px;
    left: 5px;
    display: block;
    width: 8px;
    height: 8px;
    background: #3F3F3F;
    border-radius: 4px;
}
#aroundtrip .aroundtrip_side_nav li.active.red a span::after {
    background: #EC3434;
}
#aroundtrip .aroundtrip_side_nav li.active.blue a span::after {
    background: #47A9C9;
}
#aroundtrip .aroundtrip_side_nav li.active.pink a span::after {
    background: #EC7D7D;
}
#aroundtrip .aroundtrip_side_nav li.active.yellow a span::after {
    background: #FFAA00;
}

/* notes */
.notes {
    padding-bottom: 90px;
    background: #FBF8EF;
}
.notes p {
    padding: 30px;
    background: #E8E8E8;
    border-radius: 5px;
}