@charset "utf-8";
/* ========================================================
	top.css => トップページ用CSS
======================================================== */
#container {
      padding-top: 0;
}
/* main_v
------------------------------------------------------------- */
.main_v_area {
      margin: auto;
}
.main_v img {
      width: 100%;
}
/*top_lead_area
-----------------------------------------------------------------*/
.top_lead_w {
      width: 1296px;
      margin: auto;
      padding: 5em 0 10em 0;
      display: flex;
      align-items: center;
      flex-direction: row-reverse;
      justify-content: space-between;
      position: relative;
}
.top_lead_w .text_box {
      position: relative;
      z-index: 2;
      width: 50%;
}
.top_lead_w .img {
      width: calc(50% - 5em);
      padding-right: 5em;
}
.top_lead_w .img img, .top_lead_w .img_02 img {
      width: 100%;
}
.top_lead_w .img_02 {
      position: absolute;
      right: -10em;
      bottom: 5em;
}
.top_lead_w .img_02:before {
      content: none;
}
@media screen and (max-width: 1300px) {
      .top_lead_w {
            width: 90%;
      }
      .top_lead_w .text_box {
            width: 50%;
      }
      .top_lead_w .img {
            width: calc(50% - 0em);
            padding-right: 0em;
      }
      .top_lead_w .img_02 {
            right: -15em;
      }
      /*.top_lead_w .text_box .title_s {
		   font-size: 1.5rem;
	}*/
}
@media screen and (max-width: 960px) {
      .top_lead_w {
            gap: 0 5em;
      }
      .top_lead_w .text_box {
            width: 50%;
            padding-right: 0;
      }
      .top_lead_w .text_box .title_s {
            font-size: 1.6rem;
      }
      .top_lead_w .img {
            width: 50%;
      }
      .top_lead_w .img_02 {
            display: none;
      }
}
@media screen and (max-width: 680px) {
      .top_lead_w {
            padding: 3em 0;
            display: block;
      }
      .top_lead_w .text_box {
            width: 100%;
            margin: auto;
      }
      .top_lead_w .img {
            width: 95%;
            margin: 3em 0 auto 5%;
      }
}
/*top_lead_dods
--------------------------------------------------------------------------*/
.top_lead_dods:before {
      background: url("../images/top/bg_sq_l.svg") no-repeat;
      aspect-ratio: 68/20;
      width: 68rem;
      left: -22em;
      bottom: -5em;
      z-index: -1;
}
@media screen and (max-width: 680px) {
      .top_lead_w .img_02:before {
            content: "";
      }
      .top_lead_dods:before {
            background: url("../images/top/bg_plus.svg") no-repeat;
            aspect-ratio: 1;
            width: 15em;
            left: auto;
            right: -5.5em;
            bottom: auto;
            top: -8em;
      }
}
/*program_area
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.slide_head {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 0 1em;
}
.slide_head_title {
      width: calc(100% - 8em);
}
/*矢印*/
.slider_nav {
      display: flex;
      justify-content: flex-end;
      gap: 0 1.5em;
      width: 8em;
}
.slider_nav > * {
      text-align: center;
      width: 3.1em;
      aspect-ratio: 1;
      border: solid 1px #ea6182;
      border-radius: 10em;
      display: flex;
      justify-content: center;
      align-content: center;
}
.slider_nav img {
      aspect-ratio: 12/10;
      width: 30%;
      display: flex;
      justify-content: center;
      align-content: center;
      filter: invert(52%) sepia(93%) saturate(1366%) hue-rotate(309deg) brightness(95%) contrast(93%);
}
.slider_nav .js-next img {
      transform: scaleX(-1);
}
@media screen and (min-width: 961px) ,print{
	.slider_nav > *:hover {
		background: #ea6182;
	}
	.slider_nav  > *:hover img {
	filter: brightness(0) invert(1) !important;
		}
	
}
@media screen and (max-width: 680px) {
.slide_head {
      display: block;
}
.slide_head_title {
      width: auto;
}
	.slider_nav{
		display: none;
	}
}

