﻿
/* ----------------------------------------------------------------------------- */
/* -- HTML FORMAT css -- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, 
dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, 
legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary, time, mark, audio, video, select, textarea {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

html {
	font-family:"メイリオ", Meiryo, sans-serif;
	color:#000;
}

body {
	width:100%;
	padding:0;
	margin:0;
	-webkit-text-size-adjust: auto;
}

header, nav, footer, h1, h2, h3, h4, h5, h6, br, dl, dt, dd, p, div, ul, li {
	font-size:100%;
}

img {
	font-size:0;
	line-height:0;
	border:0px;
}

ul, ol, nav {
	list-style-type:none;
}


table {
	border-collapse: collapse;
	border-spacing: 0;
}

sup {
	vertical-align:text-top;
	font-size:0.7em;
	line-height:1;
}

sub {
	vertical-align:text-bottom;
	font-size:0.7em;
	line-height:1;
}

a {
	color:#064AC1;
	text-decoration: none;
}

*:focus {
	outline-width:0;
}



/* wrapper */
.pc {
	display:block;
}
.sp {
	display:none;
}
.page_inner {
	width:100%;
	max-width:1000px;
	margin-left:auto;
	margin-right:auto;
}
.main_bg {
	width:100%;
	max-width:1200px;
	font-size:0;
	line-height:0;
	margin-left:auto;
	margin-right:auto;
}



/* search */
div.searcharea {
	width:100%;
	max-width:1000px;
	padding:4px 0;
	margin:0 auto;
	border-bottom:1px solid #CCC;
}
#srchBox * {
	font-size: 13px;
	*font-size: small;
	*font: x-small;
}
#srchBox #srch #srchForm {white-space: nowrap; }
#srchBox #srchInput {
	width: 188px;
	margin-right: 6px;
	vertical-align: bottom;
}
#srchBox #srchBtn {
	width: 120px;
}



/* header */
div#wrapper header.site-header {
	display: flex;
	position: fixed;
	justify-content: space-between;
	width: 100%;
	padding:0;
	margin:0 auto;
	background: rgba(255,255,255,1.0);
	z-index:9999;
}
div#wrapper header.site-header div.h_inner {
	width:100%;
	margin: 0 auto;
}
div#wrapper header.site-header div.h_inner div.header {
	width:100%;
	max-width:1000px;
	padding:20px 0;
	margin:0 auto;
	transition: .5s;
}
div#wrapper header.site-header div.h_inner div.header:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
div#wrapper header.site-header.transform div.h_inner div.header {
	background: rgba(255,255,250,1.0);
	padding:8px 0;
}
div#wrapper header.site-header div.h_inner div.header a.logo {
	display:block;
	width:20%;
	max-width:200px;
	float:left;
	margin-top:10px;
}
div#wrapper header.site-header div.h_inner div.header a.logo img {
	width:100%;
}
div#wrapper header.site-header div.h_inner div.header div.h_right {
	display:table;
	width:70%;
	max-width:640px;
	float:right;
}
div#wrapper header.site-header div.h_inner div.header div.h_right p.h_txt,
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel,
div#wrapper header.site-header div.h_inner div.header div.h_right p.h_mail {
	box-sizing: border-box;
	display:table-cell;
	vertical-align:middle;
	border-right:1px solid #CCC;
}
div#wrapper header.site-header div.h_inner div.header div.h_right p.h_txt {
	font-size:80%;
	line-height:100%;
}
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel {
	text-align:center;
}
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel p {
	font-size:160%;
	line-height:100%;
	font-weight:bold;
	font-family:arial;
	letter-spacing:0.1em;
	margin:0 auto;
}
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel p span {
	padding-left:28px;
	background-image:url(../img/h_ic_tel.png);
	background-repeat:no-repeat;
	background-position:0 50%;
}
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel dl {
	font-size:90%;
	line-height:100%;
	padding-top:8px;
}
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel dl dt,
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel dl dd {
	display:inline-block;
}
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel dl dt {
	font-weight:bold;
	color:#999;
	padding-right:16px;
}
div#wrapper header.site-header div.h_inner div.header div.h_right p.h_mail {
	text-align:center;
	margin:0 auto;
}
div#wrapper header.site-header div.h_inner div.header div.h_right p.h_mail a {
	display:block;
	font-size:80%;
	line-height:140%;
	text-align:left;
	color:#000;
	padding-left:50px;
	background-image:url(../img/h_ic_mail.png);
	background-repeat:no-repeat;
	background-position:15% 50%;
	transition: .3s;
}
div#wrapper header.site-header div.h_inner div.header div.h_right p.h_mail a:hover {
	color:#064AC1;
}

