@charset "utf-8";
/* CSS Document */

body {
	overflow-x: hidden;
	margin: 0;
	padding: 0;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 500; 
	font-style: normal;
	-webkit-overflow-scrolling: touch;
	-moz-overflow-scrolling: touch;
	-ms-overflow-scrolling: touch;
	overflow-scrolling: touch;
	color: #000;
    -webkit-text-size-adjust: 100%;
}

div { box-sizing: border-box; }

img {
	margin: 0;
	vertical-align: bottom;
	pointer-events: none;
}

figure { margin: 0; }

h1,h2,h3,h4 { margin: 0; }
p { margin: 0; line-height: 2em; }

#content { overflow-x: hidden; }

.fade { animation: fadein 3s forwards; }

@keyframes fadein {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

/*--- 段落 ---*/
.br-sp { display: none; }
.br-sp-iphone { display: none; }
.br-pc { display: block; }



/*--- header ---*/
header { display: flex; justify-content: space-between; align-items: center; padding-top: 30px; position: absolute; z-index: 100; width: 100%; }
header h1 { width: 300px; margin-left: 50px; }



/*--- slide ---*/
#vegas {
    width: 100%;
    height: 100vh;
	margin: auto;
	position: relative;
}
#vegas .bg { background-color: rgba(0,0,0,0.2); width: 100%; height: 100%; }
#vegas .caption {
	position: absolute;
	bottom: 5%;
    left: 5%;
	/*transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);*/
	/*font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 600;
	font-style: normal;*/
	font-size: 10em;
	line-height: 1.0em;
	color: #fff;
	font-family: ff-market-web, sans-serif;
	font-weight: 400;
	font-style: normal;
}



/*--- scroll ---*/
.scroll-Block { position: absolute; bottom: 3rem; right: 0px; z-index: 10; }
.scroll-Block .Txt {
    display: block;
    font-size: .8em;
	font-weight: bold;
    line-height: 1;
	position: relative;
	bottom: 1.7rem;
	right: 0;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.scroll-Block .Txt a { color: #fff; text-decoration: none; letter-spacing: .1em; }
.scroll-Block .Line {
    position: relative;
    margin: 50px 0 0 55px;
    width: 2px;
    height: 60px;
    overflow: hidden;
    z-index: 10;
}
.scroll-Block .Line:after, .scroll-Block .Line:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 2px;
    height: 100%;
}
.scroll-Block .Line:before {
    background: #FFF;
    z-index: 10;
    -webkit-animation: scroll 2s infinite normal;
    animation: scroll 2s infinite normal;
}
.scroll-Block .Line:after {
    background: transparent;
}

@-webkit-keyframes scroll {
	0% {
		-webkit-transform: translate3d(0,-100%,0);
	}
	15% {
		-webkit-transform: translate3d(0,-98%,0);
	}
	85% {
		-webkit-transform: translate3d(0,98%,0);
	}
	100% {
		-webkit-transform: translate3d(0,100%,0);
	}
}



/*--- global-menu ---*/
ul.global-navigation__menu { width: 790px; max-width: 790px; margin-right: 50px; padding: 0; display: flex; display: -webkit-flex; justify-content: space-between; }
ul.global-navigation__menu li { 
    padding: 15px 0;
    list-style: none; 
    position: relative;
    transition: background 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
ul.global-navigation__menu li a { display: block; color: #fff; font-weight: 600; text-decoration: none; transition: .4s; letter-spacing: .1em; }
ul.global-navigation__menu li a:hover { color: #0cb59b; }
ul.global-navigation__menu li a:after {
	position: absolute;
	bottom: 5px;
	left: 0;
	content: '';
	width: 100%;
	height: 3px;
	background: #0cb59b;
	transform: scale(0,1);
	transform-origin: left top;
	transition: transform .3s;
}
ul.global-navigation__menu li a:hover::after { transform: scale(1,1); }
ul.global-navigation__menu li a span.small { color: #111; font-size: 60%; display: block; transition: .4s; }
ul.global-navigation__menu li a:hover span.small { color: #0cb59b; }

#sp-button { display: none; }
#menu { display: none; }



/*--- top_content01 ---*/
#top_content01 { width: 100%; margin: 60px 0 0; padding: 0; position: relative; overflow: hidden; }
#top_content01 .inner {
	width: 90%;
	max-width: 1300px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 60px 0;
	position: relative;
	color: #000;
	background: rgba(255,255,255,.9);
	z-index: 5;
}
#top_content01 .inner figure { width: 23%; }
#top_content01 .inner .top-copy-cont { width: 70%; }
#top_content01 .inner h1 {
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 3.5em;
	line-height: 1.3em;
	letter-spacing: .05em;
	margin-bottom: 30px;
}
#top_content01 .inner p { text-align: justify; }

/*--- top_content02 ---*/
#top_content02 { width: 100%; margin: 40px 0 0; padding: 0; position: relative; }
#top_content02 .inner {
	width: 90%;
	max-width: 1300px;
	margin: 0 auto;
	margin-bottom: -150px;
	padding: 2em 3em;
	position: relative;
	color: #000;
	background: rgba(255,255,255,1);
	/*box-shadow: 0 9px 31px rgba(2,98,120,.2);*/
	border-radius: 10px;
	z-index: 100;
}
#top_content02 .inner h2 {
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 2.5em;
	line-height: 1.3em;
	padding-bottom: 40px;
	margin-bottom: 50px;
	display: flex;
	align-items: center;
	position: relative;
}
#top_content02 .inner h2 span { padding-bottom: 5px; margin-right: 30px; line-height: 1em; letter-spacing: .1em; }
#top_content02 .inner h2 small { font-size: .5em; line-height: 1em; letter-spacing: .1em; }
#top_content02 .inner h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100px;
	height: 3px;
	background: #249d57;
}

/*---about_content---*/
#about_content { 
    width: 100%;
    margin: 60px 0 0; 
    padding: 0; 
    position: relative;
}
#about_content .inner {
	width: 90%;
	max-width: 1300px;
	margin: 0 auto;
	position: relative;
	color: #000;
	background: rgba(255,255,255,1);
	/*box-shadow: 0 9px 31px rgba(2,98,120,.2);*/
	border-radius: 10px;
	z-index: 100;
}

