@charset "UTF-8";

/*------------------------
メイン
------------------------*/
.main {
	margin: 80px 0 130px;
	position: relative;
	padding: 50px 0 0;
	min-height: 420px;
}

.background-green {
	position: absolute;
	top: 30px;
	left: 20%;
	background: #86B81B;
	width: 80%;
	height: 480px;
	z-index: -99;
}

.background-white {
	position: absolute;
	top: 0;
	left: 0%;
	background: rgba(255, 255, 255, 0.73);
	width: 60%;
	height: 370px;
	z-index: -1;
}

.mainbox {
	display: flex;
	position: relative;
}

.modal {
	z-index: 10;
}

.mainbox .pager-area {
	position: absolute;
	left: 16rem;
	bottom: 65px;
	width: 80px;
	z-index: 999
}

.mainbox .pagination-area {
	position: absolute;
	left: 0;
	bottom: 1px;
	width: 100%;
}

.mainbox .swiper-pagination-progressbar {
	background-color: #707070;
}

.main .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	background-color: #86B81B;
}

.main .swiper-button-prev4::after,
.main .swiper-button-next4::after {
	color: #86B81B;
	font-size: 24px !important;
	font-weight: 100;
	background: #000;
	border: 1px solid #707070;
	width: 40px;
	height: 40px;
	display: block;
	box-sizing: border-box;
	padding: 8px 16px;
}

.mainbox a {
	position: relative;
	display: block;
	width: 30%;
}

.mainbox a img {
	width: 100%;
}

.mainbox a::after,
.mainbox a img {
	transition: all 0.4s;
}

.slider .slick-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.slider .slick-arrow {
	width: 60px;
	height: 60px;
	background-color: #000;
	cursor: pointer;
	border: 1px solid #FFF;
	;
	outline: none;
	font-size: 0;
	position: absolute;
	top: 180px;
	z-index: 1;
	/*filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));*/
}

.slider .slick-arrow::before {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	border: 1px solid #86B81B;
	border-width: 3px 3px 0 0;
	position: absolute;
	top: 24px;
	transform: rotate(45deg);
}

.slider .slick-next {
	right: 0;
	left: 680px;
	margin: auto;
}

.slider .slick-prev {
	right: 680px;
	left: 0;
	margin: auto;
}

.slider .slick-next::before {
	left: 20px;
}

.slider .slick-prev::before {
	border-width: 0 0 3px 3px;
	right: 22px;
}

.dots-2 .slick-dots {
	text-align: center;
	padding: 7px 0 0;
}

.dots-2 .slick-dots li {
	display: inline-block;
}

.dots-2 .slick-dots button {
	display: block;
	width: 10px;
	height: 10px;
	margin: 6px;
	font-size: 0;
	padding: 0;
	border: 0;
	outline: none;
	cursor: pointer;
	background: #FFF;
}

.dots-2 .slick-dots .slick-active button {
	background: #000;
}

.mainbox a:hover img {
	filter: blur(5px);
	display: block;
	position: relative;
}

.mainbox a:hover::after {
	color: #fff;
	content: "Read More";
	position: absolute;
	font-size: 32px;
	font-weight: 900;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition-duration: 0.2s;
	opacity: 0.85;
	text-align: center;


}

.swiper-pagination-main4 {
	text-align: center;
	padding: 20px 0 0;
}

.swiper-pagination-bullet {
	background-color: #FFF;
	height: 15px;
	width: 15px;
	border-radius: 0px;
}

/*------------------------
ピックアップ
------------------------*/
.pickup {
	width: 100VW;
	display: flex;
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
}

.pickup h2 {
	padding: 0 30px 0 16rem;
	background: #000;
	z-index: 3;
	font-size: 13px;
	color: #B1B1B1;
	font-weight: normal;
	/*border-right: 1px solid #707070;*/
	margin-right: 20px;
	margin-bottom: 50px;
}

.pickup h2 span {
	display: block;
	margin: 10px 0 0;
}

.pickup a {
	display: block;
}

.pickup .swiper-wrapper a {
	width: 25%;
	padding: 0 40px 10px 20px;
	box-sizing: border-box;
	border-right: 1px solid #707070;
	margin-bottom: 0;
}

