@charset "UTF-8";

@import url("globalnavi.css");
@import url("fonts.css");
@import url("font-awesome.min.css");
@import url(//fonts.googleapis.com/css?family=Open+Sans:400,600,700);

/*---------------------------------------------------- */
/* Body */
/*---------------------------------------------------- */
/* Base */
html {
	font-size: 100%;
	min-height: 100%;
	margin: 0;
	padding: 0;
	position: relative; 
}

body { 
	min-width: 320px;
	height: 100%;
	margin-bottom: 29em;
	padding: 0;
	background-color: #fff;
}

p {
	line-height: 160%;
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
	outline: none;
	-ms-interpolation-mode: bicubic; 
	vertical-align: middle;
}
 
/* Correct overflow not hidden in IE9 */

figure { 
	margin: 0; 
}

a, a:focus, a:hover, a:active {
	outline: 0 none;
	-moz-outline: 0 none;
}

a {
	color: #0f79df;
	text-decoration: none;
	cursor: pointer;
	-webkit-transition: color 0.25s ease-in-out;
	-moz-transition: color 0.25s ease-in-out;
	-o-transition: color 0.25s ease-in-out;
	-ms-transition: color 0.25s ease-in-out;
	transition: color 0.25s ease-in-out;
}

a:hover {
	color: #b52f00;
	text-decoration: underline;
}

address {
	font-weight: normal;
	font-style: normal;
}

hr { 
	display: block; 
	height: 1px; 
	border: 0; 
	border-top: 1px solid #e1e3e6; 
	margin: 20px 0; 
	padding: 0;
}

.bf {
	visibility: hidden;
	text-indent: -9999px;
	display: none;
}

/*
 * Remove text-shadow in selection highlight
 * These selection declarations have to be separate
 * Also: hot pink! (or customize the background color to match your design)
 */

::-moz-selection { 
	background: #358be0; 
	color: #fff; 
	text-shadow: none; 
}

::selection { 
	background: #358be0; 
	color: #fff; 
	text-shadow: none; 
}


/* Typography == */
.f-small {
	ontf-size: 85%;
}

.center {
	text-align: center!important;
}

.right {
	text-align: right!important;
}

.left {
	text-align: left!important;
}


/* Color */
.bg-gry {
	background-color: #f5f7f8;
}

.clr-grn {
	color: #0bae51;
}

.clr-mosgrn {
	color: #108f98;
}

.clr-blu {
	color: #0f92bd;
}

.clr-red {
	color: #961200;
}

.clr-pink {
	color: #e05274;
}

.clr-yellow {
	color: #c4991b;
}

.clr-gry {
	color: #93989a;
}

.clr-wh {
	color: #fff;
}

/* Lists */

ul, ol { 
	margin: 0;
	padding: 0;
	list-style: none;
	list-style-image: none; 
}

dd { 
	margin: 0;
}


/* Contain floats:Clearfix */

/* For modern browsers */
.cf:before, .cf:after {
    content:"";
    display:table;
}

.cf:after {
    clear:both;
}

/* For IE 6/7 (trigger hasLayout) */
.cf {
    zoom:1;
}

/* === primary styles / Author:IMUCO === */

/* For Mobile */
/*.mobile-only {
  display: none;
	visibility: hidden;
	overflow: hidden;
	font-size: 0;
	width: 0;
	height: 0;
}*/

/*　Breadcrumbs */
.rcrumbs {
  font-size: 85%;
  white-space: nowrap;
  max-width: 1240px;
  margin: 50px auto 0;
  padding: 5px 10px 3px;
	background-color: #f8f8f8;
	border: 1px solid #ebeced;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	-o-box-sizing: border-box; 
	-ms-box-sizing: border-box; 
	box-sizing: border-box;
}

.rcrumbs > ul {
  padding: 0;
  list-style: none;
}

.rcrumbs > ul > li {
  overflow: hidden;
  display: none;
}

.rcrumbs > ul > li.show {
  display: inline-block;
}

.rcrumbs > ul > li.ellipsis {
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden;
}

.rcrumbs a {
  color: #83878b;
  text-decoration: none;
}

.rcrumbs a:hover {
  color: #cd5900;
}

.rcrumbs .divider {
  color: #bfc4c5;
  padding: 0 5px;
}


/* Scroll Navi Part */
#toTop {
	display:none;
	text-decoration:none;
	position:fixed;
	bottom: 40px;
	right: 0;
	overflow:hidden;
	width: 32px;
	height: 32px;
	border:none;
	text-indent:100%;
	background-color: rgba(0, 0, 0, .5);
	background-image: url(../images/arrow_top.png);
	background-repeat: no-repeat;
	-webkit-background-size: 12px 13px;
	background-size: 12px 13px;
	background-position: 50% 50%;
	-webkit-border-radius: 3px 0 0 3px;
	-moz-border-radius: 3px 0 0 3px;
	-ms-border-radius: 3px 0 0 3px;
	-o-border-radius: 3px 0 0 3px;
	border-radius: 3px 0 0 3px;
}

