@charset "utf-8";

/*
 style.css
*/
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;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}

html {
	line-height: 1;
	/* 選択禁止 */
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
}

ol, ul {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}

a img {
	border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
	display: block;
}

/* -----------------------------------------------
= base
----------------------------------------------- */
body {
	position: relative;
	color: #313131;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	font-weight: 500;
}

body.ie {
	font-family: "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

img {
	max-width: 100%;
	vertical-align: top;
	/* 画像の保存禁止 */
	pointer-events: none;
}

a {
	color: #003c7e;
	text-decoration: none;
}

button {
	margin: 0;
	padding: 0;
	background: transparent;
	border: none;
	appearance: none;
	cursor: pointer;
}

input,
select,
textarea {
	font: inherit;
}

h2, h4, h5 {
	color: #003b83;
}

/* = slick
----------------------------------------------- */
.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}

[dir='rtl'] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}

/* = image slide
----------------------------------------------- */
.img_carousel {
	position: relative;
}

.img_thumbnails {
	position: relative;
}

.img_slider_for .item {
	position: relative;
}

.img_slider_for .item img {
	width: 100%;
}

.img_slider_nav .slick-slide {
	position: relative;
}

.img_slider_nav .slick-slide::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(27, 27, 27, 0.5);
	z-index: 1;
}

.img_slider_nav .slick-slide.slick-current::after {
	display: none;
}

.img_slider_nav .item {
	outline: none;
	cursor: pointer;
}

.img_slider_nav .item img {
	width: 100%;
}

.img_slider_nav .slick-prev,
.img_slider_nav .slick-next {
	display: none !important;
	z-index: 1;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	html {
		font-size: 62.5%;
	}

	body {
		min-width: 1080px;
	}
    
    .customize-support {
        margin-top: -32px !important;
    }

	.sp {
		display: none;
	}

	a:hover {
		color: #0d679d;
		text-decoration: underline;
	}

	a[href^="tel:"] {
		color: #313131;
		text-decoration: none;
		pointer-events: none;
	}

	/* = image slide（複数）
    ----------------------------------------------- */
	.slide_clm02 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.slide_clm02 .item {
		width: 48.5%;
	}

	.slide_clm02 .img_slider_for,
	.slide_clm02 .img_slider_nav {
		width: 100% !important;
	}

}

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

	/* SP */
	html {
		font-size: calc(100vw / 75);
	}
    
    .customize-support {
        margin-top: -46px !important;
    }

	.pc {
		display: none;
	}

}

/* @media */

/* -----------------------------------------------
= haeder
----------------------------------------------- */
.header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	font-weight: bold;
}

.header .logo a {
	display: block;
	position: relative;
	color: #fff;
}

.header .logo img {
	position: absolute;
}

.header .logo .name {
	display: block;
}

.header .logo .name01 {
	display: inline-block;
	line-height: 1.3;
}

.header .logo .name02 {
	display: inline-block;
	line-height: 1.1;
	vertical-align: top;
}

.header .logo .name03 {
	display: block;
    white-space: nowrap;
}

.header .gnav_menu a {
	color: #fff;
}

.header .gnav_link a {
	color: #003c7e;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.header {
		height: 80px;
		font-weight: 700;
	}

	.header::before,
	.header::after {
		content: "";
		position: absolute;
		top: 0;
		z-index: -10;
		width: 50%;
		height: 100%;
	}

	.header::before {
		left: 0;
		background: #0b3a76;
	}

	.header::after {
		right: 0;
		background: #fff;
	}

	.header_inner {
		display: flex;
		align-items: center;
		position: relative;
		max-width: 1300px;
		margin: 0 auto;
	}

	.header_inner::before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -5;
		width: 100%;
		height: 100%;
		background: linear-gradient(to right, #15396f, #3171ca);
	}

	.header .logo a {
		width: 290px;
		height: 80px;
	}

	.header .logo a:hover {
		text-decoration: none;
	}

	.header .logo img {
		top: 15px;
		left: 20px;
		width: 50px;
	}

	.header .logo .name {
		padding: 16px 0 0 85px;
	}

	.header .logo .name01 {
		padding: 0 1em 5px 0;
		font-size: 1rem;
	}

	.header .logo .name02 {
		font-size: 2.4rem;
	}

	.header .logo .name03 {
		font-size: 1.1rem;
		letter-spacing: 0.22em;
	}

	.header .gnav {
		flex: 1;
		display: flex !important;
		align-items: center;
	}

	.header .gnav_menu {
		flex: 1;
		display: flex;
		margin-left: 3.8%;
	}

	.header .gnav_menu>li {
		position: relative;
		margin-right: 0.8em;
		font-size: 1.8rem;
	}

	.header .gnav_menu>li>a {
		display: block;
		position: relative;
		padding: 0 20px;
		line-height: 80px;
		white-space: nowrap;
	}

	.header .gnav_menu>li>a:hover {
		text-decoration: none;
	}

	.header .gnav_menu>li>a::before,
	.header .gnav_menu>li>a::after {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 10px;
		height: 13px;
	}

	.header .gnav_menu>li>a::before,
	.header .gnav_menu>li>a::after {
		margin-top: -7px;
		transform: rotate(90deg);
	}

	.header .gnav_menu>li>a::before {
		background: url(../img/shared/icon_link01_white.svg) no-repeat 50% 0 / 10px 13px;
	}

	.header .gnav_menu>li>a::after {
		background: url(../img/shared/icon_link01_white_hover.svg) no-repeat 50% 0 / 10px 13px;
	}

	.header .gnav_menu>li>a::before {
		display: block;
	}

	.header .gnav_menu>li>a:hover::before {
		display: none;
	}

	.header .gnav_menu>li>a::after {
		display: none;
	}

	.header .gnav_menu>li>a:hover::after {
		display: block;
	}

	.header .gnav_menu>li>ul {
		display: none;
	}

	.header .gnav_menu>li:hover>ul {
		display: block;
	}

	.header .gnav_menu>li>ul {
		position: absolute;
		top: 80px;
		left: 0;
		z-index: 20;
		width: 240px;
		padding: 16px 16px 16px 25px;
		background: rgba(2, 87, 190, 0.7);
	}

	.header .gnav_menu>li>ul>li {
		font-size: 1.6rem;
		line-height: 1.4;
	}

	.header .gnav_menu>li>ul>li>a {
		display: block;
		position: relative;
		padding: 8px 0 8px 20px;
	}

	.header .gnav_menu>li>ul>li>a:hover {
		text-decoration: none;
	}

	.header .gnav_menu>li>ul>li>a::before,
	.header .gnav_menu>li>ul>li>a::after {
		content: "";
		position: absolute;
		top: 10px;
		left: 0;
		width: 10px;
		height: 13px;
	}

	.header .gnav_menu>li>ul>li>a::before {
		background: url(../img/shared/icon_link01_white.svg) no-repeat 50% 0 / 10px 13px;
	}

	.header .gnav_menu>li>ul>li>a::after {
		background: url(../img/shared/icon_link01_white_hover.svg) no-repeat 50% 0 / 10px 13px;
	}

	.header .gnav_menu>li>ul>li>a::before {
		display: block;
	}

	.header .gnav_menu>li>ul>li>a:hover::before {
		display: none;
	}

	.header .gnav_menu>li>ul>li>a::after {
		display: none;
	}

	.header .gnav_menu>li>ul>li>a:hover::after {
		display: block;
	}

    .header .gnav_menu li .gnav_close a:hover::after {
        content: none;
    }

	.header .gnav_menu>li>ul>li>ul {
		margin: 0 0 0 22px;
	}

	.header .gnav_menu>li>ul>li>ul>li {
		margin: 0 0 10px;
		font-size: 1.3rem;
		line-height: 1.4;
	}

	.header .gnav_menu>li>ul>li>ul>li>a:hover {
		color: rgba(255, 255, 255, 0.8);
	}

    .header .gnav_menu li .gnav_close {
        position: relative;
        text-align: center;
    }

    .header .gnav_menu li .gnav_close::after {
        content: "×";
        display: block;
        position: absolute;
        top: 11px;
        left: 30%;
        color: #fff;
        font-size: 1.6rem;
    }

    .header .gnav_menu li .gnav_close a {
        margin-top: 10px;
        padding: 10px 0 0 0;
        border-top: 1px solid #1f5697;
        cursor: pointer;
    }
    
    .header .gnav_menu li .gnav_close a::before {
        content: none;
    }

	.header .gnav_link {
		order: 2;
		position: relative;
		width: 315px;
		height: 80px;
	}

	.header .gnav_link::before {
		content: "";
		position: absolute;
		top: 0;
		left: -33px;
		width: 90px;
		height: 80px;
		z-index: -2;
		background: url(../img/shared/header_bg01.png) no-repeat 0 0 / auto 100%;
	}

	.header .gnav_link::after {
		content: "";
		position: absolute;
		top: -1px;
		right: -1px;
		z-index: -2;
		width: calc(100% - 50px);
		height: 81px;
		background: #fff;
	}

	.header .gnav_link ul {
		display: flex;
		padding: 10px 0 10px 15px;
	}

	.header .gnav_link li {
		width: 33.33%;
		font-size: 1.2rem;
		text-align: center;
	}

	.header .gnav_link li+li {
		border-left: 1px solid #e5e5e5;
	}

	.header .gnav_link li a {
		display: block;
		position: relative;
	}

	.header .gnav_link li a span.pc {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		text-align: center;
	}

	.header .gnav_link li a span img {
		display: block;
		position: absolute;
		left: 50%;
	}

	.header .gnav_link li:nth-child(1) a span img {
		top: 0;
		width: 33px;
		margin-left: -16px;
	}

	.header .gnav_link li:nth-child(2) a span img {
		top: 4px;
		width: 33px;
		margin-left: -16px;
	}

	.header .gnav_link li:nth-child(3) a span img {
		top: 4px;
		width: 26px;
		margin-left: -13px;
	}

	.header .gnav_link li a span img.on {
		z-index: -10;
	}

	.header .gnav_link li a:hover {
		text-decoration: none;
	}

	.header .gnav_link li a:hover span img.off {
		z-index: -10;
	}

	.header .gnav_link li a:hover span img.on {
		z-index: 10;
	}

	.header .gnav_link li a span+span {
		display: block;
		padding: 45px 0 0;
	}

}

/* @media */
@media print, screen and (max-width: 1300px) and (min-width: 768px) {

	/* narrowPC */
	.header .gnav_link {
		width: 264px;
		width: 285px;
	}

	.header .gnav_menu {
		margin-left: 2vw;
	}

	.header .gnav_menu>li {
		margin-right: 0.2vw;
		font-size: 1.3846vw;
	}

	.header .gnav_menu>li>a {
		padding: 0 1.5vw 0 18px;
	}
}

/* @media */
@media print, screen and (max-width: 980px) and (min-width: 768px) {

	/* TABLET */
	.header .gnav_menu>li {
		font-size: 1.4rem;
	}
}

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

	/* SP */
	.header {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 200;
		width: 100%;
		height: 16vw;
	}

	.header::before,
	.header::after {
		content: "";
		position: absolute;
		top: 0;
		height: 100%;
	}

	.header::before {
		left: 0;
		z-index: -10;
		width: 100%;
		background: linear-gradient(to right, #15396f, #3171ca);
	}

	.header .logo a {
		width: 80vw;
		height: 16vw;
	}

	.header .logo img {
		top: 4vw;
		left: 4vw;
		width: 7.33vw;
	}

	.header .logo .name {
		padding: 4vw 0 0 15.5vw;
	}

	.header .logo .name01 {
		font-size: 1.32rem;
	}

	.header .logo .name02 {
		font-size: 3.168rem;
	}

	.header .logo .name03 {
		font-size: 1.452rem;
		letter-spacing: 0.2em;
	}

	.header .gnav_btn {
		position: absolute;
		top: 0;
		right: 0;
		width: 32vw;
		height: 16vw;
		color: #fff;
		text-align: center;
		overflow: hidden;
	}

	.header .gnav_btn::before {
		content: "";
		position: absolute;
		top: 4.864vw;
		right: 3.5306vw;
		height: 100%;
		z-index: -5;
		width: 22.6272vw;
		height: 22.6272vw;
		transform: rotate(45deg);
		background: linear-gradient(45deg, #0b3a76, #134b90 50%);
	}

	.header .gnav_btn::after {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		z-index: -3;
		width: 14.666vw;
		height: 16vw;
		background: linear-gradient(to right, #134b90, #1957a4);
	}

	.header .gnav_btn button,
	.header .gnav_btn span {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 14.666vw;
		height: 16vw;
	}

	.header .gnav_btn button::before,
	.header .gnav_btn button::after,
	.header .gnav_btn span::before {
		content: "";
		display: block;
		position: absolute;
		right: 3.6vw;
		width: 7.6vw;
		height: 0.4vw;
		background: #fff;
	}

	.header .gnav_btn button::before {
		top: 3.46666vw;
		transition: transform .2s;
	}

	.header .gnav_btn button::after {
		top: 8vw;
		transition: transform .2s;
	}

	.header .gnav_btn span::before {
		top: 5.8666vw;
	}

	.header .gnav_btn span::after {
		content: "MENU";
		display: block;
		position: absolute;
		right: 0;
		bottom: 3.3vw;
		width: 100%;
		color: #fff;
		font-size: 1.7rem;
		text-align: center;
	}

	.gnav_opened {
		overflow: hidden;
	}

	.gnav_opened .header .gnav_btn button::before {
		top: 5.8666vw;
		transform: rotate(45deg);
	}

	.gnav_opened .header .gnav_btn button::after {
		top: 5.8666vw;
		transform: rotate(-45deg);
	}

	.gnav_opened .header .gnav_btn span::before {
		display: none;
	}

	.gnav_opened .header .gnav_btn span::after {
		content: "閉じる";
		bottom: 3vw;
	}

	.header .gnav {
		display: none;
		position: fixed;
		top: 16vw;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 100;
		min-height: 100vh;
		background: #003c7e;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}

	.header .gnav_menu {
		padding: 0 0 30vw;
		border-top: 1px solid rgba(255, 255, 255, 0.25);
	}

	.header .gnav_menu a {
		display: block;
		line-height: 1.4;
	}

	.header .gnav_menu>li {
		border-bottom: 1px solid rgba(255, 255, 255, 0.25);
	}

	.header .gnav_menu>li>a {
		position: relative;
		padding: 3.6vw 10vw 3.6vw 4vw;
		font-size: 3.2rem;
	}

	.header .gnav_menu>li>a::after {
		content: "";
		position: absolute;
		top: 0;
		right: 5.33vw;
		width: 2.533vw;
		height: 100%;
		background: url(../img/shared/icon_link01_white.svg) no-repeat 50% 50% / 100% auto;
		transform: rotate(90deg);
		transition: transform .2s;
	}

	.header .gnav_menu>li>a.opened {
		background: #014a9e;
	}

	.header .gnav_menu>li>a.opened::after {
		transform: rotate(-90deg);
	}

	.header .gnav_menu>li>ul {
		display: none;
		padding: 4vw 0;
		background: #0257be;
	}

	.header .gnav_menu>li>ul>li>a {
		padding: 2.4vw 3vw 2.4vw 8vw;
		font-size: 2.8rem;
	}

	.header .gnav_menu>li>ul>li>ul>li>a {
		padding: 3.6vw 0 3.6vw 12vw;
		font-size: 2.4rem;
	}

	.header .gnav_link li a::before {
		content: "";
		position: absolute;
		top: 3vw;
		left: 50%;
		height: 13.333vw;
		background-repeat: no-repeat;
		background-position: 50% 50%;
		background-size: 100% auto;
	}

	.header .gnav_link li:nth-child(1) a::before {
		width: 12.133vw;
		margin-left: -6.05vw;
		background-image: url(../img/shared/icon_access_white.svg);
	}

	.header .gnav_link li:nth-child(2) a::before {
		width: 12vw;
		margin-left: -6vw;
		background-image: url(../img/shared/icon_contact_white.svg);
	}

	.header .gnav_link li:nth-child(3) a::before {
		width: 10vw;
		margin-left: -5vw;
		background-image: url(../img/shared/icon_emergency_white.svg);
	}

	.header .gnav_link {
		padding: 4vw 2.134vw;
	}

	.header .gnav_link ul {
		display: flex;
	}

	.header .gnav_link li {
		width: 33.33%;
		font-size: 2.6rem;
		text-align: center;
	}

	.header .gnav_link li a {
		display: block;
		position: relative;
		margin: 0 1.866vw;
		padding: 20vw 0 3vw;
		color: #fff;
		background: #014a9e;
	}
    .header .gnav_menu li .gnav_close.closed {
        display: none;
    }
}

/* @media */


@media print, screen and (min-width: 768px) {

	/* PC */
	.main {
		padding: 80px 0 110px;
	}
}

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

	/* SP */
	.main {
		padding-top: 16vw;
	}
}

/* @media */

/* -----------------------------------------------
= footer
----------------------------------------------- */
/* fnav --------------------------------- */
.footer {
	background: #e5ebf2;
}

.footer .fnav,
.footer .fnav a {
	color: #003b83;
}

.footer .address {
	background: #fff;
}

.footer .address .logo a {
	display: block;
	position: relative;
	color: #313131;
}

.footer .address .logo img {
	position: absolute;
	top: 0;
	left: 0;
}

.footer .address .logo .name {
	display: block;
}

.footer .address .logo .name01 {
	display: inline-block;
	line-height: 1.3;
}

.footer .address .logo .name02 {
	display: inline-block;
	line-height: 1.1;
	vertical-align: top;
}

.footer .address .logo .name03 {
	display: block;
}

.footer .address p a {
	display: inline-block;
	color: #003b83;
}

.footer small {
	display: block;
	text-align: center;
}

.footer .footer-sns {
	
}

.footer .footer-sns-list {
	display: flex;
}

.footer .footer-sns-list-item {
	transition: opacity 0.3s;
}

.footer .footer-sns-list-item:hover {
	opacity: 0.5;
}

.footer .footer-sns-list-item a {
	display: block;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.footer .fnav {
		position: relative;
		max-width: 1100px;
		margin: 0 auto;
	}

	.footer .fnav a:hover {
		text-decoration: underline;
	}

	.footer .fnav_menu {
		display: flex;
	}

	.footer .fnav_menu>li {
		width: 20%;
		padding: 28px 16px 150px;
		background: #d8e5f3;
		font-size: 2rem;
		line-height: 1.4;
	}

	.footer .fnav_menu>li:nth-child(2n) {
		background: #eef4fa;
	}
    
    .footer .fnav_menu>li>ul>.gnav_close {
        display: none;
    }

	.footer .fnav_menu>li>a {
		position: relative;
		padding-left: 20px;
		font-weight: 700;
	}

	.footer .fnav_menu>li>a::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 10px;
		height: 13px;
		margin-top: -8px;
		background: url(../img/shared/icon_link01_blue.svg) no-repeat 50% 0 / 10px 13px;
	}

	.footer .fnav_menu>li>ul {
		display: block !important;
		margin: 20px 0 0 18px;
	}

	.footer .fnav_menu>li>ul>li {
		margin: 0 0 20px;
		padding-left: 1em;
		text-indent: -1em;
		font-size: 1.4rem;
		line-height: 1.4;
	}

	.footer .fnav_menu>li>ul>li::before {
		content: "・";
	}

	.footer .fnav_menu>li>ul>li>ul {
		margin: 8px 0 0 1.4rem;
	}

	.footer .fnav_menu>li>ul>li>ul>li {
		margin: 0 0 5px;
		font-size: 1.3rem;
	}

	.footer .fnav_menu>li>ul>li>ul>li::before {
		content: "・";
	}

	.footer .fnav_link {
		position: absolute;
		bottom: 60px;
		left: 0;
		width: 100%;
	}

	.footer .fnav_link ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 20px;
		padding: 17px 10px;
		background: #fff;
	}

	.footer .fnav_link ul li {
		margin: 5px 0;
		padding: 0 1em;
		border-left: 1px solid #446fa4;
		font-size: 1.4rem;
	}

	.footer .fnav_link ul li:last-child {
		border-right: 1px solid #446fa4;
	}

	.footer .address_inner {
		display: flex;
		justify-content: center;
		align-items: center;
		max-width: 1100px;
		margin: 0 auto;
		padding: 32px 20px;
	}

	.footer .address .logo a {
		width: 360px;
		height: 65px;
	}

	.footer .address .logo a:hover {
		text-decoration: none;
	}

	.footer .address .logo img {
		width: 61px;
	}

	.footer .address .logo .name {
		padding: 9px 0 0 85px;
		font-weight: 700;
	}

	.footer .address .logo .name01 {
		padding: 0 1em 5px 0;
		font-size: 1rem;
	}

	.footer .address .logo .name02 {
		font-size: 2.6rem;
	}

	.footer .address .logo .name03 {
		font-size: 1.2rem;
		letter-spacing: 0.195em;
	}

	.footer .address p {
		font-size: 1.4rem;
	}

	.footer .address p a {
		margin: 10px 0 0 3px;
		font-size: 2rem;
		font-weight: 700;
	}

	.footer small {
		padding: 28px 20px;
		font-size: 1.4rem;
	}
	
	.footer .footer-sns {
		margin-left: 80px;
	}
	
	.footer .footer-sns-list {
		gap: 20px;
	}
	
	.footer .footer-sns-list-item {
		width: 42px;
	}
}

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

	/* SP */
	.footer .fnav_menu a {
		display: block;
		line-height: 1.4;
	}

	.footer .fnav_menu>li {
		background: #d8e5f3;
	}

	.footer .fnav_menu>li:nth-child(2n) {
		background: #eef4fa;
	}
	
	.footer .footer-sns {
		margin-top: 8vw;
	}
	
	.footer .footer-sns-list {
		justify-content: center;
		gap: 10vw;
	}
	.footer .footer-sns-list-item {
		width: 12vw;
	}

	.footer .fnav_menu>li>a {
		position: relative;
		padding: 3.6vw 10vw 3.6vw 4vw;
		font-size: 3.2rem;
	}

	.footer .fnav_menu>li>a::after {
		content: "";
		position: absolute;
		top: 0;
		right: 5.33vw;
		width: 2.533vw;
		height: 100%;
		background: url(../img/shared/icon_link01_blue.svg) no-repeat 50% 50% / 100% auto;
		transform: rotate(90deg);
		transition: transform .2s;
	}

	.footer .fnav_menu>li>a.opened::after {
		transform: rotate(-90deg);
	}

	.footer .fnav_menu>li>ul {
		display: none;
		padding: 4vw 0;
		background: #e5ebf2;
	}

	.footer .fnav_menu>li>ul>li>a {
		padding: 2.4vw 3vw 2.4vw 8vw;
		font-size: 2.8rem;
	}

	.footer .fnav_menu>li>ul>li>ul>li>a {
		padding: 3.6vw 0 3.6vw 12vw;
		font-size: 2.4rem;
	}

	.footer .fnav_link ul {
		display: flex;
		flex-wrap: wrap;
		background: #fff;
	}

	.footer .fnav_link li {
		width: 50%;
		border-bottom: 1px solid #ced9e6;
		font-size: 2.6rem;
		line-height: 1.53;
	}

	.footer .fnav_link li a {
		display: block;
		padding: 4vw 4.66vw;
	}

	.footer .fnav_link li:nth-child(2n-1) a {
		border-right: 1px solid #ced9e6;
	}

	.footer .address {
		padding: 8vw 0;
	}

	.footer .address .logo a {
		display: table;
		margin: 0 auto 5vw;
		padding: 0 0 2vw;
	}

	.footer .address .logo img {
		width: 12.4vw;
	}

	.footer .address .logo .name {
		padding: 2vw 0 0 18vw;
		font-weight: bold;
	}

	.footer .address .logo .name01 {
		padding: .5vw 1em 2vw 0;
		font-size: 1.523rem;
	}

	.footer .address .logo .name02 {
		font-size: 3.96rem;
	}

	.footer .address .logo .name03 {
		font-size: 1.828rem;
		letter-spacing: 0.16em;
	}

	.footer .address p {
		font-size: 2.6rem;
		text-align: center;
	}

	.footer .address p a {
		margin: 4.5vw 0 0;
		font-size: 4rem;
		font-weight: bold;
	}

	.footer small {
		padding: 5.33vw 0;
		font-size: 1.8rem;
		font-weight: bold;
	}
}

