/*
Theme Name: pwm2019
Author: 8th-ocean
Author URI: http://www.8th-ocean.co.jp/
Version: 0.1.0
*/

@charset "UTF-8";

@import url("./css/bootstrap.css");
@import url("./css/bootstrap-responsive.css");
@import url("./css/font-awesome.css");
@import url("./css/magnific-popup.css");

/*WP DEFAULT*/

 img.aligncenter
,img.alignnone{ display: block; margin: 0 auto 15px; }
@charset "UTF-8";
@font-face {
  font-family: 'Palatino';
  src: url("fonts/Palatino-bold.woff") format("woff"); }
html {
  height: 101%;
  margin-bottom: 1px; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, p, blockquote, img {
  margin: 0;
  padding: 0; }

ol, ul {
  list-style: none; }

body {
  height: 100%;
  font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, Verdana, Helvetica, sans-serif;
  color: #000;
  font-size: 14px; }

a {
  color: #005DAA;
  text-decoration: underline; }
  a:link, a:visited {
    color: #005DAA;
    text-decoration: underline; }
  a:hover, a:active {
    color: #1B3A69;
    text-decoration: none; }
  a.button {
    border: 1px solid #00818d;
    display: block;
    text-align: center;
    border-radius: 3px;
    padding: 10px;
    font-size: 14px;
    text-decoration: none;
    margin: 5px 0;
    font-weight: bold;
    background: #00B3C3;
    color: #fff;
    transition: .5s; }
    a.button:hover {
      border-color: #00B3C3;
      color: #00B3C3;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,f6f6f6+47,ededed+100;White+3D+%231 */
      background: #ffffff;
      background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
      background: -webkit-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
      background: linear-gradient(to bottom, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=0 ); }
  a.arrow {
    text-decoration: none; }
    a.arrow:before {
      content: "\f0da";
      font-family: FontAwesome;
      font-weight: normal;
      margin-right: 8px; }
  a.outer:after {
    content: "\f08e";
    font-family: FontAwesome;
    font-weight: normal;
    margin-right: 3px; }
  a.pdf:after {
    content: "\f1c1";
    font-family: FontAwesome;
    font-weight: normal;
    margin-right: 3px;
    color: #ff0000; }

.sp_only {
  display: none; }

br.clear {
  clear: both; }

.after_clear:after {
  content: ".";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden; }

section#main {
  padding: 25px 0; }
section#top_login {
  background: url("images/top_login_bg.jpg") center center;
  background-size: cover;
  padding: 40px 0; }
  section#top_login h3 {
    text-align: center;
    font-size: 16px;
    margin-bottom: 10px; }
    section#top_login h3 i.fa {
      display: block;
      color: #005DAA;
      font-size: 40px;
      margin-bottom: 5px; }
  section#top_login a.button {
    margin-bottom: 10px; }
section#top_cover {
  height: 450px;
  position: relative;
  padding: 0;
  background: #4BB7E8 url("images/top_cover_bg.jpg") no-repeat center top;
  background-size: cover; }
  section#top_cover img {
    position: absolute; }
    section#top_cover img.layer1 {
      height: 100%;
      top: 0;
      left: 0; }
    section#top_cover img.layer2 {
      height: 50%;
      top: 20px;
      left: 20px; }

ul.banners li {
  margin-bottom: 15px;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  ul.banners li:last-child {
    margin-bottom: 0; }
  ul.banners li img {
    width: 100%; }

/*FEATURES*/
.feature {
  margin-bottom: 20px;
  line-height: 1.75;
  font-size: 16px; }
  .feature a.ft_title {
    position: relative;
    display: block;
    background: #1b3a69;
    margin-bottom: 10px; }
    .feature a.ft_title img {
      width: 100%; }
    .feature a.ft_title h2 {
      /*display    : none; スライド表示を削除するため*/
      font-family: "Palatino", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "メイリオ", Meiryo, serif;
      position: absolute;
      bottom: 0;
      left: 0;
      background: url("images/ft_title.png") no-repeat center center;
      background-size: cover;
      width: 94%;
      padding: 2% 3% 5%;
      margin: 0;
      line-height: 100%;
      color: #fff;
      font-size: 20px; }
  .feature.ft1 a.ft_title h2 {
    background-position: center top; }
  .feature.ft2 a.ft_title h2 {
    background-position: center 20.0%; }
  .feature.ft3 a.ft_title h2 {
    background-position: center 40.0%; }
  .feature.ft4 a.ft_title h2 {
    background-position: center 60.0%; }
  .feature.ft5 a.ft_title h2 {
    background-position: center 80.0%; }
  .feature.ft6 a.ft_title h2 {
    background-position: center bottom; }

/*重要なお知らせ*/
.notice {
  background: #fff;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  margin-bottom: 20px;
  font-size: 16px;
  border-radius: 5px; }
  .notice h4 {
    background: #005DAA;
    color: #fff;
    font-size: 14px;
    padding: 5px 10px;
    border-radius: 5px 5px 0 0; }
  .notice ul {
    padding: 12px 15px 5px; }

/*TOPページお知らせ*/
.top_info {
  background: #333;
  color: #fff;
  padding: 15px 15px 10px;
  margin-bottom: 25px; }
  .top_info h3 {
    font-family: "Palatino", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "メイリオ", Meiryo, serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 150%; }
  .top_info dl {
    padding: 10px 0 0; }
    .top_info dl dt {
      font-weight: normal;
      padding: 5px 0;
      color: rgba(255, 255, 255, 0.7); }
      .top_info dl dt .new {
        background: rgba(255, 255, 255, 0.2);
        color: #fff;
        padding: 0 5px;
        margin-left: 5px;
        border-radius: 3px; }
    .top_info dl dd {
      font-size: 16px;
      border-bottom: 1px dotted rgba(255, 255, 255, 0.2);
      margin-bottom: 5px;
      padding-bottom: 5px; }
  .top_info a {
    color: #fff;
    text-decoration: none; }
    .top_info a:hover {
      color: #4BB7E8;
      text-decoration: underline; }
  .top_info.sec01 {
    background: #027597; }
  .top_info.sec02 {
    background: #005DAA; }
  .top_info.sec03 {
    background: #1B3A69; }
  .top_info a.more {
    font-family: "Palatino", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "メイリオ", Meiryo, serif;
    display: block;
    text-align: right; }
    .top_info a.more i.fa {
      margin-left: 5px; }

section#pc_header {
  background: #fff; }
  section#pc_header .logo {
    padding: 15px 0; }
    section#pc_header .logo img {
      height: 120px; }
  section#pc_header .container {
    position: relative; }
  section#pc_header ul.pc_header_menu {
    position: absolute;
    right: 0;
    bottom: 15px;
    text-align: right; }
  section#pc_header .pc_balloon {
    position: absolute;
    padding: 5px 10px;
    background: #eee;
    top: 10px;
    right: 270px;
    width: 257px;
    border-radius: 3px; }
    section#pc_header .pc_balloon ul.marquee {
      width: 100%;
      display: block;
      list-style: none;
      line-height: 1;
      position: relative;
      overflow: hidden;
      /* optional styles for appearance */
      height: 20px; }
      section#pc_header .pc_balloon ul.marquee li {
        position: absolute;
        top: -999em;
        left: 0;
        display: block;
        white-space: nowrap; }
  section#pc_header .pc_phone {
    display: inline-block;
    position: absolute;
    top: 5px;
    right: 270px;
    text-align: right;
    font-size: 10px; }
    section#pc_header .pc_phone span {
      display: block;
      font-size: 23px;
      font-weight: bold;
      padding-right: 5px; }
      section#pc_header .pc_phone span::before {
        font-family: 'FontAwesome';
        content: '\f095';
        color: #027597;
        margin-right: 5px;
        font-size: 0.9em; }
  section#pc_header ul.pc_header_banners {
    width: 310px;
    position: absolute;
    right: 565px;
    top: 49px;
    display: flex;
    flex-wrap: wrap; }
    section#pc_header ul.pc_header_banners li {
      padding-left: 10px;
      box-sizing: border-box;
      width: 50%; }

