@charset "utf-8";
/*------------------------------------------------------------
	layout
------------------------------------------------------------*/
@media screen and (min-width: 0) and (max-width: 767px)  {
	body {
		min-width: inherit;
	}
	
	#headerArea {
		position: relative;
		background-color: #FFF;
	}
	
	#headerArea h1 a {
		width: 123px;
		height: 12px;
		display: block;
		background: url(../images/sp_logo.jpg) no-repeat left top;
		background-size: 123px 12px;
	}

	#headerArea h1 a img {
		visibility: hidden;
	}
	
	#headerArea .hInner {
		padding: 16px 65px 0 20px;
		height: 34px;
		width: auto;
		position: relative;
	}

	#headerArea .hInner .subInner {
		margin: 0;
		padding: 0;
		width: auto;
	}
	
	#headerArea .menu {
		display: block;
		position: absolute;
		right: 0;
		top: 0;
	}

	#headerArea .menu a {
		width: 50px;
		height: 50px;
		display: block;
		background: url(../images/sp_menu02.gif) no-repeat left top;
		background-size: cover;
	}

	#headerArea .menu .on img {
		visibility: hidden;
	}
	
	#headerArea .hLink {
		float: none;
	}
	
	#headerArea .hLink li {
		display: none;
	}
	
	#headerArea .hLink .sitemap {
		display: none !important;
	}
	
	#headerArea .hLink .language {
		padding: 0;
		border: none;
		display: block;
		font-size: 12px;
	}

	#headerArea .hLink .language a {
		color: #333;
	}
	
	#gnaviArea {
		margin: 0 !important;
		width: 100%;
		display: none;
		position: absolute;
		left: 0;
		top: 50px;
		z-index: 90;
		background-color: #222;
	}
	
	#gnaviArea .navi06 {
		display: block;
	}
	
	#gnaviArea .searchBox {
		display: block !important;
		padding: 0;
		width: auto;
		position: relative;
		left: 0;
		top: 0;
	}
	
	#gnaviArea .searchBox .search {
		padding: 10px 20px 12px;
		width: auto;
		border-bottom: 1px solid #CCC;
	}
		
	#gnaviArea .searchBox .search span {
		display: none;
	}
	
	#gnaviArea .searchBox .search .close {
		display: none;
	}
	
	#gnaviArea .searchBox .search input {
		margin: 0;
		padding: 0;
    padding-top: 1px;
		width: 88%;
		height: 26px;
		float: left;
		box-sizing:border-box;
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-webkit-appearance: none;
		border-radius: 0;
		border: 1px solid #FFF;
	}
  #gnaviArea .searchBox .search input.gsc-search-button {
    width: 26px;
  }
  #gnaviArea td.gsc-search-button{
    width: 9%;
  }

	#gnaviArea .search a {
		margin-top: 5px;
		float: right;
	}
  #___gcse_0 {
    width: 100%;
  }
  table.gsc-search-box {
    width: 100% !important;
  }
	
	#gnaviArea > ul > li {
		margin: 0 15px;
		height: auto;
		float: none;
		font-size: 14px;
		text-align: center;
		border-bottom: 1px solid #fff;
	}

	#gnaviArea > ul > li a {
		padding: 14px 0 !important;
		height: auto;
		display: block;
	}

	#gnaviArea > ul li.on > a,
	#gnaviArea > ul > li a,
	#gnaviArea > ul li.on > a:hover,
	#gnaviArea > ul > li a:hover {
		height: auto !important;
		border: none !important;
	}
	
	#gnaviArea li .dropNavi {
		display: none !important;
	}
	
	#breadCrumbSec {
		width: auto;
		margin: 0 20px 33px;
	}

	#main {
		width: auto;
		margin: 0 20px 30px;
	}
	
	#contentsArea {
		margin-bottom: 36px;
		width: auto;
		float: none;
	}
	
	#sideArea {
		width: auto;
		float: none;
	}
	
	#sideArea .sNavi {
		padding: 10px 27px 15px;
	}
	
	#sideArea .sNavi li {
		border-top: 1px dotted #b3b3b3;
	}

	.pageTop {
		padding: 0;
		right: 20px;
		bottom: 20px;
		width: auto;
	}
	
	.pageTop a img {
		width: 45px;
	}
	
	#footerArea .sitemap {
		display: block;
		border-bottom: 1px solid #CCC;
	}
	
	#footerArea .sitemap a {
		padding: 12px 0 16px;
		display: block;
		font-size: 14px;
		color: #FFF;
		font-weight: bold;
		text-decoration: none;
		text-align: center;
		background: url(../images/icon10.gif) no-repeat right center;
		background-size: 32px 13px;
	}

	#footerArea .sitemap a.on {
		background: url(../images/icon11.gif) no-repeat right center;
		background-size: 32px 13px;
	}

	#footerArea .fNavi {
		display: none;
		margin-bottom: 10px;
		padding: 0 20px;
		width: auto;
		border-bottom: 1px solid #FFF;
	}
	
	#footerArea .fNavi > ul {
		width: auto !important;
		float: none;
	}
	
	#footerArea .fNavi > ul > li {
		padding-bottom: 0;
	}
	
	#footerArea .fNavi li li {
		width: 50%;
		float: left;
	}
	
	#footerArea .fNavi li > a {
		padding: 12px 0 16px;
		display: block;
		font-size: 14px;
		text-align: center;
	}
	
	#footerArea .fNavi li ul {
		padding-bottom: 10px;
		border-top: 1px dashed #CCC;
		border-bottom: 1px solid #FFF;
	}
	
	#footerArea .fNavi li div {
		margin-top: 0;
		border-top: 1px dashed #CCC;
		border-bottom: 1px solid #FFF;
	}
	
	#footerArea .fNavi li div ul {
		width: 50%;
		border-top: none;
		border-bottom: none;
	}
	
	#footerArea .fNavi li div ul li {
		width: auto;
		float: none;
	}
	
	#footerArea .fNavi .navi03 ul {
		width: 50%;
		text-align: left;
	}
	
	#footerArea .fNavi li li {
		padding: 0;
	}
	
	#footerArea .fNavi li li a {
		padding: 7px 0;
		font-size: 12px;
		text-align: left;
	}
	
	#footerArea .sub {
		margin: 15px 0 17px;
		display: block;
	}
	
	#footerArea .sub li {
		font-size: 12px;
		text-align: center;
	}

	#footerArea  .sub li a {
		padding: 3px 0;
		display: block;
		color: #FFF;
		text-decoration: none;
	}
	
	#footerArea .fBox {
		padding: 10px 0 15px;
	}
	
	#footerArea .fBox > div {
		width: auto;
	}
	
	#footerArea .fBox p {
		float: none;
		font-size: 10px;
		text-align: center;
	}
	
	#footerArea .fBox ul {
		display: none;
	}
	
	#footerArea .fNavi .navi06 li ul .fwBold {
		display: none;
	}
	
	#footerArea .fNavi .navi07 {
		display: block;
	}	
}

