@charset "utf-8";

main { overflow: hidden; }

/*============================
ClearFix
============================*/
.clearFix::after { clear: both; display: block; content: ""; height: 0; line-height: 0; }

/*============================
module
============================*/ 
.md_container { width: 1240px; padding: 0 20px; margin: 0 auto; position: relative; }

.md_br_pc { display: block; }
.md_br_sp { display: none; }

#topPanelArea { position: relative; width: 100%; text-align: center; }
#topPanelArea img { min-width: 1240px; width: 100%; height: auto; }

/*============================
#eventScheduleArea
============================*/
#eventScheduleArea { margin-top: 80px; }
#eventScheduleArea .topArea { display: flex; align-items: center; justify-content: start; }
#eventScheduleArea .topArea .title { position: relative; font-family: 'Hiragino Kaku Gothic ProN'; font-size: 3.125em; font-weight: 600; margin-right: 60px; }
#eventScheduleArea .topArea .title:after { content: ''; position: absolute; left: 0; bottom: -15px; width: 100%; height: 5px; background-color: #000; }
#eventScheduleArea .topArea .copy { margin-top: 10px; font-family: 'Hiragino Kaku Gothic ProN'; font-size: 1.125em; }
#eventScheduleArea .subTitle { margin-top: 80px; font-size: 1.5em; font-weight: bold; }
#eventScheduleArea ul { margin-top: 40px; }
#eventScheduleArea ul li { display: inline-block; margin-top: 60px; }
#eventScheduleArea ul li:first-child { margin-top: 0; }
#eventScheduleArea ul li .image { float: left; width: 400px; height: 260px; }
#eventScheduleArea ul li .image img { width: 100%; height: auto; }
#eventScheduleArea ul li .content { float: right; width: 740px; margin-left: 60px; }
#eventScheduleArea ul li:nth-child(3) .content { margin-top: 30px; }
#eventScheduleArea ul li:nth-child(4) .content { margin-top: 30px; }
#eventScheduleArea ul li .content .name { position: relative; margin-left: 30px; font-family: 'Hiragino Kaku Gothic ProN'; font-weight: 600; font-size: 1.625em; }
#eventScheduleArea ul li:nth-child(1) .content .name:before { content: ''; position: absolute; left: -30px; top: 50%; transform: translateY(-50%); border: 4px solid #1eb2de; width: 20px; height: 20px; border-radius: 50%; box-sizing: border-box; }
#eventScheduleArea ul li:nth-child(2) .content .name:before { content: ''; position: absolute; left: -30px; top: 50%; transform: translateY(-50%); border: 4px solid #adb62c; width: 20px; height: 20px; border-radius: 50%; box-sizing: border-box; }
#eventScheduleArea ul li:nth-child(3) .content .name:before { content: ''; position: absolute; left: -30px; top: 50%; transform: translateY(-50%); border: 4px solid #eda927; width: 20px; height: 20px; border-radius: 50%; box-sizing: border-box; }
#eventScheduleArea ul li:nth-child(4) .content .name:before { content: ''; position: absolute; left: -30px; top: 50%; transform: translateY(-50%); border: 4px solid #eb733b; width: 20px; height: 20px; border-radius: 50%; box-sizing: border-box; }
#eventScheduleArea ul li .content .text { margin-top: 30px; font-size: 1.25em; }
#eventScheduleArea ul li .content .text .sub { margin-top: 10px; }
#eventScheduleArea ul li .content .text .sub .date { display: inline-block; font-size: 0.9125em; }
#eventScheduleArea ul li .content .text .sub .date span { font-weight: 600; }
#eventScheduleArea ul li .content .text .sub .place { display: inline-block; margin-left: 25px; font-size: 0.9125em; }
#eventScheduleArea ul li .content .text .sub .place span { font-weight: 600; }
#eventScheduleArea ul li .content .button { margin-top: 30px; }
#eventScheduleArea ul li .content .button a { display: inline-block; width: 340px; padding: 17px 0 16px; background-color: #282828; text-align: center; }
#eventScheduleArea ul li .content .button a span { font-size: 1.125em; font-weight: 600; color: #fff; }
#eventScheduleArea ul li .content .button em { display: block; color: #777; margin-top: 20px; font-style: normal; }
#eventScheduleArea ul li .content .detail {}
#eventScheduleArea ul li .content .detail ul { margin-top: 10px; }
#eventScheduleArea ul li .content .detail ul li { display: flex; vertical-align: middle; align-items: center;  margin-top: 20px; }
#eventScheduleArea ul li .content .detail ul li .image { width: 110px; height: 70px; }
#eventScheduleArea ul li .content .detail ul li .image img { width: 100%; height: auto; }
#eventScheduleArea ul li .content .detail ul li .venue { margin-left: 20px; font-weight: 600; font-size: 1.125em; }
#eventScheduleArea ul li .content .detail ul li .copy { margin-left: 30px; }
#eventScheduleArea ul li#content03 .content .text .sub .place { margin-left: 0; }
#eventScheduleArea .schedule { margin-top: 80px; width: 1240px; padding: 40px 0; background-color: #fafafa; border: 1px solid #ddd; }
#eventScheduleArea .schedule .image { text-align: center; }
#eventScheduleArea .schedule .image table { margin: 0 auto; }
#eventScheduleArea .schedule .image table th { width: 250px; font-weight: bold; text-align: right; vertical-align: middle; font-size: 1em; padding-right: 10px; }
#eventScheduleArea .schedule .image table th a { text-decoration: underline; }
#eventScheduleArea .schedule .image table td { padding: 8px 0; }
#eventScheduleArea .schedule .image table td img { max-width: 100%; height: auto; }

