@charset "UTF-8";
@import url(../css/base.css);
@import url(../css/fonts.css);

/*==========================================================================*/
/*//////////////////////////////////////////////////////////////////////////*/
/*//////                                                              //////*/
/*//////  Copyright (C) 2009 株式会社フリーセル All Rights Reserved.  //////*/
/*//////                                                              //////*/
/*//////////////////////////////////////////////////////////////////////////*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/
/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/
body::-webkit-scrollbar {
  display: block;
  width: 10px;
  height: 10px;
}

body::-webkit-scrollbar-track {
  border-radius: 10px;
  background: #fff;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

body::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(13, 65, 126, 0.8)), to(rgba(13, 65, 126, 0.5)));
  background: -webkit-linear-gradient(bottom, rgba(13, 65, 126, 0.8) 0%, rgba(13, 65, 126, 0.5) 100%);
  background: linear-gradient(0deg, rgba(13, 65, 126, 0.8) 0%, rgba(13, 65, 126, 0.5) 100%);
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5);
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5);
}

body::-webkit-scrollbar-thumb:window-inactive {
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(13, 65, 126, 0.4)), to(rgba(13, 65, 126, 0.6)));
  background: -webkit-linear-gradient(bottom, rgba(13, 65, 126, 0.4) 0%, rgba(13, 65, 126, 0.6) 100%);
  background: linear-gradient(0deg, rgba(13, 65, 126, 0.4) 0%, rgba(13, 65, 126, 0.6) 100%);
}

h1,
h2,
h3,
h4,
h5,
h6,
input,
button,
textarea,
select,
p,
blockquote,
th,
td,
pre,
address,
li,
dt,
dd {
  font-size: 100%;
  -webkit-text-size-adjust: none;
}

header,
section,
footer,
aside,
nav,
main,
article,
figure {
  display: block;
  padding: 0;
  margin: 0;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  color: #64b5f7;
}

a:hover,
a:active {
  color: #64b5f7;
}

a:not([target*="_blank"]) {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

a:not([target*="_blank"]):hover {
  opacity: 0.7;
}

a.logo:hover,
.logo a:hover,
a.ft_logo:hover,
.ft_logo a:hover {
  opacity: 1 !important;
}

a.text_link {
  color: #64b5f7;
}

a.text_link:hover {
  opacity: 1 !important;
}

@media only screen and (min-width: 769px) {
  a.tel_click {
    pointer-events: none;
    opacity: 1 !important;
  }
}

table {
  width: 100%;
}

/* ol {
    display: flex;
    display: block;
    display: inline-flex;
    position: absolute;
    left: 50px;
} */

p {
  line-height: 2;
  letter-spacing: inherit;
  word-wrap: break-word;
  word-break: break-word;
  margin-bottom: 15px;
}

p:empty {
  display: none !important;
}

p:last-child {
  margin-bottom: 0;
}

.red {
  color: #ca0a0a !important;
}