header section#fixed_header ul {
  text-align: right;
  margin-top: 25px; }

section#pc_header ul.pc_header_menu > li, header section#fixed_header ul li {
  position: relative;
  display: inline-block;
  border-right: 1px solid #005DAA;
  padding: 0 20px; }

section#pc_header ul.pc_header_menu > li > a, header section#fixed_header ul li a {
  display: block;
  position: relative;
  text-decoration: none;
  line-height: 150%; }

section#pc_header ul.pc_header_menu > li:last-child, header section#fixed_header ul li:last-child {
  border-right: none;
  padding-right: 0; }

section#pc_header ul.pc_header_menu > li > a::after, header section#fixed_header ul li a::after {
  position: absolute;
  bottom: -10px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #005DAA;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: transform .5s; }

section#pc_header ul.pc_header_menu > li > a:hover::after, header section#fixed_header ul li a:hover::after, section#pc_header ul.pc_header_menu > li.current_page_item a::after, header section#fixed_header ul li.current_page_item a::after {
  transform: scale(1, 1); }

/*子階層（サブメニュー）*/
section#pc_header ul.pc_header_menu > li > ul {
  position: absolute;
  top: 20px;
  left: 0;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  background: #fff;
  min-width: 300px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  border: 2px solid #005daa;
  border-radius: 3px; }
section#pc_header ul.pc_header_menu > li:hover > ul {
  top: 26px;
  visibility: visible;
  opacity: 1;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease; }
section#pc_header ul.pc_header_menu > li > ul > li > a {
  display: block;
  font-weight: normal;
  font-size: 12px;
  padding: 9px 15px;
  text-align: left;
  text-decoration: none;
  border-bottom: 1px dotted #aaa; }
section#pc_header ul.pc_header_menu > li > ul > li:last-child > a {
  border-bottom: 0; }
section#pc_header ul.pc_header_menu > li > ul > li > a:hover {
  background: #005daa;
  color: #fff; }
section#pc_header ul.pc_header_menu > li > ul > li.current_page_item > a {
  color: #000;
  font-weight: bold; }

/*Balloon
section#pc_header ul.pc_header_menu > li > ul:before {
  content: "";
  position: absolute;
  top: -20px;
  left: 50px;
  margin-left: -10px;
  border: 10px solid transparent;
  border-bottom: 10px solid #005daa;
}
*/
.pc_header_serch {
  position: absolute;
  right: 0;
  top: 10px;
  width: 250px; }

.pc_header_en {
  position: absolute;
  right: 0;
  top: 60px; }
  .pc_header_en img {
    width: 35px; }

