@charset "UTF-8";
/*
Theme Name: tachibana-hs
Author: kdf
Description: 京都橘中学校-高等学校
Version:1.5
License: GNU General Public License v2 or later
License URI: LICENSE
*/


body {
font-family: "Noto Sans JP", "Helvetica Neue", Arial, sans-serif;
font-optical-sizing: auto;
font-style: normal;
font-size: 1rem;
-webkit-text-size-adjust: 100%;
-webkit-font-smoothing: antialiased;	
font-weight: 400;
line-height: 1.75em;
background-color: #ffffff;
color: #333333;
/*background-color: inherit;*/
font-feature-settings: "palt";
letter-spacing: 0.08em;
}

body,html{padding: 0 ;margin: 0;}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
}

*{
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  body {
    /* 文字サイズの自動拡大を防止（iPhone横向き対策） */
    -webkit-text-size-adjust: 100%; 
    line-height: 1.8;
	font-feature-settings: "palt";
	font-size: 0.95rem;  
  }
}

button, input, label, select, textarea{
font-family: inherit;
font-size: 1rem;
}
ul{padding: 0;margin: 0}
ul li{list-style:none}
a{color: inherit; text-decoration: none;}

a{
transition: .25s ease;
-webkit-transition: .25s ease;
-ms-transition: .25s ease;}
a:hover{opacity: .7;}

img{max-width: 100%;height: auto;}
a img{
transition: .6s ease;
-webkit-transition: .6s ease;
-ms-transition: .6s ease;}
/*a img:hover{opacity: .7;}*/

.img-sukima {max-width: 100%; vertical-align: bottom;}

/*-----------レスポンシブ切り替え-----------*/

.sp{display: none!important;}
.ipSp{display: none!important;}

@media only screen and (max-width:880px){
.ip{display: none!important;}
.ipSp{display: inherit!important;}
}
@media only screen and (max-width:767px){
.ip02{display: none!important;}
.ipSp02{display: inherit!important;}	
}

@media only screen and (max-width:520px){
.sp{display: inherit!important;}
.pc{display: none!important;}
}
.visually-hidden{display: none;}

/*-----------flexbox-----------*/
.d-flex{
display: flex;
flex-wrap: wrap;	
justify-content: space-between;
}

.d-flexB{
display: flex;
flex-wrap: wrap;
}

.d-flex-around{justify-content: space-around;}
.d-flex-start{justify-content: flex-start;}
.d-flex-end{justify-content: flex-end;}
.d-flex-center{justify-content: center;}

.d-flex-alignC{align-items: center;}
.d-flex-alignC2 {align-self: center;} 

.col2,.col2B{width: 47%; margin-bottom: 40px;}
.col4{width: 23%; margin-bottom: 30px;}

@media only screen and (max-width:880px){
.col2{width: 100%;}
}

@media only screen and (max-width:767px){
.col2B{width: 100%; margin-bottom: 20px;}	
.col2{margin-bottom: 20px;}
.col2Sp_mb-7{margin-bottom: 7px;}	
.col4{width: 48%;}	
}


/*-----------Utility-----------*/
/*テキスト*/
.mincho{
font-family: "游明朝","Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 300;
line-height: 1.35em; 	
}
.marcellus-regular {
  font-family: "Marcellus", serif;
  font-weight: 400;
  font-style: normal;
}

h1{font-size: 1.75rem; font-weight: 300}
h2 {font-size: 1.5rem; font-weight: 600}
h3 {font-size: 1.25rem}
h4 {font-size: 1.125rem}
h5 {font-size: 1rem}
h6 {font-size: 0.875rem}

@media only screen and (max-width:520px){
h1 {font-size: 1.25rem}
h2 {font-size: 1.125rem}
h3 {font-size: 1rem}
h4 {font-size: 1rem}
}

.u-f11{font-size: 0.68rem}
.u-f12{font-size: 0.75rem}
.u-f14{font-size: 0.87rem}
.u-f18{font-size: 1.125rem}
.u-f20{font-size: 1.25rem}
.u-f22{font-size: 1.375rem}
.u-f24{font-size: 1.5rem}
.u-f26{font-size: 1.63rem}
.u-f28{font-size: 1.75rem}
.u-f30{font-size: 1.8rem}
.u-f32{font-size: 2rem}

@media only screen and (max-width:767px){
.u-f18{font-size: 1rem}
.u-f20{font-size: 1.063rem}
.u-f22{font-size: 1.125rem}
.u-f24{font-size: 1.25rem}
.u-f26{font-size: 1.4rem}	
.u-f28{font-size: 1.5rem}
.u-f30{font-size: 1.63rem}	
.u-f32{font-size: 1.75rem}	
}

.u-Tcenter {text-align: center;}
.u-Tright{text-align: right;}
.u-Tspace{letter-spacing: 0;}
.u-Tjustify {
text-align: justify;
text-justify: inter-character;
}

.u-bold{font-weight:700;}
.u-middle02{font-weight:600;}
.u-middle{font-weight:500;}
.u-normal{font-weight: normal!important;}

