@charset "utf-8";

/******************************/
/* opne animation */
/******************************/
.svg__anim {
	width: 50%;
	/* background-color: #333; */
}

.svg__anim svg {
	width: 100%;
}

.svg__anim svg.svg0 {
	margin-bottom: 1.61rem;
}

.start {
	display: none;
	background-color: #fcdf22;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 200;
}

.start.open {
	display: block;
}

.start .svg__anim {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: none;
	z-index: 205;
	width: 28rem;
}

.svg__anim2 {
	position: absolute;
	top: 0;
	display: none;
}

.svg__anim2 img {
	display: inline-block;
	width: 100%;
	height: auto;
}

.svg__anim2 img.svg__anim2__img1 {
	margin-bottom: 2.5rem;
}

.main__slid {
	z-index: -1;
	width: 100vw;
	height: 75vw;
	overflow: hidden;
	position: relative;
}

.main__slid li {
	width: 100%;
	height: auto;
}

.main__slid li img {
	width: 100%;
	height: auto;
}

.main__slid .main__slid_blend {
	width: 100%;
	height: 100%;
	background-color: #fcdf22;
	/* mix-blend-mode: multiply; */
	position: absolute;
	top: 0;
}

.main__slid .kari {
	position: absolute;
	top: 10rem;
	left: 0;
	right: 0;
	margin: auto;
	width: 100rem;
	height: auto;
	opacity: 0;
	animation-delay: 0s;
}


/******************************/
/* toppage */
/******************************/

.sc.top {
	padding: 10rem 0 15rem;
}

.info__kaisai {
	width: 64rem;
	margin: -15rem auto 0;
}

.info__kaisai img {
	opacity: 0;
	width: 100%;
	height: auto;
}

.info__about {
	display: flex;
	justify-content: center;
	width: 64rem;
	margin: 0 auto;
}

.info__about__img {
	text-align: center;
	margin: 0 3.5rem 4rem 0;
}

.info__about__img img {
	width: 25rem;
	height: auto;
	opacity: 0;
	animation-delay: .3s;
}

.info__about__text {
	padding: 2rem 0 0;
}

.info__about h2 {
	font-size: 2.4rem;
	font-weight: 600;
	text-align: center;
}

.hana__btn {
	text-align: center;
	margin: 1.5rem 0 0;
	opacity: 0;
	animation-delay: .45s;
}

.hana__btn a {
	font-size: 1.7rem;
	background-color: #E53077;
	padding: 0.9rem 1.7rem 0.7rem 1.5rem;
}


/********** concept */

.concept {
	width: 64rem;
	margin: 0 auto;
}

.sc2__in {
	display: flex;
}

.concept .sc__title {
	margin-bottom: 1rem;
}

.sc2__in .left,
.sc2__in .right {
	width: 50%;
}

.concept .sc2__in .left {
	/* padding: 0 0 0 15rem; */
}

.concept .sc__title h3 {
	font-size: 1.9rem;
	color: #15adb2;
}

.concept .sc__lead {
	font-size: 3.8rem;
	font-weight: 600;
	line-height: 1.6;
	margin-bottom: 2rem;
}

.concept .sc__lead+p {
	font-size: 2.3rem;
	font-weight: 500;
}

.concept__img {
	width: 136%;
	/* position: absolute; */
	margin: -2.5rem 0 0 2.5rem;
}

.concept__img img {
	width: 100%;
	height: auto;
	opacity: 0;
	animation-delay: .7s;
}

.concept__btn {
	opacity: 0;
	animation-delay: .7s;
}

/********** news */

.news {
	width: 64rem;
	margin: 0 auto;
}

.news .sc__title {
	color: #15adb2;
	text-align: center;
}

.news .sc__title h2 {
	line-height: 1.2;
}

.news__ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
}

.news__ul__li {
	width: 48%;
	margin-bottom: 3rem;
	opacity: 0;
	transition: 1s;
	transform: translateY(9rem);
}

.news__ul__li.fadein {
	opacity: 1;
	transform: translateY(0rem);
}

.news__ul__li figure {
	height: 20rem;
	border-radius: 3rem;
	overflow: hidden;
	margin: 0 0 1rem;
}

.news__ul__li img {
	width: 100%;
	height: auto;
}

.news__ul__ll {
	padding: 0 1rem;
}