.pc_header_login {
  position: absolute;
  right: 45px;
  top: 60px; }
  .pc_header_login a {
    display: inline-block;
    background: #ccc;
    text-decoration: none;
    font-weight: bold;
    color: #333;
    border-radius: 5px;
    line-height: 100%;
    padding: 10px 10px 10px 40px;
    font-size: 14px;
    margin-left: 10px;
    position: relative;
    transition: .5s; }
    .pc_header_login a i.fa {
      position: absolute;
      top: 8px;
      left: 10px;
      color: #fff;
      font-size: 20px;
      font-weight: normal; }
    .pc_header_login a.lg1 {
      background: #b7e2f6; }
    .pc_header_login a.lg2 {
      background: #ffaa00; }
    .pc_header_login a.lg3 {
      background: #88D2CA; }
    .pc_header_login a.lg1:hover {
      background: #4bb7e8; }
    .pc_header_login a.lg2:hover {
      background: #f47900; }
    .pc_header_login a.lg3:hover {
      background: #2bbdad; }

section#header_bar {
  background: #1B3A69;
  height: 10px; }

footer {
  padding: 15px 0;
  display: block;
  color: #fff;
  background: #053aa1 url("images/footer_bg.jpg") no-repeat center center;
  background-size: cover; }
  footer a {
    color: #fff;
    text-decoration: none; }
    footer a:link, footer a:visited {
      color: #fff;
      text-decoration: none; }
    footer a:hover {
      color: #4BB7E8;
      text-decoration: underline; }
  footer .logo img {
    margin-bottom: 20px;
    width: 250px; }
  footer h5 {
    margin-bottom: 15px;
    font-size: 16px; }
    footer h5 a {
      color: #4BB7E8 !important; }
  footer ul.footer_sitemap {
    margin-bottom: 25px; }
    footer ul.footer_sitemap li {
      margin-bottom: 10px; }
  footer hr {
    height: 1px;
    border: none;
    background: rgba(255, 255, 255, 0.3);
    margin: 10px 0 25px; }
  footer p {
    margin-bottom: 15px; }
  footer section#footer_policy {
    margin: 15px 0;
    background: #1B3A69;
    padding: 15px 0 10px; }
    footer section#footer_policy nav ul li {
      display: inline-block;
      border-left: 1px solid #fff;
      line-height: 1;
      padding: 0 10px;
      margin: 0 0 10px; }
      footer section#footer_policy nav ul li:first-child {
        border-left: 0;
        padding-left: 0; }

/*パディング*/
.padd5 {
  padding: 5px; }

.padd10 {
  padding: 10px; }

.padd15 {
  padding: 15px; }

.padd20 {
  padding: 20px; }

.padd0_5 {
  padding: 0 5px; }

.padd0_10 {
  padding: 0 10px; }

.padd0_20 {
  padding: 0 20px; }

.padd10_20 {
  padding: 10px 20px; }

.padd-top0 {
  padding-top: 0 !important; }

.padd-top5 {
  padding-top: 5px; }

.padd-top10 {
  padding-top: 10px; }

.padd-top15 {
  padding-top: 15px; }

.padd-top20 {
  padding-top: 20px; }

.padd-bottom5 {
  padding-bottom: 5px; }

.padd-bottom10 {
  padding-bottom: 10px; }

.padd-bottom15 {
  padding-bottom: 15px; }

.padd-bottom20 {
  padding-bottom: 20px; }

/*マージン*/
.marg5 {
  margin: 5px; }

.marg10 {
  margin: 10px; }

.marg20 {
  margin: 20px; }

.marg0_5 {
  margin: 0 5px; }

.marg0_10 {
  margin: 0 10px; }

.marg0_20 {
  margin: 0 20px; }

.marg-top0 {
  margin-top: 0 !important; }

.marg-top5 {
  margin-top: 5px; }

.marg-top10 {
  margin-top: 10px; }

.marg-top15 {
  margin-top: 15px; }

.marg-top20 {
  margin-top: 20px; }

.marg-bottom5 {
  margin-bottom: 5px; }

.marg-bottom10 {
  margin-bottom: 10px; }

.marg-bottom15 {
  margin-bottom: 15px; }

.marg-bottom20 {
  margin-bottom: 20px; }

/*フォント*/
.st {
  font-weight: bold; }

.reg {
  font-weight: normal; }

.fs200 {
  font-size: 200%;
  letter-spacing: 0.01em; }

.fs150 {
  font-size: 150%;
  letter-spacing: 0.01em; }

.fs120 {
  font-size: 120%; }

.fs110 {
  font-size: 110%; }

.fs90 {
  font-size: 90%; }

.fs80 {
  font-size: 80%;
  line-height: 160%; }

.fs70 {
  font-size: 70%;
  line-height: 160%; }

.fs60 {
  font-size: 60%;
  line-height: 160%; }

.fs50 {
  font-size: 50%;
  line-height: 160%; }

.fsblack {
  color: #333; }

.fsred {
  color: #CC4B5B; }

.fsblue {
  color: #005DAA; }

.fsgray {
  color: #afafaf; }

.must {
  display: inline-block;
  background: #eb6110;
  font-weight: bold;
  color: #fff;
  margin-right: 3px;
  padding: 0 5px; }

.alignright {
  text-align: right; }

.aligncenter {
  text-align: center; }

hr {
  height: 1px;
  border: none;
  background: #aaa;
  margin: 15px 0; }

/*Facebook Like BOX レスポンシブ化*/
#fb-root {
  display: none; }

.fb_iframe_widget {
  width: 100% !important;
  background: #fff !important; }
  .fb_iframe_widget span {
    width: 100% !important;
    background: #fff !important; }
    .fb_iframe_widget span iframe[style] {
      width: 100% !important;
      background: #fff !important; }

h3.common {
  position: relative;
  line-height: 100%;
  padding: 0 0 10px;
  font-size: 16px;
  margin-bottom: 10px;
  border-bottom: 1px solid #ccc; }
  h3.common span {
    position: absolute;
    color: #ffb400;
    right: 15px;
    bottom: 8px;
    font-size: 14px;
    font-weight: normal;
    text-shadow: none;
    letter-spacing: 0; }

ul.gallery li {
  width: 33.3%;
  float: left;
  margin-bottom: 5px; }
  ul.gallery li img {
    width: 98%;
    margin: 0 auto;
    border-radius: 4px; }

section#page_footer_contact {
  background: #fff;
  border-radius: 5px;
  margin-bottom: 25px; }
  section#page_footer_contact h4 {
    background: #005DAA;
    border-radius: 5px 5px 0 0;
    color: #fff;
    font-size: 16px;
    padding: 15px 15px 10px;
    margin-bottom: 0; }
  section#page_footer_contact h5 {
    color: #005DAA !important;
    position: relative !important;
    padding: 20px 0 15px 2.5em !important;
    margin: 0 !important;
    border: 0 !important;
    font-size: 18px !important; }
    section#page_footer_contact h5 i.fa {
      position: absolute;
      left: 0;
      top: 16px;
      font-size: 1.8em; }
  section#page_footer_contact p {
    margin-bottom: 0 !important; }

.page_footer_contact_left p, .page_footer_contact_right p {
  padding: 2px 0 2px 35px; }

/*コンテンツページ*/
.single-post h1.post-title {
  color: #005DAA;
  font-family: "Palatino", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "メイリオ", Meiryo, serif;
  padding: 10px 0;
  font-size: 24px; }
.single-post .date {
  font-size: 14px;
  line-height: 100%;
  text-align: right;
  padding-bottom: 25px; }

.single-post-content p {
  margin-bottom: 25px; }

.single-page p {
  margin-bottom: 25px; }

.single-post, .single-page {
  margin-bottom: 25px;
  /*記事内タイトル*/ }
  .single-post h1, .single-post h2, .single-post h3, .single-post h4, .single-post h5, .single-post h6, .single-page h1, .single-page h2, .single-page h3, .single-page h4, .single-page h5, .single-page h6 {
    margin: 1em 0;
    color: #005DAA;
    line-height: 150%;
    font-weight: bold; }
  .single-post h1, .single-page h1 {
    margin: 0 0 1em;
    font-size: 32px; }
  .single-post h2, .single-page h2 {
    margin: 0 0 1em;
    font-size: 28px;
    padding: 0.25em 0;
    color: #005DAA;
    background: transparent;
    border-bottom: solid #005DAA;
    line-height: 100% !important; }
  .single-post h3, .single-page h3 {
    font-size: 26px;
    background: #005DAA;
    color: #fff;
    padding: .5em; }
  .single-post h4, .single-page h4 {
    font-size: 24px;
    color: #005DAA;
    border-bottom: double 5px #005DAA; }
  .single-post h5, .single-page h5 {
    font-size: 22px;
    color: #005DAA; }
  .single-post h6, .single-page h6 {
    font-size: 20px;
    color: #005DAA; }

h4.line {
  background: none;
  color: #005DAA;
  border-bottom: 1px dotted #aaa;
  padding-bottom: 5px; }

.icons a, .icons .new {
  text-decoration: none;
  font-size: 11px;
  padding: 0 5px;
  margin-right: 3px; }
.icons a {
  border: 1px solid #005DAA;
  border-radius: 3px;
  background: #fff; }
.icons .new {
  border: 1px solid #ff0000;
  border-radius: 3px;
  background: #ff0000;
  color: #fff; }

/* 前後記事ページング */
ul.paging {
  font-size: 12px;
  margin-top: 20px;
  border-top: 1px dotted #aaa; }
  ul.paging li {
    width: 50%; }
    ul.paging li.prev {
      float: left; }
    ul.paging li.emptynext a {
      border-right: 1px dotted #aaa; }
    ul.paging li.next {
      text-align: right;
      float: right; }
    ul.paging li a {
      display: block;
      position: relative;
      text-decoration: none; }
    ul.paging li.prev a {
      padding: 8px 10px 5px 20px; }
    ul.paging li.next a {
      padding: 8px 20px 5px 10px;
      border-left: 1px dotted #aaa; }
    ul.paging li a i {
      position: absolute;
      font-size: 16px;
      top: 10px; }
    ul.paging li.prev a i {
      left: 0; }
    ul.paging li.next a i {
      right: 0; }

.textwidget {
  margin-bottom: 15px; }

/*投稿一覧*/
dl.posts dt {
  font-size: 11px;
  font-weight: normal; }
  dl.posts dt .new {
    background: #ff0000;
    color: #fff;
    padding: 0 5px;
    margin-left: 5px;
    border-radius: 3px; }
dl.posts dd {
  border-bottom: 1px dotted #aaa;
  margin-bottom: 10px;
  padding: 5px 0; }
  dl.posts dd a {
    text-decoration: none;
    font-size: 14px; }

/*FIXED HEADER*/
header .fixed_end {
  display: none; }
header section#fixed_header {
  position: fixed;
  width: 100%;
  height: 65px;
  background: rgba(255, 255, 255, 0.9);
  z-index: 9999;
  box-shadow: 0 0 2px #bbb; }
  header section#fixed_header .logo img {
    float: left;
    height: 55px;
    padding: 5px 0 5px 0; }
  header section#fixed_header a#menu_bars, header section#fixed_header a#sp_search, header section#fixed_header a#sp_en, header section#fixed_header a#sp_phone {
    display: none; }

/*下層ページタイトル*/
body#sub section#pagetitle {
  background: #005DAA url("images/pagetitle_bg.jpg") no-repeat center top;
  background-size: cover; }
  body#sub section#pagetitle h1, body#sub section#pagetitle p {
    font-family: "Palatino", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "メイリオ", Meiryo, serif;
    color: #fff;
    line-height: 120%;
    padding: 30px 0 60px;
    text-shadow: 0 1px 1px #000;
    font-size: 32px;
    font-weight: bold; }
  body#sub section#pagetitle h1 span, body#sub section#pagetitle p span {
    font-size: 14px;
    font-weight: normal;
    margin-left: 5px;
    line-height: 100%; }

/*---ウィジェット---*/
h3.disable {
  display: none; }

/*TOP用*/
/*SUB用*/
.sub_right_widget {
  margin-bottom: 15px; }

/*Tags*/
div.tags {
  margin: 0 10px;
  text-align: right; }
  div.tags h4 {
    color: #999;
    font-size: 12px;
    margin-bottom: 5px; }
  div.tags a {
    font-size: 12px;
    display: inline-block;
    background: #fff;
    padding: 2px 10px;
    margin: 0 0 5px 5px;
    border: 1px solid #005DAA;
    border-radius: 3px;
    text-decoration: none; }
    div.tags a:hover {
      background: #005DAA;
      color: #fff; }

/*画像リスト*/
ul.gal2, ul.gal3 {
  margin-left: -1%; }
ul.gal2 li, ul.gal3 li {
  float: left;
  margin: 0 0 7px 1%; }
ul.gal2 li img, ul.gal3 li img {
  width: 100%; }
ul.gal2 li {
  width: 49%; }
ul.gal3 li {
  width: 32.3%; }

/*ページネーション*/
.pagenation {
  font-size: 0;
  text-align: center;
  margin: 20px 0 30px; }
  .pagenation .page-numbers {
    font-size: 12px;
    display: inline-block;
    border: solid #aaa;
    border-width: 1px 0 1px 1px;
    margin: 0;
    padding: 6px 10px;
    text-decoration: none;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,e5e5e5+100;White+3D */
    background: #ffffff;
    /* Old browsers */
    background: -moz-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e5e5e5',GradientType=0 );
    /* IE6-9 */ }
  .pagenation .current {
    background: #005DAA;
    border-color: #005DAA;
    color: #fff; }
  .pagenation .page-numbers:first-child {
    border-radius: 5px 0 0 5px; }
  .pagenation .page-numbers:last-child {
    border-width: 1px;
    border-radius: 0 5px 5px 0; }
  .pagenation a:hover {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#e5e5e5+0,ffffff+100 */
    background: #e5e5e5;
    /* Old browsers */
    background: -moz-linear-gradient(top, #e5e5e5 0%, #ffffff 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #e5e5e5 0%, #ffffff 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #e5e5e5 0%, #ffffff 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e5e5', endColorstr='#ffffff',GradientType=0 );
    /* IE6-9 */ }

/*ぱんくずリスト*/
section#breadcrumb {
  margin: -25px 0 25px 0;
  padding: 10px 0;
  font-size: 11px;
  color: #777; }
  section#breadcrumb ul li {
    display: inline-block; }
    section#breadcrumb ul li .fa {
      margin: 0 8px; }

/*サブページ一覧*/
.sub_pages h3, .sub_right_widget h3 {
  font-family: "Palatino", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "メイリオ", Meiryo, serif;
  font-weight: normal;
  color: #005DAA;
  font-size: 20px;
  border-top: 10px solid #005DAA;
  padding: 0 0 10px;
  line-height: 150%; }

.sub_pages ul li a {
  border-bottom: 1px dotted #aaa;
  display: block;
  padding: 12px 5px 10px;
  text-decoration: none; }
  .sub_pages ul li a:hover {
    background: #005DAA;
    border-color: #005DAA;
    color: #fff; }
.sub_pages ul li.page_item_has_children {
  border-bottom: 1px dotted #aaa; }
  .sub_pages ul li.page_item_has_children > a {
    border-bottom: none !important; }
.sub_pages ul li ul.children {
  font-size: 0; }
  .sub_pages ul li ul.children li {
    width: 50%;
    display: inline-block;
    font-size: 11px;
    text-align: center; }
    .sub_pages ul li ul.children li a {
      border-bottom: none !important;
      line-height: 100%; }
.sub_pages ul li.current_page_item a {
  font-weight: bold;
  color: #000; }
  .sub_pages ul li.current_page_item a:hover {
    color: #fff; }

.sub_right_widget ul li {
  border-bottom: 1px dotted #aaa;
  padding: 10px 5px 5px;
  color: #777; }
  .sub_right_widget ul li a {
    text-decoration: none;
    margin-right: 5px; }

/*フォームページ用CSS*/
body#form header, body#form footer {
  background: #1B3A69;
  text-align: center; }
body#form header .logo {
  height: 80px; }
  body#form header .logo img {
    height: 100%; }
body#form footer {
  margin: 25px 0 0;
  padding: 10px 0; }
body#form section#form_main {
  font-size: 16px;
  line-height: 1.75; }
  body#form section#form_main h1 img {
    width: 100%; }
body#form dl {
  margin-top: 20px; }
body#form dt {
  color: #005DAA;
  border-top: 1px solid #1B3A69;
  border-bottom: 1px dotted #1B3A69;
  padding: 8px 0; }
  body#form dt.bt {
    color: #fff;
    background: #1B3A69;
    border-top: 0;
    border-bottom: 0;
    padding: 5px 10px; }
body#form dd {
  padding: 10px 5px 15px; }

form.wpcf7-form input {
  font-size: 16px !important; }
  form.wpcf7-form input select {
    font-size: 16px !important; }
form.wpcf7-form .wpcf7-list-item {
  display: block; }
form.wpcf7-form .list-inline .wpcf7-list-item {
  display: inline;
  margin-right: 5px; }
form.wpcf7-form input[type=text], form.wpcf7-form input[type=email] {
  width: 94%; }
form.wpcf7-form textarea {
  width: 94%; }
form.wpcf7-form input[type=text].text_s {
  width: 40px; }
form.wpcf7-form input[type=text].text_m {
  width: 100px; }
form.wpcf7-form input[type=submit] {
  border: none;
  border-radius: 5px;
  background: #1B3A69;
  color: #fff;
  padding: 10px 20px;
  line-height: 100%;
  margin: 0 10px 10px; }
form.wpcf7-form input[type=button] {
  border: none;
  border-radius: 5px;
  background: #1B3A69;
  color: #fff;
  padding: 10px 20px;
  line-height: 100%;
  margin: 0 10px 10px;
  margin: 0 20px 10px 0; }
form.wpcf7-form .wpcf7-radio, form.wpcf7-form .wpcf7-checkbox {
  display: inline;
  margin-top: 10px; }
form.wpcf7-form label {
  display: inline;
  position: relative;
  padding-left: 1.5em; }
  form.wpcf7-form label input {
    position: absolute;
    top: 3px;
    left: 0;
    margin: auto; }

.form_privacy {
  overflow-y: scroll;
  height: 300px;
  border: 1px solid #ccc;
  padding: 5px; }
  .form_privacy p {
    padding: 0 0 10px; }
  .form_privacy h5 {
    padding: 0 0 10px;
    font-size: 12px; }
  .form_privacy ol {
    list-style-type: decimal;
    padding: 0 0 10px 20px; }

ul.childs li {
  line-height: 1.75; }
  ul.childs li img {
    margin: auto;
    width: 60px;
    display: block; }
  ul.childs li h3 {
    background: none;
    padding: 0;
    margin: 15px 0;
    line-height: 150%;
    font-size: 16px;
    text-align: center;
    border: 0; }
ul.childs_interview li a {
  clear: both;
  background: #027597;
  display: block;
  margin-bottom: 15px;
  transition: .5s;
  overflow: auto; }
  ul.childs_interview li a:hover {
    background: #00B3C3; }
ul.childs_interview li img {
  float: left;
  width: 20%; }
ul.childs_interview li div {
  color: #fff;
  float: right;
  width: 76%;
  padding-right: 1%; }
  ul.childs_interview li div h4 {
    font-size: 18px;
    color: #fff;
    background: none;
    border-bottom: 0; }
ul.ico_indent {
  padding: 20px 0; }
  ul.ico_indent > li {
    position: relative;
    padding: 0 0 15px 75px;
    border-bottom: 1px dotted #aaa;
    margin-bottom: 15px; }
    ul.ico_indent > li h3 {
      background: none;
      color: #005DAA;
      padding-top: 0;
      font-size: 24px; }
  ul.ico_indent li img.ico {
    width: 60px;
    position: absolute;
    top: 0;
    left: 0; }
ul.ico_dot li {
  position: relative;
  padding: 0 0 7px 1.5em;
  line-height: 1.75; }
  ul.ico_dot li:before {
    position: absolute;
    content: "\f111";
    font-family: FontAwesome;
    top: 1px;
    left: 0;
    color: #00B3C3; }

ol.num, .single-post-content ol {
  margin: 5px 0 10px 3.5em;
  counter-reset: number;
  list-style: none; }
  ol.num li, .single-post-content ol li {
    line-height: 1.75;
    position: relative;
    margin-bottom: 7px; }
    ol.num li::before, .single-post-content ol li::before {
      position: absolute;
      top: 7px;
      left: -3.5em;
      counter-increment: number;
      content: "（" counter(number) "）";
      color: #027597;
      display: inline-block;
      width: 3.5em;
      height: 10px;
      line-height: 100%;
      text-align: center; }

ol.kakko {
  margin-left: 35px; }
  ol.kakko li {
    list-style-type: none;
    counter-increment: cnt;
    position: relative;
    line-height: 1.75;
    margin-bottom: 7px; }
    ol.kakko li:before {
      content: "(" counter(cnt) ")";
      display: inline-block;
      width: 25px;
      /* サイトに合せて調整 */
      text-align: right;
      position: absolute;
      top: 0;
      left: -35px; }

table.common, .single-post-content table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 20px;
  font-size: .9em;
  line-height: 1.75; }
  table.common th, table.common td, .single-post-content table th, .single-post-content table td {
    padding: 10px;
    border: 1px solid #1B3A69; }
  table.common th, .single-post-content table th {
    background: #005DAA;
    color: #fff; }
  table.common td, .single-post-content table td {
    background: #fff; }

/* 仲介業者一覧用 */

table.fplist {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  margin-bottom: 20px;
  font-size: .9em;
  line-height: 1.75; }
  table.fplist th {
    padding: 10px;
    border: 1px solid #1B3A69; }
  table.fplist td {
    padding: 5px;
    border: 1px solid #1B3A69; }  
  table.fplist th {
    background: #005DAA;
    color: #fff; }
  table.fplist td {
    background: #fff; }

ul.dot, .single-post-content ul {
  margin-bottom: 20px; }
  ul.dot li, .single-post-content ul li {
    position: relative;
    padding-left: 1.5em;
    line-height: 1.75;
    margin-bottom: 7px; }
    ul.dot li::before, .single-post-content ul li::before {
      position: absolute;
      left: 0;
      top: 1px;
      color: #44A5D1;
      font-family: 'FontAwesome';
      content: '\f111'; }

table.list {
  width: 100%;
  border-bottom: 1px solid #ebebeb; }
  table.list tr {
    border-top: 1px solid #ebebeb; }
  table.list th {
    background: #fafafa;
    font-size: 90%;
    padding: 0 8px; }
  table.list td {
    background: #fff;
    padding: 8px; }
  table.list th {
    text-align: left; }
  table.list td {
    text-align: left; }
    table.list td.st {
      color: #005DAA; }

.gmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  margin-bottom: 15px; }
  .gmap iframe, .gmap object, .gmap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

dl.faq dt {
  background: url(images/ico_faq_q.png) no-repeat left top;
  background-size: 30px;
  padding: 5px 0 10px 35px; }
dl.faq dd {
  background: #fff;
  padding: 15px;
  border-radius: 5px;
  margin-bottom: 15px; }
dl#panel dl.faq dd {
  background: #ebebeb; }

.box {
  background: #fff;
  padding: 15px; }

dl#panel > dt {
  position: relative;
  font-size: 16px;
  margin-top: 10px;
  cursor: pointer;
  padding: 15px;
  font-weight: bold;
  border: 1px solid #ccc;
  color: #005DAA;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,e5e5e5+100;White+3D */
  background: white;
  /* Old browsers */
  background: -moz-linear-gradient(top, white 0%, #e5e5e5 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, white 0%, #e5e5e5 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, white 0%, #e5e5e5 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e5e5e5',GradientType=0 );
  /* IE6-9 */
  border-radius: 5px; }
  dl#panel > dt:after {
    content: "\f107";
    font-family: FontAwesome;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    color: #aaa;
    font-weight: normal;
    font-size: 15px; }
  dl#panel > dt:hover {
    color: #333;
    border-color: #00B3C3;
    background: #fff; }
  dl#panel > dt.open {
    color: #333;
    border-color: #00B3C3;
    background: #fff;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; }
    dl#panel > dt.open:after {
      content: "\f106"; }
dl#panel > dd {
  display: none;
  margin: 0;
  padding: 15px;
  background: #fff;
  color: #333;
  line-height: 180%;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px; }

ul#toc {
  background: #fff;
  border-radius: 5px;
  padding: 10px 15px; }
  ul#toc:before {
    display: block;
    content: '目次';
    background: #005DAA;
    color: #fff;
    border-radius: 3px 3px 0 0;
    margin: -10px -15px 10px -15px;
    padding: 3px 10px; }
  ul#toc li a {
    font-size: 14px;
    text-decoration: none; }
    ul#toc li a:before {
      content: "\f0da";
      font-family: FontAwesome;
      font-weight: normal;
      margin-right: 8px; }

/*検索系*/
#word_search input[type=text] {
  width: 75%;
  height: 28px;
  padding: 0 2%;
  border-radius: 0;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  margin: 0;
  border: solid #ddd;
  border-width: 1px 0 1px 1px;
  background: #fff;
  color: #000;
  font-size: 16px; }
#word_search input[type=submit] {
  width: 20%;
  height: 30px;
  border: none;
  border-radius: 0;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  background: #005DAA;
  color: #fff; }

.s_result {
  border: 2px solid #ebebeb;
  padding: 8px 10px;
  border-radius: 5px;
  margin-bottom: 20px; }

ul.results li {
  border-bottom: 1px dotted #aaa;
  margin-bottom: 15px;
  padding: 8px 0;
  font-size: 16px;
  font-weight: bold; }
  ul.results li span {
    color: #777;
    font-size: 12px;
    font-weight: normal;
    margin-left: 5px; }
ul.ifalinks li {
  background: #EBEBEB;
  border-radius: 5px;
  padding: 10px 0;
  text-align: center; }
  ul.ifalinks li div {
    padding: 10px 10px 0; }

.alert_msg, .home_alert_msg {
  border: 2px solid #ff0000;
  color: #ff0000;
  font-weight: bold;
  background: #fff;
  text-align: center;
  margin-bottom: 25px;
  padding: 10px;
  border-radius: 3px; }

.home_alert_msg li {
  font-size: 16px;
  line-height: 2; }
  .home_alert_msg li::before {
    font-family: 'FontAwesome';
    content: '\f071';
    margin-right: 5px;
    font-weight: normal; }

blockquote {
  position: relative;
  background: #fff;
  border: 1px solid #ddd;
  padding: 40px 25px;
  margin-bottom: 25px;
  font-style: italic;
  color: #666; }
  blockquote cite {
    margin-top: 15px;
    display: block;
    text-align: right;
    font-weight: bold; }
  blockquote::before, blockquote::after {
    position: absolute;
    font-family: 'FontAwesome';
    color: #ddd;
    font-size: 18px; }
  blockquote::before {
    top: 10px;
    left: 15px;
    content: '\f10d'; }
  blockquote::after {
    bottom: 10px;
    right: 15px;
    content: '\f10e'; }

ul.side_banners li {
  text-align: center;
  margin-bottom: 15px; }
  ul.side_banners li img {
    width: 100%; }

dl.history {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 25px; }
  dl.history dt, dl.history dd {
    box-sizing: border-box; }
  dl.history dt {
    position: relative;
    width: 25%;
    padding: 1em 0; }
    dl.history dt span {
      position: relative;
      background: #ebf2f8;
      display: inline-block;
      font-size: 1.1em;
      padding: 10px;
      line-height: 1; }
    dl.history dt::before {
      z-index: -1;
      display: block;
      position: absolute;
      content: '';
      top: 0;
      left: 25%;
      height: 100%;
      width: 1px;
      background: #1B3A69; }
    dl.history dt::after {
      z-index: -1;
      display: block;
      position: absolute;
      content: '';
      top: 2.1em;
      right: 0;
      height: 1px;
      width: 100%;
      background: #1B3A69; }
  dl.history dd {
    padding: 1.5em 0 1.5em 0;
    width: 75%; }
    dl.history dd p {
      position: relative;
      margin-bottom: 1em;
      padding-left: 1.5em; }
      dl.history dd p::before {
        font-family: 'FontAwesome';
        content: '\f111';
        position: absolute;
        top: 0;
        left: 0;
        color: #1B3A69; }

/*---------------- 画面サイズ別のCSS -------------------------------------*/
/* 画面サイズが1200以上の時のCSS（ワイドPCのみ）--------------------------*/
@media (min-width: 1200px) {
  section#page_footer_contact .page_footer_contact_left {
    margin-top: 15px;
    float: left;
    width: 37%;
    padding-right: 3%;
    border-right: 1px dotted #aaa; }
  section#page_footer_contact .page_footer_contact_right {
    margin-top: 15px;
    float: right;
    width: 56%; }

  .single-page, .single-post {
    padding-right: 50px; }

  section#page_footer_contact {
    margin-right: 50px; }

  section#top_banners {
    display: none; } }
/* 画面サイズが1199以下の時のCSS（コンパクトPC以下）----------------------*/
@media (max-width: 1199px) {
  section#page_footer_contact .page_footer_contact_right {
    margin-top: 15px;
    border-top: 1px dotted #aaa; }

  section#pc_header ul.pc_header_banners {
    display: none; }

  section#top_banners {
    padding: 40px 0 15px; }
    section#top_banners img {
      width: 100%; } }
/* 画面サイズが768以上の時のCSS（PCのみ）---------------------------------*/
@media (min-width: 768px) {
  /*---固定ページ----*/
  body#sub {
    background: url("images/bg_sub.png") repeat-y left top;
    background-size: 0; }

  img.pc_right {
    float: right;
    width: 40%;
    padding: 0 0 30px 25px; }
  img.pc_left {
    float: left;
    width: 40%;
    padding: 0 25px 30px 0; }
  img.round {
    border-radius: 10px; }

  body#form section#form_main {
    width: 750px;
    margin: 0 auto;
    margin-top: 25px;
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); }
    body#form section#form_main h1 img {
      border-radius: 5px 5px 0 0; }

  .single-page, .single-post {
    padding-right: 30px;
    font-size: 16px;
    line-height: 2; }

  section#page_footer_contact {
    margin-right: 30px; }

  ul.childs {
    margin: 0 0 0 -2%;
    /*横並びの高さをあわせる*/
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    ul.childs li {
      float: left;
      margin: 0 0 2% 2%;
      width: 45%;
      background: #fff;
      padding: 1.5%; }
    ul.childs:after {
      content: ".";
      clear: both;
      height: 0;
      display: block;
      visibility: hidden; }
  ul.col2 {
    margin: 0 0 0 -2%; }
    ul.col2 li {
      float: left;
      width: 48%;
      margin: 0 0 0 2%; }
  ul.col3 {
    margin: 0 0 0 -1.3%; }
    ul.col3 li {
      float: left;
      width: 32%;
      margin: 0 0 0 1.3%; }

  dl.table {
    overflow: auto;
    border-bottom: 1px dotted #aaa; }
    dl.table dt {
      width: 30%;
      float: left;
      clear: both;
      padding: 15px 0;
      border-top: 1px dotted #aaa;
      font-size: 12px;
      color: #005DAA;
      text-align: center; }
    dl.table dd {
      width: 70%;
      float: left;
      padding: 15px 0;
      border-top: 1px dotted #aaa; }
  dl.arrow {
    overflow: auto;
    border-bottom: 1px dotted #aaa;
    margin-bottom: 10px; }
    dl.arrow > dt {
      position: relative;
      width: 25%;
      float: left;
      clear: both;
      padding: 10px 2% 10px 3%;
      border-top: 1px dotted #aaa;
      color: #005DAA; }
      dl.arrow > dt:before {
        content: "\f138";
        font-family: FontAwesome;
        position: absolute;
        top: 10px;
        left: 0;
        color: #005DAA;
        font-weight: normal;
        font-size: 15px; }
    dl.arrow > dd {
      width: 70%;
      float: left;
      padding: 10px 0;
      border-top: 1px dotted #aaa; }
      dl.arrow > dd dl dt, dl.arrow > dd dl dd {
        margin-bottom: 5px; }

  .side_img_L {
    float: left;
    width: 25%;
    margin-bottom: 25px;
    text-align: center; }

  .side_img_R {
    float: right;
    width: 72%;
    margin-bottom: 25px; }
    .side_img_R h3 {
      color: #005DAA;
      font-size: 24px;
      background: none;
      padding: 0;
      margin-top: 0;
      border: 0; }

  ul#toc li {
    width: 47%;
    display: inline-block;
    padding: 1%; }
  ul.ifalinks {
    margin: 0 0 0 -1%;
    overflow: auto;
    /*横並びの高さをあわせる*/
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    ul.ifalinks li {
      float: left;
      margin: 0 0 1% 1%;
      width: 49%; }

  section#home_flex {
    padding: 25px 0; }
    section#home_flex .container {
      display: flex;
      flex: wrap; }
      section#home_flex .container .home_main {
        width: 78%;
        margin-right: 2%; }
        section#home_flex .container .home_main .features {
          display: flex;
          flex-wrap: wrap;
          margin: 0 0 0 -2%; }
          section#home_flex .container .home_main .features .feature {
            width: 48%;
            margin-left: 2%; }
      section#home_flex .container .home_sub {
        width: 20%; }
        section#home_flex .container .home_sub .side_sticky {
          position: sticky;
          top: 80px; } }