div#wrapper header.site-header div.h_inner nav {
	width:100%;
	padding:0;
	margin:0 auto;
	background-color:#064AC1;
}

div#wrapper header.site-header div.h_inner nav div {
	width:100%;
	max-width:1000px;
	padding:0;
	margin:0 auto;
}
div#wrapper header.site-header div.h_inner nav div:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}

p.lang {
	display:table;
	width:170px;
	float:right;
	font-size:80%;
	line-height:100%;
	text-align:center;
	padding: 10px 0 9px;
	margin: 0 auto;
	background-color:#386ECD;
}
p.lang a {
	display:table-cell;
	vertical-align:middle;
	color:#FFF;
}
p.lang a:last-child {
	border-left:1px solid #FFF;
}
ul#pagemenu {
	width:830px;
	float:left;
	list-style-type: none;
	font-size:90%;
	line-height:120%;
	padding: 0;
	margin: 0 auto;
}
ul#pagemenu:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
ul#pagemenu li {
	display: block;
	box-sizing: border-box;
	width: 33.3333%;
	float: left;
	text-align:center;
	padding:8px 0;
	margin:0;
	position: relative;
}
ul#pagemenu li a {
	color:#FFF;
}
ul#pagemenu li:hover a {
	color:#FFF;
}
ul#pagemenu li ul.child {
	display: none;
	width: 100%;
	max-width:100%;
	position: absolute;
	padding: 0;
	top:33px;
	z-index:9999;
}
ul#pagemenu li ul.child li {
	display: block;
	box-sizing: border-box;
	width: 100%;
	float:none;
	text-align:left;
	padding:0;
	margin: 0;
	border-top:1px solid #FFF;
}
ul#pagemenu li ul.child li a {
	display: block;
	box-sizing: border-box;
	width: 100%;
	color:#FFF;
	padding:8px 8px 8px 1.7em;
	background-color:#064AC1;
	position: relative;
}
ul#pagemenu li ul.child li a:before{
	content:"";
	width: 7px;
	height: 7px;
	border: 0px;
	border-top: solid 1px #FFF;
	border-right: solid 1px #FFF;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 45%;
	left: 0.5em;
	margin-top: -4px;
}


.hero {
	padding-top:158px;
	overflow: hidden;
}

div#wrapper p.breadcrumbs {
	width:100%;
	max-width:1000px;
	font-size:80%;
	line-height:100%;
	color:#666;
	text-align:left;
	padding:12px 0;
	margin:0 auto;
}



/* main */
div#wrapper main {
	width:100%;
	padding:0;
	margin:0 auto;
}
div#wrapper main img {
	width:100%;
	font-size:0;
	line-height:0;
}

div.slider {
	width:100%;
	max-width:1200px;
	padding:0;
	margin:0 auto;
}


div.bx-viewport {
	z-index:-1;
}
div.bx-controls-direction {
	z-index:-1;
}
#wrapper .bx-controls-direction a {
	z-index:1;
}




