@charset "utf-8";

/* ========================================

common

======================================== */

/* TITLE
---------------------------------------- */
#title{
	color: #fff;
	padding: 0 80px;
	height: 246px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;


	display:-webkit-flex;
	display:flex;
   	-webkit-flex-direction: column;
   	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
}

#title h1{
	font-size: 2.34rem;
	letter-spacing: 0.1em;
	line-height: 1;
	margin-bottom: 18px;
}

#title .en{
	font-size: 1.2rem;
	text-transform: capitalize;
}

#title.tit_about{
	background-image: url(../about/img/img_title.jpg);
}

#title.tit_sitemap{
	background-image: url(../sitemap/img/img_title.jpg);
}

#title.tit_facilities{
	background-image: url(../facilities/img/img_title.jpg);
}

#title.tit_privacy{
	background-image: url(../privacy/img/img_title.jpg);
}

#title.tit_street{
	background-image: url(../street/img/img_title.jpg);
}

#title.tit_en{
	height: 554px;
	background-image: url(../en/img/img_title.jpg);
}

#title.tit_access{
	background-image: url(../access/img/img_title.jpg);
}

#title.tit_contact{
	background-image: url(../contact/img/img_title.jpg);
}

#title.tit_info{
	background-image: url(../img/img_title_info.jpg);
}

#title.tit_info_detail{
	color: #002c54;
	height: 130px;
	background: #f7f7f7;
}

#title.tit_hakataba{
	color: #002c54;
	height: 108px;
	background: #f7f7f7;

   	-webkit-flex-direction: row;
   	flex-direction: row;
   	-webkit-justify-content: space-between;
   	justify-content: space-between;
   	-webkit-align-items: center;
   	align-items: center;
}

#title.tit_hakataba h1{
	font-size: 1.6rem;
	margin-bottom: 0;
	margin-left: 84px;
}

#title.tit_hakataba .page{
	font-size: 1.4rem;
	line-height: 1.2;
	letter-spacing: 0.06em;
	padding: 0 3px;
	border-bottom: 1px solid #002c54;
}





@media screen and ( max-width: 800px ) {
	#title{
		text-align: center;
		padding: 0;
		height: 190px;
		position: relative;
		z-index: 100;
	}
	#title h1{
		font-size: 2.0rem;
		margin-bottom: 18px;
	}
	#title .en{
		font-size: 1.0rem;
	}
	#title.tit_en{
		height: 227px;
	}
}






/* ========================================

__about / top

======================================== */
.box_about_top .nav_about{
	width: 91%;
	max-width: 885px;
	margin: 0 auto;
	padding: 110px 0;
}

.box_about_top .nav_about h2{
	color: #002c54;
	font-size: 2.45em;
	text-align: center;
	margin-bottom: 30px;
}