.pickup .swiper-wrapper a img {
	width: 100%;
}

.date {
	font-size: 13px;
}

.date span {
	font-weight: bold;
	background: #999;
	border-radius: 3px;
	padding: 3px 5px;
	display: inline-block;
	line-height: 1;
	font-size: 12px;
}

.date span.icon-program {
	background-color: #3746C9;
}

.date span.icon-media {
	background-color: #B42EE0;
}

.date span.icon-event {
	background-color: #FF8C07;
}

.date span.icon-leaguer {
	background-color: #1A9628;
}

.date span.icon-column {
	background-color: #007A66;
}

.pickup a p {
	overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
   	-webkit-line-clamp: 3;
	margin-bottom: 50px;
	min-height: 82px;
}

.pickup .pager-area {
	position: absolute;
	left: 16rem;
	bottom: 65px;
	width: 80px;
}

.pickup .pagination-area {
	position: absolute;
	left: 0;
	bottom: 1px;
	width: 100%;
}

.pickup .swiper-pagination-progressbar {
	background-color: #707070;
}

.pickup .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	background-color: #86B81B;
}

.pickup .swiper-button-prev::after,
.pickup .swiper-button-next::after {
	color: #86B81B;
	font-size: 30px !important;
	font-weight: 100;
}

/*------------------------
about
------------------------*/
.about {
	background: url(/img/top/bg-about.jpg) no-repeat;
	background-size: cover;
	padding-top: 140px;
}

.about-box {
	padding: 50px 90px 0 16rem;
	background: rgba(0, 0, 0, 1);
	width: 60%;
}

.about h2 {
	font-size: 13px;
	color: #B1B1B1;
	font-weight: normal;
	margin-bottom: 30px;
}

.about h3 {
	font-size: 25px;
	margin-bottom: 40px;
}

.about p {
	font-size: 17px;
	margin-bottom: 30px;
}

/*------------------------
information
------------------------*/
.information {
	padding: 100px 0 0 16rem;
	box-sizing: border-box;
	overflow: hidden;
	border-top: 1px solid #707070;
}

.information .info-box {
	display: flex;
	position: relative;
	margin: 0 0 50px;
}

.information .swiper-wrapper a {
	width: 25%;
	padding: 0 40px 20px 20px;
	box-sizing: border-box;
	border-right: 1px solid #707070;
}

.information .swiper-wrapper a img {
	width: 100%;
}

.information .pager-area {
	position: absolute;
	left: -11px;
	top: 150px;
	width: 80px;
}

.information .pagination-area {
	position: absolute;
	left: -16rem;
	bottom: 1px;
	width: calc(100% + 16rem);
}

.information .swiper-pagination-progressbar {
	background-color: #707070;
	height: 1px;
}

.information .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	background-color: #86B81B;
}


.information .event-box .swiper-button-prev2::after,
.information .event-box .swiper-button-next2::after,
.information .member-box .swiper-button-prev3::after,
.information .member-box .swiper-button-next3::after,
.information .column-box .swiper-button-prev6::after,
.information .column-box .swiper-button-next6::after {
	color: #86B81B;
	font-size: 30px !important;
	font-weight: 100;
}
.information .member-box .lm-title{
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2; /* 行数を指定 */
}

.information .more-btn2 {
	display: block;
	border: 1px solid #FFF;
	width: 125px;
	text-align: center;
	height: 36px;
	position: absolute;
	bottom: 100px;
	left: 0;
	line-height: 1.8;
	box-sizing: border-box;
}

.information .more-btn2 .arrow {
	display: inline-block;
	width: 35px;
	height: 35px;
	padding: 0px 0 0 0;
	border-right: 1px solid #FFF;
	font-size: 16px;
	color: #86B81B;
}

.information .more-btn2 .text {
	display: inline-block;
	height: 35px;
	width: 84px;
	box-sizing: border-box;
	padding: 0px 0 0 0;
	font-size: 14px;
}

.information h3 {
	font-size: 13px;
	color: #B1B1B1;
	font-weight: normal;
	background: #000;
	margin-right: 20px;
	margin-bottom: 50px;
	padding-right: 30px;
	width: 22%;
}