.contents {
	width:100%;
	max-width:1200px;
	font-size:0;
	line-height:0;
	margin:0 auto;
}
.pagecontents {
	width:100%;
	max-width:1200px;
	margin:0 auto;
}
.pagecontents_l {
	width:100%;
	max-width:1400px;
	margin:0 auto;
}
.pagecontents_l h1 {
	font-size:0%;
	line-height:0%;
}
.mainimage {
	background-color:#064AC1;
	background-image:url(../img/mainimage_bg.jpg);
	background-repeat:no-repeat;
	background-position:right center;
}
.mainimage h1 {
	width:100%;
	max-width:1000px;
	font-size:200%;
	line-height:120%;
	color:#FFF;
	padding:48px 0;
	margin:0 auto;
}
.mainimage h1 span {
	display:block;
	font-size:60%;
}
.pagecontents .section {
	width:100%;
	max-width:1200px;
	padding:80px 0;
	margin:0 auto;
}
.pagecontents .section.bd {
	border-top:1px solid #CCC;
}
.pagecontents .section.bg_01 {
	background-color:#F0F0F0;
}
.pagecontents .article {
	width:100%;
	max-width:1200px;
	padding:40px 0 0;
	margin:0 auto;
}

.section h2 {
	font-size:180%;
	line-height:120%;
	text-align:center;
	padding:0 0 40px;
	margin:0 auto;
}
.section h2.left {
	font-size:180%;
	line-height:120%;
	text-align:left;
	padding:0 0 24px;
}
.section h2.gr_left {
	width:100%; 
	max-width:1035px;
	font-size:200%;
	color:#064AC1;
	text-align:left;
}
.section h3 {
	font-size:140%;
	line-height:120%;
	padding:16px;
	margin:0 auto 16px;
	background-color:#F0F0F0;
	border-top:2px solid #064AC1;
	border-bottom:1px solid #DDD;
}
.section h5 {
	font-size:110%;
	line-height:120%;
	font-weight:bold;
	padding:16px 0 8px;
	margin:0 auto;
}

p.tx_l {
	font-size:100%;
	line-height:160%;
	font-weight:normal;
	padding:0 0 16px;
}
p.tx_m {
	font-size:96%;
	line-height:160%;
	font-weight:normal;
	padding:0 0 16px;
}
p.tx_s {
	font-size:80%;
	line-height:140%;
	font-weight:normal;
	padding:0 0 16px;
}

ul.list {
	font-size:96%;
	line-height:140%;
	font-weight:normal;
	padding:0 0 16px;
}
ul.list li {
	padding-left:1em;
	text-indent:-1em;
	margin-bottom:4px;
}

ul.list_s {
	font-size:80%;
	line-height:140%;
	font-weight:normal;
	padding:0 0 16px;
}
ul.list_s li {
	padding-left:1em;
	text-indent:-1em;
	margin-bottom:4px;
}

div.anchor {
	font-size:90%;
	text-align:center;
	padding:24px 0;
	border-bottom:1px solid #CCC;
}
div.anchor a {
	display:inline-block;
	margin:0 16px;
}



/* top page css ---------------------------------------------------------------------- */

div.top_mainnavi {
}
div.top_mainnavi a.mainnavibox {
	display:table;
	width:100%; 
	margin-top:1px;
	transition: .2s;
}
div.top_mainnavi a.mainnavibox:hover {
	opacity: 0.7; filter: alpha(opacity=70);
}
div.top_mainnavi a.mainnavibox:nth-child(odd) {
	background-color:#FAFAFA;
}
div.top_mainnavi a.mainnavibox:nth-child(even) {
	background-color:#E5E5E5;
}
div.top_mainnavi a.mainnavibox p.thumbnail {
	display:table-cell;
	vertical-align:middle;
	width:33%; 
	max-width:400px;
	font-size:0%;
	line-height:0%;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}
