@charset "UTF-8";
/* ========== 導入文 ========== */
#philIntro {
  padding: 120px 0;
  background-image: url("../img/philosophy/bg_intro.png");
  background-repeat: no-repeat;
  background-position: right top;
  background-size: contain;
  position: relative;
  border-bottom: 1px solid #E9F6FB; }
  @media screen and (max-width: 800px) {
    #philIntro {
      padding: 60px 0;
      background-size: cover; } }
  #philIntro .layer {
    background: rgba(255, 255, 255, 0.6);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1; }
  #philIntro h4 {
    color: #e5e5e5;
    top: -40px;
    left: 1%;
    font-size: clamp(3rem, 5vw, 6rem);
    position: absolute; }
    @media screen and (max-width: 800px) {
      #philIntro h4 {
        top: -20px; } }
  #philIntro .modBloc {
    z-index: 2;
    padding-left: 100px; }
    @media screen and (max-width: 1050px) {
      #philIntro .modBloc {
        padding-left: 0; } }
    #philIntro .modBloc h2 {
      letter-spacing: 0.05em;
      text-align: center;
      font-size: clamp(20px, 2.2vw, 26px);
      text-shadow: 0 1px 10px rgba(255, 255, 255, 0.65);
      font-family: "Noto Serif JP", serif;
      line-height: 180%; }
      #philIntro .modBloc h2 br {
        display: none; }
        @media screen and (max-width: 800px) {
          #philIntro .modBloc h2 br {
            display: inline-block; } }
    #philIntro .modBloc h3 {
      margin-bottom: 20px;
      letter-spacing: 0.05em;
      text-align: center;
      font-size: clamp(24px, 2.2vw, 34px);
      text-shadow: 0 1px 10px rgba(255, 255, 255, 0.65);
      font-family: "Noto Serif JP", serif;
      line-height: 180%; }

/* ========== 導入文 ========== */
#phil01 .phil01Box {
  width: 100%;
  margin: 0 auto 40px; }
  #phil01 .phil01Box h3 {
    margin-bottom: 40px;
    padding-bottom: 20px;
    letter-spacing: 0.05em;
    font-size: clamp(22px, 2.2vw, 28px);
    position: relative; }
    #phil01 .phil01Box h3::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 1px;
      background: #ccc;
      z-index: 1; }
    #phil01 .phil01Box h3::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 240px;
      height: 1px;
      background: #1e4a92;
      z-index: 2; }
  #phil01 .phil01Box ul {
    margin-bottom: 60px; }
  #phil01 .phil01Box .flexWrap {
    width: 100%;
    justify-content: space-between; }
    #phil01 .phil01Box .flexWrap img {
      width: 32%;
      height: auto;
      object-fit: contain; }

#phil02 {
  background-image: url("../img/philosophy/bg_philosophy.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  color: #fff;
  text-align: center; }
  #phil02 .modBloc .phil01Ttl {
    margin-bottom: 40px; }
    @media screen and (max-width: 1050px) {
      #phil02 .modBloc .phil01Ttl {
        margin-bottom: 20px; } }
    #phil02 .modBloc .phil01Ttl h2 {
      margin-bottom: 20px;
      font-size: clamp(2rem, 2.2vw, 3.6rem);
      line-height: 160%;
      letter-spacing: 0.05em; }
    #phil02 .modBloc .phil01Ttl h3 {
      font-size: clamp(1.2rem, 2.2vw, 2rem);
      line-height: 160%;
      letter-spacing: 0.05em; }
  #phil02 .modBloc p {
    padding: 40px 20px;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    font-size: clamp(0.85rem, 2.2vw, 1.6rem);
    line-height: 180%; }
    @media screen and (max-width: 1050px) {
      #phil02 .modBloc p {
        padding: 20px; } }

.tempBox01:nth-child(even) .imgDeco::before {
  left: -15px; }
