@charset "utf-8";


/* WPの管理バー表示の調整 */
/*--------------------------------------------------*/

/* body */
body {
  padding-top: 55px;
}
/* ログイン時 */
body.logged-in {
  padding-top: 80px;
}
body.logged-in .header008 {
  top: 30px;
}
/* 0～991 */
@media (max-width: 991px) {
  body {
    padding-top: 60px;
  }
  /* ログイン時 */
  body.logged-in {
    padding-top: 58px;
  }
  body.logged-in .header008 {
    top: 30px;
  }
}
/* 0～767 */
@media (max-width: 767px) {
  body {
    padding-top: 60px;
  }
  /* ログイン時 */
  body.logged-in {
    padding-top: 59px;
  }
  body.logged-in .header008 {
    top: 45px;
  }
}


/* module */
/*--------------------------------------------------*/

.inline-block {
  display: inline-block;
}

/* 背景などの調整 */
/*--------------------------------------------------*/

.frame-main {
  padding-top: 70px;
  border-bottom: 4px solid #1074ba;
}
body.home .frame-main {
  padding-top: 35px;
}

body.home {
  background-image: url(../images/common/bg.jpg);
}
body.home .frame-main {
  background-image: url(../images/common/bg-index.png);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-color: #FFF;
}
/* 0～767 */
@media (max-width: 767px) {
  body { background: none; }
  .spbg1 {
    background-image: url(../images/common/bg.jpg);
    border-bottom: 4px solid #1074ba;
  }
  .spbg2 {
    background-image: url(../images/common/spbg2.png);
  }
  .frame-main {
    background: none;
padding-top: 0;
  }
}



/* title001 */
/*--------------------------------------------------*/

.title001 {
}
.title001 .container {
  position: relative;
}
.title001-title {
  font-size: 34px;
  color: #1074ba;
  line-height: 0.7;
}
.title001-title span {
  font-size: 18px;
  font-weight: normal;
  color: #1074ba;
  padding-left: 20px;
}
.title001-leftlink {
  position: absolute;
  top: 10px;
  right: 20px;
  color: #1074ba;
  margin-top: 17px;
}
/* 0～767 */
@media (max-width: 767px) {
  .title001-leftlink {
    margin-top: 0px;
  }
}
/* 0～575 */
@media (max-width: 575px) {
  .title001-title {
    margin-bottom: 10px;
  }
  .title001-leftlink {
    position: static;
  }
}




/* subvisual001 */
/*--------------------------------------------------*/

.subvisual001 {
  position: relative;
}
.subvisual001::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url(../images/common/sv-bg.png);
  top: 0;
  left: 0;
}
.pageclass-midorien .subvisual001::after,
.pageclass-tokyoclassicclub .subvisual001::after,
.pageclass-fides .subvisual001::after {
  display: none;
}
@media (max-width: 991px) { .subvisual001::after { top: -1px; } }

.subvisual001-text {
  position: absolute;
  display: table;
  width: 100%;
  height: 100%;
  z-index: 500;
}
.subvisual001-text-inner {
  display: table-cell;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  vertical-align: middle;
  text-align: center;
  z-index: 500;
  /*  background-color: rgba(0,0,0,0.5);*/

}
.subvisual001 ._text {
  color: #FFF;margin-top: 10px;
  font-weight: bold;
}



/* title204 */
/*--------------------------------------------------*/
.title204-text {
  font-size: 26px;
  line-height: 1.3;
  padding: 10px 0;
  text-align: center;
  color: #1074ba;
}
.title204-text > span {
  position: relative;
  display: inline-block;
  padding: 0 .5em;
}
.title204-text > span::before,
.title204-text > span::after {
  position: absolute;
  top: 50%;
  width: 2500%;
  content: '';
}
.title204-text > span::before {
  right: 100%;
}
.title204-text > span::after {
  left: 100%;
}
@media (max-width: 767px) {
  .title204-text {
    font-size: 22px;
  }
}
.title204-text {
  overflow: hidden;
}
.title204-text > span::before,
.title204-text > span::after {
  border-top: 2px solid #1074ba;
}
@media (max-width: 767px) {
  .title204 .container-fluid {
    padding: 0;
  }
  .title204-text {
    padding: 10px;
  }
}