.information h3 span.abolition {
	color: #FFF;
	font-size: 30px;
}

.information a {
	display: block;
}

.information .swiper {
	padding: 0 0 50px;
	width: 78%;
}

/* 子要素が1個 */
.information .swiper-wrapper .swiper-slide:only-child {
	width: 29.76% !important;
	margin-right: 20px;
}

/* 子要素が2個 */
.information .swiper-wrapper .swiper-slide:first-child:nth-last-child(2),
.information .swiper-wrapper .swiper-slide:first-child:nth-last-child(2) ~ * {
	width: 29.825% !important;
	margin-right: 20px;
}

/* 子要素が3個 */
.information .swiper-wrapper .swiper-slide:first-child:nth-last-child(3),
.information .swiper-wrapper .swiper-slide:first-child:nth-last-child(3) ~ * {
	width: 29.825% !important;
	margin-right: 20px;
}

.contless {
	display: flex;
	position: relative;
}

.information .contless h3 {
	width: 47.45%;
}

.information .contless a {
	width: 50%;
	box-sizing: border-box;
	padding: 0 40px 20px 20px;
}

.information .contless a img {
	width: 100%;
}

.information .contless-box{
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.information .contless{
	margin-right: 8%;
	width: 92%;
}
.information .contless:first-child {
	border-right: 1px solid #707070;
}


/*------------------------
partner
------------------------*/
.partner {
	position: relative;
	padding: 100px 0 0;
	border-top: solid 1px #707070;
}

.partner-box {
	position: absolute;
	left: 16rem;
	top: 100px;
	width: 700px;
}

.partner h3 {
	font-size: 25px;
	margin-bottom: 40px;
}

.partner p {
	font-size: 17px;
	margin-bottom: 30px;
}

/*------------------------
日本地図
------------------------*/
.partner .map {
	padding: 100px 90px 0 16rem;
	width: 100%;
	max-width: calc(1200px + 16rem);
}

#jp_map {
	max-height: 640px;
	position: relative;
	list-style-type: none;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
	overflow: hidden;
}

#jp_map::before {
	content: '';
	display: block;
	padding: 80% 0 0;
}

#jp_map ul,
#jp_map li {
	display: block;
	list-style: none;
	margin: 0;
	padding: 0;
}

#jp_map a {
	display: block;
	font-weight: normal;
	text-decoration: none;
	box-sizing: border-box;
	border: solid #000 1px;
	float: none;
	font-size: 14px;
	line-height: 1;
	padding: 6px 0;
	text-align: center;
	position: absolute;
	margin: 0;
	text-decoration: none;
	color: #000;
}

#jp_map a:hover {
	opacity: .85;
	text-decoration: none;
}

#jp_map a span {
	display: block;
	margin: 0 auto;
	padding: 0;
	line-height: 1.1em;
	text-align: center;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

#jp_map .hokkaido a {
	background-color: #9CCB83;
}

#jp_map .tohoku a {
	background-color: #E2CF6E;
}

#jp_map .kanto a {
	background-color: #78C7DE;
}

#jp_map .chubu a {
	background-color: #9AB1E0;
}

#jp_map .kansai a {
	background-color: #C79DB4;
}

#jp_map .chugoku a {
	background-color: #A5C95C;
}

#jp_map .shikoku a {
	background-color: #E29E7E;
}

#jp_map .kyushu a {
	background-color: #E09595;
}

#jp_map .okinawa a {
	background-color: #E09595;
}

#jp_map li a {
	height: 12%;
	width: 7%;
}

#jp_map li.hokkaido a {
	top: 0;
	left: 79%;
	height: 20%;
	width: 21%;
}

#jp_map li.hokkaido a span {
	right: 0;
}

#jp_map li.hokkaido a::after {
	content: '';
	border: inherit inherit inherit;
	z-index: -1;
}

#jp_map li.aomori a {
	top: 21%;
	left: 79%;
	height: 8%;
	width: 21%;
	background-color: #707070;
}

#jp_map li.iwate a {
	top: 29%;
	left: 89.5%;
	height: 8%;
	width: 10.5%;
	background-color: #707070;
}

