.top__pdf {
    position: absolute;
    top: 24%;
    right: -15%;
    width: 113px;
    transition: opacity 0.3s;
}

.top__pdf:hover {
    opacity: 0.8;
}

.top__period {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

.fair-inner {
    max-width: 1230px;
    margin-left: auto;
    margin-right: auto;
}


#ui{
    padding-top: 50px;
}
.ui__pdf {
    display: block;
    max-width: 232px;
    margin-top: 42px;
    margin-left: auto;
    margin-right: auto;
    transition: opacity 0.3s;
}

.ui__pdf:hover  {
    opacity: 0.8;
}



#top {
    position: relative;
    padding-top: 20px;
    margin-bottom: 45px;
}

#top::after {
    content: "";
    display: block;
    width: 100%;
    height: 1.38888vw;
    background-image: url(../imgs/fair/wavy.png);
    background-size: 100% auto;
    background-repeat: repeat-x;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #fff;
}

.area-nav {
    margin-bottom: 30px;
}

.area-nav__list {
    display: flex;
    border: 2px #4c4948 solid;
    border-radius: 10px;
    overflow: hidden;
}

.area-nav__item {
    width: 20%;
    text-align: center;
    color: #fff;
    font-size: 17px;
    font-weight: bold;
}

.area-nav__item:not(:last-child) {
    border-right: 2px #4c4948 solid;
}

.area-nav__item a {
    display: block;
    padding: 14px 0;
    transition: all 0.3s;
    letter-spacing: 0.025em;
}

.area-nav__item a:hover {
    opacity: 0.8;
}

.area-nav__item--sapporo {
    background: #ee8191;
}

.area-nav__item--otaru {
    background: #4774b9;
}

.area-nav__item--ebetsu {
    background: #42734f;
}

.area-nav__item--asahikawa {
    background: #036eb8;
}

.area-nav__item--kitami {
    background: #3ea6b2;
}

.area-nav__item--kushiro {
    background: #a48b78;
}

.area-nav__item--obihiro {
    background: #ffb340;
}

.area-nav__item--tomakomai {
    background: #90b83d;
}

.area-nav__item--hakodate {
    background: #42734f;
}

.area-nav__item--muroran {
    background: #7976b6;
}

.intro-service {
    display: flex;
    justify-content: space-between;
    max-width: 583px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 56px;
}

.intro-service li:nth-child(1) {
    max-width: 109px;
}

.intro-service li:nth-child(2) {
    max-width: 100px;
}

.intro-service li:nth-child(3) {
    max-width: 132px;
}

.intro-service li:nth-child(4) {
    max-width: 107px;
}

.intro-service li:nth-child(5) {
    max-width: 78px;
}

#ui {
    margin-bottom: 95px;
}

.search {
}


.search__head {
    background-color: #83bcaf;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    text-align: center;
    font-size: 28px;
    color: #4c4948;
    padding: 16px 3%;
}


.search__box {
    background-color: #e6f0ee;
    padding: 20px 6%;
}

.search__row {
    display: flex;
}

.search__row-label {
    min-width: 234px;
    font-size: 16px;
    color: #7f8080;
}

.search__row-field {
    width: calc(96% - 234px);
}

.search__check-item {
    font-size: 14px;
    font-feature-settings: "palt";
    color: #4c4948;
    display: inline-flex;
    align-items: center;
    width: 135px;
}

.search__check-txt {
    margin-left: 8px;
}

.search__check {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 0;
}

.search__row:not(:last-child) {
    margin-bottom: 38px;
}


.search__box-btns {
    margin-top: 30px;
    display: flex;
    justify-content: center;
    gap: 20px 20px;
}


.search__box-reset,
.search__box-btn input {
    background-color: #137eb5;
    color: #fff;
    text-align: center;
    height: 56px;
    max-width: 265px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    transition: opacity 0.3s;
}

.search__box-reset {
    background-color: #ee8191;
}

.search__box-btn {
    max-width: 265px;
    width: 100%;
}

.search__box-reset:hover,
.search__box-btn input:hover {
    opacity: 0.8;
}


#content {
    padding-bottom: 200px;
}

.content__area:not(:last-child) {
    margin-bottom: 100px;
}

