@charset "UTF-8";
@import url('https://fonts.cdnfonts.com/css/barlow');

h2.seo ,h3.seo{font-weight: normal;display: inline;}    
.contents_inner {
    display: block;
    padding-top: 120px;
    margin-top: -120px;
}
.center-left{text-align: center;}
.overimg:hover{opacity: 0.5;}
.spnone{display: block;}
.sponly{display: none;}
.f-left{float: left;}
.f-right{float: right;}
.img100{width: 100%;}
.normal{font-weight: normal;}
.justify{text-align: justify;}
.w48per{width: 48%;}
.w30per{width: 30%;}
.w48per img{width: 100%;}
.w66per{width: 66%;position: relative;}
.w80per{width: 80%;margin: 0 auto;}
.w90per{width: 90%;margin: 0 auto;}
.white{color:#ffffff;}
.shadow{filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.32));}
.sec_ttl_white{font-size: 5em;text-align: center;color:#ffffff;}
.sec_sub_ttl_white{font-size: 1.6em;text-align: center;font-weight: bold;color:#ffffff;}
.barlow{font-family: 'Barlow', sans-serif;}
.tbonly{display: none;}
.center{text-align: center;}
a.news__button{color: #595757;}

/* section_01 */
/* news */
.news {
	width: 100%;
	box-sizing: border-box;
	position: relative;
	margin-top: -20px;
      background: #fff;
      padding: 50px 50px 80px;
    }
    .news__inner {
      margin: 0 auto;
    }
    .news__head , .title__head{
      margin-bottom: 48px;
    }
    .news__title , .main__title{
      margin: 0;
      font-size: 4.6em;
      line-height: 1.2;
      font-weight: 800;
      letter-spacing: -0em;
      color: #00913a;
      background: linear-gradient(180deg, #00913a 0%, #00913a 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }
	.main__title_white{
      margin: 0;
      font-size: 4.6em;
      line-height: 1.2;
      font-weight: 800;
      letter-spacing: -0em;
      color: #19758a;
      background: #ffffff;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }
.main__title_center{
      margin: 0;
      font-size: 4.6em;
      line-height: 1.2;
      font-weight: 800;
      letter-spacing: -0em;
      color: #00913a;
      background: linear-gradient(180deg, #00913a 0%, #00913a 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
	text-align: center;
    }
    .news__sub , .sub__title{
      display: block;
      align-items: center;
      gap: 10px;
      margin-top: 0px;
      font-size: 1.6em;
      font-weight: 700;
      color: #333;
    }
	.sub__title_white{
      display: block;
      align-items: center;
      gap: 10px;
      margin-top: 0px;
      font-size: 1.6em;
      font-weight: 700;
      color: #ffffff;
    }
.sub__title_center{
      display: block;
      align-items: center;
      gap: 10px;
      margin-top: 0px;
      font-size: 1.6em;
      font-weight: 700;
      color: #333;
	text-align: center;
    }

    .news__list {
      display: grid;
      gap: 22px;
      margin: 0;
      padding: 0;
      list-style: none;
    }
    .news__item {
      display: grid;
      grid-template-columns: 120px 160px 1fr;
      align-items: center;
      column-gap: 22px;
    }
    .news__date {
      font-size: 1.4em;
      line-height: 1;
      font-weight: 700;
      color: #00913a;
      letter-spacing: 0.04em;
      white-space: nowrap;
    }
    .news__tag {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      height: 30px;
      padding: 4px 26px;
      border: 1px solid #5a5a5a;
      border-radius: 9999px;
      font-size: 1.0em;
      line-height: 1;
      color: #444;
      white-space: nowrap;
    }
    .news__text {
      min-width: 0;
      font-size: 1.4em;
      line-height: 1.5;
      color: #3d3d3d;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .news__footer {
      display: flex;
      justify-content: center;
      margin-top: 72px;
    }
    .news__button {
      position: relative;
      width:300px;
      height: 50px;
      display: flex;
      align-items: center;
      justify-content:flex-start;
      padding: 12px 30px 12px 30px;
      border: 1px solid #595757;
      color: #595757;
      font-size: 1.14em;
      font-weight: 700;
      transition: background-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
		background-color: #ffffff;
    }
    .news__button::after {
		position: absolute;
		content: "";
  display: block; /* ← 追加 */
        right: 25px;
        width: 80px;
        height: 35px;
        background: url('../img/arrow_base.svg') no-repeat center / contain;
      }
    .news__button:hover {
      background: #43aba5;
      color: #fff;
      transform: translateY(-2px);
    }
    @media (max-width: 640px) {
      .news {
		  width: 100%;
		  margin:80px auto 0;
        padding: 38px 20px 0px;
      }
      .news__head , .title__head{
        margin-bottom: 32px;
      }
      .news__title , .main__title, .main__title_white, .main__title_center{
        font-size: 2.2em;line-height: 1.0em;
      }
      .news__sub , .sub__title , .sub__title_white, .sub__title_center{
        margin-top: 0px;
        font-size: 1.00em;
      }

      .news__list {
        gap: 18px;
      }
      .news__item {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 5px;
        padding-bottom: 18px;
        border-bottom: 1px solid #e5e5e5;
      }
      .news__date {
        font-size: 1.14em;
      }
      .news__tag {
        height: 15px;
        width: fit-content;
        padding: 2px 30px;
        font-size: 0.84em;
      }
      .news__text {
        white-space: normal;
        font-size: 1.14em;
        line-height: 1.6;
      }
      .news__footer {
        margin-top: 40px;
      }
      .news__button {
        height: 25px;
        padding: 15px 20px 15px 20px;
        font-size: 1.0em;
      }
		.news__button::after {
        right: 15px;
        width: 25px;
        height: 25px;
      }      
    }

/* section_02 */
	.section_02{}
    .message {
      padding: 0px;
    }

    .message__inner {
      max-width: 1200px;
      margin: 0 auto;
    }

    .message__lead {
      margin: 44px 0 0;
      font-size: 1.6em;
      line-height: 1.3;
      font-weight: 700;
      color: #241818;
    }
.message__lead_center{
      margin: 44px 0 0;
      font-size: 1.6em;
      line-height: 1.3;
      font-weight: 700;
      color: #241818;
	text-align: center;
    }
    .message__text {
      margin-top: 34px;
		margin-bottom: 2em;
		text-align: justify;
      font-size: 1.14em;
      line-height: 1.95;
      color: #3a2f2f;
    }
    .message__image img {
		display: block;
      width: 56vw;
      height: auto;
      aspect-ratio: 900 / 800;
      object-fit: cover;
      border-top-left-radius: 28px;
	  border-bottom-left-radius: 28px;
    }

    @media (min-width: 641px) {
      .message {
        padding: 0px;
      }

      .message__inner {
        display: grid;
        grid-template-columns: 1fr 1.08fr;
        align-items: start;
        gap: 64px;
      }

      .message__content {
        padding-top: 38px;
      }

      .message__lead,
      .message__text{
        width: 500px;
      }
    }

    @media (max-width: 640px) {
      .message {
        padding: 52px 0 72px;
      }

      .message__content {
        padding: 0 0px;
      }


      .message__lead , .message__lead_center{
        margin-top: 24px;
        font-size: 1.2em;
      }

      .message__text {
        margin-top: 15px;
        font-size: 0.84em;
        line-height: 1.8;
      }
		.message__image {
        margin-top: 30px;
        padding-left: 0px;
      }

      .message__image img {
		 width: 100vw;
		  aspect-ratio: 900 / 600;
        border-top-left-radius: 28px;
		border-bottom-left-radius: 28px;
      }
    }

/* section_03 */

	.section_03{background-color: #e2efe0;;}
    .recruit::before,
    .recruit::after {
      content: "";
      position: absolute;
      inset: auto;
      pointer-events: none;
      opacity: 0.14;
      border-radius: 50%;
      border: 2px solid rgba(255, 255, 255, 0.22);
    }
    .recruit::before {
      width: 540px;
      height: 540px;
      top: -120px;
      right: -80px;
    }
    .recruit::after {
      width: 760px;
      height: 760px;
      right: -240px;
      bottom: -240px;
    }
    .recruit__inner {
      position: relative;
      z-index: 1;
      max-width: 1280px;
      margin: 0 auto;
      padding: 0px;
    }
    .recruit__content {
      max-width: 980px;
      margin: 0 auto;
    }
    .recruit__text {
      margin-top: 54px;
		margin-bottom: 2em;
      font-size: 1.14em;
      line-height: 1.72;
      font-weight: 400;
      letter-spacing: 0.02em;
    }
    .recruit__image {
      margin-top: -22px;
      overflow: hidden;
    }
    .recruit__image img {
      width: 80vw;
      height: 660px;
      object-fit: contain;
      object-position: center;
    }
    @media (max-width: 640px) {

      .recruit__inner {
        padding: 0px;
      }
      .recruit__content {
        padding: 0 0px;
      }
      .recruit__text {
        margin-top: 15px;
        font-size: 0.84em;
        line-height: 1.75;
		text-align: justify;
      }
      .recruit__image {
		  width: 100vw;
		  margin-left: calc(50% - 50vw);
        margin-top: 0px;
      }
      .recruit__image img {
		  width: 100vw;
   margin: 0 calc(50% - 50vw);
        height: auto;
        aspect-ratio: 200 / 270;
		  
      }
    }
    @media (min-width: 641px) {
      .recruit__inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(420px, 560px);
        align-items: center;
        gap: 72px;
      }
      .recruit__content {
        max-width: none;
        order: 2;
      }
      .recruit__text {
        margin-top: 40px;
        font-size: 1.14em;
        line-height: 1.85;
		  text-align: justify; 
      }
      .recruit__image {
        order: 1;
        margin-top: 0;
        margin-left: calc(50% - 50vw);
        width: calc(100% + (50vw - 50%));
      }
      .recruit__image img {
        height: 660px;
      }
    }
/* section_04 */
.data_back{position: relative; background:url('../img/sec04_bg_pc.svg') no-repeat bottom right;background-size: cover;margin-bottom: 1em;z-index: 0;height: auto;}

.benefits {
      padding: 0px;
    }

    .benefits__inner {
      max-width: 1750px;
      margin: 0 auto;
      padding: 56px 64px 72px;
      border: 3px solid #a4ccd5;
      border-radius: 28px;
    }

    .benefits__title {
      margin: 0 0 40px;
      font-size: 1.8em;
      line-height: 1.2;
      font-weight: 700;
      color: #221818;
    }

    .benefits__grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 64px 56px;
    }

    .benefits__item {
      text-align: center;
    }

    .benefits__icon {
      width: 100%;
      height: auto;
      margin: 0 auto 0px;
      object-fit: contain;
    }

    .benefits__name {
      margin: 0 0 10px;
      font-size: 1.4em;
      line-height: 1.35;
      font-weight: 700;
      color: #221818;
    }

    .benefits__text {
      max-width: 360px;
      margin: 0 auto;
      font-size: 1.04em;
      line-height: 1.6;
      text-align: justify;
      color: #342929;
    }

    @media (max-width: 640px) {
		.data_back{position: relative; background:url('../img/sec04_bg_sp.svg') no-repeat top center;background-size: contain;margin-bottom: 0em;z-index: 0;height: auto;padding-top: 30%;}
		.sp_mb3{margin-bottom: 2em;}
      .benefits {
        padding: 0px;
      }

      .benefits__inner {
        padding: 32px 24px 40px;
        border-width: 3px;
        border-radius: 24px;
      }

      .benefits__title {
        margin-bottom: 28px;
        font-size: 1.4em;
      }

      .benefits__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
      }

      .benefits__icon {
        width: 100%;
        height: auto;
        margin-bottom: 5px;
      }

      .benefits__name {
        margin-bottom: 12px;
        font-size: 1.0em;
      }

      .benefits__text {
        max-width: none;
        font-size: 0.7em;
        line-height: 1.7;
        text-align: justify;
      }
    }


/* section_05 */
	.section_05{position: relative; background-color: #e2efe0; z-index: 0;}
.sec05_ttl{position: relative; background:url('../img/sec05_ttl_bg_pc.svg') no-repeat top center;background-size: contain;padding: 4em 1em 7em;z-index: 0;height: auto;}
.btn_center{margin: 4em auto 0em;display: flex;justify-content: center;}
    .ease {
      background: #ffffff;
      border-radius: 28px;
      padding: 56px 56px 44px;
      margin-bottom: 52px;
    }

    .ease__heading {
      margin: 0 0 38px;
      font-size: 1.8em;
      line-height: 1.4;
      font-weight: 700;
      text-align: center;
    }

    .ease__grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 20px;
    }

    .ease__card {
      padding: 30px 30px 35px;
      background:url('../img/sec05_bg_pc.svg') no-repeat top center;
		background-size: cover;
	filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.32));
    }

    .ease__card h3 {
      margin: 0 0 5px;
      font-size: 1.4em;
      line-height: 1.35;
      font-weight: 700;
      color: #089a34;
    }

    .ease__card p {
      margin: 0;
      font-size: 1.14em;
      line-height: 1.8;
    }

    .manga {
      border: 6px solid #089a34;
      border-radius: 28px;
      overflow: hidden;
      background: #fff;
    }

    .manga__head {
      padding: 34px 40px 22px;
      background: #089a34;
      color: #fff;
    }
	.manga__body {
      display: grid;
      grid-template-columns: 1.05fr 0.95fr;
      align-items: end;
      gap: 20px;
      padding: 30px 34px 34px;
      background: #ffffff;
    }

    .manga__lead {
      margin: 0px 0 22px;
      font-size: 1.6em;
      line-height: 1.4;
      font-weight: 700;
    }

    .manga__text {
      margin: 0;
		text-align: justify;
      font-size: 1.14em;
      line-height: 1.8;
    }

    .manga__visual {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-end;
      gap: 18px;
    }

    .manga__visual img {
      max-height: 360px;
      object-fit: contain;
		margin-top: -210px;
    }


@media (max-width: 640px) {
	.sec05_ttl{position: relative; background:url('../img/sec05_ttl_bg_sp.svg') no-repeat top center;background-size: contain;padding: 1.6em 0em 2em;z-index: 0;height: auto;}
      .ease {
        padding: 24px 18px 24px;
        border-radius: 15px;
        margin-bottom: 20px;
      }

      .ease__heading {
        margin-bottom: 5px;
        font-size: 1.04em;
      }

      .ease__grid {
        grid-template-columns: 1fr;
        gap: 10px;
      }

      .ease__card {
        padding: 20px 18px;
      }

      .ease__card h3 {
        margin-bottom: 10px;
        font-size: 1.0em;
      }

      .ease__card p {
        font-size: 0.84em;
        line-height: 1.75;
      }
	.btn_center{margin: 2em auto 0em;display: flex;justify-content: center;}

      .manga {
        border-width: 4px;
        border-radius: 15px;
      }

      .manga__head {
        padding: 20px 18px 16px;
      }

      .manga__title {
        font-size: 38px;
      }

      .manga__sub {
        font-size: 18px;
      }
	

      .manga__body {
		  display: block;
        grid-template-columns: 1fr;
        gap: 22px;
        padding: 22px 18px 20px;
      }

      .manga__lead {
        margin-bottom: 14px;
        font-size: 1.2em;
      }

      .manga__text {
        font-size: 0.84em;
        line-height: 1.85;
      }
	.manga__visual{display: block;box-sizing: border-box;}
	.manga__visual .news__button{width: 86%;}

      .manga__visual img {
		  width: 100%;
        max-height: 260px;
		  margin-top: -0px;
      }


    }


/* section_07 */
  .recruit-boards {
      padding: 0px;
    }

    .recruit-boards__inner {
      max-width: 1800px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 20px;
    }

    .board {
      position: relative;
      display: block;
      min-height: 240px;
      padding: 100px 82px 100px;
      background: url("../img/sec07_bg_pc.webp") no-repeat center / 100% 100%;
		box-sizing: border-box;
    }

    .board__title {
      margin: 0;
      font-size: 1.6em;
      line-height: 1.25;
      font-weight: 700;
      letter-spacing: 0.02em;
    }

    .board__title--blue {
      color: #0f5970;
    }

    .board__title--brown {
      color: #7a4200;
    }

    .board__text {
      margin: 5px 0 0;
      font-size: 1.14em;
      line-height: 1.75;
      letter-spacing: 0.02em;
      color: #231815;
    }
.sns_wrap {
      width: 60%;
      margin: 3em auto;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 20px;
    }
.sns_btn img{
      position: relative;
      display: block;
      width: 100%;
      box-sizing: border-box;
    }
    @media (max-width: 640px) {
      .recruit-boards {
        padding: 0px;
      }

      .recruit-boards__inner {
		  margin-top: 16px;
        grid-template-columns: 1fr;
        gap: 24px;
      }

      .board {
        min-height: 260px;
        padding: 66px 50px 38px;
      }

      .board__title {
        font-size: 1.2em;
      }

      .board__text {
        margin-top: 16px;
        font-size: 0.7em;
        line-height: 1.7;
      }
		.sns_wrap {
      width: 100%;
      margin: 2em auto;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 20px;
    }
    }




/*
===================================================
 tb タブレット解像度
===================================================
*/
@media screen and (max-width:1000px) {
.spnone{display: block;}
.tbonly{display: block;}
.sponly{display: none;}




	}
/*
===================================================
 sp スマホ解像度
===================================================
*/
@media screen and (max-width:640px) {
.spnone{display: none;}
.sponly{display: block;}
.tbonly{display: none;}

.center-left{text-align: left;text-align: justify;}
.f-left{float: none;}
.f-right{float: none;}
.w90per{width: 100%;margin:0 auto;}
.w80per{width: 80%;margin:0 auto;}
.w48per{width: 100%;margin-bottom: 3%;}
.w66per{width: 100%;position: relative;}	
.lh_l {line-height:1.8 !important;}

}
