
@charset "UTF-8";

#gp_main {
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.5;
}

#gp_main *,
#gp_main *:before,
#gp_main *:after {
    box-sizing: border-box;
}

#gp_main img {
    vertical-align: bottom;
}

#gp_main a:link,
a:visited,
a:hover,
a:active {
    color: #426C7A;
    text-decoration: none;
}

#gp_main strong {
    font-weight: bold;
}
#gp_main span {
    font-weight: inherit;
}

/* ==============================
ロゴ・タイトル
============================== */
#gp_main h1 {
    position: relative;
    text-align: center;
    padding: 30px 0;
}

#gp_main h1:before,
#gp_main h1:after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    left: 0;
    height: 5px;
    background-repeat: repeat-x;
    background-size: 0.6em 0.25em, 1.6em 0.25em, 3.4em 0.25em, 3.6em 0.25em;
    background-position: right bottom;
    background-image:
        radial-gradient(0.2em 0.15em at center center, rgba(204, 116, 85, 1), rgba(204, 116, 85, 0.1)),
        radial-gradient(0.5em 0.15em at center center, rgba(204, 116, 85, 1), rgba(204, 116, 85, 0.0)),
        radial-gradient(1em 0.15em at center center, rgba(204, 116, 85, 1), rgba(204, 116, 85, 0.1)),
        radial-gradient(7em 0.1em at center center, rgba(204, 116, 85, 1), rgba(204, 116, 85, 0.0));
}

#gp_main h1:before {
    top: 0;
}

#gp_main h1:after {
    bottom: 0;
}

#gp_main h1 img {
    width: 500px;
}

@media screen and (max-width: 767px) {
    #gp_main h1 {
        padding: 20px 0;
    }

    #gp_main h1 img {
        width: 100%;
        max-width: 62%;
    }

}


/* ==============================
SNSボタン
============================== */
#gp_main .sns_block {
    margin-top: 1em;
}

@media screen and (max-width: 767px) {
    #gp_main .sns_block {
        margin-bottom: 4px;
    }
}


/* ==============================
キービジュアル
============================== */
#gp_main .kv {
    margin-bottom: 24px;
}

#gp_main .kv .copyright {
    font-size: 10px;
    text-align: right;
    padding-top: 4px;
}

@media screen and (max-width: 1024px) {
    #gp_main .kv .copyright {
        margin-right: 4px;
    }
}

@media screen and (max-width: 767px) {
    #gp_main .kv {
        margin-bottom: 16px;
    }
}


/* ==============================
イントロダクション
============================== */
#gp_main .intro {
    color: #C11637;
    font-size: 24px;
    text-align: center;
    margin-bottom: 24px;
}

@media screen and (max-width: 767px) {
    #gp_main .intro {
        font-size: 20px;
    }
}

@media screen and (max-width: 480px) {
    #gp_main .intro {
        font-size: 14px;
        margin-bottom: 16px;
    }
}

/*  221021 update   */
#gp_main .intro_sales {
    color: #C11637;
    font-size: 16px;
    text-align: center;
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    #gp_main .intro_sales {
        font-size: 12px;
    }
}

@media screen and (max-width: 480px) {
    #gp_main .intro_sales {
        font-size: 11px;
        margin-bottom: 16px;
        padding-left: 20px;
        padding-right: 20px;
    }

}

/*　 221021 update   */


/* ==============================
アンカーナビ
============================== */
#gp_main nav .page_navi {
    display: flex;
    justify-content: space-between;
    padding: 0 40px;
    margin-bottom: 20px;
	font-feature-settings: 'palt' 1;
	letter-spacing: 0.025em;
}
#gp_main nav .page_navi.col_4,
#gp_main nav .page_navi.col_5 {
    padding: 0 0;
}

#gp_main nav .page_navi a {
    position: relative;
    width: calc((100% - 48px) / 3);
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background-color: #D2F0FA;
    border-radius: 6px;
    padding: 12px 0 28px 0;
    border: solid 1px #D2F0FA;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.35;
    color: #7A7A70;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16);
}
#gp_main nav .page_navi.col_4 a {
    width: calc((100% - 3.6%) / 4);
    font-size: 18px;
}
#gp_main nav .page_navi.col_5 a {
    width: calc((100% - 4.8%) / 5);
    font-size: 16px;
}

