/*
Theme Name: rn_Seiwa_highschool
Theme URI:
Author: SEIWA
Author URI:
Description: Original Theme
Version: 1.0
License: 
License URI:
Tags:
Text Domain:
*/
@charset "UTF-8";
:root{
    --HighLight: #fff;
    --TextColor: #222;
    --PrimaryColor: #023586;
    --SecondaryColor: #000562;
    --Blue01:#C6DCFF;
    --Blue02: #1353B7;
    --Blue03: #ECFAFF;
    --GrayDark: #B5B5B6;
    --GrayLighter: #EEE;
    --Gold01: #C3AC02;
    --Gold02: #CAA50A;
    --Accent01: #E2CF4B;
    --Accent02: #FF383C;
    --tokubetsuPrimary: #456AA3;
    --tokubetsuSecondary: #1F3B86;
    --tankyuPrimary: #74A845;
    --tankyuSecondary: #4F9D48;
    --bunkakyoyoPrimary: #F3892A;
    --bunkakyoyoSecondary: #DE5511;
    --jyouhouPrimary: #E97461;
    --jyouhouSecondary: #CD352D;
    --TextLinks: #0FA3E9;

}
/* -----------------------------------
  WordPress更新ページ必須css
----------------------------------- */
p {
	display: block;
}

strong {
	font-weight: bold;
}

em {
	font-style: italic;
}

blockquote {
	display: block;
	-webkit-margin-before: 1em;
	-webkit-margin-after: 1em;
	-webkit-margin-start: 40px;
	-webkit-margin-end: 40px;
}

/* img */

.aligncenter {
	display: block;
	margin: 0 auto;
}

.alignright {
	float: right;
}

.alignleft {
	float: left;
}

img[class*="wp-image-"],
img[class*="attachment-"] {
	height: auto;
	max-width: 100%;
}

/* clearfix */

