@charset "UTF-8";

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure,  footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; font-family: sans-serif;}  body { line-height:1; }  article,aside,details,figcaption,figure, footer,header,hgroup,menu,nav,section {  display:block; }  nav ul { list-style:none; }  blockquote, q { quotes:none; }  blockquote:before, blockquote:after, q:before, q:after { content:''; content:none; }  a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }  / change colours to suit your needs / ins { background-color:#ff9; color:#000; text-decoration:none; }  / change colours to suit your needs / mark { background-color:#ff9; color:#000;  font-style:italic; font-weight:bold; }  del { text-decoration: line-through; }  abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }  table { border-collapse:collapse; border-spacing:0; }  /* change border colour to suit your needs  */ hr { display:block; height:1px; border:0;  border-top:1px solid #cccccc; margin:1em 0; padding:0; }  input, select { vertical-align:middle; } 

html {
	font-size: 10px;
}
body {
	  font-family: "Helvetica Neue",
		Arial,
		"Hiragino Kaku Gothic ProN",
		"Hiragino Sans",
		"Meiryo",
		sans-serif;
		font-size: 1.6rem;
		color: #5e5d5c;
		font-weight: 500;
}

.center {
	text-align: center;
}

.sec1 a[target="_blank"],
.sogo a[target="_blank"]	{
	color: #007a78;
	text-decoration: none;
	font-weight: bold;
}

.sec1 a[target="_blank"]:after,
.sogo a[target="_blank"]:after	{
	content: "";
	background-image: url(../img/ext_link.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 1.6rem;
	height: 1.6rem;
	margin: 0 0.1rem;
}
p	{
	line-height: 1.2;
}

br.pc	{
	display: inline-block;
}
.block	{
	display: block;
}
.serif	{
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
}

.text-center	{
	text-align: center;
}
.text-left	{
	text-align: left;
}
.text-right	{
	text-align: right;
}


.boxcenter	{
	margin-left: auto;
	margin-right: auto;
}
.red	{
	color: #da2416;
}

.ls0	{
	letter-spacing: 0 !important;
}

.ls2	{
	letter-spacing: 2px !important;
}

.bold	{
	font-weight: bold;
}
.w100p	{
	width: 100%;
}

.m0	{
	margin: 0 !important;
}

.mt5	{
	margin-top: 0.5rem !important;
}

.mb10	{
	margin-bottom: 1rem !important;
}

.mb15	{
	margin-bottom: 1.5rem !important;
}
.mb20 {
  margin-bottom: 2rem !important;
}

.mb25	{
	margin-bottom: 2.5rem !important;
}

.mb30	{
	margin-bottom: 3rem !important;
}

.mb35	{
	margin-bottom: 3.5rem !important;
}
.mb50	{
	margin-bottom: 5rem !important;
}
.mb70 {
  margin-bottom: 7rem !important;
}

.mb100 {
  margin-bottom: 10rem !important;
}

.pb15 {
  padding-bottom: 1.5rem !important;
}

.my5rem	{
	margin: 5rem auto;
}
.my100	{
	margin: 10rem 0;
}
.ls10	{
	letter-spacing: 1rem;
}

.fs10	{
	font-size: 1rem !important;
}
.fs12	{
	font-size: 1.2rem !important;
}

.fs16	{
	font-size: 1.6rem !important;
}
.fs18 {
	font-size: 1.8rem !important;
}
.fs20	{
	font-size: 2rem !important;
}
.fs22	{
	font-size: 2.2rem !important;
}
.fs24	{
	font-size: 2.4rem!important;
	line-height: 150%;
}
.fs25	{
	font-size: 2.5rem!important;
}
.fs26	{
	font-size: 2.6rem!important;
}
.fs30	{
	font-size: 3rem!important;
}
.fs32	{
	font-size: 3.2rem!important;
}
.fs40	{
	font-size: 4rem!important;
}
.fs50	{
	font-size: 5rem!important;
}

.mt35 {
	margin-top: 3.5rem !important;
}
h2.fs25	{
	margin: 5rem 0 1.5rem;
}

.pl75	{
	padding-left: 7.5rem;
}
.lh150	{
	line-height: 150%;
}
.lh150p	{
	line-height: 150%;
}

.lh130p {
	line-height: 1.3;
}

.att	{
	font-size: 1.2rem;
}

.w50p	{
	width: 50%;
}

.w100p	{
	width: 100% !important;
}

.w_contact	{
	width: 75%;
}
.mxauto	{
	margin: 0 auto;
}

ruby {
	ruby-position:over;
}

.flex	{
	display: flex;
	justify-content: space-between;
	margin: auto;
	margin-top: 0;
	margin-bottom: inherit;
}

.flex.flexwrap	{
	flex-wrap: wrap;
}

.flex.col2 .col	{
	width: 49%;
}

.flex.col3 .col	{
	width: 31.333%;
}

.flex.col3 .col.w2col	{
	width: 65.666%;
}

.flex.col3 .col.w3col	{
	width: 100%;
}

.flex.col4 .col	{
	width: 24%;
}

img	{
	max-width: 100%;
}

.point	{
	display: inline-block;
	padding: 60px 50px 25px;
	background-image: url(../img/point.png);
	background-size: auto 82px;
	background-repeat: no-repeat;
	background-position: left top;
	min-width: 180px;
	text-align: center;
}
.headerarea	{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index:100
}

header	{
	background-color: #004586;
	height: 80px;
	text-align: center;
	position: relative;
	z-index: 200;
}

header img.logo	{
	display: block;
	height: 37px;
	width: 183px;
	margin: 0 auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 1;
}

header .inner_box	{
	height: 100%;
}
.headernav	{
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: absolute;
	top: 50%;
	left: 0;
	width: 1000px;
	transform: translateY(-50%);
	z-index: 1;
}

.headernav p	{
	display: block;
	color: white;
	text-decoration: none;
	font-weight: 700;
}

.headernav a img	{
	width: 160px;
}
nav	{
	background-color: rgb(208,219,230);
	text-align: center;
	padding: 1.2rem 0;
}
nav.topnav ul li	{
	display: inline-block;
	line-height: 1;
}
nav.topnav ul li a	{
	display: inline-block;
	border: 1px solid #004586;
	padding: 4px 1.2rem;	
	line-height: 1;
	border-radius: 2rem;
	background-color: white;
	color: #004586;
	text-decoration: none;
	box-sizing: border-box;
	font-size: 13px;
}

nav.topnav ul {
  width: auto;
  display: flex;
  max-width: 1000px;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0.5rem 0;
}
nav.topnav ul li {
  font-size: inherit;
  
  box-sizing: border-box;
  text-align: left;
	/* width: calc((99.99% - 15em) / 4); */
}
nav.topnav ul li::before {
  display: none;
}

.headerarea .contact	{
	position: absolute;
	top: 0;
	right: 0;
	z-index: 300;
	height: 100%;
	width: 20rem;
	box-shadow: -7px 7px 7px rgba(0,0,0,.3);
	/*
	background : -moz-linear-gradient(14.05% -32.06% -45deg,rgba(205, 29, 64, 1) 0%,rgba(202, 28, 63, 1) 31.81%,rgba(194, 25, 59, 1) 52.48%,rgba(179, 19, 53, 1) 69.99%,rgba(158, 11, 45, 1) 85.63%,rgba(131, 0, 34, 1) 100%);
	background : -webkit-linear-gradient(-45deg, rgba(205, 29, 64, 1) 0%, rgba(202, 28, 63, 1) 31.81%, rgba(194, 25, 59, 1) 52.48%, rgba(179, 19, 53, 1) 69.99%, rgba(158, 11, 45, 1) 85.63%, rgba(131, 0, 34, 1) 100%);
	background : -webkit-gradient(linear,14.05% -32.06% ,85.95% 132.06% ,color-stop(0,rgba(205, 29, 64, 1) ),color-stop(0.3181,rgba(202, 28, 63, 1) ),color-stop(0.5248,rgba(194, 25, 59, 1) ),color-stop(0.6999,rgba(179, 19, 53, 1) ),color-stop(0.8563,rgba(158, 11, 45, 1) ),color-stop(1,rgba(131, 0, 34, 1) ));
	background : -o-linear-gradient(-45deg, rgba(205, 29, 64, 1) 0%, rgba(202, 28, 63, 1) 31.81%, rgba(194, 25, 59, 1) 52.48%, rgba(179, 19, 53, 1) 69.99%, rgba(158, 11, 45, 1) 85.63%, rgba(131, 0, 34, 1) 100%);
	background : -ms-linear-gradient(-45deg, rgba(205, 29, 64, 1) 0%, rgba(202, 28, 63, 1) 31.81%, rgba(194, 25, 59, 1) 52.48%, rgba(179, 19, 53, 1) 69.99%, rgba(158, 11, 45, 1) 85.63%, rgba(131, 0, 34, 1) 100%);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#CD1D40', endColorstr='#830022' ,GradientType=0)";
	background : linear-gradient(135deg, rgba(205, 29, 64, 1) 0%, rgba(202, 28, 63, 1) 31.81%, rgba(194, 25, 59, 1) 52.48%, rgba(179, 19, 53, 1) 69.99%, rgba(158, 11, 45, 1) 85.63%, rgba(131, 0, 34, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#CD1D40',endColorstr='#830022' , GradientType=1);	
	*/
}

.headerarea .contact a	{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: white;
	text-decoration: none;
	vertical-align: middle;
}

.headerarea .contact a img	{
vertical-align: -6px;
}
.headerarea .contact {
  height: 20rem;
  width: 20rem;
}
.headerarea .contact a {
  position: static;
  display: block;
  transform: none;
}
.headerarea .contact img {
  width: 100%;
  height: 100%;
}


.b {
  font-weight: bold;
}
.key	{
	position: relative;
}
.key img	{
	width: 100%;
	height: auto;
}
.key img.w1000	{
	max-width: 1000px;
	display: block;
	margin: 0 auto;
}
.key video	{
	width: 100vw;
}
main	{
	margin: 0 0 5rem;
}
main section	{
	width: 100%;
	margin:  auto;
}

main h1	{
	background-color: #0d458d;
	color: white;
	text-align: center;
	font-size: 2.5rem;
	font-weight: normal;
	padding: .5rem 0;
}
main section .inner	{
	max-width: 100rem;
	margin: 5rem auto;
}

main section.admissionpolicy	{
	margin-top: 0;
	padding-top: 5rem;
}
main section article	{
	max-width: 100rem;
	margin: 0 auto;
	margin-top: 2.5rem;
}

main section.topics article	{
	border: 1px solid #9caaa6;
	position: relative;
	box-sizing: border-box;
}

main section article h2	{
	text-align: center;
	background-color: #0d458d;
	color: white;
	padding: 1rem 0;
	font-size: 28px;
	font-weight: normal;
}

.prev-arrow,.next-arrow	{
	position: absolute;
	bottom: 0;
}

.prev-arrow	{
	left: -5rem;
}
.next-arrow	{
	right: -5rem;
}
main section article.topic2 h2	{
	background-color: #249dc5;
}
main section article.topic3 h2	{
	background-color: #de4e1e;
}
main section article.topic4 h2	{
	background-color: #0d458d;
}
main section article.topic5 h2	{
	background-color: #cd1d40;
}
main section article .flexarea	{
	display: flex;
	padding: 1rem;
}
.thumb	{
	width: 524px;
	margin-right: 5rem;
	margin-left: auto;
	margin-top: 1.5rem;
}
.thumb img	{
	width:10rem;
}
.thumb li	{
	display: inline;
	list-style: none;
}
.thumb li:not(.thumbnail-current) img	{
	opacity: 0.7;
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}
main section article .flexarea .detail	{
	order: 2;
}

main section article .flexarea .text_area	{
	order: 1;
	padding-right: 1.5rem;
}

main section article .flexarea .text_area h3	{
	font-size: 2rem;
	margin-bottom: 1.5rem;
	font-weight: normal;
	letter-spacing: -1px;
	line-height: 150%;
	color: #0d458d;
}
main section article.topic2 .flexarea .text_area h3	{
	color: #249dc5;
}

main section article.topic3 .flexarea .text_area h3	{
	color: #de4e1e;
}
main section article.topic4 .flexarea .text_area h3	{
	color: #0d458d;
}
main section article.topic5 .flexarea .text_area h3	{
	color: #cd1d40;
}

main section article .flexarea .text_area p	{
	font-size:13px;
	line-height: 150%;
}

main section.admissionpolicy .symbol	{
	display: block;
	margin: 0 auto;
	margin-bottom: inherit;
	height: auto;
}

main section.admissionpolicy p	{
	font-size: 1.6rem;
	line-height: 175%;
}

main section.admissionpolicy p.borders	{
	border-top: 1px solid #1679db;
	border-bottom: 1px solid #1679db;
	padding: 20px;
	box-sizing: border-box;
}
main section.admissionpolicy p.large	{
	font-size: 56px;
}

main section.admissionpolicy .sec1_banner	{
	max-width: 565px;
	width: 100%;
}

.titlearea {
	background: #1679db;
	padding: 6rem 0 4.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.titlearea.bluegreen	{
	background: #00a7a3;
	padding: 7rem 0 3.5rem;
}

.titlearea.khaki	{
	background: #a97109;
}

.titlearea.brightgreen	{
	background: #09b653;
}
.titlearea .box {
	width: 100%;
}

.sidelink	{
	writing-mode: vertical-rl;
	position: absolute;
	bottom: 20vw;
	right: 0;
}

.sidelink:after	{
	content: "";
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	width: 16px;
	height: 16px;
	background-image: url(../img/sidearrow.png);
	background-size: contain;
	background-position: center center;
}

.sidelink.wrapbox	{
	display: block;
	padding: 45px 15px;
	box-sizing: border-box;
	text-align: center;
	height: 500px;
	text-decoration: none;
	border-radius: 10px 0 0 10px;
}
.sogo	{
	position: relative;
}

.sogo .sogotable	{
	width: 900px;
	margin: 0 auto;
	border: 2px solid #1679db;
	border-radius: 10px;
	overflow: hidden;
}
table	{
	width: 100%;
	height: 100%;
}

table th,
table td	{
	padding: 1.4rem;
	text-align: center;
	vertical-align: middle;
	border-right: 1px solid #1679db;
	border-bottom: 1px solid #1679db;
	line-height: 130%;
	box-sizing: border-box;
	font-weight: normal;
}

table .border	{
	border-right: 1px solid #1679db !important;
}

table tr th:last-of-type,
table tr td:last-of-type	{
	border-right: 0;
}

table tr:last-of-type th,
table tr:last-of-type td	{
	border-bottom: 0;
}
table th	{
	background-color: rgb(235,241,250);
}

table td	{
	line-height: 180%;
	position: relative;
}

table td.tdhead	{
	height: 96px;
}
table td.kawagoe	{
	background-color: rgb(235,241,250);
}

table td.ikebukuro	{
	background-color: rgb(253,246,236);
}

.t_list dl	{
	border-radius: 10px;
	border: 4px solid #1679db;
	height: 100%;
	box-sizing: border-box;
}

.t_list dl dt	{
	text-align: center;
	background-color: #1679db;
	color: white;
	padding: 45px 0 28px;
	position: relative;
}

.t_list dl dt img	{
	position: absolute;
}

.t_list dl dt img.ao_img1	{
	width: 73px;
	bottom: 15px;
	left: -15px;
}

.t_list dl dt img.ao_img2	{
	width: 77px;
	top: -30px;
	right: -10px;
}

.t_list dl dt img.ao_img3	{
	width: 77px;
	top: 15px;
	right: -45px;
}


.t_list dl dt span.whitebox	{
	display: block;
	width: 20%;
	margin: 10px auto 0;
	color: #5e5d5c;
}

.t_list dl dd	{
	padding: 20px 10px;
	min-height: 140px;
	box-sizing: border-box;
	position: relative;
}

.t_list dl dd .bottomright	{
	position: absolute;
	bottom: 20px;
	right: 20px;
}

.monobox	{
	margin: 0 auto;
	margin-bottom: inherit;
	border: 2px solid #5e5d5c;
	border-radius: 10px;
	overflow: hidden;
	box-sizing: border-box;
}

.monobox dt	{
	background-color: rgb(248,249,249);
	border-bottom: 1px solid #5e5d5c;
	padding: 1.5rem;
}

.monobox dd	{
	padding: 2.5rem;
	text-align:center;
}

.monobox dd .textleft	{
	display: inline-block;
	text-align: left;
}

.monobox dd .textleft .indent	{
	margin-left: 12rem;
}

.gakkosuisen	{
	position: relative;
}

.gakkosuisen .t_list dl	{
	border-radius: 10px;
	border: 4px solid #007a78;
}

.gakkosuisen .t_list dl.lighter	{
	border-color: #00a7a3;
}

.gakkosuisen .t_list dl dt	{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: #007a78;
	color: white;
	padding: 25px 0 0;
	height: 145px;
	width: 100%;
	font-size: 30px;
	line-height: 31px;
	position: relative;
	box-sizing: border-box;
}

.gakkosuisen .t_list dl.lighter dt	{
	background-color: #00a7a3;
}

.gakkosuisen .t_list dl dt img.gs_img1	{
	width: 73px;
	bottom: 15px;
	left: -55px;
}

.gakkosuisen .t_list dl dt img.gs_img2	{
	width: 50px;
	top: 15px;
	right: -15px;
}

.gakkosuisen .t_list dl dt img.gs_img3	{
	width: 77px;
	bottom: -15px;
	right: -50px;
}

.gakkosuisen .t_list dl dt img.gs_img4	{
	width: 80px;
	top: -15px;
	right: -55px;
}

.gakkosuisen .t_list dl dt img.gs_img5	{
	width: 82px;
	top: -40px;
	left: -60px;
}

.gakkosuisen .gstable	{
	border: 2px solid #00a7a3 !important;
	border-radius: 10px;
	box-sizing: border-box;
	overflow: hidden;
}

.gakkosuisen .season.gstable	{
	border: 2px solid #007a78 !important;
}
.gakkosuisen table th,
.gakkosuisen table td	{
	padding: 1rem 1.4rem;
	border-right: 1px solid #00a7a3;
}

.gakkosuisen .season table th,
.gakkosuisen .season table td	{
	border-right: 1px solid #007a78;
}

.gakkosuisen table td.border	{
	border-right: 1px solid #00a7a3 !important;
}

.gakkosuisen .season table td.border	{
	border-right: 1px solid #007a78 !important;
}

.gakkosuisen table th	{
	background-color: rgb(237,246,245);
	height: 75px;
	border-bottom: 1px solid #00a7a3;
}

table td .abs	{
	position: absolute;
	top: 5px;
	left: 10px;
	color: #007a78;
	letter-spacing: 2px;
}

.gakkosuisen table td.kawagoe	{
	border-bottom: 1px solid #00a7a3;
}

.gakkosuisen .season table td.kawagoe	{
	border-bottom: 1px solid #007a78;
}

.gakkosuisen table td.kawagoe + td,
.gakkosuisen table tr.bbottom td	{
	border-bottom: 1px solid #00a7a3;
}

.gakkosuisen .season table td.kawagoe + td,
.gakkosuisen .season table tr.bbottom td	{
	border-bottom: 1px solid #007a78;
}

table tr td.noborder	{
	border-bottom: 0 !important;
}

.gakkosuisen .inner .flex .col	{
	margin-bottom: 50px;
}

.gakkosuisen .sidelink.wrapbox	{
	bottom: 50px;
	background-color: #00a7a3;
}

.tokutai .t_list dl	{
	border-radius: 10px;
	border: 4px solid #a97109;
}

.tokutai .t_list dl dt	{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: #a97109;
	color: white;
	padding: 0;
	height: 145px;
	width: 100%;
	font-size: 30px;
	line-height: 35px;
	position: relative;
	box-sizing: border-box;
	letter-spacing: -1px;
}

.tokutai .t_list dl dt img.tt_img1	{
	width: 77px;
	top: 0;
	left: -25px;
}

.tokutai .t_list dl dt img.tt_img2	{
	width: 52px;
	top: 20px;
	left: -42px;
}

.tokutai .t_list dl dt img.tt_img3	{
	width: 65px;
	bottom: 15px;
	right: -15px;
}

.ttbox	{
	border: 4px solid #a97109;
	color: #a97109;
	background-color: #f6f8f9;
	display: block;
	text-align: center;
	border-radius: 10px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 8.5rem;
}
.t_list.flex .col.vflex dl	{
	height: auto;
}

.flex .col.vflex	{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 10px 0;
}

.tokutai .tttable	{
	border: 2px solid #a97109 !important;
	border-radius: 10px;
	box-sizing: border-box;
	overflow: hidden;
}

.tokutai table th,
.tokutai table td	{
	padding: 1rem 1.4rem;
	border-right: 1px solid #a97109;
}

.tokutai table td.border	{
	border-right: 1px solid #a97109 !important;
}

.tokutai table th	{
	background-color: rgb(245,240,233);
	height: 75px;
	border-bottom: 1px solid #a97109;
}

.tokutai table td .abs	{
	color: #a97109;
}

.tokutai table td.kawagoe	{
	border-bottom: 1px solid #a97109;
}
.tokutai table td.kawagoe + td,
.tokutai table tr.bbottom td	{
	border-bottom: 1px solid #a97109;
}

.tokutai .inner .flex .col	{
	margin-bottom: 0;
}

.tokutai .detailarea	{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 4rem;
}
.tokutai .detailarea p	{
	width: 100%;
}
.tokutai .detailarea .detaillink	{
	display: flex;
	justify-content: flex-end;
}
.tokutai .detailarea p + .detaillink	{
	width: 30%;
}

.tokutai .detailarea .detaillink a	{
	background-color: #a97109;
	color: white;
	text-decoration: none;
	font-weight: bold;
	position: relative;
	padding: 7px 35px;
	border-radius: 3rem;
}

.tokutai .detailarea .detaillink a:after	{
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	transform: translateY(-50%);
	background-image: url(../img/leftarrow.png);
	width: 17px;
	height: 17px;
	background-size: contain;
}

.ippan .t_list dl	{
	border-radius: 10px;
	border: 4px solid #09b653;
}

.ippan .t_list dl dt	{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: #09b653;
	color: white;
	padding: 0;
	height: 145px;
	width: 100%;
	font-size: 30px;
	line-height: 35px;
	position: relative;
	box-sizing: border-box;
	letter-spacing: -1px;
}

.ippan .t_list dl dt img.ip_img1	{
	width: 73px;
	bottom: 15px;
	left: -45px;
}

.ippan .t_list dl dt img.ip_img2	{
	width: 83px;
	top: -50px;
	right: -22px;
}

.ippan .t_list dl dt img.tt_img3	{
	width: 65px;
	bottom: 15px;
	right: -15px;
}

.ippan .iptable	{
	border: 2px solid #09b653 !important;
	border-radius: 10px;
	box-sizing: border-box;
	overflow: hidden;
}

.ippan table th,
.ippan table td	{
	padding: 1rem 1.4rem;
	border-right: 1px solid #09b653;
}

.ippan table td.border	{
	border-right: 1px solid #09b653 !important;
}

.ippan table th	{
	background-color: rgb(237,247,238);
	height: 75px;
	border-bottom: 1px solid #09b653;
}

.ippan table td .abs	{
	color: #09b653;
}

.ippan table td.kawagoe	{
	border-bottom: 1px solid #09b653;
}
.ippan table td.kawagoe + td,
.ippan table tr.bbottom td	{
	border-bottom: 1px solid #09b653;
}

.ippan .inner .flex .col	{
	margin-bottom: 0;
}

.ippan .detailarea	{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 4rem;
}
.ippan .detailarea p	{
	width: 100%;
}
.ippan .detailarea .detaillink	{
	display: flex;
	justify-content: flex-end;
}
.ippan .detailarea p + .detaillink	{
	width: 30%;
}

.ippan .detailarea .detaillink a	{
	background-color: #09b653;
	color: white;
	text-decoration: none;
	font-weight: bold;
	position: relative;
	padding: 7px 35px;
	border-radius: 3rem;
}

.ippan .detailarea .detaillink a:after	{
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	transform: translateY(-50%);
	background-image: url(../img/leftarrow.png);
	width: 17px;
	height: 17px;
	background-size: contain;
}

.ippan .t_list dl.hcol	{
	display: flex;
}
.ippan .t_list dl.hcol dt	{
	width: 40%;
	height: auto;
}

.ippan .t_list dl dd	{
	min-height: 0;
	padding: 2rem 3rem;
}

.ippan .modalwrap	{
	margin: 0 auto;
}

.taisakubox	{
	margin: 0 3.5rem;
	gap: 0 4rem;
	align-items: stretch;
}

.taisakubox .col .bluebox	{
	background-color: rgb(235,241,250);
	padding: 25px;
	box-sizing: border-box;
	border-radius: 20px;
	min-height: 250px;
}

.taisakubox .col .bluebox.notitle	{
	padding: 45px 25px;
	height: 100%;
}

.taisakubox .col img	{
	width: 70%;
}

.taisaku .eiken	{
	position: relative;
}

.taisaku .eiken .eikenimg	{
	position: absolute;
	top: 0;
	left: 0;
	width: 166px;
}

.eikentable table,
.eikentable table th,
.eikentable table td	{
	border: 0 !important;
	background-color: transparent;
	box-sizing: border-box;
	font-weight: bold;
}
.eikentable table	{
	border-collapse: separate;
	border-spacing: 6px;
	width: calc(100% + 12px);
	position: relative;
	left: -6px;
}

.eikentable table th	{
	color: white;
	font-size: 2rem;
}
.eikentable table th span.small	{
	display: block;
	font-size: 1.2rem;
	width: 100%;
	height: 1.2rem;
}
.eikentable table td	{
	font-size: 3rem;
}

.eikentable table .tablehead th	{
	vertical-align: bottom;
	line-height: 1.2;
	padding: 0;
}
.eikentable table .tablehead th span.t_inner	{
	padding: 1rem 1.4rem;
	box-sizing: border-box;
	display: flex;
	background-color: #f5a219;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 10px 10px 0 0;
}
.eikentable table .tablehead th:nth-child(2) span.t_inner	{
	height: 70px;
}

.eikentable table .tablehead th:nth-child(3) span.t_inner	{
	height: 95px;
}
.eikentable table .tablehead th:nth-child(4) span.t_inner	{
	height: 115px;
}

.eikentable table .tablehead th:nth-child(5) span.t_inner	{
	height: 140px;
}


.eikentable table .tablehead th:first-child	{
	width: 28%;
}
.eikentable table .tablehead th:not(:first-child)	{
	width: 18%;
}

.eikentable table .touitsu th	{
	background-color: #1679db;
	text-align: right;
	padding: 1rem 1.4rem;
	border-radius: 10px 0 0 10px;
}
.eikentable table .touitsu td	{
	background-color: rgb(235,241,250);
	padding: 1rem 1.4rem;
}
.eikentable table .kyotsu th	{
	background-color: #00a7a3;
	text-align: right;
	padding: 1rem 1.4rem;
	border-radius: 10px 0 0 10px;
}
.eikentable table .kyotsu td	{
	background-color: rgb(237,246,245);
	padding: 1rem 1.4rem;
}

.taisakubox.taisakubox2	{
	margin: 0 auto;
	position: relative;
}

.taisakubox.taisakubox2 .bluebox.notitle	{
	padding: 4.5rem;
}
.taisakubox .col .bluebox dl.flex	{
	align-items: center;
	justify-content: space-between;
}
.taisakubox .col .bluebox dl.flex dt.col	{
	width: 15%;
	text-align: center;
	padding: 10px;
	letter-spacing: 3px;
	box-sizing: border-box;
	border: 2px solid #1679db;
	border-radius: 10px;
	margin-bottom: 10px;
}

.taisakubox .col .bluebox .flex dd.col	{
	width: 82.5%;
}

.taisakubox.taisakubox2 .taisaku_img3	{
	position: absolute;
	right: -5px;
	top: -60px;
	width: 134px;
}

.discountbox	{
	border-radius: 10px;
	overflow: hidden;
	box-sizing: border-box;
}
.discountbox .d_title	{
	background-color: #1679db;
	padding: 40px;
	box-sizing: border-box;
	position: relative;
}
.discountbox .d_title dl	{
	display: table;
	width: auto;
	margin: 0 auto;
	vertical-align: top;
}

.discountbox .d_title dt	{
	width: 80px;
	height: 80px;
	display: inline-block;
	margin: 0;
	padding: 25px 0;
	border-radius: 50%;
	border: 3px dotted #ffe400;
	box-sizing: border-box;
	text-align: center;
	vertical-align: top;
}
.discountbox .d_title h2,
.discountbox .d_title p,
.discountbox .d_title dt,
.discountbox .d_title dd	{
	color: #ffe400;
}

.discountbox .d_title dd	{
	padding-left: 20px;
	padding-top: 20px;
	display: inline-block;
}
.discountbox .d_title dd span	{
	display: block;
	margin-bottom: 10px;
}
.discountbox .d_content	{
	background-color: rgb(235,241,250);
	padding: 30px 50px;
	box-sizing: border-box;
}

.discountbox .d_title .taisaku_img4	{
	position: absolute;
	right: 25px;
	top: 20%;
	width: 77px;
}

.discountbox .d_title .taisaku_img5	{
	position: absolute;
	left: 15%;
	top: 10%;
	width: 159px;
}

.discountbox .d_content .flex .col .tablewrapper	{
	margin: 0 auto;
	border: 2px solid #1679db;
	border-radius: 10px;
	overflow: hidden;
}

.discountbox .d_content .flex .col th	{
	background-color: rgb(212,227,246);
	font-size: 1.6rem;
	height: 100px;
	padding: 1rem 1.4rem;
}
.discountbox .d_content .flex .col td	{
	background-color: white;
	font-size: 1.6rem;
	padding: 1rem 1.4rem;
}
.discountbox .d_content .flex .col p.fs12	{
	padding: 1rem 2.75rem;
	box-sizing: border-box;
}

.discountbox .d_content ol	{
	background-color: white;
	border: 2px solid #1679db;
	border-radius: 10px;
	box-sizing: border-box;
	max-width: 820px;
	margin: 0 auto;
	padding: 55px 70px;
	letter-spacing: -0.5px;
}

.discountbox .d_content ol li	{
	border-bottom: 1px solid #1679db;
}
.discountbox .d_content ol li:last-child	{
	border-bottom: 0;
}
.discountbox .d_content ol	{
	list-style: none;
	counter-reset: number;
}

.discountbox .d_content ol li	{
	position: relative;
	padding: 25px 0 25px 4.5rem;
	box-sizing: border-box;
}

.discountbox .d_content ol li::before {
  counter-increment: number;
  content: counter(number);
  position: absolute;
  left: 0;
  color: #1679db;
  font-size: 4.8rem;
  font-weight: bold;
  line-height: 1;
}

.d_content_ex	{
	max-width: 830px;
	margin: 0 auto;
	padding-right: 5px;
	box-sizing: border-box;
}
.d_content_ex .col:first-child	{
	width: 67.683%
}

.d_content_ex .col:last-child	{
	width: 29.268%;
}
.d_content_ex .redarrow	{
	margin: 65px 3px auto;
	width: 20px;
}

.soudanbox	{
	background-color: rgb(245,248,253);
	border-radius: 0 0 10px 10px;
	padding: 50px 0;
	box-sizing: border-box;
}
.soudanbox .d_box.w900	{
	width: 910px;
}
.soudanbox .d_box .slide	{
	padding: 0 5px;
}
.soudanbox .d_box .col	{
	box-sizing: border-box;
	background-color: white;
	border: 4px solid #1679db;
	border-radius: 10px;
	padding: 25px 4%;
}

.soudanbox .d_box.slick-slider .slick-list	{
	width: 100%;
}

.soudanbox .d_box .col .s_day	{
	background-color: #da2416;
	padding: 5px 0;
	box-sizing: border-box;
}

.soudanbox .detaillink a	{
	background-color: #1679db;
	color: white;
	text-decoration: none;
	font-weight: bold;
	position: relative;
	padding: 7px 35px;
	border-radius: 3rem;
	margin: 0 15px;
}

.soudanbox .detaillink a.d_right:after	{
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	transform: translateY(-50%);
	background-image: url(../img/leftarrow.png);
	width: 17px;
	height: 17px;
	background-size: contain;
}

.soudanbox .detaillink a.d_left:after	{
	content: "";
	position: absolute;
	top: 50%;
	left: 12px;
	transform: translateY(-50%) rotate(180deg);
	background-image: url(../img/leftarrow.png);
	width: 17px;
	height: 17px;
	background-size: contain;
}

.soudan .d_nav a	{
	border-radius: 10px;
	box-shadow: 5px 5px 3px rgba();
	display: block;
	padding: 30px 0;
	box-sizing: border-box;
	line-height: 130%;
	text-decoration: none;
}

.soudan .d_nav a:first-child	{
	background-color: #1679db;
	box-shadow: 5px 5px 3px rgba(22,121,219,0.2);
}

.soudan .d_nav a:nth-child(2)	{
	background-color: #00a7a3;
	box-shadow: 5px 5px 3px rgba(0,167,163,0.2);
}

.soudan .d_nav a:last-child	{
	background-color: #09b653;
	box-shadow: 5px 5px 3px rgba(9,182,83,0.2);
}

.slick-dots	{
	text-align: right;
	bottom: auto;
	top: 0;
	left: auto;
	right: 0;
}
.slick-dots li button:before{
	content: "";
	background-color: #000;
}

footer	{
	background-color: #1679db;
	color: white;
	padding: 1.5rem 0;
}

.drawer	{
	display: none;
}

.drawnav	{
	display: none;
	width: 100%;
}

.titlesup	{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .5rem;
	position: relative;
}
.titlesup:before {
	content: "";
	display: block;
	background: #eacd2c;
	flex: 1;
	height: 4px;
}
.titlesup:after {
	content: "";
	display: block;
	background: #eacd2c;
	flex: 1;
	height: 4px;
}

.whitebox	{
	background-color: #fff;
	display: inline-block;
	padding: 8px 40px;
	border-radius: 3rem;
}

.lightbluebox	{
	background-color: #1679db;
	display: inline-block;
	padding: 8px 40px;
	border-radius: 3rem;
}

.key {
	position: relative;
}

.key::before {
	content: "";
	display: block;
	width: 100vw;
	height: 53rem;
	position: absolute;
	z-index: -1;
	pointer-events: none;
	background: url(../img/mv_bg.png) center center / 100% 100% no-repeat;
}
.mv_list .slick-slide	{
	overflow-x:hidden;

}
.mv_list .slick-slide .img {
	filter: drop-shadow(rgba(13, 69, 141, 0.2) 7px 7px 8px);
	margin-bottom: 48px;
}

.mv_list .slick-slide .txt {
	padding: 3.5rem 6.6666rem 0px;
}


/* ▼ table01, table02 ▼ */
.big_size {
  font-size: 150%;
}
.table01,
.table02,
.table03 {
  line-height: 150%;
  width: 100%;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0 1rem;
  padding-left: 1rem;
}
.table01 tr:first-child th:nth-child(2n),
.table02 tr:first-child th:nth-child(2n),
.table03 tr:first-child th:nth-child(2n) {
  background: #ced2d3;
  align-items: flex-end;
}
.table01 tr:first-child th:nth-child(2n - 1),
.table02 tr:first-child th:nth-child(2n - 1),
.table03 tr:first-child th:nth-child(2n - 1) {
  background: #b9c3c2;
}
.table01 tr > *,
.table02 tr > * {
  padding: 1em;
  box-sizing: border-box;
  text-align: center;
  vertical-align: middle;
}
.table01 tr > *:first-child,
.table02 tr > *:first-child {
  margin-right: 1rem;
  width: 5rem;
}
.table01 tr > *:not(:first-child),
.table02 tr > *:not(:first-child) {
  width: 100%;
}

.table01 tr > *:not(:first-child)[colspan^="2"],
.table02 tr > *:not(:first-child)[colspan^="2"] {
  width: 200%;
}
.table01 tr:first-child th:first-child,
.table02 tr:first-child th:first-child {
  opacity: 0;
}
.table01 tr:not(:first-child) th,
.table02 tr:not(:first-child) th {
  position: relative;
	/* -ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl; */
  letter-spacing: 0.5em;
  background: #ced2d3;
  left: -1rem;
}
.table01 tr:not(:first-child) th:before,
.table02 tr:not(:first-child) th:before {
  content: "";
  display: block;
  pointer-events: none;
  position: absolute;
  top: 99.99%;
  left: calc(50% - 1.5rem);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1rem 1.5rem 0 1.5rem;
  border-color: #ced2d3 transparent transparent transparent;
}
.table01 tr:last-child th:before,
.table02 tr:last-child th:before {
  display: none;
} 
.table01 tr:not(:first-child) td:nth-child(2n) {
  background: #c7e5ed;
}
.table01 tr:not(:first-child) td:nth-child(2n - 1) {
  background: #d8e6ef;
}
.table02 tr:not(:first-child) td:nth-child(2n) {
  background: #f7f4d1;
}
.table02 tr:not(:first-child) td:nth-child(2n - 1) {
  background: #fbe9e1;
}
/* ▲ table01, table02 ▲ */

/* ▼ table03 ▼ */
.table03 {
  width: 100%;
  text-align: center;
  border-spacing: 0 1rem;
  border-collapse: separate;
  padding-left: 0;
}
.table03 tr th,
.table03 tr td {
  flex: 1;
}
.table03 tr:first-child th {
  padding: 1em;
}
.table03 tr:not(:first-child) th,
.table03 tr:not(:first-child) td {
  vertical-align: middle;
  padding: 0.5em;
}
.table03 tr:not(:first-child) th {
  font-weight: normal;
}
.table03 .bg_yellow {
  background: #E4DA66;
}
.table03 .bg_orange {
  background: rgba(244,193,159,1);
}
.table03 .bg_orange02 {
  background: rgba(244,193,159,0.3);
}
.table03 .bg_blue {
  background: rgba(175,207,218,1);
}
.table03 .bg_blue02 {
  background: rgba(175,207,218,0.3);
}
.table03 .bg_purple {
  background: rgba(195,196,221,1);
}
.table03 .bg_purple02 {
  background: rgba(195,196,221,0.3);
}
.table03 .bg_green {
  background: rgba(192,215,174,1);
}
.table03 .bg_green02 {
  background: rgba(192,215,174,0.3);
}
.table03 .bg_red {
  background: rgba(238,199,197,1);
}
.table03 .bg_red02 {
  background: rgba(238,199,197,0.3);
}
.table03 .bg_brown {
  background: rgba(228,206,153,1);
}
.table03 .bg_brown02 {
  background: rgba(228,206,153,0.3);
}
.table03 .bg_last_blue {
  background: rgba(143,198,217,0.3);
}
.table03 .bg_last_purple {
  background: rgba(208,184,212,0.3);
}
.table03 .bg_yellow03 {
  background: rgba(228,218,102,0.3);
}
/* ▲ table03 ▲ */
 
/* list01 */
ul.list01 {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 4rem;
  flex-wrap: wrap;
  list-style-type: none;
}
ul.list01 > li {
  box-sizing: border-box;
  border: .5rem solid #01458D;
  background: #fff;
  filter: drop-shadow(7px 7px 7px rgba(1,69,141,0.2));
  border-radius: 1rem;
  cursor: pointer;
}

ul.list01 > li.modal_open_btn .img	{
	position: relative;
	max-width: 230px;
	min-height: 116px;
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
}

ul.list01 > li.modal_open_btn .img img {
	position: absolute;
	top: 66%;
	left: 50%;
	width: 100%;
	transform: translate( -50%,-50%);
}

/* ▲ list01 ▲ */

.inner_box {
	display: block;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}


/* モーダルを開いたときスクロール禁止 */
body.stop {
  overflow: hidden;
}
.fs70 {
  font-size: 7rem;
}
.fs60 {
  font-size: 6rem;
}
.fs45 {
  font-size: 4.5rem;
}
.fs40 {
  font-size: 4rem;
}
.fs34 {
  font-size: 3.4rem;
}
.fs27 {
  font-size: 2.7rem;
}
.fs22 {
  font-size: 2.2rem;
}
.fs20 {
  font-size: 2rem;
}
.fs18 {
  font-size: 1.8rem;
}
.fs14 {
  font-size: 1.4rem;
}
.fs12 {
  font-size: 1.2rem;
}
.blue {
  color: #0d458d;
}
.center {
  text-align: center;
}
.mv_list {
  width: 100%;
  max-width: 100rem;
  margin: 15rem auto 2rem;
}
.mv_list .slick-dots {
  position: relative;
  bottom: inherit;
  top: inherit;
  left: inherit;
  right: inherit;
  margin-top: 1em;
	padding: 0 5rem;
	box-sizing: border-box;
}
.mv_list .slick-slide .img {
  filter: drop-shadow(7px 7px 8px rgba(13,69,141,0.2));
}
.mv_list .slick-slide .txt {
	padding: 5rem 5rem 0;
}
.mv_list .slick-slide .txt h2 {
	margin-bottom: 1em;
}
.key {
  position: relative;
}
nav.topnav ul {
  width: auto;
  display: flex;
}
nav.topnav ul li {
  font-size: inherit;
  box-sizing: border-box;
  text-align: left;
	/* width: calc((99.99% - 15em) / 4); */
}
nav.topnav ul li::before {
  display: none;
}
.b {
  font-weight: bold;
}
.headerarea .contact {
  height: 20rem;
  width: 20rem;
}
.headerarea .contact a {
  position: static;
  display: block;
  transform: none;
}
.headerarea .contact img {
  width: 100%;
  height: 100%;
}
.area01 h2 {
  margin-bottom: 1em;
}
.area01 h3 {
  margin-bottom: 0.5em;
}
.lh150p {
  line-height: 1.5;
}
.lh130p {
  line-height: 1.3;
}
.area02 {
  padding: 3rem 0;
  background: #C1D3E0;
  border-bottom: 2px solid #00255B;
  border-top: 2px solid #00255B;
}

.area02 {
	padding: 3rem 0px;
	background: rgb(193, 211, 224);
	border-bottom: 2px solid rgb(0, 37, 91);
	border-top: 2px solid rgb(0, 37, 91);
}
.area02 ul {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  gap: 2rem;
  flex-wrap: wrap;
  list-style: none;
}
.area02 ul > li {
  width: calc((99.99% - 6rem) / 4);
  box-sizing: border-box;
  background: #fff;
  color: #00255B;
  border: 2px solid;
  border-radius: .5rem;
  min-height: 6rem;
  filter: drop-shadow(3px 3px 3px rgba(13,69,141,0.2));
}
.area02 ul > li.siryo {
  background: #CD1D40;
  color: #fff;
  border: 2px solid #CD1D40;
}
.area02 ul > li a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  text-decoration: none;
}
.list03 > li {
  padding: 0.75em;
  text-align: center;
  background: #01458D;
  color: #fff;
}
.list03 > li + li {
  margin-top: 1rem;
}
.navy .boxed {
  font-size: 1.8rem;
}
.imgtable {
  margin: 1rem1.4rem;
  display: flex;
  gap: 1rem;
  align-items: stretch;
  justify-content: flex-start;
  width: 100%;

}
.imgtable .subimg {
  width: calc((99.99% - 3rem) / 4);
  padding-left: 0;
}
main h1 {
  font-size: 3rem;
  color: #fff;
  text-align: center;
  padding: 0.5em;
  background: #00255B;
  font-weight: bold;
}
.red_box {
  background: #CD1D40;
  padding: 0.75em;
  line-height: 1.2;
}
.white {
  color: #fff;
}
/* list04 */
ul.list04 {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  gap: 2em;
  flex-wrap: wrap;
  list-style-type: none;
  margin-top: -12rem;
}
ul.list04 > li {
  width: calc((99.99% - 2em) / 2);
}
ul.list04 > li.pc {
  pointer-events: none;
}
ul.list04 > li h4 a {
	color: inherit;
	text-decoration: none;
}
ul.list04 > li p {
	padding-left: 1em;
}
/* ▲ list04 ▲ */
.border01 {
  border-top: .5rem solid #01458D;
  padding-top: 5rem;
}
.border02 {
	display: inline-block;
	background: linear-gradient(0deg,
	rgba(255,241,0,1) 0%,
	rgba(255,241,0,1) 40%,
	rgba(255,241,0,0) 40%,
	rgba(255,241,0,0) 100%);
}
/* list05 */
ul.list05 {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
  list-style-type: none;
}
ul.list05 > li > a {
  display: block;
  text-decoration: none;
}
/* ▲ list05 ▲ */
.btn01 > a {
  color: #fff;
  background: #CD1D40;
  padding: 0.75em;
  border-radius: .5rem;
  display: table;
  margin-left: auto;
  margin-right: auto;
  width: 50rem;
  box-sizing: border-box;
  filter: drop-shadow(.5rem .5rem 3px rgba(205,29,64,0.2));
  text-decoration: none;
}
.slick-dots li button::before {
	background: #0D458D !important;
	opacity: 1;
}
.slick-dots li.slick-active button::before {
	background: #CD1277 !important;
	opacity: 1;
}
.sports03,
.sports05,
.sports06 {
	width: 100%;
}
.tel_ad > a {
	text-decoration: none;
	color: inherit;
}
sup {
	vertical-align: super;
	font-size: smaller;
	font-size: 70%;
	margin-left: 0.5em;
}

.mv_list {
	width: 100%;
	max-width: 1100px;
	box-sizing: border-box;
	margin: 17.5rem auto 2rem;
	padding: 0px 15px;
}

.mv_list .slick-dots {
	position: absolute;
	bottom: inherit;
	top: 515px;
	left: inherit;
	right: 0px;
	margin-top: 1em;
	box-sizing: border-box;
	padding: 0px 50px;
}

.slick-dots li button::before {
	opacity: 1;
	background: rgb(22, 121, 219) !important;
}

.slick-dots li.slick-active button::before {
	opacity: 1;
	background: rgb(244, 41, 25) !important;
}

.lightblue {
	color: rgb(22, 121, 219) !important;
}

.brightgreen {
	color: rgb(9, 182, 83) !important;
}

.inner_box {
	display: block;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

.area02 ul {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style: none;
	gap: 2rem 0px;
}

.area02 ul > li {
	width: 22.5%;
	box-sizing: border-box;
	color: rgb(0, 37, 91);
	min-height: 6rem;
	background: rgb(255, 255, 255);
	border-width: 2px;
	border-style: solid;
	border-color: initial;
	border-image: initial;
	border-radius: 5rem;
}

.area02 ul > li a {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: inherit;
	font-size: 2rem;
	text-decoration: none;
}

.area02 ul > li:nth-last-child(1), .area02 ul > li:nth-last-child(2) {
	width: 48%;
}

.area02 ul > li.siryo {
	color: rgb(255, 255, 255);
	background: rgb(205, 29, 64);
	border-width: 2px;
	border-style: solid;
	border-color: rgb(205, 29, 64);
	border-image: initial;
}

/* モーダルを開いた時の外側のレイヤー */
.over_lay {
	content: "";
	display: none;
	position: fixed;
	z-index: 101;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.8);
	opacity: 0.7;
}
.modal_open_btn {
  display: block;
  width: 43rem;
}
.modal_open_btn .txt {
  padding: 1em 2em 0;
}

.modal_open_btn .more {
	background: rgb(22, 121, 219);
	padding: 0.75rem 0.75em 0px;
}

ul.modal_inner_list {
	list-style-type: none;
	line-height: 1.3;
	font-weight: bold;
}

ul.modal_inner_list > li {
	text-indent: -1em;
	padding: 0.5em 1em;
	background: url("https://www.tiu.ac.jp/lp/tiu_lp/img/plus06.webp") left bottom / 8px 32px repeat-x;
}

@media screen and (min-width: 769px) {/* PC用 */
	.modal_open_btn .txt h3 {
		min-height: 70px;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 0.5em;
	}
}
.modal_open_btn .txt h3 span {
  display: block;
}
.modal_open_btn .txt h3 span > span + span {
	margin-top: 0.5em;
}
.modal_open_btn .txt p {
  line-height: 2;
  background: url(../img/plus06.webp) bottom left / 8px 32px repeat;
  margin-bottom: 1em;
}
.modal_open_btn .img img {
  width: 100%;
}
.modal_open_btn .more img {
  vertical-align: middle;
}
.modal {
	display: none;
	position: fixed;
	z-index: 1000;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100rem;
	border-radius: 0.5rem;
}


.modal .box {
	background-color: rgb(255, 255, 255);
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	padding: 4rem;
	gap: 2rem;
}

.modal .txt {
	flex: 1 1 0%;
}

.modal .txt h5 {
  padding: 1em 0.5em;
  line-height: 1.2;
}
.modal .img {
  width: 42rem;
  position: relative;
}

.modal .img .slick-list {
  text-align: left;
}
.modal .img .slick-list .slick-track {
  display: inline-block;
}
.modal .img .slick-list .slick-track .slick-slide img {
  width: 42rem;
}
.modal .img .slick-dots {
  margin-top: 1em;
}
ul.modal_inner_list {
  list-style-type: none;
  line-height: 1.3;
}
ul.modal_inner_list > li {
  padding: 0.5em 1em;
  text-indent: -1em;
  background: url(../img/plus06.webp) bottom left / 8px 32px repeat-x;
}
ul.modal_inner_list02 {
  list-style-type: none;
  line-height: 2;
  background: url(../img/plus06.webp) bottom left / auto 36px repeat;
}
/* モーダルを開いたとき */

.over_lay.active {
	display: block !important;
	z-index: 400;
}
.modal.active	{
	display: block !important;
	z-index: 401;
}
ul.list01 {
	margin-left: auto;
	margin-right: auto;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	list-style-type: none;
	gap: 1rem;
}


ul.list01 > li {
	box-sizing: border-box;
	cursor: pointer;
	border-width: 0.5rem;
	border-style: solid;
	border-color: rgb(22, 121, 219);
	border-image: initial;
	background: rgb(255, 255, 255);
	border-radius: 1rem;
}

.modal_open_btn {
	display: flex;
	flex-direction: column;
	position: static;
	width: 43rem;
}
.modal_open_btn .img img {
	width: 100%;
}

ul.list01 > li .img img {
	vertical-align: bottom;
}

.modal_open_btn .txt {
	display: block;
	position: relative;
	padding: 1em 0px 0px;
}

.modal_open_btn .txt h3 span {
	display: block;
}

.modal_open_btn .txt h3 span > span + span {
	margin-top: 0.5em;
}

.modal_button {
	display: block;
	width: 75%;
	color: rgb(22, 121, 219);
	box-sizing: border-box;
	box-shadow: rgba(22, 121, 219, 0.3) 5px 5px 3px;
	border-width: 2px;
	border-style: solid;
	border-color: rgb(22, 121, 219);
	border-image: initial;
	padding: 10px 50px;
	border-radius: 4.4rem;
	text-decoration: none;
	margin: 0px auto 3rem;
}

.modalfoot {
	padding: 0px 4rem 2rem;
}


ul.list02 {
	margin-left: auto;
	margin-right: auto;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	list-style-type: none;
	gap: 1rem;
}

ul.list02 > li {
	box-sizing: border-box;
	cursor: pointer;
	border-width: 0.5rem;
	border-style: solid;
	border-color: rgb(9, 182, 83);
	border-image: initial;
	background: rgb(255, 255, 255);
	border-radius: 1rem;
	overflow: hidden;
}

ul.list02 > li.modal_open_btn .img {
	background-color: rgb(9, 182, 83);
	color: white;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
}

ul.list02 > li.modal_open_btn .txt {
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0px;
}

ul.list02 > li.modal_open_btn .more {
	background-color: rgb(255, 228, 0);
	font-weight: bold;
	padding: 0.75rem 0px;
}

.border01 {
	margin-top: 50px;
	padding-top: 5rem;
	border-top: 0.5rem solid rgb(22, 121, 219);
}

ul.list05 {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style-type: none;
	max-width: 500px;
	gap: 2rem;
	margin: 0px auto;
}

ul.list05 > li {
	max-width: 225px;
	width: 100%;
}

ul.list05 > li > a {
	display: block;
	width: 100%;
	text-decoration: none;
}

ul.list05 > li > a .img {
	width: 100%;
	text-align: center;
	height: 225px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgb(255, 255, 255);
	box-shadow: rgba(0, 69, 138, 0.2) 5px 5px 3px;
	border-width: 2px;
	border-style: solid;
	border-color: rgb(22, 121, 219);
	border-image: initial;
	border-radius: 10px;
}

ul.list05 > li > a .img img {
	width: 9.4rem;
}

.btn01 > a {
	color: rgb(255, 255, 255);
	display: table;
	margin-left: auto;
	margin-right: auto;
	width: 50rem;
	box-sizing: border-box;
	filter: drop-shadow(rgba(205, 29, 64, 0.2) 0.5rem 0.5rem 3px);
	background: rgb(205, 29, 64);
	padding: 0.75em;
	border-radius: 0.5rem;
	text-decoration: none;
}


@media screen and (max-width:1439px) and (min-width: 769px)	{
	.headernav	{
		max-width: calc(1000px - (1436px - 100vw) / 2);
	}
	
	nav.topnav	{
		position: relative;
	}
	nav.topnav ul {
		width: 100%;
		max-width: calc(1000px - (1436px - 100vw) / 2);
		flex-wrap: nowrap;
		justify-content: space-between;
	}
	
	nav.topnav ul li.oc	{
		padding: 0;
	}
}

@media screen and (min-width:1240px) {
	nav.topnav ul li a	{
		padding: 5px 1.6rem;
	}
}

@media screen and (max-width: 1099px) and (min-width: 769px)	{
	nav.topnav ul li a	{
		font-size: 12px;
	}
	.slide-arrow	{
		display: none !important;
	}
	main	{
		width: 100rem;
		overflow-x: hidden;
		margin: 5rem auto 0;
	}
	.thumb	{
		margin-right: 0;
	}
}
@media screen and (max-width: 1023px) and (min-width: 769px)	{
	.headernav	{
		max-width: 81.5vw;
		padding-left: 1vw;
		padding-right: 1vw;
		box-sizing: border-box;
	}
	.headernav a	{
		font-size: 12px;
	}
	.headernav a img	{
		width: 14vw;
	}
	nav.topnav ul li	{
		font-size: 1rem;
	}
	nav.topnav ul li a	{
		font-size: 10px;
		padding: 5px 0.8vw;
	}
	nav.topnav ul	{
		max-width: 81.5vw;
		width: 100%;
		transform-origin: left center;
		padding-left: 1vw;
		padding-right: 1vw;
		box-sizing: border-box;
	}
	.headerarea .contact {
		transform-origin: right top;
		width: 17.5vw;
		height: 17.5vw;
	}
}

@media screen and (min-width: 769px) {/* PC用 */
	.sp {
		display: none !important;
	}
	
	.w900 {
		width: 90rem;
	}
	
	.w740 {
		width: 74rem;
	}
	.modal_open_btn .txt h3 {
		min-height: 70px;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 0.5em;
	}

	.w1100 {
	  width: 110rem;
	}
	.w1000 {
	  width: 100rem;
	}
	.w900 {
	  width: 90rem;
	}
	.w800 {
	  width: 80rem;
	}
	.w500 {
	  width: 50rem;
	}
}


@media screen and (max-width: 768px) {/* SP用 */
	p,dt,dd	{
		font-size: 1.8rem;
	}
	th,td	{
		font-size: 1.6rem;
	}
	.mv_list {
		margin-top: 10rem;
		padding: 0;
	}
	.key:before {
		display: none;
	}
	.pc	{
		display: none !important;
	}
	
	.sp	{
		display: block;
	}
	br.sp	{
		display: inline-block;
	}
	
	.mt5	{
		margin-top: 0.5rem !important;
	}
	
	.mb10	{
		margin-bottom: 1rem !important;
	}
	
	.mb15	{
		margin-bottom: 1.5rem !important;
	}
	.mb20 {
	  margin-bottom: 2rem !important;
	}
	
	.mb25	{
		margin-bottom: 2.5rem !important;
	}
	
	.mb30	{
		margin-bottom: 3rem !important;
	}
	
	.mb35	{
		margin-bottom: 3.5rem !important;
	}
	.mb50	{
		margin-bottom: 5rem !important;
	}
	.mb70 {
	  margin-bottom: 7rem !important;
	}
	
	.mb100 {
	  margin-bottom: 10rem !important;
	}
	
	.pb15 {
	  padding-bottom: 1.5rem !important;
	}
	
	.my5rem	{
		margin: 5rem auto;
	}
	.my100	{
		margin: 10rem 0;
	}
	.ls10	{
		letter-spacing: 1rem;
	}
	
	.fs10	{
		font-size: 1rem !important;
	}
	.fs12	{
		font-size: 1.2rem !important;
	}
	
	.fs16	{
		font-size: 1.85rem !important;
	}
	.fs18 {
		font-size: 1.8rem !important;
	}
	.fs20	{
		font-size: 2rem !important;
	}

	.fs22	{
		font-size: 2.2rem !important;
	}
	.fs24	{
		font-size: 2.4rem!important;
		line-height: 150%;
	}
	.fs25	{
		font-size: 2.5rem!important;
	}
	.fs26	{
		font-size: 2.6rem!important;
	}
	.fs30	{
		font-size: 3rem!important;
	}
	.fs32	{
		font-size: 3.2rem!important;
	}
	.fs40	{
		font-size: 4rem!important;
	}
	.fs50	{
		font-size: 5rem!important;
	}
	
	.mt35 {
		margin-top: 3.5rem !important;
	}
	h2.fs25	{
		margin: 5rem 0 2rem;
	}
  /* SP用 */
  
	html {
		font-size: calc(13.3333vw / 750 * 100); /* 最大値768px、文字サイズ10pxの場合 */
	}
	.headerarea	{
		height: 10rem;
		box-sizing: border-box;
	}
	
	header	{
		height: 10rem;
	}
	
	header img.logo	{
		width: 40vw;
	}
	.headernav	{
		padding: 0 6.666vw;
		box-sizing: border-box;
	}
	.headernav p	{
		font-size: 1.5rem;
		zoom:0.8;
		text-align: left;
	}

	.headernav a img	{
		width: 20vw;
		height: auto;
	}
	.inner_box {
		max-width: 100%;
	}
	
	.mv_list .slick-slide .img {
		filter: none;
		margin-bottom: 0;
	}
	.mv_list .slick-slide .txt	{
		padding: 5vw 6.6666vw 0;
	}
	.mv_list .slick-slide .txt h2	{
		line-height: 150%;
		font-size: 2.9rem !important;
	}
	.mv_list .slick-slide .txt h3	{
		font-size: 2.5rem !important;
	}
	.mv_list .slick-dots	{
		display: none !important;
	}
	
	main section.admissionpolicy p.borders	{
		font-size: 1.8rem;
		padding: 3vw 2vw;
	}
	.area02 {
		padding: 3.3333vw 6.6666vw;
	}
	.area02 ul > li {
		width: 32%;
	}
	.navy .boxed {
		font-size: 2.6666vw;
	}
	.table01, .table02, .table03 {
		font-size: 2rem;
	}
	.pl75 {
		padding-left: 4rem;
	}
	.area01 h2 {
		font-size: 5.3333rem;
	}
	main section.admissionpolicy .symbol	{
		width: 60vw;
	}
	
	main h1 {
		font-size: 5.3333rem;
	}
	header img {
		height: 8rem;
		padding: 2.6666rem 0;
	}
	.flex.col3 .col	{
		width: 33%;
	}
	.list03 {
		font-size: 3.7333rem;
	}
	.list03 + p img {
		width: 9.3333rem;
	}
	.w500 {
		padding: 0 6.6666rem;
	}
	ul.list01 {
		padding: 0 5vw;
	}
	.modal_open_btn {
		width: 100%;
	}
	.modal_open_btn .more img {
		width: 22.666rem;
	}
	.over_lay {
		z-index: 400;
	}
	.modal {
		z-index: 400;
	}
	.modal_close_btn {
		max-width: 90vw;
		box-sizing: border-box;
	}
	.modal_close_btn .box {
		display: block;
		padding: 0;
	}
	.modal_close_btn .box .txt {
		padding: 3rem 2.6666rem 1rem;
	}
	
	
	.modal_close_btn .box .txt h4 small {
		font-size: 4rem;
	}
	.modal_close_btn .box .txt h5 {
		padding: 0.5em 0;
		font-size: 4rem;
	}
	
	.modal_close_btn .box .txt h5 + p	{
		margin-bottom: 1.2rem !important;
	}
	
	.modal_close_btn .img,
	.modal_close_btn .img img {
		width: 100% !important;
		height: 30vw !important;
		object-fit: cover;
		display: block;
		margin: 0 0 -1px;
	}
	.modal_close_btn .img,
	.modal_close_btn .img img	{
		height: 60vw !important;
	}
	.modal_close_btn .slick-dots {
		display: none !important;
	}
	.modal_open_btn .txt p,
	ul.modal_inner_list02 {
		font-size: 2.6666rem;
		background: url(../img/plus06.webp) bottom left / auto 2em repeat;
	}
	ul.modal_inner_list > li {
		background: url(../img/plus06.webp) bottom left / auto 2em repeat-x;
	}
	.titlearea {
		padding: 5.3333rem 0;
		height: auto;
	}
	.area02 ul > li.siryo {
		font-size: 4rem;
	}
	#contact img {
		width: 50.5rem;
	}
	ul.list05 {
		display: flex;
		align-items: flex-start;
		justify-content: center;
		gap: 2.666rem;
	}
	ul.list05 > li {
		width: 33.333rem;
	}
	.border01 {
		padding-top: 9.3333rem;
	}
	ul.list04 {
		margin: 0;
		display: block;
	}
	ul.list04 > li {
		width: 100%;
	}
	ul.list04 > li + li {
		margin-top: 2rem;
	}
	.table01 tr p + p {
		margin-top: 1em;
	}
	.red_box img {
		width: 1em;
		height: 1em;
		object-fit: contain;
		margin: 0.25em;
	}

	.pc {
		display: none !important;
	}
	div.slide img	{
		width: 100vw;
	}
	.w50p	{
		width: 100%;
	}

	.w_contact	{
		width: 100%;
	}
	main section	{
		width: 100%;
		padding: 0 5rem;
		box-sizing: border-box;
	}
	img {
		max-width: 100%;
	}
	
	nav	{
		display: none;
	}
	main section	{
		padding: 0 6.666vw;
	}
	main section article	{
		max-width: calc(100vw - 8rem);
		width: calc(100% - 8rem);
		margin-left: 4rem;
	}
	main section article h2	{
		display: block;
		font-size: 4.8vw;
		padding: 1.5rem;
		line-height: 150%;
	}
	
	main section.globalcourse article	{
		width: 100%;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
	}
	main section article .flexarea	{
		flex-direction: column;
		
	}
	main section article .flexarea img	{
		order: 1;
	}
	
	main section article .flexarea .text_area	{
		order: 2;
		padding-right: 1.5rem;
	}
	
	main section article .flexarea .text_area h3	{
		font-size: 4vw;
		margin-top: 1.5rem;
	}
	.slide-arrow	{
		display: none !important;
	}
	main section.topics .inner,main section.topics .inner article	{
		display: flex !important;
	}
	
	main section.topics .inner article	{
		height: 100%;
		flex-direction: column;
	}
	
	.thumb	{
		width: calc(100vw - 74px);
		margin: 1rem auto 0;
		display: table;
		border-collapse: separate;
		border-spacing: 3px 0;
		position: relative;
		left: -3px;
	}
	.thumb li	{
		display: table-cell;
		list-style: none;
		width: 20%;
		box-sizing: border-box;
		min-height: 90vh;
	}
	
	.thumb img {
		width: 100%;
	}
	main section.slogan .symbol	{
		width: 30%;
	}	

	main section.slogan p	{
		font-size: 5vw;
	}
	
	main section.slogan p.large	{
		font-size: 7.5vw;
	}
	
	.fs24	{
		font-size: 4vw;
	}
	
	.navy .boxed+b	{
		font-size: 2.8rem;
	}
	.subtitlearea,.subtitlearea div	{
		display: block;
		text-align: center;
	}
	.subtitlearea div.subtitlemain	{
		text-align: center;
		margin-bottom: 1.5rem;
	}
	.subtitlearea div img	{
		max-width: 60vw;
	}	
	
	.globalcourse article .infoarea,.globalcourse article .infoarea .imgarea,.globalcourse article .textarea	{
		display: block;
	}

	.globalcourse article .infoarea .imgarea	{
		max-width: none !important;
		width: 100% !important;
	}
	.globalcourse article .infoarea .imgarea img	{
		
		width: 95vw;
	}
	.globalcourse article .infoarea .imgarea .slick-dots	{
		display:none !important;
	}
	.globalcourse article .infoarea .textarea	{
		padding: 0;
		width: calc(100vw - 4rem);
	}
	.globalcourse article .infoarea .textarea h3	{
		font-size: 4.5vw;
		text-align: center;
	}
	
	.globalcourse article .infoarea .textarea ul li, .globalcourse article .infoarea .textarea p	{
		font-size: 3.5vw;
	}
	.art3 .subtitlearea div.subtitlemain img:first-child	{
		float: none;
		display: block;
		margin-right: auto;
		margin-left: 1.5rem;
		margin-top: 0;
		margin-bottom: 1.5rem;
	}
	.art3 .subtitlearea div.subtitlemain img:last-child	{
		display: block;
		margin-left: auto;
		margin-right: 1.5rem;
	}
	.art4 .subtitlearea div.subtitlemain img:first-child	{
		max-width: none;
		width: 100%;
	}

	.imgtable	{
		width: calc(100% + 1rem);
	}	
	.imgtable .subimg	{
		width: calc(50% - 1rem);
		padding-left: 1rem;
		padding-bottom: 1rem;
	}
	.contact	{
		display: none;
	}

	.drawer	{
		display: block;
		position: fixed;
		top: 12rem;
		right: 5vw;
		display: inline-block;
		height: 24vw;
		width: 24vw;
		z-index: 300;
		background: url(../img/drawer.png) center center / 100% auto no-repeat;
		filter: drop-shadow(5px 9px 8px rgba(1,69,141,0.75));
		transition: .5s all;
	}
	.drawer.active {
		background: url(../img/drawer_active.png) center center / 100% auto no-repeat;
	}
	.drawnav	{
		display: none;
		position: fixed;
		top: 27rem;
		right: 0;
		z-index: 200;
		padding: 4rem 0 4.5rem;
		background-color: rgba(0,37,91,.9);
	}
	
	.drawnav li	{
		list-style-type: none;
		font-size: 3.2rem;
		color: white;
	}
	
	.drawnav > li a,
	.drawnav > li span	{
		color: white;
		text-decoration:none;
		padding: 3vw 9vw;
		display: block;
		position: relative;
	}
	.drawnav li > a:before,
	.drawnav li > span:before {
		position: absolute;
		top: calc(50% - 1rem);
		left: 4rem;
		display: block;
		content: "";
		width: 2rem;
		height: 2rem;
		background: url(../img/arrow01.webp) center center / 1rem auto no-repeat;
	}
	.drawnav li:not(:first-child) > span:after {
		position: absolute;
		top: calc(50% - 1.5rem);
		right: 3rem;
		display: block;
		content: "";
		width: 3rem;
		height: 3rem;
		background: url(../img/arrow02.webp) center center / 3rem auto no-repeat;
	}
	.drawnav > li:nth-child(1) > a {
		font-size: 4rem;
	}
	.drawnav > li:nth-child(1) > span:before,
	.drawnav > li:nth-child(1) > span:after {
		display: none;
	}
	
	.contactbutton {
		position: fixed;
		display: flex;
		align-items: center;
		justify-content: center;
		bottom: 0;
		left: 0;
		height: 20rem;
		width: 100%;
		background-color: rgba(90,101,111,0.5);
	}
	
	.contactbutton a {
		font-size: 3.3rem;
		font-weight: bold;
		color: #fff;
		text-decoration: none;
		padding: 0.8em;
		width: 70vw;
		display: block;
		text-align: center;
		filter: drop-shadow(3px 5px 3px rgba(1,69,141,0.75));
		background: #CD1D40;
		position: relative;
	}
	.contactbutton a:after {
		content: "";
		width: 13.2rem;
		height: 15.5rem;
		display: block;
		position: absolute;
		right: 0;
		top: -3rem;
	}
	.contactbutton a img	{
		width: 100%;
	}
	
	.contactarea .contact_tel	{
		pointer-events: auto;
	}
	
	footer	{
		margin-bottom: 20rem;
	}
	
	.headerarea, .headernav {
		width: 100vw;
	}
	.soudanbox .d_box.w900 {
		max-width: 100%;
	}
	.point {
		min-width: 0px;
		padding: 60px 0px 0px;
	}
	
	.sogo .sogotable {
		width: 100%;
	}

	.area02 ul	{
		gap: 2rem 0;
	}
	.area02 ul > li	{
		min-height: 0;
		padding: 5px 0;
	}
	.area02 ul > li:nth-last-child(1)	{
		width: 100%;
	}
	.area02 ul > li:nth-last-child(2) {
		width: 66.666%;
	}
	
	.area02 ul > li a	{
		font-size: 1.9rem;
	}
	
	.titlesup:before	{
		margin-right: 10vw;
	}
	
	.titlesup:after	{
		margin-left: 10vw;
	}
	.whitebox	{
		padding: 2vw 5vw;
	}
	
	table thead tr th	{
		background-color: #1679db;
		color: white;
	}
	
	.flex.sp_vertical	{
		flex-direction: column;
	}
	
	.flex.sp_vertical .col,
	.flex.sp_vertical .col.w2col	{
		width: 100%;
	}
	
	.flex.sp_vertical .col .sp_flex	{
		display: flex;
		margin-bottom: 1.5rem;
	}
	
	.flex.sp_vertical .col .sp_flex dt	{
		display: flex;
		align-items: center;
		justify-content:center;
		flex-direction: column;
		width: 40%;
		min-height: 0;
		height: auto;
		font-size: 2.6rem !important;
		line-height: 130%;
		min-height: 28vw;
		box-sizing: border-box;
		padding: 0;
	}
	
	.flex.sp_vertical .col .sp_flex dd	{
		min-height: 0;
		display: flex;
		justify-content: center;
		width: 60%;
		flex-direction: column;
		padding: 1rem;
	}
	
	.flex.sp_vertical .col .sp_flex dt span.whitebox	{
		width: 40%;
		font-size: 2rem !important;
		padding: 0 3vw;
		margin: 5px auto 0;
	}
	.flex.sp_vertical .col .sp_flex dd .bottomright	{
		bottom: 1.5rem;
		right: 1.5rem;
	}
	.flex.sp_vertical .col .sp_flex dd .bottomright a	{
		color: #007a78;
		text-decoration: none;
		font-weight: bold;
	}
	
	.flex.sp_vertical .col .sp_flex dd .bottomright a:after	{
		content: "";
		background-image: url(../img/ext_link.png);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: contain;
		display: inline-block;
		width: 1.6rem;
		height: 1.6rem;
		margin: 0 0 0 0.3rem;
	}
	
	.t_list dl dt img.ao_img1 {
		width: 11vw;
		bottom: auto;
		top: -3vw;
		left: -7vw;
	}
	
	.t_list dl dt img.ao_img2 {
		width: 12vw;
		top: 6vw;
		right: -4vw;
	}
	
	.t_list dl dt img.ao_img3 {
		width: 12vw;
		top: auto;
		right: auto;
		bottom: -2vw;
		left: -2vw;
	}
	
	.monobox dd .textleft .sp_indent	{
		display: block;
		width: 100%;
	}
	
	.monobox dd .textleft .sp_indent .indent	{
		margin-left: 1.6rem;
		font-size: 1.3rem !important;
		margin-bottom: 1rem;
	}
	
	.monobox dd .textleft .fs16	{
		font-size: 1rem !important;
		margin-left: 1rem;
	}
	
	ul.list01,
	ul.list02	{
		gap: 2rem;
		flex-wrap: wrap;
	}
	
	ul.list01.flex.col4 .col,
	ul.list02.flex.col4 .col	{
		width: calc(50% - 1rem);
	}
	ul.list01 .col.modal_open_btn .txt,
	ul.list02 .col.modal_open_btn .txt	{
		padding: 1rem 0;
	}
	ul.list01 .col.modal_open_btn .txt h3 .fs20,
	ul.list02 .col.modal_open_btn .txt h3 .fs20 {
		font-size: 1.8rem !important;
	}
	ul.list01 .col.modal_open_btn .txt h3 .fs16,
	ul.list02 .col.modal_open_btn .txt h3 .fs16 {
		font-size: 1.4rem !important;
	}
	
	ul.list02 > li .img	{
		height: auto;
		min-height: 20vw;
	}
	
	ul.list02 > li.modal_open_btn .txt	{
		height: auto;
		min-height: 10vw;
		line-height: 130%;
	}
	.modal_open_btn .more img	{
		width: 60%;
	}
	
	.sidelink {
		writing-mode: unset;
		position: relative;
		bottom: auto;
		right: auto;
	}
	
	.sidelink.wrapbox {
		display: block;
		padding: 15px;
		box-sizing: border-box;
		text-align: center;
		height: auto;
		text-decoration: none;
		border-radius: 10px;
		margin-bottom: 5rem;
	}
	
	.sidelink:after {
		content: "";
		position: absolute;
		top: 50%;
		bottom: auto;
		left: auto;
		right: 5vw;
		transform: translateY(-50%);
		width: 2rem;
		height: 2rem;
		background-image: url(../img/sidearrow.png);
		background-size: contain;
		background-position: center center;
	}
	
	.titlearea.bluegreen {
		background: #00a7a3;
		padding: 5rem 0 3.5rem;
	}
	
	.sogotable tr:first-child th,
	.sogotable tr th.border	{
		border-bottom: 1px solid #1679db !important;
	}
	
	.sogotable tr.bbottom th.border,
	.sogotable tr:last-of-type th.border	{
		border-bottom: 0 !important;
	}
	.gstable table,
	.tttable table,
	.iptable table	{
		writing-mode:vertical-lr;
		height: auto;
	}
	.tttable table	{
		writing-mode:vertical-lr;
		height: auto;
	}

	.gstable table th,
	.gstable table td,
	.tttable table th,
	.tttable table td,
	.iptable table th,
	.iptable table td	{
		writing-mode: horizontal-tb;
		height: auto;
		font-size: 1.3rem;
		position: relative;
	}
	table th .tb,
	table td .tb	{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		-webkit-writing-mode: horizontal-tb;
		display: block;
		width: 100%;
	}
	.gakkosuisen table th,
	.gakkosuisen table td	{
		border-right: 0;
		border-bottom: 0;
	}
	
	.gakkosuisen table .table_head th	{
		border-right: 1px solid #00a7a3;
		border-bottom: 1px solid #00a7a3;
	}
	.gakkosuisen table .table_head th[rowspan="2"]	{
		width:40%;
		box-sizing: border-box;
	}
	.gakkosuisen table .table_head th:last-child	{
		border-bottom: 0;
	}
	
	.gakkosuisen table .area td	{
		border-right: 1px solid #00a7a3;
	}
	
	.gakkosuisen table tr td.td_date,
	.gakkosuisen table tr td.ike_date,
	.gakkosuisen table tr td.kawa_date,
	.gakkosuisen table tr td.ike_kawa_date	{
		border-bottom: 1px solid #00a7a3 !important;
		border-right: 0 !important;
	}
	.gakkosuisen table tr td.ikebukuro	{
		border-bottom: 1px solid #00a7a3 !important;
	}
	table tr th:last-of-type, table tr.bbottom td:last-of-type	{
		border-bottom: 0;
	}

	.col.season1 table tr.s_row:not(.s1),
	.col.season1 table th.s_cell:not(.s1),
	.col.season1 table td.s_cell:not(.s1)	{
		display: none;
	}
	
	.col.season2 table tr.s_row:not(.s2),
	.col.season2 table th.s_cell:not(.s2),
	.col.season2 table td.s_cell:not(.s2)	{
		display: none;
	}
	
	.col.season3 table tr.s_row:not(.s3),
	.col.season3 table th.s_cell:not(.s3),
	.col.season3 table td.s_cell:not(.s3)	{
		display: none;
	}
	
	.col.season4 table tr.s_row:not(.s4),
	.col.season4 table th.s_cell:not(.s4),
	.col.season4 table td.s_cell:not(.s4)	{
		display: none;
	}
	

	
	.gakkosuisen .t_list dl dt img.gs_img1 {
		width: 10vw;
		bottom: auto;
		top: -5vw;
		left: -5vw;
	}
	
	.gakkosuisen .t_list dl dt img.gs_img2 {
		width: 8vw;
		top: 5vw;
		right: -1vw;
	}
	
	.gakkosuisen .t_list dl dt img.gs_img3 {
		width: 13vw;
		bottom: -1vw;
		right: auto;
		left: -4vw;
	}
	
	.gakkosuisen .t_list dl dt img.gs_img4 {
		width: 14vw;
		top: 10vw;
		right: -5vw;
	}
	
	.gakkosuisen .t_list dl dt img.gs_img5 {
		width: 11vw;
		top: -2vw;
		left: -4vw;
	}
	
	.gakkosuisen .inner .flex .col	{
		margin-bottom: 0;
	}
	
	.gakkosuisen .inner .flex .col.w2col	{
		margin-bottom: 3rem;
	}
	
	.flex .col .tablelabel	{
		background-color: #007a78;
		color: white;
		height: auto;
		padding: 3rem 0 1.5rem;
		letter-spacing: 2px;
		border: 0 !important;
		border-right: 0;
	}
	
	
	table .table_head th:nth-child(2)	{
		width: 40vw;
	}
	.gakkosuisen table .table_head th:nth-child(2)	{
		width: auto;
	}
	
	.gakkosuisen .season1 table .table_head th:nth-child(2)	{
		width: 40vw;
	}
	
	.gakkosuisen .season table tr.bbottom td	{
		width: 40vw;
	}
	table tr th:last-of-type	{
		border-width: 1px;
	}
	.season table th	{
		width: 20vw;
	}
	.season table td	{
		width: 46.666vw;
	}
	
	.season table td.kawagoe,
	.season table td.ikebukuro	{
		width: 20vw;
	}
	.season table th[rowspan="2"]	{
		width: 40vw;
	}
	.gakkosuisen .season table tr td:last-child,
	.ippan .season table tr td:last-child	{
		border-right: 0;
		border-bottom: 0;
	}
	
	.gakkosuisen .season table tr td.ike_date	{
		border-right: 0 !important;
	}
	
	.gakkosuisen .sidelink.wrapbox	{
		top: -2rem;
	}
	.inner .flex .col.season	{
		margin-bottom: 1.5rem;
	}
	.tokutai .flex .col.w2col table th.tablelabel	{
		background-color: #a97109;
		color: white;
	}
	.tokutai table tr th:last-of-type,
	.tokutai table tr td.ikebukuro	{
		border-right: 1px solid #a97109;
	}
	
	.tokutai .season table tr.bbottom td,
	.tokutai .season table tr:last-of-type td,
	.ippan .season table tr.bbottom td,
	.ippan .season table tr:last-of-type td	{
		border-right: 0;
	}
	.tokutai table td.t_term,
	.tokutai table td.testtype,
	.tokutai table td.c_testtype	{
		border-bottom: 1px solid #a97109 !important;
	}
	
	.ippan table tr th:last-of-type	{
		border-right: 1px solid #09b653;
	}
	
	.ippan .flex .col table th.tablelabel	{
		background-color: #09b653;
		color: white;
	}
	.ippan .skip1.season1	{
		display: none;
	}
	
	.ippan table td.t_area	{
		border-bottom:1px solid #09b653 !important;
		border-right:1px solid #09b653 !important;
	}
	
	.ippan table tr.bbottom td	{
		border-right: 0;
		border-bottom:1px solid #09b653 !important;
	}
	.ippan .season table tr:last-of-type td	{
		border-bottom:1px solid #09b653 !important;
	}
	
	.ippan .season table tr td:last-child,
	.ippan table tr.bbottom td:last-child	{
		border-bottom: 0 !important;
	}
	
	.tokutai .detailarea	{
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	
	.tokutai .detailarea p	{
		text-align: center;
		
	}
	.tokutai .detailarea p.detailareatext	{
		font-size: 1.3rem;
		margin-bottom: 1.5rem;
	}
	
	.tokutai .detailarea .detaillink,
	.tokutai .detailarea p + .detaillink,
	.ippan .detailarea .detaillink	{
		min-width: 50vw;
		align-items: center;
		justify-content: center;
		margin-bottom: 1.5rem;
	}
	
	.flex.flexwrap.sp_vertical.mb30	{
		margin-bottom: 0 !important;
	}
	
	.first_term	{
		margin-bottom: 1.5rem !important;
	}
	.vflex	{
		flex-wrap: wrap;
		flex-direction: row !important;
		justify-content: space-between;
	}
	
	.flex.sp_vertical .col.vflex .sp_flex	{
		margin-bottom: 0;
	}
	.vflex .ttbox	{
		width: 49%;
		box-sizing: border-box;
		margin-bottom: 3rem;
	}
	
	.tokutai .t_list dl dt img.tt_img1 {
		width: 14vw;
		top: -8vw;
		left: -5vw;
	}
	
	.tokutai .t_list dl dt img.tt_img2 {
		width: 9vw;
		top: 10vw;
		left: -5vw;
	}
	
	.tokutai .t_list dl dt img.tt_img3 {
		width: 10vw;
		bottom: auto;
		top: -5vw;
		right: -3vw;
	}
	
	.ippan .t_list dl dt img.ip_img1 {
		width: 10vw;
		bottom: auto;
		top: -5vw;
		left: -6vw;
	}
	.ippan .t_list dl dt img.ip_img2 {
		width: 14vw;
		top: -8vw;
		right: -2vw;
	}
	.taisakubox	{
		margin: 0 0 1.5vw;
		gap: 0 3vw;
	}
	
	.taisakubox .col .bluebox.notitle	{
		padding: 6vw 2.5vw;
	}
	
	.taisakubox .col img	{
		width: 100%;
	}
	
	.point {
		display: inline-block;
		padding: 10vw 9.5vw 25px;
		background-image: url(../img/point.png);
		background-size: auto 15vw;
		background-repeat: no-repeat;
		background-position: left top;
		min-width: 30vw;
		text-align: center;
	}
	.taisakubox .col .bluebox	{
		min-height: 0;
		margin-bottom: 4rem;
	}
	
	.taisakubox .col:last-of-type .bluebox	{
		margin-bottom: 0;
	}
	
	.taisaku .eiken .eikenimg	{
		width: 19vw;
		top: 12rem;
		z-index: 2;
	}
	.taisaku .eiken p	{
		margin-bottom: 4rem;
	}
	.eikentable	{
		z-index: 1;
		writing-mode:vertical-lr;
		height: auto;
		box-sizing: border-box;
		width: 100%;
		position: relative;
	}
	.eikentable table	{
		width: 86.666vw;
		left: 0;
		border-spacing: 3px;
	}
	.eikentable tr,
	.eikentable th,
	.eikentable td	{
		min-width: 0;
		writing-mode: horizontal-tb;
		box-sizing: border-box;
		width: calc((86.666vw - 12px) / 3) !important;
		min-height: 10rem;
		position: relative;
	}
	.eikentable table .tablehead th:first-child	{
		width: 30vw;
	}	
	
	.eikentable table .touitsu th,
	.eikentable table .kyotsu th	{
		border-radius: 10px 10px 0 0;
		text-align: center;
	}
	.eikentable table .tablehead th .tb,
	.eikentable table .tablehead th span.t_inner	{
		width: auto;
		height: 100% !important;
		border-radius: 10px 0 0 10px;
		width: 100%;
	}
	
	.taisakubox.taisakubox2 .taisaku_img3 {
		position: absolute;
		right: -5px;
		top: auto;
		bottom: 5vw;
		width: 20vw;
	}
	
	.taisakubox .col .bluebox dl.flex	{
		flex-direction: column;
		align-items: flex-start;
	}
	
	.taisakubox .col .bluebox dl.flex dt.col	{
		width: 20vw;
		padding: 2vw;
	}
	
	.taisakubox .col .bluebox dl.flex dd	{
		margin-bottom: 2rem;
		padding-left: 2rem;
		line-height: 130%;
	}
	
	.sp_overflow	{
		position: relative;
		width: 100vw;
		left: -6.6666vw;
		margin-bottom: 0 !important;
	}
	.discountbox	{
		border-radius: 0;
		margin-bottom: 0 !important;
	}
	.discountbox .d_title .taisaku_img4 {
		position: absolute;
		right: 10vw;
		top: 10vw;
		width: 14vw;
	}
	.discountbox .d_title h2,
	.discountbox .d_title p,
	.discountbox .d_title dt,
	.discountbox .d_title dd	{
		text-align: center;
	}
	.discountbox .d_title dl	{
		display: flex;
		flex-direction: column;
		align-items: center;
	}	
	.discountbox .d_title h2, .discountbox .d_title p, .discountbox .d_title dt	{
		margin-bottom: 3rem;
	}
	
	.discountbox .d_title dt {
		width: 8rem;
		height: 8rem;
		display: inline-block;
		margin: 0;
		padding: 2.5rem 0;
		border-radius: 50%;
		border: 3px dotted #ffe400;
		box-sizing: border-box;
		text-align: center;
		vertical-align: top;
	}
	
	.discountbox .d_title	{
		padding: 10vw 6.6666vw;
	}
	
	.discountbox .d_title dd	{
		padding: 3rem 0 0;
	}
	.discountbox .d_title dd span.white	{
		line-height: 150%;
		font-size: 1.3rem !important;
	}
	
	.discountbox .d_content	{
		padding: 10vw 6.6666vw 5vw;
	}
	
	.discountbox .d_content .flex .col th	{
		height: auto;
		border-bottom: 1px solid #1679db;
		padding: 1.4rem;
	}
	
	.discountbox .d_content .flex .col p.fs12	{
		margin-bottom: 1.5rem;
	}
	
	.discountbox .d_title .taisaku_img5 {
		position: absolute;
		left: 6.6666%;
		top: 15vw;
		width: 25vw;
	}
	
	.discountbox .d_content ol	{
		padding: 3rem 2rem;
	}
	
	.discountbox .d_content ol li	{
		padding: 3rem 0;
		text-align: center;
		font-size: 1.7rem !important;
		border: 0;
	}
	
	.discountbox .d_content ol li:last-child .block	{
		text-align:left;
		font-size: 1.3rem !important;
	}
	
	.discountbox .d_content ol li::before	{
		position: static;
		display: block;
		text-align: center;
	}
	
	.d_content_ex .redarrow	{
		display: block;
		margin: 1.5rem auto;
		transform: rotate(90deg);
	}
	
	.d_content_ex .col h3.fs20	{
		text-align: center;
		margin-top: 1.5rem;
		font-size: 1.6rem !important;
	}
	
	main section.taisaku .inner	{
		margin-bottom: 0;
	}
	
	.sp_fs40	{
		font-size: 4rem !important;
	}
	
	#soudan	.titlesup:before	{
		margin-right: 3vw;
	}

	#soudan	.titlesup:after	{
		margin-left: 3vw;
	}
	.soudan .col4	{
		flex-wrap: wrap;
	}
	.soudan .col4 .col	{
		width: 49%;
		margin-bottom: 1.5rem;
	}
	
	.d_nav .col	{
		margin-bottom: 1.5rem;
	}
	
	.soudanbox .detaillink a	{
		margin: 0 5px;
	}
	
	#contact img	{
		width: 70%;
	}
	
	ul.list04 *	{
		zoom: 0.9;
	}
	
	.contactarea .fs70,
	.contactarea .fs50,
	.contactarea .fs30	{
		zoom: 0.8 !important;
	}
	
	ul.list05	{
		flex-wrap: nowrap;
		width: 65vw;
	}
	
	ul.list05 > li > a .img	{
		height: 30vw;
		width: 30vw;
	}
	
	.contactbutton a {
		font-size: 2.5rem;
		font-weight: bold;
		color: #fff;
		text-decoration: none;
		padding: 0.8em;
		width: 70vw;
		display: block;
		text-align: center;
		filter: drop-shadow(3px 5px 3px rgba(1,69,141,0.75));
		background: #09b653;
		position: relative;
	}