div.top_mainnavi a.mainnavibox p.thumbnail img {
	display:none;
}
div.top_mainnavi a.mainnavibox.aerosol p.thumbnail {
	background-image:url(/local/img/top_mainnavi_01.jpg);
}
div.top_mainnavi a.mainnavibox.nichimoly p.thumbnail {
	background-image:url(/local/img/top_mainnavi_02.jpg);
}
div.top_mainnavi a.mainnavibox.rik p.thumbnail {
	background-image:url(/local/img/top_mainnavi_03.jpg);
}
div.top_mainnavi a.mainnavibox.ship p.thumbnail {
	background-image:url(/local/img/top_mainnavi_04.jpg);
}
div.top_mainnavi a.mainnavibox div.navi_info {
	display:table-cell;
	vertical-align:middle;
	padding:40px;
}
div.top_mainnavi a.mainnavibox div.navi_info h2 {
	font-size:160%;
	line-height:140%;
	color:#000;
	padding:0 0 24px;
}
div.top_mainnavi a.mainnavibox div.navi_info h2 span.tx_s {
	font-size:80%;
	margin:0 0 0 3px;
}
div.top_mainnavi a.mainnavibox.aerosol div.navi_info h2 span.color {
	color:#C11054;
}
div.top_mainnavi a.mainnavibox.nichimoly div.navi_info h2 span.color {
	color:#0648C1;
}
div.top_mainnavi a.mainnavibox.rik div.navi_info h2 span.color {
	color:#24AD43;
}
div.top_mainnavi a.mainnavibox.ship div.navi_info h2 span.color {
	color:#55A2F2;
}
div.top_mainnavi a.mainnavibox div.navi_info p {
	font-size:100%;
	line-height:180%;
	color:#000;
	padding:0 0 24px;
}
div.top_mainnavi a.mainnavibox div.navi_info span.btn {
	font-size:180%;
	line-height:120%;
	font-weight:bold;
	padding-left:1em;
	position: relative;
}
div.top_mainnavi a.mainnavibox div.navi_info span.btn:before{
	content:"";
	width: 16px;
	height: 16px;
	border: 0px;
	border-top: solid 1px #064AC1;
	border-right: solid 1px #064AC1;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 25%;
	left: 0em;
}

div.top_bnr {
	width:100%; 
	max-width:1000px;
	padding:40px 0;
	margin:0 auto;
}
div.top_bnr ul:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
div.top_bnr ul li {
	width:21.25%; 
	max-width:210px;
	font-size:0%;
	line-height:0%;
	float:left;
}
div.top_bnr ul li:nth-child(n+2) {
	margin-left:5%;
}

div.top_bus {
	width:100%; 
	max-width:1000px;
	margin:0 auto;
}
div.bus_layout:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
div.bus_layout div.bus_lo_left {
	width:65%;
	max-width:650px;
	float:left;
}
div.bus_layout div.bus_lo_right {
	width:35%;
	float:right;
}
div.bus_layout div.bus_lo_right p {
	width:243px;
	margin:0 auto;
}
div.top_bus div.bus_info {
	padding:16px;
	background-color:#F0F0F0;
}
div.top_bus div.bus_info dl {
	display:table;
	width:100%;
	font-size:100%;
	line-height:140%;
}
div.top_bus div.bus_info dl dt,
div.top_bus div.bus_info dl dd {
	display:table-cell;
	vertical-align:middle;
}
div.top_bus div.bus_info dl dt {
	width:7.5em;
}
div.top_bus div.bus_info p {
	font-size:100%;
	line-height:140%;
	text-align:right;
}
div.top_bus div.bus_info p a {
	position: relative;
}
div.top_bus div.bus_info p a:before{
	content:"";
	width: 9px;
	height: 9px;
	border: 0px;
	border-top: solid 1px #064AC1;
	border-right: solid 1px #064AC1;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 25%;
	left: -1.2em;
}

div.newsarea {
	width:100%; 
	max-width:1000px;
	margin:0 auto;
}
div.newsarea div.ovfl {
}
div.newsarea div.ovfl dl {
	display:table;
	width:100%;
	font-size:100%;
	line-height:140%;
	padding:16px 0;
}
div.newsarea div.ovfl dl:nth-child(odd) {
	background-color:#F0F0F0;
}
div.newsarea div.ovfl dl dt,
div.newsarea div.ovfl dl dd {
	display:table-cell;
	vertical-align:middle;
}
div.newsarea div.ovfl dl dt {
	width:10em;
	padding:0 24px;
}