.box_about_top .nav_about ul{
	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.box_about_top .nav_about ul li{
	width: 49.71%;
	max-width: 440px;
	height: 140px;
	margin-bottom: 5px;
}

.box_about_top .nav_about ul li.no1{
	background: url(../about/img/top_nav01.jpg) no-repeat 50% 50%;
	background-size: cover;
}

.box_about_top .nav_about ul li.no2{
	background: url(../about/img/top_nav02.jpg) no-repeat 50% 50%;
	background-size: cover;
}

.box_about_top .nav_about ul li.no3{
	background: url(../about/img/top_nav03.jpg) no-repeat 50% 50%;
	background-size: cover;
}

.box_about_top .nav_about ul li.no4{
	background: url(../about/img/top_nav04.jpg) no-repeat 50% 50%;
	background-size: cover;
}

.box_about_top .nav_about ul li a{
	color: #fff;
	height: 100%;
	display: block;
	position: relative;
	padding: 44px 0 0 46px;
	background: rgba(0, 44, 84, 1);
}

.box_about_top .nav_about ul li a::before{
	width: 46px;
	height: 43px;
	content: '';
	display: block;
	position: absolute;
	right: 40px;
	top: 50%;
	border: 1px solid rgba(255, 255, 255, 0.5);
	box-sizing: border-box;
	transform: translate(0, calc(-50% + 0.5px));
}

.box_about_top .nav_about ul li a::after{
	width: 5px;
	height: 5px;
	content: '';
	display: block;
	position: absolute;
	right: 62px;
	top: calc(50% - 3px);
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.box_about_top .nav_about ul li .tit{
	font-size: 1.6rem;
	margin-bottom: 8px;
}

.box_about_top .nav_about ul li .en{
	opacity: .5;
}



@media screen and ( min-width: 800px ) {
	.box_about_top .nav_about ul li a:hover{
		background: rgba(0, 44, 84, 0);
	}
}

@media screen and ( max-width: 800px ) {
	.box_about_top .nav_about{
		padding: 74px 0 88px;
	}
	.box_about_top .nav_about h2{
		font-size: 1.9em;
		margin-bottom: 20px;
	}
	.box_about_top .nav_about ul li{
		width: 100%;
		max-width: none;
		height: 90px;
		margin-bottom: 5px;
	}
	.box_about_top .nav_about ul li a{
		padding: 22px 0 0 30px;
		background: transparent;
	}
	.box_about_top .nav_about ul li a::before{
		width: 40px;
		height: 37px;
		right: 28px;
	}
	.box_about_top .nav_about ul li a::after{
		right: 46px;
	}
	.box_about_top .nav_about ul li .tit{
		font-size: 1.5rem;
		margin-bottom: 4px;
	}
}




.about_floor{
	padding: 110px 0;
	background: #f7f7f7;
}

.about_floor_inner{
	width: 96%;
	max-width: 1260px;
	margin: 0 auto;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:center;
	justify-content:center;
}

.about_floor .floor_img{
	width: 57.2%;
	max-width: 720px;
}

.about_floor .list_floor{
	width: 41.3%;
	max-width: 520px;
	padding-top: 10px;
	margin-right: 1.5%;
}

.about_floor .nav_floor{
	width: 100%;
	box-shadow: 7px 7px 20px  rgba(0, 0, 0, 0.1);

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:center;
	justify-content:center;
}

.about_floor .nav_floor li{
	width: calc(100% / 3);
	position: relative;
}

.about_floor .nav_floor li span::after{
	width: 0;
	height: 0;
	display: block;
	content: '';
	position: absolute;
	left: calc(50% - 7px);
	bottom: -14px;
	opacity: 0;
	border-top: 14px solid #ab0027;
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
}

.about_floor .nav_floor li.no2 span::after{
	border-top-color: #00478d;
}

.about_floor .nav_floor li.no3 span::after{
	border-top-color: #005f26;
}

.about_floor .nav_floor li span.on::after{
	opacity: 1;
}

.about_floor .nav_floor li{
	font-size: 1.3rem;
	line-height: 1.38;
	text-align: center;
	height: 92px;
	padding-top: 28px;
	cursor: pointer;
	display: block;
	background: #fff;
	transition: all .2s;
}

.about_floor .nav_floor li.no1,
.about_floor .list_floor_detail ul#no1 .tit,
.about_floor .no1 .tit{
	color: #ab0027;
}

.about_floor .nav_floor li.no2{
	color: #00478d;
	border-right: 2px solid #f7f7f7;
	border-left: 2px solid #f7f7f7;
}

.about_floor .list_floor_detail ul#no2 .tit,
.about_floor .no2 .tit{
	color: #00478d;
}

.about_floor .nav_floor li.no3,
.about_floor .list_floor_detail ul#no3 .tit,
.about_floor .no3 .tit{
	color: #005f26;
}

.about_floor .list_floor_detail ul{
	padding-top: 20px;
}

.about_floor .list_floor_detail ul li{
	padding: 17px 0;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	align-items: center;
	border-bottom: 1px solid #c8c8c8;
}

.about_floor .list_floor_detail .tit{
}

.about_floor .list_floor_detail ul li .tit{
	font-size: 1.1rem;
	width: 90px;
	padding-left: 10px;
}

.about_floor .list_floor_detail ul li .txt{
	font-size: 1.4rem;
	letter-spacing: 0.02em;
	width: calc(100% - 90px);
}

.about_floor .list_floor_detail ul li .txt span{
	color: #818181;
	font-size: 1.0rem;
	letter-spacing: 0.05em;
	display: block;
	transform-origin:0 50%;
	transform: scale(0.8, 0.8);
}

.about_floor .floor_img{
	position: relative;
}

.about_floor .bl_name{
	text-align: center;
	display: inline-block;
	position: absolute;
	padding: 12px 26px;
	background: #fff;
	box-shadow: 7px 7px 20px  rgba(0, 0, 0, 0.1);
}

.about_floor .bl_name .tit{
	font-size: 1.6rem;
}

.about_floor .bl_name .en{
	color: #848484;
}

.about_floor .floor_img .no1{
	top: 166px;
	left: 50%;
	margin-left: -40px;
}

.about_floor .floor_img .no2{
	top: 8px;
	left: 140px;
}

.about_floor .floor_img .no3{
	top: 62px;
	right: 40px;
}

.about_floor .bl_name.on{
	color: #fff;
	background: #00478d;
}

.about_floor .bl_name.on .tit,
.about_floor .bl_name.on .en{
	color: #fff;
}



@media screen and ( min-width: 800px ) {
	.about_floor .nav_floor li:hover{
		color: #fff;
		background: #00478d;
	}
}

@media screen and ( max-width: 1300px ) {
	.about_floor_inner{
		width: 100%;
		max-width: 1260px;
		margin: 0 auto;
		padding-left: 4%;
	}
	.about_floor .floor_img{
		width: 73%;
		width: calc(100% - 340px);
		max-width: none;
	}

	.about_floor .list_floor{
		width: 340px;
		margin-right: 0;
	}
	.about_floor .list_floor_detail ul li .tit{
		width: 100%;
	}
	.about_floor .list_floor_detail ul li .txt{
		width: 100%;
		padding: 0 10px;
	}
}

@media screen and ( max-width: 1050px ) {
	.about_floor_inner{
		width: 84%;
		padding-left: 0;
	}
	.about_floor .floor_img{
		width: 100%;
		max-width: 720px;
		order: -1;
	}
	.about_floor .floor_img .img{
		width: 100%;
		max-width: none;
		margin-left: 0;
	}
	.about_floor .list_floor{
		width: 100%;
		max-width: none;
		padding-top: 0;
		position: relative;
		z-index: 1;
		margin-top: -11%;
		background: #f7f7f7;
	}
	.about_floor .nav_floor li span::after{
		left: calc(50% - 7px);
		bottom: -12px;
		border-top-width: 12px;
		border-left-width: 6px;
		border-right-width: 6px;
	}
	.about_floor .bl_name .tit{
		width: 100%;
		padding: 0;
		line-height: 1;
	}
	.about_floor .floor_img .no1{
		top: 20%;
		left: 50%;
		margin-left: 0;
		transform: translate(-50%, 0);
	}
	.about_floor .floor_img .no2{
		top: 1%;
		left: 24%;
		transform: translate(-50%, 0);
	}
	.about_floor .floor_img .no3{
		top: 7%;
		right: 0;
	}
}


@media screen and ( max-width: 800px ) {
	.about_floor {
		padding: 44px 0 80px;
		background: #f7f7f7;
	}
	.about_floor .floor_img .img{
		width: 130%;
		margin-left: -20%;
	}
	.about_floor .nav_floor li{
		font-size: 1.1rem;
		height: 58px;
		padding-top: 15px;
	}
	.about_floor .list_floor_detail ul li .tit{
		font-size: 1.0rem;
	}
	.about_floor .list_floor_detail ul li .txt{
		font-size: 1.2rem;
	}
	.about_floor .bl_name{
		padding: 9px 12px 6px;
	}
	.about_floor .bl_name .tit{
		width: 100%;
		padding: 0;
		font-size: 1.0rem;
		line-height: 1;
	}
	.about_floor .bl_name .en{
		transform: scale(0.6, 0.6);
	}
	.about_floor .floor_img .no3{
		top: 7%;
		right: 0;
		padding-left: 0;
		padding-right: 0;
	}
}





/* ========================================

__about / feature

======================================== */
.box_about_feature{
	padding: 126px 0;
	position: relative;
}

.nav_about2{
	color: #002c54;
	font-size: 1.4rem;
	letter-spacing: 0.04em;
	width: 230px;
	position: absolute;
	top: 100px;
	right: 0;
}

.nav_about2 li{
	border-bottom: 1px solid rgba(0, 44, 84, 0.2);
}

.nav_about2 li a{
	display: block;
	padding: 24px 0;
	padding-left: 32px;
}

li.on a{
	color: #fff;
	background: #002c54;
}

.feature_content h2{
	color: #002c54;
	font-size: 3.9rem;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.04em;
	margin-bottom: 16px;
	padding-bottom: 20px;
	background: url(../img/hakataba/bg_hakataba.png) no-repeat center bottom;
	background-size: 48px;
}

.feature_content .sub{
	color: #002c54;
	font-size: 1.6rem;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.08em;
	margin-bottom: 68px;
}

.feature_content .txt{
	color: #002c54;
	font-size: 1.4rem;
	letter-spacing: 0.02em;
	line-height: 2.14;
	width: 84%;
	max-width: 570px;
	margin: 0 auto;
}

.feature_content .box_img{
	width: 100%;
	max-width: 780px;
	margin: 0 auto;
	margin-top: 64px;
	margin-bottom: 64px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.feature_content .box_img .img{
	width: calc(100% - 40px);
}

.feature_content .box_img .desc{
	color: #002c54;
	font-size: 1.2rem;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.02em;
	-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    width: 40px;

	display:-webkit-flex;
	display:flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}



@media screen and ( min-width: 800px ) {
	.nav_about2 li a:hover{
		background:rgba(0, 0, 0, 0.07);
	}
	li.on a:hover{
		color: #fff;
		background: #002c54;
	}
}


@media screen and ( max-width: 1250px ) {
	.nav_about2{
		top: 0;
	}
	.nav_about2 li a{
		padding: 20px 0;
		padding-left: 28px;
	}
}

@media screen and ( max-width: 800px ) {
	.box_about_feature{
		padding: 0 0 28px;
	}
	.nav_about2{
		width: 100%;
		position: relative;
		top:auto;
		right: auto;
		margin-bottom: 74px;
	}
	.nav_about2 p{
		padding: 16px 0;
		padding-left: 26px;
		position: relative;
		border-bottom: 1px solid rgba(0, 44, 84, 0.2);
	}
	.nav_about2 p::before{
		width: 19px;
		height: 1px;
		content: '';
		display: block;
		position: absolute;
		right: 26px;
		top: 50%;
		background: #002c54;
	}
	.nav_about2 p::after{
		width: 1px;
		height: 19px;
		content: '';
		display: block;
		position: absolute;
		right: 35px;
		top: 18px;
		background: #002c54;
		transition: all .2s;
	}
	.nav_about2 ul{
		max-height: 0;
		overflow: hidden;
		transition: all .8s;
	}
	.nav_about2.on ul{
		max-height: 300px;
	}
	.nav_about2.on p::after{
		opacity: 0;
	}
	.nav_about2 li a{
		padding: 16px 0;
		padding-left: 26px;
	}
	.feature_content h2{
		font-size: 2.7rem;
		margin-bottom: 12px;
		padding-bottom: 14px;
		background-size: 33px;
	}
	.feature_content .sub{
		font-size: 1.2rem;
		margin-bottom: 46px;
	}
	.feature_content .txt{
		font-size: 1.2rem;
		line-height: 2;
	}
	.feature_content .box_img{
		width: 100%;
		margin-top: 50px;
		margin-bottom: 50px;
		display: block;
	}
	.feature_content .box_img .img{
		width: 100%;
	}

	.feature_content .box_img .desc{
		font-size: 1.1rem;
		letter-spacing: 0.02em;
		-webkit-writing-mode: horizontal-tb;
	    -ms-writing-mode: lr-tb;
	    writing-mode: horizontal-tb;
	    width: 100%;
		margin-top: 14px;
		display: block;
	}
}






/* ========================================

__about / concept

======================================== */
.box_about_concept{
	padding: 126px 0 0;
	position: relative;
	background: linear-gradient(#d7eefb, #96d3f6, #96d3f6);
}

.box_about .copy{
	color: #002c54;
	font-size: 2.8rem;
	text-align: center;
	letter-spacing: 0.1em;
	line-height: 1.9;
	margin-bottom: 80px;
}

.feature_concept .txt{
	font-size: 1.6rem;
	text-align: center;
	lighting-color: 2.4;
	width: 75%;
	max-width: none;
}

.feature_concept .img{
	text-align: center;
	margin-top: 100px;
}

.feature_concept .img img{
	width: 100%;
}




@media screen and ( max-width: 800px ) {
	.box_about_concept{
		padding: 0;
	}
	.box_about .copy{
		font-size: 1.9rem;
		line-height: 1.7;
		margin-bottom: 30px;
	}
	.feature_concept .txt{
		font-size: 1.3rem;
		text-align: left;
		letter-spacing: 0;
		width: 76%;
	}
	.feature_concept .img{
		overflow: hidden;
		margin-top: 120px;
	}
	.feature_concept .img img{
		width: 140%;
		max-width: none;
		margin-left: -20%;
	}
}






/* ========================================

__about / art

======================================== */
.box_about_art{
	padding: 126px 0 0;
	position: relative;
}

.box_about_art .list_art{
	margin-top: 98px;
	padding: 100px 0;
	background: #f7f7f7;
}

.box_about_art .list_art .list_art_inner{
	width: 84%;
	max-width: 1046px;
	margin: 0 auto;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
}

.box_about_art .list_art_inner .img{
	width: 54.5%;
	max-width: 570px;
}

.box_about_art .list_art_inner .img img{
	width: auto;
}

.box_about_art .list_art dl{
	width: 41.6%;
	max-width: 435px;
}

.box_about_art .list_art dt{
	font-size: 1.8rem;
	margin-bottom: 10px;
	padding-bottom: 3px;
	border-bottom: 1px solid rgba(0, 44, 84, 0.2);
}

.box_about_art .list_art dt.no1{
	color: #ab0027;
}

.box_about_art .list_art dt.no2{
	color: #00478d;
}

.box_about_art .list_art dt.no3{
	color: #005f26;
}

.box_about_art .list_art dd{
	color: #002c54;
	font-size: 1.8rem;
}

.box_about_art .list_art dd:not(:last-of-type){
	margin-bottom: 30px;
}

.box_about_art .list_art dd ol li span{
	color: #57748f;
	font-size: 1.1rem;
	margin-left: 8px;
}

.box_about_art .list_art{
	counter-reset: number;
}

.box_about_art .list_art dd ol li{
	margin-bottom: 2px;
	letter-spacing: 0.02em;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
}

.box_about_art .list_art dd ol li::before {
	font-size: 1.2rem;
	counter-increment: number;
	content: counter(number);
	display: block;
	margin: 0 9px 1px;
}

.item_art_wrap .item_art_inner{
	max-width: 1500px;
	margin: 0 auto;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.item_art_wrap .item_art:nth-child(even){
	background: #f7f7f7;
}

.item_art_wrap .item_art:nth-child(even) .img{
	order: 2;
}

.item_art_wrap .item_art .img{
	width: 41.6%;
	max-width: 625px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}

.item_art_wrap .item_art .img::before{
	display: block;
	content: '';
	padding-top: 143%;
}

.item_art01 .img{
	background: url(../about/img/img_art02.jpg);
}

.item_art02 .img{
	background: url(../about/img/img_art03.jpg);
}

.item_art03 .img{
	background: url(../about/img/img_art04.jpg);
}

.item_art04 .img{
	background: url(../about/img/img_art05.jpg);
}

.item_art05 .img{
	background: url(../about/img/img_art06.jpg);
}

.item_art06 .img{
	background: url(../about/img/img_art07.jpg);
}

.item_art07 .img{
	background: url(../about/img/img_art08.jpg);
}

.item_art08 .img{
	background: url(../about/img/img_art09.jpg);
}

.item_art_wrap .item_art .box_text{
	color: #002c54;
	width: 40%;
	max-width: 600px;
	margin-right: 9.3%;
	padding: 50px 0;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
}

.item_art_wrap .item_art:nth-child(even) .box_text{
	margin-right: 0;
	margin-left: 9.3%;
}

.item_art_wrap .item_art h3{
	font-size: 3.8rem;
	margin: 20px 0 28px;
}

.item_art_wrap .item_art .no{
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
	order: -1;
	width: 68px;
	height: 68px;
	padding-top: 10px;
	background: #fff;
	border: 1px solid #002c54;
	border-radius: 50%;
}

.item_art_wrap .item_art ol{
	margin-bottom: 36px;
	border-top: 1px solid rgba(0, 44, 84, 0.2);
}

.item_art_wrap .item_art ol li{
	font-size: 1.8rem;
	padding: 14px 0;
	border-bottom: 1px solid rgba(0, 44, 84, 0.2);
}

.item_art_wrap .item_art .txt{
	line-height: 2.1;
	width: 100%;
	max-width: none;
}



@media screen and ( max-width: 800px ) {
	.box_about_art{
		padding: 0;
	}
	.box_about_art .list_art{
		margin-top: 50px;
		padding: 46px 0 54px;
	}
	.box_about_art .list_art .list_art_inner{
		width: 100%;
		max-width: none;
		display: block;
	}
	.box_about_art .list_art_inner .img{
		width: 100%;
		max-width: 750px;
		margin-bottom: 50px;
	}
	.box_about_art .list_art dl{
		width: 85%;
		max-width: none;
		margin: 0 auto;
	}
	.box_about_art .list_art dt{
		font-size: 1.6rem;
		margin-bottom: 10px;
		padding-bottom: 3px;
	}
	.box_about_art .list_art dd{
		font-size: 1.6rem;
	}
	.box_about_art .list_art dd:not(:last-of-type){
		margin-bottom: 22px;
	}
	.box_about_art .list_art dd ol li span{
		font-size: 1.0rem;
		margin-left: 8px;
	}
	.box_about_art .list_art dd ol li::before {
		margin-left: 4px;
	}
	.item_art_wrap .item_art{
		padding-bottom: 96px;
	}
	.item_art_wrap .item_art .img{
		width: 100%;
		max-width: none;
	}
	.item_art_wrap .item_art .img img{
		width: 100%;
	}
	.item_art_wrap .item_art .box_text{
		width: 84%;
		max-width: none;
		margin: 0 auto;
		padding: 0;
	}
	.item_art_wrap .item_art:nth-child(even){
		background: transparent;
	}
	.item_art_wrap .item_art:nth-child(even) .img{
		order: -1;
	}
	.item_art_wrap .item_art h3{
		font-size: 3.0rem;
		line-height: 1.1;
		margin: 20px 0 28px;
	}
	.item_art_wrap .item_art .no{
		font-size: 2.2rem;
		width: 50px;
		height: 50px;
		position: relative;
		margin-top: -25px;
		padding-top: 6px;
	}
	.item_art_wrap .item_art ol{
		margin-bottom: 26px;
	}
	.item_art_wrap .item_art ol li{
		font-size: 1.5rem;
		padding: 14px 0;
	}
	.item_art_wrap .item_art .txt{
		font-size: 1.2rem;
		line-height: 2;
		width: 100%;
		max-width: none;
	}
}






/* ========================================

__street

======================================== */
.txt_introduction{
	font-size: 1.8rem;
	text-align: center;
	line-height: 2.4;
	width: 84%;
	margin: 0 auto;
	padding: 104px 0;
}

.list_street_wrap{
	padding: 100px 0 0;
	background: #f5f5f5;
}

.nav_list_street{
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
	margin-bottom: 10px;
	background: #fff;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.nav_list_street li{
	width: calc(100% / 3);
	position: relative;
}

.nav_list_street li a{
	color: #002c54;
	font-size: 2.0rem;
	text-align: center;
	line-height: 1;
	height: 70px;
	display: block;
	padding-top: 25px;
}

.nav_list_street li:not(:last-of-type) a::after{
	width: 1px;
	height: 50px;
	display: inline-block;
	content: '';
	position: absolute;
	right: 0;
	top: 10px;
	background: #002c54;
	vertical-align: middle;
}

.list_street{
	padding: 106px 0 60px;
}

.list_street_wrap section:nth-child(odd){
	background: #fff;
}

.list_street h2{
	color: #002c54;
	font-size: 2.4rem;
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
	margin-bottom: 54px;
}

.list_street h2 span{
	padding-bottom: 2px;
	border-bottom: 2px solid #002c54;
}

.list_street_inner{
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.item_list_street{
	width: 29.6%;
	max-width: 355px;
	margin-bottom: 70px;
}

.item_list_street:not(:nth-child(3n)){
	margin-right: 5.6%;
}

.item_list_street .img{
	position: relative;
}

.item_list_street .img::before{
	font-family: 'Josefin Sans', sans-serif;
	color: #fff;
	font-size: 1.4rem;
	text-align: center;
	line-height: 1;
	min-width: 90px;
	display: block;
	content: 'Restaurant';
	position: absolute;
	padding: 6px 10px 4px;
	background: #002c54;
	box-sizing: border-box;
}

.item_list_street.ico_cafe .img::before{
	content: 'Cafe';
}

.item_list_street.ico_shop .img::before{
	content: 'Shop';
}

.item_list_street.ico_service .img::before{
	content: 'Service';
}

.item_list_street h3{
	color: #002c54;
	font-size: 2.2rem;
	margin: 20px 0 14px;
}

.item_list_street .txt{
	font-size: 1.4rem;
	line-height: 2;
}

.item_list_street dl{
	font-size: 1.4rem;
	border-top: 1px solid #b4b4b4;
	margin-top: 16px;
	padding-top: 20px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.item_list_street dt{
	color: #002c54;
	line-height: 1.85;
	width: 80px;
}

.item_list_street dd{
	line-height: 1.85;
	width: calc(100% - 80px);
}



@media screen and ( min-width: 800px ) {
	.nav_list_street li a:hover{
		opacity: 0.6;
	}
	.item_list_street dd a:hover{
		opacity: .7;
		text-decoration: underline;
	}
}

@media screen and ( max-width: 800px ) {
	.txt_introduction{
	font-size: 1.2rem;
	line-height: 2;
	padding: 45px 0 30px;
}

	.nav_list_street{
		display: none;
	}
	.list_street_wrap {
	    padding:0;
	}
	.list_street{
		padding: 46px 0 20px;
	}
	.list_street_wrap section:nth-child(odd){
		background: inherit;
	}
	.list_street h2 {
	    font-size: 1.8rem;
	    text-align: center;
	}
	.list_street_inner{
	    justify-content: space-between;
	}
	.item_list_street{
		width: 47.5%;
		margin-bottom: 30px;
	}
	.item_list_street:not(:nth-child(3n)){
		margin-right: 0;
	}
	.item_list_street .img::before{
		font-size: 1.0rem;
		min-width: 55px;
		padding: 4px 8px 2px;
	}
	.item_list_street h3{
		color: #002c54;
		font-size: 1.3rem;
		margin: 10px 0 6px;
	}
	.item_list_street .detail{
		max-height: 6.9em;
		overflow: hidden;
		transition: all .6s;
		opacity: .7;
		position: relative;
	}
	.item_list_street .detail.on{
		max-height: 1000px;
		overflow: hidden;
		opacity: 1;
		transition: all 1s;
	}
	.item_list_street .txt{
		font-size: 1.2rem;
		line-height: 2;
	}
	.item_list_street .detail::after{
		color: #818181;
		font-size: 1.2rem;
		line-height: 1;
		width: 1.2em;
		content: '…';
		display: block;
		opacity: 1;
		padding: 2px;
		position: absolute;
		right: 3px;
		bottom: 1px;
		background: #f5f5f5;
		transition-delay:.6s;
	}
	.item_list_street .detail.on::after{
		opacity: 0;
		transition-delay:0s;
	}
	.item_list_street dl{
		font-size: 1.2rem;
		border-top: none;
		margin-top: 16px;
		padding-top: 0;
		padding-bottom: 6px;
		display: block;
	}
	.item_list_street dt{
		line-height: 1.7;
		width: 100%;
	}
	.item_list_street dd{
		line-height: 1.7;
		width: 100%;
	}
	.item_list_street .btn{
		color: #818181;
		font-size: 1.0rem;
		text-align: center;
		line-height: 1;
		height: 32px;
		margin-top: 10px;
		padding-top: 10px;
		background: #e6e6e6;
	}
	.item_list_street .btn span::before{
		width: 6px;
		height: 6px;
		content: '';
		display: inline-block;
		vertical-align: top;
		margin-right: 7px;
		border-bottom: 1px solid #818181;
		border-right: 1px solid #818181;
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.item_list_street .btn.on span::before{
		margin-top: 4px;
		border: none;
		border-top: 1px solid #818181;
		border-left: 1px solid #818181;
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
}






/* ========================================

__facilities

======================================== */
.box_facilities{
	padding: 120px 0 70px;
}
.box_facilities ul{
	width: calc(100% - 80px);
	max-width: 1340px;
	margin: 0 auto;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.box_facilities ul li{
	width: calc((100% - 88px) / 2);
	margin-bottom: 70px;
}

.box_facilities ul li a{
	display: block;
}

.box_facilities ul li .img{
	width: 100%;
	transition: all .2s;
}

.box_facilities ul li .tit{
	text-align: center;
	color: #002c54;
	font-size: 2.4rem;
	width: 100%;
	padding: 20px 0;
}

.box_facilities ul li .txt{
	color: #333;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	line-height: 2.3;
}




@media screen and ( min-width: 800px ) {
	.box_facilities ul li a:hover .img{
		opacity: 0.7;
	}
	.box_facilities ul li a:hover .tit{
		text-decoration: underline;
	}
}


@media screen and ( max-width: 800px ) {
	.box_facilities{
		padding: 70px 0 20px;
	}
	.box_facilities ul{
		width: calc(100% - 62px);
	}
	.box_facilities ul li{
		width: 100%;
		margin-bottom: 60px;
	}
	.box_facilities ul li .tit{
		font-size: 2.0rem;
		padding: 16px 0 12px;
	}
	.box_facilities ul li .txt{
		font-size: 1.3rem;
		letter-spacing: 0;
	}
}






/* ========================================

__information

======================================== */
.box_info{
	width: 84%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 108px 0;
}

.info_search{
	text-align: center;
	color: #002c54;
	font-size: 1.6rem;
	position: relative;
	margin-bottom: 68px;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:flex-end;
	justify-content:flex-end;
}

.info_search p{
	min-width: 226px;
	height: 38px;
	margin-left: 20px;
	padding-top: 8px;
	padding-left: 16px;
	padding-right: 16px;
	cursor: pointer;
	border-right: 1px solid #002c54;
	border-left: 1px solid #002c54;
}

.info_search p span{
	padding-left: 30px;
	background: url(../img/ico_search.png) no-repeat;
	background-size: 20px;
}

.info_search ul{
	text-align: center;
	width: 266px;
	margin-top: 10px;
	position: absolute;
	z-index: -1;
	opacity: 0;
	background: #fff;
	box-shadow: 0 0 18px rgba(0, 0, 0, 0.1);
	transition: all .2s;
}

.info_search.on ul{
	z-index: 5;
	opacity: 1;
}

.info_search ul li a{
	color: #002c54;
	display: block;
	margin: 0 10px;
	padding: 16px 0;
	border-bottom: 1px solid #ccc;
}

.info_search ul li:last-of-type a{
	border-bottom: none;
}

.box_info .list_feed{
	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.box_info .list_feed .item_feed{
	width: 29.2%;
	margin-bottom: 60px;
}

.box_info .list_feed .item_feed:not(:nth-child(3n)){
	margin-right: 6.2%;
}

.box_info .list_feed .item_feed a{
	display: block;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.box_info .list_feed .item_feed .img{
	width: 100%;
	order: -1;
	position: relative;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	transition: all .2s;
}

.box_info .list_feed .item_feed .img::before{
	width: 100%;
	padding-top: 63%;
	display: block;
	content: '';
}

.box_info .list_feed .item_feed .img img{
	width: 100%;
}

.box_info .list_feed .item_feed .img::after{
	font-size: 1.6rem;
	color: #fff;
	text-align: center;
	content: 'お知らせ';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	padding: 2px 12px;
	background: #005c3f;
}

.box_info .list_feed .item_feed.ico_cat02 .img::after{
	content: 'イベント';
	background: #d68d0c;
}

.box_info .list_feed .item_feed.ico_cat03 .img::after{
	content: 'Monthly Report';
	background: #800b5d;
}

.box_info .list_feed .item_feed .date{
	color: #646464;
	font-size: 1.2rem;
	width: 100%;
	order: 5;
}

.box_info .list_feed .item_feed .tit{
	color: #002c54;
	font-size: 2.0rem;
	line-height: 1.4;
	width: 100%;
	order: 0;
	margin: 8px 0;
	transition: all .2s;
}

.pagenation{
	font-size: 1.6rem;
	text-align: center;
	margin: 120px 0 148px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:center;
	justify-content:center;
}

.pagenation a,
.pagenation span{
	color: #002c54;
	height: auto;
	display: block;
	padding: 10px 20px;
	border-right: 1px solid #002c54;
}

.pagenation span.dots{
	display: none;
}

.pagenation span.current{
	color: #fff;
	background: #002c54;
}
.pagenation a.next,
.pagenation span.next,
.pagenation span.prev{
	border: none;
}
.pagenation span.next,
.pagenation span.prev{
	color: #b4b4b4;
}

.box_info .nav_info{
	max-width: 966px;
	margin: 0 auto;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.box_info .nav_info li{
	width: calc(100% / 3);
	position: relative;
}

.box_info .nav_info li a{
	color: #002c54;
	font-size: 2.0rem;
	text-align: center;
	line-height: 1;
	height: 70px;
	display: block;
	padding-top: 25px;
}

.box_info .nav_info li:first-of-type a::before,
.box_info .nav_info li a::after{
	width: 1px;
	height: 70px;
	display: inline-block;
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	background: #002c54;
	vertical-align: middle;
}

.box_info .nav_info li:first-of-type a::before{
	right: auto;
	left: 0;
}




@media screen and ( min-width: 800px ) {
	.info_search ul li a:hover{
		opacity: 0.7;
	}
	.box_info .list_feed .item_feed a:hover .img{
		opacity: 0.7;
	}
	.box_info .list_feed .item_feed a:hover .tit{
		text-decoration: underline;
	}
	.pagenation a:hover{
		color: #fff;
		background: #002c54;
	}
	.box_info .nav_info li a:hover{
		opacity: 0.7;
	}
}


@media screen and ( max-width: 800px ) {
	.box_info{
		width: 100%;
		padding: 0 0 64px;
	}
	.info_search{
		text-align: center;
		font-size: 1.3rem;
		margin-bottom: 68px;
		background: #f0f0f0;
		display: block;
	}
	.info_search p{
		width: 100%;
		height: 50px;
		margin-left: 0;
		padding-top: 14px;
		cursor: pointer;
		border: none;
	}
	.info_search p span{
		padding-left: 24px;
		background-size: 15px;
		background-position: 0 2px;
	}
	.info_search ul{
		width: 100%;
		margin-top: 0;
		background: #f0f0f0;
		box-shadow: none;
	}
	.info_search ul li a{
		margin: 0 20px;
		padding: 16px 0;
		border-bottom: none;
		border-top: 1px solid #ccc;
	}
	.box_info .list_feed{
		width: 84%;
		max-width: 1200px;
		margin: 0 auto;

		display: block;
	}
	.box_info .list_feed .item_feed{
		width: 100%;
		margin-bottom: 40px;
	}
	.box_info .list_feed .item_feed:not(:nth-child(3n)){
		margin-right: 0;
	}
	.box_info .list_feed .item_feed .img::after{
		font-size: 1.4rem;
	}
	.box_info .list_feed .item_feed .tit{
		font-size: 1.8rem;
		margin: 6px 0;
	}
	.pagenation{
		font-size: 1.4rem;
		margin: 60px 0;
	}
	.pagenation a,
	.pagenation span{
		padding: 10px 14px;
	}
	.pagenation a.prev{
		padding-left: 0;
	}
	.pagenation a.next{
		padding-right: 0;
	}
	.box_info .nav_info{
		width: 100%;
		display: block;
		border-top: 1px solid #002c54;
	}
	.box_info .nav_info li{
		width: 100%;
		position: relative;
	}
	.box_info .nav_info li a{
		font-size: 1.3rem;
		height: auto;
		display: block;
		padding: 30px 0;
		border-bottom: 1px solid #002c54;
	}
	.box_info .nav_info li:first-of-type a::before,
	.box_info .nav_info li a::after,
	.box_info .nav_info li:first-of-type a::before{
		display: none;
	}
}


.box_info_detail{
	width: 84%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 108px 0 140px;
}

.box_info_detail_inner{
	padding-bottom: 48px;
	border-bottom: 1px solid #333;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.box_info_detail h2{
	color: #002c54;
	font-size: 3.4rem;
	line-height: 1.7;
	order: -1;
	width: 100%;
	margin-bottom: 18px;
}

.box_info_detail .cat{
	font-size: 1.6rem;
	order: 1;
	margin-right: 14px;
}

.box_info_detail .cat a{
	color: #fff;
	padding: 2px 12px;
	background: #005c3f;
}

.box_info_detail .cat.ico_cat02 a{
	background: #d68d0c;
}

.box_info_detail .cat.ico_cat03 a{
	background: #800b5d;
}

.box_info_detail .date{
	color: #646464;
	font-size: 1.4rem;
	order: 2;
}

.box_info_detail .info_detail_contents{
	font-size: 1.6rem;
	padding: 46px 0 60px;
}

.box_info_detail .info_detail_contents a{
	color: #002c54;
	text-decoration: underline;
}

.box_info_detail .btn a{
	color: #002c54;
	font-size: 1.4rem;
	text-align: center;
	max-width: 320px;
	border: 1px solid #002c54;
}

.box_info_detail .info_detail_contents pre{
	font-family: inherit;
	line-height: 2.25;
}


@media screen and ( max-width: 800px ) {
	.box_info_detail{
		padding: 42px 0 90px;
	}
	.box_info_detail_inner{
		padding-bottom: 0;
		border-bottom: none;
	}
	.box_info_detail h2{
		font-size: 1.8rem;
	}
	.box_info_detail .cat{
		font-size: 1.4rem;
		margin-right: 12px;
	}
	.box_info_detail .date{
		font-size: 1.2rem;
	}
	.box_info_detail .info_detail_contents{
		padding: 30px 0 50px;
	}
	.box_info_detail .info_detail_contents img{
		height: auto;
	}
}





/* ========================================

__sitemap

======================================== */
.box_sitemap{
	width: 84%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 100px 0 174px;
}

.list_sitemap{
	margin-bottom: 100px;

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

.list_sitemap ul{
	width: 30%;
}

.list_sitemap ul li{
	border-bottom: 1px solid #ccc;
}

.list_sitemap ul li a{
	color: #002c54;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	display: block;
	position: relative;
	padding: 19px 0;
	padding-left: 30px;
}

.list_sitemap ul li a::before{
	width: 6px;
	height: 6px;
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -3px;
	border-top: 2px solid #002c54;
	border-right: 2px solid #002c54;
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.list_sitemap ul li.in{
	margin-left: 35px;
}

.list_sitemap ul li.in a{
	color: #333;
	font-weight: normal;
	padding-left: 10px;
}

.list_sitemap ul li.in a::before{
	display: none;
}

.sitemap_bnr{
	display:-webkit-flex;
	display:flex;
	justify-content: center;
}

.sitemap_bnr li{
	width: 30%;
	margin: 0 10px;
}

.sitemap_bnr li a{
	text-align: center;
	width: 100%;
	height: 80px;
	display: block;
	background: #f5f5f5;

	display:-webkit-flex;
	display:flex;
	justify-content: center;
	align-items: center;
}

.sitemap_bnr li:nth-child(1) img{
	width: 105px;
}

.sitemap_bnr li:nth-child(2) img{
	width: 109px;
}


@media screen and ( min-width: 800px ) {
	.list_sitemap ul li a:hover,
	.sitemap_bnr li a:hover{
		opacity: 0.7;
	}
}


@media screen and ( max-width: 800px ) {
	.box_sitemap{
		padding: 30px 0 70px;
	}
	.list_sitemap{
		margin-bottom: 40px;
		display:block;
	}
	.list_sitemap ul{
		width: 100%;
	}
	.list_sitemap ul li a{
		font-size: 1.5rem;
		padding: 23px 0;
		padding-left: 30px;
	}
	.sitemap_bnr{
		display: block;
	}
	.sitemap_bnr li{
		width: 100%;
		margin: 0 0 20px 0;
	}
	.sitemap_bnr li a{
		height: 60px;
	}
}






/* ========================================

__english

======================================== */
.box_en{
	padding: 60px 0 130px;
}

.en_introduce{
	color: #002c54;
	width: 84%;
	max-width: 674px;
	margin: 0 auto;
	margin-bottom: 100px;
}

.en_introduce h2{
	font-size: 3.6rem;
	letter-spacing: 0.04em;
	margin-bottom: 14px;
}

.en_introduce p{
	font-size: 1.4rem;
	line-height: 2.14;
}

.list_en_facilities{
	max-width: 1500px;
	margin: 0 auto;
	margin-bottom: 66px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.list_en_facilities li{
	width: 50%;
	margin-bottom: 102px;
}

.list_en_facilities li .tit{
	color: #002c54;
	font-size: 1.8rem;
	width: 76%;
	margin: 0 auto;
	padding: 40px 0 22px;
}

.list_en_facilities li .txt{
	color: #646464;
	font-size: 1.4rem;
	line-height: 2;
	width: 76%;
	margin: 0 auto;
}

.list_en_information{
	max-width: 1500px;
	margin: 0 auto;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.list_en_information .item_en_information{
	width: calc((100% - 6px) / 2);
	background: #f0f0f0;
}

.list_en_information .item_en_information:nth-child(1){
	margin-right: 6px;
}

.list_en_information .item_en_information{
	padding: 76px 0 76px;
	position: relative;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
   	-webkit-flex-direction: column;
   	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-align-content: center;
	align-content: center;
}

.list_en_information .item_en_information h2{
	color: #fff;
	font-size: 2.2rem;
	text-align: center;
	width: 350px;
	height: 60px;
	margin: 0 auto;
	padding-top: 14px;
	background: #002c54;
	transform: translate(0, -50%);
	position: absolute;
	top:0;
}

.list_en_information .item_en_information ul li:not(:last-of-type){
	margin-bottom: 32px;
}

.list_en_information .item_en_information ul li a{
	font-size: 1.8rem;
	color: #002c54;
}

@media screen and ( min-width: 800px ) {
	.list_en_information .item_en_information ul li a:hover{
		opacity: 0.7;
		text-decoration: underline;
	}
}

.list_en_information .item_en_information ul li a::before{
	width: 6px;
	height: 6px;
	content: '';
	display: inline-block;
	margin-right: 16px;
	margin-bottom: 3px;
	border-top: 2px solid #002c54;
	border-right: 2px solid #002c54;
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.list_en_information .item_en_information dl{
	font-size: 1.4rem;
	max-width: 74%;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.list_en_information .item_en_information dl dt{
	color: #002c54;
	line-height: 2;
	width: 20%;
}

.list_en_information .item_en_information dl dd{
	color: #646464;
	line-height: 2;
	width: 75%;
}


@media screen and ( max-width: 800px ) {
	.box_en{
		padding: 30px 0 80px;
	}
	.en_introduce{
		max-width: 674px;
		margin-bottom: 60px;
	}
	.en_introduce h2{
		font-size: 2.1rem;
	}
	.en_introduce p{
		line-height: 2;
	}
	.list_en_facilities{
		margin-bottom: 20px;
	}
	.list_en_facilities li{
		width: 100%;
		margin-bottom: 60px;
	}
	.list_en_facilities li .tit{
		width: 84%;
		padding: 30px 0 18px;
	}
	.list_en_facilities li .txt{
		color: #646464;
		width: 84%;
	}
	.list_en_information .item_en_information{
		width: 100%;
	}
	.list_en_information .item_en_information:nth-child(1){
		margin-right: 0;
	}
	.list_en_information .item_en_information{
		padding: 60px 0 50px;
	}
	.list_en_information .item_en_information:nth-child(1){
		margin-bottom: 78px;
	}
	.list_en_information .item_en_information h2{
		font-size: 1.7rem;
		width: 84%;
		height: 38px;
		padding-top: 6px;
	}
	.list_en_information .item_en_information ul{
		width: 66%;
	}
	.list_en_information .item_en_information ul li:not(:last-of-type){
		margin-bottom: 20px;
	}
	.list_en_information .item_en_information ul li a{
		font-size: 1.5rem;
	}
	.list_en_information .item_en_information dl{
		font-size: 1.4rem;
		max-width: 68%;
		display: block;
	}
	.list_en_information .item_en_information dl dt{
		width: 100%;
		margin-bottom: 0;
	}
	.list_en_information .item_en_information dl dd{
		width: 100%;
		margin-bottom: 4px;
	}
}







/* ========================================

__privacy

======================================== */
.box_privacy{
	font-size: 1.6rem;
	width: 84%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 120px 0 194px;
}

.box_privacy p{
	line-height: 2.25;
}

.box_privacy ul{
	margin-top: 46px;
}

.box_privacy ul li{
	font-size: 2.0rem;
	margin-bottom: 6px;
}

.box_privacy ul li::before{
	content: '・';
}

.box_privacy dl{
	margin-bottom: 56px;
}

.box_privacy dl dt{
	color: #002c54;
	font-size: 2.0rem;
	margin: 80px 0 16px;
	padding-bottom: 22px;
	border-bottom: 1px solid #002c54;
}

.box_privacy dl dd{
	line-height: 2.25;
}


@media screen and ( max-width: 800px ) {
	.box_privacy{
		font-size: 1.2rem;
		width: calc(100% - 62px);
		padding: 66px 0 96px;
	}
	.box_privacy ul{
		margin-top: 36px;
	}
	.box_privacy ul li{
		font-size: 1.5rem;
	}
	.box_privacy dl{
		margin-bottom: 56px;
	}

	.box_privacy dl dt{
		font-size: 1.5rem;
		margin: 60px 0 16px;
		padding-bottom: 16px;
	}

	.box_privacy dl dd{
		line-height: 2.25;
	}
}






/* ========================================

__access

======================================== */
.access_introduction_inner{
	width: 84%;
	max-width:1060px;
	margin: 0 auto;
	padding: 100px 0;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-align-items: center;
	align-items: center;
}

.access_introduction_inner h2{
	color: #002c54;
	font-size: 2.4rem;
	letter-spacing: 0.04em;
	width: 36%;
}

.access_introduction_inner .txt{
	font-size: 1.4rem;
	line-height: 2.3;
	width: 60%;
}

.access_introduction_map iframe{
	width: 100%;
	height: 500px;
	vertical-align: bottom;
}

.box_access{
	padding-top: 96px;
	background: #f5f5f5;
}

.nav_access{
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
	margin-bottom: 10px;
	background: #fff;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.nav_access li{
	width: calc(100% / 3);
	position: relative;
}

.nav_access li a{
	color: #002c54;
	font-size: 2.2rem;
	text-align: center;
	line-height: 1;
	height: 70px;
	display: block;
	padding-top: 25px;
}

.nav_access li:not(:last-of-type) a::after{
	width: 1px;
	height: 50px;
	display: inline-block;
	content: '';
	position: absolute;
	right: 0;
	top: 10px;
	background: #002c54;
	vertical-align: middle;
}

.box_access h2,
.box_access h3{
	color: #002c54;
	font-size: 2.4rem;
	text-align: center;
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
	margin-bottom: 54px;
}

.box_access h2 span,
.box_access h3 span{
	padding-bottom: 2px;
	border-bottom: 2px solid #002c54;
}

.list_access{
	text-align: center;
	width: 84%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 120px 0;
}

#access01 ol{
	font-size: 1.4rem;
	text-align: left;
	max-width: 800px;
	margin: 0 auto;
	padding: 80px 0 74px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

#access01 ol li{
	width: 46%;
}

#access01 ol li p{
	margin-bottom: 8px;
}

.list_access .access_note{
	max-width: 800px;
	position: relative;
	margin: 0 auto;
	border: 1px solid #002c54;
}

.list_access .access_note01{
	margin-bottom: 120px;
}

.list_access .access_note dl{
	font-size: 1.4rem;
	text-align: left;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-align-items: center;
	align-items: center;
}

.list_access .access_note dt{
	color: #002c54;
	font-size: 2.4rem;
	text-align: center;
	width: 26.875%;
}

.list_access .access_note::after{
	width: 1px;
	height: calc(100% - 50px);
	content: '';
	display: block;
	position: absolute;
	left: 26.875%;
	top: 50%;
	background: #002c54;
	transform: translate(0, -50%);
}

.list_access .access_note dd{
	width: 68%;
	padding: 44px 0;
}

.list_access .access_note dd ul{
	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-align-items: center;
	align-items: center;
}

.list_access .access_note dd ul li{
	width: 50%;
	line-height: 1.4;
}

.list_access .access_note dd ul li:not(:last-of-type){
	margin-bottom: 16px;
}

.list_access .access_note dd ul li::before{
	vertical-align: top;
	width: 5px;
	height: 5px;
	content: '';
	display: inline-block;
	margin: 7px 12px 0 0;
	background: #002c54;
}

.list_access .access_note02{
	max-width: 1000px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.list_access .access_note02 dl{
	width: 44%;
	display: block;
	margin: 0 auto;
	padding: 30px 0 36px 30px;
}

.list_access .access_note02 dl dt{
	text-align: left;
	width: 100%;
	margin-bottom: 14px;
}

.list_access .access_note02 dl dd{
	text-align: left;
	width: 100%;
	padding: 0;
}

.list_access .access_note02::after{
	left: 50%;
}

.list_access .access_note02 dd ul{
	display: block;
}

.list_access .access_note02 dd ul li{
	width: 100%;
}

.item_accsess01_wrap{
	width: 84%;
	max-width: 1120px;
	margin: 0 auto;
	padding-top: 30px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.item_accsess01_wrap .item_accsess01{
	width: 47.4%;
	max-width: 530px;
	margin-bottom: 80px;
}

.item_accsess01_wrap .item_accsess01 h4{
	color: #fff;
	font-size: 1.8rem;
	text-align: center;
	margin-bottom: 20px;
	padding: 12px 0;
	background: #002c54;
}

.item_accsess01_wrap .item_accsess01 .info{
	font-size: 1.5rem;
	text-align: left;
	margin-bottom: 30px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.item_accsess01_wrap .item_accsess01 .info dt{
	color: #002c54;
	font-size: 1.6rem;
	width: 95px;
	padding: 5px 0;
	border-bottom: 1px solid #ccc;
}

.item_accsess01_wrap .item_accsess01 .info dd{
	width: calc(100% - 95px);
	line-height: 1.4;
	padding: 7px 0;
	border-bottom: 1px solid #ccc;
}

.item_accsess01_wrap .item_accsess01 .note{
	font-size: 1.4rem;
	line-height: 2;
	text-align: left;
}

.item_accsess01_wrap .item_accsess01 .note dt{
	color: #002c54;
}

#access01 .accsess01_note{
	color: #002c54;
	font-size: 1.4rem;
	max-width: 900px;
	margin: 0 auto;
	padding: 12px 0;
	background: #fff;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:center;
	justify-content:center;
	-webkit-align-items: center;
	align-items: center;
}

#access01 .accsess01_note p:not(:last-of-type){
	margin-right: 20px;
}

#access01 .accsess01_note p:nth-child(2){
	font-size: 1.8rem;
}

#access01 .accsess01_note a{
	color: #002c54;
	font-size: 2.2rem;
}

#access02{
	width: 100%;
	max-width: none;
	padding-bottom: 20px;
	background: #fff;
}

#access02 .img{
	margin-bottom: 96px;
}

#access03{
	padding-bottom: 140px;
}

#access03 .img{
	margin: 80px 0;
}






@media screen and ( min-width: 800px ) {
	#access01 .accsess01_note a:hover,
	.item_accsess01_wrap .item_accsess01 .info dd a:hover{
		text-decoration: underline;
	}
	.nav_access li a:hover{
		opacity: 0.6;
	}
}



@media screen and ( max-width: 1100px ) {
	.nav_access li a{
		font-size: 1.8rem;
	}
}


@media screen and ( max-width: 800px ) {
	.nav_access{
		display: none;
	}
	.access_introduction_inner{
		padding: 44px 0;
		display: block;
	}
	.access_introduction_inner h2{
		font-size: 1.8rem;
		width: 100%;
		margin-bottom: 40px;
	}
	.access_introduction_inner .txt{
		font-size: 1.2rem;
		line-height: 2;
		width: 100%;
	}
	.access_introduction_map iframe{
		height: 250px;
	}
	.box_access{
		padding-top: 0;
	}
	.box_access h2,
	.box_access h3{
		font-size: 1.8rem;
		width: 92%;
		margin-bottom: 30px;
	}
	#access01 ol{
		font-size: 1.3rem;
		padding: 50px 0 0;
	}
	#access01 ol li{
		width: 100%;
		margin-bottom: 30px;
	}
	#access01 ol li img{
		width: 100%;
	}
	#access01 ol li p{
		margin-bottom: 8px;
	}
	.list_access{
		margin: 0 auto;
		padding: 60px 0;
	}
	.list_access .access_note{
		border: none;
	}
	.list_access .access_note01{
		margin-bottom: 60px;
	}
	.list_access .access_note dl{
		font-size: 1.4rem;
		text-align: left;
		display: block;
	}
	.list_access .access_note dt{
		font-size: 1.3rem;
		text-align: left;
		width: 100%;
		margin-bottom: 10px;
	}
	.list_access .access_note::after{
		display: none;
	}
	.list_access .access_note dd{
		width: 100%;
		padding: 0;
	}
	.list_access .access_note dd ul{
		display: block;
	}
	.list_access .access_note dd ul li{
		width: 100%;
		line-height: 1.4;
	}
	.list_access .access_note dd ul li:not(:last-of-type){
		margin-bottom: 10px;
	}
	.item_accsess01_wrap{
		width: 100%;
		padding-top: 10px;
		display: block;
	}
	.item_accsess01_wrap .item_accsess01{
		width: 100%;
		margin-bottom: 60px;
	}
	.item_accsess01_wrap .item_accsess01 h4{
		font-size: 1.6rem;
		margin-bottom: 20px;
		padding: 12px 0;
	}
	#access01 .accsess01_note{
		font-size: 1.4rem;
		max-width: 900px;
		margin: 0 auto;
		padding: 0;
		background: inherit;
		display: block;
	}
	#access01 .accsess01_note p:not(:last-of-type){
		margin-right: 0;
	}
	#access01 .accsess01_note a{
		font-size: 1.4rem;
		display: block;
		margin-top: 14px;
		padding: 20px 0;
		background: #fff;
		border: 1px solid #002c54;
	}
	#access01 .accsess01_note a span{
		padding-right: 24px;
		background: url(../access/img/ico_link.png) no-repeat right 50%;
		background-size: 9px 7px;
	}
	#access02{
		width: 100%;
		padding-right: 8%;
		padding-left: 8%;
		padding-bottom: 20px;
		box-sizing: border-box;
	}
	#access02{
		padding-bottom: 4px;
	}
	#access02 .img{
		margin-bottom: 40px;
	}
	#access03{
		padding-bottom: 70px;
	}
	#access03 h3{
		margin-bottom: 50px;
	}
	#access03 .img{
		margin: 50px 0;
	}
	.access_note02{
		display: block;
	}
	.list_access .access_note02 dl{
		width: 100%;
		display: block;
		margin: 0 auto;
		padding: 0;
	}
	.list_access .access_note02 dl dt{
		text-align: left;
		width: 100%;
		margin-bottom: 14px;
	}

	.list_access .access_note02 dl dd{
		text-align: left;
		width: 100%;
		padding: 0;
	}

	.list_access .access_note02::after{
		left: 50%;
	}

	.list_access .access_note02 dd ul{
		display: block;
	}

	.list_access .access_note02 dd ul li{
		width: 100%;
	}
}