.clearfix {
	overflow: hidden;
	zoom: 1;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* -----------------------------------
  pc
----------------------------------- */

/* この下に記述 */
/* -------- スライドバナー -------- */
.frontSwiper{
	height: fit-content;
	padding: 12px 0;
	position: relative;
}

.frontSwiper .swiper-slide{
	width: 100%;
    opacity: 0.3;
    transition: .3s ease;
}

.frontSwiper .swiper-slide.swiper-slide-active{
    opacity: 1;
    transition: .3s ease;
}

.swiper-button-prev,
.swiper-button-next{
    width: 50px;
    height: 75px;
	background: var(--PrimaryColor);
	margin-top: 0;
    top: 50%;
    transform: translateY(-50%);
}

.swiper-button-prev {
    left: 32vw;
    right: auto;
}

.swiper-button-next {
    right: 32vw;
    left: auto;
}
.swiper-button-next:after, 
.swiper-button-prev:after {
    font-size: 1.6rem;
	color: var(--HighLight);
}

.swiper-pagination-bullets.swiper-pagination-horizontal{
	bottom: -4px;
}

.swiper-pagination-bullet {
  border-radius: inherit;
  width: 40px;
  height: 4px;
  background: var(--PrimaryColor);
  opacity: 0.19;
}
.swiper-pagination-bullet-active {
  background: var(--PrimaryColor);
  opacity: 1;
}

/* ----- NEWS ------ */
.container_box.news{
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.news_containerbox {
    display: flex;
    justify-content: center;
    gap: 40px;
    align-items: center;
}

.newsTitle_hl{
	font-family: "Inter" , sans-serif;
	font-size: 2.5rem;
	font-weight: 200;
	font-style: italic;
}
.news_container_list {
    flex-direction: column;
    display: flex;
    gap: 0;
	width: 100%;
}

.news_container_item{
	display: flex;
	gap: 8px;
	padding: 12px 0;
	border-bottom: 1px solid var(--GrayDark);
	width: 100%;
}

.news_container_item:last-of-type{
	border-bottom: none;
}

.container_ctaList{
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	justify-content: center;
}

.news_title{
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: "Inter" , "noto sans JP" , sans-serif;
	color: var(--TextColor);
	width: 100%;
}

.news_title .news_date{
	font-size: 1.4rem;
	font-weight: 200;
	transition: .3s ease;
        width: 100px;
}

.news_title .news_category{
	border: 1px solid var(--PrimaryColor);
	background: var(--PrimaryColor);
	color: var(--HighLight);
	font-size: 1.1rem;
	line-height: 1;
	max-width: 110px;
	width: 100%;
	padding: 4px 0;
	display: flex;
	justify-content: center;
	text-align: center;
	align-items: center;
	transition: .3s ease;
}

.news_title:hover{
	color: var(--PrimaryColor);
	transition: .3s ease;
}

.news_title:hover .news_category{
	background: var(--HighLight);
	color: var(--PrimaryColor);
	transition: .3s ease;
}

/* ------ front ------ */
.frontlist_wrapper{
	max-width: 100%;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.frontlist_container{
	position: relative;
	padding: 120px 0;
	clip-path: inset(0);
}

.frontlist_container::before{
	content: "";
	display: block;
	width: 100vw;
    height: 100vh;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
	background: linear-gradient(90deg,rgba(2, 53, 134, 0.8) 0%, rgba(20, 86, 160, 0.46) 46%, rgba(56, 150, 210, 0) 100%);
	mix-blend-mode: multiply;
	z-index: -1;
}

.frontlist_container:nth-of-type(even):before{
	background: linear-gradient(-90deg,rgba(2, 53, 134, 0.8) 0%, rgba(20, 86, 160, 0.46) 46%, rgba(56, 150, 210, 0) 100%);
}


.frontlist_container::after{
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  z-index: -10;
  width:100%;
  height:100%;
  background-size: cover;
	z-index: -2;
}

.frontlist_container.bg01::after {
	background-image: url(./images/front/bg_method.webp);
	background-size: cover;
	background-position: center center;
}

.frontlist_container.bg02::after {
	background-image: url(./images/front/bg_course.webp);
	background-size: cover;
	background-position: center center;
}

.frontlist_container.bg03::after {
	background-image: url(./images/front/bg_schoollife.webp);
	background-size: cover;
	background-position: center center;
}

.frontlist_container.bg04::after {
	background-image: url(./images/front/bg_club.webp);
	background-size: cover;
	background-position: center center;
}

.frontlist_container.bg05::after {
	background-image: url(./images/front/bg_career.webp);
	background-size: cover;
	background-position: center center;
}

.frontlist_container.bg06::after {
	background-image: url(./images/front/bg_exam.webp);
	background-size: cover;
	background-position: center center;
}


.frontlist_container .container_box.anc {
	max-width: 335px;
	width: 100%;
	align-items: stretch;
}

.frontlist_container .container_box.anc{
	margin-right: auto;
	margin-left: 0;
}

.frontlist_container:nth-of-type(even) .container_box.anc{
	margin-right: 0;
	margin-left: auto;
}

.frontlist_title{
	color: var(--HighLight);
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 20px;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.frontlist_title .frontlist_title_l{
font-family: "Shippori Mincho B1", serif;
font-size: 4rem;
font-weight: 500;
padding-bottom: 20px;
border-bottom: 1px solid var(--HighLight);
}

.frontlist_title .frontlist_title_s{
font-family: "Inter", sans-serif;
	font-size: 2rem;
font-weight: 300;
    letter-spacing: 0.1em;
}
.front_rt {
    font-family: "Shippori Mincho B1", serif;
    background: rgba(255, 56, 60,0.8);
    padding: 16px;
    color: var(--Blue03);
    font-size: 1.6rem;
    text-align: center;
    line-height: 140%;
}

.frontlist_box{
	display: flex;
	flex-direction: column;
	gap: 22px;
	color: #fff;
}

.frontlist_links{
	color: #fff;
	display: inline-block;
	padding-left: 30px;
	font-size: 2rem;
	position: relative;
}

.frontlist_links::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background: url(./images/common/txtlinks_icon.svg) no-repeat;
    position: absolute;
    top: 2px;
    left: 0;
    transition: .3s;
}

.frontlist_links[target="_blank"]::after {
    content: "";
    display: block;
    width: 16px;
    height: 12px;
    background: url(./images/common/icon_blank.svg) no-repeat;
    position: absolute;
	bottom: 2px;
    right: -25px;
    transition: .3s;
}

.frontlist_links:hover{
	transform: translateX(5px);
}

.frontlist_container .theme_cta_s{
	max-width: 250px;
}

/* 学校概要 */
.container_box.about{
	display: flex;
	flex-direction: column;
	gap: 30px;
	padding: 80px 0;
}

.container_box.about::after{
	content: "";
    width: 100%;
    height: 100%;
    background: url(./images/front/about_bg.webp) no-repeat;
    background-size: cover;
    background-position: top center;
    display: block;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
}

.about_title{
	font-family: "Shippori Mincho B1", serif;
	color: var(--PrimaryColor);
	font-size: 2.5rem;
}

.about_links{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}

.about_links .about_links_item .about_links_txt{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 135px;
	height: 135px;
	color: var(--HighLight);
	font-family: "Shippori Mincho B1", serif;
	font-weight: 300;
	font-size: 1.6rem;
	transition: .3s ease;
}

.about_links .about_links_item:nth-of-type(1) .about_links_txt{
	background:linear-gradient(rgba(0, 0, 0, .65),  rgba(0, 0, 0, .65)), url(./images/front/about_bnr001.webp);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center center;
}

.about_links .about_links_item:nth-of-type(2) .about_links_txt{
	background:linear-gradient(rgba(0, 0, 0, .65),  rgba(0, 0, 0, .65)), url(./images/front/about_bnr002.webp);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center center;
}

.about_links .about_links_item:nth-of-type(3) .about_links_txt{
	background:linear-gradient(rgba(0, 0, 0, .65),  rgba(0, 0, 0, .65)), url(./images/front/about_bnr003.webp);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center center;
}

.about_links .about_links_item:nth-of-type(4) .about_links_txt{
	background:linear-gradient(rgba(0, 0, 0, .65),  rgba(0, 0, 0, .65)), url(./images/front/about_bnr004.webp);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center center;
}

.about_links .about_links_item:nth-of-type(5) .about_links_txt{
	background:linear-gradient(rgba(0, 0, 0, .65),  rgba(0, 0, 0, .65)), url(./images/front/about_bnr005.webp);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center center;
}

.about_links .about_links_item:nth-of-type(6) .about_links_txt{
	background:linear-gradient(rgba(0, 0, 0, .65),  rgba(0, 0, 0, .65)), url(./images/front/about_bnr006.webp);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center center;
}

.about_links .about_links_item .about_links_txt:hover{
	background-size: 140%;
	transition: .3s ease;
}

/* ------- 固定のお知らせ -------- */
.swiper-fixed-news {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 30;
    max-width: 400px;
    min-height: 200px;
    max-height: 200px;
    width: 100%;
    text-align: right;
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.swiper-fixed-news::before {
    content: "";
    display: block;
    width: 350px;
    height: 200px;
    background: rgba(0,5,98,0.7);
    mix-blend-mode: multiply;
    clip-path: polygon(0 0, 100% 100%, 100% 0);
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
}

/* .swiper-fixed-news::after {
    content: "";
    width: 28px;
    height: 7px;
    display: block;
    background: url(./images/common/cta_arrow.svg) no-repeat;
    background-size: 100%;
    position: absolute;
    bottom: 60px;
    right: 30px;
    transform: translate(0, -50%);
    transition: .3s;
} */

.fixed-news_links{
    color: var(--HighLight);
    font-size: 2.6rem;
    font-family: 'Shippori Mincho B1', 'serif';
}

/* ーーーーーーーーーーーーーーーーーーーーーーー

清和の学び

ーーーーーーーーーーーーーーーーーーーーーーー */


.philosophy_main_phrase{
	font-family: "Shippori Mincho B1", serif;
    font-size: 3.2rem;
    font-weight: 300;
    width: fit-content;
    margin: 0 auto;
	display: inline;
    background: linear-gradient(180deg, rgba(255, 255, 255, 1) 70%, rgba(198, 220, 255, 1) 70%);
}

.phraze_list {
    display: flex;
    max-width: 1000px;
    width: 100%;
    margin: 40px auto 0;
    background: var(--Blue03);
    padding: 40px;
    gap: 40px;
    justify-content: center;
    border-radius: 12px;
}
.phraze_list .phraze_list_item{
	width: calc(100% / 2.8);
	text-align: center;
}

.phraze_list_title{
	font-weight: 800;
    font-size: 4rem;
    color: var(--Blue02);
    padding-bottom: 20px;
    font-family: "Shippori Mincho B1", serif;
    font-weight: 500;
}

.phraze_list_detail{
	font-size: 1.6rem;
	line-height: 160%;
}

.phraze_list_detail dt{
	color: var(--Blue02);
}

.phraze_list_detail dd{
	font-size: 1.3rem;
	font-weight: 400;
}

#philosophy .note,#philosophy .note_swipe{
    display: block;
    width: fit-content;
    margin: auto;
}

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

学科一覧

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

.course_title_wrap {
    max-width: 30vw;
    width: 100%;
    height: 95vh;
    position: sticky;
    top: 76px;
    inset-block-start: 76px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
	gap: 40px;
    clip-path: inset(0);
}

.course_name{
	color: var(--HighLight);
	font-family: "Shippori Mincho B1", serif;
	font-size: 6rem;
	    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
}

.course_subcopy{
	color: var(--HighLight);
	font-size: 1.6rem;
	line-height: 160%;
}

.container_box.course .course_title_wrap::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
    position: fixed;
	background-size: cover;
	background-position: center center;
	z-index: -1;
    top: 0;
}

.container_box.course:nth-of-type(1) .course_title_wrap::after{
	background-image: url(./images/course/bg_tokubetsu.webp);
}

.container_box.course:nth-of-type(2) .course_title_wrap::after{
	background-image: url(./images/course/bg_tankyu.webp);
}


.container_box.course:nth-of-type(3) .course_title_wrap::after{
	background-image: url(./images/course/bg_bunkakyoyo.webp);
}


.container_box.course:nth-of-type(4) .course_title_wrap::after{
	background-image: url(./images/course/bg_jyouhou.webp);
}

.course_container_wrap{
	max-width: 65vw;
	width: 100%;
	padding: 80px;
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: stretch;
	gap: 80px;
}

.course_content_wrapper {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.course_flow_fig{
	max-width: 500px;
	width: 100%;
	margin: 0 auto;
}

.course_point_list{
	display: flex;
	gap: 20px;
	justify-content: center;
}

.course_point_list li{
	width: calc( 100% / 2);
}

.course_point_fig {
    max-width: 600px;
    width: 100%;
    margin: 0 auto;
    position: relative;
}

.course_point_fig figcaption{
	position: absolute;
	color: var(--HighLight);
	font-size: 1.6rem;
	padding: 8px;
	bottom: 0;
	left: 0;
}

.message_ttl{
	color: var(--tokubetsuPrimary);
    font-size: 1.6rem;
    padding: 12px 0;
    border-bottom: 1px solid var(--tokubetsuPrimary);
    margin-bottom: 12px;
}

/* 特別進学科 */
.contents-ttl.course-ts{
	color: var(--tokubetsuPrimary);
}

.contents-ttl.course-ts::after {
	background: linear-gradient(90deg, var(--tokubetsuSecondary) 50%, var(--GrayLighter) 50%);
}

.contents-ttl_line.course-ts {
	color: var(--tokubetsuPrimary);
    border-left: 4px solid var(--tokubetsuPrimary);
    border-bottom: 1px solid var(--tokubetsuPrimary);
}

.common_list.course-ts .common_list_item::before{
    background: var(--tokubetsuPrimary);
}


.course_point_fig figcaption.course-ts{
    background: var(--tokubetsuPrimary);
}

/* 探究文理科 */
.contents-ttl.course-tb{
	color: var(--tankyuPrimary);
}

.contents-ttl.course-tb::after {
	background: linear-gradient(90deg, var(--tankyuSecondary) 50%, var(--GrayLighter) 50%);
}

.contents-ttl_line.course-tb {
	color: var(--tankyuPrimary);
    border-left: 4px solid var(--tankyuPrimary);
    border-bottom: 1px solid var(--tankyuPrimary);
}

.common_list.course-tb .common_list_item::before{
    background: var(--tankyuPrimary);
}

.course_point_fig figcaption.course-tb{
    background: var(--tankyuPrimary);
}

.message_ttl.course-tb{
	color: var(--tankyuPrimary);
    border-bottom: 1px solid var(--tankyuPrimary);
}


/* 文化教養科 */
.contents-ttl.course-bk{
	color: var(--bunkakyoyoPrimary);
}

.contents-ttl.course-bk::after {
	background: linear-gradient(90deg, var(--bunkakyoyoSecondary) 50%, var(--GrayLighter) 50%);
}

.contents-ttl_line.course-bk {
	color: var(--bunkakyoyoPrimary);
    border-left: 4px solid var(--bunkakyoyoPrimary);
    border-bottom: 1px solid var(--bunkakyoyoPrimary);
}

.common_list.course-bk .common_list_item::before{
    background: var(--bunkakyoyoPrimary);
}

.course_point_fig figcaption.course-bk{
    background: var(--bunkakyoyoPrimary);
}

.message_ttl.course-bk{
	color: var(--bunkakyoyoPrimary);
    border-bottom: 1px solid var(--bunkakyoyoPrimary);
}

/* 情報ビジネス科 */
.contents-ttl.course-jb{
	color: var(--jyouhouPrimary);
}

.contents-ttl.course-jb::after {
	background: linear-gradient(90deg, var(--jyouhouSecondary) 50%, var(--GrayLighter) 50%);
}

.contents-ttl_line.course-jb {
	color: var(--jyouhouPrimary);
    border-left: 4px solid var(--jyouhouPrimary);
    border-bottom: 1px solid var(--jyouhouPrimary);
}

.common_list.course-jb .common_list_item::before{
    background: var(--jyouhouPrimary);
}

.course_point_fig figcaption.course-jb{
    background: var(--jyouhouPrimary);
}

.message_ttl.course-jb{
	color: var(--jyouhouPrimary);
    border-bottom: 1px solid var(--jyouhouPrimary);
}
.common_list_title{
	color: var(--jyouhouPrimary);
	font-weight: 700;
	font-size: 1.8rem;
	margin-bottom: -20px;
}



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

学生生活

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

/* 制服紹介 */
.uniform_list {
    display: flex;
    justify-content: center;
    gap: 20px;
}

/* 清和生の1日 */
.student_flow {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 20px;
}

.student_flow_listbox {
  position: relative;
  display: flex;
  gap: 40px;
}

.student_flow_listbox::before {
  content: "";
  width: 100%;
  height: 16px;
  background: var(--GrayLighter);
  display: block;
  position: absolute;
  top: 1px;
  left: -6px;
  border-radius: 20px;
}

.student_flow_listbox > li {
  position: relative;
}

.student_flow_listbox > li dl {
  padding-top: 70px;
  position: relative;
}

.student_flow_listbox > li dl::before,
.student_flow_listbox > li dl::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
}

.student_flow_listbox > li dl::before {
  width: 10px;
  height: 10px;
  margin-top:4px;
  background: var(--TextLinks);
  border-radius: 50%;
  left: 0px;
}

.student_flow_listbox > li dl::after {
  width: 1px;
  height: 50px;
  border-right: 1px solid var(--GrayDark);
  position: absolute;
  left: 5px;
  top: 13px;
}

.student_flow_time{
	font-size: 1.4rem;
	font-family: 'Inter' , sans-serif;
	color: var(--GrayDark);
	font-weight: 500;
}

.student_flow_ttl{
	font-size: 1.6rem;
	color: var(--Blue02);
	font-weight: 500;
}


/* 年間行事 */
.container_box.annual{
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	justify-content: space-between;
}

.annual_calender_list {
    display: flex;
    gap: 12px;
    width: 31%;
}

.annual_calender_ttl {
    max-width: 70px;
    width: 100%;
    height: 70px;
    background: var(--Blue02);
    color: var(--HighLight);
    text-align: center;
    align-items: center;
    vertical-align: middle;
    display: flex;
	flex-direction: column;
    justify-content: center;
    font-family: 'Inter', sans-serif;
	font-weight: 300;
	position: relative;
    border-radius: 50%;
}

.annual_calender_ttl::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
    border-radius: 50%;
	border-right: 1px solid var(--Blue02);
	border-bottom: 1px solid var(--Blue02);
	position: absolute;
	right: -3px;
	bottom: -3px;
}

.annual_calender_ttl strong{
    font-size: 2.4rem;
    font-weight: 500;
}

.cta_subtitle{
	font-size: 2rem;
	color: var(--PrimaryColor);
    position: relative;
    display: block;
    width: fit-content;
    margin: auto;
}

.cta_subtitle::before,
.cta_subtitle::after{
	content: "";
	display: block;
    height: 30px;
	width: 1px;
    background-color: var(--Blue01);
	position: absolute;
	bottom: -5px;
}

.cta_subtitle::before {
    transform: rotate(-25deg);
	left: -20px;
}

.cta_subtitle::after {
    transform: rotate(25deg);
	right: -20px;
}

/* スライドの動き等速 */
.EventsSwiper .swiper-wrapper {
  transition-timing-function: linear;
}
/* 画像のサイズ調整 */
.EventsSwiper .swiper-slide img {
  height: auto;
  width: 100%;
}

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

お知らせ

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

#news .news_container_item {
    padding: 16px 0;
    border-bottom: none;
}