.content__heading {
    font-size: 24px;
    font-weight: bold;
    padding-bottom: 10px;
    border-bottom: 2px solid #4c4948;
    position: relative;
    margin-bottom: 30px;
}

.content__heading::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    display: block;
    width: 94px;
    height: 2px;
}

.content__area--sapporo .content__heading {
    color: #ee8191;
}

.content__area--asahikawa .content__heading {
    color: #036eb8;
}

.content__area--hakodate .content__heading {
    color: #42734f;
}

.content__area--obihiro .content__heading {
    color: #ffb340;
}

.content__area--kushiro .content__heading {
    color: #a48b78;
}

.content__area--tomakomai .content__heading {
    color: #ed703d;
}

.content__area--otaru .content__heading {
    color: #90b83d;
}

.content__area--kitami .content__heading {
    color: #3ea6b2;
}

.content__area--muroran .content__heading {
    color: #7976b6;
}

.content__area--sapporo .content__heading::after {
    background-color: #ee8191;
}

.content__area--asahikawa .content__heading::after {
    background-color: #036eb8;
}

.content__area--hakodate .content__heading::after {
    background-color: #42734f;
}

.content__area--obihiro .content__heading::after {
    background-color: #ffb340;
}

.content__area--kushiro .content__heading::after {
    background-color: #a48b78;
}

.content__area--tomakomai .content__heading::after {
    background-color: #ed703d;
}

.content__area--otaru .content__heading::after {
    background-color: #90b83d;
}

.content__area--kitami .content__heading::after {
    background-color: #3ea6b2;
}

.content__area--muroran .content__heading::after {
    background-color: #7976b6;
}


.fair-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 28px 0;
}

.fair-list__item {
    border: 3px solid #f2f2f2;
    border-radius: 30px;
    overflow: hidden;
    width: 48.8%;
}

.fair-list__item a {
    transition: opacity 0.3s;
}

.fair-list__item a:hover {
    opacity: 0.8;
}

.fair-list__item-head {
    color: #fff;
    font-size: 21px;
    line-height: 1.4;
    padding: 15px 5.7%;
    font-weight: bold;
}

.content__area--sapporo .fair-list__item-head {
    background-color: #ee8191;
}

.content__area--asahikawa .fair-list__item-head {
    background-color: #036eb8;
}

.content__area--hakodate .fair-list__item-head {
    background-color: #42734f;
}

.content__area--obihiro .fair-list__item-head {
    background-color: #ffb340;
}

.content__area--kushiro .fair-list__item-head {
    background-color: #a48b78;
}

.content__area--tomakomai .fair-list__item-head {
    background-color: #ed703d;
}

.content__area--otaru .fair-list__item-head {
    background-color: #90b83d;
}

.content__area--kitami .fair-list__item-head {
    background-color: #3ea6b2;
}

.content__area--muroran .fair-list__item-head {
    background-color: #7976b6;
}

.fair-list__item-box {
    padding-top: 18px;
    padding-bottom: 25px;
    padding-left: 4.7%;
    padding-right: 4.7%;
}

.fair-list__item-names {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 4px;
}

.fair-list__icons {
    display: flex;
    margin-left: 10px;
    margin-bottom: 18px;
}

.fair-list__iconsItem {
    display: block;
    width: 30px;
}

.fair-list__item-name {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.4;
    color: #4c4948;
    margin-bottom: 18px;
}

.fair-list__wrap1 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}

.fair-list__wrap1-content1 {
    width: 54%;
}

.fair-list__wrap1-content2 {
    width: 38.5%;
}

.fair-list__ph img {
    object-fit: cover;
    aspect-ratio: 209/157;
}

.fair-list__cat {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 12px;
}

.fair-list__cat-cook {
    background-color: #ed9027;
    display: inline-flex;
    justify-content: center;
    border-radius: 5px;
    color: #fff;
    font-size: 12px;
    font-weight: 300;
    padding: 4px 14px;
}

.fair-list__cat-area {
    display: inline-flex;
    justify-content: center;
    border-radius: 5px;
    color: #fff;
    font-size: 12px;
    font-weight: 300;
    padding: 4px 14px;
}

.fair-list__item-period {
    display: flex;
    margin-top: 18px;
    font-size: 14px;
    line-height: 1.4;
}

