@charset "UTF-8";
/* CSS Document */

/*==================================
 基本ベースを設定（リセット）します 
===================================*/
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 {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

html{
	overflow-y: scroll;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

input, textarea,{
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse; 
	border-spacing:0;
}

a img {
	border: none;
}
a:link {
	color: #3454bc;
	text-decoration: underline;
}
a:visited {
	color: #4a5886;
	text-decoration: underline;
}
a:hover, a:active, a:focus {
	color: #7a99ff;
	text-decoration: none;
}

/* button 
---------------------------------------------- */
.button {
	display: inline-block;
	zoom: 1; /* zoom and *display = ie7 hack for display:inline-block */
	*display: inline;
	vertical-align: baseline;
	margin: 10px;
	outline: none;
	cursor: pointer;
	text-align: center;
	padding: .4em 2em .5em;
	text-shadow: 0 1px 1px rgba(0,0,0,.3);
	border-radius: .3em;
	box-shadow: 0 1px 2px rgba(0,0,0,.2);
}
.button {
	text-decoration: none;
}
.button:hover {
	text-decoration: none;
	color:#FFF !important;
}
.button:active {
	position: relative;
	top: 1px;
}
.button:visited {
	color:#CCC;
}

/* color styles 
---------------------------------------------- */

/* gray */
.gray {
	color: #e9e9e9;
	border: solid 1px #555;
	background: #6e6e6e;
	background: linear-gradient(#888 0%, #575757 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#888888', endColorstr='#575757');
}
.gray:hover {
	background: #616161;
	background: linear-gradient(#757575 0%, #4b4b4b 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#757575', endColorstr='#4b4b4b');
}
.gray:active {
	color: #afafaf;
	background: linear-gradient(#575757 0%, #888 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#575757', endColorstr='#888888');
}

/* orange */
.orange {
	color: #fef4e9;
	border: solid 1px #da7c0c;
	background: #f78d1d;
	background: linear-gradient(#faa51a 0%, #f47a20 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
}
.orange:hover {
	color: #fff;
	background: #f47c20;
	background: linear-gradient(#f88e11 0%, #f06015 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88e11', endColorstr='#f06015');
}
.orange:active {
	color: #fcd3a5;
	background: linear-gradient(#f47a20 0%, #faa51a 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f47a20', endColorstr='#faa51a');
}

/* blue */
.blue {
	/*color: #d9eef7;*/
	color: #fff;
	border: solid 1px #0076a3;
	background: #0095cd;
	background: (#00adee 0%, #0078a5 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#00adee', endColorstr='#0078a5');
}
.blue:hover {
	background: #007ead;
	background: linear-gradient(#0095cc 0%, #00678e 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#0095cc', endColorstr='#00678e');
}
.blue:active {
	color: #80bed6;
	background: linear-gradient(#0078a5 0%, #00adee 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#0078a5', endColorstr='#00adee');
}

/* rosy */
.rosy {
	color: #fae7e9;
	border: solid 1px #b73948;
	background: #da5867;
	background: linear-gradient(#f16c7c 0%, #bf404f 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f16c7c', endColorstr='#bf404f');
}
.rosy:hover {
	background: #ba4b58;
	background: linear-gradient(#cf5d6a 0%, #a53845 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#cf5d6a', endColorstr='#a53845');
}
.rosy:active {
	color: #dca4ab;
	background: linear-gradient(#bf404f 0%, #f16c7c 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#bf404f', endColorstr='#f16c7c');
}

/* green */
.green {
	color: #e8f0de;
	border: solid 1px #538312;
	background: #64991e;
	background: linear-gradient(#7db72f 0%, #4e7d0e 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#7db72f', endColorstr='#4e7d0e');
}
.green:hover {
	background: #538018;
	background: linear-gradient(#6b9d28 0%, #436b0c 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#6b9d28', endColorstr='#436b0c');
}
.green:active {
	color: #a9c08c;
	background: linear-gradient(#4e7d0e 0%, #7db72f 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#4e7d0e', endColorstr='#7db72f');
}

/* pink */
.pink {
	color: #feeef5;
	border: solid 1px #d2729e;
	background: #f895c2;
	background: linear-gradient(#feb1d3 0%, #f171ab 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#feb1d3', endColorstr='#f171ab');
}
.pink:hover {
	background: #d57ea5;
	background: linear-gradient(#f4aacb 0%, #e86ca4 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f4aacb', endColorstr='#e86ca4');
}
.pink:active {
	color: #f3c3d9;
	background: linear-gradient(#f171ab 0%, #feb1d3 100%);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f171ab', endColorstr='#feb1d3');
}


/* +++++++++++++++++++++++++++++++++
　 コンテンツページ各ディバイス共通 
++++++++++++++++++++++++++++++++++++ */
section h2 {
	font-size:133%;
	color:#333;
	padding:6px 20px;
	margin-bottom:10px;
	background-color:#f0f0f0;
}

section h3 {
	font-size:115%;
	color:#0367a6;
	padding:12px 20px 0;
}
section h4,
section h5 {
	font-size:106%;
	color:#555;
	padding:12px 20px 0;
}

section p {
	font-size:100%;
	line-height:inherit;
	padding:6px 20px;
}

section ul li {
	font-size:100%;
	line-height:inherit;
	padding:6px 20px 6px 0;
	margin-left:56px;
}

section table {
	margin:16px auto 20px;
}
section td {
	padding:4px 8px;
}

.taiouapp {
	width:160px;
	float:left;
}

.taiougengoMida {
	text-align:center;
	width:680px;
	font-size:124%;
	font-weight:bold;
	color:#0367a6;
	text-shadow: #FFF 0 -1px 0;
	padding:5px 0 4px;
	background: #72cef2;
	background: linear-gradient(#72cef2 0%, #91e0f2 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#72cef2', endColorstr='#91e0f2');
	border-radius:4px;
	border-bottom:#FFF solid 3px;
}
.taiougengoLeft {
	width:100px;
	background-color:#efefef;
	border-bottom:#999 dotted 1px;
}
.taiougengoRight {
	width:550px;
	background-color:#fbfbfb;
	border-bottom:#999 dotted 1px;
}

.map_tdl {
	background-color:#72cef2;
	text-align:center;
	border-bottom:#FFF solid 1px;
}

.fontbutton {
	margin:10px 0 20px 40px;
}
.staff a,
.fontbutton a,
.map_img a {
	text-decoration:none;
	color:#FFF !important;
}

.p_block {
	background-color:#f3f3f3;
	padding:10px 16px;
	margin:15px 20px;
}
.pr_block {
	background-color:#f3f3f3;
	padding:15px 10px 15px 30px;
	margin:15px 20px;
}
.p_hr {
	margin:20px 14px 10px 14px;
	border-left:none;
	border-right:none;
	border-top:none;
	border-bottom:#0378a6 dotted 3px;
}

.red {
	color:#F00;
}
.redsmall {
	color:#F00;
	font-size:12px;
}
.small {
	font-size:small;
}
.small img {
	vertical-align:middle;
}

.imgshadow {
	box-shadow: 2px 2px 6px #CCC;
}

.imageright {
	float:right;
	margin-left:10px;
	margin-top:8px;
}

.imageleft {
	float:left;
	margin-right:10px;
	margin-top:8px;
}

.staff,
.imagecenter,
.imagecenter2 {
	display:block;
	text-align:center;
	margin-left:auto;
	margin-right:auto;
}

.history_top {
	background-color:#199dce;
	color:#FFF;
	text-align:center;
	padding:3px 0 1px;
}
.history_tdl {
	border-bottom:#999 dotted 1px;
	padding:3px 5px 3px 10px;
}
.history_tdc {
	border-bottom:#999 dotted 1px;
	padding:3px 10px 3px 0;
	text-align:right;
}
.history_tdr {
	border-bottom:#999 dotted 1px;
	border-left:#999 solid 1px;
	padding:3px 5px 3px 15px;
	width:530px;
}

.form_contents,
.company_contents {
	font-size:14px;
	line-height:20px;
	margin:15px 0;
}

.company {
	padding:15px 0;
}

.profileLeft {
	width:100px;
	float:left;
	margin-left:25px;
	padding:10px;
	background: #72cef2;
	background: linear-gradient(#91e0f2 0%, #FFF 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#91e0f2', endColorstr='#FFFFFF');
}
.profileRight {
	width:530px;
	margin-right:25px;
	margin-left:25px;
	padding:10px 5px 10px 135px;
	border-bottom:#333 dotted 1px;
}

.formLeft {
	width:124px;
	float:left;
	margin-left:25px;
	padding:10px;
	background: #f0f0f0;
	background: linear-gradient(#f0f0f0 0%, #FFF 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#FFFFFF');
}
.formRight {
	width:506px;
	margin-right:25px;
	margin-left:25px;
	padding:10px 5px 10px 160px;
	border-bottom:#333 dotted 1px;
}

.nalgae {
	width:200px;
	text-align:center;
	float:left;
	line-height:160%;
	margin:15px 0 15px 30px;
}

.nalgae img {
	box-shadow: 2px -2px 6px #979797;
}

#sitemap {
	margin:20px 0;
}
#sitemap ul {
	margin-bottom:10px;
}
#sitemap li {
	padding:2px;
	margin:0 0 0 20px;
}
#sitemap .madashi {
	font-weight:bold;
	background-color:#91e0f2;
	width:150px;
	border-right:#FFF solid 8px;
}

section dl {
	background-color:#f3f3f3;
	padding:15px 10px 10px;
	margin:0 16px;
}
section dt {
	padding-left:16px;
	font-weight:bold;
}
section dd {
	padding-left:38px;
	padding-right:10px;
	margin-bottom:16px;
}

#oshirase td {
	padding:10px;
	font-size:124%;
	font-weight:bold;
	vertical-align:middle;
	color:#666;
}

.mailto {
	vertical-align:middle;
	margin-right:5px;
}

.clear {
	clear:both;
}

.pagetop {
	clear:both;
	font-size:12px;
	text-align:right;
	padding:10px 0;
}


/*++++++++++++++++++++++++++
   PCブラウザ用のスタイル
++++++++++++++++++++++++++++*/
@media only screen and (min-width: 801px) {
body {
	width: 960px;
	margin: 0 auto;
	font-family: sans-serif;
	background:#FFF url(../images/body_bg.png) repeat-x;
	font-weight: normal;
	font-size: 100%/1.4;
	line-height:190%;
	color:#333;
}

/*=== PCヘッダー部分のスタイル ===*/
header {
}

header #mark {
	float:left;
	margin-right:10px;
	margin-bottom:26px;
}

header h1 img {
	margin:58px 0 0 0;
}
header h1 a {
}
header h1 a:hover {
}

#sitedescription {
	margin-top:3px;
	font-size:91%;
	line-height:109%;
	color:#FFF;
	text-shadow: #000 0px 1px 0px;
}

#language {
	float:right;
	width:100px;
	margin-top:-80px;
}
#language ul {
	margin:0;
	padding:0;
}
#language li {
	text-align:center;
	font-size:82%;
	line-height:175%;
	list-style:none;
	margin-bottom:8px;
	background:#72cef2;
	position: relative;
}
#language li:after {
	border: solid transparent;
	content: '';
	height: 0;
	left: 1px;
	position: absolute;
	width: 0;
	border-width: 7px;
	border-left-color: #0367a6;
	top: 5px;
}

#language li a {
	display:block;
	padding:0;
	text-decoration:none;
	color:#222;
	transition:all 0.4s ease-in-out;
}
#language li a:hover {
	color:#FFF !important;
	background:#0367a6;
}

#topmenu {
}

#topmenu ul {
	clear:both;
	text-align:center;
	margin:0 -1px 0 0;
}

#topmenu li {
	float:left;
	font-size:106%;
	font-weight:bold;
	line-height:20px;
	border:#e0e0e0 solid 1px;
	margin-top:0;
	margin-left:-1px;
	list-style:none;
}

#topmenu .eng {
	font-size:73%;
	font-weight:normal;
}

#topmenu li a {
	display:block;
	color:#333;
	font-size:106%;
	font-weight:bold;
	line-height:20px;
	padding:23px 30px 20px;
	min-width:179px;
	background-color:#f0f0f0;
	text-decoration:none;
	position: relative;
	transition:all 0.5s ease-in-out;
}

#topmenu li a:hover:after {
	border: 12px solid transparent;
	border-top-color: #0378a6;
	content: '';
	height: 0;
	top: -2px;
	position: absolute;
	width: 0;
	left: 106px;
	transition: all 0.5s ease-in-out;
}

#topmenu li a:hover {
	background-color: #72cef2;
}

.fixed {
	position: fixed;
	top: -1px;
	z-index:30;
	/* box-shadow:#555 0 1px 3px; */
}


/*=== PCコンテンツ部分のスタイル ===*/
#pankuzu {
	clear:both;
	font-size:13px;
	padding:5px 15px;
}

#pankuzu a {
	text-decoration:none;
}
#pankuzu a:hover {
	text-decoration:underline;
}

article {
	width:730px;
	float:right;
	margin:0 0 15px;
}

section {
	border:#e0e0e0 solid 1px;
	padding-bottom:15px;
}

/*=== PCサイドメニュー部分のスタイル ===*/
#sidemenu {
	width:210px;
}

