@charset "UTF-8";
/**
 * 目次
 *
 * 01. reset
 * 02. BaseSet
 * 03. Layout
 *
 */
/* ==========================================================================
   01. reset
   ========================================================================== */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

/* ==========================================================================
   02. BaseSet
   ========================================================================== */
html {
  overflow-y: scroll;
  font-size: 62.5%; }

body {
  font-family: 'YuGothic', 'Yu Gothic','游ゴシック', "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  font-size: 140%;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%;
  min-width: 978px;
  -webkit-font-smoothing: antialiased;
  //text-rendering: optimizeLegibility;
}


/* link
   ========================================================================== */
a {
  color: #3f51b5;
  text-decoration: none; }

a:visited {
  color: #3f51b5;
  text-decoration: none; }

a:hover {
  color: #6f7dc8;
  text-decoration: none; }

/* fontsize
   ========================================================================== */
.text10 {
  font-size: 71.4285714286%; }

.text11 {
  font-size: 78.5714285714%; }

.text12 {
  font-size: 85.7142857143%; }

.text13 {
  font-size: 92.8571428571%; }

.text14 {
  font-size: 100%; }

.text15 {
  font-size: 107.1428571429%; }

.text16 {
  font-size: 114.2857142857%; }

.text17 {
  font-size: 121.4285714286%; }

.text18 {
  font-size: 128.5714285714%; }

.text19 {
  font-size: 135.7142857143%; }

.text20 {
  font-size: 142.8571428571%; }

.text21 {
  font-size: 150%; }

.text22 {
  font-size: 157.1428571429%; }

.text23 {
  font-size: 164.2857142857%; }

.text24 {
  font-size: 171.4285714286%; }

.text25 {
  font-size: 178.5714285714%; }

.text26 {
  font-size: 185.7142857143%; }

ul.inner li,
td.inner {
  font-size: 100% !important; }

/* image
   ========================================================================== */
img {
  vertical-align: bottom;
  line-height: 1.0; }

table th img,
table td img {
  vertical-align: middle; }

/* ClearFix
   ========================================================================== */
.clear {
  clear: both; }

/* modern browsers */
.clearfix:after,
.fbox:after,
#contents:after,
.item-wrap:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

/* IE7 */
.clearfix,
.fbox,
#contents,
.item-wrap {
  display: inline-block; }

/* legacy IE */
* html .clearfix,
* html .fbox,
* html #contents,
* html .item-wrap {
  height: 1%; }

.clearfix,
.fbox,
#contents,
.item-wrap {
  display: block; }

/* float
   ========================================================================== */
.fr {
  float: right; }

.fl {
  float: left; }

ul.fbox li {
  float: left;
  display: inline; }

.in-block {
  letter-spacing: -.40em; }

.in-block li,
.in-block dt,
.in-block dd {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  letter-spacing: normal;
  vertical-align: top; }

/* text style
   ========================================================================== */
.text-bold {
  font-weight: bold; }

/* margin
   ========================================================================== */
.mt0 {
  margin-top: 0 !important; }

