@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Roboto');
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700');

/*-------------------------------------------
	common
--------------------------------------------*/

body, div, p, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote {
	margin: 0;
	padding: 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
img {
	border: 0;
}
address, caption, cite, code, dfn, em, strong, var {
	font-style: normal;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
img {
	border: 0;
	vertical-align: bottom;
}
a img {
	border: none;
}
a {
	color: #333;
	text-decoration: none;
	outline: none;
}
a:visited {
	color: #333;
	text-decoration: none;
}
a.txtlink:link,
a.txtlink:visited{
  text-decoration:underline;
}

a:hover, a:hover img {
	filter: alpha( opacity=70);
	-ms-filter: alpha( opacity=07);
	-webkit-filter: alpha( opacity=70);
	-moz-filter: alpha( opacity=70);
	-o-filter: alpha( opacity=70);
	opacity: 0.7;
	transition: opacity .20s ease-in-out;
	-ms-transition: opacity .20s ease-in-out;
	-webkit-transition: opacity .20s ease-in-out;
	-moz-transition: opacity .20s ease-in-out;
	-o-transition: opacity .20s ease-in-out;
}
a:focus {
	outline: none;
}
embed {
	outline: none;
}
.clear {
	clear: both;
}

/*=================================
	general
================================ */
html {
	font-size: 62.5%;
	height: 100%;
}

body {
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HiraKakuPro-W3", "メイリオ", Meiryo, "MS PGothic", Osaka, sans-serif;
	color: #333;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.8;
	background: #FFF;
}
body .font_small_active{
  font-size: 100%;
}
body .font_medium_active {
  font-size: 125%;
}

body {
	-webkit-text-size-adjust: 100%;
}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
img {
	max-width: 100%;
	height: auto;
}
@media \0screen {
	width/***/:auto;
}
#wrapper {
	width: 100%;
}
main {
	text-align: left;
}
/*-------------------------------------------
	clearfix
--------------------------------------------*/
.cf:after{
	content: "";
	display: block;
	clear: both;
}
.cf{
	min-height: 1%;  /* for Firefox　*/
	zoom: 1;
}

/*=================================
	common
================================ */

.inner {
  clear: both;
  width: 950px;
  margin: 0 auto;
}

/*-------------------- ■ START Media Queries ■ --------------------*/
@media (max-width: 950px) {/*950px以下のスタイル*/
.inner{
  width: auto;
  margin: 0 3%;
}
}/* end 950px */

/*------------------------------------------
	link icon
------------------------------------------*/
.pdf:after,
#contents a[href$=".pdf"]:after,
.topnewsinner a[href$=".pdf"]:after{
  display:inline-block;
  content:url(../images/icon_pdf.png);
  margin-left:7px;
  line-height:1;
  vertical-align:middle;
}
.word:after,
#contents a[href$=".doc"]:after,
#contents a[href$=".docx"]:after,
.topnewsinner a[href$=".doc"]:after,
.topnewsinner a[href$=".docx"]:after{
  display:inline-block;
  content:url(../images/icon_word.png);
  margin-left:7px;
  line-height:1;
  vertical-align:middle;
}
.excel:after,
#contents a[href$=".xls"]:after,
#contents a[href$=".xlsx"]:after,
.topnewsinner a[href$=".xls"]:after,
.topnewsinner a[href$=".xlsx"]:after{
  display:inline-block;
  content:url(../images/icon_excel.png);
  margin-left:7px;
  line-height:1;
  vertical-align:middle;
}

.subwin:after{
  content:url(../images/icon_subwin.png);
  margin-left:7px;
}
.subwinw:after{
  content:url(../images/icon_subwinwhite.png);
  margin-left:7px;
}




/*=================================
	header
================================ */

#header {
  position:relative;
}
.logo {
  width:370px;
  font-size:20px;
  font-weight: bold;
  padding-left:20px;
}
.logo a{
  display:inline-block;
  padding:17px 0 17px 60px;
  background-image: url("../images/mark.png");
  background-position:0 center;
  background-repeat:no-repeat;
}
.hnavbox{
  background:#FFF;
}
.hmenu{
  position:absolute;
  top:20px;
  right:20px;
}
.hmenu>ul{
  width:544px;
}
.hmenu>ul>li{
  vertical-align:middle;
  padding:2px 20px;
  float:left;
}
.hmenu01{
	display:none;/*
  width:152px;
  border-right:1px #E6E6E6 solid;
}
.hmenu01 a{
  font-size:13px;
  color:#666;
  font-weight:bold;
  padding-left:30px;
  background: url("../images/cmn_icon05.png") 0 center no-repeat;*/
}
.hmenu02{
  width:92px;
  border-right:1px #E6E6E6 solid;
}
.hmenu>ul>li.hmenu03{
  width:300px;
  padding:0 0 0 20px;
}
.fontmenu{
  width:52px;
}
.fontmenu li{
  width:26px;
  height:27px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background-repeat:no-repeat;
  background-position:0 0;
  float:left;
}

