﻿@charset "UTF-8";
@import "base.css";
@import "fonts.css";
/*==========================================================================*/
/*//////////////////////////////////////////////////////////////////////////*/
/*//////                                                              //////*/
/*//////  Copyright (C) 2009 株式会社フリーセル All Rights Reserved.  //////*/
/*//////                                                              //////*/
/*//////////////////////////////////////////////////////////////////////////*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/

/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/

/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
	font-size: 150%;
}
img {
	vertical-align: bottom;
}
h1 {
} /* Header内で設定 */
h2 {
}
h3 {
}
h4 {
}
a {
	color: #1977B7;
}
a:hover, a:active {
	text-decoration: none;
}
a:visited {
}
ul {
}
li {
}
dl {
}
dt {
}
dd {
}
table {
	width: 100%
}
th, td {
}
th {
}
td {
}
p {
	margin: 0 0 1.5em;
}
p, dd, td, th, li {
	line-height: 1.6em;
}
.section {
	padding: 0 0 30px 0;
}
.section .section {
	padding: 0 0 10px;
}
.image_l {
	float: left;
	margin: 0 16px 8px 0;
}
.image_r {
	float: right;
	margin: 0 0 8px 16px;
}
.f_left {
	float: left;
	margin: 0 40px 8px 0;
}
.f_right {
	float: right;
}
/* add
------------------------------------------------------------------------*/

/* add
------------------------------------------------------------------------*/
.mb0 {
	margin-bottom : 0px !important;
}
.mb05 {
	margin-bottom : 5px;
}
.mb10 {
	margin-bottom : 10px;
}
.mb15 {
	margin-bottom : 15px;
}
.mb20 {
	margin-bottom : 20px;
}
.mb25 {
	margin-bottom : 25px;
}
.mb30 {
	margin-bottom : 30px;
}
.mt05 {
	margin-top : 5px;
}
.mt10 {
	margin-top : 10px;
}
.mt15 {
	margin-top : 15px;
}
.mt20 {
	margin-top : 20px;
}
.mt25 {
	margin-top : 25px;
}
.mt30 {
	margin-top : 30px;
}  
.ml20 {
	margin-left : 20px;
}  
.ml30 {
	margin-left : 30px;
}    
.ml50 {
	margin-left : 50px;
}
#content .w5 {
	width: 5%;
}
#content .w10 {
	width: 10%;
}
#content .w15 {
	width: 15%;
}
#content .w20 {
	width: 20%;
}
#content .w25 {
	width: 25%;
}
#content .w30 {
	width: 30%;
}
#content .w33 {
	width: 33%;
}
#content .w35 {
	width: 35%;
}
#content .w40 {
	width: 40%;
}
#content .w45 {
	width: 45%;
}
#content .w50 {
	width: 50%;
} 
#content .w90 {
	width: 90%;
}
.ma {
	margin: 0 auto;
}
/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/

html {
	background: none;
}
body {
	color: #666666;
}
#wrapper {
	min-width: 980px;
	overflow: hidden;
}
.inner {
	width: 950px;
	margin: 0 auto;
}
#main {
	margin-bottom: 100px;
}
.under #content {
	text-align: left;
}
#index p:last-child {
	margin-bottom: 0;
}
/*==========================================================================*/
/*                               Header                                     */
/*==========================================================================*/

