@charset "utf-8";

@import url(https://fonts.googleapis.com/earlyaccess/mplus1p.css);
@import url(https://fonts.googleapis.com/earlyaccess/roundedmplus1c.css);
@import url(https://fonts.googleapis.com/earlyaccess/hannari.css);
@import url(https://fonts.googleapis.com/earlyaccess/kokoro.css);
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);
@import url(https://fonts.googleapis.com/earlyaccess/sawarabigothic.css);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url('https://fonts.googleapis.com/css?family=EB+Garamond:400i|Playfair+Display:400i');


.m-font {
font-family: 'Sawarabi Mincho';
}
.m-font2 {
font-family: 'Hannari';
}
.m-font3 {
font-family: 'Kokoro';
}

.g-font {
font-family: 'Mplus 1p';
}
.g-font2 {
font-family: 'Sawarabi Gothic';
}
.g-font3 {
    font-family: 'Noto Sans Japanese';
}
.ma-font {
font-family: 'Rounded Mplus 1c';
}

.e-font {
	font-family: 'Playfair Display', serif;
　　　　font-family: 'EB Garamond', serif;
}

.thick1 {
	font-weight: 500;
}

/*---------------------
  ALLここから
---------------------*/
.caption1 {
	font-size: 2.1rem;          /* メインタイトルの大きさ */
	font-weight: 700;
	text-align: center;
	margin-bottom: 30px;
	position: relative;
	font-style: italic;
	color: #FFF;
}
.caption2 {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #FFF;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}

/*---------------------
  新着ここから
---------------------*/

.news-title {
	font-size: 3rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	margin-bottom: 30px;
	position: relative;
	font-style: italic;
	color: #000;
}

.news-title .news-subtitle {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #000;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}



/*---------------------
  TOPコンテンツここから
---------------------*/


.main-title1 {
	font-size: 3rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	margin-bottom: 70px;
	position: relative;
	font-style: italic;
	color: #CF000E;
}
.main-title2-ue {
	font-size: 1.75rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	position: relative;
	font-style: italic;
	color: #000;
}
.main-title2 {
	font-size: 3rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	margin-bottom: 126px;
	position: relative;
	font-style: italic;
	color: #000;
}

.main-title2 .main-title2-subtitle {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #000;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}


.main-title3 {
	font-size: 4.175rem;          /* メインタイトルの大きさ */
	font-weight: 800;
	text-align: center;
	margin-bottom: 170px;
	position: relative;
	font-style: italic;
	color: #FFF;
}
.main-title3 span {
	font-size: 3.25rem; /* 小さくする部分 */
	padding-left: 6px;
}




/* 全体（数字＋文字） */
.title-block {
	display: flex;
	align-items: center;   /* 縦方向の中央揃え */
	gap: 0px;             /* 左右の余白 */
	margin-bottom: 28px;
}

/* 数字背景部分 */
.title-number {
	width: 86px;
	height: 90px; /* ← 背景画像を左端に配置 */
	background-size: 60px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember1.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number2 {
	width: 86px;
	height: 90px; /* ← 背景画像を左端に配置 */
	background-size: 60px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember2.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number3 {
	width: 86px;
	height: 90px; /* ← 背景画像を左端に配置 */
	background-size: 60px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember3.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number4 {
	width: 86px;
	height: 90px; /* ← 背景画像を左端に配置 */
	background-size: 60px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember4.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number5 {
	width: 86px;
	height: 90px; /* ← 背景画像を左端に配置 */
	background-size: 60px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember5.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number6 {
	width: 86px;
	height: 90px; /* ← 背景画像を左端に配置 */
	background-size: 60px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember6.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}

/* 見出し文字 */
.title-text {
	font-size: 2.4rem;
	font-weight: 900;
	color: #CF000E;
	line-height: 1.2;
	margin: 0;
	font-style: italic;
}

.title-text span.punc {
  margin-right: -0.5em;
}

.title-text span.punc2 {
	font-size: 4.175rem; /* 小さくする部分 */
	padding-left: 4px;
	padding-right: 10px;
}
.title-text span.punc3 {
	font-size: 0.9rem;
	margin-left: -0.5em;
}
.title-text span.punc4 {
	font-size: 2.8rem;
	padding-right: 10px;
}


.main-title4 {
	font-size: 1.75rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	margin-bottom: 10px;
	position: relative;
	color: #000000;
}
.main-title5 {
	font-size: 1.75rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	margin-bottom: 30px;
	position: relative;
	font-style: italic;
	color: #CF000E;
	text-align: left;
}
.main-title6 {
  font-size: 2.5rem;
  font-weight: 900;
  margin-bottom: 100px;
  position: relative;
  font-style: italic;
  color: #CF000E;
  text-align: center;
}

.main-title6::before {
	content: "";
	position: absolute;
	top: -59px; /* 39pxの高さ＋30pxの余白 */
	left: 50%;
	transform: translateX(-50%);
	width: 57px;
	height: 39px;
	background-size: contain;
	background-image: url(../img/item7.webp);
	background-repeat: no-repeat;
	background-position: center center;
}
.main-title7 {
  font-size: 2.5rem;
  font-weight: 900;
  margin-bottom: 100px;
  position: relative;
  font-style: italic;
  color: #CF000E;
  text-align: center;
}
.main-title8 {
	font-size: 2.5rem;
	font-weight: 900;
	margin-bottom: 100px;
	position: relative;
	font-style: italic;
	color: #FFFFFF;
	text-align: center;
}

.main-title9 {
	font-size: 1.75rem;
	font-weight: 900;
	margin-bottom: 120px;
	position: relative;
	font-style: italic;
	color: #FFFFFF;
	text-align: center;
	background-color: #CF000E;
	padding-top: 26px;
	padding-bottom: 26px;
}
.main-title10 {
	font-size: 1.75rem;
	font-weight: 900;
	margin-bottom: 37px;
	position: relative;
	font-style: italic;
	color: #CF000E;
	text-align: center;
	clear: both;
}
.main-title11 {
  font-size: 2.5rem;
  font-weight: 900;
  position: relative;
  color: #000;
}

.main-title12 {
	font-size: 2.5rem;
	font-weight: 900;
	margin-bottom: 45px;
	position: relative;
	font-style: italic;
	color: #CF000E;
	text-align: center;
}
.main-title13 {
	font-size: 1.5rem;
	font-weight: 900;
	margin-bottom: 20px;
	position: relative;
	font-style: italic;
	color: #000;
	text-align: center;
	clear: both;
}
.main-title14 {
	font-size: 1.75rem;
	font-weight: 900;
	margin-bottom: 37px;
	position: relative;
	font-style: italic;
	color: #CF000E;
	text-align: center;
	clear: both;
	margin-top: 90px;
}
.main-title15 {
	font-size: 1.75rem;
	line-height: 2;
	font-weight: 900;
	margin-bottom: 120px;
	position: relative;
	font-style: italic;
	color: #FFFFFF;
	text-align: center;
	background-color: #CF000E;
	padding-top: 60px;
	padding-bottom: 60px;
}
.main-title16 {
	font-size: 2.5rem;
	font-weight: 900;
	margin-bottom: 50px;
	position: relative;
	font-style: italic;
	color: #CF000E;
}

.main-title117 {
	font-size: 1.75rem;
	font-weight: 900;
	position: relative;
	color: #000;
	margin-bottom: 18px;
}


.main-title18 {
	font-size: 3rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	position: relative;
	font-style: italic;
	color: #FFF;
}

.main-title18 .main-title18-subtitle {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #FFF;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}



.main-title19 {
	font-size: 3rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	margin-bottom: 126px;
	position: relative;
	font-style: italic;
	color: #000;
}

.main-title19 .main-title2-subtitle {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #000;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}

.main-title19::before {
	content: "";
	position: absolute;
	top: -59px; /* 39pxの高さ＋30pxの余白 */
	left: 50%;
	transform: translateX(-50%);
	width: 44px;
	height: 37px;
	background-size: contain;
	background-image: url(../img/item8.webp);
	background-repeat: no-repeat;
	background-position: center center;
}
.main-title20 {
	font-size: 1.7rem;
	font-weight: 700;
	position: relative;
	color: #FFF;
	margin-bottom: 12px;
}
.main-title21 {
	font-size: 1.8rem;
	font-weight: 700;
	position: relative;
	color: #000;
	margin-bottom: 18px;
}

.main-title22 {
	font-size: 1.75rem;
	font-weight: 900;
	margin-bottom: 37px;
	position: relative;
	font-style: italic;
	color: #77C442;
	text-align: center;
	clear: both;
}

/*---------------------
  テキスト
---------------------*/


.main-text1 {
	font-size: 1.25rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000;
	padding-left: 90px;
}
.main-text1 span.highlight {
	color: #CF000E;                       /* 赤文字 */
	font-weight: 900;                     /* 太字 */
	text-decoration: underline;
	text-decoration-color: #CF000E;      /* 下線も赤 */
	text-decoration-thickness: 1px;       /* 下線の太さ */
	text-underline-offset: 6px;           /* 文字から下線までの距離 */
	padding-left: 2px;
}
.main-text2 {
	font-size: 1rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000;
}
.main-text3 {
	font-size: 1.3rem;
	line-height: 1.8;
	font-weight: 700;
	color: #000;
	letter-spacing: 0.02em;
}
.main-text4 {
	font-size: 1rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000;
}
.main-text5 {
	font-size: 1.36rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000;
	letter-spacing: 0.05em;
}
.main-text6 {
	font-size: 1.25rem;
	line-height: 1.9;
	font-weight: 400;
	color: #000;
}
.main-text7 {
	font-size: 1.25rem;
	line-height: 1.7;
	font-weight: 400;
	color: #000;
}
.main-text8 {
	font-size: 1.15rem;
	line-height: 1.6;
	font-weight: 400;
	color: #000;
	padding-right: 90px;
	padding-left: 80px;
	margin-bottom: 115px;
}

.main-text9 {
  display: inline-block;  /* これを追加 */
  font-size: 1.25rem;
  font-weight: 900;
  color: #FFF;
  padding: 8px 23px;
  margin-bottom: 30px;
  background-color: #CF000E;
  font-style: italic;
}
.main-text10 {
	font-size: 1.15rem;
	line-height: 1.6;
	font-weight: 400;
	color: #000;
	margin-bottom: 25px;
	font-style: italic;
}
.main-text11 {
	font-size: 1.75rem;
	line-height: 1.8;
	font-weight: 900;
	color: #CF000E;
	margin-bottom: 60px;
}
.main-text13 {
	font-size: 1.25rem;
	line-height: 1.8;
	font-weight: 900;
	color: #000000;
	text-align: center;
}
.main-text14 {
	font-size: 1.15rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000000;
	margin-top: -30px;
	padding-bottom: 30px;
}
.main-text15 {
	font-size: 1.15rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000000;
	padding-bottom: 30px;
	letter-spacing: 0em;
}

.main-text16 {
	font-size: 1rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000000;
	padding-bottom: 30px;
}
.main-text17 {
	font-size: 1.25rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000;
	text-align: center;
	margin-bottom: 70px;
	margin-top: -80px;
}
.main-text18 {
	font-size: 1.125rem;
	line-height: 1.6;
	font-weight: 400;
	color: #FFFFFF;
	padding-bottom: 30px;
}
.main-text19 {
	font-size: 1.125rem;
	line-height: 1.6;
	font-weight: 400;
	color: #000000;
	padding-bottom: 30px;
}
.main-text20 {
	font-size: 1.15rem;
	line-height: 1.6;
	font-weight: 400;
	color: #000;
	padding-right: 90px;
	padding-left: 80px;
	margin-bottom: 30px;
}
.main-text20 span.mini {
     font-size: 0.95rem;  
                  
}

/*---------------------
  ALLここから
---------------------*/
.heading-wrapper {
	display: flex;
	flex-direction: column; /* 上下に並べる */
	gap: 2rem;              /* ブロック間の余白 */
}

/* 各教育目標の背景ブロック */
.heading-bg {
	position: relative;
	background-image: url(../img/item10.webp);
	background-size: 24px 80px;    /* 幅320px 高さ192pxに指定可能 */
	background-repeat: no-repeat;
	background-position: left center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #333;
	padding-left: 67px;               /* 左端から67px */
	height: 80px;
		margin-bottom: 58px;
}

.heading-bg2 {
	position: relative;
	background-image: url(../img/item11.webp);
	background-size: auto 80px;    /* 幅320px 高さ192pxに指定可能 */
	background-repeat: no-repeat;
	background-position: left center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #333;
	padding-left: 67px;               /* 左端から67px */
	height: 80px;
		margin-bottom: 58px;
}

.heading-bg3 {
	position: relative;
	background-image: url(../img/12.webp);
	background-size: auto 80px;    /* 幅320px 高さ192pxに指定可能 */
	background-repeat: no-repeat;
	background-position: left center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #333;
	padding-left: 67px;               /* 左端から67px */
	height: 80px;
	margin-bottom: 58px;
}

/* タイトル */
.heading-title {
	font-size: 1rem; /* 下に29pxの間隔 */
	letter-spacing: 0.1em;
	font-weight: bold;
	margin-bottom: 12px;
}

/* 文章 */
.heading-text {
	font-size: 2rem;         /* 32px */
	letter-spacing: 0.1em;
	font-weight: 400;
}


.icon1 {
	display: inline-block;
	width: 24px;
	height: 29px;
	background-image: url(../img/i01.webp);
	background-repeat: no-repeat;
	padding-right: 16px;
}
.icon2 {
	display: inline-block;
	width: 24px;
	height: 29px;
	background-image: url(../img/i02.webp);
	background-repeat: no-repeat;
	padding-right: 20px;
}
.icon3 {
	display: inline-block;
	width: 24px;
	height: 29px;
	background-image: url(../img/i03.webp);
	background-repeat: no-repeat;
	padding-right: 20px;
}



.foot-text1 {
	font-size: 0.92rem;
	font-weight: 400;
	color: #D4D4D4;
	border: 1px solid #D4D4D4;  /* 枠線 */
	text-align: center;          /* テキスト中央 */
	display: inline-block;           /* 内側の余白 */
	position: relative;
	left: 50%;
	transform: translateX(-50%); /* 要素自体を中央に移動 */
	margin-bottom: 30px;
	padding-top: 2px;
	padding-right: 80px;
	padding-bottom: 2px;
	padding-left: 80px;
}

.foot-text2 {
	font-size: 1.12rem;
	font-weight: 400;
	color: #D4D4D4;
	text-align: center;
	margin-bottom: 40px;
}
.foot-text3 {
	font-size: 1.5rem;
	font-weight: 700;
	color: #FFF;
	text-align: center;
	margin-bottom: 10px;
}

.foot-text3 span.mini1 {
  font-size: 1.1rem;
  font-weight: 400;
}

.foot-text4 {
	font-size: 0.92rem;
	font-weight: 400;
	color: #D4D4D4;
	text-align: center;
	margin-bottom: 60px;
}


/* 文字リンク */
.footer-link {
	color: #FFF;
	text-decoration: none;
	font-size: 0.9rem;
	line-height: 1.6;
}

.footer-link:hover {
  text-decoration: underline; /* 必要に応じて */
}

.tel-p{
	color: #FFF;
	font-size: 2.5rem; /* 28px相当 */
	font-weight: 700;
	letter-spacing: -0.02em;
	text-align: center;
}
.tel-p a:link {
	color: #FFF;
	text-decoration: none;
}
.tel-p a:visited {
	color: #FFF;
	text-decoration: none;
}

.tel-p a:hover {
	text-decoration: none;
}
.sen-1 {
	padding-right: 10px;
	background-attachment: scroll;
	background-image: url(../img/item07.webp);
	background-repeat: no-repeat;
	background-position: left center;
	margin-bottom: 5vw;
	overflow: hidden;
}


.st-1 {
	color: #8DA725;
	font-weight: 500;
	font-size: 130%;
}
.st-2 {
	color: #000000;
	font-weight: 600;
	font-size: 130%;
}




.copy-p {
	color: #D8D8D8;
	text-align: center;
	font-size: 0.7rem; /* 12px相当 */
	font-weight: 400;
}


.underline {
  border-bottom: 2px solid #2a9d8f; /* 色と太さを調整 */
  padding-bottom: 2px;
}
.wavy-underline {
  text-decoration: underline wavy #FF6666; /* 色は自由に変更可能 */
  text-underline-offset: 3px; /* テキストからの距離調整 */
}
.wavy-underline2 {
  text-decoration: underline wavy #B2D235; /* 色は自由に変更可能 */
  text-underline-offset: 3px; /* テキストからの距離調整 */
}

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




}
/* iPhone6 Plus
--------------------------------------------------------------------------------------------------*/
@media (max-width: 768px) {

.caption1 {
	font-size: 2rem;          /* メインタイトルの大きさ */
	font-weight: 700;
	text-align: center;
	margin-bottom: 30px;
	position: relative;
	font-style: italic;
	color: #FFF;
}
.caption2 {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #FFF;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}

/*---------------------
  新着ここから
---------------------*/

.news-title {
	font-size: 2.1rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	margin-bottom: 15px;
	position: relative;
	font-style: italic;
	color: #000;
}

.news-title .news-subtitle {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #000;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}



/*---------------------
  TOPコンテンツここから
---------------------*/


.main-title1 {
	font-size: 1.65rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	margin-bottom: 40px;
	position: relative;
	font-style: italic;
	color: #CF000E;
}
.main-title2-ue {
	font-size: 1.2rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	position: relative;
	font-style: italic;
	color: #000;
	margin-top: 30px;
}
.main-title2 {
	font-size: 2.1rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	margin-bottom: 40px;
	position: relative;
	font-style: italic;
	color: #000;
}

.main-title2 .main-title2-subtitle {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #000;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}


.main-title3 {
	font-size: 1.4rem;          /* メインタイトルの大きさ */
	font-weight: 800;
	text-align: center;
	margin-bottom: 140px;
	position: relative;
	font-style: italic;
	color: #FFF;
}
.main-title3 span {
	font-size: 1.4rem; /* 小さくする部分 */
	padding-left: 0px;
}




/* 全体（数字＋文字） */
.title-block {
	display: flex;
	align-items: center;   /* 縦方向の中央揃え */
	gap: 0px;             /* 左右の余白 */
	margin-bottom: 28px;
}

/* 数字背景部分 */
.title-number {
	width: 64px;
	height: 80px; /* ← 背景画像を左端に配置 */
	background-size: 50px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember1.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number2 {
	width: 64px;
	height: 80px; /* ← 背景画像を左端に配置 */
	background-size: 50px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember2.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number3 {
	width: 64px;
	height: 80px; /* ← 背景画像を左端に配置 */
	background-size: 50px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember3.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number4 {
	width: 64px;
	height: 80px; /* ← 背景画像を左端に配置 */
	background-size: 50px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember4.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number5 {
	width: 64px;
	height: 80px; /* ← 背景画像を左端に配置 */
	background-size: 50px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember5.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}
.title-number6 {
	width: 64px;
	height: 80px; /* ← 背景画像を左端に配置 */
	background-size: 50px auto;
	flex-shrink: 0; /* サイズを固定 */
	background-image: url(../img/nember6.webp);
	background-repeat: no-repeat;
	background-position: 0px center;
}

/* 見出し文字 */
.title-text {
	font-size: 1.5rem;
	font-weight: 900;
	color: #CF000E;
	line-height: 1.2;
	margin: 0;
	font-style: italic;
}

.title-text span.punc {
  margin-right: -0.5em;
}

.title-text span.punc2 {
	font-size: 2.1rem; /* 小さくする部分 */
	padding-left: 4px;
	padding-right: 10px;
}
.title-text span.punc3 {
	font-size: 0.9rem;
	margin-left: -0.5em;
}
.title-text span.punc4 {
	font-size: 2rem;
	padding-right: 2px;
}


.main-title4 {
	font-size: 1.5rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	margin-bottom: 8px;
	position: relative;
	color: #000000;
}
.main-title5 {
	font-size: 1.4rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	margin-bottom: 15px;
	position: relative;
	font-style: italic;
	color: #CF000E;
	text-align: left;
}
.main-title6 {
  font-size: 2.1rem;
  font-weight: 900;
  margin-bottom: 60px;
  position: relative;
  font-style: italic;
  color: #CF000E;
  text-align: center;
}

.main-title6::before {
	content: "";
	position: absolute;
	top: -59px; /* 39pxの高さ＋30pxの余白 */
	left: 50%;
	transform: translateX(-50%);
	width: 57px;
	height: 39px;
	background-size: contain;
	background-image: url(../img/item7.webp);
	background-repeat: no-repeat;
	background-position: center center;
}
.main-title7 {
  font-size: 2.1rem;
  font-weight: 900;
  margin-bottom: 60px;
  position: relative;
  font-style: italic;
  color: #CF000E;
  text-align: center;
}
.main-title8 {
	font-size: 2.1rem;
	font-weight: 900;
	margin-bottom: 60px;
	position: relative;
	font-style: italic;
	color: #FFFFFF;
	text-align: center;
}

.main-title9 {
	font-size: 1.5rem;
	font-weight: 900;
	margin-bottom: 50px;
	position: relative;
	font-style: italic;
	color: #FFFFFF;
	text-align: center;
	background-color: #CF000E;
	padding-top: 26px;
	padding-bottom: 26px;
}
.main-title10 {
	font-size: 1.25rem;
	font-weight: 900;
	margin-bottom: 25px;
	position: relative;
	font-style: italic;
	color: #CF000E;
	text-align: center;
	clear: both;
}
.main-title11 {
  font-size: 1.75rem;
  font-weight: 900;
  position: relative;
  color: #000;
}

.main-title12 {
	font-size: 2.1rem;
	font-weight: 900;
	margin-bottom: 25px;
	position: relative;
	font-style: italic;
	color: #CF000E;
	text-align: center;
}
.main-title13 {
	font-size: 1.5rem;
	font-weight: 900;
	margin-bottom: 20px;
	position: relative;
	font-style: italic;
	color: #000;
	text-align: center;
	clear: both;
}
.main-title14 {
	font-size: 1.75rem;
	font-weight: 900;
	margin-bottom: 37px;
	position: relative;
	font-style: italic;
	color: #CF000E;
	text-align: center;
	clear: both;
	margin-top: 90px;
}
.main-title15 {
	font-size: 1.5rem;
	line-height: 1.7;
	font-weight: 900;
	margin-bottom: 80px;
	position: relative;
	font-style: italic;
	color: #FFFFFF;
	text-align: center;
	background-color: #CF000E;
	padding-top: 40px;
	padding-bottom: 40px;
}
.main-title16 {
	font-size: 1.75rem;
	font-weight: 900;
	margin-bottom: 30px;
	position: relative;
	font-style: italic;
	color: #CF000E;
}

.main-title117 {
	font-size: 1.51rem;
	font-weight: 900;
	position: relative;
	color: #000;
	margin-bottom: 12px;
	text-align: center;
}


.main-title18 {
	font-size: 2.1rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	position: relative;
	font-style: italic;
	color: #FFF;
}

.main-title18 .main-title18-subtitle {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #FFF;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}



.main-title19 {
	font-size: 2.1rem;          /* メインタイトルの大きさ */
	font-weight: 900;
	text-align: center;
	margin-bottom: 60px;
	position: relative;
	font-style: italic;
	color: #000;
}

.main-title19 .main-title2-subtitle {
	display: block;            /* 改行して下に表示 */
	font-size: 0.9rem;         /* 小さい文字 */
	color: #000;               /* サブタイトルの色 */
	margin-top: 4px;           /* メインタイトルとの間隔 */
	letter-spacing: 0.5px;       /* お好みで間隔調整 */
	font-weight: 300;
}

.main-title19::before {
	content: "";
	position: absolute;
	top: -40px; /* 39pxの高さ＋30pxの余白 */
	left: 50%;
	transform: translateX(-50%);
	width: 44px;
	height: 37px;
	background-size: contain;
	background-image: url(../img/item8.webp);
	background-repeat: no-repeat;
	background-position: center center;
}
.main-title20 {
	font-size: 1.5rem;
	font-weight: 700;
	position: relative;
	color: #FFF;
	margin-bottom: 10px;
	margin-right: auto;
	margin-left: auto;
}
.main-title21 {
	font-size: 1.5rem;
	font-weight: 700;
	position: relative;
	color: #000;
	margin-bottom: 12px;
}
.main-title22 {
	font-size: 1.25rem;
	font-weight: 900;
	margin-bottom: 25px;
	position: relative;
	font-style: italic;
	color: #77C442;
	text-align: center;
	clear: both;
}

/*---------------------
  テキスト
---------------------*/


.main-text1 {
	font-size: 1.12rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000;
	padding-left: 0px;
}
.main-text1 span.highlight {
	color: #CF000E;                       /* 赤文字 */
	font-weight: 900;                     /* 太字 */
	text-decoration: underline;
	text-decoration-color: #CF000E;      /* 下線も赤 */
	text-decoration-thickness: 1px;       /* 下線の太さ */
	text-underline-offset: 6px;           /* 文字から下線までの距離 */
	padding-left: 2px;
}
.main-text2 {
	font-size: 1rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000;
}
.main-text3 {
	font-size: 1.2rem;
	line-height: 1.8;
	font-weight: 700;
	color: #000;
	letter-spacing: 0.02em;
}
.main-text4 {
	font-size: 1rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000;
}
.main-text5 {
	font-size: 1.2rem;
	line-height: 1.7;
	font-weight: 400;
	color: #000;
	letter-spacing: 0.05em;
}
.main-text6 {
	font-size: 1.15rem;
	line-height: 1.6;
	font-weight: 400;
	color: #000;
}
.main-text7 {
	font-size: 1.15rem;
	line-height: 1.7;
	font-weight: 400;
	color: #000;
}
.main-text8 {
	font-size: 1.15rem;
	line-height: 1.6;
	font-weight: 400;
	color: #000;
	padding-right: 15px;
	padding-left: 15px;
	margin-bottom: 80px;
}

.main-text9 {
  display: inline-block;  /* これを追加 */
  font-size: 1.25rem;
  font-weight: 900;
  color: #FFF;
  padding: 8px 23px;
  margin-bottom: 30px;
  background-color: #CF000E;
  font-style: italic;
}
.main-text10 {
	font-size: 1.15rem;
	line-height: 1.6;
	font-weight: 400;
	color: #000;
	margin-bottom: 25px;
	font-style: italic;
}
.main-text11 {
	font-size: 1.5rem;
	line-height: 1.8;
	font-weight: 900;
	color: #CF000E;
	margin-bottom: 50px;
}
.main-text13 {
	font-size: 1.15rem;
	line-height: 1.7;
	font-weight: 900;
	color: #000000;
	text-align: center;
}
.main-text14 {
	font-size: 1.15rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000000;
	margin-top: -30px;
	padding-bottom: 30px;
}
.main-text15 {
	font-size: 1.15rem;
	line-height: 1.8;
	font-weight: 400;
	color: #000000;
	padding-bottom: 15px;
	letter-spacing: 0em;
}

.main-text16 {
	font-size: 1.15rem;
	line-height: 1.7;
	font-weight: 400;
	color: #000000;
	padding-bottom: 30px;
	padding-right: 20px;
	padding-left: 20px;
}
.main-text17 {
	font-size: 1.15rem;
	line-height: 1.7;
	font-weight: 400;
	color: #000;
	text-align: center;
	margin-bottom: 40px;
	margin-top: 0px;
	padding-right: 20px;
	padding-left: 20px;
}
.main-text18 {
	font-size: 1.125rem;
	line-height: 1.6;
	font-weight: 400;
	color: #FFFFFF;
	padding-bottom: 0px;
}
.main-text19 {
	font-size: 1.125rem;
	line-height: 1.6;
	font-weight: 400;
	color: #000000;
	padding-bottom: 30px;
}
.main-text20 {
	font-size: 1.15rem;
	line-height: 1.6;
	font-weight: 400;
	color: #000;
	padding-right: 15px;
	padding-left: 15px;
	margin-bottom: 30px;
}
.main-text20 span.mini {
	font-size: 0.95rem;
}

.foot-text1 {
	font-size: 0.92rem;
	font-weight: 400;
	color: #D4D4D4;
	border: 1px solid #D4D4D4;  /* 枠線 */
	text-align: center;          /* テキスト中央 */
	display: inline-block;           /* 内側の余白 */
	position: relative;
	left: 50%;
	transform: translateX(-50%); /* 要素自体を中央に移動 */
	margin-bottom: 30px;
	padding-top: 2px;
	padding-right: 60px;
	padding-bottom: 2px;
	padding-left: 60px;
}

.foot-text2 {
	font-size: 1.12rem;
	font-weight: 400;
	color: #D4D4D4;
	text-align: center;
	margin-bottom: 40px;
}
.foot-text3 {
	font-size: 1.25rem;
	font-weight: 700;
	color: #FFF;
	text-align: center;
	margin-bottom: 10px;
}

.foot-text3 span.mini1 {
  font-size: 1rem;
  font-weight: 500;
}

.foot-text4 {
	font-size: 0.92rem;
	font-weight: 400;
	color: #D4D4D4;
	text-align: center;
	margin-bottom: 60px;
}


/* 文字リンク */
.footer-link {
	color: #FFF;
	text-decoration: none;
	font-size: 0.9rem;
	line-height: 1.6;
}

.footer-link:hover {
  text-decoration: underline; /* 必要に応じて */
}

.tel-p{
	color: #FFF;
	font-size: 2rem; /* 28px相当 */
	font-weight: 700;
	letter-spacing: -0.02em;
	text-align: center;
}
.tel-p a:link {
	color: #FFF;
	text-decoration: none;
}
.tel-p a:visited {
	color: #FFF;
	text-decoration: none;
}

.tel-p a:hover {
	text-decoration: none;
}
}
