@charset "UTF-8";
.contain {
  min-height: 500px;
}

main .pagesec_cnt > * {margin-bottom: 0.2em;}
/* 一番最初にくる時はアキなしにする場合はここに書き足す */
main h3:first-child, main h4:first-child, main h5:first-child, main p:first-child, main table tr td p:first-child, main blockquote p:first-child {
	margin-top: 0;
}

/* 組み合わせでアキなしする場合はここに書き足す */
main h3 + h4, main h4 + h5, main h3 + p ,main h4 + p, main h5 + p {
	margin-top:0;
}

/* サブページ中見出し */
.pagesec_cnt > h3,
main h3 {
  margin-top: 2.5em;
  margin-bottom: 1em;
  padding: 0.25em 0;
  font-size: clamp(20px,4vw,24px);
  font-weight: bold;
  border-bottom: 4px solid #BBBBBB;
  position: relative;
}
main h3::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 20%;
  height: 4px;
  content: '';
  background: #3f7895;
}

/* サブページ小見出し（適宜書き換え） */
.pagesec_cnt > h4,
main h4 {
  font-size: 120%;
  margin: 1em 0 0.8em 0;
  padding:0.5em 0.8em 0.35em;
  font-weight: bold;
  color: #3f7895;
  background-color: #E1F1F2;
  line-height: 1.5;
	position: relative;
}
.pagesec_cnt > h5,
main h5 {
  font-size: 110%;
  margin: 1em 0 0.2em 0;
  padding:0.5em 0.8em 0.35em 0;
  font-weight: bold;
  line-height: 1.5;
}

/* サブページ段落 */
main p {
  font-size: 90%;
  line-height: 1.7; 
}
main p:not(.pnkz_now) p {
  margin-top: 1em;
}
main p.zero {
  margin-top: 0;
}
main p.han {
  margin-top: 0.5em;
}

/* サブページリスト */
main ul {
  margin-left: 1em;
}
main ul li {
  list-style: disc;
}
main ul.half li {
  margin-bottom: 0.5em;
}
main ol {
  margin-left: 1.5em;
}
main ol li {
  list-style: decimal;
}


/* サブページリスト */
main ul {
  margin-left: 1em;
}
main ul li {
  list-style: disc;
}
main ul.aki li {
  padding-bottom: 0.5em;
}
main ol {
  margin-left: 1.5em;
}
main ol li {
  list-style: decimal;
}
main ol.aki li {
  padding-bottom: 0.5em;
}

/* テンプレート */
table.hyou_default {
  width: 100%;
  margin-bottom: 1em;
}
table.hyou_default td {
  border: 1px solid #AAAAAA;
  background-color: #FFFFFF;
  padding: 0.5em;
  vertical-align: top;
  text-align: left;
}
table.hyou_default th {
	border: 1px solid #AAAAAA;
	background-color: #fdfae0;
	padding: 0.5em;
	vertical-align: top;
	text-align: left;
	font-weight: normal;
	width: 20%;
}
table.hyouhyou_default_aaa tr {
  padding: 0.5em;
  vertical-align: top;
  text-align: left;
}

/* table line_none */
table.non {
  border: none;
}
table.non td {
  text-align: left;
  vertical-align: top;
}
table.non th {
  text-align: left;
  vertical-align: top;
  white-space: nowrap;
  font-weight: normal;
}

/* ※一字下げ */
.kome{
  padding-left:1em !important;
  text-indent:-1em !important;
}
.kome::before {
  content:normal;
}

/* text */
main .mbm1 {margin-bottom:-1em;}
main .mb1 {margin-bottom:1em;}
main .mb2 {margin-bottom:2em;}
main .mb3 {margin-bottom:3em;}
main .mb03 {margin-bottom:0.3em;}
main .mb05 {margin-bottom:0.5em;}
main .mb15 {margin-bottom:1.5em;}

main .pl05 {padding-left:0.5em;}

main .ml1 {margin-left:1em;}

main .f85 {font-size:85%;}
main .f90 {font-size:90%;}
main .f95 {font-size:95%;}
main .f100 {font-size:100%;}
main .f105 {font-size:105%;}
main main .f110 {font-size:110%;}
main .f115 {font-size:115%;}
main .f120 {font-size:120%;}

main .uchikeshi {
   background:
url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAABGdBTUEAAK/INwWK6QAAAANQTFRFAAAAp3o92gAAAApJREFUCB1jYAAAAAIAAc/INeUAAAAASUVORK5CYII=)
0 center repeat-x;
}
main .uchikeshi.red {
   background:
url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAABGdBTUEAAK/INwWK6QAAAANQTFRF/wAAGeIJNwAAAApJREFUCB1jYAAAAAIAAc/INeUAAAAASUVORK5CYII=
) 0 center repeat-x;
}
main .underline {
  text-decoration:underline;
}
main .red {color: #FF0000;
}
main .blue {color: #1d2777;
}

/* 太字 */
main .bold{
  font-style:normal;
  font-weight:bold;
}

main .text_r{
  text-align:right;
}
main .text_c{
  text-align:center;
}

.pagehd {
  font-size: 90%;
}
.pagehd h1 {
  font-size: 60px;
}

