﻿@charset "utf-8";

/*---------------------
  サブタイトル
---------------------*/

.backpic1 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht10.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 11vw;
	padding-right: 0px;
	padding-bottom: 6vw;
	padding-left: 0px;
}
@media (max-width: 768px) {
.backpic1 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht10sp.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 15vw;
	padding-right: 0px;
	padding-bottom: 14vw;
	padding-left: 0px;
	margin-top: 100px;
}
}
.backpic2 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht12.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 11vw;
	padding-right: 0px;
	padding-bottom: 6vw;
	padding-left: 0px;
}
@media (max-width: 768px) {
.backpic2 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht12sp.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 15vw;
	padding-right: 0px;
	padding-bottom: 14vw;
	padding-left: 0px;
	margin-top: 100px;
}
}
.backpic3 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht13.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 11vw;
	padding-right: 0px;
	padding-bottom: 6vw;
	padding-left: 0px;
}
@media (max-width: 768px) {
.backpic3 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht13sp.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 15vw;
	padding-right: 0px;
	padding-bottom: 14vw;
	padding-left: 0px;
	margin-top: 100px;
}
}
.backpic4 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht14.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 11vw;
	padding-right: 0px;
	padding-bottom: 6vw;
	padding-left: 0px;
}
@media (max-width: 768px) {
.backpic4 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht14sp.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 15vw;
	padding-right: 0px;
	padding-bottom: 14vw;
	padding-left: 0px;
	margin-top: 100px;
}
}
.backpic5 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht15.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 11vw;
	padding-right: 0px;
	padding-bottom: 6vw;
	padding-left: 0px;
}
@media (max-width: 768px) {
.backpic5 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht15sp.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 15vw;
	padding-right: 0px;
	padding-bottom: 14vw;
	padding-left: 0px;
	margin-top: 100px;
}
}

.backpic6 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht16.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 11vw;
	padding-right: 0px;
	padding-bottom: 6vw;
	padding-left: 0px;
}
@media (max-width: 768px) {
.backpic6 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht16sp.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 15vw;
	padding-right: 0px;
	padding-bottom: 14vw;
	padding-left: 0px;
	margin-top: 100px;
}
}

/*---------------------
  ヘッド文字
---------------------*/
.caption2 {
  font-size: 1.9rem;     /* 約30px */
  line-height: 1.6;      /* 推奨：可読性を保つ倍率 */
  font-weight: 500;
  color: #fff;
  text-align: center;
  letter-spacing: 0.2em;
  position: static; /* 通常の表示 */
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
}
@media (max-width: 768px) {
.caption2 {
  font-size: 1.5rem;     /* 約30px */
  line-height: 1.6;      /* 推奨：可読性を保つ倍率 */
  font-weight: 500;
  color: #fff;
  text-align: center;
  letter-spacing: 0.2em;
  position: static; /* 通常の表示 */
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
}	
}	

/*---------------------
  ぱんくず
---------------------*/

.breadcrumb {
	width: 100%;
	max-width: 1100px;
	font-size: 90%;
	color: #333;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
	padding-top: 20px;
}

.breadcrumb ul {
  display: flex;
  flex-wrap: wrap;    /* スマホで折り返し可能 */
  list-style: none;
  padding: 0;
  margin: 0;
}

.breadcrumb li {
  display: flex;
  align-items: center;
}

.breadcrumb li + li::before {
  content: "›";       /* 「>」よりも見やすい記号 */
  margin: 0 8px;
  color: #999;
}

/* リンク共通 */
.breadcrumb a {
  color: inherit;         /* 色は親に従う */
  text-decoration: none;  /* 通常は下線なし */
}

.breadcrumb a:hover,
.breadcrumb a:focus {
  text-decoration: underline;
}

/* 現在ページ */
.breadcrumb li[aria-current="page"] {
  font-weight: bold;
  color: #000;
}

@media (max-width: 768px) {
.breadcrumb {
	width: 100%;
	max-width: 1000px;
	font-size: 84%;
	color: #333;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
	padding-top: 20px;
}

.breadcrumb ul {
  display: flex;
  flex-wrap: wrap;    /* スマホで折り返し可能 */
  list-style: none;
  padding: 0;
  margin: 0;
}

.breadcrumb li {
  display: flex;
  align-items: center;
}

.breadcrumb li + li::before {
	content: "›";
	color: #333;
	margin-top: 0;
	margin-right: 6px;
	margin-bottom: 0;
	margin-left: 2px;
}

/* リンク共通 */
.breadcrumb a {
	color: inherit;         /* 色は親に従う */
	text-decoration: none;  /* 通常は下線なし */
	margin-left: 10px;
	margin-right: 5px;
}

.breadcrumb a:hover,
.breadcrumb a:focus {
  text-decoration: underline;
}

/* 現在ページ */
.breadcrumb li[aria-current="page"] {
	font-weight: 400;
	color: #000;
}
}