.fontmenu li:first-child{
  background-image: url("../images/dum_btn01.png");
}
.fontmenu li:last-child{
  background-image: url("../images/dum_btn02.png");
}
.fontmenu li:hover,
.fontmenu li.textresizer-active{
  background-position:0 -27px;
}
.gsc-input-box{
  height:auto !important;
  margin-top:-4px;
}
.gsc-search-button{
  box-sizing: content-box;
}

.gsc-search-box-tools .gsc-search-box .gsc-input {
  padding-right: 5px !important;
}
#gnav{
  position:relative;
  z-index:20;
}

#gnav>ul{
  display:table;
  table-layout:fixed;
  width:100%;
}
#gnav>ul>li{
  display:table-cell;
  text-align:center;
  border-top:1px #EEE solid;
}
.gnav01{
  border-bottom:2px #BDE2B5 solid;
}
.gnav02{
  border-left:1px #EEE solid;
  border-bottom:2px #FFC0C0 solid;
}
.gnav03{
  border-left:1px #EEE solid;
  border-bottom:2px #F8E39A solid;
}

#gnav>ul>li>a{
  position:relative;
  display:block;
  font-size:16px;
  font-weight:bold;
  line-height:1.4;
}
#gnav>ul>li>a>div{
  display:inline-block;
  text-align:left;
  padding:14px 0 14px 45px;
}
.gnav01 div{
  background: url("../images/cmn_icon01.png") 0 center no-repeat;
}
.gnav02 div{
  background: url("../images/cmn_icon02.png") 0 center no-repeat;
}
.gnav03 div{
  background: url("../images/cmn_icon03.png") 0 center no-repeat;
}

#gnav ul li.gnav01>a:hover{
background-color:#F1F9ED;
}
#gnav ul li.gnav02>a:hover{
background-color:#FFF3F3;
}
#gnav ul li.gnav03>a:hover{
background-color:#FDF8E5;
}

#gnav>ul>li span{
  font-size:14px;
}
.gnav01 span{
  color:#5AB646;
}
.gnav02 span{
  color:#FF6666;
}
.gnav03 span{
  color:#ECB802;
}

.subnav{
  position:absolute;
  width:33.3333%;
  margin-top:2px;
}
.subnav li{
background:#fff;
}
.subnav a{
  display:block;
  font-weight:bold;
  text-align:center;
  padding:20px;
  border-top:1px #FFF solid;
}
.sub01 a{
  background:#D1ECC2;
}
.sub02 a{
  background:#FFD7D7;
}

#gnav ul ul {
  visibility: hidden;
  opacity: 0;
  transition: .2s ease-in-out;
}
#gnav ul li:hover > ul {
  visibility: visible;
  opacity: 1;
}
#toggle {
  display: none;
}

/*------------- clear fix ---------------------------*/
.hmenu>ul:after,
.fontmenu:after{
  content: "";
  display: block;
  clear: both;
}
.hmenu>ul,
.fontmenu{
  min-height: 1%;  /* for Firefox?@*/
  zoom: 1;
}




/*-------------------- ■ START Media Queries ■ --------------------*/
@media (max-width: 950px) {/*950px以下のスタイル*/
.logo a{
  padding:27px 0 27px 60px;
}
.hmenu{
  top:10px;
}
.hmenu>ul{
  width:260px;
}
.hmenu>ul>li{
  padding:2px 0;
}
.hmenu01{
  width:150px;
}
.hmenu>ul>li.hmenu02{
  width:110px;
  padding-left:58px;
  border-right:none;
}
.hmenu>ul>li.hmenu03{
  width:260px;
  padding:6px 0 0 0;
}

}/* end 950px */