#about_content .inner h2 {
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 2.5em;
	line-height: 1.3em;
	padding-bottom: 40px;
	margin-bottom: 50px;
	display: flex;
	align-items: center;
	position: relative;
}
#about_content .inner h2 span { padding-bottom: 5px; margin-right: 30px; line-height: 1em; letter-spacing: .1em; }
#about_content .inner h2 small { font-size: .5em; line-height: 1em; letter-spacing: .1em; }
#about_content .inner h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100px;
	height: 3px;
	background: #249d57;
}

.about_text01 h3{
    font-size: 2.0em;
}

.about_text01 ul{
    list-style: none;
    padding: 0px;
}

.about_text01 li{
    margin-top: 26px;
}
.about_img02{
    width: 100%;
    border: 2px solid #249d57;
}

.about_img02 img{
    width: 100%;
}

.about_img02_sp{
    display: none;
}

.about_text03{
    margin-top: 60px;
}

.about_title01{
    font-size: 1.4em;
    margin: 0;
    color: #249d57;
}

.about_title01::before{
    content: "■";
    padding-right: 10px;
}

.about_title02{
    font-size: 1.4em;
    margin: 0 0 10px 0;
}

.about_text02{
    margin-bottom: 1.1em;
}

/*テーブル*/
.about_text01 table{
    width: 100%;
    border-collapse: collapse;
    line-height: 1.5;
    background: #F7F7F7;
    margin-bottom: 40px;
}

.about_text01 tr{
    border-collapse: collapse;
    line-height: 1.5;
    width: 100%;
}

.about_text01 th{
    border-collapse: collapse;
    border: 1px solid #249d57;
    line-height: 2;
    background: #249d57;
    color: #FFFFFF;
    width: 5%;
    font-size: 1.1em;
}

.about_text01 td{
    padding-left: 10px;
    font-weight: bold;
}

.table03{
    margin-top: 10px;
}

/*ページ内メニュー*/

.about_menu ul{
    list-style: none;
    display: flex;
    justify-content: space-around;
    text-align: center;
    font-weight: bold;
    padding: 0;
}

.about_menu li{
    list-style: none;
    /*background: #249d57;*/
    border: solid 1px #249d57;
    width: calc(16.66666666666667% - 10px);
    color: #249d57;
    padding: 10px 0;
}

.about_btn a{
    display: block;
    width: 100%;
    height: 100%;
    color: #249d57;
    text-decoration: none;
    
}

.about_btn01{
    background: #249d57;
    color: #FFFFFF;
}

.about_btn01 a{
    background: #249d57;
    color: #FFFFFF;
    text-decoration: none;
}

.about_menu a:hover{
    background: #249d57;
    color: #FFFFFF;
}

.about_menu li:hover{
    background: #249d57;
    color: #FFFFFF;
}

ul.list {
	list-style: none;
	padding: 0;
    overflow: hidden;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
}

/*会長挨拶*/
.about_flex{
    display: flex;
    justify-content: flex-start;
}

.about_img01{
    width: 25%;
}

.about_img01 img{
    width: 100%;
}

