@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700|Noto+Serif+JP:100|Oswald:300,700");

.cmshtml {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

.cmsbody {
  margin: 0;
}

.cmshtml article,
.cmshtml aside,
.cmshtml footer,
.cmshtml header,
.cmshtml nav,
.cmshtml section {
  display: block;
}

.cmshtml h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

.cmshtml figcaption,
.cmshtml figure,
.cmshtml main {
  /* 1 */
  display: block;
}

.cmshtml figure {
  margin: 1em 40px;
}

.cmshtml hr {
  box-sizing: content-box;
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

.cmshtml pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

.cmshtml a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

.cmshtml abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

.cmshtml b,
.cmshtml strong {
  font-weight: inherit;
}

.cmshtml b,
.cmshtml strong {
  font-weight: bolder;
}

.cmshtml code,
.cmshtml kbd,
.cmshtml samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

.cmshtml dfn {
  font-style: italic;
}

.cmshtml mark {
  background-color: #ff0;
  color: #000;
}

.cmshtml small {
  font-size: 80%;
}

.cmshtml sub,
.cmshtml sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

.cmshtml sub {
  bottom: -0.25em;
}

.cmshtml sup {
  top: -0.5em;
}

.cmshtml audio,
.cmshtml video {
  display: inline-block;
}

.cmshtml audio:not([controls]) {
  display: none;
  height: 0;
}

.cmshtml img {
  border-style: none;
  max-width: 100%;
  height: auto;
}

.cmshtml svg:not(:root) {
  overflow: hidden;
}

.cmshtml button,
.cmshtml input,
.cmshtml optgroup,
.cmshtml select,
.cmshtml textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

.cmshtml button,
.cmshtml input {
  /* 1 */
  overflow: visible;
}

.cmshtml button,
.cmshtml select {
  /* 1 */
  text-transform: none;
}

.cmshtml button,
.cmshtml [type="button"],
.cmshtml [type="reset"],
.cmshtml [type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

.cmshtml button::-moz-focus-inner,
.cmshtml [type="button"]::-moz-focus-inner,
.cmshtml [type="reset"]::-moz-focus-inner,
.cmshtml [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

.cmshtml button:-moz-focusring,
.cmshtml [type="button"]:-moz-focusring,
.cmshtml [type="reset"]:-moz-focusring,
.cmshtml [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

.cmshtml fieldset {
  padding: 0.35em 0.75em 0.625em;
}

.cmshtml legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

.cmshtml progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

.cmshtml textarea {
  overflow: auto;
}

.cmshtml [type="checkbox"],
.cmshtml [type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

.cmshtml [type="number"]::-webkit-inner-spin-button,
.cmshtml [type="number"]::-webkit-outer-spin-button {
  height: auto;
}

.cmshtml [type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

.cmshtml [type="search"]::-webkit-search-cancel-button,
.cmshtml [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

.cmshtml ::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

.cmshtml details,
.cmshtml menu {
  display: block;
}

.cmshtml summary {
  display: list-item;
}

.cmshtml canvas {
  display: inline-block;
}

.cmshtml template {
  display: none;
}

.cmshtml [hidden] {
  display: none;
}

.cmshtml .just2,
.cmshtml .just3,
.cmshtml .just4,
.cmshtml .just5,
.cmshtml .just6 {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
  justify-content: space-between;
}

.cmshtml .j2-li {
  width: 50%;
  min-width: 33.4%;
}

.cmshtml .j2-li img {
  width: 100%;
  height: auto;
}

.cmshtml .j3-li {
  width: 33.33%;
  min-width: 25.1%;
}

.cmshtml .j3-li img {
  width: 100%;
  height: auto;
}

.cmshtml .j4-li {
  margin: 0;
  width: 25%;
  min-width: 20.1%;
}

.cmshtml .j4-li img {
  width: 100%;
  height: auto;
}

.cmshtml .j5-li {
  margin: 0;
  width: 20%;
  min-width: 16.7%;
}

.cmshtml .j5-li img {
  width: 100%;
  height: auto;
}

.cmshtml .flex-blnk {
  opacity: 0 !important;
  background-color: transparent !important;
}

.cmshtml .col01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.cmshtml .col01 > li {
  margin: 0;
}

.cmshtml .col01 > li > img {
  width: 100%;
}

.cmshtml .cf, .cmshtml .panlist ul, .cmshtml .container, .cmshtml .cap_s, .cmshtml .news_header, .cmshtml .boxwrap1, .cmshtml .boxwrap4, .cmshtml .to_buttonbox, .cmshtml .to_telinquiry, .cmshtml .imgfull, .cmshtml .link_btn, .cmshtml .to_bt, .cmshtml .faq, .cmshtml .top_news .flex_inner, .cmshtml .gaiyou, .cmshtml .dl_list_text_btn, .cmshtml .ol-list, .cmshtml .line_hr, .cmshtml .noline_hr, .cmshtml .text_area dl, .cmshtml .to_bt2 {
  zoom: 1;
}

.cmshtml .cf:before, .cmshtml .panlist ul:before, .cmshtml .rdBreadcrumbList:before, .cmshtml .container:before, .cmshtml .cap_s:before, .cmshtml .news_header:before, .cmshtml .boxwrap1:before, .cmshtml .boxwrap4:before, .cmshtml .to_buttonbox:before, .cmshtml .to_telinquiry:before, .cmshtml .imgfull:before, .cmshtml .link_btn:before, .cmshtml .to_bt:before, .cmshtml .faq:before, .cmshtml .top_news .flex_inner:before, .cmshtml .gaiyou:before, .cmshtml .dl_list_text_btn:before, .cmshtml .ol-list:before, .cmshtml .line_hr:before, .cmshtml .noline_hr:before, .cmshtml .text_area dl:before, .cmshtml .to_bt2:before, .cmshtml .cf:after, .cmshtml .panlist ul:after, .cmshtml .rdBreadcrumbList:after, .cmshtml .container:after, .cmshtml .cap_s:after, .cmshtml .news_header:after, .cmshtml .boxwrap1:after, .cmshtml .boxwrap4:after, .cmshtml .to_buttonbox:after, .cmshtml .to_telinquiry:after, .cmshtml .imgfull:after, .cmshtml .link_btn:after, .cmshtml .to_bt:after, .cmshtml .faq:after, .cmshtml .top_news .flex_inner:after, .cmshtml .gaiyou:after, .cmshtml .dl_list_text_btn:after, .cmshtml .ol-list:after, .cmshtml .line_hr:after, .cmshtml .noline_hr:after, .cmshtml .text_area dl:after, .cmshtml .to_bt2:after {
  content: "";
  display: table;
}

.cmshtml .cf:after, .cmshtml .panlist ul:after, .cmshtml .rdBreadcrumbList:after, .cmshtml .container:after, .cmshtml .cap_s:after, .cmshtml .news_header:after, .cmshtml .boxwrap1:after, .cmshtml .boxwrap4:after, .cmshtml .to_buttonbox:after, .cmshtml .to_telinquiry:after, .cmshtml .imgfull:after, .cmshtml .link_btn:after, .cmshtml .to_bt:after, .cmshtml .faq:after, .cmshtml .top_news .flex_inner:after, .cmshtml .gaiyou:after, .cmshtml .dl_list_text_btn:after, .cmshtml .ol-list:after, .cmshtml .line_hr:after, .cmshtml .noline_hr:after, .cmshtml .text_area dl:after, .cmshtml .to_bt2:after {
  clear: both;
}

.cmshtml .rdBreadcrumbList{
  position:relative;
  overflow:hidden;
}

.cmshtml *:link,
.cmshtml *:visited,
.cmshtml *:active {
  color: inherit;
}

.cmshtml a:hover {
  color: inherit;
}

.cmshtml .mb1 {
  margin-bottom: 6px;
}

.cmshtml .mb2 {
  margin-bottom: 12px;
}

.cmshtml .mb3 {
  margin-bottom: 18px;
}

.cmshtml .mb4 {
  margin-bottom: 24px;
}

.cmshtml .mb5 {
  margin-bottom: 30px;
}

.cmshtml .mb6 {
  margin-bottom: 36px;
}

.cmshtml .mb7 {
  margin-bottom: 42px;
}

.cmshtml .mb8 {
  margin-bottom: 48px;
}

.cmshtml .mb9 {
  margin-bottom: 54px;
}

.cmshtml .mb10 {
  margin-bottom: 60px;
}

.cmshtml .left, .cmshtml .il {
  float: left;
}

.cmshtml .right, .cmshtml .ir {
  float: right;
}

.cmshtml .tar {
  text-align: right;
}

.cmshtml .tal {
  text-align: left;
}

.cmshtml .tac {
  text-align: center;
}

.cmshtml img.left, .cmshtml img.il {
  margin-right: 32px;
}

@media screen and (max-width: 800px) {
  .cmshtml img.left, .cmshtml img.il {
    margin-right: 0;
  }
}

.cmshtml img.right, .cmshtml img.ir {
  margin-left: 32px;
}

@media screen and (max-width: 800px) {
  .cmshtml img.right, .cmshtml img.ir {
    margin-left: 0;
  }
}

.cmshtml .rad {
  border-radius: 6px;
}

.cmshtml .full {
  width: 100%;
  height: auto;
}

.cmshtml .red {
  color: #FF0000;
}

.cmshtml .small {
  font-size: 83%;
}

.cmshtml .big {
  font-size: 117%;
}

.cmshtml .bold {
  font-weight: bold;
}

.cmshtml .mt5 {
  margin-top: 5px;
}

.cmshtml .mt10 {
  margin-top: 10px;
}

.cmshtml .mt20 {
  margin-top: 20px;
}

.cmshtml .mt30 {
  margin-top: 30px;
}

.cmshtml .i-sh {
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);
}

.cmshtml {
  overflow-y: scroll;
  box-sizing: border-box;
}

.cmsbody,
.cmshtml dl,
.cmshtml dt,
.cmshtml dd,
.cmshtml ul,
.cmshtml ol,
.cmshtml li,
.cmshtml h1,
.cmshtml h2,
.cmshtml h3,
.cmshtml h4,
.cmshtml h5,
.cmshtml h6,
.cmshtml pre,
.cmshtml form,
.cmshtml input,
.cmshtml textarea,
.cmshtml small,
.cmshtml address,
.cmshtml aside,
.cmshtml blockquote,
.cmshtml th,
.cmshtml td {
  font-family: 'Roboto', Helvetica Neue, Helvetica, YuGothic, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo;
  color: #1F1813;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 1px;
  z-index: 0;
  margin: 0;
  max-height: 100%;
  box-sizing: border-box;
}

@media screen and (max-width: 800px) {
  .cmsbody,
.cmshtml dl,
.cmshtml dt,
.cmshtml dd,
.cmshtml ul,
.cmshtml ol,
.cmshtml li,
.cmshtml h1,
.cmshtml h2,
.cmshtml h3,
.cmshtml h4,
.cmshtml h5,
.cmshtml h6,
.cmshtml pre,
.cmshtml form,
.cmshtml input,
.cmshtml textarea,
.cmshtml small,
.cmshtml address,
.cmshtml aside,
.cmshtml blockquote,
.cmshtml th,
.cmshtml td {
    font-size: 15px;
    font-size: 0.9375rem;
    letter-spacing: 0;
  }
}

.cmshtml p, .cmshtml div {
  letter-spacing: inherit;
  margin: 0;
  box-sizing: border-box;
}

@media screen and (max-width: 800px) {
  .cmshtml p, .cmshtml div {
    letter-spacing: 0;
  }
}

.cmshtml p {
  font-family: inherit;
}

section {
  box-sizing: border-box; }

.cmsbody {
  line-height: 1.7;
  position: relative;
}

@media screen and (max-width: 800px) {
  .cmsbody {
    line-height: 1.5;
  }
}

.cmshtml ul {
  margin: 0;
  padding: 0;
}

.cmshtml li {
  list-style: none;
}

.cmshtml li img {
  vertical-align: bottom;
}

.cmshtml img {
  vertical-align: bottom;
}

.cmshtml a[href^="tel:"] {
  text-decoration: none;
}

@media screen and (min-width: 801px) {
  .cmshtml a[href^="tel:"] {
    pointer-events: none;
  }
}

.cmshtml ::selection {
  background-color: #0BA981;
  color: #fff;
  /* Safari */
}

.cmshtml ::-moz-selection {
  background-color: #0BA981;
  color: #fff;
  /* Firefox */
}

.cmsbody {
  background: #fff;
}

.cmshtml .panlist ul, .cmshtml .container, .cmshtml .cap_s, .cmshtml .news_header, .cmshtml .boxwrap1, .cmshtml .boxwrap4, .cmshtml .to_buttonbox, .cmshtml .to_telinquiry, .cmshtml .imgfull, .cmshtml .link_btn, .cmshtml .to_bt, .cmshtml .faq, .cmshtml .top_news .flex_inner, .cmshtml .gaiyou, .cmshtml .dl_list_text_btn, .cmshtml .ol-list {
  width: 1080px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-width: 100%;
}

@media screen and (max-width: 800px) {
  .cmshtml .panlist ul, .cmshtml .rdBreadcrumbList, .cmshtml .container, .cmshtml .cap_s, .cmshtml .news_header, .cmshtml .boxwrap1, .cmshtml .boxwrap4, .cmshtml .to_buttonbox, .cmshtml .to_telinquiry, .cmshtml .imgfull, .cmshtml .link_btn, .cmshtml .to_bt, .cmshtml .faq, .cmshtml .top_news .flex_inner, .cmshtml .gaiyou, .cmshtml .dl_list_text_btn, .cmshtml .ol-list {
    padding-left: 2%;
    padding-right: 2%;
  }
}

@media print {
  .cmshtml h1 a {
    text-indent: 0;
  }
  .cmshtml #navi_main li a {
    text-indent: 0;
  }
  .cmshtml #navi_sub li a {
    text-indent: 0;
  }
}

.cmshtml a:hover {
  text-decoration: none;
}

.cmshtml #h-logo {
  display: inline-block;
  position: absolute;
  left: 3%;
  margin: auto;
  width: 246px;
  height: 81px;
  z-index: 10;
}

@media screen and (min-width: 960px) and (max-width: 1300px) {
  .cmshtml #h-logo {
    left: 1.5%;
  }
}

.cmshtml #h-logo a {
  position: relative;
  left: 0;
  margin: 9px 0;
  display: inline-block;
  text-indent: -9999px;
  background: url(../img/logo.png) no-repeat top 0 left 0/100%;
  width: 246px;
  height: 81px;
  transition: margin 0.2s ease 0s,width 0.2s ease 0s,height 0.2s ease 0s;
  -webkit-transition: margin 0.2s ease 0s,width 0.2s ease 0s,height 0.2s ease 0s;
  -moz-transition: margin 0.2s ease 0s,width 0.2s ease 0s,height 0.2s ease 0s;
}

@media screen and (max-width: 959px) {
  .cmshtml #h-logo {
    display: block;
    position: relative;
    margin: 0;
  }
  .cmshtml #h-logo a {
    margin: 0;
  }
}

.cmshtml #l-header {
  position: relative;
  height: 100px;
  transition: height 0.5s ease 0s;
  -webkit-transition: height 0.5s ease;
  -moz-transition: height 0.5s ease;
}

@media screen and (max-width: 959px) {
  .cmshtml #l-header {
    padding: 0 0;
    height: auto;
  }
}

.cmshtml .h-nav {
  position: relative;
  right: 1.5%;
}

@media screen and (min-width: 960px) {
  .cmshtml .h-nav {
    right: auto;
    overflow: visible;
    width: auto;
    height: auto;
    background: transparent;
    z-index: 1;
  }
}

.cmshtml .h-nav__list {
  z-index: 1;
  padding-top: 0px;
  padding-left: 264px;
  margin: 0 auto 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-direction: normal;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  justify-content: flex-end;
}