/*-------------------- ■ START Media Queries ■ --------------------*/
@media (max-width: 768px) {/*768px以下のスタイル*/
#header {
}
.logo {
  width:auto;
  font-size:15px;
  font-weight: bold;
  padding-left:3%;
}
.logo a{
  padding:15px 0 15px 45px;
  background-size:40px 33px;
}

#toggle{
  display:block;
  position:absolute;
  top:22px;
  right:3%;
  cursor:pointer;
}

#toggle span {
    display: block;
    width: 25px;
    height: 15px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url(../images/toggle.png) 0 0 no-repeat;
}
#toggle.gnavon span {
    background: url(../images/toggle.png) 0 -15px no-repeat;
}
.hnavbox{
  position:absolute;
  display:none;
  width:100%;
  background:#FBF9F5;
  z-index:20;
}
.hmenu{
  position:relative;
  top:0;
  right:0;
}
.hmenu>ul{
  width:100%;
}
.hmenu>ul>li{
  padding:20px 15px 0;
  float:none;
}
.hmenu01{
  width:100%;
  border-right:none;
}
.hmenu02{
  display:none;
}
.hmenu>ul>li.hmenu03{
  width:100%;
  padding:20px 15px;
}
#gnav>ul{
  display:block;
  width:100%;
}
#gnav>ul>li{
  display:block;
  text-align:left;
  border-top:1px #EEE solid;
  background:#FBF9F5;
}
#gnav>ul>li>a>div{
  padding:10px 0 10px 45px;
  margin-left:15px;
}
#gnav ul ul {
  visibility: visible;
  opacity: 1;
  transition: none;
}
#gnav ul li:hover > ul {
  visibility: visible;
  opacity: 1;
}
.gnav01,
.gnav02,
.gnav03{
  border-left:none;
  border-bottom:1px #E6E6E6 solid;
}

.subnav{
  position:relative;
  width:100%;
  margin-top:2px;
}
.subnav a{
  display:block;
  text-align:left;
  padding:12px 0 12px 60px;
}

}/* end 768px */

/*-------------------------------------------
	breadcrum
--------------------------------------------*/
.breadcrum{
  width:100%;
  padding:10px 0;
  font-size:0.9em;
  color:#999;
  background:#f8f8f8;
}
.breadcrum ul li a{
  color:#666;
}
.breadcrum ul li{
  display: inline;
}
.breadcrum ul li:nth-child(n+2):before {
  content: ">";
  margin: 0 0.8em;
  opacity: .5;
}

/*-------------------------------------------
	contents
--------------------------------------------*/

#contents {
  padding: 30px 0 80px;
}
.ctitlebox {
  padding: 40px 0;
  text-align: center;
}
.cmtitle{
font-weight:bold;
font-size:1.7em;
padding:0 3%;
}
.cmtitle:after{
  content: "";
  display: block;
  width: 40px;
  border-bottom: 2px solid #EE786B;
  margin: 0 auto 20px;
  height: 20px;
}
.hojin .cmtitle:after{
  border-bottom: 2px solid #5AB646;
}
.sub .cmtitle:after{
  border-bottom: 2px solid #8796DE;
}
.cmtitle span{
  display:block;
  font-size:0.7em;
}
.sec {
  margin-top: 80px;
}
.sec:first-child {
  margin-top:0;
}
.ph_l {
  float: left;
  margin: 0 30px 20px 0;
}
.ph_r {
  float: right;
  margin: 0 0 20px 30px;
}
.ph_c {
  text-align: center;
}
.ph_ib {
  display: inline-block;
  padding: 0 10px;
  vertical-align: top;
}

.sec p{
  margin-bottom:1em;
}
/*-------------------- ■ START Media Queries ■ --------------------*/
@media (max-width: 480px) {/*950px以下のスタイル*/
#contents {
  padding: 0px 0 80px;
}
.member #contents {
  padding: 0;
}
}/* end 950px */

/*-------------------------------------------
	footer
--------------------------------------------*/
/*----- pagetop -----*/
.pagetop {
  position: fixed;
  bottom: 5%;
  right: 3%;
  z-index: 10;
}
.pagetop a {
  display: block;
  width: 55px;
  height: 55px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background: url("../images/cmn_pagetop.png") 0 0 no-repeat;
}