/* footer001 */

.footer001-navi {
  background-color: #1074BA;
  padding: 20px;
}
.nav001 ul {
  display: table;
  margin: auto;
}
.nav001 li {
  display: table-cell;
  padding: 0 10px;
}
.nav001 li a {
  color: #FFF;
}
.nav001 li a:hover {
  text-decoration: underline;
}




.footer001-main {
  background-color: #FFF;
  padding: 40px 0 15px 0;
}
.footer001-main-btn {
  font-size: 24px;
  color: #1074ba;
  display: block;
  padding: 10px;
  border: 2px solid #1074ba;
  border-radius: 14px;
  text-align: center;
  font-weight: bold;
}
.footer001-copyright {
  background-color: #235085;
}
.footer001-copyright-main {
  text-align: center;
  color: #FFF;
  font-size: 12px;
  padding: 5px;
}
.footer001-toplink {
  overflow: hidden;
  margin-bottom: 5px;
}
.footer001-toplink a {
  display: inline-block;
  position: relative;
  color: #FFF;
  font-size: 18px;
}
.footer001-toplink a::after {
  content: '';
  width: 1000%;
  height: 1px;
  border-top: 1px dashed #FFF;
  position: absolute;
  top: 48%;
  left: 110%;
}
.footer001-main-text {
  font-size: 38px;
  color: #1074ba;
  font-weight: bold;
}
.footer001-main-text ._small {
  font-size: 20px;
}
.ua-ie .footer001-main-text ._small {
  font-size: 18px;
}
.footer001-main-text .family-arial {
  font-size: 110%;
}
@media (max-width: 991px) { .footer001-main-text ._small { font-size: 15px; } }


.footer001-main-text ._link {
  font-size: 28px;
  text-decoration: underline;
}
@media (min-width: 1200px) {
  .footer001-main-text ._link {
    position: relative;
    top: -4px;
  }
}
@media (max-width: 1199px) { .footer001-main-text, .footer001-main-text ._link { font-size: 20px; } }

.footer001-telmail i {
  display: none;
}

/* 768～991 */
@media (min-width: 768px) and (max-width: 991px) {
  .footer001-main-text,
  .footer001-main-text ._link {
    font-size: 20px;
  }
}
/* 0～767 */
@media (max-width: 767px) {
  .footer001-main {
    padding: 0;
  }
  .footer001-main-btn {
    font-size: 21px;
    padding: 20px;
    border: none;
    border-bottom: 4px solid #1074ba;
    border-radius: inherit;
    margin-left: -15px;
    margin-right: -15px;
  }
  .footer001-telmail {
    background-color: #1074BA;
    padding: 0 20px;
    border-bottom: 1px solid #FFF;
    position: relative;
  }
  .footer001-telmail i {
    display: inline-block;
    position: absolute;
    right: 10px;
    height: 1em;
    top: 0;
    bottom: 0;
    margin: auto 0;
  }
  .footer001-main-text {
    color: #FFF;
    text-align: center;
    font-weight: bold;
    padding: 15px 0;
    text-align: left;
    padding-right: 10px;
  }
  .footer001-main-text ._link {
    text-decoration: none;
  }

}




@media (max-width: 550px) { .footer001-main-text { font-size: 34px; } }
@media (max-width: 400px) { .footer001-main-text { font-size: 24px; } }

@media (max-width: 550px) { .footer001-main-text ._small { display: block; } }

@media (max-width: 550px) { .footer001-main-text ._link { font-size: 28px; } }



/* headerbutton000 */

.headerbutton000 {
  position: absolute;
  top: -5px;
  right: 0;
}
.headerbutton000 a {
  display: block;
  background-color: #1074ba;
  color: #FFF;
  padding: 7px 15px;
}
/* 0～991 */
@media (max-width: 991px) {
  .headerbutton000 {
    display: none;
  }
}


/* headerset008 */

.header008 {
  background-color: #FFF;
  border-bottom: 2px solid #1074ba;
}