@media all and (min-width: 767px)  {
	#headerArea .dropMenu {
		display: none !important;
	}
}

/*------------------------------------------------------------
	general
------------------------------------------------------------*/
@media screen and (min-width: 0) and (max-width: 767px)  {
	.pc {
		display: none !important;
	}
	
	.sp {
		display: block;
	}
	
	/*------------------------------------------------------------
		pageTitle
	------------------------------------------------------------*/
	.pageTitle {
		margin-bottom: 17px;
		min-height: inherit;
	}
	
	.pageTitle h1 {
		padding: 38px 20px;
		width: auto;
		font-size: 16px;
	}
	
	/*------------------------------------------------------------
		headLine
	------------------------------------------------------------*/
	.headLine {
		margin-bottom: 22px;
		padding-bottom: 6px;
		font-size: 22px;
		border-bottom: 1px solid #000;
	}
	
	.headLine02 {
		margin-bottom: 0;
		padding-bottom: 6px;
		font-size: 14px;
	}
	
	.headLine03 {
		margin-bottom: 28px;
		padding-bottom: 8px;
		font-size: 20px;
		border-bottom: 1px solid #666;
	}
	
	.headLine04 {
		margin-bottom: 25px;
		font-size: 18px;
	}
	
	.headLine05 {
		font-size: 16px;
	}
	
	#contentsArea .chapter01 {
		font-size: 20px;
	}
	#contentsArea .chapter02 {
		font-size: 19px;
	}
	/*------------------------------------------------------------
		comTable
	------------------------------------------------------------*/
	#contentsArea .tableBox {
		margin-bottom: 60px;
	}
	
	#contentsArea .comTable th {
		float: left;
		width: 100%;
		padding: 13px 0 0;
		border: none;
		font-weight: bold;
	}
	
	#contentsArea .comTable td {
		float: left;
		width: 100%;
		padding: 0 0 10px;
	}
	
	#contentsArea .comTable td p {
		border: none;
		margin-bottom: 5px;
		padding-bottom: 0;	
	}
	
	#contentsArea .comTable td .symbol {
		display: none;
	}
	
	#contentsArea .comTextList {
		margin: 0 0 19px;
	}
	
	#contentsArea .comTextList02 li {
		font-size: 12px;
	}
	
	/*------------------------------------------------------------
		comUl
	------------------------------------------------------------*/
	#contentsArea .comUl {
		margin-bottom: 46px;
	}
	
	#contentsArea .comUl li {
		padding-bottom: 7px;
		width: 50%;
	}
	
	#contentsArea .comUl li a {
		width: auto;
	}
	
	#contentsArea .comUl li:nth-child(2n+1) a {
		border-left: 1px solid #666;
	}
	
	#contentsArea .zipLink {
		margin-bottom: 15px;
	}
	
	/*------------------------------------------------------------
		companyUl
	------------------------------------------------------------*/
	#main .companyUl {
		margin: 0 0 17px;
	}
	
	#main .companyUl li {
		margin: 0 0 21px;
		width: 48%;
	}

	#main .companyUl li:nth-child(2n) {
		float: right;
	}
	
	#main .companyUl li a {
		padding-bottom: 3px;
		font-size: 12px;
	}
	
	#main .companyUl li a span {
		padding: 0 0 0 15px;
		background: url(../images/icon02.png) no-repeat 4px 4px;
	}

	#main .companyUl li img {
		width: 100%;
	}
		
	#main .companyUl li a:hover img {
		filter: alpha(opacity=100);
		opacity: 1;
	}
	
	/*------------------------------------------------------------
		comBox
	------------------------------------------------------------*/
	#main .comBox {
		margin-bottom: 25px;
	}
	
	#main .comBox h2 {
		padding: 11px 15px;
		font-size: 16px;
	}
	
	#main .comBox ul {
		padding: 25px 20px 10px;
	}
	
	#main .comBox li {
		float: none;
		width: auto;
		padding: 0 0 17px;
	}
	
	#main .comBox li a {
		font-size: 13px !important;
	}

	/*------------------------------------------------------------
		upperBox
	------------------------------------------------------------*/
	#main .upperBox h2 {
		padding-left: 15px;
		font-size: 13px;
	}
	
	#main .upperBox .subBox {
		padding: 17px 15px;
	}
	
	#main .upperBox .subBox p {
		margin-bottom: 12px;
		font-size: 13px;
	}
	
	#main .upperBox .pageLink {
		margin: 0 -3px;
	}
	
	#main .upperBox .pageLink li {
		margin-right: 1%;
		width: 32%;
		line-height: 1;
		box-sizing:border-box;
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		border: 1px solid #ccc;
		border-radius: 1px;
	}
	
	#main .upperBox .pageLink li a {
		padding: 15px 0 8px;
	}
	
	#main .upperBox .pageLink li:first-child a {
		padding-top: 10px;
	}

	#main .upperBox .pageLink .about .image {
		margin-bottom: 5px;
	}
	
	#main .upperBox .pageLink li br.sp {
		display: block;
	}
	
	/*------------------------------------------------------------
		pageLink
	------------------------------------------------------------*/
	.pageLink {
		margin: 0 19px;
	}
	
	.pageLink li {
		margin: 0;
		width: 33.3%;
		box-sizing:border-box;
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
	}
	
	.pageLink li a {
		padding: 18px 0 14px;
		width: 99.5%;
		display: block;
		border-radius: 3px;
	}
	
	.pageLink .image {
		margin-bottom: 5px;
		display: block;
		background: none !important;
	}

	.pageLink .image img {
		margin: 0 auto;
		width: auto;
		height: 30px;
	}
	
	.pageLink li .text {
		display: none;
	}

	.pageLink li br {
		display: none;
	}
	
	.pageLink li a:hover {
		color: #333;
		background-color: #FFF;
	}

	.pageLink li a:hover span img {
		visibility: visible;
	}

	/*------------------------------------------------------------
		newsDl
	------------------------------------------------------------*/
	#main .newsDl {
		margin-bottom: 25px;
	}
	
	#main .newsDl dt {
		margin-bottom: 5px;
		float: none;
		font-size: 13px;
	}
	
	#main .newsDl dd {
		padding: 0 0 16px;
		border-bottom: 1px solid #B3B3B3;
	}
	
	#main .newsDl dd a {
		font-size: 13px;
	}
	/*------------------------------------------------------------
		.tableBox_2
	------------------------------------------------------------*/	
	#contentsArea .tableBox_2 .info_left,
	#contentsArea .tableBox_2 .info_right {
	width:100%;
	padding-top:0;
	padding-left:0;
	}
	#contentsArea .tableBox_2 .info_right {
	margin-top:24px;
	}

}