@charset "UTF-8";
.pc_br {
  display: none; }
.pageTop {
  display: block;
  position: fixed;
  width: 100px;
  height: 100px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  right: 1rem;
  bottom: 1rem;
  opacity: 0.5; }
.pageTop img {
  width: 100%;
  height: auto; }
.pageTop:hover {
  opacity: 1; }

.container-fluid {
  padding-right:72px; /* 右側は可変のまま */
  padding-left: 72px; /* 左側を固定値に */
  margin: 0; }

body.deep .container-fluid {
  padding-right: 9%;
  padding-left: 9%; }

ul.pagination li a {
  padding: 0.3em 0.7em;
  font-size: 130%; }
body header {
  height: 80px; }
body header .drawerWrap {
  display: block; }
body header .drawerWrap button.drawer-hamburger {
  z-index: 10000;
  margin: 0;
  padding: 30px 0;
  width: 2rem;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  position: relative;
  top: auto;
  right: auto;
}

.drawer-open header .drawerWrap button.drawer-hamburger {
  transform: scale(0.8);
  background-color: #888888;
  width: 60px;
  height: 60px;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.drawer-open header .drawerWrap button.drawer-hamburger span.drawer-hamburger-icon {
  background-color: transparent;
  margin-top: 0;
}
.drawer-open header .drawerWrap button.drawer-hamburger span.drawer-hamburger-icon:before,
.drawer-open header .drawerWrap button.drawer-hamburger span.drawer-hamburger-icon:after {
  top: 0;
  background-color: #fff;
}
.drawer-open header .drawerWrap button.drawer-hamburger span.drawer-hamburger-icon:before {
  transform: rotate(45deg);
}
.drawer-open header .drawerWrap button.drawer-hamburger span.drawer-hamburger-icon:after {
  transform: rotate(-45deg);
}

body header .drawerWrap button.drawer-hamburger span.drawer-hamburger-icon {
  margin-top: -0.1rem;
  width: 2rem;
  background-color: transparent;
  height: 1px; }
body header .drawerWrap button.drawer-hamburger span.drawer-hamburger-icon:before {
  background-color: #888888;
  top: -6px;
  height: 1px; }
body header .drawerWrap button.drawer-hamburger span.drawer-hamburger-icon:after {
  background-color: #888888;
  top: 6px;
  height: 1px; }
body header .drawerWrap button.drawer-hamburger span.txt {
  display: block;
  text-align: right;
  color: white; }
body header .drawerWrap .drawer-nav {
  z-index: 1040;
  background-color: black; }
body header .drawerWrap .drawer-nav ul.drawer-menu li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
body header .drawerWrap .drawer-nav ul.drawer-menu li a {
  font-size: 1.4em;
  display: block;
  color: white;
  padding: 1em 0.6em; }
body header .drawerWrap .drawer-nav ul.drawer-menu li ul.sub-menu li {
  text-indent: 1em; }
body header nav.navbar-expand-md {
  height: 80px;
  background-color: #fff;
  font-size: 0.9em;
  padding: 0 4% 0 0; }
body header nav.navbar-expand-md .navbar-brand {
  margin-right: 3rem;
  width: auto; }
body header nav.navbar-expand-md ul.navbar-nav a.nav-link {
  color: #000;
  padding-left: 1em;
  padding-right: 1em; }
body header nav.navbar-expand-md ul.navbar-nav a.nav-link:hover {
  text-decoration: underline; }
body header nav.navbar-expand-md ul.sub .nav-item a.contact {
  color: #fff;
  background-color: #263573;
  padding: 0.5rem 2rem; }
body header nav.navbar-expand-md ul.sub .nav-item a.contact:hover {
  text-decoration: none; }
body > footer {
  margin-top: 1rem;
  background-color: black; }
body > footer .nav {
  padding: 3em 50px 2em 50px; }
body > footer .nav .row {
  width: 100%;
  margin: 0 auto; }
.sp_br {
  display: inline; }

* {
  font-size: 1.5rem; }

body header.scrolled nav.navbar-expand-md {
  -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5); }

body header.scroll {
  height: 60px; }
body header.scroll nav.navbar-expand-md {
  height: 60px;
  background-color: #fff;
  border-bottom: 0 #263573 solid;
  font-size: 0.9em; }
body header.scroll nav.navbar-expand-md .navbar-brand {
  margin-right: 3rem; }
body header.scroll nav.navbar-nav a.nav-link {
  color: #000;
  padding-left: 1em;
  padding-right: 1em; }
body header.scroll nav.navbar-nav a.nav-link:hover {
  text-decoration: underline; }
