@charset "utf-8";


/*----------------------------------------------------
    ■ share 
----------------------------------------------------*/
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);
@import url(https://fonts.googleapis.com/earlyaccess/hannari.css);
@import url(https://fonts.googleapis.com/earlyaccess/roundedmplus1c.css);

.sawarabi {
	font-family: "Sawarabi Mincho" , "ヒラギノ明朝 Pro W3" , "ＭＳ Ｐ明朝";
}
.wf-hannari {
	font-family: "Hannari" , "ヒラギノ明朝 Pro W3" , "ＭＳ Ｐ明朝";
}
.wf-rounded {
	font-family: "Rounded Mplus 1c";
}

*{
	color: #1F1F1F;
	margin:0;
	padding:0;
	font-family: Calibri, Meiryo, "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
	line-height: 160%;  /*　200%で26px　160%で20px　140%で18px　120%で14px　*/
	letter-spacing: 0px;
}
img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	vertical-align: top;
}
li,ul,dl,dt,dd {
	list-style:none;
}
h1,h2,h3,h4 {
	font-weight: normal;
}
table{
	border-collapse:collapse;
	border-spacing:0;
}
a {
	color: #000099;
	text-decoration: none;
}

a:hover {
	color: #0066FF;
	text-decoration: underline;
}
.imgover {
	opacity: 0;
	position: absolute;
}

body {
	overflow-x: hidden;
	font-size: 20px;
}

.c_f:after {
  content: "";
  clear: both;
  display: block;
}

#page-top_all {
	width: auto;
	margin: auto;
	clear: both;
	z-index: 200;
	background-color: #FFFFFF;
	height: 0px;
}

#page-top_in {
	margin: 0 auto;
	text-align: right;
	position: relative;
	width: 1170px;
	height: 0px;
	z-index: 200;
	background-color: #FFFFFF;
}

#page-top {
	position: absolute;
	margin-left: 1080px;
	z-index: 200;
	background-color: #FFFFFF;
}
#page-top a {
	width: 100px;
	display: block;
	background-image: url(../../img/common/f_page_top.png);
	height: 80px;
	position: fixed;
}
#page-top a:hover {
}

.sawarabi {
	font-family: "Sawarabi Mincho";
}
.r_m_1c{
	font-family: "Rounded Mplus 1c";
}

.sp {
	display: none;
}
/*----------------------------------------------------
    ■ Layout 
----------------------------------------------------*/
div#headerArea {
	position: fixed !important;
	position: absolute;
	top: 0px;
	left: 0;
	width: 100%;
	height: 80px;
	background-repeat: repeat-x;
	z-index: 10000;
}
/******* Header start ********/

header {
	display:block;
	width: 100%;
	margin: auto;
	-moz-background-size:cover;
	background-size:cover;
	height: 80px;
	background: rgba(78,141,163,0.6);
}

/******* #header_cnt start ********/
header #header_cnt {
	margin: 0 auto;
	text-align: left;
	position: relative;
	width: 1000px;
}
header #header_cnt h1 {
	padding-top: 10px;
	float: left;
}

/******* navi_main_cnt start ********/

header #navi_main_cnt {
	margin: 0 auto;
	text-align: left;
	position: relative;
	width: 510px;
	float: right;
	background-repeat: no-repeat;
}
header #navi_main_cnt .h_menu {
	float:left;
}
header #navi_main_cnt .h_menu li {
	background-image: url(../../img/common/menu_bg.png);
	float:left;
	background-repeat: no-repeat;
	background-position: right 2px;
	padding-right: 5px;
	padding-left: 5px;
}
header #navi_main_cnt .h_menu li:nth-child(1) {
	padding-left: 0px;
}
header #navi_main_cnt .h_menu li:nth-child(5) {
	background-image: none;
	padding-right: 12px;
}
header #navi_main_cnt .sns_menu {
	padding-top: 22px;
	float:left;
}
header #navi_main_cnt .sns_menu li {
	float:left;
}
header #navi_main_cnt .sns_menu li:nth-child(1) {
	padding-right: 10px;
}

main {
	width: auto;
	margin: 0px auto auto;
	clear: both;
}
/******* footer start ********/

footer {
	display:block;
	width:100%;
	margin: auto;
	background-size:cover;
	-moz-background-size:100%;
	background-size:100%;
	position: relative;
	background-color: #4E8DA3;
}

/******* #footer_cnt start ********/

footer #footer_t_cnt {
	margin: 0 auto;
	text-align: left;
	position: relative;
	width: 980px;
	padding-top: 50px;
	padding-bottom: 50px;
}