#gp_main nav .page_navi a:hover {
    opacity: 0.8;
}

#gp_main nav .page_navi a::after {
    position: absolute;
    font-family: 'Material Icons';
    font-size: 24px;
    content: "\e5cf";
    text-align: center;
    background-color: #FFF;
    height: 16px;
    line-height: 16px;
    bottom: 0;
    left: 0;
    width: 100%;
    border: solid 1px #D2F0FA;
}

#gp_main nav .page_navi a br.sp {
    display: none;
}

@media screen and (max-width: 1365px) {
	#gp_main nav .page_navi.col_4 a,
	#gp_main nav .page_navi.col_5 a {
		font-size: calc(16 / 1365 * 100vw);
	}
}

@media screen and (max-width: 1280px) {
    #gp_main nav .page_navi a {
        font-size: 18px;
    }
}
@media screen and (max-width: 1024px) {
	#gp_main nav .page_navi.col_4,
	#gp_main nav .page_navi.col_5 {
        padding: 0 40px;
	}
	#gp_main nav .page_navi.col_4 a,
	#gp_main nav .page_navi.col_5 a {
		font-size: calc(18 / 1024 * 100vw);
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
	}
}

@media screen and (max-width: 767px) {
    #gp_main nav .page_navi {
        padding: 0 20px;
        margin-bottom: 40px;
    }
	#gp_main nav .page_navi.col_4,
	#gp_main nav .page_navi.col_5 {
        padding: 0 20px;
		justify-content: center;
		flex-wrap: wrap;
        margin-bottom: 20px;
	}

    #gp_main nav .page_navi a {
        width: calc((100% - 32px) / 3);
        font-size: 15px;
        padding: 8px 0 24px 0;
    }

	#gp_main nav .page_navi.col_4 a {
        width: calc((100% - 3.2%) / 2);
		margin: 0 3.2% 20px 0;
		font-size: 15px;
		height: calc((3em * 1.35) + 8px + 24px);
	}
	#gp_main nav .page_navi.col_4 a:nth-child(2n),
	#gp_main nav .page_navi.col_4 a:last-child {
		margin-right: 0;
	}

	#gp_main nav .page_navi.col_5 a {
        width: calc((100% - 6.4%) / 3);
		margin: 0 3.2% 20px 0;
		font-size: 15px;
		height: calc((3em * 1.35) + 8px + 24px);
	}
	#gp_main nav .page_navi.col_5 a:nth-child(3n),
	#gp_main nav .page_navi.col_5 a:last-child {
		margin-right: 0;
	}

    #gp_main nav .page_navi a br.sp {
        display: inline;
    }
}

@media screen and (max-width: 480px) {
	#gp_main nav .page_navi.col_4 a {
		font-size:calc(14 / 375 * 100vw);
	}
	#gp_main nav .page_navi.col_5 a {
		font-size:calc(11 / 375 * 100vw);
	}
}
@media screen and (max-width: 375px) {
    #gp_main nav .page_navi a {
        font-size: 4.2vw;
    }
}

/* ==============================
コンテンツ共通
============================== */
#gp_main section {
    margin-bottom: 0;
}

#gp_main h2.small {
    font-size: 24px;
    font-weight: 500;
    border-bottom: solid 1px #7A7A70;
    padding-bottom: 8px;
    margin-bottom: 16px;
    ;
}

#gp_main h2.large {
    font-size: 32px;
    font-weight: 500;
    border-bottom: solid 2px #7A7A70;
    padding-bottom: 12px;
    margin-bottom: 24px;
    ;
}

#gp_main .note {
    font-size: 14px;
}

#gp_main ul.note li {
    margin-bottom: 4px;
    text-indent: -1em;
    padding-left: 1em;
}

#gp_main ul.note li:last-child {
    margin-bottom: 0;
}

#gp_main .inner_wrap {
    border-radius: 24px;
    border: solid 1px #968C83;
    padding: 40px;
    margin-bottom: 80px;
    overflow: hidden;
}

#gp_main .col_2 {
    display: flex;
    justify-content: space-between;
}

#gp_main .col_2 > div {
    width: calc((100% - 24px) / 2);
}