body header.scroll nav.navbar-expand-md ul.sub .nav-item a.contact {
  color: #fff;
  background-color: #263573;
  padding: 0.5rem 2rem; }
body header.scroll nav.navbar-expand-md ul.sub .nav-item a.contact:hover {
  text-decoration: none; }

/* --- Original media query content starts here --- */

body header nav.navbar-expand-md .navbar-brand img {
  width: auto;
  height: 35px; }

body > footer .nav .row .address > a {
  display: block;
  margin-bottom: 0.5em;
  order: 2; }
body > footer .nav .row .address > a img {
  width: 100%;
  height: auto; }

/* PC用ナビゲーションを非表示にし、ドロワーメニューに切り替え */
.navbar-collapse ul.navbar-nav {
  display: none; }
body header nav.navbar-expand-md .navbar-collapse {
  display: none; }

/* BootstrapのグリッドをSP用に上書き（カラムを縦積みにする） */
.col-lg-4, .col-lg-8 {
  padding-right: 0;
  padding-left: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%; }

/* --- フッターレイアウト調整 --- */
body > footer .nav .row .address.col-lg-8 {
  order: 2;
  width: 100%;
  display: flex;
  flex-direction: column;
  padding: 0; }
body > footer .nav .row .col-lg-2 {
  display: block;
  width: 50%;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
  order: 1;
  padding: 0 0 3rem 0;
  border-bottom: 1px solid #888888; }

body > footer .nav .row .address .details {
  padding-left: 0.1em;
  order: 1;
  margin-bottom: 3rem; }
body > footer .nav .row .address .details p {
  color: #fff;
  font-size: 1.25rem;
  padding: 0.1em 0;
  line-height: 1.5em; }
body > footer .nav .row .address .details p strong {
  font-size: 1.8rem;
  font-weight: bold; }

body.top > main .mainVi .pc {
  display: none; }
body.top > main .mainVi .sp {
  display: block; }

body > footer .nav .row .col-lg-2 ul {
  margin-bottom: 0.7em; }
body > footer .nav .row .col-lg-2 ul li a {
  display: block;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.5em; }
body > footer .nav .row .col-lg-2 ul li a.title {
  padding-bottom: 0.3em;
  margin-bottom: 0.3em; }
body > footer .nav .row .col-lg-2 ul li a.title.hover {
  opacity: 1; }
body > footer .group {
  background-color: #fff;
  padding: 2rem 0.5rem;
  text-align: center; }
body > footer .group h5 {
  font-size: 1.8rem;
  line-height: 1.5em;
  text-align: center;
  color: #263573;
  padding-bottom: 1rem; }
body > footer .group h5 br {
  display: block; }
body > footer .group .icons a {
  margin: 1rem 1.5rem;
  color: #263573;
  display: inline-block;
  width: 82px;
  vertical-align: top;
  font-size: 0.8rem;
  line-height: 1.3em; }
body > footer .group .icons a:hover {
  text-decoration: none; }
body > footer .group .icons a img {
  margin-bottom: 0.2em; }
body > footer .copyright {
  padding: 2em 50px 4em 50px;
  text-align: left;
  color: #888888;
  font-size: 1rem; }

.linkIcon a {
  margin: 8px;
  color: #263573;
  display: inline-block;
  width: 16%;
  vertical-align: top;
  font-size: 0.8rem;
  line-height: 1.3em; }
.linkIcon a:hover {
  text-decoration: none; }
.linkIcon a img {
  width: 100%;
  height: auto; }
.linkIcon a span {
  display: none; }

body.top > main .mainVi {
  overflow: hidden; }
body.top > main .mainVi .row {
  overflow: hidden;
  margin-left: 0;
  margin-right: 0;
  border-bottom: none; }
body.top > main .mainVi .row > div {
  overflow: hidden;
  padding-left: 0;
  padding-right: 0; }
body.top > main .mainVi .catchcopy {
  background-color: #263573;
  color: #fff;
  text-align: center;
  padding: 1rem 0;
  line-height: 1.8em;
  font-size: 1.5rem; }
body.top > main .mainVi .catchcopy br {
  display: block; }
body.top > main .mainVi a {
  display: block;
  position: relative; }
body.top > main .mainVi a:hover {
  text-decoration: none; }
body.top > main .mainVi a.mainVi1 {
  background-image: url(../img/mainVi_bg1.jpg); }
body.top > main .mainVi a.mainVi2 {
  background-image: url(../img/mainVi_bg2.jpg); }
body.top > main .mainVi a.mainVi3 {
  background-image: url(../img/mainVi_bg3.jpg); }
body.top > main .mainVi a.mainVi4 {
  background-image: url(../img/mainVi_bg4.jpg); }
body.top > main .mainVi a.mainVi5 {
  background-image: url(../img/mainVi_bg5.jpg); }
body.top > main .mainVi a.mainVi6 {
  background-image: url(../img/mainVi_bg6.jpg); }
body.top > main .mainVi a.mainVi_content {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
body.top > main .mainVi a.mainVi_content h3 {
  padding: 1rem 1.5rem;
  color: #000;
  font-weight: bold;
  text-shadow: 0px 1px 1px #fff,0px 0px 1px #fff,1px 0px 1px #fff,0px -1px 1px #fff,-1px -1px 1px #fff,-1px 0px 1px #fff; }
body.top > main .mainVi a.mainVi_content p.image {
  padding: 0 1.5rem 1rem 1.5rem; }
body.top > main .mainVi a.mainVi_content p.image img {
  width: 50%;
  height: auto;
  padding: 0; }
body.top > main .mainVi a.mainVi_content p.caption {
  position: static;
  width: 100%;
  padding: 1rem 1.5rem;
  font-size: 0.9rem;
  line-height: 1.5em;
  color: #fff;
  background-color: rgba(38, 53, 115, 0.75); }
body.top > main .mainVi .sp a.mainVi_content {
  display: block;
/*  border: 1px solid #fff; */ }
body.top > main .mainVi .sp a.mainVi_content p.image {
  padding: 7.6rem 1.5rem 1rem; }
body.top > main .mainVi .sp a.mainVi_content p.image img {
  max-width: 100%;
  height: auto; }
body.top > main .mainVi .sp a.mainVi_content p.caption {
  padding: 1rem 1.5rem;
  font-size: 1.5rem;
  line-height: 1.5em;
  color: #fff;
  background-color: #263573; }
body.top > main .mainVi .sp a.mainVi_content p.caption br {
  display: inline;
  padding-left: 1em; }
body.top .mainCol {
  margin-top: 1rem; }
body.top .mainCol .statmentTxt {
  margin-left: 0;
  font-size: 1.3rem;
  line-height: 2.5rem;
  letter-spacing: 0.02rem; }
body.top .mainCol h3 {
  font-size: 2.2rem;
  margin: 0.3em 0;
  text-align: left; }
body.top .mainCol a.more {
  font-size: 1em; }
body.top .mainCol .topics {
  padding: 3rem 0; }
body.top .mainCol .topics a {
  display: table;
  width: 100%;
  margin-bottom: 2em;
  padding: 0 1rem 1rem 0; }
/*
body.top .mainCol .topics a:nth-child(odd) {
  background-color: #eee; }
*/
body.top .mainCol .topics a:hover {
  text-decoration: none;
  opacity: 0.8; }
body.top .mainCol .topics a.more {
  background-color: #263573;
  color: #fff;
  display: block;
  text-align: center;
  padding: 0.9em 0;
  font-size: 1.2em; }
body.top .mainCol .topics a .thumb {
  display: table-cell;
  vertical-align: top;
  padding-right: 1rem; }
body.top .mainCol .topics a .thumb img {
  width: 90px;
  }
body.top .mainCol .topics a .text {
  width: 90%;
  display: table-cell;
  vertical-align: top;
  color: #000; }
body.top .mainCol .topics a .text .sub .icon {
  display: inline-block;
  color: #fff;
  font-size: 0.7em;
  padding: 0.2em 0.5em; }
body.top .mainCol .topics a .text .sub .news {
  background-color: #888888; }
body.top .mainCol .topics a .text .sub .date {
  font-size: 1em; }
body.top .mainCol .topics a .text h4 {
  font-weight: bold;
  font-size: 0.8em;
  padding: 0.5em 0 0 0;
  line-height: 1.5em; }
body.top .mainCol .topics a .text p {
  display: none; }
body.top .mainCol h3.hide {
  display: none;
  visibility: hidden;
  padding-bottom: 1rem; }
body.top .mainCol .banner {
  text-align: center; }
body.top .mainCol .banner li {
  margin-bottom: 0.5rem;
  float: left;
  width: 50%;
  padding: 0.5rem; }
body.top .mainCol .banner li a {
  display: block;
  width: 100%;
  max-width: 100%; }
body.top .mainCol .banner li a img {
  width: 100%;
  height: auto; }

body.deep > main .mainCol {
  padding-left: 0;
  padding-right: 0; }
body.deep > main .mainCol h1 {
  font-size: 2rem; }
body.deep > main .mainCol .breadcrumb {
  font-size: 1.5rem; }
body.deep > main .mainCol article {
  font-size: 90%; }
body.deep > main .mainCol article .org_image {
  width: 100%; }
body.deep > main .mainCol article.topics_list {
  padding: 1rem 0; }
body.deep > main .mainCol article.topics_list a {
  display: table;
  width: 100%;
  margin-bottom: 1em;
  padding: 1em; }
/*
body.deep > main .mainCol article.topics_list a:nth-child(odd) {
  background-color: #eee; }
  */
body.deep > main .mainCol article.topics_list a:hover {
  text-decoration: none;
  opacity: 0.8; }
body.deep > main .mainCol article.topics_list a.more {
  background-color: #263573;
  color: #fff;
  display: block;
  text-align: center;
  padding: 0.9em 0;
  font-size: 1.2em; }
body.deep > main .mainCol article.topics_list a .thumb {
  display: table-cell;
  vertical-align: top;
  padding-right: 1rem; }
body.deep > main .mainCol article.topics_list a .thumb img {
  width: 90px;
  height: 90px; }
body.deep > main .mainCol article.topics_list a .text {
  width: auto;
  display: table-cell;
  vertical-align: top;
  color: #000; }
body.deep > main .mainCol article.topics_list a .text .sub .icon {
  display: inline-block;
  color: #fff;
  font-size: 0.8em;
  padding: 0.2em 0.5em;
  vertical-align: middle; }
body.deep > main .mainCol article.topics_list a .text .sub .news {
  background-color: #888888; }
body.deep > main .mainCol article.topics_list a .text .sub .date {
  font-size: 1em;
  vertical-align: middle; }
body.deep > main .mainCol article.topics_list a .text h4 {
  font-weight: bold;
  font-size: 1.2em;
  padding: 0.5em 0 0 0;
  line-height: 1.5em;
  display: block; }
body.deep > main .mainCol article.topics_list a .text p {
  display: none; }
body.deep > main .mainCol article.page {
  font-size: 90%;
  /* editor */
  /* img */
  /* clearfix */ }
body.deep > main .mainCol article.page th, body.deep > main .mainCol article.page td {
  font-size: 120%;
  line-height: 1.8em; }
body.deep > main .mainCol article.page th {
  font-weight: bold; }
body.deep > main .mainCol article.page .btn {
  text-decoration: none;
  color: gray;
  border: 1px solid gray; }
body.deep > main .mainCol article.page .history .line {
  border-left: 3px solid #A8AEC7;
  padding-left: 0;
  position: relative; }
body.deep > main .mainCol article.page .history .line:after {
  content: "●";
  margin-left: -0.58em;
  color: #263573;
  text-shadow: 0 0 3px white; }
body.deep > main .mainCol article.page .history tr:first-child .line:before {
  border-top: 1px solid #DEE2E6;
  content: "";
  display: block;
  height: 17px;
  width: 1rem;
  background-color: white;
  position: absolute;
  top: -1px;
  left: -4px; }
body.deep > main .mainCol article.page a {
  color: #263573;
  text-decoration: underline; }
body.deep > main .mainCol article.page a:hover {
  text-decoration: none; }
body.deep > main .mainCol article.page .aligncenter {
  display: block;
  margin: 0 auto; }
body.deep > main .mainCol article.page .alignright {
  float: right;
  margin: 0 0 1rem 1.5rem; }
body.deep > main .mainCol article.page .alignleft {
  float: left;
  margin: 0 1.5rem 1rem 0; }
body.deep > main .mainCol article.page h1, body.deep > main .mainCol article.page h2, body.deep > main .mainCol article.page h3, body.deep > main .mainCol article.page h4, body.deep > main .mainCol article.page h5, body.deep > main .mainCol article.page h6 {
  font-weight: bold;
  font-size: 1.5em;
  line-height: 1.8em;
  padding-bottom: 1rem; }
body.deep > main .mainCol article.page h4 {
  font-size: 100%; }
body.deep > main .mainCol article.page div.wrap {
  padding: 2rem 0 0 0; }
body.deep > main .mainCol article.page div.wrap h4 {
  padding-bottom: 0; }
body.deep > main .mainCol article.page p {
  padding: 0.5rem 0; }
body.deep > main .mainCol article.page .president_name {
  margin-top: -3em;
  text-align: center;
  font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 1.3rem;
  font-weight: bold; }
body.deep > main .mainCol article.page .president_name span {
  font-size: 1rem;
  margin-right: 1em; }
body.deep > main .mainCol article.page .president_img_wrap {
  text-align: center; }
body.deep > main .mainCol article.page .president_img_wrap img {
  margin: 0 auto;
  float: none; }
body.deep > main .mainCol article.page table.company_outline {
  display: block;
  border: none; }
body.deep > main .mainCol article.page table.company_outline tr {
  display: block; }
body.deep > main .mainCol article.page table.company_outline td, body.deep > main .mainCol article.page table.company_outline th {
  border: none;
  display: block; }
body.deep > main .mainCol article.page table.table_officer {
  display: table; }
body.deep > main .mainCol article.page table.table_officer tr {
  display: table-row; }
body.deep > main .mainCol article.page table.table_officer tr th, body.deep > main .mainCol article.page table.table_officer tr td {
  display: table-cell;
  font-size: 1.5rem; }
body.deep > main .mainCol article.page table.table_officer tr td br {
  display: block; }
body.deep > main .mainCol article.page table.history {
  display: block;
  border: none; }
body.deep > main .mainCol article.page table.history tr {
  display: block; }
body.deep > main .mainCol article.page table.history td, body.deep > main .mainCol article.page table.history th {
  border: none;
  display: block; }
body.deep > main .mainCol article.page table.history td.line {
  display: none; }
body.deep > main .mainCol article.page p {
  display: block;
  margin: 1em 0; }
body.deep > main .mainCol article.page strong {
  font-weight: bold; }
body.deep > main .mainCol article.page em {
  font-style: italic; }
body.deep > main .mainCol article.page blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 40px;
  -webkit-margin-end: 40px; }
body.deep > main .mainCol article.page .aligncenter {
  display: block;
  margin: 0 auto; }
body.deep > main .mainCol article.page .alignright {
  float: none;
  display: block;
  margin: 0 auto; }
body.deep > main .mainCol article.page .alignleft {
  float: none;
  display: block;
  margin: 0 auto; }
body.deep > main .mainCol article.page img[class*="wp-image-"], body.deep > main .mainCol article.page img[class*="attachment-"] {
  height: auto;
  max-width: 100%; }
body.deep > main .mainCol article.page .clearfix {
  overflow: hidden;
  zoom: 1; }
body.deep > main .mainCol article.page .clearfix:after {
  content: "";
  display: block;
  clear: both; }
body.deep > main .mainCol article.page form input, body.deep > main .mainCol article.page form textarea {
  font-size: 130%;
  padding: 1em 0.5em; }
body.deep > main .mainCol article.page form .label-default {
  font-size: 0.9em;
  color: red; }
body.deep > main .mainCol article.page form .section span.mwform-radio-field {
  padding: 0.5em 0;
  border-bottom: 1px dotted rgba(0, 0, 0, 0.2); }
body.deep > main .mainCol article.page form .section span.mwform-radio-field label a {
  display: block; }
body.deep > main .mainCol article.page form .section span.mwform-radio-field label span {
  vertical-align: super; }
body.deep > main .mainCol article.page form .section span.mwform-radio-field label input.checkbox {
  width: 0.8em;
  height: 0.8em;
  border: 1px solid gray;
  vertical-align: bottom; }
body.deep > main .mainCol article.page form .agree label a {
  display: block; }
body.deep > main .mainCol article.page form .agree label span {
  vertical-align: super; }
body.deep > main .mainCol article.page form .agree label input.checkbox {
  width: 0.8em;
  height: 0.8em;
  border: 1px solid gray;
  vertical-align: bottom; }
body.deep > main .mainCol article.page form .control-label {
  display: block;
  padding: 1rem 0 0.5rem 0; }
body.deep > main .mainCol article.page form .privacy {
  height: 10em; }
body.deep > main .mainCol article.page form .privacy .inner {
  font-size: 80%; }
body.deep > main .mainCol article.page form .btn.btn-default {
  font-size: 100%;
  padding: 0.5em 1em; }
body.deep > main .mainCol article.page .mw_wp_form_confirm .privacy_title {
  display: none; }
body.deep > main .mainCol article.page .mw_wp_form_confirm .privacy {
  display: none; }
body.deep > main .mainCol article.page .mw_wp_form_confirm .agree {
  display: none; }
body.deep > main .mainCol article.single {
  font-size: 90%;
  /* editor */
  /* img */
  /* clearfix */ }
body.deep > main .mainCol article.single th {
  font-weight: bold; }
body.deep > main .mainCol article.single .btn {
  text-decoration: none;
  color: gray;
  border: 1px solid gray; }
body.deep > main .mainCol article.single .history .line {
  border-left: 3px solid #A8AEC7;
  padding-left: 0;
  position: relative; }
body.deep > main .mainCol article.single .history .line:after {
  content: "●";
  margin-left: -0.58em;
  color: #263573;
  text-shadow: 0 0 3px white; }
body.deep > main .mainCol article.single .history tr:first-child .line:before {
  border-top: 1px solid #DEE2E6;
  content: "";
  display: block;
  height: 17px;
  width: 1rem;
  background-color: white;
  position: absolute;
  top: -1px;
  left: -4px; }
body.deep > main .mainCol article.single a {
  color: #263573;
  text-decoration: underline; }
body.deep > main .mainCol article.single a:hover {
  text-decoration: none; }
body.deep > main .mainCol article.single .aligncenter {
  display: block;
  margin: 0 auto; }
body.deep > main .mainCol article.single .alignright {
  float: right; }
body.deep > main .mainCol article.single .alignleft {
  float: left; }
body.deep > main .mainCol article.single h1, body.deep > main .mainCol article.single h2, body.deep > main .mainCol article.single h3, body.deep > main .mainCol article.single h4, body.deep > main .mainCol article.single h5, body.deep > main .mainCol article.single h6 {
  font-size: 130%; }
body.deep > main .mainCol article.single h1.postTitle {
  font-size: 160%; }
body.deep > main .mainCol article.single h4 {
  font-size: 130%; }
body.deep > main .mainCol article.single .postMeta {
  font-size: 80%; }
body.deep > main .mainCol article.single .postMeta time {
  padding-right: 1em; }
body.deep > main .mainCol article.single div.wrap {
  padding: 2rem 0 0 0; }
body.deep > main .mainCol article.single div.wrap h4 {
  padding-bottom: 0; }
body.deep > main .mainCol article.single p {
  padding: 0.5rem 0; }
body.deep > main .mainCol article.single .president_name {
  text-align: center;
  font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 1.3rem;
  font-weight: bold; }
body.deep > main .mainCol article.single .president_name span {
  font-size: 1rem;
  margin-right: 1em; }
body.deep > main .mainCol article.single p {
  display: block;
  margin: 1em 0; }
body.deep > main .mainCol article.single strong {
  font-weight: bold; }
body.deep > main .mainCol article.single em {
  font-style: italic; }
body.deep > main .mainCol article.single blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 40px;
  -webkit-margin-end: 40px; }
body.deep > main .mainCol article.single .aligncenter {
  display: block;
  margin: 0 auto; }
body.deep > main .mainCol article.single .alignright {
  float: right; }
body.deep > main .mainCol article.single .alignleft {
  float: left; }
body.deep > main .mainCol article.single img[class*="wp-image-"], body.deep > main .mainCol article.single img[class*="attachment-"] {
  height: auto;
  max-width: 100%; }
body.deep > main .mainCol article.single .clearfix {
  overflow: hidden;
  zoom: 1; }
body.deep > main .mainCol article.single .clearfix:after {
  content: "";
  display: block;
  clear: both; }
body.deep > main .mainCol article.store_list iframe {
  width: 100%; }
body.deep > main .mainCol article.store_list .search_nav_btn {
  display: block;
  width: 100%;
  text-align: center;
  margin-bottom: 0.3em;
  background-color: #263573;
  color: white;
  font-weight: bold;
  font-size: 1.5rem;
  padding: 0.5em 0; }
body.deep > main .mainCol article.store_list .search_nav {
  display: none;
  padding: 0.5em;
  background-color: #eee;
  -moz-border-radius: 0.5em;
  -webkit-border-radius: 0.5em;
  border-radius: 0.5em; }
body.deep > main .mainCol article.store_list h2 {
  text-align: center;
  padding: 2rem;
  font-size: 1.8rem;
  font-weight: bold; }
body.deep > main .mainCol article.store_list nav .input-group {
  display: block; }
body.deep > main .mainCol article.store_list nav .input-group select, body.deep > main .mainCol article.store_list nav .input-group input {
  width: 100%;
  font-size: 2rem;
  height: auto; }
body.deep > main .mainCol article.store_list nav .input-group-btn button {
  padding: 1rem; }
body.deep > main .mainCol article.store_list nav .input-group-btn button i {
  font-size: 2.5rem !important; }
body.deep > main .mainCol article.store_list nav .input-group-btn button:nth-child(1) {
  width: 80%; }
body.deep > main .mainCol article.store_list nav .input-group-btn button:nth-child(2) {
  width: 20%; }
body.deep > main .mainCol article.store_list nav .txtlink {
  font-size: 1.5rem;
  padding-bottom: 1rem;
  line-height: 2em; }
body.deep > main .mainCol article.store_list nav .txtlink span {
  font-weight: bold;
  margin-right: 2em;
  display: block; }
body.deep > main .mainCol article.store_list nav .txtlink a {
  color: gray;
  padding: 0.1em 0.4em;
  text-decoration: none;
  display: inline-block;
  background-color: white;
  border: 2px solid gray;
  margin: 0.2em;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px; }
body.deep > main .mainCol article.store_list nav .txtlink a:hover {
  text-decoration: none; }
body.deep > main .mainCol article.store_list nav .txtlink a.active {
  background-color: gray;
  color: white; }
body.deep > main .mainCol article.store_list nav .form button {
  background-color: white;
  border: 1px solid #CED4DA;
  margin-left: -1px;
  float: left;
  display: block;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0; }
body.deep > main .mainCol article.store_list nav .form button:last-child {
  -moz-border-radius: 0 0.25rem 0.25rem 0;
  -webkit-border-radius: 0;
  border-radius: 0 0.25rem 0.25rem 0; }
body.deep > main .mainCol article.store_list table.table {
  display: block; }
body.deep > main .mainCol article.store_list table.table thead {
  display: none; }
body.deep > main .mainCol article.store_list table.table tbody {
  width: 100%;
  display: block; }
body.deep > main .mainCol article.store_list table.table tr {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 4rem;
  padding: 0;
  border-bottom: 1px solid #ccc;
  position: relative; }
body.deep > main .mainCol article.store_list table.table tr.stripe {
  background-color: white; }
body.deep > main .mainCol article.store_list table.table tr th {
  font-size: 1.5rem; }
body.deep > main .mainCol article.store_list table.table tr td {
  display: inline;
  border-top: none;
  font-size: 1.2rem;
  padding: 0; }
body.deep > main .mainCol article.store_list table.table tr td strong {
  font-weight: bold; }
body.deep > main .mainCol article.store_list table.table tr td.thumb {
  float: left; }
body.deep > main .mainCol article.store_list table.table tr td.store {
  display: inline;
  position: absolute;
  top: 0.5em;
  }
body.deep > main .mainCol article.store_list table.table tr td.tel {
  position: absolute;
  bottom: 0.8em;
  right: 0.5em; }
body.deep > main .mainCol article.store_list table.table tr td .address {
  margin-right: 1em;
  display: inline-block; }
body.deep > main .mainCol article.store_list table.table tr td img {
  height: auto; }
body.deep > main .mainCol article.store_list table.table tr td img.thumb {
  width: 60px;
  display: inline-block; }
body.deep > main .mainCol article.store_list table.table tr td:nth-child(1) {
  width: auto; }
body.deep > main .mainCol article.store_list table.table tr td:nth-child(2) {
  width: auto; }
body.deep > main .mainCol article.store_list table.table tr td:nth-child(4) {
  width: auto;
  text-align: right; }
body.deep > main .mainCol article.store_list table.table tr td a {
  color: #263573;
  text-decoration: underline; }
body.deep > main .mainCol article.store_list table.table tr td a:hover {
  text-decoration: none; }
body.deep > main .mainCol article.store_list table.table tr td .pc {
  display: none; }
body.deep > main .mainCol article.store_list table.table tr td .zip {
  display: none; }
body.deep > main .mainCol article.ancorLink .alert {
  border: 1px solid gray;
  margin: 1rem 0;
  padding: 2rem 1rem; }
body.deep > main .mainCol article.ancorLink .act {
  font-weight: bold;
  margin-bottom: 1rem;
  font-size: 1.5rem; }
body.deep > main .mainCol article.ancorLink strong {
  padding: 1em;
  display: block;
  text-align: left;
  border-bottom: 1px dotted gray; }
body.deep > main .mainCol article.ancorLink strong:last-child {
  border-bottom: none; }
body.deep > main .mainCol article.ancorLink strong a {
  font-weight: bold;
  color: #263573;
  display: block;
  font-size: 1.5rem; }
body.deep > main .mainCol .menu-nav_company-container ul li.btn {
  margin: 0.3rem; }
body.deep > main .mainCol .menu-nav_company-container ul li.btn a {
  font-size: 120%; }

/* SP Slider Styles */
#mainViCarousel .carousel-item {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: opacity 2s ease-in-out;
}
.mainVi .sp #mainViCarousel .carousel-item > a > img {
    height: auto;
    max-height: 1023px;
    object-fit: cover;
    width: 100%;
}
.mainVi .sp #mainViCarousel .carousel-item img.kv01 {
    object-position: 50% 20%;
    transform: scale(1);
}
.mainVi .sp #mainViCarousel .carousel-item img.kv02 {
    object-position: 50% 70%;
    transform: scale(1);
}
.mainVi .sp #mainViCarousel .logo-overlay {
    position: absolute;
    top: 71.5%;
    left: 0;
    transform: none;
    width: 90%;
    max-width: 1200px;
    height: auto;
    pointer-events: none;
    z-index: 10;
}
.mainVi .sp #mainViCarousel .logo-overlay img {
    width: 100%;
    height: auto;
}
.mainVi .sp #mainViCarousel .carousel-item .note-overlay {
    position: absolute;
    top: 25.8%;
    left: 9.5%;
    transform: none;
    width: 100%;
    max-width: 1200px;
    height: 100%;
    pointer-events: none;
}
.mainVi .sp #mainViCarousel .carousel-item .note-overlay img {
    position: absolute;
    top: 40%;
    left: 0;
    width: 35%;
    height: auto;
}