#jp_map li.akita a {
	top: 29%;
	left: 79%;
	height: 8%;
	width: 10.5%;
}

#jp_map li.miyagi a {
	top: 37%;
	left: 89.5%;
	height: 8%;
	width: 10.5%;
	background-color: #707070;
}

#jp_map li.yamagata a {
	top: 37%;
	left: 79%;
	height: 8%;
	width: 10.5%;
	background-color: #707070;
}

#jp_map li.fukushima a {
	top: 45%;
	left: 93%;
	height: 18%;
	background-color: #707070;
}

#jp_map li.ibaraki a {
	top: 63%;
	left: 93%;
	height: 18%;
	background-color: #707070;
}

#jp_map li.tochigi a {
	top: 57%;
	left: 86%;
	background-color: #707070;
}

#jp_map li.gunma a {
	top: 57%;
	left: 79%;
	background-color: #707070;
}

#jp_map li.saitama a {
	top: 69%;
	left: 86%;
	background-color: #707070;
}

#jp_map li.chiba a {
	top: 81%;
	left: 93%;
	height: 17%;
	background-color: #707070;
}

#jp_map li.tokyo a {
	top: 81%;
	left: 86%;
}

#jp_map li.kanagawa a {
	top: 81%;
	left: 79%;
}

#jp_map li.nigata a {
	top: 45%;
	left: 79%;
	width: 14%;
	background-color: #707070;
}

#jp_map li.toyama a {
	top: 45%;
	left: 72%;
	background-color: #707070;
}

#jp_map li.ishikawa a {
	top: 45%;
	left: 65%;
	height: 17%;
	background-color: #707070;
}

#jp_map li.fukui a {
	top: 50%;
	left: 58%;
	background-color: #707070;
}

#jp_map li.yamanashi a {
	top: 69%;
	left: 79%;
	background-color: #707070;
}

#jp_map li.nagano a {
	top: 57%;
	left: 72%;
	height: 24%;
	background-color: #707070;
}

#jp_map li.gifu a {
	top: 62%;
	left: 65%;
	height: 19%;
	background-color: #707070;
}

#jp_map li.shizuoka a {
	top: 81%;
	left: 72%;
	background-color: #707070;
}

#jp_map li.aichi a {
	top: 81%;
	left: 65%;
}

#jp_map li.mie a {
	top: 86%;
	left: 58%;
	background-color: #707070;
}

#jp_map li.shiga a {
	top: 62%;
	left: 58%;
	background-color: #707070;
}

#jp_map li.kyoto a {
	top: 56%;
	left: 51%;
	height: 18%;
	background-color: #707070;
}

#jp_map li.osaka a {
	top: 74%;
	left: 51%;
}

#jp_map li.hyogo a {
	top: 53%;
	left: 44%;
	height: 24%;
	background-color: #707070;
}

#jp_map li.nara a {
	top: 74%;
	left: 58%;
	background-color: #707070;
}

#jp_map li.wakayama a {
	top: 86%;
	left: 51%;
	background-color: #707070;
}

#jp_map li.tottori a {
	top: 53%;
	left: 37%;
	background-color: #707070;
}

#jp_map li.shimane a {
	top: 53%;
	left: 30%;
	background-color: #707070;
}

#jp_map li.okayama a {
	top: 65%;
	left: 37%;
	background-color: #707070;
}

#jp_map li.hiroshima a {
	top: 65%;
	left: 30%;
	background-color: #707070;
}

#jp_map li.yamaguchi a {
	top: 53%;
	left: 23%;
	height: 24%;
	background-color: #707070;
}

#jp_map li.tokushima a {
	top: 89.5%;
	left: 36.5%;
	height: 8%;
	width: 10.5%;
	background-color: #707070;
}

#jp_map li.kagawa a {
	top: 81.5%;
	left: 36.5%;
	height: 8%;
	width: 10.5%;
	background-color: #707070;
}

#jp_map li.ehime a {
	top: 81.5%;
	left: 26%;
	height: 8%;
	width: 10.5%;
	background-color: #707070;
}

#jp_map li.kochi a {
	top: 89.5%;
	left: 26%;
	height: 8%;
	width: 10.5%;
	background-color: #707070;
}