@media screen and (max-width: 959px) {
  .cmshtml .h-nav__list {
    display: block;
    max-height: none;
    padding: 10px 0;
  }
}

.cmshtml .h-nav__item {
  transition: all 0.3s linear;
  color: #1F1813;
  margin-right: 1.1%;
  text-align: center;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 0;
  margin-top: 26px;
}

.cmshtml .h-nav__item div {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  text-decoration: inherit;
}

@media screen and (min-width: 960px) and (max-width: 1300px) {
  .cmshtml .h-nav__item {
    font-size: 1.32vw;
  }
}

@media screen and (max-width: 959px) {
  .cmshtml .h-nav__item {
    position: relative;
    margin: 8px;
  }
}

.cmshtml .h-nav__item a {
  display: block;
  text-decoration: none;
  letter-spacing: 0;
  position: relative;
  transition: all 0.3s;
  padding: 14px 0.5vw;
  line-height: 1.4;
  outline: none;
}

@media screen and (min-width: 960px) and (max-width: 1300px) {
  .cmshtml .h-nav__item a {
    padding: 14px 0;
  }
}

@media screen and (max-width: 959px) {
  .cmshtml .h-nav__item a {
    padding: 14px 0.2vw;
  }
}

.cmshtml .h-nav__item--9 a {
  background: #0BA981;
  border: 4px solid #D2EAE4;
  border-radius: 99px;
  padding: 10px 21px;
  box-sizing: border-box;
  color: #fff;
}

@media screen and (min-width: 960px) and (max-width: 1300px) {
  .cmshtml .h-nav__item--9 a {
    padding: 10px 10px;
  }
}

@media screen and (min-width: 960px) {
  .cmshtml .h-nav__item:hover, .cmshtml .h-nav__item div:hover {
    color: #0BA981;
  }
  .cmshtml .h-nav__item:hover a, .cmshtml .h-nav__item div:hover a {
    text-decoration: none;
  }
  .cmshtml .h-nav__item:hover a::after, .cmshtml .h-nav__item div:hover a::after {
    opacity: 1;
  }
}

@media screen and (max-width: 959px) {
  .cmshtml .h-nav {
    position: fixed;
  }
  .cmshtml .h-nav__link, .cmshtml .h-nav a {
    padding: 10px;
    text-align: center;
    width: auto;
  }
  .cmshtml .h-nav__link::after, .cmshtml .h-nav a::after {
    display: none;
  }
}

.cmshtml .drawer-dropdown-menu {
  display: none;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 100%;
  left: 0;
}

@media screen and (max-width: 1240px) {
  .cmshtml .drawer-dropdown-menu {
    position: relative;
  }
}

.cmshtml .drawer-dropdown-menu > li {
  width: 100%;
  list-style: none;
}

.cmshtml .h-nav__item > .drawer-dropdown-menu-item {
  padding-right: 0;
  padding-left: 0;
}
.cmshtml .drawer-dropdown-menu-item 

.cmshtml .drawer-dropdown-menu-item:hover {
  text-decoration: none;
  color: #555;
  background-color: transparent;
}

.cmshtml .drawer-dropdown.open > .drawer-dropdown-menu {
  display: block;
  animation: open 0.6s linear 0s !important;
}

.cmshtml .drawer-dropdown .drawer-caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 4px;
  -webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: transform .2s ease, opacity .2s ease;
  transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  vertical-align: middle;
  border-top: 4px solid;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}

.cmshtml .drawer-dropdown.open .drawer-caret {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.cmshtml #navigation .drawer-dropdown-menu {
  flex-flow: row wrap;
  justify-content: flex-start;
}

.cmshtml #navigation .drawer-dropdown.open .drawer-dropdown-menu {
  position: absolute;
  top: 120%;
  left: 0;
}

@media screen and (max-width: 959px) {
  .cmshtml #navigation .drawer-dropdown.open .drawer-dropdown-menu {
    position: relative;
  }
}

.cmshtml .drawer-dropdown-menu {
  display: none;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: rgba(255, 255, 255, 0.9);
  max-height: none;
}

.cmshtml .drawer-dropdown-menu h2 {
  text-align: left;
}

.cmshtml #navigation > li > a:before {
  content: "";
  width: 0;
  height: 2px;
  background: rgba(44, 24, 123, 0);
  position: absolute;
  bottom: -10px;
  left: 0;
  margin: auto;
  transition: all 0.3s;
  z-index: 3;
}

.cmshtml #navigation > li > a:hover:before {
  width: 100%;
  background: #2c187b;
}

/*
.cmshtml #navigation li.drawer-dropdown a:after {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0px;
  right: 0;
  margin: auto;
  bottom: 15px;
  height: 5px;
  width: 5px;
  border-right: 1px solid #2C187B;
  border-bottom: 1px solid #2C187B;
  transform: rotate(45deg);
  z-index: 2;
  transition: all 0.6s ease;
  opacity: 0;
}*/

@media screen and (max-width: 1240px) {
  .cmshtml #navigation li.drawer-dropdown a:after {
    top: 17px;
    opacity: 1;
    content: none;
  }
}
/*
.cmshtml #navigation li.drawer-dropdown.open a:after {
  transform: rotate(-135deg);
}*/

.cmshtml #navigation li a[aria-expanded="true"] {
  color: #222;
}

.cmshtml #navigation li a[aria-expanded="true"]:before {
  width: 100%;
  background: #2c187b;
}

.cmshtml #navigation .drawer-dropdown-menu .ol {
  width: 100%;
  padding: 20px 10% 1em;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}

.cmshtml #navigation .drawer-dropdown-menu .ol + ol {
  padding-top: 0;
}

@media screen and (max-width: 959px) {
  .cmshtml #navigation .drawer-dropdown-menu .ol {
    padding: 1em 0 1em 0;
  }
}

.cmshtml #navigation .drawer-dropdown-menu .li {
  text-align: left;
  position: relative;
  width: auto;
  margin-right: 1.25%;
  margin-bottom: 1em;
}

.cmshtml #navigation .drawer-dropdown-menu .li:nth-child(4n) {
  margin-right: 0;
}

.cmshtml #navigation .drawer-dropdown-menu .li a {
  padding: 0.6em 20px 0.6em 40px;
  display: block;
  background-color: #C8E2BB;
  text-decoration: none;
  font-weight: 700;
  border-radius: 9px;
}
.cmshtml #navigation .drawer-dropdown-menu .li a:hover {
  color: #1F1813;
}

.cmshtml #navigation .drawer-dropdown-menu .li {
  padding: 0.6em 0 0.2em 0;
  margin-bottom: 10px;
  display: block;
  color: #222;
  font-weight: 800;
}

.cmshtml #navigation .drawer-dropdown-menu .subtitle {
  width: 100%;
}

.cmshtml #navigation .drawer-dropdown-menu .subtitle:after {
  display: none;
}

.cmshtml #navigation .drawer-dropdown-menu li a:hover {
  background-color: #FBB731;
}

.cmshtml #navigation .drawer-dropdown-menu li:after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1px solid #222;
  border-bottom: 1px solid #222;
  transform: rotate(-45deg);
  position: absolute;
  left: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}

@media screen and (max-width: 959px) {
  .cmshtml #navigation .drawer-dropdown-menu li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 0.2em;
  }
  .cmshtml #navigation .drawer-dropdown-menu li a {
    padding: 1em 10px 1em 20px;
    font-size: 80%;
  }
  .cmshtml #navigation .drawer-dropdown-menu li:after {
    left: 5px;
  }
}

.cmshtml .drop2 {
  width: 80%;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}

.cmshtml .drop2 ol {
  width: 50% !important;
  padding: 20px 0 !important;
}

.cmshtml .drop2 ol + ol {
  width: 50% !important;
  padding: 20px 0 !important;
}

@media screen and (max-width: 800px) {
  .cmshtml .drop2 {
    width: 100%;
  }
  .cmshtml .drop2 ol {
    width: 100% !important;
    padding: 20px 0 !important;
  }
  .cmshtml .drop2 ol + ol {
    width: 100% !important;
    padding: 20px 0 !important;
  }
}

.cmshtml #l-footer {
  background: #C8E2BB;
  display: flex;
}
.cmshtml #l-footer * {
  color: #000;
}

.cmshtml #l-footer .l-container {
  width: 350px;
}

.cmshtml #l-footer .fnav {
  margin: 0 auto;
  padding: 40px 0 0;
  display: flex;
  flex-flow: row nowrap;
  width: 80%;
}

.cmshtml #l-footer .fnav #foot-navi {
  width: 844px;
  display: flex;
  flex-flow: row wrap;
}

@media screen and (max-width: 1240px) {
  .cmshtml #l-footer .fnav #foot-navi {
    display: none;
  }
}

.cmshtml #l-footer .fnav #foot-navi .li {
  width: auto;
  margin: 0 20px 20px 0;
  background: url(../img/ico02.png) no-repeat left top;
  /*&:last-child{
        	display: none;
        }*/
}
div.rdappended {
color:inherit;
font-size: inherit;
font-weight:inherit;
}

.cmshtml #l-footer .fnav #foot-navi .li a {
  text-decoration: none;
  font-weight: 700;
  font-size: 90%;
  padding-left: 40px;
}

.cmshtml #l-footer .fnav #foot-navi .li a:hover {
  color: #888;
}

.cmshtml #l-footer .fnav #foot-navi .li .f_ol {
  padding: 0;
  margin-bottom: 20px;
}

.cmshtml #l-footer .fnav #foot-navi .li .f_ol .subtitle {
  font-size: 80%;
  font-weight: 700;
  margin: 10px 0 5px;
  color: darkgreen;
  border-bottom: 1px solid darkgreen;
}
.cmshtml #l-footer .fnav #foot-navi .li .f_ol li{
}
.cmshtml #l-footer .fnav #foot-navi .li .f_ol a {
  border-radius: 0;
  background: url(../img/panlist.png) no-repeat left;
  font-size: 80%;
  padding-left: 10px;
}

.cmshtml #l-footer .fnav #foot-navi .li .f_ol a:hover {
  color: #888;
}

.cmshtml #l-footer {
  position: relative;
  border-top: 4px solid #0BA981;
  margin-top: 60px;
}

.cmshtml .fnav {
  background: #C8E2BC;
}

.cmshtml .fnav .f-nav__list {
  display: flex;
  justify-content: space-around;
  padding: 17px 0 7px;
  flex-wrap: wrap;
}

.cmshtml .f-nav__item {
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  margin-bottom: 10px;
}

.cmshtml .f-nav__item a {
  text-decoration: none;
  padding: 0px 10px;
}

@media screen and (max-width: 800px) {
  .cmshtml .f-nav__item a {

    position: relative;
  }
  .cmshtml .f-nav__item a::before {
    content: "";
    position: absolute;
    margin: auto;
    left: 4px;
    top: 0;
    bottom: 0;
    width: 2px;
    height: 2px;
    background: #1F1813;
    border-radius: 50%;
  }
}

.cmshtml .f-list {
  padding: 0 20px 25px;
  overflow: hidden;
}

@media screen and (max-width: 800px) {
  .cmshtml .f-list {
    overflow: hidden;
    padding: 20px 12px 0;
  }
}

.cmshtml .f-list .left, .cmshtml .f-list .il, .cmshtml .f-list .right, .cmshtml .f-list .ir {
  width: 100%;
  margin-bottom: 20px;
}

@media screen and (max-width: 800px) {
  .cmshtml .f-list .left, .cmshtml .f-list .il, .cmshtml .f-list .right, .cmshtml .f-list .ir {
    width: 100%;
    padding-bottom: 20px;
  }
}

.cmshtml .f-list .left .f_logo, .cmshtml .f-list .il .f_logo, .cmshtml .f-list .right .f_logo, .cmshtml .f-list .ir .f_logo {
  margin-bottom: 5px;
}

.cmshtml .f-list .left .f_logo .sub, .cmshtml .f-list .il .f_logo .sub, .cmshtml .f-list .right .f_logo .sub, .cmshtml .f-list .ir .f_logo .sub {
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0;
}

.cmshtml .f-list .right .companyname, .cmshtml .f-list .ir .companyname {
  font-weight: 700;
  font-size: 18px;
  font-size: 1.125rem;
  margin-bottom: 5px;
}

.cmshtml .f-list .right .companyname .sub, .cmshtml .f-list .ir .companyname .sub {
  font-size: 15px;
  font-size: 0.9375rem;
  display: inline;
  font-weight: 700;
}

.cmshtml .address {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.5;
}

.cmshtml .tel_address {
  font-style: normal;
  line-height: 1.5;
  font-size: 15px;
  font-size: 0.9375rem;
}

.cmshtml #f-copy {
  color: #1F1813;
  font-size: 11px;
  padding: 20px 0;
  text-align: center;
  clear: both;
  letter-spacing: 0;
}

.cmshtml #f-copy a {
  color: inherit;
  text-decoration: none;
}

@media screen and (max-width: 800px) {
  .cmshtml #f-copy {
    padding: 12px 0;
    margin-top: 0;
  }
}

.cmshtml #pagetop-side {
  width: 52px;
  height: 54px;
  position: fixed;
  z-index: 100;
  margin: 0 auto;
  right: 10px;
  bottom: 10px;
  text-indent: -9999px;
  background-image: url(../img/pagetop.png);
  background-repeat: no-repeat;
  background-size: 100%;
  opacity: 1;
  transition: bottom 0.3s;
}

@media screen and (max-width: 800px) {
  .cmshtml #pagetop-side {
    width: 42px;
    height: 44px;
    background-size: 100% auto;
  }
}

.cmshtml #pagetop-side:hover {
  bottom: 20px;
}

.cmshtml #pagetop-side a {
  display: block;
  width: 100%;
  height: 100%;
}

.cmshtml #pagetop-side a:hover {
  opacity: 1;
}

.cmshtml .section-slide {
  position: relative;
}

.cmshtml #topslide {
  max-width: 100%;
  opacity: 0;
  transition: opacity 1s;
}

.cmshtml #topslide div {
  max-height: none;
}

.cmshtml #topslide.is-ready {
  opacity: 1;
}

.cmshtml #topslide .sp-layer {
  font-size: 40px;
  font-size: 2.5rem;
  font-size: clamp(15px, 3.6vw, 40px);
  text-align: center;
  color: #fff;
  font-family: 'M PLUS Rounded 1c','Noto Sans JP', "メイリオ", Meiryo,YuGothic, "游ゴシック",'Roboto', Helvetica Neue, Helvetica, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN";
  letter-spacing: 3px;
  font-weight: 700;
  max-width: 100%;
  text-shadow: rgba(0, 0, 0, 0.65) 2px 2px 18px, rgba(0, 0, 0, 0.65) -2px -2px 18px, rgba(0, 0, 0, 0.65) -2px 2px 18px, rgba(0, 0, 0, 0.65) 2px -2px 18px, rgba(0, 0, 0, 0.65) 0px 2px 18px, rgba(0, 0, 0, 0.65) 0 -2px 18px, rgba(0, 0, 0, 0.65) -2px 0 18px, rgba(0, 0, 0, 0.65) 2px 0 18px;
}

@media screen and (max-width: 600px) {
  .cmshtml #topslide .sp-layer {
    letter-spacing: 0;
  }
}

.cmshtml .section_concept {
  text-align: center;
  position: relative;
  overflow: hidden;
}

.cmshtml .section_concept .inner {
  padding-top: 60px;
  padding-bottom: 70px;
}

.cmshtml .section_concept .inner .h3 {
  padding: 52px 65px 50px;
  position: relative;
  font-size: 36px;
  font-size: 2.25rem;
  background: url("../img/ico01.png") no-repeat center 0;
}
.cmshtml .section_concept .inner .h3 >div {
display: inline-block;
}