#gp_main .tag {
    display: inline-block;
    padding: 4px 16px;
    border: solid 1px #968C83;
    border-radius: 50px;
    font-size: 14px;
    margin-bottom: 8px;
}

#gp_main .btn_buy {
    margin-bottom: 24px;
}

#gp_main .btn_buy a {
    display: inline-block;
    width: 400px;
    max-width: 100%;
    text-align: center;
    color: #FFF;
    background-color: #EB8383;
    padding: 16px 8px;
    border-radius: 6px;
    font-size: 18px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16);
}

#gp_main .btn_buy a:hover {
    opacity: 0.8;
}

@media screen and (max-width: 1024px) {
    #gp_main .inner_wrap {
        border-radius: 0;
        border: none;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 767px) {
    #gp_main h2.small {
        font-size: 20px;
        padding-bottom: 4px;
        margin-bottom: 8px;
        ;
    }

    #gp_main h2.large {
        font-size: 24px;
        margin-bottom: 16px;
        ;
    }

    #gp_main .note {
        font-size: 12px;
    }

    #gp_main .inner_wrap {
        padding: 24px 20px 40px 20px;
    }

    #gp_main .col_2 {
        display: block;
    }

    #gp_main .col_2 div {
        width: 100%;
    }

    #gp_main .col_2 div:nth-child(1) {
        margin-bottom: 16px;
    }

    #gp_main .btn_buy {
        margin-bottom: 16px;
    }

    #gp_main .btn_buy a {
        font-size: 16px;
        max-width: calc(100% - 32px);
    }
}

/* ==============================
アナウンス
============================== */
#gp_main .announce {
    background: #fafafa;
    padding: 24px;
    border: solid 1px #7A7A70;
    margin-bottom: 40px;
}

#gp_main .announce .heading {
    font-size: 20px;
    font-weight: bold;
    color: #C11637;
    margin-bottom: 8px;
}

@media screen and (max-width: 1024px) {
    #gp_main .announce {
        margin: 0 40px 40px 40px;
    }
}

@media screen and (max-width: 768px) {
    #gp_main .announce {
        margin: 0 20px 40px 20px;
        padding: 16px;
    }

    #gp_main .announce .heading {
        font-size: 18px;
    }
}


/* ==============================
インフォメーション
============================== */
#gp_main .info {
    background-color: #FFF;
}

#gp_main .info .info_wrap {
    margin-bottom: 24px;
}

#gp_main .info .info_wrap:last-child {
    margin-bottom: 0;
}

#gp_main .info .info_wrap h3 {
    display: inline-block;
    padding: 4px 16px;
    border: solid 1px #968C83;
    border-radius: 50px;
    font-size: 14px;
    margin: 4px 0;
}

#gp_main .info .salesInfo .emphasis {
    font-size: 20px;
    margin-bottom: 8px;
    font-weight: bold;
}

#gp_main .info .salesInfo .emphasis li {
    font-weight: bold;
    margin-bottom: 4px;
}

@media screen and (max-width: 767px) {
    #gp_main .info .salesInfo .emphasis {
        font-size: 18px;
    }
}


/* ==============================
チケット一覧
============================== */
#gp_main .gp_tickets .inner_wrap {
    background-color: #FFFCD9;
    padding: 0;
}

#gp_main .gp_tickets .inner_wrap h2 {
    font-size: 40px;
    background-color: #EEE;
    text-align: center;
    padding: 16px 0;
}

#gp_main .gp_tickets .inner_wrap .tickets_wrap {
    padding: 75px 40px 40px 40px;
}

#gp_main .gp_tickets .inner_wrap .tickets_wrap article {
    background-color: #FFF;
    border-radius: 12px;
    padding: 0 24px 0 24px;
    margin: 0 0 75px 0;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.13),
        0 -1px 2px rgba(0, 0, 0, 0.04),
        1px 0 2px rgba(0, 0, 0, 0.04),
        -1px 0 2px rgba(0, 0, 0, 0.04);
}

#gp_main .gp_tickets .inner_wrap .tickets_wrap article:last-child {
    margin-bottom: 0;
}

#gp_main .gp_tickets .inner_wrap .tickets_wrap article .area_inner {
    position: relative;
    top: -35px;
}