/*--------------------------------------------------*/
/* PC */
@media (min-width: 992px) {
  /* header008 --------------------------------------*/
  .header008 {
    position: fixed;
    z-index: 10000;
    top: 0;
    width: 100%;
    margin: 0 auto;
    padding: 5px 0;
    -webkit-transition: 300ms;
    transition: 300ms;
    letter-spacing: .1em;
  }
  .header008-inner {
    position: relative;
  }
  .header008-logo {
    /* empty */
  }
  /* nav008 --------------------------------------*/
  /* 親 */
  .nav008 {
    line-height: 1;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    height: 2.4em;
    margin: auto 0;
    margin-top: 45px;
  }
  .nav008-parent {
    display: table;
    margin-right: -20px;
  }
  .nav008-parent > li {
    position: relative;
    display: table-cell;
    padding: 0 .7em;
  }
  .nav008-parent > li > a {
    font-size: 14px;
    line-height: 1;
    position: relative;
    display: inline-block;
    padding: .7em;
    -webkit-transition: 300ms;
    transition: 300ms;
    vertical-align: middle;
  }
  .nav008-parent > li > a::before,
  .nav008-parent > li > a::after {
    position: absolute;
    right: 0;
    left: 0;
    width: 0;
    height: 1px;
    margin: 0 auto;
    content: '';
    -webkit-transition: 300ms;
    transition: 300ms;
    opacity: 0;
    background-color: currentColor;
  }
  .nav008-parent > li > a::before {
    top: 0;
  }
  .nav008-parent > li > a::after {
    bottom: 5px;
  }
/*  .ua-nontouch .nav008-parent > li > a[href]:hover::before,
.nav008-parent > li.nav008-current > a::before,*/
.ua-nontouch .nav008-parent > li > a[href]:hover::after {
  width: 100%;
  opacity: .9;
}
/* 子孫共通 */
.nav008-child {
  position: absolute;
  top: 100%;
  left: 0;
  visibility: hidden;
  min-width: 13em;
  padding-top: 5px;
  -webkit-transition: 300ms;
  transition: 300ms;
  opacity: 0;
}
.nav008-child li {
  position: relative;
  border: solid #ddd;
  border-width: 1px 1px 0;
}
.nav008-child li:last-child {
  border-bottom-width: 1px;
}
.nav008-child li a {
  font-size: 14px;
  line-height: 1;
  display: block;
  padding: .8em 1.6em;
  -webkit-transition: background-color 250ms;
  transition: background-color 250ms;
  background-color: white;
}
.ua-nontouch .nav008-child li a[href]:hover {
  background-color: #f4f4f4;
}
.ua-nontouch .nav008-haschild:hover .nav008-child {
  visibility: visible;
  opacity: 1;
}
/* 孫 */
.nav008-grandchild {
  position: absolute;
  top: 0;
  left: 100%;
  visibility: hidden;
  min-width: 10em;
  -webkit-transition: 300ms;
  transition: 300ms;
  opacity: 0;
}
.ua-nontouch .nav008-hasgrandchild:hover .nav008-grandchild {
  visibility: visible;
  opacity: 1;
}
/* media query */
}
@media (min-width: 992px) and (max-width: 1199px) {
  .nav008-parent > li {
    padding: 0 15px;
  }
  .nav008-child li a {
    padding: 10px 10px;
  }
}
/* SP */
@media (max-width: 991px) {
  html.nav008-opened {
    overflow-y: hidden;
  }
  /* header008 --------------------------------------*/
  .header008 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    padding: 0 10px;
    background-color: rgba(255, 255, 255);
    box-shadow: 0 0 5px rgba(0, 0, 0, .25);
  }
  .header008-inner {
    /* empty */
  }
  .header008-logo img {
/*    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;*/
    height: 57px;
  }
  /* nav008 --------------------------------------*/
  /* 親 */
  .nav008 {
    /* empty */
  }
  .nav008-parent {
    position: fixed;
    z-index: 9998;
    top: 0;
    right: -100%;
    overflow-y: auto;
    width: 240px;
    height: 100%;
    padding: 105px 0;
    -webkit-transition: 500ms cubic-bezier(.215, .61, .355, 1);
    transition: 500ms cubic-bezier(.215, .61, .355, 1);
    background-color: white;
    -webkit-overflow-scrolling: touch;
  }
  html.nav008-opened .nav008-parent {
    right: 0;
  }
  .nav008-parent > li {
    border: solid #aaa;
    border-width: 1px 0 0;
  }
  .nav008-parent > li:last-child {
    border-bottom-width: 1px;
  }
  .nav008-parent a {
    font-size: 14px;
    line-height: 1.3;
    display: block;
    overflow: hidden;
    padding: 10px 30px 10px 10px;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  /* 子孫 */
  .nav008-child,
  .nav008-grandchild {
    display: none;
  }
  .nav008-child li,
  .nav008-grandchild li {
    border-top: 1px dashed #aaa;
  }
  .nav008-haschild > a,
  .nav008-hasgrandchild > a {
    position: relative;
  }
  .nav008-haschild > a::after,
  .nav008-hasgrandchild > a::after {
    font-family: 'fontello';
    line-height: 1;
    position: absolute;
    top: 0;
    right: 10px;
    bottom: 0;
    height: 1em;
    margin: auto 0;
    content: '\e849';
  }
  .nav008-haschild > a.nav008-expanded::after,
  .nav008-hasgrandchild > a.nav008-expanded::after {
    content: '\e841';
  }
  .nav008-child > li > a {
    padding-left: 20px;
  }
  .nav008-grandchild > li > a {
    padding-left: 30px;
  }
}
/* overlay */
/*--------------------------------------------------*/
@media (min-width: 992px) {
  .nav008-overlay {
    display: none;
  }
}
@media (max-width: 991px) {
  .nav008-overlay {
    position: fixed;
    z-index: 9997;
    top: 0;
    left: 0;
    visibility: hidden;
    width: 100vw;
    height: 100vh;
    -webkit-transition: 500ms cubic-bezier(.215, .61, .355, 1);
    transition: 500ms cubic-bezier(.215, .61, .355, 1);
    opacity: 0;
    background-color: rgba(51, 51, 51, .9);
  }
  html.nav008-opened .nav008-overlay {
    visibility: visible;
    opacity: 1;
  }
}
/* hamburger */
/*--------------------------------------------------*/
@media (min-width: 992px) {
  .nav008-hamburger {
    display: none;
  }
}
@media (max-width: 991px) {
  .nav008-hamburger {
    position: fixed;
    z-index: 9999;
    top: 10px;
    right: 10px;
    padding: 6px 5px 4px;
    -webkit-transition: 440ms;
    transition: 440ms;
    text-align: center;
  }
  body.logged-in .nav008-hamburger {
    top: 40px;
  }
  .nav008-scrolled .nav008-hamburger {
    background-color: rgba(255, 255, 255, .75);
  }
}
/* 0～767 */
@media (max-width: 767px) {
  body.logged-in .nav008-hamburger {
    top: 55px;
  }
}