/* Message Board */
h2 .full_name {
  font-size: 20px;
}


/* Remarks from Presidents */
.remarks {
  max-width: 240px;
  width: 100%;
  margin-inline: auto;
  margin-bottom: 2em;
}
.remarks a:hover {
  opacity: 0.6;
}
.remarks img {
  flex: 1; 
  height: 300px; 
  object-fit: cover;
}
.remarks_wrapper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  justify-content: center;
  margin-inline: auto;
  gap: 20px;
}
.img_president img {
  width: 100%;
  height: 300px; 
  display: block;
  margin-bottom: 1em;
  object-fit: cover;
  object-position: top;
}
.remarks_wrapper_greeting {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 20px;
}
.pagesec_cnt.greet p {
  line-height: 1.9;
}
.pagesec_cnt.greet.indent-text p {
  text-indent: 1em;
}
.pagesec_cnt.greet em {
  font-family:
  "Georgia", "Times New Roman", serif;
  font-style: italic;
  /* font-weight: bold; */
}


/* Instruction */
table.hyou_default tr.bg td {
  background: #EEEEEF;
}

/* 開催概要 */
table.hyou_default.info {
  margin-bottom: 3em;
}
table.hyou_default.info th {
  background: #EEEEEF;
  font-weight: bold;
}

/* Program Information ロゴの囲み */
.program_wrapper {
  max-width: 800px;
  margin-inline: auto;
  padding: 40px 20px 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
  justify-content: center;
  gap: 20px;
}
.program_wrapper > div {
  max-width: 200px;
  width: 100%;
  margin: 0 20px;
  box-shadow: 0px 0px 2px 1px rgb(0,0,0,0.1);
}
.program_wrapper > div:hover {
  opacity: 0.6;
}
.program_wrapper .title {
  padding: 5px 0 10px;
  font-size: clamp(12px,1.5vw,16px);
  text-align: center;
  line-height: 1.2;
}
.program_wrapper a {
  color: #333333;
  font-weight: bold;
}

/* JRC2026オンライン参加登録 */
table.hyou_default.regist th {
  text-align: center;
}
main table.hyou_default.regist td:nth-last-of-type(2) {
  text-align: right;
  border-right: 1px solid #FFFFFF;
}
main table.hyou_default.regist2 td:nth-last-of-type(2) {
  text-align: left;
  border-right: 1px solid #AAAAAA;
}
main table.hyou_default.regist2 td {
  vertical-align: middle;
}
table.hyou_default.instruction tr.bg td {
  background: #EEEEEF;
}

.pagesec_cnt .resistbtn a {
  display: block;
  max-width: 800px;
  width: 100%;
  padding: 10px 1em;
  margin: 2em auto 0;
  color: #FFFFFF;
  background: #8AB6E6;
  font-weight: bold;
  text-align: center;
  color: #FFF;
  font-size: 120%;
}
.pagesec_cnt .resistbtn.green a {
  background: #179A71;
}
.pagesec_cnt .resistbtn a:hover {
  opacity: 0.6;
}

/* ソーシャルイベント */
.pagesec_cnt.social .flex_btn {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .pagesec_cnt.social .flex_btn {
    margin-top: 80px;
  }
  .pagesec_cnt.social .flex_btn p:first-child {
    margin-bottom: 1em;
  }
  /* .pagesec_cnt.social .flex_btn a {
    width: 285px;
  } */
}

/* ITEMツアーのご案内 */
table.hyou_item {
  width: auto;
  margin-bottom: 1em;
}
table.hyou_item td {
  border: none;
  padding-right: 2em;
}

/* PCで表示 */
.pc_only {
  display: inline-block;
}
/* PCでは非表示 */
.sp_only, .tb_only, .pc_none {
  display: none;
}
@media screen and (max-width: 1240px) {
  /* タブレットで表示 */
  .tb_only, .pc_none {
    display: inline-block;
  }
  /* タブレットでは非表示 */
  .pc_only, .sp_only {
    display: none;
  }




  /* 下記を消さない */
}


@media screen and (max-width: 768px) {
  /* スマホで表示 */
  .sp_only, .pc_none {
    display: inline-block;
  }
  /* スマホでは非表示 */
  .pc_only, .tb_only, .sp_none {
    display: none;
  }

  /* サブページ段落 */
  main p {
    font-size: 100%;
  }

  .subheading {
    font-size: 20px;
    line-height: 1.2;
    display: block;
  }

  /* Remarks from Presidents */
  .remarks {
    max-width: 260px;
  }
  .remarks_wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
  .remarks_wrapper_greeting {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .remarks img {
    height: 200px; 
  }
  .img_president img {
    width: auto;
    height: 200px; 
    margin: 1em auto;
  }
  .pagesec_cnt.remarks p {
    text-align: center;
  }

  /* Program Information ロゴの囲み */
  .program_wrapper {
    grid-template-columns: repeat(2, 1fr);
    padding: 40px 0 0;
  }
  .program_wrapper > div {
    margin: 0 auto;
  }

  /* 下記を消さない */
}

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

  .jrc_president {
    /* max-width: 145px; */
  }
  /* 下記を消さない */
}
