@charset "utf-8";

/* ============================================
    common.css
    2017.08.17  by Otsuka Takashi
============================================= */

/* =================================================
  initialize
================================================= */
body {
  letter-spacing:           0.03rem;
  background:               #ffffff;
  min-width:                960px;
  -webkit-text-size-adjust: 100%;
}

a:link, a:visited {
  color:            #036eb5;
  text-decoration:  none;
}
a:hover, a:active {
  color:            #f09400;
  text-decoration:  underline;
}
.containerA {
  width:            960px;
  min-width:        960px;
  max-width:        960px;
  margin:           0 auto;
  position:         relative;
}

#tpPusherMenuCheckBox, #tpPusherMenuIcon, #tpPusherMenuBackGround, #tpPusherMenu {
  display:          none;
}

.pcHide {
  display:          none;
}

/* =================================================
  header
================================================= */
header {
  border-top:       10px solid #036eb5;
  height:           180px;
}

header section {
  height:           118px;
}

header section h1 a {
  position:         absolute;
  top:              20px;
  left:             0;
  display:          block;
  width:            400px;
  height:           87px;
  background:       url('/tpGlobalSettings/img/logoOss.svg') no-repeat;
  text-indent:      -9999px;
}

header section ul li:nth-child(1) a {
  position:         absolute;
  top:              35px;
  left:             440px;
  display:          block;
  width:            200px;
  height:           52px;
  background:       url('/tpGlobalSettings/img/tel.svg') no-repeat;
  text-indent:      -9999px;
}

header section ul li:nth-child(2) a {
  position:         absolute;
  top:              35px;
  left:             650px;
  display:          block;
  width:            175px;
  height:           52px;
  background:       url('/tpGlobalSettings/img/contact.svg') no-repeat;
  text-indent:      -9999px;
}

header section ul li:nth-child(3) {
  position:         absolute;
  top:              27px;
  left:             840px;
  display:          block;
  width:            120px;
  height:           77px;
  background:       url('/tpGlobalSettings/img/castle3.svg') no-repeat;
  text-indent:      -9999px;
}

header p {
  display:          none;
}

header nav {
  height:           60px;
  border-top:       5px solid #d9d9d9;
  border-bottom:    1px solid #d9d9d9;
  background:       #f2f2f2;
  background:       -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 60%, #e0e0e0 100%);
  background:       -webkit-linear-gradient(top, #ffffff 0%,#f2f2f2 60%,#e0e0e0 100%);
  background:       linear-gradient(to bottom, #ffffff 0%,#f2f2f2 60%,#e0e0e0 100%);
  filter:           progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e0e0e0',GradientType=0 );
}

header nav ul#gNav {
  height:           60px;
}

header nav ul#gNav li {
  float:            left;
  position:         relative;
}

header nav ul#gNav li a {
  display:          block;
  box-sizing:       border-box;
  height:           60px;
  width:            auto;
  text-align:       center;
  font-size:        1.5rem;
  line-height:      1;
  padding:          17px 19px;
  border-left:      1px solid #dadada;
  letter-spacing:   0px;
}

header nav ul#gNav li:last-child a {
  border-right:      1px solid #dadada;
}

header nav ul#gNav li a span {
  display:          block;
  box-sizing:       border-box;
  text-align:       center;
  font-size:        0.9rem;
  font-weight:      bold;
  line-height:      1;
  padding:          7px 0 0 0;
  color:            #036eb5;
  letter-spacing:   1px;
}

header nav ul#gNav li a:link, header nav ul#gNav li a:visited {
  color:            #000000;
}

header nav ul#gNav li a:hover, header nav ul#gNav li a:active {
  background:       #e0e0e0;
  text-decoration:  none;
}

header nav ul#gNav li ul {
  display:          none;
  z-index:          10;
}

header nav ul#gNav li ul li a {
  width:            170px;
  border-right:     1px solid #dadada;
  border-bottom:    1px solid #dadada;
  background:       rgba(255,255,255,0.85);
}

/* =================================================
  footer
================================================= */
footer {
  background:       #036eb5;
  color:            #ffffff;
  font-size:        1.4rem;
  padding:          2em 0;
}

footer a:link, footer a:visited {
  color:            #ffffff;
}

footer a:hover, footer a:active {
  color:            #ffff00;
  text-decoration:  underline;
}

footer hr {
  color:            #ffffff;
  border-top:       1px solid #ffffff;
  margin:           2em 0;
}

footer div#footerNav {
  display:          flex;
}

footer div#footerNav dl {
  margin:           0 40px 0 0;
}

footer div#footerNav dl dt {
  font-size:        1.6rem;
  font-weight:      bold;
  color:            #036eb5;
  background:       #ffffff;
  border-radius:    3px;
  padding:          3px 20px;
  text-align:       center;
  margin:           0 0 10px 0;
}

footer div#footerNav dl dd {
  margin:           3px 0 0 20px;
  font-size:        1.3rem;
  font-weight:      bold;
}

footer div#footerNav dl dd a:before {
  content:          "» ";
}

footer div#footerName {
  height:           70px;
}

footer div#footerName h2 a {
  position:         absolute;
  top:              0;
  left:             0;
  display:          block;
  width:            200px;
  height:           55px;
  background:       url('/tpGlobalSettings/img/logoOss2.svg') no-repeat;
  text-indent:      -9999px;
}

footer div#footerName p:nth-child(2) {
  font-weight:      bold;
  position:         absolute;
  top:              14px;
  left:             220px;
}

footer div#footerName p:nth-child(3) {
  font-weight:      bold;
  position:         absolute;
  top:              34px;
  left:             220px;
}

footer address {
  text-align:       right;
  color:            #ffffff;
  margin:           1em auto;
  font-size:        1.4rem;
}
/* =================================================
  pagetop
================================================= */
#pageTop {
  position:         fixed;
  bottom:           50px;
  right:            50px;
}
#pageTop a {
  display:          block;
  width:            90px;
  height:           90px;
  background:       url('/tpGlobalSettings/img/pageTop.svg') no-repeat;
  text-indent:      -9999px;
  opacity:          0.8;
}