@charset "UTF-8";
/* CSS Document */

html{ margin: 0; padding: 0;}
body{ margin: 0; padding: 0; background: repeat url("../img/body.webp") center top;}
.hc{ margin: 0; padding: 0;}
.hc *{ margin-top: 0;}
.header_image img{}
.header_note{ margin: 0; padding: 0; text-align: right; font-size: 100%; font-weight: 600; color: #fff; text-shadow: 2px 2px 2px #0079c2, -2px -2px 2px #0079c2;}
.page_title{ font-size: 148%; font-weight: bold; text-align: center;}

@media screen and ( max-width: 480px ) {
}

.block_title_image img{ max-width: 320px;}

.wrap{ background: rgba(255,255,255,0.5); margin: 2.0rem 0 0 0; padding: 2.0rem; box-shadow: 1.0em 1.0em 1.0em rgba(0,0,0,0.15);}
.wrap >*:first-child{ margin-top: 0;}
@media screen and ( max-width: 480px ) {
  .wrap{ padding: 1.5em 1.0em;}
}

.lead_block{ display: flex; gap: 1.0em 2.0em; flex-direction:row-reverse; justify-content: center;}
.lead_block01{ flex: 0 0 350px;}
.lead_block02{ max-width: 100%;}
.lead_title_wrap{ display: flex; gap: 1.0em 1.0em; align-items: center;}
.lead_title_wrap *{ margin-top: 0;}
.lead_title{ display: flex; gap: 1.0em 1.0em; background: linear-gradient(to right,  rgba(34,99,175,1) 0%,rgba(26,177,199,1) 100%); align-items: center; color: #fff; padding: 0.7em 2.0em; line-height: 1.5; width: 100%; justify-content: center;}
.lead_title p{  font-size: 108%; white-space: nowrap;}
.lead_title h3{ font-size: 204%; font-weight: 600; white-space: nowrap;}
.lead_title .sub{ display: inline-block; transform-origin: top left; transform: scale(0.9, 1);}
.lead_title_sub{ color: #0079c3; padding: 0.2em 1.0em; border: solid 1px #0079c3; font-weight: 600; letter-spacing: 0.2em; font-size: 116%; width: fit-content;}
.lead_copy{ color: #0079c3; font-size: 172%; font-weight: 600; margin: 1.0rem 0 0 0; line-height: 1.5; }
.lead_copy span{ font-size: 77%; padding-left: 1.0em;}
.lead_list{}
.lead_list li{ margin: 0; padding: 0 0 0 1.0em; text-indent: -1.0em; font-size: 108%; font-weight: 600;}
.lead_list li::first-letter{ color: #0079c3;}
@media screen and ( max-width: 480px ) {
  .lead_block{ flex-wrap: wrap;}
  .lead_block01{ flex: 0 0 100%;}
  .lead_block02{ flex: 0 0 100%;}
  .lead_title_wrap{ flex-wrap: wrap;}
  .lead_title{ display: block; padding: 0.7em 1.0em;}
}

.event_title{ display: flex; gap: 0.5em 1.0em; flex-wrap: wrap; align-items: center;}
.event_title p{ margin: 0; line-height: 1.5; background: #0079c3; font-size: 100%; color: #fff; font-weight: bold; padding: 0.3em 1.0em; border-radius: 2.0em;}
.event_title h3{ margin: 0; font-size: 128%; font-weight: bold;}
.event_wrap .content{ display: grid; grid-template-columns: 1fr 1fr; gap: 1.0em 1.0em; align-items: center;}
.event_wrap .content >*{ margin-top: 0;}
@media screen and ( max-width: 480px ) {
  .event_wrap .content{ grid-template-columns: 1fr;}
}
.program{}
.program th{ margin: 0; padding: 0 2.0em 0 0;}
.program th time{ display: block; background: #fff; color: #0079c3; border-bottom: solid 1px #0079c3; margin: 0; padding: 0.5em 1.0em; line-height: 1.5; font-weight: 600; white-space: nowrap;}
.program td{ padding: 0 0 2.0em 0; font-size: 108%;}
.program td *{ margin: 0;}
.program h3{color: #0079c3; font-size: 148%; line-height: 1.5; font-weight: 600;}
.program .sub{ color: #0079c3; padding: 0em 1.0em; border: solid 1px #0079c3; font-weight: 600; letter-spacing: 0.2em; font-size: 108%; width: fit-content;}
.program ul{ display: flex; gap: 0 1.0em; flex-wrap: wrap;}
@media screen and ( max-width: 480px ) {
  .program th{ margin: 0; padding: 0 1.0em 0 0;}
  .program th time{ padding: 0.5em 0.5em;}
  .program h3{ font-size: 140%;}
}


.section_title{ display: flex; gap: 1.0em 1.0em; background: linear-gradient(to right,  rgba(34,99,175,1) 0%,rgba(26,177,199,1) 100%); align-items: center; color: #fff; padding: 0.7em 2.0em; line-height: 1.5; width: 100%; font-size: 128%;}

.table_form{ margin: 0; padding: 0; border-collapse: separate; border-spacing: 2.0em 0;}
.table_form tbody{}
.table_form tr{}
.table_form th{ width: 8.0em; text-align: right; border-top: solid 1px #a8a8a8; padding: 1.0em 0 1.0em 0; font-size: 108%; font-weight: 600;}
.table_form td{ border-top: solid 1px #a8a8a8; padding: 1em 0 1em 2.0em;}
.table_form .require{ font-size: 86%; line-height: 1.5; border-radius: 1.5em; padding: 0 1.0em;}
.table_form .optional{ font-size: 86%; line-height: 1.5; border-radius: 1.5em; padding: 0 1.0em; background: none; border: solid 1px #a8a8a8; color: #000;}
.table_form q{pointer-events: none;}
.form .message{ background: #e60012; padding: 1.0em 2.0em; border-radius: 0.5em; color: #fff;}
.form .error span{ border-radius: 0 0 0.5em 0.5em;}
@media screen and ( max-width: 480px ) {
  .table_form{ margin-top: 1.0rem;}
  .table_form th{ padding: 1.0em 0 0 0; text-align: left; width: auto;}
  .table_form td{ border: none; padding: 1.0em 0; width: auto;}
}

.fc{ margin: 4.0em 0 0 0; border-top: solid 1px #a8a8a8; background: #fff;}
.fc h3{ font-weight: 600;}
.fc ul{ display: flex; gap: 0 1.0em; flex-wrap: wrap; margin: 0;}
.fc ul li{ margin: 0;}
.fc p{ margin: 0;}
.fc p span{ font-size: 86%;}

.confirm_form_submit{ display: flex; justify-content: center; align-items: center; gap: 1.0em 2.0em;}
.confirm_form_submit *{ margin-top: 0;}