#jp_map li.fukuoka a {
	top: 55%;
	left: 15%;
	background-color: #707070;
}

#jp_map li.saga a {
	top: 55%;
	left: 8%;
	background-color: #707070;
}

#jp_map li.nagasaki a {
	top: 55%;
	left: 1%;
	height: 16%;
	background-color: #707070;
}

#jp_map li.kumamoto a {
	top: 67%;
	left: 8%;
	background-color: #707070;
}

#jp_map li.oita a {
	top: 67%;
	left: 15%;
	background-color: #707070;
}

#jp_map li.miyazaki a {
	top: 79%;
	left: 15%;
	background-color: #707070;
}

#jp_map li.kagoshima a {
	top: 79%;
	left: 8%;
	background-color: #707070;
}

#jp_map li.okinawa a {
	top: 88%;
	left: 0;
	background-color: #707070;
}

.modal__bg {
	position: fixed;
	z-index: 10009;
	top: 0;
	left: 0;
	width: 200%;
	height: 200%;
	background: rgba(0, 0, 0, 0.5);
	opacity: 0;
	/* 初期状態で非表示 */
	visibility: hidden;
	/* 初期状態で非表示 */
	transition: opacity .6s ease, visibility .6s ease;
}

.modal__bg.is-active {
	opacity: 1;
	/* 非表示を解除 */
	visibility: visible;
	/* 非表示を解除 */
}

.modal__inner {
	position: fixed;
	z-index: 10010;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: auto;
	padding: 80px 10px 0;
	opacity: 0;
	/* 初期状態で非表示 */
	visibility: hidden;
	/* 初期状態で非表示 */
	transition: opacity .6s ease, visibility .6s ease;
}

.modal__inner.is-active {
	opacity: 1;
	/* 非表示を解除 */
	visibility: visible;
	/* 非表示を解除 */
}

.modal-card {
	width: 90%;
	min-height: 80%;
	background: #000;
	border: 1px solid #707070;
	filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.4));
	border-radius: 0;
	padding: 16px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 24px;
	position: absolute;
	z-index: 1;
	transform: translate3d(0, 48px, 0);
	opacity: 0;
	/* 初期状態で非表示 */
	visibility: hidden;
	/* 初期状態で非表示 */
	transition: opacity .6s ease, visibility .6s ease, transform .3s ease-in-out;
}

.modal-card.is-active {
	position: relative;
	z-index: 50;
	opacity: 1;
	/* 非表示を解除 */
	visibility: visible;
	/* 非表示を解除 */
	transform: translate3d(0, 0, 0);
}

.modal-card__heading {
	margin: 0;
	font-size: 18px;
	line-height: 1.6;
	font-weight: bold;
	color: #FFF;
}

.modal-card__text {
	margin: 0;
	font-size: 16px;
	line-height: 1.6;
	color: #FFF;
}

.modal-card__close {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 16px;
	right: 13px;
}

.modal-card__close::before,
.modal-card__close::after {
	content: "";
	position: absolute;
	display: inline-block;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 3px;
	background: #FFF;
	cursor: pointer;
}

.modal-card__close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.modal-card__close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

#jp_map .modal-card a {
	border: none;
	position: relative;
	text-align: left;
}


#jp_map ul.partner-graph{
	width: 100%;
	text-align: center;
	color: #FFF;
	overflow: auto;
	height: 
}
#jp_map ul.partner-graph li{
	display: inline-block;
	margin: 20px 20px;
}
#jp_map ul.partner-graph li a{
	display: block;
	padding: 0 20px;
	width: 100%;
	height: 100%;
	color: #FFF;
	font-size: 16px
}
#jp_map ul.partner-graph li a:hover{
	color: #FF0;
}
#jp_map ul.partner-graph li i{
	color: #FFF;
	margin-right: 5px;
}
.modal-card__text{
	display: none;
}
.btn{
	margin: 50px auto;
	width: 240px;
}
/*------------------------
週次プログラム
------------------------*/
.program {
	border: 50px solid #86B81A;
	z-index: -1;
}

