@charset "utf-8";

/* ==================================================
		
		共通CSS

================================================== */

/* --------------------------------------------------
		reset
-------------------------------------------------- */
html { overflow-y: scroll; }

body, header, footer, nav, div, section, article, aside, hgroup, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, blockquote, table, th, td, form, input, textarea, fieldset, legend, figure, figcaption, pre, code, summary {
  padding: 0;
  margin: 0;
}

body { font: 15px/1.7 "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Arial, Helvetica, Verdana, sans-serif; }

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

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

ol, ul { list-style: none; }

table {
  font-size: inherit;
  border-collapse: collapse;
}

th { font-weight: normal; }

address, caption, cite, code, dfn, em, var {
  font-weight: normal;
  font-style: normal;
}

img {
  vertical-align: bottom;
  border: 0;
}

/* --------------------------------------------------
		.clearfix
-------------------------------------------------- */
.clearfix:after {
  height: 0;
  clear: both;
  visibility: hidden;
  display: block;
  content: ".";
}

/* --------------------------------------------------
		body
-------------------------------------------------- */
body { color: #666666; }

/* --------------------------------------------------
		web-font
-------------------------------------------------- */
.wf-min { font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W6', HiraMinProN-W6, 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif; }

.wf-goth { font-family: 'Noto Sans Japanese', serif; }

/* --------------------------------------------------
		web-icon
-------------------------------------------------- */
.fa-check-square {
 margin-right: 8px;
 padding-left: 5px;
 font-size: 115%;
 color: #2b80b7;
}

/*	link
---------------------------------------- */
a, a:visited, a:active {
  text-decoration: underline;
  color: #666666;
}

a:hover {
  text-decoration: none;
  color: #aaaaaa;
}

.outlink a, .outlink a:visited, .outlink a:active { color: #0a6dac; }

.outlink a:hover { color: #77adcf; }

/* --------------------------------------------------
		font-color
-------------------------------------------------- */
.fcb01 { color: #0a6dac; }

.fcb02 { color: #0a507c; }



/* ==================================================
		
		共通CSS PC

================================================== */

@media screen and (min-width:781px) {

/* --------------------------------------------------
		.sp
-------------------------------------------------- */
.sp { display: none !important; }

/* --------------------------------------------------
		#header
-------------------------------------------------- */
#header .header-line {
  font-size: 80%;
  padding: 13px 0 7px;
  background: #f4f3f3;
}

#header .header-inner {
  width: 1059px;
  margin: 0 auto;
}

#header .header-line .header-inner p {
  font-weight: bold;
  float: left;
}

#header .header-line .header-inner ul { float: right; }

#header .header-line .header-inner ul li {
  padding-left: 10px;
  border-left: 1px solid #666666;
  margin-left: 10px;
  float: left;
}

#header .header-line .header-inner ul li:first-child { border-left: none; }

/*	.font
---------------------------------------- */
#header .header-inner .font {
  margin-top: 34px;
  float: right;
  display: inline;
}

#header .header-inner .font p {
  font-size: 95%;
  font-weight: bold;
  letter-spacing: -1px;
  color: #003366;
  margin-top: 7px;
  float: left;
}

#header .header-inner .font ul { float: right; }

#header .header-inner .font ul li { float: left; }

#header .header-inner .font ul .list-inner-01 { padding: 5px 0 0 7px; }

#header .header-inner .font ul .list-inner-01 a {
  text-indent: -9999px;
  width: 24px;
  height: 24px;
  background: url(/img/common/button-fontm.gif) no-repeat;
  overflow: hidden;
  display: block;
}

#header .header-inner .font ul .list-inner-02 { padding-left: 3px; }

#header .header-inner .font ul .list-inner-02 a {
  text-indent: -9999px;
  width: 30px;
  height: 29px;
  background: url(/img/common/button-fontl.gif) no-repeat;
  overflow: hidden;
  display: block;
}


/*	#nav #consulting-nav
---------------------------------------- */
#header { min-width: 1059px; }

#header #nav {
  font-size: 120%;
  background: #0a6dac;
}

#header #nav ul {
  width: 1059px;
  margin: 0 auto;
}

#header #nav ul li {
  padding-left: 22px;
  border-left: 1px solid #3b8abd;
  margin: 15px 0 15px 25px;
  float: left;
}

#header #nav ul li:first-child {
  padding-left: 31px;
  border-left: none;
  margin-left: 0;
}