.news__ul__liday {
	color: #979190;
	line-height: 2;
}

.news__ul__lititle {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.6;
}

.news__btn {
	text-align: center;
	margin: 3rem 0 0;
	opacity: 0;
	animation-delay: .6s;
}

.news__btn a {
	background-color: #44679f;
	padding: 1rem 6rem;

}

/********** section01 */

.section01 {
	width: 125%;
	background: url('https://machiiku-mirai-lab.com/fmm/wp-content/themes/plane240718/img/sc01__bg.png');
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: center;
	transform: translateX(-10%);
}

.section01 .sc__title {
	padding: 0 3rem;
}

.section01 .sc__title h3 {
	color: #979190;
}

.section01 .sc__title h2 {
	color: #7ebf58;
	font-size: 4.8rem;
	line-height: 1.6;
}

/********** section02 */

.section02 .sc__title {
	padding: 0 0 0 24rem;
}

.section02 .sc__title h3 {
	color: #979190;
}

.section02 .sc__title h2 {
	color: #f4a619;
	font-size: 4.8rem;
	line-height: 1.6;
}

.section02 .btn a {
	font-size: 1.6rem;
	background-color: #f4a619;
	padding: .9rem 3rem;
	border-radius: 3rem;
}



/********** section03 */

.section03 {
	width: 125%;
	background: url('https://machiiku-mirai-lab.com/fmm/wp-content/themes/plane240718/img/sc03__bg.png');
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: center;
	margin-bottom: 10rem;
	transform: translateX(-10%);
}

.section03 .sc__title {
	padding: 0 3rem;
}

.section03 .sc__title h3 {
	color: #979190;
}

.section03 .sc__title h2 {
	color: #a987bc;
	font-size: 4.8rem;
	line-height: 1.6;
}

/********** access */

.sc.access {
	padding: 0px 0 12rem;
}

.access .sc__title {
	color: #15adb2;
	text-align: center;
}

.access iframe {
	display: block;
	width: 96rem;
	height: 50rem;
	border-radius: 3rem;
	margin: 0 auto 1rem;
	opacity: 0;
	animation-delay: .7s;
}

.access iframe+p {
	text-align: center;
	opacity: 0;
	animation-delay: .7s;
}


/********** hanasaku */

.hanasaku {
	background: url('https://machiiku-mirai-lab.com/fmm/wp-content/themes/plane240718/img/hanasaku__bg2.png');
	background-repeat: no-repeat;
	background-size: auto 92rem;
	background-position: center top;
	padding: 24rem 0 8rem;
}

.hanasaku .sc__title h2 .span2 {
	font-size: 4.8rem;
}

.hanasaku .sc__title h2 .span1 {
	font-size: 3.6rem;
}

.sc__in.sc__in1 {
	/* background-color: #ce1747; */
}

.sc__in.sc__in1 .sc__title,
.sc__in.sc__in1 .hanasaku__cont {
	color: #fff;
	text-align: center;
}

.sc__in.sc__in1 .hanasaku__cont {
	background-color: #ce1747;
	padding: 0 0 6rem;
}

.hanasaku .sc__title {
	margin-bottom: 4.5rem;
}

.hanasaku__cont__img {
	text-align: center;
	position: relative;
}

.hanasaku__cont__img .img1 {
	width: 50%;
	height: auto;
	opacity: 0;
	animation-delay: .3s;
}

.hanasaku__cont__img .img2 {
	width: 40%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	opacity: 0;
	animation-delay: .7s;
}

.hanasaku__cont>p {
	font-size: 2rem;
	font-weight: 500;
	margin-bottom: 6rem;
	opacity: 0;
	animation-delay: .3s;
}

.sc__in.sc__in2 {
	padding: 10rem 0 0;
}

.sc__in.sc__in2 .sc__title,
.sc__in.sc__in2 .hanasaku__cont {
	text-align: center;
}

.sc__in.sc__in2 .sc__title {
	color: #ce1747;
}

.hanasaku__cont__img p {
	font-size: 1.5rem;
	font-weight: 400;
	opacity: 0;
	animation-delay: .3s;
}

.sc__in.sc__in3 {
	padding: 10rem 0 0;
}

.sc__in__in {
	text-align: center;
	width: 60rem;
	margin: 0 auto;
}