.mt5 {
  margin-top: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mt20 {
  margin-top: 20px !important; }

.mt25 {
  margin-top: 25px !important; }

.mt30 {
  margin-top: 30px !important; }

.mt40 {
  margin-top: 40px !important; }

.mt50 {
  margin-top: 50px !important; }

.mt60 {
  margin-top: 60px !important; }

.mb0 {
  margin-bottom: 0 !important; }

.mb5 {
  margin-bottom: 5px !important; }

.mb10 {
  margin-bottom: 10px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.mb25 {
  margin-bottom: 25px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.mr5 {
  margin-right: 5px !important; }

.mr10 {
  margin-right: 10px !important; }

.mr15 {
  margin-right: 15px !important; }

.mr20 {
  margin-right: 20px !important; }

.ml5 {
  margin-left: 5px !important; }

.ml10 {
  margin-left: 10px !important; }

.ml15 {
  margin-left: 15px !important; }

.ml20 {
  margin-left: 20px !important; }

/* padding
   ========================================================================== */
.pt0 {
  padding-top: 0 !important; }

.pb0 {
  padding-botttom: 0 !important; }

/* form label
   ========================================================================== */
input,
textarea {
  vertical-align: middle; }

label {
  vertical-align: middle; }

/* position
   ========================================================================== */
.text-r {
  text-align: right !important; }

.text-c,
table.text-c th,
table.text-c td,
table.th-c th {
  text-align: center !important; }

.text-l {
  text-align: left !important; }

/* display
   ========================================================================== */
.block {
  display: block; }

/* ==========================================================================
   03. Layout
   ========================================================================== */
/**
 * レイアウト
 */
/* ==========================================================================
   wrapper
   ========================================================================== */
/* ==========================================================================
   header
   ========================================================================== */
header {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 2%;
  padding-right: 2%; }

/* コーポレート用ヘッダー
   ========================================================================== */
#corp-header {
  background-color: #FFF;
  border-bottom: 1px solid #e6e6e6;
  position: fixed;
  width: 100%;
  z-index: 9000;
}

#inner-corp-header {
  margin: 0 auto;
  min-width: 978px;
  max-width: 1140px;
  width: 100%;
  background: #fff; }

#corp-header-logo,
#corp-header-nav {
  float: left;
  vertical-align: top; }

#corp-header-logo {
  margin-right:25px; }

#corp-header-nav {
  width: 434px;
  	/*.active .corp-nav-sttl{
  		span{
  			background-color:#3f51b5;
  			color:#FFF;
  
  			&:before{
  				color:#FFF;
  			}
  		}
  	}*/ }
  #corp-header-nav a {
    color: #000;
    display: block; }
  #corp-header-nav .inner-corp-nav {
    padding-top: 25px;
    width: 100%; }
  #corp-header-nav li {
    float: left;
    font-size: 107.1428571429%;
    padding-left: 4%;
    vertical-align: top; }
    #corp-header-nav li:first-child {
      padding-left: 0; }
  #corp-header-nav .corp-nav-parent {
    border-bottom: 3px solid #FFF;
    display: block;
    cursor: pointer;
    padding-bottom: 24px; }
  #corp-header-nav .hover .corp-nav-parent,
  #corp-header-nav .parent-active,
  #corp-header-nav .active .corp-nav-parent {
    border-bottom: 3px solid #3f51b5; }
  #corp-header-nav .active .corp-nav-parent,
  #corp-header-nav .parent-active {
    font-weight: bold; }
  #corp-header-nav #subnav-corp .corp-second-nav {
    padding-top: 35px; }
    #corp-header-nav #subnav-corp .corp-second-nav span {
      width: 160px; }
  #corp-header-nav .corp-nav-dropdown {
    background-color: #f9f9f9;
    padding-bottom: 20px;
    display: block;
    position: absolute;
    left: 0;
    top: 80px;
    width: 100%;
    display: none; }
    #corp-header-nav .corp-nav-dropdown:after {
      background: url(img/childnav_shadow.png) no-repeat center bottom;
      content: '';
      display: block;
      position: absolute;
      left: 0;
      bottom: -20px;
      height: 20px;
      width: 100%; }
    #corp-header-nav .corp-nav-dropdown li {
      display: block;
      padding: 0; }
  #corp-header-nav .corp-nav-child {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    letter-spacing: -.40em;
    margin: 0 auto;
    max-width: 1140px;
    /*
		padding:0 7.1% 0;
		width:100%;
    */
    width: 920px; }
  #corp-header-nav .corp-second-nav {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: middle;
    *display: inline;
    *zoom: 1;
    margin-bottom: 8px;
    margin-right: 40px;
    padding-top: 25px;
    width: 200px;
    vertical-align: top; }
    #corp-header-nav .corp-second-nav:nth-child(4n) {
      margin-right: 0; }
    #corp-header-nav .corp-second-nav li {
      font-size: 93.3333333333%;
      line-height: 1.1;
      float: none; }
    #corp-header-nav .corp-second-nav span {
      display: block;
      padding: 6px 10px 7px 30px;
      position: relative; }
      #corp-header-nav .corp-second-nav span:before {
        color: #3f51b5;
        display: block;
        content: '\f054';
        font-family: FontAwesome;
        font-size: 12px;
        position: absolute;
        left: 10px;
        top: 8px; }
    #corp-header-nav .corp-second-nav a {
      display: block; }
      #corp-header-nav .corp-second-nav a:hover {
        color: #3f51b5; }
    #corp-header-nav .corp-second-nav .active span {
      background-color: #3f51b5;
      color: #FFF; }
      #corp-header-nav .corp-second-nav .active span:before {
        color: #FFF; }
  #corp-header-nav .corp-nav-col2 {
    width: 43.4%; }
  #corp-header-nav .corp-nav-sttl {
    font-size: 106.6666666667%;
    line-height: 1.2;
    margin-bottom: 5px;
    font-weight: bold; }
  #corp-header-nav li.corp-nav-sttl {
    font-size: 106.6666666667%; }
  #corp-header-nav .active-sttl span {
    background-color: #3f51b5;
    color: #FFF; }
    #corp-header-nav .active-sttl span:before {
      color: #FFF; }
  #corp-header-nav .gnav-thumb {
    display: block;
    margin-bottom: 8px; }

