@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

.noto-sans-jp-400 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.noto-sans-jp-700 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

/* custom property */
:root {
  --main-white: #FFF;
  --main-black: #000;
  --main-brown: #694320;
  --main-green: #5a6332;
  --main-red: #c94b28;
  --main-ocher: #cf8440;
  --main-beige1: #f5e9dc;
  --main-beige2: #fdfbf8;
  --main-brown10: rgb(105, 67, 32, 0.10);
  --main-red10: rgb(201, 75, 40, 0.10);
  --main-ocher10: rgb(207, 132, 64, 0.10);

img { width: 100%; }

/* header */
#header {
  background-color: var(--main-white);
}

/* title */
.area_title {
	background-color: var(--main-beige2);
  background-image: url(../img/bg_1.svg);
  background-size: 75%;
  color: var(--main-brown);
	margin: 0;
	padding: 0;
	position: relative;
}
.area_title .inner {
	display: flex;
	align-items: center;
	justify-content: space-around;
	padding: 32px 0;
}
.area_title .box_img_main {
  flex-basis: min(48%, 480px);
  margin: 0;
}
.area_title .box_img_main img {
  width: 100%;
}
.area_title .box_title {
  background-color: rgba(255, 255, 255, 0.30);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
  flex-basis: min(40%, 400px);
  margin: 0;
  padding: 4% 2% 2%;
}
.area_title .box_title h1 {
  margin: 0 12% 32px;
  padding: 0;
  text-align: center;
}
.area_title .box_title h1 img {
  width: 100%;
}
.area_title .box_title .txt_author {
  font-size: calc(14px + 0.5vw);
  line-height: 1.2em;
  margin: 0 0 8px;
  text-align: center;
}
.area_title .box_title .txt_release {
  background-color: var(--main-green);
  margin: 0 4% 24px;
  padding: 8px;
  text-align: center;
}
.area_title .box_title .txt_release img {
  width: 90%;
}
.area_title .box_detail {
  margin: 0 0 24px;
}
.area_title .box_detail p {
  font-weight: bold;
  font-size: calc(13px + 0.5vw);
  line-height: 1.6em;
  text-align: center;
}
.area_title .box_link {
  margin: 0 auto 16px;
  text-align: center;
}
.area_title .box_link a {
  background-color: gray;
  border-radius: 4px;
  box-shadow: 2px 2px 4px rgba(0,0,0,0.20);
  color: var(--main-white);
  display: block;
  font-size: calc(16px + 0.5vw);
  line-height: 1.2em;
  margin: 0 auto;
  padding: 16px 0;
  width: min(80%, 320px);
  opacity: 1.0;
  text-decoration: none;
}
.area_title .box_link1 a[href] {
  background-color: var(--main-ocher);
}
.area_title .box_link2 a[href] {
  background-color: var(--main-blue);
}
.area_title .box_link a[href]:hover {
  box-shadow: 0px 0px 0px;
  opacity: 0.6;
}
.area_title .box_link a img {
  vertical-align: middle;
}
.area_title .el_link_buy a img {
  width: 80%;
}
.area_title .el_link_7net a img {
  width: 80%;
}
.area_title .el_link_event a img {
  width: 88%;
}
@media screen and (max-width: 639px) {
  .area_title .inner {
    margin: 0;
  }
  .area_title .inner {
    display: block;
    padding: 16px 0;
  }
  .area_title .box_img_main {
    margin: 0 0 8px;
  }
  .area_title .box_title h1 {
    margin: 0 8% 16px;
  }
  .area_title .box_detail {
    margin: 0 0 16px;
  }
}