.about_text01_flex{
    width: 75%;
    padding-left: 25px;
}

.about_name{
    margin-top: 10px;
    background: #F5F5F5;
    font-weight: bold;
    padding: 20px;
}

/*Asubi planningリンク*/

.link_box{
    width: 100%;
    margin-top: 50px;
}

.link_box a{
    font-size: 1.3em;
    text-decoration: none;
    color: #249d57;
}

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

.link_title{
    font-size: 1.3em;
    margin: 0 0 5px 0;
}

.link_title::before{
    content: "▼";
    padding-right: 5px;
}

/*二行目 中央揃えの左詰め*/
ul.list::after{
    content:"";
    display: block;
    width:30%;
}

ul.list li { width: 30%; position: relative; }
ul.list li a { display: block; color: #222; text-decoration: none; transition: .5s; }
ul.list li a:hover { opacity: 0.6; }
ul.list li .date01 { display: block; }
ul.list li .thm-Box { width: 100%; }
ul.list li .thm-Box img { width: 360px; height: 360px; object-fit: cover; }
ul.list li .tit-Box { display: block; font-size: 1.1em; font-weight: 700; margin: 20px 0 0; line-height: 1.8em; }
ul.list li .date02 { display: block; }
ul.list li .day { display: block; margin: 20px 0; font-size: .8em; font-weight: 700; letter-spacing: .1em; }
ul.list li .cate01 { position: absolute; color: #fff; font-size: .8em; line-height: 2em; padding: 0 1em; width: 200px; text-align: center; font-weight: 700; background: #249d57; }
ul.list li .cate02 { position: absolute; color: #fff; font-size: .8em; line-height: 2em; padding: 0 1em; display: inline-block; text-align: center; font-weight: 700; background: #0b4e49; }
ul.list li .cate03 { position: absolute; color: #fff; font-size: .8em; line-height: 2em; padding: 0 1em; display: inline-block; text-align: center; font-weight: 700; background: #249d57; }

/*--- top_content03 ---*/
#top_content03 { width: 100%; margin: 40px 0 0; padding: 150px 0 40px 0; position: relative; overflow: hidden; background: #ebebeb; }
#top_content03 .inner {
	width: 90%;
	max-width: 1300px;
	margin: 0 auto;
	padding: 2em 3em;
	position: relative;
	color: #000;
	z-index: 5;
}
#top_content03 .inner h2 {
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 2.5em;
	line-height: 1.3em;
	padding-bottom: 40px;
	margin-bottom: 50px;
	display: flex;
	align-items: center;
	position: relative;
}
#top_content03 .inner h2 span { padding-bottom: 5px; margin-right: 30px; line-height: 1em; letter-spacing: .1em; }
#top_content03 .inner h2 small { font-size: .5em; line-height: 1em; letter-spacing: .1em; }
#top_content03 .inner h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100px;
	height: 3px;
	background: #0b4e49;
}

/*--- top_content04 ---*/
#top_content04 { width: 100%; padding: 40px 0; position: relative; overflow: hidden; }
#top_content04 .inner {
	width: 90%;
	max-width: 1300px;
	margin: 0 auto;
	padding: 2em 3em;
	position: relative;
	color: #000;
	z-index: 5;
}
#top_content04 .inner h2 {
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 2.5em;
	line-height: 1.3em;
	padding-bottom: 40px;
	margin-bottom: 50px;
	display: flex;
	align-items: center;
	position: relative;
}
#top_content04 .inner h2 span { padding-bottom: 5px; margin-right: 30px; line-height: 1em; letter-spacing: .1em; }
#top_content04 .inner h2 small { font-size: .5em; line-height: 1em; letter-spacing: .1em; }
#top_content04 .inner h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100px;
	height: 3px;
	background: #249d57;
}



