@charset "utf-8";
/* ---------------------------------------------------

	Syntax - SP First > about

--------------------------------------------------- */
/* ---------------------------------------------------

	overview

--------------------------------------------------- */
.overview{
  margin: 0 0 5rem;
}
.overview__wrap{}
.overview__item{
  margin: 0 0 3rem;
}
.overview__item:last-of-type{
  margin: 0;
}
.overview__item__outer{}
.overview__item__note{}
.overview__item__note__theme{
  font-size: 1.5rem;
  letter-spacing: 1.2px;
  margin: 0 0 1em;
}
.overview__item__note__contentsTheme{
  font-size: 1.125rem;
  margin: 0 0 1em;
}
.overview__item__note__data{}
.overview__item__note__data__menu{
  border-bottom: 2px rgba(175,176,179,1.00) solid;
  display: flex;
  flex-wrap: wrap;
  margin: 0;
}
.overview__item__note__data__menu:first-of-type{
  border-top: 2px rgba(175,176,179,1.00) solid;
}
.overview__item__note__data__menu__subjects{
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  padding: 0.75rem 0;
  position: relative;
  width: 100px;
}
.overview__item__note__data__menu__subjects:before,
.overview__item__note__data__menu__subjects:after{
  background-color: rgba(40,58,145,1.00);
  content: "";
  display: inline-block;
  height: 2px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 100%;
  }
.overview__item__note__data__menu__subjects:after{
  bottom: -2px;
  }
.overview__item__note__data__menu__subjects:before{
  display: none;
  }
.overview__item__note__data__menu:first-of-type .overview__item__note__data__menu__subjects:before{
  display: inline-block;
  top: -2px;
  }
.overview__item__note__data__menu__contents{
  font-size: 1rem;
  font-weight: 500;
  margin: 0;
  line-height: 1.5;
  padding: 0.75rem 10px;
  width: calc(100% - 100px);
}
.overview__item__note__data__menu__contents__list{
  list-style: none;
  margin: 0;
  padding: 0;
}
.overview__item__note__data__menu__contents__list__unit{
  margin: 0 0 0.5em;
}
.overview__item__note__data__menu__contents__list__unit:last-of-type{
  margin: 0;
}
.overview__item__note__data__menu__contents__list__unit .tel{
  text-decoration: underline;
  text-decoration-color: rgba(40,58,145,1.00);
  text-underline-offset: 0.25em;
}
.overview__item__figure{
  padding: 2rem 0 0;
}
.overview__item__figure__main{}
.overview__item__figure__main__image{
  font-size: 0;
}
.overview__item__figure__list{
  display: flex;
  flex-wrap: wrap;
  padding: 1.5rem 0 0;
}
.overview__item__figure__list__image{
  margin: 0 1rem 0 0;
  width: calc((100% - calc(1rem * 1)) / 2);
}
.overview__item__figure__list__image:last-of-type{
  margin: 0;
}
.overview__item__figure__list__image img{
  box-shadow: 2px 2px 8px rgba(0,0,0,0.16);
}
.overview__item__figure__list__image__caption{
  display: block;
  font-size: 1rem;
  line-height: 1.5;
  padding: 0.3em 0 0;
  text-align: center;
}


/* ---------------------------------------------------

	philosophy

--------------------------------------------------- */
.philosophy{
  margin: 0 0 5rem;
}
.philosophy__wrap{}
.philosophy__inner{}
.philosophy__intro{}
.philosophy__intro__figure{
  margin: 0 0 3rem;
}
.philosophy__intro__figure__image{
  /*font-size: 0;*/
  margin: 0 auto;
  max-width: 350px;
}
.philosophy__intro__figure__image__text{
  color: #000;
  display: block;
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0.3em 0 0;
}
.philosophy__intro__theme{
  display: block;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.75;
  margin: 0 0 0.8em;
}
.philosophy__intro__note{
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.75;
  margin: 0;
}
.philosophy__intro__list{
  list-style: none;
  margin: 0;
  padding: 1.5rem 0 0;
}
.philosophy__intro__list__item{
  font-size: 1.0625rem;
  font-weight: 500;
  line-height: 1.5;
  margin: 0 0 1em;
  padding: 0 0 0 calc(1em + 7px);
  text-indent: -0.7em;
}
.philosophy__intro__list__item:last-of-type{
  margin: 0;
}
.philosophy__intro__list__item__icon{
  display: inline-block;
  margin: 0 5px 0 0;
}