/* ブランドとグローバル */
#corp-header-other {
  display: table;
  float: right;
  position: relative;
  width: 299px; }
  #corp-header-other ul {
    border-right: 1px solid #e6e6e6; }
  #corp-header-other li {
    border-left: 1px solid #e6e6e6;
    display: table-cell;
    cursor: pointer;
    font-size: 107.1428571429%;
    text-align: center;
    width: 148px; }
  #corp-header-other .corp-other-parent {
    display: table;
    text-align: center;
    width: 100%; }
  #corp-header-other .inner-other-parent {
    display: table-cell;
    height: 79px;
    line-height: 1.5;
    vertical-align: middle; }
    #corp-header-other .inner-other-parent:after {
      color: #b2b2b2;
      display: block;
      content: '\f078';
      font-family: FontAwesome; }

#corp-header .corp-other-child {
  background-color: #FFF;
  display: none;
  position: absolute;
  right: 0;
  top: 80px; }
  #corp-header .corp-other-child li {
    font-size: 100%; }

#corp-header .corp-brand-child {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: -.40em;
  overflow: hidden;
  margin-right: 149px; }
  #corp-header .corp-brand-child li {
    border-bottom: 1px solid #e6e6e6;
    display: block; }

#corp-header .corp-global-child li {
  border-bottom: 1px solid #e6e6e6;
  display: block; }
#corp-header .corp-global-child a {
  color: #000;
  display: block;
  padding-bottom: 12px;
  padding-top: 11px; }

/*#corp-header-other{
	@include inblock-parent;
	float:right;
	position:relative;
	//width:299px;
	width:26.22%;

	ul{
		border-right:1px solid #e6e6e6;
		@include inblock-parent;
	}

	li{
		border-left:1px solid #e6e6e6;
		@include css3(box-sizing, border-box);
		@include inblock;
		text-align:center;
		//width:148px;
		width:49%;
	}

	.corp-other-parent{
		display:table;
		text-align:center;
		width:100%;
	}

	.inner-other-parent{
		display:table-cell;
		height:79px;
		vertical-align:middle;

		&:after{
			content:'\f078';
			display:block;
			@include font-icon;
		}
	}
}

#corp-header .corp-brand-child{
	background-color:#FFF;
	border-bottom:1px solid #e6e6e6;
	border-right:1px solid #e6e6e6;
	@include inblock-parent;
	position:absolute;
	right:0;
	top:80px;
	width:149%;

	li{
		width:33%;

		&:nth-child(3n){
			width:34%;
		}
	}
}*/
.close {
  margin-top: 10px;
  background: #e5e5e5;
  margin-bottom: -15px;
  text-align: center;
  display: none;
  font-size: 85.7142857143%;
  font-weight: bold; }
  .close a {
    display: inline-block;
    background: #fff;
    padding: 2px 4px; }
    .close a:hover {
      color: #6f7dc8 !important; }

#subnav-corp .close {
  margin-top: 30px; }

/* ==========================================================================
   navigation
   ========================================================================== */