.bold {
  font-weight: bold !important;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

*,
::after,
::before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/
html {
  overflow-x: auto !important;
}

body {
  background-color: #ffffff;
  -webkit-text-size-adjust: none;
}

.wrapper {
  overflow: hidden;
}

.inner {
  max-width: 1170px;
  margin: 0 auto;
}

.inner_sm {
  max-width: 1000px;
  margin: 0 auto;
}

.fullWidthBreak {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                           WordPress Core                                 */
/*==========================================================================*/
.alignnone {
  margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 35px;
}

.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

a img.alignnone {
  margin: 5px 20px 20px 0;
}

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  /* Image does not overflow the content area */
  padding: 5px 3px 10px;
  text-align: center;
}

.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  -webkit-clip-path: none;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/*==========================================================================*/
/*==========================================================================*/
/*==========================================================================*/
/*                              General                                     */
/*==========================================================================*/
@media only screen and (max-width: 768px) {
  .pc_only {
    display: none !important;
  }
}

@media only screen and (min-width: 769px) {
  .sp_only {
    display: none !important;
  }
}

@media only screen and (max-width: 1170px) {
  .br_1170up {
    display: none !important;
  }
}

@media only screen and (min-width: 426px) {
  .sp_425 {
    display: none !important;
  }
}

@media only screen and (min-width: 376px) {
  .sp_375 {
    display: none !important;
  }
}

.accBtn::before,
.accBtn::after {
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.accBtn.triangle,
.accBtn.triangle_btt {
  position: relative;
}

.accBtn.triangle::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  width: 0;
  height: 0;
  border-radius: 20px;
  border-color: inherit;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 10px solid;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.accBtn.triangle.rotate::after {
  -webkit-transform: translateY(-50%) rotateX(180deg);
  transform: translateY(-50%) rotateX(180deg);
}

.accBtn.triangle_btt::after {
  content: "";
  position: relative;
  top: 0px;
  width: 0;
  height: 0;
  border-radius: 20px;
  border-color: inherit;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 10px solid;
  display: block;
  margin: 10px auto 0;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.accBtn.rotate::after {
  -webkit-transform: rotateX(180deg);
  transform: rotateX(180deg);
}

.TabContainer .TabContent {
  background-color: #edf0f5;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.TabContainer .TabContent>ul {
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.TabContainer .TabContent>ul>li {
  opacity: 0;
  z-index: -10;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  -webkit-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

.TabContainer .TabContent>ul>li.active {
  opacity: 1;
  z-index: 1;
  visibility: visible;
}

.TabContainer .TabContent>ul>li div {
  padding-top: 20px;
}

.TabContainer .TabContent p {
  padding: 9px 10% 0;
  margin: 0;
}

.TabContainer .TabContent p.des {
  color: #838E95;
  font-size: 12px;
}

.TabContainer .TabPager {
  display: table;
  min-width: 290px;
}

.TabContainer .TabPager li {
  background-color: #fff;
  display: block;
  float: left;
  position: relative;
  margin: 0;
  padding: 9px 20px;
  -webkit-box-shadow: 2px 1px 10px rgba(0, 0, 0, 0.4);
  box-shadow: 2px 1px 10px rgba(0, 0, 0, 0.4);
  -webkit-transform: translateY(10px);
  -ms-transform: translateY(10px);
  transform: translateY(10px);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
  color: #797b7d;
}

.TabContainer .TabPager li p {
  margin: 0;
}

.TabContainer .TabPager li.active {
  background-color: #edf0f5;
  z-index: 1;
  -webkit-transform: translateY(0px);
  -ms-transform: translateY(0px);
  transform: translateY(0px);
}

.rel {
  position: relative;
}

.ovh {
  overflow: hidden !important;
}

.ovs {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  /* Lets it scroll lazy */
}

.lt0 {
  letter-spacing: 0 !important;
}

figure {
  margin: 0;
  text-align: center;
  line-height: 1;
}

.fblock {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.key {
  position: relative;
}

.gMap {
  width: 100%;
  height: 100%;
}

.txt_l {
  float: left;
  width: calc(100% - 385px);
}

.txt_r {
  float: right;
  width: calc(100% - 385px);
}

.image_alone {
  display: table;
  max-width: 500px;
  margin: 0 auto;
  border: 7px solid rgba(231, 231, 231, 0.5);
  border-radius: 11px;
  overflow: hidden;
}

.totop {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
  position: fixed;
  z-index: 19;
  bottom: 50px;
  right: 13px;
}

.totop.active {
  opacity: 1;
  visibility: visible;
}

.totop .icon {
  background-image: url(../images/totop.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
  border: 0px;
  width: 60px;
  height: 60px;
  margin: 0;
}

@media only screen and (min-width: 769px) {
  .totop:hover .icon {
    opacity: 0.9;
    -webkit-animation-name: bounce;
    animation-name: bounce;
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
}

.animated {
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

@-webkit-keyframes bounce {

  0%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }
}

@keyframes bounce {

  0%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }
}

.fix_modal {
  width: 320px;
  position: fixed;
  left: 20px;
  bottom: 20px;
  z-index: 5;
  background: #d9b063;
}

.fix_modal::before {
  content: '';
  position: absolute;
  z-index: 6;
  top: -38px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 138px;
  height: 87px;
  background: url(../images/icon_corona_fix.png) no-repeat center/contain;
}

.fix_modal::after {
  content: '';
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 24px;
  width: 40px;
  height: 11px;
  background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='11' viewBox='0 0 40 11'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23fff; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath id='icon_arown_big.svg' class='cls-1' d='M160,913h40v1H160v-1Zm38-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v11h-1V906Z' transform='translate(-160 -906)'/%3E%3C/svg%3E%0A") no-repeat right/contain;
  z-index: 1;
}

.fix_modal .fix_box {
  text-align: center;
  padding: 37px 10px 50px;
  overflow: hidden;
  -webkit-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  z-index: 7;
}

.fix_modal p {
  margin: auto;
}

.fix_modal .modal_link {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 7;
}

.fix_modal .close {
  position: absolute;
  content: '';
  background-color: #fff;
  width: 65px;
  height: 65px;
  border-radius: 100%;
  right: -30px;
  top: -29px;
  z-index: 8;
  margin: 0;
  cursor: pointer;
  padding: 0;
  text-indent: -999px;
}

.fix_modal .close::before,
.fix_modal .close::after {
  content: '';
  position: absolute;
  background: #d9b063;
  height: 1px;
  width: 19px;
  bottom: 22px;
  left: 11px;
}

.fix_modal .close::before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.fix_modal .close::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.fix_modal .ttl {
  font-size: 22px;
  color: #fff;
  font-weight: 500;
  line-height: 1.4;
  margin-bottom: 5px;
  letter-spacing: 0.2em;
}

.fix_modal .txt {
  color: #fff;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-size: 14px;
  font-weight: 300;
}

@media only screen and (min-width: 769px) and (max-width: 1170px) {
  .fix_modal {
    width: 220px;
  }

  .fix_modal::before {
    width: 120px;
  }

  .fix_modal::after {
    bottom: 16px;
  }

  .fix_modal .close {
    width: 58px;
    height: 58px;
  }

  .fix_modal .close::before,
  .fix_modal .close::after {
    width: 14px;
    bottom: 18px;
    left: 11px;
  }

  .fix_modal .fix_box {
    padding: 26px 10px 40px;
  }

  .fix_modal .ttl {
    font-size: 16px;
  }

  .fix_modal .txt {
    font-size: 11px;
  }
}

@media only screen and (min-width: 769px) {
  .fix_modal .modal_link:hover {
    background: rgba(219, 228, 250, 0.3);
  }

  .fix_modal .close {
    -webkit-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }

  .fix_modal .close:hover {
    background-color: #ffe1aa;
  }
}

.fixed_banner {
  position: fixed;
  top: 96px;
  right: 0;
  z-index: 15;
  -webkit-transition: right 0.3s ease-in-out;
  -o-transition: right 0.3s ease-in-out;
  transition: right 0.3s ease-in-out;
}

.fixed_banner:hover {
  right: 0;
}

.fixed_banner>div {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}


.fixed_banner a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.fixed_banner p {
  margin-bottom: 0;
  color: #fff;
  line-height: 1.222222222222222;
  text-align: center;
  font-weight: 600;
}

.fixed_banner p::before {
  content: "";
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  width: 100%;
  margin-bottom: 8px;
}

.fixed_banner .tel {
  background-color: #fff;
}

.fixed_banner .tel p {
  padding: 0 25px;
  font-size: 14px;
  letter-spacing: 0.15em;
  line-height: 0.97;
  color: #0d417e;
}

.fixed_banner .tel p::before {
  background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='23' viewBox='0 0 23 23'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %230d417e; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath id='icon_tel.svg' class='cls-1' d='M1887.01,430.141v4.515a1.277,1.277,0,0,1-1.19,1.274c-0.56.038-1.02,0.059-1.37,0.059A20.441,20.441,0,0,1,1864,415.563q0-.528.06-1.366a1.276,1.276,0,0,1,1.27-1.187h4.52a0.639,0.639,0,0,1,.64.575c0.03,0.293.06,0.528,0.08,0.7a17.925,17.925,0,0,0,1.55,5.109,0.58,0.58,0,0,1-.19.721l-2.76,1.97a16.674,16.674,0,0,0,8.75,8.736l1.97-2.748a0.585,0.585,0,0,1,.73-0.19,17.8,17.8,0,0,0,5.11,1.537c0.18,0.027.41,0.055,0.7,0.083a0.639,0.639,0,0,1,.58.634h0Z' transform='translate(-1864 -413)'/%3E%3C/svg%3E%0A");
  height: 23px;
}

.fixed_banner .web {
  background-color: #fff;
  padding-left: 3px;
}

.fixed_banner .web:hover {
  opacity: 0.7;
}

.fixed_banner .web p {
  font-size: 14px;
  color: #d9b063;
  letter-spacing: 0.05em;
}

.fixed_banner .web p::before {
  background-image: url("data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24.57 25.75'%3E%3Cpath d='M309.28,430.37a2.59,2.59,0,0,1-2.52,2.5H288.23a2.58,2.58,0,0,1-2.51-2.5q0-8.52,0-17a2.58,2.58,0,0,1,2.62-2.58h4.41l.09,0c0-.61,0-1.22,0-1.82a.76.76,0,0,1,1.06-.73.77.77,0,0,1,.47.75v1.8h6.26v-1.8a.77.77,0,0,1,.47-.75.75.75,0,0,1,1,.7c0,.53,0,1.06,0,1.59v.28h4.5a2.6,2.6,0,0,1,2.62,2.58Q309.3,421.86,309.28,430.37Zm-1.52-14v-3.17c0-.67-.31-1-1-1h-4.61v1.36a.77.77,0,1,1-1.53,0v-1.35h-6.26c0,.49,0,1,0,1.41a.76.76,0,0,1-.75.8.77.77,0,0,1-.77-.81v-1.42h-4.62c-.69,0-1,.29-1,1v3.37h20.52Zm0,1.75H287.24v12.31c0,.62.31.91,1,.91h18.61a.83.83,0,0,0,.95-.93V418.15Zm-7.21,5.69h2.37v1.72h-2.37Zm0-3.59h2.36V422h-2.36Zm2.37,8.91h-2.37v-1.73h2.37Zm-6.62-1.73h2.36v1.73H296.3Zm0-7.19h2.37V422h-2.37Zm-4.2,7.19h2.36v1.73h-2.36Zm0-7.19h2.37V422h-2.37Zm2.37,5.33h-2.36v-1.74h2.36Zm4.2,0h-2.36v-1.73h2.36Z' transform='translate(-285.21 -407.63)' style='fill:%23d9b063;fill-rule:evenodd'/%3E%3C/svg%3E");
  background-size: auto 27px;
  height: 27px;
}

.fixed_banner .tool {
  background-color: #fff;
}

.fixed_banner .tool p {
  font-size: 14px;
  color: #0d417e;
  letter-spacing: 0.05em;
}

.fixed_banner .tool p::before {
  background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %230d417e; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M1.589,13.647c0.11,1.025.19,2.057,0.27,3.112a2.031,2.031,0,0,0,1.346,1.813,8.3,8.3,0,0,0,4.951.644,0.333,0.333,0,0,1,.2.03,9.6,9.6,0,0,0,6.914,1.111,0.692,0.692,0,0,1,.375.1c0.137,0.065.271,0.144,0.412,0.229a2.761,2.761,0,0,0,.834.382,18.369,18.369,0,0,0,3.825.381q0.662,0,1.354-.04a3.4,3.4,0,0,0,1.909-.529c0.039,0.008.106,0.032,0.145,0.045l0.086,0.03c0.129,0.04.258,0.092,0.394,0.148a2.515,2.515,0,0,0,.9.241c1.642,0.009,3.249-.03,4.779-0.116a3.042,3.042,0,0,0,2.27-.9,0.213,0.213,0,0,1,.1-0.015,8.542,8.542,0,0,0,3.975.067,6.519,6.519,0,0,0,3.105-1.151,0.64,0.64,0,0,1,.244.015,8.384,8.384,0,0,0,5.115-.8,1.852,1.852,0,0,0,1.086-1.57c0.039-.432.074-0.864,0.109-1.3,0.054-.659.109-1.34,0.176-2.007a2.806,2.806,0,0,1,.219-0.922,10.9,10.9,0,0,0,1.1-7.21C47.095,2.179,45.326.492,42.221,0.128a21.405,21.405,0,0,0-6.5.365,43.676,43.676,0,0,0-8.959,2.734,6.722,6.722,0,0,1-5.5-.007C20.287,2.8,19.42,2.468,18.616,2.192A36.294,36.294,0,0,0,7.564,0H7.545C7.433,0.01,7.3.019,7.147,0.029,6.739,0.057,6.232.092,5.718,0.147A5.724,5.724,0,0,0,.56,4.349a10.776,10.776,0,0,0,.777,8.239A3.4,3.4,0,0,1,1.589,13.647Zm31.58,4.031c0.045-1.141.091-2.321,0.021-3.48A3.551,3.551,0,0,1,35.8,10.6a5.086,5.086,0,0,1,1.393-.194H37.23a1.108,1.108,0,0,1,1.288,1.027c0.175,0.832.281,1.7,0.383,2.535,0.03,0.242.059,0.482,0.09,0.725a3.445,3.445,0,0,1,.01.553c0,0.092-.006.184-0.006,0.277V15.7l0.032,0L39,16.114q-0.05.74-.1,1.479a0.687,0.687,0,0,1-.424.659,9.472,9.472,0,0,1-5.117.688c-0.17-.022-0.234-0.054-0.226-0.312C33.144,18.312,33.157,17.994,33.169,17.677Zm-0.478-6.69L32.684,11c-0.061-.084-0.12-0.17-0.179-0.253a5.243,5.243,0,0,0-.765-0.935,4.133,4.133,0,0,0-4.319-.646,5.46,5.46,0,0,0-3.389,3.171l-0.007-.017a5.541,5.541,0,0,0-5.157-3.45,5.826,5.826,0,0,0-.612.032,3.693,3.693,0,0,0-2.841,2.124c-0.05-.06-0.1-0.117-0.151-0.174A5.309,5.309,0,0,0,10.091,8.99,2.475,2.475,0,0,0,8.17,10.7c-0.062-.071-0.119-0.138-0.177-0.2A4.722,4.722,0,0,0,4.8,8.844,2.681,2.681,0,0,0,2.1,10.4a8.579,8.579,0,0,1-.467-3.63,10.417,10.417,0,0,1,.5-2.258A4.122,4.122,0,0,1,5.822,1.662a22.366,22.366,0,0,1,7.669.612,41.079,41.079,0,0,1,7.181,2.338,8.24,8.24,0,0,0,6.7.006A40.759,40.759,0,0,1,36.443,1.9a20.19,20.19,0,0,1,5.689-.251A4.345,4.345,0,0,1,46.12,5.024a8.982,8.982,0,0,1-.163,5.388,2.861,2.861,0,0,0-3.733-1.361A5,5,0,0,0,39.891,10.7q-0.015-.033-0.027-0.065a2.592,2.592,0,0,0-2.451-1.74A5.381,5.381,0,0,0,32.691,10.987Zm-1,5.948c0,0.493.009,1-.009,1.5a1.039,1.039,0,0,1-1.112,1.209,19.773,19.773,0,0,1-4.992.2c-0.591-.057-0.644-0.105-0.708-0.645a16.127,16.127,0,0,1,.426-5.9,3.965,3.965,0,0,1,3.86-2.91q0.2,0,.407.02a2.158,2.158,0,0,1,1.918,1.909c0.114,0.913.185,1.849,0.253,2.754,0.025,0.336.051,0.672,0.079,1.007l-0.125,0v0.183C31.688,16.487,31.69,16.711,31.692,16.935ZM9.373,11.977c0.233-1.193.6-1.593,1.623-1.593,0.157,0,.331.009,0.521,0.026a3.858,3.858,0,0,1,3.283,2.8,1.826,1.826,0,0,1,.055.424c0,1.4,0,2.8,0,4.24V18.9l-0.194.035a5.331,5.331,0,0,1-.789.1,10.906,10.906,0,0,1-3.835-.568,1.159,1.159,0,0,1-.918-1.155A20.109,20.109,0,0,1,9.373,11.977Zm-6.064-.37a1.377,1.377,0,0,1,.532-1.059,1.247,1.247,0,0,1,.717-0.2,2.318,2.318,0,0,1,.631.1,3.279,3.279,0,0,1,2.4,3.522A22.684,22.684,0,0,0,7.6,16.274c0.012,0.322.024,0.655,0.03,0.981,0,0.14.011,0.277,0.022,0.436l0.005,0.085a6.211,6.211,0,0,1-2.686-.195A3.554,3.554,0,0,1,3.494,17a2.231,2.231,0,0,1-.255-1.275c-0.007-.113-0.014-0.234-0.023-0.364A21.886,21.886,0,0,1,3.309,11.607ZM16.24,16.034c0.028-.341.053-0.685,0.078-1.02,0.067-.9.135-1.832,0.26-2.737a2.1,2.1,0,0,1,.883-1.475,2.681,2.681,0,0,1,2.141-.35,3.94,3.94,0,0,1,3.24,3.2,16.519,16.519,0,0,1,.342,5.588,0.526,0.526,0,0,1-.61.6,20.217,20.217,0,0,1-5.32-.218,0.943,0.943,0,0,1-.872-1.033c-0.019-.547-0.015-1.105-0.01-1.644,0-.242,0-0.482,0-0.722V16.039ZM40.4,17.582c0.02-1.458.016-2.908,0.011-4.268a2.993,2.993,0,0,1,1.031-2.037,3.026,3.026,0,0,1,1.969-.924l0.095,0a1.1,1.1,0,0,1,1.167.952c0.127,0.717.2,1.44,0.259,2.079,0.023,0.242.046,0.469,0.069,0.677-0.037.3-.069,0.586-0.1,0.851-0.073.643-.135,1.2-0.236,1.739a0.819,0.819,0,0,1-.375.5,7.253,7.253,0,0,1-3.72.671C40.44,17.811,40.4,17.809,40.4,17.582ZM45.424,34.77a3.649,3.649,0,0,0-2.8-.494,5.055,5.055,0,0,0-2.588,1.338,3.775,3.775,0,0,0-3.711-1.34,5.754,5.754,0,0,0-3.559,1.7,4.473,4.473,0,0,0-4.6-1.684,6.362,6.362,0,0,0-4.143,2.691,6.368,6.368,0,0,0-4.154-2.692,4.479,4.479,0,0,0-4.594,1.688,5.468,5.468,0,0,0-3.223-1.666,3.941,3.941,0,0,0-4.034,1.3l0,0c-0.113-.1-0.231-0.2-0.351-0.3a4.96,4.96,0,0,0-3.418-1.124,3.4,3.4,0,0,0-3.048,3.145,18.633,18.633,0,0,0,.013,5.021,2.981,2.981,0,0,0,1.625,2.6,9.38,9.38,0,0,0,4.4.87,3.342,3.342,0,0,1,1.6.285,11.284,11.284,0,0,0,6.253.8,0.5,0.5,0,0,1,.283.011,3.685,3.685,0,0,0,1.826.715,18.586,18.586,0,0,0,5.8.118,5.65,5.65,0,0,1,2.047,0,12.838,12.838,0,0,0,2.231.182,23.615,23.615,0,0,0,2.915-.21l0.109-.014a4.167,4.167,0,0,0,2.411-.832,0.442,0.442,0,0,1,.156,0,10.714,10.714,0,0,0,6.938-1.1,0.439,0.439,0,0,1,.213-0.042c0.23,0,.467.014,0.7,0.025a11.394,11.394,0,0,0,1.392.005,7.854,7.854,0,0,0,3.24-.894,2.525,2.525,0,0,0,1.369-1.862,17.13,17.13,0,0,0,.111-5.78A3.663,3.663,0,0,0,45.424,34.77ZM32.089,38.458c0.014,0.184.044,0.367,0.074,0.544,0.013,0.079.027,0.159,0.039,0.239l0.02,0.136,0.447,0.078,0.059-.14c0.03-.072.062-0.143,0.093-0.213a5.181,5.181,0,0,0,.2-0.492,3.784,3.784,0,0,1,3.054-2.754,5.037,5.037,0,0,1,1.578-.038A1.523,1.523,0,0,1,39,36.942c0.1,0.328.19,0.655,0.3,1.029l0.293,1.019,0.222-.388,0.158-.272c0.082-.142.147-0.253,0.206-0.367a3.711,3.711,0,0,1,3.244-2.252,1.609,1.609,0,0,1,1.812,1.4,17.2,17.2,0,0,1,.261,2.98,13.5,13.5,0,0,1-.15,1.769c-0.034.264-.069,0.537-0.1,0.806a1.057,1.057,0,0,1-.667.9,7.645,7.645,0,0,1-4.264.679,1.448,1.448,0,0,1-.41-0.151c-0.064-.031-0.124-0.061-0.184-0.084l-0.1-.039-0.084.062c-0.118.087-.229,0.178-0.336,0.267a2.83,2.83,0,0,1-.656.45,9.659,9.659,0,0,1-5.22.652,2.586,2.586,0,0,1-.617-0.207c-0.112-.048-0.228-0.1-0.351-0.142l-0.179-.066-0.064.181c-0.329.928-1.164,0.985-2.047,1.046l-0.312.022c-1.185.1-2.4,0.1-3.579,0.107h-0.3a1.55,1.55,0,0,1-1.517-.63,0.322,0.322,0,0,0-.307-0.121,0.427,0.427,0,0,0-.372.147,1.4,1.4,0,0,1-1.277.6,22.48,22.48,0,0,1-5.189-.242,1.55,1.55,0,0,1-1.288-.978l-0.086-.2-0.187.113A5.385,5.385,0,0,1,12,45.4l-0.04-.006a4.844,4.844,0,0,1-3.37-1.364l-0.11-.13-0.14.1a3.4,3.4,0,0,1-2.49.244l-0.016,0a12.852,12.852,0,0,1-2.121-.568l-0.07-.023a1.237,1.237,0,0,1-.861-1.106,15.818,15.818,0,0,1-.07-5,2.2,2.2,0,0,1,.935-1.6A2.193,2.193,0,0,1,5.5,35.848,3.974,3.974,0,0,1,7.9,37.988C7.95,38.1,8.01,38.2,8.086,38.333c0.038,0.066.081,0.138,0.128,0.221L8.392,38.87l0.157-.327c0.032-.068.061-0.124,0.086-0.173A1.962,1.962,0,0,0,8.754,38.1,0.856,0.856,0,0,0,8.788,37.9,0.861,0.861,0,0,1,8.8,37.8c0.36-1.793,1.191-2.3,3.178-1.953a3.757,3.757,0,0,1,3.061,2.745c0.056,0.172.127,0.338,0.2,0.5,0.031,0.072.062,0.146,0.091,0.219l0.055,0.136,0.432-.057,0.026-.134c0.012-.062.027-0.125,0.042-0.187a2.511,2.511,0,0,0,.078-0.454,2.961,2.961,0,0,1,1.156-2.352,3.3,3.3,0,0,1,2.832-.407,4.585,4.585,0,0,1,3.522,3.817,1.591,1.591,0,0,1,.017.185,0.594,0.594,0,0,0,.561.713,0.586,0.586,0,0,0,.526-0.7,1.544,1.544,0,0,1,.017-0.181,4.693,4.693,0,0,1,4.175-3.965,2.927,2.927,0,0,1,2.264.606A2.98,2.98,0,0,1,32.089,38.458Zm-6.333-10.67a0.8,0.8,0,0,0,.155-0.877,2.537,2.537,0,0,0-1.869-1.2H24.021a2.579,2.579,0,0,0-1.875,1.2,0.835,0.835,0,0,0,.182.909,0.685,0.685,0,0,0,.434.125,1.327,1.327,0,0,0,.422-0.07,1.5,1.5,0,0,0,.532-0.41l0.079-.082C23.978,27.2,24.1,27.2,24.3,27.4c0.037,0.036.074,0.075,0.111,0.114a1.292,1.292,0,0,0,.5.379A1,1,0,0,0,25.756,27.788Zm-2.479,3.068a0.708,0.708,0,0,0,.731.764h0.025a0.731,0.731,0,0,0,.532-0.193,0.8,0.8,0,0,0,.218-0.585c0.008-.772.008-1.569,0-2.37a0.753,0.753,0,1,0-1.506.009c-0.006.266,0,.536,0,0.8,0,0.115,0,.229,0,0.343s0,0.249,0,.373C23.272,30.276,23.271,30.568,23.278,30.856Z'/%3E%3C/svg%3E%0A");
  background-size: auto 27px;
  height: 27px;
}

@media only screen and (min-width: 769px) {
  .fixed_banner {
    width: 96px;
    height: 300px;
  }

  .fixed_banner .tel {
    border: 1px solid #b1d8ff;
    height: 96px;
  }

  .fixed_banner .tel p {
    padding: 0;
    text-align: left;
  }

  .fixed_banner .web {
    border: 1px solid #e7d7bb;
    height: 96px;
  }

  .fixed_banner .tool {
    border: 1px solid #b1d8ff;
    height: 96px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1170px) {
  .fixed_banner {
    top: 70px;
    width: 70px;
  }

  .fixed_banner .tel,
  .fixed_banner .web,
  .fixed_banner .tool {
    height: 70px;
  }

  .fixed_banner .tel p,
  .fixed_banner .web p,
  .fixed_banner .tool p {
    font-size: 11px;
  }

  .fixed_banner .tool p {
    letter-spacing: 0;
  }

  .fixed_banner .tel p::before {
    height: 18px;
    margin-bottom: 5px;
  }

  .fixed_banner .web p::before {
    height: 23px;
    margin-bottom: 5px;
    background-size: contain;
  }
  .fixed_banner .tool p::before{
    background-size: auto 22px;
    margin-bottom: 5px;
    height: 22px;
  }
}

.btn-group .btn a {
  display: block;
}

.btn-group .btn.style01,
.btn-group .btn.style02 {
  width: 100%;
  min-width: 180px;
  max-width: 300px;
  overflow: hidden;
}

.btn-group .btn.style01 a,
.btn-group .btn.style02 a {
  padding: 11px 10px 12px;
  position: relative;
  font-size: 22px;
  font-weight: 400;
  letter-spacing: 1px;
  line-height: 1.5;
  color: #fff;
  text-decoration: none;
  text-align: center;
}

.btn-group .btn.style01 a:hover,
.btn-group .btn.style02 a:hover {
  opacity: 1;
  background-color: #9cb5ba;
}

.btn-group .btn.style01 a::after,
.btn-group .btn.style02 a::after {
  content: "";
  position: absolute;
  right: 5px;
  bottom: 5px;
  border: 4px solid #fff;
  border-left-color: transparent;
  border-top-color: transparent;
}

.btn-group .btn.style01.md a,
.btn-group .btn.md.style02 a {
  font-size: 18px;
}

.btn-group .btn.style01.md a::after,
.btn-group .btn.md.style02 a::after {
  font-size: 23px;
}

.btn-group .btn.bg01 a {
  background-color: #659cc1;
}

.btn-group .btn.bg02 a {
  background-color: #f4bf0c;
}

.slick-arrow {
  display: block;
  border: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-color: transparent;
  position: absolute;
  top: 37%;
  width: 38px;
  height: 38px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  cursor: pointer;
  color: transparent;
}

.slick-arrow:focus {
  outline: 0;
}

.slick-prev {
  left: -55px;
}

.slick-next {
  right: -55px;
}

/* Tablet
-------------------------------------------*/
@media only screen and (min-width: 769px) and (max-width: 1280px) {
  body {
    font-size: 87.5%;
  }

  .btn.style01 a,
  .btn-group .btn.style02 a,
  .btn.style02 a {
    font-size: 14px;
  }

  .totop {
    right: 10px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1170px) {
  .inner {
    max-width: none;
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1000px) {
  .inner_sm {
    max-width: none;
    padding-left: 10px;
    padding-right: 10px;
  }
}

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                           Header - Footer                                */
/*==========================================================================*/
h1 {
  font-size: 10px;
}

header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 20;
}

header.active {
  top: 0;
  left: 0;
  position: fixed;
  -webkit-animation: aniscroll 0.5s ease;
  animation: aniscroll 0.5s ease;
  background: #0d417e;
}

header.active .logo {
  padding-top: 0;
}

header.active .logo img {
  height: 70px;
}

header.active .logo1 {
  display: none;
}

header.active .logo2 {
  display: block;
}

@-webkit-keyframes aniscroll {
  from {
    top: -110px;
  }

  to {
    top: 0;
  }
}

@keyframes aniscroll {
  from {
    top: -110px;
  }

  to {
    top: 0;
  }
}

.header_top {
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-right: 96px;
  max-width: 1834px;
  padding-left: 10px;
  margin-left: auto;
}

.logo {
  width: 25%;
  max-width: 154px;
  padding-top: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.logo a {
  display: block;
  width: 100%;
  text-align: center;
}

.logo1 {
  display: block;
}

.logo2 {
  display: none;
}

@media (-ms-high-contrast: none),
(-ms-high-contrast: active) {
  .logo {
    width: 154px;
  }
}

.right_head {
  width: 72%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.pc_navi {
  width: 100%;
  padding-right: 25px;
}

.pc_navi>ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: center;
  justify-content: flex-end;
}

.pc_navi>ul>li {
  position: relative;
  margin: 0 34px;
}

/* .pc_navi>ul>li:nth-child(1) {
  width: 15%;
}

.pc_navi>ul>li:nth-child(2) {
  width: 23%;
} */

.pc_navi>ul>li:nth-child(4) .subInner,
.pc_navi>ul>li:nth-child(5) .subInner {
  width: 440px;
}

.pc_navi>ul>li:nth-child(4) .subInner ul,
.pc_navi>ul>li:nth-child(5) .subInner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.pc_navi>ul>li:nth-child(4) .subInner li,
.pc_navi>ul>li:nth-child(5) .subInner li {
  width: 50%;
}

/* .pc_navi>ul>li:nth-child(3) {
  width: 17%;
}

.pc_navi>ul>li:nth-child(4) {
  width: 23%;
}

.pc_navi>ul>li:nth-child(5) {
  width: 22%;
  max-width: 118px;
} */

.pc_navi>ul>li>a,
.pc_navi>ul>li>p {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin: 0;
  width: 100%;
  height: 96px;
  text-decoration: none;
  text-align: center;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #fff;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.pc_navi>ul>li>a span,
.pc_navi>ul>li>p span {
  display: block;
  padding-top: 0px;
  font-size: 66.66666666666667%;
  font-weight: 600;
  color: #fff;
}

.pc_navi>ul>li>a.title,
.pc_navi>ul>li>p.title {
  position: relative;
}

.pc_navi>ul>li>a.title::after,
.pc_navi>ul>li>p.title::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #fff transparent transparent transparent;
  bottom: 20px;
  left: calc(50% - 5px);
  -webkit-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.pc_navi>ul>li:hover>a,
.pc_navi>ul>li:hover>p {
  opacity: 0.7;
}

.pc_navi>ul>li:hover a.title::after,
.pc_navi>ul>li:hover p.title::after {
  -webkit-transform: translateY(5px);
  -ms-transform: translateY(5px);
  transform: translateY(5px);
}

.pc_navi>ul .subInner {
  position: absolute;
  width: 220px;
  right: 50%;
  bottom: 0px;
  padding-top: 0px;
  -webkit-transform: translate(50%, 100%);
  -ms-transform: translate(50%, 100%);
  transform: translate(50%, 100%);
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  opacity: 0;
  visibility: hidden;
  z-index: 1;
}

.pc_navi>ul .subInner.active {
  opacity: 1;
  visibility: visible;
}

.pc_navi>ul .subInner ul {
  background-color: rgba(13, 65, 126, 0.9);
  padding-bottom: 10px;
}

.pc_navi>ul .subInner ul li {
  padding: 0 10px;
  position: relative;
  z-index: 0;
}

.pc_navi>ul .subInner ul li::before {
  content: '';
  position: absolute;
  z-index: -1;
  height: 1px;
  bottom: 0;
  left: 10px;
  right: 10px;
  background: rgba(255, 255, 255, 0.7);
}

.pc_navi>ul .subInner ul li a {
  position: relative;
  display: block;
  padding: 19px 10px 19px 28px;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  text-align: left;
  letter-spacing: 0px;
}

.pc_navi>ul .subInner ul li a::before {
  content: "\203A";
  display: block;
  position: absolute;
  top: 49%;
  left: 10px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  line-height: 0;
  font-size: 14px;
}

@media only screen and (min-width: 769px) and (max-width: 1280px) {
  .pc_navi{padding-right: 0;}
  .pc_navi>ul>li{margin: 0 1.2vw;}
  .pc_navi>ul>li>a,
  .pc_navi>ul>li>p {
    font-size: 14px;
  }

  .pc_navi>ul>li>a.title::after,
  .pc_navi>ul>li>p.title::after {
    border-width: 4px 4px 0 4px;
    left: calc(50% - 5px);
  }

  .pc_navi>ul .subInner ul li a {
    font-size: 14px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1170px) {
  header.active .logo img {
    height: 48px;
  }

  .logo {
    max-width: 85px;
    padding-top: 10px;
  }

  .pc_navi>ul>li>a,
  .pc_navi>ul>li>p {
    height: 70px;
  }
}

footer .footer_content {
  background: url(../images/footer_bg.jpg) no-repeat center/cover;
  padding: 60px 0 32px;
}

footer .ft_inner {
  width: 50%;
  margin: 0 0 0 auto;
  max-width: 585px;
}

footer .ft_logo {
  max-width: 154px;
  margin: 0 auto 20px;
}

footer .footer_content .ft_bnr {
  margin: 30px auto;
}

footer .footer_content .ft_bnr img {
  image-rendering: -webkit-optimize-contrast;
}

@media (-ms-high-contrast: none),
(-ms-high-contrast: active) {
  footer .ft_logo {
    width: 154px;
  }
}

footer .ft_info {
  max-width: 496px;
  margin: 0 auto 31px;
}

footer .ft_map {
  line-height: 0;
  border-radius: 5px;
  overflow: hidden;
}

footer .ft_link {
  padding-top: 11px;
  font-size: 14px;
  color: #333;
}

footer .ft_link a {
  text-decoration: none;
}

footer .ft_link .menu01,
footer .ft_link .menu02 {
  width: 49.5%;
}

footer .ft_link .menu02 {
  max-width: 252px;
}

footer .ft_link .ttl {
  border-bottom: 1px solid #0d417e;
  margin-bottom: 21px;
  padding-bottom: 9px;
  padding-left: 0;
  font-size: 24px;
  font-weight: 500;
  color: #0d417e;
  letter-spacing: 0.1em;
  line-height: 1;
  pointer-events: none;
  display: inline-block;
  text-transform: uppercase;
}

footer .ft_link .ttl::before {
  display: none;
}

footer .ft_link ul:last-child {
  margin-bottom: 0;
}

footer .ft_link li {
  position: relative;
  padding-left: 12px;
  margin-bottom: 17px;
  letter-spacing: 0.1em;
  line-height: 23px;
  color: #000;
}

footer .ft_link li.last {
  margin-bottom: 29px;
}

footer .ft_link li:last-child {
  margin-bottom: 0;
}

footer .ft_link li:not(.ttl)::before {
  content: "";
  background-color: #d9b063;
  border-radius: 2px;
  width: 4px;
  height: 4px;
  position: absolute;
  top: 9px;
  left: 0px;
}

footer .ft_link a {
  color: inherit;
}

footer .ft_link a:hover {
  opacity: 1;
  text-decoration: underline;
}

footer .ft_info .des {
  margin-bottom: 3px;
  line-height: 2.2;
  letter-spacing: 0.2em;
  text-align: center;
}

footer .ft_cm_tel .cm_box1 {
  margin-right: 0;
}

footer .ft_cm_tel .ft_tel a {
  background-size: 25px auto;
  padding-left: 35px;
  font-size: 32px;
  line-height: 1.3;
}

footer .ft_cm_tel .cm_web .ic {
  font-size: 20px;
}

footer .ft_cm_tel .cm_web {
  margin-top: 4px;
  padding: 6px 25px;
}

footer .ft_cm_tel .cm_web .ic {
  background-size: 20px auto;
}

footer .ft_cm_tel .note {
  padding-left: 5px;
}

footer .copyright {
  background: #0d417e;
  padding: 16px 10px 20px;
}

footer .copyright p {
  color: #fff;
  font-size: 12px;
  text-align: center;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) and (max-width: 1400px) {
  footer .ft_cm_tel {
    max-width: 400px;
    margin: 0 auto;
  }

  footer .ft_cm_tel .ft_tel a {
    background-size: 21px auto;
    background-position: left top 5px;
    padding-left: 27px;
    font-size: 26px;
    line-height: 1.3;
  }

  footer .ft_cm_tel .note {
    font-size: 13px;
  }

  footer .ft_cm_tel .cm_box1 {
    margin-right: 0;
    width: 65%;
  }

  footer .ft_cm_tel .cm_web {
    width: 33%;
    padding: 6px 12px;
  }

  footer .ft_cm_tel .cm_web .ic {
    font-size: 14px;
    background-size: 16px auto;
    background-position: left top 5px;
    padding: 5px 0 5px 24px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1170px) {
  footer {
    padding-top: 60px;
  }

  footer .ft_link li {
    letter-spacing: 0;
    font-size: 14px;
  }

  footer .ft_link .menu01 {
    width: 49%;
  }

  footer .ft_link .menu02 {
    width: 45%;
  }

  footer .copyright p {
    font-size: 11px;
  }
}

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                                INDEX                                     */
/*==========================================================================*/
.home_page .key {
  background-color: #161616;
  background-size: cover;
  height: 56.8636vw;
  max-height: 1091px;
  overflow: hidden;
}

.home_page .key .inner {
  position: relative;
  height: 100%;
  padding: 0;
}

.home_page .key .key_text {
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
}

.home_page .key .key_text::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  background: rgba(66, 47, 28, 0.6);
}

.home_page .key .key_text .item {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 56.8636vw;
  max-width: 1170px;
  margin: 0 auto;
  position: relative;
  z-index: 0;
}

.home_page .key ul {
  position: relative;
  z-index: 3;
}

.home_page .key .key_b_h2 {
  width: 100%;
  position: absolute;
  left: 10px;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  top: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.home_page .key #myvideo {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
  width: 101vw;
  height: 56.8636vw;
}

.home_page .key h2,
.home_page .key p {
  color: #fff;
  -ms-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  -webkit-writing-mode: tb-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: tb-rl;
  white-space: nowrap;
  display: block;
  text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.4);
}

.home_page .key h2 {
  font-size: 42px;
  line-height: 1.6;
  padding-left: 20px;
  letter-spacing: 0.09em;
  font-weight: bold;
}

.home_page .key p {
  font-size: 24px;
  font-weight: 200;
  letter-spacing: .4em;
  line-height: 1.8;
}

.home_page .key .txt_h2 {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
}

.home_page .idx_scroll {
  position: absolute;
  left: calc(50% - 9px);
  bottom: 20px;
  width: 18px;
  height: 43px;
  background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='43' viewBox='0 0 18.125 43.031'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23fff; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath id='icon_scroll.svg' class='cls-1' d='M951.034,873.157c0-2.53-.086-5.063.018-7.589a9.021,9.021,0,0,1,17.883-1.275,7.355,7.355,0,0,1,.164,1.35c0.008,5.111.1,10.224-.032,15.333a9.02,9.02,0,0,1-17.938.827,10.145,10.145,0,0,1-.119-1.813c-0.013-2.278,0-4.555,0-6.833h0.029Zm16.578,0.066h0c0-2.455.03-4.909-.006-7.365a7.545,7.545,0,1,0-15.08.515q-0.021,6.87,0,13.743a9.474,9.474,0,0,0,.148,1.655,7.576,7.576,0,0,0,8.236,6.193,7.662,7.662,0,0,0,6.7-7.527C967.634,878.032,967.612,875.628,967.612,873.223Zm-7.548,24.905c1.284-1.327,2.48-2.563,3.676-3.8,0.156-.162.308-0.329,0.475-0.478a0.7,0.7,0,0,1,1.054-.021,0.747,0.747,0,0,1-.008,1.138c-0.333.373-.689,0.721-1.037,1.08q-1.67,1.716-3.341,3.431c-0.662.675-.959,0.68-1.6,0.024-1.412-1.446-2.815-2.9-4.229-4.341-0.4-.41-0.719-0.862-0.218-1.359s0.933-.13,1.321.272C957.431,895.407,958.713,896.729,960.064,898.128Zm0.745-34.22a6.49,6.49,0,0,1-.03,1.5,1.191,1.191,0,0,1-.688.784,0.673,0.673,0,0,1-.761-0.788c-0.006-1.007-.054-2.02.031-3.02a1.1,1.1,0,0,1,.685-0.781,0.678,0.678,0,0,1,.762.79C960.813,862.9,960.809,863.405,960.809,863.908Z' transform='translate(-951 -856.938)'/%3E%3C/svg%3E%0A") no-repeat center/contain;
  z-index: 4;
  -webkit-animation: btn-scroll 2.5s ease infinite;
  animation: btn-scroll 2.5s ease infinite;
}

.home_page .idx_scroll:hover {
  cursor: pointer;
  opacity: 0.7;
}

.home_page .idx_scroll a {
  display: block;
  width: 100%;
  height: 100%;
}

.home_page .topic_path {
  display: none;
}
.home_page #mainContent{
  position: relative;
}

@-webkit-keyframes btn-scroll {

  0%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
}

@keyframes btn-scroll {

  0%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
}

@media only screen and (min-width: 769px) and (max-width: 1400px) {
  .home_page .key .key_text .item {
    width: 70%;
  }

  .home_page .key h2 {
    padding-left: 2vw;
    font-size: 2.5vw;
  }

  .home_page .key p {
    font-size: 1.3vw;
  }
}


@media only screen and (min-height: 610px) and (max-height: 700px) {
  .home_page .key .key_text .item {
    width: 70%;
  }

  .home_page .key h2 {
    padding-left: 2vw;
    font-size: 2vw;
  }

  .home_page .key p {
    font-size: 1.2vw;
  }
}

.idx_gallery {
  background: url(../images/idx_gallery_img.png) repeat-x;
  background-position: 0 center;
  background-size: auto 100%;
  -webkit-animation: idx_key 50s linear infinite;
  animation: idx_key 50s linear infinite;
  height: 250px;
  margin: 80px 0;
}

@-webkit-keyframes idx_key {
  from {
    background-position: 0 center;
  }

  to {
    background-position: -3860px center;
  }
}

@keyframes idx_key {
  from {
    background-position: 0 center;
  }

  to {
    background-position: -3860px center;
  }
}

.idx_ttl {
  letter-spacing: 0.18em;
  font-size: 36px;
  color: #0d417e;
  font-weight: bold;
  line-height: 1.3;
}

.idx_ttl.cl02 {
  color: #d9b063;
}
.idx_ttl.cl02 .sub{
  display: block;
}
.idx_ttl.cl02 .en, .idx_ttl.cl02 .sub {
  color: #0d417e;
  font-size: 60%;
  margin-top: 5px;
}

.idx_ttl.cl02 .en::before,
.idx_ttl.cl02 .en::after {
  background: #0d417e;
}

.idx_ttl .en {
  display: table;
  position: relative;
  z-index: 0;
  padding: 0 18px 0 20px;
  margin: 0 auto;
  color: #d9b063;
  font-size: 40%;
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 0.1em;
}

.idx_ttl .en::before,
.idx_ttl .en::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 10px;
  height: 1px;
  background: #d9b063;
  top: 50%;
}

.idx_ttl .en::before {
  left: 0;
}

.idx_ttl .en::after {
  right: 0;
}

.ttl_style1 {
  margin-bottom: 25px;
  font-size: 42px;
  color: #0d417e;
  font-weight: bold;
  letter-spacing: 0.15em;
}

.ttl_style1 .small {
  display: block;
  margin-top: 3px;
  letter-spacing: 0.2em;
  font-size: 20px;
  color: #d9b063;
}

.ttl_style2 {
  background: url(../images/icon_h3_white.png) no-repeat top center/62px auto;
  padding-top: 70px;
  color: #fff;
  font-size: 18px;
  text-align: center;
  letter-spacing: 0.2em;
}

.ttl_style2 .en {
  display: table;
  position: relative;
  z-index: 0;
  padding: 0 70px 0 80px;
  margin: 0 auto;
  font-size: 42px;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 0.2em;
}

.ttl_style2 .en::before,
.ttl_style2 .en::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 60px;
  height: 1px;
  background: #fff;
  top: 50%;
}

.ttl_style2 .en::before {
  left: 0;
}

.ttl_style2 .en::after {
  right: 0;
}

.ttl_style3 {
  background: url(../images/idx_icon_h3.png) no-repeat top center/42px auto;
  padding-top: 49px;
  margin-bottom: 47px;
  text-align: center;
  color: #0d417e;
  font-size: 42px;
  font-weight: bold;
  letter-spacing: 0.1em;
}

.ttl_style3 .jp {
  display: block;
  position: relative;
  z-index: 0;
}

.ttl_style3 .jp::before,
.ttl_style3 .jp::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: calc(50% - 120px);
  height: 1px;
  background: #d9b063;
  top: 50%;
}

.ttl_style3 .jp::before {
  left: 0;
}

.ttl_style3 .jp::after {
  right: 0;
}

.ttl_style4 {
  display: table;
  margin: 0 auto 30px;
  color: #30548d;
  font-size: 42px;
  line-height: 1.6;
  letter-spacing: 0.2em;
  font-weight: bold;
  text-align: center;
}

.ttl_style4 .en {
  display: table;
  margin: 0 auto;
  padding: 0 51px;
  position: relative;
  z-index: 0;
  font-size: 14px;
  color: #d79d43;
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 0.18em;
}

.ttl_style4 .en::before,
.ttl_style4 .en::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: 50%;
  width: 30px;
  height: 1px;
  background: #d79d43;
}

.ttl_style4 .en::before {
  left: 0;
}

.ttl_style4 .en::after {
  right: 0;
}

.cm_btn {
  background: #0d417e;
  max-width: 250px;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
  z-index: 0;
}

.cm_btn::before,
.cm_btn::after {
  content: '';
  position: absolute;
  z-index: -1;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.cm_btn::after {
  top: calc(50% - 5px);
  right: 20px;
  width: 30px;
  height: 8px;
  background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='8' viewBox='0 0 30 8'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23fff; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath id='icon_arown.svg' class='cls-1' d='M713,1366h30v1H713v-1Zm28-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v8h-1v-8Z' transform='translate(-713 -1361)'/%3E%3C/svg%3E%0A") no-repeat right/contain;
}

.cm_btn.bg_yellow {
  background: #d9b063;
}

.cm_btn a {
  display: block;
  height: 100%;
  color: #fff;
  padding: 18px 10px 19px;
  text-align: center;
  text-decoration: none;
  letter-spacing: 0.1em;
}

.cm_btn:hover::before {
  width: 100%;
}

.cm_btn:hover::after {
  right: 13px;
}

.cm_btn:hover a {
  opacity: 1;
}

.gr_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.gr_btn .cm_btn {
  width: 48%;
}

@media only screen and (max-width: 1170px) and (min-width: 769px) {
  .idx_ttl {
    font-size: 30px;
  }

  .ttl_style1 {
    font-size: 34px;
  }

  .ttl_style1 .small {
    font-size: 18px;
  }

  .ttl_style2 .en {
    font-size: 32px;
  }

  .ttl_style4 {
    font-size: 32px;
  }
}

.idx1_blog .idx01_bg {
  top: -70px;
  width: 100%;
  position: absolute;
  z-index: 2;
}

.idx1_blog .idx01_bg:after {
  position: absolute;
  content: '';
  left: 0;
  top: 0;
  right: 0;
  height: 100%;
  background: #d2d2d2;
  opacity: 0.4;
}

.idx1_blog .idx01_inner {
  max-width: 1390px;
  margin: auto;
  padding: 0 110px;
  position: relative;
  z-index: 1;
}

.idx1_blog .box_post {
  height: 70px;
  padding-left: 11.5%;
  display: flex;
  align-items: center;
}

.idx1_blog .box_post p,
.idx1_blog .box_post a {
  color: #fff;
}

.idx1_blog .box_post a {
  text-decoration: none;
}

.idx1_blog .box_post .ttl {
  width: 203px;
  font-size: 22px;
  letter-spacing: 0.1em;
  line-height: 1;
  padding-top: 16px;
}

.idx1_blog .box_post .ttl a {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.idx1_blog .box_post .ttl a:hover {
  opacity: 1;
}

.idx1_blog .list_post {
  width: calc(100% - 203px);
  padding-left: 26px;
  position: relative;
}

.idx1_blog .list_post:before {
  content: "";
  position: absolute;
  left: 0;
  top: 13%;
  height: 77%;
  width: 1px;
  background-color: rgba(255, 255, 255, 0.5);
}

.idx1_blog .list_post li {
  width: 100%;
  position: relative;
  z-index: 1;
  background: url(../images/more_ic.png) no-repeat;
  background-position: center right 10px;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.idx1_blog .list_post li:after {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.3);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  z-index: -1;
}

.idx1_blog .list_post li:not(:last-child) {
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.idx1_blog .list_post a {
  padding: 8px 30px 8px 11px;
  font-size: 16px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.idx1_blog .list_post a:hover {
  opacity: 1;
}

.idx1_blog .list_post .date {
  width: 107px;
}

.idx1_blog .list_post .txt {
  letter-spacing: 0.05em;
  width: calc(100% - 107px);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media only screen and (min-width: 769px) {
  .idx1_blog .box_post .ttl a:hover {
    color: #0d417e;
  }

  .idx1_blog .list_post li:hover {
    background-position: center right 15px;
  }

  .idx1_blog .list_post li:hover:after {
    width: 100%;
  }
}

@media only screen and (max-width: 1280px) and (min-width: 769px) {

  .idx1_blog .box_post {
    padding-left: 0;
  }

  .idx1_blog .box_post .ttl {
    width: 170px;
    font-size: 18px;
  }

  .idx1_blog .list_post {
    width: calc(100% - 170px);
  }

  .idx1_blog .list_post a {
    font-size: 13px;
  }
}

@media only screen and (max-width: 1170px) and (min-width: 769px) {

  .idx1_blog .idx01_inner {
    padding: 0 80px;
  }
}


.idx1 {
  padding: 96px 10px 100px 10px;
  position: relative;
  z-index: 0;
}

.idx1::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  right: -5px;
  width: 192px;
  height: 537px;
  background: url(../images/idx1_bg2.png) no-repeat center/contain;
}

.idx1 .list {
  overflow-y: auto;
}

.idx1 .idx_ttl {
  margin-bottom: 27px;
  text-align: center;
}

.idx1 .cm_btn {
  margin: 40px auto 0;
}

.idx1 .list dl {
  border-color: #eae2d2;
}

.idx1 .list dl dt {
  color: #d9b063;
}

.idx1 .list dl:hover::after {
  background: #d9b063;
}

.idx1 .list dl:hover dd {
  color: #d9b063;
}

.idx1 .list dl {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  position: relative;
  border-top: 1px solid #e8e8e8;
  position: relative;
  z-index: 0;
}

.idx1 .list dl a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.idx1 .list dl dt,
.idx1 .list dl dd {
  padding: 14px 8px;
}

.idx1 .list dl dt {
  width: 134px;
  letter-spacing: 0.1em;
}

.idx1 .list dl dd {
  width: calc(100% - 134px);
  padding-left: 14px;
  letter-spacing: 0.15em;
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
}

.idx1 .list dl::after {
  content: '';
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  -webkit-transition: .6s all ease;
  -o-transition: .6s all ease;
  transition: .6s all ease;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
}

.idx1 .list dl:hover::after {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}

@media only screen and (max-width: 1280px) and (min-width: 769px) {
  .idx1 .col_l::before {
    width: 164px;
    height: 227px;
  }

  .idx1 .col_r::before {
    width: 102px;
  }

  .idx1 .col_l,
  .idx1 .col_r {
    padding: 96px 30px 100px 30px;
  }

  .idx1 .col_l .thumb,
  .idx1 .col_r .thumb {
    margin: 0 auto;
  }
}

@media only screen and (max-width: 1170px) and (min-width: 769px) {
  .idx1 .list dl dt {
    width: 110px;
  }

  .idx1 .list dl dd {
    width: calc(100% - 110px);
  }
}

.idx2_detil_top {
  padding: 88px 0 85px;
  position: relative;
  z-index: 0;
  background: url(../images/idx2_bg.jpg) no-repeat center/cover;
}

.idx2_detil_top::before,
.idx2_detil_top::after {
  content: '';
  position: absolute;
  z-index: -1;
  bottom: 0;
  z-index: -2;
}

.idx2_detil_top::before {
  left: 35px;
  width: 649px;
  height: 634px;
  background: url(../images/idx2_people1.png) no-repeat center/contain;
}

.idx2_detil_top::after {
  right: -5px;
  width: 550px;
  height: 634px;
  background: url(../images/idx2_people2.png) no-repeat center/contain;
}

.idx2_eng {
  position: absolute;
  width: 100%;
  z-index: -1;
  left: 0;
  right: 0;
  bottom: -5px;
  line-height: 0.85;
  color: rgba(255, 255, 255, 0.4);
  font-size: 4.1vw;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.193em;
}

.idx2_boximg {
  display: none;
}

.idx2_box {
  position: relative;
  z-index: 1;
  width: 70%;
  max-width: 730px;
  margin: 0 auto;
  text-align: center;
}

.idx2_box .txt {
  letter-spacing: 0.2em;
  line-height: 2.25;
}

.idx2_box .gr_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 15px;
}

.idx2_box .gr_btn .cm_btn {
  margin: 15px;
  max-width: 270px;
}

.idx2_box .gr_btn .bg_grow {
  background: #997024;
}

.idx2_box .gr_btn .btn_full {
  max-width: 350px;
}

.idx2_detil_bottom {
  padding: 100px 0;
}

.idx2 .idx_bnr_corona {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  background: #d9b063;
  max-width: 700px;
  margin: 0 auto;
  padding: 34px 30px 34px;
  z-index: 0;
  color: #fff;
  font-size: 36px;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
}

.idx2 .idx_bnr_corona::before,
.idx2 .idx_bnr_corona::after {
  content: '';
  position: absolute;
  z-index: -1;
}

.idx2 .idx_bnr_corona::before {
  top: -70px;
  left: 48.5%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 204px;
  height: 129px;
  background: url(../images/icon_corona.png) no-repeat center/contain;
}

.idx2 .idx_bnr_corona::after {
  top: calc(50% - 7px);
  right: 40px;
  width: 40px;
  height: 11px;
  background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='11' viewBox='0 0 40 11'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23fff; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath id='icon_arown_big.svg' class='cls-1' d='M160,913h40v1H160v-1Zm38-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v11h-1V906Z' transform='translate(-160 -906)'/%3E%3C/svg%3E%0A") no-repeat right/contain;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.idx2 .idx_bnr_corona:hover::after {
  right: 30px;
}

.idx2 .idx_bnr_corona:hover a {
  background: rgba(255, 255, 255, 0.3);
}

.idx2 .idx_bnr_corona .en {
  display: block;
  font-size: 16px;
  font-weight: 300;
  letter-spacing: 0.1em;
}

.idx2 .idx_bnr_corona a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.idx2 .idx_bnr_corona .ttl {
  line-height: 1.4;
  letter-spacing: 0.2em;
}

@media only screen and (max-width: 1700px) and (min-width: 769px) {
  .idx2_detil_top::before {
    width: 30vw;
    height: 29vw;
  }

  .idx2_detil_top::after {
    width: 25vw;
    height: 28.6vw;
  }
}

@media only screen and (max-width: 1170px) and (min-width: 769px) {
  .idx2_eng {
    font-size: 5.1vw;
  }

  .idx2_detil_top::before,
  .idx2_detil_top::after {
    content: none;
  }

  .idx2_title {
    position: relative;
  }

  .idx2_title .ttl_style1 {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .idx2_boximg {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 30px;
  }

  .idx2_boximg .img1,
  .idx2_boximg .img2 {
    width: 35%;
  }

  .idx2_box {
    width: 84%;
  }
}

.idx3_head {
  padding: 100px 0 54px;
  background: #0d417e;
  position: relative;
  z-index: 0;
}

.idx3_head::before,
.idx3_head::after {
  content: '';
  position: absolute;
  z-index: -1;
}

.idx3_head::before {
  top: 0;
  left: 4.7vw;
  width: 557px;
  height: 197px;
  background: url(../images/idx3_bg1.png) no-repeat center/contain;
}

.idx3_head::after {
  right: 4.7vw;
  bottom: 0;
  width: 557px;
  height: 196px;
  background: url(../images/idx3_bg2.png) no-repeat center/contain;
}

.idx3_detil {
  padding: 80px 0 100px;
  background: #eaf5ff;
}

.idx3_detil .inner {
  max-width: 1556px;
  padding: 0 10px;
}

.idx3_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 80px;
}

.idx3_box.last {
  margin-bottom: 0;
}

.idx3_box.img-r .box_text {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
  margin-left: 0;
  margin-right: -192px;
}

.idx3_box.img-r h4 .number {
  color: #d9b063;
}

.idx3_box.img-r h4 .ttl {
  color: #d9b063;
}

.idx3_box.item1 h4 .ttl {
  width: calc(100% - 151px);
  letter-spacing: 0.1em;
}

.idx3_box.item1 h4 .ttl_point .ic {
  position: relative;
  left: -8px;
}

.idx3_box.item1 .box_text .txt {
  max-width: 570px;
}

.idx3_box.item4 .box_text .txt {
  max-width: 551px;
}

.idx3_box .box_img {
  width: calc(50% + 192px);
}

.idx3_box .box_text {
  width: 50%;
  margin-top: 85px;
  margin-left: -192px;
  border: 2px solid #fff;
  padding: 66px 50px 80px;
  position: relative;
  z-index: 0;
  min-height: 550px;
}

.idx3_box .box_text::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 8px;
  left: 8px;
  right: 8px;
  bottom: 8px;
  background: #fff;
}

.idx3_box .box_text .txt {
  letter-spacing: 0.08em;
  line-height: 2.25;
  max-width: 568px;
  margin-left: auto;
  margin-right: auto;
}

.idx3_box .b_info {
  max-width: 576px;
  margin: 0 auto;
}

.idx3_box h4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 39px;
  font-weight: 700;
}

.idx3_box h4 .ttl_point {
  text-align: center;
}

.idx3_box h4 .ttl_point .ic {
  max-width: 71px;
  display: block;
  margin: 0 auto;
  position: relative;
  left: -3px;
}

@media (-ms-high-contrast: none),
(-ms-high-contrast: active) {
  .idx3_box h4 .ttl_point .ic {
    width: 71px;
  }
}

.idx3_box h4 .number {
  font-size: 106px;
  color: #0d417e;
  line-height: 0.94;
}

.idx3_box h4 .ttl {
  width: calc(100% - 162px);
  font-size: 36px;
  color: #0d417e;
  padding-top: 21px;
  line-height: 1.45;
  letter-spacing: 0.18em;
}

.idx3 .cm_btn {
  margin: 60px auto 0;
  max-width: 270px;
}

@media only screen and (max-width: 1400px) and (min-width: 769px) {

  .idx3_head::before,
  .idx3_head::after {
    width: 320px;
    height: 113px;
  }

  .idx3_box.item1 h4 .ttl {
    width: calc(100% - 11vw);
  }

  .idx3_box.item1 h4 .ttl_point .ic {
    left: 0;
  }

  .idx3_box h4 {
    margin-bottom: 2.5vw;
  }

  .idx3_box h4 .ttl_point {
    display: inline-block;
    width: 9vw;
  }

  .idx3_box h4 .ttl {
    width: calc(100% - 11vw);
    font-size: 2.4vw;
  }

  .idx3_box h4 .number {
    font-size: 8vw;
  }

  .idx3_box .box_text {
    padding: 6vw 5vw 6vw;
    min-height: auto;
  }

  .idx3_box .box_text .txt {
    letter-spacing: 0;
  }
}

@media only screen and (max-width: 1170px) and (min-width: 769px) {
  .idx3_box .box_text {
    width: 60%;
  }
}

.idx4 {
  padding: 99px 0 90px;
  position: relative;
  z-index: 0;
}

.idx4::before {
  content: '';
  position: absolute;
  z-index: -1;
  left: 0;
  bottom: 100px;
  height: 500px;
  width: 80.6%;
  background: url(../images/idx4_bg.png) no-repeat right 20.5% bottom/489px auto #fff9ed;
}

.idx4 .inner {
  max-width: 1748px;
  padding: 0 10px;
}

.idx4_detil {
  padding-right: 96px;
  padding-bottom: 101px;
  position: relative;
  z-index: 0;
}

.idx4_detil .text_eng {
  position: absolute;
  line-height: 0.76;
  right: 0;
  display: table;
  margin-bottom: 0;
  font-size: 82px;
  text-transform: uppercase;
  letter-spacing: 0.35em;
  top: 51%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -ms-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  -webkit-writing-mode: tb-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: tb-rl;
  white-space: nowrap;
  color: #506884;
  opacity: 0.2;
}

.idx4 .box_right {
  width: 63.7%;
  margin-left: auto;
}

.idx4_content {
  position: relative;
}

.idx4 .i4_img {
  position: absolute;
  width: 33.8%;
  left: 0;
  bottom: 10px;
}

.idx4 .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

.idx4 .list li {
  position: relative;
  z-index: 0;
  width: calc((100% - 40px) / 5);
  margin: 0 5px 10px;
  padding: 52px 0 47px;
  min-height: 245px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.idx4 .list li:nth-child(5n + 1) {
  margin-left: 0;
}

.idx4 .list li:nth-child(5n) {
  margin-right: 0;
}

.idx4 .list li::before {
  content: '';
  position: absolute;
  z-index: -1;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 30px;
  width: 30px;
  height: 8px;
  background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='8' viewBox='0 0 30 8'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23fff; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath id='icon_arown.svg' class='cls-1' d='M713,1366h30v1H713v-1Zm28-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v1h-1v-1Zm-1-1h1v8h-1v-8Z' transform='translate(-713 -1361)'/%3E%3C/svg%3E%0A") no-repeat right/contain;
}

.idx4 .list li a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.idx4 .list li:hover a {
  background: rgba(255, 255, 255, 0.3);
}

.idx4 .list .item1 .image {
  width: 52px;
  margin-right: -0.5vw;
}

.idx4 .list .item2 .image {
  width: 52px;
}

.idx4 .list .item3 .image {
  width: 57px;
}

.idx4 .list .item4 .image {
  width: 46px;
}

.idx4 .list .item5 .image {
  width: 37px;
}

.idx4 .list .item6 .image {
  width: 55px;
}

.idx4 .list .item7 .image {
  width: 62px;
}

.idx4 .list .item8 .image {
  width: 55px;
}

.idx4 .list .item9 .image {
  width: 36px;
}

.idx4 .list .item10 .image {
  width: 44px;
}
.idx4 .list .item11 .image {
  width: 55px;
  margin-bottom: 10px;
}
.idx4 .list .item11 .trea_txt{font-size: 17px; letter-spacing: 0.05em;}

.idx4 .list .item4 .trea_txt,
.idx4 .list .item9 .trea_txt,
.idx4 .list .item10 .trea_txt {
  letter-spacing: 0.1em;
}

.idx4 .list .color1 {
  background: #0d417e;
}

.idx4 .list .color2 {
  background: #d9b063;
}

.idx4 .list .trea_txt {
  color: #fff;
  letter-spacing: 0.2em;
  font-size: 20px;
  line-height: 1.3;
  font-weight: bold;
  margin: 0;
}

.idx4 .list .trea_txt .en {
  display: block;
  margin-top: 6px;
  font-size: 12px;
  letter-spacing: 0.18em;
  font-weight: 300;
}

.idx4 .list .image {
  margin-bottom: 20px;
}

@media only screen and (max-width: 1500px) and (min-width: 769px) {
  .idx4 .ttl_style3 {
    font-size: 20px;
    margin: 0 auto 15px;
  }

  .idx4 .ttl_style3 .jp {
    font-size: 40px;
  }

  .idx4_detil .text_eng {
    font-size: 60px;
  }

  .idx4 .list li {
    height: 14.6vw;
    min-height: auto;
  }

  .idx4 .list .trea_txt {
    font-size: 14px;
  }
  .idx4 .list .item11 .trea_txt{
    font-size: 14px;
  }
}

@media only screen and (max-width: 1280px) and (min-width: 769px) {
  .idx4 {
    padding: 76px 0 160px;
  }

  .idx4 .ttl_style3 {
    font-size: 18px;
    margin: 0 auto 4vw;
  }

  .idx4 .ttl_style3 .jp {
    font-size: 34px;
  }

  .idx4 .img_left {
    width: 31%;
    top: 48%;
  }

  .idx4_detil{padding-right: 60px;}

  .idx4 .list li {
    padding: 20px 0 30px;
  }

  .idx4 .list .image {
    margin-bottom: 10px;
  }

  .idx4 .list .image img {
    max-height: 30px;
  }

  .idx4 .list .trea_txt {
    font-size: 15px;
  }

  .idx4 .list .trea_txt .en {
    font-size: 10px;
  }
}

@media only screen and (max-width: 1170px) and (min-width: 769px) {
  .idx4 {
    padding: 76px 0 9vw;
  }

  .idx4_detil {
    padding-right: 20px;
  }

  .idx4_detil .text_eng {
    right: -0.45vw;
    font-size: 3.5vw;
  }

  .idx4 .i4_img {
    width: 30%;
  }

  .idx4 .box_right {
    width: 68.5%;
  }

  .idx4 .ttl_style3 {
    margin: 0 auto 2vw;
  }

  .idx4 .list li {
    width: calc(100%/5 - 6px);
    margin: 0 3px 10px;
    height: 16vw;
    min-height: auto;
  }

  .idx4 .list li::before {
    bottom: 1.5vw;
  }

  .idx4 .list .trea_txt {
    font-size: 11px;
    letter-spacing: 0;
  }

  .idx4 .list .trea_txt .en {
    font-size: 10px;
  }
  
  .idx4 .list .item11 .trea_txt{
    font-size: 10px;
    letter-spacing: 0;
  }

  .idx4 .txt_lg {
    font-size: 50px;
    top: 30px;
  }
}

.idx5 {
  padding: 87px 0 67px;
  background: #eaf4ff;
}

.idx5 .inner {
  max-width: 1748px;
  padding: 0 10px;
}

.idx5 .ttl_style4 .ic {
  letter-spacing: 0;
  margin-left: -10px;
}

.idx5_trouble {
  width: 100%;
  margin: 55px auto 0;
}

.idx5_trouble .bg_tb {
  position: absolute;
  z-index: 1;
  overflow: hidden;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.idx5_trouble .bg_tb::before {
  content: "";
  position: absolute;
  background-color: rgba(217, 176, 99, 0.25);
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transform: rotate(-30deg);
  -ms-transform: rotate(-30deg);
  transform: rotate(-30deg);
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.idx5_trouble .trouble_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -16px;
  margin-right: -16px;
}

.idx5_trouble .trouble_item>li {
  margin: 33px 16px;
  position: relative;
  z-index: 0;
  width: calc((100% / 5) - 32px);
  background: #fff;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  padding: 94px 30px 49px;
}

.idx5_trouble .trouble_item>li:hover .bg_tb::before {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  opacity: 1;
}

.idx5_trouble .trouble_item a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
}

.idx5_trouble .trouble_item p {
  letter-spacing: 0.15em;
  line-height: 1.8;
}

.idx5_trouble .trouble_item .list {
  max-width: 240px;
  margin: 0 auto;
}

.idx5_trouble .icon {
  width: 108px;
  height: 108px;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  top: -34px;
  z-index: 2;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.idx5_trouble .idx5_ttl {
  margin-bottom: 19px;
  letter-spacing: 0.05em;
  font-size: 24px;
  color: #d9b063;
  text-align: center;
}

.idx5_trouble .list {
  max-width: 240px;
  margin: 0 auto;
}

.idx5_trouble .list li {
  padding-left: 25px;
  background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='13' viewBox='0 0 15.656 13.32'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23d9b063; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath id='icon_check.svg' class='cls-1' d='M494.955,7275.37c-2.41-3.15-4.5-5.88-6.593-8.62,0.255-.25.51-0.51,0.765-0.77l5.666,4.78q4.332-4.365,8.615-8.69c0.212,0.17.424,0.33,0.636,0.5Z' transform='translate(-488.375 -7262.06)'/%3E%3C/svg%3E%0A") no-repeat top 5px left/16px auto;
}

.idx5_trouble .list li:not(:last-of-type) {
  margin-bottom: 5px;
}

@media only screen and (max-width: 1700px) and (min-width: 769px) {
  .idx5_trouble .trouble_item {
    margin-left: -1%;
    margin-right: -1%;
  }

  .idx5_trouble .trouble_item>li {
    width: calc(100%/5 - 2%);
    margin: 2% 1%;
    padding: 6vw 1vw 2vw;
  }

  .idx5_trouble .icon {
    width: 6vw;
    height: 6vw;
  }

  .idx5_trouble .idx5_ttl {
    letter-spacing: 0;
    font-size: 1.7vw;
  }
}

@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .idx5_trouble .trouble_item>li {
    width: calc(100%/2 - 2%);
    margin: 25px 1%;
    padding: 100px 15px 30px;
    max-width: 360px;
  }

  .idx5_trouble .icon {
    width: 100px;
    height: 100px;
  }

  .idx5_trouble .icon img {
    max-width: 100%;
    max-height: none;
  }

  .idx5_trouble .idx5_ttl {
    letter-spacing: 0;
    font-size: 24px;
  }
}

.idx6 {
  padding: 90px 0 90px;
  background: url(../images/idx6_bg.jpg) no-repeat left center/cover;
  background-size: cover;
  position: relative;
}

.idx6_eng {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin-bottom: 0;
  line-height: 0.73;
  font-size: 4.1vw;
  opacity: 0.4;
  color: #fff;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  text-align: center;
}

.idx6_content {
  width: calc(50% + 20px);
  margin-right: -10px;
  margin-left: auto;
  padding: 76px 49px 89px;
  border: 1px solid #fff;
  position: relative;
  z-index: 0;
}

.idx6_content::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 9px;
  left: 9px;
  right: 9px;
  bottom: 9px;
  background: rgba(255, 255, 255, 0.98);
}

.idx6 .ttl_style4 {
  margin: 0 auto 14px;
}

.idx6 .ttl_style4 .en {
  padding: 0 41px;
}

.idx6 .info {
  margin: 0 0 6px;
}

.idx6 .info dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-size: 16px;
  padding: 15px 8px 15px;
}

.idx6 .info dl:not(:last-of-type) {
  border-bottom: 1px #f2e7e6 solid;
}

.idx6 .info dt,
.idx6 .info dd {
  letter-spacing: 0.08em;
  line-height: 1.6;
}

.idx6 .info dt {
  width: 104px;
  color: #0d417e;
}

.idx6 .info dd {
  width: calc(100% - 104px);
}

.idx6 .schedule {
  width: 100%;
  border: 1px #d9b063 solid;
}

.idx6 .schedule tr {
  border-bottom: 1px #d9b063 solid;
}

.idx6 .schedule th,
.idx6 .schedule td {
  font-size: 16px;
  line-height: 1.3;
  text-align: center;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
  padding: 13px 0 12px;
}

.idx6 .schedule th {
  width: 9.6%;
  background: #d9b063;
  color: #fff;
  border: none;
  letter-spacing: 0.1em;
}

.idx6 .schedule th:nth-of-type(1) {
  width: 28.7%;
}

.idx6 .schedule th:last-of-type {
  width: 13.7%;
}

.idx6 .schedule td {
  border: none;
  padding-bottom: 11px;
}

.idx6 .note {
  padding: 10px 0 0 10px;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0;
}

.idx6 .note .txt_color {
  color: #d9b063;
  margin-left: -8px;
  display: block;
}

.idx6 .note .txt1 {
  margin-left: -0.5em;
}

.idx6 .gr_btn {
  max-width: 490px;
  margin: 32px auto 0;
}

.idx6 .gr_btn .cm_btn {
  max-width: 230px;
}

.idx_map {
  line-height: 0;
  margin-top: 80px;
}

.idx_map iframe {
  height: 400px;
}

@media only screen and (max-width: 1170px) and (min-width: 769px) {
  .idx6_eng {
    font-size: 5.1vw;
  }

  .idx6 .info dt {
    width: 80px;
  }

  .idx6 .info dd {
    width: calc(100% - 80px);
  }

  .idx6_content {
    padding: 50px 20px;
    margin-right: 0;
  }

  .idx6 .schedule th,
  .idx6 .schedule td {
    font-size: 13px;
  }

  .idx6 .schedule thh:nth-of-type(1) {
    width: 28.7%;
  }

  .idx6 .cm_btn::after {
    right: 12px;
    width: 18px;
    height: 8px;
  }

  .idx6 .cm_btn a {
    font-size: 12px;
  }
}

.index_banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 100px;
}

.index_banner .idx_brn {
  width: 23.5%;
}

.index_banner img {
  image-rendering: -webkit-optimize-contrast;
}

.ft_common {
  padding: 89px 0;
  background: url(../images/ft_contact.jpg);
  position: relative;
  z-index: 0;
}

.ft_common::before,
.ft_common::after {
  content: '';
  position: absolute;
  z-index: -1;
  bottom: 0;
}

.ft_common::before {
  width: 29%;
  height: 28.2vw;
  max-width: 553px;
  max-height: 541px;
  left: 18px;
  background: url(../images/ft_ct_people1.png) no-repeat center/contain;
}

.ft_common::after {
  width: 26.2%;
  height: 28.1vw;
  max-width: 500px;
  max-height: 539px;
  right: 3.4vw;
  background: url(../images/ft_ct_people2.png) no-repeat center/contain;
}

.ft_contact_eng {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin-bottom: 0;
  line-height: 0.73;
  font-size: 5.1vw;
  opacity: 0.3;
  color: #fff;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  text-align: center;
  font-weight: 300;
}

.ft_contact {
  width: 67.5%;
  margin: 0 auto;
  padding: 91px 30px 95px;
  border: 2px solid rgba(255, 255, 255, 0.5);
  position: relative;
  z-index: 0;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.ft_contact::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 9px;
  left: 9px;
  right: 9px;
  bottom: 9px;
  background: #fff;
}

.ft_contact::after {
  content: '';
  position: absolute;
  top: 10px;
  left: 10px;
  right: 10px;
  bottom: 10px;
  background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='335' height='332' viewBox='0 0 335 332'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23d9b063; fill-rule: evenodd; opacity: 0.05; %7D %3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M243.826,263.664a92.021,92.021,0,0,1-18.234-1.816,61.859,61.859,0,0,1-58.241,40.732c-34.212,0-61.947-27.511-61.947-61.447,0-29.131,24.785-55.5,52.212-61.824,0.529-2.689-.4-11.117-0.794-14.952-0.383-3.714-1.454-8.657-2.262-12.489-44.146,6.17-78.113,43.773-78.113,89.265,0,49.8,40.7,90.171,90.9,90.171a90.8,90.8,0,0,0,88.237-68.416A92.386,92.386,0,0,1,243.826,263.664ZM266.2,77.8a88.78,88.78,0,0,1-1.263,29.656,61.437,61.437,0,0,1,40.917,57.737c0,33.936-27.735,61.447-61.947,61.447a61.827,61.827,0,0,1-60.413-48c-2.43.2-4.881,0.323-7.362,0.327-2.892.283-8.744,0.463-8.744,0.463a2.353,2.353,0,0,1,.069.791c6.463,43.515,30.785,75.144,76.45,75.144,50.2,0,90.9-40.37,90.9-90.17C334.813,123.028,305.621,87.665,266.2,77.8Zm-85.185,75.61,0.06,0.008c-0.028-.194-0.08-0.379-0.109-0.573l-0.048-.563h-0.058c-6.728-43.214-44.323-76.318-89.772-76.318-50.2,0-90.9,40.37-90.9,90.171,0,42.326,29.4,77.831,69.051,87.538A88.807,88.807,0,0,1,70.5,224.011a61.426,61.426,0,0,1-41.358-57.875c0-33.937,27.735-61.447,61.947-61.447,29.615,0,67.248,19.878,73.368,47.429,0.529,4.459,3.19,28.248,3.19,28.248s16.908,1.657,16.145-.785C183.128,177.452,181.438,158.276,181.017,153.41Zm76.821-62.527c0-49.8-40.7-90.172-90.9-90.172-45.457,0-83.117,33.1-89.779,76.315A92.569,92.569,0,0,0,76.2,89.072a55.569,55.569,0,0,0,2.678,16.937,62.719,62.719,0,0,1,12.165-1.2,79.3,79.3,0,0,1,17.8,2.028c24.71,5.7,49.591,22.321,55.228,43.915,1.05,4.46,2.848,24.612,3.392,29.467,0.231,0,1.262.147,1.493,0.147,2,0,4-.021,5.991-0.1q1.467-.06,2.932-0.163c1-.073,2-0.12,3-0.255q1.524-.207,3.036-0.48c1.528-.278,3.048-0.612,4.557-0.976q2.1-.507,4.171-1.111t4.091-1.3q2.019-.693,4-1.482t3.913-1.661q1.927-.873,3.815-1.834t3.714-2q1.828-1.043,3.607-2.166t3.5-2.324q1.716-1.2,3.377-2.477t3.257-2.626q1.6-1.347,3.128-2.768t3-2.907q1.465-1.488,2.86-3.041t2.716-3.169q1.322-1.615,2.569-3.291t2.416-3.411q1.17-1.737,2.258-3.524t2.1-3.633q1.006-1.845,1.927-3.736t1.755-3.834q0.836-1.947,1.576-3.927t1.394-4.017q0.651-2.035,1.2-4.1t1.012-4.179q0.458-2.115.812-4.252t0.61-4.32q0.253-2.186.4-4.384,0.148-2.218.187-4.442Q257.838,91.679,257.838,90.883Zm-77.215,59.9c-0.038-.183-0.081-0.384-0.175-0.871a90.581,90.581,0,0,0-72.966-72.528c-0.3-.052-0.591-0.146-0.887-0.217a61.822,61.822,0,0,1,60.339-47.729c34.212,0,61.947,27.511,61.947,61.448A61.549,61.549,0,0,1,180.623,150.78Z'/%3E%3C/svg%3E%0A") no-repeat center/335px auto;
  z-index: 1;
}

.ft_contact>div {
  position: relative;
  z-index: 3;
}

.ft_cm_txt {
  margin-bottom: 22px;
}

.ft_cm_txt p {
  margin-bottom: 0;
  line-height: 1.5;
}

.ft_cm_txt .txt_1 {
  color: #000;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.19em;
}

.ft_cm_txt .txt_2 {
  font-size: 36px;
  color: #366093;
  font-weight: bold;
  letter-spacing: 0.2em;
}

.ft_cm_txt .txt_3 {
  font-size: 24px;
  color: #000;
  letter-spacing: 0.2em;
  margin-top: -2px;
}

.ft_cm_tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.ft_cm_tel .note {
  line-height: 1.4;
}

.ft_cm_tel .cm_box1 {
  margin-right: 25px;
}

.ft_cm_tel .ft_tel a {
  position: relative;
  z-index: 0;
  padding-left: 38px;
  font-size: 36px;
  font-weight: bold;
  letter-spacing: 0.1em;
  background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %230d417e; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath id='icon_tel_contact.svg' class='cls-1' d='M27.886,20.954v5.428a1.535,1.535,0,0,1-1.429,1.534c-0.672.045-1.22,0.071-1.645,0.071A24.578,24.578,0,0,1,.218,3.422q0-.633.071-1.643A1.537,1.537,0,0,1,1.823.353H7.258a0.768,0.768,0,0,1,.766.691c0.035,0.353.068,0.635,0.1,0.847A21.338,21.338,0,0,0,9.979,8.034a0.7,0.7,0,0,1-.226.868L6.436,11.271a20.041,20.041,0,0,0,10.52,10.506l2.367-3.306a0.71,0.71,0,0,1,.881-0.228,21.37,21.37,0,0,0,6.148,1.848c0.214,0.033.5,0.067,0.846,0.1a0.765,0.765,0,0,1,.69.763h0Z'/%3E%3C/svg%3E%0A") no-repeat left top 8px/28px auto;
  text-decoration: none;
  color: #0d417e;
}

.ft_cm_tel .ft_tel a:hover {
  opacity: 1;
}

.ft_cm_tel .cm_web {
  position: relative;
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #d9b063;
  padding: 9px 28px 8px;
  margin-top: 11px;
  color: #fff;
}

.ft_cm_tel .cm_web:hover a {
  background: rgba(255, 255, 255, 0.3);
}

.ft_cm_tel .cm_web a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.ft_cm_tel .cm_web .ic {
  padding: 5px 0 5px 33px;
  display: table;
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1.4;
  background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='23.56' height='24.75' viewBox='0 0 23.56 24.75'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23fff; fill-rule: evenodd; %7D %3C/style%3E%3C/defs%3E%3Cpath id='icon_cal.svg' class='cls-1' d='M1868.13,218.865c0-.615-0.01-1.22,0-1.825a0.761,0.761,0,1,1,1.52.029v1.793h6.27v-1.793a0.761,0.761,0,1,1,1.52-.056c0.01,0.532,0,1.064,0,1.595v0.276h4.5a2.6,2.6,0,0,1,2.63,2.579V238.5a2.594,2.594,0,0,1-2.52,2.5q-9.27,0-18.53,0a2.584,2.584,0,0,1-2.52-2.5V221.463a2.587,2.587,0,0,1,2.62-2.579l4.41,0A0.989,0.989,0,0,0,1868.13,218.865Zm-5.61,7.41v12.307a0.822,0.822,0,0,0,.97.909h18.61a0.818,0.818,0,0,0,.94-0.927c0.01-4.009,0-8.017,0-12.026v-0.264h-20.52Zm14.92-5.886v1.355a0.767,0.767,0,1,1-1.52.011v-1.347h-6.27v1.409a0.772,0.772,0,0,1-.75.8,0.761,0.761,0,0,1-.77-0.807c-0.01-.211,0-0.422,0-0.633v-0.787h-0.25q-2.19,0-4.38,0a0.843,0.843,0,0,0-.98.976v3.373h20.52v-0.216c0-1.055.01-2.11,0-3.164a0.843,0.843,0,0,0-.98-0.97h-4.62Zm-10.07,9.753v-1.774h2.36v1.774h-2.36Zm4.2-1.781h2.37v1.782h-2.37v-1.782Zm6.63,1.794h-2.37v-1.783h2.37v1.783Zm-10.83,1.8h2.36v1.737h-2.36v-1.737Zm6.56,1.74h-2.35v-1.73h2.35v1.73Zm4.27-1.735v1.728h-2.36v-1.728h2.36Zm-10.82,3.591h2.36v1.731h-2.36v-1.731Zm4.2,0h2.36v1.731h-2.36v-1.731Zm6.62,0v1.723h-2.37v-1.723h2.37Z' transform='translate(-1861 -216.25)'/%3E%3C/svg%3E%0A") no-repeat top 10px left/23px auto;
  font-size: 24px;
}

@media only screen and (max-width: 1500px) and (min-width: 769px) {
  .ft_common::before {
    width: 553px;
    height: 541px;
    left: -210px;
  }

  .ft_common::after {
    width: 500px;
    height: 539px;
    right: -200px;
  }
}

@media only screen and (max-width: 1170px) and (min-width: 769px) {
  .ft_common::before {
    width: 436px;
    height: 428px;
    left: -197px;
  }

  .ft_common::after {
    width: 406px;
    height: 439px;
    right: -179px;
  }

  .ft_contact_eng {
    font-size: 60px;
  }

  .ft_contact {
    padding: 71px 30px 75px;
  }

  .ft_cm_tel .cm_box1 {
    margin-right: 0;
    width: 65%;
  }

  .ft_cm_tel .cm_web {
    width: 33%;
  }

  .ft_cm_tel .ft_tel a {
    font-size: 30px;
  }

  .ft_cm_tel .ft_tel a {
    background-position: left top 3px;
  }

  .ft_cm_tel .cm_web {
    padding: 9px 14px 8px;
  }

  .ft_cm_tel .cm_web .ic {
    padding: 5px 0 5px 28px;
    font-size: 18px;
    background-position: top 5px left;
  }
}

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                                Under                                     */
/*==========================================================================*/
.under .sitemap {
  padding-top: 40px;
}

.under .sitemap>ul>li p {
  margin-bottom: 0;
}

.under .sitemap>ul>li a,
.under .sitemap>ul>li p {
  display: block;
  width: 100%;
  padding: 15px 15px 15px 30px;
  border-bottom: dotted 1px #ccc;
  color: #333333;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-decoration: none;
}

.under .sitemap>ul>li a:before,
.under .sitemap>ul>li p:before {
  content: '';
  position: absolute;
  width: 15px;
  height: 3px;
  background: #ccc;
  left: 0;
  top: 50%;
  margin-top: -2px;
}

.under .sitemap>ul>li p:after {
  content: '';
  position: absolute;
  width: 3px;
  height: 14px;
  background: #ccc;
  left: 6px;
  top: 50%;
  margin-top: -7px;
}

.under .sitemap>ul>li a:hover {
  text-decoration: none;
  background: rgba(0, 0, 0, 0.05);
}

.under .sitemap>ul>li li a {
  padding-left: 70px;
}

.under .sitemap>ul>li li a:before {
  left: 40px;
}

.under #mainContent {
  padding-bottom: 100px;
}

.under .key {
  height: 550px;
  background: url(../images/ud_key.jpg) no-repeat center/cover;
}

.under .key .inner {
  height: 100%;
}

.under .key .key_text {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  height: 100%;
  padding: 96px 0 0;
}

.under h2 {
    background: url(../images/ud_icon_h3.png) no-repeat top center/60px auto;
    background-image: url(../images/ud_icon_h3.png);
    background-position-x: center;
    background-position-y: top;
    background-size: 60px;
    background-repeat-x: no-repeat;
    background-repeat-y: no-repeat;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    position: relative;
    margin-bottom: 40px;
    padding-top: 73px;
    color: #000;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.2em;
    text-align: center;
}

.under h2,
.under h3,
.under h4,
.under h5,
.under h6 {
  line-height: 1.4;
}

.under h2:last-child,
.under h3:last-child,
.under h4:last-child,
.under h5:last-child,
.under h6:last-child {
  margin-bottom: 0;
}


.under h3 {
  margin-bottom: 30px;
  padding-bottom: 10px;
  position: relative;
  border-bottom: 1px solid #0d417e;
  font-weight: 500;
  font-size: 30px;
  color: #0d417e;
  letter-spacing: 0.1em;
}

.under h4 {
  background: url(../images/ud_icon_h5.png) no-repeat top 4px left/24px auto;
  margin-bottom: 25px;
  padding-left: 38px;
  position: relative;
  font-weight: 500;
  font-size: 24px;
  color: #000;
  letter-spacing: 0.1em;
}

.under h4.ttl_h4 {
  display: flex;
  justify-content: space-between;
  padding-left: 0;
  background: none;
}

.under h4.ttl_h4 .ic {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 50%;
  padding-left: 4px;
  background: #a51217;
  color: #fff;
}

.under h4 .ttl {
  padding-top: 4px;
  width: calc(100% - 56px);
}

.under h5 {
  position: relative;
  padding-left: 15px;
  border-left: 3px solid #d9b063;
  margin-bottom: 25px;
  margin-top: 50px;
  font-weight: 600;
  font-size: 20px;
  color: #d9b063;
  letter-spacing: 3px;
}

.under section:first-child h3 {
  margin-top: 60px;
}

.under section {
  padding-top: 1px;
}

.under section h3 {
  margin-top: 100px;
}

.under .secH4 {
  padding-top: 60px;
}

.under .secH5 {
  padding-top: 50px;
}

.under .secH6 {
  padding-top: 40px;
}

.under .imgBox.rowImg .image_l img,
.under .imgBox.rowImg .image_r img {
  max-width: 100%;
  max-height: 500px;
}

.under .imgBox.rowImg .image_l {
  float: left;
  margin-right: 45px;
}

.under .imgBox.rowImg .image_r {
  float: right;
  margin-left: 45px;
}

.under .imgBox.rowImg .image_l,
.under .imgBox.rowImg .image_r {
  max-width: 450px;
  margin-bottom: 15px;
}

.under .imgBox.rowImg .txt_l {
  float: left;
}

.under .imgBox.rowImg .txt_r {
  float: right;
}

.under .imgBox.rowImg .txt_l,
.under .imgBox.rowImg .txt_r {
  width: calc(100% - 495px);
}

.under .imgBox.rowImg.large .image_l,
.under .imgBox.rowImg.large .image_r {
  max-width: 440px;
}

.under .imgBox.rowImg.large .txt_l,
.under .imgBox.rowImg.large .txt_r {
  width: calc(100% - 475px);
}

.under .imgBox.rowImg.full .image_l,
.under .imgBox.rowImg.full .image_r {
  max-width: 60vw;
}

.under .imgBox.colImg .list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.under .imgBox.colImg p {
  margin-bottom: 5px;
}

.under .imgBox.colImg p:last-child {
  margin-bottom: 0;
}

.under .imgBox.colImg figure {
  margin-bottom: 15px;
}

.under .imgBox.colImg .text p {
  font-size: 1em;
}

.under .imgBox.colImg .text .ttl {
  font-size: 1.375em;
  font-weight: bold;
  line-height: 1.8;
  text-align: center;
  color: #0d417e;
}

.under .imgBox.colImg3 figure,
.under .imgBox.colImg2 figure {
  position: relative;
  background: #efefef;
  overflow: hidden;
  height: 280px;
  width: 100%;
  text-align: center;
}

.under .imgBox.colImg3 img,
.under .imgBox.colImg2 img {
  max-height: 100%;
  max-width: 100%;
  position: relative;
  max-height: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.under .imgBox.colImg3 .item {
  width: 32%;
}

.under .imgBox.colImg2 .item {
  width: 49%;
}

.under .imgBox.colImg1 .item {
  width: 100%;
}

.under .imgBox.colImg1 .item img {
  max-width: 800px;
  max-height: 400px;
}

.under .acf_block h3,
.under .acf_block h4,
.under .acf_block h5 {
  margin-bottom: 0;
}

.under .acf_block .text_h3 {
  margin: 45px 0 0;
}

.under .acf_block .text_h4 {
  margin: 30px 0 0;
}

.under .acf_block .text_h5 {
  margin: 20px 0 0;
}

.under .acf_block .list01 {
  margin-top: 20px;
}

@media only screen and (min-width: 769px) and (max-width: 1280px) {

  .under .imgBox.rowImg .image_l,
  .under .imgBox.rowImg .image_r {
    float: none;
    margin-right: auto;
    margin-left: auto;
  }
}

.under table {
  border-radius: 3px;
}

.under table.rollTable {
  width: 100%;
}

.under table.sp_clinic th {
  width: 30%;
}

.under table.tbl_style01 th,
.under table.tbl_style01 td {
  border: 1px solid #d9b063;
  padding: 0.625rem;
}

.under table.tbl_style01 th img,
.under table.tbl_style01 td img {
  max-width: 100%;
}

.under table.tbl_style01 th {
  background-color: #d9b063;
  color: #fff;
  font-size: 1.125em;
  font-weight: normal;
  text-align: center;
}

.under table.tbl_style01 td {
  background-color: #fff;
  color: #383838;
  font-size: 1em;
}

.under table.tbl_style01.rowHead tr th:not(:last-child) {
  border-right: 1px solid #fff;
}

.under table.tbl_style01.colHead tr:not(:last-child) th {
  border-bottom: 1px solid #fff;
}

.under table.tbl_style02 th,
.under table.tbl_style02 td {
  border: 2px solid #9dba38;
  border-left: none;
  border-right: none;
  padding: 0.625em;
}

.under table.tbl_style02 th img,
.under table.tbl_style02 td img {
  max-width: 100%;
}

.under table.tbl_style02 th {
  background: none;
  font-weight: normal;
  font-size: 1.125em;
  color: #9dba38;
}

.under table.tbl_style02 td {
  font-size: 1em;
}

.under .tbl_note {
  display: none;
  margin-top: 10px;
  color: #b4b4b4;
  font-size: 11px;
  letter-spacing: 0;
}

@media only screen and (max-width: 1000px) and (min-width: 769px) {

  .under table.tbl_style01 th,
  .under table.tbl_style01 td {
    padding: 0.5rem;
  }

  .under table.tbl_style01 th {
    font-size: 1em;
  }

  .under table.tbl_style01 td {
    font-size: 0.9em;
  }

  .under table.tbl_style02 th {
    font-size: 1em;
  }

  .under table.tbl_style02 td {
    font-size: 0.9em;
  }
}

.under ul.list01.mcol-2 {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.under ul.list01.mcol-2 li {
  width: 50%;
}

.under ul.list01 li {
  background-size: 10px auto;
  position: relative;
  padding-left: 20px;
  padding-bottom: 10px;
  letter-spacing: 1.6px;
  line-height: 2;
}

.under ul.list01 li:nth-child(odd) {
  padding-right: 20px;
}

.under ul.list01 li:last-child {
  padding-bottom: 0;
}

.under ul.list01 li::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d9b063;
  position: absolute;
  left: 0;
  top: 12px;
}

.under .list_note {
  margin-top: 15px;
  padding-left: 20px;
}

.under .list_note.no_mt {
  margin-top: 0;
}

.under .topic_path {
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: 1.5px;
  padding: 27px 0 7px;
}

.under .topic_path ul {
  display: block;
  padding: 4px 10px 4px 0;
}

.under .topic_path ul::after {
  content: "";
  display: block;
  clear: both;
}

.under .topic_path ul li {
  float: left;
  text-transform: uppercase;
  color: #000;
}

.under .topic_path a {
  text-decoration: none;
  color: #d79d43;
}

.under .topic_path a:hover {
  opacity: 1;
  text-decoration: underline;
}

.under .topic_path span {
  display: inline-block;
  padding: 0 8px;
  -webkit-transform: scaleX(0.6);
  -ms-transform: scaleX(0.6);
  transform: scaleX(0.6);
  color: #d79d43;
  line-height: 1;
}

.under .anchor-links {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 20px 0 0;
}

.under .anchor-links>div {
  background-color: #0d417e;
  border-radius: 3px;
  position: relative;
  display: block;
  min-width: 135px;
  width: 19%;
  margin: 0% 0.5% 1%;
  text-align: center;
  color: #fff;
  font-size: 0.875em;
  line-height: 1.5;
  letter-spacing: 0.15em;
}

.under .anchor-links>div a {
  display: block;
  width: 100%;
  padding: 10px 5px 9px;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  text-decoration: none;
}

.under .anchor-links>div::after {
  content: "";
  border: 4px solid;
  border-bottom-color: transparent;
  border-left-color: transparent;
  border-right-color: transparent;
  position: absolute;
  top: auto;
  bottom: 2px;
  left: calc(50% - 4px);
  right: auto;
  line-height: 1;
}

.under .anchor-links>div:hover a {
  opacity: 1;
}

.under .anchor-links>div:hover::after {
  bottom: 0;
}

.under .anchor-links>div.ext::after {
  content: "\003e";
  border: 0;
  position: absolute;
  top: calc(50% - 0.5em);
  bottom: auto;
  left: auto;
  right: 7px;
  font-size: 0.857em;
  line-height: 1;
  letter-spacing: 0;
  -webkit-transform: scaleX(0.5);
  -ms-transform: scaleX(0.5);
  transform: scaleX(0.5);
}

.under .anchor-links>div.ext:hover::after {
  right: 5px;
}

.under .doctor_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.under .doctor_content.box_right .doctor_right {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
}

.under .doctor_box {
  position: relative;
  width: 48%;
}

.under .doctor_box p {
  margin-bottom: 0;
}

.under .doctor_box .doctor_name {
  position: absolute;
  right: 20px;
  bottom: 20px;
  background: rgba(255, 255, 255, 0.95);
  padding: 18px 40px 21px;
  border: 1px solid #0d417e;
  z-index: 1;
  color: #0d417e;
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
}

.under .doctor_box .doctor_name .small {
  display: block;
  font-size: 18px;
}

.under .doctor_right {
  width: 49%;
}

.under .ud_map {
  line-height: 0;
  padding: 10px;
  border: 1px solid #0d417e;
  background: rgba(13, 65, 126, 0.1);
  height: 350px;
}

.under .tbl_mb {
  margin-top: 20px;
  margin-bottom: 20px;
}

.under .txt_mb1 {
  margin-bottom: 30px;
}

.under .ct_address {
  margin-top: 20px;
}

.under .contact_yoyaku {
  margin-bottom: 20px;
  display: table;
}

.under .contact_yoyaku dt,
.under .contact_yoyaku dd {
  display: table-cell;
  vertical-align: middle;
}

.under .contact_yoyaku dt {
  padding: 10px 5px;
  border: 1px solid;
  width: 100px;
  margin-right: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.under .contact_yoyaku dd {
  text-align: right;
}

.under .contact_yoyaku .txt_b {
  color: #006;
  font-weight: bold;
}

.under .box_step {
  margin-top: 80px;
}

.under .list_step {
  border: 1px solid #e0e5eb;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  z-index: 0;
}

.under .list_step:not(:last-child) {
  margin-bottom: 70px;
}

.under .list_step:not(:last-child)::before {
  position: absolute;
  content: "";
  left: 0;
  border-left: 40px transparent solid;
  border-top: 30px #e0e5eb solid;
  border-right: 40px transparent solid;
  right: 0;
  margin: 0 auto;
  width: 0;
  height: 0;
  bottom: -30px;
}

.under .list_step dt {
  padding: 22px 20px 22px 110px;
  background: #e0e5eb;
  position: relative;
  font-size: 18px;
  font-weight: bold;
}

.under .list_step dt .point {
  background: #0d417e;
  color: #fff;
  padding: 10px 10px 10px;
  position: absolute;
  left: 20px;
  top: -20px;
  width: 70px;
  font-weight: 500;
  text-align: center;
  font-size: 16px;
}

.under .list_step dt .number {
  display: block;
  font-size: 180%;
  line-height: 1;
}

.under .list_step dt .ttl {
  width: calc(100% - 70px);
}

.under .list_step dd {
  padding: 20px;
}

.under .list_number dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.under .list_number dt {
  width: 30px;
}

.under .list_number dd {
  width: calc(100% - 30px);
}

.under .faq_box {
  margin-top: 60px;
}

.under .faq_box dl {
  background: #fff;
  padding: 15px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.1);
  margin-bottom: 50px;
}

.under .faq_box dt {
  position: relative;
  z-index: 0;
  padding-left: 50px;
  margin-bottom: 5px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5em;
  min-height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.under .faq_box dt::before {
  content: 'Q';
  position: absolute;
  z-index: -1;
  font-size: 22px;
  top: 10px;
  left: 0;
  width: 40px;
  height: 40px;
  line-height: 38px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background: #d79d43;
}

.under .faq_box dd {
  border-top: 1px dotted #8f8f8f;
  position: relative;
  z-index: 0;
  padding-top: 20px;
  padding-left: 50px;
  min-height: 62px;
}

.under .faq_box dd::before {
  content: 'A';
  position: absolute;
  z-index: -1;
  top: 15px;
  left: 0;
  width: 40px;
  height: 40px;
  font-weight: bold;
  text-align: center;
  line-height: 38px;
  color: #fff;
  font-size: 22px;
  background: #0d417e;
}

.under .box_step1 {
  margin-top: 60px;
  border-bottom: 1px solid #0d417e;
  position: relative;
}

.under .box_step1:not(:last-child)::before {
  content: '';
  position: absolute;
  bottom: -41px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 30px 20px;
  border-color: #0d417e transparent transparent transparent;
}

.under .ttl_step1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  background: #e1edfa;
  margin-bottom: 0;
  font-weight: bold;
  font-size: 22px;
  line-height: 1.5;
}

.under .s_t_ttl {
  padding: 8px;
}

.under .step1_number {
  margin-right: 10px;
  width: 50px;
  background: #0d417e;
  padding: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  font-weight: bold;
  color: #fff;
  text-align: center;
}

.under .step1_number::before,
.under .step1_number::after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
}

.under .step1_number::before {
  top: 0;
  left: 0;
  border-width: 15px 15px 0 0;
  border-color: #fff transparent transparent transparent;
}

.under .step1_number::after {
  right: 0;
  bottom: 0;
  border-width: 0 0 15px 15px;
  border-color: transparent transparent #e1edfa transparent;
}

.under .txt_step {
  padding: 30px;
}

@media only screen and (max-width: 1170px) and (min-width: 769px) {
  .under .doctor_box {
    width: 47%;
  }

  .under .doctor_right {
    width: 50%;
  }
}

/*----------interview----------*/
.page-interview .key {
  background: url(../images/ud_key_interview.jpg) no-repeat right center/cover;
}

.page-interview h4 .number {
  display: block;
  margin-bottom: 5px;
  text-transform: uppercase;
  font-size: 18px;
}

.page-interview .sec-content:not(:last-of-type) {
  margin-bottom: 100px;
}

.page-interview .interview_box01 {
  padding: 20px 0 100px;
}

.page-interview .sec-interview {
  padding: 120px 0 120px;
}

.page-interview .sec-interview.sec-last {
  padding-bottom: 0;
}

.page-interview .interview_box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.page-interview .interview_box:not(:last-of-type) {
  margin-bottom: 100px;
}

.page-interview .interview_box.sec-right .col_infor {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.page-interview .interview_box .col_infor {
  width: 53%;
  max-width: 626px;
}

.page-interview .interview_box .col_infor .ttl {
  width: 100px;
  background: #0d417e;
  text-align: center;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding: 5px;
  line-height: 1.6;
}

.page-interview .interview_box .col_infor .ttl.bg2 {
  background: #d9b063;
}

.page-interview .interview_box .col_img {
  width: 43%;
  max-width: 545px;
}

.page-interview .interview_box .col_img figure {
  position: relative;
  z-index: 0;
}

.page-interview .interview_box .col_img figure::before,
.page-interview .interview_box .col_img figure::after {
  content: '';
  position: absolute;
  z-index: 1;
  width: 0;
  height: 0;
  border-style: solid;
}

.page-interview .interview_box .col_img figure::before {
  border-width: 50px 50px 0 0;
  border-color: #ffffff transparent transparent transparent;
  left: 0;
  top: 0;
}

.page-interview .interview_box .col_img figure::after {
  border-width: 0 0 50px 50px;
  border-color: transparent transparent #ffffff transparent;
  right: 0;
  bottom: 0;
}

.page-interview .interview_bg {
  height: 400px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
}

.page-interview .interview_bg::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background: rgba(13, 65, 126, 0.6);
}

.page-interview .inter_ttl_bnr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  padding: 0 10px;
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #fff;
}

.page-interview .interview_bg01 {
  background-image: url(../images/interview_bg01.jpg);
}

.page-interview .interview_bg02 {
  background-image: url(../images/interview_bg02.jpg);
}

.page-interview .interview_bg03 {
  background-image: url(../images/interview_bg03.jpg);
}



@media only screen and (max-width: 1000px) and (min-width: 769px) {
  .page-interview .key {
    background-position: right 6% center;
  }

  .page-interview .interview_bg {
    height: 300px;
  }

  .page-interview .inter_ttl_bnr {
    font-size: 24px;
    letter-spacing: 0.1em;
  }
}

.under .clinic_tbl01 th {
  width: 350px;
  text-align: right;
}

.under .clinic_tbl02 {
  text-align: center;
}

.under .clinic_tbl02 th:first-child {
  width: 350px;
}

.under .clinic_tbl02 th:not(:first-child) {
  width: calc((100% - 350px) / 7);
}

.under .teeth_box .secH4 {
  width: 48%;
}

.under .teeth_box .secH5 {
  padding-top: 20px !important;
}

.under .teeth_box img {
  max-height: 180px;
}

.under .teeth_box p {
  font-size: 14px;
}

.under .access_box_img01 .block {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.under .access_box_img01 .block:nth-child(even) .big {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.under .access_box_img01 .block .big {
  width: calc((580 / 1160) * (100% - 10px));
}

.under .access_box_img01 .block .small {
  width: calc((580 / 1160) * (100% - 10px));
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.under .access_box_img01 .block .small figure {
  width: calc((100% - 10px) * 0.5);
}

.under .access_box_img01 .block figure {
  border-radius: 0px;
  overflow: hidden;
  margin-bottom: 10px;
}

.under .access_box_img02 .block {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.under .access_box_img02 .block:nth-child(even) .big {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.under .access_box_img02 .block .big {
  width: calc((640 / 1160) * (100% - 10px));
}

.under .access_box_img02 .block .small {
  width: calc((520 / 1160) * (100% - 10px));
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.under .access_box_img02 .block .small figure {
  width: calc((100% - 10px) * 0.5);
}

.under .access_box_img02 .block figure {
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 10px;
}

/* START BLOG
------------------------------------------------------------------------*/
#pagination {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 40px auto 0;
}

#pagination:empty {
  display: none;
}

#pagination a,
#pagination span {
  background-color: #0d417e;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 100%;
  margin: 10px 5px;
  width: 32px;
  height: 32px;
  color: #fff;
  line-height: 1;
  text-decoration: none;
}

#pagination a.prev,
#pagination a.next,
#pagination span.prev,
#pagination span.next {
  background-repeat: no-repeat;
  background-position: center;
  background-size: 7px auto;
  color: transparent;
}

#pagination a.prev,
#pagination span.prev {
  background-image: url(../images/shared_blog_arrow_prev.svg);
}

#pagination a.next,
#pagination span.next {
  background-image: url(../images/shared_blog_arrow_next.svg);
}

@media screen and (min-width: 0\0) and (-webkit-min-device-pixel-ratio: 0.75),
screen and (min-width: 0\0) and (-o-min-device-pixel-ratio: 3/4),
screen and (min-width: 0\0) and (min-resolution: 72dpi) {
  #pagination {
    /* for IE 9 and above */
  }

  #pagination a,
  #pagination span {
    padding-top: 2px;
  }
}

#pagination a:hover {
  text-decoration: none;
  opacity: 0.7;
}