#header {
	width: 950px;
	margin: 0 auto;
}
#header #head_top {
	padding: 10px 0 0;
}
#header .head_r {
	width: 542px;
	float: right;
}
#header #logo {
	float: left;
	padding-top: 5px;
	margin: 0;
}
.head_r ul {
}
.head_r ul li {
	float: left;
	margin-right: 10px;
}
.head_r ul li #btn_search {
	width: 180px;
	font-size: 14px;
	color: #989898;
	background: url(../images/icon_search.png) 154px 7px no-repeat #F9F9F9;
	border: #F0F0F0 1px solid;
	padding: 4px 5px 4px 15px;
	box-sizing: border-box;
	border-radius: 15px;
}
.head_r ul li:nth-child(2) {
	background: #1977b7;
	border-radius: 15px;
}
.head_r ul li:nth-child(2) a:hover {
	opacity: 0.8;
}
.head_r ul li:last-child {
	margin-right: 0;
	padding: 0 15px;
	background: #b2b2b2;
	border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-webkit-border-radius: 15px;
}
.head_r ul li:last-child dl dt, .head_r ul li:last-child dl dd {
	float: left;
	border-right: #ffffff 1px solid;
}
.head_r ul li:last-child dl dd.font_acti {
	background: #81c0df;
}
#header h1 {
	text-align: right;
	font-size: 12px;
	margin-bottom: 13px;
	color: #B2B2B2;
}
#header #gnavi {
	height: 44px;
	padding: 5px 0;
}
#header #gnavi .inner {
	position: relative;
}
#header #gnavi.gnavi_fix {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	background: #ffffff;
	z-index: 9999;
	display: block;
}
#gnavi ul li {
	float: left;
}
#gnavi ul li.sub {
}
#gnavi ul li.sub .sub_box {
	position: absolute;
	top: 44px;
	left: 0;
	margin-left: -525px;
	width: 2000px;
	background: #3077B6;
	z-index: 9999;
	padding: 20px 0 15px;
	display: none;
}
#gnavi ul li.sub .sub_menu {
	width: 950px;
	margin: 0 auto;
}
#gnavi ul li.sub .sub_menu li {
	background: url(../images/f_icon.png) left 9px no-repeat;
	background-size: 4px auto;
	padding-left: 20px;
	width: calc(100% / 5);
	box-sizing: border-box;
	margin-bottom: 10px;
}
#gnavi ul li.sub .sub_menu li a {
	color: #ffffff;
	text-decoration: none;
}
#gnavi ul li.sub .sub_menu li a:hover {
	opacity: 0.5;
}
#gnavi > ul > li > a {
	text-decoration: none;
	color: #333333;
	padding: 3px 14px;
	border-right: #e5e5e5 1px solid;
	display: block;
}
#gnavi > ul > li > a:hover {
	color: #1977B7;
}
#gnavi > ul > li:first-child a {
	padding: 0;
	border-left: #e5e5e5 1px solid;
}
/*==========================================================================*/
/*                              Footer                                      */
/*==========================================================================*/

#footer {
	clear: both;
	text-align: left;
	background: url(../images/bg_footer.jpg) center top repeat-x #1977B7;
	padding-top: 135px;
}
#footer p, #footer a {
	font-size: 14px;
	color: #ffffff;
	text-decoration: none;
}
#footer a:hover {
	text-decoration: underline;
}
#footer p {
	margin-bottom: 15px;
	line-height: 1.4em;
}
#footer p:last-child {
	margin-bottom: 0;
}
#footer #footer_fix {
	position: fixed;
	right: 100px;
	bottom: 100px;
	z-index: 9999;
	background:rgba(129,192,223,0.8);
	padding:20px;
	border-radius:10px;
	-moz-border-radius:10px;
	-ms-border-radius:10px;
	-webkit-border-radius:10px;
}
#footer_fix a{
	text-decoration:none;
	display:block;
	color:#1C7FB0;
	font-weight:bold;
	text-align:center;
	background:#ffffff;
	padding:7px 10px;
	width:100%;
	box-sizing:border-box;
	border-radius:5px;
	-moz-border-radius:5px;
	-ms-border-radius:5px;
	-webkit-border-radius:5px;
}
#footer_fix a:hover {
	opacity: 0.8;
	text-decoration:none;
}
#footer_fix #toTop {
	left: 0;
    margin: -80px 0 0 27px ;
    position: absolute;
    top: 10px;
    z-index: 5555;
}
#footer #footer_inner {
	margin-bottom: 30px;
}
#footer_inner .image_l {
	margin: 0 10px 0 0;
}
#footer_inner .f_w01, #footer_inner .f_w02, #footer_inner .f_w03 {
	float: left;
	border-right: #ffffff 1px solid;
	min-height: 350px;
	box-sizing: border-box;
}
#footer_inner .f_w01 {
	width: 200px;
	padding: 10px 0 0 10px;
}
#footer_inner .f_w02 {
	width: 230px;
	padding: 10px 0 0 20px;
}
#footer .f_w02 p {
	margin-bottom: 5px;
}
#footer_inner .f_w03 {
	width: 270px;
	padding: 30px 0 0 20px;
}
#footer_inner .f_list01 li {
	background: url(../images/f_icon.png) left 9px no-repeat;
	background-size: 4px auto;
	padding-left: 10px;
}
#footer_inner .f_list01 li, #footer_inner .f_list01 li a {
	line-height: 1.6em;
}
#footer_inner .f_list01 li.f_mb {
	margin-bottom: 25px;
}
#footer address {
	text-align: center;
	color: #ffffff;
	font-size: 12px;
	font-family: Corbel, Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: bold;
	background: #153782;
	padding: 24px 0;
}
/*==========================================================================*/
/*                             Contents                                     */
/*==========================================================================*/

