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

.header_gallery{ display: flex; gap: 0 0.5rem;}
.header_gallery > *{ flex: 1;}
@media screen and ( max-width: 480px ) {
  .header_gallery{ gap: 0;}
}

.tour_icon{ display: flex; justify-content: center; flex-wrap: wrap; gap: 0 2.0rem;}
.tour_icon img{ display: block; width: 100px;}

.ex_program .mb{ background: #f0f0f0; padding: 1.5rem 1.0rem;}
.ex_program .program_title{ margin: 0; padding: 0.2rem 1.0rem; text-align: center; background: #ff7a00; color: #fff; font-size: 132%; line-height: 1.5; border-radius: 0.5rem;}
.ex_program .items{ display: flex; gap: 0 2%;}
.ex_program .items article{ flex: 1; background: #fff; padding: 1.0rem; border-radius: 0.5rem;}
.ex_program .items figure{ display: block; margin: 0; padding: 56.25% 0 0 0; background: no-repeat center center / contain;}
.ex_program .items h3{ text-align: center; color: #00379c; font-weight: bold; font-size: 124%;}
.ex_program .items p{ margin: 1.0rem 0 0 0;  line-height: 1.5;}
@media screen and ( max-width: 480px ) {
  .ex_program .items{ display: block;}
  .ex_program .items article{ display: grid; grid-template-columns: 100px 1fr; gap: 0.5em 1.0em;}
  .ex_program .items figure{ grid-row: auto / span 2;}
  .ex_program .items h3{ text-align: left;}
  .ex_program .items p{ margin: 0;}
}

.tour_outline{ border: 1px #00379c; border-style: solid none none solid; width: 100%; line-height: 1.5;}
.tour_outline th,
.tour_outline td{ border: 1px #00379c; border-style: none solid solid none; padding: 0.7rem 1.0rem; line-height: 1.5; vertical-align: middle;}
.tour_outline th{ white-space: nowrap;  color: #00379c; font-size: 132%; font-weight: bold; text-align: center;}
.tour_outline em{ color: #ff0000; font-style: normal; font-weight: bold; font-size: 100%;}
.tour_outline tr.highlight th{ background: #ffbc80;}
.tour_outline tr.highlight td{ background: #ffe4cc;}
.tour_outline td.course{ background: #e8f5ff; font-size: 132%; font-weight: bold; border-bottom-style: dashed; color: #00379c; }
.tour_outline td > *:first-child{ margin-top: 0;}
.tour_outline p{ margin-top: 1.0rem;}
.tour_outline ul.circle{ margin: 0;}
.tour_outline ul.circle li{ margin: 0; padding-left: 1.0em; text-indent: -1.0em; text-align: left;}
.tour_outline ul.circle li::before{ content: '●'; color: #00379c;}
.tour_outline thead th{ white-space: nowrap;  color: #00379c; font-size: 132%; font-weight: bold; background: #e8f5ff; text-align: left;}
@media screen and ( max-width: 480px ) {

}

.remote_outline{ text-align: center; table-layout: fixed;}
.remote_outline thead th{ white-space: nowrap;  color: #00379c; font-size: 132%; font-weight: bold; text-align: center; background: #e8f5ff;}
.remote_outline thead th:first-child{ width: 6.0em;}



.order_flow{ margin: 1.0rem 0 0 0; display: grid; grid-template-columns: repeat( 5, 1fr); gap: 0 7%;}
.order_flow li{ margin: 1.0rem 0 0 0;}
.order_flow figure{ margin: 0; padding: 0; display: block;}
.order_flow p{ margin: 0.5rem 0 0 0; line-height: 1.4; font-size: 93%;}
@media screen and ( max-width: 480px ) {
  .order_flow{ display: block;}
  .order_flow li{ display: grid;  grid-template-columns: 70px 1fr; gap: 0 7%; align-items: center;}
  .order_flow p{ text-align: left !important; margin: 0;}
}

.experience_outline{ display: grid; grid-template-columns: repeat(3,1fr); gap: 0 1.5rem; }
.experience_outline li{ border: solid 1px #003793; border-radius: 0.5rem; overflow: hidden; margin: 1.0rem 0 0 0;}
.experience_outline h3{ margin: 0; padding: 0.2rem 1.0rem; background: #003793; color: #fff; text-align: center; font-weight: bold; font-size: 124%;}
.experience_outline p{ margin: 0; padding: 0.3rem 1.0rem; text-align: center; font-size: 124%; line-height: 1.5;}
@media screen and ( max-width: 480px ) {
  .experience_outline{ grid-template-columns: 1fr;}
}

.experience_items{}
.experience_items article{ background: #f0f0f0; padding: 1.0rem; border-radius: 0.5rem; display: flex; flex-wrap: wrap; gap: 0 1.0rem; align-items: flex-start; margin: 1.5rem 0 0 0;}
.experience_items h3{ flex: 0 0 100%; margin: 0; padding: 0.2rem 1.0rem; background: #0073bc; color: #fff; text-align: center; font-weight: bold; font-size: 124%; border-radius: 0.5rem;}
.experience_items .image{ flex: 0 0 330px; margin: 1.0rem 0 0 0;}
.experience_items figure{ display:block; margin: 0;  padding: 66.6% 0 0 0; background: #fff no-repeat center center / contain; border-radius: 0.5rem;}
.experience_items .content{ margin: 1.0rem 0 0 0; flex: 1;}
.experience_items p{ margin: 0; line-height: 1.5; white-space: normal;}
.experience_items dl{ margin: 0; display: grid; grid-template-columns: auto 1fr;}
.experience_items dt{ margin: 0.5rem 0 0 0; background: #fff; padding: 0.2em 1.0em; border-radius: 0.5rem 0 0 0.5rem; border-right: solid 1px #a8a8a8; }
.experience_items dd{ margin: 0.5rem 0 0 0; background: #fff; padding: 0.2em 1.0em; border-radius: 0 0.5rem 0.5rem 0;; }

.ecotown_schedule_table{ border-collapse: separate; border-spacing: 0.5em; width: 100%;}
.ecotown_schedule_table caption{ background: #00379c; color: #fff; text-align: center; padding: 0.2em 1.0em; border-radius: 0.5rem; font-size: 124%; margin-bottom: 0.5em;}
.ecotown_schedule_table thead{}
.ecotown_schedule_table thead th{ text-align: center; font-weight: bold; color: #00379c; border: solid 1px #0073bc; border-radius: 0.5rem;}
.ecotown_schedule_table thead td{}
.ecotown_schedule_table tbody th{ font-size: 93%; text-align: center; vertical-align: middle; background: #e5e5e5; border-radius: 0.5rem; padding: 1.0rem 0.5rem;}
.ecotown_schedule_table tbody td{ font-size: 86%; text-align: center; background: #cce3f2; padding: 1.0rem 0.5rem; border-radius: 0.5rem; line-height: 1.5;}
.ecotown_schedule_table tbody td:nth-child(2n+1){ background: #b2d5eb;}
.ecotown_schedule_table tbody .intro td{ vertical-align: middle;}
.ecotown_schedule_table tbody .visit td{}
.ecotown_schedule_table tbody .visit p{ margin: 0; padding: 0.5rem; background: #fff; border-radius: 0.5em;}
.ecotown_schedule_table tbody .visit .ic_plus{ display: block; margin: 0.5rem auto; width: 1.5em; height: auto;}
.ecotown_schedule_table tbody .note th{ background: none;}
.ecotown_schedule_table tbody .note td{ background: none; padding: 0;}
.ecotown_schedule_table tbody .note td div{ margin: 0; padding: 1.0rem 0.5rem; text-align: center; background: #e5e5e5; border-radius: 0.5rem; height: 100%;}

.enepa_schedule_table{ border-collapse: separate; border-spacing: 0.5em; width: 100%;}
.enepa_schedule_table caption{ background: #00379c; color: #fff; text-align: center; padding: 0.2em 1.0em; border-radius: 0.5rem; font-size: 124%; margin-bottom: 0.5em;}
.enepa_schedule_table thead{}
.enepa_schedule_table thead th{ text-align: center; font-weight: bold; color: #00379c; border: solid 1px #0073bc; border-radius: 0.5rem;}
.enepa_schedule_table thead th .label{ margin: 0; font-size: 260%; line-height: 1.0;}
.enepa_schedule_table thead th .week{ margin: 0; font-size: 100%;}
.enepa_schedule_table thead td{}

.enepa_schedule_table tbody th{ font-size: 93%; text-align: center; vertical-align: middle; background: #e5e5e5; border-radius: 0.5rem; padding: 1.0rem 0.5rem; white-space: nowrap;}
.enepa_schedule_table tbody td{ font-size: 86%; text-align: center; background: #cce3f2; padding: 1.0rem 0.5rem; border-radius: 0.5rem; line-height: 1.5;}
.enepa_schedule_table tbody td:nth-child(2n+1){ background: #b2d5eb;}
.enepa_schedule_table tbody .intro td{ vertical-align: middle;}
.enepa_schedule_table tbody .visit td{}
.enepa_schedule_table tbody .visit div{ margin: 0;}
.enepa_schedule_table tbody .visit div .title{ margin: 0; padding: 0.5rem 0.5rem; background: #00379c; color: #fff; font-weight: bold; line-height: 1.5; font-size: 124%; border-radius: 0.5rem 0.5rem 0 0;}
.enepa_schedule_table tbody .visit div .name{ margin: 0; padding: 0.5rem; background: #fff; font-size: 77%; line-height: 1.5; border-radius: 0 0 0.5rem 0.5rem;}
.enepa_schedule_table tbody .visit .ic_arrow{ display: block; margin: 0.5rem auto; width: 4.0em; height: auto;}

.enepa_schedule_table tbody .note th{ background: none;}
.enepa_schedule_table tbody .note td{ background: none; padding: 0; position: relative;}
.enepa_schedule_table tbody .note td div{ position: relative; margin: 0; padding: 1.0rem 0.5rem; text-align: center; background: #e5e5e5; border-radius: 0.5rem; height: 100%; font-size: 86%;}

@media screen and ( max-width: 480px ) {
  .ecotown_schedule_table th,
  .ecotown_schedule_table td{ white-space: nowrap;}
  .enepa_schedule_table th,
  .enepa_schedule_table td{ white-space: nowrap;}
}