#toTopHover {
	width: 32px;
	height: 32px;
	display:block;
	overflow:hidden;
	float:left;
	background-color: rgba(0, 0, 0, .75);
	background-image: url(../images/arrow_top.png);
	-webkit-background-size: 12px 13px;
	background-size: 12px 13px;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	opacity: 0;
	-moz-opacity: 0;
	filter:alpha(opacity=0);
}

#toTop:active, #toTop:focus {
	outline:none;
}

/* Fade Transition */
.fade-efct a {
   opacity: 0;
   -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
   filter: alpha(opacity=0);
   -webkit-transition: opacity 0.3s ease-in-out;
   -moz-transition: opacity 0.3s ease-in-out;
   -o-transition: opacity 0.3s ease-in-out;
   -ms-transition: opacity 0.3s ease-in-out;
   transition: opacity 0.3s ease-in-out;
}

.fade-efct a:hover {
    opacity: 1;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
    -webkit-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    -ms-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
}


/*---------------------------------------------------- */
/* Maincontainer */
/*---------------------------------------------------- */
#maincontainer {
	width: 100%;
	margin: 0;
	background-color: #fff;
	position: relative;
}

#content-container {
	width: 100%;
}

.wrapper {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 10px;
	position: relative;
}

/*---------------------------------------------------- */
/* This site */
/*---------------------------------------------------- */
#thissite {
	padding: 0;
	margin: 0;
	width: 100%;
	background-color: rgba(220, 220, 220, .98);/*------------------------------------------------------[色 background]-- */
}

#thissite .waku-thissite {
	margin: 0 auto;
}

#thissite .waku-thissite .welcome {
	padding: 0;
	margin: 0 auto;
	width: 94%;
	overflow: hidden;
}

#thissite .waku-thissite .welcome .waku-welcome {
	text-align: right;
	float: right;
}

#thissite .waku-thissite .welcome .waku-welcome .owner-name {
	right: 0;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	-ms-transition: all 0.4s;
	-o-transition: all 0.4s;
	transition: all 0.4s;
}

#thissite .waku-thissite .welcome .waku-welcome .owner-name h3 {
	width: auto;
	height: auto;
	margin: 0;
	color: #383a3b;
	font-style: normal;
	text-decoration: none;
	line-height: 1.4;
	background-color: rgba(255, 255, 255, .60);/*---------------------------------------------------------------------------------------------[色 background]-- */
	border: 1px solid rgba(163, 163, 163, .4);/*---------------------------------------------------------------------------------------------[色 border]-- */
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	-webkit-transition: all .25s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-o-transition: all .25s ease-in-out;
	-ms-transition: all .25s ease-in-out;
	transition: all .25s ease-in-out;
}


/* ///  PC/Tablet  /// */
@media all and (min-width: 961px) {
/*---------------------------------------------------- */
/* Only */
/*---------------------------------------------------- */
.only_tab {
	display: none;
	visibility: hidden;
}

.only_sp {
	display: none;
	visibility: hidden;
}

.only_tabsp {
	display: none;
	visibility: hidden;
}

/*---------------------------------------------------- */
/* Maincontainer */
/*---------------------------------------------------- */
#maincontainer {
	padding-bottom: 60px;
}