/*============================
#bannerArea
============================*/
#bannerArea { margin-top: 100px; padding: 55px 0 45px 0; background-color: #f1eee7; }
#bannerArea .banner { margin: 0 auto; width: 800px; height: 200px; }
#bannerArea .banner a { display: inline-block; }
#bannerArea .banner a img { width: 100%; height: auto; }
#bannerArea .text { text-align: center; margin-top: 15px; font-size: 1.125em; font-family: 'Hiragino Kaku Gothic ProN'; }

/*============================
#hostStoryArea
============================*/
#hostStoryArea { margin-top: 100px; padding-bottom: 110px; }
#hostStoryArea .topArea {}
#hostStoryArea .topArea .title { display: inline; position: relative; font-family: 'Hiragino Kaku Gothic ProN'; font-size: 3.125em; font-weight: 600; }
#hostStoryArea .topArea .title:after { content: ''; position: absolute; left: 0; bottom: -15px; width: 100%; height: 5px; background-color: #000; }
#hostStoryArea .topArea .copy { display: inline-block; margin: 10px 0 0 60px; font-family: 'Hiragino Kaku Gothic ProN'; font-size: 1.125em; }
#hostStoryArea .button { text-align: center; margin-top: 1px; }
#hostStoryArea .button a { display: inline-block; width: 340px; padding: 16px 0 15px; border: 2px solid #000; box-sizing: border-box; }
#hostStoryArea .button a span { font-weight: 600; font-size: 1.125em; }
#hostStoryArea #contents .article { opacity: 1!important; }