/*---------------------
  テンプレートレイアウト
---------------------*/

/* -----------------------------
   cocotte
----------------------------- */
.cocotte-section {
	width: 100%;
	background: none; /* 背景無色 */
	box-sizing: border-box;
	padding-top: 100px;
	padding-right: 0;
	padding-bottom: 130px;
	padding-left: 0;
}

.cocotte-inner {
  max-width: 780px;
  margin: 0 auto;
  text-align: center;
}

.cocotte-image {
  padding: 0 50px;
  box-sizing: border-box;
}

.cocotte-image img {
  width: 100%;
  height: auto;
  display: block;
}

/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .cocotte-section {
    padding: 80px 0;
  }
}

@media (max-width: 768px) {
  .cocotte-section {
	padding-top: 40px;
	padding-right: 0;
	padding-bottom: 80px;
	padding-left: 0;
  }

  .cocotte-inner {
    width: 90%;
  }

  .cocotte-image {
    padding: 0 10px; /* スマホでは少し余白を減らす */
  }
}
/* =======================
   cocotte-section2
======================= */
.cocotte-section2 {
	width: 100%;
	background-color: #fff; /* 背景白 */
	box-sizing: border-box;
	margin-bottom: 100px;
	padding-top: 100px;
	padding-right: 0;
	padding-bottom: 20px;
	padding-left: 0;
}

.cocotte-inner2 {
	max-width: 1080px;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 60px;
}

.cocotte-box2 {
	box-sizing: border-box;
	padding-top: 45px;
	padding-bottom: 0px;
	margin-bottom: 60px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCC;
}

.cocotte-line2 {
  width: 100%;
  height: 1px;
  background-color: #D8D8D8;
}

/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .cocotte-section2 {
    padding: 80px 0;
  }
  .cocotte-inner2 {

	padding-right: 20px;
	padding-left: 20px;
}
}

@media (max-width: 768px) {
    .cocotte-inner2 {

	padding-right: 0px;
	padding-left: 0px;
}
  .cocotte-section2 {
	width: 100%;
	background-color: #fff;
	box-sizing: border-box;
	margin-bottom: 60px;
	padding-top: 60px;
	padding-right: 0;
	padding-bottom: 20px;
	padding-left: 0;
  }
  
  .cocotte-box2 {
	padding-top: 40px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	margin-right: 30px;
	margin-left: 30px;
  }
}

/* -----------------------------
   cocotte-section3
----------------------------- */
.cocotte-section3 {
	width: 100%;
	background: none; /* 背景無色 */
	box-sizing: border-box;
	padding-top: 40px;
	padding-right: 0;
	padding-bottom: 100px;
	padding-left: 0;
}

.cocotte-inner3 {
	max-width: 970px;
	box-sizing: border-box;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 60px;
}

/* 上段2BOX */
.cocotte-top-boxes {
	display: flex;
	justify-content: space-between;
	gap: 6px;
	margin-bottom: 100px;
}

.cocotte-top-box {
	width: 482px;
	border-left: 1px solid #BCBCBC;
	box-sizing: border-box;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 20px;
}
.cocotte-top-box2 {
	width: 482px;
	border-left: 1px solid #BCBCBC;
	border-right: 1px solid #BCBCBC;
	box-sizing: border-box;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 20px;
}

/* 下段3BOX（画像） */
.cocotte-bottom-boxes {
  display: flex;
  justify-content: space-between;
  gap: 30px;
}

.cocotte-bottom-box {
  width: 300px;
  box-sizing: border-box;
}

.cocotte-bottom-box img {
  width: 100%;
  height: auto;
  display: block;
}

/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .cocotte-section3 {
	padding-top: 20px;
	padding-right: 0;
	padding-bottom: 80px;
	padding-left: 0;
  }

  .cocotte-top-boxes {
    flex-direction: column;
    align-items: center;
    gap: 30px;
  }

  .cocotte-top-box {
	width: 90%;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-right-style: none;
	border-bottom-style: solid;
	border-left-style: none;
	border-top-color: #BCBCBC;
	border-bottom-color: #BCBCBC;
	padding-top: 60px;
	padding-right: 20px;
	padding-bottom: 60px;
	padding-left: 20px;
  }
   .cocotte-top-box2 {
	width: 90%;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-right-style: none;
	border-bottom-style: solid;
	border-left-style: none;
	border-right-color: #BCBCBC;
	border-bottom-color: #BCBCBC;
	border-left-color: #BCBCBC;
	padding-top: 40px;
	padding-right: 20px;
	padding-bottom: 60px;
	padding-left: 20px;
  }

  .cocotte-bottom-boxes {
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
  }

  .cocotte-bottom-box {
    width: 45%;
  }
}