#gp_main .gp_tickets .inner_wrap .tickets_wrap article h3 {
    margin: 0 auto 40px auto;
    padding: 12px;
    border: 2px solid #000;
    border-bottom: 4px solid #000;
    border-right: 4px solid #000;
    border-radius: 40px 10px 40px 10px/10px 40px 10px 40px;
    background-color: #cc7455;
    background-image: url(https://cdn.l-tike.com/bw-ticket/ghibli/ghibli-park/img/bg_wood01-min.png);
    background-repeat: repeat-x;
    background-position: center center;
    color: #FFF;
    font-size: 32px;
    font-weight: 500;
    text-align: center;
    text-shadow: -1px -1px 1px #000,
        -1px 0px 1px #000,
        -1px 1px 1px #000,
        0px -1px 1px #000,
        0px 1px 1px #000,
        1px -1px 1px #000,
        1px 0px 1px #000,
        1px 1px 1px #000;
    line-height: 1.25;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.025em;
}

#gp_main .gp_tickets article .summary {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}

#gp_main .gp_tickets article .summary > div {
    width: calc((100% - 24px) / 2);
}

#gp_main .gp_tickets article .summary .area_time li {
    margin-bottom: 8px;
    text-indent: -3em;
    padding-left: 3em;
}

#gp_main .gp_tickets article .summary .area_time li:last-child {
    margin-bottom: 0;
}

#gp_main .gp_tickets article h4 {
    font-size: 24px;
    font-weight: 500;
    border-bottom: solid 1px #7A7A70;
    padding-bottom: 8px;
    margin-bottom: 16px;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.025em;;
}

#gp_main .gp_tickets article h5 {
    font-size: 20px;
    font-weight: 500;
    border-bottom: solid 1px #7A7A70;
    padding-bottom: 8px;
    margin-bottom: 16px;
}

#gp_main .gp_tickets article table.price_list {
    width: 100%;
    border-top: 1px solid #968c83;
    border-left: 1px solid #968c83;
    border-collapse: collapse;
    /*table-layout: fixed;*/
    margin: 8px 0 24px 0;
}

#gp_main .gp_tickets article table.price_list th,
#gp_main .gp_tickets article table.price_list td {
    border-right: 1px solid #968c83;
    border-bottom: 1px solid #968c83;
    padding: 12px 8px;
    text-align: center;
    vertical-align: middle;
}

#gp_main .gp_tickets article table.price_list thead th {
    background-color: #EEE;
}

#gp_main .gp_tickets article table.price_list thead th .age {
    font-size: 12px;
}

#gp_main .gp_tickets article table.price_list tbody th {
    background-color: #FAFAFA;
}

#gp_main .gp_tickets article table.price_list tbody td {
    white-space: nowrap;
}

#gp_main .gp_tickets article table.price_list tbody td .note {
    font-size: 12px;
}

#gp_main .gp_tickets article table.price_list.list01 tbody th {
    width: 34%;
}

#gp_main .gp_tickets article table.price_list.list01 tbody td {
    width: 33%;
}

#gp_main .gp_tickets article table.price_list.list02 tbody td {
    width: 50%;
}

#gp_main .gp_tickets .emphasis {
    font-size: 20px;
    margin-bottom: 8px;
    font-weight: bold;
}

#gp_main .gp_tickets .emphasis li {
    font-weight: bold;
    margin-bottom: 4px;
}

#gp_main .gp_tickets .btnArea .btn_ticket-buy {
    font-size: 18px;
    width: 80%;
    margin: 0 auto;
    display: block;
    padding: 16px 0;
    color: #fff;
    text-align: center;
    border-radius: 4px;
    background-color: #eb8383;
    box-shadow: 0 2px 4px rgb(0 0 0 / 16%);
}

#gp_main .gp_tickets .btnArea.col-2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: -16px;
}

#gp_main .gp_tickets .btnArea.col-2 .btn_ticket-buy {
    width: calc((100% - 16px) / 2);
    padding: 8px 0;
    margin: 16px 16px 0 0;
    line-height: 1.3;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.025em;
}

