@charset "UTF-8";
/* reset ----------------------------------------*/
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
  display: block;
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
body {
  line-height: 1.2;
  -webkit-text-size-adjust: 100%;
  word-break: break-all;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
img, video {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}
input[type="radio"], input[type="checkbox"], input[type="submit"], input[type="button"], label {
  cursor: pointer;
}
a, canvas {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
a {
  text-decoration: none;
  color: inherit;
}
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
  overflow: hidden;
}
.left {
  float: left;
}
.right {
  float: right;
}
.cl {
  clear: both;
}
/*
.hover{
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  opacity: 1;
}
.hover:hover{
  opacity: 0.6;
}
*/
.inline-block {
  display: inline-block;
}
/*** pc-only / sp-only ***/
@media screen and (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}
/* public ----------------------------------------*/
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: normal;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
/*** structure ***/
body {
  min-width: 1200px;
  font-size: 15px;
  line-height: 1.5;
  color: #111;
  background: #ffffff;
  position: relative;
}
body * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: "Yu Gothic", "YuGothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.container {
  width: 1000px;
  margin: 0 auto;
}
h1#top-heading, p#top {
  line-height: 40px;
  margin: 0 auto;
  font-size: 12px;
  text-align: center;
  white-space: nowrap;
}
i.arrow01 {
  display: inline-block;
  width: 14px;
  height: 14px;
  vertical-align: middle;
  margin-bottom: 2px;
  margin-right: 0.5em;
  background: url(../images/common/arrow01.png) no-repeat 0 0;
}
i.arrow04 {
  display: inline-block;
  width: 15px;
  height: 15px;
  vertical-align: middle;
  margin-bottom: 2px;
  margin-right: 0.5em;
  background: url(../images/common/arrow04.png) no-repeat 0 0;
}
i.doc {
  display: inline-block;
  width: 14px;
  height: 12px;
  vertical-align: middle;
  margin-bottom: 2px;
  margin-left: 0.5em;
  background: url(../images/common/icon_doc.png) no-repeat 0 0;
}
i.doc2 {
  display: inline-block;
  width: 20px;
  height: 30px;
  vertical-align: middle;
  margin-bottom: 2px;
  background: url(../images/common/icon_doc02.png) no-repeat 0 0;
}
i.pdf {
  display: inline-block;
  width: 20px;
  height: 20px;
  vertical-align: middle;
  margin-bottom: 2px;
  margin-left: 0.5em;
  background: url(../images/common/icon_pdf.png) no-repeat 0 0;
}
.bgcolor-beige {
  background: #fcf8f5;
}
.icon-pdf {
  vertical-align: top;
  margin-left: 5px;
}
i.disc {
  display: inline-block;
  width: 0.75em;
  height: 0.75em;
  margin-right: 0.5em;
  border-radius: 50%;
  border: 3px solid #019355;
}
i.freedial01, i.freedial03 {
  margin-right: 0.2em;
}
i.freedial01:before {
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 0.8em;
  vertical-align: middle;
  margin-top: -0.2em;
  background: url(../images/common/icon_freedial02.png) no-repeat 0 0;
  background-size: contain;
}
i.freedial03:before {
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 0.8em;
  vertical-align: middle;
  margin-top: -0.2em;
  background: url(../images/common/icon_freedial03.png) no-repeat 0 0;
  background-size: contain;
}
/* pagetop ----------------------------------------*/
#top-pagetop a {
  display: block;
  background: #019355;
  color: #fff;
  text-align: center;
  height: 20px;
  line-height: 20px;
  font-size: 10px;
}
/* header ----------------------------------------*/
header#header {
  height: 130px;
  padding: 30px 0;
  border-top: 1px solid #dedad8;
  border-bottom: 1px solid #dedad8;
}
header#header .logo {
  margin-top: 8px;
  float: left;
}
header#header .info-wrap {
  float: right;
  width: 160px;
  /*margin-top: -22px;*/
}
header#header .info {
  float: right;
  width: 160px;
  text-align: center;
  margin-left: 10px;
}
header#header .info.left0 {
  margin-left: 0;
}
header#header .info dt {
  height: 22px;
  line-height: 22px;
  color: #ffffff;
  border-radius: 6px;
  background: #5a463c;
  /*font-size: 11px;*/
  font-size: 9px;
}
header#header .info dt + dd {
  margin-top: 0;
  line-height: 1.18;
  font-size: 25px;
  white-space: nowrap;
  font-weight: bold;
}
header#header .info .txt-open-time {
  font-size: 11px;
}
header#header .hnav {
  float: right;
  margin-right: 20px;
  padding-right: 20px;
  text-align: center;
  border-right: 2px solid #dedad8;
  height: 73px;
}
header#header .hnav ul {
  letter-spacing: -0.5em;
  margin: 0;
}
header#header .hnav ul li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  font-weight: bold;
}
header#header .hnav ul li a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  text-align: left;
  width: 198px;
  height: 68px;
  line-height: 1.3;
  color: #fff;
  margin-right: 12px;
  border-radius: 5px;
  font-size: 14px;
  position: relative;
}
header#header .hnav ul li a img {
  display: block;
  margin: 0 14px 0 14px;
}
header#header .hnav ul li a .icon-desktop {
  max-width: 30px;
}
header#header .hnav ul li a .icon-house {
  max-width: 28px;
}
header#header .hnav ul li:last-child a {
  margin-right: 0;
}
header#header .hnav ul li:nth-child(1) a {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#48aef9+0,48aef9+50,2ca4f4+50,2ca4f4+100 */
  background: rgb(72, 174, 249); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(72, 174, 249, 1) 0%, rgba(72, 174, 249, 1) 50%, rgba(44, 164, 244, 1) 50%, rgba(44, 164, 244, 1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(72, 174, 249, 1) 0%, rgba(72, 174, 249, 1) 50%, rgba(44, 164, 244, 1) 50%, rgba(44, 164, 244, 1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(72, 174, 249, 1) 0%, rgba(72, 174, 249, 1) 50%, rgba(44, 164, 244, 1) 50%, rgba(44, 164, 244, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#48aef9', endColorstr='#2ca4f4', GradientType=1); /* IE6-9 fallback on horizontal gradient */
}
header#header .hnav ul li:nth-child(2) a {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fcbb47+0,fcbb47+50,faa22d+50,faa22d+100 */
  background: rgb(252, 187, 71); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(252, 187, 71, 1) 0%, rgba(252, 187, 71, 1) 50%, rgba(250, 162, 45, 1) 50%, rgba(250, 162, 45, 1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(252, 187, 71, 1) 0%, rgba(252, 187, 71, 1) 50%, rgba(250, 162, 45, 1) 50%, rgba(250, 162, 45, 1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(252, 187, 71, 1) 0%, rgba(252, 187, 71, 1) 50%, rgba(250, 162, 45, 1) 50%, rgba(250, 162, 45, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fcbb47', endColorstr='#faa22d', GradientType=1); /* IE6-9 fallback on horizontal gradient */
}
header#header .hnav ul li:nth-child(3) a {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#00af75+0,00af75+50,009e62+50,009e62+100 */
  background: rgb(0, 175, 117); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(0, 175, 117, 1) 0%, rgba(0, 175, 117, 1) 50%, rgba(0, 158, 98, 1) 50%, rgba(0, 158, 98, 1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(0, 175, 117, 1) 0%, rgba(0, 175, 117, 1) 50%, rgba(0, 158, 98, 1) 50%, rgba(0, 158, 98, 1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(0, 175, 117, 1) 0%, rgba(0, 175, 117, 1) 50%, rgba(0, 158, 98, 1) 50%, rgba(0, 158, 98, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00af75', endColorstr='#009e62', GradientType=1); /* IE6-9 fallback on horizontal gradient */
}
header#header .hnav-sp {
  display: none;
}
/* gnav ----------------------------------------*/
#gnav .container {
  position: relative;
}
#gnav ul {
  display: table;
  width: 100%;
  /*padding: 30px 0;*/
}
#gnav li {
  display: table-cell;
  vertical-align: middle;
  /*padding: 0 .5em;*/
  width: 200px;
}
#gnav li > a {
  display: block;
  /*height: 45px;*/
  /*font-size: 17px;*/
  font-size: 15px;
  font-weight: bold;
  color: #019355;
  text-align: center;
  position: relative;
  color: #fff;
  padding: 10px 0;
}
#gnav li > a:before {
  content: "";
  position: absolute;
  right: 2px;
  bottom: 2px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 10px 10px;
  border-color: transparent transparent #ffffff transparent;
}
#gnav li > a > i {
  display: block;
  height: 33px;
  margin-bottom: 10px;
}
#gnav li:nth-child(1) a {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#48aef9+0,48aef9+50,2ca4f4+50,2ca4f4+100 */
  background: rgb(255, 153, 153); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(255, 153, 153, 1) 0%, rgba(255, 153, 153, 1) 50%, rgba(255, 144, 144, 1) 50%, rgba(255, 144, 144, 1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(255, 153, 153, 1) 0%, rgba(255, 153, 153, 1) 50%, rgba(255, 144, 144, 1) 50%, rgba(255, 144, 144, 1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(255, 153, 153, 1) 0%, rgba(255, 153, 153, 1) 50%, rgba(255, 144, 144, 1) 50%, rgba(255, 144, 144, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF9999', endColorstr='#FF9090', GradientType=1); /* IE6-9 fallback on horizontal gradient */
}
#gnav li:nth-child(1) a > i {
  background-image: url(/images/common/gnav-icon01.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 50px 33px;
}
#gnav li:nth-child(2) a {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#48aef9+0,48aef9+50,2ca4f4+50,2ca4f4+100 */
  background: rgb(103, 185, 214); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(103, 185, 214, 1) 0%, rgba(103, 185, 214, 1) 50%, rgba(94, 177, 209, 1) 50%, rgba(94, 177, 209, 1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(103, 185, 214, 1) 0%, rgba(103, 185, 214, 1) 50%, rgba(94, 177, 209, 1) 50%, rgba(94, 177, 209, 1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(103, 185, 214, 1) 0%, rgba(103, 185, 214, 1) 50%, rgba(94, 177, 209, 1) 50%, rgba(94, 177, 209, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#67B9D6', endColorstr='#5EB1D1', GradientType=1); /* IE6-9 fallback on horizontal gradient */
}
#gnav li:nth-child(2) a > i {
  background-image: url(/images/common/gnav-icon02.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 50px 33px;
}
#gnav li:nth-child(3) a {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#48aef9+0,48aef9+50,2ca4f4+50,2ca4f4+100 */
  background: rgb(237, 150, 62); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(237, 150, 62, 1) 0%, rgba(237, 150, 62, 1) 50%, rgba(234, 141, 55, 1) 50%, rgba(234, 141, 55, 1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(237, 150, 62, 1) 0%, rgba(237, 150, 62, 1) 50%, rgba(234, 141, 55, 1) 50%, rgba(234, 141, 55, 1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(237, 150, 62, 1) 0%, rgba(237, 150, 62, 1) 50%, rgba(234, 141, 55, 1) 50%, rgba(234, 141, 55, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ED963E', endColorstr='#EA8D37', GradientType=1); /* IE6-9 fallback on horizontal gradient */
}
#gnav li:nth-child(3) a > i {
  background-image: url(/images/common/gnav-icon03.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 50px 33px;
}
#gnav li:nth-child(4) a {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#48aef9+0,48aef9+50,2ca4f4+50,2ca4f4+100 */
  background: rgb(143, 195, 31); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(143, 195, 31, 1) 0%, rgba(143, 195, 31, 1) 50%, rgba(133, 188, 27, 1) 50%, rgba(133, 188, 27, 1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(143, 195, 31, 1) 0%, rgba(143, 195, 31, 1) 50%, rgba(133, 188, 27, 1) 50%, rgba(133, 188, 27, 1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(143, 195, 31, 1) 0%, rgba(143, 195, 31, 1) 50%, rgba(133, 188, 27, 1) 50%, rgba(133, 188, 27, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#8FC31F', endColorstr='#85BC1B', GradientType=1); /* IE6-9 fallback on horizontal gradient */
}
#gnav li:nth-child(4) a > i {
  background-image: url(/images/common/gnav-icon04.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 50px 33px;
}
#gnav li:nth-child(5) a {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#48aef9+0,48aef9+50,2ca4f4+50,2ca4f4+100 */
  background: rgb(189, 167, 211); /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(189, 167, 211, 1) 0%, rgba(189, 167, 211, 1) 50%, rgba(182, 158, 205, 1) 50%, rgba(182, 158, 205, 1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(189, 167, 211, 1) 0%, rgba(189, 167, 211, 1) 50%, rgba(182, 158, 205, 1) 50%, rgba(182, 158, 205, 1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(189, 167, 211, 1) 0%, rgba(189, 167, 211, 1) 50%, rgba(182, 158, 205, 1) 50%, rgba(182, 158, 205, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#BDA7D3', endColorstr='#B69ECD', GradientType=1); /* IE6-9 fallback on horizontal gradient */
}
#gnav li:nth-child(5) a > i {
  background-image: url(/images/common/gnav-icon05.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 50px 33px;
}
#gnav li.current > a {
  color: #ffa046;
}
#gnav li > a .en {
  /*position: absolute;*/
  display: block;
  width: 100%;
  bottom: 0;
  left: 0;
  font-size: 13px;
}
#gnav li .gnav-over {
  position: absolute;
  width: 100%;
  left: 0;
  z-index: 999;
  /*padding-top: 50px;*/
  padding-top: 30px;
  display: none;
}
#gnav li .gnav-over div {
  border: 4px solid #ffa046;
  padding: 10px 30px 10px 160px;
  border-radius: 10px;
  position: relative;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
#gnav li .gnav-over div.pic1 {
  background: #fff url(../images/common/gnav-over1.png) no-repeat 0 bottom;
}
#gnav li .gnav-over div.pic2 {
  background: #fff url(../images/common/gnav-over2.png) no-repeat 10px center;
}
#gnav li .gnav-over div:before {
  content: "";
  display: block;
  width: 0;
  border: 22px solid transparent;
  border-bottom-color: #ffa046;
  top: -44px;
  position: absolute;
}
#gnav li:nth-child(2) .gnav-over div:before {
  left: 275px;
}
#gnav li:nth-child(3) .gnav-over div:before {
  left: 474px;
}
#gnav li .gnav-over p + p {
  border-top: 1px dashed #ccc;
}
#gnav li .gnav-over p a {
  padding: 20px 0 20px 30px;
  display: block;
  background: url(../images/common/arrow01.png) no-repeat 0 center;
  color: #019355;
  font-size: 21px;
}
#gnav li .gnav-over p a span.blank-icon {
  background: url(../images/common/icon_doc03.png) no-repeat right center;
  color: #019355;
  font-size: 21px;
  display: inline;
  padding-right: 20px;
}
#gnav li .gnav-over p a:hover {
  text-decoration: underline;
}
#gnav li .gnav-over p a span {
  display: block;
  font-size: 17px;
  color: #111;
}
#gnav li .gnav-over p a span.sub {
  display: inline;
  font-size: 17px;
  color: #111;
}
/* sns ----------------------------------------*/
#sns {
  padding: 40px 0;
}
#sns ul {
  text-align: center;
}
#sns li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  margin-right: 10px;
}
/* banners ----------------------------------------*/
.footer-content {
  padding: 30px 0 14px;
  border-top: 1px solid #cdc7c4;
}
.footer-content #banners ul {
  overflow: hidden;
}
.footer-content #banners li {
  float: left;
  margin: 0 16px 16px 0;
}
.footer-content #banners li:nth-child(4n) {
  margin-right: 0;
}
/* footer ----------------------------------------*/
footer#footer {}
footer#footer a:hover {
  text-decoration: underline;
}
footer#footer .fnav {
  padding: 55px 0 45px;
  letter-spacing: -0.5em;
  background: #f5f5f5;
}
footer#footer .fnav dl, footer#footer .fnav ul {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
}
footer#footer .fnav dl {
  width: 250px;
  margin-right: 30px;
}
footer#footer .fnav dt {
  padding-bottom: 13px;
  border-bottom: 1px dashed #c4c4c4;
}
footer#footer .fnav dt:before {
  content: url(../images/common/arrow02.png);
  display: inline-block;
  padding-right: 1em;
}
footer#footer .fnav dd {
  margin-top: 10px;
  margin-left: 35px;
  text-indent: -1em;
  font-size: 13px;
}
footer#footer .fnav dt + dd {
  margin-top: 15px;
}
footer#footer .fnav dd:before {
  content: "・";
  display: inline-block;
  width: 1em;
  text-indent: 0;
}
footer#footer .fnav dl + ul {
  margin-right: 30px;
}
footer#footer .fnav li {
  margin-bottom: 20px;
}
footer#footer .fnav li a:before {
  content: url(../images/common/arrow02.png);
  display: inline-block;
  padding-right: 1em;
}
footer#footer img {
  vertical-align: middle;
}
footer#footer .copyright {
  padding: 35px 0 45px;
  color: #ffffff;
  text-align: center;
  background: #019355;
  font-size: 12px;
}
/* page-top ----------------------------------------*/
.page-top {
  position: fixed;
  bottom: 20px;
  /*right: 80px;*/
  right: 20px;
  z-index: 100;
}
/* rnav ----------------------------------------*/
.rnav {
  position: fixed;
  top: 40%;
  right: 0;
  z-index: 100;
}
.rnav .list-rnav {
  height: 580px;
}
.rnav li {
  position: absolute;
  border-radius: 6px 0 0 6px;
  background-color: #019355;
  right: 0;
  width: 80px;
  height: 198px;
  margin: 5px 0;
  text-align: center;
}
.rnav li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.rnav li img {
  width: 33px;
}
.rnav li.list-01 {
  top: -220px;
  background: linear-gradient(135deg, rgba(72, 174, 249, 1) 0%, rgba(72, 174, 249, 1) 50%, rgba(62, 163, 248, 1) 50%, rgba(62, 163, 248, 1) 100%);
}
.rnav li.list-02 {
  background: linear-gradient(135deg, rgba(252, 187, 71, 1) 0%, rgba(252, 187, 71, 1) 50%, rgba(251, 177, 61, 1) 50%, rgba(251, 177, 61, 1) 100%);
}
.rnav li.list-03 {
  top: 220px;
  background: linear-gradient(135deg, rgba(0, 174, 119, 1) 0%, rgba(0, 174, 119, 1) 50%, rgba(0, 164, 108, 1) 50%, rgba(0, 164, 108, 1) 100%);
}
/* breadcrumb ----------------------------------------*/
.breadcrumb {
  padding-top: 25px;
}
.breadcrumb ul {
  letter-spacing: -0.5em;
}
.breadcrumb li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  margin-right: 0.75em;
}
.breadcrumb li:before {
  content: url(/images/common/arrow03.png);
  margin-right: 0.75em;
}
.breadcrumb li:first-child:before {
  content: none;
}
.breadcrumb li a {
  color: #019355;
}
.breadcrumb li a[href]:hover {
  text-decoration: underline;
}
/* .lnav  ----------------------------------------*/
main > .container.clearfix {
  margin-top: 40px;
}
main > .container.clearfix > .left {
  width: 220px;
}
main > .container.clearfix > .right {
  width: 740px;
}
.lnav {
  margin-bottom: 40px;
}
.lnav-ilust {
  margin-bottom: 16px;
}
.lnav-btn + .lnav-btn {
  margin-top: 20px;
}
.lnav-btn a {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: 20px 16px;
  vertical-align: top;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  border-radius: 7px;
  position: relative;
  transition: 0.3s;
}
.lnav-btn a:hover {
  opacity: 0.8;
}
.lnav-btn-online a {
  background: #fba22e;
}
.lnav-btn-life a {
  background: #04a671;
}
.lnav-btn-quote a {
  background: #eb7c7a;
}
.lnav-btn-txt {
  display: inline-block;
  width: 160px;
  text-align: center;
}
.lnav-btn-txt-S {
  font-size: 14px;
}
.lnav-btn a i {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  right: 2em;
  background: url(/images/common/arrow06.png) no-repeat 0 center;
  margin-right: -10px;
}
/* tab-pager ----------------------------------------*/
.tab-pager {
  margin-top: 53px;
}
.tab-pager.none {
  margin-top: 10px;
}
.tab-pager ul {
  text-align: center;
  letter-spacing: -0.4em;
}
.tab-pager li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  width: 162px;
  height: 70px;
  border: 1px solid #c6bfb9;
  border-bottom: 0;
  border-radius: 6px 6px 0 0;
  background: #ffffff;
}
.tab-pager li.current {
  position: relative;
  height: 75px;
  margin-top: -5px;
  z-index: 10;
  background: none;
}
.tab-pager li.current:before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 8px;
  top: 0;
  left: 0;
  border-radius: 5px 5px 0 0;
  background: #019355;
}
.tab-pager li.current:after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 1px;
  top: 100%;
  left: 0;
  background: #f6f2ec;
}
.tab-pager li a {
  display: table;
  width: 100%;
  height: 100%;
}
.tab-pager li a span {
  display: table-cell;
  padding-top: 3px;
  vertical-align: middle;
  color: #019355;
  font-size: 14px;
  font-weight: bold;
}
.tab-pager li.current a span {
  padding-top: 8px;
}
/* tab-box ----------------------------------------*/
header.tab-box {
  border-bottom: 1px solid #c6bfb9;
}
header.tab-box .title-box {
  margin-top: 40px;
  padding: 20px 0;
  border-top: 1px solid #d5d0ca;
  border-bottom: 1px solid #d5d0ca;
}
header.tab-box .title-box .inner-box {
  display: inline-block;
  width: 50%;
  vertical-align: middle;
  color: #019355;
  font-weight: bold;
}
header.tab-box .title-box .inner-box h1 {
  font-size: 25px;
}
header.tab-box .title-box .inner-box h1 small {
  font-size: 17px;
}
header.tab-box .title-box .inner-box p {
  font-size: 22px;
}
header.tab-box .title-box .inner-box dl.coop {
  overflow: hidden;
  font-size: 17px;
}
header.tab-box .title-box .inner-box dl.coop dt {
  float: left;
  clear: left;
  width: 7em;
}
header.tab-box .title-box .inner-box dl.coop dd {
  float: left;
  width: 16em;
}
header.tab-box .title-box .desc {
  display: inline-block;
  width: 50%;
  line-height: 1.7;
  vertical-align: middle;
  font-weight: bold;
}
footer.tab-box {
  display: none;
}
/* table-box ----------------------------------------*/
.table-box {
  overflow: auto;
  width: 100%;
}
.table-box table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}
.table-box th, .table-box td {
  padding: 10px 20px;
  vertical-align: middle;
  border-top: 2px solid #fcf8f5;
  border-left: 2px solid #fcf8f5;
}
.table-box th:first-child, .table-box td:first-child {
  /*  border-left: 0; */
}
.table-box thead th {
  text-align: center;
  background: #eae5e1;
  font-weight: bold;
}
.table-box tbody th, .table-box tbody td {
  text-align: left;
}
.table-box tbody th {
  color: #ffffff;
  font-weight: bold;
  background: #5a463d;
}
.table-box tbody td.col {
  background: #eae5e1;
  font-weight: bold;
}
.table-box tbody td {
  background: #ffffff;
}
.table-box tbody td strong {
  font-size: 1.4em;
}
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .table-box tbody td strong {
    font-size: 1.2em;
  }
}
/* flow-box ----------------------------------------*/
.flow-box {
  border-bottom: 1px solid;
  margin-bottom: 50px;
}
.flow-box ul {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.flow-box li {
  display: table-cell;
  line-height: 30px;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
  position: relative;
}
.flow-box li:not(:first-child):before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: -5px;
  width: 10px;
  height: 100%;
  background: url(/images/common/arrow05.png) no-repeat left center;
}
.flow-box li > span {
  display: inline-block;
  padding: 15px 5px;
  position: relative;
}
.flow-box li.current > span {
  color: #019355;
}
.flow-box li.current > span:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 100%;
  height: 0;
  border-bottom: 10px solid;
}
.seminar-theme {
  margin: 30px 0;
}
.seminar-theme dt {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: bold;
}
.seminar-theme dd {
  margin: 0 0 30px;
}
.seminar-theme-notes {
  margin: 0 0 30px;
}
.seminar-item{
 width: 65%;
}
.schedule_item{
 width: 40%;
}
.schedule-table {
  margin-bottom: 20px;
}
.schedule-table table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  box-sizing: border-box;
  border: 3px solid #fcf8f5;
}
.schedule-table th {
  font-weight: bold;
  text-align: center;
  border: 3px solid #fcf8f5;
  background: #eae5e1;
  padding: 16px 8px;
}
.schedule-table td {
  text-align: center;
  border: 3px solid #fcf8f5;
  word-break: break-all;
  background: #fff;
  padding: 16px 8px;
  vertical-align: middle;
  word-break: break-all;
}
.schedule-table td span {
  display: inline-block;
  text-align: left;
}
.schedule-table-attention {
  font-size: 15px;
  margin-bottom: 40px;
}