@media (max-width: 768px) {
    .cocotte-section3 {
	padding-top: 10px;
	padding-bottom: 80px;
  }
  
  .cocotte-inner3 {
	padding-top: 30px;
}
  .cocotte-bottom-box {
    width: 45%;
  }
}

/* -----------------------------
   recruit
----------------------------- */
.recruit-section {
	width: 100%;
	background: none; /* 背景無色 */
	box-sizing: border-box;
	padding-top: 100px;
	padding-right: 0;
	padding-bottom: 130px;
	padding-left: 0;
}

.recruit-inner {
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
}

.recruit-image {
  padding: 0 50px;
  box-sizing: border-box;
}

.recruit-image iframe {
    width: 100%;
    aspect-ratio: 16 / 9; /* ← 自動でキレイな比率になる */
    display: block;
}

/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .recruit-section {
    padding: 80px 0;
  }
}

@media (max-width: 768px) {
  .recruit-section {
	padding-top: 40px;
	padding-right: 0;
	padding-bottom: 40px;
	padding-left: 0;
  }

  .recruit-inner {
    width: 95%;
  }

  .recruit-image iframe {
    margin-bottom: 10px; /* ← タイトルが重ならないよう調整 */
  }

  .main-title2,
  .main-title3 {
    margin-top: 0;
    padding-top: 0;
  }
}
/* =======================
   recruit-section2
======================= */
.recruit-section2 {
	width: 100%;
	background: none; /* 背景無色 */
	box-sizing: border-box;
	padding-top: 100px;
	padding-right: 0;
	padding-bottom: 130px;
	padding-left: 0;
}

.recruit-inner2 {
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
}

.recruit-image2 {
  padding: 0 50px;
  box-sizing: border-box;
}

.recruit-image2 img {
  width: 100%;
  height: auto;
  display: block;
}

/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .recruit-section2 {
    padding: 80px 0;
  }
}

@media (max-width: 768px) {
  .recruit-section2 {
	padding-top: 40px;
	padding-right: 0;
	padding-bottom: 80px;
	padding-left: 0;
  }

  .recruit-inner2 {
    width: 90%;
  }

  .recruit-image2 {
    padding: 0 10px; /* スマホでは少し余白を減らす */
  }
}
/* ==============================
   recruit-section3
============================== */
.recruit-section3 {
	width: 100%;
	background: #fff;
	box-sizing: border-box;
	padding-top: 80px;
	padding-right: 0;
	padding-bottom: 160px;
	padding-left: 0;
}

.recruit-inner3 {
  max-width: 1300px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 40px 0; /* 段間 */
}

.recruit-box3 {
	width: 300px;
	box-sizing: border-box;
	border-radius: 10px;
	transition: 0.3s;
	background-color: #F7EFCA;
	padding-top: 25px;
	padding-right: 10px;
	padding-bottom: 25px;
	padding-left: 10px;
}

.recruit-box3 img {
	width: 95px;
	height: auto;
	margin-bottom: 15px;
	margin-right: auto;
	margin-left: auto;
}


/* ==============================
   レスポンシブ設定
============================== */

/* ▼ iPad（約1024px以下）→3列 */
@media (max-width: 1024px) {
  .recruit-inner3 {
	justify-content: space-between;
	gap: 30px 0;
	padding-right: 20px;
	padding-left: 20px;
  }
  .recruit-box3 {
    width: 31%; /* 約3列 */
  }
}

/* ▼ スマホ（約768px以下）→2列 */
@media (max-width: 768px) {
  .recruit-inner3 {
    justify-content: space-between;
    gap: 20px 0;
	padding-right: 15px;
	padding-left: 15px;
  }
  .recruit-box3 {
    width: 48%; /* 約2列 */
  }
}
/* ==============================
   recruit-section4
============================== */
.recruit-section4 {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  box-sizing: border-box;
  padding-top: 150px;
  padding-bottom: 100px;
}

/* --- レスポンシブ対応 --- */
@media (max-width: 1024px) {
  .recruit-section4 {
    padding-top: 100px;
    padding-bottom: 80px;
    max-width: 90%; /* 少し余裕を持たせる */
  }
}