/*
	.contactbutton a:after {		
		content: "";
		width: 10rem;
		height: 15.5rem;
		display: block;
		background: url(../img/sp_header01.webp) center center / contain no-repeat;
		position: absolute;
		right: 0;
		top: -4rem;
	}
*/	
	table td .abs	{
		display: none;
	}
	
	.sublist li	{
		font-size: 2rem;
	}
	
	ul.list02 > li .img div	{
		width: 100%;
	}
	
	ul.list02 > li .img div img	{
		width: 100%;
		height: auto;
	}
	.modal_close_btn .box	{
		margin-bottom: 1.5rem;
	}
	
	.modal_close_btn p.text-center .fs24	{
		font-size: 2rem !important;
	}
	
	.modal_button	{
		width: 90%;
		padding: 1rem;
		margin-bottom: 1.5rem;
	}
	ul.modal_inner_list > li	{
		padding: 0.5rem 0 0.5rem 1rem;
	}

	ul.list01 > li.modal_open_btn .img	{
		position: relative;
		max-width: none;
		min-height: 20vw;
		width: 100%;
		height: 100%;
		display: block;
		overflow: hidden;
	}
	ul.list01 > li.modal_open_btn:first-child .img img	{
		top: 75%;
	}
	
	ul.list02 li.modal_close_btn .img.setimg img,
	ul.list01 li.modal_close_btn .img.setimg img	{
		object-position: center -3vw;
	}
}