#pagination span {
  opacity: 0.5;
}

#pagination .active a,
#pagination a.active:hover {
  background: none repeat scroll 0 0 #000000;
  color: #FFFFFF;
}

.blog-content:first-child h3 {
  margin-bottom: 25px;
}

.blog-content .date {
  margin-bottom: 40px;
  text-align: center;
  color: #0d417e;
}

.blog_list_style01 .item {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-bottom: 1px solid #bababa;
  padding-bottom: 30px;
  margin-bottom: 30px;
}

.blog_list_style01 .item figure {
  background-color: white;
  position: relative;
  overflow: hidden;
  background: #fafafa;
  border: 3px solid #bababa;
  width: 220px;
  height: 220px;
}

.blog_list_style01 .item figure img {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.blog_list_style01 .item .info {
  width: calc(100% - 250px);
  position: relative;
  padding-bottom: 40px;
}

.blog_list_style01 .item .info p {
  margin-bottom: 0;
  line-height: 1.5;
}

.blog_list_style01 .item .info .date {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 15px;
  padding-top: 15px;
  font-size: 90%;
}

.blog_list_style01 .item .info .date .tag {
  display: inline-block;
  margin-left: 20px;
  color: transparent;
  font-size: 90%;
  letter-spacing: -1em;
}

.blog_list_style01 .item .info .date .tag a {
  background-color: #0d417e;
  display: inline-block;
  margin-left: 2px;
  padding: 0 10px;
  color: #fff;
  letter-spacing: 0;
  text-decoration: none;
}

.blog_list_style01 .item .info .date .tag a.blog {
  background: #d9b063;
}

.blog_list_style01 .item .info .ttl {
  margin-bottom: 10px;
  overflow: hidden;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  text-decoration: underline;
  font-size: 120%;
  font-weight: 600;
  color: #333333;
}

.blog_list_style01 .item .info .ttl a {
  color: inherit;
}

.blog_list_style01 .item .info .des {
  padding-bottom: 45px;
}

.blog_list_style01 .item .info .button {
  background-color: #fff;
  border: 1px solid #d7d7d7;
  position: absolute;
  bottom: 0px;
  right: 0;
}

.blog_list_style01 .item .info .button a {
  position: relative;
  z-index: 1;
  display: block;
  padding: 5px 10px 5px;
  font-size: 90%;
  color: #333;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.blog_list_style01 .item .info .button a::before {
  opacity: 0;
}

@media only screen and (min-width: 769px) {
  .blog_list_style01 .item .info .button:hover a {
    opacity: 1;
    color: #fff;
    background: #0d417e;
  }
}

@media only screen and (max-width: 640px) {
  .blog_list_style01 .item {
    display: block;
  }

  .blog_list_style01 .item figure {
    margin: 0 auto;
  }

  .blog_list_style01 .item .info {
    width: 100%;
    max-width: 420px;
    margin: 0 auto;
    padding-bottom: 0;
  }

  .blog_list_style01 .item .info .button {
    position: relative;
    display: table;
  }
}

.blog_list_style02.colImg .list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.blog_list_style02.colImg p {
  margin-bottom: 5px;
}

.blog_list_style02.colImg p:last-child {
  margin-bottom: 0;
}

.blog_list_style02.colImg figure {
  margin-bottom: 15px;
}

.blog_list_style02.colImg .text p {
  font-size: 1em;
}

.blog_list_style02.colImg .text .ttl {
  font-family: inherit;
  font-size: 1.1em;
  font-weight: bold;
  line-height: 1.8;
  text-align: center;
  color: #0e7cad;
}

.blog_list_style02.colImg4_blog .item {
  width: calc(96% / 4);
  margin-right: 1%;
  margin-bottom: 15px;
  position: relative;
}

.blog_list_style02.colImg4_blog .item:nth-child(4) {
  margin-right: 0;
}

.blog_list_style02.colImg4_blog .item a {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}

.blog_list_style02.colImg4_blog .item .img {
  background: url(../images/shared_blog_logo.png) center no-repeat;
  background-size: contain;
  background-color: #fff;
  border: 1px solid #000;
  position: relative;
  width: 100%;
  height: 400px;
  margin-bottom: 15px;
}

.blog_list_style02.colImg4_blog .item .img:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.blog_list_style02.colImg4_blog .item .img img {
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: absolute;
  top: 50%;
  left: 50%;
  max-height: 100%;
  max-width: 100%;
}

.blog_list_style02.colImg4_blog .item:hover a {
  opacity: 1;
}

.blog_list_style02.colImg4_blog .item:hover .img img {
  -webkit-filter: blur(5px) grayscale(50%);
  filter: blur(5px) grayscale(50%);
  -webkit-transform: translate(-50%, -50%) scale(1.15);
  -ms-transform: translate(-50%, -50%) scale(1.15);
  transform: translate(-50%, -50%) scale(1.15);
}

.blog_list_style02.colImg4_blog figure {
  background-color: #ddd;
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 1000px) and (min-width: 769px) {
  .blog_list_style02.colImg4_blog .item .img {
    height: 30vw;
  }
}

@media only screen and (max-width: 768px) {
  .blog_list_style02.colImg4_blog .item .img {
    height: 280px;
  }

  .blog_list_style02.colImg4_blog figure {
    height: 260px;
  }
}

@media only screen and (max-width: 640px) {
  .blog_list_style02.colImg .list {
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }

  .blog_list_style02.colImg .item {
    margin-bottom: 15px;
  }

  .blog_list_style02.colImg figure {
    margin-bottom: 5px;
  }

  .blog_list_style02.colImg .text {
    font-size: 14px;
  }

  .blog_list_style02.colImg4_blog .item {
    width: 49%;
  }

  .blog_list_style02.colImg4_blog .item .img {
    height: 48vw;
  }

  .blog_list_style02.colImg4_blog figure {
    height: 48vw;
  }
}

.blog_detail_style02 {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  margin-bottom: 30px;
}

.blog_detail_style02 .box_gallery {
  width: 35%;
  max-width: 400px;
}

.blog_detail_style02 .box_gallery .main_img {
  background: #ededed;
  position: relative;
  height: 400px;
  margin-bottom: 11px;
}

.blog_detail_style02 .box_gallery .main_img .item {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
}

.blog_detail_style02 .box_gallery .main_img .item.active {
  opacity: 1;
}

.blog_detail_style02 .box_gallery .main_img .img {
  overflow: hidden;
  margin: 0;
  width: 100%;
  height: 100%;
}

.blog_detail_style02 .box_gallery .main_img .img img {
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 100%;
  max-height: 100%;
}

.blog_detail_style02 .box_gallery .thumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.blog_detail_style02 .box_gallery .thumb li {
  background-color: #ededed;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: calc(100% / 8 - 4.4px);
  margin-right: 5px;
  margin-bottom: 5px;
  height: 20vw;
  max-height: 40px;
  overflow: hidden;
  position: relative;
  cursor: pointer;
  text-align: center;
}

.blog_detail_style02 .box_gallery .thumb li:nth-child(8n+0) {
  margin-right: 0;
}

.blog_detail_style02 .box_gallery .thumb li:hover {
  opacity: 0.7;
}

.blog_detail_style02 .box_gallery .thumb li img {
  width: auto;
  max-height: 100%;
  max-width: 100%;
  overflow: hidden;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.blog_detail_style02 .box_gallery .thumb.col_5 li {
  width: calc(100% / 5 - 4px);
  max-height: 77px;
}

.blog_detail_style02 .box_gallery .thumb.col_5 li:nth-child(5) {
  margin-right: 0;
}

.blog_detail_style02 .box_gallery.withSlick .main_img {
  height: auto;
}

.blog_detail_style02 .box_gallery.withSlick .main_img .item {
  height: 400px;
}

.blog_detail_style02 .box_gallery.withSlick .main_img .item:nth-child(n) {
  display: block;
}

.blog_detail_style02 .box_gallery.withSlick .thumb li {
  opacity: 0.5;
}

.blog_detail_style02 .box_gallery.withSlick .thumb li::after {
  content: "";
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: 1px solid transparent;
  z-index: 1;
}

.blog_detail_style02 .box_gallery.withSlick .thumb li.active {
  opacity: 1;
}

.blog_detail_style02 .box_gallery.withSlick .thumb li.active::after {
  border-color: #ff9933;
}

.blog_detail_style02 .box_gallery.withSlick .thumb li:hover {
  opacity: 1;
}

.blog_detail_style02 .box_gallery.withSlick .controls p {
  display: table;
  cursor: pointer;
}

.blog_detail_style02 .box_gallery.withSlick .controls p:hover {
  text-decoration: underline;
}

.blog_detail_style02 .box_info {
  width: 62%;
  max-width: 710px;
}

.blog_detail_style02 .box_info .intro {
  margin-bottom: 20px;
}

.blog_detail_style02 .box_info table {
  /* &.tbl_style03{
				th{
					width: 38%;
				}
			} */
}

.blog_detail_style02 .box_info table th {
  width: 30%;
  background: #f5f5f5;
  color: #0d417e;
}

.blog_detail_style02.noGallery .box_info {
  max-width: 100%;
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .blog_detail_style02 .box_gallery {
    width: 100%;
    margin: 0 auto 30px;
  }

  .blog_detail_style02 .box_gallery .main_img {
    max-height: 400px;
    height: 100vw;
  }

  .blog_detail_style02 .box_info {
    width: 100%;
    margin: 0 auto;
  }

  .blog_detail_style02 .box_info table th {
    width: 100%;
  }

  .blog_detail_style02 .box_info table.tbl_style03 {
    border-bottom: none;
  }
}

.main_blog_container {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.main_blog_container .main_blog_content {
  max-width: 100%;
  width: calc(100% - 250px);
}

.main_blog_container .main_blog_content>div {
  padding-top: 0;
}

.main_blog_container .sidebar {
  width: 220px;
}

.main_blog_container .sidebar .txt_head,
.main_blog_container .sidebar .widgettitle {
  background-color: #0d417e;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  position: static;
  display: block;
  margin-bottom: 0;
  padding: 15px 10px;
  width: 100%;
  -webkit-writing-mode: horizontal-tb;
  -ms-writing-mode: lr-tb;
  writing-mode: horizontal-tb;
  font-size: 18px;
  color: #fff;
  text-align: center;
}

.under h2.widgettitle {
	margin-top: 0;
}

.list-custom-taxonomy-widget {
	margin-bottom: 40px;
}

.main_blog_container .sidebar ul:not(.children) {
  background-color: #fff;
  border: 1px solid #bababa;
  border-top: 0;
  padding: 0 10px;
}

.main_blog_container .sidebar ul:not(.children)>li {
  border-bottom: 1px solid #959595;
  padding: 12px 10px;
  font-size: 80%;
}

.main_blog_container .sidebar ul:not(.children)>li:last-child {
  border-bottom: 0;
}

.main_blog_container .sidebar ul:not(.children)>li a {
  color: inherit;
  font-size: inherit;
  text-decoration: underline;
}

.main_blog_container .sidebar ul:not(.children)>li a:hover {
  text-decoration: none;
}

.main_blog_container .sidebar ul.children {
  padding: 7px 7px;
}

.main_blog_container .sidebar ul.children li {
  padding-bottom: 5px;
}

.main_blog_container .sidebar ul.children li:last-child {
  padding-bottom: 0;
}

@media only screen and (max-width: 768px) {
  .main_blog_container .main_blog_content {
    width: auto;
    margin: 0 auto;
  }

  .main_blog_container .sidebar {
    display: none;
  }
}

.blog_post_button {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 600px;
  margin: 100px auto 0;
}

.blog_post_button>div {
  position: relative;
  background: #0d417e;
  width: 32%;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #fff;
  text-align: center;
  line-height: 1;
  font-size: 0.9em;
}

.blog_post_button>div a {
  display: block;
  position: relative;
  z-index: 1;
  padding: 11px 10px 11px;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  text-transform: uppercase;
  line-height: inherit;
  color: inherit;
  text-align: center;
  text-decoration: none;
  font-family: "Noto Sans JP", sans-serif;
}

.blog_post_button>div:hover {
  opacity: 0.7;
}

.blog_post_button>div:hover a {
  opacity: 1;
}

/* END BLOG
------------------------------------------------------------------------*/
/* START Mail
------------------------------------------------------------------------*/
.contact-form-style01 .contact-table {
  background-size: cover;
  width: 100%;
  margin: 0 auto 0px;
  overflow: hidden;
  position: relative;
}

.contact-form-style01 .contact-table::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.contact-form-style01 .contact-table input,
.contact-form-style01 .contact-table select,
.contact-form-style01 .contact-table textarea {
  border: 1px solid;
  padding: 4px 8px;
  border-radius: 5px;
  font-size: 1rem;
}

.contact-form-style01 .contact-table input {
  width: 100%;
}

.contact-form-style01 .contact-table textarea {
  max-width: 100%;
  width: 100%;
  height: 7em;
}

.contact-form-style01 .contact-table input,
.contact-form-style01 .contact-table textarea {
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.contact-form-style01 .contact-table input[type="radio"],
.contact-form-style01 .contact-table input[type="checkbox"] {
  margin: 5px 3px 5px 0px;
  width: auto;
}

.contact-form-style01 .contact-table [readonly*="readonly"] {
  background: none;
  border: 0;
  font-weight: bold;
}

.contact-form-style01 .contact-table dl {
  position: relative;
  z-index: 1;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.contact-form-style01 .contact-table dl:last-child dt,
.contact-form-style01 .contact-table dl:last-child dd {
  border-bottom: 0px;
}

.contact-form-style01 .contact-table dt {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 400px;
  padding: 15px 20px;
  font-size: 20px;
}

.contact-form-style01 .contact-table dt span {
  display: inline-block;
  position: relative;
  top: 1px;
  border-radius: 7px;
  padding: 2px 7px 2px;
  margin-left: 5px;
  font-size: 70%;
  line-height: 1;
}

.contact-form-style01 .contact-table dd {
  width: calc(100% - 400px);
  padding: 15px 25px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.contact-form-style01 .contact-table .postal_code {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.contact-form-style01 .contact-table .inline span {
  max-width: 75px;
  margin: 0 5px;
  text-align: center;
}

.contact-form-style01 .contact-table .inline input {
  text-align: center;
}

.contact-form-style01 .contact-table .clockpicker input {
  width: 70px;
  text-align: center;
}

.contact-form-style01 .contact-table input:not([type='radio']):not([type='checkbox']):focus,
.contact-form-style01 .contact-table textarea:focus {
  color: #333;
  background-color: #fff;
  border-color: rgba(217, 176, 99, 0.7);
  outline: 0;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(217, 176, 99, 0.25);
  box-shadow: 0 0 0 0.2rem rgba(217, 176, 99, 0.25);
}

.contact-form-style01 .contact-table .box_cal {
  display: flex;
  align-items: center;
  width: 100%;
}

.contact-form-style01 .contact-table input::placeholder {
  color: #bababa;
}

.contact-form-style01 .contact-table .box_cal .txt {
  margin-right: 10px;
}

.contact-form-style01 .contact-table .ct_bname {
  display: flex;
}

.contact-form-style01 .contact-table .ct_name1 {
  margin-right: 20px;
}

.contact-form-style01 .contact-table .wpcf7-form-control.wpcf7-select option:nth-child(3) {
  /* font-weight: bold;
  font-size: 120%; */
}

.contact-form-style01 .contact-table .ct_name1,
.contact-form-style01 .contact-table .ct_name2 {
  width: calc(50% - 10px);
}

.bold {
  font-weight: bold;
}

.center {
  text-align: center;
}

.u_line {
  text-decoration: underline;
}

.right {
  text-align: right;
}

.contact-form-style01 .contact-table .ct_email,
.contact-form-style01 .contact-table .ct_txt_email {
  width: 100%;
}

.contact-form-style01 .contact-table .ct_box_symptom {
  width: 100%;
}

.contact-form-style01 .contact-table .ct_acc {
  width: 100%;
  display: flex;
  align-items: center;
}

.contact-form-style01 .contact-table .ic_date {
  margin-left: 10px;
  width: 34px;
  height: 34px;
  background: url(../images/icon_calendar.png) no-repeat center/contain;
  cursor: pointer;
}
.contact-form-style01 .contact-table .time{
  margin-left: 1em;
}
.contact-form-style01 .contact-table .ct_cal {
  width: 10em;
}
@media only screen and (min-width: 769px) and (max-width: 1170px) {

}
.contact-form-style01 .contact-table .ct_tbl {
  margin-top: 10px;
  margin-bottom: 5px;
}

.contact-form-style01 .contact-table .ct_tbl th {
  border: 1px solid #d9b063;
  background-color: #d9b063;
  color: #fff;
  font-size: 1.125em;
  font-weight: normal;
  text-align: center;
  padding: 0.625rem;
}

.contact-form-style01 .contact-table .ct_tbl tr th:not(:last-child) {
  border-right: 1px solid #fff;
}

.contact-form-style01 .contact-table .ct_tbl td {
  border: 1px solid #d9b063;
  padding: 0.625rem;
  text-align: center;
}

.contact-form-style01 .confirm-table textarea {
  resize: none;
  width: 100%;
}

.contact-form-style01 .confirm-table input:not([type='radio']):not([type='checkbox']):focus,
.contact-form-style01 .confirm-table textarea:focus {
  color: inherit;
  background-color: transparent;
  border-color: transparent;
  outline: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.contact-form-style01 .input_btn,
.contact-form-style01 .button.thanks_btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 520px;
  margin: 40px auto 0;
}

.contact-form-style01 .input_btn input,
.contact-form-style01 .input_btn a,
.contact-form-style01 .button.thanks_btn input,
.contact-form-style01 .button.thanks_btn a {
  color: inherit;
  text-decoration: none;
}

.contact-form-style01 .input_btn input[type="button"],
.contact-form-style01 .input_btn input[type="submit"],
.contact-form-style01 .button.thanks_btn {
  display: block;
  width: 200px;
  height: 45px;
  border: none;
  padding: 10px;
  text-align: center;
  font-size: 100%;
  font-weight: normal;
  margin: 0px 10px 10px;
  text-decoration: none;
  cursor: pointer;
}

.contact-form-style01 .input_btn input[type="button"]:hover,
.contact-form-style01 .input_btn input[type="submit"]:hover,
.contact-form-style01 .button.thanks_btn:hover {
  opacity: 0.8;
}

.contact-form-style01 .input_btn input[type="button"],
.contact-form-style01 .input_btn input[type="submit"],
.contact-form-style01 .button.thanks_btn {
  background-color: #0d417e;
  color: #fff;
}

.contact-form-style01 .contact-table input,
.contact-form-style01 .contact-table select,
.contact-form-style01 .contact-table textarea {
  border-color: #ddd;
}

.contact-form-style01 .contact-table dl:nth-of-type(1) dd {
  border-top: 1px solid #d9b063;
}

.contact-form-style01 .contact-table dl:last-of-type dd {
  border-bottom: 1px solid #d9b063;
}

.contact-form-style01 .contact-table dt {
  background-color: #d9b063;
  border-bottom: 1px solid #fff;
  color: #fff;
}

.contact-form-style01 .contact-table dt span {
  background-color: #ffffff;
  color: #ff3c7f;
}

.contact-form-style01 .contact-table dd {
  border-bottom: 1px solid #d9b063;
  border-right: 1px solid #d9b063;
}

.contact-form-style01 .wpcf7-not-valid-tip {
  display: block;
  margin: 3px 7px 0;
}

.contact-form-style02 {
  background: url(../images/contact-form-bg.jpg);
  padding: 80px 50px 80px;
}

.contact-form-style02 .contact-table {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.contact-form-style02 .contact-table input:not([type='radio']):not([type='checkbox']),
.contact-form-style02 .contact-table textarea {
  background-clip: padding-box;
  border: none;
  outline: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  height: auto;
  display: block;
  border-radius: 0;
  width: 100%;
  padding-bottom: 15px;
  margin-bottom: 0;
  border-bottom: 1px dashed;
  -webkit-transition: border-color 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  -o-transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.5;
  text-transform: none;
}

.contact-form-style02 .contact-table textarea {
  max-width: 100%;
  border: 1px dashed;
  padding: 20px;
}

.contact-form-style02 .contact-table dl {
  position: relative;
  z-index: 0;
  width: 49%;
  margin-bottom: 60px;
}

.contact-form-style02 .contact-table dl:last-child {
  margin-bottom: 0;
}

.contact-form-style02 .contact-table dl dt {
  font-size: 0.9em;
}

.contact-form-style02 .contact-table dl dt span {
  position: relative;
  top: -0.1em;
  display: inline-block;
  padding: 0px 5px;
  margin-left: 8px;
  border-radius: 7px;
  font-size: 0.7em;
}

.contact-form-style02 .contact-table dl.inline dd {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.contact-form-style02 .contact-table dl.inline input {
  text-align: center;
}

.contact-form-style02 .contact-table dl.hasBD dd {
  padding: 15px;
  border: 1px dashed;
  -webkit-transition: border-color 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  -o-transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
}

.contact-form-style02 .contact-table dl.full {
  width: 100%;
  padding: 20px 0;
}

.contact-form-style02 .contact-table dl.full dt {
  padding-bottom: 15px;
}

.contact-form-style02 .contact-table dl:not(.full) dt {
  position: absolute;
  z-index: 0;
  bottom: 15px;
  left: 0px;
  -webkit-transform: translateY(0%);
  -ms-transform: translateY(0%);
  transform: translateY(0%);
  -webkit-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.contact-form-style02 .contact-table dl:not(.full) dd {
  padding: 0px 0px;
}

.contact-form-style02 .contact-table dl:not(.full).non-empty dt,
.contact-form-style02 .contact-table dl:not(.full).focus dt {
  bottom: -5px;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  font-size: 0.75em;
}

.contact-form-style02 .contact-table dl:not(.full) .wpcf7-not-valid-tip {
  position: absolute;
  bottom: 0px;
  left: 0;
  right: 0;
  z-index: -1;
}

.contact-form-style02 .confirm-table dl:not(.hasBD):not(.non-empty) {
  opacity: 0.45;
}

.contact-form-style02 .wpcf7-not-valid-tip {
  display: block;
  text-align: right;
}

.contact-form-style02 .input_btn,
.contact-form-style02 .button.thanks_btn {
  position: relative;
  display: table;
  margin: 40px auto 0;
  height: 45px;
}

.contact-form-style02 .input_btn input,
.contact-form-style02 .input_btn a,
.contact-form-style02 .button.thanks_btn input,
.contact-form-style02 .button.thanks_btn a {
  color: inherit;
}

.contact-form-style02 .input_btn::before,
.contact-form-style02 .input_btn::after,
.contact-form-style02 .button.thanks_btn::before,
.contact-form-style02 .button.thanks_btn::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 100%;
  height: 2px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: all 0.3s cubic-bezier(0.34, 0.36, 0.06, 1.01);
  -o-transition: all 0.3s cubic-bezier(0.34, 0.36, 0.06, 1.01);
  transition: all 0.3s cubic-bezier(0.34, 0.36, 0.06, 1.01);
}

.contact-form-style02 .input_btn::before,
.contact-form-style02 .button.thanks_btn::before {
  top: 0;
}

.contact-form-style02 .input_btn::after,
.contact-form-style02 .button.thanks_btn::after {
  bottom: 0;
}

.contact-form-style02 .input_btn:hover::before,
.contact-form-style02 .button.thanks_btn:hover::before {
  top: 100%;
  width: 80%;
}

.contact-form-style02 .input_btn:hover::after,
.contact-form-style02 .button.thanks_btn:hover::after {
  bottom: -7px;
  width: 60%;
}

.contact-form-style02 .input_btn input[type="button"],
.contact-form-style02 .input_btn input[type="submit"],
.contact-form-style02 .button.thanks_btn {
  background-color: transparent;
  border: none;
  outline: 0;
  padding: 10px;
  cursor: pointer;
  text-align: center;
  font-size: 100%;
  font-weight: normal;
  text-decoration: none;
}

.contact-form-style02 .input_btn,
.contact-form-style02 .button.thanks_btn {
  color: #333;
}

.contact-form-style02 .input_btn::before,
.contact-form-style02 .input_btn::after,
.contact-form-style02 .button.thanks_btn::before,
.contact-form-style02 .button.thanks_btn::after {
  background-color: #fcbb45;
}

.contact-form-style02 .contact-table input,
.contact-form-style02 .contact-table textarea {
  background-color: transparent;
  border-color: #a1a3a2;
  color: #495057;
}

.contact-form-style02 .contact-table input:focus,
.contact-form-style02 .contact-table textarea:focus {
  border-color: #000;
  color: #495057;
}

.contact-form-style02 .contact-table dl.hasBD dd {
  border-color: #a1a3a2;
  color: #495057;
}

.contact-form-style02 .contact-table dl.hasBD.focus dd {
  border-color: #000;
  color: #495057;
}

.contact-form-style02 .contact-table dl dt {
  font-size: 0.9em;
}

.contact-form-style02 .contact-table dl dt span {
  background-color: #353535;
  color: #ffffff;
}

.screen-reader-response {
  display: none;
}

.wpcf7-not-valid-tip {
  font-size: 80%;
  color: #ff3c7f;
}

.wpcf7-response-output {
  padding-top: 20px;
}

.wpcf7-list-item {
  margin-right: 15px;
}

.wpcf7-list-item-label {
  color: #000;
}

.wpcf7-form-control-wrap {
  width: 100%;
}

.captcha_box {
  display: table;
  margin: 50px auto 0;
}

@media only screen and (max-width: 1000px) and (min-width: 769px) {
  .contact-form-style01 .contact-table dt {
    width: 40%;
  }

  .contact-form-style01 .contact-table dd {
    width: 60%;
  }

  .contact-form-style02 {
    padding: 50px 30px 50px;
  }
}

@media only screen and (max-width: 768px) {
  .contact-form-style01 .contact-table dl {
    display: block;
  }

  .contact-form-style01 .contact-table dt,
  .contact-form-style01 .contact-table dd {
    width: 100%;
  }

  .contact-form-style01 .contact-table dd {
    border-color: transparent;
  }

  .contact-form-style01 .contact-table input,
  .contact-form-style01 .contact-table textarea {
    width: 100%;
  }

  .contact-form-style01 .contact-table input[type="checkbox"],
  .contact-form-style01 .contact-table input[type="radio"] {
    width: auto;
  }

  .contact-form-style01 .wpcf7-list-item {
    display: block;
  }

  .contact-form-style02 {
    padding: 40px 30px 40px;
  }

  .contact-form-style02 .contact-table input,
  .contact-form-style02 .contact-table textarea {
    padding-bottom: 20px;
    text-align: center;
  }

  .contact-form-style02 .contact-table dl {
    width: 100%;
  }

  .contact-form-style02 .contact-table dl dt {
    width: 100%;
    text-align: center;
  }

  .contact-form-style02 .contact-table dl:not(.full) dt {
    bottom: 20px;
  }

  .contact-form-style02 .contact-table dl:not(.full).non-empty dt,
  .contact-form-style02 .contact-table dl:not(.full).focus dt {
    font-size: 0.9em;
  }

  .contact-form-style02 .wpcf7-not-valid-tip {
    text-align: center;
  }
  
}
.time select option:first-child{
  color: #ddd;
}
@media only screen and (max-width: 400px) {
  .contact-form-style01 .contact-table .box_cal{
    flex-wrap: wrap;

  }
  .contact-form-style01 .contact-table .time {
    margin-left: 4.8em;
    margin-top: 0.5em;
}
}
/* END Mail*/
/*---------add post---------*/
.box_hp_mainvisual {
  background: #fff;
  text-align: center;
  color: #292929;
  padding: 50px 50px;
  position: absolute;
  right: 60px;
  bottom: 110px;
}

.communication .box_hp_mainvisual {
  padding: 50px 20px;
}

.main_txt {
  margin-bottom: 0;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.3em;
}

.main_txt_h {
  font-size: 35px;
}

.box_hb_stt {
  background: #FA8F20;
  color: #fff;
  text-align: center;
  border-radius: 50%;
  position: absolute;
  font-weight: bold;
  height: 130px;
  width: 130px;
  padding: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  left: 0;
  bottom: 0;
  -webkit-transform: translate(-60%, 50%);
  -ms-transform: translate(-60%, 50%);
  transform: translate(-60%, 50%);
  margin-bottom: 0;
}

.main_hp_box .inner {
  position: relative;
  height: 100%;
}

.under #main.lexpage {
  padding: 0 0;
}

.archive_single_list_exlp .boxmain_tab a:last-child {
  border-bottom: 1px solid #dedede;
}

.lexpage .archive_single_list_exlp .list_post {
  margin-bottom: 40px;
}

.ttl_lp01 {
  text-align: center;
  font-size: 26px;
  font-weight: 700;
  position: relative;
  margin-bottom: 1.7em;
}

.ttl_lp01_s02 {
  padding-bottom: .85em;
}

.ttl_lp01_s02:before {
  content: "";
  width: 110px;
  height: 3px;
  background: #1c1c1c;
  position: absolute;
  bottom: 0;
  left: calc(50% - 55px);
}

.ttl_lp01 .sp_onl {
  display: none;
}

.ttl_lp01 strong {
  font-size: 140%;
}

.lpbox {
  padding: 55px 0;
}

.lpbox01 {
  background: #E9F3F5;
}

.lpbox02 {
  background: #FAF8EF;
}

.lpbox04 {
  padding-top: 10px;
}

.blog-content .entry>h4 {
  margin-top: 60px;
}

.blog-content .entry>h5 {
  margin-top: 50px;
}

.blog-content .entry .colImg1 img,
.img_wcap_ct img {
  max-width: 800px;
  max-height: 500px;
}

.blog-content .entry .list01 {
  margin-top: 30px;
}

ul.list-tab01 {
  padding: 0px;
  list-style: none;
  display: none;
  max-width: 800px;
  margin: 0 auto 30px;
  display: none;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

ul.list-tab01 li {
  width: calc((100% - 20px) / 3);
  background: #B7B7B7;
  color: #fff;
  display: inline-block;
  padding: 10px 0;
  cursor: pointer;
  font-size: 20px;
  font-weight: bold;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  text-decoration: none;
  -webkit-box-shadow: inset 0px -4px 0px 0px #7F7F7F;
  -moz-box-shadow: inset 0px -4px 0px 0px #7F7F7F;
  box-shadow: inset 0px -4px 0px 0px #7F7F7F;
  margin: 0 10px 0 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
}

ul.list-tab01 li.current {
  background: #9FBC8D;
  -webkit-box-shadow: inset 0px -4px 0px 0px #386934;
  -moz-box-shadow: inset 0px -4px 0px 0px #386934;
  box-shadow: inset 0px -4px 0px 0px #386934;
}

ul.list-tab01 li:nth-child(3n+3) {
  margin-right: 0;
}

.list_bxex_02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  margin-bottom: 40px;
}

.list_bxex02_col {
  width: calc((100% -40px) / 3);
  margin-right: 20px;
  background: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px;
  border-radius: 5px;
  position: relative;
}

.list_bxex02_col:nth-child(3n+3) {
  margin-right: 0;
}

.list_bxex02_col:before {
  content: "";
  width: 0;
  height: 0;
  border-top: 20px solid #9FBC8D;
  border-right: 20px solid transparent;
  position: absolute;
  left: 3px;
  top: 3px;
}

.list_bxex02_ttl {
  font-size: 30px;
  font-weight: bold;
  padding-top: 20px;
  position: relative;
  margin-bottom: 35px;
  text-align: center;
}

.list_bxex02_ttl:before {
  content: "";
  background: #9FBC8D;
  width: 60px;
  height: 3px;
  position: absolute;
  left: 50%;
  margin-left: -30px;
  bottom: -10px;
}

.list_bxex02_col.list_bxex02_cl01:before {
  border-top: 10px solid #9FBC8D;
  border-right: 10px solid transparent;
}

.list_bxex02_cl01 .list_bxex02_ttl:before {
  background: #9FBC8D;
}

.list_bxex02_ttl.list_bxex02_ttl_01 {
  font-size: 20px;
  line-height: 24px;
}

.box_sub01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin-bottom: 20px;
}

.list_bxex02_btn {
  margin-bottom: 0;
}

.list_bxex02_btn a {
  background-size: 15px auto;
  color: #fff;
  display: inline-block;
  padding: 3px 35px 3px 20px;
  cursor: pointer;
  font-size: 15px;
  font-weight: 700;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  text-decoration: none;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}

.list_bxex02_btn a:hover {
  background-position: right 5px center;
  opacity: 0.8;
}

.list_bxex02_ttl_sub {
  font-size: 18px;
  color: #333333;
  text-align: center;
  font-weight: bold;
  margin-bottom: 0;
}

.list_bxex02_des_ttl {
  font-size: 16px;
  color: #333333;
  text-align: center;
  font-weight: bold;
  margin-bottom: 15px;
}

.list_bxex02_des {
  font-weight: 500;
  color: #333333;
  margin-bottom: 10px;
}

.list_bxex02_pd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 25px;
}

.list_bxex_02 li {
  background: #F9F9F9;
  padding: 10px 1px 10px 1px;
  width: calc((100% - 21px) / 3);
  margin: 0 10px 10px 0;
  text-align: center;
}

.list_bxex_02 li:nth-child(3n+3) {
  margin-right: 0;
}

.list_bxex_02 li.list2r img {
  margin-bottom: 5px;
}

.list_bxex_02 li img {
  display: block;
  margin: 0 auto 8px;
}

.list_bxex_02 li span {
  font-size: 11px;
  line-height: 14px;
  display: block;
}

.under_post {
  font-size: 17px;
}

.center_img {
  max-width: 800px;
  margin: 0 auto 1.5em;
  text-align: center;
}

.inbl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 40px;
}

.tag_cate {
  border: 1px solid #E5127C;
  color: #E5127C;
  font-size: 12px;
  font-weight: bold;
  margin-right: 8px;
  line-height: 20px;
  padding: 0 12px;
}

.post_date {
  font-size: 16px;
  font-weight: bold;
}

.img_wcap_ct {
  margin: 40px auto 40px;
  text-align: center;
}

.box_center {
  max-width: 760px;
  margin: 0 auto 40px;
}

p:empty {
  display: none;
}

.note01 {
  margin-bottom: 30px;
}

.note01 {
  position: relative;
  padding-left: 20px;
  line-height: 1.6em;
  margin-bottom: 10px;
}

.note01:before {
  content: "※";
  z-index: 4;
  position: absolute;
  top: 0px;
  left: 0;
}

.note01.note_c {
  color: #D90029;
}

.note01.note_c:before {
  color: #D90029;
}

.box_ctwimg {
  clear: both;
  margin-bottom: 40px;
}

.box_ctwimg p:last-child {
  margin-bottom: 0;
}

.img_r {
  max-width: 420px;
  float: right;
  margin: 0 0 20px 40px;
}

.img_l {
  max-width: 420px;
  float: left;
  margin: 0 40px 20px 0;
}

.catption_txt {
  padding-top: 10px;
  color: #8E8E8E;
  font-size: 15px;
  display: block;
  letter-spacing: -0.05em;
}

.box_lig01 {
  margin-top: 40px;
  position: relative;
  padding: 40px;
  background: #f9e9f2;
  margin-bottom: 40px;
}

.box_lig01 p:last-child {
  margin-bottom: 0;
}

.box_lig02 {
  margin-top: 40px;
  position: relative;
  padding: 40px;
  background: #F7F7F7;
  margin-bottom: 40px;
}

.box_lig02 p:last-child {
  margin-bottom: 0;
}

.maint0 {
  margin-top: 0;
}

blockquote p,
blockquote li,
blockquote dt,
blockquote dd,
blockquote a {
  font-size: 16px;
}

blockquote {
  position: relative;
  padding: 25px 30px 25px 70px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #F7F7F7;
  margin-bottom: 40px;
  border-left: 2px solid #E5127C;
  /*     -webkit-box-shadow: 3px 3px 5px 6px #ccc; 
	  -moz-box-shadow:    3px 3px 5px 6px #ccc;   */
  -webkit-box-shadow: 1px 2px 2px 0px #e0e0e0;
  box-shadow: 1px 2px 2px 0px #e0e0e0;
}

blockquote:before {
  position: absolute;
  top: 15px;
  left: 20px;
  z-index: 2;
  background-size: 40px;
  width: 50px;
  height: 50px;
  content: "";
}

blockquote p {
  position: relative;
  padding: 0;
  margin: 10px 0;
  z-index: 3;
  line-height: 1.7;
}

blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em;
}

@media only screen and (min-width: 769px) and (max-width: 1280px) {

  .under .imgBox.colImg1 .item img,
  .blog-content .entry .colImg1 img,
  .img_wcap_ct img {
    max-width: 700px;
  }
}

@media screen and (max-width: 960px) {
  .img_l {
    max-width: 300px;
    margin: 0 20px 15px 0;
  }

  .img_r {
    max-width: 300px;
    margin: 0 0px 15px 20px;
  }
}

/*---------add post sp---------*/
@media screen and (max-width: 768px) {
  .img_wcap_ct {
    margin-bottom: 30px;
    width: auto !important;
  }

  .img_wcap_ct img {
    max-height: 400px;
  }

  .blog-content .entry>h4 {
    margin-top: 40px;
  }

  .blog-content .entry>h5 {
    margin-top: 30px;
  }

  .under .blog-content .entry .colImg1 img,
  .under .img_wcap_ct img {
    max-width: 100%;
  }

  .box_lig01,
  .box_lig02 {
    padding: 20px;
    margin-top: 30px;
  }

  .inbl {
    margin-bottom: 40px;
  }

  .box_lig01,
  .box_lig02 {
    padding: 20px;
  }

  .under_post table th {
    font-size: 15px;
  }
}

@media screen and (max-width: 640px) {

  .img_l,
  .img_r {
    float: none;
    max-width: 100%;
    margin: 0 0px 20px 0;
  }
}

/*pc*/
footer .copyright p{padding: 0;margin: 0;}
footer .copyright .textwidget p {color:#fff;letter-spacing:.17em;font-size:12px;text-align:center;}
.flex_b{display: flex;justify-content: center;align-items: center;}
footer .copyright p.copy_img{padding-right: 20px;margin-right: 20px;position: relative;}
footer .copyright p.copy_img:after{content:'';position: absolute;right: 0;top: 0;bottom: 0;margin: auto;height: 80%;width: 1px;background-color: rgba(255, 255, 255, 0.8);}

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/