.program .program-box {
	padding-top: 80px;
	padding-left: calc(16rem - 50px);
	padding-right: calc(16rem - 50px);
}

.program .program-box2 {
	padding-top: 40px;
	padding-bottom: 80px;
	padding-left: calc(16rem - 50px);
	padding-right: calc(16rem - 50px);
}

.program .program-box2 a {
	margin: 0 auto;
}

.program a img {
	width: 100%;
}

.program-cont {
	width: calc(100% + 100px);
	margin: 0 -50px;
}

.program-box-swipe {
	display: flex;
}

.dots-3 .slick-dots {
	text-align: center;
	padding: 0px 0 0;
}

.dots-3 .slick-dots li {
	display: inline-block;
}

.dots-3 .slick-dots button {
	display: block;
	width: 10px;
	height: 10px;
	margin: 6px;
	font-size: 0;
	padding: 0;
	border: 0;
	outline: none;
	cursor: pointer;
	background: #FFF;
}

.dots-3 .slick-dots .slick-active button {
	background: #999;
}

.program .slider .slick-slide {
	max-width: 400px;
	height: auto;
	margin: 0 40px;
	position: relative;
	overflow: none;
	z-index: 99;
}

.program h2 {
	margin-bottom: 30px;
}

.program h3 {
	font-size: 25px;
	margin-bottom: 40px;
}

.program p {
	font-size: 17px;
	margin-bottom: 30px;
}

.program .slider .slick-slide p {
	font-size: 17px;
	margin-bottom: 0;
}

.program .slider .slick-slide h4 {
	font-size: 17px;
}

.program .slider .slick-slide p {
	font-size: 14px;
}

.program .slider .slick-arrow {
	top: 120px;
}

.program .slider .slick-prev {
	right: 480px;
}

.program .slider .slick-next {
	left: 480px;
}

/*------------------------
CONTACT
------------------------*/
.contact {
	background: #333;
	display: flex;
	border-top: 1px solid #707070;
	z-index: -1;
}

.contact .box {
	width: 50%;
	box-sizing: border-box;
	padding: 0 0;
}

.contact .box:first-child {
	border-right: 1px solid #707070;
}

.contact .box h2 {
	padding: 80px 90px 10px;
	border-bottom: 1px solid #707070;
}

.contact .box p {
	padding: 10px 90px 30px;
	border-bottom: 1px solid #707070;
	min-height: 205px;
}

.contact .box a {
	margin: 50px auto;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

画面サイズ 1024px以下

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
@media screen and (max-width: 1240px) {
	.partner-box {
		width: 500px;
	}
}

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

	/*=================================================
	padding-left
	=================================================*/
	.pickup h2 {
		padding: 0 30px 0 8rem;
	}

	.pickup .pager-area {
		left: 8rem;
	}

	.about-box {
		padding: 50px 40px 0 8rem;
	}

	.information {
		padding: 100px 0 0 8rem;
	}

	.partner .map {
		padding: 140px 90px 0 8rem;
		max-width: 100%;
	}

	.partner-box {
		left: 8rem;
		width: 500px;
	}

	.program .program-box,
	.program .program-box2 {
		padding-left: calc(8rem - 50px);
		padding-right: calc(8rem - 50px);
	}

}

@media screen and (max-width:1024px) {
	.information .contless-box {
		display: block;
	}

	.information .contless-box .contless {
		margin-bottm: 30px;
	}

	.information .contless-box .contless:first-child {
		border: none;
		border-bottom: 1px solid #707070;
		margin-bottom: 50px;
		padding-bottom: 50px;
	}

	.information .contless a {
		margin-right: 20px;
		width: 300px
	}
}

@media screen and (max-width:782px) {
	.partner-box {
		width: 400px;
	}

	.partner .map {
		padding: 200px 90px 0 8rem;
		max-width: 100%;
	}

	.information .contless a {
		width: 180px;
	}

	#jp_map {
		margin: 16px 0 0;
	}

	#jp_map::before {
		padding: 100% 0 0;
	}

	#jp_map li a {
		font-size: 12px;
		border-width: 1px;
	}

	#jp_map a {
		/*text-shadow:#fff 1px 0px, #fff -1px 0px, #fff 0px -1px, #fff 1px -1px, #fff -1px -1px, #fff 0px 1px, #fff 1px 1px, #fff -1px 1px;*/
		border-width: 1px;
		font-size: 12px;
	}

	#jp_map li.tokushima a,
	#jp_map li.kochi a {
		top: 88%;
	}

	#jp_map li.kagawa a,
	#jp_map li.ehime a {
		top: 80%;
	}
}