@media (max-width: 768px) {
  .recruit-section4 {
    padding-top: 80px;
    padding-bottom: 60px;
    max-width: 92%;
  }
}
/* ==============================
   recruit-section5
============================== */
.recruit-section5 {
	width: 100%;
	box-sizing: border-box;
	padding-top: 140px;
	padding-right: 20px;
	padding-bottom: 60px;
	padding-left: 20px;
}

/* 中央にコンテンツ幅を制限 */
.recruit-inner5 {
	max-width: 1300px;
	display: flex;
	gap: 63px;             /* 左右間隔 */
	align-items: flex-start;
	flex-wrap: wrap;        /* スマホで縦並びにする */
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 130px;
	margin-left: auto;
}

/* 左画像 */
.recruit-left-box5 img {
  width: 100%;
  max-width: 600px;
  height: auto;
  display: block;
}

/* 右ボックス */
.recruit-right-box5 {
	max-width: 550px;
	margin-top: 40px;      /* 左側より下にずらす */
}

/* --- レスポンシブ --- */
@media screen and (max-width: 1024px) {
  .recruit-section5 {
    width: 100%;
    box-sizing: border-box;
    padding: 30px 15px 50px 15px;
  }

  .recruit-inner5 {
    flex-direction: column; /* スマホでは縦並び */
    gap: 20px;
  }

  .recruit-right-box5 {
    max-width: 100%;
    margin-top: 20px;
    padding-left: 15px;   /* 縦並びでは下げを少なく */
  }

  .recruit-left-box5 img {
    max-width: 100%; /* 画像も画面幅に合わせる */
  }
}

@media (max-width: 768px) {
  .recruit-section5 {
    padding: 60px 20px 10px 20px;
  }

  .recruit-inner5 {
    flex-direction: column; /* スマホでは縦並び */
    gap: 10px;
	margin-bottom: 80px;
  }

  .recruit-right-box5 {
    max-width: 100%;
    margin-top: 0;
    padding-left: 15px; /* 縦並びでは下げを少なく */
  }

  .recruit-left-box5 img {
    max-width: 100%;
    margin-bottom: 20px;
  }
}
/* -----------------------------
   recruit-section6
----------------------------- */
.recruit-section6 {
  width: 100%;
  background: none; /* 背景無色 */
  box-sizing: border-box;
  padding: 40px 0 100px 0;
}

.recruit-inner6 {
	max-width: 1000px;
	margin: 0 auto;
	box-sizing: border-box;
	padding-top: 10px;
}

/* 上段2BOX */
.recruit-top-boxes {
  display: flex;
  justify-content: space-between;
  gap: 6px;
  margin-bottom: 100px;
}

.recruit-top-box,
.recruit-top-box2 {
  width: 490px;
  box-sizing: border-box;
  padding: 20px;
  border-left: 1px solid #BCBCBC;
}

.recruit-top-box2 {
  border-right: 1px solid #BCBCBC;
}

/* 下段1枚画像 */
.recruit-bottom-image {
  width: 100%;
  box-sizing: border-box;
}

.recruit-bottom-image img {
  width: 100%;
  height: auto;
  display: block;
}

/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .recruit-section6 {
    padding: 20px 0 80px 0;
  }

  .recruit-top-boxes {
    flex-direction: column;
    align-items: center;
    gap: 30px;
  }

  .recruit-top-box,
  .recruit-top-box2 {
    width: 90%;
    border: none;
    border-top: 1px solid #BCBCBC;
    border-bottom: 1px solid #BCBCBC;
    padding: 60px 20px;
  }

  .recruit-bottom-image {
    width: 90%;
    margin: 0 auto;
  }
}

@media (max-width: 768px) {
  .recruit-section6 {
    padding: 10px 0 80px 0;
  }

  .recruit-inner6 {
    padding-top: 30px;
  }

  .recruit-bottom-image {
    width: 100%;
  }
}
/* -----------------------------
   admission-section
----------------------------- */
.admission-section {
	width: 100%;
	background: none; /* 背景無色 */
	box-sizing: border-box; /* 全体には余白なし */
	padding-top: 80px;
	padding-bottom: 80px;
}

.admission-inner {
	max-width: 1000px;
	background-color: #ffffff; /* 白背景 */
	box-sizing: border-box;
	padding: 70px;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 60px;
	margin-left: auto;
}


/* 下部2BOX配置 */
.admission-boxes {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 50px; /* 左右間隔 */
}