#news .news_title{
	font-size: 1.6rem;
    gap: 20px;

}

#news .news_title .news_date{
	font-size: 1.6rem;
    width: 76px;
}

#news .news_title .news_category{
	font-size: 1.4rem;
	padding: 6px 0;
}

.news_category_listbox{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    font-size: 1.6rem;
    font-weight: 400;
    gap: 32px;
}

.news_category_listitem{
    color: var(--PrimaryColor);
    border: 1px solid var(--PrimaryColor);
    background: var(--HighLight);
    padding: 16px 20px;
    text-align: center;
    transition: .3s ease;
    cursor: pointer;
    display: block;
}

.news_category_listitem.active,
.news_category_listitem:hover{
    color: var(--HighLight);
    background: var(--PrimaryColor);
    transition: .3s ease;
}

.h_title_column {
    font-size: 3.2rem;
    font-family: "Shippori Mincho B1", serif;
    height: 60px;
    padding: 0 32px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    margin: 0 auto;
    position: relative;
}

.h_title_column::before,
.h_title_column::after{
    content: "";
    display: block;
    width: 8px;
    height: 100%;
    border: 1px solid var(--Blue01);
    position: absolute;
}

.h_title_column::before{
    border-right: none;
    left: 0;
}

.h_title_column::after{
    border-left: none;
    right: 0;
}