.cmshtml .section_concept .inner .h3::before, .cmshtml .section_concept .inner .h3::after {
  content: "";
  display: inline-block;
  height: 7px;
  width: 46px;
  margin-right: 22px;
  background: url("../img/line01.png") no-repeat center center;
  transform: translateY(5px);
}

.cmshtml .section_concept .inner .h3::after {
  margin-right: auto;
  margin-left: 22px;
}

@media screen and (max-width: 800px) {
  .cmshtml .section_concept .inner .h3 {
    position: relative;
    padding: 30px 0 40px;
  }
  .cmshtml .section_concept .inner .h3 img {
    max-width: 100%;
  }
  .cmshtml .section_concept .inner .h3::before, .cmshtml .section_concept .inner .h3::after {
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: -1;
    background-size: 23px 4px;
    width: 23px;
    height: 4px;
  }
  .cmshtml .section_concept .inner .h3::after {
    left: auto;
    right: 0;
  }
}

.cmshtml .section_concept .inner div {
  font-size: 18px;
  font-size: 1.125rem;
}

.cmshtml .section_concept .inner .more {
  text-align: center;
}

.cmshtml .section_concept .img_area .circle {
  position: absolute;
  z-index: -1;
  left: 50%;
  top: 30px;
  border-radius: 50%;
  overflow: hidden;
}

.cmshtml .section_concept .img_area .circle.img1 {
  margin-left: -727px;
  margin-top: 0px;
}

.cmshtml .section_concept .img_area .circle.img2 {
  margin-left: 357px;
  margin-top: 236px;
}

.cmshtml .section_concept::before, .cmshtml .section_concept::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  top: 0px;
  background: url("../img/circle01.png") no-repeat 0 0;
  width: 167px;
  height: 163px;
  margin-left: -583px;
  margin-top: 386px;
}

.cmshtml .section_concept::after {
  background: url("../img/circle02.png") no-repeat 0 0;
  width: 147px;
  height: 143px;
  margin-left: 414px;
  margin-top: 73px;
}

.cmshtml .more {
  font-size: 18px;
  font-size: 1.125rem;
}

.cmshtml .more a {
  background: #0BA981;
  border: 4px solid #D2EAE4;
  border-radius: 99px;
  padding: 10px 56px 10px 24px;
  box-sizing: border-box;
  font-weight: 700;
  position: relative;
  color: #fff;
  text-decoration: none;
}

.cmshtml .more a::after {
  position: absolute;
  margin: auto;
  content: "";
  top: 0;
  bottom: 0;
  right: 25px;
  width: 15px;
  height: 7px;
  background: url("../img/arrow.png") no-repeat 0 0;
}

.cmshtml .title_top {
  text-align: center;
  position: relative;
}

.cmshtml .title_top .jp {
  position: relative;
  line-height: 36px;
}
.cmshtml .title_top .jp >div {
display: inline-block;
}

.cmshtml .title_top .jp::before, .cmshtml .title_top .jp::after {
  content: "";
  display: inline-block;
  height: 7px;
  width: 46px;
  margin-right: 22px;
  background: url("../img/line01.png") no-repeat center center;
  transform: translateY(1px);
}

.cmshtml .title_top .jp::after {
  margin-right: auto;
  margin-left: 22px;
}

@media screen and (max-width: 800px) {
  .cmshtml .title_top .jp {
    position: relative;
  }
  .cmshtml .title_top .jp img {
    max-width: 100%;
  }
  .cmshtml .title_top .jp::before, .cmshtml .title_top .jp::after {
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: -1;
    background-size: 23px 4px;
    width: 23px;
    height: 4px;
  }
  .cmshtml .title_top .jp::after {
    left: auto;
    right: 0;
  }
}

.cmshtml .title_top .en {
  margin-top: 10px;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0BA981;
  font-family: 'Noto Sans JP','Roboto', Helvetica Neue, Helvetica, YuGothic, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo;
  display: inline-block;
}

.cmshtml .section-product {
  background: #ECF5E8;
  padding: 60px 0;
}

.cmshtml .section-product .boxwrap4 {
  padding-top: 36px;
  padding-bottom: 40px;
  margin-bottom: 10px;
  background: url("../img/wako_bg.png") no-repeat right 0;
  box-sizing: content-box;
  padding-left: 30px;
  align-items: center;
}

@media screen and (max-width: 1079px) {
  .cmshtml .section-product .boxwrap4 {
    background-size: 100%;
  }
}

@media screen and (max-width: 800px) {
  .cmshtml .section-product .boxwrap4 {
    margin-left: 0px;
    padding-left: 0px;
    box-sizing: border-box;
  }
}

.cmshtml .section-product .boxwrap4 .img_area {
  width: 37%;
}

.cmshtml .section-product .boxwrap4 .img_area img {
  border-radius: 10px;
}

.cmshtml .section-product .boxwrap4 .text_area {
  width: 63%;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .cmshtml .section-product .boxwrap4 .img_area, .cmshtml .section-product .boxwrap4 .text_area {
    width: 100%;
    margin-bottom: 1.5em;
    padding-left: 2%;
    padding-right: 2%;
  }
}

.cmshtml .section-product .topcont .i3 {
  width: 100%;
  margin-bottom: 0px;
}

.cmshtml .section-product .more {
  text-align: center;
  margin-top: 40px;
}

.cmshtml .i3div.top_cont {
  background: #fff;
  overflow: hidden;
  border-radius: 10px;
}

@media screen and (max-width: 800px) {
  .cmshtml .i3div.top_cont {
    max-width: 341px;
    margin-left: auto;
    margin-right: auto;
  }
}

.cmshtml .i3div.top_cont figure img {
  transform: scale(1, 1);
  transition: transform 0.2s ease 0s;
  -webkit-transition: transform 0.3s ease;
  -moz-transition: transform 0.3s ease;
  max-width: 100%;
  height: auto;
}

.cmshtml .i3div.top_cont .txt {
  line-height: 1.4;
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 7px 10px 15px;
  margin-bottom: 0;
}

@media screen and (min-width: 801px) {
  .cmshtml .i3div.top_cont.onhover figure img {
    transform: scale(1.2, 1.2);
  }
}

.cmshtml .section_news {
  padding: 50px 0px;
}

@media screen and (max-width: 800px) {
  .cmshtml .section_news {
    padding: 30px 0;
  }
}

.cmshtml .news {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 800px) {
  .cmshtml .news {
    display: block;
  }
}

.cmshtml .news .title {
  max-width: 270px;
  width: 26%;
}

@media screen and (max-width: 800px) {
  .cmshtml .news .title {
    margin-bottom: 1.5em;
    margin-left: 10px;
  }
}

.cmshtml .news .article {
  width: 74%;
}

.cmshtml .news .article .scroll {
  border-top: 1px solid #D6D6D6;
}

@media screen and (max-width: 800px) {
  .cmshtml .news .title, .cmshtml .news .article {
    width: 100%;
  }
}

.cmshtml .news_dl {
  border-bottom: 1px solid #D6D6D6;
  padding: 17px 10px;
}

@media screen and (max-width: 800px) {
  .cmshtml .news_dl {
    padding: 10px;
  }
}

.cmshtml .news_dl dt {
  display: flex;
  line-height: 24px;
  margin-bottom: 4px;
}

@media screen and (max-width: 800px) {
  .cmshtml .news_dl dt {
    display: block;
  }
}

.cmshtml .news_dl dt p, .cmshtml .news_dl dt div {
  font-family: 游明朝, "Yu Mincho", YuMincho, 'Noto Serif JP',"Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-size: 13px;
  font-size: 0.8125rem;
  width: 98px;
}