/* 左右BOX */
.admission-box-left {
	width: 520px;
	box-sizing: border-box;
	padding-top: 16px;
}

.admission-box-right {
  width: 290px;
  box-sizing: border-box;
}

/* テキスト基本調整 */
.admission-box-left p,
.admission-box-right p {
  line-height: 1.8;
  color: #333;
}

/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .admission-inner {
    padding: 50px 40px;
  }

  .admission-boxes {
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }

  .admission-box-left,
  .admission-box-right {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .admission-inner {
    padding: 40px 20px;
  }

}
/* =======================
   admission-section2
======================= */
.admission-section2 {
	width: 100%; /* 背景白 */
	box-sizing: border-box;
	padding-top: 100px;
	padding-right: 0;
	padding-bottom: 100px;
	padding-left: 0;
}

.admission-inner2 {
  max-width: 1080px;
  margin: 0 auto;
}

.admission-box2 {
	box-sizing: border-box;
	padding-top: 0;
	padding-bottom: 0px;
	margin-bottom: 100px;
}

.admission-line2 {
  width: 100%;
  height: 1px;
  background-color: #D8D8D8;
}

/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .admission-section2 {
    padding: 80px 0;
  }
}

@media (max-width: 768px) {
  .admission-section2 {
	width: 100%;
	box-sizing: border-box;
	padding-top: 0px;
	padding-right: 0;
	padding-bottom: 40px;
	padding-left: 0;
  }

  .admission-box2 {
	padding-top: 0;
	padding-right: 30px;
	padding-bottom: 0px;
	padding-left: 30px;
  }
}

/* --- admission-section3 --- */
.admission-section3 {
	width: 100%;
	background-image: url('../img/admission1@2x.webp'); /* 背景画像 */
	background-size: cover;       /* 横幅いっぱいに */
	background-position: center;  /* 中央寄せ（PC） */
	background-repeat: no-repeat;
	box-sizing: border-box;
	padding-top: 120px;
	padding-right: 20px;
	padding-bottom: 180px;
	padding-left: 20px;
}

/* コンテンツを中央に制限 */
.admission-inner3 {
  max-width: 1120px;           /* コンテンツ幅の上限 */
  margin: 0 auto;              /* 中央寄せ */
  text-align: center;          /* 文字中央寄せ */
  color: #fff;    
  position: relative; /* 子要素を絶対配置する基準 */
}

/* --- レスポンシブ対応 --- */
@media screen and (max-width: 768px) {
  .admission-section3 {
	background-image: url(../img/admission1sp@2x.webp); /* 背景画像 */
	background-position: center center; /* 背景を右側にずらす */
	margin-bottom: 0px;
	padding-top: 60px;
	padding-right: 5px;
	padding-bottom: 60px;
	padding-left: 5px;
  }
  
  .admission-inner3 {
    max-width: 90%;            /* スマホでは横幅を少し狭める */
  }
}

/* ============================
   admission-section4
============================ */
.admission-section4 {
  width: 100%;
  background-color: #fff; /* 背景白 */
  box-sizing: border-box;
  padding: 100px 0;
}

.admission-inner4 {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px;
  box-sizing: border-box;
}

/* --- 左側（720px） --- */
.admission-left4 {
  width: 720px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}


.admission-subbox4 {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}

.admission-subbox4 {
	width: 360px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #333;
}


/* --- 右側（画像360px） --- */
.admission-right4 {
  width: 360px;
}

.admission-right4 img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  object-fit: cover;
}

/* ============================
   レスポンシブ対応
============================ */

@media (max-width: 1024px) {
  .admission-inner4 {
	padding-top: 40px;
	padding-right: 20px;
	padding-bottom: 60px;
	padding-left: 20px;
  }
}

@media (max-width: 768px) {
  .admission-section4 {
	padding-top: 40px;
	padding-right: 0;
	padding-bottom: 60px;
	padding-left: 0;
}

  
  
  .admission-inner4 {
    flex-direction: column; /* 縦並び */
    align-items: center;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 40px;
	padding-left: 20px;
  }

  /* スマホでは画像を先に表示 */
  .admission-right4 {
    order: 1;
    width: 100%;
    margin-bottom: 0px;
  }

  .admission-left4 {
    order: 2;
    width: 100%;
  }

  .admission-subboxes4 {
    flex-direction: column;
    gap: 0px;
  }

  .admission-subbox4 {
    width: 100%;
  }
}
/* =========================
   admission-section5
========================= */
.admission-section5 {
  width: 100%;
  background: linear-gradient(white 86px, transparent 0); /* 上部86px白、それ以降無色 */
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 55px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 0 20px 100px 20px;
}