table.bd_type {
	width:100%; 
	max-width:1000px;
	border-collapse:collapse; 
	border-spacing:0px; 
	font-size:100%;
	line-height:140%;
	padding:0; 
	margin:0 auto;
	border-top:1px solid #CCC; 
}
table.bd_type th,
table.bd_type td {
	padding:16px;
	border-bottom:1px solid #CCC; 
}
table.bd_type th {
	text-align:left;
}

table.bg_type {
	width:100%; 
	max-width:1000px;
	border-collapse:collapse; 
	border-spacing:0px; 
	font-size:90%;
	line-height:140%;
	padding:0px; 
	margin:0 auto;
	border-top:1px solid #CCC; 
	border-left:1px solid #CCC; 
}
table.bg_type th,
table.bg_type td {
	padding:8px;
	background-color:#FFF;
	border-right:1px solid #CCC; 
	border-bottom:1px solid #CCC; 
}
table.bg_type th {
	background-color:#DDD;
}
table.bg_type.history tr td:nth-child(1) {
	width:20%;
}
table.bg_type.history tr td:nth-child(2),
table.bg_type.history tr td:nth-child(3) {
	width:40%;
}

ul.concept {
	width:100%; 
	max-width:1000px;
	font-size:110%;
	line-height:140%;
	font-weight:bold;
	padding:0; 
	margin:0 auto;
}
ul.concept li {
	padding:24px 0 0 2.3em;
	text-indent:-2.3em;
}

div.greeting {
	width:100%; 
	max-width:1000px;
	padding:0; 
	margin:0 auto;
}
div.greeting:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
div.greeting div.text {
	width:70%; 
	max-width:700px;
	float:left;
	padding:0; 
	margin:0 auto;
}
div.greeting div.text p {
	font-size:110%;
	line-height:180%;
	padding:0 0 24px; 
}
div.greeting div.text p:last-child {
	font-size:100%;
	text-align:right;
}

div.greeting p.photo {
	width:26%; 
	max-width:260px;
	float:right;
	font-size:0;
	line-height:0;
	padding:6px 0 0; 
	margin:0 auto;
}
div.greeting p.photo img {
	width:100%;
}



/* block ---------------------------------------------------------------------- */
div.block {
	width:100%;
	max-width:1000px;
	padding-bottom:16px;
	margin:0 auto;
}
div.block:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
div.block div {
}
div.bk2 div.box {
	width:49%;
	float:left;
}
div.bk2 div.box:nth-child(2) {
	float:right;
}

a.bdbtn {
	display:block;
	background-color:#FFF;
	border:1px solid #CCC;
}
a.bdbtn:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
a.bdbtn span.name {
	width:50%;
	box-sizing: border-box; 
	float:left;
	font-size:100%;
	font-weight:bold;
	padding:20px 16px 0;
}
a.bdbtn span.thumb {
	width:180px;
	float:right;
	padding:0; 
	margin:0;
	font-size:0;
	line-height:0;
}
a.btn {
	display: block;
	box-sizing: border-box;
	width: 100%;
	color:#FFF;
	text-align:center;
	padding:8px;
	background-color:#064AC1;
	position: relative;
}


/* areabox ---------------------------------------------------------------------- */
div.areabox {
	width:100%;
	max-width:1000px;
	border-top:1px solid #CCC;
	padding:16px 0 8px;
	margin:0 auto 16px;
}
div.areabox:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
div.areabox:last-child {
	border-bottom:1px solid #CCC;
}
div.areabox div.full {
	width:100%;
}
div.areabox div.link {
	display:table;
	width:100%;
}
div.areabox div.link:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
div.areabox div.link div.txt {
	display:table-cell;
	width:565px;
}
div.areabox div.link div.btn {
	display:table-cell;
	width:177px;
	vertical-align:bottom;
	text-align:right;
	padding-bottom:10px;
}
div.areabox div.link div.btn a.map {
	display:inline-block;
	font-weight:bold;
	color:#FFF;
	text-align:center;
	padding:6px 16px;
	background-color:#0648C1;
	border-radius:4px;
}
div.areabox div.link div.btn a.map:last-child {
	margin-top:8px;
}

