@charset "UTF-8";
/* CSS Document */
body {
  min-height: 100vh;
  color: #3E3A39;
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  font-size: 1.5rem; /* 14px*/
  background-image: linear-gradient(180deg, rgba(0, 126, 195, 1), rgba(0, 185, 239, 1) 25%, rgba(255, 25, 255, 0)45%);
}
a:link, a:visited, a:active {
  color: #F4A100;
  text-decoration: underline;
}
a:hover {
  color: #F4A100;
  text-decoration: none;
}

.header {
  border-bottom: 1px solid #FFF;
  padding: 25px 0px;
}
.header-content-wrapper {
  margin: 0 auto;
  position: relative;
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 155%;
}
.header_box {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
h1 {
  font-family: "Vollkorn", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 3.0rem;
  color: #FFF;
}
.head-btn {
  cursor: pointer;
  align-items: center;
  margin: 0px 0px 0px 10px;
}
.head-btn a {
  text-decoration: none;
  color: #3E3A39;
  font-weight: 600;
  border: 1px solid #007DC3;
  background-color: #FFF;
  border-radius: 100vh;
  padding: 12px 60px 12px 30px;
  display: inline-block;
  position: relative;
  box-shadow: 0px 5px 0px rgb(0 111 193/ 100%);
  font-size: 1.7rem;
}
.head-btn a:hover {
  opacity: 0.5;
  -webkit-transition: all 0.8s ease;
  -moz-transition: all 0.8s ease;
  -o-transition: all 0.8s ease;
  transition: all 0.8s ease;
}
.head-btn a:after {
  content: '';
  width: 9px;
  height: 9px;
  border-bottom: 3px solid #007DC3;
  border-right: 3px solid #007DC3;
  transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  position: absolute;
  top: 40%;
  margin: 0px 0px 0px 20px;
}

.logo {
  margin: 15px 0px;
  background-color: #fff;
  padding: 0px 0px;
}
.logo div {
  width: 60%;
  margin: 30px auto;
}
.logo div:nth-child(4) {
  width: 40%;
}
.logo div:nth-child(5) {
  width: 40%;
}
.logo img {
  width: 100%;
}
.logo2 {
  display: none;
}
.poster_title {
width: 250px;
  background: url("../img/poster.png");
  background-size: 65%;
  background-color: #FFF;
  background-position: center 14px;
  background-repeat: no-repeat;
  text-align: center;
  padding: 19px 0px 18px 0px;
  margin: 0px auto 20px auto;
  position: relative;
  border: 1px solid #007DC3;
  box-shadow: 0px 5px 0px 0 #007DC3;
  border-radius: 100vh;
}
.poster_title:before {
  position: absolute;
  bottom: -13px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 7px 7px 0 7px;
  border-style: solid;
  border-color: #007DC3 transparent transparent transparent;
}
.poster_title:after {
  position: absolute;
  bottom: -7px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 7px 7px 0 7px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}
.poster {
  width: 95px;
  margin: 5px auto 10px auto;
  transform: rotate(10deg);
  box-shadow: 6px 6px 0px rgb(248 183 61 / 50%);
}
.poster img {
  width: 95px;
}
.poster a:hover {
  opacity: 0.7;
}
/*footer*/
.footer {}
.footer-wrap {
  width: 100%;
  justify-content: space-between;
  margin: 100px auto 0 auto;
  background-color: #3E3A39;
  color: #fff;
  padding: 110px 0;
  text-align: center;
  line-height: 180%;
   font-weight:500;
}
.footer-wrap a {
  color: #FFF;
  word-break: break-all;
}
.footer-wrap a:hover {
  opacity: 0.5;
  -webkit-transition: all 0.8s ease;
  -moz-transition: all 0.8s ease;
  -o-transition: all 0.8s ease;
  transition: all 0.8s ease;
}
.footer-wrap em {
  font-weight:800;
  font-style: normal;
}
.pc_none {
  display: none;
}
.sp_none {
  display: block;
}
.tb_none {
  display: none;
}
.main {
  background: url("../img/bg2.png"), url("../img/bg.png");
  background-size: 300px, 1410px;
  background-repeat: no-repeat;
  background-position: calc(50% - 320px) top, top center;
  position: relative;
}
.top-wrapper {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
}
.flex-wrap {
  padding: 0 0% 0 7%;
  width: 93%;
  margin: 40px 0 10px 0%;
  display: block;
}
.flex-wrap img {
  width: 100%;
  top: 0;
  margin: auto;
}
.info_box {
  margin: 0px auto 5px auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.info_txt1 {
  font-size: 1.8rem;
  background-color: #EF8575;
  color: #FFF;
  font-weight: 600;
  text-align: center;
  width: 12%;
  margin: 0 15px 0 0;
  padding: 3px 0px;
}
.info_txt2 {
  font-size: 2.5rem;
  width: 85%;
  text-shadow: 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF, 0px 0px 10px #FFF;
}
h2.title1 {
  margin: 55px 0px 20px 0px;
  font-family: "Vollkorn", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 7.3rem;
  color: #FFF;
  text-shadow: 0px -2px 0px #007DC3;
  line-height: 100%;
}
h2.title1 span.in_sendai {
  margin: 0px 0px 0px 60px;
}
h2.title1 span.t_2025 {
  font-size: 12.0rem;
}
.name {
  font-size: 2.5rem;
  font-weight: 800;
  color: #FFF;
}
.name_list {
  margin: 10px auto 50px auto;
  line-height: 180%;
}
.name_list li {
  font-size: 1.7rem;
  font-weight: 800;
  padding: 3px 37px;
  margin: 0px 0px 3px 0px;
}
.name_list li.bg_w {
  background: rgba(255, 255, 255, 0.7);
  border-left: 5px solid #007DC3;
}
.name_list li.bg_p {
  background: rgba(255, 231, 230, 0.7);
  border-left: 5px solid #EF8575;
}
.organizing_bg {
  margin: 300px auto 0px auto;
  background: rgba(248, 183, 61, 0.35);
  padding-inline: calc((100vw - 1200px) / 2);
  display: flex;
  justify-content: flex-end;
}
.organizing_btn {
  cursor: pointer;
  align-items: center;
  margin: 30px 0px;
}
.organizing_btn a {
  text-decoration: none;
  color: #3E3A39;
  font-weight: 600;
  font-size: 1.7rem;
  border: 1px solid #F8B73D;
  background-color: #FFF;
  border-radius: 100vh;
  padding: 12px 60px 12px 30px;
  display: inline-block;
  position: relative;
  box-shadow: 0px 5px 0px rgb(248 183 61/ 50%);
}
.organizing_btn a:hover {
  opacity: 0.8;
  -webkit-transition: all 0.8s ease;
  -moz-transition: all 0.8s ease;
  -o-transition: all 0.8s ease;
  transition: all 0.8s ease;
}
.organizing_btn a:after {
  content: '';
  width: 9px;
  height: 9px;
  border-bottom: 3px solid #F8B73D;
  border-right: 3px solid #F8B73D;
  transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  position: absolute;
  top: 40%;
  margin: 0px 0px 0px 25px;
}
.info {
  max-width: 1200px;
  width: 100%;
  margin: 0px auto 0px auto;
  position: relative;
}
.info_title {
  font-family: "Vollkorn", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 5.0rem;
  color: #007DC3;
  margin: 80px 0px 40px auto;
  padding: 0px 0px 0px 35px;
  position: relative;
  width: calc(100% - 340px);
}
.info_title:before {
  content: '';
  width: 25px;
  height: 25px;
  background: rgba(0, 125, 195, 0.2);
  border-radius: 100vh;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left: 0px;
  margin: 0px 0px 0px 0px;
}
.info_title:after {
  content: '';
  width: 10px;
  height: 10px;
  background: rgba(0, 125, 195, 1);
  border-radius: 100vh;
  border-color: #FFF;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left: 8px;
  margin: 0px 0px 0px 0px;
}
.date {
  width: calc(100% - 340px);
  margin: 0px 0px 0px auto;
  height: 350px;
  overflow-y: scroll;
}
.date dl {
  width: 100%;
  margin: 0px 0px 10px 0px;
  display: flex;
  line-height: 170%;
}
.date dt {
  padding: 0px 20px 0px 0px;
  width: auto;
  color: #007DC3;
}
.date dd {
  width: auto;
  padding: 0px 0px 0px 0px;
}
.welcome {
  width: calc(100% - 340px);
  margin: 0px 0px 0px auto;
}
.welcome img {
  width: 100%;
}
.video {
  width: calc(100% - 340px);
  margin: 20px 0px 0px auto;
}
.video iframe {
  aspect-ratio: 16 / 9;
  width: 76%;
  height: 76%;
  margin: 0 12%;
}
.ad {
  width: 865px;
  position: absolute;
  top: 300;
  right: 0;
  display: flex;
  margin: 60px 0px 40px 0px;
}
.ad a:hover {
  opacity: 0.8;
}
.banner {
  width: 180px;
  margin: 0px 20px 15px 5px;
}
.banner img {
  width: 180px;
}
.top_box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}