/* form-box ----------------------------------------*/
.form-box dl {
  display: table;
  table-layout: fixed;
  width: 100%;
  border-top: 2px solid #fcf8f5;
}
.form-box dl > * {

  vertical-align: middle;
  padding: 15px;
}
.form-box dt {
  font-weight: bold;
  border-right: 2px solid #fcf8f5;
  background: #eae5e1;
}
.form-box dt span {
  display: block;
  font-size: 14px;
  font-weight: normal;
}
.form-box dd {
  background: #ffffff;
  display: flex;
  flex-direction: column;
}
.form-box-text{
    font-weight: bold;
    border-right: 2px solid #fcf8f5;
    background: #eae5e1;
    padding: 15px;
    margin: 0 0 15px 0;	
}
.form-box label {
  display: inline-block;
  position: relative;
}
.form-box .placeholder {
  display: block;
  margin-top: 0.5em;
}
.form-box .input-lg {
  width: 100%;
}
.form-box .input-md {
  width: 80%;
}
.form-box .input-sm {
  width: 50%;
}
.form-box .input-sl {
  width: 100%;
}
.form-box .input-xs {
  width: 4em;
}
.form-box .input-lg.error {
  background: inherit;
  border: 1px solid #f00;
}
.form-box .input-md.error {
  background: inherit;
  border: 1px solid #f00;
}
.form-box .input-sm.error {
  background: inherit;
  border: 1px solid #f00 !important;
}
.form-box .input-xs.error {
  background: inherit;
  border: 1px solid #f00;
}
.form-box input[type="text"], .form-box input[type="tel"], .form-box input[type="email"], .form-box input[type="number"], .form-box input[type="password"], .form-box textarea {
  line-height: 1.75;
  padding: 0.1em 0.5em;
  border-radius: 3px;
  color: inherit;
  font-size: inherit;
  border: 1px solid;
}
.form-box input[type="radio"], .form-box input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.form-box input[type="radio"] + span, .form-box input[type="checkbox"] + span {
  display: inline-block;
  padding-left: 22px;
  position: relative;
}
.form-box input[type="radio"] + span:before, .form-box input[type="checkbox"] + span:before {
  content: "";
  position: absolute;
  display: block;
  width: 16px;
  height: 20px;
  top: 0;
  left: 0;
  background-repeat: no-repeat;
  background-position: 0 0;
}
.form-box input[type="radio"] + span:before {
  background-image: url(/images/common/radio.png);
  top: -3px;
}
.form-box input[type="checkbox"] + span:before {
  background-image: url(/images/common/checkbox.png);
  top: -3px;
}
.form-box input[type="radio"]:checked + span:before, .form-box input[type="checkbox"]:checked + span:before {
  background-position: 0 bottom;
}
.form-box select {
  line-height: 1.75;
  padding: 0.1em 0.5em;
  border-radius: 3px;
  color: inherit;
  font-size: inherit;
  border: 1px solid;
  background-color: transparent;
  background: url(/images/common/arrow_select.png) no-repeat right center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.select-long {
  width: 160px;
}
.form-box select::-ms-expand {
  display: none;
}
/*必須*/
i.req {
  display: inline-block;
  padding: 0.2em 0.4em;
  font-size: 11px;
  color: #ffffff;
  vertical-align: middle;
  letter-spacing: 0.1em;
  background: #e6001a;
}
.form-box i.req {
  margin-left: 0.5em;
}
.mw_wp_form_confirm .form-box .placeholder, .mw_wp_form_confirm .form-box dt span, .mw_wp_form_confirm .form-box i.req, .mw_wp_form_confirm .step02 {
  display: none;
}
.mw_wp_form .horizontal-item + .horizontal-item{
	margin-left: 0 !important;
}

/* 日付セル無効化用スタイル */
#prev-week.disabled,
#next-week.disabled{
  color: #999;
  pointer-events: none;
  opacity: 0.6;
  cursor: not-allowed;
}
/* 20250718カレンダー ----------------------------------------*/
/* 無効状態（薄いグレー表示） */
.disabled {
  color: #ccc;
  pointer-events: none;
  opacity: 0.6;
  cursor: not-allowed;
}
/*変更*/
i.change {
  display: inline-block;
  padding: 0.2em 0.4em;
  font-size: 11px;
  color: #ffffff;
  vertical-align: middle;
  letter-spacing: 0.1em;
  background: #daa520;
  border-radius: 10px;
}
.form-box i.change {
  margin-left: 0.5em;
}
/*車両*/
i.vehicle {
  display: inline-block;
  padding: 0.2em 0.4em;
  font-size: 11px;
  color: #ffffff;
  vertical-align: middle;
  letter-spacing: 0.1em;
  background: #4169e1;
  border-radius: 10px;
}
.form-box i.vehicle {
  margin-left: 0.5em;
}
.form-box .error-msg {
  margin-bottom: 15px;
  margin-left: 22px;
  text-indent: -22px;
  font-weight: bold;
  color: #e6001a;
}
i.caution {
  display: inline-block;
  width: 17px;
  height: 15px;
  vertical-align: middle;
  background: url(../images/common/icon_caution.png) no-repeat 0 0;
}
.form-box .error-msg i.caution {
  margin-right: 5px;
}
/* 24/12/10追記　カレンダー ----------------------------------------*/
.biz-hour {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
}
.biz-hour th {
  border: 1px solid #ddd;
  padding: 10px;
  text-align: center;
  background: #0e8863;
  color: #fff;
}
.biz-hour td {
  border: 1px solid #ddd;
  padding: 10px;
  text-align: center;
}
.biz-hour .sat {
  background-color: #f0f8ff;
}
.biz-hour .sun {
  background-color: #ffe4e1;
}
.selectable {
  cursor: pointer;
}
.selected {
  background-color: #d3d3d3; /* 選択済みのセルの背景色 */
  /* pointer-events: none; 再クリックを無効化 2025.04.09 クリックのリセット */
}
.selectable:hover {
  background-color: #f0f0f0; /* ホバー時の効果 */
}
.week-navigation {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}
.selected-time {
  font-size: 16px;
  font-weight: bold;
  color: #333;
}
#schedule-wrapper {
  overflow: hidden;
  transition: 0.3s ease-in-out;
}
#schedule-wrapper[style*="display: block"] {
  max-height: 1000px;
}
#selected-time {
  display: inline;
}
#reset-choices {
  background-color: #f44336;
  color: white;
  padding: 1px 15px;
  font-size: 14px;
  cursor: pointer;
  border: solid 1px #b20f03;
}
#reset-choices:hover {
  background-color: #d32f2f;
}
#phone-online-group {
  display: none;
  background-color: #fff; /* 必要に応じて背景色を設定 */
  padding: 20px;
  border: 1px solid #ccc; /* 境界線を追加して視認性を向上 */
}
#phone-online-group.active {
  display: block;
}
/* アコーディオン */