.sc__in.sc__in3 .sc__title {
	color: #ce1747;
}

/* section04（#sc11）を2カラムで安定させる */
.section04 .ul01,
.section04 .ul02,
.section04 .ul03,
.section04 .ul04 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 4.5rem;
}

.section04 .ul01 li.left,
.section04 .ul01 li.right,
.section04 .ul02 li.left,
.section04 .ul02 li.right,
.section04 .ul03 li.left,
.section04 .ul03 li.right,
.section04 .ul04 li.left,
.section04 .ul04 li.right {
  width: 50%;
  margin: 0 0 2rem;
}

/* 画像ははみ出さない（commonにも入れているがPC側にも明示） */
.section04 .ul01 li img,
.section04 .ul02 li img,
.section04 .ul03 li img,
.section04 .ul04 li img {
  width: 100%;
  height: auto;
}


/********** sponsor */

.sp__top {
	width: 100%;
	background-image: url('https://machiiku-mirai-lab.com/fmm/wp-content/themes/plane240718/img/sponsor__bg.png');
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: center;
	padding: 15rem 0;
	margin-bottom: 10rem;
	position: relative;
}

.sponsor .sc__title {
	color: #15adb2;
	text-align: center;
	margin-bottom: 3rem;
}

.sponsor .sc__title+p {
	font-size: 2rem;
	font-weight: 500;
	text-align: center;
	opacity: 0;
	animation-delay: .6s;
}

.sp__take ul,
.sp__ume ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.sponsor li img {
	width: 100%;
	height: auto;
}

.sponsor li a {
	display: block;
}

.sponsor li a.uline {
	text-decoration: underline;
}

.sponsor li p.sp__name {
	font-size: 1.8rem;
	line-height: 1.6;
	text-align: center;
	font-weight: 500;
	height: 9rem;
	background-color: #ffe4a5;
	border-radius: .9rem;
	padding: 1.5rem 0 0;
}

.sp__matsu {
	width: 48rem;
	margin: 0 auto 3rem;
}

.sp__matsu li {
	width: 100%;
	padding-bottom: 9rem;
	opacity: 0;
	transition: 1s;
	transform: translateY(6rem);
}

.sp__take {
	width: 64rem;
	margin: 0 auto 3rem;
}

.sp__take li {
	width: 45%;
	padding-bottom: 9rem;
	opacity: 0;
	transition: 1s;
	transform: translateY(6rem);
}

.sp__ume {
	width: 72rem;
	margin: 0 auto;
}

.sp__ume li {
	width: 28%;
	padding-bottom: 6rem;
	opacity: 0;
	transition: 1s;
	transform: translateY(6rem);
}

.sp__matsu li.fadein,
.sp__take li.fadein,
.sp__ume li.fadein {
	opacity: 1;
	transform: translateY(0rem);
}

.sp__take li>a,
.sp__ume li>a {
	/* height: 9rem; */
}

.sponsor li .intv {
	text-align: center;
	margin: 4rem 0 0;
}

.sponsor li .intv a {
	display: inline-block;
	color: #fff;
	font-weight: 500;
	background-color: #e73e25;
	border-radius: 3rem;
	padding: 1.2rem 3rem;
	position: relative;
}

.sponsor li .intv a:after {
	content: "";
	position: absolute;
	right: 0;
	top: -1.9rem;
	left: 0;
	width: 0;
	height: 0;
	margin: auto;
	border-style: solid;
	border-color: transparent transparent #e73e25 transparent;
	border-width: 0 1rem 2rem 1rem;
}

.sp__kyoryoku ul {
	opacity: 0;
	animation-delay: .7s;
}

.sp__kyoryoku li {
	text-align: center;
	margin-bottom: 1rem;
}

.sp__kyoryoku li p {
	font-size: 1.8rem;
	font-weight: 500;
}

/********** kobetu */

.sp__take li:nth-of-type(2) {
	padding-top: 1rem;
}

.sp__take li:nth-of-type(4) {
	padding-top: 3rem;
}

.sp__take li:nth-of-type(6) {
	padding-top: 4rem;
}

.sp__take li:nth-of-type(7) {
	padding-top: 3rem;
}

.sp__take li:nth-of-type(10) {
	padding-top: 2rem;
}