/*スライド本体*/
.swiper_box {
	    margin-right: calc(-50vw + 50%);
      background: #f0f9f3;
      border-radius: 1em 0 0 1em;
      padding: 2em 0 2em 2em;
}
.swiper_w {
      width: 100%;
      margin: auto auto auto 0;
}
.swiper-slide {
      padding-top: 3em;
      margin: 0 0.25em;
      width:340px;
      position: relative;
	margin-bottom: 2em;
}
.swiper-slide.wide {
	  width:415px;
}
/*カード*/
.slide_num {
      position: absolute;
      top: 0px;
      left: 0;
      width: 100%;
}
.slide_num span {
      aspect-ratio: 1;
      width: 1.8em;
      border-radius: 50%;
      background: #6fc391;
      color: #fff;
      font-size: 1em;
      font-weight: 700;
      display: grid;
      place-items: center;
      z-index: 2;
      font-family: "Montserrat", sans-serif;
}
.slide_num:before {
      content: "";
      background: #6fc391;
      position: absolute;
      top: 0.8em;
      left:1.5em;
      height: 2px;
      width: calc(100% + 1.5em);
}

.swiper_w .swiper-slide:last-child .slide_num:before {
      width: calc(100% - 1.5em);
}

.slied_card {
      background: #fff;
      border-radius: 0.5em;
      padding: 1em;
      box-sizing: border-box;
      min-height:340px;
}
.card_head {
      display: flex;
      align-items: center;
	justify-content: space-between;
      gap: 12px;
      margin-bottom: 16px;
}
.card_title {
      font-size: 1.2em;
      font-weight: 700;
      margin: 0;
}

.card_miashi{
	font-size: 0.8em;
	display: inline-block;
	background: #6fc391;
	border-radius: 0.2em;
	padding: 0 0.5em;
	color: #fff;
	
}
.card_miashi_02{
	background: #f9c158;
	border-radius: 0.2em;
	padding: 0.6em 0.6em;
	margin-top: 0.5em;
	line-height: 1.2;
	font-size: 0.8em;
}
.card_text{
	line-height: 1.8;
	padding-bottom: 1em;
}

img.card_img {
      width: 100%;
	border-radius: 0.5em;
}

/*スクロールバー*/
.conference-scrollbar {
	position: relative;
	margin-top: 40px;
	height: 5px;
	background: #fff;
	border-radius: 999px;
}
.conference-scrollbar .swiper-scrollbar-drag {
	background: #f06292;
	border-radius: 999px;
}