/* ==========================================================================
   contents
   ========================================================================== */
#contents {
  padding-bottom: 100px;}

#contents.brand-contents {
  padding-bottom: 0;
  padding-top: 0;
  }

#shift-contents {
  margin: 0 auto;
  position: relative;
  width: 978px;
  /*
	width:800px;
  padding:0 89px;
  */ }

.inner-cont {
  margin: 0 auto;
  width: 978px; }

.relative {
  position: relative; }

/* topicpath
   ========================================================================== */
/* ==========================================================================
   footer ブランドバナー
   ========================================================================== */
#footer-brand {
  background: url(img/childnav_shadow.png) no-repeat center top;
  margin: 0 auto;
  max-width: 1140px;
  min-width: 978px;
  padding-bottom: 15px;
  padding-top: 19px;
  text-align: center;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  padding: 19px 0 15px; }

#footer-brand-bnr {
  display: table;
  width: 100%; }
  #footer-brand-bnr li {
    display: table-cell;
    text-align: center; }
    #footer-brand-bnr li img {
      height: auto;
      max-width: 100%; }

/* ==========================================================================
   footer
   ========================================================================== */
footer {
  background-color: #000;
  padding-bottom: 60px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 2%;
  padding-right: 2%; }
  footer a,
  footer a:visited,
  footer a:hover {
    color: #b2b2b2; }

#inner-footer {
  margin: 0 auto;
  width: 978px; }

#head-footer {
  letter-spacing: -.40em;
  width: 100%; }

#footer-ci,
#footer-share,
#pagetop {
  border-left: 1px solid #4d4d4d;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  letter-spacing: normal;
  vertical-align: middle;
  *display: inline;
  *zoom: 1;
  vertical-align: middle; }

#footer-share {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: -.40em;
  padding-left: 40px;
  width: 520px; }
  #footer-share dt {
    margin-bottom: 9px; }
  #footer-share dd {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: middle;
    *display: inline;
    *zoom: 1;
    margin-right: 20px;
    position: relative;
    vertical-align: middle; }

.share-fblike,
.share-line {
  top: -6px; }

.share-gplus {
  width: 70px; }

#pagetop {
  border-right: 1px solid #4d4d4d;
  width: 118px; }
  #pagetop a {
    display: block;
    height: 100px;
    position: relative; }
    #pagetop a:before {
      color: #FFF;
      display: block;
      font-size: 25px;
      content: '\f077';
      font-family: FontAwesome;
      left: 0;
      line-height: 0.5;
      position: absolute;
      text-align: center;
      top: 44px;
      width: 100%; }
  #pagetop span {
    display: block;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    zoom: 1; }

/* フッターナビ
   ========================================================================== */
#footer-nav {
  display: table;
  padding-top: 45px;
  width: 100%; }

.footer-nav-set {
  display: table-cell;
  width: 20%; }
  .footer-nav-set li {
    margin-top: 3px; }
    .footer-nav-set li a:hover {
      color: #fff;
      font-weight: bold; }

.footer-nav-ttl {
  color: #ccc; }
  .footer-nav-ttl a,
  .footer-nav-ttl a:visited,
  .footer-nav-ttl a:hover {
    color: #FFF; }

/* フッター content info
   ========================================================================== */
#footer-cinfo {
  letter-spacing: -.40em;
  text-align: center;
  margin-top: 35px; }
  #footer-cinfo li {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: middle;
    *display: inline;
    *zoom: 1;
    font-size: 85.7142857143%;
    margin-left: 24px; }
    #footer-cinfo li:first-child {
      margin-left: 0; }

#footer-registered,
#footer-copyright {
  line-height: 1.0;
  text-align: center;
  height: 13px; }
  #footer-registered img,
  #footer-copyright img {
    vertical-align: top; }

#footer-registered {
  margin-top: 30px; }

#footer-copyright {
  margin-top: 17px; }

a .corp-nav-parent:hover {
  color: #3f51b5 !important; }

.corp-other-parent:hover {
  color: #3f51b5 !important; }

#subnav-lang a:hover {
  color: #3f51b5 !important; }