/* note-overlay全体の位置調整用 (SP) */
.mainVi .sp #mainViCarousel .carousel-item .note-overlay.note-overlay-adjust {
    /* 必要に応じてtopなどを調整 */
    /* top: 24%; */
}

.mainVi .sp #mainViCarousel .carousel-item .note-overlay .d-flex {
    align-items: flex-start; /* 上揃えにしてmargin-topで個別に調整 */
}

/* 各画像の基本スタイル (SP) */
.mainVi .sp #mainViCarousel .carousel-item .note-overlay img.note-item {
    position: static; /* 既存のabsoluteを解除 */
    width: auto;
    height: 13vw; /* 高さを基準に設定 (画面幅に合わせて調整) */
    margin-right: 5%;
}

/* SP スライド1の各画像位置調整 */
.note-sp-slide1-item1 { margin-top: 44%; }
.note-sp-slide1-item2 { margin-top: 50%; }
.note-sp-slide1-item3 { margin-top: 39.4%; }

/* SP スライド2の各画像位置調整 */
.note-sp-slide2-item1 { margin-top: 45.5%; }
.note-sp-slide2-item2 { margin-top: 37.5%; }
.note-sp-slide2-item3 { margin-top: 48.6%; }

/* SP スライド2の各画像位置調整 */
.note-sp-slide3-item1 { margin-top: 39.2%; }
.note-sp-slide3-item2 { margin-top: 44.2%; }
.note-sp-slide3-item3 { margin-top: 36.1%; }

    
/* --- ▼ SPドロワーメニュー アコーディオン用CSS（アイコンクリックで開閉） --- */
/* サブメニューを持つliを基準点に */
.drawer-nav .menu-item-has-children {
  position: relative;
}