/*mission_area
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.mission_list {}
.mission_list_inner {
      display: flex;
      justify-content: space-between;
      gap: 0 5em;
      align-items: center;
}
.mission_list_inner .img {
      width: 55%;
}
.mission_list_inner .img img {
      width: 100%;
      border-radius: 1.5em;
}
.mission_list_inner .text_box {
      width: calc(45% - 5em);
}
.mission_list > li + li {
      margin-top: 5em;
}
.mission_list > li:nth-child(even) .mission_list_inner {
      flex-direction: row-reverse;
}
@media screen and (max-width: 960px) {
      .mission_list_inner {
            gap: 0 2em;
      }
      .mission_list_inner .img {
            width: 50%;
      }
      .mission_list_inner .text_box {
            width: calc(50% - 2em);
      }
}
@media screen and (max-width: 680px) {
      .mission_list_inner {
            display: block;
      }
      .mission_list_inner .img {
            width: auto;
            margin-bottom: 1em;
      }
      .mission_list_inner .text_box {
            width: auto;
      }
      .mission_list_inner .img img {
            border-radius: 1em;
      }
}
/*mission_list_inner*/
.mission_list_inner .mission_list_num_title {
      margin-bottom: 2.5em;
}
.mission_list_num_title {
      padding-left: 1.5em;
      color: #78c497;
      font-weight: 500;
      position: relative;
      font-family: "Montserrat", sans-serif;
}
.mission_list_num_title:before {
      content: "●";
      position: absolute;
      font-size: 0.8em;
      left: 0;
      top: 0.2em;
}
@media screen and (max-width: 680px) {
      .mission_list_inner .mission_list_num_title {
            margin-bottom: 1em;
      }
}
/*flow_area
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.flow_area {
      padding-bottom: 8em;
}
.flow_img {
      position: relative;
      transform: translateY(-2em);
}
.flow_img_dods:before {
      background: url("../images/top/bg_plus.svg") no-repeat;
      background-size: contain;
      aspect-ratio: 1;
      top: 4em;
      right: 12em;
      width: 10em;
}
@media screen and (max-width: 960px) {
      .flow_img_dods:before {
            right: 0;
      }
}
@media screen and (max-width: 680px) {
      .flow_img {
            padding: 3em 0;
            position: relative;
            transform: translateY(0em);
      }
      .flow_img_dods:before {
            content: none;
      }
}
/*flow_point_list*/
.flow_point_list {
      display: flex;
      gap: 0 1em;
}
.flow_point_list li {
      width: 100%;
      background: #ebf4ee;
      padding: 1.5em;
}
@media screen and (max-width: 680px) {
      .flow_point_list {
            display: block;
      }
      .flow_point_list li + li {
            margin-top: 1em;
      }
      .flow_point_list li {
            width: auto;
      }
}
/*shien_area
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.shien_area {
      padding: 10em 0;
      background: url("../images/top/shien_bg.webp") no-repeat;
      background-size: cover;
}
.shien_title_bg {
      position: relative;
      z-index: 0;
}
.shien_title_bg > * {
      z-index: 1;
      position: relative;
}
.shien_title_bg:before {
      position: absolute;
      content: "";
      background: url("../images/top/bg_midashi.svg") no-repeat;
      background-size: contain;
      aspect-ratio: 1;
      top: -7em;
      left: -2em;
      width: 12em;
}
.shien_img_dods:before {
      background: url("../images/top/bg_plus.svg") no-repeat;
      background-size: contain;
      aspect-ratio: 1;
      top: -15em;
      left: -10em;
      width: 10em;
}
@media screen and (max-width: 680px) {
      .shien_area {
            overflow: hidden;
            padding: 3em 0 20em 0;
            background: url("../images/top/shien_bg_sp.webp") no-repeat;
            background-size: cover;
      }
      .shien_title_bg:before {
            top: -4em;
            left: -2em;
            width: 8em;
      }
      .shien_img_dods:before {
            display: none;
      }
}
/*kankyo_area
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.kankyo_list {
      position: relative;
      display: flex;
      gap: 3em 3em;
      flex-wrap: wrap;
}
.kankyo_list > li {
      width: calc((100% / 3) - (3em / 1.5));
}
@media screen and (max-width: 960px) {
      .kankyo_list > li {
            width: calc((100% / 2) - (3em / 2));
      }
}
@media screen and (max-width: 680px) {
      .kankyo_list {
            display: block;
      }
      .kankyo_list > li {
            width: auto;
      }
      .kankyo_list > li + li {
            margin-top: 4em;
      }
}
.kankyo_list_inner .img {
      margin-bottom: 2em;
}
.kankyo_list_inner .text_box {
      line-height: 1.8;
}
.kankyo_title {
      display: flex;
      justify-content: center;
      flex-direction: column;
      height: 3em;
      letter-spacing: -2px;
      line-height: 1.5;
}
.kankyo_list_inner .img img {
      width: 100%;
      border-radius: 0.4em;
}
.kankyo_list_inner .circle {
      /*letter-spacing: -1px;*/
      line-height: 1.5;
}
.kankyo_list_inner .circle > li {
      margin-bottom: 1.0em;
      font-size: 1.4rem;
}
@media screen and (max-width: 680px) {
      .kankyo_list_inner .circle > li {
            font-size: 1em;
      }
      .kankyo_title {
            display: block;
            height: auto;
      }
}
/*text_l*/
.text_l {
      font-size: 1.5em;
}
.text_l_circle:before {
      top: 0.7em;
}
@media screen and (max-width: 680px) {
      .text_l_circle:before {
            top: 0.5em;
      }
}
/*かざり*/
.kankyo_list.img_dods:before, .kankyo_list.img_dods_after:after {
      z-index: -1;
}
.kankyo_list.img_dods:before {
      background: url("../images/top/bg_plus.svg") no-repeat;
      background-size: contain;
      left: -8em;
      ;
      top: 30%;
      width: 10em;
      aspect-ratio: 1;
}
.kankyo_list.img_dods_after:after {
      background: url("../images/top/bg_point.svg") no-repeat;
      background-size: contain;
      right: -50em;
      top: -3em;
      width: 60.8em;
      aspect-ratio: 68/34;
}
@media screen and (max-width: 680px) {
      .kankyo_list.img_dods:before, .kankyo_list.img_dods_after:after {
            content: none;
      }
}
/*kankyo_flow_cont
--------------------------------------------------------------*/
.kankyo_flow_flex {
      background: #f0f9f3;
      padding: 2em 2em;
      border-radius: 1em;
      display: flex;
      justify-content: space-between;
      flex-direction: row-reverse;
      gap: 0 3em;
}
.kankyo_flow_flex .text_box {
      width: 60%;
}
.kankyo_flow_flex .img {
      position: relative;
      width: 40%;
      z-index: 0;
}
.kankyo_flow_flex .img img {
      width: 100%;
}
.kankyo_flow_flex .img.img_dods:before {
      background: url("../images/top/bg_sq_l.svg") no-repeat;
      aspect-ratio: 68/20;
      width: 68rem;
      left: -30em;
      bottom: 0em;
      z-index: -1;
}
@media screen and (max-width: 680px) {
      .kankyo_flow_flex {
            display: block;
      }
      .kankyo_flow_flex .text_box {
            width: auto;
      }
      .kankyo_flow_flex .img {
            width: auto;
            margin-top: 2em;
      }
}
/*messe_lead_w
------------------------------------------------------------------------------------------------------------------*/
.messe_area {
      padding: 3em 0 6em 0;
}
.messe_lead_w {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 0 5em;
}
.messe_lead_w .text_box {
      position: relative;
      z-index: 2;
      width: 70%;
      line-height: 1.8;
}
.messe_lead_text {
      margin-top: 6em;
}
.messe_lead_w .text_box p + p {
      margin-top: 2em;
}
.messe_lead_w .img {
      width: 30%;
      position: relative;
      z-index: 2;
}
.messe_lead_w .img.img_dods:before {
      background: url("../images/midashi_01.svg") no-repeat;
      background-size: contain;
      left: -15em;
      bottom: -15em;
      width: 18em;
      aspect-ratio: 1;
      z-index: -1;
}
.messe_lead_w .img.img_dods_after:after {
      background: url("../images/top/bg_sq_l.svg") no-repeat;
      aspect-ratio: 68/20;
      width: 68rem;
      right: -28em;
      bottom: -3em;
      z-index: -1;
}
.messe_lead_w .img img {
      width: 100%;
      border-radius: 0.5em;
}
/*messe_title_box*/
.messe_title_box {
      padding-bottom: 3em;
}
.messe_title_box.img_dods:before {
      background: url("../images/top/bg_plus.svg") no-repeat;
      background-size: contain;
      right: -10em;
      top: 0;
      width: 10em;
      aspect-ratio: 1;
      z-index: -1;
}
/*messe_name*/
.messe_name {
      padding-top: 2.5em;
      font-size: 1.3em;
}
.messe_name_s {
      font-size: 0.8em;
}
.messe_lead_w .img .messe_name {
      display: none;
}
@media screen and (max-width: 960px) {
      .messe_lead_w {
            gap: 0 5%;
      }
}
@media screen and (max-width: 680px) {
      .messe_area {
            padding: 2em 0 5em 0;
      }
      .messe_lead_w {
            padding: 0 0 0 0;
            display: block;
            width: 100%;
      }
      .messe_lead_w .text_box .messe_name {
            display: none;
      }
      .messe_lead_w .text_box {
            width: auto;
      }
      .messe_lead_w .img {
            width: auto;
            margin: 1.5em auto auto auto;
      }
      .messe_lead_text {
            margin-top: 2em;
      }
      .messe_lead_w .img.img_dods:before {
            left: -6em;
            bottom: -2em;
            width: 10em;
      }
      .messe_lead_w .img.img_dods_after:after {
            bottom: -0em;
      }
      .messe_title_box.img_dods:before {
            top: auto;
            bottom: -85vh;
            right: 0;
            left: -5em;
      }
      .messe_name {
            padding-top: 1em;
      }
      .messe_lead_w .img .messe_name {
            display: block;
      }
}