/* color */
.u-red{color: #861c3c}
.u-blue{color:#00437c}
.u-purple{color: #583264;}

/* margin */
.mb-05{margin-bottom: 5px;}
.mb-1{margin-bottom: 10px;}
.mb-2{margin-bottom: 20px;}
.mb-3{margin-bottom: 30px;}
.mb-4{margin-bottom: 40px;}
.mb-5{margin-bottom: 50px;}
.mb-6{margin-bottom: 60px;}
.mb-7{margin-bottom: 70px;}
.mb-8{margin-bottom: 80px;}
.mb-9{margin-bottom: 90px;}
.mb-10{margin-bottom: 100px;}
.mt-30{margin-top: 30px;}

@media only screen and (max-width:520px){
.mb-2{margin-bottom: 10px;}
.mb-3{margin-bottom: 15px;}	
.mb-4,.mb-5{margin-bottom: 20px;}
.mb-6{margin-bottom: 30px;}
.mb-7{margin-bottom: 40px;}
.mb-8{margin-bottom: 45px;}
.mb-9{margin-bottom: 50px;}
.mb-10{margin-bottom: 50px;}
}


/* ------------------------------------------------
共通箇所
------------------------------------------------
*/ 

.ly-container{
max-width: 1240px;
padding: 0 20px;
margin: 0 auto;
}
.ly-containerS{
max-width: 1000px;
padding: 0 20px;	
margin: 0 auto;	
}
.ly-containerSS{
max-width: 900px;
margin: 0 auto;	
}
.ly-inner {padding-top: 10px;}
	
/*Blog*/
.ly-main{width: 77%;}
.ly-side{width: 18%;}


/* Tablet*/
@media only screen and (max-width:1025px){
.ly-main,.ly-side {width: 100%;}
.ly-main {margin-bottom: 50px;}	
}

@media only screen and (max-width:880px){
.ly-container,.ly-containerS {padding: 0px 40px;}
}

/* SP*/
@media only screen and (max-width:520px){
.ly-container,.ly-containerS {padding: 0px 20px;}
.ly-inner {padding-top: 10px;}	
}


/* ------------------------------------------------
header 
------------------------------------------------
*/

header {
position: fixed;
height: 95px;	
width: 100%; 
top: 0; 
z-index: 1000;
background: rgba(255, 255, 255, 0.95); 
border-bottom: 1px solid #eee;
padding: 0 15px;	
}

.header-logo {width: 20%; align-self: center;}

.header-top {
display: flex;
align-items: center;
height: 47px;
font-size: 0.8rem;
border-bottom: 1px solid #333;
column-gap: 20px;
font-weight: 500;	
}

.header-top span {cursor: pointer;}

.header-topMain {
/*display: flex;	
align-items: center;
justify-content: flex-end;*/
height: 48px;
padding: 0.7em 0;	
}

.nav-pc {
display: flex; 
gap:80px;
font-size: 0.9375em;	
/*justify-content: flex-end;*/	
}
.nav-pc li {cursor: pointer; }

.header-iconAccess {
padding-left: 18px;
background-image: url(images/common/icon_access.svg);
background-repeat: no-repeat;
background-position: 0 50%;	
background-size: 13px;
}
.header-iconMail {
padding-left: 22px;
background-image: url(images/common/icon_mail.svg);
background-repeat: no-repeat;
background-position: 0 50%;	
background-size: 19px;
}
.header-iconData {
padding-left: 18px;
background-image: url(images/common/icon_data.svg);
background-repeat: no-repeat;
background-position: 0 50%;	
background-size: 14px;
}

span.header-student {
background-color: #583264;
height: 100%;
padding: 10px 22px;
margin-left: 0;
}

span.header-student a {color: #fff;}

@media only screen and (max-width:1200px){
.header-logo {width: 30%;}
.header-top {column-gap: 20px;}	
}
@media only screen and (max-width:1025px){
.header-top span {margin-left: 20px; }
.header-top span:first-child {margin-left: 0; }	
.header-logo {width: 25%;}
.header-top {column-gap: 5px;}	
}


/* --------- メガメニュー ---------- */

.mega-menu {
position: absolute;
top: 100%; 
left: 0;
width: 100vw;
margin-left: calc(-50vw + 50%); 
background: #fff;
visibility: hidden;
opacity: 0;
transition: opacity 0.3s ease, visibility 0.3s;
box-sizing: border-box;
box-shadow: 0 10px 20px rgba(0,0,0,0.1);
z-index: 1100;
font-weight: bold;	
}
.mega-menu_borderJ{border-top: 2px solid #004176;}
.mega-menu_borderS{border-top: 2px solid #861c3c;}
.mega-menu_borderT{border-top: 2px solid #583264;}


/* ホバーした時に表示 */
.menu-sub-wrapper:hover .mega-menu {
visibility: visible;
opacity: 1;
}

.mega-item_tit {
width: 18%;
color: #fff;
position: relative;
padding: 10px;
}
.mega-item_tit02 {
width: 25%;
color: #fff;
position: relative;
padding: 10px;
}	

.mega-item_titCol {
width: 180px;
position: absolute;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-40%);	
}
.mega-item_titCol02 {
width: 270px;
position: absolute;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-40%);	
}

.mega-item_titJ {background-image: linear-gradient(#708cb2, #004176);}
.mega-item_titT {background-image: linear-gradient(#9387BF, #583264);}
.mega-item_titS {background-image: linear-gradient(#c26080, #801c3a);}

.mega-item_col {width: 82%;}
.mega-item_col02 {width: 75%;}

.mega-item {width: 22%; margin-right: 4%; margin-bottom: 20px;}
.mega-item02 {width: 30%; margin-right: 8%; margin-bottom: 20px;}
.mega-item:last-child,.mega-item02:last-child {margin-right: 0;}

@media only screen and (max-width:1200px){
.mega-item_tit {width: 25%;}	
.mega-item_col {width: 75%;}
.mega-item_tit02 {width: 37%;}
.mega-item_col02 {width: 63%;}
.mega-item {width: 33.3333%; margin-right: 10%;}
.mega-item02 {width: 40%;}
.mega-item:nth-child(even) {margin-right: 0}
}

.mega-item_col,.mega-item_col02 {padding: 40px 40px 10px;}
.mega-item .header-link_midashi,.mega-item02 .header-link_midashi {
font-size: 1.1rem;
border-bottom: 1px solid #ccc; 
padding-bottom: 0.5em;
margin-bottom: 0.6em;
}
.mega-item li,.mega-item02 li{margin-bottom: 0.9em; font-size: 0.9375rem; font-weight: 600;}

.mega-item_tit .header-link_midashi02 a,.mega-item_tit02 .header-link_midashi02 a{color: #fff;}



/*--------------------------
   矢印→　
----------------------------*/

.c-arrow,.c-arrow_ku {display: flex; justify-content: space-between;}

.c-arrow span {
position: relative;
width: 12px;
height: 2px;
margin: 14px 0 0 5px;
border-radius: 9999px;
background-color: #333;
}

.c-arrow__blue span{background-color: #004176;}
.c-arrow__red span{background-color: #801b3a;}
.c-arrow__white span{background-color: #fff;}
.c-arrow__purple span{background-color: #583364;}

.c-arrow span::before,
.c-arrow span::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: 8px;
  height: 2px;
  border-radius: 9999px;
  transform-origin: calc(100% - 1px) 50%;
  background-color: #333;	
}
.c-arrow__blue span::before,.c-arrow__blue span::after { background-color: #004176;}
.c-arrow__red span::before,.c-arrow__red span::after { background-color: #801b3a;}
.c-arrow__white span::before,.c-arrow__white span::after { background-color: #fff;}
.c-arrow__purple span::before,.c-arrow__purple span::after { background-color: #583364;}

.c-arrow span::before {transform: rotate(45deg);}
.c-arrow span::after {transform: rotate(-45deg);}

.c-arrow.c-arrowBig {
border-left: 1px solid #fff;
padding-left: 20px;
display: flex; 
justify-content: space-between;	
}

.c-arrow.c-arrowBig span {
width: 24px;
height: 2px;
background-color: #fff;
margin-bottom: 20px;	
}

.c-arrow.c-arrowBig span::before,
.c-arrow.c-arrowBig span::after {
  width: 16px;
  height: 2px;
  background-color: #fff;
  border-radius: 9999px;	
}


/*-----------くの字矢印　＞　-------------------*/

.c-arrow_ku span {
  position: relative;
/*  margin: 0 0 0 5px;*/
margin-left: auto;
background-color: #333333;	
}

.c-arrow_ku span::before,
.c-arrow_ku span::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: 8px;
  height: 2px;
  border-radius: 9999px;
  transform-origin: calc(100% - 1px) 50%;
	background-color: #333;	
}

.c-arrow_kuW span {background-color: #fff;}
.c-arrow_kuM span {background-color: #583264;}

.c-arrow_kuW span::before,.c-arrow_kuW span::after { background-color: #fff;}
.c-arrow_kuM span::before,.c-arrow_kuM span::after { background-color: #583264;}

.c-arrow_ku span::before {transform: rotate(45deg);}
.c-arrow_ku span::after {transform: rotate(-45deg);}


/*--------------------------*/
.header-link_midashi a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;	
}
.header-link_midashi02 a, .c-arrow_link a {
  display: flex;
  align-items: center;
  cursor: pointer;	
}

/*-------------矢印_丸-----------------*/

.c-arrow_maru {
  position: relative;
  box-sizing: border-box;
  width: 26px;
  height: 26px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  margin-left: 5px;
  background-color: #fff;	
}
.c-arrow_maruBlue {background-color: #004176;}
.c-arrow_maruRed {background-color: #861c3c;}

.c-arrow_maru::before { /* くの字の表示設定 */
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 9px;
  width: 6px; 
  height: 6px; 
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  transform: rotate(45deg); 
}

.c-arrow_maru::after { 
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;	
  left: 8px;
  width: 8px;
  height: 1px;
  background: #333;	
}

.c-arrow_maruBlue::before,.c-arrow_maruRed::before {
border-top: 1px solid #fff;
border-right: 1px solid #fff;	
}
.c-arrow_maruBlue::after,.c-arrow_maruRed::after { 
  background: #fff;	
}


/*----------------------
ハンバーガー
-----------------------*/
.header_inner { display: none; }

@media (max-width: 880px) {
.header-logo {width: 50%;}		
.header_inner {display: block}	
header {
height: 60px;
/*position: absolute;	*/
}
	
.hamburger {
display: block; 
width: 47px;
height: 47px;
border-radius: 50%;
margin-left: auto;
position: relative;
z-index: 10;
border: none;
background-color: #583264;
margin-top: 6px;	
}
	
.hamburger.-active .hamburger_line {
background-color: transparent;
}
.hamburger.-active .hamburger_line::before {
top: 0;
transform: rotate(45deg);
}
.hamburger.-active .hamburger_line::after {
top: 0;
transform: rotate(-45deg);
}

.hamburger_line {
display: block;
height: 2px;
position: absolute;
top: 23px;
left: 50%;
transform: translateX(-50%);
width: 24px;
background-color: #fff;
transition: 0.4s;
}
.hamburger_line:before,
.hamburger_line:after {
content: "";
display: block;
height: 100%;
position: absolute;
width: 100%;
background-color: #fff;
transition: inherit;
}
.hamburger_line:before {top: -6px;}
.hamburger_line:after {top: 6px;}
.hamburger_text {
position: absolute;
bottom: 8px;
left: 50%;
transform: translateX(-50%);
width: 100%;
}

.header_nav-area {
position: fixed;
top: 0;
left: -100%;
z-index: 9;
height: 100vh;
width: 100vw;
padding-top: 15px;
background-color: #fff;
pointer-events: none;
opacity: 0;
transition: opacity .3s linear;
/* ▼ 追加：縦方向に中身が溢れた場合、スクロールを可能にする */
overflow-y: auto;
/* ▼ 追加：iOS（Safari）でのスクロールを滑らかにする設定 */
-webkit-overflow-scrolling: touch;	
}
.header_nav-area.-active {
left: 0;
pointer-events: auto;
opacity: 1;
}
	
.header-logoSp {width: 60%; margin: 0 25px 0;}
	
/*---------------------*/
.global-navigation {padding: 0 25px 120px 25px;}
	
.global-navigation_list > li {
padding: 15px 20px 15px;
border-bottom: 2px solid #e7e9ee;
}	
	
/*.global-navigation_list > li + li {
margin-top: 20px;
}*/
	
.global-navigation_link {
display: flex;
align-items: center;
justify-content: space-between;
color: #333;
transition: color 0.4s;	
}
	
.global-navigation_link.-accordion {
position: relative;
background: none;
border: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
width: 100%;
 padding: 0;
}
	
.global-navigation_link.-accordion::after {
content: '';
display: block;
height: 12px;
position: absolute;
top: 50%;
right: 5px;
width: 2px;
background-color: #6f6f6f;
transform: translateY(-50%);
transition: transform 0.4s;
}

.global-navigation_link.-accordion::before {
content: '';
display: block;
height: 2px;
position: absolute;
top: 50%;
right: 0;
width: 12px;
background-color: #6f6f6f;
transform: translateY(-50%);    
}
	
.global-navigation_link.-active::after {transform: translateY(-50%) rotate(-90deg);}

			
/* --- アコーディオンの基本状態（閉じている時） --- */
.accordion {
  height: 0;
  overflow: hidden;
  visibility: hidden;
  opacity: 0; /* 最初は透明 */
  transform: translateY(-10px); /* 少し上にずらしておく */
  transition: 1.2s ease; /* アニメーションの速度と動き */
}

/* --- アコーディオンが開いた時 --- */
.accordion.-active {
  height: auto;
  padding-top: 25px;
  visibility: visible;
  opacity: 1; /* 不透明にする */
  transform: translateY(0); /* 元の位置に戻す */
}
	
.accordion_list li {
font-size: 0.9rem;
padding-left: 12px;
font-weight: 700;	
}

.accordion_list li + li {margin-top: 15px;}
	
.accordion_link {color: #333;}
}
/*-----/max880px----*/


/*-----------中・高（スマホ）---------------*/
.global-navigation_scool {font-size: 0.9rem;}
.g-navS_tit {padding: 7px 20px;}

.g-navS_titJ {background-image: linear-gradient(90deg, #708cb2, #004176); }
.g-navS_titH {background-image: linear-gradient(90deg, #c26080, #801c3a); }

.g-navS_tit a{color: #fff;}
.g-navS_tit span.font_small{font-size: 0.6rem;}

.g-navS_cont {
padding: 9px 20px;
border-bottom: 1px solid #ddd;	
}
.g-navS_contJ {background-color: #e8f1f6;}
.g-navS_contH {background-color: #fef1ed;}

.g-navS_cont_last {border-bottom: none; border-radius: 0 0 15px 15px;}

.g-navS_cont button {font-size: 0.9rem;}


/*------------在校生・保護者（スマホ）---------------*/
.global-navigation_position li {
padding: 17px 10px;
border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd;
width: 50%;
}

.header-studentSp {
background-color: #583264;
height: 100%;
}

.header-studentSp a {color: #fff;}

/*------------アクセスなど（スマホ）---------------*/
.global-navigation_others {background-color: #f7f7f7;}
.global-navigation_others li {
border-bottom: 1px solid #ddd;
border-right: 1px solid #ddd;
width: 33.33333%;
font-size: 0.875rem;
text-align: center;
padding: 15px 5px;
}
.global-navigation_others li:last-child {border-right:none; }


/*-----------固定バナー---------------*/
.c-fixed-bnJ {
width: 55px;
height: 172px;
position: fixed;
top: 95px;
right: 0;
z-index: 999;
}
.c-fixed-bnH {
width: 55px;
height: 199px;
position: fixed;
top: 267px; 
right: 0;
z-index: 999;	
}


.c-fixed-bnSp {
position: fixed;
width: 100%;	
bottom: 0;
z-index: 1100;	
}
.c-fixed-bnSp li {
width: 50%;
height: 55px;
padding-top: 15px;
}
.c-fixed-bnSp li a {color: #fff;}

.c-fixed-bnJ_Sp {background-color: #6386ab; border-radius: 20px 0 0 0; }
.c-fixed-bnH_Sp {background-color: #c26080; border-radius: 0 20px 0 0; }

a img:hover{opacity: 1;}


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

.header-sp{ display: none; }
@media (max-width: 880px) {
.header-topMain, .header-top,.header-pc { display: none; }
.header-sp{ display: inherit;}	
}
@media only screen and (max-width:520px){
.header-logo {width: 60%;}	
}

/* ------------------------------------------------
  Blog
------------------------------------------------
*/
.bl-single .has-red-color {color: #ff0000 !important;}

.bl-single a {
  color: #3678a9;
  text-decoration: underline;
  transition: 0.4s;
}
.bl-single a:hover {text-decoration: none;}

.bl-single h2 {
  line-height: 1.2083333333;
  margin-top: 1.5em;
  margin-bottom: 0.23em;
  font-size: 1.5rem; /* get_rem(24) */
  color: #583264; 
}
@media (max-width: 1024px) {
.bl-single h2 {
    font-size: 1.0625rem; /* get_rem(17) */
  }
}

.bl-single h3 {
  line-height: 1.2;
  margin-top: 1.7em;
  margin-bottom: 0.25em;
  padding-bottom: 13px;
  border-bottom: 2px solid #583264; 
  font-size: 1.25rem; /* get_rem(20) */
}
@media (max-width: 1024px) {
.bl-single h3 {
    font-size: 1rem; /* get_rem(16) */
  }
}

.bl-single h4 {
  line-height: 1.2;
  margin-top: 1.7em;
  margin-bottom: 0.45em;
  padding-bottom: 11px;
  border-bottom: 1px solid #DECAE5;
  font-size: 1.25rem; /* get_rem(20) */
}
@media (max-width: 1024px) {
.bl-single h4 {
    font-size: 0.9375rem; /* get_rem(15) */
  }
}

.bl-single h5 {
  line-height: 1.5;
  margin-top: 1.8em;
  margin-bottom: 0.4em;
  color: #800080; /* $color_purple */
  font-size: 1.125rem; /* get_rem(18) */
}
@media (max-width: 1024px) {
  h5 {
    font-size: 0.9375rem; /* get_rem(15) */
  }
}

.bl-single h6 {
  line-height: 1.5;
  margin-top: 1.8em;
  margin-bottom: 0.15em;
  font-size: 1.125rem; /* get_rem(18) */
}
@media (max-width: 1024px) {
.bl-single h6 {
    font-size: 0.9375rem; /* get_rem(15) */
  }
}

.bl-single h2 + h3,
.bl-single h3 + h4,
.bl-single h4 + h5,
.bl-single h5 + h6 {
  margin-top: 0.5em;
}

.bl-single figure {
  margin-bottom: 1.5em;
}
.bl-single figure + h3 {
  margin-top: 0;
}
.bl-single figure figcaption {
  margin-top: 5px;
  color: #666;
  font-size: 0.75rem; /* get_rem(12) */
  text-align: center;
}

.bl-single .wp-block-group {
  position: relative;
  margin-bottom: 1.5em;
  padding: 30px 25px 0;
  border: 2px solid #583264; 
  background: #fff;
}

.bl-single .wp-block-button .wp-block-button__link,
.bl-single .wp-block-button a.wp-block-button__link {
  position: relative;
  margin: 0 auto 30px;
  padding: 12px 20px;
  border-radius: 0;
  background: #583264 !important;
  color: #fff !important;
  text-decoration: none;
}
.bl-single .wp-block-button .wp-block-button__link:hover,
.bl-single .wp-block-button a.wp-block-button__link:hover {
  background: #000 !important;
}
.bl-single .wp-block-button .wp-block-button__link:after,
.bl-single .wp-block-button a.wp-block-button__link:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 13px;
  width: 0;
  height: 0;
  margin: auto 0;
  border-style: solid;
  border-width: 3.5px 0 3.5px 5px;
  border-color: transparent transparent transparent #fff;
  content: "";
}

.bl-single hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 2px solid #583264;
  margin: 3em 0;
  padding: 0;
}
.bl-single hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  max-width: 100px;
  margin-left: auto;
  margin-right: auto;
}
.bl-single hr.wp-block-separator.is-style-dots:before {
  color: #583264 !important; 
}

.bl-single p {
  line-height: 2;
  margin-bottom: 1.5em;
}

.bl-single table {
  width: 100%;
  margin-bottom: 1.5em;
  border: 1px solid #583264; /* $color_purple */
}
.bl-single table th, table td {
  vertical-align: middle;
  line-height: 1.75;
  padding: 0.9em 1.4em;
  border-bottom: 1px solid #583264; /* $color_purple */
}
@media (max-width: 768px) {
  .bl-single table th, .bl-single table td {
    padding: 0.9em 0.9em;
  }
}
.bl-single table thead {
  border-bottom: 2px solid #583264; /* $color_purple */
}
.bl-single table thead th + th {
  border-left: 1px solid #583264; /* $color_purple */
}
.bl-single table tr td:first-child,
.bl-single table th {
  background: #DECAE5;
  font-weight: bold;
}
.bl-single table td {
  background: #fff;
}
.bl-single table td + td {
  border-left: 1px solid #583264; /* $color_purple */
}

.bl-single .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}

.bl-single .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.bl-single ul, .bl-single ol {
  line-height: 1.5;
  margin-bottom: 1.5em;
}
.bl-single ul li, .bl-single ol li {
  margin-bottom: 0.5em;
}

/*.bl-single ul:not(.blocks-gallery-grid) {
  list-style: none;
}
.bl-single ul:not(.blocks-gallery-grid) li {
  position: relative;
  padding-left: 20px;
}
.bl-single ul:not(.blocks-gallery-grid) li:before {
  position: absolute;
  top: 0.5em;
  left: 5px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #583264;
  content: "";
}

.bl-single ol {list-style: decimal;}*/

.bl-single ol li {
  margin-left: 1.5em;
}

.bl-single blockquote {
  position: relative;
  margin-bottom: 1.5em;
  padding: 30px 60px 0;
  background: #F8F8F8;
}
@media (max-width: 1024px) {
  .bl-single blockquote {
    padding: 30px 30px 0;
  }
}
.bl-single blockquote:before, .bl-single blockquote:after {
  position: absolute;
  line-height: 1;
  color: #DECAE5;
  font-size: 5.625rem; /* get_rem(90) */
  font-family: "Lato", sans-serif;
  content: "”";
}
.bl-single blockquote:before {
  top: -45px;
  left: 15px;
  transform: scale(-1, -1);
}
@media (max-width: 1024px) {
  .bl-single blockquote:before {
    left: 5px;
  }
}
.bl-single blockquote:after {
  bottom: -45px;
  right: 15px;
}
@media (max-width: 1024px) {
  .bl-single blockquote:after {
    right: 5px;
  }
}
.bl-single blockquote cite {
  display: block;
  padding-bottom: 45px;
  text-align: right;
  font-style: normal;
}
@media (max-width: 1024px) {
  .bl-single blockquote cite {
    padding-bottom: 40px;
  }
}

@media (min-width: 1025px) {
  .bl-single a > img.alignleft {
    width: 48%;
  }
}
@media (max-width: 1024px) {
  .bl-single a > img.alignleft {
    display: block;
    margin: 0 auto 10px;
  }
}

@media (min-width: 1025px) {
  .bl-single a + a > img.alignleft {
    float: right;
  }
}

@media (max-width: 1024px) {
  .bl-single .wp-container-2 {
    display: block;
  }
  .bl-single .wp-container-2 figure {
    width: 100% !important;
  }
  .bl-single .wp-container-2 figure + figure {
    margin-top: 10px !important;
  }
}

@media (max-width: 1024px) {
  .bl-single .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
    width: 100%;
  }
}



/* ------------------------------------------------
  Main
------------------------------------------------
*/
.hero {margin-top: 95px;}

@media (max-width: 880px) {
.hero {margin-top: 60px;}	
}

/*---------------------------------------*/
.bl-topBn-col {margin: 40px auto;}
.bl-topBn {display: flex; flex-wrap: wrap; justify-content: center; gap: 2%;}
.bl-topBn li {width: 30%;}
@media only screen and (max-width:880px){
.bl-topBn li {width: 32%;}	
}
@media only screen and (max-width:520px){
.bl-topBn-col {margin: 20px auto 20px;}	
.bl-topBn {gap: 10px;}	
.bl-topBn li {width: 100%;}	
}

/*----------------swiper------------------*/

/*----------あとで消去------------*/
#swiper1 {margin-bottom:50px;}
@media only screen and (max-width:520px){
#swiper1 {margin-bottom:0;}	
}
/*----------------------*/
.bl_wrapper01 {width: 100%; height: 100%;}
.bl-slide_wrapper {position: relative;}

.bl-slide_wrapper02{
position: relative;
max-width: 1200px;
margin-inline: auto;
}
.bl-slide_wrapper03{margin-bottom: 80px}

@media only screen and (min-width:521px){
.bl-slide_wrapper03{padding: 0 20px;}
}

#swiper3 .swiper-wrapper {
transition-timing-function: linear;
}

.swiper-button-prev,
.swiper-button-next {
height: 35px;
width: 48px;
opacity: 1 !important;
z-index: 10; /* 他の要素に隠れないように追加 */	
}
/* スライドの端に到達してボタンが効かない時の透過 */
.swiper-button-disabled {opacity: 0 !important;}

.swiper-button-prev:after,
.swiper-button-next:after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  position: absolute; 
  height: 35px;
  width: 48px;
  top: 50%;
  transform: translateY(-50%); /* 中央配置の微調整 */
}

.swiper-button-prev:after {
background-image: url(images/common/prev_btn.svg);
top:50%;	
transform: translateY(-60%);
}
.swiper-button-next:after {
background-image: url(images/common/next_btn.svg);
top:50%;	
transform: translateY(-60%);	
}

.swiper-button-prev.swiper-button-prev-2:after {top:50%;	
transform: translateY(-50%); left:-25px;	
}
.swiper-button-next.swiper-button-next-2:after {top:50%;	
transform: translateY(-50%); right:-25px;	
}

.swiper-pagination-bullet-active {
background-color: #9d9d9d;
}
.swiper-pagination {bottom: -20px !important;}
.swiper {z-index: 0;}

@media (max-width: 1200px) {
.bl-slide_controls {
  display: flex;
  justify-content: center;
  gap: 20px; 
  margin-top: 20px;
}

.swiper-button-prev-3,
.swiper-button-next-3 {
  position: relative; 
  display: flex ;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 35px; 
  margin: 0; 
  top: auto;
  left: auto; 
  right: auto;
  transform: none; 
}

.swiper-button-prev-3:after,
.swiper-button-next-3:after {
  position: static;
  margin: 0;
  width: 48px ; 
  height: 35px ;
  top: auto;
  transform: none !important; 
  display: block;
}
}

@media (max-width: 520px) {
  .swiper-button-prev-3,
  .swiper-button-next-3,
  .swiper-button-prev-3:after,
  .swiper-button-next-3:after {
    width: 41px !important;
    height: 30px !important;
  }
}


@media (max-width: 880px) {
.swiper-button-next-2,.swiper-button-prev-2{display: none !important;}	
#swiper2 .swiper-wrapper {display: block;}
#swiper2 .swiper-slide {width: 100% !important;}
#swiper2 .swiper-slide:nth-child(n+4) {display: none;}
.bl-blog .bl-blog-cardGr_Tachibana > a.blog-card_link:nth-child(n+4) { display: none;}	
}

@media (max-width: 520px) {
.bl_wrapper01 {padding: 0 30px; margin-bottom: 35px; margin-top: 20px;}
.bl-slide_wrapper03{margin-bottom: 0;}	
.swiper-button-prev:after {left:-25px;}
.swiper-button-next:after {right:-25px;}
.swiper-button-prev-1:after {left:-35px;}
.swiper-button-next-1:after {right:-35px;}	
.swiper-button-prev:after,.swiper-button-next:after {
height: 30px;width: 41px;}	
}

/*------------------もっと見るボタン--------------------------*/
.c-more-btn a,a.c-more-btn,.single-button_re a{
background: #fff;	
border-radius: 100vmax;
margin: 20px auto 0;
max-width: 200px;
padding: 0.625em 1.75em;
transition: 0.2s ease-in-out;
font-weight: 500;
color: #583364;	
border: 1px solid #583364;
position: relative;
text-decoration: none;	
}

.c-more-btn a:after{transition: 0.2s ease-in-out;}
.c-more-btn a:hover {color: #FFF; opacity: 0.9; background: #583364;}

.c-more-btn_ichiran a:hover.c-arrow__purple span {background-color: #fff;}
.c-more-btn_ichiran a:hover.c-arrow__purple span::before,.c-more-btn_ichiran a:hover.c-arrow__purple span::after { background-color: #fff;}

@media (max-width: 520px) {
.c-more-btn a,a.c-more-btn {margin-top: 20px;}
.bl-news .c-more-btn a {margin-top:5px;}
}


/*----------------中学・高校ボタン----------------------*/

.c-top-schoolBtn__junior {	
padding: 45px 65px 45px 90px;
background-image: linear-gradient(90deg, #708cb2, #004176);
border-radius: 0 0 0 70px;
color: #fff;
}
.c-top-schoolBtn__high {
padding: 45px 65px 45px 90px;
background-image: linear-gradient(90deg, #c26080, #801c3a);
border-radius: 0 70px 0 0;
color: #fff;
}
.c-top-schoolBtn__left,.c-top-schoolBtn__right {width: 50%;}
.c-top-schoolBtn__left02,.c-top-schoolBtn__right02{width: 50%;}

.c-top-schoolBtn__juniorLeft,.c-top-schoolBtn__highRight {display: flex; align-items: center;}
.header-link_midashi02 {padding-right: 20px;}

@media only screen and (max-width:1200px){
.c-top-schoolBtn__junior,.c-top-schoolBtn__high  {
padding: 30px 50px 30px 50px;}
.c-top-schoolBtn__junior {border-radius: 0 0 0 50px;}
.c-top-schoolBtn__high {border-radius: 0 50px 0 0;} 	
}

@media only screen and (max-width:880px){
.c-top-schoolBtn__left,.c-top-schoolBtn__right {width: 100%;}
.c-top-schoolBtn__junior,.c-top-schoolBtn__high{
padding: 15px 20px;	
border-radius: 0;
}
}

/*----------------topBLOG表示---------------------*/

.blogCont {
padding: 75px 0 160px;
background-image: url(images/common/paper01.webp);
border-radius: 80px 80px 0 0;
margin-bottom: -100px;	
}
.blogCont_top {padding: 75px 0 0; margin-bottom: 100px;}

.c-section_header {
border-top: 1px solid #666666;	
background-image: url(images/common/tit_Scolr.svg);
background-repeat: no-repeat;
background-position: 50% 0;	
background-size: 100px 12px;
text-align: center;
margin-bottom: 40px;	
}
.titBlue {background-image: url(images/common/tit_blue.svg);}
.titRed {background-image: url(images/common/tit_red.svg);}
.titPurple {background-image: url(images/common/tit_Scolr.svg);}
.titPurple02 {background-image: url(images/common/tit_purple.svg);}

.blogHeader_mainTit {
margin-top: 40px;
font-size: 4rem;
line-height: 1em;	
color: #666;	
}
.blogHeader_mainTit span{font-size: 1.5rem;}

.blog-card_col {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 15px 10px 15px;
background-color: #fff;
border-radius: 10px;
}


.blog-card_imgWap{width: 48%;}

.blog-card_img {
position: relative;
padding-top:66.66%;
overflow: hidden;
}
.blog-card_img > img {
position: absolute;
top: 50%;
width: 100%;
transform: translateY(-50%);
}

.blog-card-body {width: 50%;}
.blog-card_date { font-size: 0.875rem; color: #888; line-height: 1.45; display: block;}
.blog-card_text{ font-size: 0.85rem; line-height: 1.45; margin: 0; font-weight:500;}

.blog-card_category {
display: inline-block;
line-height: 1em;	
font-size: 0.8rem;
letter-spacing: 0;
font-weight: 500;
border: 1px solid #9d9d9d;
padding: 0.35em 0.5em 0.25em;
border-radius: 100vmax;
margin-bottom: 5px;	
}

.blogCate_news {background-color:#583264; color: #fff; border: none!important}

.cat-info-junior {background-color:#00437c; border: none!important; color: #fff;}/*中学受験生*/
.cat-info-high {background-color:#861c3c; color: #fff; border: none!important; color: #fff;}/*高校受験生*/
.blogCate_jhS {background-color:#5f81ba; color: #fff; border: none!important;}
.blogCate_graduate {background-color:#808080; color: #fff; border: none!important;}

.blog-card_link {
  display: block;
  width: 100%;
}

.blog-card_col {width: 100%;}

.bl-blog-cardGr.bl-blog-cardGr_Tachibana {
display: flex;
flex-wrap: wrap;
gap: 20px 20px;
}

.blog-card_link {
display: block;
width: calc((100% - 40px) / 3);
}


@media (max-width: 1025px) {
.blogCont {
padding: 45px 0 100px;
border-radius: 35px 35px 0 0;
margin-bottom:-80px;	
}
.blogCont_top {padding: 45px 0 50px; margin-bottom:50px;}
	
.swiper-slide .blog-card_col {margin-bottom: 25px;}	
.blog-card_col {padding: 17px 15px 13px;}	
.blog-card_imgWap {width: 45%; align-self: center;}
.blog-card-body {width: 53%;}
.blog-card_link {width: calc((100% - 20px) / 2);}	
}

@media (max-width: 880px) {
.blog-card_col {padding: 15px 13px 10px; }
.blog-card_imgWap {width: 43%; align-self: center;}
.blog-card-body {width: 51%;}
.blogHeader_mainTit {margin-top: 20px; font-size: 2.7rem;}
.blogHeader_mainTit span {font-size: 1.1rem;}
.c-section_header {margin-bottom: 15px;}
.blog-card_link {width: 100%;}	
}

@media (max-width: 520px) {
.blogCont_top {padding: 45px 0 25px;}	
.blog-card_col {padding: 10px 10px 8px; }
.blog-card_category {	
font-size: 0.7rem;
font-weight: 500;
padding: 0.35em 0.5em 0.25em;
}	
}


/* ------------------------------------------------
  footer
------------------------------------------------
*/
.main-footer {margin-top: 50px;}

.footer-cont_top {
padding: 30px 30px 20px;
background-color: #eee6e9;
border-radius: 50px 50px 0 0;
}

.footer-cont_topIn {display: flex; gap: 40px;}

.footer-links {	width: 80%; gap: 3%;}
.footer-sns {width: 17%;}

.Flink-group ul li { 
font-size: 0.85rem; 
margin-bottom: 0.25em; 
color: #333; 
padding: 0 20px; 
letter-spacing: 0; 
display: inline-block;
border-left: solid 2px #9d9d9d;
line-height: 1.3em;
}
.Flink-group ul li:last-child {border-right: solid 2px #9d9d9d;}

.footer-sns ul {gap: 15px; justify-content: flex-end;}


/*--------footer下-----------*/

.footer-cont_bottom {
padding: 35px 0 25px;
background-color: #583364;
color: #fff;
}
.footer-cont_bottomIn {gap:3%;}

.footer-info { padding-right: 20px; margin-bottom: 20px;}
.address { font-size: 14px; line-height: 1.8;}

.footer-bn {gap: 10px 10px;}
.footer-bn li {
padding: 0.5em 1.5em;
background-color: #7d5881;	
}
.footer-bn li a{color: #fff;}

.footer-copylight {font-size: 12px; text-align: end; line-height: 1.6em;}

@media only screen and (max-width:1025px){
.footer-links,.footer-sns {	width: 100%;}
.footer-cont_topIn,.footer-cont_top{display: block;}
.footer-cont_top {border-radius: 35px 35px 0 0; padding: 40px 0 30px;}
.footer-sns ul {justify-content: flex-start; margin-top: 20px;}
.footer-bnCol {width: 100%;}
.footer-copylight{ text-align: center;}
}


@media only screen and (max-width:880px){
.footer-bn li {
text-align: center;	
font-size: 0.8rem;
padding-left: 1em;
padding-right: 1em;	
margin-bottom: 8px;}
.footer-cont_bottom {padding-bottom: 80px;}
.footer-cont_top {padding: 25px 0 15px;}	
}

@media only screen and (max-width:520px){
.main-footer {margin-top: 30px;}	
.footer-cont_top {
padding: 30px 0;
border-radius: 20px 20px 0 0;	
}
.footer-cont_top {padding: 20px 0 10px;}
.footer-sns ul {justify-content: center;}	
.footer-bn li {width: 100%;}
.footer-cont_bottom {padding: 25px 0 60px;}
}


/* --------------パンくず-------------- */
ul.breadcrumb{
font-size: 0.7em;
display: flex;
flex-wrap: wrap;
}

ul.breadcrumb li:not(:first-child){
margin-left: 5px;
position: relative;
}

ul.breadcrumb li:not(:first-child):before{
content: ">";
padding-right: 5px;
}

ul.breadcrumb li:last-child:after{content: ""}
ul.breadcrumb li:last-child {color: #9d9d9d}

/*--@media (max-width: 1200px) {
ul.breadcrumb{margin: 30px 0;}
}--*/

@media only screen and (max-width:800px){
ul.breadcrumb{justify-content: flex-start; font-size: 0.677em; margin: 10px 0;}
}



/*------------------------------
お知らせ 一覧
--------------------------------*/
.blogArchive-cont {
margin-top: 95px;	
padding: 30px 0 150px;
background-image: url(images/common/paper01.webp);
margin-bottom:-100px	
}

.bl-archive,.bl-single,.bl-blog {padding: 30px 0 70px}
.blogArchive_mainTit {font-size: 2em; margin-bottom: 0.3em;}

.bl-blogArchive_card {
display: flex;
flex-wrap: wrap;
gap: 25px 4%;	
}
.blogArchive-card_col {width: 22%;}

.blogArchive-card-body {
background-color: #fff;	
border: 1px solid #ddd; 
border-top: none;
border-radius: 0 0 10px 10px;
}
.blogArchive-card_col .blogArchive-card-body ,blogArchive-card_col .blogArchive-card_col figure {padding: 10px}

.blogArchive-card-body li.blog-card_category {
display: inline-block;
line-height: 1em;	
font-size: 0.7rem;
letter-spacing: 0;	
font-weight: 500;
border: 1px solid #9d9d9d;
padding: 0.25em 0.5em 0.25em;
border-radius: 100vmax;
}

.blog-card_full-link {
text-decoration: none; 
color: inherit; 
display: block;  /* カード全体をクリック可能にする */
}
.blog-card_full-link:hover {opacity: 0.8;}

@media only screen and (max-width:1025px){
.blogArchive-cont {
padding: 30px 0 80px;
margin-bottom:-80px	
}
}
@media only screen and (max-width:800px){
.blogArchive-cont {font-size: 0.9em; margin-top: 30px;}
.blogArchive-card_col {width: 48%;}
.bl-archive,.bl-single,.bl-blog {padding: 10px 0 30px}	
}
@media only screen and (max-width:520px){
.blogArchive-card_col .blogArchive-card-body{padding: 8px}
.blogArchive-card-body li.blog-card_category {	
font-size: 0.65rem;
padding: 0.3em 0.5em 0.3em;	
font-weight: 500;
}	
}

/*------------お知らせ一覧 タブ切り替え------------*/
.bl-tab ul li{
/*flex: 1 1;*/
order: -1;
opacity: .8;
width: 16.666%;
font-size: .9em;
font-weight: bold;
text-align: center;
cursor: pointer;
border-right: 1px solid #7c7d7d;
margin-bottom: 10px;
}

.bl-tab ul li a{
color: #333;
background-color: #fff;
padding: .8em 0;
display: block;
}

.bl-tab ul li:last-of-type{border: none;}

.bl-tab ul li a:hover {
opacity: 1;
background-color: #9d9d9d;
color: #fff;	
}


.bl-tab li a.active {
background-color: #9d9d9d;
color: #fff; 
}

@media (max-width: 880px) {
.bl-tab ul li{width: 33.333%;}
.bl-tab ul li:nth-of-type(3n){border: none;}	
}

/* -----------------------
おしらせ 記事ページ
------------------------------------- */
.single-buttonArea {margin-top: 50px; padding-top: 50px; border-top: 1px solid #d2d2d2;}
.single-buttonArea_T {margin-top: 50px;border-top: none;}

.single-button {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0;
}

.single-button_pre,
.single-button_next {
width: 60px;　height: 44px; }

/* 重要 */
.single-button_pre a,
.single-button_next a {
display: block;
width: 60px;
height: 44px;
background-repeat: no-repeat;
background-size: contain;
background-position: center;
text-indent: -9999px;
overflow: hidden;
}

.single-button_pre a {background-image: url(images/common/prev_btn.svg);}

.single-button_next a {background-image: url(images/common/next_btn.svg);}


.single-button_pre a:hover,
.single-button_next a:hover {
opacity: 0.7;
}

.single-button_re.c-more-btn a {
margin-top: 0;
}

/* -----------------------
BLOG 記事ページ、右サイドエリア
------------------------------------- */
.ly-blogMain {
background-color: #fff; 
border-radius: 20px;
padding: 40px; 
}

.bl-blogSide_new {color: #595757;}

.bl-blogSide_new li {
font-size: 0.9em;
list-style: none;
padding: 15px 0;
border-bottom: 1px dotted #ddd;
}
.bl-blogSide_new li a {
list-style: none;
transition: 0.5s;
}

.bl-blogSide_new li a:hover {color: #999;}

.bl-blogSide_tit {
  color: #333;
  letter-spacing: 0.05em;
  font-weight: bold;
  padding: 0 0 0.5em;	
  position: relative;
  border-bottom: 1px solid #9d9d9d;
  background: 0;
  border-radius: 0;
}

.bl-blogSide_tit:after {
  content: ".";
  line-height: 0;
  display: block;
  overflow: hidden;
  position: absolute;
  bottom: -1px;
  width: 30%;
  border-bottom: 2px solid #583264;
}

.blogSide-blogCategory {
  width: max-content;
  font-size: 0.95rem;
  line-height: 1;
  letter-spacing: 0;
  border: 1px solid #9d9d9d;
  padding: 0.35em 1.2em;
  border-radius: 9999px;
  margin: 15px 0;
/*  transition: all .2s;*/
}

.blogSide-blogCategory a:hover{
  background: #ddd;
}
	
.blogMain_tit {
font-size: 2.3em;
margin: 23px 0 20px;
line-height: 1.3em;	
}

.blogMain_titCol {
border-bottom: 1px solid #cfd0d0;
padding-bottom: 15px;
margin-bottom: 25px;	
}

.ly-blogMain .wp-block-image,.bl-single .wp-block-image {margin: 25px 0;}

.ly-side .bl-blogSide_new select {
font-size: 0.9em;	
color: #5d5d5d;
border: 1px solid #7d7d7d;
width: 100%;
padding: 7px;
border-radius: 5px;	
}
.ly-side .bl-blogSide_new select {width: 100%; padding: 5px;}

.blogMain_titCol .blogSide-blogCategory{
margin: 15px 10px 15px 0;
}


@media (max-width: 880px) {
.ly-blogMain {padding: 20px 12px;}
.blogMain_tit {
font-size: 2em;
margin: 3px 0 10px;
}
.blogMain_titCol {padding-bottom: 10px; margin-bottom: 15px;}
.blogMain_titCol .blogSide-blogCategory {margin: 0 5px 5px 0;}
}

/*---------------橘の風一覧-----------------*/
.blogArchive-Tachibana-card_col {
padding: 30px 20px;
border-bottom: 1px solid #9d9d9d;
}

.blogArchive-Tachibana_body .blog-card_text {
font-size: 1.25em;
font-weight: 700;
margin-bottom: 15px;
}

.blog-card_link-wrapper {
display: flex;
width: 100%;
text-decoration: none;
color: inherit;
gap: 5%;
}


.blogArchive-Tachibana-card_col figure {width: 31%;　margin: 0;}

.blogArchive-Tachibana_body {width: 64%;}

@media (max-width: 880px) {
.blogArchive-Tachibana-card_col {padding: 15px 0;}
.blogArchive-Tachibana_body .blog-card_category{margin-bottom: 0;}
.blogArchive-Tachibana_body .blog-card_text {font-size: 1em; margin-bottom: 5px;}
.blog-card_link-wrapper {gap: 5%;}
.blogArchive-Tachibana-card_col figure { width: 45%;}
.blogArchive-Tachibana_body {width: 50%;}	
}


/*------------------------------
同窓会 一覧
--------------------------------*/
.reunion-tab ul li{
width: calc(100%/3);
}

/*--------------------ページネーション----------------------*/

.pagination {text-align: center; margin: 30px auto 0;}

.screen-reader-text {
border: 0;
clip-path: inset(50%);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
word-wrap: normal !important;
}

.nav-links {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 0.5rem;
font-size: 14px;
font-weight: bold;
}

.pagination .page-numbers {
display: flex;
justify-content: center;
align-items: center;
width: 37px;
height: 37px;
line-height: 0;
border-radius: 50%;
color: #808080;
background: #ffffff;
border: 1px solid #a797c7;	
}

.pagination .current {
color: #fff;
background: #583264;
border: 1px solid #583264;	
}

.pagination .prev {
position: relative;
padding-left: 23px;
border: 1px solid #fff;	
}
.pagination .prev::after {
display: block;
content: '';
width: 7px;
height: 7px;
position: absolute;
top: 0;
bottom: 0;
left: 15px;
border-top: solid 1px #333;
border-right: solid 1px #333;
transform: rotate(225deg);
margin: auto;
}

.pagination .next {
position: relative;
padding-right: 23px;
border: 1px solid #fff;	
}
.pagination .next::after {
display: block;
content: '';
 width: 7px;
height: 7px;
position: absolute;
top: 0;
bottom: 0;
right: 15px;
border-top: solid 1px #333;
border-right: solid 1px #333;
transform: rotate(45deg);
margin: auto;
}

/*====================================
* お問い合わせ
=====================================*/
ol.form_step {
  line-height: 1;
  display: table;
  width: 100%;
  margin: 55px 0 30px;
  overflow: hidden;
}
@media screen and (max-width: 1050px) {
  ol.form_step {
    margin: 30px 0 20px;
  }
}
ol.form_step li {
  position: relative;
  display: table-cell;
  width: 33.3%;
  height: 70px;
  vertical-align: middle;
  background: #F7F7F7;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 1050px) {
  ol.form_step li {
    height: 65px;
  }
}
ol.form_step li:after, ol.form_step li:before {
  position: absolute;
  width: 0;
  height: 0;
  content: "";
}
ol.form_step li:before {
  top: 0px;
  right: -14px;
  border-top: 38px solid transparent;
  border-bottom: 38px solid transparent;
  border-left: 13px solid #D5D5D5;
  z-index: 9;
}
@media screen and (max-width: 1050px) {
  ol.form_step li:before {
    border-width: 32px 0 32px 13px;
  }
}
ol.form_step li:after {
  top: 0;
  right: -13px;
  border-top: 38px solid transparent;
  border-bottom: 38px solid transparent;
  border-left: 13px solid #F7F7F7;
  z-index: 9;
}
@media screen and (max-width: 1050px) {
  ol.form_step li:after {
    border-width: 32px 0 32px 13px;
  }
}
ol.form_step li.on {
  background: #5B3468;
  color: #fff;
}
ol.form_step li.on:before {
  top: 0px;
  right: -14px;
  border-top: 38px solid transparent;
  border-bottom: 38px solid transparent;
  border-left: 13px solid #eee;
  z-index: 9;
}
@media screen and (max-width: 1050px) {
  ol.form_step li.on:before {
    border-width: 32px 0 32px 13px;
  }
}
ol.form_step li.on:after {
  top: 0;
  right: -13px;
  border-top: 38px solid transparent;
  border-bottom: 38px solid transparent;
  border-left: 13px solid #5B3468;
  z-index: 9;
}
@media screen and (max-width: 1050px) {
  ol.form_step li.on:after {
    border-width: 32px 0 32px 13px;
  }
}
ol.form_step li:last-child:after, ol.form_step li:last-child:before {
  display: none;
}
ol.form_step li span.en {
  display: block;
  margin: 0 0 5px;
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-size: 0.75rem;
  letter-spacing: 0;
}
@media screen and (max-width: 1050px) {
  ol.form_step li span.en {
    font-size: 0.5625rem;
  }
}

table.form {
  width: 100%;
  border: 1px solid #707070;
  border-width: 1px 0;
}
table.form tr.js-check-change, table.form tr.js-check-stop {
  display: none;
}
table.form th, table.form td {
  padding: 40px 0;
  border-bottom: 1px dotted #707070;
}
@media screen and (max-width: 1050px) {
  table.form th, table.form td {
    padding: 20px 0;
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 1050px) {
  table.form tr:last-child td {
    border-bottom: none;
  }
}
table.form th {
  vertical-align: top;
  text-align: left;
}
@media screen and (min-width: 1051px) {
  table.form th {
    width: 22.7272727273%;
  }
}
@media screen and (max-width: 1050px) {
  table.form th {
    padding-bottom: 0;
    border-bottom: none;
  }
}
table.form td.wrapper input + p:not(.ex),
table.form td.wrapper .box + p:not(.ex) {
  margin-top: 23px;
  font-weight: bold;
}
table.form td .box {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
table.form td .box div p:not(.ex) {
  font-weight: bold;
}
table.form td .box div input, table.form td .box div select {
  width: 200px;
}
table.form td .mwform-radio-field {
  display: inline-block;
}
table.form td .mwform-radio-field label {
  display: flex;
}
table.form td input[type=radio] {
  width: auto;
}
table.form td .month {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 1050px) {
  table.form td .month {
    display: grid;
    grid-template-columns: auto 50px;
  }
}
table.form td.is_error input, table.form td.is_error textarea, table.form td.is_error select {
  background: #FFE8E8;
}
table.form span.ico {
  display: inline-block;
  line-height: 1;
  padding: 4px 10px;
  margin: 0 5px;
  border-radius: 3px;
  font-weight: normal;
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  color: #fff;
}
@media screen and (max-width: 1050px) {
  table.form span.ico {
    font-size: 0.625rem;
  }
}
table.form span.ico.optional {
  background-color: #ccc;
}
table.form span.ico.must {
  background-color: #FD5252;
}
table.form input, table.form textarea, table.form select {
  width: 100%;
  padding: 12px;
  border: 1px solid #BFBFBF;
  border-radius: 3px;
  box-sizing: border-box;
  font-size: 1rem;
}
@media screen and (min-width: 1051px) {
  table.form input.input_m, table.form textarea.input_m, table.form select.input_m {
    width: 41.7163289631%;
  }
}
table.form input.input_s, table.form textarea.input_s, table.form select.input_s {
  width: 200px;
}
table.form textarea {
  height: 195px;
}
table.form select {
  padding-right: 30px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
table.form .select_box {
  position: relative;
  display: inline-block;
}
table.form .select_box:after {
  position: absolute;
  top: 17px;
  right: 10px;
  width: 0.4em;
  height: 0.4em;
  padding: 0;
  content: "";
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  pointer-events: none;
  transform: rotateZ(45deg);
}
table.form p.ex {
  color: #999999;
}
table.form dl dt {
  margin-bottom: 1px;
  font-weight: bold;
}
table.form dl dd + dt {
  margin-top: 17px;
}
@media screen and (min-width: 1051px) {
  table.form dl.add01 {
    display: flex;
    margin-bottom: 20px;
  }
  table.form dl.add01 .dl_in + .dl_in {
    margin-left: 30px;
  }
}
@media screen and (max-width: 1050px) {
  table.form dl.add01 .dl_in {
    margin-bottom: 17px;
  }
}

.mw_wp_form_confirm p.ex {
  display: none;
}
.mw_wp_form_confirm .select_box:after {
  display: none;
}

.btn_submit {
  display: flex;
  justify-content: center;
  margin-top: 60px;
}
@media screen and (max-width: 1050px) {
  .btn_submit {
    margin-top: 30px;
  }
}
.btn_submit input {
  width: 320px;
  padding: 11px;
  border: 1px solid #666666;
  background: #fff;
  font-size: 1rem;
  cursor: pointer;
  transition: 0.4s;
}
@media screen and (max-width: 1050px) {
  .btn_submit input {
    width: 100%;
  }
}
.btn_submit input:hover {
  background: #5B3468;
  color: #fff;
}
.btn_submit .btn_form_back {
  margin-right: 20px;
}
.btn_submit .btn_form_back input {
  width: 150px;
}
@media screen and (max-width: 1050px) {
  .btn_submit .btn_form_back input {
    width: 100%;
  }
}

.thanks_content .tit_05 + p {
  margin-top: 30px;
}
.thanks_content .btn {
  margin: 20px auto 0;
  max-width: 320px;
}
.thanks_content .btn a {
  position: relative;
  display: block;
  padding: 12px 20px;
  width: 100%;
  border: 1px solid #666666;
  text-align: center;
}
.thanks_content .btn a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 13px;
  width: 0;
  height: 0;
  margin: auto 0;
  border-style: solid;
  border-width: 3.5px 0 3.5px 5px;
  border-color: transparent transparent transparent #666666;
  content: "";
}
.thanks_content .btn a:hover {
  background: #5B3468;
  color: #fff;
}

