@charset "UTF-8";

/*===================================
共通
===================================*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&display=swap');

html{
	font-size:62.5%;
	line-height:240%;
	box-sizing:border-box;
}
body{
	margin:0;
	padding:0;
	color:#222222;
	font-size:1.8rem;
	line-height:3.2rem;
	font-weight:400;
	font-family:"Noto Sans JP", sans-serif;
	letter-spacing:0.06em;
	background:#fff;
	word-break:break-all;
	box-sizing:border-box;
	position:relative;
	font-feature-settings:"palt";
}


html:before,
html:after{
	content:"";
	width:328px;
	height:198px;
	display:block;
	background:url(../img/curtain.svg) 100% / 100% no-repeat;
	position:absolute;
	z-index:2;
}
html:before{ top:0; left:0; }
html:after{ top:0; right:0; transform:scale(-1, 1); }

@media print, screen and (max-width:1400px){
	html:before,
	html:after{
		width:244px;
		height:148px;
	}
}
@media print, screen and (max-width: 1000px){
	body{
		font-size:1.7rem;
		line-height:3.2rem;
	}
	html:before,
	html:after{
		content:"";
		width:150px;
		height:88px;
	}
}
*{ box-sizing:border-box; }
.hiddenText,
.hiddenText a{
	width:0px;
	height:0px;
	overflow:hidden;
	position:absolute;
}
a{ color:#222222; transition:all .3s ease; text-decoration:none; cursor:pointer; }
a:hover{ color:#158413; text-decoration:underline; }
a img { transition:all .3s ease; }
a:hover img{ opacity:.6; transition:all .3s ease; }
a[href*="tel:"]{
	text-decoration:none;
}
@media screen and (min-width:1024px) {
	/*電話*/
	a[href*="tel:"] {
		pointer-events:none;
		cursor:default;
	}
}
b, strong{
	font-weight:bold;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}
h1,h2,h3,h4,h5,h6,
p,dl,ul,ol{ margin:0; padding:0; }
dd,dt{ margin-bottom:0; margin-left:0; }
dt{ font-weight:500; }
ul{ list-style:none; }

