@charset "utf-8";
/* CSS Document */
/*トップページ*/
body {
  background: url("./bg.svg") repeat-y, var(--base);
  background-size: 150%, 100%;
}
.bg_present {
  background: url("./bg_check.svg"), #722d1c;
}
@media screen and (min-width: 768px) {
  body {
    background: url("./bg.svg") repeat-y, var(--base);
    background-size: 100%, 100%;
  }
  .bg_primary {
    background: url("./bg_check.svg"), var(--primary);
    background-size: 20%, 100%;
  }
}
/*ファーストビュー*/
.mv_wrap {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto 0em;
  padding: 2em 0.8em 0em 1.2em;
}
.mv_wrap img {
  width: 100%;
}
.logo_area {
  margin-top: 0.5em;
}
#lead {
  font-family: "Zen Maru Gothic", sans-serif;
}
#lead .inner {
	max-width: 800px;
}
/*okn*/
.okn {
  margin: 0.3em auto 0;
}
.okn figure {
  margin: 5px auto;
  width: calc(100% / 3 - 0.8em);
  min-width:250px;
}
.marg{margin-top:2em;}
@media screen and (max-width: 900px) {
.okn img{margin-right:-2em;}
.marg{margin-top:0em;margin-right:0;margin-left:-2em;}
}
.lead1 {
  align-items: center;
}
.lead2 {
  margin: 5px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-size: 1.3em;
  width: calc(100% - 150px - 10px);
}
.lead1 div img {
  position: relative;
  right: -1em;
}
.koushi {
  width: 150px !important;
}
.koushi img {
  width: 140px
}
/*fkds*/
.fukidashi-01-12 {
  font-size: 14px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 10px 16px 0px;
}
.fukidashi-01-12::before {
  content: "";
  width: 25px;
  height: 1px;
  transform: rotate(60deg);
  box-sizing: border-box;
  background-color: var(--text);
}
.fukidashi-01-12::after {
  content: "";
  width: 25px;
  height: 1px;
  transform: rotate(-60deg);
  box-sizing: border-box;
  background-color: var(--text);
}
.smkr {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-size: 1.2em;
  display: block;
  width: 250px;
  margin: 1em auto;
  border-top: 2px solid var(--primary);
  border-bottom: 2px solid var(--primary);
}
.smkr span {
  display: inline-block;
  padding: 0.2em 0.5em;
  color: var(--primary);
}
@media screen and (min-width: 768px) {
  .logo_area {
    width: 100%;
    margin: 1em auto;
  }
  .logo_area h1 {
    width: 50vw;
    max-width: 700px;
  }
  .logo_area .flex {
    width: 46vw;
    max-width: 800px;
  }
	#lead .inner {font-size:1.2em;margin: 0 auto;
}
	.lead2{
		letter-spacing: 0;
		width:calc( 100% - 236px );}
	.koushi {
	width: 226px !important;
}	.koushi img{
	width:100%;
}
  /*fkds*/
  .fukidashi-01-12 {
    font-size: 1.4em;
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    padding: 10px 16px 20px;
  }
  .fukidashi-01-12::before {
    content: "";
    width: 40px;
    height: 2px;
    transform: rotate(60deg);
    box-sizing: border-box;
    background-color: var(--text);
  }
  .fukidashi-01-12::after {
    content: "";
    width: 40px;
    height: 2px;
    transform: rotate(-60deg);
    box-sizing: border-box;
    background-color: var(--text);
  }
}
/*開催概要*/
.info_tbl {
  width: 100%;
  margin-right: 10px;
}
.info_tbl table {
  width: 100%;
}
.info_tbl table tr td {
  position: relative;
  vertical-align: baseline;
  padding: 10px 5px;
  width: 100%;
  display: block;
}
.info_tbl table tr td:first-child {
  padding: 0.3em 1em;
  font-size: 0.8em;
  font-weight: bold;
  background: var(--note);
  border-radius: 5px;
}
.info_tbl table tr td:last-child {
  margin-bottom: 1em;
}
.info_map {
  margin: 0.5em auto;
}
.info_map img {
  border-radius: 10px;
  width: 100vw;
}
@media screen and (min-width: 768px) {
  .info_tbl {
    width: 50%;
  }
  .info_tbl table {}
  .info_tbl table tr td {
    position: relative;
    vertical-align: baseline;
    padding: 10px 5px;
    font-size: 1.35vw;
    width: auto;
    display: table-cell;
  }
  .info_tbl table tr td:first-child {
    padding-left: 1em;
    font-size: 1.2vw;
    font-weight: bold;
    width: 10vw;
    background: none;
  }
  .info_tbl table tr td:first-child::before {
    background: none;
  }
  .info_map {
    width: calc(100% / 2 - 1em);
  }
  .info_map img {
    width: 100%;
  }
}
/*about*/
.about_box {
  width: 100%;
  padding: 1em;
  border-radius: 10px;
  background: #fff;
  margin: 0.2em auto;
  border: 2px dotted var(--primary-light)
}
.about_box h3 {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  margin-bottom: 0.3em;
  color: var(--primary);
}
.about_box small {
  font-size: 0.85em;
}
.about_box .bold {
  font-weight: 600;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1.2em;
  margin-bottom: 0.3em;
}
.about_box ul li {
  font-size: 0.85em;
  list-style: none;
}
.instructor_box {
  background: var(--note);
  padding: 1em;
  border-radius: 15px;
  width: 100%;
  margin: 1em auto;
}
.instructor_box figure {
  position: relative;
  padding: 2em 1em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.instructor_box img {
  max-width: 270px;
  padding-bottom: 1em;
}
.instructor_box b {
  font-family: "Zen Maru Gothic", sans-serif;
  display: block;
  color: var(--primary-dark);
  margin-bottom: -0.3em;
}
.instructor_box h3 {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-size: 1.9em;
  margin-bottom: 0em;
}
.instructor_box small {
  display: block;
  font-size: 0.8em;
  margin-top: 0;
  margin-left: -0.4em;
  margin-bottom: 2em;
}
.instructor_box img {
  margin: 0 auto;
  border-radius: 10px;
}
.badge {
  position: absolute;
  inset: 12px auto auto 0px;
  font-family: "Zen Maru Gothic", sans-serif;
  display: grid;
  place-items: center;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: var(--primary);
  color: #fff;
  font-weight: 700;
  font-size: 20px;
  line-height: 1;
}
.badge2 {
  position: absolute;
  inset: -27px 2px auto auto;
  display: grid;
  place-items: center;
  width: 115px;
  height: 115px;
  line-height: 1;
}
#info .inner ul {
  width: 90%;
  margin: -1em auto 1em;
}
#info .inner ul li {
  margin-bottom: 0.4em;
  font-size: 0.9em;
}
#footer {
  margin: 0 !important;
  padding-top: 1em;
  background: var(--note);
}
#footer .inner {
  margin: 0 auto !important;
}
.footer_box {
  border: 2px dotted var(--primary);
  background: #FFF;
  border-radius: 15px;
  margin: 1em auto;
}
.footer_box div {
  width: 100%;
  padding-bottom: 0.4em;
}
.footer_box p {
  font-weight: 600;
  font-size: 1.3em;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .about_box {
    width: calc(100% / 3 - 0.3em);
    margin-bottom: 0em;
    padding: 1em 1.5em;
  }
  .about_box .bold {
    font-weight: 600;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 1.4em;
    margin-bottom: 0.3em;
    letter-spacing: 0.1px;
  }
  .instructor_box {
    width: calc(100% / 2 - 1em);
  }
  .instructor_box img {
    max-width: 300px;
  }
.badge2 {
	position: absolute;
	inset: -55px 2px auto auto;
	display: grid;
	place-items: center;
	width: 180px;
	height: 180px;
	line-height: 1;
}
  #present .flex {
    max-width: 900px;
    padding: 2em 0;
    margin: 0 auto;
    align-items: center;
  }
  .present {
    width: 50%;
  }
  .present_txt {
    width: 50%;
    padding: 2em 2em 0em;
  }
.present_txt h2 {
	font-size: 2em;
}
  .footer_box div {
    width: calc(100% / 2 - 3em)
  }

}