.sp__ume li:nth-of-type(1) {
	padding-top: 1.5rem;
}

.sp__ume li:nth-of-type(2) {
	padding-top: 2rem;
}

.sp__ume li:nth-of-type(5) {
}

.sp__ume li:nth-of-type(8) {
	padding-top: 1.5rem;
}


/******************************/
/* hana */
/******************************/

.hana {
	position: absolute;
}

.news__ul .hana01 {
	top: -19rem;
	left: 5rem;
	width: auto;
	height: 20rem;
	z-index: -1;
}

.section01 .hana02 {
	top: -17rem;
	right: -15rem;
	width: auto;
	height: 20rem;
}

.section02 .hana03 {
	top: -22rem;
	left: 17rem;
	width: auto;
	height: 18rem;
}

.section03 .hana04 {
	top: -22rem;
	left: 0rem;
	width: auto;
	height: 17rem;
}

.access .hana05 {
	top: -20rem;
	right: -65rem;
	width: auto;
	height: 19rem;
	left: 0;
	margin: auto;
}

.hanasaku .hana06 {
	top: 3rem;
	left: -80rem;
	width: auto;
	height: 20rem;
	right: 0;
	margin: auto;
}

.sponsor .hana07 {
	bottom: -2rem;
	right: -70rem;
	width: auto;
	height: 18rem;
	left: 0;
	margin: auto;
}

.footer .hana08 {
	top: -25rem;
	left: -5rem;
	width: auto;
	height: 17rem;
}

.nav__sp .hana09 {
	bottom: 0;
	right: 4rem;
	width: auto;
	height: 10rem;
}


/******************************/
/* news-list */
/******************************/

.news-list .news {
	padding: 9rem 0 18rem;
}



/******************************/
/* news */
/******************************/

#single__post #header {
	border-bottom: .2rem solid #d6d7d9;
}

.post__main {
	width: 96rem;
	padding: 10rem 0 17rem;
	margin: 0 auto;
}

.single__post .post__main {
	/* display: none; */
}

.single__post .thumbnail img {
	width: 100%;
	height: auto;
}

.post__date {
	font-size: 1.8rem;
	color: #15adb2;
	font-weight: 400;
	padding: 0 1.5rem;
	margin: 0 0 .5rem;
}

.single__title {
	font-size: 3.6rem;
	font-weight: 600;
	line-height: 1.6;
	padding: 0 1.5rem;
	margin: 0 0 3rem;
}

#single__post .thumbnail {
	width: 100%;
	margin-bottom: 4.5rem;
	/* opacity: 0;
 animation-delay: .45s; */
}

#single__post .thumbnail figure {
	margin: 0;
}

#single__post .thumbnail img {
	width: 100%;
	height: auto;
}

.single__content {
	padding: 0 6rem 6rem;
	/* opacity: 0;
 animation-delay: .7s; */
}

.single__content h3 {
	font-size: 2.8rem;
	color: #15adb2;
	line-height: 1.6;
	padding: 6rem 0 1.5rem;
}

.single__content p {
	font-size: 1.8rem;
	text-align: justify;
}

.single__content figure {
	padding: 1rem 0;
	margin: 0;
}

.single__content figure img {
	width: 100%;
	height: auto;
}

.p__n {
	font-size: 2.6rem;
	text-align: center;
	font-weight: 200;
}

.p__n,
.p__n a {
	color: #15adb2;
}

.p__n a {
	font-weight: 500;
	padding: 0 3rem;
}

.p__n a.link__top {
	font-weight: 400;
}

.single__post__269 .is-layout-flex {
	flex-wrap: wrap !important;
	padding-bottom: 3rem;
	margin-bottom: 3rem;
	border-bottom: .1rem dashed #979190;
}

.single__post__269 .is-layout-flex .is-layout-flex {
	flex-wrap: nowrap !important;
	border-bottom: 0;
	padding-bottom: 0;
	margin-bottom: 0;
}

.single__post__269 .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
	flex-basis: auto;
	width: 100%;
}

.single__post__269 :where(.wp-block-columns.is-layout-flex) {
	gap: 0rem;
}

.single__post__269 .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column h4 {
	font-size: 2rem;
	font-weight: 600;
	margin-bottom: 0.4rem;
	line-height: 1.72;
}

.single__post__269 .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column h6 {
	margin-bottom: .2rem;
}