h1,h2,h3{ color:#333333; }

/* マウスクリック時 */
a:focus:not(:focus-visible),
svg:focus:not(:focus-visible),
input:focus:not(:focus-visible),
select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible),
button:focus:not(:focus-visible){
	outline:none;
}
input::placeholder,
textarea::placeholder{ color:#888888!important; }

/* チェックボックス */
.checkText{ text-align:center; }
.checkbox-input{
	position:absolute;
	top:10px;
	left:10px;
}
.checkbox-parts{
	height:28px;
	width:28px;
	margin-right:20px;
	margin-top:5px;
	display:inline-block;
	border:2px solid #158413;
	border-radius:4px;
	vertical-align:middle;
	background:#fff;
	position:relative;
	pointer-events:none;
}
.checkbox-parts::before {
	content:"";
	width:28px;
	height:28px;
	display:block;
	position:absolute;
	top:0;
	left:0;
}
.checkbox-input:checked + .checkbox-parts::after {
	width:8px;
	height:20px;
	display:block;
	border-bottom:3px solid #e46812;
	border-right:3px solid #e46812;
	content:"";
	position:absolute;
	top:0px;
	left:8px;
	transform:rotate(40deg);
}
input[type="checkbox"]:focus-visible + .checkbox-parts {
	outline:2px solid #000!important;
}

em{
	font-style:normal;
	display:block;
	font-weight:500;
}
strong.green{ color:#1e6b1d; }

/* タブ移動時 */
svg:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
a:focus-visible,
button:focus-visible{
	outline:2px solid #000!important;
}

/*テーブル*/
table { width:100%!important; color:#222222; margin-top:50px; border:1px solid #158413; margin-bottom:30px; background:#fff; }
table tr th{ padding:15px; color:#fff; border-bottom:1px solid #fff; font-weight:700; vertical-align:top; background:#158413; }
table tr th:first-of-type{ width:160px; }
table tr:last-of-type th{ border-bottom:1px solid #158413; }
table tr th + th{ border-left:1px solid #158413;}
table tr td{ padding:15px; border-bottom:1px solid #158413;border-left:1px solid #158413; vertical-align:middle; font-weight:500; }
table tr th,
table tr td{ height:100%!important; }
table tr:last-of-type td{ border-bottom:0;}
table tr td + td{ border-left:1px solid #158413; }

table a{ color:#158413; font-weight:500; text-decoration:underline; }
table .center{text-align:center; }


@media screen and (max-width:700px) {
	table .center {
		text-align:left;
	}
	table tr th,
	table tr td{
		height:100%!important;
		width:100%!important;
		display:block;
	}
	table tr td{ border-left:none; }
}
p + p{ margin-top:1em; }
.outside{ width:100%; display:block; position:relative; }

.btn .outside:after,
.outside:after{
	content:"";
	width:16px;
	height:16px;
	margin-left:10px;
	display:inline-block;
	background:url(../img/outside.svg) 100% / 100% no-repeat;
}

.btn{margin-top:60px;margin-left:auto;margin-right:auto;width:394px;position:relative;}
.btn a{
	display:flex;
	width:100%;
	height:70px;
	padding:21px 44px 21px 20px;
	text-decoration:none;
	color:#333333;
	border:2px solid #158413;
	border-radius:10px;
	font-weight:700;
	align-items:center;
	background:#fff;
	position:relative;
	z-index:1;
}
.btn a:after{
	content:"";
	width:14px;
	height:16px;
	display:inline-block;
	background:url(../img/arrow-green.svg) 100% / 100% no-repeat;
	position:absolute;
	right:30px;
	top:50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
}
.btn:after{
	content:"";
	width:100%;
	height:70px;
	display:block;
	border-radius:10px;
	position:absolute;
	right:-10px;
	bottom:-10px;
	background:rgba(21,132,19,.2);
}
.btn:hover a{
	translate:10px 10px;
	transition:.2s;
}
.btn.green a,
.btn.green:after{ height:60px; }

.btn.green a{ background:#158413; color:#fff; }
.btn.green a:after{ background:url(../img/arrow-white.svg) 100% / 100% no-repeat; }

@media print,screen and (max-width:900px){
	.btn{ width:100%; margin-top:40px; }
}

h2{color:#158413;font-size:3.4rem;line-height:6rem;letter-spacing:0.1em;margin-bottom:30px;}
.title-img{ margin-bottom:60px; }

@media print,screen and (max-width:1260px){
	h2{ font-size:3rem; line-height:5rem; position:relative; }
}
@media print,screen and (max-width:900px){
	h2,
	.title-img{
		margin-bottom:30px;
	}
}
@media print,screen and (max-width:700px){
	h2{
		font-size:2.6rem;
		line-height:4.6rem;
	}
}
.marker{
	background-image:linear-gradient(#fcca74, #fcca74);
	background-repeat:no-repeat;
	background-size:100% 10px;
	background-position:0 85%;
}



/*===================================
ヘッダー
===================================*/

header{
	width:calc(100% - 60px);
	height:120px;
	padding:15px 15px 15px 20px;
	margin:0 30px;
	display:flex;
	font-size:1.7rem;
	align-items:center;
	justify-content:space-between;
	border-radius:15px;
	box-shadow:0 0 10px rgba(0,0,0, .1);
	background:#fff;
	position:fixed;
	top:30px;
	z-index:1000;
	transition:all .3s ease;
}
header a:hover{ text-decoration:none; }
header > p{ margin-top:0; }
header .logo .head-copy{
	display:block;
	font-size:1.3rem;
	line-height:1.3rem;
	margin-bottom:10px;
	font-weight:700;
	color:#158413;
}
header .logo .head-copy + span{ display:flex; }
header .logo > span > a + a{ margin-left:20px; }

header .logo > span > a img{
	width:auto;
	max-height:75px;
}
header > nav > div,
header > nav > div > ul:first-of-type{ display:flex;align-items:center; }
header > nav > div > ul:first-of-type{ margin-right:40px; }
header > nav > div > ul:first-of-type > li > button{border:none;padding:0;}
header > nav > div > ul:first-of-type > li > button,
header > nav > div > ul:first-of-type > li > a{ font-weight:700; letter-spacing:0.04em; }
header > nav > div > ul:first-of-type > li + li{margin-left:40px;}

header > nav > div > ul:nth-of-type(2){width:190px;}

header > nav > div > ul:nth-of-type(2) > li > a{width:100%;padding:3px 20px;border:1px solid #158413;border-radius:8px;font-size:1.7rem;font-weight:700;background:#fff;}
header > nav > div > ul:nth-of-type(2) > .contact a{
	display:block;
	position:relative;
}
header > nav > div > ul:nth-of-type(2) > .contact a:after{
	content:"";
	width:10px;
	height:11px;
	display:block;
	background:url(../img/arrow-green.svg) 100% / 100% no-repeat;
	position:absolute;
	right:20px;
	top:50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
}

header > nav > div > ul:nth-of-type(2) > li + li{ margin-top:10px; }
header > nav > div > ul:nth-of-type(2) > li a{ width:100%; height:100%; text-decoration:none; }

header > nav > div > ul:nth-of-type(2) > li a:hover{
	color:#fff;
	background:#158413;
}
header > nav > div > ul:nth-of-type(2) > li a:hover:after{
	background:url(../img/outside-white.svg) 100% / 100% no-repeat;
}
header > nav > div > ul:nth-of-type(2) > .contact a:hover{
	color:#fff;
	background:#e46812;
	border:1px solid #e46812!important;
}
header > nav > div > ul:nth-of-type(2) > .contact a:hover:after{
	background:url(../img/arrow-white.svg) 100% / 100% no-repeat;
}

header > nav .has-child{ position:relative; }
header > nav .has-child:after{
	content:"";
	width:10px;
	height:5px;
	display:block;
	background:url(../img/arrow-bottom.svg) 100% / 100% no-repeat;
	position:absolute;
	bottom:-10px;
	left:50%;
	transform:translateX(-50%);
	-webkit-transform:translateX(-50%);
	-ms-transform:translateX(-50%);
}
header .outside:after{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	right:20px;
}

header.scroll-nav,
header.open{
	width:100%;
	margin:0;
	border-radius:0;
	top:0;
	background:#fff;
	z-index:99;
}

.child-menu{
	display:none;
	opacity:1;
	position:absolute;
	top:90px;
	background:#fff;
	color:#fff;
	min-width:280px;
	min-height:110px;
	font-weight:700;
	padding:30px;
	border-radius:8px;
	box-shadow:0 0 10px rgba(0, 0, 0, .1);
}
.child-menu li + li{margin-top:5px;}

.home-icon > a,
.seminar-icon > a,
.menu-icon > button,
.bulb-icon > button,
.report-icon > a,
.movie-icon > a{
	position:relative;
}
.home-icon > a:before,
.seminar-icon > a:before,
.menu-icon > button:before,
.bulb-icon > button:before,
.report-icon > a:before,
.movie-icon > a:before{
	content:"";
	height:28px;
	margin:0 auto 0px;
	display:block;
}

.home-icon > a:before{
	width:30px;
	background:url(../img/home.svg) 100% / 100% no-repeat;
}
.seminar-icon > a:before{
	width:33px;
	background:url(../img/seminar.svg) 100% / 100% no-repeat;

}
.menu-icon > button:before{
	width:25px;
	background:url(../img/menu.svg) 100% / 100% no-repeat;
}
.bulb-icon > button:before{
	width:30px;
	background:url(../img/bulb.svg) 100% / 100% no-repeat;

}
.report-icon > a:before{
	width:30px;
	background:url(../img/report.svg) 100% / 100% no-repeat;

}
.movie-icon > a:before{
	width:33px;
	background:url(../img/movie.svg) 100% / 100% no-repeat;

}
.bulb-icon > button { transition:all .3s ease; }
@media print,screen and (min-width:1301px){
	.bulb-icon > button:hover{ color:#158413; }
}
.splide__slide a{ display:block; width:100%; height:100%; }

.splide-control{
	height:60px;
	padding-right:10px;
	margin:25px auto 0;
	display:flex;
	align-items:center;
	justify-content:center;
}
.splide__toggle{
	width:40px;
	height:40px;
	margin-left:20px;
	display:flex;
	border-radius:50%;
	border:1px solid #158413;
	align-items:center;
	justify-content:center;
	transition:all .3s ease;
}

.splide__arrows > button{ transition:all .3s ease; }
.splide__arrows > button:hover{
	background:url(../img/arrow2-white.svg) center / 9px 17px no-repeat #158413;
	border:2px solid #158413;
}

.splide__pagination__page{
	border:0;
	width:10px;
	height:10px;
	padding:0;
	display:flex;
	border-radius:50%;
	background:#d1d4d0;
	transition:all .3s ease;
}
.splide__pagination__page:hover,
.splide__pagination__page.is-active{ background:#e46812; }
.splide__arrow--prev > svg,
.splide__arrow--next > svg{ display:none; }
.splide__pagination > li + li{ margin-left:18px; }


/*ハンバーガーメニュー*/
.hamburger{
	height:60px;
	width:60px;
	margin-left:auto;
	background:#fff;
	cursor:pointer;
	border:1px solid #158413;
	border-radius:8px;
	z-index:9999;
	position:relative;
	font-size:1.2rem;
	color:#158413;
	font-weight:700;
	letter-spacing:0;
}
.hamburger > span:not(:nth-of-type(3)){
	width:40px;
	height:2px;
	display:inline-block;
	background:#158413;
	transition:all .3s ease;
	position:absolute;
	right:10px;
}
.hamburger span:nth-of-type(1){
	top:15px;
}
.hamburger span:nth-of-type(2){
	bottom:30px;
}
.hamburger span:nth-of-type(3){
	display:block;
	margin-top:24px;
}
.hamburger[aria-expanded="true"] span:nth-of-type(1){
	-webkit-transform:translateY(20px) rotate(45deg);
	transform:translateY(20px) rotate(30deg);
	top:0px;
	right:10px;
}
.hamburger[aria-expanded="true"] span:nth-of-type(2){
	-webkit-transform:translateY(-20px) rotate(-45deg);
	transform:translateY(-20px) rotate(-30deg);
	bottom:16px;
}

@media print,screen and (min-width:1301px){
	header .pc-only{ display:block;}
	header .sp-only{ display:none; }
	.hamburger{ display:none; }
}
@media print,screen and (max-width:1400px){
	header {
		width:calc(100% - 40px);
		margin:0 20px;
	}

	header > nav > div > ul:first-of-type > li + li{ margin-left:30px; }
	header > nav > div > ul:first-of-type{ margin-right:30px; }
	header > nav > div > ul:first-of-type > li > button,
	header > nav > div > ul:first-of-type > li > a{ font-size:1.6rem; }
	
}
@media print,screen and (max-width:1300px){
	header .pc-only{ display:none; }
	header .sp-only{ display:block; }

	header {
		width:calc(100% - 20px);
		padding:10px 15px 10px 20px;
		height:100px;
		margin:0 10px;
		border-radius:8px;
		top:10px;
	}
	header .logo img{ height:60px; }
	header .logo > span > a + a {
		margin-left: 10px;
	}
	header .mainmenu{
		position:fixed;
		z-index:99;
		display:none;
	}

	header .mainmenu .mainmenu-wrap{
		width:90vw;
		height: calc(100vh - 100px);
		padding: 40px 60px 100px;
		display:block;
		background:#fafafa;
		margin-top: 100px;
		position:fixed;
		top:0px;
		right:0;
		z-index:100;
		overflow-y:auto;
	}
	.mainmenu > * {
		position:relative;
		z-index:-1;
	}
	header > nav > div > ul:first-of-type {
		margin-right:20px;
	}
	header > nav > div > ul:first-of-type > li + li,
	header > nav > div > ul{ margin-left:0; }
	header > nav > div > ul:first-of-type > li + li,
	header > nav > div > ul:nth-of-type(2){width:100%;margin-left:0;margin-top:20px;}



	.home-icon > a:before,
	.seminar-icon > a:before,
	.menu-icon > button:before,
	.bulb-icon > button:before,
	.report-icon > a:before,
	.movie-icon > a:before {
		width:30px;
		margin-right:15px;
		display:inline-block;
		vertical-align:middle;
	}

	.home-icon > a:before{ height:34px; }
	.seminar-icon > a:before{ height:34px; }
	.menu-icon > button:before{ height:34px; }
	.bulb-icon > button:before{height:34px;}
	.report-icon > a:before{height:34px;}
	.movie-icon > a:before{ height:34px; }

	header > nav > div > ul .contact a{ padding:3px 20px!important; border:none;padding:0;font-size:2.4rem;border-radius:0; }
	header > nav > div > ul .contact a:before{
		content:"";
		width:30px;
		height:34px;
		margin-right:15px;
		display:inline-block;
		background:url(../img/contact.svg) 100% / 100% no-repeat;
		vertical-align:middle;
	}
	header > nav > div > ul .contact a:hover:before{
		background:url(../img/contact-white.svg) 100% / 100% no-repeat;
	}

	header > nav > div > ul > li > a:after,
	header > nav > div > ul:nth-of-type(2) > .contact a:after{
		content:"";
		width:16px;
		height:18px;
		display:block;
		background:url(../img/arrow-green.svg) 100% / 100% no-repeat;
		position:absolute;
		right:0;
		top:50%;
		transform:translateY(-50%);
		-webkit-transform:translateY(-50%);
		-ms-transform:translateY(-50%);
	}
	header > nav .has-child:after{ content:none; }
	header > nav .child-menu{
		display:block!important;
		box-shadow:none;
		position:static;
		padding:20px 50px 20px 45px;
		background:transparent;
	}
	header > nav .child-menu a{ font-size:1.8rem; font-weight:500; }

	header > nav > div > ul > li > button,
	header > nav > div > ul > li > a {
		width:100%;
		height:60px;
		padding-bottom:20px;
		text-align:left;
		font-size:1.8rem;
		line-height:4.6rem;
		display:block;
		border-bottom:1px solid #555!important;
	}
	header > nav > div > .sp-only ul{ width:100%; display:flex; margin-top:80px; }
	header > nav > div > .sp-only ul > li{ margin-top:0; }
	header > nav > div > .sp-only ul > li + li{ margin-left:40px; }
	header > nav > div > .sp-only ul a{ padding:0; color:#666666; border:none; border-radius:0; letter-spacing:0.06em; }
	header > nav > div > .sp-only ul .outside:after{ transform:none; position:static; }

	/*メニューオープン時*/
	header .mainmenu.open{ display:block; }
	header .mainmenu.open .mainmenu-wrap{
		transition:all .3s ease;
		transform:translateX(0);
	}
	/* オーバーレイ */
	#overlay{ display:none; }
	#overlay.show{
		display:block;
		position:fixed;
		top:0; left:0;
		width:100vw;
		height:100vh;
		background:rgba(0, 0, 0, 0.4);
		z-index:10;
	}
	header > nav, header > nav > div > ul:first-of-type{ display:block; }
	header > nav .contact a{ padding-bottom:0!important; }
	header > nav .contact a:after{ right:20px!important; }
	.sp-only .mainichi-logo{ margin:40px 0 0; }
}


@media print,screen and (max-width:750px){
	header .mainmenu .mainmenu-wrap { padding:40px 20px 100px; }
	header > nav > div > .sp-only ul{margin-top: 30px;}
	header > nav > div > .sp-only ul li + li{margin-left: 30px;}
}

/*===================================
提携先
===================================*/
.partnerArea{ width:1300px; margin:0 auto; padding:100px 0; }
.partnerArea h2{ text-align:center; }
.partnerArea ul{ display:flex; flex-wrap:wrap; }
.partnerArea ul li{ width:calc((100% - 160px) / 3); margin-right:80px; margin-bottom:40px; border-bottom:1px solid #555555; }
.partnerArea ul li a{padding-bottom:20px;font-weight:700;color:#444444;display:flex;justify-content:space-between;align-items:center;}
.partnerArea ul li a:hover{color:#158413;text-decoration:none;}
.partnerArea ul li:nth-of-type(3n){ margin-right:0; }

@media print,screen and (max-width:1440px){
	.partnerArea{ width:1200px; }
	.partnerArea ul li{
		width:calc((100% - 80px) / 3);
		margin-right:40px;
		margin-bottom:20px;
	}
}
@media print,screen and (max-width:1260px){
	.partnerArea{ width:100%; padding:70px 20px; }
	.partnerArea ul li{
		width:calc((100% - 40px) / 2);
		margin-right:40px;
	}
	.partnerArea ul li:nth-of-type(3n){ margin-right:auto; }
	.partnerArea ul li:nth-of-type(2n){ margin-right:0; }
}
@media print,screen and (max-width:900px){
	.partnerArea ul{ display:block; }
	.partnerArea ul li{ width:100%; margin-right:0; }
}

/*===================================
お問い合わせ
===================================*/
.contactArea{ background:#f0f5f0; }
.contactArea > div{ width:1300px; margin:0 auto; padding:100px 0; position:relative; }
.contactArea h2{
	position:relative;
	padding-bottom:30px;
	margin-bottom:0;
}
.contactArea h2:after{
	content:"";
	width:546px;
	height:300px;
	display:block;
	background:url(../img/advisers.png) 100% / 100% no-repeat;
	position:absolute;
	right:0;
	bottom:0;
	z-index:0;
}

.contactArea > div > section{padding:50px;display:flex;border-radius:15px;background:#db6d12;z-index:1;position:relative;}
.contactArea > div > section > div{ width:calc((100% - 80px) / 2); }
.contactArea > div > section > div + div{ margin-left:80px; }
.contactArea > div > section h3{margin-bottom:25px;color:#fff;font-size:2.4rem;letter-spacing:0.06em;font-weight:700;}

.contactArea > div > section > div ul li{margin-bottom:20px; }
.contactArea > div > section > div ul li a{
	padding:20px;
	display:block;
	color:#333333;
	border-radius:8px;
	letter-spacing:0.04em;
	background:#fff;
	position:relative;
}
.contactArea .tel ul li a{
	font-size:3.4rem;
	font-weight:600;
	font-family:'Montserrat';
}
.contactArea .tel ul li a:before{
	content:"";
	width:30px;
	height:32px;
	display:inline-block;
	margin-right:20px;
	vertical-align:middle;
	background:url(../img/tel.svg) 100% / 100% no-repeat;
}
.contactArea .mail ul li a{
	font-size:2.4rem;
	font-weight:700;
}
.contactArea .mail ul li a:before{
	content:"";
	width:33px;
	height:34px;
	display:inline-block;
	margin-right:20px;
	vertical-align:middle;
	background:url(../img/mail.svg) 100% / 100% no-repeat;
}
.contactArea div ul li a:after{
	content:"";
	width:20px;
	height:22px;
	display:inline-block;
	background:url(../img/arrow-orange.svg) 100% / 100% no-repeat;
	position:absolute;
	right:20px;
	top:50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
}
.contactArea div ul li a:hover{ color:#db6d12; text-decoration:none; }
.contactArea div ul li a:hover:after{
	animation:arrowmove .5s cubic-bezier(0.16, 1, 0.3, 1) 0s normal;
}
@keyframes arrowmove{
	0%,100%{
		opacity:1;
		translate:0 0;
	}

	50%{
		opacity:0;
		translate:.8rem 0;
	}

	50.1%{
		opacity:0;
		translate:-0.8rem 0;
	}
}

@media print,screen and (max-width:1400px){
	.contactArea > div{ width:1200px; }
	.contactArea h2:after{
		width:500px;
		height:274px;
	}
}
@media print,screen and (max-width:1240px){
	.contactArea > div{ width:100%; padding:70px 20px; }
	.contactArea h2:after{
		width:416px;
		height:228px;
	}
	.contactArea > div > section > div + div {
		margin-left:20px;
	}
	.contactArea > div > section > div {
		width:calc((100% - 20px) / 2);
	}
}
@media print,screen and (max-width:1000px){
	.contactArea h2:after{
		max-width:356px;
		width:100%;
		height:196px;
		margin:30px auto 0;
		position:static;
		background-position:bottom;
	}
	.contactArea h2{ padding-bottom:0; }

	.contactArea > div > section{ display:block; padding:30px; }
	.contactArea > div > section > div { width:100%; }
	.contactArea > div > section > div + div{ margin-left:0; }
	.contactArea .mail ul li a {
		font-size:2rem;
		display:flex;
		padding-right:40px;
		align-items:center;
	}
	.contactArea .tel ul li a{
		font-size:2.6rem;
		display:flex;
		padding-right:40px;
		align-items:center;
	}
	.contactArea .mail ul li a:before {
		width:26px;
		height:24px;
		margin-right:10px;
	}
	.contactArea .tel ul li a:before {
		width:22px;
		height:24px;
		margin-right:10px;
	}
	.contactArea div ul li a:after{
		width:14px;
		height:16px;
	}
}
@media print,screen and (max-width:750px){
	.contactArea > div > section h3{ font-size:2rem; }
}
@media print,screen and (max-width:400px){
	.contactArea .mail ul li a {
		font-size:1.6rem;
	}
	.contactArea .tel ul li a{
		font-size:2rem;
	}
}
/*===================================
ぺージトップ
===================================*/
#pagetopBtn{
	right:15px;
	z-index:10;
}
#pagetopBtn a{color:#158413;font-weight:500;position:relative;transition:all .3s ease;font-size:1.6rem;}
#pagetopBtn:hover a{ text-decoration:none; }


#pagetopBtn a:before{
	content:"";
	width:12px;
	height:6px;
	margin:0 auto;
	padding:25px;
	display:block;
	border:2px solid #158413;
	border-radius:50%;
	transform:rotate(-90deg);
	background:url(../img/arrow2-green.svg) center / 8px 16px no-repeat #fff;
	transition:all .3s ease;
}
#pagetopBtn:hover a:before{
	background:url(../img/arrow2-white.svg) 24px center / 8px 16px no-repeat #158413;
}
@media print,screen and (max-width:900px){
	.event-detail #pagetopBtn.move{
		margin-bottom:40px;
	}
	.event-detail #pagetopBtn.stop{
		margin-bottom:0!important;
	}
}

/*===================================
フッター
===================================*/
footer{
	padding:60px 70px 100px;
	display:flex;
	justify-content:space-between;
}
footer .logo{ margin-bottom:30px; }

footer > nav{ width:950px; display:flex; flex-direction:column; }
footer > nav > div{margin-top:60px;display:flex;justify-content:end;}
footer > nav > div > ul{
	width:calc((100% - 90px) / 4);
	margin-right:30px;
}
footer > nav > div > ul:last-of-type{ margin-right:0; }
footer > nav > div > ul > li{ margin-bottom:25px; }
footer > nav > div > ul > li > a,
footer > nav > div > ul > li > p{ width:100%; display:block; padding-bottom:10px; border-bottom:1px solid #555555;color:#333333; position:relative; font-weight:700; }
footer > nav > div > ul > li > a{ padding-right:15px; }

footer > nav > div > ul > li > a:after{
	content:"";
	width:10px;
	height:11px;
	display:block;
	background:url(../img/arrow-green.svg) 100% / 100% no-repeat;
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
}

footer a:hover{ text-decoration:none; }

footer > nav > div > ul > li > a:hover:after{ animation:arrowmove .5s cubic-bezier(0.16, 1, 0.3, 1) 0s normal; }

footer > nav > div .sub-menu{ margin-top:20px; }
footer > nav > div > ul > li > ul > li + li{ margin-top:10px; }
footer > nav > ul{ display:flex; margin-top:auto; justify-content:end; }
footer > nav > ul > li + li{ margin-left:40px; }
footer > nav > ul a{ color:#666666; letter-spacing:0.06em; font-weight:500; }
footer address{ margin-bottom:0; font-style:normal; }
footer > div .outside{ font-weight:500; }

footer .line-banner{margin-top: 20px;margin-bottom: 30px;text-align:right;}
footer .line-banner img{ max-width:320px; 
}

.copy{ padding:0 20px; color:#666666; text-align:center; margin-bottom:40px; letter-spacing:0.06em; }
.copy small{ font-size:1.6rem; line-height:2.4rem; }

@media print,screen and (max-width:1400px){
	footer{
		padding:60px 20px 100px;
	}
	footer .logo img{ width:200px; }
	footer > div{ width:27%; }
	footer > nav{ width:70%; }
}
@media print,screen and (max-width:900px){
	footer{
		display:block;
	}
	footer > nav > div > ul {
		width:calc((100% - 60px) / 4);
		margin-right:20px;
	}
	footer > div,
	footer > nav > div > ul,
	footer > nav{ width:100%; }
	footer > nav > div{ display:block; margin-top:30px; margin-bottom:0;}
}
@media print,screen and (max-width:750px){
	footer > nav > ul > li + li{ margin-left:30px; }
	.copy { text-align:left; }
	.copy small{ font-size:1.4rem; }
}


/*セミナー*/
.event-title,
.blog-title{ margin-top:10px; font-size:2rem; font-weight:700; }

.blog-maintext{
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
	margin-top:5px;
}
.event-date,
.blog-date{ font-size:1.7rem; font-weight:500; margin-right:15px; }

/*カテゴリー*/
.category{
	min-width:135px;
	padding:0 10px;
	display:inline-block;
	color:#fff;
	font-size:1.4rem;
	min-height:25px;
	line-height:2.5rem;
	text-align:center;
	border-radius:50px;
	font-weight:500;
	background:#555;
	transition:all .3s ease;
}

.category + .category{ margin-left:5px; }
.category a{ color:#fff; }

.category.endlife-plane,
.category.endlife{ background:#4f56ad; }

.category.money{ background:#bd5a02; }

.category.hobby-healthlife,
.category.life{ background:#d5386d; }

.category.news{ background:#158413; }
