@charset "UTF-8";
/* =============================================
                    COMMON
============================================= */
body{ font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W6", "Hiragino Kaku Gothic ProN", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #222;}
sup{ font-size: 70%; vertical-align: top; position: relative; top: -0.1em;}

/* =============================================
                    CONTENTS
============================================= */
*{ box-sizing: border-box;}
/* html:before,
html:after,
body:before,
body:after{ content: ""; background: #0071be; position: fixed; display: block; z-index: 990;} */
/* 上 
html:before{ width: 100vw; top: 0; left: 0;} */
/* 右
html:after{ height: 100vh; min-height: calc(var(--vh, 1vh) * 100); top: 0; right: 0;} */
/* 下
body:before{ width: 100vw; bottom: 0; left: 0;} */
/* 左
body:after{ height: 100vh; min-height: calc(var(--vh, 1vh) * 100); top: 0; left: 0;} */
.ico-blank{ display: block; position: relative;}
.ico-blank::before{ top: calc( 50% - 4px ); right: 10px;}
.ico-blank::after{ top: calc( 50% - 6px ); right: 12px;}
.ico-blank.black::before,
.ico-blank.black::after{ content: ""; background: #222; border: 1px solid #fff; width: 9px; height: 9px; position: absolute;}
.ico-blank.blue::before,
.ico-blank.blue::after{ content: ""; background: #0071be; border: 1px solid #fff; width: 9px; height: 9px; position: absolute;}
.btn-arrow a::after {
    content: "";
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    width: 8px;
    height: 8px;
    transform: rotate(45deg);
    position: absolute;
    right: 30px;
    top: 50%;
    margin-top: -6px;
}
.btn a{ box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); border-radius: 50px; font-weight: 700; line-height: 1.3; color: #fff; text-align: center; text-decoration: none; display: block;}
.btn.black a{ background: #222;}
.btn.blue a{ background: #0071be;}
#contents{ background: #222 url(../img/bg01.jpg) left top repeat;}
#main p{ font-weight: 400; color: #fff;}
#main .notes-list li{ color: #fff; line-height: 1.4;}
nav ul{ background: #fff; box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.2); border-radius: 10px; display: flex; flex-wrap: wrap; justify-content: center;}
nav ul li{ text-align: center;}
nav ul li a{ display: block;}
section.bg-blue{ background: #0071be;}
section.bg-black{ background: #222;}
section h2{ background: url(../img/ico-tit.png) top center no-repeat; font-weight: 900; color: #fff; text-align: center; line-height: 1.3;}
#sec01 .venue-list li{ background: #fff; border-radius: 10px; box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.2);}
#sec01 .venue-list li h3{ font-weight: 900; color: #0071be; text-align: center;}
#sec01 .venue-list li .detail{ display: flex;}
#sec01 .venue-list li .img{ flex-shrink: 0; position: relative; overflow: hidden;}
#sec01 .venue-list li .img img{ position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); height: 100%;}
#sec01 .venue-list li .detail{ display: flex;}
#sec01 .venue-list li .detail table{ width: 100%;}
#sec01 .venue-list li .detail table th,
#sec01 .venue-list li .detail table td{ line-height: 1.3; vertical-align: middle}
#sec01 .venue-list li .detail table th{ background: #0071be; border-top: 1px solid #222; border-bottom: 1px solid #222; font-weight: 700; color: #fff;}
#sec01 .venue-list li .detail table td{ background: #eee; border-top: 1px solid #222; border-bottom: 1px solid #222; font-weight: 400;}
#sec01 .venue-list li .detail table td.name{ font-weight: 900;}
#sec01 .event{ background: #fff; border-radius: 10px; box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.2);}
#sec01 .event h3{ font-weight: 900; color: #222; text-align: center;}
#sec01 .event-list li{ background: #eee; border-radius: 8px;}
#sec01 .event-list li h4{ background: #0071be; font-weight: 900; line-height: 1.3; color: #fff; text-align: center; border-radius: 8px 8px 0 0;}
#sec01 .event-list li p{ line-height: 1.6;}
#sec01 .event-list li p a{ color: #000;}
#sec01 .event-list li p span{ text-align: right; display: block;}
#sec02 .maker-list > li{ background: #fff; border-radius: 10px; box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.2);}
#sec02 .maker-list > li .top .tit-box{ background: #eee; text-align: center; border-radius: 10px 10px 0 0;}
#sec02 .maker-list > li .top .tit-box h3{ font-weight: 900;}
#sec02 .maker-list > li .top .osusume-box{ background: url(../img/bg02.jpg) left top repeat; border-radius: 8px;}
#sec02 .maker-list > li .top .osusume-box h4{ background: #0071be; border-radius: 8px 8px 0 0; font-weight: 900; color: #fff; text-align: center;}
#sec02 .maker-list > li .top .osusume-box h4 span{ background: url(../img/ico-ichioshi.png) left center no-repeat; display: inline-block;}
#sec02 .maker-list > li .top .osusume-box .detail .text h5{ font-weight: 900; line-height: 1.3; color: #fff;}
#sec02 .maker-list > li .top .osusume-box .detail .text p{ line-height: 1.8; color: #fff;}
#sec02 .maker-list > li .bottom h4{ background: #eee; font-weight: 900; line-height: 1.3; text-align: center; border-radius: 8px 8px 0 0;}
#sec02 .maker-list > li .bottom .osusume-list{ background: #eee; border-radius: 0 0 8px 8px;}
#sec02 .maker-list > li .bottom .osusume-list li{ text-align: center;}
#sec02 .maker-list > li .bottom .osusume-list li h5{ font-weight: 900; line-height: 1.3;}
#sec02 .report{ background: #111; border-radius: 10px; box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.2);}
#sec02 .report h3{ font-weight: 900; color: #fff; text-align: center; border-bottom: 1px solid #222;}
#sec02 .report ul li{ border-bottom: 1px solid #222;}
#sec02 .report ul li:last-of-type{ border-bottom: none;}
#sec02 .report ul li a{ display: flex; line-height: 1.6; color: #fff; text-decoration: none;}
#sec02 .report ul li a .data{ font-weight: 700;}
#sec03 table{ width: 100%;}
#sec03 table th{ background: #eee; line-height: 1.6; text-align: left; border: 1px solid #ddd;}
#sec03 table td{ background: #fff; line-height: 1.6; border: 1px solid #ddd; vertical-align: middle;}
#sec03 table td ol li:last-child,
#sec03 table td ul li:last-child{ margin-bottom: 0;}
#page-top{ position: fixed; z-index: 90; transition: .4s;}
#page-top.hide{ opacity: 0;}
#page-top a{ display: block;}
footer{ background: #1d1d1d; color: #fff; text-align: center;}
footer a{ color: #fff;}

/* ==== PC ===== */
@media screen and (min-width: 768px){
body{ font-size: 16px;}
a:hover,a:hover img{ opacity: 0.8; transition: .4s;}
.pc{ display: block;}
.sp{ display: none;}
/* 上,下
html:before,
body:before{ height: 5px;} */
/* 右,左
html:after,
body:after{ width: 5px;} */
.inner{ width: 1046px; margin: 0 auto; position: relative}
.btn a{ font-size: 18px; padding: 15px 0 17px;}
#main{ background: #0e1416 url(../img/main-bg_pc.jpg?260326) center top no-repeat; padding: 40px 0 80px;}
#main .logo-gdo{ width: 90px; margin-bottom: 40px;}
#main h1{ margin-left: -12px;}
#main p{ font-size: 18px; line-height: 1.8;}
#main .notes-list{ margin-bottom: 55px;}
#main .notes-list li{ font-size: 14px; margin-bottom: 5px;}
nav#anchor-link02{ margin-bottom: 60px;}
nav ul li{ width: calc(100% / 5); border-right: 1px solid #eee;}
nav ul li:last-child{ border-right: none;}
nav ul li a{ padding: 20px 0;}
nav ul li img{ width: 100%;}
section{ padding-bottom: 80px;}
section h2{ font-size: 52px; padding-top: 70px; margin-bottom: 50px;}
#sec01 .venue-list{ display: flex; flex-wrap: wrap; margin-bottom: 40px;}
#sec01 .venue-list li{ width: 513px; padding: 20px; margin-right: auto; margin-bottom: 20px;}
#sec01 .venue-list li:nth-of-type(2n){ margin-right: 0;}
#sec01 .venue-list li h3{ font-size: 40px; margin-bottom: 18px;}
#sec01 .venue-list li .detail{ margin-bottom: 20px;}
#sec01 .venue-list li .img{ width: 150px;}
#sec01 .venue-list li table{ margin-left: 10px;}
#sec01 .venue-list li table th{ width: 100px;}
#sec01 .venue-list li table th,
#sec01 .venue-list li table td{ font-size: 14px; padding: 10px;}
#sec01 .venue-list li .btn{ width: 295px; margin: 0 auto;}
#sec01 .event{ padding: 25px 20px 0 20px;}
#sec01 .event h3{ font-size: 32px; margin-bottom: 25px;}
#sec01 .event-list{ display: flex; flex-wrap: wrap;}
#sec01 .event-list li{ width: 100%; margin-right: auto; margin-bottom: 20px;}
#sec01 .event-list li:nth-of-type(2n){ margin-right: 0;}
#sec01 .event-list li h4{ font-size: 20px; padding: 12px 0;}
#sec01 .event-list li .detail{ display: flex; align-items: center; padding: 20px;}
#sec01 .event-list li .img{ flex-shrink: 0; width: 420px;}
#sec01 .event-list li .img img{ width: 100%;}
#sec01 .event-list li p{ font-size: 18px; margin-left: 20px;}
#sec01 .event-list li p span{ font-size: 16px; margin-top: 10px;}
#sec02 nav{ margin-bottom: 60px;}
#sec02 .maker-list > li{ margin-bottom: 40px;}
#sec02 .maker-list > li:last-of-type{ margin-bottom: 60px;}
#sec02 .maker-list > li .top .tit-box{ padding: 30px; margin-bottom: 30px;}
#sec02 .maker-list > li .top .tit-box h3{ font-size: 16px; margin-top: 10px;}
#sec02 .maker-list > li#no03 .top .tit-box h3{ margin-top: 30px;}
#sec02 .maker-list > li .top .read{ font-size: 18px; line-height: 1.8; text-align: center; margin-bottom: 35px;}
#sec02 .maker-list > li .top .osusume-box{ margin: 0 30px 30px;}
#sec02 .maker-list > li .top .osusume-box h4{ font-size: 32px; padding: 10px 0;}
#sec02 .maker-list > li .top .osusume-box h4 span{ background-size: 49px; padding: 12px 0 12px 60px;}
#sec02 .maker-list > li .top .osusume-box .detail{ display: flex; align-items: center; padding: 30px;}
#sec02 .maker-list > li .top .osusume-box .detail .img{ width: 453px; flex-shrink: 0; margin-right: auto;}
#sec02 .maker-list > li .top .osusume-box .detail .img img{ width: 100%;}
#sec02 .maker-list > li .top .osusume-box .detail .text{ width: 453px;}
#sec02 .maker-list > li .top .osusume-box .detail .text h5{ font-size: 26px; margin-bottom: 10px;}
#sec02 .maker-list > li .top .osusume-box .detail .text h5 span{ font-size: 18px;}
#sec02 .maker-list > li .top .osusume-box .detail .text p{ font-size: 16px; line-height: 1.8;}
#sec02 .maker-list > li .bottom{ padding-bottom: 40px; margin: 0 3%;}
#sec02 .maker-list > li .bottom h4{ font-size: 28px; padding: 20px 0;}
#sec02 .maker-list > li .bottom .osusume-list{ display: flex; padding: 0 30px 30px; margin-bottom: 30px;}
#sec02 .maker-list > li .bottom .osusume-list li{ width: 453px;}
#sec02 .maker-list > li .bottom .osusume-list li:first-of-type{ margin-right: auto;}
#sec02 .maker-list > li .bottom .osusume-list li .img img{ width: 100%;}
#sec02 .maker-list > li .bottom .osusume-list li h5{ font-size: 20px; margin-top: 15px;}
#sec02 .maker-list > li .bottom .btn-list{ display: flex; justify-content: center;}
#sec02 .maker-list > li .bottom .btn-list li:first-of-type{ margin-right: 20px;}
#sec02 .maker-list > li .bottom .btn-list li:last-of-type{ margin-right: 0;}
#sec02 .maker-list > li .bottom .btn-list .btn{ width: 440px;}
#sec02 .maker-list > li .bottom .btn-list .btn a{ font-size: 22px;}
#sec02 .report h3{ font-size: 32px; padding: 25px 0;}
#sec02 .report ul li a{ padding: 20px 30px;}
#sec02 .report ul li a .data{ font-size: 18px; margin-right: 20px;}
#sec02 .report ul li a .text{ font-size: 18px;}
#sec03 table th{ width: 200px; padding: 20px;}
#sec03 table td{ padding: 20px;}
#sec03 table td ol li{ text-indent: -24px; padding-left: 24px; margin-bottom: 8px;}
#sec03 table td ul li{ text-indent: -16px; padding-left: 16px; margin-bottom: 8px;}
#page-top{ right: 20px; bottom: 20px;}
footer{ padding: 60px 0;}
footer .cp{ margin-top: 20px;}
}

/* ==== SP ===== */
@media screen and (max-width: 767px){
body{ font-size: 14px;}
img{ width: 100%;}
.pc{ display: none;}
.sp{ display: block;}
/* 上,下
html:before,
body:before{ height: 5px;} */
/* 右,左
html:after,
body:after{ width: 5px;} */
.btn a{ font-size: 20px; padding: 12px 0 14px;}
#contents{ background-size: 15px;}
#main{ background: #0e1416; padding-bottom: 40px;}
#main .inner{ position: relative;}
#main .logo-gdo{ width: 82px; position: absolute; top: 18px; left: 20px; z-index: 10; }
#main p{ font-size: 17px; line-height: 1.8; padding: 0 20px; margin-bottom: 10px;}
#main .notes-list{ padding: 0 20px; margin-bottom: 20px;}
#main .notes-list li{ font-size: 12px; text-indent: -12px; padding-left: 12px; margin-bottom: 5px;}
#main .notes-list li:last-of-type{ margin-bottom: 0;}
nav#anchor-link02{ margin-bottom: 30px;}
nav{ padding: 0px 15px;}
nav ul li{ width: calc(100% / 2);}
nav ul li:nth-of-type(1),
nav ul li:nth-of-type(2){ border-bottom: 1px solid #eee;}
nav ul li:nth-of-type(odd){ border-right: 1px solid #eee;}
nav ul li:nth-of-type(5){ width: 100%; border-top: 1px solid #eee; border-right: none;}
nav ul li a{ padding: 10px 0;}
section{ padding-bottom: 40px;}
section h2{ background-size: 29px; font-size: 34px; padding-top: 30px; margin-bottom: 25px;}
#sec01 .inner{ padding: 0 15px;}
#sec01 .venue-list{ margin-bottom: 40px;}
#sec01 .venue-list li{ padding: 15px 15px 20px; margin-bottom: 20px;}
#sec01 .venue-list li:last-of-type{ margin-bottom: 0;}
#sec01 .venue-list li h3{ font-size: 28px; margin-bottom: 15px;}
#sec01 .venue-list li .detail{ margin-bottom: 15px;}
#sec01 .venue-list li .img{ width: 80px; height: auto;}
#sec01 .venue-list li .img img{ width: auto;}
#sec01 .venue-list li table{ margin-left: 10px;}
#sec01 .venue-list li table th{ width: 65px;}
#sec01 .venue-list li table th,
#sec01 .venue-list li table td{ font-size: 12px; padding: 6px;}
#sec01 .venue-list li .detail table td.name.ssize{ font-size: 10px;}
#sec01 .event{ padding: 15px;}
#sec01 .event h3{ font-size: 24px; line-height: 1.3; margin-bottom: 15px;}

#sec01 .event-list li{ margin-bottom: 15px;}
#sec01 .event-list li:last-of-type{ margin-bottom: 0;}
#sec01 .event-list li h4{ font-size: 18px; padding: 10px 0;}
#sec01 .event-list li .detail{ padding: 15px;}
#sec01 .event-list li .img{ margin-bottom: 10px;}
#sec01 .event-list li p{ font-size: 14px;}
#sec01 .event-list li p span{ font-size: 10px; line-height: 1.4; margin-top: 5px;}
#sec02 .maker-list{ padding: 0 15px;}
#sec02 .maker-list > li{ margin-bottom: 20px;}
#sec02 .maker-list > li:last-of-type{ margin-bottom: 30px;}
#sec02 .maker-list > li .top .tit-box{ padding: 15px 0 20px;}
#sec02 .maker-list > li .top .tit-box h3{ font-size: 14px; margin-top: 5px;}
#sec02 .maker-list > li#no03 .top .tit-box h3{ margin-top: 15px;}
#sec02 .maker-list > li .top .read{ font-size: 17px; line-height: 1.8; padding: 15px;}
#sec02 .maker-list > li .top .osusume-box{ margin: 0 15px 20px;}
#sec02 .maker-list > li .top .osusume-box .detail img{ margin-bottom: 10px;}
#sec02 .maker-list > li .top .osusume-box h4{ font-size: 20px; text-align: center; padding: 5px 0;}
#sec02 .maker-list > li .top .osusume-box h4 span{ background-size: 34px; padding: 10px 0 10px 40px;}
#sec02 .maker-list > li .top .osusume-box .detail h5{ font-size: 20px; text-align: center; margin-bottom: 8px;}
#sec02 .maker-list > li .top .osusume-box .detail .text h5 span{ font-size: 16px;}
#sec02 .maker-list > li .top .osusume-box .detail p{ font-size: 15px; padding: 0 15px 15px;}
#sec02 .maker-list > li .bottom{ padding: 0 15px 25px;}
#sec02 .maker-list > li .bottom h4{ font-size: 20px; padding: 10px 0;}
#sec02 .maker-list > li .bottom .osusume-list{ padding: 0 15px 15px; margin-bottom: 20px;}
#sec02 .maker-list > li .bottom .osusume-list li:first-of-type{ margin-bottom: 10px;}
#sec02 .maker-list > li .bottom .osusume-list li h5{ font-size: 16px; margin-top: 5px;}
#sec02 .maker-list > li .bottom .btn-list li{ margin-bottom: 15px;}
#sec02 .maker-list > li .bottom .btn-list li:last-of-type{ margin-bottom: 0;}
#sec02 .report{ margin: 0 15px;}
#sec02 .report h3{ font-size: 24px; padding: 15px 0;}
#sec02 .report ul li a{ padding: 10px 15px;}
#sec02 .report ul li a .data{ font-size: 15px; margin-right: 10px;}
#sec02 .report ul li a .text{ font-size: 15px;}
#sec03{ padding: 0 15px 40px;}
#sec03 table th{ width: 100px;}
#sec03 table th,
#sec03 table td{ padding: 10px;}
#sec03 table td ol li{ text-indent: -22px; padding-left: 22px; margin-bottom: 8px;}
#sec03 table td ul li{ text-indent: -14px; padding-left: 14px; margin-bottom: 8px;}
#page-top{ right: 10px; bottom: 15px; width: 12%;}
footer{ font-size: 10px; padding: 30px 0;}
footer .cp{ margin-top: 10px;}
}