#sidemenu h3 {
	font-size:133%;
	color:#FFF;
	padding:6px 20px;
	background-color:#0378a6;
	border-bottom:#FFF solid 1px;
}

#sidemenu ul li {
	font-size:100%;
	border-bottom:#FFF solid 1px;
	list-style:none;
}

#sidemenu ul li a {
	display:block;
	padding:5px 0 5px 20px;
	background-color:#91e0f2;
	text-decoration:none;
	color:#333;
	position:relative;
	z-index:2;
	overflow:hidden;
}

#sidemenu ul ul li a{
	padding-left:38px;
	margin:1px 0 -1px 0;
}

#sidemenu li a::before,
#sidemenu li a::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
    transition: all 0.3s;
}
#sidemenu li a:hover {
	color:#FFF;
}
#sidemenu li a::after {
    top: 0;
	left:-100%;
    width: 100%;
    height: 100%;
}
#sidemenu li a:hover::after {
    top: 0;
	left:0;
    background: #0367a6;
}

/*=== PCフッター部分のスタイル ===*/
footer {
	background:#0378a6;
}

#footermenu {
	width:100%;
	background-color:#eee;
	padding: 3px 0;
	text-align:center;
}

#footermenu li {
	display: inline;
	font-size:14px;
}
#footermenu li a {color:#333; text-shadow: -1px -1px 0px #ffffff; text-decoration:none;}
#footermenu li a:hover {color:#7a99ff; text-decoration:underline;}