/*---------------------------------------------------- */
/* Header */
/*---------------------------------------------------- */
header {
	width: 100%;
	max-height: 112px;
	margin: 0;
	padding: 0;
	position: fixed;
	top: 0;
	z-index: 5000;
	/*background-color: rgba(9, 102, 163, .92);---[色 PC background]- */
	background-color: #fff;
}

header > .wrapper {
	height: 75px;
}

header .logo {
	width: 208px; 
	height: 100%;
	margin: 0;
	padding: 0;
	float: left;
	display: table;
}

header .logo h1 {
	width: 208px; 
	height: 41px;
	margin: 0;
	padding: 0;
	display: table-cell;
	vertical-align: middle;
}

header .logo a {
	width: 100%;
	height: 0;
	margin: 0;
	padding: 41px 0 0;
	display: block;
	overflow: hidden;
	background: url(../images/logo_colored_flat@2x.png) 0 0 no-repeat;
	background-size: 208px 41px;
}

header .ownername {
	height: 100%;
	margin: 0 0 0 25px;
	padding: 0;
	float: left;
	display: table;
}

header .ownername p {
	margin: 0;
	padding: 0;
	display: table-cell;
	vertical-align: middle;
	font-size: 115%;
	color: #ffffff;
	font-weight: bold;
	text-align: left;
	text-decoration: none;
	line-height: 1.4;
}

header .ownername p span {
	font-size: 75%;
}

header #header-nav {
	width: calc(100% - 440px); /* max 1000px */
	height: 100%;
	text-align: right;
	float: right;
	position: relative;
}

header #header-nav .members {
	position: absolute;
	bottom: 22px;
	right: 0;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	-ms-transition: all 0.4s;
	-o-transition: all 0.4s;
	transition: all 0.4s;
}

header #header-nav .members h3 {
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	font-weight: normal;
	font-style: normal;
	border: 1px solid rgba(9, 102, 163, .92);
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	-webkit-transition: all .25s ease-in-out;
	-moz-transition: all .25s ease-in-out;
	-o-transition: all .25s ease-in-out;
	-ms-transition: all .25s ease-in-out;
	transition: all .25s ease-in-out;
}

header #header-nav .members h3 a {
	color: rgba(9, 102, 163, .92);
	text-decoration: none;
	text-align: center;
	/*text-shadow: 0 1px 1px rgba(0, 0, 0, .2);*/
	width: auto;
	height: 100%;
	margin: 0;
	padding: 5px 15px;
	display: block;
}

header #header-nav .members h3:hover {
	border: 1px solid #0097d0;
	background-color: #0097d0;
}

header #header-nav .members h3:hover a {
	color: #fff;
}

header #header-nav .sub {
	width: 100%;
	height: 44px;
	text-align: right;
	position: relative;
}

header #header-nav .sub ul {
	width: auto;
	float: right;
	font-size: 93%;
	opacity: 1;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

header #header-nav .sub ul a {
	color: #c3c9cd;
}

header #header-nav .sub ul a:hover {
	color: #f4f5f6;
}

header #header-nav .sub ul li {
	float: left;
	margin-top: 10px;
	padding: 2px 15px 1px;
	border-right: 1px solid #4b5a65;
}

header #header-nav .sub ul li:first-child {
	padding-left: 0;
}

header #header-nav .sub ul li:last-child {
	padding-right: 0;
	border-right: 1px none #c8cacc;
}

header.smaller {
  max-height: 36px;
}

header.smaller .wrapper {
	display: none;
}

/*---------------------------------------------------- */
/* Global nav */
/*---------------------------------------------------- */
#globalnav {
	width: 100%;
	height: 37px;
	background-color: rgba(9, 102, 163, .92);
}

/*---------------------------------------------------- */
/* This site */
/*---------------------------------------------------- */
#thissite .waku-thissite {
	padding: 10px 0;
	max-width: 1240px;
	min-width: 961px;
}

#thissite .waku-thissite .welcome .waku-welcome .owner-name h3 {
	padding: 5px 10px;
	font-size: 115%;
	font-weight: 400;
}

#thissite .waku-thissite .welcome .waku-welcome .owner-name h3 span {
	font-size: 75%;
	font-weight: 200;
}