.h_column_txt{
    font-size: 1.6rem;
    line-height: 160%;
    font-weight: 300;
}

.h_column_txt p{
    text-indent: 1em;
}


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

入試情報

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

#entrance_web .frontlist_links {
    color: var(--TextLinks);
    text-decoration: underline;
    font-size: 1.6rem;
    padding-left: 20px;
}

#entrance_web .frontlist_links::before{
    width: 15px;
    height: 15px;
    background: url(./images/common/textlinks_arrow.svg) no-repeat;
    top: 50%;
    background-size: contain;
    transform: translateY(-50%);
}

#entrance_web .frontlist_links::after{
    width: 15px;
    height: 15px;
    background: url(./images/common/icon_blank_c.svg)no-repeat;
    top: 50%;
    background-size: contain;
    transform: translateY(-45%);
}

.numberlist_ttl{
    color: var(--PrimaryColor);
    font-weight: 600;
    font-size: 1.6rem;

}
#entrance_web .header_list_blank a{
    padding: 20px 0;
    font-size: 1.8rem;
}

#entrance_web .header_list_blank a:nth-of-type(1){
    background: var(--Blue02);
    color: var(--HighLight);
}

#entrance_web .header_list_blank a:nth-of-type(2){
    background: var(--Accent01);
    color: var(--TextColor);
}

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