#gp_main .gp_tickets .btnArea.col-2 .btn_ticket-buy:nth-child(2n),
#gp_main .gp_tickets .btnArea.col-2 .btn_ticket-buy:last-child {
    margin-right: 0;
}

@media screen and (max-width: 1280px) {
    #gp_main .gp_tickets .inner_wrap .tickets_wrap article h3 {
        margin-bottom: 24px;
    }

    #gp_main .gp_tickets article .summary {
        display: block;
        margin-bottom: 24px;
    }

    #gp_main .gp_tickets article .summary > div {
        width: 100%;
        margin-bottom: 24px;
    }

    #gp_main .gp_tickets article .summary > div.area_img {
        text-align: center;
        margin-bottom: 16px;
    }

    #gp_main .gp_tickets article .summary > div.area_img02 {
        display: block;
        margin-bottom: 16px;
    }
}

@media screen and (max-width: 767px) {
    #gp_main .gp_tickets .inner_wrap h2 {
        font-size: 32px;
        padding: 8px 0;
    }

    #gp_main .gp_tickets .inner_wrap .tickets_wrap {
        padding: 24px 20px 40px 20px;
        margin-top: 30px;
    }

    #gp_main .gp_tickets .inner_wrap .tickets_wrap article {
        padding: 0 16px 0 16px;
        margin: 0 0 54px 0;
    }

    #gp_main .gp_tickets .inner_wrap .tickets_wrap article:last-child {
        margin-bottom: 0;
    }

    #gp_main .gp_tickets .inner_wrap .tickets_wrap article h3 {
        font-size: 24px;
        margin-bottom: 16px;
    }

    #gp_main .gp_tickets .inner_wrap .tickets_wrap article .area_inner {
        top: -30px;
    }

    #gp_main .gp_tickets article h4 {
        font-size: 20px;
    }

    #gp_main .gp_tickets article h5 {
        font-size: 18px;
        margin-bottom: 8px;
    }

    #gp_main .gp_tickets article table.price_list th,
    #gp_main .gp_tickets article table.price_list td {
        font-size: 14px;
        padding: 12px 4px;
    }

    #gp_main .gp_tickets article table.price_list {
        /*table-layout: auto;*/
        margin-bottom: 16px;
    }

    #gp_main .gp_tickets article table.price_list thead th .age {
        font-size: 11px;
    }

    #gp_main .gp_tickets article table.price_list tbody td .note {
        font-size: 11px;
    }

    #gp_main .gp_tickets article table.price_list.list01 tbody th {
        word-break: break-word;
        overflow-wrap: break-word;
    }

    #gp_main .gp_tickets .emphasis {
        font-size: 18px;
    }

    #gp_main .gp_tickets .btnArea .btn_ticket-buy {
        font-size: 18px;
        width: 90%;
    }

    #gp_main .gp_tickets .btnArea.col-2 {
        display: block;
        margin-top: 24px;
    }

    #gp_main .gp_tickets .btnArea.col-2 .btn_ticket-buy {
        width: 90%;
        margin: 16px auto 0 auto;
    }

    #gp_main .gp_tickets .btnArea.col-2 .btn_ticket-buy:nth-child(2n),
    #gp_main .gp_tickets .btnArea.col-2 .btn_ticket-buy:last-child {
        margin-right: auto;
    }
}

@media screen and (max-width: 374px) {
    #gp_main .gp_tickets .inner_wrap .tickets_wrap article h3 {
        font-size: 6.4vw;
    }
    #gp_main .gp_tickets article table.price_list th,
    #gp_main .gp_tickets article table.price_list td {
        font-size: 12px;
    }
}


/* ==============================
アクセス
============================== */
#gp_main .gp_access .inner_wrap {
    background-color: #FFF;
}

#gp_main .gp_access .map {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 50%;
    margin-bottom: 16px;
}

#gp_main .gp_access .map iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 767px) {
    #gp_main .gp_access .map {
        padding-top: 100%;
    }
}


/* ==============================
注意事項
============================== */
#gp_main .precautions {
    margin-bottom: 40px;
}

#gp_main .precautions li {
    margin-bottom: 16px;
}

#gp_main .precautions li:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    #gp_main .precautions {
        margin-bottom: 24px;
    }
}

/* --------------------
アコーディオン
-------------------- */
#gp_main .acd-check {
    display: none;
}