@media screen and (max-width: 800px) {
  .cmshtml .news_dl dt p, .cmshtml .news_dl dt div {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

.cmshtml .news_dl dt h2 {
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: 700;
}

@media screen and (max-width: 800px) {
  .cmshtml .news_dl dt h2 {
    font-size: 16px;
    font-size: 1rem;
  }
}

.cmshtml .news_dl dd {
  line-height: 1.5;
}

@media screen and (max-width: 800px) {
  .cmshtml .news_dl dd {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.cmshtml .section-mainlinks {
  background: #0BA981;
}

.cmshtml .main-links {
  flex-wrap: nowrap;
  overflow: visible;
}

.cmshtml .main-links__item {
  padding: 70px 0 50px;
  position: relative;
  text-align: center;
  flex: 1 1 16.6666%;
  transition: all 0.3s;
}

.cmshtml .main-links__item::after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  display: block;
  z-index: -1;
  background-color: transparent;
  transition: background-color 0.3s;
}

.cmshtml .main-links__icon {
  margin: 0 auto;
  position: relative;
  background-color: #ffffff;
  border-radius: 50%;
  width: 120px;
  height: 120px;
  transition: all 0.3s;
}

.cmshtml .main-links__icon img {
  max-width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.cmshtml .main-links__text {
  padding-top: 30px;
  transition: all 0.3s;
  font-family: YuGothic, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 'Roboto', Helvetica Neue, Helvetica, "メイリオ", Meiryo;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
}

.cmshtml .main-links__text a {
  color: #ffffff !important;
  text-decoration: none;
  display: block;
}

.cmshtml .main-links__link:hover {
  opacity: 1;
}

.cmshtml .main-links:hover a {
  opacity: 1;
}

.cmshtml .main-links__item.onhover {
  position: relative;
}

.cmshtml .main-links__item.onhover::after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  display: block;
  z-index: -1;
  background-color: rgba(255, 255, 255, 0.3);
}

.cmshtml .main-links__item.onhover .main-links__text {
  background-position: bottom 0 left 55%;
}

@media screen and (max-width: 800px) {
  .cmshtml .section-mainlinks {
    background: none;
    margin-bottom: 0px;
  }
  .cmshtml .main-links {
    flex-wrap: wrap;
    overflow: visible;
  }
  .cmshtml .main-links__text {
    padding-top: 20px;
  }
  .cmshtml .main-links__item {
    padding: 20px 0;
    text-align: center;
    flex: 1 1 50%;
    background-color: #0ed3a1;
  }
  .cmshtml .main-links__item:nth-child(4n-1) {
    background-color: #0BA981;
  }
  .cmshtml .main-links__item:nth-child(4n-2) {
    background-color: #0BA981;
  }
  .cmshtml .main-links__item:nth-child(4n) {
    background-color: #0ed3a1;
  }
  .cmshtml .main-links__link {
    font-weight: bold;
    color: #ffffff !important;
    text-decoration: none;
  }
  .cmshtml .main-links__icon {
    margin: 0 auto;
    transform: none;
    bottom: auto;
    position: relative;
    width: 100px;
    height: 100px;
  }
  .cmshtml .main-links__icon img {
    max-width: 55%;
  }
}

.cmshtml .title_wrap {
  position: relative;
  overflow: hidden;
  background: #ECF5E8 url("../img/wako_bg.png") no-repeat center;
}

.cmshtml .title_wrap::before, .cmshtml .title_wrap::after {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  background: url("../img/circle04.png") no-repeat 0 0;
  margin-left: 346px;
  margin-top: 80px;
  width: 165px;
  height: 96px;
  transform: rotate(141deg);
}

.cmshtml .title_wrap::after {
  background: url("../img/circle05.png") no-repeat 0 0;
  transform: rotate(165deg);
  margin-top: 60px;
  margin-left: -520px;
}

@media screen and (max-width: 800px) {
  .cmshtml .title_wrap {
    background-size: cover;
  }
  .cmshtml .title_wrap::before {
    margin-left: 146px;
    margin-top: 40px;
  }
  .cmshtml .title_wrap::after {
    margin-left: -346px;
    margin-top: 20px;
  }
}

.cmshtml .title_wrap .imgwrap, .cmshtml .title_wrap .rdplaneimage {
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
  position: absolute;
  top: 0;
  right: 0;
}

.cmshtml .title_wrap .imgwrap img, .cmshtml .title_wrap .rdplaneimage img {
  width: 100%;
  height: auto;
  opacity: 1.0;
}

@media screen and (max-width: 959px) {
  .cmshtml .title_wrap .imgwrap img, .cmshtml .title_wrap .rdplaneimage img {
    width: auto;
    height: 100%;
  }
}

.cmshtml .title_wrap .title {
  padding-top: 50px;
  position: relative;
  border-bottom: none;
}

.cmshtml .title_wrap .title .page-title {
  font-size: 34px;
  font-size: 2.125rem;
  font-family: 'Noto Sans JP','Roboto', Helvetica Neue, Helvetica, YuGothic, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo;
  position: relative;
  text-align: center;
  color: #1F1813;
  overflow: hidden;
}

.cmshtml .title_wrap .title .subtitle {
  margin: 8px auto 14px;
  text-align: center;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  color: #999;
  font-weight: 400;
}

.cmshtml .title_wrap .title .title-navi {
  padding: 18px 10px 20px;
}

.cmshtml .title_wrap::after {
  content: "";
}

.cmshtml .title-navi {
  padding: 18px 10px 20px;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}

.cmshtml .title-navi > div {
  flex: 0 0 auto;
  margin-right: 8px;
  color: #0BA981;
  position: relative;
}

.cmshtml .title-navi > div:after, .cmshtml .title-navi > div:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

@media screen and (max-width: 800px) {
  .cmshtml .title-navi > div {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.cmshtml .title-navi > div a {
  padding-left: 24px;
  text-decoration: none;
  border: 2px solid #0BA981;
  padding: 6px 28px;
  font-weight: 700;
  color: inherit;
  position: relative;
  background: #ECF5E8;
  transition: alborder-radiusborder-radiusborder-radiusl 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}

.cmshtml .title-navi > div a:before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 3px 0 3px;
  border-color: #0BA981 transparent transparent transparent;
}

@media screen and (min-width: 801px) {
  .cmshtml .title-navi > div a:hover {
    border-radius: 99px;
  }
}

.cmshtml .panlist ul, .cmshtml .rdBreadcrumbList {
  padding: 0.4em 1rem;
  margin-bottom: 4em;
}

.cmshtml .panlist ul::before, .cmshtml .rdBreadcrumbList::before {
  background: #C8E2BC;
  content: "";
  width: 100vw;
  max-width: 100vw;
  margin: 0 calc(50% - 50vw);
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

.cmshtml .panlist ul li, .cmshtml .rdBreadcrumbList li {
  font-size: 13px;
  font-size: 0.8125rem;
  padding-right: 15px;
  float: left;
  position: relative;
}

/*
.cmshtml .panlist ul li:after, .cmshtml .rdBreadcrumbList li:after {
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 3px;
  width: 3px;
  height: 3px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}*/

.cmshtml .panlist ul li a, .cmshtml .rdBreadcrumbList li a {
  text-decoration:none;
}

.cmshtml .panlist ul li:last-child:after, .cmshtml .rdBreadcrumbList li:last-child:after {
  content: none;
}

.cmshtml .l-container,
.cmshtml #contents {
  width: 1080px;
  max-width: 100%;
  margin: 0 auto;
}

@media screen and (max-width: 800px) {
  .cmshtml img {
    max-width: 100%;
    height: auto;
  }
}

.cmshtml .container .rdplanetitle h2 {
  padding: 8px;
  padding-top: 46px;
  font-size: clamp(28px, 4vw, 46px);
  font-weight: 700;
  text-align: center;
  position: relative;
}

.cmshtml .rdplanetitle h2::after {
  margin: auto;
  content: "";
  width: 52px;
  height: 30px;
  background: url("../img/ico01.png") no-repeat center 0;
  position: absolute;
  display: inline-block;
  top: 0px;
  left: 0;
  right: 0;
}

.cmshtml .container .rdplanetitle h3 {
  font-size: 1.875rem;
  font-size: clamp(24px, 3vw, 30px);
  font-weight: 700;
  padding: 20px 0px 20px 16px;
  background: url("../img/circle03.png") left center/60px 59px no-repeat;
  position: relative;
}

.cmshtml .container .rdplanetitle h4 {
  clear: both;
  font-size: 1.5rem;
  font-size: clamp(20px, 2.5vw, 24px);
  font-weight: 700;
  position: relative;
  padding: 8px 20px;
  border-radius: 5px;
  background: #0ba981;
  color: white;
  border-bottom: 3px solid #dddddd;
}

.cmshtml .container .rdplanetitle h5 {
  font-size: 1.5rem;
  font-size: clamp(20px, 2.5vw, 24px);
  font-weight: 700;
  text-align: center;
  position: relative;
  color: #0BA981;
}

.cmshtml .rdplanetitle h5::before, .cmshtml .rdplanetitle h5::after {
  content: "";
  display: inline-block;
  height: 7px;
  width: 46px;
  margin-right: 22px;
  background: url("../img/line01.png") no-repeat center center;
  transform: translateY(-4px);
}

.cmshtml .rdplanetitle h5::after {
  margin-right: auto;
  margin-left: 22px;
}

@media screen and (max-width: 800px) {
  .cmshtml .rdplanetitle h5 {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .cmshtml .rdplanetitle h5::before, .cmshtml .rdplanetitle h5::after {
    position: absolute;
    display: block;
    margin: auto;
    margin-right: auto;
    margin-left: auto;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: -1;
    background-size: 23px 4px;
    width: 23px;
    height: 4px;
  }
  .cmshtml .rdplanetitle h5::after {
    left: auto;
    right: 0;
  }
}
.cmshtml .container .rdplanetitle h6 {
  font-size: clamp(20px, 2.5vw, 24px);
  font-weight: 700;
  padding-left: 42px;
  position: relative;
  margin-bottom: 16px;
}
.cmshtml .container .rdplanetitle h6::before {
  content: '';
  display: block;
  position: absolute;
  top: 0px;
  left: 0;
  height: 28px;
  width: 36px;
  background: url("../img/ico02.png") no-repeat 0 0;
}

.cmshtml .cap_s, .cmshtml .news_header {
  margin: 0 auto 16px;
}

.cmshtml .cap_s h4 {
  font-size: 19px;
  font-size: 1.1875rem;
  font-weight: 700;
  position: relative;
}

@media screen and (max-width: 800px) {
  .cmshtml .cap_s h4 {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.cmshtml .cap_s.cs_1 h4 {
  padding-left: 42px;
}

.cmshtml .cap_s.cs_1 h4:before {
  content: '';
  display: block;
  position: absolute;
  top: 0px;
  left: 0;
  height: 28px;
  width: 36px;
  background: url("../img/ico02.png") no-repeat 0 0;
}

.cmshtml .cap_s.cs_2 h4 {
  position: relative;
  padding-left: 14px;
  text-align: left;
}

.cmshtml .cap_s.cs_2 h4:before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#0BA981), to(#FBB731));
  background: -webkit-linear-gradient(bottom, #0BA981 50%, #FBB731 50%);
  background: linear-gradient(to top, #0BA981 50%, #FBB731 50%);
  content: "";
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  height: 80%;
}

.cmshtml .cap_s.cs_3 h4 {
  position: relative;
  display: inline-block;
  padding-bottom: 6px;
}

.cmshtml .cap_s.cs_3 h4::before {
  left: 0;
  width: 100%;
  height: 3.5px;
  position: absolute;
  bottom: 0;
  border-bottom: 3px dotted #0BA981;
  content: "";
}

.cmshtml .news_header {
  border-bottom: 1px solid #ddd;
}

.cmshtml .news_header .date {
  position: relative;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  color: #0BA981;
  background: #D2EAE4;
  display: inline-block;
  padding: 0 10px;
}

.cmshtml .news_header h3 {
  padding: 16px 0;
  font-size: 22px;
  font-size: 1.375rem;
  position: relative;
  font-weight: 700;
}

.cmshtml .boxwrap1, .cmshtml .boxwrap4, .cmshtml .to_buttonbox, .cmshtml .to_telinquiry {
  margin-bottom: 64px;
  position: relative;
}

@media screen and (max-width: 800px) {
  .cmshtml .boxwrap1, .cmshtml .boxwrap4, .cmshtml .to_buttonbox, .cmshtml .to_telinquiry {
    margin-bottom: 32px;
  }
}

@media screen and (max-width: 800px) {
  .cmshtml .boxwrap1 .img-twins.img img, .cmshtml .boxwrap4 .img-twins.img img, .cmshtml .to_buttonbox .img-twins.img img, .cmshtml .to_telinquiry .img-twins.img img {
    width: 100%;
    height: auto;
  }
  .cmshtml .boxwrap1 > img, .cmshtml .boxwrap4 > img, .cmshtml .to_buttonbox > img, .cmshtml .to_telinquiry > img {
    margin-bottom: 10px;
  }
  .cmshtml .boxwrap1 .il, .cmshtml .boxwrap4 .il, .cmshtml .to_buttonbox .il, .cmshtml .to_telinquiry .il {
    display: block;
    float: none;
    margin: 0;
    margin-bottom: 10px;
    width: 100%;
    height: auto;
  }
  .cmshtml .boxwrap1 img.ir, .cmshtml .boxwrap4 img.ir, .cmshtml .to_buttonbox img.ir, .cmshtml .to_telinquiry img.ir {
    margin: 0;
    margin-bottom: 10px;
    width: 100%;
    height: auto;
  }
}

.cmshtml .boxwrap4 {
  margin-bottom: 64px;
  position: relative;
  display: flex;
  flex-flow: row nowrap;
}

@media screen and (max-width: 800px) {
  .cmshtml .boxwrap4 {
    margin-bottom: 32px;
  }
}

@media screen and (max-width: 800px) {
  .cmshtml .boxwrap4 {
    display: block;
  }
}

.cmshtml .boxwrap4.align_c {
  align-items: center;
}

.cmshtml .boxwrap4 .text_area h4 {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  color: #0BA981;
  padding-bottom: 12px;
  border-bottom: 1px solid #0BA981;
  margin-bottom: 20px;
}

.cmshtml .boxwrap4 .img_area {
  text-align: center;
}

.cmshtml .boxwrap4.direction_normal {
  flex-direction: row;
}

.cmshtml .boxwrap4.direction_normal .text_area {
  margin-right: auto;
  flex-grow: 1;
}

.cmshtml .boxwrap4.direction_normal .rdplaneimage, .cmshtml .boxwrap4.direction_normal .img_area {
  margin-right: 32px;
}

.cmshtml .boxwrap4.direction_reverse {
  flex-direction: row-reverse;
}

.cmshtml .boxwrap4.direction_reverse .text_area {
  margin-right: auto;
  flex-grow: 1;
}

.cmshtml .boxwrap4.direction_reverse .img_area {
  margin-left: 32px;
}

@media screen and (max-width: 800px) {
  .cmshtml .boxwrap4.direction_normal {
    display: block;
    margin: 0 0 48px;
  }
  .cmshtml .boxwrap4.direction_normal .img_area {
    width: 100%;
    margin-right: 0;
    text-align: center;
  }
  .cmshtml .boxwrap4.direction_normal .img_area img {
    max-width: 100%;
    height: auto;
    margin-bottom: 10px;
  }
  .cmshtml .boxwrap4.direction_normal .text_area {
    margin: 0;
  }
  .cmshtml .boxwrap4.direction_reverse {
    margin: 0 0 48px;
    display: block;
  }
  .cmshtml .boxwrap4.direction_reverse .img_area {
    width: 100%;
    margin-left: 0;
    text-align: center;
  }
  .cmshtml .boxwrap4.direction_reverse .img_area img {
    max-width: 100%;
    height: auto;
    margin-bottom: 10px;
  }
  .cmshtml .boxwrap4.direction_reverse .img_area .tar.mt20.min {
    margin-top: 0;
    margin-bottom: 15px;
  }
  .cmshtml .boxwrap4.direction_reverse .text_area {
    margin: 0;
  }
}

.cmshtml .min {
  font-family: 游明朝, "Yu Mincho", YuMincho, 'Noto Serif JP',"Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
}

.cmshtml .imgfull {
  margin-bottom: 64px;
  text-align: center;
}

@media screen and (max-width: 800px) {
  .cmshtml .imgfull {
    margin-bottom: 32px;
  }
}

.cmshtml .imgfull img {
  max-width: 100%;
  height: auto;
}

.cmshtml .ir {
  margin-left: 16px;
}

.cmshtml .ir.sm {
  margin-left: 10px;
}

.cmshtml .il {
  margin-right: 16px;
}

.cmshtml .il.sm {
  margin-right: 10px;
}

.cmshtml .line_hr {
  margin-bottom: 48px;
}

@media screen and (max-width: 800px) {
  .cmshtml .line_hr {
    margin-bottom: 24px;
  }
}

.cmshtml .line_hr hr {
  height: 1px;
  overflow: hidden;
  border: none;
  border-bottom: dotted 1px #aaa;
}

.cmshtml .line_hr.dots {
  margin-bottom: 0;
}

.cmshtml .line_hr.dots hr {
  border-bottom: 2px dotted #CCC;
}

.cmshtml .noline_hr {
  margin-bottom: 48px;
}

@media screen and (max-width: 800px) {
  .cmshtml .noline_hr {
    margin-bottom: 24px;
  }
}

.cmshtml .noline_hr hr {
  height: 1px;
  overflow: hidden;
  border: none;
}

.cmshtml .text_area dl {
  border-top: 1px solid #ddd;
  display: table;
  width: 100%;
}

.cmshtml .text_area dl.thw16 dt {
  width: 16em;
}

.cmshtml .text_area dl.thw16 dd {
  width: calc(100% - 16em);
}

.cmshtml .text_area dl dt, .cmshtml .text_area dl dd {
  display: table-cell;
}

.cmshtml .text_area dl dt {
  background: #f5f8fa;
  padding: 1.14286em 1.42857em;
  color: #1F1813;
  width: 10em;
}

.cmshtml .text_area dl dd {
  width: calc(100% - 15em);
  padding: 1.14286em 1.42857em;
  background: #fff;
}

.cmshtml .text_area dl:last-child {
  border-bottom: 1px solid #ddd;
}

@media screen and (max-width: 800px) {
  .cmshtml .text_area dl dt, .cmshtml .text_area dl dd {
    width: 100% !important;
    display: block;
  }
  .cmshtml .text_area dl dt {
    background: #f6f6f6;
  }
}

.cmshtml .to_buttonbox {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  border-bottom: 1px dotted #0BA981;
  margin-bottom: 15px;
}

.cmshtml .to_buttonbox .to_bt2 {
  margin-left: 16px;
  margin-bottom: 16px;
  flex-shrink: 0;
}

.cmshtml .to_buttonbox .txt {
  margin-right: auto;
}

@media screen and (max-width: 800px) {
  .cmshtml .to_buttonbox {
    display: block;
  }
  .cmshtml .to_buttonbox .to_bt2 {
    margin: 0 0 24px;
    text-align: center;
  }
  .cmshtml .to_buttonbox .to_bt2 p, .cmshtml .to_buttonbox .to_bt2 div {
    display: inline-block;
  }
  .cmshtml .to_buttonbox .to_bt2 p a, .cmshtml .to_buttonbox .to_bt2 div a {
    width: 100%;
    box-sizing: border-box;
  }
}

.cmshtml .link_btn {
  letter-spacing: .04em;
  font-size: 17px;
  font-size: 1.0625rem;
}

.cmshtml .link_btn a {
  display: inline-block;
  background: #0BA981;
  border: 4px solid #D2EAE4;
  border-radius: 99px;
  text-decoration: none;
  padding: 10px 56px 10px 24px;
  color: #fff;
  transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  position: relative;
}

@media screen and (max-width: 800px) {
  .cmshtml .link_btn a {
    padding-right: 95px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.cmshtml .link_btn a::after {
  position: absolute;
  margin: auto;
  content: "";
  top: 0;
  bottom: 0;
  right: 25px;
  width: 15px;
  height: 7px;
  background: url("../img/arrow.png") no-repeat 0 0;
  transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}

.cmshtml .link_btn a:hover::after {
  right: 15px;
}

.cmshtml .to_bt {
  margin-bottom: 64px;
}

@media screen and (max-width: 800px) {
  .cmshtml .to_bt {
    margin-bottom: 32px;
  }
}

.cmshtml .to_bt a {
  display: inline-block;
  font-size: 18px;
  font-size: 1.125rem;
  text-decoration: none;
  font-weight: bold;
  position: relative;
  background: #0BA981;
  border: 4px solid #D2EAE4;
  border-radius: 99px;
  padding: 10px 42px 10px 28px;
  box-sizing: border-box;
  color: #fff;
  -webkit-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}

.cmshtml .to_bt a:after {
  -webkit-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
  position: absolute;
  margin: auto;
  content: "";
  top: 0;
  bottom: 0;
  right: 20px;
  width: 15px;
  height: 7px;
  background: url("../img/arrow.png") no-repeat 0 0;
}

@media screen and (min-width: 801px) {
  .cmshtml .to_bt a:hover {
    filter: alpha(opacity=80);
    -moz-opacity: 0.80;
    opacity: 0.80;
  }
  .cmshtml .to_bt a:hover:after {
    right: 10px;
    opacity: 1;
  }
}

@media screen and (max-width: 800px) {
  .cmshtml .to_bt p, .cmshtml .to_bt div {
    width: 100%;
  }
  .cmshtml .to_bt p a, .cmshtml .to_bt div a {
    text-align: center;
    box-sizing: border-box;
    width: 100%;
  }
}

.cmshtml .to_bt2 {
  text-align: right;
}

.cmshtml .to_bt2 p {
  padding: 0;
  margin: 0;
  font-weight: 700;
}

.cmshtml .to_bt2 p a {
  display: inline-block;
  padding: 8px 24px 8px 24px;
  text-align: center;
  background: linear-gradient(to bottom, #fff, #ddd);
  color: #1F1813;
  border: #bbb 1px solid;
  border-radius: 2px;
  text-decoration: none;
  transition: all 0.6s;
  position: relative;
}

.cmshtml .to_bt2 p a:before, .cmshtml .to_bt2 p a:after {
  content: '';
  display: block;
  position: absolute;
}

.cmshtml .to_bt2 p a:before {
  top: 0;
  bottom: 0;
  left: 8px;
  margin: auto;
  width: 31px;
  height: 36px;
  background: url("../img/dl.svg") no-repeat left center;
  background-size: 31px 36px;
}

.cmshtml .to_bt2 p a:after {
  top: 50%;
  right: 10px;
  margin-top: -2px;
  width: 4px;
  height: 4px;
  border-top: 1px solid #666;
  border-right: 1px solid #666;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cmshtml .to_bt2 p a:hover {
  background: linear-gradient(to top, #fff, #ddd);
}

.cmshtml .to_bt2 p a[href$=".pdf"] {
  padding: 8px 24px 8px 48px;
}

.cmshtml .to_bt2 p a[href$=".pdf"]:before {
  background: url("../img/icon-pdf-m.svg") no-repeat left center;
}

.cmshtml .to_bt2 p a[href$=".xls"] {
  padding: 8px 24px 8px 48px;
}

.cmshtml .to_bt2 p a[href$=".xls"]:before {
  background: url("../img/icon-xcel-m.svg") no-repeat left center;
}

.cmshtml .to_bt2 p a[href$=".xlsx"] {
  padding: 8px 24px 8px 48px;
}

.cmshtml .to_bt2 p a[href$=".xlsx"]:before {
  background: url("../img/icon-xcel-m.svg") no-repeat left center;
}

.cmshtml .to_bt2 p a[href$=".doc"] {
  background: url("../img/icon-word-m.svg") no-repeat left center;
}

.cmshtml .to_bt2 p a[href$=".docx"] {
  padding: 8px 24px 8px 48px;
}

.cmshtml .to_bt2 p a[href$=".docx"]:before {
  background: url("../img/icon-word-m.svg") no-repeat left center;
}

.cmshtml .faq::before, .cmshtml .faq::after {
  display: none;
}

.cmshtml .faq > div {
  position: relative;
}

.cmshtml .faq > div::before {
  position: absolute;
  font-family: YuGothic, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 'Roboto', Helvetica Neue, Helvetica, "メイリオ", Meiryo;
  left: 0px !important;
  top: 0;
  font-size: 23px;
  font-size: 1.4375rem;
  width: 44px !important;
  height: 44px !important;
  line-height: 44px !important;
  text-align: center;
  font-weight: 600;
  color: #fff;
  content: "";
  background: #0BA981 !important;
  border-radius: 2px;
}

.cmshtml .faq > div:nth-child(2n-1) {
  padding: 8px 0 16px 56px !important;
  margin-bottom: 8px;
  font-weight: 700;
  color: #0BA981;
  font-size: clamp(16px, 2vw, 18px);
}

.cmshtml .faq > div:nth-child(2n-1)::before {
  content: "Q" !important;
}

.cmshtml .faq > div:nth-child(2n) {
  padding: 8px 0 16px 56px !important;
}

.cmshtml .faq > div:nth-child(2n)::before {
  content: "A" !important;
  background: #FBB731 !important;
  font-weight: 500;
}

.cmshtml .service {
  background: url(../img/wako_bg2.png) repeat-y center top;
}

.cmshtml .service .cap_m {
  padding: 80px 0 80px;
}

.cmshtml .mainimg {
  position: relative;
}

.cmshtml .mainimg .imgwrap, .cmshtml .mainimg .rdplaneimage {
  width: 100%;
}

.cmshtml .mainimg .imgwrap img, .cmshtml .mainimg .rdplaneimage img {
  width: 100%;
  height: auto;
}

.cmshtml .mainimg .catch {
  width: 90%;
  position: absolute;
  top: 50%;
  left: 30%;
  transform: translate(-30%, -50%);
  -webkit-transform: translate(-30%, -50%);
  -ms-transform: translate(-30%, -50%);
}

.cmshtml .mainimg .catch .h3 {
  font-weight: 700;
  text-shadow: 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF;
  font-size: 1.4em;
  margin-bottom: 10px;
  color: #222;
}

.cmshtml .mainimg .catch .p ,.cmshtml .mainimg .catch .rdplanetext{
  color: #222;
  text-shadow: 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF, 0 0 3px #FFF;
}

@media screen and (max-width: 800px) {
  .cmshtml .mainimg .catch {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    width: 100%;
  }
  .cmshtml .mainimg .catch .h3 {
    font-weight: 700;
    color: #0BA981;
    font-size: 1.2em;
    text-align: left;
    margin-bottom: 10px;
    color: #0BA981;
  }
  .cmshtml .mainimg .catch .p {
    color: #222;
  }
}

.cmshtml .to_telinquiry {
  position: relative;
  vertical-align: middle;
  background: rgba(255, 255, 255, 0.7);
  width: 880px;
  max-width: 100%;
  margin: 0 auto 60px;
  padding: 48px 8px;
  border-radius: 10px 10px;
  text-align: center;
  overflow: hidden;
  border: 2px solid #0BA981;
  box-shadow: 0 5px 10px -3px rgba(0, 0, 0, 0.35);
}

.cmshtml .to_telinquiry h2 {
  padding: 0 0 8px;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
  border-radius: 10px 10px 0 0;
}

.cmshtml .to_telinquiry h2.cttl {
  color: #0BA981;
  font-size: 26px;
  font-size: 1.625rem;
  padding-top: 15px;
  padding-bottom: 15px;
  border-bottom: 1px dashed #0BA981;
}

.cmshtml .to_telinquiry address {
  display: inline-block;
  color: #000;
  font-family: 'Noto Sans JP','Roboto', Helvetica Neue, Helvetica, YuGothic, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo;
  font-size: 38px;
  font-size: 2.375rem;
  font-style: normal;
  font-weight: 400;
  position: relative;
}

.cmshtml .to_telinquiry address .h-subnav__tel__title {
  font-size: 20px;
  font-size: 1.25rem;
  margin-right: 8px;
  font-weight: 400;
}

.cmshtml .to_telinquiry .to_bt {
  margin-bottom: 0px;
  margin-top: 30px;
}

@media screen and (max-width: 800px) {
  .cmshtml .to_telinquiry {
    width: 100%;
  }
  .cmshtml .to_telinquiry .left, .cmshtml .to_telinquiry .il {
    width: 100%;
    padding: 0 20px;
    float: none;
    margin-bottom: 10px;
  }
  .cmshtml .to_telinquiry .right, .cmshtml .to_telinquiry .ir {
    width: 100%;
  }
  .cmshtml .to_telinquiry .right img, .cmshtml .to_telinquiry .ir img {
    width: auto;
  }
}

.cmshtml .schedule-box {
  display: flex;
  justify-content: space-between;
  padding: 0px 1% 20px;
  border-radius: 10px;
  position: relative;
  /*年間行事*/
  /*行事の中身*/
}

@media screen and (max-width: 800px) {
  .cmshtml .schedule-box {
    display: block;
  }
}

.cmshtml .schedule-box.day_section {
  padding-top: 30px;
  /*一日の流れ*/
  /*一日の中身*/
}

.cmshtml .schedule-box.day_section .sch-left {
  width: 46%;
  border-radius: 10px;
  background: #ECF5E8;
  border: 28px solid #ECF5E8;
  position: relative;
  padding: 15px 0px 15px 120px;
}

.cmshtml .schedule-box.day_section .sch-left::before {
  content: "";
  width: 3px;
  height: 100%;
  background: #ddd;
  margin-left: -2px;
  display: block;
  position: absolute;
  border-radius: 15px;
  left: 120px;
}

@media screen and (max-width: 959px) {
  .cmshtml .schedule-box.day_section .sch-left::before {
    left: 106px;
  }
}

@media screen and (max-width: 800px) {
  .cmshtml .schedule-box.day_section .sch-left {
    width: 96%;
    margin-left: 2%;
  }
}

.cmshtml .schedule-box.day_section .sch-left .h2 {
  font-size: 20px;
  font-size: 1.25rem;
  background: #0BA981;
  color: #fff;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  font-weight: 700;
  text-align: center;
  line-height: 60px;
  position: absolute;
  left: -38px;
  top: -58px;
}

.cmshtml .schedule-box.day_section .about_flow_li {
  position: relative;
}

.cmshtml .schedule-box.day_section .about_flow_li .time {
  font-weight: bold;
  background: #FBB731;
  padding: 5px 20px;
  line-height: 1.5;
  position: absolute;
  color: #fff;
  top: -5px;
  left: -120px;
  border-radius: 99px;
  z-index: 100;
}

@media screen and (max-width: 800px) {
  .cmshtml .schedule-box.day_section .about_flow_li .time {
    top: -2px;
  }
}

.cmshtml .schedule-box.day_section .about_flow_li .time::after {
  content: "";
  border-style: solid;
  border-width: 5px 0 5px 14px;
  border-color: transparent transparent transparent #FBB731;
  position: absolute;
  top: 50%;
  left: 98%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.cmshtml .schedule-box.day_section .about_flow_li:not(:last-child) {
  margin-bottom: 28px;
}

.cmshtml .schedule-box.day_section .txt, .cmshtml .schedule-box.day_section .rdplanetext {
  padding-left: 74px;
  osition: relative;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  color: #0BA981;
  margin-bottom: 5px;
}

@media screen and (max-width: 959px) {
  .cmshtml .schedule-box.day_section .txt, .cmshtml .schedule-box.day_section .rdplanetext {
    padding-left: 40px;
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

@media screen and (max-width: 800px) {
  .cmshtml .schedule-box.day_section .txt, .cmshtml .schedule-box.day_section .rdplanetext {
    font-size: 16px;
    font-size: 1rem;
  }
}

.cmshtml .schedule-box.day_section .txt::before, .cmshtml .schedule-box.day_section .txt::after, .cmshtml .schedule-box.day_section .rdplanetext::before, .cmshtml .schedule-box.day_section .rdplanetext::after {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
}

.cmshtml .schedule-box.day_section .txt::before, .cmshtml .schedule-box.day_section .rdplanetext::before {
  width: 9px;
  height: 9px;
  margin-top: -4px;
  background: #0BA981;
  border-radius: 50%;
  left: -5px;
}

@media screen and (max-width: 959px) {
  .cmshtml .schedule-box.day_section .txt::before, .cmshtml .schedule-box.day_section .rdplanetext::before {
    left: -19px;
  }
}

.cmshtml .schedule-box.day_section .txt::after, .cmshtml .schedule-box.day_section .rdplanetext::after {
  border-bottom: 2px dotted #0BA981;
  position: absolute;
  width: 30px;
  left: 30px;
}

@media screen and (max-width: 959px) {
  .cmshtml .schedule-box.day_section .txt::after, .cmshtml .schedule-box.day_section .rdplanetext::after {
    width: 20px;
    left: 0;
  }
}

@media screen and (max-width: 800px) {
  .cmshtml .schedule-box.year_section .sch-left {
    width: 100%;
    margin-bottom: 30px;
  }
}

.cmshtml .schedule-box.year_section .sch-left > div {
  border-bottom: 1px dashed #0BA981;
  width: 480px;
  padding-left: 10px;
  max-width: calc(100% - 40px);
  display: flex;
  align-items: center;
}

@media screen and (max-width: 800px) {
  .cmshtml .schedule-box.year_section .sch-left > div {
    width: auto;
  }
}

.cmshtml .schedule-box.year_section .sch-right.img_unit {
  width: 320px;
  margin-left: 40px;
}

@media screen and (max-width: 800px) {
  .cmshtml .schedule-box.year_section .sch-right.img_unit {
    width: 100%;
    display: flex;
    margin-left: 0px;
    justify-content: space-between;
  }
}

.cmshtml .schedule-box.year_section .sch-right.img_unit > div {
  text-align: center;
  margin-bottom: 20px;
  margin-left: 20px;
  font-weight: bold;
  font-size: 15px;
  font-size: 0.9375rem;
}

.cmshtml .schedule-box.year_section .sch-right.img_unit > div:nth-child(2n) {
  margin: 0 20px 20px 0;
}

.cmshtml .schedule-box.year_section .sch-right.img_unit > div img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
}

@media screen and (max-width: 800px) {
  .cmshtml .schedule-box.year_section .sch-right.img_unit > div {
    width: 49%;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

.cmshtml .schedule-box .about_event_li .event_dt {
  background: #0BA981;
  display: block;
  width: 45px;
  height: 45px;
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
  color: #fff;
  line-height: 45px;
  border-radius: 99em;
  margin-right: 10px;
  margin-bottom: 8px;
  margin-top: 8px;
  position: relative;
}
/*
.cmshtml .schedule-box .about_event_li .event_dt::after {
  content: "月";
}*/

.cmshtml .schedule-box .about_event_li .event_dd {
  margin: 6px 20px 6px 0;
  font-size: 18px;
  font-size: 1.125rem;
  position: relative;
  padding-left: 1.25em;
}

.cmshtml .schedule-box .about_event_li .event_dd::before {
  position: absolute;
  content: "";
  border-radius: 50%;
  width: 7px;
  top: 10px;
  left: 0.25em;
  height: 7px;
  background: #0BA981;
}

.cmshtml .schedule-box.year_section .sch-left > div:nth-child(2n) {
  margin-left: 40px;
  border-color: #FBB731;
}

.cmshtml .schedule-box.year_section .sch-left > div:nth-child(2n) .event_dt {
  background: #FBB731;
  letter-spacing: 0;
}

.cmshtml .schedule-box.year_section .sch-left > div:nth-child(2n) .event_dd::before {
  background: #FBB731;
}

.cmshtml .hd_message {
  display: flex;
  overflow: hidden;
}

@media screen and (max-width: 800px) {
  .cmshtml .hd_message {
    flex-direction: column-reverse;
  }
}

.cmshtml .hd_message .txt_area {
  padding-left: 30px;
  background: #0BA981;
  width: 50%;
  padding-bottom: 30px;
  padding-top: 30px;
}

@media screen and (max-width: 800px) {
  .cmshtml .hd_message .txt_area {
    width: 86%;
    margin: -30px auto 30px;
    position: relative;
  }
  .cmshtml .hd_message .txt_area::before {
    content: "";
    background: #0BA981;
    transform: skewX(-6deg);
    width: 106%;
    height: 100%;
    position: absolute;
    top: 0;
    left: -3%;
    z-index: -1;
    border-radius: 5px;
  }
}

.cmshtml .hd_message .txt_area * {
  color: #fff;
}

.cmshtml .hd_message .txt_area .belong {
  margin-bottom: 30px;
}

.cmshtml .hd_message .txt_area .name_text1 {
  font-size: 15px;
  font-size: 0.9375rem;
  display: block;
}

.cmshtml .hd_message .txt_area .name_text2 {
  font-size: 20px;
  font-size: 1.25rem;
  display: block;
  font-weight: 700;
}

.cmshtml .hd_message .imgwrap, .cmshtml .hd_message .rdplaneimage {
  margin-left: auto;
  width: 50%;
  position: absolute;
  right: 0;
  bottom: 0;
}

@media screen and (max-width: 800px) {
  .cmshtml .hd_message .imgwrap, .cmshtml .hd_message .rdplaneimage {
    width: 100%;
    position: relative;
    z-index: -1;
  }
}

.cmshtml .hd_message .imgwrap img, .cmshtml .hd_message .rdplaneimage img {
  height: 100%;
  position: relative;
  display: block;
}

.cmshtml .hd_message::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  height: 100%;
  width: 60px;
  background: linear-gradient(to top left, transparent 50%, #0BA981 50%) bottom left/100% 100% no-repeat;
}

@media screen and (max-width: 800px) {
  .cmshtml .hd_message::after {
    display: none !important;
  }
}

.cmshtml .rijicho {
  width: 30% !important;
  height: auto;
}

@media screen and (max-width: 800px) {
  .cmshtml .rijicho {
    width: 50% !important;
    display: block;
    margin: 0 auto 20px !important;
  }
}

.cmshtml .contactbox .contact_item_input input[type="text"], .cmshtml .contactbox .contact_item_input input[type="tel"], .cmshtml .contactbox .contact_item_input input[type="email"], .cmshtml .contactbox .contact_item_input input[type="date"] {
  padding: 5px;
  height: auto;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

.cmshtml .contactbox .contact_item_input input[type="text"]:focus, .cmshtml .contactbox .contact_item_input input[type="tel"]:focus, .cmshtml .contactbox .contact_item_input input[type="email"]:focus, .cmshtml .contactbox .contact_item_input input[type="date"]:focus {
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
}

.cmshtml .contactbox dt.contact_item_title {
  background: rgba(236, 245, 232, 0.5);
}

@media screen and (max-width: 800px) {
  .cmshtml .contactbox .dibox table {
    min-width: 0;
  }
  .cmshtml .contactbox .tb_box1 {
    width: 100%;
  }
}

.cmshtml .contactbox input.fm-txt, .cmshtml .contactbox select, .cmshtml .contactbox .fm-texa {
  margin-bottom: 5px;
  padding: 4px;
  height: auto;
  background-color: #eee;
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #ccc;
}

.cmshtml .contactbox input.fm-txt.zipcode, .cmshtml .contactbox select.zipcode, .cmshtml .contactbox .fm-texa.zipcode {
  width: 40%;
}

.cmshtml .contactbox input.fm-txt.bday, .cmshtml .contactbox select.bday, .cmshtml .contactbox .fm-texa.bday {
  width: 28%;
}

.cmshtml .contactbox input.fm-txt:focus, .cmshtml .contactbox select:focus, .cmshtml .contactbox .fm-texa:focus {
  outline: none;
  border-color: #0BA981;
  background: #fff;
}

.cmshtml .contactbox input.fm-chk,
.cmshtml .contactbox input.fm-rad {
  margin-bottom: 10px;
}

.cmshtml .contactbox label {
  display: inline-block;
  margin: 0 5px;
}

.cmshtml .contactbox td {
  padding-bottom: 5px;
}

@media screen and (max-width: 800px) {
  .cmshtml .contactbox th {
    width: 100%;
    display: list-item;
    list-style: none;
    text-align: left;
    color: #000;
    border-bottom: none;
  }
  .cmshtml .contactbox td {
    width: 100%;
    display: list-item;
    list-style: none;
    background: #fff;
  }
  .cmshtml .contactbox td p {
    margin-bottom: 10px;
  }
  .cmshtml .contactbox th {
    font-weight: bold;
  }
}

.cmshtml .contactbox .to-submit input, .cmshtml .contactbox .to-submit button {
  padding: 10px;
  border-radius: 5px;
  width: 100%;
  background: #ddd;
  color: #0BA981;
  border: 2px solid #ddd;
  font-weight: bold;
  cursor: pointer;
}

.cmshtml .contact_btn_area input {
  background: #0BA981;
  color: #fff;
  font-weight: 700;
  border: none;
  border-radius: 3px;
  padding: 10px 30px;
}

.cmshtml .hissu:before {
  margin-right: 1em;
  content: "*";
  color: #F00;
  position: relative;
  top: 50%;
  left: 1em;
  font-weight: bold;
}

.cmshtml .to-submit #submit,
.cmshtml .to-submit #reset {
  margin: 0 auto 1px;
  padding: 1em 3em;
  display: block;
}

.cmshtml .to-submit #submit {
  margin-bottom: 1em;
  padding: 20px 3em;
  border: none;
  background: #666;
  color: #fff;
  font-weight: bold;
}

.cmshtml .to-submit #reset,
.cmshtml .to-submit #back {
  margin-bottom: 1em;
  padding: 1em 3em;
  border: 1px solid #ccc;
  background: #fff;
  color: #666;
  letter-spacing: 0.3em;
  font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.cmshtml #submit:hover,
.cmshtml #reset:hover,
.cmshtml #back:hover {
  background: #0ed3a1;
  cursor: pointer;
  color: #fff;
}

.cmshtml .widebg {
  background: #f3ecd8;
  text-align: center;
  padding: 2em 0 1em;
}

.cmshtml .widebg #submit {
  width: auto;
}

.cmshtml .lb-nav a.lb-next,
.cmshtml .lb-nav a.lb-prev {
  background-size: 50px;
}

.cmshtml .top_news {
  background: #F3F3F3;
  padding-top: calc(30px + 3vw);
  padding-bottom: calc(30px + 3vw);
  position: relative;
}

.cmshtml .top_news .flex_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.cmshtml .top_news .h2 {
  width: 27%;
  margin-bottom: 1em;
  padding-right: 20px;
}

@media screen and (max-width: 800px) {
  .cmshtml .top_news .h2 {
    width: 100%;
  }
}

.cmshtml .top_news .top_news__wrap {
  width: 73%;
  display: flex;
  flex-direction: column;
  max-height: 320px;
  overflow: auto;
}

@media screen and (max-width: 800px) {
  .cmshtml .top_news .top_news__wrap {
    width: 100%;
  }
}

.cmshtml .top_news .top_news__wrap .rdnewArticle {
  border: none;
  padding-left: 0;
  padding-right: 0;
  border-top: 1px dotted #666666;
}

.cmshtml .top_news .top_news__wrap .rdnewArticle .rdnewArticle-contWrap {
  display: flex;
  width: 100%;
}

.cmshtml .top_news .top_news__wrap .rdnewArticle .rdnewArticle-item {
  border-bottom: 1px dotted #666666;
  padding: 20px 0;
  display: flex;
  border-top: none;
}

.cmshtml .top_news .top_news__wrap .rdnewArticle .rdnewArticle-item .rdnewArticle-ContDate {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0;
  color: #4F6B27;
  font-weight: 500;
  width: 130px;
  flex-shrink: 1;
}

.cmshtml .top_news .top_news__wrap .rdnewArticle .rdnewArticle-item .rdnewArticle-ContTitle {
  width: calc(100% - 130px);
  font-size: 16px;
  font-size: 1rem;
  flex-shrink: 1;
}

.cmshtml .top_news .top_news__wrap .rdnewArticle .rdnewArticle-item .rdnewArticle-ContTitle a {
  display: block;
  position: relative;
  text-decoration: none;
  padding-right: 42px;
}

.cmshtml .top_news .top_news__wrap .rdnewArticle .rdnewArticle-item .rdnewArticle-ContTitle a::before {
  content: "";
  box-sizing: border-box;
  width: 4px;
  height: 4px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  border: 4px solid transparent;
  border-left: 4px solid #fff;
  border-left-color: #0BA981;
  border-left-width: 6px;
  left: auto;
  right: 0;
}

.cmshtml .top_contents {
  margin-left: auto;
  margin-right: auto;
  padding-top: 40px;
  padding-top: 60px;
  display: flex;
  flex-flow: row nowrap;
  background: url("../img/wako_bg3.png") repeat-y center top 30px;
  position: relative;
  overflow: hidden;
}

.cmshtml .top_contents::before {
  content: "";
  position: absolute;
  width: 1596px;
  max-width: 98%;
  left: 50%;
  top: 30px;
  height: 100%;
  transform: translateX(-50%);
}

@media screen and (max-width: 1600px) {
  .cmshtml .top_contents {
    background-size: 100% auto;
  }
}

@media screen and (max-width: 800px) {
  .cmshtml .top_contents {
    background-image: url("../img/wako_bg3_sp.png");
  }
}

.cmshtml .top_contents > div {
  background: #fff;
}

.cmshtml .top_contents .imgwrap, .cmshtml .top_contents .rdplaneimage {
  width: 100%;
}

.cmshtml .top_contents .imgwrap img, .cmshtml .top_contents .rdplaneimage img {
  border-radius: 10px;
  width: 100%;
}

.cmshtml .top_contents .h2 {
  margin-bottom: -10px;
  transform: translateY(-27px);
  color: #0BA981;
  font-weight: 700;
  font-size: clamp(18px, 2.5vw, 20px);
  border-radius: 0 10px 0 0;
  padding: 10px 40px 10px 25px;
  position: relative;
  display: inline-block;
  background: url("../img/arrow1.png") no-repeat right 14px center, #fff url("../img/ico02.png") no-repeat left center;
  background-size: 12px 9px, 16px auto;
}

.cmshtml .top_contents .txt, .cmshtml .top_contents .rdplanetext {
  font-size: 15px;
  font-size: 0.9375rem;
  padding:0 1rem;
}

.cmshtml .top_contents a {
  text-decoration: none;
}

.cmshtml .top_contents.grid4 {
  display: grid;
  grid-template: auto/repeat(4, 1fr);
  gap: 30px 2vw;
  padding-left: 10%;
  padding-right: 10%;
}

@media screen and (max-width: 1320px) {
  .cmshtml .top_contents.grid4 {
    padding-left: 4%;
    padding-right: 4%;
  }
}

@media screen and (max-width: 1240px) {
  .cmshtml .top_contents.grid4 {
    grid-template: auto/repeat(2, 1fr);
    gap: 30px 4vw;
  }
}

.cmshtml .top_contents.grid4 > div {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto;
  position:relative;
  border-radius:10px;
}

@media screen and (max-width: 480px) {
  .cmshtml .top_contents.grid4 {
    grid-template: auto/repeat(1, 1fr);
  }
}

.cmshtml .gaiyou {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-top: 1px solid #ddd;
}

.cmshtml .gaiyou > div:nth-child(2n-1) {
  width: 10em;
  font-weight: 700;
  position: relative;
  background: #f5f8fa;
  padding: 1.14286em 1.42857em;
  border-bottom: 1px solid #ddd;
  border-right: 1px dashed #ddd;
}

.cmshtml .gaiyou > div:nth-child(2n) {
width: calc(100% - 10em);
padding: 1.14286em 1.42857em;
background: #fff;
border-bottom: 1px solid #ddd;
}

@media screen and (max-width: 800px) {
  .cmshtml .gaiyou > div:nth-child(2n-1) {
    border-right: none;
  }
  .cmshtml .gaiyou > div:nth-child(1n) {
    width: 100%;
  }
}

.cmshtml .ablock a {
  display: block !important;
}

.cmshtml .flex-blnk {
  border: none !important;
  box-shadow: none !important;
  background: none !important;
}

.cmshtml .flex-blnk::before, .cmshtml .flex-blnk::after {
  display: none !important;
}

.cmshtml .anchor__list {
  display: grid;
  grid-template: auto/repeat(2, 1fr);
  gap: 1em 1px;
}

.cmshtml .anchor__list::before, .cmshtml .anchor__list::after {
  display: none !important;
}

@media screen and (max-width: 800px) {
  .cmshtml .anchor__list {
    grid-template: auto/repeat(1, 1fr);
    gap: 1px;
  }
}

.cmshtml .anchor__list.grid3 {
  grid-template: auto/repeat(3, 1fr);
}

@media screen and (max-width: 800px) {
  .cmshtml .anchor__list.grid3 {
    grid-template: auto/repeat(1, 1fr);
  }
}

.cmshtml .anchor__list.grid4 {
  grid-template: auto/repeat(4, 1fr);
}

@media screen and (max-width: 800px) {
  .cmshtml .anchor__list.grid4 {
    grid-template: auto/repeat(2, 1fr);
  }
}

@media screen and (max-width: 480px) {
  .cmshtml .anchor__list.grid4 {
    grid-template: auto/repeat(1, 1fr);
  }
}

.cmshtml .anchor__list.grid5 {
  grid-template: auto/repeat(5, 1fr);
}

@media screen and (max-width: 800px) {
  .cmshtml .anchor__list.grid5 {
    grid-template: auto/repeat(2, 1fr);
  }
}

@media screen and (max-width: 480px) {
  .cmshtml .anchor__list.grid5 {
    grid-template: auto/repeat(1, 1fr);
  }
}

.cmshtml .anchor__list > div {
  max-width: 100%;
  line-height: 1.5;
  border: 1px solid #0BA981;
  background: #0BA981;
  font-weight: 700;
  color: #fff;
  /*display: flex;
  align-items: center;
  text-align: center;*/
  position: relative;
}
.cmshtml .anchor__list > div > div {
width: 100%;
}

.cmshtml .anchor__list > div div::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 71;
  background: rgba(255,255,255,0.8);
  background-repeat: no-repeat;
  background-position: center left;
  content: "";
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
}

.cmshtml .anchor__list > div a {
  display: block;
  color: #fff;
  line-height: 1.5;
  text-decoration: none;
  padding: 1em 1em 1em 2em;
  transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  position: relative;
  z-index: 1;
}

.cmshtml .anchor__list > div a:before {
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 12px;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
}

@media screen and (min-width: 801px) {
  .cmshtml .anchor__list > div.onhover a, .cmshtml .anchor__list > div:hover a {
    color: #0BA981;
  }
  .cmshtml .anchor__list > div.onhover a:before, .cmshtml .anchor__list > div:hover a:before {
    border-color: #0BA981;
  }
  .cmshtml .anchor__list > div.onhover:before, .cmshtml .anchor__list > div:hover:before {
    border-color: #0BA981;
  }
  .cmshtml .anchor__list > div.onhover div::after, .cmshtml .anchor__list > div div:hover::after {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    background-size: 35px auto;
  }
}

.cmshtml .dl_list_text {
  flex-wrap: wrap;
  display: flex;
  padding: 10px 0 10px;
}

.cmshtml .dl_list_text .dl_list_text_title {
  padding: 12px 0 12px 20px;
  position: relative;
}

.cmshtml .dl_list_text .dl_list_text_title::before {
  margin: auto;
  position: absolute;
  content: "";
  width: 5px;
  height: 30px;
  background: #0BA981;
  top: 0;
  bottom: 0;
  left: 0;
  border-radius: 9px;
  transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}

.cmshtml .dl_list_text_btn a {
display: inline-block;
padding: 8px 24px 8px 24px;
text-align: center;
background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ddd));
background: -webkit-linear-gradient(top, #fff, #ddd);
background: -o-linear-gradient(top, #fff, #ddd);
background: linear-gradient(to bottom, #fff, #ddd);
color: #1F1813;
border: #bbb 1px solid;
border-radius: 2px;
text-decoration: none;
-webkit-transition: all 0.6s;
-o-transition: all 0.6s;
transition: all 0.6s;
position: relative;
}

.cmshtml .dl_list_text_btn a:before {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 8px;
margin: auto;
width: 31px;
height: 36px;
z-index: 1;
border-radius: 0;
}
.cmshtml .dl_list_text_btn a::after {
content: "";
position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -2px;
  width: 4px;
  height: 4px;
  border-top: 1px solid #666;
  border-right: 1px solid #666;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cmshtml .dl_list_text_btn a[href*=".pdf"], .cmshtml .dl_list_text_btn a[href*=".doc"], .cmshtml .dl_list_text_btn a[href*=".docx"], .cmshtml .dl_list_text_btn a[href*=".xls"], .cmshtml .dl_list_text_btn a[href*=".xlsx"], .cmshtml .dl_list_text_btn a[href*=".zip"] {
  padding: 8px 24px 8px 48px;
}

.cmshtml .dl_list_text_btn a[href*=".pdf"]:before {
background: url("../img/icon-pdf-m.svg") no-repeat left center;
background-size: 100% auto;
}

.cmshtml .dl_list_text_btn a[href*=".doc"]:before, .cmshtml .dl_list_text_btn a[href*=".docx"]:before {
  background: url("../img/icon-word-m.svg") no-repeat left center;
background-size: 100% auto;
}

.cmshtml .dl_list_text_btn a[href*=".xls"]:before, .cmshtml .dl_list_text_btn a[href*=".xlsx"]:before {
  background: url("../img/icon-xcel-m.svg") no-repeat left center;
background-size: 100% auto;
}

.cmshtml .dl_list_text_btn a[href*=".zip"]:before {
  background: url("../img/zip.png") no-repeat left center;
background-size: 100% auto;
}

.cmshtml .fullsize {
  text-align: center;
}

.cmshtml .fullsize img {
  width: 100vw;
  max-width: 100vw;
  margin: 0 calc(50% - 50vw);
}

.cmshtml .openbox {
  width: 100%;
  position: relative;
  background-color: #f3ecd8;
  border-radius: 5px 5px 0 0;
  padding: 12px 40px 12px 20px;
  border-bottom: 1px solid #0BA981;
  cursor: pointer;
}

.cmshtml .openbox::before {
  content: "";
  width: 26px;
  height: 26px;
  position: absolute;
  top: 14px;
  right: 14px;
  background: url("../img/h4.png") no-repeat center;
  background-size: contain;
  cursor: pointer;
}

.cmshtml .openbox::after {
  position: absolute;
  content: '';
  width: 2px;
  height: 0px;
  background-color: #fff;
  transition: all .5s ease;
  top: 26px;
  right: 26px;
}

.cmshtml .openbox.open::after {
  height: 14px;
  top: 20px;
}

@media screen and (max-width: 800px) {
  .cmshtml .openbox {
    padding-right: 32px;
    padding-left: 15px;
  }
  .cmshtml .openbox::before {
    right: 8px;
  }
  .cmshtml .openbox::after {
    right: 20px;
  }
}

.cmshtml .dot_txt > div {
  padding-left: 20px !important;
  position: relative;
}

.cmshtml .dot_txt > div::before {
  content: "";
  position: absolute;
  left: 0;
  top: calc(0.45em + 0px);
  width: 0.8em;
  height: 0.8em;
  border-radius: 50%;
  background: #0BA981;
}

.cmshtml .dot_txt2 > div {
  padding-left: 20px !important;
  position: relative;
}

.cmshtml .dot_txt2 > div::before {
  content: "";
  position: absolute;
  left: 0;
  top: calc(0.45em + 0px);
  width: 0.8em;
  height: 0.8em;
  border-radius: 50%;
  background: #FBB731;
}

.cmshtml .ol-list {
  counter-reset: item;
  position: relative;
  padding-bottom: 1.5em;
  padding-left: 0;
}

.cmshtml .ol-list::before, .cmshtml .ol-list::after {
  display: none;
}

.cmshtml .ol-list .ol-list_li {
  list-style-type: none;
  padding: 0.5em 0;
  position: relative;
  padding-left: 80px;
  margin-top: 11px;
  margin-bottom: 11px;
}

.cmshtml .ol-list .ol-list_li:before {
  position: absolute;
  left: 0px;
  top: 0;
  font-family: 'Roboto', Helvetica Neue, Helvetica, YuGothic, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo;
  font-weight: 700;
  letter-spacing: 0;
  font-size: 22px;
  font-size: 1.375rem;
  width: 60px;
  height: 60px;
  line-height: 60px;
  background: #fbb731;
  color: #fff;
  text-align: center;
  flex-shrink: 1;
  counter-increment: item;
  content: counter(item) "";
  display: inline-block;
  box-sizing: border-box;
  border-radius: 50%;
  padding-left: 32px;
}

.cmshtml .ol-list .ol-list_li:after {
  position: absolute;
  left: 5px;
  top: 19px;
  font-family: 'Roboto', Helvetica Neue, Helvetica, YuGothic, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo;
  font-weight: 700;
  letter-spacing: 0.5px;
  font-size: 13px;
  font-size: 0.8125rem;
  width: 60px;
  height: 60px;
  color: #fff;
  flex-shrink: 1;
  display: inline-block;
  box-sizing: border-box;
  content: "STEP";
}

.cmshtml .rdtable .rdtableTable {
  border-collapse: collapse;
  border-top-width: 0px;
}
.cmshtml .rdtable .rdtableTable th {
background: #ECF5E8;
padding: 10px 1.42857em;
border-bottom: 1px solid #ddd;
border-right: 1px solid #ddd;
line-height: 1.5;
letter-spacing: 0;
}
.cmshtml .rdtable .rdtableTable td {
background: #fff;
padding: 10px 1.42857em;
border-bottom: 1px solid #ddd;
border-right: 1px solid #ddd;
line-height: 1.5;
letter-spacing: 0;
}

@media screen and (max-width: 576px) {
  .cmshtml .rdplanetext, .cmshtml .rdplanetext2 {
    /* responsiv table block */
  }
  .cmshtml .rdplanetext.scrl_tb, .cmshtml .rdplanetext.scrtable, .cmshtml .rdplanetext2.scrl_tb, .cmshtml .rdplanetext2.scrtable {
    overflow: auto;
  }
  .cmshtml .rdplanetext.scrl_tb .table table, .cmshtml .rdplanetext.scrtable .table table, .cmshtml .rdplanetext2.scrl_tb .table table, .cmshtml .rdplanetext2.scrtable .table table {
    min-width: 576px;
  }
  .cmshtml .rdplanetext.scrl_tb .table table tr, .cmshtml .rdplanetext.scrtable .table table tr, .cmshtml .rdplanetext2.scrl_tb .table table tr, .cmshtml .rdplanetext2.scrtable .table table tr {
    display: table-row !important;
    width: auto;
  }
  .cmshtml .rdplanetext.scrl_tb .table table tr td, .cmshtml .rdplanetext.scrl_tb .table table tr th, .cmshtml .rdplanetext.scrtable .table table tr td, .cmshtml .rdplanetext.scrtable .table table tr th, .cmshtml .rdplanetext2.scrl_tb .table table tr td, .cmshtml .rdplanetext2.scrl_tb .table table tr th, .cmshtml .rdplanetext2.scrtable .table table tr td, .cmshtml .rdplanetext2.scrtable .table table tr th {
    display: table-cell;
    width: auto;
  }
  .cmshtml .rdplanetext.block_tb .table table tr td, .cmshtml .rdplanetext.block_tb .table table tr th, .cmshtml .rdplanetext.blocktable .table table tr td, .cmshtml .rdplanetext.blocktable .table table tr th, .cmshtml .rdplanetext2.block_tb .table table tr td, .cmshtml .rdplanetext2.block_tb .table table tr th, .cmshtml .rdplanetext2.blocktable .table table tr td, .cmshtml .rdplanetext2.blocktable .table table tr th {
    width: 100% !important;
  }
}

.cmshtml .rdplanetext.half_tb .table table th, .cmshtml .rdplanetext.half_tb .table table td, .cmshtml .rdplanetext.blockhalf .table table th, .cmshtml .rdplanetext.blockhalf .table table td, .cmshtml .rdplanetext2.half_tb .table table th, .cmshtml .rdplanetext2.half_tb .table table td, .cmshtml .rdplanetext2.blockhalf .table table th, .cmshtml .rdplanetext2.blockhalf .table table td {
  width: 50%;
}

@media screen and (max-width: 576px) {
  .cmshtml .rdplanetext.half_tb .table table th, .cmshtml .rdplanetext.half_tb .table table td, .cmshtml .rdplanetext.blockhalf .table table th, .cmshtml .rdplanetext.blockhalf .table table td, .cmshtml .rdplanetext2.half_tb .table table th, .cmshtml .rdplanetext2.half_tb .table table td, .cmshtml .rdplanetext2.blockhalf .table table th, .cmshtml .rdplanetext2.blockhalf .table table td {
    width: 100% !important;
  }
}

.cmshtml .rdplanetext.borderb_tb .table table th, .cmshtml .rdplanetext.borderb_tb .table table td, .cmshtml .rdplanetext.table_borderbottom .table table th, .cmshtml .rdplanetext.table_borderbottom .table table td, .cmshtml .rdplanetext2.borderb_tb .table table th, .cmshtml .rdplanetext2.borderb_tb .table table td, .cmshtml .rdplanetext2.table_borderbottom .table table th, .cmshtml .rdplanetext2.table_borderbottom .table table td {
  border: none;
  border-bottom: 1px solid #ddd;
}

.cmshtml .rdplanetext.dl_tb a, .cmshtml .rdplanetext2.dl_tb a {
  text-indent: -999em;
  background-image: url(../img/download.png);
  background-repeat: no-repeat;
  background-position: center center;
  width: 30px;
  height: 30px;
  max-width: 100%;
  display: block;
  margin: 0 auto;
  position: relative;
}

.cmshtml .rdplanetext.dl_tb a[href*=".pdf"], .cmshtml .rdplanetext2.dl_tb a[href*=".pdf"] {
  background-image: url(../img/icon-pdf-m.png);
  background-size: 30px 30px;
}

.cmshtml .rdplanetext.dl_tb a[href*=".doc"], .cmshtml .rdplanetext.dl_tb a[href*=".docx"], .cmshtml .rdplanetext2.dl_tb a[href*=".doc"], .cmshtml .rdplanetext2.dl_tb a[href*=".docx"] {
  background-image: url(../img/icon-word-m.png);
  background-size: 30px 30px;
}

.cmshtml .rdplanetext.dl_tb a[href*=".xls"], .cmshtml .rdplanetext.dl_tb a[href*=".xlsx"], .cmshtml .rdplanetext2.dl_tb a[href*=".xls"], .cmshtml .rdplanetext2.dl_tb a[href*=".xlsx"] {
  background-image: url(../img/icon-xcel-m.png);
  background-size: 30px 30px;
}

.cmshtml .dl_tb .rdplanetext a, .cmshtml .dl_tb .rdplanetext2 a {
  text-indent: -999em;
  background-image: url(../img/download.png);
  background-repeat: no-repeat;
  background-position: center center;
  width: 30px;
  height: 30px;
  max-width: 100%;
  display: block;
  margin: 0 auto;
  position: relative;
}

.cmshtml .dl_tb .rdplanetext a[href*=".pdf"], .cmshtml .dl_tb .rdplanetext2 a[href*=".pdf"] {
  background-image: url(../img/icon-pdf-m.png);
  background-size: 30px 30px;
}

.cmshtml .dl_tb .rdplanetext a[href*=".doc"], .cmshtml .dl_tb .rdplanetext a[href*=".docx"], .cmshtml .dl_tb .rdplanetext2 a[href*=".doc"], .cmshtml .dl_tb .rdplanetext2 a[href*=".docx"] {
  background-image: url(../img/icon-word-m.png);
  background-size: 30px 30px;
}

.cmshtml .dl_tb .rdplanetext a[href*=".xls"], .cmshtml .dl_tb .rdplanetext a[href*=".xlsx"], .cmshtml .dl_tb .rdplanetext2 a[href*=".xls"], .cmshtml .dl_tb .rdplanetext2 a[href*=".xlsx"] {
  background-image: url(../img/icon-xcel-m.png);
  background-size: 30px 30px;
}

.cmshtml div.rdplanetext .table table th,
.cmshtml div.rdplanetext2 .table table th {
  background: #f3ecd8;
}

@media screen and (max-width: 800px) {
  .cmshtml .resp_tb table th {
    display: none;
  }
  .cmshtml .resp_tb table td {
    display: block;
    border: none;
  }
  .cmshtml .resp_tb table tr {
    border-bottom: solid thin #e6e6e6;
  }
  .cmshtml .resp_tb table a {
    padding-bottom: 0.1em;
    color: inherit;
    border-bottom: solid thin #0BA981;
    text-decoration: none;
  }
}

.cmshtml .rdplanetext.bd_tb figure.table table th, .cmshtml .rdplanetext.bd_tb figure.table table td, .cmshtml .rdplanetext2.bd_tb figure.table table th, .cmshtml .rdplanetext2.bd_tb figure.table table td {
  border-color: #ddd;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
}

@media screen and (max-width: 576px) {
  .cmshtml .rdflexarea.rev {
    flex-direction: column-reverse;
  }
}

/*contact*/

@media screen and (min-width: 577px) {
.cmshtml dl.contact_item_table {
display: flex;
flex-wrap: wrap;
}
.cmshtml dl.contact_item_table dt.contact_item_title {
width:30%;
}
.cmshtml dd.contact_item_input {
width:70%;
}

}

  /*contact-table-style*/
.cmshtml dl.contact_item_table {
  border: 1px solid #ddd;  
}

.cmshtml dl.contact_item_table dd.contact_item_input input[type="text"], .cmshtml dl.contact_item_table dd.contact_item_input input[type="tel"], .cmshtml dl.contact_item_table dd.contact_item_input input[type="email"], .cmshtml dl.contact_item_table dd.contact_item_input input[type="date"], .cmshtml dl.contact_item_table dd.contact_item_input input[type="file"], .cmshtml dl.contact_item_table dd.contact_item_input input[type="number"],
.cmshtml dl.contact_item_table dd.contact_item_input input select, .cmshtml dl.contact_item_table dd.contact_item_input input[type="text"] [name="img_auth"] {
  padding: 8px;
  height: auto;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 5px;
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  outline: none;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0.3);
}

.cmshtml dl.contact_item_table dd.contact_item_input input[type="text"]:focus, .cmshtml dl.contact_item_table dd.contact_item_input input[type="tel"]:focus, .cmshtml dl.contact_item_table dd.contact_item_input input[type="email"]:focus, .cmshtml dl.contact_item_table dd.contact_item_input input[type="date"]:focus, .cmshtml dl.contact_item_table dd.contact_item_input input[type="file"]:focus, .cmshtml dl.contact_item_table dd.contact_item_input input[type="number"]:focus,
.cmshtml dl.contact_item_table dd.contact_item_input input select:focus, .cmshtml dl.contact_item_table dd.contact_item_input input[type="text"] [name="img_auth"]:focus {
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
  box-shadow: none;
}

.cmshtml dl.contact_item_table dd.contact_item_input textarea {
  border-radius: 5px;
  box-shadow: none;
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  outline: none;
  border: none;
  border: 1px solid #ddd;
  padding: 12px;
}

.cmshtml dl.contact_item_table select {
  width: auto;
}

.cmshtml dl.contact_item_table .btn_contacts_post_api {
  margin-left: 8px;
}

@media screen and (max-width: 576px) {
  .cmshtml dl.contact_item_table .contact_checkbox_box div.contact_checkbox input[type="text"], .cmshtml dl.contact_item_table .contact_radio_box div.contact_radio input[type="text"] {
    margin-top: 8px;
    width: calc(100% - 1rem);
  }
}

.cmshtml dl.contact_item_table dt.contact_item_title {
  font-weight: 700;
  padding: 10px 10px 10px !important;
  border-bottom: 1px solid #ddd;
  background: rgba(236, 245, 232, 0.5);
}

.cmshtml dl.contact_item_table dt.contact_item_title:not(:first-child) {
  margin-top: 0;
}

.cmshtml dd.contact_item_input,
.cmshtml .contact_item_inside_input,
.cmshtml .contact_item_file_box {
  border-bottom: 1px solid #ddd;
  padding: 10px 20px !important;
}

.cmshtml .contact_item_inside_input,
.cmshtml .contact_item_inside_title.contact_inp_title_address2 {
  border: none !important;
}

.cmshtml div.rdcontact_btn_area {
  margin-bottom: 30px;
}

.cmshtml div.rdcontact_btn_area .rdcontact_btn_submit {
  background: #0BA981;
  border-radius: 99em;
  border: none;
}

.cmshtml div.rdcontact_btn_area .rdcontact_btn_submit:hover,
.cmshtml div.rdcontact_btn_area .rdcontact_btn_submit .rdcontact_btn_area .rdcontact_btn_submit:focus {
  background: rgba(11, 169, 129, 0.8);
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
}

.cmshtml .contact_item_inside_table {
  display: flex;
  flex-wrap: wrap;
  align-items: normal;
}

.cmshtml .contact_item_inside_table dt:last-child, .cmshtml .contact_item_inside_table dd:last-child {
  border-bottom: none;
}

.cmshtml .contact_item_inside_title {
  border-bottom: 1px solid #ddd;
  padding: 10px 0px !important;
}

.cmshtml .contact_header {
  margin-bottom: 10px;
}

.cmshtml .contact_footer {
  margin-top: 10px;
}

.cmshtml .blogcontents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 60px;
  /*記事ブロック：2並び*/
  /*date*/
}

.cmshtml .blogcontents .mainarea {
  width: 70%;
  margin-bottom: 60px;
}

.cmshtml .blogcontents .blogcommon {
  width: 27%;
  margin-bottom: 60px;
}

.cmshtml .blogcontents .rdListShort .rdListItem {
  box-shadow: none;
  border: none;
  margin-bottom: 40px;
  width: calc(50% - 40px);
  margin: 0 20px 20px 20px;
  /*本文のプレビュー 続きを読むまで*/
  /*カテゴリ*/
  /*タグ*/
}

.cmshtml .blogcontents .rdListShort .rdListItem .rdListImage {
  text-align: center;
}

.cmshtml .blogcontents .rdListShort .rdListItem .rdListImageItem {
  width: auto;
}

.cmshtml .blogcontents .rdListShort .rdListItem .rdListTitle {
  width: 100%;
  padding-right: 0px;
  padding-left: 0px;
}

.cmshtml .blogcontents .rdListShort .rdListItem .rdListCategory {
  width: 100%;
  padding-right: 0px;
  padding-left: 0px;
}

.cmshtml .blogcontents .rdListShort .rdListItem .rdListTag {
  width: 100%;
  padding-right: 0px;
  padding-left: 0px;
}

.cmshtml .blogcontents .rdListShort .rdListItem .rdListExcerpt {
  width: 100%;
  padding-right: 0px;
  padding-left: 0px;
  /*続きを読む*/
}

.cmshtml .blogcontents .rdListShort .rdListItem .rdListExcerpt .rdReadMore {
}

.cmshtml .blogcontents .rdListShort .rdListItem h3.rdarticleTitleText {
  border: none;
  position: relative;
  padding-bottom: 0;
}

.cmshtml .blogcontents .rdListShort .rdListItem h3.rdarticleTitleText a {
  text-decoration: none;
  display: block;
  padding-left: 10px;
}

.cmshtml .blogcontents .rdListShort .rdListItem h3.rdarticleTitleText a::after {
  content: "";
  width: 2px;
  height: 1.2em;
  background-color: #FBB731;
  position: absolute;
  background: -webkit-linear-gradient(135deg, #FBB731 0%, #0BA981 100%);
  background: -moz-linear-gradient(135deg, #FBB731 0%, #0BA981 100%);
  background: linear-gradient(135deg, #FBB731 0%, #0BA981 100%);
  top: 0.25em;
  left: 0;
}

.cmshtml .blogcontents .rdListShort .rdListItem .rdListImageItemDummy {
  display: none;
}

.cmshtml .blogcontents .rdListShort .rdListItem div.rdListCategory {
  position: static;
  width: 100%;
  margin-bottom: 0.5em;
  padding-right: 10px;
  padding-left: 10px;
}

.cmshtml .blogcontents .rdListShort .rdListItem div.rdListCategory a {
  text-decoration: none;
}

.cmshtml .blogcontents .rdListShort .rdListItem li.rdListCategoryItem {
  background-color: #0BA981;
  color: #FFF;
  border: none;
  padding: 2px 10px 0px;
  border-radius: 99px;
  font-size: 14px;
}

.cmshtml .blogcontents .rdListShort .rdListItem .ItemrdListTagListItem {
  border: 1px solid #0BA981;
  padding: 2px 10px 0;
  border-radius: 99px;
  background: none;
  color: #0BA981;
  font-size: 14px;
}

.cmshtml .blogcontents .rdListShort .rdListItem .ItemrdListTagListItem a {
  color: #0BA981;
  text-decoration: none;
}

.cmshtml .blogcontents .rdListShort .rdListItem.noimage {
  padding-left: 0;
}

.cmshtml .blogcontents .rdarticleTitle h3:before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0;
  width: 0px;
  height: 100%;
  background: -webkit-linear-gradient(#0BA981, #FBB731);
  background: -moz-linear-gradient(#0BA981, #FBB731);
  background: linear-gradient(#0BA981, #FBB731);
}

.cmshtml .blogcontents .rdpublishDate {
  color: #0BA981;
  font-size: 11px;
  letter-spacing: 0;
}

.cmshtml .blogmain_contents.blogcontents {
  margin-bottom: 60px;
}

.cmshtml .blogmain_contents.blogcontents .rdpublishDate {
  margin-bottom: 0;
}

  /*タイトル（リンク）*/
.cmshtml .blogmain_contents.blogcontents .rdarticleTitle h3 {
  font-size: clamp(18px, 2.5vw, 22px);
  border-bottom: 1px solid #ddd;
  position: relative;
  line-height: 1.5;
}

.cmshtml .blogmain_contents.blogcontents .rdarticleTitle h3::before {
  content: "";
}

.cmshtml .hov {
  transition:0.4s;
}
.cmshtml .hov:hover {
  -webkit-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  transform: translateY(-5px);
}

  /*ブログ共通部分カラー*/
  /*最新記事一覧*/
  /*月別アーカイブ*/
  /*ブログ内検索*/
  /*ブログカテゴリー*/
  /*ブログカレンダー*/
  /*タグリスト*/
  /*年アーカイブ*/

.cmshtml .blogcommon .rdblartlist .rdnewArticle {
  border: none;
}

.cmshtml .blogcommon .rdMonthlyArchive .rdMonthlyArchive-item:before {
  border-color: #0BA981;
}

.cmshtml .blogcommon .rdBlogSearch .rdBlogSearch-btn {
  background-color: #0BA981;
}

.cmshtml .blogcommon .rdCategorylist .rdCategorylist-link:after {
  border-left-color: #0BA981;
}

.cmshtml .blogcommon .rdCategorylist .rdCategorylist-link:hover {
  background: #f3ecd8;
  color: #0BA981;
}

.cmshtml .blogcommon .rdCalendar .rdCalendarTable-link {
  background: #0BA981;
}

.cmshtml .blogcommon .rdCalendar .rdCalendarTable-link:hover {
  background: #FBB731;
}

.cmshtml .blogcommon .rdTaglist .rdTaglist-link {
  background: #f3ecd8;
}

.cmshtml .blogcommon .rdTaglist .rdTaglist-link:after {
  background: #f3ecd8;
}

.cmshtml .blogcommon .rdTaglist .rdTaglist-link:before {
  background: #f3ecd8;
}

.cmshtml .blogcommon .rdTaglist .rdTaglist-link:hover {
  background: #0BA981;
}

.cmshtml .blogcommon .rdTaglist .rdTaglist-link:hover:before {
  background: #0BA981;
}

.cmshtml .blogcommon .rdTaglist .rdTaglist-link:hover:after {
  background: #0BA981;
}

.cmshtml .blogcommon .rdYearlyArchive-item .rdYearlyArchive-link {
  background: #FBB731;
  color: #fff;
  text-decoration: none;
  transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}

.cmshtml .blogcommon .rdYearlyArchive-item .rdYearlyArchive-link:hover {
  background: #0BA981;
}

@media screen and (max-width: 768px) {
  .cmshtml .blogcontents .mainarea {
    width: 100%;
    margin-bottom: 30px;
  }
  .cmshtml .blogcontents .blogcommon {
    width: 100%;
    margin-bottom: 30px;
  }
}

.cmshtml .cmsbody .rdListShort .rdListItem {
    width: 100%;
    border: none;
    padding: 20px;
    margin: 0;
    box-shadow: none;
}

#editView.showhideElement .cmshtml #navigation .drawer-dropdown-menu {
  display: block;
}

#editView.showhideElement .cmshtml .drawer-dropdown-menu {
  z-index: 100;
  display: block;
  width: 100%;
  padding: 0;
}

#editView.showhideElement .cmshtml .default_none, #editView.showhideElement .cmshtml .toggle-box .toggle-box_dd {
  display: block;
}

#editView.showhideElement .cmshtml #l-header {
  z-index: 9999;
}

#editView.showhideElement .cmshtml #l-header .h-nav__list {
  justify-content: space-between;
  padding-right: 0;
}

#editView.showhideElement .cmshtml #l-header .h-nav__list > div {
  flex-grow: 1;
}

#editView.showhideElement .cmshtml #l-header .drawer-dropdown-menu-item {
  font-size: 15px;
  font-size: 0.9375rem;
}

#editView.showhideElement .cmshtml [data-blocks="ドロップダウンメニュー"] ,
#editView.showhideElement .cmshtml [data-blocks="ドロップダウンエリア"] {
display: block;
}

#editView .cmshtml [data-aos=fade-up], #editView .cmshtml [data-aos=flip-left], #editView .cmshtml [data-aos=zoom-in-up] {
  transform: none;
  opacity: 1;
}

#editView .cmshtml .fade, #editView .cmshtml [data-aos^=fade] {
  opacity: 1;
}

#editView .cmshtml .forfixed {
  margin-top: 0;
}

#editView .cmshtml #h-logo {
  position: relative;
  top: 0px;
}

#editView .cmshtml .drawer-nav {
  overflow: visible;
}

#editView .cmshtml .h_nav {
  padding-top: 23px;
  height: auto;
}

#editView .cmshtml #l-header .headinner, #editView .cmshtml #l-header .h_nav__list {
  position: relative;
}

#editView .cmshtml .drawer-dropdown-menu {
  display: none;
  height: auto;
}