.nav008-hamburger-text {
  font-size: 10px;
  line-height: 1;
  margin-top: -2px;
  -webkit-transition: color 440ms;
  transition: color 440ms;
}
/*
** Hamburgers
** @description Tasty CSS-animated hamburgers
** @author Jonathan Suh @jonsuh
** @site https://jonsuh.com/hamburgers
** @link https://github.com/jonsuh/hamburgers
*/
.hamburger {
  font: inherit;
  display: inline-block;
  overflow: visible;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
  -webkit-transition-duration: .15s;
  transition-duration: .15s;
  -webkit-transition-property: opacity, -webkit-filter;
  -webkit-transition-property: opacity, filter, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  text-transform: none;
  color: inherit;
  border: 0;
  background-color: transparent;
}
.ua-nontouch .hamburger:hover {
  opacity: .7;
}
.hamburger-box {
  position: relative;
  display: inline-block;
  width: 25px;
  height: 15px;
}
.hamburger-inner {
  top: 50%;
  display: block;
  margin-top: -2px;
}
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  position: absolute;
  width: 25px;
  height: 3px;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-duration: .15s;
  transition-duration: .15s;
  border-radius: 4px;
  background-color: #333;
}
.hamburger-inner::before,
.hamburger-inner::after {
  display: block;
  content: '';
}
.hamburger-inner::before {
  top: -7px;
}
.hamburger-inner::after {
  bottom: -7px;
}
/* Spin */
.hamburger-spin .hamburger-inner {
  -webkit-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  -webkit-transition-duration: .3s;
  transition-duration: .3s;
}
.hamburger-spin .hamburger-inner::before {
  -webkit-transition: top .1s .34s ease-in, opacity .1s ease-in;
  transition: top .1s .34s ease-in, opacity .1s ease-in;
}
.hamburger-spin .hamburger-inner::after {
  -webkit-transition: bottom .1s .34s ease-in, -webkit-transform .3s cubic-bezier(.55, .055, .675, .19);
  -webkit-transition: bottom .1s .34s ease-in, -webkit-transform .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19);
  transition: bottom .1s .34s ease-in, -webkit-transform .3s cubic-bezier(.55, .055, .675, .19);
  transition: bottom .1s .34s ease-in, transform .3s cubic-bezier(.55, .055, .675, .19);
  transition: bottom .1s .34s ease-in, transform .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19);
}
html.nav008-opened .hamburger-spin .hamburger-inner {
  -webkit-transition-delay: .14s;
  transition-delay: .14s;
  -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  -webkit-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  transform: rotate(225deg);
}
html.nav008-opened .hamburger-spin .hamburger-inner::before {
  top: 0;
  -webkit-transition: top .1s ease-out, opacity .1s .14s ease-out;
  transition: top .1s ease-out, opacity .1s .14s ease-out;
  opacity: 0;
}
html.nav008-opened .hamburger-spin .hamburger-inner::after {
  bottom: 0;
  -webkit-transition: bottom .1s ease-out, -webkit-transform .3s .14s cubic-bezier(.215, .61, .355, 1);
  -webkit-transition: bottom .1s ease-out, -webkit-transform .3s .14s cubic-bezier(.215, .61, .355, 1), -webkit-transform .3s .14s cubic-bezier(.215, .61, .355, 1);
  transition: bottom .1s ease-out, -webkit-transform .3s .14s cubic-bezier(.215, .61, .355, 1);
  transition: bottom .1s ease-out, transform .3s .14s cubic-bezier(.215, .61, .355, 1);
  transition: bottom .1s ease-out, transform .3s .14s cubic-bezier(.215, .61, .355, 1), -webkit-transform .3s .14s cubic-bezier(.215, .61, .355, 1);
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}