div.areabox div.link div.txt2 {
	display:table-cell;
	width:500px;
	vertical-align:top;
}
div.areabox div.link div.map {
	display:table-cell;
	width:500px;
	vertical-align:top;
	padding:0 0 0 10px;
}



/* footer */
div#wrapper footer {
	width:100%;
	padding:0;
	margin:80px 0 0;
	background-color:#F0F0F0;
}
div#wrapper footer div.f_inner {
	width:100%;
	max-width:1000px;
	padding:40px 0 24px;
	margin:0 auto 0;
}

footer.list5 ul.parent {
	width:187px;
	float:left;
	padding-left:16px;
}
footer.list4 ul.parent {
	width:238px;
	float:left;
	padding-left:16px;
}
footer.list2 ul.parent {
	width:317px;
	float:left;
	padding-left:16px;
}
footer ul.parent:nth-child(1) {
	padding-left:0px;
}
footer ul.parent {
	font-size:96%;
	line-height:120%;
	font-weight:bold;
}
footer ul.parent li {
	padding:0 0 8px;
}
footer ul.parent li ul.child {
	font-size:90%;
	line-height:120%;
	font-weight:normal;
	padding:8px 0 0;
}
footer ul.parent li ul.child li:last-child {
	padding:0;
}
footer ul.parent li ul.mago {
	font-size:96%;
	line-height:120%;
	padding:8px 0 0 1.1em;
}
footer ul.parent li ul.mago li:last-child {
	padding:0;
}
footer ul.sgk {
	font-size:96%;
	line-height:120%;
	font-weight:bold;
	text-align:center;
	margin:0 auto;
}
footer ul.sgk li {
	display:inline-block;
	padding:0 40px 0 0;
}
footer ul.parent li span {
	color:#0648C1;
}

footer div.f_info {
	width:100%;
	box-sizing: border-box; 
	padding:64px 0 0;
	clear: both;
}
footer div.f_info:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
footer div.f_info p.copy {
	width:50%;
	max-width:600px;
	box-sizing: border-box; 
	float:left;
	font-size:70%;
	line-height:100%;
}
footer div.f_info ul {
	width:50%;
	max-width:600px;
	box-sizing: border-box; 
	float:right;
	font-size:80%;
	line-height:100%;
}
footer div.f_info ul li {
	box-sizing: border-box; 
	float:right;
	padding-left:32px;
}
footer a:hover {
	opacity: 0.7; filter: alpha(opacity=70);
}


div#wrapper footer p.copyright {
	font-size:70%;
	line-height:100%;
	color:#FFF;
	text-align:center;
	padding:40px 0;
	background-color:#254456;
}



/* pagetop  */
.pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
.pagetop a {
	display:block;
	padding-bottom:0px;
	transition: all 400ms 0s ease;
}
.pagetop a img {
	width:80px;
}
.pagetop a:hover {
	padding-bottom:8px;
}



/* ###################### break tablet ###################### */
@media screen and (min-width: 769px) and (max-width: 1024px) {



/* search */
div.searcharea {
	box-sizing: border-box;
	width:100%;
	max-width:100%;
	padding:4px 8px;
}



/* header */
div#wrapper header.site-header div.h_inner div.header {
	box-sizing: border-box;
	width:100%;
	max-width:100%;
	padding:16px 8px;
}
div#wrapper header.site-header.transform div.h_inner div.header {
	padding:8px;
}
div#wrapper header.site-header div.h_inner div.header div.h_right p.h_txt {
	font-size:76%;
}
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel p {
	font-size:150%;
}
div#wrapper header.site-header div.h_inner div.header div.h_right div.h_tel dl {
	font-size:84%;
}
div#wrapper header.site-header div.h_inner div.header div.h_right p.h_mail a {
	font-size:76%;
}

div#wrapper header.site-header div.h_inner nav div {
	width:100%;
	max-width:100%;
}