/*============================
#wideTourArea
============================*/
#wideTourArea { padding: 100px 0; background-color: #eee; }
#wideTourArea .topArea { display: flex; align-items: center; justify-content: start; }
#wideTourArea .topArea .title { position: relative; font-family: 'Hiragino Kaku Gothic ProN'; font-size: 3.125em; font-weight: 600; margin-right: 60px; }
#wideTourArea .topArea .title:after { content: ''; position: absolute; left: 0; bottom: -15px; width: 100%; height: 5px; background-color: #000; }
#wideTourArea .topArea .copy { display: inline-block; margin-top: 10px; font-family: 'Hiragino Kaku Gothic ProN'; font-size: 1.125em; }
#wideTourArea .inner { margin-top: 60px; display: flex; justify-content: space-between; }
#wideTourArea .inner .truekansai { position: relative; width: 590px; height: 480px; background-color: #fff; }
#wideTourArea .inner .truekansai .catch { text-align: center; margin-top: 35px; }
#wideTourArea .inner .truekansai .catch span { position: relative; display: inline-block; padding: 0 20px; font-family: 'Hiragino Kaku Gothic ProN'; font-weight: 600; font-size: 1.25em; letter-spacing: 0.1em; }
#wideTourArea .inner .truekansai .catch span::before { content: ""; position: absolute; left: 0; top: 50%; transform: translateY(-50%) rotate(-16deg);  width: 1px; height: 30px; background: #222; }
#wideTourArea .inner .truekansai .catch span::after { content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(16deg);  width: 1px; height: 30px; background: #222; }
#wideTourArea .inner .truekansai .bubble { position: absolute; left: 40px; width: 60px; height: 60px; border-radius: 50%; background-color: #ff385c; }
#wideTourArea .inner .truekansai .bubble span { position: absolute; left: 50%; top: 53%; transform: translate(-50%,-50%); width: 75%; color: #fff; font-size: 0.75em; font-weight: 600; }
#wideTourArea .inner .truekansai .bubble span::after { content: ""; position: absolute; left: 45px; bottom: -8px; width: 0; height: 0; border-style: solid; border-right: 5px solid transparent; border-left: 5px solid transparent; border-top: 12px solid #ff385c; border-bottom: 0; transform: rotate(310deg); }
#wideTourArea .inner .truekansai .title { text-align: center; margin-top: 20px; padding: 15px 0; font-family: 'Hiragino Kaku Gothic ProN'; font-weight: 600; font-size: 1.65em; color: #fff; background-color: #282828; letter-spacing: 0.05em; }
#wideTourArea .inner .truekansai .content { margin-top: 45px; padding: 0 30px 25px 55px; }
#wideTourArea .inner .truekansai .content .upper {}
#wideTourArea .inner .truekansai .content .upper .text {}
#wideTourArea .inner .truekansai .content .upper .image { position: absolute; right: 25px; top: 195px; width: 100px; height: 100px; }
#wideTourArea .inner .truekansai .content .upper .image img { width: 100%; height: auto; }
#wideTourArea .inner .truekansai .content .lower { margin-top: 70px; }
#wideTourArea .inner .truekansai .content .lower .image { position: absolute; left: 55px; bottom: 0; width: 179px; height: 215px; }
#wideTourArea .inner .truekansai .content .lower .image img { width: 100%; height: auto; }
#wideTourArea .inner .truekansai .content .lower .text { margin-left: 225px; }
#wideTourArea .inner .truekansai .content .lower .button { margin: 20px 0 0 225px; }
#wideTourArea .inner .truekansai .content .lower .button a { display: inline-block; padding: 12px 55px; background: #eee; }
#wideTourArea .inner .truekansai .content .lower .button a span { font-weight: 600; color: #555; }
#wideTourArea .inner .wideTour { position: relative; width: 590px; height: 480px; background-color: #fff; }
#wideTourArea .inner .wideTour .catch { text-align: center; margin-top: 35px; }
#wideTourArea .inner .wideTour .catch span { position: relative; display: inline-block; padding: 0 20px; font-family: 'Hiragino Kaku Gothic ProN'; font-weight: 600; font-size: 1.25em; letter-spacing: 0.1em; color: #ff385c; }
#wideTourArea .inner .wideTour .catch span::before { content: ""; position: absolute; left: 0; top: 50%; transform: translateY(-50%) rotate(-16deg);  width: 1px; height: 30px; background: #ff385c; }
#wideTourArea .inner .wideTour .catch span::after { content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(16deg);  width: 1px; height: 30px; background: #ff385c; }
#wideTourArea .inner .wideTour .title { text-align: center; margin-top: 20px; padding: 15px 0; font-family: 'Hiragino Kaku Gothic ProN'; font-weight: 600; font-size: 1.65em; letter-spacing: 0.05em; color: #fff; background-color: #ff385c; }
#wideTourArea .inner .wideTour .content { padding: 20px 30px; position: relative; }
#wideTourArea .inner .wideTour .content .image {}
#wideTourArea .inner .wideTour .content .image img { width: 522px; height: auto; margin: 0 auto; }
#wideTourArea .inner .wideTour .content .lower { display: inline-block; margin-top: 15px; }
#wideTourArea .inner .wideTour .content .lower .text { letter-spacing: 0; padding-right: 230px; font-size: 0.9125em; }
#wideTourArea .inner .wideTour .content .lower .button { position: absolute; right: 30px; bottom: 30px; }
#wideTourArea .inner .wideTour .content .lower .button a { display: inline-block; padding: 12px 55px;  border: 2px solid #000; }
#wideTourArea .inner .wideTour .content .lower .button a span { font-weight: 600; }