.header-text {
  font-size: 16px;
}
.header-text span {
  font-size: 20px;
}
/* 0～767 */
@media (max-width: 767px) {
  .header-text, .header-text span {
    font-size: 11px;
  }
  .header-text {
    display: block;
/*    width: 150px;*/
    padding-right: 50px;
    position: absolute;
    top: 12px;
    left: 110px;
  }
  .header008-logo img {
    height: 40px !important;
    margin-top: 7px;
    margin-left: -10px;
  }
}

/* pagetop170 */
/*--------------------------------------------------*/
.pagetop170 {
  font-size: 24px;
  position: fixed;
  z-index: 2147483647;
  right: 25px;
  bottom: 25px;
  display: none;
  width: 1.75em;
  height: 1.75em;
  padding: 0;
  color: #fafafa;
  border: none;
  /*  border-radius: 50%;*/
  background-color: #3A8EC1;
}
@media (max-width: 575px) {
  .pagetop170 {
    right: 10px;
    bottom: 40px;
  }
}
.pagetop170 i {
  line-height: 1;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 1em;
  height: 1em;
  margin: auto;
}
.pagetop170 i::before {
  margin: 0;
  -webkit-transform: translateY(-2px);
  -ms-transform: translateY(-2px);
  transform: translateY(-2px);
}
.ua-ie .pagetop170 i::before {
  animation: pagetop170-fix-ie 10ms infinite;

  animation-fill-mode: both;
}
@keyframes pagetop170-fix-ie {
  0% {
    margin: .1px;
  }
  100% {
    margin: 0;
  }
}
.pagetop170:hover i {
  -webkit-animation: pagetop170 1000ms;
  animation: pagetop170 1000ms;
}
.pagetop170-text {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
@-webkit-keyframes pagetop170 {
  15% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
}
@keyframes pagetop170 {
  15% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
}



/* breadcrumbs168 */
/*--------------------------------------------------*/
.breadcrumbs168 .breadcrumbs {
  font-size: 14px;
  line-height: 1.3;
  margin: 5px -5px 0;
}
.breadcrumbs168 .breadcrumbs > span {
  margin: 0 5px;
  vertical-align: middle;
}
.breadcrumbs168 .breadcrumbs a {
  -webkit-transition: color 100ms;
  transition: color 100ms;
}
.ua-nontouch .breadcrumbs168 .breadcrumbs a:hover {
  color: #00a9c7;
}
@media (max-width: 575px) {
  .breadcrumbs168 .breadcrumbs {
    display: none;
  }
}




/* subvisual224 */
/*--------------------------------------------------*/
.subvisual224 {
  height: 350px;
  background-position: center;
  background-size: cover;
}
@media (max-width: 767px) {
  .subvisual224 {
    height: 120px;
  }
}




/* title243 */
/*--------------------------------------------------*/
.title243-container {
  max-width: none;
}
@media (max-width: 767px) {
  .title243-container {
    padding: 0;
  }
}
.title243 {
  padding: 10px 0;
  text-align: center;
  color: #1074ba;
  margin: 0 20px;
}
.title243-inner {
  position: relative;
  display: inline-block;
  padding: 0 15px;
}
.title243-inner::before,
.title243-inner::after {
  position: absolute;
  top: 50%;
  width: 2500%;
  content: '';
}
.title243-inner::before {
  right: 100%;
}
.title243-inner::after {
  left: 100%;
}
.title243-en {
  font-size: 46px;
  line-height: 1;
  display: block;
}
.title243-ja {
  font-size: 22px;
  line-height: 1;
  display: block;
  margin-top: 5px;
}
.title243 {
  overflow: hidden;
}
.title243-inner::before,
.title243-inner::after {
  border-top: 1px solid #1074ba;
}








/* sidebar */
/*--------------------------------------------------*/
.widget {
  border: 1px solid #CCC;
  margin-bottom: 15px;
}
.widget-title {
  text-align: center;
  padding: 10px 15px;
  border-bottom: 1px solid #CCC;
  font-weight: bold;
}

.widget > ul {}
.widget > ul > li > a {
  display: block;
  padding: 10px 15px;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  -webkit-transition: all .25s linear;
  -moz-transition: all .25s linear;
  -ms-transition: all .25s linear;
  -o-transition: all .25s linear;
  transition: all .25s linear;
}
.widget > ul > li:hover > a {
  background-color: #EFEFEF;
}
.widget > ul > li > a:after {
  font-family: 'fontello';
  content: '\e802';
  position: absolute;
  right: 15px;
}
.widget > ul > li:hover > a:after {
  right: 10px;
  -webkit-transition: all .25s linear;
  -moz-transition: all .25s linear;
  -ms-transition: all .25s linear;
  -o-transition: all .25s linear;
  transition: all .25s linear;
}
.widget > ul > li:not(:last-child) {
  border-bottom: 1px dashed #CCC;
}
.widget select {
  margin: 10px 5%;
  width: 90%;
}
.widget_categories select {
  margin-top: 0px;
}
.screen-reader-text {
  display: block;
  margin: 15px auto 0 auto;
  width: 88%;
}

/* カレンダー */
.widget_calendar table {
  width: 100%;
}
.widget_calendar td, .widget_calendar th {
  text-align: center;
  padding: 3px 7px;
}
.widget_calendar thead {
  border-top: 1px solid #CCC;
}
.widget_calendar thead th,
.widget_calendar tbody td {
  border-right: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
}
.widget_calendar caption {
  text-align: center;
  font-size: 16px;
  padding: 7px 0;
}
.widget_calendar a {
  color: blue;
  text-decoration: underline;
}
.widget_calendar tfoot td {
  padding: 7px 0;
}
/* 検索 */
.widget_search {
  border: none;
}
.widget_search .widget-title {
  border: 1px solid #CCC;
  border-bottom: none;
}

.widget ul.children {
  border-top: 1px dotted #CCC;
}
.widget ul.children li {
  -webkit-transition: all .25s linear;
  -moz-transition: all .25s linear;
  -ms-transition: all .25s linear;
  -o-transition: all .25s linear;
  transition: all .25s linear;
}
.widget ul.children li a:before { content: '├ ';}
.widget ul.children li:last-child a:before { content: '└ ';}
.widget ul.children li a {
  display: block;
  padding: 13px 15px 7px 10px;
}
.widget ul.children li:hover > a {
  background-color: #EFEFEF;
}
.widget ul.children li > a:after {
  font-family: 'fontello';
  content: '\e802';
  position: absolute;
  right: 30px;
}
.widget ul.children li:hover > a:after {
  right: 25px;
  -webkit-transition: all .25s linear;
  -moz-transition: all .25s linear;
  -ms-transition: all .25s linear;
  -o-transition: all .25s linear;
  transition: all .25s linear;
}




.searchform {
  position: relative;
}
.searchform input[type="search"] {
  width: 100%;
}
.searchfield {
  font-size: 14px;
  padding: 7px;
}
.searchsubmit {
  font-size: 20px;
  width: 35px;
  height: 30px;
  background: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  position: absolute;
  right: 10px;
  top: 5px;
}
/* カスタムメニュー */
.widget_nav_menu li > a {
  display: block;
  padding: 10px 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  -webkit-transition: all .25s linear;
  -moz-transition: all .25s linear;
  -ms-transition: all .25s linear;
  -o-transition: all .25s linear;
  transition: all .25s linear;
}
.widget_nav_menu li:hover > a {
  background-color: #EFEFEF;
}
.widget_nav_menu li > a:after {
  font-family: 'fontello';
  content: '\e802';
  position: absolute;
  right: 15px;
}
.widget_nav_menu li:hover > a:after {
  right: 10px;
  -webkit-transition: all .25s linear;
  -moz-transition: all .25s linear;
  -ms-transition: all .25s linear;
  -o-transition: all .25s linear;
  transition: all .25s linear;
}
.widget_nav_menu li:not(:last-child) {
  border-bottom: 1px dashed #CCC;
}
/* タグクラウド */
.widget_tag_cloud .tagcloud {
  padding: 10px 15px;
}

/* タイトル */
.single-title {
  border-bottom: 1px solid #CCC;
  font-size: 20px;
  padding-bottom: 10px;
}
/* カテゴリー名 */
.news-cat-tag {
  background-color: #CCC;
  padding: 2px 10px;
  margin-right: 3px;
}
/* 次の記事 */
.single-arrow-next {
  text-align: right;
}
/* アーカイブのページネーション */
.pagenation {
  text-align: center;
}
.page-numbers {
  background-color: #333;
  color: #FFF;
  padding: 5px 10px;
}
.page-numbers.current {
  background-color: #FFF;
  border: 1px solid #333;
  color: #333;
}
/* 最近のコメント */
.widget_recent_comments .recentcomments {
  padding: 10px 15px;
}
.widget_recent_comments .recentcomments a {
  text-decoration: underline;
}
.widget_recent_comments .recentcomments a:after {
  content: none;
}
.widget_recent_comments .recentcomments:hover > a {
  background: none;
}




/* oEmbedをレスポンシブ化 */
/*--------------------------------------------------*/

.wp-embedded-content {
  max-width: 100%;
}



/* title0002 */
/*--------------------------------------------------*/
.title0002 {
  font-size: 34px;
  color: #1074ba;
  line-height: 1.5;
}
.title0002 span {
  font-size: 16px;
  color: #333333;
  display: block;
  font-weight: bold;
}


/* title0005 */
/*--------------------------------------------------*/

.title0005 {
  font-size: 34px;
  text-align: center;
  color: #1074b1;
  position: relative;
  margin-bottom: 30px;
}
.title0005::after {
  content: '\e828';
  font-family: fontello;
  position: absolute;
  left: 0;
  right: 0;
  top: 30px;
}

/* 0～991 */
@media (max-width: 991px) {
  .title0005 {
    font-size: 46px;
  }
  .title0005::after {
    top: 40px;
  }
  .title005-wrapper {
    position: relative;
  }
  .title005-wrapper::before {
    content: '';
    position: absolute;
    height: 1px;
    width: 28%;
    top: 48%;
    right: 15px;
    background-color: #1074B1;
  }
  .title005-wrapper::after {
    content: '';
    position: absolute;
    height: 1px;
    width: 28%;
    top: 48%;
    left: 15px;
    background-color: #1074B1;
  }
}

@media (max-width: 575px) { .title0005 { font-size: 32px; } }

@media (max-width: 900px) { .title005-wrapper::before, .title005-wrapper::after { width: 25%; } }
@media (max-width: 780px) { .title005-wrapper::before, .title005-wrapper::after { width: 20%; } }
@media (max-width: 665px) { .title005-wrapper::before, .title005-wrapper::after { width: 17%; } }
@media (max-width: 600px) { .title005-wrapper::before, .title005-wrapper::after { width: 15%; } }
@media (max-width: 575px) { .title005-wrapper::before, .title005-wrapper::after { width: 23%; } }
@media (max-width: 520px) { .title005-wrapper::before, .title005-wrapper::after { width: 20%; } }
@media (max-width: 470px) { .title005-wrapper::before, .title005-wrapper::after { width: 17%; } }
@media (max-width: 420px) { .title005-wrapper::before, .title005-wrapper::after { width: 14%; } }
@media (max-width: 380px) { .title005-wrapper::before, .title005-wrapper::after { width: 10%; } }
@media (max-width: 345px) { .title005-wrapper::before, .title005-wrapper::after { width: 5%; } }

/* title0003 */
/*--------------------------------------------------*/
.title0003 {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.3;
}

.celltext {
  display: table;
  width: 100%;
  height: 100%;
}
.celltext span {
  display: table-cell;
  width: 100%;
  height: 100%;
  vertical-align: middle;
}
.table {
  display: table;
  height: 100%;
}
.table-cell {
  display: table-cell;
  height: 100%;
}





/* banner002 */
/*--------------------------------------------------*/

.banner002 {}
.banner002-box {
  display: table;
  width: 100%;
  height: 100%;
  background-image: url(../images/index/banner002-bg.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-color: #FFF;
  position: relative;
  table-layout: fixed;
}
.banner002-box::after {
  content: url(../images/index/banner002-arrow.svg);
  position: absolute;
  right: 0;
  bottom: -7px;
  width: 40px;
}
.banner002-box-inner {
  display: table-cell;
  height: 100%;
  padding: 20px;
  width: 100%;
}
.banner002-img {
  margin-bottom: 10px;
}
.banner002-btn-ttl {
  font-size: 18px;
  font-weight: bold;
}

.subvisual001 ._text2 {
  color: #FFF;
  font-size: 14px;
  margin-top: 35px;
  font-weight: bold;
}
/* 0～991 */
@media (max-width: 767px) {
  .subvisual001 ._text2 {
    font-size: 16px;
    padding: 15px;
	text-align:left;
	display: inline-block;
  }
}
/* 0～575 */
@media (max-width: 575px) {
  .subvisual001 ._text2 {
    margin-top: 10px;
  }
}

.default-link-color {
  color: #0000ff;
}




body.home .frame-main {
    padding-top: 0;
}
@media (max-width: 599px) {
span.header-text {
    display: none;
}
}


.messagepart {
    /* text-align: center; */
    font-size: 110%;
}
.messagepart p {
    margin-bottom: 2em;
    font-weight: bold;
}

ul.messagelist {
    list-style-type: none;
    margin-bottom: 3em;
    border-top: 8px solid #eaeaea;
    border-bottom: 8px solid #eaeaea;
    padding-top: 1.6em;
    text-align: center;
    padding-bottom: 1em;
}
ul.messagelist li {
    margin-bottom: 1em;
}
ul.messagelist li span {
    display: block;
    font-weight: bold;
}
.logopict {
    max-width: 400px;
    margin: 0 auto;
}

p.type02 {
    font-size: 130%;
    text-align: center;
}
p.type03 {
    font-size: 170%;
}

p.logosyousai {
    text-align: justify;
    margin: 1em 2em;
}