/* index
------------------------------------------------------------------------*/
#index h4 {
	font-size: 200%;
	color: #1977B7;
	font-weight: bold;
	margin-bottom: 10px;
}
#index #top_info {
	width: 950px;
	height: 400px;
	margin: 0 auto;
	position: relative;
}
#top_info .box_slide {
	width: 2000px;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -1000px;
}

.box_slide .bxslider li{
	position:relative;
}

.box_slide .bxslider li p{
	position:absolute;
	top:32%;
	left:0;
	margin:0;
	text-align:center;
	width:100%;
	text-shadow: 0 1px 15px rgba(35, 103, 174,0.8), 0 1px 15px rgba(35, 103, 174,0.8),0 1px 15px rgba(35, 103, 174,0.8), 0 1px 15px rgba(35, 103, 174,0.8), 0 1px 15px rgba(35, 103, 174,0.8),0 1px 15px rgba(35, 103, 174,0.8),0 1px 15px rgba(35, 103, 174,0.8);
	font-size:30px;
	color:#fff;
	font-weight:bold;
}

.box_slide .bxslider li span{
	display:inline-block;
	font-size:40px;
	line-height:1.4em;
}


#box_news {
	padding: 25px 0;
	background: #f2f9fc;
	-webkit-box-shadow: inset 0px 5px 3px 0px rgba(50, 50, 50, 0.15);
	-moz-box-shadow: inset 0px 5px 3px 0px rgba(50, 50, 50, 0.15);
	box-shadow: inset 0px 5px 3px 0px rgba(50, 50, 50, 0.15);
	/*--position:relative; --*/
}
#box_news .news_inner {
	width: 740px;
	margin: 0 auto;	
	box-sizing: border-box;
	padding: 20px;
	background: #ffffff;		
}
#box_news h3 {
	font-size: 240%;
	color: #1977B7;
	font-weight: bold;
	margin-bottom: 10px;
	background: url(../images/icon_news.png) left 2px no-repeat;
	padding-left: 30px;
}
#box_news .news {
	height: 200px;
}
.news dl {
	margin-top: 10px;
	padding-bottom: 5px;
	border-bottom: #CFCFCF 1px dotted;
}
.news dl dt, .news dl dd {
	display: table-cell;
	line-height: 16px;
}
.news dl dt {
	background: #5391C4;
	color: #ffffff;
	font-size: 100%;
	min-width: 60px;
	padding: 0 5px;
	text-align: center;
}
.news dl dd a {
	font-size: 90%;
	padding: 0 7px;
	text-decoration: none;
	display: block;
	color: #323232;
}
.news dl dd a:hover {
	text-decoration: underline;
}
#cont01 h3, #cont03 h3, #cont04 h3 {
	text-align: center;
	font-size: 240%;
	margin-bottom: 30px;
}
#cont01 h3 span, #cont03 h3 span, #cont04 h3 span {
	color: #ffffff;
	background: #89C0DF;
	display: inline-block;
	font-weight: bold;
	padding: 14px 45px 10px;
	border-radius: 25px;
	-moz-border-radius: 25px;
	-ms-border-radius: 25px;
	-webkit-border-radius: 25px;
}
#cont01 {
	padding: 40px 0;
}
#cont01 p {
	font-size: 160%;
}

#cont01 .cont01:hover {
	opacity:0.8;
}

#cont01 .cont01_l h4 {
	background: url(../images/cont01_icon01.png) left 0 no-repeat;
	padding-left: 25px;
}
#cont01 .cont01_r h4 {
	background: url(../images/cont01_icon02.png) left 2px no-repeat;
	padding-left: 30px;
}
#cont01 .cont01_l, #cont01 .cont01_r {
	width: 465px;
	float: left;
	cursor: pointer;
}
#cont01 .cont01_r {
	float: right;
}
#cont02 {
	padding: 30px 0;
	background: #f2f9fc;
}
#cont02 h4 {
	margin-bottom: 20px;
	font-size: 240%;
	background: url(../images/cont02_icon01.png) left 0 no-repeat;
	padding-left: 20px;
}
#cont02 h4 span {
	color: #323232;
	font-size: 18px;
	font-weight: normal;
	padding-left: 10px;
}
#cont02 .cont02_dl {
	width: calc((100% - 60px) / 4);
	float: left;
	margin: 0 20px 0 0;
	cursor: pointer;
}