#editView .cmshtml .drawer-dropdown-menu .drawer-dropdown-menu_ul {
  padding: 0;
  display: block;
}

#editView .cmshtml .drawer-dropdown-menu .drawer-dropdown-menu_ul .drawer-dropdown-menu-item {
  width: 100%;
}
#editView .cmshtml [data-blocks="ドロップダウンメニュー"] ,
#editView .cmshtml [data-blocks="ドロップダウンエリア"] {
display: none;
}

#editView .cmshtml .drawer-dropdown-menu .drawer-dropdown-menu_ul .drawer-dropdown-menu-item a {
  padding: 10px 0px 10px 20px;
}

#editView .cmshtml .top-slide {
  max-height: 560px;
  overflow: auto;
}

#editView .cmshtml .top-slide .swiper-wrapper {
  padding-top: 23px;
  flex-wrap: wrap;
}

#editView .cmshtml .conceptstyle.rev {
  flex-direction: row-reverse;
}

#editView .cmshtml .conceptstyle .flex_row_inner {
  max-width: 100%;
  width: 100%;
}

#editView .cmshtml .top_news__wrap {
  max-height: none;
  overflow: visible;
  width: 100%;
  padding-top: 23px;
}

#editView .cmshtml .top_contents .contents_list .contents_li .title2 {
  position: relative;
}