@media screen and (max-width:768px) {
	.pickup h2 {
		padding: 0 30px 0 4rem;
	}

	.pickup .pager-area {
		left: 4rem;
	}

	.about-box {
		padding: 38px 40px 0 4rem;
	}


	.partner .map {
		padding: 140px 90px 0 4rem;
		max-width: 100%;
	}

	.partner-box {
		left: 4rem;
		width: 500px;
	}

	.program .program-box,
	.program .program-box2 {
		padding-left: calc(4rem - 50px);
		padding-right: calc(4rem - 50px);
	}

	.program .program-box2 {
		padding-top: 20px;
		padding-bottom: 40px;
	}

	
	.information {
		padding: 100px 0 0 4rem;
	}
	.information .contless-box{
		display: block;
		margin-bottom: 0;
	}
	.information .contless-box .contless{
		margin-bottm: 30px;
		margin-left: -4rem;
		padding-left: 4rem;
		width: calc(100% + 4rem);
	}
	.information .contless h3{
		width: 22%;
	}
	.information .contless-box .contless:first-child{
		border: none;
		border-bottom: 1px solid #707070;
		margin-bottom: 50px;
		padding-bottom: 20px;
		margin-right:0; 
	}
	.information .contless a{
		margin-right: 20px;
		width: 37%;
	}
	.information h3 span.abolition{
		font-size: 26px;
	}

	.partner-box {
		position: relative;
		width: calc(100% - 4rem);
		padding: 0 20px 0 0;
		box-sizing: border-box;
		left: 4rem;
		top: 0;
	}

	.partner .map {
		padding: 0 20px;
	}

	.contact {
		display: block;
	}

	.contact .box {
		width: 100%;
	}

	.contact .box:first-child {
		border-right: none;
		border-bottom: 1px solid #707070;
	}

	.contact .box:last-child {
		padding-bottom: 50px;
	}

	.contact .box p {
		height: auto;
		min-height: 10px;
	}
}

@media screen and (max-width:620px) {
	#jp_map a span {
		width: 2em;
	}

	#jp_map li.hokkaido a span,
	#jp_map li.aomori a span,
	#jp_map li.akita a span,
	#jp_map li.iwate a span,
	#jp_map li.yamagata a span,
	#jp_map li.miyagi a span,
	#jp_map li.nigata a span,
	#jp_map li.ehime a span,
	#jp_map li.kagawa a span,
	#jp_map li.kochi a span,
	#jp_map li.tokushima a span {
		width: auto;
	}
}