.cont02_dl p{
	margin-bottom:0;
}
.cont02_dl dt {
	font-weight: bold;
	color: #000000;
	margin-bottom: 4px;
	font-size: 160%;
}
.cont02_dl dt img {
	margin-bottom: 7px;
}
.cont02_dl dd {
	font-size: 140%;
	line-height: 1.4em;
}
#cont02 .cont02_dl:nth-child(4n+4) {
	margin: 0;
}
.cont02_dl:hover dt img, .cont02_dl:hover dd {
	opacity:0.8;
}
#cont03 {
	padding: 45px 0;
	background: url(../images/bg_cont03.jpg) no-repeat 50% bottom fixed;
	background-size: cover;
	-webkit-box-shadow: inset 0px 5px 3px 0px rgba(50, 50, 50, 0.15);
	-moz-box-shadow: inset 0px 5px 3px 0px rgba(50, 50, 50, 0.15);
	box-shadow: inset 0px 5px 3px 0px rgba(50, 50, 50, 0.15);
}
#cont03 .inner {
	padding: 0 50px 50px 50px;
	background: rgba(255, 255, 255);
	background: -moz-linear-gradient(90deg, rgba(255,255,255,0) 0, rgba(255,255,255,0.8) 70%);
	background: -webkit-linear-gradient(90deg, rgba(255,255,255,0) 0, rgba(255,255,255,0.8) 70%);
	background: -o-linear-gradient(90deg, rgba(255,255,255,0) 0, rgba(255,255,255,0.8) 70%);
	background: -ms-linear-gradient(90deg, rgba(255,255,255,0) 0, rgba(255,255,255,0.8) 70%);
	background: linear-gradient(180deg, rgba(255,255,255,0) 0, rgba(255,255,255,0.8) 70%);
}
#cont03 .cont03_dl {
	width: calc((100% - 60px) / 3);
	float: left;
	margin: 0 28px 30px 0;
	cursor: pointer;
}
#cont03 .cont03_dl:nth-child(3n+3) {
	margin: 0 0 30px 0;
}
.cont03_dl dt, #cont03 h5 {
	color: #5292C5;
	font-weight: bold;
	font-size: 200%;
	text-align: center;
	margin-bottom: 10px;
}
.cont03_dl dt img {
	margin-top: 10px;
}
.cont03_dl dd {
	color: #323232;
	font-size: 160%;
}
.cont03_inner {
	border: #81C0DF 4px solid;
	background: #ffffff;
	padding: 16px;
	color: #323232;
}
.cont03_inner .image_l {
	margin-bottom: 0;
}
.cont03_inner p {
	margin-bottom: 14px;
	font-size: 160%;
	line-height: 1.4em;
}
.cont03_inner p.txt_spec {
	font-size: 180%;
	color: #E61E19;
	font-weight: bold;
}
.cont03_inner .cont03_r {
	width: calc(100% - 310px);
	float: right;
}
#index #cont04 {
	-webkit-box-shadow: inset 0px 5px 3px 0px rgba(50, 50, 50, 0.15);
	-moz-box-shadow: inset 0px 5px 3px 0px rgba(50, 50, 50, 0.15);
	box-shadow: inset 0px 5px 3px 0px rgba(50, 50, 50, 0.15);
	padding-top: 43px;
}
#cont04 .cont04_list {
	float: right;
	width: 460px;
	padding-top: 30px;
}
.cont04_list li {
	width: calc((100% - 20px) / 2);
	float: left;
	margin: 0 20px 20px 0;
	text-align: center;
}
.cont04_list li:nth-child(2n + 2) {
	margin: 0 0 20px 0;
}
.cont04_list li a {
	display: block;
	border: #E5E5E5 1px solid;
	color: #000000;
	font-weight: bold;
	text-decoration: none;
	font-size: 16px;
	padding: 17px 0;
	border-radius: 30px;
}
.cont04_list li a:hover {
	background: #E5E5E5;
}

.btf	{
	border-top: #fff 10px solid !important;
} 

.bgf	{
	border-top: #fff 10px solid !important;
	background-color: #fff !important;
}
.fs80 th	{
	font-size:100% !important;
}

