@font-face {
  font-family: 'Line Seed JP';
  src: url('../font/LINESeedJP_TTF_Eb.eot'), url('../font/LINESeedJP_OTF_Eb.woff') format('woff'), url('../font/LINESeedJP_OTF_Eb.woff2') format('woff2');
  font-style: normal;
  font-weight: 900;
  font-display: swap;
}
@font-face {
  font-family: 'Line Seed JP';
  src: url('../font/LINESeedJP_TTF_Bd.eot'), url('../font/LINESeedJP_OTF_Bd.woff') format('woff'), url('../font/LINESeedJP_OTF_Bd.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: 'Line Seed JP';
  src: url('../font/LINESeedJP_TTF_Rg.eot'), url('../font/LINESeedJP_OTF_Rg.woff') format('woff'), url('../font/LINESeedJP_OTF_Rg.woff2') format('woff2');
  font-weight: normal;
  font-style: 400;
  font-display: swap;
}
html {
  scroll-behavior: smooth;
}
body {
  font-family: 'Noto Sans JP', sans-serif;
  font-family: 'Line Seed JP';
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  background-color: #f7f5e1;
  color: #1a1a1a;
  line-height: 1.55;
  font-weight: 400;
  font-size: min(18px, 4.8vw);
}
@media screen and (min-width: 750px) {
  body {
    font-size: 16px;
  }
}
@media screen and (min-width: 750px) {
  .sp_only {
    display: none !important;
  }
}
.mt20 {
  margin-top: min(20px, 8vw);
}
.mt50 {
  margin-top: min(50px, 13vw);
}
.mt100 {
  margin-top: min(100px, 26vw);
}
.mb10 {
  margin-bottom: min(10px, 4vw) !important;
}
.mb0 {
  margin-bottom: 0 !important;
}
.mb50 {
  margin-bottom: min(50px, 13vw);
}
.mb100 {
  margin-bottom: min(100px, 26vw);
}
.anker-m60 {
  position: relative;
}
.anker-m60 > span {
  position: absolute;
  top: max(-110px, -27vw);
}
@media screen and (min-width: 750px) {
  .anker-m60 > span {
    top: -60px;
  }
}
.anker-m100 {
  position: relative;
}
.anker-m100 > span {
  position: absolute;
  top: max(-135px, -37vw);
}
@media screen and (min-width: 750px) {
  .anker-m100 > span {
    top: -100px;
  }
}
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}
a {
  color: #1a1a1a;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
a:hover {
  text-decoration: none;
}
b {
  font-weight: 700;
}
dt a,
dd a,
li a,
p a {
  display: inline-block;
}
dt a:hover,
dd a:hover,
li a:hover,
p a:hover {
  position: relative;
  text-decoration: none;
}
dt a:hover:before,
dd a:hover:before,
li a:hover:before,
p a:hover:before {
  position: absolute;
  content: "";
  height: 1px;
  background-image: repeating-linear-gradient(90deg, #1a1a1a, #1a1a1a 2px, transparent 2px, transparent 4px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 1px;
  width: 100%;
  bottom: 3px;
}
h1 {
  font-size: min(37px, 9.86666667vw);
  font-weight: 700;
}
@media screen and (min-width: 750px) {
  h1 {
    font-size: 35px;
  }
}
h2 {
  font-size: min(37px, 9.86666667vw);
  font-weight: 700;
  color: #1a1a1a;
  text-align: center;
  margin-top: min(40px, 10.6vw);
}
@media screen and (min-width: 750px) {
  h2 {
    font-size: 35px;
  }
}
h2.boxtitle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(../img/icon/mic.svg);
  background-repeat: no-repeat;
  background-size: min(40px, 10.6vw);
  background-color: #fff;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  line-height: 1.6;
  font-size: min(32px, 8.53333333vw);
  font-weight: 700;
  margin-bottom: min(30px, 8vw);
  border-radius: min(6px, 1.6vw);
  background-position: left min(23px, 6.13vw) center;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(80px, 21vw);
}
@media screen and (min-width: 750px) {
  h2.boxtitle {
    font-size: 30px;
  }
}
@media only screen and (min-width: 750px) {
  h2.boxtitle {
    min-height: min(107px, 28.5vw);
    border-radius: 12px;
    background-position: left min(47px, 12.5vw) center;
    padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(115px, 30.6vw);
  }
}
@media only screen and (min-width: 750px) {
  h2.boxtitle {
    margin-bottom: min(40px, 10.6vw);
    padding: 16px 10px 16px 115px;
  }
}
h2.boxtitle span {
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  h2.boxtitle span {
    line-clamp: 3;
    -webkit-line-clamp: 3;
  }
}
h2.songtitle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(../img/icon/song.svg);
  background-repeat: no-repeat;
  background-size: min(40px, 10.6vw);
  background-color: #fff;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  line-height: 1.6;
  font-size: min(32px, 8.53333333vw);
  font-weight: 700;
  margin-bottom: min(30px, 8vw);
  border-radius: min(6px, 1.6vw);
  background-position: left min(23px, 6.13vw) center;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(80px, 21vw);
}
@media screen and (min-width: 750px) {
  h2.songtitle {
    font-size: 30px;
  }
}
@media only screen and (min-width: 750px) {
  h2.songtitle {
    min-height: min(107px, 28.5vw);
    border-radius: 12px;
    background-position: left min(47px, 12.5vw) center;
    padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(115px, 30.6vw);
  }
}
@media only screen and (min-width: 750px) {
  h2.songtitle {
    margin-bottom: min(40px, 10.6vw);
    padding: 16px 10px 16px 115px;
  }
}
h2.songtitle span {
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  h2.songtitle span {
    line-clamp: 3;
    -webkit-line-clamp: 3;
  }
}
h2.downloadtitle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(../img/icon/download.svg);
  background-repeat: no-repeat;
  background-size: min(40px, 10.6vw);
  background-color: #fff;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  line-height: 1.6;
  font-size: min(32px, 8.53333333vw);
  font-weight: 700;
  margin-bottom: min(30px, 8vw);
  border-radius: min(6px, 1.6vw);
  background-position: left min(23px, 6.13vw) center;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(80px, 21vw);
}
@media screen and (min-width: 750px) {
  h2.downloadtitle {
    font-size: 30px;
  }
}
@media only screen and (min-width: 750px) {
  h2.downloadtitle {
    min-height: min(107px, 28.5vw);
    border-radius: 12px;
    background-position: left min(47px, 12.5vw) center;
    padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(115px, 30.6vw);
  }
}
@media only screen and (min-width: 750px) {
  h2.downloadtitle {
    margin-bottom: min(40px, 10.6vw);
    padding: 16px 10px 16px 115px;
  }
}
h2.downloadtitle span {
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  h2.downloadtitle span {
    line-clamp: 3;
    -webkit-line-clamp: 3;
  }
}
h2.specialtitle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(../img/icon/special.svg);
  background-repeat: no-repeat;
  background-size: min(40px, 10.6vw);
  background-color: #fff;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  line-height: 1.6;
  font-size: min(32px, 8.53333333vw);
  font-weight: 700;
  margin-bottom: min(30px, 8vw);
  border-radius: min(6px, 1.6vw);
  background-position: left min(23px, 6.13vw) center;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(80px, 21vw);
}
@media screen and (min-width: 750px) {
  h2.specialtitle {
    font-size: 30px;
  }
}
@media only screen and (min-width: 750px) {
  h2.specialtitle {
    min-height: min(107px, 28.5vw);
    border-radius: 12px;
    background-position: left min(47px, 12.5vw) center;
    padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(115px, 30.6vw);
  }
}
@media only screen and (min-width: 750px) {
  h2.specialtitle {
    margin-bottom: min(40px, 10.6vw);
    padding: 16px 10px 16px 115px;
  }
}
h2.specialtitle span {
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  h2.specialtitle span {
    line-clamp: 3;
    -webkit-line-clamp: 3;
  }
}
h3 {
  font-size: min(24px, 6.4vw);
  font-weight: 700;
  color: #006837;
  background-color: #eee9c9;
  border-radius: 11.6px;
  padding: 11px 30px;
}
@media screen and (min-width: 750px) {
  h3 {
    font-size: 22px;
  }
}
h3.green {
  font-size: min(27px, 7.2vw);
  color: #009145;
  text-align: center;
  background: none;
  padding: 0;
}
@media screen and (min-width: 750px) {
  h3.green {
    font-size: 25px;
  }
}
h4 {
  position: relative;
  font-size: min(22px, 5.86666667vw);
  font-weight: 700;
  color: #006837;
  border: 1px solid #009145;
  padding: 10px 30px 5px;
}
@media screen and (min-width: 750px) {
  h4 {
    font-size: 20px;
  }
}
h4.black {
  color: #1a1a1a;
}
h4.advisor {
  padding: 10px 10px 5px 10px;
  margin-top: 70px;
}
@media screen and (min-width: 750px) {
  h4.advisor {
    padding: 10px 10px 5px 170px;
    margin-top: 25px;
  }
}
h4.advisor:before {
  content: "指導助言者";
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #009145;
  font-size: min(20px, 5.3vw);
  font-weight: 700;
  color: #fff;
  position: absolute;
  height: min(45px, 12vw);
  top: max(-45px, -12vw);
  left: 0;
  padding: min(9px, 2.4vw) min(30px, 8vw) 0;
}
@media screen and (min-width: 750px) {
  h4.advisor:before {
    bottom: 0;
    top: 0;
    height: 100%;
    padding: 10px 30px 5px;
  }
}
h5 {
  font-size: min(22px, 5.86666667vw);
  font-weight: 700;
  color: #006837;
}
@media screen and (min-width: 750px) {
  h5 {
    font-size: 20px;
  }
}
h5.black {
  color: #1a1a1a;
}
h6 {
  font-size: min(22px, 5.86666667vw);
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1.2;
  margin-top: 0.2em;
  margin-bottom: 0.4em;
}
@media screen and (min-width: 750px) {
  h6 {
    font-size: 20px;
  }
}
ul {
  padding: 0px;
  margin: 0px;
  list-style: none;
  font-size: min(20px, 5.33333333vw);
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  ul {
    font-size: 18px;
  }
}
ul > li {
  position: relative;
  padding: 0px 0px 0px 1em;
  margin-bottom: 8px;
}
ul > li:before {
  position: absolute;
  top: 0.5em;
  left: 1px;
  width: 0px;
  height: 0px;
  border-radius: inherit;
  border: 0.27em solid transparent;
  border-left: 0.4em solid #1a1a1a;
  content: "";
}
ul.dot {
  padding: 0px;
  margin: 0px;
  list-style: none;
  font-size: min(20px, 5.33333333vw);
  line-height: 1.55;
}
@media screen and (min-width: 750px) {
  ul.dot {
    font-size: 18px;
  }
}
ul.dot > li {
  position: relative;
  padding: 0px 0px 0px 1em;
}
ul.dot > li:before {
  position: absolute;
  top: 0.5em;
  left: 1px;
  width: 0px;
  height: 0px;
  border-radius: 0.2em;
  border: 0.2em solid #009145;
  content: "";
}
ul.green,
ul.list_triangle {
  padding: 0px;
  margin: 0px;
  list-style: none;
}
ul.green > li,
ul.list_triangle > li {
  position: relative;
  padding: 0px 0px 0px 1em;
}
ul.green > li:before,
ul.list_triangle > li:before {
  position: absolute;
  top: 0.5em;
  left: 1px;
  width: 0px;
  height: 0px;
  border-radius: inherit;
  border: 0.3em solid transparent;
  border-left: 0.45em solid #009145;
  content: "";
}
.fs18 {
  font-size: min(20px, 5.33333333vw);
}
@media screen and (min-width: 750px) {
  .fs18 {
    font-size: 18px;
  }
}
.fs18 a {
  display: inline-block;
}
.fs18 a:hover {
  position: relative;
  text-decoration: none;
}
.fs18 a:hover:before {
  position: absolute;
  content: "";
  height: 1px;
  background-image: repeating-linear-gradient(90deg, #1a1a1a, #1a1a1a 2px, transparent 2px, transparent 4px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 1px;
  width: 100%;
  bottom: 3px;
}
p {
  font-size: min(20px, 5.33333333vw);
}
@media screen and (min-width: 750px) {
  p {
    font-size: 18px;
  }
}
p span.paragraph_indent {
  padding-left: 1em;
}
p.justify {
  text-align: justify;
}
p.note {
  font-size: 95%;
  text-indent: -1em;
  padding-left: 1em;
}
p.note a {
  display: inline;
}
p.center {
  text-align: center;
}
p.fs35,
p .fs35 {
  font-size: min(35px, 9.33vw);
  line-height: 1.4;
}
p.fs26,
p .fs26 {
  font-size: min(26px, 6.93vw);
  line-height: 1.4;
}
p.fs17,
p .fs17 {
  font-size: min(19px, 5.06666667vw);
  line-height: 1.65;
}
@media screen and (min-width: 750px) {
  p.fs17,
  p .fs17 {
    font-size: 17px;
  }
}
p.name,
p .name {
  font-size: min(22px, 5.86666667vw);
  color: #006837;
  font-weight: 700;
  line-height: 1.55;
  margin-top: 15px;
  margin-bottom: 0;
}
@media screen and (min-width: 750px) {
  p.name,
  p .name {
    font-size: 20px;
  }
}
p.period {
  font-size: min(31px, 8.2vw);
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  p.period {
    font-size: min(35px, 9.33vw);
    margin-bottom: 0.5em;
  }
}
p.period small {
  font-size: 74%;
}
span.presenter {
  display: inline-block;
  background-color: #004cb9;
  color: #fff;
  padding-left: 10px;
  padding-right: 10px;
  margin-right: 13px;
  font-size: min(16.8px, 4.48vw);
}
@media screen and (min-width: 750px) {
  span.presenter {
    font-size: 15px;
    padding: 2px 10px 1px;
  }
}
span.participants {
  display: inline-block;
  background-color: #00a89c;
  color: #fff;
  padding-left: 10px;
  padding-right: 10px;
  margin-right: 13px;
  font-size: min(16.8px, 4.48vw);
}
@media screen and (min-width: 750px) {
  span.participants {
    font-size: 15px;
    padding: 2px 10px 1px;
  }
}
span.advisor {
  display: inline-block;
  background-color: #5434c5;
  color: #fff;
  padding-left: 10px;
  padding-right: 10px;
  margin-right: 13px;
  font-size: min(16.8px, 4.48vw);
}
@media screen and (min-width: 750px) {
  span.advisor {
    font-size: 15px;
    padding: 2px 10px 1px;
  }
}
table {
  border-collapse: collapse;
}
table tr th {
  border: solid 1px #009145;
  background-color: rgba(0, 145, 69, 0.1);
  padding: min(5px, 1.3vw) min(10px, 2.6vw);
  font-size: min(20px, 5.33333333vw);
}
@media screen and (min-width: 750px) {
  table tr th {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  table tr th {
    text-align: center;
    padding: 10px 30px;
  }
}
table tr td {
  border: solid 1px #009145;
  padding: min(10px, 2.6vw) min(10px, 2.6vw);
  font-size: min(20px, 5.33333333vw);
  word-wrap: anywhere;
}
@media screen and (min-width: 750px) {
  table tr td {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  table tr td {
    width: -70%;
    padding: 10px 30px;
  }
}
table.fixed {
  table-layout: fixed;
  width: 100%;
}
table.full {
  width: 800px;
}
dl:not([class]) {
  border-bottom: 1px solid #009145;
}
dl:not([class]) > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: min(20px, 5.33333333vw);
  border-top: 1px solid #009145;
}
@media screen and (min-width: 750px) {
  dl:not([class]) > div {
    font-size: 18px;
  }
}
dl:not([class]) > div dt {
  width: 100%;
  background-color: rgba(0, 145, 69, 0.1);
  padding: min(5px, 1.3vw) min(10px, 2.6vw);
}
@media screen and (min-width: 750px) {
  dl:not([class]) > div dt {
    text-align: center;
    width: 170px;
    padding: 10px 30px;
  }
}
dl:not([class]) > div dd {
  width: 100%;
  padding: min(10px, 2.6vw) min(10px, 2.6vw);
}
@media screen and (min-width: 750px) {
  dl:not([class]) > div dd {
    width: -70%;
    padding: 10px 30px;
  }
}
dl.type01 > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  font-size: min(20px, 5.33333333vw);
  /*
			dd{
			}
*/
}
@media screen and (min-width: 750px) {
  dl.type01 > div {
    font-size: 18px;
  }
}
dl.type01 > div dt {
  white-space: nowrap;
}
dl.type02 > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: 30px;
  font-size: min(20px, 5.33333333vw);
}
@media screen and (min-width: 750px) {
  dl.type02 > div {
    font-size: 18px;
  }
}
dl.type02 > div dt {
  width: 100%;
}
dl.type02 > div dd {
  padding-left: 0.5em;
}
dl.type02 > div dd p {
  margin-top: 0;
}
dl.type02 > div dd p.presenter {
  display: inline-block;
}
dl.type02 > div dd p.overview {
  background-color: rgba(255, 255, 255, 0.7);
  font-size: 90%;
  padding: 0.5em 0.7em;
  margin-bottom: 0.5em;
}
dl.type02 > div dd p.overview span.paragraph_indent {
  padding-left: 1em;
  padding-left: 0;
}
.news_tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  position: relative;
  padding-top: 85px;
}
div[role="tablist"] {
  position: absolute;
  top: 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
button[role="tab"] {
  border: none;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 85px;
  padding-top: 15px;
  cursor: pointer;
  line-height: 1.1;
  color: #fff;
  font-size: min(25px, 6vw);
  font-weight: 700;
  height: 70px;
  margin-top: 15px;
  padding-top: 0;
}
button[role="tab"].active,
button[role="tab"]:hover {
  margin-top: 0;
  padding-top: 15px;
  height: 85px;
}
button[role="tab"].all {
  background-color: #009145;
}
button[role="tab"].participants {
  background-color: #00a89c;
}
button[role="tab"].presenter {
  background-color: #004cb9;
}
button[role="tab"].advisor {
  background-color: #5434c5;
}
button[role="tab"][aria-selected="true"] {
  margin-top: 0;
  padding-top: 15px;
  height: 85px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
button[role="tab"][aria-selected="false"]:hover {
  margin-top: 0;
  padding-top: 15px;
  height: 85px;
  cursor: pointer;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
div[role="tabpanel"] {
  background-color: #fff;
  padding: 2px 10px 5px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  width: 100%;
}
@media screen and (min-width: 750px) {
  div[role="tabpanel"] {
    padding: 2px 40px 5px;
  }
}
div[role="tabpanel"].all {
  border: 2px solid #009145;
}
div[role="tabpanel"].participants {
  border: 2px solid #00a89c;
}
div[role="tabpanel"].presenter {
  border: 2px solid #004cb9;
}
div[role="tabpanel"].advisor {
  border: 2px solid #5434c5;
}
div[role="tabpanel"] span,
div[role="tabpanel"] a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 10px;
  padding-right: 0;
  font-size: min(20px, 5.33333333vw);
}
@media screen and (min-width: 750px) {
  div[role="tabpanel"] span,
  div[role="tabpanel"] a {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  div[role="tabpanel"] span,
  div[role="tabpanel"] a {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
div[role="tabpanel"] span .date,
div[role="tabpanel"] a .date {
  width: 130px;
  font-size: min(20px, 5.5vw);
  margin-bottom: 5px;
}
@media screen and (min-width: 750px) {
  div[role="tabpanel"] span .date,
  div[role="tabpanel"] a .date {
    margin-bottom: 0;
    font-size: 18px;
  }
}
div[role="tabpanel"] span .title,
div[role="tabpanel"] a .title {
  position: relative;
  width: 100%;
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  div[role="tabpanel"] span .title,
  div[role="tabpanel"] a .title {
    width: calc(100% - 130px);
    line-height: 1.55;
  }
}
div[role="tabpanel"] span .title > span,
div[role="tabpanel"] a .title > span {
  position: absolute;
  top: max(-34px, -9.7vw);
  left: min(130px, 38vw);
}
@media screen and (min-width: 750px) {
  div[role="tabpanel"] span .title > span,
  div[role="tabpanel"] a .title > span {
    position: initial;
  }
}
div[role="tabpanel"] a:hover {
  color: #ff6a1f;
}
div[role="tabpanel"] a:hover span {
  text-decoration: none;
}
div[role="tabpanel"] a + a {
  border-top: 1px solid #cbcbcb;
}
.news_list {
  background-color: #fff;
  padding: 2px 10px 5px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  width: 100%;
  margin-top: 30px;
}
@media screen and (min-width: 750px) {
  .news_list {
    padding: 2px 40px 5px;
  }
}
.news_list.all {
  border: 2px solid #009145;
}
.news_list.participants {
  border: 2px solid #00a89c;
}
.news_list.presenter {
  border: 2px solid #004cb9;
}
.news_list.advisor {
  border: 2px solid #5434c5;
}
.news_list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 10px;
  padding-right: 0;
  font-size: min(20px, 5.33333333vw);
}
@media screen and (min-width: 750px) {
  .news_list a {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  .news_list a {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
.news_list a .date {
  width: 130px;
  margin-bottom: 5px;
  font-size: min(20px, 5.33333333vw);
}
@media screen and (min-width: 750px) {
  .news_list a .date {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  .news_list a .date {
    margin-bottom: 0;
  }
}
.news_list a .title {
  position: relative;
  width: 100%;
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  .news_list a .title {
    width: calc(100% - 130px);
    line-height: 1.55;
  }
}
.news_list a .title > span {
  position: absolute;
  left: min(130px, 38vw);
  top: max(-34px, -9.7vw);
}
@media screen and (min-width: 750px) {
  .news_list a .title > span {
    position: initial;
  }
}
.news_list a:hover span {
  text-decoration: none;
}
.news_list a + a {
  border-top: 1px solid #cbcbcb;
}
.news_wrap {
  width: 100%;
  margin-top: min(30px, 8vw);
  margin-bottom: min(80px, 21.3vw);
}
.news_wrap h2 {
  margin-top: min(30px, 8vw);
  font-size: min(22px, 5.86vw);
  font-weight: 700;
  color: #006837;
  background-color: #eee9c9;
  border-radius: 11.6px;
  padding: 11px 15px;
  text-align: left;
}
@media screen and (min-width: 750px) {
  .news_wrap h2 {
    padding: 11px 30px;
  }
}
.news_wrap .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 10px;
  padding-right: 0;
  font-size: 20px;
  font-size: min(20px, 5.3vw);
}
@media screen and (min-width: 750px) {
  .news_wrap .info {
    padding-top: 25px;
    padding-bottom: 25px;
    font-size: 18px;
  }
}
.news_wrap .info .date {
  width: 130px;
  font-size: min(20px, 5.5vw);
  margin-bottom: 5px;
}
@media screen and (min-width: 750px) {
  .news_wrap .info .date {
    margin-bottom: 0;
    font-size: 18px;
  }
}
.news_wrap .info .title {
  position: relative;
  width: 100%;
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  .news_wrap .info .title {
    width: calc(100% - 130px);
    line-height: 1.55;
  }
}
.news_wrap .info .title > span {
  position: absolute;
  left: min(130px, 38vw);
  top: max(-34px, -9.7vw);
}
@media screen and (min-width: 750px) {
  .news_wrap .info .title > span {
    position: initial;
  }
}
.news_wrap p {
  font-size: min(20px, 5.3vw);
  margin-bottom: 1em;
  line-height: 1.94;
}
@media screen and (min-width: 750px) {
  .news_wrap p {
    font-size: 18px;
    line-height: 1.94;
  }
}
.contents_wrap {
  width: 100%;
  margin-top: min(30px, 8vw);
  margin-bottom: min(80px, 21.3vw);
}
.contents_wrap h2 {
  margin-top: min(30px, 8vw);
  font-size: min(22px, 5.86vw);
  font-weight: 700;
  color: #006837;
  background-color: #eee9c9;
  border-radius: 11.6px;
  padding: 11px 15px;
  text-align: left;
}
@media screen and (min-width: 750px) {
  .contents_wrap h2 {
    padding: 11px 30px;
  }
}
.contents_wrap .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 10px;
  padding-right: 0;
  font-size: min(20px, 5.33333333vw);
}
@media screen and (min-width: 750px) {
  .contents_wrap .info {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  .contents_wrap .info {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
.contents_wrap .info .date {
  width: 130px;
  font-size: min(20px, 5.33333333vw);
  margin-bottom: 5px;
}
@media screen and (min-width: 750px) {
  .contents_wrap .info .date {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  .contents_wrap .info .date {
    margin-bottom: 0;
  }
}
.contents_wrap .info .title {
  position: relative;
  width: 100%;
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  .contents_wrap .info .title {
    width: calc(100% - 130px);
    line-height: 1.55;
  }
}
.contents_wrap .info .title > span {
  position: absolute;
  left: min(130px, 38vw);
  top: max(-34px, -9.7vw);
}
@media screen and (min-width: 750px) {
  .contents_wrap .info .title > span {
    position: initial;
  }
}
.contents_wrap p {
  font-size: min(20px, 5.33333333vw);
  margin-bottom: min(20px, 5.3vw);
  line-height: 1.94;
}
@media screen and (min-width: 750px) {
  .contents_wrap p {
    font-size: 18px;
  }
}
.contents_wrap p.fs35,
.contents_wrap p .fs35 {
  font-size: min(37px, 9.86666667vw);
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  .contents_wrap p.fs35,
  .contents_wrap p .fs35 {
    font-size: 35px;
  }
}
.contents_wrap p.fs26,
.contents_wrap p .fs26 {
  font-size: min(28px, 7.46666667vw);
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  .contents_wrap p.fs26,
  .contents_wrap p .fs26 {
    font-size: 26px;
  }
}
.contents_wrap p.name,
.contents_wrap p .name {
  font-size: min(22px, 5.86666667vw);
  color: #006837;
  font-weight: 700;
  line-height: 1.55;
  margin-top: 15px;
  margin-bottom: 0;
}
@media screen and (min-width: 750px) {
  .contents_wrap p.name,
  .contents_wrap p .name {
    font-size: 20px;
  }
}
.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style-type: none;
  padding: 0;
  margin-top: 60px;
  margin-bottom: 80px;
  font-size: 17px;
  gap: 0 8px;
}
@media screen and (min-width: 750px) {
  .pagination {
    gap: 0 16px;
  }
}
.pagination a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 42px;
  height: 42px;
  border-radius: 42px;
  background-color: #fff;
  border: 1px solid #009145;
  color: #009145;
  text-decoration: none;
}
@media screen and (min-width: 750px) {
  .pagination a {
    width: 53px;
    height: 53px;
    border-radius: 53px;
  }
}
.pagination a:hover {
  text-decoration: none;
  background-color: #009145;
  color: #fff;
}
.pagination .current a {
  background-color: #009145;
  color: #fff;
  pointer-events: none;
}
.pagination .prev span,
.pagination .next span,
.pagination .prev a,
.pagination .next a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  /*
			justify-content: center;
			align-items: center;
*/
  background: none;
  border: none;
  color: #009145;
  font-size: 25px;
  width: 30px;
  height: auto;
  position: relative;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
}
.pagination .prev span:before,
.pagination .next span:before,
.pagination .prev a:before,
.pagination .next a:before,
.pagination .prev span:after,
.pagination .next span:after,
.pagination .prev a:after,
.pagination .next a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.pagination .prev span:before,
.pagination .next span:before,
.pagination .prev a:before,
.pagination .next a:before {
  left: 0;
  width: 16px;
  height: 16px;
  border-top: 3px solid #009145;
  border-right: 3px solid #009145;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pagination .prev span,
.pagination .next span {
  color: #ccc;
}
.pagination .prev span:before,
.pagination .next span:before {
  left: 0;
  width: 16px;
  height: 16px;
  border-top: 3px solid #ccc;
  border-right: 3px solid #ccc;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pagination .end {
  margin-left: auto;
}
.pagination .start {
  margin-right: auto;
}
.pagination .prev a:before {
  right: 0;
  left: inherit;
  width: 16px;
  height: 16px;
  border-top: 3px solid #009145;
  border-right: 3px solid #009145;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.pagination .prev span {
  color: #ccc;
}
.pagination .prev span:before {
  right: 0;
  left: inherit;
  width: 16px;
  height: 16px;
  border-top: 3px solid #ccc;
  border-right: 3px solid #ccc;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.65;
}
@media screen and (min-width: 750px) {
  .profile {
    display: block;
  }
}
.profile p {
  font-size: min(19px, 5.06666667vw);
}
@media screen and (min-width: 750px) {
  .profile p {
    font-size: 17px;
  }
}
.profile img {
  text-align: center;
  width: 158px;
  height: auto;
  vertical-align: bottom;
  margin: 10px;
}
@media screen and (min-width: 750px) {
  .profile img {
    float: right;
    margin: 0 0 10px 30px;
  }
}
.profile:after {
  content: "";
  display: block;
  clear: both;
}
.theme {
  line-height: 1.55;
  font-size: min(27px, 7.2vw);
}
@media screen and (min-width: 750px) {
  .theme {
    font-size: 25px;
  }
}
@media screen and (min-width: 750px) {
  .theme {
    text-align: center;
    line-height: 1.68;
  }
}
.theme strong {
  font-weight: 700;
}
.btn_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: min(30px, 8vw);
}
.btn_link a {
  background-color: #ff921e;
  color: #fff;
  text-decoration: none;
  height: min(75px, 20vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 11.8px;
  width: min(350px, 80vw);
  -webkit-box-shadow: 0px 0px min(20px, 5.3vw) -2px #727272;
          box-shadow: 0px 0px min(20px, 5.3vw) -2px #727272;
}
.btn_link a span {
  font-size: min(22px, 5.9vw);
  font-weight: 700;
}
.btn_link a:hover {
  text-decoration: none;
  background-color: #ff6a1f;
}
.btn_form {
  display: block;
}
@media screen and (min-width: 750px) {
  .btn_form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 97px;
  }
}
.btn_form a {
  background-color: #ff921e;
  color: #fff;
  text-decoration: none;
  height: min(75px, 20vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 750px) {
  .btn_form a {
    border-radius: 11.8px;
    width: 350px;
    -webkit-box-shadow: 0px 0px 20px -2px #727272;
            box-shadow: 0px 0px 20px -2px #727272;
  }
}
.btn_form a span {
  background-image: url(../img/icon_form.svg);
  background-position: left center;
  background-repeat: no-repeat;
  font-size: min(22px, 5.9vw);
  font-weight: 700;
  padding-left: 45px;
}
.btn_form a:hover {
  text-decoration: none;
  background-color: #ff6a1f;
}
.toppage .btn_form {
  margin-top: 97px;
}
aside.nav {
  background-color: #009145;
  -webkit-box-shadow: 0px 0px 20px -2px rgba(25, 25, 25, 0.5);
          box-shadow: 0px 0px 20px -2px rgba(25, 25, 25, 0.5);
  /* Safari */
  position: sticky;
  top: 0;
  z-index: 98;
}
aside.nav nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1px;
  background-color: rgba(255, 255, 255, 0.5);
  width: 100%;
}
@media screen and (min-width: 750px) {
  aside.nav nav ul {
    width: min(1000px, 100%);
    margin-left: auto;
    margin-right: auto;
    border-left: 1px solid transparent;
    border-right: 1px solid transparent;
  }
}
aside.nav nav ul li {
  width: calc((100% - 1px) / 2);
  height: min(60px, 16vw);
  margin-bottom: 0;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  padding: 0;
}
@media screen and (min-width: 750px) {
  aside.nav nav ul li {
    height: 80px;
    width: inherit;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
aside.nav nav ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: min(22px, 4vw);
  font-weight: 700;
  background-color: #009145;
  /*
						span{
						}
*/
}
aside.nav nav ul li a:hover {
  text-decoration: none;
  background-color: #015b2a;
}
aside.nav nav ul li a:hover:before {
  content: none;
}
aside.nav nav ul li a.auth {
  color: #ffff00;
}
aside.nav nav ul li a.auth span {
  background-image: url(../img/icon_auth.svg);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: min(22px, 4vw);
  font-size: min(22px, 4vw);
  font-weight: 700;
  padding-left: min(40px, 6vw);
}
aside.nav nav ul li a.auth:hover {
  text-decoration: none;
  background-color: #fb4100;
}
aside.nav nav ul li:before {
  content: none;
}
aside.floating_menu {
  display: none;
  z-index: 99;
}
@media screen and (min-width: 750px) {
  aside.floating_menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    right: 0;
    top: 280px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
aside.floating_menu a {
  background-color: #ff921e;
  border-top-left-radius: 11.8px;
  border-bottom-left-radius: 11.8px;
  color: #fff;
  text-decoration: none;
  width: 70px;
  height: 250px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  -webkit-box-shadow: 0px 0px 20px -2px rgba(25, 25, 25, 0.5);
          box-shadow: 0px 0px 20px -2px rgba(25, 25, 25, 0.5);
  font-size: 22px;
  font-weight: 700;
}
aside.floating_menu a span {
  background-image: url(../img/icon_form.svg);
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: 40px;
}
aside.floating_menu a:hover {
  text-decoration: none;
  background-color: #ff6a1f;
}
aside.floating_menu.hight a {
  height: 280px;
}
header {
  background-image: url(../img/header/header_bg_sp.webp);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  aspect-ratio: 0.77002053;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
}
@media screen and (min-width: 750px) {
  header {
    background-image: url(../img/header/header_bg.webp);
    height: 360px;
    background-position: center center;
  }
}
header > .inner {
  width: 98%;
  margin-left: auto;
  margin-right: auto;
}
header > .inner .h_66th {
  text-align: center;
  font-size: 30px;
  line-height: 1;
  color: #fff;
  margin-top: 20vw;
  margin-bottom: 50px;
  -webkit-filter: drop-shadow(0px 0px 4px rgba(25, 25, 25, 0.5));
          filter: drop-shadow(0px 0px 4px rgba(25, 25, 25, 0.5));
}
@media screen and (min-width: 750px) {
  header > .inner .h_66th {
    margin-top: 0;
    margin-bottom: 30px;
  }
}
header > .inner .h_5th {
  text-align: center;
  font-size: 22px;
  line-height: 1;
  color: #fff;
  margin-bottom: 15px;
  -webkit-filter: drop-shadow(0px 0px 4px rgba(25, 25, 25, 0.5));
          filter: drop-shadow(0px 0px 4px rgba(25, 25, 25, 0.5));
}
header > .inner .h_62th {
  text-align: center;
  font-size: 22px;
  line-height: 1;
  color: #fff;
  margin-bottom: 15px;
  -webkit-filter: drop-shadow(0px 0px 4px rgba(25, 25, 25, 0.5));
          filter: drop-shadow(0px 0px 4px rgba(25, 25, 25, 0.5));
}
main > .wrap {
  width: min(800px, 95%);
  margin-left: auto;
  margin-right: auto;
}
main > .wrap .box {
  padding: 20px 20px  30px;
}
@media screen and (min-width: 750px) {
  main > .wrap .box {
    padding: 20px 30px;
  }
}
main > .wrap .box.white {
  background-color: #fff;
  border-radius: 9.4px;
}
.contact {
  background-image: url(../img/bg_footer.webp);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: cover;
}
.contact > .inner {
  background-color: rgba(0, 145, 69, 0.83);
  padding-top: min(95px, 24vw);
  padding-bottom: min(120px, 32vw);
  text-align: center;
  color: #fff;
}
.contact > .inner h2 {
  color: #fff;
  font-size: min(37px, 9.86666667vw);
}
@media screen and (min-width: 750px) {
  .contact > .inner h2 {
    font-size: 35px;
  }
}
.contact > .inner a {
  color: #fff;
  font-size: min(20px, 5.33333333vw);
}
@media screen and (min-width: 750px) {
  .contact > .inner a {
    font-size: 18px;
  }
}
.contact > .inner a:hover {
  position: relative;
  text-decoration: none;
}
.contact > .inner a:hover:before {
  position: absolute;
  content: "";
  height: 1px;
  background-image: repeating-linear-gradient(90deg, #fff, #fff 2px, transparent 2px, transparent 4px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 1px;
  width: 100%;
  bottom: 3px;
}
.contact > .inner p {
  font-size: min(18px, 4.7vw);
}
.schedule {
  display: block;
  margin-bottom: 30px;
}
@media screen and (min-width: 850px) {
  .schedule {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.schedule .from p {
  color: #009145;
  font-size: min(35px, 9.3vw);
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
@media screen and (min-width: 850px) {
  .schedule .from p {
    text-align: inherit;
  }
}
.schedule .from p small {
  font-size: min(29px, 7.7vw);
}
.schedule .delimiter {
  background-image: url(../img/icon_to_sp.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: min(23px, 6.1vw);
  height: min(35px, 9.3vw);
}
@media screen and (min-width: 850px) {
  .schedule .delimiter {
    background-image: url(../img/icon_to.svg);
    background-size: auto;
    width: min(40px, 10.6vw);
    height: inherit;
  }
}
.schedule .to p {
  color: #009145;
  font-size: min(35px, 9.3vw);
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
@media screen and (min-width: 850px) {
  .schedule .to p {
    text-align: inherit;
  }
}
.schedule .to p small {
  font-size: min(29px, 7.7vw);
}
.download_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: min(30px, 8vw);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: min(30px, 8vw);
}
.download_wrap a {
  width: 100%;
}
@media screen and (min-width: 750px) {
  .download_wrap a {
    width: calc((100% - 40px) / 2);
  }
}
.download_wrap a.download {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(../img/icon/none.svg);
  background-repeat: no-repeat;
  background-position: left min(20px, 5.3vw) center;
  background-size: min(53px, 14.1vw);
  background-color: #fff;
  padding-left: 1.5em;
  color: #4D4D4D;
  border: 1.5px solid #808080;
  border-radius: 12px;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(95px, 25.3vw);
  min-height: min(107px, 28.5vw);
  line-height: 1.6;
  font-size: min(18px, 4.8vw);
  /*
			&.zip,
			&[href$=".zip"]{
				background-image: url(../img/icon/zip.svg);
				&:hover{
				}
			}
*/
}
@media only screen and (min-width: 750px) {
  .download_wrap a.download {
    padding: 16px 10px 16px 95px;
  }
}
.download_wrap a.download span {
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .download_wrap a.download span {
    line-clamp: 3;
    -webkit-line-clamp: 3;
  }
}
.download_wrap a.download:hover {
  text-decoration: underline;
}
.download_wrap a.download.pdf,
.download_wrap a.download[href$=".pdf"] {
  border: 1.5px solid #E27683;
  background-image: url(../img/icon/pdf.svg);
  background-size: min(53px, 14.1vw);
  /*
				&:hover{
				}
*/
}
.download_wrap a.download.doc,
.download_wrap a.download.docx,
.download_wrap a.download[href$=".doc"],
.download_wrap a.download[href$=".docx"] {
  border: 1.5px solid #5D87B2;
  background-image: url(../img/icon/doc.svg);
  background-size: min(53px, 14.1vw);
  /*
				&:hover{
				}
*/
}
.download_wrap a.download.xls,
.download_wrap a.download.xlsx,
.download_wrap a.download[href$=".xls"],
.download_wrap a.download[href$=".xlsx"] {
  border: 1.5px solid #48AA74;
  background-image: url(../img/icon/xls.svg);
  background-size: min(53px, 14.1vw);
  /*
				&:hover{
				}
*/
}
.download_wrap.single {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.download_wrap.single a {
  width: min(383px, 100%);
}
.boxlink_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: min(30px, 8vw);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: min(30px, 8vw);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 750px) {
  .boxlink_wrap {
    -webkit-box-pack: inherit;
        -ms-flex-pack: inherit;
            justify-content: inherit;
  }
}
.boxlink_wrap _:lang(x)::-internal-media-controls-overlay-cast-button,
.boxlink_wrap audio {
  border: 1.5px solid #f05a24;
  border-radius: 100px;
}
.boxlink_wrap _:lang(x)::-moz-placeholder,
.boxlink_wrap audio {
  border-radius: 100px;
}
.boxlink_wrap div.boxlink {
  background-image: url(../img/icon/none.svg);
  background-repeat: no-repeat;
  background-position: left min(20px, 5.3vw) center;
  background-size: min(53px, 14.1vw);
  background-color: #fff;
  padding-left: 1.5em;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  border-radius: 12px;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(101px, 26.9vw);
  min-height: min(107px, 28.5vw);
  line-height: 1.6;
  font-size: min(18px, 4.8vw);
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (min-width: 750px) {
  .boxlink_wrap div.boxlink {
    padding: 16px 10px 16px 101px;
  }
}
.boxlink_wrap div.boxlink.song {
  background-image: url(../img/icon/song.svg);
  background-size: min(32px, 8.5vw);
  background-position: left calc((101px - min(32px, 8.5vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
.boxlink_wrap a {
  width: min(383px, 100%);
}
@media screen and (min-width: 750px) {
  .boxlink_wrap a {
    width: calc((100% - 30px) / 2);
  }
}
.boxlink_wrap a.boxlink {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(../img/icon/none.svg);
  background-repeat: no-repeat;
  background-position: left min(20px, 5.3vw) center;
  background-size: min(53px, 14.1vw);
  background-color: #fff;
  padding-left: 1.5em;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  border-radius: 12px;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(101px, 26.9vw);
  min-height: min(107px, 28.5vw);
  line-height: 1.6;
  font-size: min(18px, 4.8vw);
  font-weight: 400;
}
@media only screen and (min-width: 750px) {
  .boxlink_wrap a.boxlink {
    padding: 16px 10px 16px 101px;
  }
}
.boxlink_wrap a.boxlink span {
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .boxlink_wrap a.boxlink span {
    line-clamp: 3;
    -webkit-line-clamp: 3;
  }
}
.boxlink_wrap a.boxlink:hover {
  text-decoration: none;
}
.boxlink_wrap a.boxlink.link {
  background-image: url(../img/icon/mic.svg);
  background-size: min(30px, 8vw);
  background-position: left calc((101px - min(30px, 8vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
.boxlink_wrap a.boxlink.song {
  background-image: url(../img/icon/song.svg);
  background-size: min(32px, 8.5vw);
  background-position: left calc((101px - min(32px, 8.5vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
.boxlink_wrap a.boxlink.special {
  background-image: url(../img/icon/special.svg);
  background-size: min(38px, 10.1vw);
  background-position: left calc((101px - min(38px, 10.1vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
.boxlink_wrap a.boxlink.download {
  background-image: url(../img/icon/download.svg);
  background-size: min(30px, 8vw);
  background-position: left calc((101px - min(30px, 8vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
.boxlink_wrap a.boxlink.auth {
  background-image: url(../img/icon/auth.svg);
  background-size: min(30px, 8vw);
  background-position: left calc((101px - min(30px, 8vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
.boxlink_wrap a.boxlink.back {
  /*
				&:hover{
				}
*/
}
.boxlink_wrap a.boxlink.back span {
  padding-right: 40px;
  content: "";
  background-image: url(../img/icon/back.svg);
  background-size: min(30px, 8vw);
  background-position: right center;
  background-repeat: no-repeat;
}
.boxlink_wrap a.boxlink.fs30 {
  line-height: 1.6;
  font-size: min(30px, 8vw);
  font-weight: 700;
}
.boxlink_wrap.single {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.boxlink_wrap.single a {
  width: min(383px, 100%);
}
.boxlink_wrap.full a {
  width: 100%;
}
.boxlink_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: min(30px, 8vw);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: min(30px, 8vw);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: min(30px, 8vw);
  margin-right: min(30px, 8vw);
  margin-top: min(60px, 16vw);
  margin-bottom: min(60px, 16vw);
}
@media screen and (min-width: 750px) {
  .boxlink_nav {
    -webkit-box-pack: inherit;
        -ms-flex-pack: inherit;
            justify-content: inherit;
  }
}
.boxlink_nav _:lang(x)::-internal-media-controls-overlay-cast-button,
.boxlink_nav audio {
  border: 1.5px solid #f05a24;
  border-radius: 100px;
}
.boxlink_nav _:lang(x)::-moz-placeholder,
.boxlink_nav audio {
  border-radius: 100px;
}
.boxlink_nav div.boxlink {
  background-image: url(../img/icon/none.svg);
  background-repeat: no-repeat;
  background-position: left min(20px, 5.3vw) center;
  background-size: min(53px, 14.1vw);
  background-color: #fff;
  padding-left: 1.5em;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  border-radius: 12px;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(101px, 26.9vw);
  min-height: min(107px, 28.5vw);
  line-height: 1.6;
  font-size: min(18px, 4.8vw);
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (min-width: 750px) {
  .boxlink_nav div.boxlink {
    padding: 16px 10px 16px 101px;
  }
}
.boxlink_nav div.boxlink.song {
  background-image: url(../img/icon/song.svg);
  background-size: min(32px, 8.5vw);
  background-position: left calc((101px - min(32px, 8.5vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
.boxlink_nav a {
  width: min(383px, 100%);
}
@media screen and (min-width: 750px) {
  .boxlink_nav a {
    width: calc((100% - 30px) / 2);
  }
}
.boxlink_nav a.boxlink {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(../img/icon/none.svg);
  background-repeat: no-repeat;
  background-position: left min(20px, 5.3vw) center;
  background-size: min(53px, 14.1vw);
  background-color: #fff;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  border-radius: 12px;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(10px, 2.7vw);
  min-height: min(70px, 18.9vw);
  line-height: 1.6;
  font-size: min(18px, 4.8vw);
  font-weight: 400;
}
@media only screen and (min-width: 750px) {
  .boxlink_nav a.boxlink {
    padding: 16px 10px 16px 10px;
  }
}
.boxlink_nav a.boxlink span {
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .boxlink_nav a.boxlink span {
    line-clamp: 3;
    -webkit-line-clamp: 3;
  }
}
.boxlink_nav a.boxlink span:before {
  content: "";
  padding-right: 10px;
  background-size: min(30px, 8vw);
  background-position: right center;
  background-repeat: no-repeat;
  display: block;
  width: 36px;
}
.boxlink_nav a.boxlink:hover {
  text-decoration: none;
}
.boxlink_nav a.boxlink.link span:before {
  background-image: url(../img/icon/mic.svg);
  background-size: 1.4em 28px;
  background-position: left 7px center;
}
.boxlink_nav a.boxlink.song span:before {
  background-image: url(../img/icon/song.svg);
  background-size: 1.4em 26px;
  background-position: left 6px center;
}
.boxlink_nav a.boxlink.special span:before {
  background-image: url(../img/icon/special.svg);
  background-size: 1.4em 26px;
  background-position: left 7px center;
}
.boxlink_nav a.boxlink.download span:before {
  background-image: url(../img/icon/download.svg);
  background-size: 1.4em 26px;
  background-position: left 7px center;
}
.boxlink_nav a.boxlink.auth span:before {
  background-image: url(../img/icon/auth.svg);
  background-size: 1.4em 26px;
  background-position: left 7px center;
}
.boxlink_nav a.boxlink.pagelink {
  background-position: right min(20px, 4vw) center;
  background-image: url(../img/icon/page.svg);
  background-size: min(20px, 5.8vw);
  /*
				&:hover{
				}
*/
}
.boxlink_nav a.boxlink.back {
  background-position: right min(20px, 4vw) center;
  background-image: url(../img/icon/back.svg);
  background-size: min(20px, 5.8vw);
  /*
				&:hover{
				}
*/
}
.boxlink_nav a.boxlink.fs30 {
  line-height: 1.6;
  font-size: min(30px, 8vw);
  font-weight: 700;
}
.boxlink_nav a.boxlink.fs26 {
  font-size: min(26px, 6.93vw);
  line-height: 1.4;
  font-weight: 700;
}
.boxlink_nav a.boxlink.fs17 {
  font-size: min(19px, 5.06666667vw);
  line-height: 1.4;
  font-weight: 700;
}
@media screen and (min-width: 750px) {
  .boxlink_nav a.boxlink.fs17 {
    font-size: 17px;
  }
}
.boxlink_nav a.boxlink.fs20 {
  font-size: min(21px, 5.4vw);
  line-height: 1.4;
  font-weight: 700;
}
.boxlink_nav.single {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.boxlink_nav.single a {
  width: min(383px, 100%);
}
.boxlink_nav.full a {
  width: 100%;
}
.auth .boxlink_c_wrap.auth {
  display: none;
}
.boxlink_c_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: min(30px, 8vw);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: min(30px, 8vw);
  margin-right: min(30px, 8vw);
  margin-top: min(60px, 16vw);
  margin-bottom: min(60px, 16vw);
}
@media screen and (min-width: 750px) {
  .boxlink_c_wrap {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.boxlink_c_wrap a {
  width: min(383px, 100%);
}
.boxlink_c_wrap a.boxlink {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(../img/icon/none.svg);
  background-repeat: no-repeat;
  background-position: left min(20px, 5.3vw) center;
  background-size: min(53px, 14.1vw);
  background-color: #fff;
  padding-left: 1.5em;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  border-radius: 12px;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(101px, 26.9vw);
  min-height: min(70px, 18.9vw);
  line-height: 1.6;
  font-size: min(18px, 4.8vw);
  font-weight: 400;
}
@media only screen and (min-width: 750px) {
  .boxlink_c_wrap a.boxlink {
    padding: 10px 10px 10px 101px;
  }
}
.boxlink_c_wrap a.boxlink span {
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .boxlink_c_wrap a.boxlink span {
    line-clamp: 3;
    -webkit-line-clamp: 3;
  }
}
.boxlink_c_wrap a.boxlink:hover {
  text-decoration: none;
}
.boxlink_c_wrap a.boxlink.auth {
  background-image: url(../img/icon/auth.svg);
  background-size: min(30px, 8vw);
  background-position: left calc((101px - min(30px, 8vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
.boxlink_c_wrap a.boxlink.link {
  background-image: url(../img/icon/mic.svg);
  background-size: min(30px, 8vw);
  background-position: left calc((101px - min(30px, 8vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
.ankerlink_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: min(30px, 8vw);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: min(30px, 8vw);
  margin-right: min(30px, 8vw);
  margin-top: min(60px, 16vw);
  margin-bottom: min(60px, 16vw);
}
@media screen and (min-width: 750px) {
  .ankerlink_wrap {
    -webkit-box-pack: inherit;
        -ms-flex-pack: inherit;
            justify-content: inherit;
  }
}
.ankerlink_wrap a {
  width: min(383px, 100%);
}
@media screen and (min-width: 750px) {
  .ankerlink_wrap a {
    width: calc((100% - 30px) / 2);
  }
}
.ankerlink_wrap a.boxlink {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(../img/icon/none.svg);
  background-repeat: no-repeat;
  background-position: left min(20px, 5.3vw) center;
  background-size: min(53px, 14.1vw);
  background-color: #fff;
  padding-left: 1.5em;
  color: #1a1a1a;
  border: 1.5px solid #f05a24;
  border-radius: 12px;
  padding: min(16px, 4.2vw) min(10px, 2.7vw) min(16px, 4.2vw) min(101px, 26.9vw);
  min-height: min(70px, 18.9vw);
  line-height: 1.6;
  font-size: min(18px, 4.8vw);
  font-weight: 400;
}
@media only screen and (min-width: 750px) {
  .ankerlink_wrap a.boxlink {
    padding: 10px 10px 10px 101px;
  }
}
.ankerlink_wrap a.boxlink span {
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .ankerlink_wrap a.boxlink span {
    line-clamp: 3;
    -webkit-line-clamp: 3;
  }
}
.ankerlink_wrap a.boxlink:hover {
  text-decoration: none;
}
.ankerlink_wrap a.boxlink.link {
  background-image: url(../img/icon/mic.svg);
  background-size: min(30px, 8vw);
  background-position: left calc((101px - min(30px, 8vw)) / 2 + 6px) center;
  /*
				&:hover{
				}
*/
}
#btn_pagetop {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 97;
  cursor: pointer;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  display: block;
  background-color: rgba(0, 104, 55, 0.87);
  height: min(100px, 26.6vw);
  width: min(100px, 26.6vw);
  background-image: url(../img/totop.svg);
  background-repeat: no-repeat;
  background-size: min(83px, 21.8vw);
  background-position: center;
  border-radius: 100px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 100%;
}
@media only screen and (min-width: 750px) {
  #btn_pagetop {
    background-size: auto;
    height: 100px;
    width: 100px;
    right: 150px;
    bottom: 32px;
  }
}
#btn_pagetop.show {
  pointer-events: auto;
  opacity: 1;
}
.iblock {
  display: inline-block;
}
* + p {
  margin-top: 5px;
}
* + ul {
  margin-top: 5px !important;
}
* + h5 {
  margin-top: 15px;
}
* + h4 {
  margin-top: 25px;
}
* + h3 {
  margin-top: 25px;
}
* + .schedule {
  margin-top: 5px;
}
.name + h5 {
  margin-top: 10px;
}
h5 + * {
  margin-top: 5px;
}
h4 + * {
  margin-top: 10px;
}
h3 + * {
  margin-top: 15px !important;
}
h2 + h3 {
  margin-top: 15px;
}
h3 + .theme {
  margin-top: 5px;
}
.mb10 + * {
  margin-top: min(10px, 4vw);
}
.mt0 {
  margin-top: 0;
}
.colm_type01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: min(30px, 8vw) !important;
  gap: 20px;
}
@media screen and (min-width: 750px) {
  .colm_type01 {
    -webkit-box-orient: inherit;
    -webkit-box-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit;
    -webkit-box-align: inherit;
        -ms-flex-align: inherit;
            align-items: inherit;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 40px;
  }
}
.colm_type01 .photo img {
  width: 167px;
  height: auto;
}
.colm_type01 .body {
  text-align: center;
}
@media screen and (min-width: 750px) {
  .colm_type01 .body {
    text-align: left;
  }
}
.colm_type01 .body p {
  margin-bottom: min(20px, 5.3vw);
}
.movie {
  margin-top: min(30px, 8vw);
  margin-bottom: min(30px, 8vw);
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1.77777778;
  background-color: #fff;
}
.movie iframe {
  border: none;
}
div.overview {
  background-color: rgba(255, 255, 255, 0.7);
  padding: 0.5em 0.7em;
  margin-bottom: 0.5em;
}