.f_menu {
	margin-right: auto;
	margin-left: auto;
}
.f_menu ul{
	text-align: center;
}
.f_menu ul li{
	display: inline;
	margin-right: 6px;
}
.f_menu li a {
	color: #ffffff;
	text-decoration: none;
	margin-right: 10px;
	padding-right: 10px;
	border-bottom: 1px dotted #FFFFFF;
	font-size: 18px;
	font-weight: normal;
}
.f_menu li a:hover {
	color: #ffffff;
}
.f_menu1 {
	padding-bottom: 75px;
}
.f_menu1 ul li:nth-child(5) {
	background-image: none
}
.f_menu2 {
	padding-bottom: 60px;
}
.f_menu2 ul li {
	background-image: none;
	border-right: 1px dotted #FFFFFF;
}
.f_menu2 ul li:nth-child(2) {
	border-right: none;
}
.f_menu2 li a {
	font-size: 12px;
}
.f_menu2 li a {
	color: #ffffff;
	text-decoration: none;
	margin-right: 5px;
	padding-right: 5px;
}
.f_menu3 {
	margin-right: auto;
	margin-left: auto;
}

.f_logo {
	text-align: center;
	padding-bottom: 30px;
}

.f_menu3{
	padding-bottom: 50px;
}
.f_menu3 ul{
	text-align: center;
}
.f_menu3 ul li{
	display: inline;
	margin-right: 15px;
}
.f_menu3 ul li:nth-child(2) {
	margin-right: 0px;
}
.f_copy {
	text-align: center;
	font-size: 12px;
	color: #FFFFFF;
}


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

	body {
		font-size:62.5%;
	}

/*------------------------------------------------
    header start
------------------------------------------------*/
	#wrapper {
		width: auto;
		margin: auto;
		background-repeat: repeat-x;
		background-position: 50% 0;
		background-image:none;
		background-color: #FFFFFF;
	}
	header {
		width: 100%;
		margin: auto;
		position: relative;
		background-image: inherit;
		background-repeat: inherit;
		background-position: inherit;
		height: inherit;
	}

	/******* header_cnt start (in header) ********/

	header #h_cnt {
		height: inherit;
	}
	.header  h1{
		padding-bottom: 10px;
		padding-top: 10px;
		padding-left: 10px;
		width: 94%;
	}
	.header  h1 img{
		width: 90%;
	}
	/******* header_cnt end (in header) ********/

/*------------------------------------------------
    hamb start
------------------------------------------------*/

	.el_humburger {
		position: absolute;
		top: 15px;
		right: 10px;
		width: 26px;
		height: auto;
		padding-top: 1px;
		box-sizing: border-box;
		z-index: 10000;
		transition: all 0.2s ease-in-out;
		cursor: pointer;
		pointer-events: auto;
	}

	.el_humburger > span {
		display: block;
		width: 100%;
		margin: 0 auto 6px;
		height: 3px;
		background-color: #54AABD;
		transition: all 0.2s ease-in-out;
	}
	.el_humburger > span:last-child {
		margin-bottom: 0;
	}
	.js_humburgerOpen .el_humburger > span {
		background-color: #54AABD;
	}
	.js_humburgerOpen .el_humburger > span.top {
		transform: translateY(9px) rotate(-45deg);
	}
	.js_humburgerOpen .el_humburger > span.middle {
		opacity: 0;
	}
	.js_humburgerOpen .el_humburger > span.bottom {
		transform: translateY(-9px) rotate(45deg);
	}
	.el_humburgerButton.el_humburgerButton__close {
		top: 2%;
		right: 2%;
	}
	.el_humburgerButton__close > span {
		display: block;
		width: 35px;
		margin: 0 auto;
		height: 4px;
		background: #fff;
}
	.el_humburgerButton__close > span.el_humburgerLineTop {
		transform: translateY(5px) rotate(-45deg);
	}
	.el_humburgerButton__close > span.el_humburgerLineBottom {
		transform: translateY(-6px) rotate(45deg);
	}
	/*ナビゲーション*/
	nav {
		width: auto;
		margin: auto;
		clear: both;
		height: 0px;
		background-color: inherit;
		margin-top: 0px;
	}
	.uq_spNavi {/*メニュー0開始*/
		display: none;
		top: 64px;
		background-color: #54AABD;
	}
	.uq_spNavi.js_appear {
		position: fixed;
		left: 0;
		bottom: 0;
		right: 0;
		display: block;
		z-index: 9999;
	}
	.uq_spNavi_screen {
		position: absolute;
		top: 0px;
		left: 0;
		bottom: 0;
		right: 0;
		z-index: 0;
		margin-top: 0px;
		padding-top: 0px;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.navigation {
		text-align: center;
	}
	.navigation_item {
		font-family: "Rounded Mplus 1c";
	}
	.navigation_item img { width:50% ;
	}
	.navigation_item > a {
		text-decoration: none;
		font-size: 1.2em;
		font-weight: bold;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		color: #ffffff;
		border-bottom: 1px dashed #FFFFFF;
		display: block;
		margin-top: px;
		padding-top: 5px;
		padding-bottom: 5px;
	}
	.g_bt1 a {
	}
	.g_bt2 a {
	}
	s.g_bt3 a {
	}
	.g_bt4 a {
	}
	.g_bt5 a {
	}
	.g_bt6 a {
	}
	.g_bt7 a {
	}
	.js_fixed {
		position: fixed;
		width: 100%;
		height: 100%;
	}
/*------------------------------------------------
    hamb end
------------------------------------------------*/



main {
	width: auto;
	margin: 0px auto auto;
	clear: both;
	width:100%;
}
/******* footer start ********/

footer {
	display:block;
	width:100%;
	margin: auto;
	background-size:cover;
	-moz-background-size:100%;
	background-size:100%;
	position: relative;
	background-color: #4E8DA3;
}

/******* #footer_cnt start ********/

footer #footer_t_cnt {
	margin: 0 auto;
	text-align: left;
	position: relative;
	width:100%;
	padding-top: 20px;
	padding-bottom: 20px;
}