p.lang {
	width:25%;
	font-size:76%;
}
ul#pagemenu {
	width:75%;
	font-size:80%;
}

ul#pagemenu li ul.child {
	top:32px;
}


.hero {
	padding-top:146px;
	overflow: hidden;
}
div#wrapper p.breadcrumbs {
	max-width:100%;
	padding:12px 10px;
}



.pagecontents .section {
	width:100%;
	max-width:100%;
	padding:70px 16px;
}



}



/* SMARTPHONE ------------------------------------------------------------------ */
@media screen and (max-width: 768px) {



.pc {
	display:none;
}
div.header.pc {
	display:block;
}
.sp {
	display:block;
	width:100%;
}
.sp img {
	font-size:0;
	line-height:0;
	width:100%;
}
div#wrapper header.site-header {
	display: block;
}
.drawer-hamburger{
	top:38px !important;
}

/* search */
div.searcharea {
	box-sizing: border-box;
	width:100%;
	max-width:100%;
	padding:4px 8px;
}



/* header */
div#wrapper header.site-header div.h_inner div.header {
	box-sizing: border-box;
	width:100%;
	max-width:100%;
	padding:10px 16px;
}
div#wrapper header.site-header.transform div.h_inner div.header {
	padding:8px 16px;
}
div#wrapper header.site-header div.h_inner div.header a.logo {
	width:45%;
	max-width:45%;
	float:left;
	margin-top:5px;
}
div#wrapper header.site-header div.h_inner div.header div.h_right {
	display:none;
}

div#wrapper header.site-header div.h_inner nav div {
	width:100%;
	max-width:100%;
}



.hero {
	padding-top:98px;
}

div#wrapper p.breadcrumbs {
	box-sizing: border-box;
	width:100%;
	max-width:100%;
	padding:12px 16px;
	border-top:2px solid #064AC1;
}



.pagecontents .section {
	width:100%;
	max-width:100%;
	padding:50px 16px;
}
.pagecontents .article {
	width:100%;
	max-width:100%;
	padding:30px 0 0;
}
.section h2 {
	font-size:140%;
	padding:0 0 20px;
}
.section h2.gr_left {
	max-width:100%;
	font-size:140%;
}
.section h3 {
	font-size:120%;
	padding:10px 0;
	margin:0 auto 15px;
}
.section h5 {
	font-size:100%;
}


/* top page css ---------------------------------------------------------------------- */

div.top_mainnavi {
}
div.top_mainnavi a.mainnavibox {
	display:block;
}
div.top_mainnavi a.mainnavibox:hover {
	opacity: 1.0; filter: alpha(opacity=100);
}
div.top_mainnavi a.mainnavibox p.thumbnail {
	display:block;
	width:100%; 
	max-width:100%;
	background:none;
}
div.top_mainnavi a.mainnavibox p.thumbnail img {
	display:block;
}
div.top_mainnavi a.mainnavibox div.navi_info {
	display:block;
	padding:24px 16px;
}
div.top_mainnavi a.mainnavibox div.navi_info h2 {
	font-size:120%;
	padding:0 0 16px;
}
div.top_mainnavi a.mainnavibox div.navi_info p {
	font-size:90%;
	padding:0 0 20px;
}
div.top_mainnavi a.mainnavibox div.navi_info p br {
	display:none;
}
div.top_mainnavi a.mainnavibox div.navi_info span.btn {
	font-size:150%;
}


div.top_bnr {
	width:100%; 
	max-width:100%;
}
div.top_bnr ul {
	padding:0 16px;
}
div.top_bnr ul li {
	width:48%; 
	max-width:48%;
	padding:0 0 16px;
}
div.top_bnr ul li:nth-child(n+2) {
	margin-left:0;
}
div.top_bnr ul li:nth-child(odd) {
	float:left;
}
div.top_bnr ul li:nth-child(even) {
	float:right;
}