.admission-left5 {
  width: 440px;
}

.admission-left5 img {
  width: 100%;
  height: auto;
  display: block;
}

.admission-right5 {
	width: 520px;
	margin-top: 178px;
}


/* --- スマホ対応 --- */
@media (max-width: 768px) {
  .admission-section5 {
    flex-direction: column;
    align-items: center;
    gap: 30px;
    padding-bottom: 60px;
    background: linear-gradient(white 86px, transparent 0); /* スマホでも上部白を維持 */
  }

  .admission-left5,
  .admission-right5 {
    width: 100%;
    max-width: 520px;
  }
  .admission-right5 {
	margin-top: 0px;
}
}
/* =========================
   admission-section6
========================= */
.admission-section6 {
  width: 100%;
  background: none; /* 背景無色 */
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  box-sizing: border-box;
  padding-left: 160px; /* 左余白 */
  padding-top: 100px;
  padding-bottom: 100px;
  gap: 55px; /* ボックス間の余白 */
}

.admission6-box1 {
	width: 460px;
	margin-top: 138px;
}

.admission6-box2 {
  width: 435px;
}

.admission6-box2 img {
  width: 100%;
  height: auto;
  display: block;
}


@media (max-width: 1024px) {
  .admission-section6 {
  width: 100%;
  background: none; /* 背景無色 */
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  box-sizing: border-box;
  padding-left: 40px; /* 左余白 */
  padding-top: 100px;
  padding-bottom: 100px;
  gap: 55px; /* ボックス間の余白 */
}
}

/* --- スマホ対応（画像 → テキスト）--- */
@media (max-width: 768px) {
  .admission-section6 {
	flex-direction: column-reverse; /* 画像 → テキストの順に変更 */
	align-items: center;
	padding-left: 20px;
	gap: 20px;
	padding-right: 20px;
	padding-top: 40px;
  padding-bottom: 60px;
  }
  

  .admission6-box1,
  .admission6-box2 {
    width: 100%;
    max-width: 600px;
  }
  .admission6-box1 {
	margin-top: 0px;
}
}
/* =========================
   admission-section7
========================= */
.admission-section7 {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  box-sizing: border-box;
  padding-left: 50px; /* 左余白 */
  padding-top: 100px;
  padding-bottom: 100px;
  gap: 40px; /* ボックス間隔 */
  background: none; /* 背景無色 */
}

/* 左ボックス：画像 */
.admission-box-left7 {
  width: 480px;
}

.admission-box-left7 img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 10px;
  object-fit: cover;
}

/* 右ボックス：テキスト */
.admission-box-right7 {
	width: 480px;
	text-align: left;
	margin-top: 240px;
}



/* ============================
   スマホ対応（画像上、テキスト下）
============================ */
@media (max-width: 768px) {
  .admission-section7 {
    flex-direction: column; /* 縦並び */
    align-items: center;
    padding-left: 20px;
    padding-right: 20px;
    gap: 30px;
	padding-top: 40px;
  padding-bottom: 80px;
  }

  .admission-box-left7,
  .admission-box-right7 {
    width: 100%;
    max-width: 480px;
  }
  .admission-box-right7 {
	margin-top: 0px;
}
}


/* -----------------------------
   inquiry
----------------------------- */
.inquiry-section {
	width: 100%;
	background: none; /* 背景無色 */
	box-sizing: border-box;
	padding-top: 100px;
	padding-right: 0;
	padding-bottom: 130px;
	padding-left: 0;
}

.inquiry-inner {
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
}


/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .inquiry-section {
    padding: 80px 0;
  }
}

@media (max-width: 768px) {
  .inquiry-section {
	padding-top: 40px;
	padding-right: 20px;
	padding-bottom: 40px;
	padding-left: 20px;
  }


}

/* -----------------------------
   newspage
----------------------------- */
.newspage-section {
	width: 100%;
	background: none; /* 背景無色 */
	box-sizing: border-box;
	padding-top: 100px;
	padding-right: 0;
	padding-bottom: 130px;
	padding-left: 0;
}

.newspage-inner {
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
}


/* =======================
   レスポンシブ対応
======================= */
@media (max-width: 1024px) {
  .newspage-section {
    padding: 80px 0;
  }
}

@media (max-width: 768px) {
  .newspage-section {
	padding-top: 40px;
	padding-right: 20px;
	padding-bottom: 40px;
	padding-left: 20px;
  }


}