footer h3 {
	font-size:18px;
	color:#FFF;
	padding:15px 15px 5px 20px;
	float:left;
}

footer #address {
	font-size:14px;
	color:#FFF;
	padding-top:17px;
}

footer #copyright {
	clear:left;
	font-size:14px;
	color:#f0f0f0;
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	padding:0 0 25px 20px;
}

}


/*++++++++++++++++++++++++++++++++
  ここからタブレット用のスタイル
++++++++++++++++++++++++++++++++++*/
@media screen and (max-width: 800px) {
body {
	width: 96%;
	margin: 0 auto;
	font-family: sans-serif;
	background:#FFF url(../images/body_bg.png) repeat-x;
	font-weight: normal;
	font-size: 100%/1.4;
	line-height:190%;
	color:#333;
}

/*=== タブレット用 ヘッダー部分のスタイル ===*/
header {
}

header #mark {
	float:left;
	margin-right:10px;
	margin-bottom:26px;
}

header h1 img {
	margin:58px 0 0 0;
}

#sitedescription {
	margin-top:3px;
	font-size:91%;
	line-height:109%;
	color:#FFF;
	text-shadow: #000 0px 1px 0px;
}

#language {
	padding-left:175px;
}
#language ul {
	margin:20px 0 0 0;
	padding:0;
}
#language li {
	text-align:center;
	float:left;
	margin-right:10px;
	width:100px;
	font-size:82%;
	line-height:175%;
	list-style:none;
	margin-bottom:8px;
	background:#72cef2;
	position: relative;
}
#language li:after {
	border: solid transparent;
	content: '';
	height: 0;
	left: 1px;
	position: absolute;
	width: 0;
	border-width: 7px;
	border-left-color: #0367a6;
	top: 5px;
}