div.top_bus {
	width:100%; 
	max-width:100%;
}
div.bus_layout div.bus_lo_left {
	width:100%;
	max-width:100%;
	float:none;
}
div.bus_layout div.bus_lo_right {
	width:100%;
	float:none;
}
div.bus_layout div.bus_lo_right p {
	width:243px;
	padding-top:20px;
	margin:0 auto;
}
div.top_bus div.bus_info dl {
	font-size:90%;
	line-height:140%;
}
div.top_bus div.bus_info p {
	font-size:90%;
	padding-top:10px;
}


div.newsarea {
	width:100%; 
	max-width:100%;
}
div.newsarea div.ovfl {
}
div.newsarea div.ovfl dl {
	display:block;
	width:100%;
	font-size:90%;
	padding:16px;
}
div.newsarea div.ovfl dl dt,
div.newsarea div.ovfl dl dd {
	display:block;
}
div.newsarea div.ovfl dl dt {
	width:10em;
	padding:0;
}



table.bd_type {
	width:100%; 
	max-width:100%;
	font-size:80%;
}
table.bd_type th,
table.bd_type td {
	padding:10px;
}

table.bg_type {
	width:100%; 
	max-width:100%;
	font-size:80%;
}
table.bg_type th,
table.bg_type td {
	padding:10px;
}

ul.concept {
	width:100%; 
	max-width:100%;
	font-size:100%;
}
ul.concept li {
	padding:15px 0 0 2.3em;
	text-indent:-2.3em;
}

div.greeting {
	width:100%; 
	max-width:100%;
}
div.greeting div.text {
	width:100%; 
	max-width:100%;
	float:none;
}
div.greeting div.text p {
	font-size:90%;
	line-height:160%;
	padding:0 0 20px; 
}
div.greeting div.text p:last-child {
	font-size:80%;
}

div.greeting p.photo {
	width:70%; 
	max-width:70%;
	float:none;
	padding:20px 0 0; 
	margin:0 auto;
}



/* block ---------------------------------------------------------------------- */
div.block {
	width:100%;
	max-width:100%;
	padding-bottom: 0;
}
div.bk2 div.box {
	width:100%;
	float:none;
	padding-bottom: 10px;
}
div.bk2 div.box:nth-child(2) {
	float:none;
}



/* areabox ---------------------------------------------------------------------- */
div.areabox {
	width:100%;
	max-width:100%;
}
div.areabox div.link {
	display:block;
	width:100%;
}
div.areabox div.link div.txt {
	display:block;
	width:100%;
}
div.areabox div.link div.btn {
	display:block;
	width:100%;
}

div.areabox div.link div.txt2 {
	display:block;
	width:100%;
}
div.areabox div.link div.map {
	display:block;
	width:100%;
	padding:10px 0 0;
}



/* footer ---------------------------------------------------------------------- */
footer {
	width:100%;
	max-width:100%;
	min-width:100%;
	padding:40px 10px 24px;
}

footer ul.parent:first-child {
	padding-top:12px;
	border-top:1px solid #FFF;
}
footer.list5 ul.parent {
	width:100%;
	float:none;
	padding-left:0px;
	border-bottom:1px solid #FFF;
	margin-bottom:12px;
}
footer.list4 ul.parent {
	width:100%;
	float:none;
	padding-left:0px;
	border-bottom:1px solid #FFF;
	margin-bottom:12px;
}
footer.list2 ul.parent {
	width:100%;
	float:none;
	padding-left:0px;
	border-bottom:1px solid #FFF;
	margin-bottom:12px;
}
footer ul.parent > li {
	border-bottom:1px solid #FFF;
	margin-bottom:12px;
}
footer ul.parent > li:last-child {
	border-bottom:none;
	margin-bottom:0px;
}

footer ul.sgk {
	font-size:96%;
	line-height:120%;
	font-weight:bold;
	text-align:left;
	margin:0 auto;
}
footer ul.sgk li {
	display:block;
	padding:0 0 12px;
	margin-bottom:12px;
	border-bottom:1px solid #FFF;
}
footer ul.sgk li:last-child {
	border-bottom:none;
	margin-bottom:0px;
}



}
