@charset "UTF-8";

/*
Theme Name: 京都文教短期大学付属小学校
Theme URI: https://kyotobunkyo-sho.ed.jp/
Version: 1.0
Author: Yoshioka insatsu
*/

/* ==========================================================================
   variable
============================================================================= */
:root {
	--main-color: #000000;
	--main-color-gray: #e6e6e6;
	--main-color-blue: #4653A2;
	--main-color-lightblue: #2479C0;
	--main-color-pink: #E38295;
	--main-color-green: #008047;
	--text-color-magenta: #C9154E;
}


/* ==========================================================================
   base
============================================================================= */

body {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;/*iPhone font*/
	font-family: 'Noto Sans JP', sans-serif;
	/*font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif;*/
	font-weight: 400;
	font-size: 16px;
	color: #333333;
}

@media all and (-ms-high-contrast:none) {
	body {
		font-family: "メイリオ, Meiryo, ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN",  sans-serif;
	}
}

.fontMincho { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

.fontGothic { font-family: YakuHanJPs, Roboto, Verdana, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif; }

p { background-image:url(""); }

a:link{ color: #000000; text-decoration: none; }
a:visited{ color: #000000; text-decoration: none; }
a:active{ color: #000000; text-decoration: none; }
a:hover { color: #666666; text-decoration: none; }

a {
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

a:hover {
    outline : none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);

	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;

	opacity: 0.7;
}

img {
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

a:hover img {
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;

	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);

	opacity: 0.7;
}

svg,
a:hover svg {
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

a[href^="tel:"] { cursor: default; }

ul { list-style-type: none; }

address { font-style: normal; }

.inviewItem {
	opacity: 0;
	transform: translate(0,15px); 
	-webkit-transform: translate(0,15px); 
	transition: 0.7s;
}

.inviewItemLeft {
	opacity: 0;
	transform: translate(15px,0); 
	-webkit-transform: translate(15px,0); 
	transition: 0.7s;
}

.inviewItemFlag {
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}

/* ==========================================================================
   clearfix
============================================================================= */

.cf:after {
	content: "."; 
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.cf {
	min-height: 1px;
}

* html .cf {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* ==========================================================================
   common
============================================================================= */
.txtLt {text-align: left!important;}
.txtRt {text-align: right!important;}
.txtCt {text-align: center!important;}
.txtBold {font-weight: bold!important;}
.txtNormal {font-weight: normal!important;}
.fontSmall {font-size: 0.7rem!important;}
.fontLarge {font-size: 1.4rem!important;}
.font90per {font-size: 90%!important;}
.font105per {font-size: 105%!important;}
.font110per {font-size: 110%!important;}
.font120per {font-size: 120%!important;}
.font130per {font-size: 130%!important;}
.font140per {font-size: 140%!important;}
.font150per {font-size: 150%!important;}

.flRt { float: right!important;}
.flLt { float: left!important;}
.txtRt { text-align: right!important;}
.txtLt { text-align: left!important;}
.txtCt { text-align: center!important;}

.lh2 { line-height: 2em!important; }
.pt0 {padding-top: 0!important;}
.pt1 {padding-top: 1rem!important;}
.pt2 {padding-top: 2rem!important;}
.pb0 {padding-bottom: 0!important;}
.pb1 {padding-bottom: 1rem!important;}
.pb2 {padding-bottom: 2rem!important;}
.pb3 {padding-bottom: 3rem!important;}
.pb4 {padding-bottom: 4rem!important;}
.pb5 {padding-bottom: 5rem!important;}
.mt0 {margin-top: 0!important;}
.mt05 {margin-top: 0.5em!important;}
.mt1 {margin-top: 1rem!important;}
.mt2 {margin-top: 2rem!important;}
.mt3 {margin-top: 3rem!important;}
.mt4 {margin-top: 4rem!important;}
.mt5 {margin-top: 5rem!important;}
.mt6 {margin-top: 5rem!important;}
.mb0 {margin-bottom: 0!important;}
.mb05 {margin-bottom: 0.5rem!important;}
.mb1 {margin-bottom: 1rem!important;}
.mb2 {margin-bottom: 2rem!important;}
.mb3 {margin-bottom: 3rem!important;}
.mb4 {margin-bottom: 4rem!important;}
.mb5 {margin-bottom: 5rem!important;}
.mb6 {margin-bottom: 6rem!important;}
.ml1 {margin-left: 1rem!important;}
.ml2 {margin-left: 2rem!important;}
.ml3 {margin-left: 3rem!important;}
.mr1 {margin-right: 1rem!important;}
.mr2 {margin-right: 2rem!important;}
.mr3 {margin-right: 3rem!important;}

.dpB { display: block!important; }

.bgColorGray { background-color: #e0dcdb; }


/*スマホのみ改行*/
@media only screen and (min-width: 768px){
	br.mbbr {
		display:none!important;
	}
}

/*スマホ・タブレットのみ改行*/
@media only screen and (min-width: 1040px){
	br.mbtbbr {
		display:none!important;
	}
}

/*タブレット以上のみ改行*/
br.tbbr {
	display: none;
}

@media only screen and (min-width: 768px){
	br.tbbr {
		display: inline;
	}
}

/*PC以上のみ改行*/
br.dtbr {
	display: none;
}

@media only screen and (min-width: 1040px){
	br.dtbr {
		display: inline;
	}
}

/*モバイルのみ消す（インライン）*/
.mbNone {
	display: none;
}

@media only screen and (min-width: 768px){
	.mbNone {
		display: inline;
	}
}

/*モバイルのみ表示（インライン）*/
.mbVisible {

}

@media only screen and (min-width: 768px){
	.mbVisible {
		display: none;
	}
}


select, textarea, [type="text"], [type="password"], [type="datetime"], [type="datetime-local"], [type="date"], [type="month"], [type="time"], [type="week"], [type="number"], [type="email"], [type="url"], [type="search"], [type="tel"], [type="color"], .uneditable-input {
	display: inline-block;
	padding: 0.5em 0.5em;
	width: 50%;
	/*-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;*/
	vertical-align: middle;
	font-size: 90%;

    border: none;
    background-color: #fff;
}

select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding-right: 25px;
}

input[type="reset"]:focus,
input[type="submit"]:focus {
	outline: 0;
}

/*youtube貼り付け用*/
.movieBox {
	position: relative;
	padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
	height: 0;
	overflow: hidden;
}
 
.movieBox iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.paling {
	padding: 1em;
	border: 1px solid #000000;
}


/* ==========================================================================
   base
============================================================================= */

body {

}

img,
svg {
	max-width: 100%;
	height: auto;
}

@media screen and (min-width: 600px) {
	.w600 {
		max-width: 600px!important;
		margin-left: auto!important;
		margin-right: auto!important;
	}
}

@media screen and (min-width: 720px) {
	.w720 {
		max-width: 720px!important;
		margin-left: auto!important;
		margin-right: auto!important;
	}
}

@media screen and (min-width: 900px) {
	.w900 {
		max-width: 900px!important;
		margin-left: auto!important;
		margin-right: auto!important;
	}
}

@media screen and (min-width: 1040px) {
	.w1040 {
		max-width: 1040px!important;
		margin-left: auto!important;
		margin-right: auto!important;
	}
}

@media screen and (min-width: 1200px) {
	.w1200 {
		max-width: 1200px!important;
		margin-left: auto!important;
		margin-right: auto!important;
	}
}

@media screen and (min-width: 1400px) {
	.w1400 {
		max-width: 1400px!important;
		margin-left: auto!important;
		margin-right: auto!important;
	}
}



/*---------- fixTopBtn ----------*/
a.fixTopBtn {
	z-index: 9999;
	opacity: 0;
	position: fixed;
	bottom: 80px;
	right: 15px;
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	color: #ffffff;
	border-radius: 5px;
	cursor: pointer;
}

a.fixTopBtn::before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	display: inline-block;
	content: "";
	width: 2.5rem;
	height: 2.5rem;
	background-image: url("./images/common/pageTop.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

a.fixTopBtn span {
	display: none;
}

@media screen and (min-width: 420px) {
	a.fixTopBtn {
		bottom: 100px;
	}
}

@media screen and (min-width: 650px) {
	a.fixTopBtn {
		bottom: 110px;
	}
}

@media screen and (min-width: 768px) {
	a.fixTopBtn {
		width: 3rem;
		height: 3rem;
		bottom: 15px;
	}

	a.fixTopBtn::before {
		width: 3rem;
		height: 3rem;
	}
}


.headerCommon {
	border-top: 11px solid var(--main-color-green);
}

.headerCommon .headerCommonInner {
	border-bottom: 1px solid var(--main-color-green);

	display: -webkit-flex;
	display: flex;

	-webkit-flex-direction: row;
	flex-direction:         row;

	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;

	-webkit-justify-content: space-between;
	justify-content:         space-between;
}

.headerCommon .headerCommonInner .logo {
	/*max-width: 270px;*/
	position: relative;
	width: 60%;
	padding: 1rem 0 0 1rem;
	background-image: url("./images/common/kbgLine.svg");
	background-position: right 15px top 7px;
	background-repeat: no-repeat;
	background-size: 60px 100%;
}

.headerCommon .headerCommonInner .logo img {
	/*max-width:200px;*/
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 80%;
	width: calc(100% - 80px);
}

.headerCommon .headerCommonInner nav {
	display: none;
}

.headerCommon .headerCommonInner .catch {
	position: relative;
	max-width: 270px;
	width: 40%;
	padding: 0.5rem 1rem 0 0;

	display: -webkit-flex;
	display: flex;

	-webkit-flex-direction: row;
	flex-direction:         row;

	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;

	-webkit-justify-content: flex-end;
	justify-content:         flex-end;

	-webkit-align-items: flex-end;
	align-items: flex-end;
}

.headerCommon .headerCommonInner .catch::after {
	content: "";
	display: block;
	width: 44%;
	height: 1px;
	background-color: #ffffff;
	position: absolute;
	bottom: -1px;
	right: 0;
}

@media screen and (min-width: 550px) {
	.headerCommon .headerCommonInner .catch::after {
		width: 110px;
	}
}

.headerCommon .headerCommonInner .catch a {
	display: block;
	letter-spacing: -.4em;
}

.headerCommon .headerCommonInner .catch img.leftImg {
	display: inline-block;
	vertical-align: middle;
	max-width: 150px;
	width: 59%;
	height: auto;
	margin-bottom: 5px;
	letter-spacing: normal;
}

.headerCommon .headerCommonInner .catch img.rightImg{
	display: inline-block;
	vertical-align: middle;
	position: relative;
	max-width: 100px;
	width: 41%;
	letter-spacing: normal;
}

@media screen and (min-width: 850px) {
	.headerCommon .headerCommonInner .logo {
		width: 260px;
	}
	
	.headerCommon .headerCommonInner .catch {
		width: 270px;
	}

	.headerCommon .headerCommonInner nav {
		position: relative;
		display: block;
		width: calc(100% - 260px - 270px);
		font-size: 0.6rem;
		line-height: 1.5;
	}

	.headerCommon .headerCommonInner nav ul {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		letter-spacing: -.4em;
	}

	.headerCommon .headerCommonInner nav ul li {
		display: inline-block;
		margin-right: 1em;
		letter-spacing: normal;
	}

	.headerCommon .headerCommonInner nav ul li::after {
		content: "|";
		margin-left: 1em;
	}

	.headerCommon .headerCommonInner nav ul li a {
		display: inline-block;
	}

	.headerCommon a:link{ color: var(--main-color); text-decoration: none; }
	.headerCommon a:visited{ color: var(--main-color); text-decoration: none; }
	.headerCommon a:active{ color: var(--main-color); text-decoration: none; }
	.headerCommon a:hover { color: var(--main-color-green);; text-decoration: none; }
}

@media screen and (min-width: 1040px) {
	.headerCommon .headerCommonInner nav {
		font-size: 0.7rem;
		line-height: 2;
	}
}


/*======= header =======*/
header {
	position: relative;
	height: auto;
	background-image: url("./images/common/headerBg.jpg");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100%;
}

header .headerInner {
	margin: 0;
}

header .logoBox {
	position: relative;
	text-align: center;
	padding: 2rem 0 2rem 0;
}

header .logoBox .logo {
	position: relative;
	display: block;
}

header .logoBox .logo img {
	max-width: 400px;
	width: 70%;
}

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

}

@media screen and (min-width: 1040px) {
	header {
		position: relative;
		height: 190px;
		background-image: url("./images/common/headerBg.jpg");
		background-size: 1300px;
	}

	header.homeHeader {
		height: 270px;
	}

	header .headerInner {
		position: relative;
		text-align: left;
	}

	header .logoBox {
		z-index: 100;
		display: block;
		text-align: left;
		width: 55%;
		padding: 1.5rem 0 2rem 2rem;
	}

	header .logoBox .logo img {
		max-width: 100%;
		width: auto;
		height: 130px;
	}
}


/*======= navi =======*/
.fixNavi {
	opacity: 0;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;

	z-index: 9000;
	position: fixed;
	top: 5px;
	right: 5px;
	width: 48px;
	height: 48px;
	display: block;

}

.navBtn {
	z-index: 9999;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	background-color: rgba(70, 83, 162, 0.8);
	text-align: left;
	width: 100%;
	height: 48px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: left;
	-webkit-justify-content: left;
	-ms-flex-pack: left;
	justify-content: left;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	cursor: pointer;
}

.fixNavi .ttl {
	z-index: 9999;
	position: absolute;
	bottom: -1.25em;
	left: 0;
	display: inline-block;
	text-align: center;
	width: 100%;
	height: auto;
	color: var(--main-color-blue);
	font-size: 1rem;
	font-weight: 700;
}

.trigger,
.trigger span {
	display: inline-block;
	-webkit-transition: all .4s;
	transition: all .4s;
	margin-left: 0;
}

.trigger {
	position: relative;
	width: 35px;
	height: 23px;
}

.trigger span {
	position: absolute;
	left: 7px;
	width: 100%;
	height: 3px;
	background-color: #ffffff;
	border-radius: 4px;
}

.trigger span:nth-of-type(1) {
	top: 0;
}

.trigger span:nth-of-type(2) {
	top: 10px;
}

.trigger span:nth-of-type(2)::after {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 3px;
	background-color: #ffffff;
	border-radius: 4px;
	-webkit-transition: all .4s;
	transition: all .4s;
}

.trigger span:nth-of-type(3) {
	bottom: 0;
}

.trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(8px) scale(0);
	transform: translateY(8px) scale(0);
}

.trigger.active span:nth-of-type(2) {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.trigger.active span:nth-of-type(2)::after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) scale(0);
	transform: translateY(-8px) scale(0);
}


/*navMount*/
.navMount {
	position: fixed;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.95);
	z-index: 8000;
	text-align: center;
	padding: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	overflow: auto!important;

	-webkit-overflow-scrolling: touch;
	
	opacity: 0;
	visibility: hidden;
	overflow: hidden;

	-webkit-transition: 0.3s;
	-moz-transition: 0.3;
	-o-transition: 0.3s;
	transition: 0.3s;
}
 
.navMount.is-visible {
	opacity: 1.0;
	visibility: visible;
}

.navMount .navInner {
	position: relative;
	text-align: center;
	width: 100%;
	height: 100%;
}

.navMount .navInner .navContent {
	position: absolute;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
}

.navMount .navLogo {
	position: relative;
	display: inline-block;
	width: 80%;
	max-width: 180px;
	margin-bottom: 3rem;
}

.navMount ul {

}

.navMount ul > li {
	display: inline-block;
	font-size: 1rem;
	letter-spacing: normal;
	width: 40%;
	font-weight: 300;
	margin: 0 5%;
}

.navMount ul > li:nth-child(odd) { margin: 0 1% 0 4%; }
.navMount ul > li:nth-child(even) { margin: 0 4% 0 1%; }

.navMount ul > li > a {
	display: block;
	padding: 1.75rem 0;
	font-size: 0.9rem;
	font-weight: 700;
	text-align: center;
	cursor: pointer;
	letter-spacing: 0.1em;
	line-height: 1em;
}

.navMount ul > li > a:hover,
.navMount ul > li > a:hover img {
	/*opacity: 0.7;
	transition: 0.5s;*/
	opacity: 1;
}

.navMount ul > li > a img {
	width: auto;
	height: 1rem;
}

.navMount ul > li > a.info img { height: 0.85rem; }
.navMount ul > li > a.feat img { height: 1rem; }
.navMount ul > li > a.event img { height: 0.85rem; }
.navMount ul > li > a.bosyu img { height: 1rem; }
.navMount ul > li > a.document img { height: 1.5rem; }
.navMount ul > li > a.protector img { height: 1.5rem; }

.navMount ul.menuList li a:link,
.navMount ul.menuListSub li a:link { color: var(--main-color); text-decoration: none; }
.navMount ul.menuList li a:visited,
.navMount ul.menuListSub li a:link { color: var(--main-color); text-decoration: none; }
.navMount ul.menuList li a:active,
.navMount ul.menuListSub li a:link { color: var(--main-color); text-decoration: none; }
.navMount ul.menuList li a:hover,
.navMount ul.menuListSub li a:link { color: var(--main-color); text-decoration: none; }

.navMount ul > li > a > span {
	position: relative;
	display: inline-block;
	text-align: center;
	padding: 0.1em 0 0.3em 0;
	width: auto;
	opacity: 0;
	transition: 1.5s;
}

.navMount.is-visible ul > li > a > span {
	animation-name: fadeIn;
	animation-duration: 0.5s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-direction: alternate;
	animation-fill-mode: forwards;
	animation-play-state: running;
}

.navMount.is-visible ul.menuList > li:nth-child(1) > a > span { animation-delay: 0.05s; }
.navMount.is-visible ul.menuList > li:nth-child(2) > a > span { animation-delay: 0.1s; }
.navMount.is-visible ul.menuList > li:nth-child(3) > a > span { animation-delay: 0.15s; }
.navMount.is-visible ul.menuList > li:nth-child(4) > a > span { animation-delay: 0.2s; }
.navMount.is-visible ul.menuListSub > li:nth-child(1) > a > span { animation-delay: 0.25s; }
.navMount.is-visible ul.menuListSub > li:nth-child(2) > a > span { animation-delay: 0.3s; }
.navMount.is-visible ul.menuListSub > li:nth-child(3) > a > span { animation-delay: 0.35s; }
.navMount.is-visible ul.menuListSub > li:nth-child(4) > a > span { animation-delay: 0.4s; }

@keyframes fadeIn {
	0% {
		opacity: 0;
		left: -0.75em;
	}
  
	100% {
		opacity: 1;
		left: 0;
	}
}

.navMount ul > li > a:hover > span > span {
	display: inline-block;
}

.navMount ul > li > a:hover > span > img,
.navMount ul > li > a:hover > span > span {
	animation-name: sway;
	animation-duration: 0.5s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-direction: alternate;
	animation-fill-mode: forwards;
	animation-play-state: running;
}

@keyframes sway {
	0% {
		transform:rotate(0deg);
	}

	25% {
		transform:rotate(-10deg);
	}

	50% {
		transform:rotate(10deg);
	}

	100% {
		transform:rotate(0deg);
	}
}




@media screen and (min-width: 1040px) {
	.fixNavi {
		display: none;
	}

	.navMount {
		z-index: 200;
		position: absolute;
		left: auto;
		right: 0;
		bottom: 0;
		width: 45%;
		opacity: 1.0;
		visibility: visible;
		background: transparent;
		overflow: hidden!important;
	}

	.navMount .navInner {
		position: relative;
		height: 100%;
		padding: 0;
	}

	.navMount .navInner .navContent {
		position: relative;
		top: 0;
		transform: translateY(0);
		height: 100%;
	}

	.navMount .navLogo {
		display: none;
	}

	.navMount ul {
		z-index: 200;
		position: absolute;
		right: 0;
		top: 20px;
		display: inline-block;
		width: auto;
		margin: 0;
		text-align: right;
	}

	.navMount ul > li {
		padding: 0;
		width: auto;
		margin: 0;
	}

	.navMount ul > li:nth-child(odd) { margin: 0 0 0 0; }
	.navMount ul > li:nth-child(even) { margin: 0 0 0 0; }

	.navMount ul > li:first-child {
		border-top: none;
	}

	.navMount ul > li > a {
		display: inline-block;
		vertical-align: middle;
		font-size: 0.8rem;
		padding: 1.5rem 0.5rem;
		text-align: center;
		cursor: pointer;
		line-height: 1em;
	}

	.navMount ul > li > a > span {
		width: auto;
		opacity: 1;
	}

	.navMount.is-visible ul > li > a > span {
		animation-name: none;
	}

	.navMount ul.menuList { top: 80px; }

	.navMount ul.menuList > li > a {
		padding: 1.5rem 1rem;
	}

	.navMount ul > li > a.info img { height: 1rem; }
	.navMount ul > li > a.feat img { height: 1.1rem; }
	.navMount ul > li > a.event img { height: 1rem; }
	.navMount ul > li > a.bosyu img { height: 1.15rem; }

	.navMount ul.menuListSub { top: 20px; }

	.navMount ul.menuListSub > li > a {
		font-size: 10.5px;
		letter-spacing: 1px;
		padding: 1.5rem 0.5rem;
	}

	.navMount ul > li > a.document img { height: 1.25rem; }
	.navMount ul > li > a.protector img { height: 1.25rem; }


}

@media screen and (min-width: 1200px) {
	.navMount ul > li > a {

	}
}

/*======= footer =======*/
footer {
	padding-top: 5rem;

	z-index: 100;
	position: relative;
	height: auto;
	background-image: url("./images/common/footerBg.png");
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 1300px;
}

@media screen and (min-width: 1040px) {
	footer {
		padding-top: 13rem;
		margin-top: -10rem;

		position: relative;
		background-position: center top;
	}
}

.footerInner {
	position: relative;
	margin: 0 1rem;
	box-sizing: border-box;
}

@media screen and (min-width: 768px) {
	.footerInner {
		margin: 0 5%;
	}
}

footer .footerSns {
	text-align: center;
	margin-bottom: 3rem;
}

footer .footerSns img {
	max-width: 300px;
	width: 70%;
}

footer .footerLink {
	text-align: center;
	margin-bottom: 3rem;
}

footer .footerLink img {
	max-width: 500px;
	width: 80%;
}

footer .footerInfo {
	padding: 2rem 0 2.5rem 0;
}

footer .footerInfo .left {
	width: 100%;
	text-align: center;
}

footer .footerInfo .left img {
	max-width: 500px;
	width: 90%;
	height: auto;
	margin-bottom: 0.5rem;
}

footer .footerInfo .left p {
	font-size: 0.8rem;
}

footer .footerInfo .left small {
	display: inline;
	font-size: 9px;
	margin-top: 0.5rem;
}

footer .footerInfo .right {
	/*display: none;*/
	width: 100%;
	margin-top: 3rem;
	margin-bottom: 0rem;
}

footer .footerInfo ul {
	letter-spacing: -.4em;
	text-align: left;
	font-size: 0.9rem;
	margin: 0;
}

footer .footerInfo ul li {
	position: relative;
	display: inline-block;
	letter-spacing: normal;
	padding:0 0 0 1rem;
	margin-right: 1.5em;
	line-height: 1;
}

footer .footerInfo ul li::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	display: inline-block;
	content: "";
	width: 0.6rem;
	height: 0.6rem;
	background-image: url("./images/common/iconArrowSmall.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

footer .footerInfo ul li a {
	display: block;
	padding: 0.5em 0;
}

footer .footerExternalLink {
	padding: 1.5rem 1rem 4rem 1rem;
	background-color: #F4F4F4;
}

@media screen and (min-width: 500px) {
	footer .footerExternalLink {
		padding-bottom: 5rem;
	}
}

@media screen and (min-width: 600px) {
	footer .footerExternalLink {
		padding-bottom: 6rem;
	}
}

@media screen and (min-width: 768px) {
	footer .footerExternalLink {
		padding-bottom: 2rem;
	}
}

footer .footerExternalLink ul {
	letter-spacing: -.4em;
	text-align: left;
	font-size: 0.9rem;
	margin: 0;
}

footer .footerExternalLink ul li {
	position: relative;
	display: inline-block;
	letter-spacing: normal;
	margin-right: 0.5em;
	margin-bottom: 0.5em;
	line-height: 1;
}

footer .footerExternalLink ul li a {
	display: block;
	padding: 0.3em 1em 0.3em 2.25em;
	border: 1px solid #E1E1E1;
	background-color: #ffffff;
}

footer .footerExternalLink ul li a::before {
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translateY(-50%);
	display: inline-block;
	content: "";
	width: 1rem;
	height: 1rem;
	background-image: url("./images/common/iconLinkExternal.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

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

	}
	
	footer .footerLink {
		padding-top: 8rem;
		margin-bottom: 3rem;
	}
	
	footer .footerInfo {
		padding: 2rem 0 3rem 0;
	}
	
	footer .footerInfo .left {
		width: 50%;
		text-align: left;
	}
	
	footer .footerInfo .left img {
		max-width: 370px;
		width: 100%;
	}
	
	footer .footerInfo .left p {
		font-size: 0.8rem;
		margin-left: 75px;
	}

	footer .footerInfo .left small {
		margin-left: 75px;
	}

	footer .footerInfo .right {
		display: block;
		width: 50%;
		margin-top: 0;
	}
	
	footer .footerInfo ul {
		margin-top: 15px;
	}
}



/*======= contentCommon =======*/
.flexContainer {
	display: -webkit-flex;
	display: flex;

	-webkit-flex-direction: row;
	flex-direction:         row;

	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;

	-webkit-justify-content: space-between;
	justify-content:         space-between;
	/*flex-start space-around space-between*/
}

.flexContainer.rev {
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.flexContainer .itemCol2,
.flexContainer .itemCol3,
.flexContainer .itemCol4 {
	position: relative;
	display: inline-block;
	width: 100%;
	height: auto;
	margin-bottom: 1rem;
	text-align: center;
}

.flexContainer .itemCol4 {
	width: 50%;
}

.flexContainer .itemCol2:last-child,
.flexContainer .itemCol3:last-child,
.flexContainer .itemCol4:last-child {
	margin-bottom: 0;
}

@media screen and (min-width: 768px) {
	.flexContainer {
		/*-webkit-justify-content: space-between;
		justify-content:         space-between;*/
	}

	.flexContainer .itemCol2 {
		width: 50%;
		margin-bottom: 0;
	}

	.flexContainer .itemCol3 {
		width: 33.33333%;
		width: -webkit-calc(99.99999% / 3);
		width: calc(99.99999% / 3);
		margin-bottom: 0;
	}

	.flexContainer .itemCol4 {
		width: 25%;
		margin-bottom: 0;
	}
}


.parallax_base{
	position: relative;
	min-height: 300px;
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.parallax_image {
	background-image: url('');
	background-repeat: no-repeat;
	background-attachment: fixed;
}

.nobgattach {
	background-attachment: scroll!important;
}


/*メイン見出し*/
.titleMain {
	text-align: center;
}

.titleMain img {
	width: auto;
	height: 115px;
}


/*ボタン*/
.btnArrow {

}

.btnArrow a {
	display: inline-block;
}

.btnArrow a span {
	display: inline-block;
	vertical-align: middle;
	font-size: 1.1rem;
	font-weight: 700;
}

.btnArrow a span::before {
	content: "";
	display: inline-block;
	width: 1.75rem;
	height: 1.75rem;
	margin-right: 0.75em;
	vertical-align: middle;
	background-image: url("./images/common/arrowLink.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.btnArrow a:hover span::before {
	animation-name: arrowspin;
	animation-duration: 0.5s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-direction: alternate;
	animation-fill-mode: forwards;
	animation-play-state: running;
}

@keyframes arrowspin {
	0% {
		transform: translateX(0px) rotateZ(0deg);
	}

	50% {
		transform: translateX(7px) rotateZ(180deg);
	}

	100% {
		transform: translateX(0px) rotateZ(360deg);
	}
}

.btnArrow a:link{ color: var(--main-color); text-decoration: none; }
.btnArrow a:visited{ color: var(--main-color); text-decoration: none; }
.btnArrow a:active{ color: var(--main-color); text-decoration: none; }
.btnArrow a:hover { color: var(--main-color); text-decoration: none; opacity: 0.7; }


.btnArrow2 {

}

.btnArrow2 a {
	position: relative;
	display: inline-block;
	border: 3px solid var(--main-color-blue);
	background-color: #ffffff;
	border-radius: 2rem;
	padding: 0.5rem 3.5rem;
}

.btnArrow2 a span {
	font-size: 1.1rem;
	font-weight: 700;
}

.btnArrow2 a span::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotateZ(0deg);
	left: 0.5rem;
	display: block;
	width: 1.5rem;
	height: 1.5rem;
	background-image: url("./images/common/arrowLinkBlue2.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.btnArrow2 a:hover span::before {
	animation-name: arrowspin3;
	animation-duration: 0.5s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-direction: alternate;
	animation-fill-mode: forwards;
	animation-play-state: running;
}

@keyframes arrowspin3 {
	0% {
		transform: translateY(-50%) rotateZ(0deg);
	}

	50% {
		transform: translateY(-50%) translateX(10px) rotateZ(180deg);
	}

	100% {
		transform: translateY(-50%) rotateZ(360deg);
	}
}

.btnArrow2 a:link{ color: var(--main-color); text-decoration: none; }
.btnArrow2 a:visited{ color: var(--main-color); text-decoration: none; }
.btnArrow2 a:active{ color: var(--main-color); text-decoration: none; }
.btnArrow2 a:hover { color: var(--main-color); text-decoration: none; opacity: 0.7; }


.btnArrow3 {

}

.btnArrow3 a {
	position: relative;
	display: inline-block;
	border: 1px solid var(--main-color-blue);
	background-color: #ffffff;
	border-radius: 2rem;
	padding: 0.5rem 2rem;
}

.btnArrow3 a span {
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: 0.15em;
	display: inline-block;
	vertical-align: middle;
}

.btnArrow3 a span::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 1rem;
	height: 1rem;
	margin-bottom: 3px;
	margin-right: 0.75rem;
	background-image: url("./images/common/arrowLinkBlue3.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.btnArrow3 a:hover span::before {
	animation-name: arrowspin4;
	animation-duration: 0.5s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-direction: alternate;
	animation-fill-mode: forwards;
	animation-play-state: running;
}

@keyframes arrowspin4 {
	0% {

	}

	50% {
		transform: translateX(7px);
	}

	100% {

	}
}

.btnArrow3 a:link{ color: var(--main-color-blue); text-decoration: none; }
.btnArrow3 a:visited{ color: var(--main-color-blue); text-decoration: none; }
.btnArrow3 a:active{ color: var(--main-color-blue); text-decoration: none; }
.btnArrow3 a:hover { color: var(--main-color-blue); text-decoration: none; opacity: 0.7; }




/*テーブル 基本*/
table.basicTable {
	width: 100%;
	border-collapse:separate;
	border-top: 1px dashed var(--main-color);
}

table.basicTable caption{
	font-size: 1rem;
	font-weight: bold;
	text-align: left;
}

table.basicTable tr th,
table.basicTable tr td {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	padding: 0.75em 1em;
	border-bottom: 1px dashed var(--main-color);
}

table.basicTable tr th {
	text-align-last: justify;
	font-weight: 700;
	color: var(--text-color-magenta);
}

table.basicTable tr th { width: 30%; }
table.basicTable tr td { width: 70%; }

table.basicTable p {
	margin-bottom: 1em;
}

@media screen and (min-width: 768px) {
	table.basicTable tr th { width: 18%; }
	table.basicTable tr td { width: 82%; }
}


/*テーブル ：で区切り*/
table.delimiterTable {
	width: 100%;
	border-collapse:separate;
}

table.delimiterTable caption{
	font-size: 1rem;
	font-weight: bold;
	text-align: left;
}

table.delimiterTable tr th,
table.delimiterTable tr td {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	padding: 0.5em 1em;
	letter-spacing: 0;
}

table.delimiterTable tr th {
	text-align-last: justify;
	font-weight: 700;
}

table.delimiterTable tr th { width: 34%; }
table.delimiterTable tr td { width: 66%; }

table.delimiterTable p {
	position: relative;
	/*margin-left: 1em;*/
}

table.delimiterTable p::before {
	content: "：";
	position: absolute;
	top: 0;
	left: -1em;
}

@media screen and (min-width: 768px) {
	table.delimiterTable tr th { width: 18%; }
	table.delimiterTable tr td { width: 82%; }
}


/*テーブル2*/
table.basicTable2 {
	width: 100%;
	border-collapse:separate;
	border: 1px solid var(--main-color);
	border-width: 1px 0 0 1px;
	font-size: 0.9rem;
}

table.basicTable2 caption{
	font-size: 1rem;
	font-weight: bold;
	text-align: left;
}

table.basicTable2 tr th,
table.basicTable2 tr td {
	font-weight: normal;
	vertical-align: top;
	padding: 0.75em 1em;
	border-bottom: 1px solid var(--main-color);
	border-right: 1px solid var(--main-color);
}

table.basicTable2 tr th {
	text-align-last: justify;
	font-weight: 700;
	color: #ffffff;
	text-align: center;
	background-color: var(--text-color-magenta);
}

table.basicTable2 tr:first-child th {
	text-align-last: auto;
}

table.basicTable2 tr:first-child th:first-child {
	text-align-last: justify;
}

table.basicTable2 p {
	margin-bottom: 1em;
}

table.basicTable2 tr th { width: 16%; }
table.basicTable2 tr td:nth-child(2) { width: 28%; }
table.basicTable2 tr td:nth-child(3) { width: 28%; }
table.basicTable2 tr td:nth-child(4) { width: 28%; }


/*テーブル2 スクロール*/
.slideTb {
	overflow: auto;
}

.slideTb table {
	width: 720px;
	margin: 0 auto;
}

/*
.slideTb .basicTable2.ptn1 tr th:nth-child(1) { width: 160px; }
.slideTb .basicTable2.ptn1 tr td:nth-child(2) { width: 280px; }
.slideTb .basicTable2.ptn1 tr td:nth-child(3) { width: 280px; }
.slideTb .basicTable2.ptn1 tr td:nth-child(4) { width: 280px; }
*/

.slideTb .basicTable2.ptn1 tr th:nth-child(1) { width: 19%; }
.slideTb .basicTable2.ptn1 tr td:nth-child(2) { width: 27%; }
.slideTb .basicTable2.ptn1 tr td:nth-child(3) { width: 27%; }
.slideTb .basicTable2.ptn1 tr td:nth-child(4) { width: 27%; }

.slideTb .basicTable2.ptn1 tr th,
.slideTb .basicTable2.ptn1 tr td {
	text-align: center;
}

/*
.slideTb .basicTable2.ptn2 tr:first-child th { width: 185px; }
.slideTb .basicTable2.ptn2 tr th:nth-child(1) { width: 160px; }
.slideTb .basicTable2.ptn2 tr td:nth-child(2) { width: 185px; }
.slideTb .basicTable2.ptn2 tr td:nth-child(3) { width: 185px; }
.slideTb .basicTable2.ptn2 tr td:nth-child(4) { width: 185px; }
.slideTb .basicTable2.ptn2 tr td:nth-child(5) { width: 185px; }
*/

.slideTb .basicTable2.ptn2 tr:first-child th { width: 20.25%; }
.slideTb .basicTable2.ptn2 tr th:nth-child(1) { width: 19%; }
.slideTb .basicTable2.ptn2 tr td:nth-child(2) { width: 20.25%; }
.slideTb .basicTable2.ptn2 tr td:nth-child(3) { width: 20.25%; }
.slideTb .basicTable2.ptn2 tr td:nth-child(4) { width: 20.25%; }
.slideTb .basicTable2.ptn2 tr td:nth-child(5) { width: 20.25%; }

.slideTb .basicTable2.ptn2 tr th,
.slideTb .basicTable2.ptn2 tr td {
	text-align: center;
}

@media screen and (min-width: 768px) {
	.slideTb {
		overflow: visible;
	}

	.slideTb table {
		width: 100%;
		max-width: 720px;
		margin: 0 auto;
	}

	/*
	.slideTb .basicTable2.ptn1 tr th:nth-child(1) { width: 19%; }
	.slideTb .basicTable2.ptn1 tr td:nth-child(2) { width: 27%; }
	.slideTb .basicTable2.ptn1 tr td:nth-child(3) { width: 27%; }
	.slideTb .basicTable2.ptn1 tr td:nth-child(4) { width: 27%; }

	.slideTb .basicTable2.ptn2 tr:first-child th { width: 20.25%; }
	.slideTb .basicTable2.ptn2 tr th:nth-child(1) { width: 19%; }
	.slideTb .basicTable2.ptn2 tr td:nth-child(2) { width: 20.25%; }
	.slideTb .basicTable2.ptn2 tr td:nth-child(3) { width: 20.25%; }
	.slideTb .basicTable2.ptn2 tr td:nth-child(4) { width: 20.25%; }
	.slideTb .basicTable2.ptn2 tr td:nth-child(5) { width: 20.25%; }
	*/
}

@media screen and (min-width: 900px) {
	/*
	.slideTb .basicTable2.ptn1 tr th:nth-child(1) { width: 160px; }
	.slideTb .basicTable2.ptn1 tr td:nth-child(2) { width: 280px; }
	.slideTb .basicTable2.ptn1 tr td:nth-child(3) { width: 280px; }
	.slideTb .basicTable2.ptn1 tr td:nth-child(4) { width: 280px; }

	.slideTb .basicTable2.ptn2 tr:first-child th { width: 185px; }
	.slideTb .basicTable2.ptn2 tr th:nth-child(1) { width: 160px; }
	.slideTb .basicTable2.ptn2 tr td:nth-child(2) { width: 185px; }
	.slideTb .basicTable2.ptn2 tr td:nth-child(3) { width: 185px; }
	.slideTb .basicTable2.ptn2 tr td:nth-child(4) { width: 185px; }
	.slideTb .basicTable2.ptn2 tr td:nth-child(5) { width: 185px; }
	*/
}


/*テーブル 見出し青*/
table.basicTable3 {
	width: 100%;
	border-collapse:separate;
}

table.basicTable3 caption{
	font-size: 1rem;
	font-weight: bold;
	text-align: left;
}

table.basicTable3 tr th {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	padding: 0.75em 0;
}

table.basicTable3 tr td {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	padding: 0.75em 1em;
}

table.basicTable3 tr th span {
	display: block;
	width: 100%;
	background-color: var(--main-color-lightblue);
	color: #ffffff;
	text-align: center;
	line-height: 1;
	padding: 0.5em 0.75em;
}

table.basicTable3.ptn2 tr th span {
	background-color: var(--main-color-blue);
}

table.basicTable3 tr th { width: 9em; }
table.basicTable3 tr td { width: calc(100% - 9em); }

table.basicTable3 p {
	margin-bottom: 1em;
}












/*レスポンシブ用マージン*/
.martS { margin-top: 3rem; }
.martM { margin-top: 5rem; }
.martL { margin-top: 7rem; }

.marbS { margin-bottom: 3rem; }
.marbM { margin-bottom: 5rem; }
.marbL { margin-bottom: 7rem; }

@media only screen and (min-width: 768px){
	.martS { margin-top: 4rem; }
	.martM { margin-top: 6rem; }
	.martL { margin-top: 8rem; }

	.marbS { margin-bottom: 4rem; }
	.marbM { margin-bottom: 6rem; }
	.marbL { margin-bottom: 8rem; }
}

@media only screen and (min-width: 1040px){
	.martS { margin-top: 5rem; }
	.martM { margin-top: 7rem; }
	.martL { margin-top: 9rem; }

	.marbS { margin-bottom: 5rem; }
	.marbM { margin-bottom: 7rem; }
	.marbL { margin-bottom: 9rem; }
}

.padtS { padding-top: 3rem; }
.padtM { padding-top: 5rem; }
.padtL { padding-top: 7rem; }

.padbS { padding-bottom: 3rem; }
.padbM { padding-bottom: 5rem; }
.padbL { padding-bottom: 7rem; }

@media only screen and (min-width: 768px){
	.padtS { padding-top: 4rem; }
	.padtM { padding-top: 6rem; }
	.padtL { padding-top: 8rem; }

	.padbS { padding-bottom: 4rem; }
	.padbM { padding-bottom: 6rem; }
	.padbL { padding-bottom: 8rem; }
}

@media only screen and (min-width: 1040px){
	.padtS { padding-top: 5rem; }
	.padtM { padding-top: 7rem; }
	.padtL { padding-top: 9rem; }

	.padbS { padding-bottom: 5rem; }
	.padbM { padding-bottom: 7rem; }
	.padbL { padding-bottom: 9rem; }
}


/*======= section =======*/
section,
div {
	background-color: transparent;
}

section {
	position: relative;
	line-height: 1.5em;
}

section .sectionInner,
.breadcrumbsInner {
	position: relative;
	margin: 0 1rem;
	box-sizing: border-box;
}

.innerBox,
.innerBox2 {
	margin-left: 1em;
	margin-right: 1em;
}

@media screen and (min-width: 768px) {
	section .sectionInner,
	.breadcrumbsInner  {
		margin: 0 5%;
	}

	.innerBox {
		margin-left: 2em;
		margin-right: 2em	
	}
}

hr {
	/*border-top: 1px solid #000000;*/
	margin: 0.5em 0;
}

hr.hrLine {
	height: 30px;
	margin: 5rem 0;
	background-image: url("./images/common/line.svg");
	background-position: center center;
	background-repeat: no-repeat;
}

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

}


/*======= breadcrumbs =======*/
.breadcrumbs {
	padding-top: 1rem;
	background-color: #ffffff;
	margin: 0 13px 0 13px;
}

@media screen and (min-width: 768px) {
	.breadcrumbs {
		margin: 0 18px 0 18px;
	}
}

@media screen and (min-width: 1100px) {
	.breadcrumbs {
		padding-top: 3rem;
	}
}

.breadcrumbs nav {
	padding-bottom: 1rem;
}

.breadcrumbs nav ol {
	font-size: 0.9rem;
}

.breadcrumbs nav ol li {
	display: inline;
}

.breadcrumbs nav ol li:after {
	content: " > ";
	padding: 0 0.5em;
}
.breadcrumbs nav ol li:last-child:after {
	content:"";
}




/*======= fixedBanner =======*/
.fixedBanner {
	z-index: 1000;
	position: fixed;
	bottom: 0;
	right: 0;
}

.banner {
	position: relative;
}

.banner ul {
	display: block;
	width: 100%;
	letter-spacing: -.4em;
}

.banner ul li {
	display: inline-block;
	width: 50%;
	letter-spacing: normal;
}

.banner a {
	display: block;
}

.banner img {
	width: 100%;
	height: auto;
}

@media screen and (min-width: 768px) {
	.fixedBanner {
		z-index: 1000;
		position: fixed;
		bottom: 80px;
		right: 0;
	}
	
	.banner {
		position: relative;
	}
	
	.banner ul {
		display: inline-block;
		width: 140px;
	}
	
	.banner ul li {
		display: inline-block;
		width: auto;
		margin-bottom: 10px;
	}
	
	.banner a {
		display: inline-block;
	}
	
	.banner img {
		width: 100%;
		height: auto;
	}

}

@media screen and (min-width: 1040px) {
	.banner ul {
		width: 160px;
		/*width: 200px;*/
	}
}

@media screen and (min-width: 1200px) {
	.banner ul {
		/*width: 230px;*/
	}
}

/*======= mainVisual =======*/
.mainVisual {
	background-color: transparent;
}

.mainVisual .dropshadow {
	filter: drop-shadow(0 0 5px rgba(0, 0, 0, .4));
}

.mainVisual .mainVisualInner {
	position: relative;
	width: 100%;
	height: 380px;

	background-image: url("");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;

	mask-image: url("./images/common/mainVisualMask.png");
	mask-repeat: repeat-x;
	mask-position: center;
	mask-size: auto 100%;
	-webkit-mask-image: url("./images/common/mainVisualMask.png");
	-webkit-mask-repeat: repeat-x;
	-webkit-mask-position: center;
	-webkit-mask-size: auto 100%;
}

.mainVisual.home .mainVisualInner {	background-image: url("./images/home/mainVisualHome_mb.jpg"); }
.mainVisual.info .mainVisualInner {	background-image: url("./images/info/mainVisualInfo.jpg"); }
.mainVisual.feat .mainVisualInner {	background-image: url("./images/feat/mainVisualFeat.jpg"); }
.mainVisual.event .mainVisualInner { background-image: url("./images/event/mainVisualEvent.jpg"); }
.mainVisual.bosyu .mainVisualInner { background-image: url("./images/bosyu/mainVisualBosyu.jpg"); background-position: left -50px center;}
.mainVisual.eventlist .mainVisualInner { background-image: url("./images/eventlist/mainVisualEventlist.jpg"); }
.mainVisual.blog .mainVisualInner { background-image: url("./images/blog/mainVisualBlog.jpg"); }

.mainVisual .mainVisualInner .scroll {
	z-index: 10;
	display: inline-block;
	width: 15px;
	height: auto;
	position: absolute;
	bottom: 5%;
	left: 50%;
	transform: translateX(-50%);
}

.mainVisual .mainVisualInner .catch {
	z-index: 10;
	display: inline-block;
	position: absolute;
	/*top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);*/
}

.mainVisual.home .mainVisualInner .catch {
	width: 80px;
	bottom: 13%;
	right: 7%;
}

.mainVisual.info .mainVisualInner .catch {
	width: 200px;
	top: 30%;
	right: 3%;
}

.mainVisual.feat .mainVisualInner .catch {
	width: 270px;
	bottom: 22%;
	left: 50%;
	transform: translateX(-50%);
}

.mainVisual.event .mainVisualInner .catch {
	width: 270px;
	top: 60%;
	left: 10%;
}

.mainVisual.bosyu .mainVisualInner .catch {
	width: 200px;
	top: 14%;
	right: 8%;
}

.mainVisual.eventlist .mainVisualInner .catch {
	width: 190px;
	top: 20%;
	left: 10%;
}

.mainVisual.blog .mainVisualInner .catch {
	width: 190px;
	top: 60%;
	left: 5%;
}

@media screen and (min-width: 600px) {
	.mainVisual.bosyu .mainVisualInner { background-position: left center;}
}

@media screen and (min-width: 768px) {
	.mainVisual .mainVisualInner {
		height: 500px;
	}

	.mainVisual.home .mainVisualInner {	background-image: url("./images/home/mainVisualHome.jpg"); }

	.mainVisual.home .mainVisualInner .catch {
		width: 80px;
		bottom: 7%;
		right: 20%;
	}

	.mainVisual.info .mainVisualInner .catch {
		width: 300px;
		top: 30%;
		right: 8%;
	}

	.mainVisual.feat .mainVisualInner .catch {
		width: 400px;
	}

	.mainVisual.event .mainVisualInner .catch {
		width: 380px;
	}

	.mainVisual.bosyu .mainVisualInner .catch {
		width: 260px;
		top: 13%;
		right: auto;
		left: 33%;
	}

	.mainVisual.eventlist .mainVisualInner .catch {
		width: 250px;
		top: 30%;
		left: 20%;
	}

	.mainVisual.blog .mainVisualInner .catch {
		width: 250px;
		top: 60%;
		left: 7%;
	}
}

@media screen and (min-width: 1040px) {
	.mainVisual .mainVisualInner {
		height: 750px;
		mask-image: url("./images/common/mainVisualMaskL.png");
		mask-size: auto 100%;
		-webkit-mask-image: url("./images/common/mainVisualMaskL.png");
		-webkit-mask-size: auto 100%;
	}

	.mainVisual .dropshadow {
		filter: drop-shadow(0 0 5px rgba(0, 0, 0, .4));
	}

	.mainVisual .mainVisualInner .scroll {
		width: 20px;
	}

	.mainVisual.home .mainVisualInner .catch {
		width: 130px;
		bottom: 7%;
		right: 25%;
	}

	.mainVisual.info .mainVisualInner .catch {
		width: 450px;
		top: 25%;
		right: 13%;
	}

	.mainVisual.feat .mainVisualInner .catch {
		width: 550px;
		left: 28%;
		transform: translateX(0);
	}

	.mainVisual.event .mainVisualInner .catch {
		width: 520px;
		top: 60%;
		left: 15%;
	}

	.mainVisual.bosyu .mainVisualInner .catch {
		width: 370px;
		top: 13%;
		left: 38%;
	}

	.mainVisual.eventlist .mainVisualInner .catch {
		width: 330px;
		top: 34%;
		left: 13%;
	}

	.mainVisual.blog .mainVisualInner .catch {
		width: 330px;
		top: 60%;
		left: 8%;
	}
}




/*======= home =======*/

/*背景*/
.bgImg1 {
	position: relative;
	height: auto;
	background-image: url("./images/home/bg1.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 1300px auto;
}

@media screen and (min-width: 1040px) {
	.bgImg1 {
		background-position: center top;
		background-size: 1600px auto;
	}
}

.bgImg2 {
	position: relative;
	height: auto;
	background-image: url("./images/home/bg2.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 700px auto;
}

@media screen and (min-width: 1040px) {
	.bgImg2 {
		background-position: center top;
		background-size: 1600px auto;
	}
}

.bgImg3 {
	position: relative;
	height: auto;
	background-image: url("./images/home/bg3.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 600px auto;
}

@media screen and (min-width: 1040px) {
	.bgImg3 {
		background-position: center center;
		background-size: 1600px auto;
	}
}


/*トップ*/
.homeNews {

}

.homeNews h1 img {
	display: inline-block;
	width: 10rem;
	height: auto;
	margin-bottom: 2.5em;
}

@media screen and (min-width: 1040px) {
	.homeNews h1 img {
		margin-bottom: 4rem;
	}
}

ul.newsList {

}

ul.newsList li {

	border-bottom: 1px dashed var(--main-color);
	transition: 0.5s;
}

ul.newsList li a {
	display: block;
	text-align: left;
	letter-spacing: -.4em;
}

ul.newsList li:hover {
	background-color: rgba(150, 150, 150, 0.1);;
	transition: 0.5s;
}

ul.newsList li a:hover {
	opacity: 1;
}

ul.newsList li a > span {
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
	padding: 1em 0;
}

ul.newsList li .date {
	width: 7em;
	padding-bottom: 0;
}

ul.newsList li .cate {
	width: 70%;
	width: calc(100% - 7em);
	text-align: left;
	padding-bottom: 0;
}

ul.newsList li .title {
	width: 100%;
}

ul.newsList li .cate > span {
	display: inline-block;
	color: #ffffff;
	font-size: 0.9rem;
	background-color: var(--main-color-blue);
	line-height: 1;
	padding: 5px 1.5em 4px;
	border-radius: 1em;
}

ul.newsList li .cate.nyushi > span { background-color: var(--main-color-blue); }
ul.newsList li .cate.event > span { background-color: var(--main-color-pink); }
ul.newsList li .cate.oshirase > span { background-color: var(--main-color-green); }

@media screen and (min-width: 1040px) {
	ul.newsList li { 
		padding-left: 6rem;
		padding-right: 6rem;
	}

	ul.newsList li .date {

	}
	
	ul.newsList li .cate {
		width: 9em;
	}
	
	ul.newsList li .title {
		width: calc(100% - 16em);
	}
}

.homeNews .newsBox {

}

.homeNews .newsBox .link {
	margin: 2rem 0 0 0;
}

@media screen and (min-width: 1040px) {
	.homeNews .newsBox .link {
		margin: 3rem 0 0 0;
		padding-right: 4rem;
	}
}


.homeTimes {

}

.homeTimes h1 img {
	display: inline-block;
	width: 16rem;
	height: auto;
	margin-bottom: 4rem;
}

ul.timesList {
	max-width: 530px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	letter-spacing: -.4em;
	padding-left: 7px;
	box-sizing: content-box;
}

ul.timesList li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 25%;
	height: 4.5em;
	height: calc(4.5em + 7px);
	letter-spacing: normal;
	font-size: 0.7rem;
	font-weight: 700;
	line-height: 1.25;
	margin-bottom: 15px;
	box-sizing: border-box;
}

ul.timesList li a {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 92%;
	width: calc(100% - 14px);
	height: 4.5em;
	border: 1px solid var(--main-color-blue);
	border-width: 1px 1px 1px 8px;
	box-shadow: 7px 7px 0 0 rgba(70,83,162,0.3);
	background-color: #ffffff;
	transition: 0.2s;
}

ul.timesList li.exc a {
	border-width: 1px 1px 1px 1px;
	background-color: var(--main-color-blue);
}

ul.timesList li.exc a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 7px;
	height: 100%;
	background-color: #ffffff;
}

/*
ul.timesList li a::after {
	content: '';
	position: absolute;
	top: 7px;
	right: -7px;
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(70,83,162,0.3);
}
*/

ul.timesList li:nth-child(4n) { padding-right: 0; }

ul.timesList li a:hover {
	/*margin-top: 7px;
	margin-left: 7px;*/
	transform: translateY(7px) translateX(7px);
	box-shadow: 0 0 0 0 rgba(70,83,162,0.3);
}

ul.timesList li a > span {
	position: absolute;
	display: block;
	width: 100%;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

ul.timesList li a > span .num {
	font-size: 1.15rem;
	margin-right: 3px;
}

ul.timesList a:link{ color: var(--main-color-blue); text-decoration: none; }
ul.timesList a:visited{ color: var(--main-color-blue); text-decoration: none; }
ul.timesList a:active{ color: var(--main-color-blue); text-decoration: none; }
ul.timesList a:hover { color: var(--main-color-blue); text-decoration: none; }

ul.timesList .exc a:link{ color: #ffffff; text-decoration: none; }
ul.timesList .exc a:visited{ color: #ffffff; text-decoration: none; }
ul.timesList .exc a:active{ color: #ffffff; text-decoration: none; }
ul.timesList .exc a:hover { color: #ffffff; text-decoration: none; }

@media screen and (min-width: 600px) {
	ul.timesList li {
		font-size: 1rem;
	}

	ul.timesList li a > span .num {
		font-size: 1.5rem;
	}
}

@media screen and (min-width: 1040px) {
	ul.timesList {
		max-width: 100%;
	}
	
	ul.timesList li {
		width: 12.5%;
		font-size: 1rem;
	}

	ul.timesList li a > span .num {
		font-size: 1.5rem;
	}
}

.photoFrameBox {
	background-color: transparent;
}

.photoFrameBox .dropshadow {
	filter: drop-shadow(0 0 5px rgba(0, 0, 0, .4));
}

.photoFrameBox .photoFrameInner {
	position: relative;
	width: 100%;
	height: 230px;

	background-image: url("");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;

	mask-image: url("./images/common/mainVisualMask.png");
	mask-repeat: repeat-x;
	mask-position: center;
	mask-size: auto 100%;
	-webkit-mask-image: url("./images/common/mainVisualMask.png");
	-webkit-mask-repeat: repeat-x;
	-webkit-mask-position: center;
	-webkit-mask-size: auto 100%;
}

.photoFrameBox .photoFrameInner.home1 {	background-image: url("./images/home/homePhotoFrame1.jpg"); }

@media screen and (min-width: 900px) {
	.photoFrameBox .dropshadow {
		filter: drop-shadow(7px 7px 0 rgba(0, 0, 0, .1));
	}

	.photoFrameBox .photoFrameInner {
		height: 280px;
		border: 3px solid #ffffff;
		border-radius: 1.5rem;
		mask-image: none;
		-webkit-mask-image: none;
	}
}


.photoFrameBox2 {
	background-color: transparent;
}

.photoFrameBox2 .dropshadow {
	padding: 20px 0;
	filter: drop-shadow(0 7px 1px rgba(0, 0, 0, .3));
}

.photoFrameBox2 .photoFrameInner {
	position: relative;
	width: 100%;
	height: 250px;

	background-image: url("");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	filter: drop-shadow(0 -4px 2px rgba(0, 0, 0, .3));
}

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

}



.homeEvent {
	/*background: linear-gradient( #ffffff 0%, #FCE3D2 50px, #ffffff 180px);*/
}

.homeEvent .emblem {
	display: none;
}

@media screen and (min-width: 1040px) {
	/*.homeEvent { background: none; }*/

	.homeEvent .emblem {
		display: block;
	}
}

.homeEvent .emblem img {
	width: 4.5rem;
	height: auto;
	margin-bottom: 3rem;
}

.headBgeng {
	text-align: center;
	background-image: url("");
	background-position: center bottom;
	background-repeat: no-repeat;
}

.headBgeng span {
	display: inline-block;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.headBgeng span img {
	display: inline-block;
	height: 2rem;
	height: auto;
}

.homeEvent .headBgeng {
	background-image: url("./images/home/headEventEng.png");
	background-size: 16rem auto;
	padding-bottom: 4.5rem;
}

.homeEvent .headBgeng span img {
	width: 11rem;
}

.homeEvent .link {
	margin-top: 2rem;
}

.textDesc {
	line-height: 1.75em;
}

.homeEvent .textDesc {
	margin: 0 0 1rem 0;
}

@media screen and (min-width: 1040px) {
	.homeEvent .textDesc {
		margin: 2rem 0;
	}
}

.banner2col.flexContainer {
	justify-content: space-between;

}

.banner2col .item {
	position: relative;
	width: 100%;
	margin-bottom: 2rem;
	box-sizing: border-box;
}

.banner2col .item a {
	position: relative;
	display: block;
	width: 92%;
	width: calc(100% - 14px);
	max-width: 500px;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid var(--main-color-blue);
	border-width: 1px 1px 1px 1px;
	background-color: #ffffff;
	box-shadow: 7px 7px 0 0 rgba(0,0,0,0.1);
	transition: 0.2s;
}

.banner2col .item a::before {
	content: "";
	position: absolute;
	bottom: 0.75rem;
	right: 1rem;
	display: block;
	width: 1.75rem;
	height: 1.75rem;
	background-image: url("./images/common/arrowLinkBlue.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.banner2col .item a:hover::before {
	animation-name: arrowspin2;
	animation-duration: 0.5s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-direction: alternate;
	animation-fill-mode: forwards;
	animation-play-state: running;
}

@keyframes arrowspin2 {
	0% {
		transform: rotateZ(0deg);
	}

	100% {
		transform: rotateZ(360deg);
	}
}

.banner2col .item a > span {
	display: block;
	text-align: left;
}

.banner2col .item a .title {
	font-size: 1.3rem;
	padding: 0.4em 0.5em;
	background-color: var(--main-color-blue);
}

.banner2col .item a .pic {
	padding: 0.5rem;
}

.banner2col .item a .date {
	padding: 0 0.5rem;
}

.banner2col .item a .sup {
	padding: 0.25rem 3rem 0.5rem 0.5rem;
}

.banner2col .item a:hover {
	transform: translateY(7px) translateX(7px);
	box-shadow: 0 0 0 0 rgba(70,83,162,0.3);
	opacity: 1;
}

.banner2col .item a:hover img {
	transform: translateY(4px) translateX(4px);
	opacity: 1;
}

.banner2col a:link { color: var(--main-color); text-decoration: none; }
.banner2col a:visited { color: var(--main-color); text-decoration: none; }
.banner2col a:active { color: var(--main-color); text-decoration: none; }
.banner2col a:hover { color: var(--main-color); text-decoration: none; }

.banner2col a:link .title{ color: #ffffff; text-decoration: none; }
.banner2col a:visited .title{ color: #ffffff; text-decoration: none; }
.banner2col a:active .title{ color: #ffffff; text-decoration: none; }
.banner2col a:hover .title{ color: #ffffff; text-decoration: none; }

.banner2col .item.nolink {/*リンクなし*/
	position: relative;
	display: block;
	width: 92%;
	width: calc(100% - 14px);
	max-width: 500px;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid var(--main-color-blue);
	border-width: 1px 1px 1px 1px;
	background-color: #ffffff;
	/*box-shadow: 7px 7px 0 0 rgba(0,0,0,0.1);*/
	transition: 0.2s;
}

.banner2col .item.nolink > span {
	display: block;
	text-align: left;
}

.banner2col .item.nolink .title {
	font-size: 1.3rem;
	padding: 0.4em 0.5em;
	background-color: var(--main-color-blue);
}

.banner2col .item.nolink .pic {
	padding: 0.5rem;
}

.banner2col .item.nolink .date {
	padding: 0 0.5rem;
}

.banner2col .item.nolink .sup {
	padding: 0.25rem 3rem 0.5rem 0.5rem;
}

@media screen and (min-width: 900px) {
	.banner2col .item {
		width: 48.5%;
	}

	.banner2col .item.nolink {
		width: 48.5%;
		margin-left: 0;
		margin-right: 0
	}

	.banner2col .item a {
		max-width: 100%;
	}
	
}


.homeBosyu {

}

.homeBosyu .sectionInner {
	/*padding-top: 2rem;*/
}

@media screen and (min-width: 1040px) {
	.homeBosyu .sectionInner {
		padding-top: 1rem;
	}
}

.homeBosyu .headBgeng {
	background-image: url("./images/home/headBosyuEng.png");
	background-size: 20rem auto;
	padding-bottom: 5.5rem;
}

.homeBosyu .headBgeng span img {
	height: 2rem;
}

.headNormal {
	font-size: 1.5rem;
	font-weight: 700;
	text-align: center;
	line-height: 1.5em;
}

.homeBosyu h2.headNormal {
	margin-top: 0;
}

@media screen and (min-width: 1040px) {
	.homeBosyu h2.headNormal {
		margin-top: 2rem;
	}
}

.homeBosyu .textDesc {
	margin: 2rem 0 2rem 0;
}

@media screen and (min-width: 1040px) {
	.homeBosyu .textDesc {
		margin: 2rem 0;
	}
}

.homeBosyu .link {
	margin-top: 3rem;
	margin-bottom: 2rem;
}

@media screen and (min-width: 900px) {
	.homeBosyu .link {
		margin-bottom: 0;
	}
}

.photoFrameBox .photoFrameInner.home2 {
	height: 280px;
	background-image: url("./images/home/homePhotoFrame2.jpg");
}

@media screen and (min-width: 900px) {
	.photoFrameBox .photoFrameInner.home2 {
		height: 430px;
	}
}

.homeContentLink {
	z-index: 101;
	position: relative;
	/*background: linear-gradient( #ffffff 0%, #FCE3D2 50px, #ffffff 180px);*/
}

@media screen and (min-width: 1040px) {
	/*.homeContentLink {
		background: none;
	}*/
}

.homeContentLink .sectionInner {
	padding-top: 1rem;
}

@media screen and (min-width: 1040px) {
	.homeContentLink .sectionInner {
		padding-top: 0;
	}
}

.homeContentLink h1 img {
	max-width: 16rem;
}

.linkMb {
	padding: 3rem 0 0 0;
}

.linkMb ul {
	text-align: center;
}

.linkMb ul li { 
	margin-bottom: 1.25rem;
}

.linkMb ul li img {
	max-width: 550px;
	width: 100%;
	padding-right: 5px;
	filter: drop-shadow(5px 5px 0 rgba(0, 0, 0, .1));
} 

.linkMb ul li a:hover img {
	transform: translateY(5px) translateX(5px);
	filter: drop-shadow(0 0 0 rgba(0, 0, 0, .1));
}

.homeContentLink .link3Col {
	display: none;
}

.link3Col {
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}

.link3Col .item {
	margin-bottom: 1.75rem;
	margin-left: auto;
	margin-right: auto;
}

.link3Col .item a {
	position: relative;
	padding-right: 2.5rem;

	display: -webkit-flex;
	display: flex;

	-webkit-flex-direction: row;
	flex-direction:         row;

	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;

	-webkit-justify-content: center;
	justify-content:         center;

	-webkit-align-items: center;
	align-items: center;
}

.link3Col .item a .icon {
	/*width: 20%;
	width: calc(100px);*/
}

.link3Col .item a .icon img {
	width: 70px;
	height: auto;
	filter: drop-shadow(2px 2px 0 rgba(0, 0, 0, .1));
}

.link3Col .item a .sup {
	/*position: relative;
	width: 80%;
	width: calc(100% - 100px);*/
	min-width: 230px;
	text-align: center;
	padding: 0;
}

.link3Col .item a .sup p {
	/*position: absolute;
	top: 50%;
	transform: translateY(-50%);*/
	display: inline-block;
	vertical-align: middle;
	font-size: 0.8rem;
	font-weight: 700;
	line-height: 1.5em;
}

.link3Col .item a::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	display: block;
	width: 2.25rem;
	height: 2.25rem;
	background-image: url("./images/common/arrowLinkBlue.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.link3Col .item a:hover::before {
	animation-name: arrowspin3;
	animation-duration: 0.5s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-direction: alternate;
	animation-fill-mode: forwards;
	animation-play-state: running;
}

.link3Col a:link{ color: var(--main-color); text-decoration: none; }
.link3Col a:visited{ color: var(--main-color); text-decoration: none; }
.link3Col a:active{ color: var(--main-color); text-decoration: none; }
.link3Col a:hover { color: var(--main-color); text-decoration: none; opacity: 0.8; }
.link3Col a:hover img { opacity: 0.8; }

.link3Col .item a .photo {
	display: none;	
}

@media screen and (min-width: 768px) {
	.link3Col .item a .icon img {
		width: 100px;
		height: auto;
		filter: drop-shadow(3px 3px 0 rgba(0, 0, 0, .1));
	}
	
	.link3Col .item a .sup {
		min-width: 18em;
		padding: 1rem 0;
	}
	
	.link3Col .item a .sup p {
		font-size: 1rem;
	}
}

@media screen and (min-width: 1040px) {
	.linkMb { 
		display: none;
	}
	
	.homeContentLink .link3Col {
		display: -webkit-flex;
		display: flex;
	}

	.link3Col {
		max-width: 100%;
		padding-top: 180px;
	}
	
	.link3Col .item {
		width: 30%;
		margin-bottom: 0;
	}

	.link3Col .item:nth-child(2) {
		margin-top: -70px;
	}

	.link3Col .item a {
		position: relative;
		padding-right: 0;
		display: inline-block;
		width: 100%;
		padding-bottom: 4.5rem;
	}
	
	.link3Col .item a .icon {
		text-align: center;
	}
	
	.link3Col .item a .icon img {
		width: 150px;
		filter: drop-shadow(3px 3px 0 rgba(0, 0, 0, .1));
	}
	
	.link3Col .item a .sup {
		/*position: relative;
		width: 80%;
		width: calc(100% - 100px);*/
		min-width: auto;
		text-align: center;
		padding: 1em 0;
		margin-bottom: 1rem;
	}
	
	.link3Col .item a .sup p {
		font-size: 0.9rem;
	}
	
	.link3Col .item a::before {
		top: auto;
		bottom: 0;
		right: auto;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		width: 2.25rem;
		height: 2.25rem;
	}
	
	.link3Col .item a:hover::before {
		animation-name: arrowspin3-2;
	}

	@keyframes arrowspin3-2 {
		0% {
			transform: translateY(-50%) translateX(-50%) rotateZ(0deg);
		}
	
		50% {
			transform: translateY(-50%) translateX(-10%) rotateZ(180deg);
		}
	
		100% {
			transform: translateY(-50%) translateX(-50%) rotateZ(360deg);
		}
	}
	
	.link3Col .item a .photo {
		display: block;
		width: 100%;
		width: calc(100% - 7px);
		height: 350px;
		padding-right: 7px;
		background-image: url("");
		background-position: center center;
		background-repeat: no-repeat;
		background-size: cover;
		border: 3px solid #ffffff;
		border-radius: 1.5rem;
		filter: drop-shadow(7px 7px 0 rgba(0, 0, 0, .1));
		transition: 0.5s;
	}

	.link3Col .item:nth-child(1) a .photo {	background-image: url("./images/home/homePhotoContent1.jpg"); }
	.link3Col .item:nth-child(2) a .photo {	background-image: url("./images/home/homePhotoContent2.jpg"); }
	.link3Col .item:nth-child(3) a .photo {	background-image: url("./images/home/homePhotoContent3.jpg"); }

	.link3Col .item a:hover .photo {
		transform: translateY(7px) translateX(7px);
		filter: drop-shadow(0 0 0 rgba(0, 0, 0, .1));
	}
}


.innerLogo {
	display: none;
	z-index: 100;
	position: relative;
	text-align: center;
	padding: 150px 0;
	background-image: url("./images/home/bgLogo.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 100%;
}

.innerLogo .logo img {
	width: 14rem;
}

@media screen and (min-width: 1040px) {
	.innerLogo.innerLogoHome {
		display: block;
		margin-top: -200px;
		/*transform: translateY(-200px);*/
		padding: 260px 0;
		background-size: 1400px auto;
	}
}


.homeTimesUnder {
	z-index: 101;
	position: relative;
}

@media screen and (min-width: 1040px) {
	.homeTimesUnder {
		margin-top: -50px;
	}
}

.homeTimesUnder .sectionInner {
	margin-top: 5rem;
	border-top: 1px dashed #999999;
}

@media screen and (min-width: 1040px) {
	.homeTimesUnder .sectionInner {
		margin-top: 0;
	}
}

.homeTimesUnder h1 img {
	display: inline-block;
	width: 12rem;
	height: auto;
	padding-top: 5rem;
	margin-bottom: 4rem;
}

@media screen and (min-width: 1040px) {
	.homeTimesUnder {
		margin-top: -100px;
	}

	.homeTimesUnder .sectionInner {
		border-top: none;
	}

	.homeTimesUnder h1 img {
		padding-top: 0;
	}
}

.timesList2 {
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	border-bottom: 7px solid var(--main-color-blue);
	margin-bottom: 2.5rem;
}

.timesList2 li {
	margin-bottom: 2.5rem;
	transition: 0.5s;
}

.timesList2 li a {
	position: relative;
	display: block;
}

.timesList2 li:hover {
	background-color: rgba(150, 150, 150, 0.1);
	transition: 0.5s;
}

.timesList2 li a:hover {
	opacity: 1;
}

.timesList2 li a::before {
	content: "";
	position: absolute;
	top: 0;
	right: 7px;
	display: block;
	width: 1.5rem;
	height: 1.5rem;
	background-image: url("./images/common/arrowLinkBlue.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.timesList2 li a:hover::before {
	animation-name: arrowspin;
	animation-duration: 0.5s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-direction: alternate;
	animation-fill-mode: forwards;
	animation-play-state: running;
}

.timesList2 li a .cate {
	position: relative;
	display: block;
	width: 9em;
	min-height: 2.5em;
	font-size: 0.7rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	background-color: var(--main-color-blue);
}

.timesList2 li a .cate > span {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 100%;
}

.timesList2 li a .cate .num {
	font-size: 1.15rem;
	margin-right: 3px;
}

ul.timesList2 a:link .cate { color: #ffffff; text-decoration: none; }
ul.timesList2 a:visited .cate{ color: #ffffff; text-decoration: none; }
ul.timesList2 a:active .cate{ color: #ffffff; text-decoration: none; }
ul.timesList2 a:hover .cate { color: #ffffff; text-decoration: none;}

.timesList2 li a .date {
	position: absolute;
	top: 1em;
	left: 10em;
	display: inline-block;
	vertical-align: bottom;
	font-size: 0.7rem;
	line-height: 1;
}

.timesList2 li a .inner {
	margin-top: 0.5rem;

	display: -webkit-flex;
	display: flex;

	-webkit-flex-direction: row;
	flex-direction:         row;

	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;

	-webkit-justify-content: space-between;
	justify-content:         space-between;
}

.timesList2 li a .inner .left {
	width: 60%;	
}

.timesList2 li.noThumb a .inner .left{
	width: 100%;
}

.timesList2 li a .inner .right {
	width: 40%;
}

.timesList2 li.noThumb a .inner .right {
	display: none;
}

.timesList2 li a .title {
	display: block;
	font-size: 1rem;
	padding: 0.5em 0;
	border-bottom: 1px dotted #999999;
}

.timesList2 li a .desc {
	display: block;
	font-size: 0.9rem;
	padding: 0.5em 0 0 0;
	min-height: 3em;

	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.timesList2 li a .photo {
	width: auto;
	height: 100%;
	margin-left: 0.5rem;
	background-image: url("");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

@media screen and (min-width: 500px) {
	.timesList2 li a .inner .left {
		width: 75%;	
	}
	
	.timesList2 li a .inner .right {
		width: 25%;
	}
}

@media screen and (min-width: 1040px) {
	.timesList2 {
		max-width: 100%;
		padding-bottom: 1rem;
		display: -webkit-flex;
		display: flex;
	
		-webkit-flex-direction: row;
		flex-direction:         row;
	
		-webkit-flex-wrap: wrap;
		flex-wrap:         wrap;
	
		-webkit-justify-content: space-between;
		justify-content:         space-between;
	}
	
	.timesList2 li {
		width: 50%;
		padding-top: 1rem;
		padding-bottom: 1rem;
		margin-bottom: 0;
		border-bottom: 1px solid #000000;
	}

	.timesList2 li a {
		width: 97%;
	}

	.timesList2 li:nth-child(odd) a { margin-right: 3%; }
	.timesList2 li:nth-child(even) a { margin-left: 3%; }

	
	.timesList2 li a .date {
		left: 8em;
		font-size: 0.9rem;
	}
	
	.timesList2 li a .inner .left {
		width: 70%;	
	}
	
	.timesList2 li a .inner .right {
		width: 30%;
	}
	

}


ul.timesList {
	max-width: 530px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	letter-spacing: -.4em;
	padding-left: 7px;
	box-sizing: content-box;
}

ul.timesList li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 25%;
	height: 4.5em;
	height: calc(4.5em + 7px);
	letter-spacing: normal;
	font-size: 0.7rem;
	font-weight: 700;
	line-height: 1.25;
	margin-bottom: 15px;
	box-sizing: border-box;
}

ul.timesList li a {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 92%;
	width: calc(100% - 14px);
	height: 4.5em;
	border: 1px solid var(--main-color-blue);
	border-width: 1px 1px 1px 8px;
	box-shadow: 7px 7px 0 0 rgba(70,83,162,0.3);
	transition: 0.2s;
}


ul.timesList li:nth-child(4n) { padding-right: 0; }

ul.timesList li a:hover {
	/*margin-top: 7px;
	margin-left: 7px;*/
	transform: translateY(7px) translateX(7px);
	box-shadow: 0 0 0 0 rgba(70,83,162,0.3);
}

ul.timesList li a > span {
	position: absolute;
	display: block;
	width: 100%;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

ul.timesList li a > span .num {
	font-size: 1.15rem;
	margin-right: 3px;
}

ul.timesList a:link{ color: var(--main-color-blue); text-decoration: none; }
ul.timesList a:visited{ color: var(--main-color-blue); text-decoration: none; }
ul.timesList a:active{ color: var(--main-color-blue); text-decoration: none; }
ul.timesList a:hover { color: var(--main-color-blue); text-decoration: none; }

ul.timesList .exc a:link{ color: #ffffff; text-decoration: none; }
ul.timesList .exc a:visited{ color: #ffffff; text-decoration: none; }
ul.timesList .exc a:active{ color: #ffffff; text-decoration: none; }
ul.timesList .exc a:hover { color: #ffffff; text-decoration: none; }

@media screen and (min-width: 600px) {
	ul.timesList li {
		font-size: 1rem;
	}

	ul.timesList li a > span .num {
		font-size: 1.5rem;
	}
}

@media screen and (min-width: 1040px) {
	ul.timesList {
		max-width: 100%;
	}
	
	ul.timesList li {
		width: 12.5%;
		font-size: 1rem;
	}

	ul.timesList li a > span .num {
		font-size: 1.5rem;
	}
}




/*概要*/
.sec2_1 {

}

.sec2_1 .sectionInner {

}

.sec2_1 .headBgeng {
	background-image: url("./images/info/headInfoIntroEng.svg");
	background-size: 19rem auto;
	padding-top: 1rem;
	padding-bottom: 6rem;
}

.sec2_1 .headBgeng span img {
	height: 2rem;
}

.headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.headNormalImgL {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec2_1 .headNormalImg img {
	max-height: 4.75rem;	
}

.sec2_1 .textDesc {
	margin: 2rem 0 2rem 0;
}

.sec2_1_2 {
	margin-top: 3rem;
}

.sec2_1_2 .photo {
	max-width: 280px;
	margin-bottom: 1.5rem;	
}

.sec2_1_2 .name {
	max-width: 120px;
	margin-top: 0.75rem;
}


.sec2_2 {

}

.sec2_2 .headBgeng {
	background-image: url("./images/info/headInfoIntroEng.svg");
	background-size: 19rem auto;
	padding-top: 1rem;
	padding-bottom: 6rem;
}

.sec2_2 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec2_2 .headNormalImg img {
	max-height: 1.75rem;	
}

.sec2_2 table.basicTable tr th { width: 7em; }
.sec2_2 table.basicTable tr td {
	width: calc(100% - 7em);
	padding: 0.75em 1em 0.75em 3em;
}


.photoFrameBox .photoFrameInner.info1 {
	height: 280px;
	background-image: url("./images/info/infoPhotoFrame1.jpg");
}

@media screen and (min-width: 900px) {
	.photoFrameBox .photoFrameInner.info1 {
		height: 430px;
	}
}

@media screen and (min-width: 1040px) {
	.innerLogo.sec_info_logo {
		display: block;
		/*margin-top: -200px;*/
		padding: 260px 0;
		background-size: 1400px auto;
	}
}


.sec2_3 {
	margin-bottom: 2rem;
}

.sec2_3 .sectionInner {

}

.sec2_3 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec2_3 .headNormalImg img {
	max-height: 1.75rem;	
}

.sec2_3 .basicTable {
	margin-top: 5rem;
}

.sec2_3 .basicTable tr th { width: 11em; }
.sec2_3 .basicTable tr td { width: calc(100% - 11rem); }


.photoFrameBox2 .photoFrameInner.info2 { background-image: url("./images/info/infoPhotoFrame2.jpg"); }


.sec2_frame2 {
	z-index: 101;
	position: relative;
}

@media screen and (min-width: 1040px) {
	.sec2_frame2 {
		margin-top: -200px;
	}
}


.sec2_4 {

}

.sec2_4 .sectionInner {

}

.sec2_4 .headBgeng span img {
	height: 2rem;
}

.sec2_4 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec2_4 .headNormalImg img {
	max-height: 1.75rem;	
}

.sec2_4 .photoandtext3col {
	margin-top: 5rem;
}

.photoandtext3col .item,
.photoandtext2col .item {
	position: relative;
	margin-bottom: 2.5em;
}

.sticker {
	z-index: 105;
	position: absolute;
	top: -0.75rem;
	left: -0.75rem;
	width: 5rem;
	height: 5rem;
	border: 1px solid var(--main-color-blue);
	border-radius: 2.5rem;
	background-color: #ffffff;
	text-align: center;
}

.sticker span {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	display: inline-block;
	width: 100%;
	font-weight: 700;
	color: var(--main-color-blue);
	line-height: 1;
	letter-spacing: 0.2em;
}

.photoandtext3col .item .photo,
.photoandtext2col .item .photo {
	display: block;
	width: 100%;
	width: calc(100% - 9px);
	border: 2px solid #ffffff;
	border-radius: 1.5rem;
	filter: drop-shadow(7px 7px 0 rgba(0, 0, 0, .1));
	margin-bottom: 1.5rem
}

.photoandtext3col .item .ttl,
.photoandtext2col .item .ttl {
	font-size: 1.1rem;
	margin-bottom: 1rem;
}

.photoandtext3col .item .sup,
.photoandtext2col .item .sup {
	font-size: 0.8rem;
}

@media screen and (min-width: 768px) {
	.photoandtext3col .item,
	.photoandtext2col .item {
		width: 48.5%;
	}

	.photoandtext3col .item .ttl,
	.photoandtext2col .item .ttl {
		margin-right: 0.5rem;
	}
	
	.photoandtext3col .item .sup,
	.photoandtext2col .item .sup {
		margin-right: 0.5rem;
	}
}

@media screen and (min-width: 1040px) {
	.photoandtext3col .item {
		width: 32%;
	}

	.photoandtext2col .item {
		width: 46.5%;
	}
}


.photoFrameBox .photoFrameInner.info3 {
	height: 280px;
	background-image: url("./images/info/infoPhotoFrame3.jpg");
}

@media screen and (min-width: 900px) {
	.photoFrameBox .photoFrameInner.info3 {
		height: 430px;
	}
}


.sec2_5 {

}

.sec2_5 .sectionInner {

}

.sec2_5 .headBgeng {
	background-image: url("./images/info/headInfoUniformEng.svg");
	background-size: 19rem auto;
	padding-top: 1rem;
	padding-bottom: 6rem;
}

.sec2_5 .headBgeng span img {
	height: 2rem;
}

.headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec2_5 .headNormalImg img {
	max-height: 4.75rem;	
}

.sec2_5 .textDesc {
	margin: 2rem 0 2rem 0;
}


.headRcBlue {
	text-align: center;
}

.headRcBlue span {
	display: inline-block;
	font-size: 1.1rem;
	font-weight: 700;
	color: #ffffff;
	text-align: center;
	line-height: 1.5em;
	letter-spacing: 0.2em;
	padding: 0.25em 1.5em;
	border-radius: 1em;
	background-color: var(--main-color-lightblue);
}

.infoExam {

}

.infoExam .slideItem .flexContainer {
	justify-content: flex-start;
}

.infoExam .slideItem .flexContainer .item {
	width: 50%;
	padding: 1em;
}

.infoExam .slideItem .flexContainer .item:nth-child(4n+1),
.infoExam .slideItem .flexContainer .item:nth-child(4n)  {
	background-color: #EFEFEF;
}

.infoExam .slideItem .flexContainer .item dl {
	font-size: 0.9rem;
}

.infoExam .slideItem .flexContainer .item dt {

}

.infoExam .slideItem .flexContainer .item dd {
	letter-spacing: 0.2em;
	font-weight: 700;
	color: var(--main-color-lightblue);
}

@media screen and (min-width: 768px) {
	.infoExam .slideItem .flexContainer .item dt {
		display: inline-block;
		vertical-align: middle;
		width: 80%;
		width: calc(100% - 3em);
	}
	
	.infoExam .slideItem .flexContainer .item dd {
		display: inline-block;
		vertical-align: middle;
		width: 20%;
		width: 3em;
		text-align: right;
	}
}

@media screen and (min-width: 900px) {
	.infoExam .slideItem .flexContainer .item {
		width: 33.33333%;
		width: calc(100% / 3);
	}

	.infoExam .slideItem .flexContainer .item:nth-child(4n+1),
	.infoExam .slideItem .flexContainer .item:nth-child(4n)  {
		background-color: #ffffff;
	}

	.infoExam .slideItem .flexContainer .item:nth-child(odd) {
		background-color: #EFEFEF;
	}
}


.sec2_6 {

}

.sec2_6 .sectionInner {

}

.sec2_6 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec2_6 .headNormalImg img {
	max-height: 1.75rem;	
}

/*slick - info*/
.slick-slide,
.slick-slide a {
	outline: none;
	border: none;
}

.slick-prev, .slick-next {
	z-index: 201;
    width: 16px;
    height: 16px;
	border-radius: 16px;
    cursor: pointer;
	background-image: url(./images/common/arrowSlideNext.svg);
	background-size: 16px;
	background-repeat: no-repeat;
	background-position: center center;
	/*background-color: var(--main-color);*/
	opacity: .75;
}

.slick-prev {
	background-image: url(./images/common/arrowSlidePrev.svg);
}

.slick-prev {
	top: auto;
	bottom: -2.5rem;
    left: 0.5rem;
}

.slick-next {
	top: auto;
	bottom: -2.5rem;
	right: 0.5rem;
}

.slick-prev:hover,
.slick-prev:focus {
    color: transparent;
    outline: none;
	background-image: url(./images/common/arrowSlidePrev.svg);
	background-size: 16px;
	background-repeat: no-repeat;
	background-position: center center;
	/*background-color: var(--main-color);*/
	opacity: 0.5;
}

.slick-next:hover,
.slick-next:focus
{
	background-image: url(./images/common/arrowSlideNext.svg);
	background-size: 16px;
	background-repeat: no-repeat;
	background-position: center center;
	/*background-color: var(--main-color);*/
	opacity: 0.5;
}

.slick-prev:before,
.slick-next:before
{
    opacity: 0!important;
}

.slick-dots {
	z-index: 200;
	bottom: -2.5rem;
}

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

}

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

}


.bgImgInfo1 {
	position: relative;
	height: auto;
	background-image: url("./images/info/bg1.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 1600px auto;
}

@media screen and (min-width: 1040px) {
	.bgImgInfo1 {
		background-position: center top;
		background-size: 1600px auto;
	}
}

.bgImgInfo2 {
	position: relative;
	height: auto;
	background-image: url("./images/info/bg2.jpg");
	background-position: center top 250px;
	background-repeat: no-repeat;
	background-size: 800px auto;
}

@media screen and (min-width: 768px) {
	.bgImgInfo2 {
		background-position: center top -50px;
		background-size: 1000px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgInfo2 {
		background-position: center top -50px;
		background-size: 1500px auto;
	}
}

.bgImgInfo3 {
	position: relative;
	height: auto;
	background-image: url("./images/info/bg3.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 800px auto;
}

@media screen and (min-width: 768px) {
	.bgImgInfo3 {
		background-position: center top;
		background-size: 1200px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgInfo3 {
		background-position: center top -100px;
		background-size: 1600px auto;
	}
}

.bgImgInfo4 {
	position: relative;
	height: auto;
	background-image: url("./images/info/bg4.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 800px auto;
}

@media screen and (min-width: 768px) {
	.bgImgInfo4 {
		background-position: center top;
		background-size: 900px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgInfo4 {
		background-position: center top;
		background-size: 1600px auto;
	}
}



/*教育*/
.sec3_1 {

}

.sec3_1 .sectionInner {

}

.sec3_1 .headNormalImgL {
	margin: 1.5rem 0 4rem 0;
}

.sec3_1 .headNormalImgL img {
	max-height: 2.5rem;	
}

.sec3_1 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec3_1 .headNormalImg img {
	max-height: 1.75rem;	
}

.sec3_1_2 {
	margin-top: 6rem;
	margin-bottom: 6rem;
}

.sec3_1_3 {
	margin-bottom: 6rem;
}

.sec3_1_4 img {
	max-width: 600px;
}

.sec3_1 table.delimiterTable {
	margin-top: 6rem;
}

.sec3_1 table.delimiterTable tr th,
.sec3_1 table.delimiterTable tr td {
	font-size: 0.85rem;
	padding: 0.25em 1em;
}

.sec3_1 table.delimiterTable tr th { width: 9em; }
.sec3_1 table.delimiterTable tr td { width: calc(100% - 9em); }


.sec3_2 {
	z-index: 101;
	position: relative;
}

.sec3_2 .sectionInner {

}

.sec3_2 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec3_2 .headNormalImg img {
	max-height: 1.75rem;	
}

.headNormalImgS {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.headNormalImgS img {
	max-height: 5.5rem;	
}

@media screen and (min-width: 1040px) {
	.headNormalImgS img {
		max-height: 3.25rem;	
	}
}

.photosidetext2col {

}

.photosidetext2col.rev {
	flex-direction: row-reverse;
}

.photosidetext2col > div {
	width: 100%;
}

.photosidetext2col > div:first-child {
	margin-bottom: 2rem;
}

.photoShadow {
	display: block;
	width: 100%;
	width: calc(100% - 9px);
	border: 2px solid #ffffff;
	border-radius: 1.5rem;
	filter: drop-shadow(7px 7px 0 rgba(0, 0, 0, .1));
	margin-bottom: 9px;
}

.photosidetext2col .text .headMain {
	max-height: 1.75rem;
	margin-bottom: 1.5rem;
}

.photosidetext2col .text .headSub {
	max-height: 1.5rem;
	margin-bottom: 1.5rem;
}

.photosidetext2col .text .headSub2lines {
	max-height: 4rem;
	margin-bottom: 1.5rem;
}

.photosidetext2col .text .item {
	margin-bottom: 1rem;
}

.headPoint {
	position: relative;
}

.headPoint span {
	padding-left: 30px;
}

.headPoint span::before {
	content: "";
	position: absolute;
	top: -10px;
	left: 0;
	display: block;
	width: 25px;
	height: 32px;
	background-image: url("./images/feat/iconPoint1.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.photosidetext2col .text .item.point2 .headPoint span::before { background-image: url("./images/feat/iconPoint2.svg"); }
.photosidetext2col .text .item.point3 .headPoint span::before { background-image: url("./images/feat/iconPoint3.svg"); }

.photosidetext2col .text .item p {
	font-size: 0.85rem;
	margin-left: 15px;
}

@media screen and (min-width: 768px) {
	.photosidetext2col .text {
		width: 33%;
	}

	.photosidetext2col .photo {
		width: 67%;
		padding-left: 3rem;
	}

	.photosidetext2col.rev .photo {
		padding-left: 0;
		padding-right: 3rem;
	}
}


@media screen and (min-width: 1040px) {
	.innerLogo.sec_feat_logo {
		display: block;
		margin-top: -150px;
		padding: 260px 0;
		background-size: 1400px auto;
	}
}

.sec3_frame1 {
	z-index: 101;
	position: relative;
}

@media screen and (min-width: 1040px) {
	.sec3_frame1 {
		margin-top: -200px;
	}
}

.photoFrameBox2 .photoFrameInner.feat1 {
	margin-top: 6rem;
	height: 250px;
	background-image: url("./images/feat/featPhotoFrame1.jpg");
}

@media screen and (min-width: 1040px) {
	.photoFrameBox2 .photoFrameInner.feat1 {
		margin-top: 0;
		height: 350px;
	}
}


.sec3_3 {
	z-index: 101;
	position: relative;
}

.sec3_3 .sectionInner {

}

.sec3_3 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec3_3 .headNormalImg img {
	max-height: 1.75rem;	
}

.sec3_3 .headNormalImgS {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec3_3 .headNormalImgS img {
	max-height: 7.75rem;	
}

@media screen and (min-width: 1040px) {
	.sec3_3 .headNormalImgS img {
		max-height: 5.5rem;	
	}
}


.sec3_3 .photoandtext2col {
	margin-top: 1rem;
}


.sec3_4 {
	z-index: 101;
	position: relative;
}

.sec3_4 .sectionInner {

}

.sec3_4 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec3_4 .headNormalImg img {
	max-height: 1.75rem;	
}

.sec3_4 .headNormalImgS {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec3_4 .headNormalImgS img {
	max-height: 3.25rem;	
}

.sec3_4 .headNormalImgS.headSecond {
	margin-bottom: 2.5rem;
}

.sec3_4 .headNormalImgS.headSecond img {
	max-height: 3.5rem;
}

.textBgBlue {
	display: inline-block;
	font-size: 110%;
	font-weight: 700;
	color: #ffffff;
	background-color: var(--main-color-blue);
	padding: 0.25em 1em;
	border-radius: 1em;
	margin-right: 1em;
}

.sec3_4 .textBgBlue {
	margin-bottom: 0.5rem;
}


.sec3_frame2 {
	z-index: 101;
	position: relative;
	margin-top: 3rem;
}

@media screen and (min-width: 1040px) {
	.sec3_frame2 {

	}
}

.photoFrameBox .photoFrameInner.feat2 {
	height: 280px;
	background-image: url("./images/feat/featPhotoFrame2.jpg");
}

@media screen and (min-width: 900px) {
	.photoFrameBox .photoFrameInner.feat2 {
		height: 430px;
	}
}


.sec3_5 {
	z-index: 101;
	position: relative;
}

.sec3_5 .sectionInner {

}

.sec3_5 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec3_5 .headNormalImg img {
	max-height: 3.25rem;	
}


.bgImgFeat1 {
	position: relative;
	height: auto;
	background-image: url("./images/feat/bg1_1.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 700px auto;
}

@media screen and (min-width: 768px) {
	.bgImgFeat1 {
		background-position: center center;
		background-size: 1200px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgFeat1 {
		background-position: center top -80px;
		background-size: 1600px auto;
	}
}

.bgImgFeat2 {
	position: relative;
	height: auto;
	background-image: url("./images/feat/bg1_2.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 700px auto;
}

@media screen and (min-width: 768px) {
	.bgImgFeat2 {
		background-position: center center;
		background-size: 1200px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgFeat2 {
		background-position: center top;
		background-size: 1300px auto;
	}
}

.bgImgFeat3 {
	position: relative;
	height: auto;
	background-image: url("./images/feat/bg2.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 700px auto;
}

@media screen and (min-width: 768px) {
	.bgImgFeat3 {
		background-position: center top;
		background-size: 900px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgFeat3 {
		background-position: center top -80px;
		background-size: 1300px auto;
	}
}

.bgImgFeat4 {
	position: relative;
	height: auto;
	background-image: url("./images/feat/bg3.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 700px auto;
}

@media screen and (min-width: 768px) {
	.bgImgFeat4 {
		background-position: center top;
		background-size: 1000px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgFeat4 {
		background-position: center top 50px;
		background-size: 1300px auto;
	}
}

.bgImgFeat5 {
	position: relative;
	height: auto;
	background-image: url("./images/feat/bg4.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 700px auto;
}

@media screen and (min-width: 768px) {
	.bgImgFeat5 {
		background-position: center top -50px;
		background-size: 1100px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgFeat5 {
		background-position: center top 50px;
		background-size: 1500px auto;
	}
}



/*生活*/
.sec4_1 {

}

.sec4_1 .sectionInner {

}

.sec4_1 .headNormalImgL {
	margin: 1.5rem 0 4rem 0;
}

.sec4_1 .headNormalImgL img {
	max-height: 2.5rem;	
}


.sec4_frame1 {
	z-index: 101;
	position: relative;
}

.photoFrameBox2 .photoFrameInner.event1 {
	margin-top: 6rem;
	height: 250px;
	background-image: url("./images/event/eventPhotoFrame1.jpg");
}

@media screen and (min-width: 1040px) {
	.photoFrameBox2 .photoFrameInner.event1 {
		margin-top: 6;
		height: 500px;
	}
}


.sec4_2 {
	position: relative;
	height: auto;
	background-image: url("./images/event/bgDay.png"), url("./images/event/bgDayLeft.png");
	background-position: center top, left top;
	background-repeat: no-repeat, repeat-y;
	background-size: 900px auto, 42% auto;
}

@media screen and (min-width: 768px) {
	.sec4_2 {
		background-image: url("./images/event/bgDay.png"), url("./images/event/bgDayLeft.png");
		background-position: center top, left top;
		background-repeat: no-repeat, repeat-y;
		background-size: 1200px auto, 42% auto;
	}
}

@media screen and (min-width: 1040px) {
	.sec4_2 {
		background-image: url("./images/event/bgDay.png"), url("./images/event/bgDayLeft.png");
		background-position: center top, left top;
		background-repeat: no-repeat, repeat-y;
		background-size: 1500px auto, 42% auto;
	}
}

.sec4_2 .sectionInner {

}

.sec4_2 .headNormalImg {
	margin: 1.5rem 0 4rem 0;
}

.sec4_2 .headNormalImg img {
	max-height: 8.5rem;	
}


.dayTimeBox {
	font-size: 0.9rem;
	margin: 0 1.5rem;
}

.dayTimeBox .flexContainer.clock {
	align-items: center;
}

.dayTimeBox .clock .left {
	width: 100px;
}

.dayTimeBox .clock.noClock{
	margin-bottom: 1rem;

	background-image: url("./images/event/verLine.png");
	background-repeat: repeat-y;
	background-position: left 35px top;
}

.dayTimeBox .clock .left img {
	width: 70px;	
}

.dayTimeBox .clock .right {
	width: calc(100% - 100px);
}

.dayTimeBox .clock .right h2 {
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	margin-bottom: 0.75rem;
}

.dayTimeBox .flexContainer.photo {
	/*margin-bottom: 2.5rem;*/
}

.dayTimeBox .flexContainer.photo .item {
	width: 49.5%;
}

.dayTimeBox .verLine::after {
	content: "";
	width: 2px;
	height: 3rem;
	margin: 1rem 0 1rem 35px;

	background-image: url("./images/event/verLine.png");
	background-repeat: repeat-y;
	background-position: center top;
}

.dayTimeBox .clock.noClock.verLine::after {
	height: 0;
	background-image: none;
}

@media screen and (min-width: 768px) {
	.dayTimeBox {
		position: relative;
		max-width: 690px;
		margin-left: auto;
		margin-right: auto;
	}

	.dayTimeBox .flexContainer.clock {
		width: 53%;
		align-items: flex-start;
	}
	
	.dayTimeBox .clock.noClock{
		margin-bottom: 1rem;
	
		background-image: url("./images/event/verLine.png");
		background-repeat: repeat-y;
		background-position: left 35px top;
	}
	
	.dayTimeBox .flexContainer.photo {
		position: absolute;
		top: 0;
		right: 0;
		width: 43%;
		/*margin-bottom: 2.5rem;*/
		justify-content: center;
	}

	.dayTimeBox .flexContainer.photo.grp1 { top: 0px; }
	.dayTimeBox .flexContainer.photo.grp2 { top: 370px; }
	.dayTimeBox .flexContainer.photo.grp3 { top: 740px; }
	.dayTimeBox .flexContainer.photo.grp4 { top: 1120px; }
	.dayTimeBox .flexContainer.photo.grp5 { top: 1490px; }
	.dayTimeBox .flexContainer.photo.grp6 { top: 1880px; }

	.dayTimeBox .flexContainer.photo .item {
		width: 180px;
		margin-bottom: 1rem;
	}

	.dayTimeBox .flexContainer.photo.grp6 .item:nth-child(2) { display: none; }
	
	.dayTimeBox .clock.noClock.verLine::after {
		height: 30px;
		background-image: none;
	}

	.dayTimeBox .flexContainer.photo.verLine::after {
		width: 0;
		height: 0;
		margin: 0;
		background-image: none;
	}

	.dayTimeBox .clock.lastClock.verLine::after {
		width: 0;
		height: 0;
		margin: 0;
		background-image: none;
	}

}

@media screen and (min-width: 900px) {
	.dayTimeBox {
		max-width: 900px;
	}

	.dayTimeBox .flexContainer.clock {
		width: 36%;
		align-items: flex-start;
	}

	.dayTimeBox .flexContainer.photo {
		position: absolute;
		top: 0;
		right: 0;
		width: 62%;
		/*margin-bottom: 2.5rem;*/
		justify-content: center;
	}

	.dayTimeBox .flexContainer.photo.grp1 { top: 30px; }
	.dayTimeBox .flexContainer.photo.grp2 { top: 400px; }
	.dayTimeBox .flexContainer.photo.grp3 { top: 750px; }
	.dayTimeBox .flexContainer.photo.grp4 { top: 1150px; }
	.dayTimeBox .flexContainer.photo.grp5 { top: 1530px; }
	.dayTimeBox .flexContainer.photo.grp6 { top: 1880px; }

	.dayTimeBox .flexContainer.photo .item {
		/*width: 260px;*/
		margin-bottom: 0;
	}

	.dayTimeBox .flexContainer.photo .item:first-child {
		margin-right: 0.75rem;
	}

	.dayTimeBox .flexContainer.photo.grp6 .item:nth-child(2) { display: inline; }

}

@media screen and (min-width: 1040px) {
	.dayTimeBox .flexContainer.photo .item {
		width: 260px;
	}
}


.sec4_3 {

}

.sec4_3 .sectionInner {

}

.sec4_3 .headNormalImg {
	margin: 1.5rem 0 4rem 0;
}

.sec4_3 .headNormalImg img {
	max-height: 8.5rem;	
}


.yearBox {
	font-size: 0.9rem;
	margin: 0 1.5rem;
}

.yearBox .flexContainer {
	position: relative;
	margin-bottom: 2.5rem;
}

.yearBox .flexContainer .month {
	width: 100%;
}

.yearBox .flexContainer .month .ttl h2 {
	display: inline-block;
	padding: 1.25rem 3rem;
	background-color: #F19DB5;
	border: 2px solid #ffffff;
	border-radius: 1rem;
	filter: drop-shadow(7px 7px 0 rgba(0, 0, 0, .1));
	margin-bottom: 7px;
}

.yearBox .flexContainer.april .month .ttl h2 { background-color: #F19DB5; }
.yearBox .flexContainer.may .month .ttl h2 { background-color: #00B9EF; }
.yearBox .flexContainer.jun .month .ttl h2 { background-color: #8ABA2A; }
.yearBox .flexContainer.july .month .ttl h2 { background-color: #0E9B94; }
.yearBox .flexContainer.august .month .ttl h2 { background-color: #F9BA34; }
.yearBox .flexContainer.sep .month .ttl h2 { background-color: #F1947C; }
.yearBox .flexContainer.oct .month .ttl h2 { background-color: #3296D4; }
.yearBox .flexContainer.nov .month .ttl h2 { background-color: #A25494; }
.yearBox .flexContainer.dec .month .ttl h2 { background-color: #AA9381; }
.yearBox .flexContainer.january .month .ttl h2 { background-color: #E37439; }
.yearBox .flexContainer.february .month .ttl h2 { background-color: #76C0BB; }
.yearBox .flexContainer.march .month .ttl h2 { background-color: #EAD100; }

.yearBox .flexContainer .month .ttl h2 img {
	max-height: 2rem;
}

.yearBox .flexContainer .month .list {
	margin-top: 0.5rem;
	margin-bottom: 1rem;
}

.yearBox .flexContainer .month .list ul {
	margin-left: 1em;
}

.yearBox .flexContainer .month .list ul li {
	display: inline-block;
	line-height: 1.75em;
	margin-right: 1em;	
}

.yearBox .flexContainer .month .list ul li::before {
	content: "●";
	margin-right: 0.2em;

}

.yearBox .flexContainer .photo {
	width: 100%;
}

.yearBox .flexContainer .photo {
	display: -webkit-flex;
	display: flex;

	-webkit-flex-direction: row;
	flex-direction:         row;

	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;

	-webkit-justify-content: space-between;
	justify-content:         space-between;
	/*flex-start space-around space-between*/
}

.yearBox .flexContainer .photo > div {
	width: 49.5%;
}

@media screen and (min-width: 768px) {
	.yearBox {
		position: relative;
		max-width: 690px;
		margin-left: auto;
		margin-right: auto;
	}

	.yearBox .flexContainer .month .ttl h2 {
		min-width: 300px;
	}
}

@media screen and (min-width: 900px) {
	.yearBox {
		max-width: 900px;
	}

	.yearBox .flexContainer {
		display: block;
		min-height: 220px;
		margin-bottom: 2.5rem;
	}

	.yearBox .flexContainer .month {
		width: 32.5%;
	}

	.yearBox .flexContainer .month .ttl h2 {
		min-width: 100%;
		min-width: calc( 100% - 7px);
	}

	.yearBox .flexContainer .month .list {
		margin-bottom: 0;
	}
	
	.yearBox .flexContainer .month .list ul li {
		display: block;
		line-height: 1.75em;
		margin-right: 0;	
	}

	.yearBox .flexContainer .photo {
		display: block;
	}

	.yearBox .flexContainer .photo > div {
		width: 32.5%;
	}

	.yearBox .flexContainer .photo > div.photo1,
	.yearBox .flexContainer .photo > div.photo2 {
		position: absolute;
		top: 0;
		left: 0;
	}

	.yearBox .flexContainer.april .photo > div.photo1 {	left: 33.33333%;}
	.yearBox .flexContainer.april .photo > div.photo2 {	left: 66.66666%;}

	.yearBox .flexContainer.may .month { margin-left: 33.33333%; }
	.yearBox .flexContainer.may .photo > div.photo1 { left: 0%;}
	.yearBox .flexContainer.may .photo > div.photo2 { left: 66.66666%;}

	.yearBox .flexContainer.jun .month { margin-left: 66.66666%; }
	.yearBox .flexContainer.jun .photo > div.photo1 { left: 0%;}
	.yearBox .flexContainer.jun .photo > div.photo2 { left: 33.333333%;}

	.yearBox .flexContainer.july .month { margin-left: 33.33333%; }
	.yearBox .flexContainer.july .photo > div.photo1 { left: 0%;}
	.yearBox .flexContainer.july .photo > div.photo2 { left: 66.66666%;}

	.yearBox .flexContainer.august .photo > div.photo1 { left: 33.33333%;}
	.yearBox .flexContainer.august .photo > div.photo2 { left: 66.66666%;}

	.yearBox .flexContainer.sep .month { margin-left: 33.33333%; }
	.yearBox .flexContainer.sep .photo > div.photo1 { left: 0%;}
	.yearBox .flexContainer.sep .photo > div.photo2 { left: 66.66666%;}

	.yearBox .flexContainer.oct .month { margin-left: 66.66666%; }
	.yearBox .flexContainer.oct .photo > div.photo1 { left: 0%;}
	.yearBox .flexContainer.oct .photo > div.photo2 { left: 33.333333%;}

	.yearBox .flexContainer.nov .month { margin-left: 33.33333%; }
	.yearBox .flexContainer.nov .photo > div.photo1 { left: 0%;}
	.yearBox .flexContainer.nov .photo > div.photo2 { left: 66.66666%;}

	.yearBox .flexContainer.dec .photo > div.photo1 { left: 33.33333%;}
	.yearBox .flexContainer.dec .photo > div.photo2 { left: 66.66666%;}

	.yearBox .flexContainer.january .month { margin-left: 33.33333%; }
	.yearBox .flexContainer.january .photo > div.photo1 { left: 0%;}
	.yearBox .flexContainer.january .photo > div.photo2 { left: 66.66666%;}

	.yearBox .flexContainer.february .month { margin-left: 66.66666%; }
	.yearBox .flexContainer.february .photo > div.photo1 { left: 0%;}
	.yearBox .flexContainer.february .photo > div.photo2 { left: 33.333333%;}

	.yearBox .flexContainer.march .month { margin-left: 33.33333%; }
	.yearBox .flexContainer.march .photo > div.photo1 {	left: 0%;}
	.yearBox .flexContainer.march .photo > div.photo2 {	left: 66.66666%;}
}


@media screen and (min-width: 1040px) {
	.innerLogo.sec_event_logo {
		display: block;
		padding: 260px 0;
		background-size: 1400px auto;
	}
}

.sec4_frame2 {
	z-index: 101;
	position: relative;
}

@media screen and (min-width: 1040px) {
	.sec4_frame2 {
		margin-top: -200px;
	}
}

.photoFrameBox2 .photoFrameInner.event2 {
	margin-top: 6rem;
	height: 250px;
	background-image: url("./images/event/eventPhotoFrame2.jpg");
}

@media screen and (min-width: 1040px) {
	.photoFrameBox2 .photoFrameInner.event2 {
		margin-top: 0;
		height: 350px;
	}
}


.sec4_4 {
	z-index: 101;
	position: relative;
}

.sec4_4 .sectionInner {

}

.sec4_4 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec4_4 .headNormalImg img {
	max-height: 1.75rem;	
}

.sec4_4 .headNormalImgS {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec4_4 .headNormalImgS img {
	max-height: 1.25rem;	
}

@media screen and (min-width: 768px) {
	.sec4_4 .photoVt3col {
		margin-top: 2rem;
	}
}


.photoVt3col {

}

.photoVt3col .item {
	width: 32%;
}


.sec4_5 {
	z-index: 101;
	position: relative;
}

.sec4_5 .sectionInner {

}

.sec4_5 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec4_5 .headNormalImg img {
	max-height: 1.75rem;	
}


.sec4_frame3 {
	z-index: 101;
	position: relative;
	margin-top: 3rem;
}

@media screen and (min-width: 1040px) {
	.sec4_frame3 {
		padding-bottom: 20rem;
	}
}

.photoFrameBox .photoFrameInner.event3 {
	height: 350px;
	background-image: url("./images/event/eventPhotoFrame3.jpg");
}

@media screen and (min-width: 900px) {
	.photoFrameBox .photoFrameInner.event3 {
		height: 500px;
	}
}


.sec4_6 {
	z-index: 99;
	position: relative;
}

@media screen and (min-width: 1040px) {
	.sec4_6 {
		margin-top: -10rem;
	}
}

.sec4_6 {
	position: relative;
	height: auto;
	padding-bottom: 10rem;
	background-image: url("./images/event/bg4_6_upper.png"), url("./images/event/bg4_6.png");
	background-position: center bottom, left top;
	background-repeat: no-repeat, no-repeat;
	background-size: 900px auto, auto 100%;
}

@media screen and (min-width: 768px) {
	.sec4_6 {
		padding-bottom: 4rem;
		background-image: url("./images/event/bg4_6_upper.png"), url("./images/event/bg4_6.png");
		background-position: center bottom, left top;
		background-repeat: no-repeat, no-repeat;
		background-size: 1200px auto, auto 100%;
	}
}

@media screen and (min-width: 900px) {
	.sec4_6 {
		padding-bottom: 11rem;
		background-image: url("./images/event/bg4_6_upper.png"), url("./images/event/bg4_6.png");
		background-position: left -150px bottom, left top;
		background-repeat: no-repeat, no-repeat;
		background-size: 1050px auto, 100% 88%;
	}
}

.sec4_6 .sectionInner {

}

.sec4_6 .headNormalImg {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec4_6 .headNormalImg img {
	max-height: 1.75rem;	
}

.sec4_6 .headNormalImgS {
	margin: 1.5rem 0 3.5rem 0;
	text-align: center;
}

.sec4_6 .headNormalImgS img {
	max-height: 5.5rem;	
}


.sec4_6 .sectionInner > .flexContainer {

}

.sec4_6 .sectionInner > .flexContainer .left {
	margin-bottom: 3rem;
}

.sec4_6 .sectionInner > .flexContainer .right {

}

.sec4_6 .sectionInner > .flexContainer .right > .flexContainer {

}

.sec4_6 .sectionInner > .flexContainer .right > .flexContainer .item {
	width: 48.5%;
	margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
	.sec4_6 .headNormalImg {
		margin-top: 0;
		text-align: left;
	}

	.sec4_6 .headNormalImgS {
		text-align: left;
	}

	.sec4_6 .sectionInner > .flexContainer .left {
		width: 48%;
	}
	
	.sec4_6 .sectionInner > .flexContainer .right {
		width: 48%;
	}
}


.bgImgEvent1 {
	position: relative;
	height: auto;
	background-image: url("./images/event/bg1.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 700px auto;
}

@media screen and (min-width: 768px) {
	.bgImgEvent1 {
		background-position: center top;
		background-size: 900px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgEvent1 {
		background-position: center top -90px;
		background-size: 1200px auto;
	}
}

.bgImgEvent2 {
	position: relative;
	height: auto;
	background-image: url("./images/event/bg2.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 800px auto;
}

@media screen and (min-width: 768px) {
	.bgImgEvent2 {
		background-position: center center;
		background-size: 1100px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgEvent2 {
		background-position: center top 100px;
		background-size: 1400px auto;
	}
}

.bgImgEvent3 {
	z-index: 101;
	position: relative;
	height: auto;
	background-image: url("./images/event/bg3.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 700px auto;
}

@media screen and (min-width: 768px) {
	.bgImgEvent3 {
		background-position: center top;
		background-size: 900px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgEvent3 {
		background-position: center top -80px;
		background-size: 1480px auto;
	}
}



/*入学案内*/
.sec5_1 {

}

.sec5_1 .sectionInner {

}

.sec5_1 .emblem {
	display: none;
}

@media screen and (min-width: 1040px) {
	.sec5_1 .emblem {
		display: block;
	}
}

.sec5_1 .emblem img {
	width: 4.5rem;
	height: auto;
	margin-bottom: 1rem;
}

.sec5_1 .headNormalImgL {
	margin: 1.5rem 0 4rem 0;
}

.sec5_1 .headNormalImgL img {
	max-height: 2.5rem;	
}

.sec5_1 .headNormalImg {
	margin: 1.5rem 0 1.75rem 0;
	text-align: center;
}

.sec5_1 .headNormalImg img {
	max-height: 1.75rem;	
}


.linetb {
	border: 1px solid var(--main-color);
	border-width: 1px 0 1px 0;
	padding: 0.5rem 0.25rem;
}

ul.listDot {
	list-style-type: disc
}

ul.listDot li {
	margin-left: 1.5em;
}


.headRcBlue2 {
	position: relative;
	text-align: center;
}

.headRcBlue2 > span {
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--main-color-lightblue);
	letter-spacing: 0.15em;
	display: inline-block;
	width: 100%;
	vertical-align: middle;
	border: 1px solid var(--main-color-lightblue);
	background-color: #ffffff;
	border-radius: 2rem;
	padding: 0.25rem 1rem;
}


.sec5_2 {

}

.sec5_2 .sectionInner {

}

.sec5_2 .headNormalImg {
	margin: 1.5rem 0 3.25rem 0;
	text-align: center;
}

.sec5_2 .headNormalImg img {
	max-height: 1.75rem;	
}

.sec5_2 table.basicTable3 {
	line-height: 1.5em;
}

.sec5_2 table.basicTable3 tr td {
	padding: 1em 1em;
}

.sec5_2 table.basicTable3 tr td .tel {
	height: 1.5em;
	margin-bottom: 0.75em;
}


.sec5_3 {
	z-index: 101;
	position: relative;
}

.sec5_3 .sectionInner {

}

.sec5_3 .headNormalImg {
	margin: 1.5rem 0 3.25rem 0;
	text-align: center;
}

.sec5_3 .headNormalImg img {
	max-height: 1.75rem;	
}


.flowBox {
	line-height: 1.5em;
}

.flowBox .flexContainer {
	position: relative;
	padding: 1rem;
	border: 2px solid var(--main-color-blue);
	border-radius: 1.5rem;
	margin-bottom: 16px;
}

.flowBox .flexContainer::before {
	position: absolute;
	bottom: -30px;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 30px;
	height: 30px;
	background-image: url("./images/bosyu/arrow_flow.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.flowBox .flexContainer .left {
	margin-bottom: 1.25rem;
}

.flowBox .flexContainer .left p {
	display: inline-block;
	vertical-align: middle;
}

.flowBox .flexContainer .left p::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 3.75rem;
	height: 3.75rem;
	background-image: url("./images/bosyu/01.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	margin-right: 1rem;
}

.flowBox .flexContainer:nth-child(1) .left p::before { background-image: url("./images/bosyu/01.svg"); }
.flowBox .flexContainer:nth-child(2) .left p::before { background-image: url("./images/bosyu/02.svg"); }
.flowBox .flexContainer:nth-child(3) .left p::before { background-image: url("./images/bosyu/03.svg"); }
.flowBox .flexContainer:nth-child(4) .left p::before { background-image: url("./images/bosyu/04.svg"); }
.flowBox .flexContainer:nth-child(5) .left p::before { background-image: url("./images/bosyu/05.svg"); }
.flowBox .flexContainer:nth-child(6) .left p::before { background-image: url("./images/bosyu/06.svg"); }

.flowBox .flexContainer .left p img {
	width: calc(100% - 3.75rem - 1rem);
	max-height: 1.25rem;
}

@media screen and (min-width: 768px) {
	.flowBox .flexContainer {
		min-height: 10rem;
	}

	.flowBox .flexContainer .left {
		position: relative;
		width: 47%;
		margin-bottom: 0;
	}

	.flowBox .flexContainer .left p {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}

	.flowBox .flexContainer .right {
		position: relative;
		width: 50%;
	}

	.flowBox .flexContainer .right p {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
}

.flowLast {
	padding: 0 1rem;
	margin: 3rem 0 3rem 0;
} 

.flowLast picture {
	display: block;
	width: 100%;
	text-align: center;
}

.flowLast .txt1 { margin-bottom: 1.5rem; }
.flowLast .txt1 img { height: 3.5rem; }

.flowLast .txt2 { margin-bottom: 2rem; }
.flowLast .txt2 img { height: 5.5rem; }


@media screen and (min-width: 768px) {
	.flowLast {
		padding: 0 1.75rem;
	} 

	.flowLast .txt1 { margin-bottom: 0.5rem; }
	.flowLast .txt1 img { height: 1.25rem; }
	
	.flowLast .txt2 { margin-bottom: 1.5rem; }
	.flowLast .txt2 img { height: 1.25rem; }
}

.sec5_3_2 {
	background-color: #F4F4F4;
	padding: 3.5rem 1rem;
	margin-bottom: 2.5rem;
}

.sec5_3_2 picture {
	display: block;
	width: 100%;
	text-align: center;
}

.sec5_3_2 .txt1 { margin-bottom: 3rem; }
.sec5_3_2 .txt1 img { height: 3.5rem; }

.sec5_3_2 .txt2 img { height: 5.5rem; }

.sec5_3_2 p {
	margin-bottom: 3rem;
}

.sec5_3_2 .inq {
	display: block;
	height: 2rem;
	margin: 0 auto 1.5rem auto;
}

@media screen and (min-width: 768px) {
	.sec5_3_2 {
		padding: 3.5rem 1.75rem;
	}

	.sec5_3_2 .txt1 img { height: 1.25rem; }

	.sec5_3_2 .txt2 img { height: 1.5rem; }
}

.sec5_3 .btnArrow3 a span {
	font-size: 1.5rem;
	padding: 0.5rem 0.5rem;
}

.sec5_3 .btnArrow3 a span::before {
	width: 1.5rem;
	height: 1.5rem;
}

@media screen and (min-width: 768px) {
	.sec5_3 .btnArrow3 a span {
		padding: 0.5rem 2rem;
	}

}


.bgImgBosyu1 {
	position: relative;
	height: auto;
	background-image: url("./images/bosyu/bg1.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 800px auto;
}

@media screen and (min-width: 768px) {
	.bgImgBosyu1 {
		background-position: center top -50px;
		background-size: 1200px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgBosyu1 {
		background-position: center top;
		background-size: 1600px auto;
	}
}

.bgImgBosyu2 {
	position: relative;
	height: auto;
	background-image: url("./images/bosyu/bg2.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 900px auto;
}

@media screen and (min-width: 768px) {
	.bgImgBosyu2 {
		background-position: center top;
		background-size: 1180px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgBosyu2 {
		background-position: center top 100px;
		background-size: 1400px auto;
	}
}


/*イベント案内*/
.sec6_1 {
	z-index: 101;
	position: relative;
}

.sec6_1 .sectionInner {

}

.sec6_1 .emblem {
	display: none;
}

@media screen and (min-width: 1040px) {
	.sec6_1 .emblem {
		display: block;
	}
}

.sec6_1 .emblem img {
	width: 4.5rem;
	height: auto;
	margin-bottom: 1rem;
}

.sec6_1 .headNormalImgL {
	margin: 1.5rem 0 4rem 0;
}

.sec6_1 .headNormalImgL img {
	max-height: 2.5rem;	
}


.sec6_1 .link {

}

.sec6_1 .btnArrow3 a span {
	font-size: 1.5rem;
	padding: 0.5rem 0.5rem;
}

.sec6_1 .btnArrow3 a span::before {
	width: 1.5rem;
	height: 1.5rem;
}

@media screen and (min-width: 768px) {
	.sec6_1 .btnArrow3 a span {
		padding: 0.5rem 2rem;
	}
}

.sec6_1_2 {
	text-align: center;
	font-weight: 700;
	margin-top: 2rem;
}


.bgImgEventlist1 {
	position: relative;
	height: auto;
	background-image: url("./images/eventlist/bg1.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 800px auto;
}

@media screen and (min-width: 768px) {
	.bgImgEventlist1 {
		background-position: center top -70px;
		background-size: 1200px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgEventlist1 {
		background-position: center top -70px;
		background-size: 1600px auto;
	}
}



/*文教タイムズ*/
.sec7_1 {
	z-index: 101;
	position: relative;
	padding-bottom: 3rem;
}

.sec7_1 .sectionInner {
	z-index: 102;
	position: relative;
}

.sec7_1 .headNormalImgL {
	margin: 1.5rem 0 4rem 0;
}

.sec7_1 .headNormalImgL img {
	max-height: 2.5rem;	
}

.sec7_1 .timesList2 {
	border-bottom: none;
}

.sec7_2 {
	z-index: 101;
	position: relative;
}

.underWhite {
	z-index: 101;
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 300px;
	background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,0) 100%);
}

.bgImgTimes1 {
	position: relative;
	height: auto;
	background-image: url("./images/blog/bg1.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 900px auto;
}

@media screen and (min-width: 768px) {
	.bgImgTimes1 {
		background-position: center top -50px;
		background-size: 1200px auto;
	}
}

@media screen and (min-width: 1040px) {
	.bgImgTimes1 {
		background-position: center top -50px;
		background-size: 1600px auto;
	}
}


/* ===================================================================
 Style Info : フォームに関するスタイル指定
=================================================================== */

/*GoGoランドお申し込みフォーム　PC*/

/*イベントお申し込みフォーム　PC*/

.form {
	z-index: 101;
	position: relative;
	padding: 4rem 0 0 0;
}

.form .sectionInner {
	line-height: 2em;
}

.form .headBasic {
	font-size: 2rem;
	font-weight: 500;
    line-height: 1.75em;
    margin: 0 0 0 0;
	text-align: center;
	padding-bottom: 0.5rem;
	color: var(--main-color-darkRed);
}

.form .sectionInner .contBox {
	margin: 5rem 0 2rem 0;
}

.form .sectionInner .contBox h2 {
	font-size: 1.25rem;
	margin-bottom: 0.75rem;
}

.form .sectionInner .contBox h3 {
	font-size: 1.3rem;
	margin-bottom: 0.75rem;
}

.form .sectionInner .contBox figure.wp-block-image {/*画像*/
	margin: 1rem auto;
	text-align: center;
}

.form .sectionInner .contBox figure.wp-block-image figcaption {
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 2rem;
}

.form .sectionInner .contBox p {
	margin: 1em 0;
}

@media screen and (min-width: 768px) {
	.form .sectionInner .contBox {
		margin: 5rem 1rem 2rem 1rem;
	}
}

.form .sectionInner .contBox figure.wp-block-table {/*テーブル*/
	margin: 1rem auto 2rem auto;
}

.form .sectionInner .contBox figure.wp-block-table figcaption {
	font-size: 1rem;
	font-weight: bold;
	text-align: center;
	margin: 0.5rem 0;
}



/*フォーム共通　PC*/
.contactForm table {
	width: 100%;
	border-collapse:separate;
	border: 1px solid var(--main-color);
	border-width: 1px 0 0 1px;
	font-size: 1rem;
	margin-top: 2rem;
}

.contactForm th {
	width:35%;
	font-weight: bold;
	text-align: left;
	vertical-align: middle;
	padding: 0.75em 1em;
	border-bottom: 1px solid var(--main-color);
	border-right: 1px solid var(--main-color);
	background-color: #F0F0F0;
}

.contactForm th span {
	display:block;
	position:relative;
}

.contactForm th span em {
	position:absolute;
	right:0;
	top:3px;
	color:#fff;
	font-style:normal;
	display:inline-block;
	padding:1px 7px;
}
.contactForm th .require {
	background:#004EA2;
}
.contactForm th .nini {
	background:#969696;
}
.contactForm th .kakunin {
	background:#c00;
}

.contactForm td {
	font-weight: normal;
	vertical-align: middle;
	padding: 0.75em 1em;
	border-bottom: 1px solid var(--main-color);
	border-right: 1px solid var(--main-color);
}

.contactForm td input[type="text"],
.contactForm td input[type="tel"],
.contactForm td textarea {
	border: 1px solid #999999;
	color: #000000;
	padding: 0.25rem 0.5rem;
}

.contactForm td textarea {
	width: 100%;
}

.contactForm .mwform-radio-field-text {
	display: inline-block;
	vertical-align: middle;
}

.contactForm td input[type="radio"] {
	width: 1rem;
	height: 1rem;
	display: inline-block;
	vertical-align: middle;
	margin-right: 0.5em;
}

.contactForm td .error {
	display:block;
	color:#fff;
	background:#ea1419;
	margin-top:5px;
	padding:2px 5px;
}

.contactForm td div {
	padding:5px 0;
}

.contactForm td div .input_label {
	display:inline-block;
	width:70px;
}

.mwform-radio-field {
	margin-right: 0.75em;
}

.contactForm td .mwform-radio-field label,
.contactForm td .mwform-checkbox-field label {
	cursor:pointer;
}

.mw_wp_form_confirm .confirm_none , .contactConfirm .confirm_none {
	display:none;
}

/*inputサイズ*/
.inp_short {
	width:45%;
}
.inp_middle {
	width:65%;
}
.inp_long {
	width:96%;
}
.area_long {
	width:96%;
	height:180px;
}
.inp_zip {
	width:120px;
}
.radio_label {
	margin-right:40px;
}

/*プレースホルダー*/
input::-webkit-input-placeholder { color:#aaa; }
input:-moz-placeholder { color:#666; }
input::-moz-placeholder { color:#666; }

input:focus::-webkit-input-placeholder { color:transparent; }
input:focus:-moz-placeholder { color:transparent; }
input:focus::-moz-placeholder { color:transparent; }

@media screen and (max-width: 767px) {
	/*フォーム共通　SP*/
	.contactForm th ,.contactForm td {
		display:block;
		width:100%;
		box-sizing:border-box;
	}

	.contactForm th {
		
	}

	.contactForm td {
		border-width: 0 1px 0 0;
	}

	.contactForm tr td:last-child {
		border-bottom: 1px solid var(--main-color);
	}

	.contactForm td .require {
		margin-left:0;
		display:block;
	}
	.contactForm td .require {
		display:none;
	}
	.contactForm td .mwform-radio-field label, .contactForm td .mwform-checkbox-field label {
		/*display:inline-block;
		margin-right:0;
		text-indent:-1.4em;
		padding-left:1.4em;*/
	}
	.contactForm td div .input_label {
		width:60px;
	}

	.mwform-tel-field input {
		width:60px!important;
	}
	
	.inp_short {
		width:60%;
	}
	.inp_middle {
		width:94%;
	}
	.inp_long {
		width:94%;
	}
	.area_long {
		width:94%;
		height:200px;
	}
}



/*ボタン*/
.contactForm .btnArea {
	padding:2.5rem 0 2.5rem 0;
	text-align:center;
}

.contactForm .btnArea span {
	position: relative;
	display: inline-block;
	margin-bottom: 1.5rem;
	transition: 0.5s;
}

.contactForm .btnArea span input {
	display: inline-block;
	font-size: 1.5rem;
	letter-spacing: 0.15em;
	border: 1px solid var(--main-color-blue);
	background-color: #ffffff;
	border-radius: 2rem;
	padding: 0.75rem 4rem 0.75rem 5.5rem;
	cursor: pointer;
}

.contactForm .btnArea span::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 2.5rem;
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	background-image: url("./images/common/arrowLinkBlue3.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: 0.5s;
}

.contactForm .btnArea span.btn_return:before {
	background-image: url("./images/common/arrowLinkBlue3_rev.svg");
}

.contactForm .btnArea span:hover { transition: 0.5s; opacity: 0.7; }

.contactForm .btnArea span:hover::before {

}

.contactForm .btnArea span:empty {
	display:none;
}

.contactForm .btnArea input {
	color: var(--main-color-blue);
	cursor: pointer;
}

.contactForm .btnArea .btn_confirm input {

}

.contactForm .btnArea .btn_confirm input:hover {
}

.contactForm .btnArea .btn_return input {
}

.contactForm .btnArea .btn_return input:hover {
}

/*トップへ戻るボタン*/
.top_btn {
	text-align:center;
	padding-top: 3rem;
}

.form .top_btn a {
	position: relative;
	display: inline-block;
	font-size: 1.5rem;
	letter-spacing: 0.15em;
	border: 1px solid var(--main-color-blue);
	background-color: #ffffff;
	border-radius: 2rem;
	padding: 0.75rem 4rem 0.75rem 5.5rem;
	cursor: pointer;
}

.form .top_btn a:before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 2.5rem;
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	background-image: url("./images/common/arrowLinkBlue3_rev.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.form .top_btn a:link{ color: var(--main-color-blue); text-decoration: none; }
.form .top_btn a:visited{ color: var(--main-color-blue); text-decoration: none; }
.form .top_btn a:active{ color: var(--main-color-blue); text-decoration: none; }
.form .top_btn a:hover { color: var(--main-color-blue); text-decoration: none; opacity: 0.7; }



.form .top_btn a:hover:before {

}



@media screen and (max-width: 767px) {
	/*フォーム共通　SP*/
	.btnArea {
		padding:10px 10px 0 16px;
	}

}
@media screen and (max-width: 479px) {
	.contactForm .btnArea span input {
		font-size: 1.2rem;
		padding: 0.5rem 2rem 0.5rem 3.5rem;
	}

	.contactForm .btnArea span:before {
		left: 1.75rem;
		width: 1rem;
		height: 1rem;
	}

	.form .top_btn a {
		font-size: 1.2rem;
		padding: 0.5rem 2rem 0.5rem 3.5rem;
	}
	
	.form .top_btn a:before {
		left: 1.75rem;
		width: 1rem;
		height: 1rem;
	}

	.btnArea input {
		margin-left:0!important;
		margin-right:0!important;
	}
}





/* ===================================================================
 既存ページ
=================================================================== */

/*======= basicPage =======*/
.basicPage {
	z-index: 101;
	position: relative;
	padding: 4rem 0 0 0;
}

.basicPage .sectionInner {
	line-height: 2em;
}

.basicPage .headBasic {
	font-size: 2rem;
	font-weight: 500;
    line-height: 1.75em;
    margin: 0 0 0 0;
	text-align: center;
	padding-bottom: 0.5rem;
	color: var(--main-color-darkRed);
}

.basicPage .sectionInner .contBox {
	margin: 5rem 0 2.5rem 0;
}

.basicPage .sectionInner .contBox h2 {
	font-size: 1.25rem;
	margin-bottom: 1.75rem;
}

.basicPage .sectionInner .contBox h3 {
	font-size: 1.1rem;
	margin-bottom: 1.25rem;
}

.basicPage .sectionInner .contBox figure.wp-block-image {/*画像*/
	margin: 1rem auto;
	text-align: center;
}

.basicPage .sectionInner .contBox figure.wp-block-image figcaption {
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 2rem;
}

.basicPage .sectionInner .contBox p {
	margin: 1em 0;
}

.basicPage .sectionInner .contBox .contInner {
	margin-bottom: 3rem;
}

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

}

ul.pdfList {

}

ul.pdfList li {
	margin-bottom: 0.5em;
}

ul.pdfList li a {
	position: relative;
    display: inline-block;
	padding: 0.3em 0;
}

ul.pdfList li a::before {
	content: "";
    display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 0.5rem;
	background-image: url("./images/common/ico_pdf.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}


/*======= パスワード制限ページ =======*/
.post-password-form {

}

.post-password-form p {
	font-size: 100%;
	margin-bottom: 2rem!important;
}

.post-password-form input[type="password"] {
	width: 100%;
	border: 1px solid #999999;
	color: #000000;
	padding: 0.25rem 0.5rem;
}

.post-password-form input[type="submit"] {

}


.post-password-form .btn_input {
	margin-top: 3rem;
}

.btn_input {
	position: relative;
	display: inline-block;
	margin-bottom: 1.5rem;
	transition: 0.5s;
}

.btn_input input {
	display: inline-block;
	font-size: 1.3rem;
	letter-spacing: 0.15em;
	color: var(--main-color-blue);
	border: 1px solid var(--main-color-blue);
	background-color: #ffffff;
	border-radius: 2rem;
	padding: 0.75rem 4rem 0.75rem 5.5rem;
	cursor: pointer;
}

.btn_input::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 2.5rem;
	display: inline-block;
	width: 1.3rem;
	height: 1.3rem;
	background-image: url("./images/common/arrowLinkBlue3.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: 0.5s;
}

.btn_input:hover { transition: 0.5s; opacity: 0.7; }

@media screen and (max-width: 479px) {
	.btn_input input {
		font-size: 1.2rem;
		padding: 0.5rem 2rem 0.5rem 3.5rem;
	}

	.btn_input:before {
		left: 1.75rem;
		width: 1rem;
		height: 1rem;
	}
}





















/* ==========================================================================
   WP 
============================================================================= */

/*======= single =======*/
.single {
	z-index: 101;
	position: relative;
	padding: 4rem 0 6rem 0;
}

.singleBottom {
	z-index: 101;
	position: relative;
}

.single .sectionInner {
	line-height: 2em;
}

.single .headBasic {
	font-size: 2rem;
	font-weight: 500;
    line-height: 1.75em;
    margin: 0 0 0 0;
	text-align: center;
	padding-bottom: 0.5rem;
	color: var(--main-color-darkRed);
}

.single .sectionInner .flexContainer.ttlBox {
	-webkit-justify-content: space-between;
	justify-content:         space-between;
	align-items: center;
	margin-top: 0.5rem;
	border-top: 2px solid var(--main-color-pink);
}

.single .sectionInner .ttlBox .headCate a {
	display: inline-block;
	margin-top: 0.1rem;
}

.single .sectionInner .ttlBox .headCate a:link,
.single .sectionInner .ttlBox .headCate a:visited,
.single .sectionInner .ttlBox .headCate a:active {
	text-decoration: none;
	padding: 0.25em 1.25em 0.3em 1.25em;
	border-radius: 3px;
	line-height: 1;
	color: #ffffff;
	background-color: var(--main-color-blue);
}

.single .sectionInner .ttlBox .headCate a:hover {

}

.single .sectionInner .ttlBox .headCate a.nyushi { background-color: var(--main-color-blue); }
.single .sectionInner .ttlBox .headCate a.event { background-color: var(--main-color-pink); }
.single .sectionInner .ttlBox .headCate a.oshirase { background-color: var(--main-color-green); }

.single .sectionInner .ttlBox .headDate {
	text-align: right;
}

.single .sectionInner .contBox {
	margin: 5rem 0;
}

.single .sectionInner .contBox h2 {
	font-size: 1.5rem;
	color: var(--text-color-magenta);
	margin-bottom: 0.75rem;
}

.single .sectionInner .contBox h3 {
	font-size: 1.1rem;
	margin-bottom: 0.75rem;
}

.single .sectionInner .contBox figure.wp-block-image {/*画像*/
	margin: 1rem auto;
	text-align: center;
}

.single .sectionInner .contBox figure.wp-block-image figcaption {
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 2rem;
}

.single .sectionInner .contBox p {
	margin: 1em 0;
}

@media screen and (min-width: 768px) {
	.single .sectionInner .contBox {
		margin: 5rem 1rem;
	}
}

.single .sectionInner .contBox figure.wp-block-table {/*テーブル*/
	margin: 1rem auto 2rem auto;
}

.single .sectionInner .contBox figure.wp-block-table figcaption {
	font-size: 1rem;
	font-weight: bold;
	text-align: center;
	margin: 0.5rem 0;
}

.single table {
	width: 100%;
	border-collapse:separate;
	border-top: 1px solid #000000;

}

.single table caption{
	font-size: 1rem;
	font-weight: bold;
	text-align: center;
	margin: 0.5rem 0;
}

.single table tr th,
.single table tr td {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	padding: 0.75em 0;
	border-bottom: 1px solid #000000;
}

.single table p {
	margin-bottom: 1em;
}

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

}

.single .pager,
.single .pagerCategory {
	border-top: 1px solid #000000;
	padding: 2rem 0;
	margin-top: 7rem;
	text-align: center;
}

.single .pagerCategory {
	margin-top: 4rem;
}

.single .pager .flexContainer > div {
	width: 33.33333%;
}

.single .pager .flexContainer .prev { text-align: left; }
.single .pager .flexContainer .next { text-align: right; }

.single .pager a:link{ text-decoration: none; }
.single .pager a:visited{ text-decoration: none; }
.single .pager a:active{ text-decoration: none; }
.single .pager a:hover { text-decoration: underline; }



.cateList {
	font-size: 1rem;
	margin-top: 5rem;
	margin-bottom: 6rem;
}

.cateList li {
	margin-bottom: 1rem;
}

.cateList li span {

}

.cateList li span.date {
	width: 28%;
}

.cateList li span.title {
	width: 70%;
	margin-left: 2%;
}

@media screen and (min-width: 768px) {
	.cateList li span.date {
		width: 20%;
	}
	
	.cateList li span.title {
		width: 78%;
		margin-left: 2%;
	}
}

.cateList a:link{ color: var(--main-color); text-decoration: none; }
.cateList a:visited{ color: var(--main-color); text-decoration: none; }
.cateList a:active{ color: var(--main-color); text-decoration: none; }
.cateList a:hover { color: #666666; text-decoration: none; }


/*ページ送り*/
/*ページ送り*/
.pagination {
	font-size: 0.8rem;
	text-align: center;
	margin: 4rem 0;
}

.wp-pagenavi {

}

.wp-pagenavi .pages {
	padding: 0.5rem;
}

.wp-pagenavi .first,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .extend,
.wp-pagenavi .current,
.wp-pagenavi .page,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .last {
	display: inline-block;
	width: 1.8rem;
	height: 1.8rem;
	background-color: #ffffff;
	border: 1px solid var(--main-color-blue);
	/*border-radius: 5px;*/
	box-sizing: content-box;
	text-align: center;
	line-height: 1.8rem;
	vertical-align: middle;
	margin-left: 1px;
	margin-right: 1px;
}

.wp-pagenavi .extend {
	background-color: transparent;
}

.wp-pagenavi .current {
	color: #ffffff;
	background-color: var(--main-color-blue);
}

.wp-pagenavi a:link,
.wp-pagenavi a:visited,
.wp-pagenavi a:active { color: var(--main-color-blue); }
.wp-pagenavi a:hover {
	color: #ffffff;
	background-color: var(--main-color-blue);
}

@media screen and (min-width: 768px) {
	.pagination {
		font-size: 0.9rem;
		/*text-align: left;*/
	}

	.wp-pagenavi .first,
	.wp-pagenavi .previouspostslink,
	.wp-pagenavi .extend,
	.wp-pagenavi .current,
	.wp-pagenavi .page,
	.wp-pagenavi .nextpostslink,
	.wp-pagenavi .last {
		width: 2rem;
		height: 2rem;
		line-height: 2rem;
	}
}




/* ==========================================================================
   追記 
============================================================================= */

.sideCate {
	z-index: 101;
	position: relative;
	margin-top: 2rem;
}

.sideCate .sectionInner {

}

.sideCate .sectionInner .sideTitle h3 {
	font-size: 1.5rem;
	text-align: center;
	color: #ffffff;
	background-color: var(--main-color-blue);
	padding: 0.5em 0;
}

.sideCate .sectionInner .sideList {

}

.sideCate .sectionInner .sideList > ul {
	text-align: center;
}

.sideCate .sectionInner .sideList > ul > li,
.sideCate .sectionInner .sideList > ul > li ul li {
	border-bottom: 1px dotted var(--main-color);
}

.sideCate .sectionInner .sideList > ul > li ul li:first-child {
	border-top: 1px dotted var(--main-color);
}

.sideCate .sectionInner .sideList > ul > li ul li:last-child {
	border: none;
}

.sideCate .sectionInner .sideList > ul > li a {
	display: block;
	padding: 0.5em 0.5em;
}