#language li a {
	display:block;
	padding-top:2px;
	text-decoration:none;
	color:#222;
	transition:all 0.4s ease-in-out;
}
#language li a:hover {
	color:#FFF !important;
	background:#0367a6;
}

#topmenu {
	clear:both;
}

#topmenu ul {
	text-align:center;
	margin:0;
}

#topmenu li {
	float:left;
	display:block;
	font-size:100%;
	font-weight:bold;
	line-height:20px;
	width:25%;
	margin-top:-1px;
}

#topmenu .eng {
	font-size:73%;
	font-weight:normal;
}

#topmenu li a {
	display:block;
	color:#333;
	font-size:106%;
	font-weight:bold;
	line-height:20px;
	padding:23px 0 20px;
	background-color:#f0f0f0;
	border:#e0e0e0 solid 1px;
	text-decoration:none;
	transition:all 0.5s ease-in-out;
}

#topmenu li a:hover {
	background-color: #72cef2;
}

/*=== タブレット用 コンテンツ部分のスタイル ===*/
#pankuzu {
	clear:both;
	font-size:13px;
	padding:5px 15px;
}

#pankuzu a {
	text-decoration:none;
}
#pankuzu a:hover {
	text-decoration:underline;
}

article {
	width:100%;
	float:none;
	margin:0 0 15px;
}