/* 画面サイズが980以上の時のCSS（FIXEDヘッダーを表示させる境界線） */
@media (min-width: 980px) {
  div.hidden_search {
    display: none !important; }

  .sp_login {
    display: none; }

  footer ul.sp_footer_banners {
    display: none; } }
/* 画面サイズが979以下の時のCSS（iPad？）---------------------------------*/
@media (max-width: 979px) {
  section#pc_header {
    display: none; }

  header section#fixed_header .logo img {
    height: 55px;
    padding: 5px 0 5px 15px; }
  header .fixed_end {
    display: block;
    background: #fff; }
  header section#fixed_header, header .fixed_end {
    height: 65px; }
  header section#fixed_header .container {
    position: relative; }
  header section#fixed_header a#menu_bars {
    text-decoration: none;
    display: block;
    cursor: pointer;
    height: 50px;
    width: 50px;
    position: absolute;
    top: 0;
    right: 0;
    text-align: center;
    line-height: 150%; }
    header section#fixed_header a#menu_bars i#menu_close {
      display: none; }
  header section#fixed_header a.menu_bars_close i#menu_open {
    display: none; }
  header section#fixed_header a.menu_bars_close i#menu_close {
    display: block !important; }
  header section#fixed_header a#menu_bars i {
    font-size: 25px;
    margin-top: 20px;
    display: block; }
  header section#fixed_header ul {
    display: none;
    height: auto;
    float: none;
    border: none;
    position: fixed;
    top: 65px;
    left: 0;
    width: 100%;
    margin: 0; }
    header section#fixed_header ul li {
      float: none;
      display: block;
      padding: 0;
      border: none; }
      header section#fixed_header ul li a {
        height: auto;
        padding: 25px 0;
        background: rgba(27, 58, 105, 0.9);
        border: 1px solid #1B3A69;
        border-width: 0 0 1px 0;
        text-align: center;
        color: #fff; }
        header section#fixed_header ul li a::after {
          display: none !important; }
  header section#fixed_header a#sp_search {
    text-decoration: none;
    display: block;
    cursor: pointer;
    height: 50px;
    width: 40px;
    position: absolute;
    top: 0;
    right: 50px;
    text-align: center;
    line-height: 150%; }
    header section#fixed_header a#sp_search i {
      font-size: 23px;
      margin-top: 20px;
      display: block; }
  header section#fixed_header a#sp_en {
    display: block;
    position: absolute;
    top: 17px;
    right: 140px;
    width: 30px;
    text-align: center; }
    header section#fixed_header a#sp_en img {
      width: 30px; }
  header section#fixed_header a#sp_phone {
    text-decoration: none;
    display: block;
    cursor: pointer;
    height: 50px;
    width: 40px;
    position: absolute;
    top: 0;
    right: 90px;
    text-align: center;
    line-height: 150%; }
    header section#fixed_header a#sp_phone i {
      font-size: 24px;
      margin-top: 21px;
      display: block; }
  header section#fixed_header .hidden_search {
    display: none;
    position: fixed;
    top: 65px;
    left: 0;
    width: 90%;
    padding: 5%;
    background: rgba(255, 255, 255, 0.9); }

  section#top_cover {
    height: 300px; }

  ul.childs_interview li div {
    font-size: 10px;
    line-height: 130%;
    padding-bottom: 10px; }
    ul.childs_interview li div h4 {
      font-size: 12px;
      margin-bottom: 10px; }
  ul#toc li {
    width: 100%;
    display: block;
    padding: 1%; }

  .feature {
    font-size: 14px; }
    .feature a.ft_title h2 {
      font-size: 18px; }

  .sp_login {
    margin-bottom: 15px; }
    .sp_login a {
      background: #88D2CA;
      display: block;
      padding: 15px;
      text-align: center;
      border-radius: 5px;
      font-weight: bold;
      color: #333;
      text-decoration: none;
      font-size: 16px;
      line-height: 1;
      position: relative; }
      .sp_login a i.fa {
        color: #fff;
        position: absolute;
        top: 12px;
        left: 12px;
        font-size: 24px; }
    .sp_login .balloon {
      position: relative;
      display: block;
      margin: 12px 10px 0;
      padding: 10px;
      background: #eee;
      border-radius: 3px;
      line-height: 1.5;
      font-size: 12px; }
      .sp_login .balloon::before {
        content: "";
        position: absolute;
        top: -20px;
        left: 50%;
        margin-left: -10px;
        border: 10px solid transparent;
        border-bottom: 10px solid #eee; }

  footer ul.sp_footer_banners {
    box-sizing: border-box;
    padding: 10px 0;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(27, 58, 105, 0.75);
    font-size: 0;
    text-align: center; }
    footer ul.sp_footer_banners li {
      display: inline-block;
      margin: 0 5px; }
      footer ul.sp_footer_banners li img {
        height: 80px; } }