#header #nav ul li a, #header #nav ul li a:visited, #header #nav ul li a:active {
  text-decoration: none;
  color: #ffffff;
}

#header #nav ul li a:hover, #header #nav ul .current { text-decoration: underline; }

#consulting-nav { background: #0a6dac; }

#consulting-nav ul li a {
  text-decoration: none;
  color: #ffffff;
  padding: 0 15px;
  display: block;
}

#consulting-nav ul li a span {
  padding: 15px 0 11px 5px;
  border-top: 1px solid rgba(255,255,255,0.3);
  display: block;
}

#consulting-nav ul li a .first {
  padding: 15px 0 11px 5px;
  border-top: none;
  display: block;
}

#consulting-nav ul li a span .fontsmall {
  font-size: 65%;
  padding: 0;
  border-top: none;
  margin-top: -4px;
  display: block;
}

#consulting-nav ul li:hover, #consulting-nav ul li a.current { background: #095c92; }

#consulting-footer-nav {
  background: #0a6dac;
  margin-top: 36px;
  padding: 22px 30px 19px;
}

#consulting-footer-nav ul {
  float: left;
  margin-left: 43px;
}

#consulting-footer-nav ul:first-child {
  margin-left: 0;
}

#consulting-footer-nav ul li {
  margin-top: 6px;
}

#consulting-footer-nav ul li:first-child {
  margin-top: 0;
}

#consulting-footer-nav ul li a, 
#consulting-footer-nav ul li a:visited, 
#consulting-footer-nav ul li a:active {
  text-decoration: none;
  color: #ffffff;
}

#consulting-footer-nav ul li a:hover, 
#consulting-footer-nav ul li a.current {
  color: #ffffff;
  text-decoration: underline;
}

/* --------------------------------------------------
		#main
-------------------------------------------------- */
#main { }

/* --------------------------------------------------
		h
-------------------------------------------------- */
#header .header-inner h1 {
  margin: 20px 0 15px;
  float: left;
}

#main h2 {
  font-size: 130%;
  color: #114566;
}

#main h3 {
  font-size: 130%;
  border: 1px solid #d3d3d3;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -moz-border-radius: 5px;
}

#main h3 span {
  font-weight: bold;
  color: #0a507c;
  padding: 13px 0 7px 19px;
  border-left: 6px solid #004a9a;
  display: block;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

#main h4 {
  font-size: 122%;
  font-weight: bold;
  padding: 10px 19px 10px;
  border-top: 4px solid #0a6dac;
  background: #f8fafd;
}

#footer h5 {
  font-size: 143%;
  font-weight: bold;
  color: #114566;
}

#footer h5 span {
  font-size: 70%;
  margin-left: 15px;
}

/* --------------------------------------------------
		#footer
-------------------------------------------------- */
#footer { margin-top: 13px; }

/*	.gotop .topic-path
---------------------------------------- */
.go {
  font-size: 92%;
  font-weight: bold;
  width: 1059px;
  margin: 68px auto 0;
}

.top {
  font-size: 92%;
  font-weight: bold;
  width: 1059px;
  margin: 12px auto 0;
}

.go .topic-path { float: left; }

.topic-path ul li {
  padding-left: 15px;
  background: url(/img/common/topic-arrow.gif) no-repeat 2px 6px;
  margin-left: 5px;
  float: left;
}

.topic-path ul li:first-child {
  padding-left: 0;
  background: none;
  margin-left: 0;
}

.gotop { float: right; }

/*	.footertop
---------------------------------------- */
#footer .footertop { background: #f3f3f3; }

#footer .footertop .footertop-inner {
  width: 1059px;
  padding: 41px 0 31px;
  margin: 0 auto;
}

#footer .footertop .footertop-inner .profile { float: left; }

#footer .footertop .footertop-inner .profile .img {
  margin-right: 30px;
  float: left;
}

#footer .footertop .footertop-inner .profile .profile-inner { float: right; }

#footer .footertop .footertop-inner .profile .profile-inner .txt { margin-top: 2px; }

#footer .footertop .footertop-inner .form {
  width: 343px;
  float: right;
}

#footer .footertop .footertop-inner .form .form-inner {
  text-align: center;
}

#footer .footertop .footertop-inner .form .form-inner .fbtn {
  font-size: 143%;
  color: #ffffff;
  padding: 18px 0 47px;
  background: #0a6dac;
  border-radius: 9px;
  -moz-border-radius: 9px;
  -webkit-border-radius: 9px;
  width: 343px;
  display: block;
  cursor: pointer;
}