/* @media */

/* pagetop --------------------------------- */
.pagetop {
	display: none;
	position: fixed;
	z-index: 10;
	background: #003b83;
	cursor: pointer;
	opacity: 0.7;
}

.pagetop::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/shared/icon_link01_white.svg) no-repeat 50% 50%;
	transform: rotate(-90deg);
}

.pagetop span {
	display: none;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.pagetop {
		right: 20px;
		bottom: 20px;
		width: 60px;
		height: 60px;
	}

	.pagetop::after {
		background-size: 17px 23px;
	}

	.pagetop:hover {
		opacity: 1;
	}
}

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

	/* SP */
	.pagetop {
		right: 2.66vw;
		bottom: 2.66vw;
		width: 10.6vw;
		height: 10.6vw;
	}

	.pagetop::after {
		background-size: 2.933vw auto;
	}
}

/* @media */

/* -----------------------------------------------
= parts
----------------------------------------------- */
/* page_ttl
 ---------------------------------------------- */
.page_ttl h1 {
	display: flex;
	align-items: center;
	color: #003b83;
	font-family: serif;
	line-height: 1.2;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.page_ttl {
		position: relative;
		background: url(../img/shared/page_ttl_bg_w1800.png) no-repeat 50% 50% / auto 100%;
	}

	.page_ttl::before,
	.page_ttl::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		z-index: -1;
		width: 50%;
		height: 100%;
	}

	.page_ttl::before {
		left: 0;
		background: #e9eff5;
	}

	.page_ttl::after {
		right: 0;
		background: #d1dde9;
	}

	.page_ttl h1 {
		max-width: 1100px;
		height: 150px;
		margin: 0 auto;
		padding: 0 20px;
		font-size: 4rem;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	}

	body.ie .page_ttl h1 {
		font-family: "MS P明朝", "MS PMincho", serif;
	}
}

/* @media */
@media print, screen and (max-width: 1300px) and (min-width: 768px) {

	/* TABLET */
	.page_ttl {
		background: url(../img/shared/page_ttl_bg_w1300.png) no-repeat 100% 50% / auto 100%;
	}
}

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

	/* SP */
	.page_ttl {
		background: url(../img/shared/page_ttl_bg_sp.png) no-repeat 100% 50% / cover #e9eff5;
	}

	.page_ttl h1 {
		min-height: 17.33vw;
		padding: 0 5vw;
		font-size: 4rem;
	}
}

/* @media */

/* page_main --------------------------------- */
.page_main .lead {
	color: #003b83;
	font-family: serif;
	text-align: center;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.page_main {
		position: relative;
		height: 450px;
		overflow: hidden;
	}

	.page_main::before,
	.page_main::after {
		content: "";
		display: block;
		position: absolute;
		right: 50%;
		border: 450px solid transparent;
	}

	.page_main::before {
		bottom: 0;
		margin-right: 298px;
		border-bottom-color: #dde6ef;
	}

	.page_main::after {
		top: 0;
		margin-right: -152px;
		border-top-color: #fff;
	}

	.page_main_inner {
		max-width: 1160px;
		margin: 0 auto;
		overflow: hidden;
	}

	.page_main {
		background: url(../img/course/english_main.jpg) no-repeat 50% 50%;
	}

	.page_main.english {
		background: url(../img/course/english_main_25.jpg) no-repeat 50% 50%;
	}

	.page_main.sam {
		background: url(../img/course/sam_main_25.jpg) no-repeat 50% 50%;
	}

	.page_main.las {
		background: url(../img/course/las_main_25.jpg) no-repeat 50% 50%;
	}

	.page_main .lead {
		position: relative;
		z-index: 1;
		float: left;
		width: 50%;
		padding: 40px 0 0;
		font-size: 2.6rem;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
		line-height: 1.92;
	}
}

/* @media */
@media print, screen and (max-width: 1300px) and (min-width: 768px) {

	/* TABLET */
	.page_main.english {
		background-position: 75% 50%;
	}

	.page_main.sam {
		background-position: 75% 50%;
	}

	.page_main.las {
		background-position: 75% 50%;
	}

	.page_main::before {
		right: 916px;
		margin-right: 0;
	}

	.page_main::after {
		right: 468px;
		margin-right: 0;
	}
}

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

	/* SP */
	.page_main_inner {
		position: relative;
		overflow: hidden;
	}

	.page_main_inner::before,
	.page_main_inner::after {
		content: "";
		display: block;
		position: absolute;
		border: 12.4vw solid transparent;
		border-bottom-color: #dde6ef;
	}

	.page_main_inner::before {
		top: -12.4vw;
		left: -12.4vw;
		transform: rotate(-45deg);
	}

	.page_main_inner::after {
		bottom: -12.4vw;
		right: -12.4vw;
		transform: rotate(135deg);
	}

	.page_main .lead {
		padding: 3.33vw;
		font-size: 2.8rem;
		line-height: 1.6;
	}
}

/* @media */






/* -----------------------------------------------
= contents
----------------------------------------------- */

/* breadcrumbs
--------------------------------- */
.breadcrumbs li {
	display: inline-block;
}

.breadcrumbs li {
	position: relative;
}

.breadcrumbs li::before,
.breadcrumbs li::after {
	content: "";
	display: block;
	position: absolute;
	height: 1px;
	background: #c9c9c9;
}

.breadcrumbs li:last-child::before,
.breadcrumbs li:last-child::after {
	display: none;
}

.breadcrumbs li a {
	display: inline-block;
	color: #003b83;
}

.breadcrumbs li::after {
	transform: rotate(30deg);
	transform-origin: 100% 100%;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.breadcrumbs {
		max-width: 1100px;
		margin: 0 auto 20px;
		padding: 20px;
		text-align: right;
	}

	.breadcrumbs li {
		margin-right: 16px;
		margin-bottom: 10px;
		padding-right: 27px;
		font-size: 1.3rem;
	}

	.breadcrumbs li:last-child {
		margin-right: 0;
		padding-right: 0;
	}

	.breadcrumbs li::before,
	.breadcrumbs li::after {
		top: 7px;
		right: 0;
	}

	.breadcrumbs li::before {
		width: 13px;
	}

	.breadcrumbs li::after {
		width: 8px;
	}

	.breadcrumbs li a:hover {
		text-decoration: underline;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.breadcrumbs {
		padding: 4vw 2.66vw 2vw;
	}

	.breadcrumbs li {
		margin-right: 2.6vw;
		margin-bottom: 2vw;
		padding-right: 4.9vw;
		font-size: 1.8rem;
	}

	.breadcrumbs li:last-child {
		margin-right: 0;
		padding-right: 0;
	}

	.breadcrumbs li::before,
	.breadcrumbs li::after {
		top: 1.4vw;
		right: 0;
	}

	.breadcrumbs li::before {
		width: 2.4vw;
	}

	.breadcrumbs li::after {
		width: 1.5vw;
	}
}

/* heading
--------------------------------- */
.heading02 {
	font-size: 3.2rem;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	position: relative;
	color: #003b83;
	line-height: 1.4;
}

.heading02::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #dcdcdc;
}

.heading02::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 200px;
	height: 3px;
	background: #003b83;
}

.heading03 {
	position: relative;
	background-size: cover;
	color: #fff;
	line-height: 1.2;
}

.heading03, .heading04, .heading05, .heading06 {
	font-weight: 700;
}

.heading04 {
	position: relative;
	line-height: 1.5;
}

.heading04::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}

.heading05 {
	line-height: 1.5;
}

