@charset "UTF-8";
html { font-size: 62.5%; }

body { font-size: 18px; font-size: 1.8rem; font-weight: normal; color: #333; -webkit-background-size: auto auto; -moz-background-size: auto; background-size: auto; }
@media only screen and (orientation: landscape) { body { -webkit-background-size: 100% 100%; -moz-background-size: 100%; background-size: 100%; } }

a { color: #001623; text-decoration: underline; cursor: pointer; }
a:hover, a:focus, a:active { color: #1e7990; text-decoration: none; outline: none; }

textarea { font-family: sans-serif; }

ul, ol { list-style: none; margin: 0; padding: 0; }

dl, dt, dd, li { margin: 0; padding: 0; }

img { max-width: 100%; }

picture { display: inline-block; }

map { border: 0; outline: 0 none; cursor: default; }

area { border: 0; outline: 0 none; cursor: default; }

.pc { visibility: visible; display: inherit; }
@media (max-width: 767px) { .pc { visibility: hidden; display: none; } }

.sp { visibility: hidden; display: none; }
@media (max-width: 767px) { .sp { visibility: visible; display: inherit; } }

/* CONTENTS
--------------------------------------------------------- */
#header { display: block; width: 100%; height: 50px; position: relative; border-bottom: 1px #d3d3d3 solid; margin-bottom: 8px; }
#header .m-on { width: 998px; margin: 0 auto; }
#header .m-on a { display: block; position: relative; width: 139px; height: 49px; line-height: 0; overflow: hidden; }
#header .m-on a picture, #header .m-on a img { height: 49px; width: 238px; display: inline-block; }
@media (max-width: 767px) { #header .m-on { width: 100%; }
  #header .m-on a { display: inline-block; padding-left: 10px; height: 46px; width: auto; }
  #header .m-on a img { display: inline-block; height: 30px; width: auto; margin-top: 9px; } }
@media (max-width: 767px) { #header { position: fixed; top: 0; z-index: 100; background-color: #FFF; height: 48px; } }
#header .sp-menu-toggle { display: none; visibility: hidden; }
@media (max-width: 767px) { #header .sp-menu-toggle { display: inline-block; position: absolute; visibility: visible; right: -5px; top: 0px; }
  #header .sp-menu-toggle button { display: inline-block; line-height: 0; background: none; border: 0 none; outline: 0 none; height: 40px; width: auto; }
  #header .sp-menu-toggle button img { height: 100%; width: auto; margin: 4px 0 4px 0; } }

.mv { width: 998px; margin: 0 auto; padding-bottom: 15px;}
.mv img { width: 100%;}
.mv h1 { margin: 20px auto;}
.mv-img { margin: 20px auto;}
.mv-btn { margin: 0 auto;}
.mv-btn a { display: block; text-align: center;}
@media (max-width: 767px) { .mv { width: 100%; padding: 12% 0 0 0;} }

.top-read { margin: 0 auto; font-weight: bold; color: #FFF; font-size: 17px; line-height: 1.8; letter-spacing: 1px; padding: 20px 0 5px 0!important;}
@media (max-width: 767px) { .top-read p br { display: none;} }
.top-read.maintitle { font-size: 24px; color: #F3EC4E; padding: 10px 0 0 0!important;}
.top-read.subtitle { font-size: 20px; padding: 0!important;}
.top-read.catch { font-size: 20px; color: #F3EC4E; padding: 30px 0 0 0!important;}
@media (max-width: 767px) { .top-read { width: 90%; margin: 0 auto;letter-spacing: 0; padding-left: 10px; padding-right: 10px; font-size: 13px; padding-bottom: 1.5em; text-align: left!important;} }

section { width: 100%; position: relative; }
section.dark { background-color: #f3d776; }
section.light { background-color: #f6e198; }
section h2 { font-family: "Hiragino Mincho ProN", "Hiragino Mincho Pro", "MinchoMedium", "游明朝", YuMincho, "ＭＳ 明朝", serif; font-weight: normal; letter-spacing: 1px; font-size: 28px; margin-bottom: 10px; margin-top: 10px; padding-left: 18px; padding-top: 12px; padding-bottom: 12px; background: #b42122 url("../images/border.png") no-repeat right bottom; -moz-border-radius-topleft: 8px; border-top-left-radius: 8px; -moz-border-radius-topright: 8px; border-top-right-radius: 8px; color: #fff; }
@media (max-width: 767px) { section h2 { font-weight: bold; } }
section h2 small { font-size: 20px; }
@media (max-width: 767px) { section h2 { font-weight: bold; line-height: 1.3; padding-bottom: 15px; padding-left: 15px; -webkit-background-size: auto 160px; -moz-background-size: auto 160px; background-size: auto 160px; }
  section h2 small { font-size: 16px; } }
section p { padding: 10px 0; line-height: 2.2; }
section p small { font-size: 16px; }

.container-row { display: table; width: 998px; margin: 0 auto; }
@media (max-width: 767px) { .container-row { display: block; position: relative; width: 100%; overflow-x: hidden; overflow-y: visible; } }
.container-row .col-left { position: relative; width: 998px; margin: 0 auto;}
@media (max-width: 767px) { .container-row .col-left { width: 0; display: none; visibility: hidden; } }
.container-row .col-right { position: relative; width: 998px; margin: 0 auto; padding-top: 70px; padding-bottom: 45px; }
@media (max-width: 767px) { .container-row .col-right { display: block; width: 100%; margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; padding-top: 0px; } }
.container-row .col-right-only { position: relative; padding-top: 55px; padding-bottom: 45px; }
@media (max-width: 767px) { .container-row .col-right-only { display: block; width: 98%; margin-left: 1%; padding-left: 0; } }

@media (max-width: 767px) { .col-right h2 { width: 98%; margin-right: 1%; margin-left: 1%; font-size: 22px; }
  .col-right h2 span { display: block; } }
.nav-wrapper { position: relative; width: 998px; margin-top: 19px; top: 0px; z-index: 10; display: block; -moz-border-radius: 6px; border-radius: 6px; background-color: #FFF; border: 4px solid #cd3845; box-sizing: border-box;}
@media (max-width: 767px) { .nav-wrapper { width: 100%; margin-top: 50px; border: 10px solid #cd3845; -moz-border-radius: 18px; border-radius: 18px; } }
/*.nav-wrapper .ribbon_tl { display: block; position: absolute; top: -20px; left: -23px; }
.nav-wrapper .ribbon_br { display: block; position: absolute; bottom: -26px; right: -23px; }*/
.nav-wrapper .ribbon_tl, .nav-wrapper .ribbon_br { display: none;}
.nav-wrapper ul { display: block; position: relative; width: 100%; overflow: hidden;}
.nav-wrapper ul li { width: 16.6666666666%; float: left; }
@media (max-width: 767px) { .nav-wrapper ul li { width: 100%; } }
.nav-wrapper ul li a { width: 100%; display: inline-block; height: 40px; padding: 12px 4px 0 4px; text-align: center; line-height: 1.2; font-size: 15px; color: #c58824; text-decoration: none; background-color: #fff; background-image: none; box-sizing: border-box; font-family: "Hiragino Mincho ProN", "Hiragino Mincho Pro", "MinchoMedium", "游明朝", YuMincho, "ＭＳ 明朝", serif; letter-spacing: 1px; -webkit-transition: color .4s ease-out, background-color .4s ease-out; transition: color .4s ease-out, background-color .4s ease-out; }
@media (max-width: 767px) { .nav-wrapper ul li a { font-weight: bold; } }
.nav-wrapper ul li a em { letter-spacing: -1px; }
.nav-wrapper ul li a:hover { background-color: #f7edca; color: #c58824; }
.nav-wrapper ul li a.hover { background-color: #f7edca; color: #c58824; }
@media (max-width: 767px) { .nav-wrapper ul li a { text-align: left; padding-left: 1em; padding-top: 10px; padding-bottom: 10px; font-size: 18px; letter-spacing: 0; } }
.nav-wrapper ul li:first-child { border-top: 0 none; }
@media (max-width: 767px) { .nav-wrapper ul li:first-child { border-top: 1px solid #f1e4cc; } }
@media (max-width: 767px) { .nav-wrapper ul li:last-child { border-bottom: 1px solid #f1e4cc; } }
.nav-wrapper ul li.selected a { background: url("../images/btn_bg.png") repeat-y center top; background-color: #cb3d4b !important; background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMjgwODE0IiB5MT0iLTAuMTAyMjA4IiB4Mj0iMC43MTkxODYiIHkyPSIxLjEwMjIwOCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2NkMzg0MiIvPjxzdG9wIG9mZnNldD0iMjUlIiBzdG9wLWNvbG9yPSIjYzcyOTJjIi8+PHN0b3Agb2Zmc2V0PSI2MCUiIHN0b3AtY29sb3I9IiNiNDIxMjIiLz48c3RvcCBvZmZzZXQ9Ijc1JSIgc3RvcC1jb2xvcj0iI2FmMjEyMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2NiM2Q0YiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); -webkit-background-size: 100% 100%; -moz-background-size: 100%; background-size: 100%; background-image: -moz-linear-gradient(290deg, #cd3842, #c7292c 25%, #b42122 60%, #af2122 75%, #cb3d4b); background-image: -webkit-linear-gradient(290deg, #cd3842, #c7292c 25%, #b42122 60%, #af2122 75%, #cb3d4b); background-image: linear-gradient(160deg, #cd3842, #c7292c 25%, #b42122 60%, #af2122 75%, #cb3d4b); color: #FFF !important; pointer-events: none !important; }

.ribbon_date { display: block; }
.ribbon_date img { width: 100%; }
@media (max-width: 767px) { .ribbon_date { right: 0; top: 0; position: relative; width: 100%; padding-top: 0!important; } }

.event-structure { display: block; position: relative; width: 100%; margin: 0 auto; padding: 20px 0; overflow: hidden; text-align: center; background: #532e17 url("../images/event_bg1.jpg") no-repeat center top; background-size: cover;}
.event-structure p { text-align: center; }
@media (max-width: 767px) { .event-structure { width: 98%; margin-left: 1%; margin-right: 1%; padding-top: 18px; }
  .event-structure p img { width: 96%; margin: 0 auto; } }

.event-wrap-content { background-color: rgba(255, 255, 255, 0.88); -moz-border-radius: 6px; border-radius: 6px; width: 95%; margin: 10px auto 0; padding: 25px 25px; }
@media (max-width: 767px) { .event-wrap-content { margin-top: 0; padding: 15px; } }
.event-wrap-content h3 { text-align: left; font-size: 24px; font-weight: bold; }
@media (max-width: 767px) { .event-wrap-content h3 { font-size: 22px; } }
.event-wrap-content p { text-align: left; font-size: 14px; letter-spacing: 1.5px; }
@media (max-width: 767px) { .event-wrap-content p { font-size: 15px; line-height: 1.6; letter-spacing: 0; } }

.event-wrap-schedule { width: 100%; margin: 33px auto 0; text-align: center; -moz-border-radius: 6px; border-radius: 6px; border: 3px solid #b42122; }
@media (max-width: 767px) { .event-wrap-schedule { margin-top: 2em; } }
.event-wrap-schedule h4 { background-color: #b42122; color: #FFF; font-weight: bold; font-size: large; text-align: center; display: inline-block; margin: -2em auto 0; -moz-border-radius: 200px; border-radius: 200px; padding: 0.4em 40px; }
@media (max-width: 767px) { .event-wrap-schedule h4 { width: 90%; -moz-border-radius: 20px; border-radius: 20px; padding: 0.4em 10px; font-weight: bold; line-height: 1.3; margin-top: -1.5em; } }
.event-wrap-schedule p { text-align: center; }
.event-wrap-schedule p img { margin-top: 12px; margin-bottom: 0; padding-bottom: 0; line-height: 0; }
.event-wrap-schedule p picture { display: block; line-height: 0; }
.event-wrap-schedule p span { display: inline-block; width: 100%; text-align: right; font-size: 12px; padding-right: 22px; text-align: right; margin-top: 0px; line-height: 1.6; }
@media (max-width: 767px) { .event-wrap-schedule p span { padding-right: 10px; margin-top: 4px; font-size: 11px; line-height: 1.4; text-align: left; padding-left: 1.7em; text-indent: -1em; } }

.event-photo-content { background: url("../images/event_bg2.jpg") no-repeat center bottom; background-size: cover; text-align: center; padding: 40px 0 40px; }
.event-photo-content img { margin: 0 auto; }
@media (max-width: 767px) { .event-photo-content { padding: 20px 0; } }

.wrap-content { background-color: #db9b26; -moz-border-radius: 4px; border-radius: 4px; color: #FFF; padding: 20px; }
.wrap-content h3 { font-size: 22px; padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px solid #FFF; }
.wrap-content p { padding: 0; font-size: 14px; }

.prize-structure { -moz-border-radius: 6px; border-radius: 6px; background-color: rgba(255, 255, 255, 0.17); border: 1px solid #c93f3f; padding: 10px 10px 5px; margin-bottom: 15px; margin-top: 15px;}
.prize-structure h3 { font-size: 28px; font-weight: bold; margin-top : -100px; padding-top : 100px; padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px solid #fff; }
@media (max-width: 767px) { .prize-structure h3 { font-size: 28px; line-height: 1.3; }
  .prize-structure h3 small { display: block; text-indent: -1em; font-size: 20px !important; } }
.prize-structure h3.trophy { background: url("../images/priz_icon2.png") no-repeat left 10px; font-size: 24px; padding-left: 50px; }
.prize-structure h4 { font-size: 22px; font-weight: bold; }
.prize-structure p { font-size: 18px; line-height: 1.6em; }
.prize-structure ul li { background: url("../images/priz_icon3.png") no-repeat 4px 18px; clear: both; border-top: #e87373 dotted 1px; padding: 10px 0; padding-left: 30px; }
.prize-structure ul li.song { background: url("../images/priz_icon4.png") no-repeat 4px 18px; }
@media (max-width: 767px) { .prize-structure ul li { font-weight: bold; } }
.prize-structure ul li.priz-top span { font-size: 14px; line-height: 1.2; padding-top: 10px; }
.prize-structure ul li small { font-size: 12px; }
.prize-structure ul li dl { display: block; margin: 0 0 15px 0; }
.prize-structure ul li dl dt { float: left; clear: both; width: 295px; }
@media (max-width: 767px) { .prize-structure ul li dl dt { width: 100%; float: none; clear: none; } }
.prize-structure ul li dl dt.prize-photo-siena img { line-height: 0; }
@media (max-width: 767px) { .prize-structure ul li dl dt.prize-photo-siena img { width: 100%; height: auto; } }
.prize-structure ul li dl dt.prize-photo-siena small { font-size: 12px; padding-bottom: 14px; display: block; margin-top: -2px; }
.prize-structure ul li dl dd { margin-left: 295px; padding-left: 0; font-size: 14px; line-height: 1.4em;}
.prize-structure ul li dl dd strong { font-size: 20px!important; line-height: 1.8em;}
@media (max-width: 767px) { .prize-structure ul li dl dd { margin-left: 0px; } }
.prize-structure ul li dl dd strong { text-align: left; font-size: 13px; }
.prize-btn { display: block; margin: 15px 0 0 0; text-align: center; text-decoration: none; color: #ffffff; padding: 10px 20px; background: ##c93f3f; border-radius: 30px; border: 3px solid #ffffff; box-shadow: 0px 3px 11px rgba(000,000,000,0.5), inset 0px 0px 1px rgba(255,000,217,1); text-shadow: 0px -1px 0px rgba(000,000,000,0.2), 0px 1px 0px rgba(255,255,255,0.3); }


.wrap-content-half { -moz-border-radius: 4px; border-radius: 4px; color: #FFF; padding: 18px 0 5px; }
.wrap-content-half h3 { width: 96%; font-size: 20px; padding-bottom: 5px; margin-bottom: 8px; border-bottom: 1px solid #FFF; }
.wrap-content-half ul li { font-size: 16px; line-height: 1.2; padding-bottom: 6px; padding-left: 1em; text-indent: -1em; }
.wrap-content-half ul li:before { content: "・"; }
.wrap-content-half ul li small { font-size: 13px; }
.wrap-content-half p { padding: 0; font-size: 12px; }

.twin-block { display: block; }
.twin-block li { background-color: #db9b26; -moz-border-radius: 4px; border-radius: 4px; color: #FFF; display: inline-block; width: 46%; position: relative; text-align: center; margin-right: 2%; padding: 15px 10px; }

.wrap-infomation { border: 4px solid #5f1d09; padding: 12px; background-color: #f6e198; }
@media (max-width: 767px) { .wrap-infomation { padding: 2px 8px 8px; border-width: 3px; } }

.table-structure { background: #ac0000 url("../images/back_info.png") no-repeat right bottom; -moz-border-radius: 4px; border-radius: 4px; color: #FFF; display: table; width: 100%; margin: 15px 0 15px; }
.table-structure a { color: #FFFFFF; }
.table-structure a:hover { text-decoration: none;}
@media (max-width: 767px) { .table-structure { display: block; -webkit-background-size: 200px auto; -moz-background-size: 200px auto; background-size: 200px auto; } }
.table-structure dt { display: table-cell; width: 110px; vertical-align: top; }
@media (max-width: 767px) { .table-structure dt { display: block; width: 100%; padding: 10px 0 2px; text-align: center; } }
.table-structure dt h4 { display: table; width: 80px; height: 80px; -moz-border-radius: 40px; border-radius: 40px; color: #333; background-color: #fff33f; margin: 10px 20px 10px 10px; font-size: 16px; font-weight: bold; line-height: 1.1; background-image: url("../images/bg_onpu.png"); background-position: center center; background-repeat: no-repeat; }
@media (max-width: 767px) { .table-structure dt h4 { display: inline-block; width: auto; height: auto; -moz-border-radius: 8px; border-radius: 8px; font-size: 20px; background-image: none; padding: 4px 20px; margin: 0 auto; } }
.table-structure dt h4 em { display: table-cell; text-align: center; vertical-align: middle; font-size: 16px; line-height: 1.25; font-weight: bold; }
.table-structure dt h4 em small { font-size: 14px; }
.table-structure dd { display: table-cell; vertical-align: middle; padding-right: 1em; }
@media (max-width: 767px) { .table-structure dd { display: block; width: 100%; padding: 0 0.4em 10px; } }
.table-structure dd small { font-size: 15px; }
@media (max-width: 767px) { .table-structure dd small { font-size: 13px; } }
.table-structure dd strong { display: inline-block; font-size: 24px; font-weight: 600; text-align: center; width: 100%; padding-right: 20px; }
@media (max-width: 767px) { .table-structure dd strong { padding-right: 0; } }

.atn-structure { display: table; width: 100%; margin-bottom: -1px; margin-top: 0; font-size: 13px; }
.atn-structure dt { display: table-cell; width: 5.5em; text-align: center; }
.atn-structure dt h4 { width: 5em; display: inline-block; -moz-border-radius: 4px; border-radius: 4px; color: #333; background-color: #fff; padding: 1px 0 2px; font-weight: normal; line-height: 13px; text-align: center; font-size: 13px; }
.atn-structure dt h4 em { text-align: center; vertical-align: middle; font-size: 11px; }
.atn-structure dt h4 em small { text-align: center; font-size: 13px; font-size: 11px; }
.atn-structure dd { display: table-cell; text-align: left; font-size: 13px; line-height: 1.6; font-weight: normal; color: #333; }

.book-structure { margin-top: 18px; padding: 15px; border: 2px solid #333; -moz-border-radius: 8px; border-radius: 8px; }
.book-structure dt { width: 200px; text-align: center; float: left; clear: both; }
@media (max-width: 767px) { .book-structure dt { width: 100%; float: none; clear: none; } }
.book-structure dd { padding-left: 210px; text-align: left; }
@media (max-width: 767px) { .book-structure dd { padding-left: 0; } }
.book-structure dd span { display: block; }
.book-structure dd .book-atn { margin-top: 10px; background-color: #333; color: #FFF; font-size: 24px; padding: 5px 10px; }
.book-structure dd .book-ttl { font-size: 26px; padding: 10px 5px 5px; }
.book-structure dd .book-sub { font-size: 14px; padding: 0px 5px; }
.book-structure dd .book-subatn { padding-bottom: 0.5em; }

.arrow-structure { padding-top: 25px; padding-bottom: 5px; }
@media (max-width: 767px) { .arrow-structure { margin-top: 10px; } }
.arrow-structure dl { background-color: inherit; -moz-border-radius: 0; border-radius: 0; color: #FFF; display: block; width: 100%; margin: 0 0 3px; }
.arrow-structure dl dt { display: inline-block; background-color: #FFF; color: #333333; -moz-border-radius: 80px; border-radius: 80px; padding: 7px 12px 6px; font-size: 22px; font-weight: normal; text-align: center; width: 9.5em; font-weight: bold; }
@media (max-width: 767px) { .arrow-structure dl dt { font-size: 24px; font-weight: bold; width: 8.5em; margin-left: 0.3em; } }
.arrow-structure dl dt.long-txt { width: 18em; }
@media (max-width: 767px) { .arrow-structure dl dt.long-txt { display: inline-block; position: relative; text-align: center; width: 10.5em; }
  .arrow-structure dl dt.long-txt span { display: block; text-align: center; width: 100%; margin: -3px auto 0; } }
.arrow-structure dl dd { width: 100%; padding: 10px 10px 20px 80px; background: url("../images/arrow_bottom.png") no-repeat 35px bottom; font-size: 18px; line-height: 1.8; }
.arrow-structure dl dd.last-arw { background: none; }
.arrow-structure dl dd em { display: inline-block; position: relative; top: -2px; left: -2px; border: 1px solid #FFF; color: #FFF; padding: 1px 15px 1px; margin-right: 5px; font-size: smaller; font-weight: bold; -moz-border-radius: 5px; border-radius: 5px; line-height: 1.5; }
@media (max-width: 767px) { .arrow-structure dl dd { padding: 15px 10px 15px 70px; } }

.list-structure li { padding: 10px 5px 10px 1.1em; text-indent: -1.2em; }
.list-structure li:before { content: "◆"; color: #ac0000; }
.list-structure li small { font-size: 13px; }

.list10-structure { list-style-type: none; list-style-image: none; counter-reset: li; }
.list10-structure li { position: relative; display: block; padding: 8px 0px 12px 34px; margin-left: 0px; margin-top: 4px; border-bottom: rgba(0, 0, 0, 0.16) 1px dotted; }
.list10-structure li small { font-size: 13px; }
.list10-structure li:after { counter-increment: li; content: counter(li) "."; position: absolute; display: block; text-align: center; font-style: italic; left: 2px; top: -4px; font-size: 30px; color: #b42122; font-family: 'Goudy Bookletter 1911',Georgia,serif; font-weight: bold; }

.musiclist { display: block; width: 100%; }
.musiclist small { font-size: 20px !important; }
@media (max-width: 767px) { .musiclist small { display: block; } }
.musiclist li { padding-left: 40px; font-size: 28px; padding-bottom: 2px; }
.musiclist li span { font-size: 22px; }
.musiclist li:after { font-style: italic; top: 5px; font-size: 32px; }

.numlist-structure { list-style-type: none; padding-left: 1em; }
.numlist-structure li { padding: 8px 5px 8px 5px; }
.numlist-structure li small { font-size: 13px; }
.numlist-structure li h6 { font-size: 22px; display: block; position: relative; border-bottom: 1px dotted #333; margin-bottom: 10px; }
.numlist-structure li h6 em { display: block; position: absolute; background-color: #c58824; width: 30px; height: 30px; font-size: 14px; line-height: 30px; text-align: center; vertical-align: middle; margin-left: -40px; color: #FFF; font-weight: bold; -moz-border-radius: 2px; border-radius: 2px; }

.profile-structure { display: block; position: relative; width: 100%; padding: 15px; background-color: rgba(255, 255, 255, 0.92); margin-bottom: 15px; box-sizing: border-box;}
@media (max-width: 767px) { .profile-structure { display: block; margin-bottom: 0px; } }
.profile-structure li { display: block; width: 100%; border-bottom: 1px dotted #ac0000; margin-bottom: 15px; padding-bottom: 10px; padding-right: 5px; clear: both; }
@media (max-width: 767px) { .profile-structure li { display: block; width: 100%; } }
.profile-structure li dl { display: block; position: relative; clear: both; }
.profile-structure li dl dt { width: 132px; float: left; clear: both; }
@media (max-width: 767px) { .profile-structure li dl dt { width: 85px; } }
.profile-structure li dl dd { margin-left: 140px; padding-top: 0.4em; font-size: 24px; }
@media (max-width: 767px) { .profile-structure li dl dd { margin-left: 94px; padding-top: 0.2em; } }
.profile-structure li dl dd small { display: inline-block; position: relative; padding-top: 0.5em; font-size: 14px; padding-left: 1em; }
@media (max-width: 767px) { .profile-structure li dl dd small { display: block; font-size: 13px; padding-left: 1.2em; } }
.profile-structure li dl dd p { font-size: 12px; line-height: 1.5; }
@media (max-width: 767px) { .profile-structure li dl dd p { font-size: 11px; } }
@media (max-width: 767px) { .profile-structure li dl dd.officialteam { font-size: 21px; } }

.acc-profile-structure { display: block; position: relative; clear: both; }
@media (max-width: 767px) { .acc-profile-structure { margin-top: 70px; } }
.acc-profile-structure li { display: block; position: relative; overflow: hidden; width: 100%; margin: 10px 0 10px; -moz-border-radius: 6px; border-radius: 6px; background-color: #b46105; background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjEuMCIgeDI9IjAuNSIgeTI9IjAuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzlmNGMwMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2I0NjEwNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); -webkit-background-size: 100% 100%; -moz-background-size: 100%; background-size: 100%; background-image: -moz-linear-gradient(90deg, #9f4c03, #b46105); background-image: -webkit-linear-gradient(90deg, #9f4c03, #b46105); background-image: -webkit-gradient(linear, left bottom, left top, from(#9f4c03), to(#b46105)); background-image: -webkit-linear-gradient(bottom, #9f4c03, #b46105); background-image: -moz-linear-gradient(bottom, #9f4c03, #b46105); background-image: linear-gradient(0deg, #9f4c03, #b46105); padding-bottom: 0px; }
.acc-profile-structure li.acc-close { background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjEuMCIgeDI9IjAuNSIgeTI9IjAuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzlmNGMwMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2I0NjEwNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); -webkit-background-size: 100% 100%; -moz-background-size: 100%; background-size: 100%; background-image: -moz-linear-gradient(90deg, #9f4c03, #b46105); background-image: -webkit-linear-gradient(90deg, #9f4c03, #b46105); background-image: -webkit-gradient(linear, left bottom, left top, from(#9f4c03), to(#b46105)); background-image: -webkit-linear-gradient(bottom, #9f4c03, #b46105); background-image: -moz-linear-gradient(bottom, #9f4c03, #b46105); background-image: linear-gradient(0deg, #9f4c03, #b46105); }
.acc-profile-structure li.acc-open { background-image: none; }
.acc-profile-structure li a { display: inline-table; position: relative; width: 100%; color: #FFF; font-weight: bold; padding: 8px 8px 12px 8px; }
.acc-profile-structure li a:hover { background-color: rgba(255, 255, 255, 0.08); }
.acc-profile-structure li a em { display: table-cell; width: 35px; padding-right: 5px; overflow: hidden; text-indent: -999px; background: url("../images/arw-close.png") no-repeat 5px 4px; vertical-align: top; }
.acc-profile-structure li a em.acc-open { background: url("../images/arw-open.png") no-repeat 5px 4px; }
.acc-profile-structure li a span { padding-top: 2px; display: table-cell; vertical-align: top; min-height: 35px; line-height: 1.7; }
.acc-profile-structure li p { display: inline-block; position: relative; background-color: rgba(255, 255, 255, 0.88); -moz-border-radius: 4px; border-radius: 4px; font-size: 14px; line-height: 1.6; margin: 0px 15px 15px; padding: 15px; -webkit-transition: opacity .4s; transition: opacity .4s; }
.acc-profile-structure li p.acc-open { margin-bottom: 15px; opacity: 1; }
.acc-profile-structure li p.acc-close { margin-bottom: 0; opacity: 0; }

.selection-atructure { padding: 15px; line-height: 1.6; background-color: rgba(255, 255, 255, 0.92); }
.selection-atructure dt { background: url("../images/fortissimo.png") no-repeat left top; min-height: 50px; padding-left: 60px; padding-top: 10px; padding-bottom: 4px; font-size: 26px; margin-bottom: 10px; border-bottom: 2px solid #b42122; }
.selection-atructure dd { padding-left: 1.5em; }
@media (max-width: 767px) { .selection-atructure dd { padding-left: 0em; } }
.selection-atructure dd .list10-structure li { font-size: 20px; font-weight: bold;}
.selection-atructure dd p { padding: 5px 0; font-size: 16px; line-height: 1.6; }
.selection-atructure dd span { display: block; font-size: 14px; padding-top: 4px; line-height: 1.6; padding-left: 1.0em; font-weight: normal;}

.exam-structure { padding: 10px 0; line-height: 1.8; padding-left: 0.8em; border: 2px dotted #b42122; -moz-border-radius: 6px; border-radius: 6px; margin-top: 4px; margin-bottom: 7px; margin-left: 23px; }
@media (max-width: 767px) { .exam-structure { padding-left: 0; margin-left: 0; } }
.exam-structure dt { padding-left: 53px; background: url("../images/exam1.png") no-repeat left 0px; }
@media (max-width: 767px) { .exam-structure dt { padding-bottom: 5px; padding-left: 57px; background-position: 4px 0; } }
.exam-structure dt.exam-2nd { background: url("../images/exam2.png") no-repeat left 6px; }
@media (max-width: 767px) { .exam-structure dt.exam-2nd { padding-bottom: 5px; background-position: 6px 6px; } }
.exam-structure dd { padding-left: 54px; padding-right: 8px; }
@media (max-width: 767px) { .exam-structure dd { padding-left: 15px; } }
.exam-structure dd p { padding: 5px 0; font-size: 16px; line-height: 1.4; }
.exam-structure dd span { display: block; font-size: 14px; padding-top: 4px; line-height: 1.6; padding-left: 1.0em; }

.numlist2-structure { list-style-type: none; }
.numlist2-structure li { background-color: #FFF; -moz-border-radius: 6px; border-radius: 6px; padding: 1.5em 1em 1.5em 1em; margin-bottom: 2em; margin-left: 0px; }
.numlist2-structure li h5 { display: inline-block; font-size: x-large; color: #FFF; vertical-align: middle; padding-bottom: 0.4em; padding-left: 1.5em; padding-right: 1.5em; padding-top: 0.4em; background: #b42122 url("../images/bg_h5.png") repeat-y left top; margin-left: -20px; margin-bottom: 10px; -moz-border-radius: 5px; border-radius: 5px; -moz-border-radius-topleft: 0; border-top-left-radius: 0; -moz-border-radius-bottomleft: 0; border-bottom-left-radius: 0; }
.numlist2-structure li small { font-size: 13px; }
.numlist2-structure li .list-structure, .numlist2-structure li .numlist-structure { margin-left: 2em; }
@media (max-width: 767px) { .numlist2-structure li .list-structure, .numlist2-structure li .numlist-structure { margin-left: 0; } }
.numlist2-structure li .list-structure li, .numlist2-structure li .numlist-structure li { font-size: 15px; line-height: 1.4; margin-bottom: 0; padding: 10px 5px 10px 1.2em; }
.numlist2-structure li .list-structure li p, .numlist2-structure li .numlist-structure li p { font-size: 15px; line-height: 1.4; }
.numlist2-structure li .list-structure li p em, .numlist2-structure li .numlist-structure li p em { display: block; margin: 10px 0; padding-left: 1em; text-indent: -1em; }

#acc-youtube-structure { display: block; position: relative; }
#acc-youtube-structure li { display: block; position: relative; overflow: hidden; width: 100%; margin: 10px 0 10px; padding: 0px 0; -moz-border-radius: 6px; border-radius: 6px; background-color: #b42e00; background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjEuMCIgeDI9IjAuNSIgeTI9IjAuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzlmMTkwMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2I0MmUwMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); -webkit-background-size: 100% 100%; -moz-background-size: 100%; background-size: 100%; background-image: -moz-linear-gradient(90deg, #9f1900, #b42e00); background-image: -webkit-linear-gradient(90deg, #9f1900, #b42e00); background-image: -webkit-gradient(linear, left bottom, left top, from(#9f1900), to(#b42e00)); background-image: -webkit-linear-gradient(bottom, #9f1900, #b42e00); background-image: -moz-linear-gradient(bottom, #9f1900, #b42e00); background-image: linear-gradient(0deg, #9f1900, #b42e00); padding-bottom: 0px; }
#acc-youtube-structure li.acc-close { background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjEuMCIgeDI9IjAuNSIgeTI9IjAuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzlmMTkwMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2I0MmUwMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); -webkit-background-size: 100% 100%; -moz-background-size: 100%; background-size: 100%; background-image: -moz-linear-gradient(90deg, #9f1900, #b42e00); background-image: -webkit-linear-gradient(90deg, #9f1900, #b42e00); background-image: -webkit-gradient(linear, left bottom, left top, from(#9f1900), to(#b42e00)); background-image: -webkit-linear-gradient(bottom, #9f1900, #b42e00); background-image: -moz-linear-gradient(bottom, #9f1900, #b42e00); background-image: linear-gradient(0deg, #9f1900, #b42e00); }
#acc-youtube-structure li.acc-open { background-image: none; }
#acc-youtube-structure li a.acc-yt { display: inline-table; position: relative; width: 100%; color: #FFF; font-weight: bold; padding: 12px 8px 12px 8px; text-decoration: underline; font-size: 16px; line-height: 1.8; }
#acc-youtube-structure li a.acc-yt:hover { background-color: rgba(255, 255, 255, 0.15); }
#acc-youtube-structure li a.acc-yt em { display: table-cell; width: 35px; padding-right: 5px; overflow: hidden; text-indent: -999px; background: url("../images/arw-close.png") no-repeat 5px 4px; vertical-align: top; }
#acc-youtube-structure li a.acc-yt em.acc-open { background: url("../images/arw-open.png") no-repeat 5px 4px; }
#acc-youtube-structure li a.acc-yt span { padding-top: 2px; display: table-cell; vertical-align: top; line-height: 1.7; }
#acc-youtube-structure li .acc-youtube-content { display: inline-block; position: relative; background-color: white; -moz-border-radius: 4px; border-radius: 4px; font-size: 14px; line-height: 1.6; margin: 0px 15px 15px; padding: 15px; -webkit-transition: opacity .4s; transition: opacity .4s; }
#acc-youtube-structure li .acc-youtube-content.acc-open { margin-bottom: 15px; opacity: 1; }
#acc-youtube-structure li .acc-youtube-content.acc-close { margin-bottom: 0; opacity: 0; }
@media (max-width: 767px) { #acc-youtube-structure li .acc-youtube-content { width: 98%; margin: 0px 1% 5px; padding: 5px; }
  #acc-youtube-structure li .acc-youtube-content a { white-space: pre-wrap; word-break: break-all; text-wrap: normal; } }

.numlist3-structure { list-style-type: none; }
.numlist3-structure li { display: block !important; background-color: #f6e198 !important; background-image: none !important; padding: 15px 15px 15px 50px !important; line-height: 1.5 !important; }
.numlist3-structure li em { display: block; position: absolute; width: 30px; height: 30px; line-height: 30px; font-size: 15px; text-align: center; background-color: #c53641; -moz-border-radius: 50%; border-radius: 50%; top: 9px; left: 7px; color: #FFF; }
.numlist3-structure li.arw-youtube { background-color: #FFF !important; padding: 0 !important; text-align: center !important; line-height: 0 !important; }

.anchor-oubo { display: block; position: relative; margin: 12px 0 10px 25px; outline: none; border: 0 none; cursor: pointer; overflow: hidden; width: 585px; height: 69px; margin: 0 auto; padding: 0; line-height: 0; background: url("../images/btn-anchor.png") no-repeat left top; }
@media (max-width: 767px) { .anchor-oubo { width: 90%; height: auto; margin-right: auto; margin-left: auto; background-image: none; } }
.anchor-oubo img { opacity: 0; line-height: 0; -webkit-transition: opacity .4s ease-out; transition: opacity .4s ease-out; }
@media (max-width: 767px) { .anchor-oubo img { width: 100%; height: auto; opacity: 1; } }
.anchor-oubo:hover img { opacity: 1; }

.anchor-oubo-none { display: block; position: relative; margin: 12px auto 10px auto; overflow: hidden; width: 585px; height: auto; padding: 0; line-height: 0; }
@media (max-width: 767px) { .anchor-oubo-none { width: 90%; height: auto; margin-right: auto; margin-left: auto; } }

.wrap-terms { display: block; position: relative; width: 98%; margin: 20px auto 20px; height: 300px; overflow-y: scroll; padding: 2em; margin-bottom: 14px; background-color: #FFF; -moz-border-radius: 6px; border-radius: 6px; font-size: 14px; }
@media (max-width: 767px) { .wrap-terms { padding: 1em; } }

.note-structure { display: block; margin: 25px auto 15px; width: 88%; -moz-border-radius: 2px; border-radius: 2px; background: url("../images/note_bg.png") repeat-y right top; }
.note-structure ul { display: block; padding: 15px 0; }
.note-structure ul li { display: block; margin: 0 7% 0 3%; width: 90%; background: url("../images/checkbox.png") no-repeat left center; border-top: 1px #abd6d4 dashed; padding: 10px 10px 10px 30px; font-size: 13px; }
.note-structure ul li:last-child { border-bottom: 1px #abd6d4 dashed; }
@media (max-width: 767px) { .note-structure ul li { width: 86%; margin: 0 11% 0 3%; } }

.agreeTxt { margin-bottom: 0px; text-align: center; font-size: 17px; line-height: 1.4; cursor: pointer; }
.agreeTxt input { margin-top: 0px; margin-bottom: 2px; margin-right: 3px; vertical-align: middle; }
@media (max-width: 767px) { .agreeTxt { font-size: 24px; padding-left: 10px; padding-right: 10px; } }

.submit { display: block; text-align: center; margin: 0 auto 0.5em; }
.submit a { display: inline-block; min-height: 80px; }
@media (max-width: 767px) { .submit a { min-height: 60px; } }
.submit button, .submit a { margin: 0 auto; outline: none; border: 0 none; cursor: pointer; overflow: hidden; width: 716px; height: 81px; padding: 0; line-height: 0; background: url("../images/submitbtn_bg.png") no-repeat left top; }
@media (max-width: 767px) { .submit button, .submit a { width: 100%; background: url("../images/btn_bg_sp.png") no-repeat left top; -webkit-background-size: 100% auto; -moz-background-size: 100% auto; background-size: 100% auto; height: auto; } }
.submit button picture, .submit a picture { display: inline-block; width: 716px; height: 81px; padding: 0; line-height: 0; }
@media (max-width: 767px) { .submit button picture, .submit a picture { width: auto; height: auto; } }
.submit button img, .submit a img { margin: 0; padding: 0; opacity: 0; line-height: 0; -webkit-transition: opacity .4s ease-out; transition: opacity .4s ease-out; }
.submit button:hover img, .submit a:hover img { opacity: 1; }
@media (max-width: 767px) { .submit button:hover img, .submit a:hover img { opacity: 0; } }
.submit button.disabled, .submit a.disabled { pointer-events: none; background: url("../images/submitbtn_bg_disabled.png") no-repeat left top; }
@media (max-width: 767px) { .submit button.disabled, .submit a.disabled { background: url("../images/btn_bg_disabled_sp.png") no-repeat left top; -webkit-background-size: 100% auto; -moz-background-size: 100% auto; background-size: 100% auto; } }
.submit button.disabled:hover, .submit a.disabled:hover { opacity: 1; filter: alpha(opacity=100); }

.faq-h4 { font-size: 26px; display: block; position: relative; margin: 18px 0 10px; }
.faq-h4:before { content: '▼'; color: #b42122; font-size: 24px; margin-right: 4px; }

.faq-wrapper { margin-top: 0; padding-bottom: 15px; }
.faq-wrapper li { display: block; position: relative; margin: 15px auto; background: #fff url("../images/arw-close2.png") no-repeat 9px 17px; -moz-border-radius: 6px; border-radius: 6px; }
.faq-wrapper li.acc-open { background: #fff url("../images/arw-open2.png") no-repeat 9px 17px; }

.faq-structure { padding: 15px 15px 15px 75px; }
.faq-structure dt { position: relative; font-size: 18px; }
.faq-structure dt em { display: block; position: absolute; width: 30px; height: 30px; line-height: 30px; font-size: 20px; text-align: center; background-color: #db9b26; -moz-border-radius: 3px; border-radius: 3px; top: -2px; left: -35px; color: #FFF; }
.faq-structure dd { position: relative; min-height: 40px; padding-top: 20px; padding-left: 5px; font-size: 15px; line-height: 1.7; }
.faq-structure dd em { display: block; position: absolute; width: 30px; height: 30px; line-height: 30px; font-size: 20px; text-align: center; background-color: #ac0000; -moz-border-radius: 3px; border-radius: 3px; top: 17px; left: -35px; color: #FFF; }
.faq-structure dd a { word-break: break-all; white-space: pre-wrap; }

.faq-border { display: block; font-size: 12px; padding: 1.2em; -moz-border-radius: 5px; border-radius: 5px; border: 1px dotted #b42122; margin: 1em auto; }

.contact-structure { display: table; border: 3px solid #b42122; -moz-border-radius: 6px; border-radius: 6px; width: 100%; }
@media (max-width: 767px) { .contact-structure { display: block; } }
.contact-structure dt { display: table-cell; background-color: #b42122; color: #FFF; padding: 0.7em 0; vertical-align: middle; text-align: center; }
@media (max-width: 767px) { .contact-structure dt { display: block; padding: 8px 0; } }
.contact-structure dd { display: table-cell; padding: 0.7em 0; background-color: #FFF; vertical-align: middle; text-align: center; }
@media (max-width: 767px) { .contact-structure dd { display: block; font-size: 15px; } }

.item-structure { border: 2px solid #b42122; -moz-border-radius: 6px; border-radius: 6px; display: block; vertical-align: top; -webkit-box-align: start; -webkit-align-items: flex-start; -moz-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.item-structure h4 { display: block; width: 100%; color: #FFF; background-color: #b42122; text-align: center; }
.item-structure h4 em { display: inline-block; padding: 7px 0; }
@media (max-width: 767px) { .item-structure h4 { font-size: 18px; display: block; padding: 8px 0; }
  .item-structure h4 em { display: block; text-align: center !important; padding: 0px 0; } }
.item-structure ul { vertical-align: top; -webkit-box-align: start; -webkit-align-items: flex-start; -moz-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.item-structure ul li { vertical-align: top; -webkit-box-align: start; -webkit-align-items: flex-start; -moz-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.item-structure ul li dl { min-height: 264px; }
@media (max-width: 767px) { .item-structure ul li dl { min-height: 0; } }
.item-structure ul li em { display: block; text-align: center; width: 100%; padding-bottom: 4px; }
.item-structure ul li em a { margin: 0 auto; text-align: center; }
.item-structure .item01-structure { display: inline-block; border: 2px solid #FFF; -moz-border-radius: 6px; border-radius: 6px; width: 60%; margin: 1.5% 1% 1.5% 1.8%; vertical-align: top; -webkit-box-align: start; -webkit-align-items: flex-start; -moz-box-align: start; -ms-flex-align: start; align-items: flex-start; background-color: rgba(255, 255, 255, 0.15); }
@media (max-width: 767px) { .item-structure .item01-structure { width: 96%; margin: 3% 2%; min-height: 0; } }
.item-structure .item01-structure li { display: inline-block; width: 49%; }
@media (max-width: 767px) { .item-structure .item01-structure li { width: 100%; } }
.item-structure .item01-structure dt { padding-top: 1.2em; text-align: center; }
@media (max-width: 767px) { .item-structure .item01-structure dt { padding-top: 0; } }
.item-structure .item01-structure .item-shortTxt { padding-left: 1em; }
@media (max-width: 767px) { .item-structure .item01-structure .item-shortTxt { padding-left: 0; } }
.item-structure .item02-structure { display: inline-block; border: 2px solid #FFF; -moz-border-radius: 6px; border-radius: 6px; width: 33%; margin: 1.5% 1.5% 1.5% 0.5%; vertical-align: top; -webkit-box-align: start; -webkit-align-items: flex-start; -moz-box-align: start; -ms-flex-align: start; align-items: flex-start; background-color: rgba(255, 255, 255, 0.15); }
@media (max-width: 767px) { .item-structure .item02-structure { width: 96%; margin: 3% 2%; } }
.item-structure .item02-structure dt { text-align: center; }
.item-structure .item02-structure dl { padding-left: 10px; padding-right: 10px; }
.item-structure h5 { background-color: #FFF; text-align: center; font-size: 14px; padding: 4px 0; }
@media (max-width: 767px) { .item-structure h5 { font-size: 16px; } }
.item-structure dl { padding: 15px 15px 5px; vertical-align: top; -webkit-box-align: start; -webkit-align-items: flex-start; -moz-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.item-structure dl dt { vertical-align: top; -webkit-box-align: start; -webkit-align-items: flex-start; -moz-box-align: start; -ms-flex-align: start; align-items: flex-start; }
@media (max-width: 767px) { .item-structure dl dt { text-align: center; } }
.item-structure dl dd {display: block; width: 64%; margin: 0 auto; font-size: 11px; vertical-align: top; -webkit-box-align: start; -webkit-align-items: flex-start; -moz-box-align: start; -ms-flex-align: start; align-items: flex-start; }
@media (max-width: 767px) { .item-structure dl dd { font-size: 12px; text-align: center; } }
.item-structure a { text-align: right; font-size: 14px; }
@media (max-width: 767px) { .item-structure a { font-size: 16px; } }

.oubo-structure { padding-top: 4px; list-style-type: none; }
.oubo-structure li { background-color: #FFF; -moz-border-radius: 6px; border-radius: 6px; padding: 15px 18px 10px 35px; margin-left: 15px; margin-bottom: 10px; min-height: 58px; position: relative; font-size: 22px; }
.oubo-structure li small.ouboAtn { font-size: 18px; }
@media (max-width: 767px) { .oubo-structure li { margin-left: 8px; padding-left: 30px; }
  .oubo-structure li small span { display: block; padding: 0 0 0 1em; margin: 0; } }
.oubo-structure li.arw-red { display: inline-block; background: none; padding: 0; margin: 0; min-height: auto; }
.oubo-structure li em { display: block; position: absolute; width: 40px; height: 40px; line-height: 40px; font-size: 20px; text-align: center; background-color: #c53641; -moz-border-radius: 50%; border-radius: 50%; top: 7px; left: -20px; color: #FFF; }
@media (max-width: 767px) { .oubo-structure li em { left: -20px; } }
.oubo-structure li .csshover { margin-top: 6px; left: -10px; }

.atn-anchors { padding-left: 1em; text-indent: -1em; padding-bottom: 0; margin-bottom: 0; margin-top: 0; padding-top: 4px; font-size: 13px; line-height: 1.5; }

.pagetop { display: block; z-index: 11; position: fixed; bottom: 85px; width: 100%; margin: 0 auto; }
@media (max-width: 767px) { .pagetop { bottom: 5.5em; } }
.pagetop div { width: 98%; margin: 0 auto; min-width: 990px; max-width: 1200px; text-align: right; height: 0; }
@media (max-width: 767px) { .pagetop div { min-width: 320px; max-width: none; width: 98%; } }
.pagetop a { display: inline-block; position: relative; }
.pagetop a img { -webkit-transition: opacity .4s ease-out; transition: opacity .4s ease-out; }
.pagetop a:hover img { opacity: 0.75; }
@media (max-width: 767px) { .pagetop a:hover img { opacity: 1; } }

#logo_footer { background-color: #FFF; text-align: center; background-color: #f6e198; padding: 25px 0 8px; z-index: 20; }
#logo_footer ul { display: table; width: 970px; margin: 0 auto; }
@media (max-width: 767px) { #logo_footer ul { width: 100%; } }
#logo_footer ul li { display: table-cell; vertical-align: middle; text-align: center; width: 50%; font-family: Serif; }
#logo_footer ul li:first-child { padding-left: 0; text-align: left; }
@media (max-width: 767px) { #logo_footer ul li:first-child { padding-left: 10px; } }
#logo_footer ul li:last-child { text-align: right; padding-right: 0em; font-size: 15px; }
@media (max-width: 767px) { #logo_footer ul li:last-child { padding-right: 10px; } }
#logo_footer .copy { font-family: Helvetica, Arial, sans-serif !important; font-size: 12px; }

#footer { background-color: #FFF; text-align: center; padding: 20px 0 20px; z-index: 20; }
#footer ul { display: table; width: 960px; margin: 0 auto; }
@media (max-width: 767px) { #footer ul { width: 100%; } }
#footer ul li { display: table-cell; vertical-align: middle; text-align: center; width: 100%; padding-left: 3em; }
@media (max-width: 767px) { #footer ul li { padding-left: 0; } }

.topbtn { width: 430px; left: 50%; position: absolute; top: 0.5%; text-align: right; }
.topbtn a { display: inline-block; text-align: right; }
.topbtn a img { height: 100%; max-height: 70px; width: auto; }
@media (max-width: 767px) { .topbtn { position: relative; width: 100%; margin-left: 0; left: auto; bottom: auto; margin-top: -0px; padding-top: 0; text-align: center; }
  .topbtn img { margin-right: auto; margin-left: auto; }
  .topbtn a { position: absolute; height: 11vw; top: 1%; right: 7%; z-index: 8; } }
@media (max-width: 320px) { .topbtn a { top: 1.5%; } }

.grandpix { display: block; width: 998px; position: relative; text-align: center; margin: -20px auto 0; padding-bottom: 50px; }
@media (max-width: 767px) { .grandpix { width: 100%; padding-bottom: 10px; } }

.grandpix0 { display: block; position: relative; margin: 0 auto; background-color: #ffe6e2; -moz-border-radius: 4px; border-radius: 4px; width: 80%; padding: 15px 0; text-align: center; }
.grandpix0 img { display: inline-block; text-align: center; }
@media (max-width: 767px) { .grandpix0 { width: 100%; margin-top: 30px; }
  .grandpix0 img { width: 95%; text-align: center; margin-left: auto; margin-right: auto; } }

.grandpix1, .grandpix2, .grandpix3 { display: block; position: relative; /*-moz-border-radius: 5px; border-radius: 5px;*/ margin-top: 20px; }
.grandpix1 dl, .grandpix2 dl, .grandpix3 dl { display: table; }
@media (max-width: 767px) { .grandpix1 dl, .grandpix2 dl, .grandpix3 dl { display: block; text-align: center; width: 95%; margin-left: auto; margin-right: auto; } }
.grandpix1 dl dt, .grandpix1 dl dd, .grandpix2 dl dt, .grandpix2 dl dd, .grandpix3 dl dt, .grandpix3 dl dd { display: table-cell; vertical-align: top; padding: 15px 20px; }
@media (max-width: 767px) { .grandpix1 dl dt, .grandpix1 dl dd, .grandpix2 dl dt, .grandpix2 dl dd, .grandpix3 dl dt, .grandpix3 dl dd { display: block; text-align: center; padding: inherit; } }
.grandpix1 dl dt, .grandpix2 dl dt, .grandpix3 dl dt { width: 320px; vertical-align: middle; }
@media (max-width: 767px) { .grandpix1 dl dt, .grandpix2 dl dt, .grandpix3 dl dt { width: auto; padding: 15px 20px; } }
.grandpix1 dl dd, .grandpix2 dl dd, .grandpix3 dl dd { vertical-align: middle; padding-left: 0; }
@media (max-width: 767px) { .grandpix1 dl dd, .grandpix2 dl dd, .grandpix3 dl dd { padding-top: 0; margin-top: 0; } }
.grandpix1 dl dd ul, .grandpix2 dl dd ul, .grandpix3 dl dd ul { display: table; width: 100%; }
@media (max-width: 767px) { .grandpix1 dl dd ul, .grandpix2 dl dd ul, .grandpix3 dl dd ul { display: block; width: 100%; } }
.grandpix1 dl dd ul li, .grandpix2 dl dd ul li, .grandpix3 dl dd ul li { display: table-cell; margin-right: 20px; vertical-align: middle; }
@media (max-width: 767px) { .grandpix1 dl dd ul li, .grandpix2 dl dd ul li, .grandpix3 dl dd ul li { display: block; width: 100%; margin-left: auto; margin-right: auto; text-align: center; }
  .grandpix1 dl dd ul li iframe, .grandpix2 dl dd ul li iframe, .grandpix3 dl dd ul li iframe { max-width: 95%; } }
.grandpix1 dl dd ul .movie_discription, .grandpix2 dl dd ul .movie_discription, .grandpix3 dl dd ul .movie_discription { vertical-align: middle; font-size: 16px; line-height: 1.7; padding-left: 30px; }
@media (max-width: 767px) { .grandpix1 dl dd ul .movie_discription, .grandpix2 dl dd ul .movie_discription, .grandpix3 dl dd ul .movie_discription { display: block; width: 100%; font-size: 13px; text-align: left; padding-bottom: 1em; padding-left: 8px; padding-right: 8px; } }

.grandpix1 { background-color: #fff9e9; border: 8px solid #d1a643; }

.grandpix-title { margin: 60px auto 10px auto;}

.grandpix2 { background-color: #f7f7f7; border: 8px solid #a0a0a0; }

.grandpix3 { background-color: #fff; border: 2px solid #757575; }
.grandpix3 .school1 { margin-bottom: 6px; margin-top: 0; padding: 0; }
@media (max-width: 767px) { .grandpix3 .movie_discription { text-align: center !important; }
  .grandpix3 .movie_discription a { margin-top: 6px; margin-left: auto; margin-right: auto; text-align: center; } }

.school1 { background: #ffffff; color: #FFFFFF; -moz-border-radius: 3px; border-radius: 3px; position: relative; width: 100%; text-align: center; font-size: 18px; margin: 5px 0 15px; padding: 8px 0; }
.grandpix1 .school1 { background: #d1a643;}
.grandpix2 .school1 { background: #a0a0a0;}
.school1 em { display: block; text-align: center; width: 100%; font-size: 14px; }

.school2 { font-size: 16px; text-align: center;}
@media (max-width: 767px) { .school2 { text-align: center; margin-left: auto; margin-right: auto; } }

.grandpix_text { background-color: #ffebac; display: inline-block; margin: 20px auto; padding: 4px 30px; text-align: center; }
@media (max-width: 767px) { .grandpix_text { font-size: 14px; padding: 4px 15px; } }

@media (max-width: 767px) { .sp-none { display: none; } }

.pc-none { display: none; }
@media (max-width: 767px) { .pc-none { display: block; } }

.pc-main-visual2 { display: block; position: relative; width: 100%; min-width: 1080px; text-align: center; margin-left: auto; margin-right: auto; line-height: 0; margin-bottom: 20px; }
.pc-main-visual2 img { line-height: 0; }
@media (max-width: 767px) { .pc-main-visual2 { display: none; } }

.grandprix2016 { overflow: hidden; width: 80%; margin: 30px auto; padding: 20px; background: #ECECEC; font-size: 12px; line-height: 1.6em; border-radius: 10px;}
.grandprix2016 img { display: block; width: 250px; float: left; margin: 0 20px 0 0; border-radius: 10px;}