#footer .footertop .footertop-inner .form .form-inner .fbtn:hover {
  background: #5c99bf;
  text-decoration: none;
}

#footer .footertop .footertop-inner .form .btnwaku {
  position: relative;
}

#footer .footertop .footertop-inner .form .btnwaku .fontsmall {
  font-size: 87%;
  color: #ffffff;
  position: absolute;
  bottom: 22px;
  left: 76px;
}

#footer .footertop .footertop-inner .form .form-inner i { margin-right: 10px; }

#footer .footertop .footertop-inner .form .form-inner a, #footer .footertop .footertop-inner .form .form-inner a:visited, #footer .footertop .footertop-inner .form .form-inner a:active { 
  color: #ffffff;
}


#footer .footertop .footertop-inner .form .sns { margin-top: 13px; }

#footer .footertop .footertop-inner .form .sns i {
  font-size: 45px;
  float: left;
}

/*	 safari対応 */
#footer .footertop .footertop-inner .form .sns a { text-decoration: none; }

/*	*/

#footer .footertop .footertop-inner .form .sns i:hover { opacity: 0.6; }

#footer .footertop .footertop-inner .form .sns .fa-twitter-square { color: #55acee; }

#footer .footertop .footertop-inner .form .sns .fa-facebook-square {
  color: #315096;
  margin-left: 5px;
}

/*	.footernav
---------------------------------------- */
#footer .footernav {
  padding: 46px 0;
  background: #0a6dac;
}

#footer .footernav .footernav-inner {
  text-align: center;
  width: 1059px;
  margin: 0 auto;
}

#footer .footernav .footernav-inner ul {
  font-size: 92%;
  display: inline-block;
}

#footer .footernav .footernav-inner ul li {
  margin-left: 20px;
  float: left;
}

#footer .footernav .footernav-inner ul li:first-child { margin-left: 0; }

#footer .footernav .footernav-inner ul li a, #footer .footernav .footernav-inner ul li a:visited, #footer .footernav .footernav-inner ul li a:active {
  text-decoration: none;
  color: #ffffff;
}

#footer .footernav .footernav-inner ul li a:hover { text-decoration: underline; }

#footer .footernav .footernav-inner .cr {
  font-size: 87%;
  color: #ffffff;
}
}


/* ==================================================
		
		共通CSS SP

================================================== */
@media screen and (max-width:780px) {

/* --------------------------------------------------
		.pc
-------------------------------------------------- */
.pc { display: none !important; }

/* --------------------------------------------------
		body
-------------------------------------------------- */
body { -webkit-text-size-adjust: 100%; }

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
}

/* --------------------------------------------------
		#header
-------------------------------------------------- */
#header {
  width: 100%;
  height: 99px;
  border-bottom: 1px solid #d3d3d3;
  background: #ffffff;
  position: fixed;
  top: 0;
  z-index: 9999;
}

#header .header-inner { position: relative; }

#header .bgw { background: #ffffff; }

#header .header-line {
  width: 100%;
  height: 38px;
  padding: 12px 15px;
  background: #f4f3f3;
  box-sizing: border-box;
  font-size: 75%;
}

#header .header-line .header-inner .txt img {
  width: 100%;
  height: auto;
}

/*	#nav #consulting-nav
---------------------------------------- */
#header .header-inner .open {
  text-indent: -9999px;
  width: 33px;
  height: 31px;
  background: url(/img/common/sp-nav-open.gif) no-repeat right top;
  float: right;
  position: absolute;
  top: 16px;
  right: 15px;
  cursor: pointer;
  background-size: cover;
  -moz-background-size: cover;
}

#header .header-inner .open.active {
  background: url(/img/common/sp-nav-close.gif) no-repeat right top;
  -moz-background-size: cover;
  background-size: cover;
}

#header #nav-sp {
  font-size: 76%;
  width: 100%;
  padding: 15px 0 9999px;
  background: #0a6dac;
  background-color: rgba(10,109,172,0.85);
  margin: 0;
  display: none;
  overflow-y: auto;
}

#nav-sp ul {
  width: 100%;
  display: block;
}

#header #nav-sp ul li {
  width: 50%;
  width: 50%;
  padding: 5px 10px;
  float: left;
  display: table-cell;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

#header #nav-sp ul li span {
  width: 100%;
  height: 50px;
  vertical-align: middle;
  padding: 10px 4px 21px 0;
  border-bottom: 1px solid #ffffff;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
}