#accordion-content {
  max-height: none;  /* 最初から開いておく */
  visibility: visible;
}


#insurance-accordion {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out, visibility 0.3s ease-out;
  visibility: hidden;
}

#insurance-accordion.open {
  max-height: 1000px; /* 必要に応じて変更 */
  visibility: visible;
}
/* 確認画面では常に表示 */
.mw_wp_form_confirm #insurance-accordion {
  max-height: none !important;
  visibility: visible !important;
  overflow: visible !important;
}

/* 通常フォーム用 */
#form .usually dl dt {
    width: 16em;
	display:  table-cell;
}
#form .usually dd {
display: table-cell;
}

.banners {
  display: flex;
  justify-content: center;
  margin-top: 80px;
}
.banners-item {
  min-width: 238px;
}
.banners-item + .banners-item {
  margin-left: 16px;
}
.banners-item a {
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: 100%;
  padding: 20px 16px;
  vertical-align: top;
  color: #ffffff !important;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none !important;
  border-radius: 7px;
  position: relative;
  transition: 0.3s;
}
.banners-item a:hover {
  opacity: 0.8;
}
.banners-item-seminar a {
  background: #217bc4;
}
.banners-item-online a {
  background: #fba22e;
}
.banners-item-quote a {
  background: #eb7c7a;
}
.banners-item-life a {
  background: #04a671;
}
.banners-item-txt {
  display: inline-block;
  text-align: center;
}
.banners-item-txt-S {
  font-size: 14px;
}
.banners-item a i {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  right: 2em;
  background: url(/images/common/arrow06.png) no-repeat 0 center;
  margin-right: -20px;
}
/* submit-box ----------------------------------------*/
.submit-box {
  text-align: center;
}
.submit-box button, .submit-box a {
  border: none;
  margin: 15px 7px 0;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
/* title ----------------------------------------*/
.title-box-01 {
  padding: 16px 0;
  border-top: 1px solid #d5d0ca;
  border-bottom: 1px solid #d5d0ca;
  margin-bottom: 25px;
}
.title-box-01 h1 {
  font-size: 24px;
  font-weight: bold;
  color: #019355;
}
.title-box-02 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 30px;
}
.title-box-02-txt {
  width: 45.94594594594595%;
}
.title-box-02-txt p + p {
  margin-top: 24px;
}
.title-box-02-img {
  width: 48.78378378378378%;
}
.sec-title-01 {
  padding-bottom: 15px;
  margin-bottom: 30px;
  font-size: 20px;
  font-weight: bold;
  border-bottom: 3px solid #019355;
}
.sec-title-02 {
  font-size: 22px;
  color: #fff;
  background: #019355;
  font-weight: bold;
  padding: 15px;
  margin-bottom: 30px;
}
.sec-title-01 span {
  font-size: 16px;
  font-weight: normal;
}
.sec-title-03 {
  margin-top: 50px;
  color: #019355;
  font-size: 24px;
  font-weight: bold;
}
/* btn ----------------------------------------*/
.btn-01 {
  display: inline-block;
  line-height: 40px;
  padding: 10px 4em 10px 2em;
  text-align: center;
  vertical-align: top;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  border-radius: 7px;
  background: #019355;
  position: relative;
}
.btn-01:after {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  right: 2em;
  background: url(../images/common/arrow04.png) no-repeat 0 center;
}
.btn-02 {
  display: inline-block;
  line-height: 40px;
  padding: 10px 4em 10px 2em;
  text-align: center;
  vertical-align: top;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  border-radius: 7px;
  background: #fba22e;
  position: relative;
}
.btn-02.no-link {
  background: #BFBFBF;
}
.btn-02:after {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  right: 2em;
  background: url(/images/common/arrow06.png) no-repeat 0 center;
}
.btn-03 {
  display: inline-block;
  padding: 20px 30px;
  color: #fff;
  background: #019355;
  border-radius: 5px;
  font-size: 16px;
  font-weight: bold;
}
.btn-03:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 15px;
  margin-left: 0.5em;
  background: url(../images/common/arrow04.png) no-repeat 0 0;
}
.btn-04 {
  display: inline-block;
  line-height: 40px;
  padding: 0px 4em 0px 2em;
  text-align: center;
  vertical-align: top;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  border-radius: 7px;
  background: #e21754;
  position: relative;
}
.btn-04:after {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  right: 2em;
  background: url(../images/common/arrow04.png) no-repeat 0 center;
}
.btn-05 {
  display: inline-block;
  line-height: 40px;
  padding: 0px 4em 0px 2em;
  text-align: center;
  vertical-align: top;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  border-radius: 7px;
  background: #e6185f;
  position: relative;
}
.btn-05:after {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  right: 2em;
  background: url(../images/common/arrow04.png) no-repeat 0 center;
}
.btn-05.after-none {
  padding: 10px 2em 10px 2em;
}
.btn-05.after-none:after {
  display: none;
}
.btn-06 {
  display: inline-block;
  line-height: 40px;
  padding: 10px 4em 10px 2em;
  text-align: center;
  vertical-align: top;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  border-radius: 7px;
  background: #fba22e;
  position: relative;
}
.btn-06:after {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  right: 2em;
  background: url(../images/common/arrow06.png) no-repeat 0 center;
}
.btn-07 {
  display: inline-block;
  padding: 20px 30px;
  background: #e6195f;
  color: #fff;
  border-radius: 5px;
  font-size: inherit;
  text-align: center;
  min-width: 280px;
  font-weight: bold;
  font-size: 18px;
}
.btn-07:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 15px;
  margin-left: 0.5em;
  background: url(../images/common/arrow08.png) no-repeat 0 0;
}
.btn-pdf {
  display: inline-block;
  line-height: 40px;
  padding: 5px 4em 5px 2em;
  text-align: center;
  vertical-align: top;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  border-radius: 7px;
  background: #019355;
  position: relative;
}
.btn-pdf:after {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  right: 2em;
  background: url(/images/common/icon_pdf.png) no-repeat 0 center;
}
.btn-back {
  display: inline-block;
  line-height: 40px;
  padding: 10px 2em 10px 4em;
  text-align: center;
  vertical-align: top;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  border-radius: 7px;
  background: #bdb4ad;
  position: relative;
}
.btn-back:after {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  left: 2em;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  background: url(/images/common/arrow06.png) no-repeat 0 center;
}
.btn-print {
  display: inline-block;
  padding: 10px 30px;
  color: #fff;
  background: #019355;
  border-radius: 5px;
  font-size: 16px;
  font-weight: bold;
  line-height: 40px;
}
.btn-print:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 30px;
  height: 24px;
  margin-right: 0.5em;
  background: url(../images/common/icon_print.png) no-repeat 0 0;
}
/* contact-dial ----------------------------------------*/
.contact-dial dl {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.contact-dial dl > * {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
.contact-dial dt {
  width: 12em;
  font-size: 22px;
  font-weight: bold;
}
.contact-dial dt + dd {
  padding-left: 1.5em;
  font-size: 38px;
  font-weight: bold;
  color: #019355;
  background: url(../images/common/icon_freedial.png) no-repeat left center;
}
/* .info-reader ----------------------------------------*/
.info-reader dl {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.info-reader dl > * {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
.info-reader dt {
  width: 130px;
}
/* .info-ssl ----------------------------------------*/
.info-ssl dl {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.info-ssl dl > * {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
.info-ssl dt {
  width: 130px;
}
.thanks-wrap {
  max-width: 520px;
  margin: 0 auto;
}
.thanks-wrap p {
  margin-bottom: 16px;
}
.thanks-wrap p strong {
  font-size: 22px;
  font-weight: bold;
}
.thanks-wrap .info span {
  display: inline-block;
  text-align: left;
}
/* indent ----------------------------------------*/
.indent25 {
  display: inline-block;
  vertical-align: top;
  text-indent: -2.5em;
  margin-left: 2.5em;
}
/* .toggle-prev ----------------------------------------*/
.toggle-prev {
  padding: 10px 30px;
  text-align: center;
  color: #5a463d;
  cursor: pointer;
}
.toggle-prev span {
  display: inline-block;
  font-size: 12px;
  border: 2px solid;
  padding: 5px 25px 5px 15px;
  border-radius: 5px;
  font-weight: bold;
  position: relative;
}
.toggle-prev span:before {
  content: "";
  position: absolute;
  right: 15px;
  width: 4px;
  height: 4px;
  top: 10px;
  border-bottom: 2px solid;
  border-right: 2px solid;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.toggle-prev span:last-child {
  display: none;
}
.toggle-prev span:last-child:before {
  border: none;
  border-top: 2px solid;
  border-left: 2px solid;
  top: 12px;
}
.toggle-prev.close span:first-child {
  display: none;
}
.toggle-prev.close span:last-child {
  display: inline-block;
}
#video01, #video02, #video03, #video04, #video05, #video06, #video07, #video08, #video09, #video10 {
  display: none;
}
/* top ----------------------------------------*/
.container-wrap {

  background-size: 100% auto;
	overflow-x: hidden;
}
.kv {
  display: flex;
  justify-content: space-between;
  margin-top: 80px;
  margin-bottom: 56px;
}
.kv-img-txt {
  width: 54%;
}
.kv-img-illust {
  width: 44%;
}
.kyosai {
  border-radius: 8px;
  background: #FDEDF0;
  padding: 0 40px 40px;
  margin-bottom: 120px;
}
.kyousai-wrap {
  max-width: 720px;
  margin: 0 auto;
}
.kyosai-img-pc {
  max-width: 760px;
  margin: 0 auto;
  padding: 40px 0 20px;
}
.kyosai-img-sp {
  display: none;
}
.kyosai-text {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin: 12px 0 32px;
}
.kyosai-text span {
  position: relative;
  display: inline-block;
  padding: 0 16px;
}
.kyosai-text span:before {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 0;
  top: 4px;
  width: 1px;
  background: #111;
  transform: rotate(-15deg);
}
.kyosai-text span:after {
  content: "";
  position: absolute;
  bottom: 4px;
  right: 0;
  top: 4px;
  width: 1px;
  background: #111;
  transform: rotate(15deg);
}
.seminar {
  border-radius: 8px;
  background: #ECF7FD;
  padding: 0 40px 40px;
  margin-bottom: 60px;
}
.seminar-wrap {
  max-width: 720px;
  margin: 0 auto;
}
.seminar-img-pc {
  transform: translateY(-20px);
  max-width: 550px;
  margin: 0 auto;
}
.seminar-img-sp {
  display: none;
}
.top-section-btn {
  display: flex;
  justify-content: space-between;
}
.top-section-btn a {
  width: 44.44%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: 20px 16px;
  vertical-align: top;
  color: #ffffff !important;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none !important;
  border-radius: 7px;
  position: relative;
  transition: 0.3s;
}
.top-section-btn a:hover {
  opacity: 0.8;
}
.top-section2-btn {
  display: flex;
  justify-content: space-between;
}
.top-section2-btn a {
  width: 48%;
  transition: 0.3s;
}
.top-section2-btn a:hover {
  opacity: 0.8;
}
.top-section-btn-seminar {
  background: #217bc4;
}
.top-section-btn-online {
  background: #fba22e;
}
.top-section-btn-quote {
  background: #eb7c7a;
}
.top-section-btn-life {
  background: #04a671;
}
.top-section-btn-txt {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
}
.top-section-btn-txt-S {
  font-size: 14px;
}
.top-section-btn a i {
  content: "";
  position: absolute;
  display: block;
  width: 15px;
  height: 100%;
  top: 0;
  right: 2em;
  background: url(/images/common/arrow06.png) no-repeat 0 center;
  margin-right: -10px;
}
/* 20240718branch ----------------------------------------*/
.fram {
  max-width: 1000px;
  margin: 40px auto 40px auto;
  width: 100%;
}
.branch {
  display: flex;
  flex-wrap: wrap;
  gap: 56px 0;
  justify-content: space-between;
}

.branch_border {
  /*border: 4px solid #90c31f;
  border-radius: 8px;*/
  position: relative;
  /*margin-top: 22em;*/
 background: #fdf2d0;
}
.item {
  width: calc(50% - 20px);
  box-sizing: border-box;
}
.item-pro{
background: url(/pcampaign/assets/img/branch/branch01_item01.png);
  background-size: cover;
  display: flex;
  width: calc(50% - 20px);
  box-sizing: border-box;
  align-items: flex-end;
  padding: 0 1%;
}
.container-all {
  margin: 0 auto;
  width: 100%;
}
.container-all-mutual {
  margin: 0 auto 60px auto;
  width: 100%;
	/*height: 640px;*/
	padding: 30px 0 10px 0;
}
.branch-center {
  max-width: 963px;
  margin: 0 auto 0px;
	text-align: center;
    position: relative;
    right: 0;
    left: 0;
    /*top: -19.8em;*/
}
.branch-center2 {
  max-width: 923px;
  margin: 0 auto 0px;
	text-align: center;
    position: relative;
    right: 0;
    left: 0;
    /*top: -19.8em;*/
}
.branch-security{
	text-align: center;
    font-size: 18px;
    margin: 20px auto 0 auto;
    background: #f5f682;
    width: 90%;
    padding: 10px 0;
}
.branch-security2{
text-align: right;
    font-size: 13px;
    /* margin: 20px auto; */
    width: 30%;
    padding: 0;
    position: absolute;
    right: 50px;
	margin: -12px 0;
}
.branch-outside{  max-width: 90%;
  margin: 30px auto;
	text-align: center;}
.branch-center-ttl{
/*border-bottom: #E95980 solid 2px; */
    text-align: center;
    width: 60%;
    margin: 3.1% auto 3% auto;
    background: #E95980;
    border-radius: 15px;
    color: #fff;
    padding: 1.5% 0;
	font-size: 27px;
    font-weight: bold;
}
.branch-center-ttl-blue{
/*border-bottom: #E95980 solid 2px; */
    text-align: center;
    width: 60%;
    margin: 2% auto 6% auto;
    background: #58b4ba;
    border-radius: 15px;
    color: #fff;
    padding: 2% 0;
	font-size: 27px;
    font-weight: bold;
}
.branch-center-ttl-orange{
/*border-bottom: #E95980 solid 2px; */
    text-align: center;
    width: 60%;
    margin: 2% auto 6% auto;
    background: #ed6d47;
    border-radius: 15px;
    color: #fff;
    padding: 2% 0;
	font-size: 27px;
    font-weight: bold;
}
.branch-center-ttl-purple{
    font-size: 28px;
    text-align: center;
    width: 60%;
    margin: 3% auto 7% auto;
    background: #a660a3;
    border-radius: 15px;
    color: #fff;
    padding: 2% 0;
	font-size: 27px;
    font-weight: bold;
}
.branch-center-ttl-navy{
/*border-bottom: #E95980 solid 2px; */
    font-size: 28px;
    text-align: center;
    width: 60%;
    margin: 3% auto 7% auto;
    background: #16335b;
    border-radius: 15px;
    color: #fff;
    padding: 2% 0;
	font-size: 27px;
    font-weight: bold;
}
.blue-line {
  display: flex;
  align-items: center;
  font-weight: bold;
  letter-spacing: 0.05em;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-bottom: 35px;
}
.blue-line::before, .blue-line::after {
  content: "";
  height: 10px;
  flex-grow: 1;
  background-color: #90c31f;
  margin-top: 100px;
}
.blue-line:before {
  margin-right: 10px;
}
.blue-line:after {
  margin-left: 10px;
}
.branch-bg-blue {

  width: 98vw;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  margin-bottom: 35px;
	position: relative;
  top: 1.5em;
}
.branch-bg-pink {
  background-color: #fbe1d6;
  margin-bottom: 133px;
  position: relative;
  top: 90px;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
}
.branch-bg-green {
  background-color: #e0f0e3;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 80px 0 40px 0;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  margin-bottom: 66px;
}
.branch03-bg-green {
  background-color: #e0f0e3;
  margin-bottom: 133px;
  position: relative;
  top: 90px;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  padding-bottom: 66px;
}
.branch-bg-lpink {
  /*background-color: #fcf1f5;*/
  position: relative;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
	padding: 4% 0;
}
.branch-bg-purple {
  /*background-color: #faf3fa;*/
margin-bottom: 4%;
  position: relative;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
	padding: 0;
}
.branch-bg-lblue {
  /*background-color: #eefdfe;*/
  position: relative;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
	padding: 4% 0;
}
.branch-bg-lyellow {
  /*background-color: #fbecd0;*/
  position: relative;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
	padding: 4% 0;
}
.bg_white{
	  background-color: #fff;
}
.s-wi {
  width: 810px;
}
.colum_white01 {
  display: flex;
  padding: 50px 21px 30px 18px;
}
.colum_white02 {
  background: #fff;
  display: flex;
  justify-content: center;
  margin-top: 49px;
}
.colum_white_item01 {
  display: flex;
  background: #ebf5ec;
  padding: 32px 22px 30px 22px;
}
.colum_white_item02 {
  background: #ebf5ec;
  display: flex;
  padding: 81px 22px 30px 22px;
  justify-content: flex-start;
  flex-direction: column;
}
.colum_hosyou_item01 {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
}
.colum_hosyou_item02 {
  display: block;
  width: 95%;
  margin: 0 auto;
}
.fram-bnt {
  max-width: 1000px;
  margin: 0 auto 80px;
  width: 100%;
	display: flex;
    flex-wrap: wrap;
	gap: 40px 0;
    justify-content: space-between;
}
.branch01_ttl {
  padding-bottom: 35px;
}
.branch01_group {
      width: 31%;
    margin: 17px auto 0 auto;
}
.branch02_group {
      width: 69%;
    margin: 17px auto 0 auto;
}
.branch02_ttl {
  padding-bottom: 35px;
  width: 79%;
  text-align: center;
  margin: 0 auto;
}
.branch-width-item {
  display: flex;
  max-width: 1000px;
  margin: 0 auto;
  flex-wrap: nowrap;
  width: 100%;
}
.item_wi00 {
  width: 17%;
  margin: 0 1%;
}
.colum_blue_item {
  align-items: center;
  display: flex;
  margin: 0;
  padding: 188px 22px 0px 0px;
  width: 11%;
}
.women_medical {
  width: 57%;
  margin: 0 auto;
}
.misalig {
  position: relative;
  top: -66px;
  margin-bottom: 0;
  text-align: center;
}
.demo_movie {
  width: 90%;
  margin: 0 auto 40px auto;
}
.seminar-table {
  border-collapse: collapse;
  max-width: 900px;
  margin: 0 auto 70px auto;
}
.seminar-table td {
  padding: 53px;
  text-align: left;
  background: #fff;
}
.seminar-table th {
  padding: 1rem 2rem;
  text-align: left;
  font-weight: bold;
  font-size: 24px;
  color: #fff;
  background: #51ae56;
  top: 0;
  text-align: center;
}
.woman-theme {
  width: 76%;
  margin: 0 auto;
  font-size: 40px;
  font-weight: bold;
}
.yellow_c_text {
  color: #f5f682;
}
.green_c_text {
  color: #25a62d;
  font-weight: bold;
  font-size: 36px;
}
.green_s_text {
  color: #25a62d;
  font-weight: bold;
  font-size: 24px;
}
.line_explanation {
  display: flex;
  padding: 0px 40px 40px;
  justify-content: space-between;
}
.line_item01 {
  font-size: 36px;
  color: #fff;
  width: 115%;
}
.branch-in-center {
  max-width: 900px;
  margin: 0 auto 35px;
  width: 90%;
}
.worries_ttl {
  /*background: #f5f682;*/
  max-width: 900px;
  width: 100%;
  font-size: 28px;
  color: #ed6d47;
  padding: 22px 0;
  margin: 60px auto 0 auto;
  text-align: center;
  font-weight: bold;
}
.useful_block {
  max-width: 900px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
.seminar-table-border {
  border-collapse: collapse;
  margin: 0 auto 70px auto;
  border: #51ae56 4px solid;
}
.seminar-table-border th {
  font-weight: bold;
  font-size: 24px;
  color: #fff;
  background: #51ae56;
  top: 0;
  text-align: center;
  padding: 1rem 2rem;
}
.schedule-table {
  border: #3f87e0 4px solid;
  border-bottom: #3f87e0 4px solid;
  border-right: #3f87e0 4px solid;
}
.schedule-table th {
  padding: 1rem 2rem;
  font-weight: bold;
  font-size: 24px;
  color: #fff;
  background: #3f87e0;
  top: 0;
  text-align: center;
}
.seminar-theme {
    width: 95%;
    margin: 11% 0 11.2% 6%;
    font-size: 22px;
    font-weight: bold;
}
.seminar-theme-space {
	margin: 3% 0 0 0 ;
}
.schedule-theme {
  width: 100%;
  text-align: left;
  font-weight: bold;
  margin: 63.4% auto 64.5% 8%;
  font-size: 24px;
}
.schedule-date {
  font-size: 34px;
}
.regist-block {
  background: #f5f682;
  max-width: 900px;
  margin: 120px auto 35px auto;
  padding: 0 0 35px 0;
  display: block;
  position: relative;
  width: 100%;
}
.regist-ttl {
  max-width: 850px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  top: -109px;
}
.line_procedure {
  display: flex;
  flex-direction: column;
  margin: -90px auto 0;
  width: 80%;
}
.procedure_item01 {
  font-size: 24px;
}
.procedure_item02 {
  margin-top: 30px;
  font-size: 24px;
  margin-bottom: 35px;
}
.form-control {
  width: 100%;
  padding: 10px;
}
.my-5 {
  max-width: 300px;
  width: 100%;
  margin: 5% auto 0;
}
.item_wi01 {
  width: 98%;
  margin: 0 auto;
}
.mycar-movei li {
  width: 100% !important;
  margin: 0;
}
@media screen and (min-width: 768px) {
  /*  a[href*="tel:"] {
    cursor: default;
    pointer-events: none;
    color: inherit !important;
    text-decoration: none !important;
  }*/
}
@media screen and (max-width: 767px) {
  /* public ----------------------------------------*/
  body {
    min-width: 320px;
    font-size: 12px;
  }
  .container {
    width: auto;
    padding: 0 20px;
  }
  h1#top-heading, p#top {
    display: none;
  }
  i.arrow01 {
    display: inline-block;
    width: 14px;
    height: 14px;
    vertical-align: middle;
    margin-bottom: 2px;
    margin-right: 0.5em;
    background: url(/images/common/arrow01.png) no-repeat 0 0;
  }
  i.doc {
    display: inline-block;
    width: 14px;
    height: 12px;
    vertical-align: middle;
    margin-bottom: 2px;
    margin-left: 0.5em;
    background: url(/images/common/icon_doc.png) no-repeat 0 0;
  }
  i.doc2 {
    display: inline-block;
    width: 20px;
    height: 30px;
    vertical-align: middle;
    margin-bottom: 2px;
    background: url(/images/common/icon_doc02.png) no-repeat 0 0;
  }
  i.pdf {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin-bottom: 2px;
    margin-left: 0.5em;
    background: url(/images/common/icon_pdf.png) no-repeat 0 0;
  }
  .icon-pdf {
    vertical-align: top;
    margin-left: 5px;
  }
  /* pagetop ----------------------------------------*/
  #top-pagetop a {
    display: none;
  }
  /* header ----------------------------------------*/
  header#header {
    height: auto;
    padding: 0;
    border: none;
  }
  header#header .logo {
    margin-top: 0;
    float: none;
    text-align: center;
    padding: 15px 0;
  }
  header#header .logo img {
    width: 200px;
  }
  header#header .info, header#header .hnav {
    display: none;
  }
  header#header .hnav-sp {
    display: table;
    width: 100%;
    border-bottom: 1px solid #dedad8;
  }
  header#header .hnav-sp > a {
    display: table-cell;
    height: 75px;
    text-indent: -99999px;
    background: #fff no-repeat center center;
    border-right: 1px solid #dedad8;
    width: 33.3333333333%;
    box-sizing: border-box;
  }
  /*  header#header .hnav-sp > a:nth-child(1){
    background-image: url(../images/common/gnav-sp01.png);
    background-size: contain;
  }
  header#header .hnav-sp > a:nth-child(2){
    background-image: url(../images/common/gnav-sp02.png);
    background-size: contain;
  }
  header#header .hnav-sp > a:nth-child(3){
    background-image: url(../images/common/gnav-sp03.png);
    background-size: contain;
  }
  header#header .hnav-sp > a:nth-child(4){
    background-color: #019355;
    background-image: url(../images/common/gnav-sp04.png);
    background-size: 30px auto;
    border: none;
  }*/
  header#header .hnav-sp > a:nth-child(1) {
    background-image: url(../images/common/gnav-sp05.png);
    background-size: contain;
  }
  header#header .hnav-sp > a:nth-child(2) {
    background-image: url(../images/common/gnav-sp03.png);
    background-size: contain;
  }
  header#header .hnav-sp > a:nth-child(3) {
    background-color: #019355;
    background-image: url(../images/common/gnav-sp04.png);
    background-size: 30px auto;
    border: none;
  }
  /* gnav ----------------------------------------*/
  #gnav ul {
    display: none;
  }
  #gnav-sp {
    position: absolute;
    left: 0;
    top: 76px;
    z-index: 99999;
    width: 100%;
    background: #fff;
    display: none;
    max-height: calc(100vh - 75px);
    overflow: auto;
  }
  #gnav-sp li a {
    font-size: 16px;
    display: block;
    padding: 10px 20px;
    border-bottom: 1px solid #dedad8;
  }
  #gnav-sp > ul > li > a {
    color: #019355;
  }
  #gnav-sp > ul > li > a.toggle {
    position: relative;
  }
  #gnav-sp > ul > li > a.toggle:before {
    content: "";
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #019355;
    right: 20px;
    top: 12px;
  }
  #gnav-sp > ul > li > a.toggle::after {
    content: "";
    display: block;
    position: absolute;
    width: 12px;
    width: 5px;
    height: 5px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    right: 25px;
    top: 15px;
  }
  #gnav-sp > ul > li > a.toggle.close:after {
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    top: 18px;
  }
  #gnav-sp > ul > li:last-child > a {
    color: #019355;
  }
  #gnav-sp > ul > li > a i.enter {
    background: url(../images/common/icon_enter.png) no-repeat 0 center;
    background-size: contain;
    display: inline-block;
    width: 2em;
    height: 1.5em;
    vertical-align: bottom;
  }
  #gnav-sp div li {
    width: 100%;
    background: #f6f2ec;
  }
  #gnav-sp div li:last-child:not(:nth-child(even)) {
    width: 100%;
  }
  #gnav-sp div li a {
    font-weight: normal;
    display: table;
    height: 40px;
    width: 100%;
    padding: 0;
    line-height: 1.2em;
  }
  #gnav-sp li a span {
    padding: 0 20px;
    font-size: 12px;
    display: table-cell;
    text-align: left;
    vertical-align: middle;
  }
  #gnav-sp li img {
    vertical-align: middle;
  }
  /* sns ----------------------------------------*/
  #sns {
    padding: 20px;
    position: relative;
    left: -20px;
    width: 100%;
    border-top: 1px solid #cdc7c4;
    box-sizing: content-box;
  }
  #sns ul {
    letter-spacing: -0.5em;
  }
  #sns li {
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
    margin-right: 10px;
  }
  /* banners ----------------------------------------*/
  .footer-content {
    padding: 15px 0;
    border-top: 1px solid #cdc7c4;
  }
  .footer-content #banners ul {
    text-align: center;
  }
  .footer-content #banners li {
    width: 48%;
    margin: 0 0 10px;
  }
  .footer-content #banners li:nth-child(2n) {
    float: right;
  }
  /* footer ----------------------------------------*/
  footer#footer {}
  footer#footer a:hover {
    text-decoration: underline;
  }
  footer#footer .fnav {
    padding: 55px 0 45px;
    letter-spacing: -0.5em;
    background: #f5f5f5;
  }
  footer#footer .fnav dl, footer#footer .fnav ul {
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
  }
  footer#footer .fnav dl {
    width: 250px;
    margin-right: 30px;
  }
  footer#footer .fnav dt {
    padding-bottom: 13px;
    border-bottom: 1px dashed #c4c4c4;
  }
  footer#footer .fnav dt:before {
    content: url(../images/common/arrow02.png);
    display: inline-block;
    padding-right: 1em;
  }
  footer#footer .fnav dd {
    margin-top: 10px;
    margin-left: 35px;
    text-indent: -1em;
    font-size: 13px;
  }
  footer#footer .fnav dt + dd {
    margin-top: 15px;
  }
  footer#footer .fnav dd:before {
    content: "・";
    display: inline-block;
    width: 1em;
    text-indent: 0;
  }
  footer#footer .fnav dl + ul {
    margin-right: 30px;
  }
  footer#footer .fnav li {
    margin-bottom: 20px;
  }
  footer#footer .fnav li a:before {
    content: url(../images/common/arrow02.png);
    display: inline-block;
    padding-right: 1em;
  }
  footer#footer img {
    vertical-align: middle;
  }
  footer#footer .copyright {
    padding: 35px 0 45px;
    color: #ffffff;
    text-align: center;
    background: #019355;
    font-size: 12px;
  }
  /* page-top ----------------------------------------*/
  .page-top {
    right: 20px;
  }
  /* rnav ----------------------------------------*/
  .rnav {
    display: none;
  }
  /* breadcrumb ----------------------------------------*/
  .breadcrumb {
    padding-top: 15px;
    font-size: 11px;
  }
  .breadcrumb ul {
    letter-spacing: -0.5em;
  }
  .breadcrumb li {
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
    margin-right: 0.75em;
  }
  .breadcrumb li:before {
    content: url(/images/common/arrow03.png);
    margin-right: 0.75em;
  }
  .breadcrumb li:first-child:before {
    content: none;
  }
  .breadcrumb li a {
    color: #019355;
  }
  .breadcrumb li a[href]:hover {
    text-decoration: underline;
  }
  /* .lnav  ----------------------------------------*/
  main > .container.clearfix {
    margin-top: 15px;
    padding: 0;
  }
  main > .container.clearfix > .left, main > .container.clearfix > .right {
    width: auto;
    float: none;
    padding: 0 20px;
  }
  main > .container.clearfix > .left {
    margin-bottom: 40px;
  }
  .lnav {
    margin-bottom: -1px;
  }
  .lnav h2 {
    font-size: 15px;
    padding: 1.4em 0.75em;
  }
  .lnav ul > li {
    border-bottom: 1px solid #d7d0ca;
  }
  .lnav ul > li > a {
    padding: 12px 1.4em;
    line-height: 1.4em;
  }
  .lnav ol > li > a {
    padding-top: 5px;
    padding-bottom: 5px;
    line-height: 1.4em;
    font-size: 12px;
  }
  /* tab-pager ----------------------------------------*/
  .tab-pager {
    margin-top: 20px;
  }
  .tab-pager li {
    width: 100%;
    padding: 0 20px;
    height: 55px;
    border: none;
    border-top: 1px solid #c6bfb9;
    border-radius: 0;
    position: relative;
    text-align: left;
  }
  .tab-pager li br {
    display: none;
  }
  .tab-pager li span {
    padding: 0;
  }
  .tab-pager li:before, .tab-pager li:after {
    content: "";
    display: block;
    width: 20px;
    height: 6px;
    position: absolute;
    right: 20px;
    background: #019355;
    top: 50%;
    margin-top: -3px;
  }
  .tab-pager li:after {
    width: 6px;
    height: 20px;
    right: 27px;
    margin-top: -10px;
  }
  .tab-pager li.current {
    border-bottom: 1px dotted #c6bfb9;
    height: 55px;
    margin-top: 0;
    background: #fff;
  }
  .tab-pager li.current:before, .tab-pager li.current:after {
    display: none;
  }
  /* tab-box ----------------------------------------*/
  header.tab-box {
    border: none;
  }
  header.tab-box > .container {
    padding: 0;
  }
  header.tab-box .title-box {
    padding: 25px 0;
    text-align: center;
    margin: 15px 20px;
  }
  header.tab-box .title-box .inner-box {
    display: block;
    width: auto !important;
  }
  header.tab-box .title-box .inner-box h1 {
    font-size: 20px;
  }
  header.tab-box .title-box .inner-box p {
    font-size: 16px;
  }
  header.tab-box .title-box .inner-box dl.coop {
    overflow: hidden;
    font-size: 16px;
  }
  header.tab-box .title-box .inner-box dl.coop dt {
    float: none;
    clear: none;
    width: auto;
    text-align: center;
  }
  header.tab-box .title-box .inner-box dl.coop dd {
    float: none;
    width: auto;
    text-align: center;
  }
  header.tab-box .title-box .desc {
    display: block;
    width: auto !important;
    text-align: left;
    margin-top: 20px;
  }
  header.tab-box .tab-pager li {
    display: none;
  }
  header.tab-box .tab-pager li.current {
    display: block;
  }
  footer.tab-box {
    display: block;
  }
  footer.tab-box > .container {
    padding: 0;
  }
  footer.tab-box .tab-pager li.current {
    display: none;
  }
  /* table-box ----------------------------------------*/
  .table-box.scroll {
    padding-bottom: 10px;
  }
  .table-box.scroll::-webkit-scrollbar {
    height: 5px;
  }
  .table-box.scroll::-webkit-scrollbar-track {
    border-radius: 5px;
    background: #eee;
  }
  .table-box.scroll::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #666;
  }
  .table-box.scroll table {
    table-layout: auto;
  }
  .table-box.scroll th, .table-box.scroll td {
    white-space: nowrap;
  }
  /* flow-box ----------------------------------------*/
  .flow-box {
    margin-bottom: 30px;
  }
  .flow-box li {
    font-size: 12px;
    line-height: 20px;
  }
  .flow-box li:not(:first-child):before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -3px;
    width: 5px;
    height: 100%;
    background-size: contain;
  }
  .flow-box li.current span:after {
    bottom: -3px;
    border-bottom: 6px solid;
  }
	
  /* form-box ----------------------------------------*/
  .form-box {
    font-size: 14px;
  }
  .form-box dl {
    display: block;
  }
  .form-box dl > * {
    display: block;
  }
  .form-box dt {
    border-right: none;
  }
  .form-box .input-md {
    width: 100%;
  }
  .form-box .input-sm {
    width: 100%;
    max-width: 20em;
  }
  .form-box dd {
    border-top: 2px solid #fcf8f5;
  }
  .form-box input[type="text"], .form-box textarea, .form-box select {
    font-size: 16px;
  }
	.seminar-item{
	width: 100%;
	}
	.schedule_item{
	width: 100%;
	}
  .seminar-theme {
    width: 95%;
    margin: 18px auto;
    font-size: 22px;
  }
  .seminar-theme dt {
    font-size: 14px;
  }
  .seminar-theme dd {
    margin: 0 0 20px;
  }
  .schedule-table {
    border: #3f87e0 4px solid;
  }
  .schedule-theme {
    width: 98%;
    text-align: left;
    font-weight: bold;
    margin: 0px auto;
    font-size: 24px;
  }
  .branch-width-item {
    display: flex;
    max-width: 1000px;
    margin: 0 auto;
    flex-wrap: nowrap;
    width: 100%;
    flex-direction: column;
    align-items: center;
  }
  .colum_blue_item {
    align-items: center;
    display: flex;
    margin: 0;
    padding: 0;
    width: 5%;
  }
  .colum_white02 {
    background: #fff;
    display: flex;
    justify-content: center;
    margin-top: 50px;
    width: 50%;
    margin-bottom: 10%;
  }
  .blue-line {
    display: flex;
    align-items: center;
    font-weight: bold;
    letter-spacing: 0.05em;
    width: 91vw;
    margin-left: calc(-50vw + 50%);
    margin: 0 auto 5px auto;
  }
  /* title ----------------------------------------*/
  .title-box-01 {
    padding: 25px 0;
    text-align: center;
  }
  .title-box-01 h1 {
    font-size: 20px;
  }
  .title-box-02 {
    display: block;
    margin-bottom: 20px;
  }
  .title-box-02-txt {
    width: auto;
    margin-bottom: 20px;
  }
  .title-box-02-img {
    width: auto;
  }
  .sec-title-01 {
    padding-bottom: 7px;
    margin-bottom: 20px;
    font-size: 14px;
  }
  .sec-title-02 {
    font-size: 14px;
    padding: 12px 20px;
    margin-bottom: 20px;
    width: 100%;
    position: relative;
    left: -20px;
    box-sizing: content-box;
  }
  .sec-title-03 {
    margin-top: 30px;
    font-size: 16px;
  }
  .thanks-wrap p strong {
    font-size: 18px;
  }
  /* .info-reader ----------------------------------------*/
  .info-reader dl {
    display: block;
  }
  .info-reader dl > * {
    display: block;
  }
  .info-reader dt {
    margin-bottom: 0.5em;
  }
  /* contact-dial ----------------------------------------*/
  .contact-dial dl {
    display: block;
  }
  .contact-dial dl > * {
    display: block;
    text-align: left;
  }
  .contact-dial dt {
    width: auto;
    font-size: 18px;
  }
  .contact-dial dt + dd {
    width: auto;
    padding-left: 1.5em;
    font-size: 30px;
    background-size: 1.2em auto;
  }
  /* toggle-prev ----------------------------------------*/
  .toggle-prev {
    padding: 5px 20px;
  }
  .sec-title-01 span {
    font-size: 12px;
  }
  /* top ----------------------------------------*/
  .container-wrap {
    border-bottom: none;
    background-size: 767px auto;
  }
  .kv {
    flex-direction: column;
    align-items: center;
    margin-top: 40px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 23px;
  }
  .kv-img-txt {
    width: auto;
  }
  .kv-img-illust {
    width: auto;
  }
  .kv-img + .kv-img {
    margin-top: 24px;
  }
  .kyosai {
    padding: 0 20px 40px;
    margin-bottom: 60px;
  }
  .kyosai-img-pc {
    display: none;
  }
  .kyosai-img-sp {
    display: block;
    max-width: 320px;
    margin: 0 auto;
    padding: 20px 0;
  }
  .kyosai-text {
    font-size: 18px;
    margin-bottom: 20px;
  }
  .seminar {
    padding: 0 20px 40px;
    margin-bottom: 60px;
  }
  .seminar-img-pc {
    display: none;
  }
  .seminar-img-sp {
    display: block;
    max-width: 380px;
    margin: 0 auto 10px;
    transform: translateY(-20px);
  }
  .top-section-btn {
    flex-direction: column;
    align-items: center;
  }
  .top-section-btn a {
    width: 100%;
    max-width: 300px;
  }
  .top-section-btn a + a {
    margin-top: 16px;
  }
  .top-section2-btn {
    flex-direction: column;
    align-items: center;
  }
  .top-section2-btn a {
    width: 100%;
    max-width: 300px;
  }
  .top-section2-btn a + a {
    margin-top: 16px;
  }
  .line_procedure {
    width: 87%;
  }
  .procedure_item01 {
    font-size: 21px;
  }
  .green_c_text {
    font-size: 29px;
  }
  .green-line {
    width: 98%;
    margin: 0 auto 107px auto;
    padding-bottom: 44px;
  }
  .line_explanation {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: -9% auto 0 auto;
    text-align: center;
    padding: 4%;
  }
  .line_item01 {
    font-size: 29px;
    width: 100%;
    padding-bottom: 6%;
  }
  .line_item02 {
    width: 79%;
    margin: 0 auto 6% auto;
  }
  .seminar-table td {
    padding: 21px;
  }
  .woman-theme {
    width: 100%;
    margin: 0 auto;
    font-size: 28px;
    font-weight: bold;
  }
  .seminar-table {
    margin: 0 auto 58px auto;
  }
  .branch03-bg-green {
    margin-bottom: 122px;
    padding-bottom: 19px;
  }
  .worries_ttl {
    margin: 0 auto 0px auto;
  }
  .useful_block {
    display: flex;
    flex-direction: column;
  }
  .seminar-table-border {
    margin: 0 auto 0px auto;
  }
  .branch {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
  }
  .branch-outside {
    margin: 0 auto 30px auto;
}
  .item {
    width: calc(100% - 20px);
    box-sizing: border-box;
  }
  .branch02_ttl {
    padding-bottom: 20px;
    width: 79%;
    text-align: center;
    margin: 0 auto;
  }
  .colum_white01 {
    padding: 10px;
  }
  .colum_white02 {
    margin-top: 10px;
  }
  .colum_white_item01 {
    padding: 20px 22px 20px 22px;
  }
  .colum_white_item02 {
    padding: 20px 19px 20px 20px;
  }
  .branch01_ttl {
    padding-bottom: 20px;
  }

  .branch-bg-blue {
    padding-top: 0;
   margin-bottom: 0;
  }
  .branch-center {
    margin: 0 auto 34px;
  }
  .blue-line:before {
    margin-right: 0;
  }
}
@media print {
  .sp-only {
    display: none !important;
  }
  body {
    -webkit-transform-origin: 0 0;
    -webkit-transform: scale(0.75);
    transform-origin: 0 0;
    transform: scale(0.75);
  }
  .rnav {
    display: none;
  }
  .sec-title-02 {
    color: inherit;
    border: 1px solid;
  }
  .btn-01, .btn-02, .btn-03, .btn-04, .btn-06, .btn-07, .btn-pdf, .btn-back {
    color: inherit;
    border: 1px solid !important;
  }
  .page-top {
    display: none !important;
  }
  .btn-print {
    display: none;
  }
}
.small-text_kome {
  font-size: 12px;
}
.cm {
  border-radius: 8px;
  background: #E8F4ED;
  padding: 0 40px 40px;
  margin-bottom: 60px;
}
.cm-wrap {
  max-width: 720px;
  margin: 0 auto;
}
.cm-img-pc {
  max-width: 830px;
  margin: 0 auto;
  position: relative;
  top: -40px;
  left: -40px;
}
.cm-img-sp {
  display: none;
}
.video-wrap {
  max-width: 900px !important;
  margin: 0 auto;
}
.green-line {
  border-bottom: 1px solid #51ae56;
  width: 90%;
  margin: 0 auto 140px auto;
  padding-bottom: 70px;
}
.line_intro {
  background: #25a62d;
  max-width: 900px;
  margin: 0 auto 35px auto;
  padding: 0 0 35px 0;
  display: block;
  position: relative;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .cm-img-pc {
    display: none;
  }
  .cm-img-sp {
    display: block;
    position: relative;
    top: -40px;
  }
  .women_medical {
    width: 83%;
    margin: 0 auto;
  }
  .green-line {
    margin-bottom: 6vh;
    padding-bottom: 6vh;
  }
	.biz-hour{
		width: 600px;
	}
}