/* -----------------------------
   privacy-section
----------------------------- */
.privacy-section {
  width: 100%;
  background: none;
  box-sizing: border-box;
  padding-top: 80px;
  padding-bottom: 80px;
}

/* 中央白背景のボックス */
.privacy-inner {
  max-width: 1000px;
  background-color: #ffffff;
  box-sizing: border-box;
  margin: 0 auto 80px;
  padding: 100px 40px 70px;
}

/* 各項目ブロック */
.privacy-box2 {
  max-width: 800px;
  box-sizing: border-box;
  padding-top: 45px;
  margin: 0 auto 50px;
  border-top: 1px solid #CCC;
}

/* タイトル */
.privacy-box2 .privacy-title {
  font-size: 1rem;
  margin-bottom: 20px;
  font-weight: 400;
}

/* リスト */
.privacy-box2 ul {
  padding-left: 1.4rem;
  margin: 0;
}

.privacy-box2 li {
  list-style-type: disc;
  margin-bottom: 0.8rem;
  line-height: 1.7;
  font-size: 1rem;
}

/* 区切り線 */
.privacy-line2 {
  width: 100%;
  height: 1px;
  background-color: #D8D8D8;
}

/* -----------------------------
   レスポンシブ
----------------------------- */

/* ▼ タブレット（〜1024px） */
@media screen and (max-width: 1024px) {

  .privacy-inner {
    padding: 80px 30px 60px;
  }

  .privacy-box2 .privacy-title {
    font-size: 1rem;
  }

  .privacy-box2 li {
    font-size: 1rem;
  }
}

/* ▼ スマホ（〜768px） */
@media screen and (max-width: 768px) {

  .privacy-section {
    padding-top: 50px;
    padding-bottom: 40px;
  }

  .privacy-inner {
	max-width: 94%;
	padding-top: 50px;
	padding-right: 5%;
	padding-bottom: 30px;
	padding-left: 5%;
  }

  .privacy-box2 {
    padding-top: 35px;
    margin-bottom: 40px;
  }

  .privacy-box2 .privacy-title {
    font-size: 1.2rem;
    margin-bottom: 15px;
  }

  .privacy-box2 li {
    font-size: 1rem;
    line-height: 1.6;
  }
}

/* ================================
   News Page Section
   ================================ */
.newspage-section {
    width: 100%;
    padding: 60px 0;
    box-sizing: border-box;
}

/* コンテンツ全体の横並び（メイン＋サイドバー） */
.newspage-section .news-wrapper {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	gap: 50px;

	/* ★ 左右の高さをそろえず、独立させる最重要設定 */
	align-items: flex-start;
}

/* --------------------------------
   ① 左側：記事一覧（メイン）
-------------------------------- */
.newspage-section .news-main {
	width: 70%;
	background-color: #FFF;
	padding-top: 38px;
	padding-bottom: 38px;
	padding-right: 4%;
	padding-left: 4%;
	/* 念のため高さを常にautoに固定 */
	height: auto;
}

/* 記事ブロック */
.newspage-section .news-item {
	border-bottom: 1px solid #e5e5e5;
	padding-top: 25px;
	padding-right: 2%;
	padding-bottom: 15px;
	padding-left: 2%;
}

.newspage-section .news-item:last-child {
    border-bottom: none;
}

/* 日付 */
.newspage-section .news-date {
    font-size: 13px;
    color: #777;
}

/* カテゴリ */
.newspage-section .news-cat {
    display: inline-block;
    font-size: 11px;
    color: #fff;
    background: #7fb4d8;
    padding: 4px 8px;
    margin-left: 10px;
}

/* タイトル */
.newspage-section .news-title {
    font-size: 16px;
    color: #333;
    margin-top: 12px;
}

/* タイトル2 */
.newspage-section .news-title2 {
	font-size: 26px;
	color: #333;
	margin-top: 60px;
	margin-bottom: 80px;
}

/* タイトル2 */
.newspage-section .news-text {
	font-size: 14px;
	color: #333;
	line-height: 2;
}

.newspage-section .news-photo {
    padding: 100px 0;
    box-sizing: border-box;
    position: relative;
}

.newspage-section .news-photo img {
    width: 100%;
    height: auto;
    display: block;
    position: relative;
    z-index: 1;
}



/* --------------------------------
   ページネーション
-------------------------------- */
.newspage-section .pagination {
    display: flex;
    justify-content: center;
    margin-top: 40px;
    gap: 6px;
}

.newspage-section .pagination a,
.newspage-section .pagination span {
    display: block;
    padding: 8px 14px;
    border: 1px solid #ccc;
    font-size: 14px;
    background: #fff;
    border-radius: 4px;
}

