/*
Theme Name: Ogawa2015Re2023
*/
/*-----------------------------------
	Gloval
-----------------------------------*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
*:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  width: 100%;
  font-size: 100%;
  -webkit-appearance: none;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-rendering: optimizelegibility;
}
/*-----------------------------------
	Setting
-----------------------------------*/
body {
  margin: 0;
  font-family: "Helvetica Neue", "M PLUS 1p", YuGothic, Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  font-size: 15px;
  line-height: 1.52;
  min-width: 320px;
  color: #333;
  background-color: #ffffff; /*#f8fbf8;*/
}
@media all and (max-width: 767px) {
  body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: 15px;
    line-height: 1.48;
  }
}
* html body {
  font-family: "MS PGothic", Sans-Serif; /*for ie*/
}
a, a:active, a.active {
  text-decoration: none;
  border: none;
  color: #005ca0; /*#f4b3c2;*/
}
a:hover, a:focus {
  text-decoration: none;
  border: none;
  color: #0081cc;
  -moz-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
}
a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
/*-----------------------------------
	Box 
-----------------------------------*/
.block:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
  clear: both;
}
.inner {
  padding: 0.67em;
}
.outer {
  margin: 0.73em;
}
.line1 {
  line-height: 1;
}
.inbox {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.box {
  border: 1px solid #e3e3e3;
  background: #fff;
  overflow: hidden;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.fb-page {
    max-width: 98% !important;
    margin-left: auto;
    margin-right: auto;
    max-height: auto;
}
@media all and (max-width: 767px) {
  .fb-page {
    max-width: 96% !important;
    margin-left: auto;
    margin-right: auto;
    max-height: auto;
  }
}
/*-----------------------------------
	Margin Reset
-----------------------------------*/
#header .units-row, #footer .units-row {
  margin-bottom: 0;
}
iframe {
  max-width: 100%;
}
.iframe-box {
  max-width: 100%;
  border: 1px solid #dcdcdc;
}
/*-----------------------------------
	Lang Style
-----------------------------------*/
.ja {
  font-family: Verdana, 'Noto Sans JP', "Hiragino Kaku Gothic ProN", YuGothic, Meiryo, sans-serif;
  font-size: 0.8rem;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.wa {
  font-family: 'Noto Serif', "Times New Roman", YuMincho, "Hiragino Mincho ProN", Meiryo, serif;
}
.en {
  font-family: 'Noto Sans', "Times New Roman", serif;
  /*font-weight: 700;*/
  color: #006400;
}
.en span {
  font-family: Verdana, "Hiragino Kaku Gothic ProN", YuGothic, Meiryo, sans-serif;
  font-size: 0.8rem;
  padding-left: 1em;
  padding-right: 1em;
  color: #432f2f;
}
.email, .phone {
  font-family: 'Lato', serif;
}
.googlefont {
  font-family: 'Lato', sans-serif;
  font-family: 'Noto Sans', sans-serif;
  font-family: 'Noto Sans JP', sans-serif;
  font-family: 'Noto Serif', serif;
}
/*-----------------------------------
	Headings Size
-----------------------------------*/
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}
h1 {
  font-size: 1rem;
}
h2 {
  font-size: 1.52rem;
  margin-top: 0.3em;
}
h3 {
  font-size: 1.32rem;
}
h4 {
  font-size: 1.1rem;
}
h5 {
  font-size: 1rem;
}
h6 {
  font-size: 0.9rem;
}
/*-----------------------------------
	Title Style
-----------------------------------*/
h2.title {
  text-align: center;
  width: 17em;
  margin: 1em auto;
  background: #005ca0;
  color: #fff;
  font-size: 1.2rem;
  padding: 0.7rem;
  border-top: 2px dashed #fff;
  border-bottom: 2px dashed #fff;
  box-shadow: 0 0 2px 5px #005ca0;
  text-shadow: 0 0 5px;
}
h2, h3, h4, h5, h6, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: #0081cc;
}
.palevioletred {
  color: #db7093;
}
.darkseagreen {
  color: #8fbc8f;
}
.cornflowerblue {
  color: #6495ed;
}
.orchid {
  color: #da70d6;
}
.rosybrown {
  color: #bc8f8f;
}
.olive {
  color: #808000;
}
.kurotobi { /*黒鳶*/
  color: #432f2f;
}
.susutake { /*煤竹色*/
  color: #6f514c;
}
.kurenai { /*真紅*/
  color: #a22041;
}
.momoiro { /*桃色*/
  color: #f09199;
}
.ayame { /*あやめ色*/
  color: #cc7eb1;
}
.shoubu { /*菖蒲色*/
  color: #674196;
}
/*-----------------------------------
	Paragraphs
-----------------------------------*/
p, li, td, dd {
  color: #432f2f;
  font-size: 0.95rem;
  line-height: 1.52;
}
p.note {
  text-indent: 0.95rem;
}
small {
  font-size: 0.8rem;
}
strong, b {
  font-weight: bold;
  color: #1a1a1a;
}
.small {
  font-size: 0.8rem;
  line-height: 1.37;
}
.more-small {
  font-size: 0.7rem;
}
.large {
  font-size: 1.18rem;
}
.more-large {
  font-size: 1.32rem;
}
p.nomabo {
  margin-bottom: 0;
}
br.mobile {
  display: none;
}
.pccenter {
  text-align: center;
}
@media all and (max-width: 640px) {
  br.mobile {
    display: block;
  }
  .pccenter {
    text-align: left;
  }
}
/*-----------------------------------
	Image Reset
-----------------------------------*/
img {
  /* Responsive images (ensure images don't scale beyond their parents) */
  max-width: 100%;
  /* Part 1: Set a maxium relative to the parent */
  width: auto\9;
  /* IE7-8 need help adjusting responsive images */
  height: auto;
  /* Part 2: Scale the height according to the width, otherwise you get stretching */
  vertical-align: middle;
  border: 0;
}
/*-----------------------------------
	Contents Design
-----------------------------------*/
.section {
  border-bottom: 1px solid #e1e1e1;
  padding: 2.5rem 0 3rem 0;
}
.section.home {
  border-bottom: 1px solid #e1e1e1;
  padding: 0;
}
.section.last {
  border-bottom: none;
}
.section-alt {
  background: #f7f7f7;
}
.pages {
  margin: 0 auto;
  margin-top: 2em;
}
.pages p {
  margin-bottom: 1em;
}
.pages li {
  margin-bottom: 0.3em;
}
.pages li.mabolit {
  margin-bottom: 0em;
  padding: 3px 0;
}
/*-----------------------------------
	Dividers
-----------------------------------*/
hr.clearline {
  clear: both;
  border-bottom: 0;
  border-top: 1px solid #fff;
  filter: alpha(opacity=0); /*ie100*/
  -moz-opacity: 0.0; /*fx1.0*/
  opacity: 0.0; /*wk1.0*/
  border-right: 0;
  border-left: 0;
  margin: 14px 0;
  min-height: 0px;
  height: 1px;
}
hr.spacer {
  clear: both;
  border-bottom: 0;
  border-top: 1px solid #fff;
  filter: alpha(opacity=0); /*ie100*/
  -moz-opacity: 0.0; /*fx1.0*/
  opacity: 0.0; /*wk1.0*/
  border-right: 0;
  border-left: 0;
  margin: 24px 0;
  min-height: 0px;
  height: 1px;
}
hr {
  clear: both;
  border-bottom: 0;
  border-top: 1px solid #dcdcdc;
  border-right: 0;
  border-left: 0;
  margin: 9px 0;
  min-height: 0px;
  height: 1px;
}
hr.grey {
  border-top: 1px solid #a3a3a3;
}
/*-----------------------------------
	Background
-----------------------------------*/
.bg-fixed {
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
/*-----------------------------------
	Header
-----------------------------------*/
#header {
  width: 100%;
}
.header-line {
  width: 100%;
  background: #0081cc;
  /*border-bottom: 5px solid #ff69b4;*/
}
h1#logo {
  display: block;
  border: none;
  padding: 0;
  margin: 5px 0 7px 0;
  font-size: 0.9rem;
  color: #fff; /*#a25768;*/
}
#gloval-navi {
  margin-top: 1px;
}
#gloval-navi .homes a {
  width: 46px;
  height: 46px;
  float: left;
  color: #fff;
  background: url(images/home.png) 0 0 no-repeat;
  text-indent: -9999px;
}
#gloval-navi ul {
  /*background: #0081cc;*/
  float: right;
  padding: 8px 0 9px 0;
  margin: 0;
}
#gloval-navi #fixed-nav li {
  display: inline-block;
  margin: 0 10px;
}
#gloval-navi #fixed-nav li a {
  color: #fff;
  font-size: 0.95rem;
  border: none;
}
#gloval-navi #fixed-nav li a:hover {
  color: yellow;
  text-decoration: none;
}
#gloval-navi #fixed-nav li.current a {
  color: yellow;
}
/*---------------------------------
	Stuck Container
-----------------------------------*/
#stuck_container {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  box-shadow: none;
  background: #0081cc;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=95)";
  -moz-opacity: 0.95;
  opacity: 0.95;
  z-index: 100;
}
.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
/*-----------------------------------
	Mobile Navi
-----------------------------------*/
@media all and (max-width: 767px) {
  #stuck_container {
    display: none;
  }
}
h1#logo.mh1 {
  margin: 12px 0 7px 0;
  font-size: 1em;
}
#nav-drawer {
  position: relative;
}
/*チェックボックス等は非表示に*/
.nav-unshown {
  display: none;
}
/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 42px;
  height: 42px;
  vertical-align: middle;
  background-image: url('images/menu-wh.svg');
  color: #fff;
  background-size: 42px 42px;
}
#nav-open span {
  cursor: pointer;
}
/*閉じる用の薄黒カバー*/
#nav-close {
  display: none; /*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0; /*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  opacity: 0.95;
  transition: .3s ease-in-out;
}
#nav-close-btn {
  z-index: 9999;
  width: 50%;
  margin: 1em 25% 0 25%;
  height: 32px;
  line-height: 32px;
  background: #59b9c6;
  color: #fafafa;
  text-align: center;
}
/*ナビゲーションエリア*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 75%;
  max-width: 260px;
  height: 100%;
  background: #fff;
  opacity: 0.95;
  transition: .3s ease-in-out;
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%); /*左に隠しておく*/
}
.navtitle {
  width: 100%;
  margin: 0.5em 1em 0.5em 0;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}