.disabled-date {
  background-color: #eee !important;
  color: #999 !important;
  pointer-events: none;
  cursor: not-allowed;
}

/* 20250605branch ----------------------------------------*/
.fram_review {
max-width: 900px;
    margin: 0 auto;
    width: 100%;
    background: #fff;
    padding: 3% ;
}
.review_text{
	font-size: 30px;
    line-height: 2.5rem;
    position: relative;
    top: -6.2rem;
    left: 3rem;
}
.review_text_disaster{
	font-size: 30px;
    line-height: 2.5rem;
    position: relative;
    top: -4.2rem;
    left: 1rem;
}

.review_text_car{
	font-size: 30px;
    line-height: 2.5rem;
    position: relative;
    top: -12.2rem;
    left: 3rem;
}
.review_text_hec{
	font-size: 30px;
    line-height: 2.5rem;
    position: relative;
    display: block;
    margin: 5% 0 6% 0;
}
.review_member-text{
	    font-size: 17px;
    text-align: right;
    position: relative;
    top: -4rem;
}
.review_member-text2{
	    font-size: 17px;
    text-align: right;
    position: relative;
    top: -4rem;
	left: -20px;
}
.review_member-text3{
	    font-size: 17px;
    text-align: right;
    position: relative;
    top: -9rem;
    left: -4px;
}
.review_member-text4 {
    font-size: 17px;
    text-align: right;
    position: relative;
    top: -8em;
    left: -24px;
}
.review_member-text5 {
    font-size: 17px;
    text-align: right;
    position: relative;
    top: -5em;
    left: -1.2em;
}
.review_member-text6 {
    font-size: 17px;
    text-align: right;
    position: relative;
    top: -7.5rem;
    left: -1.2em;
}
.review_member-text7 {
    font-size: 15px;
    text-align: center;
    position: relative;
    top: -4rem;
    left: 17em;
}
.taidan dl{
	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;
	text-align: justify;
    font-size: 16px;
    margin: 0px 0 0 20px;
	gap: 20px;
}
.taidan dt {
    width: 86px;
	margin: 0;
}
.taidan dd {
    width: calc(100% - 86px - 3%);
	margin: 0;
}