#gp_main .acd-label {
    position: relative;
    display: block;
    cursor: pointer;
    border: solid 1px #7A7A70;
    padding: 8px 16px;
    background: #FFF;
}

#gp_main .acd-label::after {
    position: absolute;
    content: "▼";
    display: block;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    margin: auto;
}

#gp_main .acd-check:checked + .acd-label::after {
    content: "▲";
}

#gp_main .acd-content {
    height: 0;
    padding: 16px 0 0 0;
    transition: all .5s;
    overflow: hidden;
    opacity: 0;
}

#gp_main .acd-check:checked + .acd-label + .acd-content {
    height: auto;
    transition: all .5s;
    opacity: 1;
}


/* ==============================
愛知県観光
============================== */
#gp_main .aichi-wrap {
    background-color: #f7fce3;
    border-radius: 0 0 24px 24px;
}

#gp_main .aichi-wrap h2.wood {
    margin: 0 auto;
    padding: 12px;
    border: 2px solid #000;
    border-radius: 4px;
    background-color: #875836;
    background-image: url(https://cdn.l-tike.com/bw-ticket/ghibli/ghibli-park/img/bg_wood01-min.png);
    background-repeat: repeat-x;
    background-position: center center;
    color: #FFF;
    font-size: 32px;
    font-weight: 500;
    text-align: center;
    text-shadow: -1px -1px 1px #000,
        -1px 0px 1px #000,
        -1px 1px 1px #000,
        0px -1px 1px #000,
        0px 1px 1px #000,
        1px -1px 1px #000,
        1px 0px 1px #000,
        1px 1px 1px #000;
    line-height: 1.25;
}

#gp_main .aichi-wrap h2.wood .inlineBLK {
    font-weight: inherit;
}

#gp_main .aichi-wrap .inner_wrap {
    border: none;
}

#gp_main .aichi-wrap .inner_wrap .lead {
    margin-bottom: 40px;
    font-size: 20px;
    font-weight: 500;
}

#gp_main .aichi-wrap .btnArea .btn_ticket-buy {
    font-size: 20px;
    width: 80%;
    margin: 0 auto;
    display: block;
    padding: 16px 8px;
    color: #fff;
    text-align: center;
    border-radius: 4px;
    background-color: #eb8383;
    box-shadow: 0 2px 4px rgb(0 0 0 / 16%);
}

@media screen and (max-width: 1280px) {
    #gp_main .aichi-wrap h2.wood .inlineBLK {
        display: block;
        text-indent: -1em;
    }
}

@media screen and (max-width: 1024px) {
    #gp_main .aichi-wrap {
        border-top: solid 40px #fff;
        margin: 0 auto 40px auto;
        border-radius: 0;
    }

    #gp_main .aichi-wrap h2.wood {
        margin: 0 40px;
    }
}

@media screen and (max-width: 767px) {
    #gp_main .aichi-wrap h2.wood {
        margin: 0 24px;
        font-size: 24px;
    }

    #gp_main .aichi-wrap .btnArea .btn_ticket-buy {
        font-size: 18px;
        width: 90%;
    }

    #gp_main .aichi-wrap .inner_wrap .lead {
        margin-bottom: 24px;
        font-size: 18px;
    }
}

@media screen and (max-width: 600px) {
    #gp_main .aichi-wrap h2.wood {
        font-size: 20px;
    }

    #gp_main .aichi-wrap .btnArea .btn_ticket-buy {
        font-size: 16px;
    }
}

@media screen and (max-width: 374px) {
    #gp_main .aichi-wrap h2.wood {
        font-size: 5.4vw;
    }

    #gp_main .aichi-wrap .btnArea .btn_ticket-buy {
        font-size: 4.4vw;
        font-feature-settings: "palt";
    }
}


/* --------------------
興行リスト
-------------------- */
#gp_main .aichi-wrap .item-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

#gp_main .aichi-wrap .item-list::after {
    content: "";
    display: block;
    width: calc((100% - 32px) / 3);
}

#gp_main .aichi-wrap .item-list a {
    display: block;
    width: calc((100% - 32px) / 3);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.14), 0 2px 1px rgba(0, 0, 0, 0.12), 0 1px 3px rgba(0, 0, 0, 0.20);
    border-radius: 20px;
    margin-bottom: 24px;
    background-color: #FFF;
}