section {
	border:#e0e0e0 solid 1px;
	padding-bottom:15px;
}


/*=== タブレット用 サイドメニュー部分のスタイル ===*/
#sidemenu {
	width:90%;
	margin:0 auto;
}

#sidemenu h3 {
	font-size:133%;
	color:#FFF;
	padding:6px 30px;
	background-color:#0378a6;
	border-bottom:#FFF solid 1px;
}

#sidemenu ul li {
	font-size:100%;
	border-bottom:#FFF solid 1px;
	border-right:#FFF solid 1px;
	list-style:none;
	width:49.8%;
	float:left;
}

#sidemenu ul li a {
	display:block;
	padding:10px 0 10px 30px;
	background-color:#91e0f2;
	text-decoration:none;
	color:#333;
	position:relative;
	z-index:2;
	overflow:hidden;
}

#sidemenu ul ul li a{
	width:170%;
	padding-left:50px;
	margin:1px 0 -1px 0;
}

#sidemenu li a::before,
#sidemenu li a::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
    transition: all 0.3s;
}
#sidemenu li a:hover {
	color:#FFF;
}
#sidemenu li a::after {
    top: 0;
	left:-100%;
    width: 100%;
    height: 100%;
}
#sidemenu li a:hover::after {
    top: 0;
	left:0;
    background: #0367a6;
}

#sidemenu li a::before {
	content: "»";
	position: relative;
	left: -10px;
	font-size:115%;
	color:#0367a6;
	text-shadow:none;
	float:left;
}


/*=== タブレット用 フッター部分のスタイル ===*/
footer {
	background:#0378a6;
}

#footermenu {
	width:100%;
	background-color:#eee;
	padding: 3px 0;
	text-align:center;
}

#footermenu li {
	display: inline;
	font-size:14px;
}
#footermenu li a {color:#333; text-shadow: -1px -1px 0px #ffffff; text-decoration:none;}
#footermenu li a:hover {color:#7a99ff; text-decoration:underline;}

footer h3 {
	font-size:18px;
	color:#FFF;
	padding:15px 15px 5px 20px;
	float:none;
}

footer #address {
	font-size:14px;
	color:#FFF;
	padding:0 0 0 20px;
}

footer #copyright {
	clear:left;
	font-size:14px;
	color:#f0f0f0;
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	padding:0 0 25px 20px;
}

}


/*+++++++++++++++++++++++++++++++++++++
  ここからスマートフォン用のスタイル
+++++++++++++++++++++++++++++++++++++++*/
@media screen and (max-width: 480px) {
body {
	width: 92%;
	margin: 0 auto;
	font-family: sans-serif;
	background:#FFF url(../images/body_bg.png) repeat-x;
	font-weight: normal;
	font-size: 100%;
	line-height:190%;
	color:#333;
}

/*=== スマートフォン用 ヘッダー部分のスタイル ===*/
header {
}

header #mark {
	float:none;
	margin:-10px 0 -10px 0;
}

header h1 img {
	margin: 10px 0 0 0;
}

#sitedescription {
	margin:5px 0 0 0;
	font-size:88%;
	line-height:145%;
	color:#333;
	text-shadow: #FFF 0px 1px 0px;
}

#language {
	padding:0 0 0 0;
}
#language ul {
	margin:20px 0 0 0;
	padding:0;
}
#language li {
	text-align:center;
	float:left;
	margin-right:10px;
	width:90px;
	font-size:82%;
	line-height:175%;
	list-style:none;
	margin-bottom:8px;
	background:#72cef2;
	position: relative;
}
#language li:after {
	border: none;
	content: '';
	height: 0;
	left: 0px;
	position: absolute;
	width: 0;
	border-width: 0;
	top: 0;
}

#language li a {
	display:block;
	padding:0;
	text-decoration:none;
	color:#222;
	transition:all 0.4s ease-in-out;
}

#topmenu {
	clear:both;
	padding-top:10px;
}

#topmenu ul {
	text-align:center;
	margin:0;
}

#topmenu li {
	float:none;
	display:block;
	width:90%;
	font-size:106%;
	font-weight:bold;
	line-height:20px;
	margin: 2px auto;
}

#topmenu .eng {
	font-size:73%;
	font-weight:normal;
}