.f_menu {
	margin-right: auto;
	margin-left: auto;
}
.f_menu ul{
	text-align: center;
}
.f_menu ul li{
	display: inline;
	margin-right: 6px;
}
.f_menu li a {
	color: #ffffff;
	text-decoration: none;
	margin-right: 10px;
	padding-right: 10px;
	border-bottom: 1px dotted #FFFFFF;
	font-size: 18px;
	font-weight: normal;
}
.f_menu li a:hover {
	color: #ffffff;
}
.f_menu1 {
	padding-bottom: 20px;
}
.f_menu1 ul li:nth-child(5) {
	background-image: none
}
.f_menu2 {
	padding-bottom: 60px;
}
.f_menu2 ul li {
	background-image: none;
	border-right: 1px dotted #FFFFFF;
}
.f_menu2 ul li:nth-child(2) {
	border-right: none;
}
.f_menu2 li a {
	font-size: 12px;
}
.f_menu2 li a {
	color: #ffffff;
	text-decoration: none;
	margin-right: 5px;
	padding-right: 5px;
}
.f_menu3 {
	margin-right: auto;
	margin-left: auto;
}

.f_logo {
	text-align: center;
	padding-bottom: 30px;
}
.f_logo img {
	width:90%;
}

.f_menu3{
	padding-bottom: 50px;
}
.f_menu3 ul{
	text-align: center;
}
.f_menu3 ul li{
	display: inline;
	margin-right: 15px;
}
.f_menu3 ul li:nth-child(2) {
	margin-right: 0px;
}
.f_copy {
	width:80%;
	text-align: center;
	font-size: 12px;
	color: #FFFFFF; margin:auto;
}


}



@media screen and (max-width:812px) { 
	.pc { display: none !important; }
	.sp { display: block !important; }
	img {
		width:100%;
	}
}

/*-------------------------column-list---------------------------*/
.column-list {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.column-list .img_wrap {
	width: 100%;
	height: inherit;
	margin: 0 auto;
	overflow: hidden;
	cursor: pointer;
}
.column-list li {
	box-sizing: border-box;
	padding: 10px;
	background-color:#FFFFFF
	/*border: 1px solid #ccc;*/
}
.column-list .column_3{
    width : calc(100% / 3.2);
    margin: 1%;
    background-color: #962425;
	/*border: 1px solid #ccc;*/
}
.column-list .column_4{
	width : calc(100% / 4.0) ;
	margin: 0.0%;
	/*border: 1px solid #ccc;*/
}
.column-list .column_5{
	width : calc(100% / 5.0) ;
	margin: 0.0%;
	/*border: 1px solid #ccc;*/
}
.column-list li a{
	text-decoration: none;
	display: block;
}
.column-list li .img_wrap img{
	width: 100%;
	transition-duration: 0.5s;
	max-width: 100%;
}
.column-list li .img_wrap:hover img{
	transform: scale(1.2);
	transition-duration: 0.5s;
}
.column-list li h3 {
	font-size: 1.6em;
	text-align:left;
	font-weight: bold;
}
.column-list li p {
	font-size: 1.4em;
	text-align:left;
}
@media screen and (max-width:640px) { 
    .column-list .column_3{
        width : calc(100% / 3.2);
        margin: 1%;
        background-color: #962425;
        /*border: 1px solid #ccc;*/
    }
    .column-list .column_4{
        width : calc(100% / 2.0) ;
        margin: 0.0%;
        /*border: 1px solid #ccc;*/
    }
    .column-list .column_5{
        width : calc(100% / 2.0) ;
        margin: 0.0%;
        /*border: 1px solid #ccc;*/
    }
}
/*------------------------- /column-list ---------------------------*/