#gp_main .aichi-wrap .item-list a .img-wrap {
    display: block;
    width: 100%;
    height: 0;
    padding-top: 75%;
    /* 表示枠の 縦÷横×100 */
    position: relative;
    overflow: hidden;
    border-radius: 20px 20px 0 0;
}

#gp_main .aichi-wrap .item-list a .img-wrap::before {
    background-color: rgba(0, 0, 0, 0.7);
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}

#gp_main .aichi-wrap .item-list a .img-wrap > img {
    position: absolute;
    top: 0;
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
    -webkit-filter: blur(2px);
    filter: blur(2px);
}

#gp_main .aichi-wrap .item-list a .img-wrap .slideImg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

#gp_main .aichi-wrap .item-list a .img-wrap .slideImg > img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#gp_main .aichi-wrap .item-list a .text-wrap {
    padding: 12px 16px 16px 16px;
    color: #7A7A70;
    font-size: 14px;
}

#gp_main .aichi-wrap .item-list a .text-wrap h3 {
    font-weight: 700;
    margin-bottom: 8px;
    font-size: 16px;
}

#gp_main .aichi-wrap .item-list a .text-wrap .place li {
    display: inline-block;
    margin: 8px 0.5em 0 0;
    border: solid 1px #7A7A70;
    height: 24px;
    line-height: 22px;
    padding: 0px 8px;
    border-radius: 2px;
}

#gp_main .aichi-wrap .item-list a .text-wrap .tag {
    border: none;
    margin: 0;
    padding: 0;
}

#gp_main .aichi-wrap .item-list a .text-wrap .tag li {
    display: inline-block;
    margin: 8px 0.5em 0 0;
    border: solid 1px #7A7A70;
    height: 24px;
    line-height: 22px;
    padding: 0px 8px;
    border-radius: 2px;
}

#gp_main .aichi-wrap .item-list a .text-wrap .keyword li {
    display: inline-block;
    margin: 0 0.5em 8px 0;
    background-color: #7A7A70;
    color: #fff;
    font-size: 12px;
    height: 24px;
    line-height: 24px;
    padding: 0 8px;
    border-radius: 2px;
}

@media screen and (max-width: 768px) {
    #gp_main .aichi-wrap .item-list::after {
        width: calc((100% - 32px) / 3);
    }

    #gp_main .aichi-wrap .item-list a {
        width: calc((100% - 32px) / 3);
        margin-bottom: 16px;
    }
}

@media screen and (max-width: 600px) {
    #gp_main .aichi-wrap .item-list {
        display: block;
    }

    #gp_main .aichi-wrap .item-list a {
        width: 100%;
        max-width: 400px;
        margin: 0 auto 16px auto;
    }

}


/* ==============================
調整
============================== */
#gp_main .mbSS {
    margin-bottom: 4px !important;
}

#gp_main .mbS {
    margin-bottom: 8px !important;
}

#gp_main .mbM {
    margin-bottom: 16px !important;
}

#gp_main .mbL {
    margin-bottom: 24px !important;
}

#gp_main .mbLL {
    margin-bottom: 40px !important;
}

#gp_main .fzS {
    font-size: 0.875em !important;
}

#gp_main .fzL {
    font-size: 1.25em !important;
}

.pcblock02 {
    display: block !important;
}

.pcinline02 {
    display: inline !important;
}

.spinline02,
.spblock02 {
    display: none !important;
}

.underline {
    text-decoration: underline !important;
}


@media screen and (max-width: 767px) {
    #gp_main .spmbSS {
        margin-bottom: 4px !important;
    }

    #gp_main .spmbS {
        margin-bottom: 8px !important;
    }

    #gp_main .spmbM {
        margin-bottom: 16px !important;
    }

    #gp_main .spmbL {
        margin-bottom: 24px !important;
    }

    #gp_main .spmbLL {
        margin-bottom: 40px !important;
    }

    .pcblock02,
    .pcinline02 {
        display: none !important;
    }

    .spblock02 {
        display: block !important;
    }

    .spinline02 {
        display: inline !important;
    }
}