#thissite .waku-thissite .welcome .waku-welcome .owner-name h3 .fa {
	font-size: 90%;
	font-weight: 200;
}

/*---------------------------------------------------- */
/* Contents */
/*---------------------------------------------------- */
#mc-contents {
	padding-top: 111px;
}

#contents-main {
	padding-bottom: 0;
}

/*---------------------------------------------------- */
/* Footer */
/*---------------------------------------------------- */
footer {
	width: 100%;
	height: 29em;
	margin: 0;
	padding: 0;
	position: absolute;
	bottom: 0;
	background-color: #06304b;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	-o-box-sizing: border-box; 
	-ms-box-sizing: border-box; 
	box-sizing: border-box;
}

footer a {
	color: #bbd7ec;
	text-decoration: none;
}

footer a:hover {
	color: #fff;
}

footer #footer-nav {
	width: 100%;
	margin-bottom: 20px;
	padding-top: 0;
}

footer #footer-nav .comp-info {
	background-color: #05273d;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

footer #footer-nav h2 {
	width: 152px;
	height: 30px;
	margin: 0 auto;
	padding: 0;
	display: block;
}

footer #footer-nav h2 a {
	width: 152px;
	height: 0;
	margin: 0;
	padding-top: 30px;
	display: block;
	overflow: hidden;
	background: url(../images/logo_colored_flat@2x.png) 0 0 no-repeat;
	background-size: 152px 30px;
}

footer #footer-nav .sns {
	margin-bottom: 30px;
	text-align: center;
	display: block;
	letter-spacing: 0;
}

footer #footer-nav .sns i {
	display: inline-block;
	font-size: 30px;
	letter-spacing: normal;
}

footer #footer-nav .sns a {
	color: rgba(255, 255, 255, .85);
	margin-right: 2em;
}

footer #footer-nav .sns a:hover {
	color: rgba(255, 255, 255, 1);
}

footer #footer-nav .sns a:last-child {
	margin-right: 0;
}

footer #footer-nav ul {
	text-align: center;
	width: 100%;
	margin: 0 0 18px;
	padding: 0;
	list-style-type: none;
	list-style-position: outside;
}

footer #footer-nav ul li {
	margin: 0;
	padding: 0 .7em 0 .3em;
	font-size: 93%;
	display: inline-block;
	border-right: 1px solid #3f6c8a;
}

footer #footer-nav li:last-child {
	margin-right: 0;
	border-right-style: none;
}

footer #footer-nav li a {
	margin: 0;
}

footer #footer-nav li a:hover {
	text-decoration: underline;
}

footer #footer-nav .main {
	margin-bottom: 2em;
}

footer #footer-nav .main li {
	padding: 0 1em 0 .6em;
	font-size: 108%;
}

footer #footer-nav hr {
	border-top-color: #2b526b;
	margin-top: 20px;
	margin-bottom: 20px;
}

footer .copyright { 
	font: 77% 'Open Sans', 'Lucida Grande', Arial, sans-serif;
	color: #9ac1de;
	text-align: center;
	margin: 0;
	padding: 0;
}

}


/* Tablet */
@media all and (max-width: 960px) {
/*---------------------------------------------------- */
/* Body */
/*---------------------------------------------------- */
body {
	margin-bottom: 0;
	background-color: #004f89;
}

.wrapper {
	padding: 0 15px;
}

.rcrumbs {
	margin-right: 15px;
	margin-left: 15px;
}

/*---------------------------------------------------- */
/* Maincontainer */
/*---------------------------------------------------- */
#maincontainer {
	padding-bottom: 40px;
	background-color: #fff;
}

/*---------------------------------------------------- */
/* Header */
/*---------------------------------------------------- */
header {
	width: 100%;
	max-height: 46px;
	margin: 0;
	padding: 0;
	position: fixed;
	top: 0;
	z-index: 5000;
}

header > .wrapper {
	display: none;
}

/*---------------------------------------------------- */
/* This site */
/*---------------------------------------------------- */
#thissite .waku-thissite {
	padding: 8px 0;
	width: 98%;
}