/* 画面サイズが767以下の時のCSS（カラム落ち）----------------------------*/
@media (max-width: 767px) {
  .sp_only {
    display: inline; }

  /*モバイルのみ表示*/
  .sp_center {
    text-align: center; }

  .pc_only {
    display: none; }

  img.pc_right, img.pc_left {
    float: none;
    width: 100%;
    padding: 0 0 15px; }

  footer {
    background-size: auto 100%;
    padding: 15px; }
    footer section#footer_policy {
      padding: 0;
      border-radius: 5px;
      border: 1px solid #005DAA; }
      footer section#footer_policy nav ul li {
        display: block;
        border-left: 0;
        border-top: 1px solid #005DAA;
        padding: 0 !important;
        margin: 0;
        line-height: 1.25; }
        footer section#footer_policy nav ul li:first-child {
          border: 0; }
        footer section#footer_policy nav ul li a {
          display: block;
          padding: 15px; }
    footer ul.sp_footer_banners {
      padding: 10px 5px;
      width: 100%;
      display: flex; }
      footer ul.sp_footer_banners li {
        width: 50%; }
        footer ul.sp_footer_banners li img {
          height: auto; }

  section#main, section#home_flex {
    padding: 15px; }

  .notice {
    font-size: 14px; }

  /*TOPページお知らせ*/
  .top_info dl dd {
    font-size: 14px; }

  section#top_login {
    padding: 25px 15px 15px; }
    section#top_login h3 i.fa {
      font-size: 30px; }
  section#top_banners {
    padding: 25px 15px 0; }
    section#top_banners img {
      margin-bottom: 15px; }

  /*Tags*/
  div.tags a {
    font-size: 10px;
    padding: 2px 8px; }

  /*画像リスト*/
  ul.gal2, ul.gal3 {
    margin: 0 0 20px 0; }
  ul.gal2 li, ul.gal3 li {
    float: none;
    width: 100%;
    margin: 0 0 10px 0; }

  /*ぱんくずリスト*/
  section#breadcrumb {
    margin: -15px 0 15px 0; }

  ul.posts li img {
    width: 20%; }
  ul.posts li .post_text {
    width: 75%; }
    ul.posts li .post_text .date {
      font-size: 10px; }

  section#top_cover {
    height: 250px;
    overflow: hidden; }
    section#top_cover img.layer1 {
      left: -60%; }
    section#top_cover img.layer2 {
      height: 30%;
      top: auto;
      bottom: 10px;
      left: 10px; }
  section#page_footer_contact {
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.3);
    background: #EBF2F8; }

  /*下層ページタイトル*/
  body#sub section#pagetitle h1, body#sub section#pagetitle p {
    padding: 15px 15px 30px;
    font-size: 18px; }
  body#sub section#pagetitle h1 span, body#sub section#pagetitle p span {
    font-size: 11px; }
  body#form header .logo {
    height: 60px; }
  body#form footer {
    font-size: 10px;
    line-height: 150%; }

  /*フォームページ用CSS*/
  ul.childs li {
    padding: 15px 10px 10px;
    margin: 0 0 10px;
    background: #EBEBEB; }

  .single-page, .single-post {
    font-size: 14px;
    line-height: 1.75; }
    .single-page h2, .single-post h2 {
      font-size: 22px; }
    .single-page h3, .single-post h3 {
      font-size: 20px; }
    .single-page h4, .single-post h4 {
      font-size: 18px; }
    .single-page h5, .single-post h5 {
      font-size: 16px; }
    .single-page h6, .single-post h6 {
      font-size: 14px; }

  ul.ico_indent > li {
    padding: 0 0 15px 60px; }
    ul.ico_indent > li h3 {
      font-size: 18px; }
  ul.ico_indent li img.ico {
    width: 45px; }
  ul.col2 li, ul.col3 li {
    margin: 0 0 10px 0; }

  dl.table dt {
    font-size: 12px;
    color: #005DAA;
    background-size: 22px;
    margin-bottom: 3px; }
  dl.table dd {
    padding: 0 0 5px;
    border-bottom: 1px dotted #aaa;
    margin-bottom: 10px; }
  dl.arrow {
    margin-bottom: 10px; }
    dl.arrow > dt {
      position: relative;
      padding: 0 0 5px 15px;
      color: #005DAA; }
      dl.arrow > dt:before {
        content: "\f138";
        font-family: FontAwesome;
        position: absolute;
        top: 1px;
        left: 0;
        color: #005DAA;
        font-weight: normal;
        font-size: 15px; }
    dl.arrow > dd {
      padding: 0 0 5px 15px;
      border-bottom: 1px dotted #aaa;
      margin-bottom: 10px; }
      dl.arrow > dd dl dt, dl.arrow > dd dl dd {
        margin-bottom: 5px; }

  .side_img_L {
    margin-bottom: 20px;
    text-align: center; }

  .side_img_R {
    margin-bottom: 20px; }
    .side_img_R h3 {
      background: none;
      color: #005DAA;
      padding: 0;
      font-size: 18px; }

  dl.faq dd {
    background: #ebebeb; }
  dl#panel dl.faq dd {
    background: #fff; }

  .box {
    background: #ebebeb;
    padding: 10px; }

  dl#panel dt {
    font-size: 14px; }
  dl#panel > dd {
    background: #EBF2F8; }

  ul#toc {
    background: #EBF2F8;
    padding: 15px; }
    ul#toc:before {
      margin: -15px -15px 15px -15px; }
    ul#toc li {
      background: #EBF2F8;
      margin-bottom: 10px;
      padding: 0; }
      ul#toc li:last-child {
        margin-bottom: 0; }
  ul.ifalinks li {
    margin: 0 0 10px 0; }
  ul.banners {
    margin: 0 0 0 -2%;
    overflow: auto;
    /*横並びの高さをあわせる*/
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    ul.banners li {
      margin: 0 0 2% 2%;
      width: 48%;
      float: left;
      box-shadow: none; }

  section#top_login a.button.bt1 {
    margin-bottom: 15px; }

  table.common th {
    font-size: 90%; }

  .home_alert_msg {
    text-align: left;
    margin-bottom: 15px; }
    .home_alert_msg li {
      border-bottom: 1px dotted #ff0000;
      position: relative;
      margin-bottom: 10px;
      padding: 0 0 5px 1.5em;
      font-size: 14px;
      line-height: 1.5; }
      .home_alert_msg li::before {
        position: absolute;
        margin: 0;
        top: 0;
        left: 0; }
      .home_alert_msg li:last-child {
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: 0; }

  body#form section#form_main {
    font-size: 14px;
    line-height: 1.5; }

  dl.history dt {
    width: 35%; }
    dl.history dt span {
      font-size: 1em;
      background: #fff; }
  dl.history dd {
    width: 65%; } }
/* 高精細ディスプレイ（Retina等）対応 */
.print_only {
  display: none; }

/* 印刷用 */
@media print {
  .print_only {
    text-align: center;
    display: block; }

  .form_stamp {
    display: inline-block;
    width: 30%;
    text-align: center; }

  .stamp_frame {
    width: 100px;
    height: 100px;
    margin: auto;
    border: 3px solid #000; } }

/*# sourceMappingURL=base.css.map */