.newspage-section .pagination .current {
    background: #7fb4d8;
    color: #fff;
    border-color: #7fb4d8;
}

/* --------------------------------
   ② 右側：サイドバー
-------------------------------- */
.newspage-section .sidebar {
    width: 30%;
}

/* ブロック共通 */
.newspage-section .sidebar-box {
	margin-bottom: 60px;
}

.newspage-section .sidebar-title {
	font-size: 18px;
	color: #333;
	margin-bottom: 24px;
	border-left: 2px solid #7fb4d8;
	padding-left: 10px;
}

/* 最新記事リスト */
.newspage-section .sidebar-list li {
	margin-bottom: 18px;
	font-size: 14px;
	border-bottom: 1px solid #eee;
	padding-bottom: 12px;
}

.newspage-section .sidebar-list li:last-child {
    border-bottom: none;
}

/* ボタン */
.newspage-section .sidebar-btn {
	font-weight: 500;
	background: transparent;
	outline: none !important;
	cursor: pointer;
	transition: all 0.3s ease;
	position: relative;
	display: flex;             /* ←変更 */
	justify-content: center;   /* 横中央 */
	align-items: center;       /* 縦中央 */
	width: 200px;
	height: 60px;
	font-size: 1rem;
	text-align: center;
	color: #333;
	clear: both;
	margin-right: auto;
	margin-left: auto;
	text-decoration: none;
	background-attachment: scroll;
	background-image: url(../img/item03.png);
	background-repeat: no-repeat;
	background-position: right center;
}
.sidebar-btn2 {
	border: 1px solid #999999;
	z-index: 1;
	
}
.sidebar-btn2:after {
	position: absolute;
	content: "";
	width: 0;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
	background: #FFF;
	transition: all 0.1s ease;
	color: #333;
	font-size: 1rem;
	background-image: url(../img/item03.png);
	background-repeat: no-repeat;
	background-position: right center;
}
.sidebar-btn2:hover {
	color: #333;
	text-decoration: none;
	border: 1px solid #69C5E2;
}
.sidebar-btn2:hover:after {
	width: 100%;
	top: auto;
	bottom: 0;
	height: 100%;
	left: 0;
	right: auto;
	background-color: #8ED2E9;
}
.sidebar-btn2:active {
	top: 0px;
	right: 0px;
}

/* ------------------------------
   アーカイブ（親・子）
------------------------------ */
.newspage-section .archive-list li {
    position: relative;
    padding-left: 30px;
    margin: 12px 0;
    list-style: none;
}

/* ▼ 親カテゴリー（PNGアイコン） */
.newspage-section .archive-list li.parent::before {
	content: "";
	position: absolute;
	left: 0;
	top: 8px;
	width: 16px;
	height: 10px;
	background-image: url(../img/item12.png);
	background-size: contain;
	background-repeat: no-repeat;
}

/* ▶ 子カテゴリー（PNGアイコン） */
.newspage-section .archive-list li.child {
    padding-left: 50px; /* 30 + 36 の計算 */
}

.newspage-section .archive-list li.child::before {
    content: "";
    position: absolute;
    left: 30px;
    top: 4px;
    width: 10px;
    height: 15px;
    background-image: url(../img/item13.png);
    background-size: contain;
    background-repeat: no-repeat;
}

/* ------------------------------
   スマホ表示
------------------------------ */
@media (max-width: 768px) {
    .newspage-section .news-wrapper {
        flex-direction: column;
    }
    .newspage-section .sidebar {
		width: 88%;
		margin-right: auto;
		margin-left: auto;
    }
	.newspage-section .news-main {
		width: 88%;
		padding-top: 38px;
		padding-bottom: 38px;
		padding-right: 3%;
		padding-left: 3%;
		margin-right: auto;
		margin-left: auto;
	}
	/* タイトル2 */
.newspage-section .news-title2 {
	font-size: 18px;
	color: #333;
	margin-top: 30px;
	margin-bottom: 30px;
}
.newspage-section .news-photo {
    padding: 40px 0;
}

}
.backpic7 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht17.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 11vw;
	padding-right: 0px;
	padding-bottom: 6vw;
	padding-left: 0px;
}
@media (max-width: 768px) {
.backpic7 {
	margin-right: auto;
	margin-left: auto;
	z-index: -1000;
	text-align: center;
	background-attachment: scroll;
	background-image: url(../img/ht17sp.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 15vw;
	padding-right: 0px;
	padding-bottom: 14vw;
	padding-left: 0px;
	margin-top: 100px;
}
}