#footer {
  clear: both;
}


.btmnavi{
  padding:40px 0;
  text-align: center;
  background:url(../images/cmn_btnline.gif) repeat-x;
}

.btmnavi p{
display: inline-block;
  font-weight:bold;
  font-size:1.6rem;
  padding:0 46px 0 0;

  vertical-align:middle;
}
.btmnavi p:before{
  content:"";
  display:inline-block;
  width:50px;
  height:30px;
  background:url(../images/cmn_icon06.png) no-repeat 0 center;
  vertical-align:middle;
}


.footercontents{
  padding:30px 0;
  background:#FBF9F5;
}

#fnav>ul{
  display:table;
  width:100%;
}
#fnav>ul>li{
  display:table-cell;
  width:33.3%;
  vertical-align:top;
}
#fnav>ul>li.fnav03{
  width:33.3%;
}
#fnav>ul>li>a{
  position:relative;
  display:block;
  font-size:16px;
  font-weight:bold;
    line-height:1.4;
}
#fnav>ul>li>a>div{
  display:inline-block;
  text-align:left;
  padding:14px 0 14px 45px;
}
#fnav>ul>li.fnav03>a>div{
  padding:14px 0 14px 45px;
}
.fnav01 div{
  background: url("../images/cmn_icon01.png") 0 center no-repeat;
}
.fnav02 div{
  background: url("../images/cmn_icon02.png") 0 center no-repeat;
}
.fnav03 div.members{
  background: url("../images/cmn_icon03.png") 0 center no-repeat;
}
.fnav03 div.inquiry{
  background: url("../images/cmn_icon04.png") 0 center no-repeat;
}
#fnav>ul>li span{
  font-size:14px;
}
.fnav01 span{
  color:#5AB646;
}
.fnav02 span{
  color:#FF6666;
}
.fnav03 span{
  color:#ECB802;
}
#fnav>ul>li>ul>li>a{
  display:block;
  color: #333;
  font-size: 13px;
  font-size: 1.3rem;
  line-height:2.3;
}


#fsubnav ul{
  margin-top:40px;
  padding:40px 0 20px;
  border-top:1px #DAD8D4 solid;
}
#fsubnav li{
  display:inline;
  padding:0 15px;
  border-left:1px #DAD8D4 solid;
}
#fsubnav li:first-child{
  padding:0 15px 0 0;
  border-left:none;
}
#fsubnav li a{
  color: #333;
  font-size: 1.4rem;
}
.footerinfo{
  padding:15px 0;
}
.footerinfo .inner{
   position:relative;
}
.flogo{
  width:40%;
}
.finfo{
  position:absolute;
  top:10px;
  right:0;
  width:60%;
}
.finfo p{
  font-size:1.2rem;
  font-weight:bold;
}
.finfo p .lg{
  font-size:1.6rem;
}
.finfo address{
  font-size:1.3rem;
  margin-top:10px;
}
.copy{
  width:40%;
  padding:10px 20px 0 0;
  font-size: 0.666em;
}

/*-------------------- ■ START Media Queries ■ --------------------*/
@media (max-width: 768px) {/*768px以下のスタイル*/

.btmnavi dl{
  display:block;
}
.btmnavi dt{
  display:block;
  width:auto;
  padding:0;
  margin-bottom:10px;
  text-align:center;
}
.btmnavi dd{
  display:block;
  text-align:center;
}


#fnav>ul{
  display:block;
  width:100%;
}
#fnav>ul>li{
  display:block;
  width:100%;
}
#fnav>ul>li.fnav03{
  width:100%;
}
#fnav>ul>li>ul>li>a{
  line-height:3;
}

#fsubnav li,
#fsubnav li:first-child{
  display:block;
  padding:10px 0;
  border-left:none;
}

.flogo{
  width:100%;
}
.finfo{
  position:relative;
  width:100%;
}
.copy{
  width:100%;
  padding:20px 20px 0 0;
}


}/* end 768px */
@media (max-width: 480px) {/*480px以下のスタイル*/
.finfo p .lg{
  display:block;
}
}/* end 480px */