.fair-list__item-periodLabel {
    min-width: 106px;
    font-weight: bold;
}

.fair-list__item-periodDay {
    width: calc(100% - 106px);
}

.content__area--sapporo .fair-list__cat-area {
    background-color: #ee8191;
}

.content__area--asahikawa .fair-list__cat-area {
    background-color: #036eb8;
}

.content__area--hakodate .fair-list__cat-area {
    background-color: #42734f;
}

.content__area--obihiro .fair-list__cat-area {
    background-color: #ffb340;
}

.content__area--kushiro .fair-list__cat-area {
    background-color: #a48b78;
}

.content__area--tomakomai .fair-list__cat-area {
    background-color: #ed703d;
}

.content__area--otaru .fair-list__cat-area {
    background-color: #90b83d;
}

.content__area--kitami .fair-list__cat-area {
    background-color: #3ea6b2;
}

.content__area--muroran .fair-list__cat-area {
    background-color: #7976b6;
}

.fair-list__info-item {
    font-size: 12px;
    display: flex;
    line-height: 1.75;
}

.fair-list__info-item:not(:last-child) {
    margin-bottom: 2px;
}

.fair-list__info-label {
    min-width: 72px;
}

.fair-list__info-field {
    width: calc(100% - 72px);
}

.fair-list__info-url {
    color: #00a0e9;
}

.fair-list__wrap2 {
    display: flex;
    justify-content: space-between;
}

.fair-list__service {
    display: flex;
    gap: 5px 15px;
}

.fair-list__service-item {
    width: 28px;
}

.fair-list__google {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 128px;
    height: 27px;
    color: #fff;
    font-size: 13px;
    background-color: #137eb5;
    border-radius: 5px;
}

@media screen and (max-width: 1440px) {
    .top__pdf {
        top: 0px;
        right: 0;
        width: 9vw;
    }

    .top__period {
        width: 100%;
    }
}


@media screen and (max-width: 1328px) {
    .fair-inner {
        margin-left: 4%;
        margin-right: 4%;
    }
}

@media screen and (max-width: 920px) {
    .area-nav__item {
        font-size: 1.8vw;
    }
}

@media screen and (max-width: 860px) {
    .fair-list__wrap1 {
        flex-direction: column-reverse;
    }

    .fair-list__wrap1-content1 {
        width: 100%;
        margin-bottom: 20px;
    }

    .fair-list__wrap1-content2 {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 20px;
    }

    .fair-list__wrap2 {
        flex-direction: column;
    }

    .fair-list__service {
        margin-bottom: 20px;
    }

    .fair-list__service {
        justify-content: center;
    }

    .fair-list__google {
        margin-left: auto;
        margin-right: auto;
    }

    .fair-list__service-item {
        width: 38px;
    }
}

@media screen and (max-width: 768px) {

    .area-nav__list {
        flex-wrap: wrap;
        border: none;
        border-radius: 0;
    }



    .area-nav__item {
        width: 50%;
        font-size: 17px;
        border-bottom: 2px #4c4948 solid;
        border-right: 2px #4c4948 solid;
    }



    .area-nav__item:nth-child(1) {
        border-top: 2px #4c4948 solid;
    }

    .area-nav__item:nth-child(2) {
        border-top: 2px #4c4948 solid;
    }

    .area-nav__item:nth-child(2n+1) {
        border-left: 2px #4c4948 solid;
    }


    .intro-service {
        max-width: 280px;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .intro-service li:nth-child(2) {
        margin-right: 7px;
    }

    .intro-service li:not(:last-child) {
        margin-bottom: 10px;
    }

    .search__row {
        flex-direction: column;
    }

    .search__row-label {
        margin-bottom: 15px;
    }

    .search__check-item {
        width: 50%;
    }

    .search__row-field {
        width: 100%;
    }


}

@media screen and (max-width: 640px) {
    .fair-list__item {
        width: 100%;
    }

    .fair-list__item-head {
        font-size: 18px;
    }

    .search__box-btns {
        flex-direction: column;
    }

    .search__box-btn {
        max-width: 100%;
    }

    .search__box-reset,
    .search__box-btn input {
        max-width: 100%;
    }
}