デジタルパンフレット

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

.df-element[data-df-lightbox] {
    margin: 30px auto!important;
    width: 350px;
}

.request-flow {
    display: flex;
    justify-content: center;
    gap: 24px;
    font-size: 1.8rem;
    background: var(--GrayLighter);
    width: fit-content;
    margin: 0 auto;
    padding: 8px;
    border-radius: 40px;
}


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

資料請求

-------------------------------------*/
.request-flow li{
    color: var(--Blue02);
    border-radius: 40px;
    padding:16px 32px;
}

.request-flow li.active{
    color: var(--HighLight);
    background: var(--Blue02);
}

.course_content_wrapper.form_request{
    padding: 60px;
    background: var(--Blue03);
}

.common_form_item {
    display: flex;
    flex-direction: column;
    gap: 12px;
    font-size: 2rem;
    width: 100%;
}

.common_form_item dt{ 
    width: 100%;
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--PrimaryColor);
}

.common_form_item dt p{ 
    display: flex;
    align-items: center;
}

.common_form_item dt .must_item {
    background: var(--Accent02);
    color: var(--HighLight);
    padding: 4px 6px;
    margin-left: 8px;
    font-size: 1.4rem;
}

.common_form_item dt .free_item {
    background: var(--GrayDark);
    color: var(--HighLight);
    padding: 4px 6px;
    margin-left: 8px;
    font-size: 1.4rem;
}