#topmenu li a {
	display:block;
	color:#333;
	font-size:106%;
	font-weight:bold;
	line-height:20px;
	-webkit-background: linear-gradient(#fefefe 0%, #e0e0e0 100%);
	background: linear-gradient(#fefefe 0%, #e0e0e0 100%);
	border:#e0e0e0 solid 1px;
	text-decoration:none;
}

#topmenu ul li a::before {
	content: "»";
	position: relative;
	left: -20px;
	font-size:115%;
	line-height:inherit;
	color:#F90;
	text-shadow:none;
}

/*=== スマートフォン用 コンテンツ部分のスタイル ===*/
#pankuzu {
	clear:both;
	font-size:13px;
	padding:5px 15px;
}

#pankuzu a {
	text-decoration:none;
}
#pankuzu a:hover {
	text-decoration:underline;
}

article {
	width:100%;
	float:none;
	margin:0 0 15px;
}

section {
	border:#e0e0e0 solid 1px;
	padding-bottom:15px;
}

section table {
	margin:16px 5px 20px;
}

section .imagecenter {
	width:100%;
	height:auto;
}
section .imagecenter2 {
	text-align:center;
	width:auto;
	height:auto;
}

.profileLeft {
	width:85%;
	float: none;
	margin-right: auto;
	margin-left: auto;
	padding:10px;
	background: #72cef2;
	background: linear-gradient(#91e0f2 0%, #FFF 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#91e0f2', endColorstr='#FFF');
}
.profileRight {
	width:85%;
	margin-right: auto;
	margin-left: auto;
	padding:10px;
	border-bottom:#333 dotted 1px;
}

.formLeft {
	width:85%;
	float: none;
	margin-right: auto;
	margin-left: auto;
	padding:10px;
	background: #f0f0f0;
	background: linear-gradient(#f0f0f0 0%, #FFF 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#FFF');
}
.formRight {
	width:85%;
	margin-right: auto;
	margin-left: auto;
	padding:10px;
	border-bottom:#333 dotted 1px;
}

.history_top {
	background-color:#199dce;
	color:#FFF;
	text-align:center;
	padding:3px 0 1px;
}
.history_tdl {
	border-bottom:#999 dotted 1px;
	padding:3px;
}
.history_tdc {
	border-bottom:#999 dotted 1px;
	padding:3px;
	text-align:right;
}
.history_tdr {
	width:70%;
	border-bottom:#999 dotted 1px;
	border-left:#999 solid 1px;
	padding:3px 5px 3px 15px;
}

.form_contents input {
	width:auto;
}
.form_contents textarea {
	width:100%;
}

/*=== スマートフォン用 サイドメニュー部分のスタイル ===*/
#sidemenu {
	width:90%;
	overflow:hidden;
	margin:0 auto;
}

#sidemenu h3 {
	font-size:133%;
	color:#FFF;
	padding:6px 30px;
	background-color:#0378a6;
	border-bottom:#FFF solid 1px;
}

#sidemenu ul li {
	font-size:106%;
	border-bottom:#FFF solid 1px;
	border-right:#FFF solid 1px;
	list-style:none;
	width:100%;
	float:none;
}

#sidemenu ul li a {
	display:block;
	padding:10px 0 10px 30px;
	background-color:#91e0f2;
	text-decoration:none;
	color:#333;
	position:relative;
	z-index:2;
	overflow:hidden;
}

#sidemenu ul ul li a{
	width:100%;
	padding-left:44px;
	margin:1px 0 -1px 0;
}

#sidemenu li a::before,
#sidemenu li a::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
    transition: all 0.3s;
}
#sidemenu li a:hover {
	color:#FFF;
}
#sidemenu li a::after {
    top: 0;
	left:-100%;
    width: 100%;
    height: 100%;
}
#sidemenu li a:hover::after {
    top: 0;
	left:0;
    background: #0367a6;
}

#sidemenu li a::before {
	content: "»";
	position: relative;
	left: -10px;
	font-size:115%;
	color:#0367a6;
	text-shadow:none;
	float:left;
}


/*=== スマートフォン用 フッター部分のスタイル ===*/
footer {
	background:#0378a6;
	text-align:center;
}

#footermenu {
	display:none;
}

footer h3 {
	font-size:133%;
	color:#FFF;
	padding:15px 15px 5px 20px;
	float:none;
}

footer #address {
	font-size:85%;
	line-height:124%;
	color:#FFF;
	padding:0;
}
footer #address span {
	display:none;
}

footer #copyright {
	clear:left;
	font-size:64%;
	color:#f0f0f0;
	font-family:inherit;
	padding:0 0 25px 0;
}

}
