@charset "UTF-8";


/*--------------------------------------------------------------------
初期設定
--------------------------------------------------------------------*/


/* =============== 標準化 */

/* ------ framework */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, img, ins, kbd, q, samp, var, i, dl, dt, dd, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary,time, mark, audio, video
{margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; font-style:normal;}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {display:block;}
audio, canvas, video {display:inline-block;}
html {overflow-y:scroll;}
body {-webkit-text-size-adjust:100%;}

/* ------ block elements */
ul {margin:0; padding:0; list-style-type:none;}
ol {margin:0; padding:0 0 0 2em;}
p {margin:0 0 .6em;}

/* ------ inline elements */
a {outline:none; background:transparent;}
a:focus, a:active, a:hover {outline:none;}
small {font-size:80%;}
sub, sup {font-size:75%; line-height:0; position:relative; vertical-align:baseline;}
sup {top:-.5em;}
sub {bottom:-.25em;}

/* ------ form */
button, input, select, textarea {font-family:inherit; font-size:100%; margin:0;}
button, input {line-height:normal;}
button, select {text-transform:none;}
button, html input[type="button"], input[type="reset"], input[type="submit"] {-webkit-appearance:button; cursor:pointer;}
button[disabled], html input[disabled] {cursor:default;}
input[type="checkbox"], input[type="radio"] {box-sizing:border-box; padding:0;}
input[type="search"] {-webkit-appearance:textfield; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box;}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {-webkit-appearance:none;}
button::-moz-focus-inner, input::-moz-focus-inner {border:0; padding:0;}
textarea {overflow:auto; vertical-align:top;}

/* ------ table */
table {border-collapse:collapse; border-spacing:0;}
caption {text-align:left;}

/* ------ img */
img {border:0; vertical-align:bottom;}

/* ------ box-sizing 
* {-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;} */



/* =============== 共通利用 */

/* ------ 配置 */
.ctr {text-align:center!important;}
.inBlk, 
.IB,
.spanIB > span {display:inline-block; text-decoration:inherit;}

/* ------ テキスト装飾 */
a {color:#1a1a1a;}
.lg2 {font-size:116%;}
.lg3 {font-size:123.1%;}
.sm1 {font-size:93%;}
.sm2 {font-size:85%;}
.sm3 {font-size:77%;}
.mt03 {margin-top:.3rem;}
.mt06 {margin-top:.6rem;}
.mt1 {margin-top:1rem;}



/*--------------------------------------------------------------------
基本レイアウト
--------------------------------------------------------------------*/


body {font:14px/1.7 "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif; color:#1a1a1a;}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .yuGo {font-family:'游ゴシック体','Yu Gothic',YuGothic,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;}
.content {margin:0 auto; position:relative;}
.content:after {content:""; display:block; clear:both;}

header {position:relative; z-index:10001; margin-bottom:80px; padding:60px; background:#f7f2f8 url(../images/title_bg.webp) no-repeat 50% 50%; background-size:cover; text-align:center; box-sizing:border-box;}
header img {max-width:100%;}

h2 {margin:0 0 2em; padding:0 0 1em; border-bottom:1px currentColor solid; text-align:center; font-size:180%; color:#0571A1;}

.outline {overflow:hidden;}
.outline dt {background:#333; text-align:center; font-weight:bold; color:#fff;}
.outline dd {font-size:116%;}
.outline iframe {margin:10px 0;}

.program {margin-top:60px; padding:60px 0; background:#f1f4f5;}
.program dd {font-size:116%;}
.program b.lg2 {display:inline-block; text-indent:-.3em;}

.poster {margin-top:3rem; text-align:center;}
.poster img {width:min(300px,100%); margin-bottom:.6em;}

.btn1 {position:relative; padding:60px 0; background:linear-gradient(-90deg, #2658BC 0%, #349ADB 50%, #60BEF7 100%); text-align:center;}
.btn1:before {content:""; display:block; width:100%; height:100%; position:absolute; top:0; left:0; z-index:0; background:#0004;}
.btn1 a {position:relative; z-index:10; display:block; padding:.8em .4em; border-radius:6px; background:#eb2; box-shadow:0 -2px 0 rgba(0,0,0,.2) inset; text-decoration:none; font-size:150%; font-weight:bold; color:#fff;}
.btn1 a:before {content:""; display:inline-block; height:8px; width:8px; margin-right:.8em; border:#fff solid; border-width:2px 2px 0 0; transform:rotate(45deg);}

footer {background:#000521; text-align:center; color:#fff;}
footer .content {padding-block:30px 10px;}
footer a {text-decoration:none; color:#fff;}
footer ul {overflow:hidden; padding:40px 0;}
footer .content > p:last-child {margin-bottom:0; text-align:center;}


@media screen and (min-width:601px) {
  body {font-size:16px;}
  header, footer {min-width:980px;}
  #main {min-width:980px;}
  .content {width:860px;}
  .outline {display:grid; grid-template-columns:9rem 1fr; gap:1em 1.5em; align-items:start;}
  .program dl {display:grid; grid-template-columns:9rem 1fr; gap:1em .6em;}
  .program dt {padding-top:.1rem;}
  footer li {width:50%; float:left;}
}

@media screen and (max-width:600px) {
  header, footer {min-width:320px;}
  #main {min-width:320px;}
  .content {width:auto; margin:0 20px;}
  
  header {padding:10px; margin-bottom:40px;}
  
  h2 {margin:0 0 1.5em; padding:0 0 .4em; font-size:150%;}
  .outline dt {width:10rem;}
  .outline dd {margin-block:.8em 1.2em;}
  .program {margin-top:30px; padding-top:40px;}
  .program dd {padding-left:1em;}
  .program * ~ dt {margin-top:1em;}
  footer li + li {margin-top:1em;}
}


.eml {cursor:pointer}
.eml:not(.-done) abbr:before {content:"@"}
.eml s {text-decoration:none} .eml:not(.-done) s:before {content:"."}