/*--- footer ---*/
footer { background: #14191d; padding: 80px 0; }
footer .inner { width: 90%; max-width: 1300px; margin: 0 auto; }
footer .inner .logo { width: 250px; margin: 0 auto 50px auto; }
footer .copyright { font-size: .7em; color: #fff; text-align: center; letter-spacing: .1em; }

ul.common-footer__glo-menu { width: 90%; max-width: 1000px; margin: 0 auto 50px auto; padding: 0; list-style: none; display: flex; justify-content: space-between; }
ul.common-footer__glo-menu li a { color: #fff; text-decoration: none; transition: .5s; }
ul.common-footer__glo-menu li a:hover { color: #0cb59b; }



/*--- content ---*/
header.content-header { position: relative; }

header.content-header ul.global-navigation__menu { width: 790px; max-width: 790px; margin-right: 50px; padding: 0; display: flex; display: -webkit-flex; justify-content: space-between; }
header.content-header ul.global-navigation__menu li { 
    padding: 15px 0;
    list-style: none; 
    position: relative;
    transition: background 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
header.content-header ul.global-navigation__menu li a { display: block; color: #111; font-weight: 600; text-decoration: none; transition: .4s; letter-spacing: .1em; }
header.content-header ul.global-navigation__menu li a:hover { color: #0cb59b; }
header.content-header ul.global-navigation__menu li a:after {
	position: absolute;
	bottom: 5px;
	left: 0;
	content: '';
	width: 100%;
	height: 3px;
	background: #0cb59b;
	transform: scale(0,1);
	transform-origin: left top;
	transition: transform .3s;
}
header.content-header ul.global-navigation__menu li a:hover::after { transform: scale(1,1); }
header.content-header ul.global-navigation__menu li a span.small { color: #111; font-size: 60%; display: block; transition: .4s; }
header.content-header ul.global-navigation__menu li a:hover span.small { color: #0cb59b; }

#content_Box { width: 100%; margin: 80px 0 150px 0; padding: 0; }
#content_Box .inner { width: 90%; max-width: 1300px; margin: 0 auto; position: relative; }

#content_Box .inner .page-head { padding: 10px 0 60px; display: flex; flex-wrap: wrap; align-items: center; }
#content_Box .inner .page-head h1 { font-family: dnp-shuei-mincho-pr6, sans-serif; font-weight: 600; font-style: normal; font-size: 5em; line-height: 1em; }
#content_Box .inner .page-head small { font-family: dnp-shuei-mincho-pr6, sans-serif; font-weight: 600; font-size: 1.5em; margin-left: 50px; padding-top: 10px; }

#content_Box .inner .page-head .pan { font-size: .9em; letter-spacing: .1em; padding-top: 20px; margin-left: auto; }
#content_Box .inner .page-head .pan span { margin: 0 10px; }
#content_Box .inner .page-head .pan span:last-child { margin-right: 0; }
#content_Box .inner .page-head .pan a { position: relative; padding-bottom: 10px; color: #111; text-decoration: none; }
#content_Box .inner .page-head .pan a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: #111;
}

#content_Box .inner .topics-Box {}
#content_Box .inner .topics-Box .category { display: flex; margin-bottom: 40px; }
#content_Box .inner .topics-Box .category div:nth-child(1) { margin-right: 30px; letter-spacing: .1em; }
#content_Box .inner .topics-Box .category div:nth-child(2) { padding: .15em 1em 0 1em; font-size: .9em; font-weight: 700; color: #fff; background: #249d57; }

#content_Box .inner .topics-Box .tit { font-size: 1.7em; margin: 20px 0; border-bottom:solid 3px #249d57;border-top:solid 3px #249d57;padding: 0 0 0 10px;}
#content_Box .inner .topics-Box p { margin-bottom: 10px; }
#content_Box .inner .topics-Box .message {  margin-bottom: 40px; }


#content_Box .inner .privacy {}
#content_Box .inner .privacy h3 { font-size: 1.5em; margin-bottom: 10px; }
#content_Box .inner .privacy .txt01 { margin-bottom: 50px; }
#content_Box .inner .privacy .txt02 { margin-bottom: 10px; }
#content_Box .inner .privacy ul { margin-bottom: 30px; }

.img-Box{ display: flex; flex-wrap: wrap; justify-content: flex-start; }
.topics_img { width: 24%; padding-right: 14px;　}
.topics_img:last-child{ padding: 0;}


/*ページネーションCSS*/
.okedit_pagination{ margin-top: 90px; }
.okedit_pagination td{background: #E0E0E0; border: 0.5px solid #FBFBFB; padding: 0px;  width: 50px; height: 50px; line-height: 3.2em; text-align: center; vertical-align:middle; border-collapse: separate; border-spacing: 5px;  }
/*.okedit_pagination td:hover{ background: #249d57;color: #FFFFFF; }*/
.okedit_pagination a{background:#FFFFFF; border: 0.5px solid #888888; color: #000000; display: block; width:100%; height:100%; }
.okedit_pagination a:hover{ background: #249d57; color: #FFFFFF; }
td a{ text-decoration: none; }

.list li{padding:20px 0 ; }


/*seminar*/
.seminar_box{margin-bottom: 50px;}
.seminar_box dl{display: flex; flex-flow: row wrap; width: 100%; }
.seminar_content dt{flex-basis: 15%;padding: 20px;background-color: #f1f1f1;
border-bottom: 1px solid #ccc;}
.seminar_content dd{margin-left: 0px; flex-basis: 70%; padding: 20px; background-color: #fff; border-bottom: 1px solid #ccc;}