#thissite .waku-thissite .welcome .waku-welcome .owner-name h3 {
	padding: 4px 8px;
	font-size: 105%;
	font-weight: 400;
}

#thissite .waku-thissite .welcome .waku-welcome .owner-name h3 span {
	font-size: 65%;
	font-weight: 200;
}

#thissite .waku-thissite .welcome .waku-welcome .owner-name h3 .fa {
	font-size: 90%;
	font-weight: 200;
}

/*---------------------------------------------------- */
/* Contents */
/*---------------------------------------------------- */
#mc-contents {
	padding-top: 0;
}

/*---------------------------------------------------- */
/* Footer */
/*---------------------------------------------------- */
footer {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0 0 24px;
	background-color: #06304b;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	-o-box-sizing: border-box; 
	-ms-box-sizing: border-box; 
	box-sizing: border-box;
}

footer a {
	color: #bbd7ec;
	text-decoration: none;
}

footer a:hover {
	color: #fff;
}

footer #footer-nav {
	width: 100%;
	margin-bottom: 0;
	padding-top: 0;
}

footer #footer-nav .comp-info {
	background-color: #05273d;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

footer #footer-nav h2 {
	width: 152px;
	height: 30px;
	margin: 0 auto;
	padding: 0;
	display: block;
}

footer #footer-nav h2 a {
	width: 152px;
	height: 0;
	margin: 0;
	padding-top: 30px;
	display: block;
	overflow: hidden;
	background: url(../images/logo_colored_flat@2x.png) 0 0 no-repeat;
	background-size: 152px 30px;
}

footer #footer-nav .sns {
	margin-bottom: 20px;
	text-align: center;
	display: block;
	letter-spacing: 0;
}

footer #footer-nav .sns i {
	display: inline-block;
	font-size: 26px;
	letter-spacing: normal;
}

footer #footer-nav .sns a {
	color: rgba(255, 255, 255, .85);
	margin-right: 2em;
}

footer #footer-nav .sns a:hover {
	color: rgba(255, 255, 255, 1);
}

footer #footer-nav .sns a:last-child {
	margin-right: 0;
}

footer #footer-nav ul {
	text-align: center;
	width: 100%;
	margin: 0 0 18px;
	padding: 0;
	list-style-type: none;
	list-style-position: outside;
	font-size: 85%;
}

footer #footer-nav ul li {
	margin: 0;
	padding: 0 .7em 0 .3em;
	font-size: 11px;
	display: inline-block;
	border-right: 1px solid #468cbf;
}

footer #footer-nav li:last-child {
	margin-right: 0;
	border-right-style: none;
}

footer #footer-nav ul.mobile li {
	margin-bottom: 1.5em;
	border-right-style: none;
	padding: 0 1em;
}

footer #footer-nav li a {
	margin: 0;
}

footer #footer-nav li a:hover {
	text-decoration: underline;
}

footer #footer-nav .main {
	display: none;
}

footer #footer-nav .main li {
	
}

footer #footer-nav hr {
	border-top-color: #2b526b;
	margin-bottom: 20px;
}

footer .copyright { 
	font: 77% 'Open Sans', 'Lucida Grande', Arial, sans-serif;
	color: #9ac1de;
	text-align: center;
	margin: 0;
	padding: 0;
}


}


/* Minimum width 959px and Tablet */
@media all and (max-width: 960px) and (min-width: 569px) {
/*---------------------------------------------------- */
/* Only */
/*---------------------------------------------------- */
.only_pc {
	display: none;
	visibility: hidden;
}

.only_sp {
	display: none;
	visibility: hidden;
}

.only_pcsp {
	display: none;
	visibility: hidden;
}


}


/* SP */
@media all and (max-width: 568px) {
/*---------------------------------------------------- */
/* Only */
/*---------------------------------------------------- */
.only_pc {
	display: none;
	visibility: hidden;
}

.only_tab {
	display: none;
	visibility: hidden;
}

.only_pctab {
	display: none;
	visibility: hidden;
}

/*---------------------------------------------------- */
/* Contents */
/*---------------------------------------------------- */
#mc-contents {
	padding-top: 0;
}


}