@charset "UTF-8";

/* common
-------------------------------------------------------------*/
* { box-sizing: border-box; }

.pc { display: none; }
.sp { display: inline-block; }

body {
  width: 100%;
  overflow-x: hidden;
}

/* header */
#header_wrap {
  position: absolute;
  top: 0;
  width: 100%;
  height: 57px;
  padding: 12px 0;
  box-sizing: border-box;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -o-transition: all .3s ease;
}

.fixed #header_wrap {
  box-shadow: 0 0 0 8px rgba(0, 0, 0, 0.15);
  left: 0;
  background: #fff;
  position: fixed;
  z-index:999;
}

#header_wrap:after {
  content: '';
  width: 100%;
  height: 3px;
  background: url(../../img/bdr.gif) repeat;
  position: absolute;
  top: 0;
  left: 0;
}

#header { position: relative ; }
#header h1 { padding: 0 10px; }
#header h1 img { width: 29px; }

#header .entry {
  top: 0;
  right: 10px;
  position: absolute;
}

#header .entry dt, #header .entry dd {
  vertical-align: top;
  display: inline-block;
}

#header .entry dt {
  font-size: 10px;
  line-height: 1.2;
  text-align: center;
}

#header .entry dt img {
  margin: 3px auto 4px;
  width: 16px;
  display: block;
}

#header .entry dd { margin: 0 0 0 5px; }

#header .entry dd a {
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  padding: 5px 20px;
  display: block;
}

#header .entry dd a i { margin: 0 0 0 5px; }
#header .entry dd.day7 a { background: #a64a97; }
#header .entry dd.day8 a { background: #f39700; }
#header .entry dd a:hover { text-decoration: none; }

/* footer */
#footer {
  background: #000;
  color: #fff;
  text-align: center;
  padding: 13px 0;
  font-size: 10px;
  font-weight: 500;
}

#pagetop {
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -o-transition: all .3s ease;
  right: 20px;
  bottom: 20px;
  opacity: 0;
  position: fixed ;
}

.fixed #pagetop { opacity: 1; }
#pagetop img { width: 40px; }

/* mv */
.mv {
  padding: 70px 0 100px;
  background: url(../../img/mv_bg.jpg) center center no-repeat;
  background-size: cover;
}

.ribbon_50th { width: 100%; }
.mv_title { text-align: center; }
.mv_title h2 img { width: 94%; }
.mv .logo_list { margin-top: 35px; }

.mv .logo_list li {
  display: inline-block;
  margin: 0 10px;
  width: 20%;
}

.mv .logo_list li img { width: 100%; }

/* contents */
.contents {
  position: relative;
  padding: 15px 10px;
}

.inner {
  background: #fff;
  width: 100%;
  margin: 0 auto;
  padding: 10px;
}

/* tab_list */
.tab_list {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  width: 100%;
  text-align: center;
  position: absolute;
  top: -61px;
  left: 50%;
  transform: translateX(-50%);
}

.tab_list li { width: 32.5%; }