.single__post__269 .single__content p {
	font-size: 1.6rem;
	line-height: 1.72;
	padding-bottom: .2rem;
}

.single__post__269 .single__content p a {
	text-decoration: underline;
}

.single__post__269 .single__content .is-layout-flex .is-layout-flex .wp-block-column {
	width: 100%;
}

.single__post__269 .single__content .is-layout-flex .is-layout-flex .wp-block-column:nth-of-type(1) {
	padding-right: 3.2rem;
}

.single__post__269 .single__content .is-layout-flex .is-layout-flex .wp-block-column:nth-of-type(2) {
	width: 75%;
}

.single__post__269 .single__content .is-layout-flex .is-layout-flex figure {
	padding: 0;
}

.single__post__269 .single__content .is-layout-flex .is-layout-flex figure img {
	border-radius: 1rem;
}

.single__post__375 .single__content a,
.single__post__395 .single__content a{
	text-decoration: underline;
}


.single__post__375 .single__content .wp-block-columns,
.single__post__395 .single__content .wp-block-columns{
    border-bottom: .1rem dashed #979190;
	padding-bottom: 3rem;
    margin-bottom: 3rem;
}

.single__post__375 .single__content h4,
.single__post__395 .single__content h4{
	font-size: 2.4rem;
	font-weight: 600;
	color: #15adb2;
	margin-bottom: 2rem;
}

.single__post__375 .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column h5,
.single__post__395 .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column h5{
	font-size: 2rem;
	font-weight: 600;
	margin-bottom: 0.4rem;
	line-height: 1.72;
}

/* ===== イベント本文の基準文字サイズをデフォに合わせる =====
   ※ この数値は .single__content p { font-size: 1.8rem } に合わせています */
.event-section {
  font-size: 2.8rem;
  line-height: 1.9;
}

/* リスト・定義リストも本文サイズに揃える */
.event-section p,
.event-section li,
.event-section dt,
.event-section dd {
  font-size: 1em;   /* 親の 1.8rem を継承 */
}

/* ===== リンクを“見て分かる”表現に ===== */
.event-section a {
  color: #15adb2;
  text-decoration: underline;
  text-underline-offset: .18em;
  text-decoration-thickness: .09em;
}
.event-section a:hover { opacity: .88; }
.event-section a:visited { color: #0f8f94; }
.event-section a:focus-visible {
  outline: 2px solid #15adb2;
  outline-offset: 2px;
  text-decoration: none;
}
/* ボタン風リンクは下線を付けない（既存トーン維持） */
.event-section .wp-element-button,
.event-section a.wp-element-button { text-decoration: none; }

/* ===== 定義リスト（項目:値） ===== */
.event-section .kv { margin: .5em 0 1.5em; }
.event-section .kv > div {
  display: grid;
  grid-template-columns: 7.5em 1fr;
  gap: .6em 1.2em;
  padding: .8em 0;
  border-bottom: 1px solid #eee;
}
.event-section .kv > div:last-child { border-bottom: 0; }
.event-section .kv dt { color:#979190; font-weight:600; }
.event-section .kv dd { margin:0; line-height:1.9; }

/* 徽章（限定数など） */
.event-section .badge{
  display:inline-flex; align-items:center;
  line-height:1;
  margin-left:.5em; padding:.35em .6em;
  font-weight:700; font-size:.85em;
  color:#fff; background:#e73e25; border-radius:.8em;
}

/* ===== 箇条書き（協力） ===== */
.event-section .dotlist{ list-style:none; margin:.5em 0 1.5em; padding:0; }
.event-section .dotlist li{ position:relative; padding-left:1.3em; margin:.35em 0; }
.event-section .dotlist li::before{
  content:""; position:absolute; left:0; top:.62em;
  width:.46em; height:.46em; background:#15adb2; border-radius:2px;
}

/* ===== 見出し（左線なし） ===== */
.event-section h3.wp-block-heading{
  border:0; padding-left:0; margin-top:1.2em;
  color:#15adb2; font-weight:700;
}
.event-section h4.wp-block-heading{ color:#444; margin-top:.6em; }

/* モバイルでラベル幅を少し詰める */
@media (max-width: 768px){
  .event-section .kv > div { grid-template-columns: 6em 1fr; }
}