#editView .cmshtml .conceptstyle .flex_txt {
  padding: 2vw;
}

#editView .cmshtml .swiper-wrapper {
  flex-wrap: wrap;
}

#editView .cmshtml .sec_carusel .wrap-carusel .swiper-slide [data-blocks="画像"] {
  margin: 5px;
}

#editView .cmshtml #section_pageHeader {
  padding-top: 23px;
}

#editView .cmshtml #section_pageHeader .headimg {
  position: relative;
}

#editView .cmshtml #section_pageHeader .headimg img {
  width: 100%;
  position: relative;
  background: none;
  z-index: 0;
  max-height: 400px;
}

#editView .cmshtml #section_pageHeader .head_inner {
  padding: 0;
}

#editView .cmshtml #section_pageHeader #title-wrap {
  width: 100%;
  position: relative;
  background: none;
}

#editView .cmshtml .title-navi {
  margin: 0 5%;
}

#editView .cmshtml .title-navi:empty {
  display: block !important;
}

#editView .cmshtml .toggle-box > div:nth-child(2n), #editView .cmshtml .faq > div:nth-child(2n) {
  display: block;
}

#editView .cmshtml .dl_list_text {
  justify-content: space-between;
}

#editView .cmshtml .day_list .text_area:last-child::after {
  content: none;
}