.philosophy__banner{
  padding: 2rem 0 0;
}
.philosophy__banner__item{
  background-color: rgba(255,255,255,1.00);
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  max-width: 300px;
}
.philosophy__banner__item__figure{
  margin: 0 0 1rem;
}
.philosophy__banner__item__figure__image{
  font-size: 0;
}
.philosophy__banner__item__note{
  align-items: center;
  display: flex;
}
.philosophy__banner__item__note__inner{}
.philosophy__banner__item__note__theme{
  font-size: 1.125rem;
}
.philosophy__banner__item__note__text{
  font-size: 1rem;
  line-height: 1.75;
  margin: 0;
  padding: 0.5em 0 0;
}


/* ---------------------------------------------------

	environment

--------------------------------------------------- */
.environment{}
.environment__wrap{}
.environment__intro{
  margin: 0 0 2rem;
}
.environment__intro__inner{}
.environment__intro__theme{
  display: block;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.75;
  margin: 0 0 0.8em;
}
.environment__intro__note{
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.75;
  margin: 0;
}
.environment__bg{
  background-image: url("/src/images/about/environment_bg01_pc.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  font-size: 0;
  height: 200px;
  width: 100%;
}


/* ---------------------------------------------------

	MediaQuery

--------------------------------------------------- */
/* ------------------------------------

	Tablet-Mode

------------------------------------ */
@media screen and (min-width: 600px) {
/* ------------------------------------

	overview

------------------------------------ */
.overview{}
.overview__wrap{}
.overview__item{
  position: relative;
  }
.overview__item__outer{}
.overview__item__note{
  max-width: 340px;
  }
.overview__item__note__theme{
  font-size: 1.75rem;
  letter-spacing: 1.4px;
  margin: 0 0 1em;
  }
.overview__item__note__contentsTheme{
  font-size: 1.25rem;
  margin: 0 0 1em;
  }
.overview__item__note__data{}
.overview__item__note__data__menu{}
.overview__item__note__data__menu__subjects{}
.overview__item__note__data__menu__subjects:before,
.overview__item__note__data__menu__subjects:after{}
.overview__item__note__data__menu__subjects:after{}
.overview__item__note__data__menu__subjects:before{}
.overview__item__note__data__menu:first-of-type .overview__item__note__data__menu__subjects:before{}
.overview__item__note__data__menu__contents{}
.overview__item__note__data__menu__contents__list{}
.overview__item__note__data__menu__contents__list__unit{}
.overview__item__note__data__menu__contents__list__unit .tel{
  text-decoration: none;
  }
.overview__item__figure{
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  max-width: calc(13.75rem + ((1vw - 6px) * 84.9057));/*220px~580px*/
  }
.overview__item__figure__main{}
.overview__item__figure__main__image{}
.overview__item__figure__list{}
.overview__item__figure__list__image{
  max-width: 150px;
  }
.overview__item__figure__list__image__caption{}


/* ------------------------------------

	philosophy

------------------------------------ */
.philosophy{}
.philosophy__wrap{}
.philosophy__inner{}
.philosophy__intro{}
.philosophy__intro__figure{
  margin: 0 0 2rem;
  }
.philosophy__intro__figure__image{
  margin: 0;
  max-width: 400px;
  }
.philosophy__intro__figure__image__text{
  font-size: 1.5rem;
  }
.philosophy__intro__theme{
  font-size: 1.25rem;
  letter-spacing: -0.01em;
  line-height: 2;
  margin: 0 0 2em;
  }
.philosophy__intro__note{
  letter-spacing: -0.4px;
  line-height: 2;
  }
.philosophy__intro__list{
  padding: 2.5rem 0 0;
  }
.philosophy__intro__list__item{
  font-size: 1.125rem;
  }
.philosophy__intro__list__item__icon{}

.philosophy__banner{}
.philosophy__banner__item{
  box-shadow: 3px 3px 18px rgba(0,0,0,0.16);
  margin: 0;
  max-width: inherit;
  }
.philosophy__banner__item__figure{
  margin: 0;
  width: 250px;
  }
.philosophy__banner__item__figure__image{}
.philosophy__banner__item__note{
  width: calc(100% - 250px);
  }
.philosophy__banner__item__note__inner{
  padding: 0 1.5rem;
  }
.philosophy__banner__item__note__theme{
  font-size: 1.25rem;
  }
.philosophy__banner__item__note__text{
  padding: 0.75em 0 0;
  }


/* ------------------------------------

	environment

------------------------------------ */
.environment{}
.environment__wrap{}
.environment__intro{
  margin: 0 0 3rem;
  }
.environment__intro__inner{}
.environment__intro__theme{
  font-size: 1.25rem;
  letter-spacing: -0.01em;
  line-height: 2;
  margin: 0 0 2em;
  }
.environment__intro__note{
  letter-spacing: -0.4px;
  line-height: 2;
  }
.environment__bg{
  height: 300px;
  }


}/* /min-width: 600px */



/* ------------------------------------

	PC-Mode

------------------------------------ */
@media screen and (min-width: 1025px) {
/* ------------------------------------

	overview

------------------------------------ */
.overview{
  margin: 0 0 13.75rem;
  }
.overview__wrap{}
.overview__item{
  margin: 0 0 5rem;
  }
.overview__item__outer{}
.overview__item__note{
  max-width: 400px;
  }
.overview__item__note__theme{
  font-size: 2rem;
  letter-spacing: 1.6px;
  margin: 0 0 1.25em;
  }
.overview__item__note__contentsTheme{
  font-size: 1.5rem;
  margin: 0 0 1.25em;
  }
.overview__item__note__data{}
.overview__item__note__data__menu{}
.overview__item__note__data__menu__subjects{
  line-height: 1.75;
  padding: 1rem 0;
  }
.overview__item__note__data__menu__subjects:before,
.overview__item__note__data__menu__subjects:after{}
.overview__item__note__data__menu__subjects:after{}
.overview__item__note__data__menu__subjects:before{}
.overview__item__note__data__menu:first-of-type .overview__item__note__data__menu__subjects:before{}
.overview__item__note__data__menu__contents{
  line-height: 1.75;
  padding: 1rem 10px;
  }
.overview__item__note__data__menu__contents__list{}
.overview__item__note__data__menu__contents__list__unit{}
.overview__item__note__data__menu__contents__list__unit .tel{}
.overview__item__figure{
  max-width: calc(36.25rem + ((1vw - 10.25px) * 23.5294));/*580px~660px*/
  }
.overview__item__figure__main{}
.overview__item__figure__main__image{}
.overview__item__figure__list{
  padding: 2.1875rem 0 0;
  }
.overview__item__figure__list__image{
  margin: 0 2.5rem 0 0;
  max-width: 220px;
  }
.overview__item__figure__list__image__caption{}


/* ------------------------------------

	philosophy

------------------------------------ */
.philosophy{
  margin: 0 0 11.5625rem;
  }
.philosophy__wrap{}
.philosophy__inner{}
.philosophy__intro{}
.philosophy__intro__figure{
  margin: 0 0 4.375rem;
  }
.philosophy__intro__figure__image{
  max-width: inherit;
  }
.philosophy__intro__figure__image__text{
  font-size: 2rem;
  }
.philosophy__intro__theme{
  font-size: 1.5rem;
  letter-spacing: -0.01em;
  line-height: 2;
  margin: 0 0 2em;
  }
.philosophy__intro__note{
  letter-spacing: -0.4px;
  line-height: 1.75;
  }
.philosophy__intro__list{
  padding: 3.75rem 0 0;
  }
.philosophy__intro__list__item{
  font-size: 1.125rem;
  }
.philosophy__intro__list__item__icon{}

.philosophy__banner{
  padding: 3.75rem 0 0;
  }
.philosophy__banner__item{}
.philosophy__banner__item__figure{
  width: 300px;
  }
.philosophy__banner__item__figure__image{}
.philosophy__banner__item__note{
  width: calc(100% - 300px);
  }
.philosophy__banner__item__note__inner{
  padding: 0 3.125rem;
  }
.philosophy__banner__item__note__theme{
  font-size: 1.5rem;
  }
.philosophy__banner__item__note__text{
  letter-spacing: -0.4px;
  line-height: 2;
  padding: 1.25em 0 0;
  }


/* ------------------------------------

	environment

------------------------------------ */
.environment{}
.environment__wrap{}
.environment__intro{
  margin: 0 0 6.25rem;
  }
.environment__intro__inner{}
.environment__intro__theme{
  font-size: 1.5rem;
  letter-spacing: -0.01em;
  line-height: 2;
  margin: 0 0 2em;
  }
.environment__intro__note{
  letter-spacing: -0.4px;
  line-height: 1.75;
  }
.environment__bg{}


}/* /min-width: 1025px */



/* ------------------------------------

	PC-Mode > Irregular

------------------------------------ */
@media screen and (min-width: 1366px) {
/* ------------------------------------

	overview

------------------------------------ */
.overview{}
.overview__wrap{}
.overview__item{
  margin: 0 0 11.25rem;
  }
.overview__item__outer{}
.overview__item__note{
  max-width: 460px;
  }
.overview__item__note__theme{}
.overview__item__note__contentsTheme{}
.overview__item__note__data{}
.overview__item__note__data__menu{}
.overview__item__note__data__menu__subjects{
  width: 120px;
  }
.overview__item__note__data__menu__subjects:before,
.overview__item__note__data__menu__subjects:after{}
.overview__item__note__data__menu__subjects:after{}
.overview__item__note__data__menu__subjects:before{}
.overview__item__note__data__menu:first-of-type .overview__item__note__data__menu__subjects:before{}
.overview__item__note__data__menu__contents{
  width: calc(100% - 120px);
  }
.overview__item__note__data__menu__contents__list{}
.overview__item__note__data__menu__contents__list__unit{}
.overview__item__note__data__menu__contents__list__unit .tel{}
.overview__item__figure{
  right: calc(0rem + ((1vw - 13.66px) * 54.1516));/*0~300px*/
  max-width: 660px;
  }
.overview__item__figure__main{}
.overview__item__figure__main__image{}
.overview__item__figure__list{}
.overview__item__figure__list__image{}
.overview__item__figure__list__image__caption{}


/* ------------------------------------

	environment

------------------------------------ */
.environment{}
.environment:before{}
.environment__wrap{}
.environment__intro{}
.environment__intro__inner{}
.environment__intro__theme{}
.environment__intro__note{}
.environment__bg{
  height: 350px;
  }

}/* /min-width: 1366px */


/* ------------------------------------

	PC-Mode > Irregular

------------------------------------ */
@media screen and (min-width: 1500px) {
/* ------------------------------------

	environment

------------------------------------ */
.environment{}
.environment:before{
  display: none;
  }
.environment__wrap{}
.environment__intro{}
.environment__intro__inner{}
.environment__intro__theme{}
.environment__intro__note{}
.environment__bg{}

}/* /min-width: 1500px */