.common_form_item dd input,
.common_form_item dd select {
    background: var(--HighLight);
    padding: 12px;
    width: 100%;
}
.common_form_item.column__02{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: row;
}

.common_form_item .contact-code{
    width: 48%;
}

.common_form_item .common_form_detail{
    background: var(--Blue01);
    padding: 16px;
    min-height: 55px;
}

.common_form_item dd textarea{
    background: var(--HighLight);
    width: 100%;
    padding: 16px;
}

.common_form_item dd input[type="radio"] {
    width: fit-content;
    vertical-align: baseline;
}

@media screen and (min-width: 768px) {
    #entrance_web .txt-c{
        text-align: left;
    }
}

/* -----------------------------------
	tablet
----------------------------------- */
@media screen and (max-width: 1279px) {

	/* この下に記述 */
}

/* -----------------------------------
  sp
----------------------------------- */
@media screen and (max-width: 767px) {
	/* この下に記述 */
.news_containerbox {
	flex-direction: column;
	gap: 6vw;
}

    .container_box.news {
        background: var(--HighLight);
        border-top: 3px solid var(--Gold01);
        box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    }

.news_title {
    flex-wrap: wrap;
}
.container_ctaList {
    flex-direction: column;
    align-items: center;
}

/* --------- スライドバナー --------- */
.frontSwiper {
    padding: 0;
}
.swiper-button-prev,
.swiper-button-next{
    width: 30px;
    height: 50px;
	background: rgba(255,255,255,0.8);
}

.swiper-button-prev {
    left: 0;
}

.swiper-button-next {
    right: 0;
}

.swiper-button-next:after, 
.swiper-button-prev:after {
    font-size: 1.6rem;
	color: var(--PrimaryColor);
}
.swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -5vw;
	padding-left: 5vw;
	text-align: left;
}
.swiper-pagination-bullet {
    width: 20px;
    height: 3px;
    margin: 3px !important;
}