@media screen and (max-width:480px) {
	.main {
		min-height: 1px;
		margin: 50px 0 60px;
	}

	.background-green {
		height: 270px;
	}

	.background-white {
		height: 285px;
	}

	.mainbox {
		display: block;
		padding: 0 0;
	}

	.pickup {
		display: block;
		padding: 0 30px;
	}

	.pickup h2 {
		padding: 0 0 0 0;
	}

	.pickup .swiper-wrapper {
		padding: 0 0;
	}

	.pickup .swiper-wrapper a {
		padding: 0 0;
		margin-right: 0;
		border: none;
	}

	.pickup a p {
		min-height: 1px;
		font-size: 14px;
		margin: 0 0 20px;
		overflow: hidden;
    	display: -webkit-box;
    	-webkit-box-orient: vertical;
   		-webkit-line-clamp: 3;
	}

	.pickup .pager-area {
		left: 15px;
		top: 95px;
		bottom: auto;
	}

	.information .info-box {
		display: block;
		padding: 0 0 30px;
	}

	.information h3 {
		width: 100%;
		margin: 0 0 50px;
	}

	.information h3 span.abolition {
		font-size: 24px;
	}
	
	.information .contless-box{
		display: block;
		padding: 0;
		margin: 0;
	}
	.information .contless-box h3{
		margin: 0 0 10px;
		width: 100%;
	}
	.information .contless-box .contless{
		width: 100%;
		padding-left: 0;
		margin-left: 0
	}
	.contless{
		display: block;
		margin-bottom: 0;
        padding-bottom: 0;
		width: 100%;
	}
	.information .contless a{
		width: 47.41%;
		margin-right: 20px;
		padding: 0 ;
		margin-top: 20px;
	}
	
	.information .swiper {
		width: 100%;
	}

	.information p {
		font-size: 14px;
	}

	.information .swiper {
		padding: 0 0 30px;
	}

	.information .swiper-wrapper a {
		padding: 0;
		border-right: none;
	}

	.information .pager-area {
		top: 80px;
	}

	.information .pagination-area {
		left: 0;
		width: 100%;
	}

	.information .more-btn2 {
		position: relative;
		bottom: auto;
	}

	.information .pagenation-area-leaguemember {
		bottom: 30px;
	}

	.information .contless:first-child {
		margin: 0;
	}

	.information .info-box:nth-child(2) {
		margin: 0 0 20px;
	}

	.about {
		padding: 50px 20px;
	}

	.about-box {
		padding: 20px;
		width: 100%;
	}

	.about h3 {
		font-size: 18px;
		margin: 0 0 20px;
	}

	.about p {
		font-size: 14px;
		margin: 0 0 20px;
	}

	.parabouttner p {
		font-size: 14px;
		margin: 0 0 20px;
	}

	.information {
		left: 0;
		padding: 20px 30px 0;
		width: 100%;
		margin-top: 0;
	}

	#jp_map li a {
		font-size: 11px;
	}

	.partner {
		padding: 50px 0 0;
	}

	.partner-box {
		left: 0;
		padding: 20px 30px 0;
		width: 100%;
	}

	.partner h3 {
		font-size: 18px;
		margin: 0 0 20px;
	}

	.partner p {
		font-size: 14px;
		margin: 0 0 20px;
	}

	.program {
		border: 20px solid #86B81A;
	}

	.program h3 {
		font-size: 18px;
		margin: 0 0 20px;
	}

	.program p {
		font-size: 14px;
		margin: 0 0 20px;
	}

	.program-cont {
		width: calc(100% + 40px);
		margin: 0 -20px;
		padding: 0 40px;
	}

	.program .program-box2 {
		padding-left: 20px;
		padding-right: 20px;
		padding-top: 20px;
		padding-bottom: 40px;
	}

	.program .program-box {
		padding-left: 20px;
		padding-right: 20px;
		padding-top: 40px;
	}

	.contact .box h2 {
		padding: 30px 30px 10px;
	}

	.contact .box p {
		padding: 10px 30px 30px;
		font-size: 14px;
	}

	.contact .box:last-child {
		padding: 0 0 1px;
	}

	.swiper-pagination-main4 {
		padding: 40px 0 0;
	}
	#jp_map ul.partner-graph{
		text-align: left;
		max-height: 400px;
		overflow: auto;
	}
	#jp_map ul.partner-graph li{
		display: inline-block;
		margin: 10px 10px;
	}
	#jp_map ul.partner-graph li a{
		padding: 0 10px;
		font-size: 14px;
		line-height: 1.4;
	}
	.btn{
		margin: 20px auto 50px;
		width: 220px;
	}
}




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

	.fsize-16 {
		font-size: 14px;
	}

	.fsize-18 {
		font-size: 14px;
	}

	.fsize-20 {
		font-size: 18px;
	}

	.fsize-22 {
		font-size: 18px;
	}

	.fsize-24 {
		font-size: 18px;
	}

	.fsize-26 {
		font-size: 22px;
	}

	.fsize-28 {
		font-size: 22px;
	}

	.fsize-32 {
		font-size: 22px;
	}

	.fsize-40 {
		font-size: 26px;
	}

	.colo-2 {
		grid-template-columns: 1fr;
	}

	.colo-3 {
		grid-template-columns: 1fr 1fr;
	}

	.table-table tr,
	.table-table tr td .table-table tr {
		grid-template-columns: 1fr;
	}
}


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