/* ========================================

__hakataba / top

======================================== */
.hakataba{
	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:center;
	justify-content:center;
}

.hakataba_top{
	color: #fff;
	text-align: center;
	width: 390px;
	padding: 50px 0;
	background: #002c54;
	background: linear-gradient(#002245, #002c54, #003a77, #003a77);

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: column;
	-webkit-justify-content:center;
	justify-content:center;
	-webkit-align-items: center;
	align-items: center;
}

.hakataba_top h2{
	width: 169px;
	height: 409px;
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	margin: 0 auto;
	background: url(../img/hakataba/tit_hakataba_pc.png) no-repeat;
	background-size: contain;
}

.hakataba_top .txt{
	font-size: 1.3rem;
	line-height: 2;
	margin: 56px 0 52px;
}

.hakataba_top .link{
	font-size: 1.6rem;
}

.hakataba_top .link a{
	color: inherit;
	text-decoration: underline;
}

.hakataba_top .link a::before{
	color: #002c54;
	line-height: 1;
	width: 28px;
	height: 28px;
	content: '?';
	display: inline-block;
	margin-right: 6px;
	padding: 6px 0 0 2px;
	background: #fff;
	border-radius: 50%;
	box-sizing: border-box;
}

.list_pickup_wrap{
	width: calc(100% - 390px);
}

.list_pickup_wrap .item_pickup{
	padding-bottom: 70px;
}

.list_pickup_wrap .item_pickup .box_img{
	position: relative;
}

.list_pickup_wrap .item_pickup .img{
	transition: all .2s;
	position: relative;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

.list_pickup_wrap .item_pickup .img::before{
	width: 100%;
	padding-top: 550px;
	display: block;
	content: '';
}

.list_pickup_wrap .item_pickup .img::after{
	width: 100%;
	height: 100%;
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top:0;
	background: #002c54;
	opacity: 0;
	transition: all .2s;
}

.list_pickup_wrap .item_pickup .box_img::after{
	color: #fff;
	font-size: 2.6rem;
	content: '読む';
	position: absolute;
	left: 50%;
	top:50%;
	transform: translate(-50%, -50%);
	padding: 12px 70px 12px 0;
	opacity: 0;
	background: url(../img/hakataba/ico_arrow.png) no-repeat right 50%;
	background-size: 59px;
}

.list_pickup_wrap .item_pickup .date{
	color: #002c54;
	font-size: 2.2rem;
	text-align: center;
	line-height: 1;
	width: 104px;
	height: 154px;
	padding-top: 10px;
	position: absolute;
	left: 36px;
	top: 0;
	background: #fff;
}

.list_pickup_wrap .item_pickup .date .m,
.list_pickup_wrap .item_pickup .date .d{
	font-size: 3.4rem;
	letter-spacing: 0.04em;
	width: 62px;
	display: block;
	margin: 0 auto;
	margin-top: 6px;
	padding-top: 6px;
	border-top: 2px solid #002c54;
}

.list_pickup_wrap .item_pickup .sub{
	color: #fff;
	font-size: 2.4rem;
	letter-spacing: 0.04em;
	line-height: 1.4;
	display: inline-block;
	margin-right: 20px;
	padding: 6px 18px;
	position: absolute;
	bottom: -22px;
	left: 40px;
	background: #002c54;
}

.list_pickup_wrap .item_pickup .sub::before{
	width: 89px;
	height: 89px;
	content: '';
	display: block;
	position: absolute;
	top: -94px;
	left: -8px;
	background: url(../img/hakataba/ico_pickup_pc.png) no-repeat;
	background-size: 100%;
}

.list_pickup_wrap .item_pickup .tit{
	color: #002c54;
	font-size: 6.0rem;
	line-height: 1.4;
	margin: 40px 0 10px 40px;
}

.list_pickup_wrap .item_pickup .txt{
	color: #333;
	font-size: 1.6rem;
	line-height: 2;
	width: 90%;
	max-width: 690px;
	margin-left: 40px;
}

.list_pickup_wrap ul.slick-dots{
	position: absolute;
	top: 576px;
	width: calc(100% - 80px);
	max-width: 100%;
}

.list_pickup_wrap ul.slick-dots li{
	width: 32px;
	margin: 0 2px;
}
.list_pickup_wrap ul.slick-dots li button{
	width: 32px;
	padding: 0;
}


@media screen and ( min-width: 800px ) {
	.list_pickup_wrap .item_pickup a:hover .img::after{
		opacity: 0.5;
	}
	.list_pickup_wrap .item_pickup a:hover .box_img::after{
		opacity: 1;
	}
	.list_pickup_wrap .item_pickup a:hover .tit{
		text-decoration: underline;
	}
	.hakataba_top .link a:hover{
		text-decoration: none;
	}
}

@media screen and ( max-width: 800px ) {
	.hakataba_top{
		color: #002c54;
		width: 100%;
		padding: 0 0 40px;
		background: #fff;
		display: block;
	}
	.hakataba_top .logo{
		height: 134px;
		padding-top: 26px;
		background: linear-gradient(#002245, #002c54, #003a77, #003a77);
	}
	.hakataba_top h2{
		width: 100%;
		height: 79px;
		background: url(../img/hakataba/tit_hakataba_sp.png) no-repeat 50% 50%;
		background-size: contain;
	}
	.hakataba_top .txt{
		font-size: 1.2rem;
		margin: 26px 0 22px;
	}
	.hakataba_top .link{
		font-size: 1.2rem;
	}
	.hakataba_top .link a::before{
		color: #fff;
		font-size: 1.1rem;
		width: 21px;
		height: 21px;
		margin-right: 6px;
		padding: 5px 0 0 0;
		background: #002c54;
	}
	.list_pickup_wrap{
		width: 100%;
	}
	.list_pickup_wrap .item_pickup .box_img{
		text-align: center;
		margin-bottom: 70px;
	}
	.list_pickup_wrap .item_pickup .img{
		transition: all .2s;
		position: relative;
		background-repeat: no-repeat;
		background-position: center top;
		background-size: cover;
	}
	.list_pickup_wrap .item_pickup .img::before{
			padding-top: 77%;
	}
	.list_pickup_wrap .item_pickup .date{
		font-size: 1.25rem;
		width: 58px;
		height: 80px;
		padding-top: 0;
		left: 28px;
		top: 0;
	}
	.list_pickup_wrap .item_pickup .date .m,
	.list_pickup_wrap .item_pickup .date .d{
		font-size: 2.0rem;
		width: 35px;
		margin-top: 4px;
		padding-top: 5px;
		border-width: 1px;
	}
	.list_pickup_wrap .item_pickup .sub{
		text-align: center;
		font-size: 1.3rem;
		letter-spacing: 0.04em;
		margin-right: 0;
		position: relative;
		bottom: -49px;
		left: auto;
		margin: 0 auto;
	}
	.list_pickup_wrap .item_pickup .sub span{
		padding: 6px 10px;
		background: #002c54;
	}
	.list_pickup_wrap .item_pickup .sub::before{
		width: 75px;
		height: 75px;
		top: -94px;
		left: auto;
		right: 20px;
		background: url(../img/hakataba/ico_pickup_sp.png) no-repeat;
		background-size: 100%;
	}
	.list_pickup_wrap .item_pickup .tit{
		font-size: 3.0rem;
		text-align: center;
		line-height: 1.4;
		margin: 20px 0 10px 0;
	}
	.list_pickup_wrap .item_pickup .txt{
		font-size: 1.2rem;
		width: 84%;
		margin: 0 auto;
	}
	.list_pickup_wrap ul.slick-dots{
		top: 0;
		width: 100%;
		padding-top: calc(77% + 12px);
		z-index: -1;
	}
	.list_pickup_wrap ul.slick-dots li{
		width: 16px;
	}
	.list_pickup_wrap ul.slick-dots li button{
		width: 16px;
	}

}




.top_hakataba_wrap{
	padding-bottom: 100px;
}

.list_hakataba_new{
	padding-bottom: 60px;
	margin-bottom: 146px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.list_hakataba_new .item_hakataba{
	width: 50%;
}

.item_hakataba{
	position: relative;
}

.item_hakataba a{
	color: #002c54;
	display: block;
}

.item_hakataba .box_img{
	position: relative;
}

.list_hakataba_new .item_hakataba.ico_new::before,
.list_hakataba .item_hakataba.ico_new::before{
	width: 74px;
	height: 74px;
	display: block;
	content: '';
	position: absolute;
	top: -30px;
	left: 46px;
	z-index: 4;
	background: url(../img/hakataba/ico_new_pc.png) no-repeat;
	background-size: 100%;
}

.list_hakataba .item_hakataba.ico_new::before{
	width: 56px;
	height: 56px;
	left: -18px;
}

.item_hakataba .img{
	transition: all .2s;
	position: relative;
	padding-top: 51.3%;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

.item_hakataba .img::before{
	width: 100%;
	height: 100%;
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top:0;
	background: #002c54;
	opacity: 0;
	transition: all .2s;
}

.item_hakataba .img::after{
	color: #fff;
	font-size: 2.6rem;
	content: '読む';
	position: absolute;
	left: 50%;
	top:50%;
	transform: translate(-50%, -50%);
	padding: 12px 70px 12px 0;
	opacity: 0;
	background: url(../img/hakataba/ico_arrow.png) no-repeat right 50%;
	background-size: 59px;
}

.item_hakataba .date{
	color: #002c54;
	font-size: 2.0rem;
	text-align: center;
	line-height: 1;
	width: 92px;
	height: 138px;
	position: absolute;
	padding-top: 12px;
	right: 34px;
	top: -12px;
	background: #fff;
}

.item_hakataba .date .m,
.item_hakataba .date .d{
	font-size: 3.1rem;
	letter-spacing: 0.04em;
	width: 56px;
	display: block;
	margin: 0 auto;
	margin-top: 8px;
	padding-top: 8px;
	border-top: 2px solid #002c54;
}

.item_hakataba .sub{
	color: #fff;
	font-size: 1.9rem;
	letter-spacing: 0.04em;
	line-height: 1.4;
	display: inline-block;
	padding: 2px 8px 3px;
	position: absolute;
	bottom: -14px;
	left: 46px;
	background: #002c54;
}

.item_hakataba .tit{
	font-size: 4.0rem;
	line-height: 1.4;
	margin: 30px 0 12px 58px;
}

.item_hakataba .txt{
	color: #333;
	font-size: 1.4rem;
	line-height: 1.7;
}

.list_hakataba_new .item_hakataba .txt{
	width: 74%;
	margin-left: 58px;
}

.top_hakataba_wrap .list_hakataba{
	width: 78%;
	max-width: 1200px;
	margin: 0 auto;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.top_hakataba_wrap .list_hakataba .item_hakataba{
	width: 30.2%;
	max-width: 362px;
	margin-bottom: 106px;
}

.top_hakataba_wrap .list_hakataba .item_hakataba:not(:nth-child(3n)){
	margin-right: 4.7%;
}

.list_hakataba .item_hakataba .date{
	font-size: 1.2rem;
	width: 56px;
	height: 88px;
	right: -8px;
}

.list_hakataba .item_hakataba .date .m,
.list_hakataba .item_hakataba .date .d{
	font-size: 1.9rem;
	width: 35px;
	margin-top: 4px;
	padding-top: 5px;
	border-width: 1px;
}

.list_hakataba .item_hakataba .sub{
	font-size: 1.4rem;
	padding: 2px 8px 3px;
	bottom: -14px;
	left: -9px;
}

.list_hakataba .item_hakataba .tit{
	font-size: 3.0rem;
	line-height: 1.4;
	margin: 30px 0 12px;
}






@media screen and ( min-width: 800px ) {
	.item_hakataba a:hover .img::before{
		opacity: .5;
	}
	.item_hakataba a:hover .img::after{
		opacity: 1;
	}
	.item_hakataba a:hover .tit{
		text-decoration: underline;
	}
}

@media screen and ( max-width: 800px ) {
	.top_hakataba_wrap{
		padding-bottom: 146px;
	}
	.list_hakataba_new{
		margin-bottom: 0;
		padding-bottom: 0;
		display: block;
	}
	.list_hakataba_new .item_hakataba,
	.top_hakataba_wrap .list_hakataba .item_hakataba{
		width: 100%;
		margin-bottom: 50px;
	}
	.list_hakataba_new .item_hakataba.ico_new::before,
	.list_hakataba .item_hakataba.ico_new::before{
		width: 50px;
		height: 50px;
		top: -23px;
		left: auto;
		right: 25px;
		background: url(../img/hakataba/ico_new_sp.png) no-repeat;
		background-size: 100%;
	}
	.list_hakataba .item_hakataba.ico_new::before{
		width: 50px;
		height: 50px;
		left: auto;
		right: 24px;
	}
	.top_hakataba_wrap .item_hakataba .date{
		font-size: 1.25rem;
		text-align: center;
		line-height: 1;
		width: 58px;
		height: 94px;
		right: auto;
		top: 0;
		left: 28px;
		background: #fff;
	}
	.top_hakataba_wrap .item_hakataba .date .m,
	.top_hakataba_wrap .item_hakataba .date .d{
		font-size: 2.0rem;
		width: 35px;
		margin-top: 5px;
		padding-top: 6px;
		border-width: 1px;
	}
	.top_hakataba_wrap .item_hakataba .sub{
		font-size: 1.3rem;
		padding: 4px 8px 5px;
		bottom: -12px;
		left: 22px;
	}
	.list_hakataba_new .item_hakataba .tit{
		width: calc(100% - 60px);
		font-size: 2.5rem;
		margin: 0 auto;
		margin-top: 20px;
		margin-bottom: 12px;
	}
	.top_hakataba_wrap .item_hakataba .txt{
		font-size: 1.2rem;
		line-height: 1.7;
	}
	.list_hakataba_new .item_hakataba .txt{
		width: calc(100% - 60px);
		margin: 0 auto;
	}
	.list_hakataba .item_hakataba{
		width: 100%;
		max-width: none;
		margin-bottom: 36px;
	}
	.top_hakataba_wrap .list_hakataba .item_hakataba:not(:nth-child(3n)){
		margin-right: 0;
	}
	.list_hakataba .item_hakataba .date{
		font-size: 1.2rem;
		width: 56px;
		height: 90px;
		left: auto;
		right: -8px;
	}
	.list_hakataba .item_hakataba .date .m,
	.list_hakataba .item_hakataba .date .d{
		font-size: 1.9rem;
		width: 35px;
		margin-top: 4px;
		padding-top: 5px;
		border-width: 1px;
	}
	.top_hakataba_wrap .list_hakataba .item_hakataba .sub{
		font-size: 1.1rem;
		padding: 2px 8px 3px;
		bottom: -14px;
		left: -9px;
	}
	.list_hakataba .item_hakataba .tit{
		font-size: 2.1rem;
		margin: 22px 0 8px;
	}
}




.list_archive{
	position: relative;
	padding: 128px 0 122px;
	background: #f7f7f7;
}

.list_archive h2{
	color: #002c54;
	font-size: 3.9rem;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.04em;
	margin-bottom: 16px;
	padding-bottom: 20px;
	background: url(../img/hakataba/bg_hakataba.png) no-repeat center bottom;
	background-size: 48px;
}

.list_archive h2::after{
	width: 135px;
	height: 135px;
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	top: 96px;
	margin-left: 186px;
	background: url(../img/hakataba/ico_hakataba.png) no-repeat;
	background-size: 100%;
}

.list_archive .sub{
	color: #002c54;
	font-size: 1.6rem;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.08em;
	margin-bottom: 68px;
}

.list_archive ul{
	width: 84%;
	max-width: 1000px;
	margin: 0 auto;
	overflow: hidden;
	transition: all 1s;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.list_archive ul li{
	width: 18%;
	margin-bottom: 56px;
}

.list_archive ul li{
	display: none;
	opacity: 0;
	transition: all .2s;
}

.list_archive ul li:nth-child(1),
.list_archive ul li:nth-child(2),
.list_archive ul li:nth-child(3),
.list_archive ul li:nth-child(4),
.list_archive ul li:nth-child(5){
	display: block;
	opacity: 1;
}

.list_archive.on ul li{
	display: block;
	opacity: 1;
}

.list_archive ul li:not(:nth-child(5n)){
	margin-right: 2.5%;
}

.list_archive ul li a{
	display: block;
}

.list_archive ul li .img::before{
	width: 100%;
	height: 100%;
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top:0;
	background: #002c54;
	opacity: 0;
	transition: all .2s;
}

.list_archive ul li .img::after{
	color: #fff;
	font-size: 2.0rem;
	content: '見る';
	position: absolute;
	left: 50%;
	top:50%;
	transform: translate(-50%, -50%);
	padding-right: 22px;
	opacity: 0;
	background: url(../img/hakataba/ico_link.png) no-repeat right 50%;
	background-size: 16px;
}

.list_archive ul li .img{
	position: relative;
	margin-bottom: 10px;
}

.list_archive ul li .no{
	color: #002c54;
	font-size: 1.9rem;
	letter-spacing: 0.04em;
}

.list_archive ul li .no span{
	border-bottom: 1px solid #002c54;
}

.list_archive ul li .no span::before{
	font-size: 1.2rem;
	content: 'No.';
}

.list_archive ul li .tit{
	color: #002c54;
	font-size: 1.4rem;
	margin: 4px 0 2px;
}

.list_archive ul li .txt{
	color: #858585;
}

.bnr_about{
	text-align: center;
	margin: 70px 0 90px;
}

.list_archive .btn{
	font-size: 1.4rem;
	text-align: center;
	width: 318px;
	height: 60px;
	display: block;
	cursor: pointer;
	margin: 0 auto;
	padding-top: 18px;
	border: 1px solid #002c54;
}

.list_archive .btn span{
	color: #002c54;
	padding-left: 19px;
	background: url(../img/ico_btn.gif) no-repeat 0 4px;
	background-size: 12px;
	transition: all .2s;
}



@media screen and ( min-width: 800px ) {
	.list_archive ul li a:hover .img::before{
		opacity: 0.5;
	}

	.list_archive ul li a:hover .img::after{
		opacity: 1;
	}
	.list_archive .btn:hover{
		background: #002c54;
	}
	.list_archive .btn:hover span{
		color: #fff;
		background-image: url(../img/ico_btn_on.gif);
	}
}

@media screen and ( max-width: 800px ) {
	.list_archive{
		padding: 105px 0 76px;
	}
	.list_archive h2{
		font-size: 2.7rem;
		margin-bottom: 14px;
		padding-bottom: 18px;
		background-size: 33px;
	}
	.list_archive h2::after{
		width: 102px;
		height: 102px;
		left: 50%;
		top: -30px;
		margin-left: 50px;
	}
	.list_archive .sub{
		font-size: 1.2rem;
		margin-bottom: 40px;
	}
	.list_archive ul{
	    -webkit-justify-content: space-between;
	    justify-content: space-between;
	}
	.list_archive ul li{
		width: 46.7%;
		margin-bottom: 44px;
	}
	.list_archive ul li:not(:nth-child(5n)){
		margin-right: 0;
	}
	.list_archive ul li,
	.list_archive ul li:nth-child(5){
		display: none;
		opacity: 0;
		transition: all .2s;
	}
	.list_archive ul li:nth-child(1),
	.list_archive ul li:nth-child(2),
	.list_archive ul li:nth-child(3),
	.list_archive ul li:nth-child(4){
		display: block;
		opacity: 1;
	}
	.list_archive.on ul li{
		display: block;
		opacity: 1;
	}
	.list_archive ul li .no{
		font-size: 1.6rem;
	}
	.list_archive ul li .no span::before{
		font-size: 1.0rem;
	}
	.list_archive ul li .tit{
		font-size: 1.2rem;
		margin: 4px 0 2px;
	}
	.bnr_about{
		margin: 63px 0 68px;
	}

}






/* ========================================

__hakataba / list

======================================== */
.hakataba_list_title{
	position: relative;
}

.hakataba_list_title .hakataba_top{
	position: absolute;
	top: 0;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:center;
	justify-content:center;
	align-items: center;
	flex-direction: column;
}

.list_hakataba_wrap .pagenation{
	margin: 76px 0;
}

.list_hakataba_wrap .list_hakataba{
	width: 78%;
	max-width: 930px;
	margin: 0 auto;
	margin-top: 80px;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
}

.list_hakataba_wrap .list_hakataba_bottom{
	color: #002c54;
	width: 84%;
	max-width: 730px;
	margin: 0 auto;
	margin-top: 30px;
	margin-bottom: 50px;
	padding: 20px;
	background: #f7f7f7;


	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
   	-webkit-justify-content: space-between;
   	justify-content: space-between;
   	-webkit-align-items: center;
   	align-items: center;
}

.list_hakataba_wrap .list_hakataba_bottom .tit{
	font-size: 1.6rem;
}

.list_hakataba_wrap .list_hakataba_bottom .page{
	font-size: 1.4rem;
	line-height: 1.2;
	letter-spacing: 0.06em;
	padding: 0;
	border-bottom: 1px solid #002c54;
}

.list_hakataba .item_hakataba{
	width: 45%;
	max-width: 417px;
	margin-bottom: 56px;
}

.pagenation2 a,
.pagenation2 span,
.pagenation2 a.next,
.pagenation2 a.prev,
.pagenation2 span.next,
.pagenation2 span.prev{
	height: auto;
	padding: 30px 20px 26px;
	border-top: 1px solid #002c54;
	border-bottom: 1px solid #002c54;
}

.pagenation2 a.next,
.pagenation2 span.next{
	padding-right: 56px;
}

.pagenation2 a.prev,
.pagenation2 span.prev{
	padding-left: 56px;
}




@media screen and ( max-width: 800px ) {
	.hakataba_detail_title.hakataba_list_title .hakataba_top{
		padding-bottom: 42px;
		background: linear-gradient(#002245, #002c54, #003a77, #003a77);
	}
	#title.tit_hakataba{
		width: 84%;
		left: 8%;
		height: auto;
		bottom: -20px;
		padding: 14px 20px;
		position: absolute;
	}
	#title.tit_hakataba h1{
		font-size: 1.2rem;
		margin-left: 0;
	}
	#title.tit_hakataba .page{
		font-size: 1.2rem;
	}
	.hakataba_list_title .hakataba_top .logo{
		width: 100%;
		height: auto;
		padding-top: 0;
		background: none;
	}
	.list_hakataba_wrap .pagenation{
		margin: 50px 0 50px;
	}
	.list_hakataba_wrap .list_hakataba{
		width: 100%;
	}
	.list_hakataba .item_hakataba{
		width: 100%;
		max-width: none;
		margin-bottom: 56px;
	}
	.list_hakataba .item_hakataba .date{
		right: auto;
		left: 28px;
	}
	.list_hakataba .item_hakataba .sub{
		font-size: 1.3rem;
		left: 22px;
	}
	.list_hakataba_wrap .list_hakataba .tit{
		width: 84%;
		margin: 0 auto;
		margin-top: 22px;
		margin-bottom: 10px;
	}
	.list_hakataba_wrap .list_hakataba .txt{
		font-size: 1.2rem;
		width: 84%;
		margin: 0 auto;
	}
	.list_hakataba_wrap .list_hakataba_bottom{
		margin-top: 0;
	}
	.list_hakataba .pagenation2{
		padding-bottom: 60px;
	}
	.pagenation2 a,
	.pagenation2 span,
	.pagenation2 a.next,
	.pagenation2 a.prev,
	.pagenation2 span.next,
	.pagenation2 span.prev{
		padding: 30px 14px 26px;
	}
	.pagenation2 a.next,
	.pagenation2 span.next{
		padding-right: 0;
	}

	.pagenation2 a.prev,
	.pagenation2 span.prev{
		padding-left: 0;
	}
}





/* ========================================

__hakataba / detail

======================================== */
.hakataba_detail_title .box_img{
	position: relative;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:center;
	justify-content:center;
	align-items: center;
	flex-direction: column;
}

.hakataba_detail_title .hakataba_top,
.hakataba_about .hakataba_top{
	width: 130px;
	height: 358px;
	position: absolute;
	left: 0;
	padding: 0;
	z-index: 2;
}

.hakataba_detail_title .hakataba_top h2,
.hakataba_about .hakataba_top h2{
	width: 75px;
	height: 182px;
}

.hakataba_detail_title .hakataba_top .link2,
.hakataba_about .hakataba_top .link2{
	margin-top: 36px;
}

.hakataba_detail_title .hakataba_top .link2 a,
.hakataba_about .hakataba_top .link2 a{
	color: #fff;
	font-size: 1.2rem;
	text-align: center;
	line-height: 1;
	display: inline-block;
	padding: 7px 10px 5px;
	border: 1px solid #fff;
}

.hakataba_detail_title .date{
	position: absolute;
	right: 0;
}

.hakataba_detail_title .box_txt .box_txt_inner{
	width: calc(100% - 120px);
}

.hakataba_detail_title .img{
	width: calc(100% - 88px);
	height: 582px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}

.hakataba_detail_title .date{
	color: #002c54;
	font-size: 2.1rem;
	text-align: center;
	line-height: 1;
	width: 142px;
	height: 290px;
	position: absolute;
	right: 0;
	background: #fff;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:center;
	justify-content:center;
	align-items: center;
	flex-direction: column;
}

.hakataba_detail_title .date .m,
.hakataba_detail_title .date .d,
.hakataba_detail_title .date .w{
	font-size: 3.3rem;
	letter-spacing: 0.04em;
	width: 60px;
	display: block;
	margin: 0 auto;
	margin-top: 7px;
	padding-top: 10px;
	border-top: 2px solid #002c54;
}

.hakataba_detail_title .date .w{
	font-size: 1.0rem;
	text-transform: uppercase;
	margin-top: 4px;
	padding-top: 14px;
}

.hakataba_detail_title .box_txt{
	width: 84%;
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
	z-index: 5;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.hakataba_detail_title .box_txt .sub{
	color: #fff;
	font-size: 2.0rem;
	letter-spacing: 0.04em;
	line-height: 1.4;
	display: inline-block;
	margin-top: -20px;
	margin-left: -16px;
	padding: 10px 20px 10px;
	background: #002c54;
}

.hakataba_detail_title .box_txt.pickup .sub::before{
	width: 89px;
	height: 89px;
	content: '';
	display: block;
	position: absolute;
	top: -130px;
	left: -30px;
	background: url(../img/hakataba/ico_pickup_pc.png) no-repeat;
	background-size: 100%;
}

.hakataba_detail_title .box_txt .tit{
	color: #002c54;
	font-size: 5.2rem;
	margin: 10px 0 8px;
}

.hakataba_detail_title .box_txt .txt{
	color: #333;
	font-size: 1.8rem;
	line-height: 2;
}

.hakataba_detail_title .box_txt .sns{
	text-align: center;
	width: 90px;
	margin-top: -24px;
	padding: 60px 0 0 18px;
	border-left: 1px solid #002c54;
}

.hakataba_detail_title .box_txt .sns p{
	color: #002c54;
	font-size: 1.4rem;
	margin-bottom: 4px;
}

.hakataba_detail .sns li{
	display: inline-block;
	margin-right: 3px;
}

.hakataba_detail .sns .tw a,
.hakataba_detail .sns .fb a{
	text-align: center;
	width: 30px;
	height: 30px;
	display: block;
	padding-top: 8px;
	background: #002c54;
	 border-radius: 50%;
}

.hakataba_detail .sns .tw a{
	padding-top: 9px;
}

.hakataba_detail .sns .tw span{
	width: 13px;
	height: 11px;
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	margin: 0 auto;
	background: url(../img/hakataba/ico_tw.png) no-repeat;
	background-size: contain;
}

.hakataba_detail .sns .fb span{
	width: 14px;
	height: 13px;
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	margin: 0 auto;
	background: url(../img/hakataba/ico_fb.png) no-repeat;
	background-size: contain;
}



@media screen and ( min-width: 800px ) {
	.hakataba_detail .tw a:hover{
		background: #008cfa;
	}
	.hakataba_detail .fb a:hover{
		background: #0046bd;
	}
	.hakataba_top .link2 a:hover{
		color: #002c54;
		background: #fff;
	}
}


@media screen and ( max-width: 800px ) {
	.hakataba_detail_title .box_img{
		position: relative;
	}
	.hakataba_detail_title  .hakataba_top,
	.hakataba_about .hakataba_top{
		width: 100%;
		height: auto;
		position: relative;
		left: auto;
		margin-bottom: 24px;
		padding: 26px 0 30px;
		background: linear-gradient(#002245, #002c54, #003a77);
	}
	.hakataba_detail_title .hakataba_top h2,
	.hakataba_about .hakataba_top h2{
		width: 100%;
		height: 79px;
	}
	.hakataba_detail_title .hakataba_top .link2,
	.hakataba_about .hakataba_top .link2{
		display: none;
	}
	.hakataba_detail_title .img{
		width: 100%;
		height: auto;
	}
	.hakataba_detail_title .img::before{
		width: 100%;
		display: block;
		content: '';
		padding-top: 77.8%;
	}
	.hakataba_detail_title .date{
		font-size: 1.25rem;
		width: 55px;
		height: 90px;
		transform: translate(0, 100%);
	}
	.hakataba_detail_title .date .m,
	.hakataba_detail_title .date .d,
	.hakataba_detail_title .date .w{
		font-size: 2.0rem;
		width: 35px;
		margin-top: 3px;
		padding-top: 4px;
		border-width: 1px;
	}
	.hakataba_detail_title .date .w{
		display: none;
	}
	.hakataba_detail_title .box_txt .box_txt_inner{
		width: 100%;
	}
	.hakataba_detail_title .box_txt .sub{
		font-size: 1.3rem;
		margin-top: -20px;
		margin-left: 0;
		padding: 6px 10px 8px;
	}
	.hakataba_detail_title .box_txt.pickup .sub::before{
		width: 75px;
		height: 75px;
		top: -96px;
		left: -30px;
	}
	.hakataba_detail_title .box_txt .tit{
		font-size: 3.0rem;
		margin: 10px 0 8px;
	}
	.hakataba_detail_title .box_txt .txt{
		font-size: 1.4rem;
	}
	.hakataba_detail_title .box_txt .sns{
		text-align: left;
		width: 100%;
		margin-top: 20px;
		padding: 14px 0;
		border-left: none;
		border-top: 1px solid #002c54;
		border-bottom: 1px solid #002c54;

		display:-webkit-flex;
		display:flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		align-items: center;
	}
	.hakataba_detail_title .box_txt .sns p{
		font-size: 1.3rem;
		line-height: 1;
		margin: 0 18px 0 10px;
	}
	.hakataba_detail .sns li{
		display: inline-block;
		margin-right: 3px;
	}
}






.hakataba_detail_contents{
	font-size: 1.6rem;
	max-width: 1000px;
	margin: 0 auto;
	margin-top: 92px;
	margin-bottom: 160px;
}

.hakataba_detail_contents img{
	height: auto;
}

.hakataba_detail_contents br{
	clear: both;
}

.hakataba_detail_contents .box_img02,
.hakataba_detail_contents .box_img03,
.hakataba_detail_contents .box_img04{

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.hakataba_detail_contents .wp-caption{
	text-align: right;
	max-width: 100%;
	position: relative;
	margin-bottom: 40px;
}

.hakataba_detail_contents .box_img02 .wp-caption{
	width: 48% !important;
	margin-bottom: 0;
}

.hakataba_detail_contents .box_img03 .wp-caption{
	width: 31% !important;
	margin-bottom: 0;
}

.hakataba_detail_contents .box_img04 .wp-caption{
	width: 23% !important;
	margin-bottom: 0;
}

.hakataba_detail_contents .box_img02 .wp-caption img,
.hakataba_detail_contents .box_img03 .wp-caption img,
.hakataba_detail_contents .box_img04 .wp-caption img{
	width: 100%;
	height: auto;
}

.hakataba_detail_contents .wp-caption .wp-caption-text{
	color: #fff;
	font-size: 1.2rem;
	display: inline-block;
	margin-right: -16px;
	padding: 6px 14px;
	background: #002c54;
	position: relative;
	transform: translate(0, -15px);
}

.hakataba_detail_contents .box_hl{
	color: #002c54;
	width: 72%;
	line-height: 2.25;
	margin: 0 auto;
}

.hakataba_detail_contents .box_hl .vol_wrap{
	font-size: 3.4rem;
	letter-spacing: 0.04em;
	line-height: 1;

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

.hakataba_detail_contents .box_hl .vol_wrap .vol{
	padding-bottom: 8px;
}

.hakataba_detail_contents .box_hl .vol_wrap .num{
	font-size: 8.0rem;
	margin-right: 4px;
}

.hakataba_detail_contents .box_hl .vol_wrap .txt{
	font-size: 3.6rem;
	padding-bottom: 8px;
}

.hakataba_detail_contents .box_hl .sub{
	font-size: 1.8rem;
	margin: 8px 0;
}

.hakataba_detail_contents .box_hl .tit{
	color: #fff;
	font-size: 2.4rem;
	padding: 8px 24px;
	background: #002c54;
}

.hakataba_detail_contents > p{
	width: 72%;
	line-height: 2.25;
	margin: 0 auto;
	clear: both;
}

.hakataba_detail_contents > p.img_wrap{
	width: 100%;
}

.hakataba_detail_contents h2{
	color: #002c54;
	font-size: 3.6rem;
	line-height: 2;
	width: 72%;
	margin: 0 auto;
	margin-bottom: 50px;
}

.hakataba_detail_contents a{
	color: #002c54;
	text-decoration: underline;
}



@media screen and ( min-width: 800px ) {
	.hakataba_detail_contents a:hover{
		background: rgba(0, 44, 84, 0.2);
	}
}


@media screen and ( max-width: 1000px ) {
	.hakataba_detail_contents .wp-caption .wp-caption-text{
		margin-right: 0;
	}
}


@media screen and ( max-width: 800px ) {
	.hakataba_detail_contents{
		font-size: 1.4rem;
		margin-top: 48px;
		margin-bottom: 88px;
	}
	.hakataba_detail_contents .box_img02 .wp-caption{
		width: 100% !important;
	}
	.hakataba_detail_contents .box_img03,
	.hakataba_detail_contents .box_img04{
		width: 84%;
		margin: 0 auto;
	}
	.hakataba_detail_contents .box_img03 .wp-caption{
		width: 48% !important;
	}

	.hakataba_detail_contents .box_img04 .wp-caption{
		width: 48% !important;
	}
	.hakataba_detail_contents .wp-caption{
		text-align: center;
	}
	.hakataba_detail_contents .wp-caption .wp-caption-text{
		font-size: 1.1rem;
		text-align: left;
		margin-right: 0;
		padding: 6px 14px;
	}
	.hakataba_detail_contents > p{
		width: 84%;
		line-height: 2;
	}
	.hakataba_detail_contents h2{
		font-size: 2.15rem;
		line-height: 1.75;
		width: 84%;
		margin-bottom: 32px;
	}
}




.hakataba_detail .hakataba_detail_info{
	width: 80%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 80px 100px;
	background: #f7f7f7;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.hakataba_detail .hakataba_detail_info h2{
	color: #002c54;
	font-size: 2.4rem;
}

.hakataba_detail .hakataba_detail_info h2 span{
	border-bottom: 2px solid #002c54;
}

.hakataba_detail .hakataba_detail_info ul{
	width: calc(100% - 210px);
}

.hakataba_detail .hakataba_detail_info ul li{

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.hakataba_detail .hakataba_detail_info ul li:not(:last-of-type){
	margin-bottom: 46px;
}

.hakataba_detail .hakataba_detail_info ul li .img{
	width: 130px;
	height: 130px;
	background-position: 50% 50%;
	background-size: cover;
}

.hakataba_detail .hakataba_detail_info ul li .box_txt{
	width: calc(100% - 160px);
}

.hakataba_detail .hakataba_detail_info ul li .tit{
	color: #002c54;
	font-size: 2.0rem;
	margin-bottom: 6px;
}

.hakataba_detail .hakataba_detail_info ul li .txt{
	font-size: 1.2rem;
	line-height: 1.6;
}

.hakataba_detail .hakataba_detail_info ul li .link{
	margin-top: 12px;
}

.hakataba_detail .hakataba_detail_info ul li .link a{
	color: #002c54;
	font-size: 1.2rem;
	display: inline-block;
	padding: 7px 40px;
	background: #fff url(../img/hakataba/ico_link2.png) no-repeat right 16px top 50%;
	background-size: 9px;
}


@media screen and ( min-width: 800px ) {
	.hakataba_detail .hakataba_detail_info ul .link a:hover{
		color: #fff;
		background-color: #002c54 ;
		background-image: url(../img/hakataba/ico_link3.png);
	}
}


@media screen and ( max-width: 1000px ) {
	.hakataba_detail .hakataba_detail_info{
		display: block;
		padding: 80px 60px;
	}
	.hakataba_detail .hakataba_detail_info h2{
		text-align: center;
		margin-bottom: 50px;
	}
	.hakataba_detail .hakataba_detail_info ul{
		width: 100%;
	}
}


@media screen and ( max-width: 800px ) {
	.hakataba_detail .hakataba_detail_info{
		width: 100%;
		padding: 50px 0;
		display: block;
	}
	.hakataba_detail .hakataba_detail_info h2{
		font-size: 2.3rem;
		text-align: center;
	}
	.hakataba_detail_contents .box_hl{
		width: 84%;
	}
	.hakataba_detail_contents .box_hl .vol_wrap{
		font-size: 2.0rem;
	}
	.hakataba_detail_contents .box_hl .vol_wrap .num{
		font-size: 5.0rem;
		margin-right: 4px;
	}
	.hakataba_detail_contents .box_hl .vol_wrap .txt{
		font-size: 2.2rem;
	}
	.hakataba_detail_contents .box_hl .sub{
		font-size: 1.3rem;
		margin: 6px 0;
	}
	.hakataba_detail_contents .box_hl .tit{
		font-size: 1.5rem;
		padding: 3px 14px;
	}
	.hakataba_detail .hakataba_detail_info ul{
		width: 100%;
	}
	.hakataba_detail .hakataba_detail_info ul li{
		width: 86%;
		margin: 0 auto;

		display:-webkit-flex;
		display:flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content:space-between;
		justify-content:space-between;
	}
	.hakataba_detail .hakataba_detail_info ul li:not(:last-of-type){
		margin-bottom: 40px;
	}
	.hakataba_detail .hakataba_detail_info ul li .img{
		width: 90px;
		height: 90px;
		background-position: 50% 50%;
	}
	.hakataba_detail .hakataba_detail_info ul li .box_txt{
		width: calc(100% - 120px);
	}
	.hakataba_detail .hakataba_detail_info ul li .tit{
		font-size: 1.5rem;
		margin-bottom: 6px;
	}
	.hakataba_detail .hakataba_detail_info ul li .txt{
		font-size: 1.0rem;
	}
	.hakataba_detail .hakataba_detail_info ul li .link{
		margin-top: 12px;
	}
	.hakataba_detail .hakataba_detail_info ul li .link a{
		color: #fff;
		font-size: 1.0rem;
		background: #002c54;
	}

}






.hakataba_detail_bottom{
	width: 84%;
	max-width: 720px;
	margin: 0 auto;
	margin-top: 90px;
	margin-bottom: 204px;
	padding: 24px 14px;
	border-top: 1px solid #002c54;
	border-bottom: 1px solid #002c54;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-align-items: center;
	align-items: center;
}

.hakataba_detail_bottom .date{
	color: #002c54;
	line-height: 1;
	text-transform: uppercase;
}

.hakataba_detail_bottom .box_tit{
	font-size: 1.1rem;
	text-align: center;
}

.hakataba_detail_bottom .box_tit .tit{
	color: #002c54;
	font-size: 1.8rem;
	margin-top: 2px;
}

.hakataba_detail_bottom .sns{
	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-align-items: center;
	align-items: center;
}

.hakataba_detail_bottom .sns p{
	color: #002c54;
	margin-right: 6px;
}

.hakataba_detail_bottom .sns .tw a,
.hakataba_detail_bottom .sns .fb a{
	text-align: center;
	width: 28px;
	height: 28px;
	padding-top: 8px;
}

.hakataba_detail .sns .tw a{
	padding-top: 9px;
}

.hakataba_detail .sns .tw span{
	width: 12px;
	height: 10px;
}

.hakataba_detail .sns .fb span{
	width: 12px;
	height: 11px;
}


@media screen and ( max-width: 800px ) {
	.hakataba_detail_bottom{
		text-align: center;
		margin-top: 69px;
		margin-bottom: 89px;
		padding: 28px 0 25px;
		display: block;
	}
	.hakataba_detail_bottom .box_tit{
		font-size: 1.0rem;
		margin: 8px 0;
	}
	.hakataba_detail_bottom .box_tit .tit{
		font-size: 1.5rem;
		margin-top: 2px;
	}
	.hakataba_detail_bottom .sns{
		-webkit-justify-content:center;
		justify-content:center;
	}
	.hakataba_detail_bottom .sns p{
		color: #002c54;
		margin-right: 6px;
	}
}





.hakataba_detail_pager{
	width: 88%;
	max-width: 1380px;
	margin: 0 auto;
	margin-bottom: 230px;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-align-items: center;
	align-items: center;
}

.hakataba_detail_pager .post_around{
	width: 47%;
	max-width: 650px;
}

.hakataba_detail_pager .post_around a{
	padding: 58px 0;
	display: block;
	position: relative;
	border-top: 1px solid #002c54;
	border-bottom: 1px solid #002c54;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-align-items: center;
	align-items: center;
}

.hakataba_detail_pager .post_around .img{
	width: 28%;
	/*height: 80px;*/
	margin-left: 55px;
	background-position: 50% 50%;
	background-size: cover;
}

.hakataba_detail_pager .post_around .img::before{
	padding-top: 44.44%;
	display: block;
	content: '';
}

.hakataba_detail_pager .post_around .box_tit{
	width: calc(72% - 100px);
	text-align: center;
	margin-right: 30px;
}

.hakataba_detail_pager .post_around .box_tit .sub{
	color: #fff;
	font-size: 1.2rem;
	line-height: 1.4;
	display: inline-block;
	padding: 5px 6px;
	background: #002c54;
}

.hakataba_detail_pager .post_around .box_tit .tit{
	color: #002c54;
	font-size: 2.0rem;
	letter-spacing: 0.04em;
	margin: 6px 0;
}

.hakataba_detail_pager .post_around .box_tit .date{
	color: #002c54;
	letter-spacing: 0.04em;
	line-height: 1;
	text-transform: uppercase;
}

.hakataba_detail_pager .post_around.post_next .img{
	order: 2;
	margin-left: 0;
	margin-right: 55px;
}

.hakataba_detail_pager .post_around.post_next .box_tit{
	margin-right: 0;
	margin-left: 30px;
}

.hakataba_detail_pager .post_around a::before{
	width: 18px;
	height: 18px;
	content: '';
	display: block;
	position: absolute;
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.hakataba_detail_pager .post_around.post_prev a::before{
	left: 16px;
	border-bottom: 1px solid #818181;
	border-left: 1px solid #818181;
}

.hakataba_detail_pager .post_around.post_next a::before{
	right: 16px;
	border-top: 1px solid #818181;
	border-right: 1px solid #818181;
}

.hakataba_detail_pager .post_top a{
	color: #002c54;
	font-size: 2.0rem;
	letter-spacing: 0.04em;
	border-bottom: 1px solid #002c54;
}






@media screen and ( min-width: 800px ) {
	.hakataba_detail_pager .post_around a:hover{
		background: rgba(0, 44, 84, 0.1);
	}
}



@media screen and ( max-width: 800px ) {
	.hakataba_detail_pager{
		width: 88%;
		margin-bottom: 100px;
	}
	.hakataba_detail_pager .post_around{
		width: 50%;
		max-width: none;
		border: none;
	}
	.hakataba_detail_pager .post_around:first-of-type a{
		border-right: 1px solid #002c54;
	}
	.hakataba_detail_pager .post_around a{
		padding: 16px 12.7% 30px;
		display: block;
		position: relative;

		display: block;
	}
	.hakataba_detail_pager .post_around .disp_sp{
		color: #002c54;
		font-size: 1.3rem;
		text-align: center;
		margin-bottom: 10px;
	}
	.hakataba_detail_pager .post_around .img{
		width: 100%;
		margin-left: 0;
	}
	.hakataba_detail_pager .post_around .box_tit{
		width: 100%;
		text-align: center;
		margin-right: 0;
		margin-top: 16px;
	}
	.hakataba_detail_pager .post_around .box_tit .sub{
		font-size: 1.0rem;
		padding: 5px 6px;
	}
	.hakataba_detail_pager .post_around .box_tit .tit{
		color: #002c54;
		font-size: 1.5rem;
		letter-spacing: 0.04em;
		margin: 6px 0;
	}
	.hakataba_detail_pager .post_around.post_next .img{
		order: 2;
		margin-left: 0;
		margin-right: 0;
	}
	.hakataba_detail_pager .post_around.post_next .box_tit{
		margin-right: 0;
		margin-left: 0;
	}
	.hakataba_detail_pager .post_around a::before{
		display: none;
	}
	.hakataba_detail_pager .post_top a{
		color: #002c54;
		font-size: 2.1rem;
		letter-spacing: 0.04em;
		border-bottom: 1px solid #002c54;
	}
	.hakataba_detail_pager .post_top{
		text-align: center;
		width: 100%;
		order: 3;
		margin-top: 47px;
	}
}







/* ========================================

__hakataba / about

======================================== */
.hakataba_about{
	color: #002c54;
	font-size: 1.6rem;
	text-align: center;
	width: calc(100% - 174px);
	margin: 0 auto;
	margin-bottom: 98px;
	padding: 104px 0 210px;
	position: relative;
	background: #faf9f3;
	border-radius: 50px;
}

.hakataba_about .hakataba_top{
	left: -87px;
}

.hakataba_about h2.hl{
	font-size: 4.6rem;
	letter-spacing: 0.14em;
}

.hakataba_about .sub{
	letter-spacing: 0.06em;
}

.hakataba_about h3{
	font-size: 3.6rem;
	margin-bottom: 30px;
}

.hakataba_about .highlight{
	color: #fff;
	font-size: 2.7rem;
	letter-spacing: 0.08em;
	display: inline-block;
	margin: 48px 0;
	padding: 20px 50px;
	background: linear-gradient(#002245, #002c54, #003a77, #003a77);
}

.hakataba_about .txt{
	line-height: 2.1;
}

.hakataba_about .img{
	height: 300px;
	position: relative;
	margin: 90px 0 76px;
}

.hakataba_about .img::before{
	width: 208px;
	height: 280px;
	content: '';
	display: block;
	position: absolute;
	right: -45px;
	top: 264px;
	background: url(../img/hakataba/txt_about01.png) no-repeat;
	background-size: 100%;
}

.hakataba_about .img span{
	height: 300px;
	display: block;
	background: url(../img/hakataba/img_about01.jpg) repeat-x 0 top;
	animation: bgroop 60s linear infinite;
}

@-webkit-keyframes bgroop {
    from {
        background-position: 0  0;
    }
    to {
        background-position: -2468px 0;
    }
}
@keyframes bgroop {
    from {
        background-position: 0 0;
    }
    to {
        background-position: -2468px 0;
    }
}

.hakataba_about ul{
	margin: 82px 0;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content:center;
	justify-content:center;
	-webkit-align-items: center;
	align-items: center;
}

.hakataba_about ul li{
	line-height: 1.4;
	width: 30%;
	max-width: 388px;
	position: relative;
	background: #fff;
	border-radius: 50%;
}

.hakataba_about ul li::before{
	width: 100%;
	content: '';
	display: block;
	padding-top: 100%;
}

.hakataba_about ul li .inner{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;

	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	flex-direction: column;
	-webkit-justify-content:center;
	justify-content:center;
	-webkit-align-items: center;
	align-items: center;
}

.hakataba_about ul li.no1{
	color: #00478d;
}

.hakataba_about ul li.no2{
	color: #ab0027;
	margin-left: -32px;
}

.hakataba_about ul li.no3{
	color: #005f26;
	margin-left: -32px;
}

.hakataba_about ul li .inner .tit{
	font-size: 1.8rem;
	line-height: 1.3;
}

.hakataba_about ul li.no1 .tit::after,
.hakataba_about ul li.no2 .tit::after,
.hakataba_about ul li.no3 .tit::after{
	width: 100%;
	height: 73px;
	content: '';
	display: block;
	margin: 14px 0 28px;
	background: url(../img/hakataba/ico_about01.png) no-repeat;
	background-size: 100%;
}
.hakataba_about ul li.no2 .tit::after{
	background-image: url(../img/hakataba/ico_about02.png);
}
.hakataba_about ul li.no3 .tit::after{
	background-image: url(../img/hakataba/ico_about03.png);
}

.hakataba_about ul li .inner .tit span{
	font-size: 3.6rem;
}

.txt_photo::after{
	width: calc(100% + 174px);
	height: 450px;
	overflow: hidden;
	content: '';
	display: block;
	margin: 70px 0 50px;
	margin-left: -87px;
	box-sizing: border-box;
	background: url(../img/hakataba/img_about02.png) no-repeat center top;
}





@media screen and ( max-width: 800px ) {
	.hakataba_about{
		color: #002c54;
		font-size: 1.3rem;
		width: 100%;
		margin-bottom: 98px;
		padding: 0 0 100px;
		border-radius: 0;
		overflow: hidden;
	}
	.hakataba_about .hakataba_top{
		left: auto;
		margin-bottom: 40px;
		padding: 0;
	}
	.hakataba_about h2.hl{
		font-size: 3.0rem;
		margin-bottom: 6px;
	}
	.hakataba_about .sub{
		font-size: 1.0rem;
	}
	.hakataba_about h3{
		font-size: 2.3rem;
		margin-bottom: 30px;
	}
	.hakataba_about .highlight{
		font-size: 2.0rem;
		width: 74%;
		margin: 0 auto;
		margin: 24px 0;
		padding: 16px 0;
	}
	.hakataba_about .txt{
		text-align: left;
		line-height: 2.1;
		letter-spacing: 0;
		width: 74%;
		margin: 0 auto;
	}
	.hakataba_about .img {
		height: 260px;
		margin: 44px 0 60px;
	}
	.hakataba_about .img::before{
		width: 123px;
		height: 170px;
		right: 14px;
		top: 216px;
	}
	.hakataba_about .img span{
		height: 260px;
		background-size: auto 260px;
	}
	@-webkit-keyframes bgroop {
	    from {
	        background-position: 0  0;
	    }
	    to {
	        background-position: -2295px 0;
	    }
	}
	@keyframes bgroop {
	    from {
	        background-position: 0 0;
	    }
	    to {
	        background-position: -2295px 0;
	    }
	}
	.hakataba_about ul{
		width: 100%;
		max-width: 400px;
		margin: 0 auto;
		margin-top: 130px;
		margin-bottom: 140px;
		text-align: left;
		display: block;
		position: relative;
	}
	.hakataba_about ul::after{
		width: 475px;
		padding-top: 475px;
		display: block;
		content: '';
		position: absolute;
		left: 50%;
		top: 50%;
		background: #fff;
		border-radius: 50%;
		z-index: 1;
		transform: translate(-50%, -50%);
	}
	.hakataba_about ul li{
		text-align: left;
		width: 100%;
		max-width: none;
		z-index: 2;
		margin-bottom: 36px;
		background: transparent;
		border-radius: 0;
	}

	.hakataba_about ul li::before{
		display: none;
	}
	.hakataba_about ul li .inner{
		position: relative;
		text-align: left;
		top: auto;
		left: auto;
	}
	.hakataba_about ul li.no1{
		color: #00478d;
	}
	.hakataba_about ul li.no2,
	.hakataba_about ul li.no3{
		margin-left: 0;
	}

	.hakataba_about ul li .inner .tit{
		font-size: 2.3rem;
		line-height: 1.3;
		width: 74%;
		position: relative;
		margin-bottom: 6px;
		padding-left: 90px;
	}
	.hakataba_about ul li.no1 .tit::after,
	.hakataba_about ul li.no2 .tit::after,
	.hakataba_about ul li.no3 .tit::after{
		display: none;
	}
	.hakataba_about ul li.no1 .tit::before,
	.hakataba_about ul li.no2 .tit::before,
	.hakataba_about ul li.no3 .tit::before{
		width: 50%;
		height: 57px;
		content: '';
		display: block;
		position: absolute;
		left: 10px;
		margin: 6px 0 0;
		background: url(../img/hakataba/ico_about01.png) no-repeat;
		background-size: auto 100%;
	}
	.hakataba_about ul li.no2 .tit::before{
		background-image: url(../img/hakataba/ico_about02.png);
	}
	.hakataba_about ul li.no3 .tit::before{
		background-image: url(../img/hakataba/ico_about03.png);
	}
	.hakataba_about ul li .inner .tit span{
		font-size: inherit;
	}
	.hakataba_about ul li .inner .desc{
		font-size: 1.1rem;
		line-height: 1.7;
		width: 74%;
		padding-left: 90px;
	}
	.txt_photo::after{
		width: calc(100% + 174px);
		height: 200px;
		margin: 40px 0 30px;
		margin-left: -87px;
		background-size: auto 100%;
	}
}






/* ========================================

__contact

======================================== */
.contact_introduction{
	width: 84%;
	max-width:1060px;
	margin: 0 auto;
	padding: 100px 0;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-align-items: center;
	align-items: center;
}

.contact_introduction h2{
	color: #002c54;
	font-size: 2.4rem;
	letter-spacing: 0.04em;
	width: 36%;
}

.contact_introduction .txt{
	font-size: 1.4rem;
	line-height: 2.3;
	width: 60%;
}

.contact_form{
	padding: 96px 0 190px;
	background: #f5f5f5;
}

.contact_form ul{
	width: 84%;
	max-width: 830px;
	margin: 0 auto;
}

.contact_form ul li{
	color: #002c54;
	font-size: 1.6rem;

	display:-webkit-flex;
	display:flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}

.contact_form ul li:not(:last-of-type){
	padding-bottom: 68px;
}

.contact_form ul li.req p.label::after{
	color: #e60012;
	content: '*';
	margin-left: 4px;
}

.contact_form ul li .error{
	font-size: 1.3rem;
	color: #e60012;
}

.contact_form ul li p.label{
	width: 200px;
	padding-top: 20px;
}

.contact_form ul li p.input{
	width: calc(100% - 200px);
}

.contact_form ul li input[type="text"],
.contact_form ul li input[type="tel"],
.contact_form ul li input[type="email"]{
	width: 100%;
	height: 60px;
	padding: 0 20px;
	border: none;
	font-size: inherit;
	color: inherit;
	font-weight: inherit;
	font-family: inherit;
	box-sizing: border-box;
}

.contact_form ul li input[type="text"]:focus,
.contact_form ul li input[type="tel"]:focus,
.contact_form ul li input[type="email"]:focus,
.contact_form ul li input[type="submit"]:focus,
.contact_form ul li textarea{
	outline: none;
}

.contact_form ul li textarea{
	width: 100%;
	height: 400px;
	padding: 20px;
	border: none;
	font-size: inherit;
	color: #333;
	font-weight: inherit;
	font-family: inherit;
	box-sizing: border-box;
}

.contact_form ul li .radio{
	font-size: 1.4rem;
	position: relative;
	text-indent: -30px;
	padding-left: 30px;
}

.contact_form ul li input[type="radio"]{
	border: none;
	outline: none;
	box-shadow: none;
	display: none;
}

.contact_form ul li input[type="radio"] + label::before{
	width: 20px;
	height: 20px;
	background: #fff;
	content: '';
	display: inline-block;
	vertical-align: bottom;
	margin-bottom: 2px;
	margin-right: 10px;
}

.contact_form ul li input[type="radio"] + label::after{
	width: 5px;
	height: 8px;
	content: '';
	display: block;
	position: absolute;
	top: 3px;
	left: 6px;
	opacity: 0;
	border-bottom: 3px solid #002c54;
	border-right: 3px solid #002c54;
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.contact_form ul li input[type="radio"]:checked + label::after{
	opacity: 1;
}

.contact_form ul li input[type="submit"]{
	color: #fff;
	font-size: 1.4rem;
	width: 320px;
	height: 60px;
	background: #002c54;
	border: none;
	transition: all .2s;
}

.contact_form ul li input[type="submit"].lock{
	color: #333;
	background: #ddd;
}

.contact_form ul li input[type="submit"].unlock{
	cursor: pointer;
}

.contact_form ul li input[type="submit"].unlock:hover{
	background: #00396a;
}




@media screen and ( max-width: 800px ) {
	.contact_introduction{
		width: 84%;
		max-width:1060px;
		padding: 46px 0;

		display: block;
	}
	.contact_introduction h2{
		font-size: 1.78rem;
		text-align: center;
		width: 100%;
		margin-bottom: 30px;
	}
	.contact_introduction .txt{
		font-size: 1.2rem;
		line-height: 2;
		width: 100%;
	}
	.contact_form{
		padding: 40px 0 110px;
	}
	.contact_form ul li{
		font-size: 1.5rem;
		display: block;
		margin-bottom: 40px;
	}
	.contact_form ul li:not(:last-of-type){
		padding-bottom: 0;
	}
	.contact_form ul li p.label{
		width: 100%;
		margin-bottom: 10px;
		padding-top: 0;
	}
	.contact_form ul li p.input{
		width: 100%;
	}
	.contact_form ul li input[type="text"],
	.contact_form ul li input[type="tel"],
	.contact_form ul li input[type="email"]{
		height: 40px;
		padding: 0 10px;
	}
	.contact_form ul li textarea{
		height: 160px;
		padding: 10px;
		margin-bottom: 0;
	}
	.check_box{
		margin: 30px 0 60px;
	}
	.contact_form ul li .check{
		font-size: 1.2rem;
	}
	.contact_form ul li input[type="checkbox"] + label::before{
		margin-bottom: 0;
	}
	.contact_form ul li input[type="submit"]{
		width: 100%;
	}
}






.contact_thanks{
	text-align: center;
	width: 84%;
	max-width:1060px;
	margin: 0 auto;
	padding: 94px 0 162px;
}

.contact_thanks h2{
	color: #002c54;
	font-size: 2.8rem;
	letter-spacing: 0.04em;
	margin-bottom: 38px;
}

.contact_thanks .txt{
	font-size: 1.4rem;
	line-height: 2;
}

.contact_thanks .btn{
	margin-top: 56px;
}



@media screen and ( max-width: 800px ) {
	.contact_thanks{
		text-align: left;
		padding: 60px 0 84px;
	}

	.contact_thanks h2{
		text-align: center;
		font-size: 1.78rem;
		margin-bottom: 30px;
	}
	.contact_thanks .txt{
		font-size: 1.2rem;
	}
	.contact_thanks .btn{
		margin-top: 34px;
	}
	.contact_thanks .btn a{
		width: 100%;
	}
}