/*============================
#breakfirstArea
============================*/
#breakfirstArea { padding: 100px 0 0; }
#breakfirstArea .topArea { display: flex; align-items: center; justify-content: start; }
#breakfirstArea .topArea .title { position: relative; font-family: 'Hiragino Kaku Gothic ProN'; font-size: 3.125em; font-weight: 600; margin-right: 60px; }
#breakfirstArea .topArea .title:after { content: ''; position: absolute; left: 0; bottom: -15px; width: 100%; height: 5px; background-color: #000; }
#breakfirstArea .image { margin-top: 60px; }
#breakfirstArea .image img {}
#breakfirstArea .button { margin-top: 50px; text-align: center; }
#breakfirstArea .button a:first-child { display: inline-block; margin-right: 20px; width: 340px; padding: 17px 0 16px; background-color: #282828; text-align: center; }
#breakfirstArea .button a:first-child span { font-size: 1.125em; font-weight: 600; color: #fff; }
#breakfirstArea .button a:nth-child(2) { display: inline-block; margin-right: 20px; width: 340px; padding: 17px 0 16px; background-color: #282828; text-align: center; }
#breakfirstArea .button a:nth-child(2) span { font-size: 1.125em; font-weight: 600; color: #fff; }
#breakfirstArea .button a:last-child { display: inline-block; width: 340px; padding: 17px 0 16px; background-color: #282828;  box-sizing: border-box; }
#breakfirstArea .button a:last-child span { font-size: 1.125em; font-weight: 600; color: #fff; }

/*============================
#linkArea
============================*/
#linkArea { margin-top: 100px; }
#linkArea .topArea {}
#linkArea .topArea .title { position: relative; font-family: 'Hiragino Kaku Gothic ProN'; font-size: 2.5em; font-weight: 600; }
#linkArea .content { margin-top: 20px; display: flex; align-items: baseline; width: 100%; }
#linkArea .content .leftArea { width: 320px; margin-right: 20px; }
#linkArea .content .leftArea .title { font-size: 1.25em; }
#linkArea .content .leftArea .image { margin-top: 10px; }
#linkArea .content .leftArea .image a { display: block; width: 100%; padding: 12px 15px 11px; border: 2px solid #008260; background: #DDEDE9; box-sizing: border-box; position: relative; font-weight: bold; }
#linkArea .content .leftArea .image a span { font-size: 1.125em; font-weight: 600; color: #004230;}
#linkArea .content .leftArea .image a::after { content: ""; position: absolute; width: 13px; height: 13px; right: 15px; top: 50%; transform: translateY(-50%); background: url("../../imageFile/icon_overLink_green.png") no-repeat center; }
#linkArea .content .rightArea { flex: 1; }
#linkArea .content .rightArea .title { font-size: 1.25em; }
#linkArea .content .rightArea ul {}
#linkArea .content .rightArea ul li:first-child { margin-left: 0; }
#linkArea .content .rightArea ul li { margin-top: 10px; float: left; margin-left: 10px; }
#linkArea .content .rightArea ul li a { display: inline-block; padding: 12px 45px 11px 15px; border: 2px solid #000; background: #f5eeee; box-sizing: border-box; position: relative; }
#linkArea .content .rightArea ul li a span { font-size: 1.125em; font-weight: 600; color: #222; }
#linkArea .content .rightArea ul li a::after { content: ""; position: absolute; width: 13px; height: 13px; right: 15px; top: 50%; transform: translateY(-50%); background: url("../../imageFile/icon_overLink.png") no-repeat center; }

/*============================
#footer
============================*/
#footer { padding: 60px 0 50px; background: #313131; text-align: center; }
#footer .footer__copy {}
#footer .footer__copy {}
#footer .footer__copy a {}
#footer .footer__copy a img { width: 100px; height: auto; }
#footer .footer__copy p { margin-top: 25px; font-size: 0.75em; color: #fff; }