.tab_list li a,
.tab_list li span {
  text-decoration: none;
  color: #fff;
  font-weight: bold;
  border-radius: 6px 6px 0 0;
  font-size: 14px;
  padding: 15px 0 30px;
  line-height: 1.3em;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.tab_list li a:before,
.tab_list li span:before {
  content: '';
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  bottom: 7px;
  left: 50%;
  transform: translateX(-50%);
}

.tab_list li a:after,
.tab_list li span:after {
  content: '\f063';
  font-family: "Font Awesome 5 Free";
  font-size: 11px;
  position: absolute;
  bottom: 7px;
  left: 50%;
  transform: translateX(-50%);
}

.tab_list li:first-child > * { background: #6bceca; }
.tab_list li:first-child > *:after { color: #6bceca; }
.tab_list li:nth-child(2) > * { background: #d9d724; }
.tab_list li:nth-child(2) > *:after { color: #d9d724; }
.tab_list li:last-child > * { background: #ff8864; }
.tab_list li:last-child > *:after { color: #ff8864; }

/* catch */
.catch {
  text-align: center;
  background: url(../../img/bg_paper.png) center top 77px no-repeat;
  background-size: 130%;
  padding-top: 20px;
}

.catch .date,
.catch .time {
  font-weight: bold;
  letter-spacing: 0.05em;
}

.catch .date {
  font-size: 34px;
  margin-right: -8px;
}

.catch .date span {
  font-size: 26px;
  letter-spacing: 0.01em;
  margin: 0 8px 0 3px;
}

.catch .time { font-size: 30px; }

.catch .place {
  border: 3px solid #000;
  display: inline-block;
  padding: 7px 8px 6px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1em;
  margin-top: 12px;
}

.catch dl { margin-top: 20px; }

.catch dt {
  font-size: 15px;
  font-weight: bold;
  background: #000;
  color: #fff;
  display: inline-block;
  border-radius: 15px;
  margin-bottom: 7px;
  width: 100px;
  padding: 2px 0 1px;
}

.catch dd {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.6em;
}

.catch dd span { font-weight: 500; }

/* anchor_list */
.anchor_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  text-align: center;
  margin: 30px -5px 0;
}

.anchor_list li {
  flex-grow: 1;
  margin: 5px;
}

.anchor_list li a {
  position: relative;
  color: #fff;
  font-weight: bold;
  font-size: 13px;
  padding: 10px 27px 10px 10px;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.anchor_list li a:hover { text-decoration: none; }

.anchor_list li a:before,
.anchor_list li span:before {
  content: '';
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  right: 9px;
  top: 50%;
  transform: translateY(-50%);
}

.anchor_list li a:after,
.anchor_list li span:after {
  content: '\f063';
  font-family: "Font Awesome 5 Free";
  font-size: 10px;
  position: absolute;
  right: 13.5px;
  top: 50%;
  transform: translateY(-50%);
}

.nav_fixed .index03 .anchor_list {
  top: 35px;
  position: fixed;
  z-index: 999;
  width: calc(100% - 30px);
}

.nav_fixed .index03 .anchor_list a { box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.15); }
.index03 #anchor01,.index03 #anchor02,.index03 #anchor03,.index03 #anchor04,.index03 #anchor05 { padding-top:200px;margin-top:-170px; }

/* st */
.st { text-align: center; }

.st span {
  font-size: 18px;
  position: relative;
  letter-spacing: 2px;
}

.st span:before,
.st span:after {
  content: '';
  width: 40px;
  height: 4px;
  background: #000;
  display: block;
  position: absolute;
  top: 46%;
  transform: translateY(-50%);
}

.st span:before { left: -60px; }
.st span:after { right: -60px; }

/* index
-------------------------------------------------------------*/
.contents.index { background: #6bceca; }

.page_list { font-size: 0; }

.page_list li {
  width: 100%;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  overflow: hidden;
  border-width: 5px;
  border-style: solid;
  margin-bottom: 10px;
}

.page_list li a {
  color: #fff;
  display: block;
  padding: 27px 0;
  letter-spacing: 1px;
  position: relative;
}

.page_list li a:before {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  transition: .3s ease all;
}

.index .page_list li a:hover:before { transform: scale(1.1); }

.page_list li a span {
  position: relative;
  padding-left: 50px;
}

.page_list li a:hover { text-decoration: none; }

.page_list li a span:before {
  content: '';
  display: block;
  width: 23px;
  height: 23px;
  border: 3px solid #fff;
  border-radius: 50%;
  position: absolute;
  top: 48%;
  left: 0;
  transform: translateY(-50%);
}

.page_list li a span:after {
  content: '\f061';
  font-family: "Font Awesome 5 Free";
  font-size: 13px;
  position: absolute;
  top: 50%;
  left: 9px;
  transform: translateY(-50%);
}

.page_list li:first-child {
  margin-right: 40px;
  border-color: #d9d724;
}

.page_list li:first-child a:before {
  background: url(../../img/index/bg_seminar.jpg) center center no-repeat;
  background-size: cover;
}

.page_list li:first-child a span:before { border-color: #d9d724; }
.page_list li:first-child a span:after { color: #d9d724; }

.page_list li:last-child { border-color: #ff8864; }

.page_list li:last-child a:before {
  background: url(../../img/index/bg_exhibit.jpg) center center no-repeat;
  background-size: cover;
}

.page_list li:last-child a span:before { border-color: #ff8864; }
.page_list li:last-child a span:after { color: #ff8864; }

.index .anchor_list { margin: 50px 0 25px; }
.index .anchor_list li { width: calc(100% / 3); }

.index .anchor_list li:first-child a { background: #75c000; }
.index .anchor_list li:first-child a:after { color: #75c000; }
.index .anchor_list li:nth-child(2) a { background: #27d5b6; }
.index .anchor_list li:nth-child(2) a:after { color: #27d5b6; }
.index .anchor_list li:nth-child(3) a { background: #5eb7e8; }
.index .anchor_list li:nth-child(3) a:after { color: #5eb7e8; }
.index .anchor_list li:last-child a { background: #ee869a; }
.index .anchor_list li:last-child a:after { color: #ee869a; }

.index .blc { margin-bottom: 40px; }

.index .title_area {
  padding-top: 30px;
  text-align: center;
  height: 330px;
  box-sizing: border-box;
  margin: 0 -10px;
}

.index .title_area h4 {
  font-size: 16px;
  margin-top: 12px;
  font-weight: bold;
  line-height: 1.7em;
}

.index .title_area .name {
  font-weight: bold;
  font-size: 12px;
  margin-top: 10px;
}

.index .title_area .name em {
  font-style: normal;
  display: block;
  font-size: 14px;
  margin-top: 3px;
}

.index .title_area .tp {
  background: #000;
  color: #fff;
  display: inline-block;
  padding: 4px 15px;
  font-size: 11px;
  margin-top: 15px;
  letter-spacing: 0.1em;
}

.index .title_area .tp .time {
  margin-right: 15px;
  font-size: 12px;
}

.index .bdr_box { margin-top: 20px; }

.bdr_box .about.only_txt {
  margin: 0;
  font-weight: bold;
}

.index .bdr_box .txt {
  line-height: 1.8em;
  font-size: 12px;
}

.bdr_box .in_box {
  font-size: 12px;
  background: #e3e0d8;
  border-radius: 10px;
  position: relative;
  padding: 10px;
  margin-top: 13px;
  text-align: center;
}

.bdr_box .in_box .logo_oly {
  width: 74px;
  vertical-align: middle;
  display: inline-block;
}

.bdr_box .in_box .sst {
  color: #002063;
  font-weight: bold;
  font-size: 16px;
  letter-spacing: 1px;
}

.bdr_box .in_box .mascot img {
  width: 59%;
  display: inline-block;
  margin: 0 -22px 0 -25px;
}

.bdr_box .in_box .mascot > span {
  vertical-align: bottom;
  margin-bottom: -6px;
  font-size: 10px;
}

.bdr_box .in_box .mascot > span span {
  vertical-align: bottom;
  font-size: 10px;
  margin: 0 5px;
}

/* blc01 */
.index .blc01 .title_area {
  background: url(../../img/index/bg01.jpg) no-repeat;
  background-size: cover;
}

.index .blc01 .title_area h3 { font-size: 28px; }
.index .blc01 .title_area + .bdr_box { margin-top: -50px; }

/* blc02 */
.index .blc02 .title_area {
  background: url(../../img/index/bg02.jpg) no-repeat;
  background-size: cover;
}

.index .blc02 .title_area + .bdr_box { margin-top: -90px; }

/* blc03 */
.blc03 .st span:after { right: -75px; }
.index .blc03 .title_area {
  background: url(../../img/index/bg03.jpg) no-repeat;
  background-size: cover;
}

.index .blc03 .title_area + .bdr_box { margin-top: -150px; }

/* blc04 */
.blc04 .st span:after { right: -75px; }
.index .blc04 .title_area {
  background: url(../../img/index/bg04.jpg) no-repeat;
  background-size: cover;
}

.index .blc04 .title_area + .bdr_box { margin-top: -150px; }

/* spe_list */
.spe_st {
  color: #be8b4c;
  margin-bottom: 25px;
}

.spe_st span:before,
.spe_st span:after { background: #be8b4c; }

.spe_list { margin-bottom: 40px; }

.spe_list li {
  text-align: center;
  border: 1px solid #a5a5a5;
  font-weight: bold;
  font-size: 14px;
  padding: 58% 10px 10px 10px;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  letter-spacing: 0.07em;
  margin-bottom: 10px;
}

.spe_list li span {
  font-weight: normal;
  display: block;
}

.spe_list li:first-child {
  background: url(../../img/index/spe01.jpg) no-repeat;
  background-size: contain;
}
.spe_list li:nth-child(2) {
  background: url(../../img/index/spe02.jpg) no-repeat;
  background-size: contain;
}
.spe_list li:last-child {
  background: url(../../img/index/spe03.jpg) no-repeat;
  background-size: contain;
}

/* sec_access */
.sec_access { position: relative; }

.sec_access .st {
  padding-top: 28px;
  color: #373500;
  font-size: 18px;
}

.sec_access:before {
  content: '';
  position: absolute;
  width: calc(100% + 20px);
  height: 4px;
  display: block;
  background: url(../../img/bdr.gif);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.map_area {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
}

.map_area .address {
  font-size: 12px;
  margin-top: 10px;
  letter-spacing: 0.1em;
  order: 2;
}

.map_area .address .name {
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 7px;
  display: block;
  letter-spacing: normal;
}

.map_area .address .map { order: 1; }

.map_area .address .map,
.map_area .address .map iframe { width: 100%; }

.access_list { margin-top: 15px; }

.access_list li {
  padding: 15px 10px 20px;
  box-sizing: border-box;
  font-size: 16px;
  border: 1px solid #a5a5a5;
  margin-bottom: 10px;
}

.access_list li .title_from {
  font-weight: bold;
  font-size: 16px;
  text-align: center;
  padding-top: 47px;
}

.access_list li .txt {
  margin-top: 7px;
  font-size: 14px;
}

.access_list li .txt a { text-decoration: underline; }

.access_list li:first-child .title_from { background: url(../../img/index/icon_airplane.png) no-repeat top center; }
.access_list li:nth-child(2) .title_from { background: url(../../img/index/icon_train.png) no-repeat top 6px center; }
.access_list li:last-child .title_from { background: url(../../img/index/icon_car.png) no-repeat top 13px center; }


/* index02
-------------------------------------------------------------*/
.contents.index02 { background: #d9d724; }

.index02 .anchor_list {
  display: flex;
  justify-content: space-between;
  text-align: center;
}

.index02 .st { margin-top: 45px; }

/* seminar01 color */
.index02 .anchor_list li:first-child > *:after,
.seminar01_st,
.seminar01 .seminar_conts h4 { color: #a64a97; }
.index02 .anchor_list li:first-child > *,
.seminar01_st span:before,
.seminar01_st span:after,
.seminar01 .seminar_head { background: #a64a97; }
.seminar01 .seminar_conts { background: #fff1fd; }

/* seminar02 color */
.index02 .anchor_list li:nth-child(2) > *:after,
.seminar02_st,
.seminar02 .seminar_conts h4 { color: #f39700; }
.index02 .anchor_list li:nth-child(2) > *,
.seminar02_st span:before,
.seminar02_st span:after,
.seminar02 .seminar_head { background: #f39700; }
.seminar02 .seminar_conts { background: #fffaf2; }
/**/

.seminar_box { margin-top: 25px; }

.seminar_box .seminar_head {
  color: #fff;
  padding: 3px 15px;
  letter-spacing: 1px;
  overflow: hidden;
  line-height: 1.4em;
}

.seminar_box .seminar_head .time {
  float: left;
  font-size: 16px;
  letter-spacing: 0.1em;
}

.seminar_box .seminar_head .time:before {
  content: '\f017';
  font-family: "Font Awesome 5 Free";
  margin-right: 7px;
}

.seminar_box .seminar_head .place {
  float: right;
  font-size: 14px;
  position: relative;
}

.seminar_box .seminar_head .place:before {
  content: '';
  position: absolute;
  width: 1px;
  height: 60%;
  background: rgba(255,255,255,0.5);
  left: -15px;
  top: 50%;
  transform: translateY(-50%);
}

.seminar_box .seminar_conts { padding: 15px; }

.seminar_box .seminar_conts h4 {
  font-size: 16px;
  line-height: 1.5em;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #c3c3c3;
}

.seminar_box .seminar_conts h4 + p {
  font-weight: bold;
  font-size: 12px;
  letter-spacing: 1px;
  line-height: 1.7em;
}

.bdr_box {
  border: 1px solid #000;
  background: #fff;
  margin-top: 15px;
  padding: 15px;
}

.bdr_box img {
  margin: 0 auto 10px;
  display: block;
  width: 100%;
}

.bdr_box .about .name {
  font-weight: bold;
  font-size: 12px;
  line-height: 1.5em;
}

.bdr_box .about .name em {
  font-style: normal;
  font-size: 15px;
  display: block;
  margin-top: 3px;
  letter-spacing: 1px;
}

.bdr_box .about .txt {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-top: 15px;
  line-height: 1.6em;
}

.bdr_box .about .txt a { text-decoration: underline; }

/* index03
-------------------------------------------------------------*/
.contents.index03 { background: #ff8864; }

.index03 .st { margin-top: 30px; }
.index03 .anchor_list li { flex-basis: auto; }
.index03 .anchor_list li:nth-child(4) > * { padding: 10px 35px 10px 10px; }

/* seminar01 color */
.exhibit01_st,
.exhibit01 .exhibit_conts h4,
.index03 .anchor_list li:first-child > *:after { color: #e60012; }
.exhibit01_st span:before,
.exhibit01_st span:after,
.index03 .anchor_list li:first-child > *,
.exhibit01 .exhibit_head { background: #e60012; }
.exhibit01 .exhibit_conts { background: #fff1f2; }
/* seminar02 color */
.exhibit02_st,
.exhibit02 .exhibit_conts h4,
.index03 .anchor_list li:nth-child(2) > *:after { color: #f3b100; }
.exhibit02_st span:before,
.exhibit02_st span:after,
.index03 .anchor_list li:nth-child(2) > *,
.exhibit02 .exhibit_head { background: #f3b100; }
.exhibit02 .exhibit_conts { background: #fffaed; }
/* seminar03 color */
.exhibit03_st,
.exhibit03 .exhibit_conts h4,
.index03 .anchor_list li:nth-child(3) > *:after { color: #0d6fb8; }
.exhibit03_st span:before,
.exhibit03_st span:after,
.index03 .anchor_list li:nth-child(3) > *,
.exhibit03 .exhibit_head { background: #0d6fb8; }
.exhibit03 .exhibit_conts { background: #eaf6ff; }
/* seminar04 color */
.exhibit04_st,
.exhibit04 .exhibit_conts h4,
.index03 .anchor_list li:nth-child(4) > *:after { color: #23ac38; }
.exhibit04_st span:before,
.exhibit04_st span:after,
.index03 .anchor_list li:nth-child(4) > *,
.exhibit04 .exhibit_head { background: #23ac38; }
.exhibit04 .exhibit_conts { background: #f0fff2; }
/* seminar05 color */
.exhibit05_st,
.exhibit05 .exhibit_conts h4,
.index03 .anchor_list li:last-child > *:after { color: #b84d8e; }
.exhibit05_st span:before,
.exhibit05_st span:after,
.index03 .anchor_list li:last-child > *,
.exhibit05 .exhibit_head { background: #b84d8e; }
.exhibit05 .exhibit_conts { background: #fff7fc; }
/**/

.exhibit_box { margin-top: 20px; }

.exhibit_box .exhibit_head {
  color: #fff;
  padding: 4px 15px 3px;
  letter-spacing: 1px;
  overflow: hidden;
  line-height: 1.4em;
  font-weight: bold;
}

.exhibit_box .exhibit_conts { padding: 15px; }

.exhibit_box .exhibit_conts h4 {
  font-size: 16px;
  line-height: 1.5em;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #c3c3c3;
}

.exhibit_box .exhibit_conts h4 + p {
  font-weight: bold;
  font-size: 12px;
  letter-spacing: 1px;
  line-height: 1.7em;
}

/**/
.syusai {
  text-align: center;
  padding: 0 0 60px;
}

.syusai dt {
  border-radius: 30px;
  margin: 0 0 15px;
  padding: 4px 0;
  width: 150px;
  font-size:12px;
  display: inline-block;
  background: #D8D8D8;
}

.syusai dd { margin: 0 0 40px; }