.heading06 {
	line-height: 1.5;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.heading02 {
		padding: 20px 4px;
		margin-bottom: 20px;
	}

	.heading03 {
		margin-bottom: 50px;
		padding: 15px 24px;
		background-image: url(../img/shared/heading03_bg.jpg);
		font-size: 2.6rem;
	}

	.heading03::before,
	.heading03::after {
		content: "";
		display: block;
		position: absolute;
	}

	.heading04 {
		margin-bottom: 40px;
		padding: 10px 50px;
		font-size: 2.4rem;
	}

	.heading04::before {
		border-bottom: 38px solid transparent;
		border-left: 38px solid #c0cfe1;
	}

	.heading05 {
		margin-bottom: 30px;
		font-size: 2.2rem;
	}

	.heading06 {
		margin-bottom: 20px;
		font-size: 2rem;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.heading02 {
		padding: 4% 0;
		font-size: 2rem;
		font-size: 6.33vw;
	}

	.heading02::before {
		width: 100%;
		height: 1.7px;
	}

	.heading02::after {
		width: 27%;
		height: 3.7px;
	}

	.heading02_title {
		padding: 0 0 0 7.6%;
	}

	.heading02_title::before {
		top: 8%;
		left: 1.126%;
		width: 12px;
		width: 4.22vw;
		height: 12px;
		height: 4.22vw;
	}

	.heading02_title::after {
		top: 8%;
		left: 2.3%;
		width: 6px;
		width: 2.11vw;
		height: 6px;
		height: 2.11vw;
		margin-top: 1.1%;
	}

	.heading03 {
		margin-bottom: 7%;
		padding: 2.8% 4.2%;
		background-image: url(../img/shared/heading03_bg_sp.jpg);
		font-size: 3.6rem;
		font-size: 4.7vw;
	}

	.heading03::before {
		top: 0;
		left: 0;
		width: 6px;
		width: 1.549vw;
		height: 6px;
		height: 1.549vw;
	}

	.heading03::after {
		top: 0;
		left: 0;
		width: 6px;
		width: 1.549vw;
		height: 16px;
		height: 4.6478vw;
		margin-top: 2%;
	}

	.heading04 {
		margin-bottom: 5.5%;
		padding: 1% 3% 1% 8.5%;
		border-top-width: 2px;
		font-size: 3.2rem;
		font-size: 4.25vw;
	}

	.heading04::before {
		border-bottom: 6.7vw solid transparent;
		border-left: 6.7vw solid #c0cfe1;
	}

	.heading05 {
		margin-bottom: 4%;
		font-size: 3rem;
		font-size: 4vw;
	}

	.heading06 {
		margin-bottom: 3%;
		font-size: 2.8rem;
		font-size: 3.77vw;
	}
}

/* = margin
----------------------------------------------- */

@media print, screen and (min-width: 768px) {

	/* PC */
	.mb10 {
		margin-bottom: 10px !important;
	}

	.mb20 {
		margin-bottom: 20px !important;
	}

	.mb30 {
		margin-bottom: 30px !important;
	}

	.mb40 {
		margin-bottom: 40px !important;
	}

	.mb50 {
		margin-bottom: 50px !important;
	}

	.mb60 {
		margin-bottom: 60px !important;
	}

	.mb70 {
		margin-bottom: 70px !important;
	}

	.mb80 {
		margin-bottom: 80px !important;
	}

	.mb90 {
		margin-bottom: 90px !important;
	}

	.mb100 {
		margin-bottom: 100px !important;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.mb10 {
		margin-bottom: 1.33% !important;
	}

	.mb20 {
		margin-bottom: 2.66% !important;
	}

	.mb30 {
		margin-bottom: 4% !important;
	}

	.mb40 {
		margin-bottom: 5.33% !important;
	}

	.mb50 {
		margin-bottom: 6.66% !important;
	}

	.mb60 {
		margin-bottom: 8% !important;
	}

	.mb70 {
		margin-bottom: 9.33% !important;
	}

	.mb80 {
		margin-bottom: 10.66% !important;
	}

	.mb90 {
		margin-bottom: 12% !important;
	}

	.mb100 {
		margin-bottom: 13.33% !important;
	}
}

/* = content
------------------------------------------------ */
@media print, screen and (min-width: 768px) {

	/* PC */
	.contents {
		max-width: 1100px;
		margin: 0 auto;
		padding: 0 20px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.contents {
		padding: 0 2.66vw 15vw;
	}
}

/* = text
----------------------------------------------- */
strong {
	font-weight: 700;
}

.text01 {
    text-align: justify;
    text-justify: inter-ideograph;
}

.text_center {
	text-align: center;
}

.text_right {
	text-align: right;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.text01 {
		font-size: 1.5rem;
		line-height: 2;
	}

	.text01 a:hover {
		text-decoration: underline;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.text01 {
		font-size: 2.6rem;
		font-size: 3.466vw;
		line-height: 1.95;
	}
}

/* = note
----------------------------------------------- */

.note01 li {
	position: relative;
}

.note01 li::before {
	content: "※";
	display: block;
	position: absolute;
	left: 0;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.note01 {
		font-size: 1.4rem;
		line-height: 2;
	}

	.note01 li {
		padding-left: 20px;
	}

	.note01 li+li {
		margin-top: 8px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.note01 {
		font-size: 2.2rem;
		font-size: 2.933vw;
		line-height: 1.545;
	}

	.note01 li {
		padding-left: 4vw;
	}

	.note01 li+li {
		margin-top: 2%;
	}
}

/* = box
----------------------------------------------- */
.box01 {
	background: #f6f6f6;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.box01 {
		padding: 25px 18px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.box01 {
		padding: 4.2%;
	}
}

/* = list
----------------------------------------------- */

.list01 li {
	position: relative;
}

.list01 li::before {
	content: "";
	display: block;
	position: absolute;
	top: 9px;
	left: 9px;
	background: #d1dde9;
	border-top: 5px solid transparent;
	border-bottom: 5px solid #b2c5da;
	border-left: 5px solid transparent;
	border-right: 5px solid #b2c5da;
}

.list02 {
	list-style-type: decimal;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.list01 li {
		padding-left: 34px;
		font-size: 1.5rem;
		line-height: 2;
	}

	.list01 li+li {
		margin-top: 7px;
	}

	.list02 li {
		margin-left: 28px;
		font-size: 1.5rem;
		line-height: 2;
	}

	.list02 li+li {
		margin-top: 7px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.list01 li {
		padding-left: 5.4vw;
		font-size: 2.6rem;
		font-size: 3.466vw;
		line-height: 1.692;
	}

	.list01 li+li {
		margin-top: 2%;
	}

	.list01 li::before {
		top: 1.5vw;
		left: 0.7vw;
		border-top: 1.34vw solid transparent;
		border-bottom: 1.34vw solid #b2c5da;
		border-left: 1.34vw solid transparent;
		border-right: 1.34vw solid #b2c5da;
	}

	.list02 {
		padding-left: 2.7vw;
	}

	.list02 li {
		margin-left: 2.66vw;
		font-size: 2.6rem;
		font-size: 3.466vw;
		line-height: 1.692;
	}

	.list02 li+li {
		margin-top: 2%;
	}
}


/* iphone */

.iphone .list02 {
	padding-left: 4vw;
}


/* = link
----------------------------------------------- */

.link01 a {
	display: inline-block;
	position: relative;
}

.link01 a::before {
	content: "";
	display: block;
	position: absolute;
	background: url(../img/shared/icon_link01_blue.svg) no-repeat 50% 50% / 100% auto;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.link01 {
		font-size: 1.5rem;
		line-height: 2;
	}

	.link01 li+li {
		margin-top: 10px;
	}

	.link01 a {
		padding-left: 22px;
	}

	.link01 a:hover {
		text-decoration: underline;
	}

	.link01 a::before {
		top: 54%;
		left: 2px;
		width: 8px;
		height: 13px;
		margin-top: -8px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.link01 {
		font-size: 1.3rem;
		font-size: 3.466vw;
		line-height: 1.692;
	}

	.link01 li+li {
		margin-top: 2%;
	}

	.link01 a {
		padding-left: 5.5vw;
	}

	.link01 a::before {
		top: 1.7vw;
		left: 1.2vw;
		width: 1.87vw;
		height: 2.5vw;
	}
}


/* = file type icon
----------------------------------------------- */
.file01 a::after {
	content: "";
	display: inline-block;
	vertical-align: middle;
}

.file01 a.pdf::after {
	background: url(../img/shared/icon_pdf.png) no-repeat;
}

.file01 a.xls::after {
	background: url(../img/shared/icon_xls.png) no-repeat;
}

.file01 a.doc::after {
	background: url(../img/shared/icon_doc.png) no-repeat;
}

.file01 a.ppt::after {
	background: url(../img/shared/icon_ppt.png) no-repeat;
}

.file01 a.txt::after {
	background: url(../img/shared/icon_txt.png) no-repeat;
}

.file01 a.mwv::after {
	background: url(../img/shared/icon_mwv.png) no-repeat;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.file01 a::after {
		width: 16px;
		height: 16px;
		margin-left: 5px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.file01 a::after {
		width: 3vw;
		height: 3.4vw;
		background-size: 3vw !important;
		vertical-align: text-top;
	}
}


/* = image float
----------------------------------------------- */

.img_left {
	float: left;
}

.img_left img {
	width: 100%;
}

.img_right {
	float: right;
}

.img_right img {
	width: 100%;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.img_left {
		width: 370px;
		margin: 8px 30px 10px 0;
	}

	.img_right {
		width: 370px;
		margin: 8px 0 10px 30px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.img_left {
		width: 33.8%;
		margin: 1% 3% 2% 0;
	}

	.img_right {
		width: 33.8%;
		margin: 1% 0 2% 3%;
	}
}


/* = image
----------------------------------------------- */
.caption01 {
	color: #707070;
}

.img_clm01 .item img {
	max-width: 100%;
}

.img_clm02,
.img_clm03,
.img_clm04 {
	display: flex;
	flex-wrap: wrap;
}

.img_clm02 .item {
	width: 48.19%;
}

.img_clm02 .item:nth-child(2n-1) {
	margin-right: 1.81%;
}

.img_clm02 .item:nth-child(2n) {
	margin-left: 1.81%;
}

.img_clm03 .item {
	width: 30.91%;
}

.img_clm03 .item:nth-child(3n) {
	margin-left: 1.81%;
}

.img_clm03 .item:nth-child(3n-1) {
	margin-right: 1.81%;
	margin-left: 1.81%;
}

.img_clm03 .item:nth-child(3n-2) {
	margin-right: 1.81%;
}

.img_clm04 .item {
	width: 22.73%;
}

.img_clm04 .item:nth-child(4n-3) {
	margin-right: 1.51%;
}

.img_clm04 .item:nth-child(4n-2),
.img_clm04 .item:nth-child(4n-1) {
	margin-right: 1.51%;
	margin-left: 1.51%;
}

.img_clm04 .item:nth-child(4n) {
	margin-left: 1.51%;
}

.img_clm02 .item img,
.img_clm03 .item img,
.img_clm04 .item img {
	max-width: 100%;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.caption01 {
		margin: 10px 0 0;
		font-size: 1.4rem;
		line-height: 1.66;
	}

	.img_clm02 .item {
		margin-bottom: 10px;
	}

	.img_clm03 .item {
		margin-bottom: 10px;
	}

	.img_clm04 .item {
		margin-bottom: 10px;
	}

}

@media screen and (max-width: 767px) {
	/* SP */

	.caption01 {
		margin: 2vw 0 0;
		font-size: 2rem;
		font-size: 2.66vw;
		line-height: 1.5;
	}

	.img_clm02 .item {
		width: 48.15%;
		margin-bottom: 2.66vw;
	}

	.img_clm03 .item {
		margin-bottom: 2.66vw;
	}

	.img_clm04 .item {
		width: 47.88%;
		margin-bottom: 2.66vw;
	}

	.img_clm04 .item:nth-child(2n-1) {
		margin-left: 2.6%;
	}

	.img_clm04 .item:nth-child(2n) {
		margin-right: 0;
		margin-left: 2.6%;
	}

	.img_clm04 .item:nth-child(4n-1) {
		margin-left: 0;
	}

	.img_clm04 .item:nth-child(4n-3) {
		margin-left: 0;
	}
}


/* = table
----------------------------------------------- */

.table01 table {
	width: 100%;
}

.table01 th,
.table01 td {
	border: 1px solid #d2d2d2;
	line-height: 2;
}

.table01 thead th {
	color: #fff;
	font-weight: bold;
	background: #003b83;
	text-align: center;
}

.table01 tbody th {
	color: #003b83;
	font-weight: bold;
}

.table02 table {
	width: 100%;
}

.table02 th,
.table02 td {
	background: #f6f6f6;
	line-height: 2;
}

.table02 thead th {
	color: #fff;
	font-weight: bold;
	background: #8aa8cd;
	border-left: 1px solid #dcdcdc;
	text-align: center;
}

.table02 thead th:first-child {
	border-left: 0;
}

.table02 tbody td {
	text-align: center;
}

.table02 td {
	border-left: 1px solid #dcdcdc;
}

.table02 tr:nth-child(even) th,
.table02 tr:nth-child(even) td {
	background: #eee;
}

.table02 .td_none {
	color: #bfbfbf;
}

.table03 table {
	width: 100%;
}

.table03 th,
.table03 td {
	border: 1px solid #d2d2d2;
	line-height: 2;
}

.table03 tbody th {
	color: #fff;
	font-weight: bold;
	background: #003b83;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.table01 th,
	.table01 td {
		padding: 13px 23px;
		font-size: 1.5rem;
	}

	.table01 tr th {
		width: 101px;
	}

	.table01 thead th {
		font-size: 1.6rem;
	}

	.table01 td {
		padding-right: 150px;
	}

	.table02 th,
	.table02 td {
		font-size: 1.7rem;
	}

	.table02 th {
		padding: 8px 18px;
	}

	.table02 td {
		width: 74px;
	}

	.table02_clm {
		display: flex;
		justify-content: space-between;
	}

	.table02_clm table {
		width: 47.3%;
	}

	.table02_clm table:nth-child(2n-1) {
		margin-right: 5%;
	}

	.table03 th,
	.table03 td {
		padding: 13px 23px;
		font-size: 1.5rem;
	}

	.table03 thead th {
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.table01 th, .table01 td {
		padding: 2% 3%;
		font-size: 1.2rem;
		font-size: 3.2vw;
		line-height: 1.6;
	}

	.table01 tbody th {
		width: 30%;
	}

	.table02 table {
		margin-bottom: 6.66%;
	}

	.table02 th, .table02 td {
		padding: 2% 3%;
		font-size: 1.2rem;
		font-size: 3.2vw;
		line-height: 1.6;
	}

	.table02 tbody th {
		width: 60%;
	}

	.table03 th, .table03 td {
		padding: 2% 3%;
		font-size: 1.2rem;
		font-size: 3.2vw;
		line-height: 1.6;
	}
}

/* = card
------------------------------------------------*/
.card01 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.card01 .item {
	border-bottom: 1px solid #e5ebf2;
}

.card01 .ttl_area {
	display: flex;
	align-items: center;
	position: relative;
}

.card01 .ttl_area .number {
	position: absolute;
	top: 16px;
	left: 6px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	transform: rotate(-45deg);
}

.card01 .ttl_area::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	border-style: solid;
	border-width: 103px 103px 0 0;
	border-color: #8aa8cd transparent transparent transparent;
	z-index: -1;
}

.card01 .ttl_area .ttl {
	font-weight: bold;
	line-height: 1.1;
}

.card02 .item {
	display: flex;
	background-color: #f6f6f6;
}

.card02 .item .text_area .top {
	display: flex;
}

.card02 .item .text_area .top .course_name {
	position: relative;
	color: #fff;
	font-weight: bold;
}

.card02 .item .text_area .top .course_name::after {
	content: "";
	display: block;
	position: absolute;
	border-style: solid;
	border-width: 40px 34px 0 0;
}

.card02 .item .text_area .top .graduation_year,
.card02 .item .text_area .bottom .name_area .name,
.card02 .item .text_area .bottom .name_area .college,
.card02 .item .text_area .bottom .ttl_text .ttl {
	font-weight: bold;
}

.card02 .item .text_area .bottom .name_area {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid;
}

/* en */
.card02 .item.en .text_area .top .course_name {
	display: inline-block;
	background-color: #9c225f;
}

.card02 .item.en .text_area .top .course_name::after {
	border-color: #9c225f transparent transparent transparent;
}

.card02 .item.en .text_area .top .graduation_year,
.card02 .item.en .text_area .bottom .ttl_text .ttl {
	color: #9c225f;
}

.card02 .item.en .text_area .bottom .name_area {
	border-color: #cd90af;
}

.card02 .item.en .text_area .bottom .name_area .college {
	color: #ba7296;
}


/* math */
.card02 .item.math .text_area .top .course_name {
	display: inline-block;
	background-color: #4b85af;
}

.card02 .item.math .text_area .top .course_name::after {
	border-color: #4b85af transparent transparent transparent;
}

.card02 .item.math .text_area .top .graduation_year,
.card02 .item.math .text_area .bottom .ttl_text .ttl {
	color: #4b85af;
}

.card02 .item.math .text_area .bottom .name_area {
	border-color: #b0c3d9;
}

.card02 .item.math .text_area .bottom .name_area .college {
	color: #7c97b7;
}


/* literature */
.card02 .item.literature .text_area .top .course_name {
	display: inline-block;
	background-color: #c39949;
}

.card02 .item.literature .text_area .top .course_name::after {
	border-color: #c39949 transparent transparent transparent;
}

.card02 .item.literature .text_area .top .graduation_year,
.card02 .item.literature .text_area .bottom .ttl_text .ttl {
	color: #c39949;
}

.card02 .item.literature .text_area .bottom .name_area {
	border-color: #c39949;
}

.card02 .item.literature .text_area .bottom .name_area .college {
	color: #c4a76c;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.card01 .item {
		width: 47.3%;
		margin-bottom: 30px;
	}

	.card01 .ttl_area {
		height: 120px;
		margin-bottom: 5px;
	}

	.card01 .ttl_area .number {
		font-size: 1.2rem;
		line-height: 1.4;
	}

	.card01 .ttl_area .number span {
		font-size: 1.8rem;
	}

	.card01 .ttl_area .ttl {
		padding-left: 105px;
		font-size: 2.6rem;
		line-height: 1.4;
	}

	.card01 .ttl_area .ttl span {
		font-size: 1.7rem;
	}

	.card01 .text01 {
		margin-bottom: 25px;
	}

	.card02 .item {
		margin-bottom: 50px;
	}

	.card02 .item .img {
		width: 27.3%;
	}

	.card02 .item .text_area {
		width: 72.8%;
	}

	.card02 .item .text_area .top .course_name {
		padding: 11px 20px;
		font-size: 1.8rem;
	}

	.card02 .item .text_area .top .course_name::after {
		top: 0;
		right: -34px;
	}

	.card02 .item .text_area .top .graduation_year {
		font-size: 2rem;
		padding: 15px 0 0 40px;
	}

	.card02 .item .text_area .bottom {
		padding: 3.1% 5%;
	}

	.card02 .item .text_area .bottom .name_area {
		padding-bottom: 15px;
	}

	.card02 .item .text_area .bottom .name_area .name {
		font-size: 2.4rem;
	}

	.card02 .item .text_area .bottom .name_area .college {
		font-size: 2rem;
	}

	.card02 .item .text_area .bottom .ttl_text .ttl {
		padding: 4.3% 0 2.7% 0;
		font-size: 2.6rem;
	}

}

@media screen and (max-width: 767px) {

	/* SP */
	.card01 .item {
		width: 100%;
		margin-bottom: 5.33vw;
	}

	.card01 .item .ttl_area {
		height: 21vw;
		margin-bottom: 2.66vw;
	}

	.card01 .ttl_area::after {
		border-width: 17.4vw 17.4vw 0 0;
	}

	.card01 .item .ttl_area .ttl {
		padding-left: 17.5vw;
		font-size: 3.6rem;
		font-size: 4.8vw;
		line-height: 1.4;
	}

	.card01 .item .ttl_area .ttl span {
		font-size: 2.8rem;
		font-size: 3.75vw;
	}

	.card01 .ttl_area .number {
		font-size: 1.6rem;
		font-size: 2.14vw;
		top: 3.6vw;
		left: 0.8vw;
	}

	.card01 .ttl_area .number span {
		font-size: 2.4rem;
		font-size: 3.2vw;
	}

	.card01 .item .text01 {
		margin-bottom: 4%;
	}

	.card02 .item {
		display: block;
		margin-bottom: 5.33vw;
	}

	.card02 .item .img {
		width: 60%;
		margin: 0 auto;
		padding-bottom: 1%;
	}

	.card02 .item .img img {
		width: 100%;
	}

	.card02 .item .text_area .top .course_name {
		padding: 2.4% 3%;
		font-size: 2.6rem;
		font-size: 3.466vw;
	}

	.card02 .item .text_area .top .course_name::after {
		top: 0;
		right: -5vw;
		border-width: 8vw 5vw 0 0;
	}

	.card02 .item .text_area .top .graduation_year {
		font-size: 2.6rem;
		font-size: 3.466vw;
		padding: 3% 0 0 6%;
	}

	.card02 .item .text_area .bottom {
		padding: 5%;
	}

	.card02 .item .text_area .bottom .name_area {
		display: block;
		margin-bottom: 6%;
		padding-bottom: 2.5%;
	}

	.card02 .item .text_area .bottom .name_area .name {
		margin-bottom: 2%;
		font-size: 3.2rem;
		font-size: 4.3vw;
	}

	.card02 .item .text_area .bottom .name_area .college {
		font-size: 2.2rem;
		font-size: 3vw;
	}

	.card02 .item .text_area .bottom .ttl_text .ttl {
		padding: 4.3% 0 2.7% 0;
		font-size: 3.6rem;
		font-size: 4.8vw;
		line-height: 1.5;
	}

}

@media screen and (max-width: 380px) {

	.card01 .ttl_area::after {
		border-width: 19vw 19vw 0 0;
	}

	.card01 .item .ttl_area .ttl {
		padding-left: 18vw;
	}

	.card01 .ttl_area .number {
		top: 3.5vw;
		left: 0.5vw;
		line-height: 1.3;
	}

}

/* = text_btn
----------------------------------------------- */

.text_btn01 li {
	text-align: center;

}

.text_btn01 li a {
	position: relative;
	display: inline-block;
	border-bottom: 1px solid #c0cfe1;
	background: #f6f6f6;
	color: #313131;
	font-weight: bold;
	line-height: 1.45;
}

.text_btn01 li a::before {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	border-style: solid;
	border-width: 0 0 40px 40px;
	border-color: transparent transparent #c0cfe1 transparent;
}


@media print, screen and (min-width: 768px) {

	/* PC */
	.text_btn01 li {
		margin-bottom: 30px;
	}

	.text_btn01 li a {
		font-size: 2rem;
		padding: 20px 40px 20px 30px;
	}

	.text_btn01 a:hover {
		background-color: #6d9cd6;
		border-bottom: 1px solid #4d7fbe;
		color: #fff;
		text-decoration: none;
	}

	.text_btn01 a:hover::before {
		border-color: transparent transparent #4d7fbe transparent;
	}
}

@media screen and (max-width: 767px) {

	/* SP */

	.text_btn01 li {
		margin-bottom: 4vw;
	}

	.text_btn01 li a {
		padding: 4%;
		font-size: 3rem;
		font-size: 4vw;
	}

	.text_btn01 li a::before {
		border-width: 0 0 5.4vw 5.4vw;
	}

}


/* = text_link
----------------------------------------------- */

.text_link01 li a {
	position: relative;
	display: block;
	border-bottom: 1px solid #c0cfe1;
	background: #f6f6f6;
	color: #313131;
	font-weight: bold;
	line-height: 1.45;
	text-align: center;
}

.text_link01 li a::before {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	border-style: solid;
	border-width: 0 0 40px 40px;
	border-color: transparent transparent #c0cfe1 transparent;
}


@media print, screen and (min-width: 768px) {

	/* PC */

	.text_link01 {
		display: flex;
		flex-wrap: wrap;
	}

	.text_link01 li {
		margin-bottom: 30px;
	}

	.text_link01.clm02 li {
		width: 48.19%;
	}

	.text_link01.clm02 li:nth-child(2n) {
		margin-left: 1.81%;
	}

	.text_link01.clm02 li:nth-child(2n-1) {
		margin-right: 1.81%;
	}

	.text_link01.clm03 li {
		width: 30.91%;
	}

	.text_link01.clm03 li:nth-child(3n) {
		margin-left: 1.81%;
	}

	.text_link01.clm03 li:nth-child(3n-1) {
		margin-right: 1.81%;
		margin-left: 1.81%;
	}

	.text_link01.clm03 li:nth-child(3n-2) {
		margin-right: 1.81%;
	}

	.text_link01 li a {
		font-size: 2rem;
		padding: 20px 40px 20px 30px;
	}

	.text_link01 a:hover {
		background-color: #6d9cd6;
		border-bottom: 1px solid #4d7fbe;
		color: #fff;
		text-decoration: none;
	}

	.text_link01 a:hover::before {
		border-color: transparent transparent #4d7fbe transparent;
	}
}

@media screen and (max-width: 767px) {

	/* SP */

	.text_link01 li {
		width: 100%;
		margin-bottom: 4vw;
	}

	.text_link01 li a {
		padding: 4%;
		font-size: 3rem;
		font-size: 4vw;
	}

	.text_link01 li a::before {
		border-width: 0 0 5.4vw 5.4vw;
	}
}

/* = img_box
------------------------------------------------ */
.img_box .text_link01 li a {
	color: #003b83;
	padding: 0;
}

.img_box img {
	width: 100%;
}

.img_box p {
	text-align: left;
}

@media screen and (min-width:768px) {

	/* PC */
	.img_box .text_link01 li a:hover {
		color: #fff;
	}

	.img_box p {
		padding: 20px 40px 20px 30px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.img_box ul {
		padding-bottom: 6%;
	}

	.img_box p {
		padding: 4%;
	}
}


/* = clm_box
------------------------------------------------ */

@media screen and (min-width:768px) {

	/* PC */
	.clm_box .heading04 {
		margin-top: 10px;
		margin-bottom: 0;
	}
}

@media screen and (max-width:767px) {

	/* SP */
	.clm_box {
		padding-bottom: 6%;
	}

	.clm_box .heading04 {
		margin-top: 3%;
	}

	.clm_box img {
		width: 100%;
	}
}




/* = menu
------------------------------------------------ */
.menu01 .heading02 {
	text-align: center;
}

.menu01 .heading02::after {
	content: none;
}

.menu01 .text_link01.clm03 li a {
	border-bottom: 0;
	background-color: #e0ebf8;
	color: #003b83;
	font-weight: normal;
}

.menu01 .text_link01.clm03 li:nth-child(2n) a {
	background-color: #eef4fa;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.menu01 .heading02 {
		margin-bottom: 0;
	}

	.menu01 .heading02::before {
		height: 5px;
		background: repeating-linear-gradient(-45deg, #c0cfe1, #c0cfe1 1px, white 2px, white 5px);
	}

	.menu01 .text_link01.clm03 li {
		width: 33.33%;
		margin: 0;
		margin-bottom: 30px;
	}

	.menu01 .text_link01.clm03 li a {
		padding: 25px 40px 25px 30px;
		font-size: 2rem;
	}

	.menu01 .text_link01.clm03 li a:hover {
		background-color: #6d9cd6;
		color: #fff;
		text-decoration: none;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.menu01 .heading02::before {
		height: 4px;
		background: repeating-linear-gradient(-45deg, #c0cfe1, #c0cfe1 1px, white 1px, white 4px);
	}

	.menu01 .text_link01 li {
		margin-bottom: 0;
	}
}





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

= 下層ページここから

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

/*　一番の大枠にページのhtml名のクラスをつけて、
CSSを記述するときは、そのディレクトリ名から記述する　*/

/*（例）consult.htmlの場合 */
/*　.consult .text01　*/

/* = 校長あいさつ（/about/message.html）
------------------------------------------------ */

/* PC・SP共通 */

.message .item {
	background-color: #fff;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.message .item .text_area .inner {
		padding: 3.1% 5%;
	}

	.message .item .text_area .inner .lead {
		color: #003b83;
		padding: 0 0 2.7% 0;
		font-size: 2.8rem;
		line-height: 1.8;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	}
	
	.message .item .name {
		padding: 3.2% 0 2.7% 0;
		font-size: 1.6rem;
		line-height: 1.7;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
		text-align: right;
	}

	.message .item .img {
		padding: 2.7% 2.7% 0 0;
		width: 27.8%;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.message .item .text_area .inner {
		padding: 5%;
	}

	.message .item .text_area .inner .lead {
		color: #003b83;
		padding: 3.2% 0 2.7% 0;
		font-size: 4vw;
		line-height: 1.7;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	}

	.message .item .name {
		padding: 3.2% 0 2.7% 0;
		font-size: 3.6vw;
		line-height: 1.7;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
		text-align: right;
	}

	.message .item .img {
		padding: 2.7% 0 0 0;
		vertical-align: bottom;
	}
}


/* = 教育理念・沿革（/about/pholosophy.html）
------------------------------------------------ */

/* PC・SP共通 */
.philosophy .frame_out01 {
	text-align: center;
}

.philosophy .frame_out01 img {
  	border: outset 8px #c8dcf1;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.philosophy .card01 .lead {
		font-size: 2.4rem;
		line-height: 1.7;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	}

	.philosophy .card01 .img {
		width: 42%;
	}

	.philosophy .table02 tbody td {
		width: 78%;
		text-align: left;
		padding: 8px 18px;
	}

	.philosophy .episode {
		height: auto;
		overflow: hidden;
	}

	.philosophy .episode .img_right {
		width: 140px;
	}

	.philosophy .frame_out01 img {
		width: 82%;
	}
	.philosophy .history_caution {
		color: #003b83;
		font-size: 1.7rem;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.philosophy .card01 .text_area {
		padding: 0 0 3% 0;
	}

	.philosophy .card01 .lead {
		font-size: 4.2vw;
		line-height: 1.7;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	}

	.philosophy .table02 tbody th {
		width: 40%;
	}

	.philosophy .table02 tbody td {
		text-align: left;
		padding: 2% 3%;
	}
	.philosophy .frame_out01 img {
		width: 94%;
	}
	.philosophy .history_caution {
		color: #003b83;
		font-size: 3.2vw;
	}
}

/* = 出身中学一覧（/about/almamater.html）
------------------------------------------------ */

/* PC・SP共通 */
.almamater .table_alma th,
.almamater .table_alma td {
	border: 1px solid #d2d2d2;
	line-height: 1.4;
}

.almamater .table_alma thead th {
	color: #fff;
	font-weight: bold;
	background: #003b83;
	text-align: center;
}

.almamater .table_alma thead th:first-child {
	width: 40%;
}

.almamater .table_alma thead th:last-child {
	width: 20%;
}

.almamater .table_alma tbody th {
	color: #003b83;
	font-weight: bold;
}

.almamater .table_alma tbody tr td.area,
.almamater .table_alma tbody tr.table_total {
	background-color: #e9eff5;
}

.almamater .table_alma tbody tr.table_total02 td {
	background-color: #b2c5da;
}

.almamater .table_alma tbody tr td:last-child {
	text-align: center;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.almamater .table_alma {
		display: flex;
		justify-content: space-between;
	}

	.almamater .table_alma table {
		width: 31.3%;
	}

	.almamater .table_alma th,
	.almamater .table_alma td {
		padding: 8px 12px;
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.almamater .table_alma table {
		width: 100%;
	}

	.almamater .table_alma th,
	.almamater .table_alma td {
		padding: 2% 3%;
		font-size: 3.2vw;
	}
	
	.almamater .table_alma .spnone thead {
		display: none;
	}
	
	.almamater .table_alma .spnone tr:first-child td {
		border-top: none;
	}

	.almamater .table_alma .area {
		width: 40%;
	}

	.almamater .table_alma tr td:last-child {
		width: 20%;
	}
}

/* = アクセス（/about/access.html）
------------------------------------------------ */

/* PC・SP共通 */
.access .img_frame01 {
	border: 1px solid #ccc;
}

@media print, screen and (min-width: 768px) {

	/* PC */
}

@media screen and (max-width: 767px) {

	/* SP */
	.access .mapinfo th {
		width: 20%;
	}
}

/* = 進路指導（/carrer/consult.html）
------------------------------------------------ */

/* PC・SP共通 */
.consult .card01 .bgc_pink .ttl_area::after {
	border-color: #cd90af transparent transparent transparent;
}

.consult .card01 .bgc_yellow .ttl_area::after {
	border-color: #d2b98a transparent transparent transparent;
}

.consult .card01 .bgc_green .ttl_area::after {
	border-color: #90cd90 transparent transparent transparent;
}

.consult .card01 .bgc_purple .ttl_area::after {
	border-color: #6b4c8e transparent transparent transparent;
}

.consult .ttl_label {
	margin-bottom: 20px;
}

.consult .box_purple {
	background-color: #ede7f7;
	padding: 16px 24px;
	margin-bottom: 30px;
}

.consult .box_purple .ttl {
	font-weight: bold;
	color: #6b4c8e;
	margin-bottom: 10px;
}

.consult .ttl_label span.label {
	background-color: #6b4c8e;
	color: #fff;
	padding: 6px 8px;
	margin: 0 6px 0 0;
}

.consult .box_purple .text01 {
	margin-bottom: 0;
}


@media print, screen and (min-width: 768px) {

	/* PC */
	.consult .text01.text_right {
		margin-top: -20px;
		font-size: 1.3rem;
	}
	
	.consult .card01 .ttl {
		font-size: 2rem;
		line-height: 1.8;
	}
	
	.consult .ttl_label p {
		font-size: 1.6rem;
		font-weight: bold;
	}
		
		
	.consult .box_purple .ttl {
		font-size: 1.8rem;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.consult .text01.text_right {
		margin-top: -4%;
		font-size: 2.2rem;
		font-size: 2.933vw;
	}
	
	.consult .card01 .item .ttl_area .ttl {
		font-size: 4.2vw;
		line-height: 1.8;
	}
	
	.consult .ttl_label span.label {
		background-color: #6b4c8e;
		color: #fff;
		padding: 1.8vw 3.2vw;
		margin: 0 12px 0 0;
	}
	
	.consult .ttl_label p {
		font-size: 3.2vw;
		font-weight: bold;
	}
	
	.consult .box_purple .ttl {
		font-size: 3.6vw;
	}
	
}


/* = 進路実績（/carrer/result.html）
------------------------------------------------ */

/* PC・SP共通 */

.result .img_clm03,
.result .img_clm02 {
	margin-bottom: 100px;
}

.result .img_clm03 .clm03_bg .archive,
.result .img_clm02 .clm02_bg .archive {
	background-color: #eef4fa;
	background-image: url(../img/career/name_bg.png);
	background-repeat: no-repeat;
	background-size: contain;
}

.result .img_clm03 .clm03_bg .archive .name_box,
.result .img_clm02 .clm02_bg .archive .name_box {
	display: block;
	position: relative;
	height: 100%;
}

.result .img_clm03 .clm03_bg .archive .name_w,
.result .img_clm02 .clm02_bg .archive .name_w {
	display: block;
	position: absolute;
	color: #fff;
	font-weight: bold;
}

.result .img_clm03 .clm03_bg .archive .name_b01, .name_b02,
.result .img_clm02 .clm02_bg .archive .name_b01, .name_b02 {
	color: #003b83;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
}

.result .graph .inner01 .text01 {
	line-height: 1.2;
	font-weight: bold;
}

.result .graph .inner01 .table02 td {
	font-weight: bold;
	padding: 8px 18px;
	background-color: #eef4fa;
}

.result .graph .inner01 .table02 .sum {
	color: #5684c0;
}

.result .graph .inner02 .text02 li {
	position: relative;
}

.result .graph .inner02 .text02 li::before {
	content: "";
	display: block;
	position: absolute;
}

.result .graph .inner02 .text02 {
	display: inline-block;
}

.result .graph .inner02 .text02 li:nth-child(1)::before {
	background-color: #9ec5dd;
}

.result .graph .inner02 .text02 li:nth-child(2)::before {
	background-color: #e19e9d;
}

.result .graph .inner02 .text02 li:nth-child(3)::before {
	background-color: #ac98b1;
}

.result .graph .inner02 .text02 li:nth-child(4)::before {
	background-color: #eaca8c;
}

.result .graph .inner02 .text02 li:nth-child(5)::before {
	background-color: #babbbb;
}

.result .table02 tr {
	border-bottom: 1px solid #ccc;
}

.result .table02 thead th {
	background-color: #447fc6;
}

.result .table02 th,
.result .table02 td {
	background-color: #fff;
}

.result .table02 tr:nth-child(even) th,
.result .table02 tr:nth-child(even) td {
	background: #eef4fa;
}

.result .box01 {
	background-color: #fffee4;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.result .img_clm03 .clm03_bg .archive {
		height: 115px;
	}

	.result .img_clm03 .clm03_bg .archive .name_box {
		display: flex;
		justify-content: center;
		align-items: baseline;
	}

	.result .img_clm03 .clm03_bg .archive .name_box .name_w {
		top: 46px;
		left: 30px;
		font-size: 2.2rem;
	}

	.result .img_clm03 .clm03_bg .archive .name_b01 {
		padding-left: 185px;
		font-size: 7.3rem;
		line-height: 1.6;
	}

	.result .img_clm03 .clm03_bg .archive .name_b02 {
		font-size: 4rem;
		padding-left: 5px;
	}

	.result .img_clm03 .clm03_bg .archive .name_one {
		padding-left: 205px;
	}
	
	.result .img_clm02 .item {
		margin-bottom: 40px;
	}
	
	.result .img_clm02 .clm02_bg .archive {
		height: 115px;
		background-image: url(../img/career/name_bg_2col.png);
	}

	.result .img_clm02 .clm02_bg .archive .name_box {
		display: flex;
		justify-content: center;
		align-items: baseline;
	}

	.result .img_clm02 .clm02_bg .archive .name_box .name_w {
		top: 46px;
		left: 30px;
		font-size: 2.2rem;
	}

	.result .img_clm02 .clm02_bg .archive .name_b01 {
		padding-left: 290px;
		font-size: 7.3rem;
		line-height: 1.6;
	}

	.result .img_clm02 .clm02_bg .archive .name_b02 {
		font-size: 4rem;
		padding-left: 5px;
	}

	.result .img_clm02 .clm02_bg .archive .name_one {
		padding-left: 325px;
	}

	.result .graph {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.result .graph .heading05 {
		font-size: 2.4rem;
		line-height: 1.7;
	}

	.result .graph .inner01 {
		width: 60%;
	}

	.result .graph .inner02 {
		width: 40%;
	}

	.result .graph .inner01 .text01 {
		font-size: 2rem;
		padding: 20px 0;
	}

	.result .graph .inner01 .table02 td {
		font-size: 2.3rem;
		padding: 2px 18px;
	}

	.result .graph .inner02 .text02 {
		font-size: 1.4rem;
		line-height: 1.5;
		padding: 93px 0 0 20px;
	}

	.result .graph .inner02 .text02 li {
		padding-left: 16px;
	}

	.result .graph .inner02 .text02 li::before {
		width: 12px;
		height: 12px;
		top: 4px;
		left: 0;
	}

	.result .list_wrap {
		display: flex;
		justify-content: space-between;
	}

	.result .list_wrap .list01:last-child {
		margin-right: 50px;
	}

	.result .list_wrap .list01 .text01 {
		text-align: right;
	}
}


@media all and (-ms-high-contrast: none) {

	/* IE10以上 */

	.result .img_clm03 .clm03_bg .archive .name_b01 {
		padding-top: 28px;
		line-height: 1.2;
	}
}


@media screen and (max-width: 767px) {

	/* SP */

	.result .heading02 {
		margin-bottom: 2%;
	}

	.result .img_clm03,
	.result .img_clm02 {
		margin-bottom: 3%;
	}

	.result .img_clm03 .clm03_bg,
	.result .img_clm02 .clm02_bg {
		width: 100%;
		margin: 0 auto;
		margin-bottom: 3.66vw;
	}

	.result .img_clm03 .clm03_bg .archive,
	.result .img_clm02 .clm02_bg .archive {
		height: 27vw;
	}

	.result .img_clm03 .clm03_bg .archive .name_box .name_w,
	.result .img_clm02 .clm02_bg .archive .name_box .name_w {
		top: 40%;
		left: 5%;
		font-size: 4rem;
		font-size: 5.35vw;
	}

	.result .img_clm03 .clm03_bg .archive .name_b01,
	.result .img_clm02 .clm02_bg .archive .name_b01 {
		padding-left: 60%;
		font-size: 12.5rem;
		font-size: 16.5vw;
		line-height: 1.65;
	}

	.result .img_clm03 .clm03_bg .archive .name_b02,
	.result .img_clm02 .clm02_bg .archive .name_b02{
		font-size: 6rem;
		font-size: 8vw;
		line-height: 1.65;
	}

	.result .img_clm03 .clm03_bg .archive .name_one,
	.result .img_clm02 .clm02_bg .archive .name_one{
		padding-left: 70%;
	}

	.result .graph .inner01 .text01 {
		font-size: 2.7rem;
		padding-bottom: 3%;
	}

	.result .graph .inner01 .table02 td {
		font-size: 4.3vw;
	}

	.result .graph .inner02 {
		text-align: center;
	}

	.result .graph .inner02 img {
		width: 70%;
	}

	.result .graph .inner02 .text02 {
		font-size: 2.4rem;
		font-size: 3.2vw;
		line-height: 1.5;
		padding: 25% 0 0 3%;
		text-align: left;
	}

	.result .graph .inner02 .text02 li {
		padding-left: 3.2vw;
	}

	.result .graph .inner02 .text02 li::before {
		top: 1.5vw;
		left: 0;
		width: 1.7vw;
		height: 1.7vw;
	}

	.result .list_wrap .list01 {
		padding-bottom: 2vw;
	}

	.result .list_wrap .list01 .text01 {
		text-align: left;
		padding-left: 6%;
	}

}


/* = 鵠沼高等学校の1日（/schoollife/oneday.html）
------------------------------------------------ */

/* PC・SP共通 */

.oneday .top_text {
	color: #124a8f;
	font-weight: bold;
	line-height: 2;
	text-align: center;
}

.oneday .oneday_flow {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.oneday .oneday_flow .item .ttl_area {
	display: flex;
	align-items: center;
}

.oneday .oneday_flow .item .ttl_area .ttl {
	color: #124a8f;
	font-weight: bold;
}

.oneday .oneday_flow .item .ttl_area .ttl .person {
	color: #f19149;
	font-weight: bold;
}

.oneday .oneday_flow .item .ttl_area .ttl .study {
	font-weight: bold;
}

.oneday .oneday_flow .item .ttl_area .time {
	position: relative;
	background-color: #003b83;
	color: #fff;
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
}

.oneday .oneday_flow .item .ttl_area .time::before,
.oneday .oneday_flow .item .ttl_area .time::after {
	content: "";
	display: block;
	position: absolute;

}

.oneday .oneday_flow .item .ttl_area .time::before {
	border-style: solid;
}

.oneday .oneday_flow .item .ttl_area .time::after {
	background-image: url(../img/schoollife/oneday_parts01.png);
	background-repeat: no-repeat;
	background-size: 100%;
}

.oneday .oneday_flow .item .text01 {
	line-height: 2;
}


@media print, screen and (min-width: 768px) {

	/* PC */
	.oneday .top_text {
		font-size: 1.8rem;
	}

	.oneday .oneday_flow .item {
		width: 49.95%;
		padding-bottom: 90px;
	}

	.oneday .oneday_flow .item:nth-child(even) {
		border-left: 1px dashed #6589b7;
	}

	.oneday .oneday_flow .item:nth-child(even) .inner {
		margin: 0 0 0 auto;
	}

	.oneday .oneday_flow .item:nth-child(1) {
		padding-top: 30px;
	}

	.oneday .oneday_flow .item:nth-child(2) {
		padding-top: 290px;
	}

	.oneday .oneday_flow .item:nth-child(3) {
		margin-top: -260px;
	}

	.oneday .oneday_flow .item:nth-child(5) {
		margin-top: -270px;
	}

	.oneday .oneday_flow .item:nth-child(7) {
		margin-top: -300px;
	}

	.oneday .oneday_flow .item:nth-child(9) {
		margin-top: -330px;
	}

	.oneday .oneday_flow .item:nth-child(11) {
		margin-top: -360px;
	}

	.oneday .oneday_flow .item:last-child {
		padding-top: 85px;
		padding-bottom: 0;
	}

	.oneday .oneday_flow .item .inner {
		width: 90.91%;
	}

	.oneday .oneday_flow .item .ttl_area {
		margin-bottom: 20px;
	}

	.oneday .oneday_flow .item:nth-child(odd) .ttl_area {
		flex-flow: row-reverse;
	}

	.oneday .oneday_flow .item .ttl_area .ttl {
		font-size: 2.2rem;
	}

	.oneday .oneday_flow .item:nth-child(odd) .ttl_area .ttl {
		padding-right: 36px;
	}

	.oneday .oneday_flow .item:nth-child(even) .ttl_area .ttl {
		padding-left: 36px;
	}

	.oneday .oneday_flow .item .ttl_area .ttl.ttl_only {
		padding-right: 0;
		padding-left: 0;
	}

	.oneday .oneday_flow .item .ttl_area .ttl .person {
		padding: 0 10px;
		font-size: 1.3rem;
	}

	.oneday .oneday_flow .item:nth-child(9) .ttl_area .ttl {
		padding-right: 25px;
	}

	.oneday .oneday_flow .item:nth-child(9) .ttl_area .ttl .person {
		padding: 0;
	}

	.oneday .oneday_flow .item .ttl_area .ttl .study {
		font-size: 1.5rem;
	}

	.oneday .oneday_flow .item .ttl_area .time {
		width: 135px;
		padding: 10px 0;
		font-size: 1.6rem;
	}

	.oneday .oneday_flow .item:nth-child(odd) .ttl_area .time::before {
		top: 0;
		left: -23px;
		border-width: 0 23px 40px 0;
		border-color: transparent #003b83 transparent transparent;
	}

	.oneday .oneday_flow .item:nth-child(even) .ttl_area .time::before {
		top: 0;
		right: -23px;
		border-width: 40px 23px 0 0;
		border-color: #003b83 transparent transparent transparent;
	}

	.oneday .oneday_flow .item .ttl_area .time::after {
		top: 0;
		bottom: 0;
		width: 57px;
		height: 13px;
		margin: auto;
	}

	.oneday .oneday_flow .item:nth-child(odd) .ttl_area .time::after {
		right: -56px;
	}

	.oneday .oneday_flow .item:nth-child(even) .ttl_area .time::after {
		left: -56px;
		transform: rotate(180deg);
	}

	.oneday .oneday_flow .item .img {
		margin-bottom: 10px;
	}

}

@media screen and (max-width: 767px) {

	/* SP */
	.oneday .top_text {
		padding-top: 5%;
		font-size: 3rem;
		font-size: 4vw;
	}

	.oneday .oneday_flow {
		display: block;
	}

	.oneday .oneday_flow .item {
		width: 93.34vw;
		margin: 0 0 0 auto;
		padding-bottom: 10.66%;
		border-left: 1px dashed #6589b7;
	}

	.oneday .oneday_flow .item:first-child {
		padding-top: 2.66vw;
	}

	.oneday .oneday_flow .inner {
		width: 86.67vw;
		margin: 0 0 0 auto;
	}

	.oneday .oneday_flow .item .ttl_area {
		display: block;
		margin-bottom: 6.66%;
	}

	.oneday .oneday_flow .item .ttl_area .ttl {
		font-size: 3.2rem;
		font-size: 4.2vw;
	}

	.oneday .oneday_flow .item .ttl_area .ttl .person {
		margin-left: 2.66vw;
		font-size: 2.4rem;
		font-size: 3vw;
	}

	.oneday .oneday_flow .item .ttl_area .ttl .study {
		font-size: 2.4rem;
		font-size: 3vw;
	}

	.oneday .oneday_flow .item .ttl_area .time {
		display: inline-block;
		width: 30vw;
		margin-right: 7vw;
		margin-bottom: 4%;
		padding: 2vw 0;
		font-size: 2.6rem;
		font-size: 3.466vw;
	}

	.oneday .oneday_flow .item .ttl_area .time::before {
		top: 0;
		right: -4.67vw;
		border-width: 8.4vw 4.67vw 0 0;
		border-color: #003b83 transparent transparent transparent;
	}

	.oneday .oneday_flow .item .ttl_area .time::after {
		top: 0;
		bottom: 0;
		left: -7.7vw;
		width: 7.7vw;
		height: 1.8vw;
		margin: auto;
		transform: rotate(180deg);
	}

	.oneday .oneday_flow .inner .img {
		margin-bottom: 4%;
	}

	.oneday .oneday_flow .inner .img img {
		width: 100%;
	}
}

/* = 年間行事（/schoollife/event.html）
------------------------------------------------ */

/* PC・SP共通 */
.event .top_text {
	color: #124a8f;
	font-weight: bold;
	line-height: 2;
	text-align: center;
}

.event .slide_pickup .text_btn01 a {
	display: block;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.event .top_text {
		font-size: 1.8rem;
	}
	.event .slide_pickup h5 {
		margin-bottom: 14px;
	}
	.event .img_clm03 .item {
		margin-bottom: 40px;
	}
	.event p.month {
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
		font-size: 5.4rem;
		color: #003b83;
		border-bottom: 1px solid #c0cfe1;
		padding-bottom: 12px;
		margin-bottom: 12px;
	}
	.event p.month span {
		padding-left: 12px;
		font-size: 3.6rem;
		color: #c0cfe1;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.event .top_text {
		padding-top: 5%;
		font-size: 3rem;
		font-size: 4vw;
	}
	.event .img_clm03 .item {
		width: 100%;
		margin: 0 0 6.4vw 0;
	}
	.event p.month {
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
		font-size: 8.2vw;
		color: #003b83;
		border-bottom: 1px solid #c0cfe1;
		padding-bottom: 2.4vw;
		margin-bottom: 2.4vw;
	}
	.event p.month span {
		padding-left: 2.8vw;
		font-size: 5.6vw;
		color: #c0cfe1;
	}
}

/* = 部活動（/schoollife/club.html）
------------------------------------------------ */

/* PC・SP共通 */
.club .top_text {
	color: #124a8f;
	font-weight: bold;
	line-height: 2;
	text-align: center;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.club .top_text {
		font-size: 1.8rem;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.club .top_text {
		font-size: 4vw;
	}
}

/* = 部活動共通（/schoollife/club/page_basketball.html）
------------------------------------------------ */

/* PC・SP共通 */

.page_club .top,
.page_club .top .activity_report .ttl_area {
	display: flex;
	justify-content: space-between;
}

.page_club .top .activity_report .ttl_area {
	align-items: center;
	background-color: #f2f5f8;
}

.page_club .top .activity_report .ttl_area .ttl {
	position: relative;
	background-color: #003b83;
	color: #fff;
	font-weight: bold;
}

.page_club .top .activity_report .ttl_area .ttl::after,
.page_club .top .activity_report .ttl_area .list a::before,
.page_club .top .activity_report .news ul li::after {
	content: "";
	display: block;
	position: absolute;
}

.page_club .top .activity_report .ttl_area .ttl::after {
	border-style: solid;
}

.page_club .top .activity_report .ttl_area .list a {
	position: relative;
	color: #003b83;
}

.page_club .top .activity_report .ttl_area .list a::before {
	background: url(../img/shared/icon_link01_blue.svg) no-repeat 50% 50% / 100% auto;
}

.page_club .top .activity_report .news ul li {
	position: relative;
	border-top: 1px solid #e5ebf2;
}

.page_club .top .activity_report .news ul li:last-child {
	border-bottom: 1px solid #e5ebf2;
}

.page_club .top .activity_report .news ul li a {
	display: flex;
}

.page_club .top .activity_report .news ul li a time {
	color: #959595;
	line-height: 1.7;
}

.page_club .top .activity_report .news ul li a .ttl {
	color: #003c7e;
	line-height: 1.7;
}

.page_club .top .activity_report .news ul li::after {
	top: 0;
	right: 20px;
	bottom: 0;
	width: 11px;
	height: 14px;
	margin: auto;
	background: url(../img/shared/icon_link01_gray.svg) no-repeat 50% 0 / 11px 14px;
}

.page_club .club_ttl {
	color: #003b83;
	font-weight: bold;
	line-height: 2;
}

.page_club .bottom .info {
	display: flex;
	justify-content: space-between;
}

.page_club .bottom .info dl {
	display: flex;
	position: relative;
	justify-content: space-between;
	border-top: 1px solid #dcdcdc;
}

.page_club .bottom .info dl::before {
	content: "";
	display: block;
	position: absolute;
}

.page_club .bottom .info dl dt {
	color: #003b83;
	font-weight: bold;
	line-height: 1.5;
}

.page_club .bottom .info dl dd {
	color: #313131;
	font-weight: normal;
	line-height: 1.7;
}

/* slide */

.img_slider_nav .slick-slide {
	position: relative;
}

.img_slider_nav .slick-slide::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(27, 27, 27, 0.5);
	z-index: 1;
}

.img_slider_nav .slick-slide.slick-current::after {
	display: none;
}

.img_slider_nav .slick-prev,
.img_slider_nav .slick-next {
	z-index: 1;
}


@media print, screen and (min-width: 768px) {

	/* PC */
	.page_club .top .slide,
	.page_club .top .activity_report {
		width: 47.3%;
	}

	.page_club .top .activity_report .ttl_area {
		margin-bottom: 25px;
	}

	.page_club .top .activity_report .ttl_area .ttl {
		width: 110px;
		padding: 19px 25px;
		font-size: 2.2rem;
	}

	.page_club .top .activity_report .ttl_area .ttl::after {
		top: 0;
		right: -50px;
		border-width: 60px 50px 0 0;
		border-color: #003b83 transparent transparent transparent;
	}

	.page_club .top .activity_report .ttl_area .list a {
		padding: 0 20px;
		font-size: 1.6rem;
	}

	.page_club .top .activity_report .ttl_area .list a:hover {
		text-decoration: underline;
	}

	.page_club .top .activity_report .ttl_area .list a::before {
		top: 0;
		bottom: 0;
		width: 9px;
		height: 12px;
		margin: auto;
	}

	.page_club .top .activity_report .news ul li a {
		padding: 22.5px 40px 22.5px 0;
	}

	.page_club .top .activity_report .news ul li a:hover {
		text-decoration: none;
	}

	.page_club .top .activity_report .news ul li a:hover .ttl {
		text-decoration: underline;
	}

	.page_club .top .activity_report .news ul li a time {
		padding: 0 10px;
		font-size: 1.5rem;
	}

	.page_club .top .activity_report .news ul li a .ttl {
		padding: 0 10px;
		font-size: 1.5rem;
	}

	.page_club .club_ttl {
		font-size: 1.8rem;
	}

	.page_club .bottom .info .left,
	.page_club .bottom .info .right {
		width: 500px;
	}

	.page_club .bottom .info dl {
		padding: 20px 0 35px 0;
	}

	.page_club .bottom .info dl dt {
		padding-left: 5px;
		font-size: 1.8rem;
	}

	.page_club .bottom .info dl::before {
		top: -1px;
		left: 0;
		width: 120px;
		height: 2px;
		background-color: #16519a;
	}

	.page_club .bottom .info dl dd {
		width: 360px;
		padding-left: 20px;
		font-size: 1.5rem;
	}

	.page_club .bottom .info dl dd ul li {
		margin-bottom: 10px;
	}

	.page_club .bottom .info dl dd .list01 li {
		padding-left: 25px;
	}

	.page_club .bottom .info dl dd .list01 li::before {
		left: 0;
	}

	.page_club .bottom .info dl dd ul li:last-child {
		margin-bottom: 0;
	}

	/* slide */

	.img_thumbnails {
		max-width: 520px;
		overflow: hidden;
	}

	.img_thumbnails::before,
	.img_thumbnails::after {
		width: 25px;
		height: 25px;
		border-width: 8px;
	}

	.img_slider_for {
		width: 520px !important;
	}

	.img_slider_for .item {
		margin: 0 auto 20px;
	}

	.img_slider_for .item .caption01 {
		padding: 10px 15px;
	}

	.img_slider_nav {
		width: 520px !important;
		margin: 0 auto;
	}

	.img_slider_nav .slick-prev,
	.img_slider_nav .slick-next {
		width: 27px;
		height: 34px;
	}

	.img_slider_nav .slick-list {
		margin: 0 -5px;
	}

	.img_slider_nav .slick-prev {
		left: -31px;
	}

	.img_slider_nav .slick-next {
		right: -31px;
	}

	.img_slider_nav .slick-prev::before,
	.img_slider_nav .slick-next::before {
		width: 27px;
		height: 34px;
		background-size: 27px 34px;
	}

	.img_slider_nav .item {
		margin: 0 5px;
	}

	.img_slider_nav .item:last-child {
		margin-right: 0;
	}

}

@media screen and (max-width: 767px) {

	/* SP */
	.page_club .top {
		display: block;
	}

	.page_club .top .slide {
		width: 100%;
		margin-bottom: 6%;
	}

	.page_club .top .slide img {
		width: 100%;
	}

	.page_club .top .activity_report .ttl_area {
		margin-bottom: 5%;
	}

	.page_club .top .activity_report .ttl_area .ttl {
		width: 21vw;
		padding: 2.7vw 4vw;
		padding: 4vw 5vw;
		font-size: 3rem;
		font-size: 4vw;
	}

	.page_club .top .activity_report .ttl_area .ttl::after {
		top: 0;
		right: -8vw;
		border-width: 9.4vw 6.7vw 0 0;
		border-width: 12vw 8vw 0 0;
		border-color: #003b83 transparent transparent transparent;
	}

	.page_club .top .activity_report .ttl_area .list a {
		padding: 0 4.5vw 0 4vw;
		font-size: 2.2rem;
		font-size: 3vw;
	}

	.page_club .top .activity_report .ttl_area .list a::before {
		top: 0;
		bottom: 0;
		width: 1.8vw;
		height: 2.3vw;
		margin: auto;
		background: url(../img/shared/icon_link01_blue.svg) no-repeat 50% 50% / 1.8vw 2.3vw;
	}

	.page_club .top .activity_report .news ul li::after {
		right: 2.66vw;
		width: 2.4vw;
		height: 3vw;
		background: url(../img/shared/icon_link01_gray.svg) no-repeat 50% 0 / 2.4vw 3vw;
	}

	.page_club .top .activity_report .news ul li a {
		display: block;
		padding: 3% 6% 3% 0;
	}

	.page_club .top .activity_report .news ul li a:hover {
		text-decoration: none;
	}

	.page_club .top .activity_report .news ul li a time {
		font-size: 2rem;
		font-size: 2.66vw;
	}

	.page_club .top .activity_report .news ul li a .ttl {
		padding-top: 1vw;
		font-size: 2.6rem;
		font-size: 3.466vw;
	}

	.page_club .bottom .info,
	.page_club .bottom .info dl {
		display: block;
	}

	.page_club .club_ttl {
		font-size: 3rem;
		font-size: 4vw;
	}

	.page_club .bottom .info dl {
		padding: 3% 0 5% 0;
	}

	.page_club .bottom .info dl dt {
		margin-bottom: 2%;
		font-size: 3rem;
		font-size: 4vw;
	}

	.page_club .bottom .info dl::before {
		top: 0;
		left: 0;
		width: 28vw;
		height: 2px;
		background-color: #16519a;
	}

	.page_club .bottom .info dl dd {
		font-size: 2.6rem;
		font-size: 3.466vw;
	}

	.page_club .bottom .info dl dd ul li {
		margin-bottom: 1%;
	}

	/* slide */

	.img_thumbnails {
		margin-bottom: 8%;
		overflow: hidden;
	}

	.img_thumbnails::before,
	.img_thumbnails::after {
		width: 13px;
		height: 13px;
		border-width: 4px;
	}

	.img_slider_for .item {
		margin: 0 auto 3vw;
	}

	.img_slider_nav .slick-prev,
	.img_slider_nav .slick-next {
		width: 14px;
		height: 17px;
	}

	.img_slider_nav .slick-prev {
		left: 0;
	}

	.img_slider_nav .slick-next {
		right: 0;
	}

	.img_slider_nav .slick-prev::before,
	.img_slider_nav .slick-next::before {
		width: 14px;
		height: 17px;
		background-size: 14px auto;
	}

	.img_slider_nav .slick-list {
		margin: 0 -5px;
		margin: 0 -0.65vw;
	}

	.img_slider_nav .item {
		margin: 0 5px;
		margin: 0 0.65vw;
	}

	.img_slider_nav .item:last-child {
		margin-right: 0;
	}


}

/* = 海外研修・修学旅行（/schoollife/trip.html）
------------------------------------------------ */

/* PC・SP共通 */
.trip .top_text {
	color: #124a8f;
	font-weight: bold;
	line-height: 2;
	text-align: center;
}
.trip .card01 .item {
	border-bottom: none;
}
.trip .student_voice {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.trip .student_voice .clm02 {
	background-color: #fff;
}
.trip .student_voice .clm02 .inner .ttl {
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
}
.trip .student_voice .clm02 .inner .copy {
	font-weight: bold;
	line-height: 1.7;
}
.trip .student_voice {
	background-image: url(../img/course/bg_voice_math.jpg);
}
.trip .student_voice .clm02 .inner .copy,
.trip .student_voice .clm02 .inner .name {
	color: #003c7e;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.trip .top_text {
		font-size: 1.8rem;
	}
	.trip .top {
		margin-bottom: 20px;
		padding-bottom: 10px;
		border-bottom: 2px dotted #d0e5ff;
		line-height: 2.5;
	}
	.trip .top p {
		display: inline-block;
		margin: 0 18px 0 0;
	}
	.trip .top p {
		font-size: 1.6rem;
		font-weight: bold;
	}
	.trip .top p span.trip_label {
		background-color: #003b83;
		color: #fff;
		padding: 8px 12px;
		margin: 0 8px 0 0;
	}
	.trip .card01 .ttl_area .number {
		top: 14px;
		left: 14px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.trip {
		padding-bottom: 0;
	}
	.trip .top_text {
		padding-top: 5%;
		font-size: 3rem;
		font-size: 4vw;
	}
		.trip .top p {
		font-size: 3.6vw;
		font-weight: bold;
		margin-bottom: 5.8vw;
	}
	.trip .top p span.trip_label {
		background-color: #003b83;
		color: #fff;
		padding: 1.8vw 3.2vw;
		margin: 0 12px 0 0;
	}
	.trip .card01 .ttl_area .number {
		top: 3vw;
		left: 3vw;
	}
}

/* = 制服紹介（/schoollife/uniform.html）
------------------------------------------------ */

/* PC・SP共通 */
.uniform_box  {
	text-align: center;
}
.uniform .uniform_winter {
	background: repeating-linear-gradient(-45deg, #eeebff, #eeebff 4px, #f4f2ff 0, #f4f2ff 8px);
}
.uniform .uniform_summer {
	background: repeating-linear-gradient(-45deg, #e4f5ff, #e4f5ff 4px, #f7fbff 0, #f7fbff 8px);
}
.uniform .uniform_bg_pink {
	background: repeating-linear-gradient(-45deg, #ffeaf2, #ffeaf2 4px, #fff 0, #fff 8px);
}
.uniform .uniform_bg_blue {
	background: repeating-linear-gradient(-45deg, #eef4fa, #eef4fa 4px, #fff 0, #fff 8px);
}
.uniform .uniform_bg_green {
	background: repeating-linear-gradient(-45deg, #e4ffe4, #e4ffe4 4px, #fff 0, #fff 8px);
}
.uniform .uniform_bg_yellow {
	background: repeating-linear-gradient(-45deg, #fffccd, #fffccd 4px, #fff 0, #fff 8px);
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.uniform .clm02 {
		display: flex;
		flex-wrap: wrap;
	}
	.uniform .clm02 .item {
		width: 48.19%;
	}
	.uniform .clm02 .item:nth-child(2n) {
		margin-left: 1.81%;
	}
	.uniform .clm02 .item:nth-child(2n-1) {
		margin-right: 1.81%;
	}
	.uniform .uniform_box {
		padding: 30px;
	}
	.uniform .card01 .text_area {
		width: 38%;
		padding-right: 4%;
	}
	.uniform .card01 .text_area .ttl {
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
		font-size: 3.2rem;
		color: #003b83;
		border-bottom: 1px solid #c0cfe1;
		padding-bottom: 12px;
		margin-bottom: 12px;
	}
	.uniform .card01 .img {
		width:58%;
	}
	.uniform .uniform_item .caption01 {
		font-size: 1.8rem;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.uniform .uniform_box {
		padding: 8vw;
	}
	.uniform .card01 .text_area .ttl {
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
		font-size: 5.8vw;
		color: #003b83;
		border-bottom: 1px solid #c0cfe1;
		padding-bottom: 2.4vw;
		margin-bottom: 2.4vw;
	}
	.uniform .uniform_item .caption01 {
		font-size: 4.2vw;
	}
}


/* = 学校説明会（/exam/briefing.html）
------------------------------------------------ */

/* PC・SP共通 */
.briefing .attention {
	padding: 20px;
	margin-bottom: 30px;
	border: 4px double #ce6c90;
}
.briefing .attention p strong {
	font-size: 1.7rem;
}
.briefing .attention span.emphasis {
	color: #ce6c90;
	font-weight: bold;
}
.briefing .notice {
	color: red;
	font-weight: bold;
}
.briefing .table03 thead th {
	font-weight: bold;
	text-align: center;
	color: #fff;
	background-color: #447fc6;
}
.briefing .table03 thead th:first-child {
		width: 24%;
}
.briefing .table03 .summary td:first-child {
	font-weight: bold;
	background-color: #eef4fa;
}
.briefing .table03 .summary td.briefing_capacity {
	font-weight: normal;
	background-color: transparent;
}
.briefing .explain_heading {
	color: #003b83;
	font-weight: bold;
}
.briefing .open_btn li a {
	border-bottom: 1px solid #ce6c90;
}
.briefing .open_btn li a::before {
	border-color: transparent transparent #ce6c90 transparent;
}
.briefing .contact {
	border-left: double 8px #ce6c90;
}
.briefing .contact .telno {
	font-weight: bold;
}
.briefing .event_label .label_01  {
	color: #ce6c90;
	border: 4px solid #ce6c90;
}
.briefing .event_label .label_02 {
	color: #8aa8cd;
	border: 4px solid #8aa8cd;
}
.briefing .event_label .label_03 {
	color: #907798;
	border: 4px solid #907798;
}
.briefing .club_trial_info strong {
	font-size: 2rem;
	color: #003b83;
}
.briefing span.club_gender_m {
	background-color: #003b83;
	color: #fff;
	padding: 6px 8px;
	margin: 0 0 0 10px;
}
.briefing span.club_gender_f {
	background-color: #ce6c90;
	color: #fff;
	padding: 6px 8px;
	margin: 0 0 0 10px;
}
.briefing span.club_gender_mf {
	background-color: #74b574;
	color: #fff;
	padding: 6px 8px;
	margin: 0 0 0 10px;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	/*
	.briefing .table03 th,
	.briefing .table03 td {
		font-size: 1.7rem;
	}
	*/
	.briefing .heading03 {
		margin-bottom: 30px;
	}
	.briefing .event_label p {
		display: inline-block;
		font-size: 1.8rem;
		font-weight: bold;
		text-align: center;
		padding: 12px 18px;
		margin-right: 20px;
	}
	.briefing .briefing_explain {
		width: 62%;
	}
	.briefing .briefing_flow {
		width: 36%;
	}
	.briefing .contact strong {
		font-size: 1.6rem;
	}
	.briefing .contact .telno {
		font-size: 2.4rem;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.briefing .attention p strong {
		font-size: 3.6vw;
	}
	.briefing .heading03 {
		margin-bottom: 4%;
	}
	.briefing .event_label p {
		display: inline-block;
		font-size: 3.8vw;
		font-weight: bold;
		text-align: center;
		padding: 2vw 4vw;
		margin-right: 4vw;
	}
	.briefing .briefing_explain {
		margin-bottom: 30px;
	}
	.briefing .contact .telno {
		font-size: 6.4vw
	}
	.briefing .club_trial_info strong {
		font-size: 4.2vw;
		color: #003b83;
}
	.briefing .club_trial_info p.text01 {
		font-size: 3.4vw;
}
	.briefing span.club_gender_m,
	.briefing span.club_gender_f,
	.briefing span.club_gender_mf {
		margin-left: 0;
	}
}

/* = オープンスクール（/exam/openschool.html）
------------------------------------------------ */
/* PC・SP共通 */
.openschool .openschool_lead {
	font-weight: bold;
	color: #003b83;
	text-align: center;
	line-height: 1.5;
}
.openschool .os_table th,
.openschool .os_table td{
	padding: 8px 12px;
	line-height: 1.8;
}
.openschool .os_table td{
	text-align: left;
}
.openschool .date_box  {
	font-weight: bold;
}
.openschool .os_class_table td:nth-child(n+3) {
	text-align: center;
}
.openschool .os_club_table td:nth-child(n+3) {
	text-align: center;
}
.openschool  .openschool_bg_blue {
	background: repeating-linear-gradient(-45deg, #eef4fa, #eef4fa 4px, #fff 0, #fff 8px);
}
.openschool  .openschool_bg_yellow {
	background: repeating-linear-gradient(-45deg, #fffccd, #fffccd 4px, #fff 0, #fff 8px);
}
.openschool .openschool_box {
	padding: 10px 20px;
}
.openschool .openschool_box p {
	font-weight: bold;
}
.openschool .calendar-container {
	margin: 0 auto;
}
.openschool .calendar-container .calendar {
	padding: 30px;
}
.openschool .calendar-container table {
	margin-bottom: 40px;
	width: 100%;
}
.openschool .calendar-container th,
.openschool .calendar-container td {
	border: 1px solid #ccc;
	vertical-align: top;
	text-align: center;
	padding: 10px;
}
.openschool .calendar-container th {
	background: #f2f2f2;
	font-weight: bold;
	font-size: 14px;
}
.openschool .calendar-container ul {
	border-top: 1px dotted #ccc;
	padding-top: 10px;
	margin-top: 10px;
}
.openschool .calendar-container ul li {
	margin-bottom: 6px;
}
.openschool .calendar-container tr td:first-child .day {
	color: #ff838b;
}
.openschool .calendar-container tr td:last-child .day {
	color: #6fb5ff;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.openschool .clm02 {
		display: flex;
		flex-wrap: wrap;
	}
	.openschool .clm02 .item {
		width: 48.19%;
	}
	.openschool .clm02 .item:nth-child(2n) {
		margin-left: 1.81%;
	}
	.openschool .clm02 .item:nth-child(2n-1) {
		margin-right: 1.81%;
	}
	.openschool .openschool_lead {
		font-size: 30px;
		margin-bottom: 20px;
	}
	.openschool .openschool_box_left {
		padding: 30px 0 30px 100px;
	}
	.openschool .openschool_box_right {
		padding: 30px 0;
	}
	.openschool .openschool_box p {
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	.openschool .openschool_box p span.os_date {
		color: #003b83;
		font-size: 3.5rem;
	}
	.openschool .openschool_box p span.os_event {
		color: #003b83;
		font-size: 2.4rem;
	}
	.openschool .os_ttl {
		color: #003b83;
    	font-size: 5rem;
    	font-weight: bold;
	}
	.openschool .calendar-container td {
		width: 14.2%;
		font-size: 2rem;
		font-weight: bold;
	}
	.openschool .calendar-container .club_name {
		text-align: left;
		font-size: 1.4rem;
	}
	.openschool .calendar-container .club_date {
		text-align: left;
		font-size: 1.2rem;
		font-weight: normal;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.openschool .openschool_lead {
		font-size: 5.4vw;
		margin-bottom: 3.8vw;
	}
	.openschool .openschool_box {
		padding: 4vw;
	}
	.openschool .openschool_box_left {
		padding-bottom: 1.8vw;
	}
	.openschool .openschool_box_right {
		padding-top: 0;
	}
	.openschool .openschool_box p {
		font-size: 4.2vw;
	}
/*	.openschool .data-id1 {
		margin-bottom: -26px;
	}*/
	.openschool .openschool_box p span.os_date {
		color: #003b83;
		font-size: 6.2vw;
	}
	.openschool .openschool_box p span.os_event {
		color: #003b83;
		font-size: 5vw;
	}
	.openschool .os_ttl {
		color: #003b83;
    	font-size: 7vw;
    	font-weight: bold;
		margin: 10px 0
	}
	.openschool .summary td:first-child {
		width: 50px;
	}
	.scroll table {
		width:100%;
	}
	.scroll {
		overflow: auto; /*tableをスクロールさせる*/
		white-space: nowrap;
	}
	.scroll::-webkit-scrollbar {
		height: 5px;
	}
	.scroll::-webkit-scrollbar-track{
		background: #f1f1f1;
	}
	.scroll::-webkit-scrollbar-thumb {
		background: #bcbcbc;
	}
	.openschool .calendar-container {
		margin-bottom: 40px;
	}
	.openschool .calendar-container td {
		font-size: 4.25vw;
		font-weight: bold;
	}
	.openschool .calendar-container .club_name {
		text-align: left;
		font-size: 2.86vw;
	}
	.openschool .calendar-container .club_date {
		text-align: left;
		font-size: 2.8vw;
		font-weight: normal;
	}
}


/* = 募集要項（/exam/application.html）
------------------------------------------------ */

/* PC・SP共通 */
.application .attention {
	padding: 36px 24px;
	margin-bottom: 30px;
	border: 4px double #de4335;
}
.application .attention p strong {
	font-size: 1.7rem;
}
.application span.emphasis {
	color: #de4335;
	font-weight: bold;
}

.application .app_detail h4 {
	margin-bottom: 0;
}
.application .table01 tbody th,
.application .table03 tbody th{
	text-align: center;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.application .attention .lead {
		font-size: 2.4rem;
		line-height: 1.7;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	}
	.application .table01 thead th:first-child {
		width: 18%;
	}
	.application .table03 tbody th {
		width: 18%;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.application .attention .lead {
		font-size: 4.2vw;
		line-height: 1.7;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	}
	.application .attention p strong {
		font-size: 3.6vw;
	}
	.application .table01 thead th:first-child {
		width: 50%;
	}
	.application .table03 tbody th {
		width: 22vw;
	}
}

/* = 納入金・奨学金・特待生制度（/exam/cost.html）
------------------------------------------------ */

/* PC・SP共通 */
.cost .cost_2col .cost_item h4 {
	margin-bottom: 10px;
}
.cost .cost_2col .cost_item table {
	margin-bottom: 40px;
}
.cost .cost_2col .cost_item table th {
	width: 48%;
}
.cost .cost_2col .cost_item table td {
	text-align: right;
}
.cost .cost_3col .cost_item {
	text-align: center;
	background-color: #eef4fa;
}
.cost .cost_3col .cost_item p {
	text-align: center;
}
.cost .cost_3col .cost_item .ttl {
	color: #003b83;
}
.cost .tuition th {
	background-color: #447fc6;
}
.cost .uniform_boy thead th {
	color: #fff;
	background-color: #2d73a5;
	text-align: center;
	font-weight: bold;
}
.cost .uniform_boy tbody th {
	color: #2d73a5;
	background-color: #eef4fa;
}
.cost .uniform_boy .sum {
	color: #fff;
	background-color: #2d73a5;
	text-align: center;
}
.cost .uniform_girl thead th {
	color: #fff;
	background-color: #ce6c90;
	text-align: center;
	font-weight: bold;
}
.cost .uniform_girl tbody th {
	color: #ce6c90;
	background-color: #ffedf4;
}
.cost .uniform_girl .sum {
	color: #fff;
	background-color: #ce6c90;
	text-align: center;
}
.cost .uniform_common thead th {
	color: #fff;
	background-color: #74b574;
	text-align: center;
	font-weight: bold;
}
.cost .uniform_common tbody th {
	color: #74b574;
	background-color: #edfeed;
}
.cost .uniform_common .sum {
	color: #fff;
	background-color: #74b574;
	text-align: center;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.cost .cost_2col,
	.cost .cost_3col {
		display: flex;
		justify-content: space-between;
	}
	.cost .cost_2col .cost_item {
		width: 48%;
	}
	.cost .cost_3col .cost_item {
		width: 32%;
		padding: 12px 0 20px;
	}
	.cost .cost_3col .cost_item .ttl {
		font-size: 2rem;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
		margin-top: 12px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.cost .cost_3col .cost_item {
		width: 100%;
		padding: 4.8vw 0 6vw;
	}
	.cost .cost_3col .cost_item .ttl {
		font-size: 4.8vw;
		font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
		margin-top: 4vw;
	}
}

/* = よくある質問（/exam/qa.html）
------------------------------------------------ */

/* PC・SP共通 */
.qa .top_text {
	color: #124a8f;
	font-weight: bold;
	line-height: 2;
	text-align: center;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.qa .top_text {
		font-size: 1.8rem;
	}
	.qa .qa_list dt.question:before {
		position: absolute;
		left: 0;
		width: 40px;
		height: 40px;
		background: #003b83;
		color: #fff;
		content: 'Q';
		text-align: center;
		font-size: 2.4rem;
		font-family: 'Cormorant Garamond', serif;
		line-height: 40px;
		margin-left: 8px;
	}
	.qa .qa_list dt.question {
		position: relative;
		color:  #003b83;
		font-weight: bold;
		font-size: 2rem;
		line-height: 40px;
		margin-bottom: 30px;
		padding: 8px 0px 8px 60px;
		background: repeating-linear-gradient(-45deg, #e4f5ff, #e4f5ff 4px, #f7fbff 0, #f7fbff 8px);
	}
	.qa .qa_list dd.answer:before {
		position: absolute;
		left: 0;
		width: 40px;
		height: 40px;
		background: #9c225f;
		color: #fff;
		content: 'A';
		text-align: center;
		font-size: 2.4rem;
		font-family: 'Cormorant Garamond', serif;
		line-height: 40px;
		margin-left: 8px;
	}
	.qa .qa_list dd.answer {
		position: relative;
		font-size: 1.6rem;
		line-height: 40px;
		margin-bottom: 30px;
		padding: 8px 0px 30px 60px;
		border-bottom: 1px dotted #ccc;
	}
	.qa .qa_list dd li.commute_graph {
		width: 36%;
	}
	.qa .qa_list dd .club_graph {
		width: 54%;
	}

}

@media screen and (max-width: 767px) {

	/* SP */
	.qa .top_text {
		font-size: 4vw;
	}
	.qa .qa_list dt.question:before {
		position: absolute;
		left: 0;
		width: 8.6vw;
		height: 8.6vw;
		background: #003b83;
		color: #fff;
		content: 'Q';
		text-align: center;
		font-size: 4.2vw;
		font-family: 'Cormorant Garamond', serif;
		line-height: 8.6vw;
		margin-left: 2.6vw;
	}
	.qa .qa_list dt.question {
		position: relative;
		color:  #003b83;
		font-size: 3.6vw;
		line-height: 8.6vw;
		margin-bottom: 2vw;
		padding: 2.6vw 2.6vw 2.6vw 13.2vw;
		background: repeating-linear-gradient(-45deg, #e4f5ff, #e4f5ff 4px, #f7fbff 0, #f7fbff 8px);
	}
	.qa .qa_list dd.answer:before {
		position: absolute;
		left: 0;
		width: 8.6vw;
		height: 8.6vw;
		background: #9c225f;
		color: #fff;
		content: 'A';
		text-align: center;
		font-size: 4.2vw;
		font-family: 'Cormorant Garamond', serif;
		line-height: 8.6vw;
		margin-left: 2.6vw;
	}
	.qa .qa_list dd.answer {
		position: relative;
		font-size: 3.2vw;
		line-height: 6.8vw;
		margin-bottom: 4.2vw;
		padding: 1.2vw 2.6vw 4.2vw 13.2vw;
		border-bottom: 1px dotted #ccc;
	}

}


/* = お問い合わせ（/request.html）
------------------------------------------------ */

/* PC・SP共通 */

@media print, screen and (min-width: 768px) {

	/* PC */
}

@media screen and (max-width: 767px) {

	/* SP */
	.request .table03 th {
		width: 20vw;
	}
}

/* = 鵠輝祭（/koukisai.html）
------------------------------------------------ */

/* PC・SP共通 */
.koukisai .koukisai_date {
	margin-bottom: 0;
}

.koukisai .attention {
	color: #a40027;
	font-weight: bold;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.koukisai .attention {
		font-size: 1.8rem;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
}

/* = コース紹介（/course.html）
------------------------------------------------ */

/* PC・SP共通 */
.course .english_bnr p {
	color: #9c225f;
}

.course .english_bnr a {
	border-bottom: 1px solid #cd90af;
}

.course .english_bnr a:before {
	border-color: transparent transparent #cd90af transparent;
}

.course .english_bnr a:hover p {
	color: #fff;
}

.course .sam_bnr p {
	color: #2d73a5;
}

.course .sam_bnr a {
	border-bottom: 1px solid #b6d0e3;
}

.course .sam_bnr a:before {
	border-color: transparent transparent #b6d0e3 transparent;
}

.course .sam_bnr a:hover p {
	color: #fff;
}

.course .las_bnr p {
	color: #be8a26;
}

.course .las_bnr a {
	border-bottom: 1px solid #dcc79f;
}

.course .las_bnr a:before {
	border-color: transparent transparent #dcc79f transparent;
}

.course .las_bnr a:hover p {
	color: #fff;
}

@media print, screen and (min-width: 768px) {

	/* PC */
}

@media screen and (max-width: 767px) {

	/* SP */
}

/* = 下層インデックスページ共通
------------------------------------------------ */

/* PC・SP共通 */
.page_list .text_lead {
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	text-align: center;
}

@media print, screen and (min-width: 768px) {

	/* PC */
	.page_list .text_lead {
		font-size: 3.8rem;
		line-height: 1.7;
		margin-bottom: 10px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
		.page_list .text_lead {
		font-size: 5.8vw;
		line-height: 1.7;
		margin-bottom: 2.4vw;
	}
}


/* = コース共通
------------------------------------------------ */
/* PC・SP共通 */
.page_course .clm02 {
	display: flex;
	justify-content: space-between;
}

.page_course .clm02 .text_btn01 li a {
	display: block;
}

.page_course .card01 .item .clm02 {
	align-items: flex-end;
	border-bottom: 1px solid #ccc;
}

.page_course .name {
	font-weight: bold;
	text-align: right;
}

.page_course .student_voice {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.page_course .student_voice .clm02 {
	background-color: #fff;
}

.page_course .student_voice .clm02 .inner .ttl {
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
}

.page_course .student_voice .clm02 .inner .copy {
	font-weight: bold;
	line-height: 1.7;
}



@media print, screen and (min-width: 768px) {
	/* PC */

	.page_course .clm02 .text_area {
		width: 51.9%;
	}

	.page_course .clm02 .popup {
		width: 43.7%;
	}

	.page_course .card01 .number.word05 {
		top: 18px;
		left: 13px;
		font-size: 1.3rem;
		line-height: 1.2;
	}

	.page_course .card01 .clm02 .img {
		width: 49.02%;
	}

	.page_course .card01 .clm02 .text_area {
		width: 62%;
	}

	.page_course .card01 .item {
		border-bottom: 0;
	}

	.page_course .card01 .img.teacher {
		width: 30.2%;
	}

	.page_course .name {
		font-size: 1.5rem;
	}

	.page_course .data_ttl {
		font-weight: bold;
		font-size: 1.8rem;
	}
	.page_course .student_voice {
		padding: 45px 0;
	}

	.page_course .w1100 {
		max-width: 1100px;
		margin: 0 auto;
	}

	.page_course .student_voice .clm02 .inner {
		width: 66.4%;
		padding: 30px 0 35px 40px;
	}

	.page_course .student_voice .clm02 .inner .ttl {
		margin-bottom: 20px;
		font-size: 3.2rem;
	}

	.page_course .student_voice .clm02 .inner .copy {
		margin-bottom: 15px;
		font-size: 2rem;
	}

	.page_course .student_voice .clm02 .img {
		width: 26.37%;
	}


}

@media screen and (max-width: 767px) {

	/* SP */

	.page_course .contents {
		padding-bottom: 0;
	}

	.page_course .clm02 {
		display: block;
	}

	.page_course .clm02 .card01 .item .img img {
		width: 100%;
	}

	.page_course .clm02 .card01 .item .clm02 {
		display: flex;
		justify-content: space-between;
	}

	.page_course .clm02 .card01 .item .clm02 .img {
		width: 49%;
	}

	.page_course .content_03 .text_area {
		width: 85%;
		margin-bottom: 3%;
	}

	.page_course .content_03 .clm02 .card01 .item .teacher {
		width: 40%;
	}

	.page_course .name {
		padding: 0 2.66vw;
		font-size: 2.4rem;
		font-size: 3vw;
	}

	.page_course .data_ttl {
		font-weight: bold;
		padding-bottom: 2.4vw;
		font-size: 2.4rem;
		font-size: 3.6vw;
	}

	.page_course .card01 .ttl_area .number.word05 {
		top: 3.3vw;
		left: 2vw;
	}

	.page_course .student_voice {
		padding: 4.66vw;
	}

	.page_course .student_voice .clm02 {
		padding: 4.66vw;
	}

	.page_course .student_voice .clm02 .inner .ttl {
		margin-bottom: 4%;
		font-size: 4.5rem;
		font-size: 6vw;
	}

	.page_course .student_voice .clm02 .inner .copy {
		margin-bottom: 4%;
		font-size: 3rem;
		font-size: 4vw;
	}

	.page_course .student_voice .name {
		margin-bottom: 5%;
	}

	.page_course .student_voice .clm02 .img img {
		width: 100%;
	}

	.page_course .menu01 {
		padding-bottom: 15vw;
	}
	
	.page_course .voice .card02 .item .text_area .bottom .name_area {
		display: flex;
		justify-content: space-between;
	}
	
	.page_course .voice .card02 .item .text_area .bottom .name_area .college{
		font-size: 3.4vw;
		line-height: 4.3vw;
	}
}


/* = 英語コース（/course/english.html）
------------------------------------------------ */

/* メインビジュアル */
.page_main.english::before {
	border-bottom-color: #f5ebef;
}

.page_main.english .lead {
	color: #9c225f;
}

/* コンテンツエリア */
.page_course.english .contents .heading02 {
	color: #9c225f;
}

.page_course.english .contents .data_ttl {
	color: #9c225f;
}

.page_course.english .heading02::after {
	background: #9c225f;
}

.page_course.english .text_btn01 li a {
	border-bottom: 1px solid #e1c3d2;
}

.page_course.english .text_btn01 li a::before {
	border-color: transparent transparent #e1c3d2 transparent;
}

.page_course.english .click_btn::after {
	background-image: url(../img/course/popup_english.svg);
}

.page_course.english .card01 .ttl_area::after {
	border-color: #cd90af transparent transparent transparent;
}

.page_course.english .name {
	color: #9c225f;
}

.page_course.english .student_voice {
	background-image: url(../img/course/bg_voice_english.jpg);
}

.page_course.english .student_voice .clm02 .inner .copy {
	color: #9c225f;
}

.page_course.english .result {
	padding: 26px;
	background-color: #fff3fa;
}

.page_course.english .card01 .img.teacher {
	width: 35.2%;
}

.page_course.english .english-point-1col .item {
	width: 100%;
	margin-bottom: 0;
}

.page_course.english .english-point-02 .item img {
	margin-bottom: 20px;
}

@media print, screen and (min-width: 768px) {
	/* PC */
	.page_course.english .english-point-02 .item:first-child {
		width: 65.44%;
	}
	
	.page_course.english .english-point-02 .item {
		width: 30.91%;
	}
	.page_course.english .english-point-02 .item img {
		margin-bottom: 20px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.page_main.english .page_main_inner::before,
	.page_main.english .page_main_inner::after {
		border-bottom-color: #f5ebef;
	}
}


/* = 理数コース（/course/sam.html）
------------------------------------------------ */

/* コンテンツエリア */
.page_course.sam .contents .heading02 {
	color: #2d73a5;
}

.page_course.sam .heading02::after {
	background: #4b85af;
}

.page_course.sam .text_btn01 li a {
	border-bottom: 1px solid #b6d0e3;
}

.page_course.sam .text_btn01 li a::before {
	border-color: transparent transparent #b6d0e3 transparent;
}

.page_course.sam .click_btn::after {
	background-image: url(../img/course/popup_math.svg);
}

.page_course.sam .name {
	color: #2d73a5;
}

.page_course.sam .data_ttl {
	color: #2d73a5;
}

.page_course.sam .student_voice {
	background-image: url(../img/course/bg_voice_math.jpg);
}

.page_course.sam .student_voice .clm02 .inner .copy {
	color: #2d73a5;
}

.page_course.sam .result {
	padding: 26px;
	background-color: #e9f7ff;
}

/* = 文理コース（/course/las.html）
------------------------------------------------ */

/* メインビジュアル */
.page_main.las::before {
	border-bottom-color: #f3ebdb;
}

.page_main.las .lead {
	color: #be8a26;
}

/* コンテンツエリア */
.page_course.las .contents .heading02 {
	color: #be8a26;
}

.page_course.las .heading02::after {
	background: #c39949;
}

.page_course.las .text_btn01 li a {
	border-bottom: 1px solid #dcc79f;
}

.page_course.las .text_btn01 li a::before {
	border-color: transparent transparent #dcc79f transparent;
}

.page_course.las .click_btn::after {
	background-image: url(../img/course/popup_literature.svg);
}

.page_course.las .card01 .ttl_area::after {
	border-color: #d2b98a transparent transparent transparent;
}

.page_course.las .name {
	color: #be8a26;
}

.page_course.las .data_ttl {
	color: #be8a26;
}

.page_course.las .student_voice {
	background-image: url(../img/course/bg_voice_literature.jpg);
}

.page_course.las .student_voice .clm02 .inner .copy {
	color: #be8a26;
}

.page_course.las .result {
	padding: 26px;
	background-color: #fffcee;
}

@media screen and (max-width: 767px) {

	/* SP */
	.page_main.las .page_main_inner::before,
	.page_main.las .page_main_inner::after {
		border-bottom-color: #f3ebdb;
	}
}


/* = カリフォルニア大学語学研修（/course/english/california.html）
------------------------------------------------ */

/* PC・SP共通 */
.california .heading04 {
	color: #9c225f;
}

@media screen and (min-width: 768px) {

	/* PC */
	.california .top_text {
		font-size: 1.8rem;
	}

	.california .top {
		margin-bottom: 20px;
		padding-bottom: 20px;
		border-bottom: 2px dotted #cd90af;
	}

	.california .top p {
		display: inline-block;
		margin: 0 28px 0 0;
	}

	.california .top p {
		font-size: 1.6rem;
		font-weight: bold;
	}

	.california .top p span.california_label {
		background-color: #9c225f;
		color: #fff;
		padding: 6px 8px;
		margin: 0 6px 0 0;
	}

	.california .card01 .ttl_area .number {
		top: 14px;
		left: 14px;
	}

	.california .heading04 {
		margin-bottom: 40px;
		padding: 10px 50px;
		font-size: 2.4rem;
	}

	.california .heading04::before {
		border-bottom: 38px solid transparent;
		border-left: 38px solid #cd90af;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.california {
		padding-bottom: 0;
	}
	.california .top_text {
		padding-top: 5%;
		font-size: 3rem;
		font-size: 4vw;
	}
	.california .top p {
		font-size: 3.6vw;
		font-weight: bold;
		margin-bottom: 5.8vw;
	}
	.california .top p span.california_label {
		background-color: #9c225f;
		color: #fff;
		padding: 1.8vw 3.2vw;
		margin: 0 12px 0 0;
	}

	.california .heading04 {
		margin-bottom: 5.5%;
		padding: 1% 3% 1% 8.5%;
		border-top-width: 2px;
		font-size: 3.2rem;
		font-size: 4.25vw;
	}

	.california .heading04::before {
		border-bottom: 6.7vw solid transparent;
		border-left: 6.7vw solid #cd90af;
	}
	.california .card01 .ttl_area .number {
		top: 3vw;
		left: 3vw;
	}
}

/* = 鵠沼サイエンス・プログラム（/course/sam/science.html）
------------------------------------------------ */

/* PC・SP共通 */
.science .top_text {
	font-weight: bold;
	line-height: 2;
	text-align: center;
}

.science .science_point .item {
	border-bottom: 1px solid #e5ebf2;
}

.science .ttl_area::after {
	border-color: #2d73a5 transparent transparent transparent;
}

.science .ttl_area .ttl {
	color: #2d73a5;
	font-size: 2.4rem;
}

.science .ttl_area .number {
	top:12px;
	left: 12px;
}

.science .program_case .heading05 {
	color: #2d73a5;
	border-bottom: 2px dotted #2d73a5;
}

.science .table_science thead th {
	background-color: #2d73a5;
}

.science .table_science tbody th {
	color: #2d73a5;
}

@media screen and (min-width: 768px) {

	/* PC */
	.science .top_text {
		font-size: 1.8rem;
	}

	.science .heading04::before {
		border-bottom: 38px solid transparent;
		border-left: 38px solid #8aa8cd;
	}

	.science .program_case .heading05 {
		padding: 12px 0 10px 0;
		margin-bottom: 10px;
	}

	.science .table_science tbody td {
		width: 64%;
		padding: 13px 23px;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.science .top_text {
		padding-top: 5%;
		font-size: 2.8rem;
		font-size: 4vw;
	}

	.science .ttl_area .number {
		left: 8px;
}
	.science .heading04 {
		margin-bottom: 1%;
		padding: 1% 3% 1% 8.5%;
		border-top-width: 2px;
		font-size: 3.2rem;
		font-size: 4.25vw;
	}

	.science .heading04::before {
		border-bottom: 6.7vw solid transparent;
		border-left: 6.7vw solid #8aa8cd;
	}

	.science .program_case .heading05 {
		padding: 2.4vw 0 2vw 0;
		margin-bottom: 2.4vw;
	}
}

/* = 新校舎建設プロジェクト（/newbuilding）
------------------------------------------------ */

/* PC・SP共通 */
.newbuilding .project-attention p {
	text-align: right;
}
.newbuilding .project-heading-sub {
	color: #fff;
	background-color: #000;
	display: inline-block;
}
.newbuilding .project-heading-main {
	color: #005d97;
	font-weight: bold;
}
.newbuilding .project-lead-text {
	font-family:  "MS P明朝", "MS PMincho", serif;
	letter-spacing: 0.1em;
	font-weight: bold;
}
.newbuilding .project-notice {
	padding: 1.5em 0;
	border-top: 1px dashed #eb6d8e;
	border-bottom: 1px dashed #eb6d8e;

}
.newbuilding .project-notice-text {
	color: #eb6d8e;
}
.newbuilding .newbuilding-report-list-item a {
	transition: all 0.3s ease 0s;
}
.newbuilding .newbuilding-report-list-item a:hover {
	opacity: 0.7;
}
.newbuilding .newbuilding-report-list-item img {
	display: block;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}
.newbuilding .newbuilding-report-text {
	margin-top: 4px;
}
.newbuilding .newbuilding-report-text,
.newbuilding .newbuilding-gallery-text {
	color: #313131;
	text-align: justify;
}

@media screen and (min-width: 768px) {

	/* PC */
	.newbuilding .mv {
		height: 47rem;
		overflow: hidden;
	}
	.newbuilding .mv-wrap img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.newbuilding .project-attention {
		margin-bottom: 40px;
	}
	.newbuilding .project-attention p {
		font-size: 1.4rem;
	}
	.newbuilding .project-heading-sub {
		font-size: 18px;
		padding: 2px 38px;
	}
	.newbuilding .project-heading-main {
		font-size: 52px;
		margin-bottom: 10px;
	}
	.newbuilding .project-lead {
		margin-bottom: 60px;
	}
	.newbuilding .project-lead-text {
		font-size: 18px;
	}
	.newbuilding .project-notice {
		margin-bottom: 60px;
	}
	.newbuilding .content_02 .item {
		margin-bottom: 60px;
	}
	.newbuilding .content_02 .item .ttl {
		font-size: 2.4rem;
	}
	.newbuilding-report-list {
		display: flex;
		flex-wrap: wrap;
	}
	.newbuilding-report-list-item {
		width: 30.91%;
		margin-right: 3.62%;
		margin-bottom: 40px;
	}
	.newbuilding-report-list-item:nth-child(3n) {
		margin-right: 0;
	}
}

@media screen and (max-width: 767px) {

	/* SP */
	.newbuilding .project-attention {
		margin-bottom: 4vw;
	}
	.newbuilding .project-attention p {
		font-size: 3vw;
	}
	.newbuilding .project-heading-sub {
		font-size: 3.6vw;
		padding: 0.75vw 4.6vw;
		margin-bottom: 1.5vw;
	}
	.newbuilding .project-heading-main {
		font-size: 7vw;
		margin-bottom: 2vw;
	}
	.newbuilding .project-lead {
		margin-bottom: 8vw;
	}
	.newbuilding .project-lead-text {
		font-size: 3.8vw;
	}
	.newbuilding .project-notice-text {
		font-size: 3vw;
	}
	.newbuilding-report-list-item {
		margin-bottom: 8vw;
	}
	.newbuilding .newbuilding-report-text,
	.newbuilding .newbuilding-gallery-text,
	.newbuilding .newbuilding-report-date {
		font-size: 3.466vw;
	}
}

/* = 申し込みフォーム（/exam/brirfing/application.html）
------------------------------------------------ */
/* PC・SP共通 */
.form td.survey_check input {
	margin-bottom: 12px;
}

/* = 投稿記事ギャラリー調整
------------------------------------------------ */

/* PC・SP共通 */
.gallery {
	width: 100%;
	margin: 20px 0;
	overflow: hidden;
}
.gallery br { 
	display: none;
} 
.gallery-item {
	float: left;
	margin-bottom: 0;
}
.gallery-icon {
	text-align: center;
}
.gallery-icon img {
	width: 100%;
	height: auto;
	margin-bottom: 16px;
}
.gallery-caption {
	margin: 0 0 20px;
}
.gallery-columns-1 .gallery-item {
	width: 100%;
	margin-right: 0;
}
.gallery-columns-2 .gallery-item {
	width: 48%;
	margin: 0 1%;
}
.gallery-columns-3 .gallery-item {
	width: 31.33333%;
	margin: 0 1%;
}
.gallery-columns-4 .gallery-item {
	width: 23%;
	margin: 0 1%;
}
.gallery-columns-5 .gallery-item {
	width: 18%;
	margin: 0 1%;
}

@media print, screen and (min-width: 768px) {

	/* PC */

}

@media screen and (max-width: 767px) {

	/* SP */
	.gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item {
		width: 48%;
		margin: 0 1%;
	}
	.gallery-columns-5 .gallery-item {
		width: 31.33333%;
		margin: 0 1%;
	}
}


/* = 投稿ページ共通
------------------------------------------------ */

/* PC・SP共通 */

.side_menu {
	text-align: left;
	line-height: 2;
}

.side_menu h3 {
	color: #fff;
	font-weight: bold;
	background: #8aa8cd;
}

.side_menu li {
	list-style: none;
}

.side_menu a {
	display: block;
	position: relative;
	color: #003c7e;
	font-weight: 700;
	text-decoration: none;
	border-bottom: 1px solid #e4e4e4;
	background: #f6f6f6;
	background-clip: padding-box;
}

.side_menu a::before {
	content: "";
	display: block;
	position: absolute;
}

.side_menu a:hover {
	color: #313131;
	background-color: #eeeeee;
}

.page_post .date_wrap {
    display: flex;
    justify-content: flex-end;
    text-align: right;
}

.page_post .news_date {
	color: #707070;
	text-align: right;
}

.page_post .news_category {
    margin-left: 10px;
    color: #707070;
    font-size: 1.5rem;
}

.page_post .page_link {
	position: relative;
}

.page_post .page_link::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.page_post .pagination {
	display: flex;
	justify-content: center;
	align-items: center;
}

.page_post .pagination a {
	display: block;
	position: relative;
	background-color: #f6f6f6;
	text-align: center;
}

.page_post .pagination .current {
	color: #fff;
	background-color: #8aa8cd;
	text-align: center;
}

.page_post .pagination a:hover {
	color: #fff;
	background-color: #8aa8cd;
	text-decoration: none;
}

.page_post .pagination .prev,
.news_list .pagination .next {
	position: relative;
}

.page_post .pagination .prev {
	transform: rotate(180deg);
}

.page_post .pagination .prev::before,
.page_post .pagination .next::before {
	content: "";
	display: block;
	position: absolute;
	background: url(../img/shared/icon_link01_blue.svg) no-repeat;
}


@media screen and (min-width: 768px) {

	/* PC */
	.news_detail .news_list .diary_detail .diary_list {
		width: 100%;
	}

	.news_detail .inner, .news_list .inner, .diary_detail .inner, .diary_list .inner {
		max-width: 800px;
		width: 73%;
		float: left;
	}

	.news_detail .sticky, .news_list .sticky, .diary_detail .sticky, .diary_list .sticky {
		position: -webkit-sticky;
		position: sticky;
		top: 100px;
		max-width: 250px;
		width: 27%;
		float: right;
	}
    .news_detail .inner .text01 p, .news_list .inner .text01 p, .diary_detail .inner .text01 p, .diary_list .inner .text01 p {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 10px;
    }
    .news_detail .inner .text01 p img, .news_list .inner .text01 p img, .diary_detail .inner .text01 p img, .diary_list .inner .text01 p img {
        padding: 5px;
    }

	.clear {
		clear: both;
	}

	.side_menu ul {
		padding-bottom: 5px;
		background: #f6f6f6;
	}

	.side_menu h3 {
		font-size: 1.8rem;
		padding: 8px 18px;
	}

	.side_menu a {
		font-size: 1.6rem;
		padding: 8.5px 18px;
	}

	.side_menu a::before {
		top: 55%;
		right: 20px;
		width: 8px;
		height: 10px;
		margin-top: -8px;
		background: url(../img/shared/icon_link01_blue.svg) no-repeat 50% 0 / 8px 10px;
	}

	.side_menu a:hover {
		color: #313131;
		background-color: #eeeeee;
	}

	.page_post .news_date {
        margin-bottom: 10px;
		font-size: 1.5rem;
	}
    
    .page_post .cate {
        margin-left: 10px;
    }
    
    .page_post .cate a {
        padding: 0 5px;
		font-size: 1.5rem;
	}

	.page_post .heading02 {
		margin-bottom: 0;
	}

	.page_post .page_link {
		min-height: 30px;
		padding-top: 30px;
		font-size: 2rem;
	}

	.page_post .page_link a {
        display: inline-block;
		position: absolute;
		top: 0;
		left: 38%;
		margin-top: 25px;
	}

	.page_post .page_link a:hover {
		text-decoration: none;
	}

	.page_post .page_link::before {
		height: 5px;
		background: repeating-linear-gradient(-45deg, #c0cfe1, #c0cfe1 1px, white 2px, white 5px);
	}

	.page_post .page_link .back_page {
		top: 0;
		left: 0;
	}

	.page_post .page_link .list_page {
		top: 0;
		left: 42.5%;
	}

	.page_post .page_link .next_page {
		top: 0;
		right: 0;
        left: auto;
		padding: 0 22px 0 0;
	}

	.page_post .page_link .back_page::before {
		transform: rotate(180deg);
	}

	.page_post .page_link .next_page::before {
		left: 92px !important;
	}

	.page_post .pagination a,
	.page_post .pagination .current {
		margin: 0 5px;
	}

	.page_post .pagination a,
	.page_post .pagination .current,
	.page_post .pagination .prev,
	.page_post .pagination .next {
		width: 50px;
		height: 50px;
	}

	.page_post .pagination a,
	.page_post .pagination .current {
		font-size: 2rem;
		line-height: 50px;
	}

	.page_post .pagination .prev::before,
	.page_post .pagination .next::before {
		width: 14px;
		height: 20px;
		background-size: 14px;
	}

	.page_post .pagination .prev:hover::before,
	.page_post .pagination .next:hover::before {
		background: url(../img/shared/icon_link01_white.svg) no-repeat;
		background-size: 14px;
	}

	.page_post .pagination .prev::before {
		top: 32%;
		left: 38%;
	}

	.page_post .pagination .next::before {
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	.pickup, .blog {
		width: 800px;
	}

}

@media screen and (max-width: 767px) {

	/* SP */

	.accordion {
		margin-top: 10.66%;
	}

	.side_menu {
		width: 100%;
		margin-bottom: 5vw !important;
		font-size: 3.2rem;
	}

	.side_menu:last-child {
		margin-bottom: 0 !important;
	}

	.side_menu ul {
		display: none;
	}

	.side_menu h3 {
		padding: 3.02vw 4vw;
		font-size: 3.2rem;
	}

	.side_menu a {
		padding: 3.37vw 4vw;
		font-size: 2.8rem;
	}

	.side_menu h3, .side_menu a {
		position: relative;
	}

	.side_menu h3::after {
		content: "";
		position: absolute;
		top: 0;
		right: 5.33vw;
		width: 2.533vw;
		height: 100%;
		background: url(../img/shared/icon_link01_white.svg) no-repeat 50% 50% / 100% auto;
		transform: rotate(90deg);
		transition: transform .2s;
	}

	.side_menu h3.opened::after {
		transform: rotate(-90deg);
	}

	.side_menu a::before {
		top: 40%;
		right: 5.33vw;
		width: 2.53vw;
		height: 4vw;
		background: url(../img/shared/icon_link01_blue.svg) no-repeat 50% 0 / 2.53vw auto;
	}

	.page_post .news_date {
		font-size: 2.2rem;
		margin-bottom: 1.2vw;
	}
    
    .page_post .cate {
		font-size: 2.2rem;
		margin: 0 0 1.2vw 1.2vw;
	}
    
    .page_post .cate a {
        margin: 0 1vw;
    }

    .page_post .news_category {
        font-size: 2.2rem;
    }

	.page_post .page_link {
		min-height: 4vw;
		padding-top: 5%;
		font-size: 2.6rem;
		text-align: center;
	}

	.page_post .page_link::before {
		height: 4px;
		background: repeating-linear-gradient(-45deg, #c0cfe1, #c0cfe1 1px, white 1px, white 4px);
	}

	.page_post .page_link a {
		position: absolute;
        top: 0;
		left: 29%;
		margin-top: 4vw;
	}

	.page_post .page_link .back_page {
		top: 0;
		left: 0;
	}

	.page_post .page_link .list_page {
		top: 0;
		left: 37%;
	}

	.page_post .page_link .next_page {
		top: 0;
		right: 0;
        left: auto;
		padding: 0 5.5vw 0 0;
	}

	.page_post .page_link .back_page::before {
		transform: rotate(180deg);
	}

	.page_post .page_link .next_page::before {
		left: 16.3vw !important;
	}

	.page_post .pagination a {
		margin: 0 1vw;
	}

	.page_post .pagination a,
	.page_post .pagination .current,
	.page_post .pagination .prev,
	.page_post .pagination .next {
		width: 9vw;
		height: 9vw;
	}

	.page_post .pagination a,
	.page_post .pagination .current {
		font-size: 2.7rem;
		line-height: 9vw;
	}

	.page_post .pagination .prev::before,
	.page_post .pagination .next::before {
		width: 2.4vw;
		height: 3vw;
		background-size: 2.4vw 3vw;
	}

	.page_post .pagination .prev:hover::before,
	.page_post .pagination .next:hover::before {
		background: url(../img/shared/icon_link01_white.svg) no-repeat;
		background-size: 3vw;
	}

	.page_post .pagination .prev::before {
		top: 29%;
		left: 36%;
	}

	.page_post .pagination .next::before {
		top: 50%;
		left: 50%;
		transform: translate(-50%, -57%);
	}

}

/* = 限定公開
------------------------------------------------ */

/* PC・SP共通 */

.custom_password_aria form p {
	margin-bottom: 24px;
	font-size: 1.5rem;
    line-height: 2;
}

.post-password-form {
	max-width: 1100px;
	margin: 0 auto 20px;
	padding: 20px;
}

.post-password-form p {
	margin-bottom: 24px;
	font-size: 1.5rem;
    line-height: 2;
}



/* = ピックアップ(pickup.html)
------------------------------------------------ */


/* = 校長ブログ(principalblog.html)
------------------------------------------------ */

/* PC・SP共通 */

.blog .text01 {
	position: relative;
}

.blog .text01::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #dcdcdc;
}

@media screen and (min-width: 768px) {

	/* PC */

	.blog .text01 {
		padding-top: 30px;
	}

}

@media screen and (max-width: 767px) {

	/* SP */

	.blog .text01 {
		padding-top: 4%;
	}

}

/* = ニュースリスト(news_list.html)
------------------------------------------------ */

/* PC・SP共通 */

.news_list .top_news {
	padding: 1px 0 0;
}

.news_list .top_news ul {
	border-top: 1px solid #e5ebf2;
}

.news_list .top_news ul li {
	border-bottom: 1px solid #e5ebf2;
}

.news_list .top_news ul li time {
	width: 14%;
	color: #95a2b3;
	line-height: 1.5;
}

.news_list .top_news ul li .category {
	display: inline-block;
    margin-right: 1em;
	color: #fff;
	font-weight: 700;
	text-align: center;
}

.news_list .top_news ul li .category01 {
	background-color: #556fb5;
}

.news_list .top_news ul li .category02 {
	background-color: #64c2be;
}

.news_list .top_news ul li .category03 {
	background-color: #aa89bd;
}

.news_list .top_news ul li .category04 {
	background-color: #b6ae42;
}

.news_list .top_news ul li .category05 {
	background-color: #95a2b3;
}

.news_list .top_news ul li .title {
	position: relative;
	line-height: 1.3;
}

.news_list .top_news ul li a {
	position: relative;
}

.news_list .top_news ul li a:hover {
	text-decoration: none;
}

.news_list .top_news ul li .title:hover {
	text-decoration: underline;
}

.news_list .top_news ul li .title::after {
	content: "";
	display: block;
	position: absolute;
	background: url(../img/shared/icon_link01_glay.svg) no-repeat;
}

@media screen and (min-width: 768px) {

	/* PC */

	.news_list .news_list .top_news {
		position: relative;
		margin: 0 auto;
	}

	.news_list .top_news ul {
		margin: 0 auto;
	}

	.news_list .top_news ul li {
		padding: 20px 0;
	}

	.news_list .top_news ul li time {
        display: inline-block;
		width: 12%;
		padding: 0 2%;
		font-size: 1.6rem;
	}
    
    .news_list .top_news ul li a p {
		display: inline-block;
	}

	.news_list .top_news ul li .category {
		min-width: 70px;
        padding: 5px 10px;
		font-size: 1.35rem;
	}

	.news_list .top_news ul li .title {
        display: block;
		width: auto;
        margin-top: 15px;
		padding: 0 2%;
		font-size: 1.5rem;
	}

	.news_list .top_news ul li .title::after {
		top: 3px;
		right: 1.5%;
		width: 12px;
		height: 14px;
		background-size: 12px 14px;
	}

}

@media screen and (max-width: 767px) {

	/* SP */

	.news_list .top_news {
		margin-bottom: 6.66% !important;
	}

	.news_list .top_news ul li a {
		display: block;
		padding: 3vw 2vw 3vw 2vw;
	}

	.news_list .top_news ul li a p {
		display: inline-block;
        margin-right: 1em;
	}

	.news_list .top_news ul li time {
		margin-right: 1em;
		font-size: 2.2rem;
	}

	.news_list .top_news ul li .category {
		width: 100%;
		min-width: 7em;
		padding: 0.8vw 0;
		font-size: 1.8rem;
		font-size: 2.4vw;
	}

	.news_list .top_news ul li .title {
		width: 100%;
        margin-right: 0;
		padding: 3% 0 0 0;
		font-size: 1.3rem;
		font-size: 3.466vw;
		line-height: 1.5;
	}

	.news_list .top_news ul li a::after {
		top: 0;
		right: 3vw;
		bottom: 0;
		width: 3vw;
		height: 3vw;
		margin: auto;
		background-size: 3vw 3vw;
	}

}


/* = ダイアリー一覧(diary_detail.html)
------------------------------------------------ */

/* PC・SP共通 */

.diary_detail .page_link {
	display: flex;
	justify-content: space-between;
}


/* = ダイアリーリスト(diary_list.html)
------------------------------------------------ */

/* PC・SP共通 */

.diary_list .inner_text {
	border-bottom: 1px solid #e5ebf2;
}
.diary_list .news_item {
    clear: both;
}
.diary_list .news_item .news_image {
    width: 340px;
    margin: 30px 0 30px 30px;
    float: right;
}
.diary_list .news_item .news_image img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}
.diary_list .news_item .heading02 {
    padding: 30px 4px 20px 4px;
    font-size: 2.8rem;
}
.diary_list .news_item .news_date {
    display: inline-block;
    margin-bottom: 15px;
    text-align: left;
}
.diary_list .news_item .news_category {
    display: inline-block;
    margin-left: 8px;
    color: #707070;
    font-size: 1.5rem;
}

.diary_list .news_item .text01 {
    margin-bottom: 15px;
}
.diary_list .news_item .news_more {
    margin-bottom: 35px;
    text-align: right;
}
.diary_list .news_item .news_more a {
    font-size: 1.8rem;
    font-weight: bold;
}
@media screen and (max-width: 767px) {

	/* SP */
    .diary_list .news_item .news_image {
        width: 45%;
        height: auto;
        margin: 4vw 0 2.66vw 2vw;
    }
    .diary_list .news_item .news_image img {
        height: 30vw;
    }
    .diary_list .news_item .heading02 {
        padding: 4vw 0 2vw 0;
        font-size: 3.3rem;
        font-size: 4.4vw;
    }
    .diary_list .news_item .news_category {
        margin-left: 1vw;
        font-size: 2.2rem;
    }
    .diary_list .news_item .text01 {
        margin-bottom: 3vw;
        clear: both;
    }
    .diary_list .news_item .news_more {
        margin-bottom: 4vw;
    }
    .diary_list .news_item .news_more a {
        font-size: 2.6rem;
        font-size: 3.466vw;
    }



}



/* = ポップアップウインドウ
------------------------------------------------ */

.popupbg {
	position: fixed;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.7);
	z-index: 10;
	top: 0;
	left: 0;
	display: none;
}

.pop:hover {
	text-decoration: none !important;
}

.pop .click_btn {
	position: relative;
	padding: 15px 25px 15px 0;
	color: #313131;
	font-size: 1.5rem;
	font-weight: bold;
	text-align: right;
}

.pop .click_btn::after {
	content: "";
	display: block;
	position: absolute;
	width: 16px;
	height: 16px;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	background-repeat: no-repeat;
	background-size: 15px;
}

.popup_wrapper {
	width: 700px;
	height: auto;
	position: fixed;
	top: 50%;
	left: 42.5%;
	margin: -270px 0 0 -250px;
	z-index: 11;
	text-align: center;
	display: none;
}

.popup_wrapper .popup {
	position: relative;
}

.popup_wrapper .img {
	display: inline-block;
	width: 100%;
	height: auto;
}

.popup_wrapper .caption {
	padding: 20px;
	font-size: 1.8rem;
	color: #fff;
}

.popup_wrapper .close_btn {
	position: absolute;
	right: 0;
	top: 0;
	width: 30px;
	height: 30px;
	padding-left: 1px;
	border-radius: 15px;
	background: #FFF;
	margin: -15px -15px 0 0;
	font-size: 2.4rem;
	line-height: 1.3;
	vertical-align: middle;
	text-align: center;
	cursor: pointer;
}


@media screen and (max-width: 767px) {

	/* SP */

	.pop img {
		width: 100%;
	}

	.pop .click_btn {
		font-size: 2.6rem;
		font-size: 3.5vw;
	}

	.item_wrapper a {
		width: 100%;
	}

	.popup_wrapper {
		width: 88vw;
		margin: -35vw 0 0 -37vw;
	}

	.popup_wrapper .close_btn {
		width: 8vw;
		height: 8vw;
		border-radius: 6vw;
		font-size: 5.9vw;
	}

}

.notfound .heading05 {
    font-size: 5.2rem;
}
@media screen and (max-width: 767px) {
    .contents.notfound {
        padding: 0 2.66vw 4vw;
    }
    .notfound .heading05 {
        margin-bottom: 2%;
    }
}

/* -----------------------------------------------
= print
----------------------------------------------- */
@media print {
	.header {
		position: relative;
	}
}

/* @media */


/* -----------------------------------------------
= オープンキャンパスのYoutubeセンタリングと枠線用
------------------------------------------------ */
.video iframe {
	display : block;
	margin : 0 auto;
	width: 560px;
	height: 315px;
	border: 1px solid;
}

@media screen and (max-width: 767px) {

	/* SP */
	.video iframe {
		display : block;
		margin : 0 auto;
		width: 80%;
		height: 80%;
		border: 1px solid;
	}
}

/* -----------------------------------------------
= 二重打ち消し線
------------------------------------------------ */
.doubleline {
	background-image: url(../img/shared/doubleLine_black.png);
	background-repeat: repeat-x;
	background-position: center;
}