#nav-content ul {
  margin: 0.8em 1em 0.8em 1em;
  text-align: left;
  padding: 0;
  border-top: 1px solid #dcdcdc;
}
#nav-content ul li {
	margin: 0;
	padding: 0;
	list-style: none;
}
#nav-content ul li a {
	padding-left: 0.7em!important;
	line-height: 2.9em;
	height: 2.9em;
	display:inline-block;
	width: 100%;
	border-bottom: 1px solid #dcdcdc;
}

/*チェックが入ったら表示*/
#nav-input:checked ~ #nav-close {
  display: block; /*カバーを表示*/
  opacity: .5;
}
#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%); /*右へスライド*/
  box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
}
label {
  display: inline-block;
  margin-bottom: .5rem;
}
label .nav-close-btn {
  background: #e0e3e5;
  font-size: 1.2em;
  display: inline-block;
  line-height: 1;
  padding: 4px 7px 3px 7px;
  color: #0f0f0f;
  text-align: center;
  font-weight: normal;
  text-transform: uppercase;
}
/*-----------------------------------
	Page Design
-----------------------------------*/
.line-left {
  border-left: 5px solid #005ca0;
  padding-left: 14px;
  line-height: 1.35em;
  margin-bottom: 1.5em;
}
.left-line {
  border-left: 5px solid #005ca0;
  padding-left: 0.8em;
  margin-left: 1em;
  margin-bottom: 1.35em;
}
.top-line {
  border-top: 1px solid #005ca0;
}
.line {
  border-bottom: 1px solid #dcdcdc;
}
/*-----------------------------------
	Prfile Page
-----------------------------------*/
dl.profile {
  width: 100%;
  padding: 0;
  border-top: 1px solid #d3d3d3;
  border-bottom: 1px solid #d3d3d3;
}
.profile dt {
  margin: 0;
  line-height: 1.3;
  width: 7rem;
  font-size: 0.95rem;
  clear: left;
  float: left;
  color: #005ca0;
  border-top: 1px solid #d3d3d3;
  padding: 7px 0 7px 1rem;
  vertical-align: top;
}
.profile dd {
  margin: 0;
  line-height: 1.3;
  margin-left: 7rem;
  font-size: 0.95rem;
  border-top: 1px solid #d3d3d3;
  padding: 7px 0;
  vertical-align: top;
}
.profile dt.first {
  border-top: none;
}
.profile dd.first {
  border-top: none;
}
.profile dd.note {
  font-size: 0.8rem;
}
/*-----------------------------------
	Contact Page
-----------------------------------*/
ul.contact {
  margin-top: 11px;
  list-style: none;
}
.contact li {
  margin-bottom: 7px;
  padding: 5px 7px 5px 30px;
  line-height: 1.5;
  list-style: none;
}
.contact li:last-child {
  margin-bottom: 0;
}
.contact li.address {
  background: url(images/home2.png) 0 12px no-repeat;
}
.contact li.phone {
  background: url(images/oldphone.png) 0 17px no-repeat;
  font-family: 'Montserrat', sans-serif;
  font-size: 1.2em;
}
.contact li.email {
  background: url(images/email.png) 0 7px no-repeat;
  font-family: 'Montserrat', sans-serif;
  font-size: 1.2rem;
}
.contact li.hours {
  background: url(images/clock2.png) 0 3px no-repeat;
}
.contact li a {
  /*color: #56AEEB;*/
  text-decoration: none;
}
.contact li a:hover {
  /*color: #56AEEB;*/
  text-decoration: none;
}
/*-----------------------------------
	Press Page
-----------------------------------*/
.press-box {
  text-align: center;
  padding: 0;
}
.press-box img {
  max-width: 425px;
  max-height: 425px;
}
.press-box h2 {
  text-align: center;
  font-size: 1.2rem;
}
@media all and (max-width: 479px) {
  .press-box img {
    max-width: 98%;
    margin-left: auto;
    margin-right: auto;
    max-height: auto;
  }
}
/*-----------------------------------
	Pagetop
-----------------------------------*/
#to-top {
  position: fixed;
  bottom: 4rem;
  right: 0.7rem;
  font-size: 100%;
  z-index: 111;
}
#to-top a {
  background: #0081cc;
  text-decoration: none;
  color: #fff;
  width: 4rem;
  padding: 1rem 0;
  text-align: center;
  display: block;
  border: 1px solid #fff;
  /*
	border-radius: 5px;
	-webkit-border-radius: 5px;  
	-moz-border-radius: 5px;  
	*/
  filter: alpha(opacity=80);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=50)";
  -moz-opacity: 0.80;
  opacity: 0.80;
}
#to-top a:hover {
  text-decoration: none;
  background: #0081cc;
}
/*-----------------------------------
	Footer
-----------------------------------*/
#footer {
  background: #0081cc;
  color: #fff;
  text-align: center;
  font-size: 13px;
  padding: 20px 0 20px 0;
}
#footer a {
  color: #fff;
  text-decoration: underline;
}
/*-----------------------------------
	Reset Margin and Padding
-----------------------------------*/
.nomabo {
  margin-bottom: 0;
}
.nomato {
  margin-top: 0;
}
.nopabo {
  padding-bottom: 0;
}
.nopato {
  padding-top: 0;
}
.noma {
  margin: 0;
}
.nopa {
  padding: 0;
}
.nomapa, .nopama {
  margin: 0;
  padding: 0;
}
.pa-one {
  padding: 1em;
}
.ma-one {
  margin: 1em;
}
.pama-one, .mapa-one {
  padding: 1em;
  margin: 1em;
}