/* aタグの右側にスペースを確保（ボタンとテキストが重ならないように） */
.drawer-nav .menu-item-has-children > a {
  padding-right: 60px; /* ボタンの幅分 */
}

/* 開閉ボタンのスタイル */
.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 60px; /* クリック領域を確保 */
  /* height: 100%; */ /* 親liの高さに依存しないよう、高さを固定値に変更します */
  height: 4.5em; /* メニュー項目(aタグ)の高さに合わせるための概算値です */
  border: none;
  background-color: transparent;
  cursor: pointer;
  padding: 0;
  z-index: 1;
  /* アイコンを垂直・水平方向の中央に配置するために追加 */
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ボタン内の矢印アイコン */
.submenu-toggle::after {
  content: '＋';
  color: white;
  transition: transform 0.3s ease;
  font-size: 2rem; /* プラス記号が見やすいように少し大きくします */
  /* flexboxで中央揃えするため、以前の位置調整は不要になります */
}

/* 開いている状態の矢印を上向きに回転 */
.drawer-nav .menu-item-has-children.menu-open > .submenu-toggle::after {
  /* contentプロパティは変更せず、transformで回転させます */
  transform: rotate(135deg); /* ＋を135度回転させて×のような閉じるアイコンにします */
}

/* サブメニューをデフォルトで非表示に */
.drawer-nav ul.drawer-menu .sub-menu {
  display: none;
  /* 階層を分かりやすくするために少し背景色を変える */
  background-color: rgba(0, 0, 0, 0.15);
}
/* --- ▲ SPドロワーメニュー アコーディオン用CSS --- */

/* コインパーキングページ (page-id-5708) 専用スタイル */
body.page-id-5708 table{
  margin-bottom: 3rem;
  font-size: 1rem;
}
body.page-id-5708 .parkingtitle {
  width: 20%;
  font-weight: bold;
}
body.page-id-5708 .parkingadress {
  width: 60%;
}
body.page-id-5708 .parkinglink {
  font-size: 1rem;
  width: 20%;
}