#editView .cmshtml .faq > div:nth-child(2n-1)::after {
  right: auto;
  transition: none;
}

#editView .cmshtml .cmshtml .fullsize img {
width: auto;
margin-left: 0;
margin-right: 0;
}

#editView .cmshtml .hidden {
  overflow: visible;
}

#editView .cmshtml .sponly {
  display: block;
}

#editView .cmshtml .swingbox, #editView .cmshtml .flipbox, #editView .cmshtml .fadebox, #editView .cmshtml .fadeinbox, #editView .cmshtml .bouncedownbox, #editView .cmshtml .bouncebox {
  opacity: 1;
}

  /*flexの中の幅を調整*/

#editView .cmshtml .flex_left,
#editView .cmshtml .flex_right,
#editView .cmshtml .edit_inner {
width: 100%!important;
max-width: 100%!important;
margin-left:0;
margin-right: 0;
}

  /*操作盤表示*/
#editView .cmshtml .section_concept,
#editView .cmshtml .title_wrap{
  padding-top: 23px;
}

#editView .cmshtml edit p {
  min-width: 3em;
}

#editView .cmshtml .rdareaItem edit {
  min-width: 3.6em;
}

#editView .cmshtml html {
  overflow-x: hidden;
  overflow-y: auto;
}

#editView .cmshtml .boxwrap4.direction_normal [data-blocks="画像"]{ 
width: 37%;
}