/* ------- 固定のお知らせ -------- */
.swiper-fixed-news {
    max-width: 50vw;
    min-height: 25vw;
    max-height: 25vw;
    padding: 2.5vw;
    font-size: 1.6rem;
}

.swiper-fixed-news::before {
    width: 50vw;
    height: 25vw;
}

.swiper-fixed-news::after {
    bottom: 7vw;
    right: 3vw;
}
.fixed-news_links {
    font-size: 1.6rem;
            margin-top: -2px;
}

/* ------ front ------ */
.frontlist_title .frontlist_title_l {
    font-size: 2.5rem;
    padding-bottom: 1.2rem;
}
.frontlist_title .frontlist_title_s {
    font-size: 1rem;
}
.frontlist_container {
    padding: 6.5vw 4vw;
}
.frontlist_container .container_box.anc {
    max-width: 40vw;
    padding: 0;
}

.front_rt {
    padding: 1rem;
    font-size: 1.2rem;
}

.frontlist_links {
    color: #fff;
    display: inline-block;
    padding-left: 2rem;
    font-size: 1.2rem;
    position: relative;
}
.frontlist_links::before {
    width: 12px;
    height: 12px;
    background-size: cover;
    top: 1px;
}

/* 学校概要 */
.container_box.about {
    gap: 8vw;
    padding: 12vw 0;
    margin: 0 auto;
	z-index: 1;
    position: relative;
}
.container_box.about::after {
    width: 100vw;
    height: 185px;
    top: auto;
    bottom: 0;
    left: 0;
}
.about_links .about_links_item .about_links_txt {
    width: 28vw;
    height: 28vw;
    font-size: 1.3rem;
}



/* ーーーーーーーーーーーーーーーーーーーーーーー

清和の学び

ーーーーーーーーーーーーーーーーーーーーーーー */


.philosophy_main_phrase{
	font-family: "Shippori Mincho B1", serif;
    font-size: 3.2rem;
    font-weight: 300;
    width: fit-content;
    margin: 0 auto;
	display: inline;
    background: linear-gradient(180deg, rgba(255, 255, 255, 1) 70%, rgba(198, 220, 255, 1) 70%);
}

.phraze_list {
    max-width: 100%;
    margin: 20px auto 0;
    padding: 20px;
    gap: 20px;
	flex-direction: column;
}
.phraze_list .phraze_list_item{
	width: 100%;
	text-align: left;
	display: flex;
    align-items: stretch;
	gap: 20px;
}

.phraze_list_title{
    font-size: 3.7rem;
    padding-bottom: 0;
    padding-right: 20px;
	border-right: 1px solid var(--Blue01);
	vertical-align: middle;
	align-items: center;
    display: flex;
}