.review_member-maintext{
	text-align: justify;
	font-size: 16px;
	margin: -20px 0 0 0;
}
.review_member-maintext_car{
	text-align: justify;
	font-size: 16px;
	margin: -92px 0 0 0;
	line-height: 2.0;
}
.review_image{
	max-width: 90%;
    margin: 3% auto;
	
}
.review_image02{
	max-width: 100%;
    margin: 3% auto;
	
}
.review_btn{
	max-width: 90%;
	    padding: 0 0 40px 0;
	margin: 0 auto;
}
.join-text{
	text-align: right;
    font-size: 13px;
    margin: -16px 5% 40px 0;
}
.join-text_center{
	text-align:center;
    font-size: 13px;
    margin: -16px 5% 40px 0;
}




@media screen and (max-width: 767px) {
	.branch-center-ttl {
    text-align: center;
    width: 90%;
    margin: 0 auto 20px auto;
    background: #E95980;
    border-radius: 15px;
    color: #fff;
    padding: 2% 0;
    font-size: 18px;
    font-weight: bold;
}
.branch-center-ttl-navy{
    text-align: center;
    width: 90%;
    margin: 0 auto 20px auto;
    border-radius: 15px;
    color: #fff;
    padding: 2% 0;
    font-size: 18px;
    font-weight: bold;		
	}
.review_text {
    font-size: 22px;
    line-height: 2.5rem;
	 top: -2.2rem;
    left: 0;
}
	.taidan dl{
	 text-align: left;
    gap: 10px;
	}
	.taidan dt {
    width: 100%;
    margin: 0;
}
	.taidan dd {
    width: calc(100% - 0px - 0%);
    margin: 0;
}
	.review_text_hec {
    font-size: 22px;
	}
	.review_text_car{
	 font-size: 22px;
    line-height: 2.5rem;
    top: -4.5rem;
    left: 0;	
	}
	.review_member-maintext_car {
    text-align: justify;
    font-size: 16px;
    margin: -36px 0 0 0;
}
	.review_member-text {
    font-size: 15px;
    text-align: center;
    position: relative;
    top: -2rem;
}
	.review_member-text2 {
    font-size: 15px;
    text-align: center;
    position: relative;
    top: -2rem;
    left: 0;
	}
	.review_member-text3 {
    font-size: 15px;
    text-align: center;
    position: relative;
    top: -4rem;
    left: 0;
}
	.review_member-text4 {
    font-size: 15px;
    text-align: center;
    position: relative;
    top: -2em;
    left: 0;
}
	.review_member-text5 {
    font-size: 15px;
    text-align: center;
    position: relative;
    top: -3em;
	left: 0;
	}
	.review_member-text6 {
    font-size: 15px;
    text-align: center;
    position: relative;
    top: -2rem;
    left: 0;
}
	.review_member-text7{
	left: 0;
    top: -1rem;
	}
	.review_btn {
    padding: 0 ;
}
	.branch-bg-lpink {
    padding: 4% 0 10% 0;
}
	.branch-bg-lyellow{
	    padding: 4% 0 10% 0;	
	}
	.branch-bg-purple{
		margin-bottom: 20px;
		  padding: 4% 0 0% 0;
	}
	.branch-bg-lblue{
				margin-bottom: 20px;
		  padding: 4% 0 10% 0;
	}
	.fram {
    margin: 0px auto 40px auto;
}
	.branch-security{
		font-size: 15px;
		margin: -10px auto 20px auto;
	}
	.branch-center2{
	 max-width: 89%;
	}
	.branch-security2 {
    text-align: center;
    font-size: 13px;
    margin: 20px auto 0 auto;
    background: #f5f682;
    width: 90%;
    padding: 10px 0;
	right: 0;
    position: relative;
	}
	.item-pro{
		width: calc(100% - 0px);
		aspect-ratio: 18 / 11;
	}
	.branch-center-ttl-orange{
	 font-size: 21px;
		width: 85%;
	 margin: 0 auto 20px auto;
	}
	.branch-center-ttl-purple{
	 font-size: 21px;
		width: 85%;
	 margin: 0 auto 20px auto;
	}
.join-text_center{
	margin: -6px 5% 40px 0;
	}
	.review_text_disaster{
	font-size: 22px;
    line-height: 2.5rem;
    top: -2.2rem;
    left: 0;
	}
.branch-center-ttl-blue{
	 font-size: 21px;
		width: 85%;
	 margin: 0 auto 20px auto;
	}
	.join-text{
	margin: -11px 5% 40px 0;	
	}
}