#editView .cmshtml .boxwrap4.direction_normal [data-blocks="テキストエリア"] {
width: 63%;
}

#editView .cmshtml .h-nav__list {
padding-left: 0;
}
#editView .cmshtml #navigation .drawer-dropdown-menu .ol {
padding:30px 8px ;
display: block;
}
#editView .cmshtml #navigation .drawer-dropdown-menu .ol [data-blocks="サブタイトル"] {
width:100%;
}
.cmshtml #navigation .drawer-dropdown-menu .li {
padding: 0;
} 


#editView .cmshtml .section-slide {
min-height: 80px;
margin-top: 90px;
overflow-x: hidden;
overflow-y: auto;
max-height: 600px;
}
#editView .cmshtml #topslide {
opacity: 1;
}
#editView .cmshtml .sp-slide {
position: relative;
}
#editView .cmshtml #topslide .sp-layer {
position: relative;
}
#editView .cmshtml .slider-pro img.sp-image, #editView .cmshtml .slider-pro img.sp-thumbnail {
max-width: 100%;
}
#editView .cmshtml .section_concept .img_area {
display: flex;
flex-wrap: wrap;
justify-content: center;
}
#editView .cmshtml .section_concept .img_area .circle {
position: relative;
    margin: 0;
    left: 0;
    top: 0;
}
#editView .cmshtml .section_concept .inner {
padding-bottom: 0;
}
#editView .cmshtml .top_news .flex_inner [data-blocks="タイトル画像"]{
width: 27%;
}
#editView .cmshtml .top_news .flex_inner [data-blocks="お知らせエリア"]{
width: 73%;
}
#editView .cmshtml .top_contents.grid4 {
padding-left: 2%;
padding-right: 2%;
}
#editView .top_contents .h2 {
transform: translateY(0px);
}
@media screen and (min-width: 1241px) {

#editView .cmshtml #l-footer [data-blocks="フッターナビ"]{
width: calc(100% - 350px);
}
#editView .cmshtml #l-footer [data-blocks="フッター右エリア"]{
width: 350px
}
#editView .cmshtml #l-footer .fnav #foot-navi {
width: 100%;
}
}

#editView .cmshtml #l-header {
height: auto;
}
#editView .cmshtml .sectionheader {
}
#editView .cmshtml .schedule-box.day_section .sch-left [data-blocks="午前午後"] {
position: absolute;
left: -58px;
top: -58px;
}
#editView .cmshtml .schedule-box.day_section .sch-left .h2 {
position: relative;
    left: 0;
    top: 0;
}
#editView .cmshtml .schedule-box.day_section [data-blocks="時間とテキスト"]{
margin-bottom: 10px;
padding-left:120px;
margin-left: -120px;
}

#editView .cmshtml .schedule-box.year_section [data-blocks="左エリア"]{
width: calc(100% - 320px);
}
#editView .cmshtml .schedule-box.year_section [data-blocks="右エリア"]{
width:320px;
}
#editView .cmshtml .schedule-box .about_event_li .event_dt {
width: auto;
}
#editView .cmshtml .schedule-box.year_section .sch-left .about_event_li {
display: flex;
align-items: center;
}
#editView .cmshtml .schedule-box.year_section .sch-left [data-blocks="月と予定"]{
width: 100%;
}
#editView .cmshtml .hd_message {
overflow: visible;
}
#editView .hd_message > div {
width: 50%;
}
#editView .cmshtml .hd_message .imgwrap, #editView .cmshtml .hd_message .rdplaneimage {
width: 100%;
height: 100%;
}
#editView .cmshtml .hd_message .imgwrap, #editView .cmshtml .hd_message [data-blocks="画像"]{
/*overflow: hidden;*/
}
#editView .cmshtml .mainimg .catch {
position: relative;
top: 0;
left: 0;
transform: translate(0);
-webkit-transform: translate(0);
width: 100%;
}
#editView .cmshtml .rdplanetitle h5 edit {
display: inline-block;
}
#editView .cmshtml .h-nav__item a {
padding-left: 0;
padding-right: 0;
}
#editView .cmshtml .panlist ul::before, #editView .cmshtml .rdBreadcrumbList::before {
max-width: 100%;
margin-left: 0;
margin-right: 0;
}



  /*customEnd*/