.phraze_list_detail{
	font-size: 1.3rem;
}



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

学科一覧

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

.course_title_wrap {
    max-width: 100%;
    height: auto;
    position: relative;
    top: 0;
    inset-block-start: 0;
	padding: 40px 0;
    gap: 20px;
}

.course_name{
	font-size: 4rem;
	-ms-writing-mode: inherit;
    writing-mode: inherit;
}

.course_subcopy{
	font-size: 1.4rem;
}

.course_container_wrap{
	max-width: 90%;
	width: 100%;
	padding: 0;
    justify-content: center;
	gap: 40px;
	margin: 40px auto;
}

.course_flow_fig{
	max-width: 100%;
}

.course_point_list{
	flex-direction: column;
	gap: 40px;
}

.course_point_list li{
	width: 100%;
}

.course_point_fig {
    max-width: 100%;
}

.curriculum-swipe-true{
    overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.curriculum-swipe-true img{
width: auto;
    max-height: 320px;
    object-fit: fill;
}


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

学生生活

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

/* 制服紹介 */
.uniform_list {
	flex-direction: column;
}

/* 清和生の1日 */
.student_flow {
	flex-direction: column;
}

.student_flow_listbox {
	flex-direction: column;
	gap: 16px;
}

.student_flow_listbox::before {
  width: 16px;
  height: 100%;
  margin-left: -129px;
  top: 0;
  left: 120px;
}

.student_flow_listbox > li dl {
  padding-left: 70px;
  padding-top: 0;
}

.student_flow_listbox > li dl::before {
  margin-top:4px;
  left:-6px;
}

.student_flow_listbox > li dl::after {
  width: 60px;
  height: 1px;
  border-bottom: 1px solid var(--GrayDark);
    border-right:none;
  left: 4px;
  top: 8px;
}


/* 年間行事 */
.annual_calender_list{
	gap: 40px;
	width: 100%;
}

.cta_subtitle::before,
.cta_subtitle::after{
    height: 50px;
}

.cta_subtitle::before {
	left: -30px;
}

.cta_subtitle::after {
	right: -30px;
}

.annual_calender_ttl {
    border-radius: 0;
}

.annual_calender_ttl::after{
    border-radius: 0;
}


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

入試情報

--------------------------------------*/
#entrance_web .box10{
    max-width: 100%;
}



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

お知らせ

--------------------------------------*/
#news .container_box.anc,
#news_detail .container_box.anc {
    padding: 0;
}
.news_category_listbox {
    font-size: 1.3rem;
    gap: 12px;
}
.news_category_listitem {
    padding: 12px 16px;
}
.category_list{
    position: relative;
    top: 0;
    transform: translateY(0);
}

.category{
    padding: 4px 8px;
    font-size: 1.2rem;
}
.text-area h1.wp-block-heading {
    font-size: 2.4rem;
    padding-bottom: 8px;
}
.text-area h2.wp-block-heading {
    font-size: 2rem;
    padding: 4px 8px;
}
.text-area h3.wp-block-heading {
    font-size: 1.8rem;
}
.text-area h4.wp-block-heading {
    font-size: 1.7rem;
}
.text-area h4.wp-block-heading::before {
    width: 90vw;
}
.text-area h5.wp-block-heading {
    font-size: 1.4rem;
    height: 30px;
    padding: 0 16px;
}
.text-area h6.wp-block-heading {
    font-size: 1.4rem;
}

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

資料請求

-------------------------------------*/
#contact .box10,
#request .box10{
    max-width: 100%;
}

.request-flow {
    gap: 3px;
    font-size: 1.2rem;
    padding: 8px;
}

.request-flow li{
    padding: 8px 12px;
}
.course_content_wrapper.form_request {
    padding: 20px;
}
.common_form_item {
    font-size: 1.6rem;
}

.common_form_item dt{
    font-size: 1.6rem;
}
.common_form_item dt .must_item {
    font-size: 1.3rem;
}

.common_form_item dt .free_item {
    font-size: 1.3rem;
}
.common_form_item dd input[type="radio"] {
    width: fit-content;
    font-size: 1.3rem;
    padding: 0;
}
/* -----------------------------------

デジタルパンフレット

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

.df-element[data-df-lightbox] {
    margin: 0px auto !important;
    width: 70vw;
}

}