/* lead */
.area_lead {
  background-color: var(--main-beige2);
  margin: 0;
  padding: 64px 2%;
}
.area_lead p {
  color: var(--main-brown);
  font-size: calc(14px + 0.3vw);
  line-height: 1.8em;
  margin: 0 0 1em;
}
.area_lead .box_samplelist {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_lead .box_samplelist .box_sample {
  flex-basis: min(20%, 200px);
  margin: 0 1%;
}
.area_lead .box_samplelist .box_sample img {
  width: 100%;
}
@media screen and (max-width: 768px) and (min-width: 639px) {
  .area_lead {
    padding: 48px 2%;
  }
}
@media screen and (max-width: 639px) {
  .area_lead {
    padding: 24px 2%;
  }
  .area_lead .box_samplelist .box_sample {
    flex-basis: min(80%, 200px);
  }
}

/* 7net */
.area_7net {
	background-color: var(--main-blue10);
	color: var(--main-navy);
	margin: 0;
	padding: 64px 2%;
}
.area_7net h2 {
  margin: 0 0 24px;
  text-align: center;
}
.area_7net h2 img {
  width: 58%;
}
.area_7net .el_sample {
  font-size: calc(16px + 0.5vw);
  line-height: 1.6em;
  margin: 0 auto 16px;
  text-align: center;
  width: 360px;
}
.area_7net .box_link {
  margin: 0 auto;
  text-align: center;
}
.area_7net .box_link a {
  background-color: var(--main-blue);
  border-radius: 4px;
  box-shadow: 2px 2px 4px rgba(0,0,0,0.20);
  color: var(--main-white);
  display: block;
  font-size: calc(16px + 0.5vw);
  line-height: 1.2em;
  margin: 0 auto;
  opacity: 1.0;
  padding: 16px 0;
  text-decoration: none;
  width: min(80%, 320px);
}
.area_7net .box_link a:hover {
  box-shadow: 0px 0px 0px;
  opacity: 0.6;
}
.area_7net .box_link a img {
  vertical-align: middle;
}
.area_7net .el_link_7net a img {
  width: 56%;
}
@media screen and (max-width: 639px) {
  .area_7net {
    padding: 32px 0;
  }
  .area_7net h2 img {
    width: 80%;
  }
  .area_7net .el_sample {
    margin: 0 8% 16px;
    width: auto;
  }
}

/* event */
.area_event {
  background-color: var(--main-green10);
  margin: 0;
  padding: 64px 2%;
}
.area_event h1 {
  margin: 0 0 32px;
  text-align: center;
}
.area_event h1 img {
  width: 60%;
}
.area_event .box_event {
  background-color: var(--main-white);
  background-size: 25% auto;
  margin: 0 8% 48px;
  padding: 32px 24px 24px;
}
.area_event .box_event h2 {
  background-color: var(--main-green);
  color: var(--main-white);
  font-size: calc(24px + 0.5vw);
  line-height: 1.5em;
  margin: 0 0 32px;
  padding: 2px 4px 4px;
  text-align: center;
}
.area_event .box_event h3 {
  background-color: rgba(0,98,127,0.05);
  border: 1px solid var(--main-navy);
  color: var(--main-navy);
  font-size: calc(18px + 0.3vw);
  line-height: 1.2em;
  margin: 0 0 16px;
  padding: 8px;
  text-align: center;
}
.area_event .box_event dl dt {
  border-bottom: 4px solid #EEE;
  font-size: calc(14px + 0.2vw);
  line-height: 1.3em;
  margin: 0 0 4px;
  padding: 0 0 2px;
}
.area_event .box_event dl dt .u_bcolor {
  border-bottom: 4px solid var(--main-green);
  padding: 0 0 2px;
}
.area_event .box_event dl dd {
  font-size: calc(16px + 0.2vw);
  line-height: 1.6em;
  margin: 0 0 24px;
  padding: 0 0 8px;
}
.area_event .box_event dl dd .el_note {
  font-size: calc(13px + 0.2vw);
  line-height: 1.4em;
}
.area_event .box_event .go_event {
  text-align: center;
}
.area_event .box_event .go_event a {
  background-color: #999;
  border-radius: 4px;
  color: #FFFFFF;
  display: inline-block;
  font-weight: bold;
  font-size: calc(16px + 0.5vw);
  line-height: 1em;
  margin: 0 0 16px;
  padding: 16px 24px;
  text-decoration: none;
  width: min(80%, 240px);
}
.area_event .box_event .go_event a[href] {
  background-color: var(--main-green);
  box-shadow: 2px 2px 4px rgba(0,0,0,0.20);
}
.area_event .box_event .go_event a[href]:hover {
  box-shadow: 1px 1px 5px rgba(0,0,0,0);
  opacity: 0.6;
}
.area_event .box_event .box_event_online {
  -webkit-box-shadow: 0px 0px 6px rgba(0,0,0,0.20);
  box-shadow: 0px 0px 6px rgba(0,0,0,0.20);
  margin: 0 0 32px;
  padding: 24px;
}
.area_event .box_event .el_addevent {
  color: var(--main-green);
  font-size: calc(16px + 0.2vw);
  line-height: 1.5em;
  margin: 0 auto 32px;
  padding: 0;
  text-align: center;
}
@media screen and (max-width: 639px) {
  .area_event {
    padding: 32px 2%;
  }
  .area_event h1 img {
    width: 90%;
  }
  .area_event .box_event {
    background-color: var(--main-white);
    background-size: 25% auto;
    margin: 0 0 48px;
    padding: 32px 24px 24px;
  }
  .area_event .box_event h2 {
    font-size: calc(20px + 0.5vw);
  }
  .area_event .box_event h3 {
    font-size: calc(16px + 0.3vw);
  }
}

/* profile */
.area_profile {
	background-color: var(--main-red10);
	margin: 0 0 24px;
	padding: 64px 2%;
}
.area_profile h2 {
  margin: 0 0 32px;
  text-align: center;
}
.area_profile h2 img {
  width: 158px;
}
.area_profile p {
  color: var(--main-brown);
  font-size: calc(14px + 0.2vw);
  line-height: 1.8em;
  margin: 0 0 24px;
}
.area_profile p.txt_prof {
  font-size: calc(14px + 0.2vw);
  text-align: center;
}
.area_profile .box_prof_snslist {
  display: flex;
  justify-content: center;
  margin: 0 0 24px;
}
.area_profile .box_prof_snslist .box_prof_sns {
  margin: 0px 8px;
}
.area_profile .box_prof_snslist .box_prof_sns a,
.area_profile .box_prof_blog a {
  background-color: var(--main-red);
  border-radius: 4px;
  box-shadow: 2px 2px 4px rgba(0,0,0,0.20);
  color: var(--main-white);
  font-size: 2.8rem;
  padding: 4px 8px;
  text-decoration: none;
}
.area_profile .box_prof_snslist .box_prof_sns a {
  font-size: 2.8rem;
  padding: 4px 8px;
}
.area_profile .box_prof_blog {
  text-align: center;
}
.area_profile .box_prof_blog a {
  display: inline-block;
  font-size: calc(14px + 0.2vw);
  line-height: 1.2em;
  padding: 8px 12px;
}
.area_profile .box_prof_snslist .box_prof_sns a:hover,
.area_profile .box_prof_blog a:hover {
  box-shadow: 2px 2px 4px rgba(0,0,0,0);
}
@media screen and (max-width: 639px) {
  .area_profile {
    margin: 0 0 24px;
    padding: 24px 2%;
  }
  .area_profile h2 {
    margin: 0 0 24px;
  }
}

.el_txt_dash {
  letter-spacing: -0.1em;
}
@media screen and (max-width: 639px) {
  .box_br {
    display: block;
  }
}