#header #nav-sp ul li a, #header #nav-sp ul li a:visited {
  text-decoration: none;
  color: #ffffff;
}

#consulting-nav {
  padding: 10px 0;
  background: #0a6dac;
}

#consulting-nav ul { }

#consulting-nav ul li {
  width: 49%;
  float: left;
}

#consulting-nav ul li:nth-child(odd) {
  padding-right: 1px;
  border-right: 1px solid rgba(255,255,255,0.3);
}

#consulting-nav ul li a {
  font-size: 69%;
  text-decoration: none;
  color: #ffffff;
  padding-left: 5px;
  margin: 8px 0;
  display: block;
}

#consulting-nav ul li a span .fontsmall {
  font-size: 90%;
  text-indent: -1em;
  margin-left: 1em;
  display: block;
}

#consulting-nav ul li a.current { text-decoration: underline; }

/* --------------------------------------------------
		#main
-------------------------------------------------- */
#main { width: 100%; }

/* --------------------------------------------------
		h
-------------------------------------------------- */
#header .header-inner h1 {
  margin: 17px 0 15px 15px;
  float: left;
}

#header .header-inner h1 img {
  width: 144px;
  height: auto;
}

#main h2 {
  font-size: 150%;
  color: #003366;
  line-height: 1.18;
}

#main h3 {
  font-size: 105%;
  border: 1px solid #d3d3d3;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -moz-border-radius: 5px;
}

#main h3 span {
  font-weight: bold;
  color: #0a507c;
  padding: 11px 18px 8px 19px;
  border-left: 6px solid #004a9a;
  display: block;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

#main h4 {
  font-size: 123%;
  font-weight: bold;
  padding: 10px 14px;
  border-top: 4px solid #0a6dac;
  background: #f8fafd;
}

#footer h5 {
  font-size: 143%;
  font-weight: bold;
  color: #114566;
}

#footer h5 span {
  font-size: 70%;
  margin-left: 16px;
}

/* --------------------------------------------------
		.section
-------------------------------------------------- */
#main .section { margin: 0 15px; }

/* --------------------------------------------------
		#footer
-------------------------------------------------- */
#footer { margin-top: 32px; }

/*	.footertop
---------------------------------------- */
#footer .footertop { background: #f3f3f3; }

#footer .footertop .footertop-inner {
  padding-top: 13px;
  margin: 0 15px;
}

#footer .footertop .footertop-inner .profile .profile-inner { margin-top: 12px; }

#footer .footertop .footertop-inner .profile .profile-inner .txt { margin-top: 1px; }

#footer .footertop .footertop-inner .form { margin-top: 19px; }

#footer .footertop .footertop-inner .form .form-inner {
  text-align: center;
}

#footer .footertop .footertop-inner .form .form-inner .fbtn {
  font-size: 133%;
  padding: 16px 0 41px;
  cursor: pointer;
  display: block;
  color: #ffffff;
  background: #0a6dac;
  border-radius: 9px;
  -moz-border-radius: 9px;
  -webkit-border-radius: 9px;
}

#footer .footertop .footertop-inner .form .btnwaku {
  position: relative;
}

#footer .footertop .footertop-inner .form .btnwaku .fontsmall {
  font-size: 83%;
  display: block;
  color: #ffffff;
  position: relative;
  bottom: 40px;
}

#footer .footertop .footertop-inner .form .form-inner i { margin-right: 6px; }

#footer .footertop .footertop-inner .form .form-inner a, #footer .footertop .footertop-inner .form .form-inner a:visited, #footer .footertop .footertop-inner .form .form-inner a:active { 
  color: #ffffff;
  text-decoration: underline;
}

submit{
　　-webkit-appearance: none;
}

#footer .footertop .footertop-inner .form .sns {
  text-align: center;
  margin: -10px 0 12px;
}

#footer .footertop .footertop-inner .form .sns i { font-size: 309%; }

#footer .footertop .footertop-inner .form .sns i:first-child { margin-left: 0; }

#footer .footertop .footertop-inner .form .sns .fa-twitter-square { color: #55acee; }

#footer .footertop .footertop-inner .form .sns .fa-facebook-square { color: #315096; }

/*	.footernav
---------------------------------------- */
#footer .footernav {
  padding: 7px 0;
  background: #0a6dac;
}

#footer .footernav .footernav-inner { text-align: center; }

#footer .footernav .footernav-inner .cr {
  font-size: 70%;
  color: #ffffff;
}
}
