@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Lato&family=Libre+Baskerville&display=swap");

.cmshtml {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

.cmsbody {
  margin: 0;
}

.cmshtml p{
  margin: 0;
  padding: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;
  /* 1 */
  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;
}

.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 .cf, .cmshtml #header, .cmshtml .pageHeader, .cmshtml #main, .cmshtml #footer, .cmshtml #section_pageHeader, .cmshtml #title, .cmshtml .section-products, .cmshtml .section-offices, .cmshtml .section-news, .cmshtml .wrap-lineup, .cmshtml .inner, .cmshtml #title h2, .cmshtml .pagenav, .cmshtml .cap-l, .cmshtml .cap-l-t2, .cmshtml .cap-l-t3, .cmshtml .line-hr, .cmshtml .stepbox, .cmshtml .wrap-pro-unit02, .cmshtml #wrap-container, .cmshtml .to_bt, .cmshtml .cap-m, .cmshtml .cap-s, .cmshtml .boxwrap1, .cmshtml .boxwrap2, .cmshtml .boxwrap3, .cmshtml .to-buttonbox, .cmshtml .i1, .cmshtml .i2, .cmshtml .i3, .cmshtml .i4, .cmshtml .i5, .cmshtml .dibox, .cmshtml .dl-box1, .cmshtml .qabox, .cmshtml .cap-l-t2 h2, .cmshtml .boxwrap-w, .cmshtml .imgfull, .cmshtml .noline-hr, .cmshtml .dl-box1 dl, .cmshtml .to-bt2, .cmshtml .stepbox li, #editView .cmshtml li {
  zoom: 1;
}

.cmshtml .cf:before, .cmshtml #header:before, .cmshtml .pageHeader:before, .cmshtml #main:before, .cmshtml #footer:before, .cmshtml #section_pageHeader:before, .cmshtml #title:before, .cmshtml .section-products:before, .cmshtml .section-offices:before, .cmshtml .section-news:before, .cmshtml .wrap-lineup:before, .cmshtml .inner:before, .cmshtml #title h2:before, .cmshtml .pagenav:before, .cmshtml .cap-l:before, .cmshtml .cap-l-t2:before, .cmshtml .cap-l-t3:before, .cmshtml .line-hr:before, .cmshtml .stepbox:before, .cmshtml .wrap-pro-unit02:before, .cmshtml #wrap-container:before, .cmshtml .to_bt:before, .cmshtml .cap-m:before, .cmshtml .cap-s:before, .cmshtml .boxwrap1:before, .cmshtml .boxwrap2:before, .cmshtml .boxwrap3:before, .cmshtml .to-buttonbox:before, .cmshtml .i1:before, .cmshtml .i2:before, .cmshtml .i3:before, .cmshtml .i4:before, .cmshtml .i5:before, .cmshtml .dibox:before, .cmshtml .dl-box1:before, .cmshtml .qabox:before, .cmshtml .cap-l-t2 h2:before, .cmshtml .boxwrap-w:before, .cmshtml .imgfull:before, .cmshtml .noline-hr:before, .cmshtml .dl-box1 dl:before, .cmshtml .to-bt2:before, .cmshtml .stepbox li:before, #editView .cmshtml li:before, .cmshtml .cf:after, .cmshtml #header:after, .cmshtml .pageHeader:after, .cmshtml #main:after, .cmshtml #footer:after, .cmshtml #section_pageHeader:after, .cmshtml #title:after, .cmshtml .section-products:after, .cmshtml .section-offices:after, .cmshtml .section-news:after, .cmshtml .wrap-lineup:after, .cmshtml .inner:after, .cmshtml #title h2:after, .cmshtml .pagenav:after, .cmshtml .cap-l:after, .cmshtml .cap-l-t2:after, .cmshtml .cap-l-t3:after, .cmshtml .line-hr:after, .cmshtml .stepbox:after, .cmshtml .wrap-pro-unit02:after, .cmshtml #wrap-container:after, .cmshtml .to_bt:after, .cmshtml .cap-m:after, .cmshtml .cap-s:after, .cmshtml .boxwrap1:after, .cmshtml .boxwrap2:after, .cmshtml .boxwrap3:after, .cmshtml .to-buttonbox:after, .cmshtml .i1:after, .cmshtml .i2:after, .cmshtml .i3:after, .cmshtml .i4:after, .cmshtml .i5:after, .cmshtml .dibox:after, .cmshtml .dl-box1:after, .cmshtml .qabox:after, .cmshtml .cap-l-t2 h2:after, .cmshtml .boxwrap-w:after, .cmshtml .imgfull:after, .cmshtml .noline-hr:after, .cmshtml .dl-box1 dl:after, .cmshtml .to-bt2:after, .cmshtml .stepbox li:after, #editView .cmshtml li:after {
  content: "";
  display: table;
}

.cmshtml .cf:after, .cmshtml #header:after, .cmshtml .pageHeader:after, .cmshtml #main:after, .cmshtml #footer:after, .cmshtml #section_pageHeader:after, .cmshtml #title:after, .cmshtml .section-products:after, .cmshtml .section-offices:after, .cmshtml .section-news:after, .cmshtml .wrap-lineup:after, .cmshtml .inner:after, .cmshtml #title h2:after, .cmshtml .pagenav:after, .cmshtml .cap-l:after, .cmshtml .cap-l-t2:after, .cmshtml .cap-l-t3:after, .cmshtml .line-hr:after, .cmshtml .stepbox:after, .cmshtml .wrap-pro-unit02:after, .cmshtml #wrap-container:after, .cmshtml .to_bt:after, .cmshtml .cap-m:after, .cmshtml .cap-s:after, .cmshtml .boxwrap1:after, .cmshtml .boxwrap2:after, .cmshtml .boxwrap3:after, .cmshtml .to-buttonbox:after, .cmshtml .i1:after, .cmshtml .i2:after, .cmshtml .i3:after, .cmshtml .i4:after, .cmshtml .i5:after, .cmshtml .dibox:after, .cmshtml .dl-box1:after, .cmshtml .qabox:after, .cmshtml .cap-l-t2 h2:after, .cmshtml .boxwrap-w:after, .cmshtml .imgfull:after, .cmshtml .noline-hr:after, .cmshtml .dl-box1 dl:after, .cmshtml .to-bt2:after, .cmshtml .stepbox li:after, #editView .cmshtml li:after {
  clear: both;
}

.cmshtml img {
  -webkit-backface-visibility: hidden;
}

.cmshtml .arrow, .cmshtml .pagenav ul li:after, .cmshtml .block-listed p:before, .cmshtml .block-listed p:after, .cmshtml .block-listed dl:before, .cmshtml .block-listed dl:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.cmshtml .triangle, .cmshtml .block-listed p:after, .cmshtml .block-listed dl:after {
  content: "";
  box-sizing: border-box;
  width: 4px;
  height: 4px;
  top: 0;
  left:10px;
  bottom: 0;
  margin: auto;
  border: 4px solid transparent;
  border-left: 4px solid #fff;
}

.cmshtml .left, .cmshtml .il {
  float: left;
}

.cmshtml .right, .cmshtml .ir {
  float: right;
}

#editView .cmshtml .left {
  float: none;
}

#editView .cmshtml .right{
  float: none;
}

.cmshtml img[src*="analytics.global-websystem.net"] {
  display: none;
}

.cmshtml img[src*="spacer.gif"] {
  width: 1px;
  height: 1px;
}

.cmshtml {
  overflow-y: scroll;
  box-sizing: border-box;
}

.cmsbody, .cmshtml dl, .cmshtml dt, .cmshtml dd, .cmshtml ul, .cmshtml ol, .cmshtml li, .cmshtml pre, .cmshtml form, .cmshtml input, .cmshtml textarea, .cmshtml small, .cmshtml address, .cmshtml aside, .cmshtml blockquote, .cmshtml th, .cmshtml td {
  font-family: "游ゴシック","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN",'Roboto',Helvetica Neue, Helvetica,YuGothic, "メイリオ",Meiryo;
  color: #0C0C1E;
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 1px;
  margin: 0;
  box-sizing: border-box;
}

@media screen and (max-width: 680px) {
  .cmsbody, .cmshtml div, .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 p, .cmshtml small, .cmshtml address, .cmshtml aside, .cmshtml blockquote, .cmshtml th, .cmshtml td {
    font-size: 15px;
  }
}

.cmshtml h2, .cmshtml h3, .cmshtml h4, .cmshtml h5, .cmshtml dt, .cmshtml dd, .cmshtml li {
  /* 明朝settings start*/
  font-family: "游ゴシック","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN",'Roboto',Helvetica Neue, Helvetica,YuGothic, "メイリオ",Meiryo;
  color: #0C0C1E;
}

.cmsbody {
  line-height: 1.7;
}

.cmshtml ul {
  margin: 0;
  padding: 0;
}

.cmshtml li {
  list-style: none;
}

.cmshtml li img {
  vertical-align: bottom;
}

.cmshtml img {
  vertical-align: bottom;
}

.cmshtml #header, .cmshtml .pageHeader, .cmshtml #main, .cmshtml #footer, .cmshtml #section_pageHeader, .cmshtml #title, .cmshtml .section-products, .cmshtml .section-offices, .cmshtml .section-news, .cmshtml .wrap-lineup {
  margin: 0;
  padding: 0;
  position: relative;
}

.cmshtml .inner, .cmshtml #title h2, .cmshtml .pagenav, .cmshtml .cap-l, .cmshtml .cap-l-t2, .cmshtml .cap-l-t3, .cmshtml .line-hr, .cmshtml .stepbox, .cmshtml .wrap-pro-unit02 {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0;
  position: relative;
}

@media screen and (max-width: 680px) {
  .cmshtml .inner, .cmshtml #title h2, .cmshtml .pagenav, .cmshtml .cap-l, .cmshtml .cap-l-t2, .cmshtml .cap-l-t3, .cmshtml .line-hr, .cmshtml .stepbox, .cmshtml .wrap-pro-unit02 {
    width: 100%;
  }
}

.cmshtml #wrap-container, .cmshtml .to_bt, .cmshtml .cap-m, .cmshtml .cap-s, .cmshtml .boxwrap1, .cmshtml .boxwrap2, .cmshtml .boxwrap3, .cmshtml .to-buttonbox, .cmshtml .i1, .cmshtml .i2, .cmshtml .i3, .cmshtml .i4, .cmshtml .i5, .cmshtml .dibox, .cmshtml .dl-box1, .cmshtml .qabox {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0;
  position: relative;
}

@media screen and (max-width: 680px) {
  .cmshtml #wrap-container, .cmshtml .to_bt, .cmshtml .cap-m, .cmshtml .cap-s, .cmshtml .boxwrap1, .cmshtml .boxwrap2, .cmshtml .boxwrap3, .cmshtml .to-buttonbox, .cmshtml .i1, .cmshtml .i2, .cmshtml .i3, .cmshtml .i4, .cmshtml .i5, .cmshtml .dibox, .cmshtml .dl-box1, .cmshtml .qabox {
    width: 100%;
  }
}

.cmshtml #header {
  width: 100%;
  margin: 0 auto;
  position: relative;
  background-color: #004097;
  transition: all 0.3s;
  -webkit-backface-visibility: hidden;
}

.cmshtml #header * {
  transition: all 0.3s;
  -webkit-backface-visibility: hidden;
}

@media screen and (min-width: 1241px) {
  .cmshtml #header.fixed {
    width: 100%;
    height: 45px;
    padding-top: 0;
    background: #000;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100000000;
  }
  .cmshtml #header.fixed h1#logo a {
    margin-top: 5px;
    padding-top: 34px;
  }
  .cmshtml #header.fixed #navigation li {
    height: 45px;
  }
  .cmshtml #header.fixed #navigation li a {
    padding-top: 12px;
  }
}

@media screen and (max-width: 1240px) {
  .cmshtml .content-page #header {
    height: 100px;
  }
}

.cmshtml .scanc {
  padding-top: 77px;
  margin-top: -77px;
  position: absolute;
  top: 0px;
}

.cmshtml .slider-area {
  height: 100vh;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 1240px) {
  .cmshtml .slider-area {
    height: 100%;
  }
}

.cmshtml #topslide {
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 680px) {
  .cmshtml #topslide {
    height: auto;
  }
}

.cmshtml #main {
  padding-bottom: 80px;
}

.cmshtml .subpage #main {
  padding-top: 77px;
  padding-bottom: 80px;
}

.cmshtml #wrap-container {
  margin-top: 20px;
}

.cmshtml img {
  -webkit-backface-visibility: hidden;
}

.cmshtml a:link,
.cmshtml a:visited,
.cmshtml a:active {
  color: #0C0C1E;
}

.cmshtml a:hover {
  color: #004097;
}

@media screen and (max-width: 1240px) {
  .cmsbody {
    padding-top: 0;
  }
}

.cmshtml h1#logo {
  position: absolute;
  top: 0;
  left: 5%;
  width: 314px;
  height: 60px;
  z-index: 5;
}

@media screen and (max-width: 1240px) {
  .cmshtml h1#logo {
    z-index: 2;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml h1#logo {
    width: 229px;
  }
}

.cmshtml h1#logo a {
  padding-top: 60px;
  display: block;
  background: url(../img/logo.png) no-repeat 50% 100%;
  background-size: contain;
  -webkit-backface-visibility: hidden;
  height: 0;
  text-align: center;
  text-decoration: none;
  color: #111;
  font-size: 14px;
  z-index: 3;
  overflow: hidden;
}

@media screen and (max-width: 1240px) {
  .cmshtml h1#logo a {
    z-index: 1;
    background-size: contain;
  }
}

@media screen and (max-width: 1080px) {
  .cmshtml h1#logo a {
    margin:0;
  }
}

.cmshtml .globalmenu {
  padding: 0;
}

@media screen and (max-width: 1240px) {
  .cmshtml .globalmenu {
    display: block;
    padding: 30px 0;
  }
}

.cmshtml #navbar {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
}

#editView .cmshtml h1#logo{
  position: relative;
  padding:20px 0;
  height:0;
}

#editView .cmshtml #navbar{
  position: relative;
}

.cmshtml #navigation {
  margin: 0 auto 0;
  width: 100%;
  flex-grow: 1;
  display: flex;
  justify-content: center;
  flex-flow: row nowrap;
  background-color: rgba(255, 255, 255, 0.95);
}

.cmshtml #navigation li {
  text-align: center;
  line-height: 20px;
  position: relative;
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 0;
  margin: 0 20px;
}

.cmshtml #navigation li a[aria-expanded="true"] {
  color: #0C0C1E;
}

.cmshtml #navigation li a[aria-expanded="true"]:before {
  width: 100%;
  background: #004097;
}

.cmshtml #navigation li a {
  display: block;
  padding: 27px 1vw 27px 40px;
  box-sizing: border-box;
  font-weight: bold;
  position: relative;
  text-decoration: none;
}

.cmshtml #navigation li a:before {
  content: "";
  margin: auto;
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 16px;
  bottom: 0;
}

@media screen and (max-width: 1240px) {
  .cmshtml #navigation li a:after {
    content: none;
  }
}

.cmshtml #navigation li.hg-li01 a {
  padding-left: 80px;
}

.cmshtml #navigation li.hg-li01 a:before {
  width: 55px;
  height: 36px;
  background-image: url("../img/nav01.png");
}

.cmshtml #navigation li.hg-li02 a {
  padding-left: 69px;
}

.cmshtml #navigation li.hg-li02 a:before {
  width: 41px;
  height: 40px;
  background-image: url("../img/nav02.png");
}

.cmshtml #navigation li.hg-li03 a {
  padding-left: 68px;
}

.cmshtml #navigation li.hg-li03 a:before {
  width: 40px;
  height: 27px;
  background-image: url("../img/nav03.png");
}

.cmshtml #navigation li.hg-li04 a {
  padding-left: 66px;
}

.cmshtml #navigation li.hg-li04 a:before {
  width: 36px;
  height: 34px;
  background-image: url("../img/nav04.png");
}

.cmshtml #navigation li.hg-li05 a {
  padding-left: 69px;
}

.cmshtml #navigation li.hg-li05 a:before {
  width: 41px;
  height: 39px;
  background-image: url("../img/nav05.png");
}

.cmshtml #navigation li.hg-li06 a {
  padding-left: 51px;
}

.cmshtml #navigation li.hg-li06 a:before {
  width: 23px;
  height: 32px;
  background-image: url("../img/nav06.png");
}

.cmshtml #navigation li.hg-li06 a:after {
  content: none;
}

@media screen and (max-width: 1240px) {
  .cmshtml #navigation {
    display: block;
    height: auto;
    padding-top: 20px;
    padding-left: 10px;
  }
  .cmshtml #navigation li {
    width: 100%;
    height: auto;
    font-size: 13px;
    margin-bottom: 10px;
    display: block;
    text-align: left;
    margin: 0 0 10px;
  }
  .cmshtml #navigation li a {
    padding: 10px 10px 10px 77px !important;
    display: block;
    color: #0C0C1E;
  }
  .cmshtml #navigation li a:before {
    width: 41px !important;
  }
  .cmshtml #navigation li.contact {
    position: relative;
  }
  .cmshtml #navigation li.drawer-dropdown > a:after {
    content: "";
    position: absolute;
    display: inline-block;
    left: auto;
    right: 15px;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 5px;
    width: 5px;
    border-right: 1px solid #666;
    border-bottom: 1px solid #666;
    transform: rotate(45deg);
    z-index: 2;
  }
  .cmshtml #navigation li .drawer-dropdown.open > a:after {
    transform: rotate(-135deg);
  }
}

.cmshtml #navigation .drawer-dropdown-menu ol {
  padding: 0;
}

.cmshtml #navigation .drawer-dropdown-menu li {
  font-size: 13px;
  text-align: left;
  position: relative;
  margin-bottom: 0;
}

.cmshtml #navigation .drawer-dropdown-menu li a {
  padding: 15px 20px 15px 40px;
  display: block;
}

.cmshtml #navigation .drawer-dropdown-menu li:before {
  content: "";
  width: 14px;
  height: 14px;
  border-radius: 100%;
  position: absolute;
  left: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
  background: #004097;
}

.cmshtml #navigation .drawer-dropdown-menu li:after {
  content: "";
  width: 0;
  height: 0;
  border-left: 4px solid #fff;
  border-right: 4px solid transparent;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  position: absolute;
  left: 26px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.cmshtml .contact-bl {
  background-color: #004097;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end;
}

.cmshtml .contact-bl * {
  transition: all 0.3s ease;
}

.cmshtml .contact-bl .bt-form {
  width: 113px;
  line-height: 1.2;
  position: relative;
  background-color: #0058D0;
}

.cmshtml .contact-bl .bt-form a {
  font-size: 14px;
  height: 100%;
  padding-top: 60px;
  box-sizing: border-box;
  display: block;
  color: #fff;
  text-align: center;
  font-weight: bold;
  text-decoration: none;
  position: relative;
  z-index: 1;
}

.cmshtml .contact-bl .bt-form a:before {
  content: "";
  background: url("../img/ico-mail.png") no-repeat;
  width: 28px;
  height: 21px;
  display: inline-block;
  margin: auto;
  position: absolute;
  top: 34px;
  left: 0;
  right: 0;
}

.cmshtml .contact-bl .bt-form:after {
  content: "";
  width: 0;
  height: 100%;
  background-color: #2683FF;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.3s ease;
}

.cmshtml .contact-bl .bt-form:hover:after {
  width: 100%;
}

@media screen and (max-width: 1240px) {
  .cmshtml .contact-bl .bt-form {
    width: 100%;
  }
  .cmshtml .contact-bl .bt-form a {
    padding: 10px 10px 10px 70px;
  }
  .cmshtml .contact-bl .bt-form a br {
    display: none;
  }
  .cmshtml .contact-bl .bt-form a:before {
    left: 30px;
    right: auto;
    top: 0;
    bottom: 0;
  }
}

.cmshtml .telfax {
  max-width: 640px;
  margin: 18px 0;
  display: flex;
  flex-flow: row wrap;
  position: relative;
  background-color: #004097;
}

@media screen and (max-width: 1240px) {
  .cmshtml .telfax {
    width: 100%;
  }
}

.cmshtml .telfax:before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.44);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: inline-block;
}

@media screen and (max-width: 1240px) {
  .cmshtml .telfax:before {
    content: none;
  }
}

.cmshtml .telfax li {
  width: 50%;
  padding: 0 20px;
}

@media screen and (max-width: 1240px) {
  .cmshtml .telfax li {
    width: 100%;
  }
}

.cmshtml .telfax li img {
  max-width: 100%;
  height: auto;
}

.cmshtml .telfax li div {
  margin-top: 10px;
  color: #fff;
  font-size: 14px;
  text-align: center;
}

@media screen and (max-width: 1240px) {
  .cmshtml .telfax li p {
    font-size: 12px;
  }
}

.cmshtml .telfax li p .fax_dl {
  margin-left: 1em;
}

.cmshtml .telfax li.fax div.hour a {
  padding: 4px 38px 4px 10px;
  border-radius: 4px;
  display: inline-block;
  font-size: 15px;
  color: #004097;
  font-weight: bold;
  background: #fff;
  text-decoration: none;
  box-shadow: -3px -3px 0 rgba(138, 200, 248, 0.58) inset;
  position: relative;
}

.cmshtml .telfax li.fax div.hour a:after {
  content: "PDF";
  padding: 0 2px;
  height: 14px;
  font-size: 10px;
  line-height: 1.5;
  background-color: #000;
  color: #fff;
  display: inline-block;
  letter-spacing: 0;
  position: absolute;
  top: 0;
  right: 6px;
  bottom: 0;
  margin: auto;
}

.cmshtml .telfax li.tel div.hour {
  margin-top: 18px;
}

.cmshtml #section_pageHeader {
  margin: 0 auto;
}

.cmshtml .sp-slide .copy div {
  text-align: center;
  color: #fff;
  letter-spacing: 0;
}

.cmshtml .sp-slide .copy div.txt {
  font-size: 38px;
  font-weight: bold;
  margin-bottom: 10px;
}

@media screen and (max-width: 680px) {
  .cmshtml .sp-slide .copy div.txt {
    font-size: 36px;
  }
}

.cmshtml .sp-slide .copy div.subtxt {
  font-size: 27px;
}

@media screen and (max-width: 680px) {
  .cmshtml .sp-slide .copy div.subtxt {
    font-size: 25px;
  }
}

@media screen and (max-width: 1080px) {
  .cmshtml .sp-slide .copy {
    width: 100%;
    padding: 40px;
    background-size: cover;
  }
  .cmshtml .sp-slide .copy div.txt {
    font-size: 26px;
  }
  .cmshtml .sp-slide .copy div.subtxt {
    font-size: 15px;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml .sp-slide .copy p.txt {
    font-size: 2.6vh;
  }
  .cmshtml .sp-slide .copy p.subtxt {
    font-size: 2vh;
  }
}

.cmshtml #footer {
  clear: both;
  position: relative;
  padding: 50px 10% 5px;
  display: flex;
  flex-flow: row-reverse wrap;
  background: #004097;
}

@media screen and (max-width: 680px) {
  .cmshtml #footer {
    padding: 50px 2% 30px;
  }
}

.cmshtml #footer * {
  color: #fff;
}

.cmshtml #footer a {
  color: #fff;
}

.cmshtml #footer #copy {
  margin: 10px 0;
  clear: both;
  font-size: 13px;
  display: inline-block;
}

@media screen and (max-width: 680px) {
  .cmshtml #footer #copy {
    font-size: 11px;
  }
}

.cmshtml #footer .flink {
  width: 50%;
  display: flex;
  flex-basis: auto;
  justify-content: flex-end;
}

.cmshtml #footer .flink ul {
  padding: 0 0 0 1em;
}

.cmshtml #footer .flink ul li {
  font-size: 13px;
  margin-bottom: 0.5em;
  font-weight: bold;
  text-align: left;
  transition: all 0.3s ease;
}

.cmshtml #footer .flink ul li a {
  text-decoration: none;
}

.cmshtml #footer .flink ul li a:hover {
  opacity: 0.7;
}

.cmshtml #footer .flink ul li ul {
  padding-left: 1vw;
  padding-right: 0;
}

.cmshtml #footer .flink ul li ul li {
  font-weight: normal;
  padding-left: 1em;
  position: relative;
}

@media screen and (max-width: 680px) {
  .cmshtml #footer .flink ul li ul li {
    font-size: 11px;
  }
}

.cmshtml #footer .flink ul li ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}

.cmshtml #footer .info {
  width: 50%;
}

.cmshtml #footer .info .title {
  font-size: 14px;
  font-weight: bold;
}

@media screen and (max-width: 680px) {
  .cmshtml #footer .info .title {
    font-size: 12px;
  }
}

.cmshtml #footer .info .telfax {
  margin: 0 0 1.5em 0;
  padding-bottom: 1em;
  border-bottom: 1px solid #fff;
}

.cmshtml #footer .info .telfax:before {
  content: none;
}

.cmshtml #footer .info .telfax .fax .hour a {
  color: #004097;
  margin-left: 10px;
}

.cmshtml #footer .info .f-logo {
  margin-right: 1em;
  display: inline-block;
}

.cmshtml #footer .info .f-logo img {
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 680px) {
  .cmshtml #footer .info, .cmshtml #footer .flink {
    width: 100%;
  }
  .cmshtml #footer .info {
    margin-top: 30px;
  }
}

.cmshtml .gmap {
  height: 400px;
}

.cmshtml .gmap iframe {
  width: 100%;
  height: 100%;
}

.cmshtml #title-wrap {
  position: relative;
  padding-top: 185px;
}

#editView .cmshtml #title-wrap{
  padding-top: 0;
}

@media screen and (max-width: 1240px) {
  .cmshtml #title-wrap {
    padding-top: 0;
  }
}

.cmshtml #title {
  position: relative;
  padding-top: 3em;
  padding-bottom: 3em;
  z-index: 1;
  background-color: rgba(202, 202, 217, 0.3);
}

@media screen and (max-width: 1240px) {
  .cmshtml #title {
    padding-left: 5%;
    padding-right: 5%;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml #title {
    padding-top: 20px;
  }
}

.cmshtml #title h2 {
  margin: 0 auto 0;
  font-size: 32px;
  color: #004097;
  font-weight: 400;
  position: relative;
  letter-spacing: 0.1em;
  text-align: center;
}

@media screen and (max-width: 680px) {
  .cmshtml #title h2 {
    font-size: 30px;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml #title h2 {
    font-size: 24px;
  }
}

.cmshtml .title-navi {
  width: 100%;
  max-width: 1260px;
  margin: 30px auto 0;
  padding: 0;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

.cmshtml .title-navi li {
  width: 30%;
  margin: 0 20px 10px;
  overflow: hidden;
  background: #fff;
  border-bottom: 2px solid #004097;
  position: relative;
}

.cmshtml .title-navi li:before {
  content: "";
  width: 100px;
  height: 100px;
  border: 50px solid transparent;
  border-bottom-color: #004097;
  position: absolute;
  bottom: 0;
  left: -170px;
}

.cmshtml .title-navi li a {
  font-size: 16px;
  padding: 12px 30px;
  text-decoration: none;
  transition: all 0.6s;
  display: block;
  color: #004097;
  font-weight: bold;
  text-align: center;
}

@media screen and (max-width: 680px) {
  .cmshtml .title-navi li a {
    font-size: 14px;
  }
}

.cmshtml .title-navi li a:hover {
  color: #004097;
  background: #fff;
}

.cmshtml .title-navi li a:hover:after {
  border-color: #004097;
}

.cmshtml .title-navi li a:after {
  content: "";
  width: 6px;
  height: 6px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  right: 14px;
  top: 0;
  bottom: 0;
  margin: auto;
}

@media screen and (max-width: 680px) {
  .cmshtml .title-navi li a {
    padding: 4px 30px;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml .title-navi li {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

.cmshtml .pagenav {
  background: #fff;
}

.cmshtml .pagenav ul {
  margin-top: 15px;
  margin-left: 2%;
  float: right;
}

.cmshtml .pagenav ul li {
  font-size: 13px;
  padding-right: 15px;
  float: left;
  position: relative;
}

@media screen and (max-width: 680px) {
  .cmshtml .pagenav ul li {
    font-size: 11px;
  }
}

.cmshtml .pagenav ul li:after {
  left: auto;
  right: 3px;
  width: 3px;
  height: 3px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cmshtml .pagenav ul li:last-child:after {
  content: none;
}

.cmshtml .container {
  margin: 0 auto;
  padding: 20px 0 80px;
  max-width: 1080px;
}

.cmshtml .container.bg_gray {
  background-color: #004097;
}

@media screen and (max-width: 1080px) {
  .cmshtml .container {
    padding-right: 2%;
    padding-left: 2%;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml .container {
    padding: 0 2% 80px;
  }
}

.cmshtml .red {
  color: #FF0000;
}

.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 .bt-more {
  margin: 20px 0;
  text-align: right;
}

.cmshtml .bn-title .bt-more {
  margin: 20px 40px;
}

.cmshtml .bt-more * {
  transition: all 0.6s ease;
}

.cmshtml .bt-more p {
  display: inline-block;
  font-size: 14px;
  padding-right: 60px;
  position: relative;
  font-weight: bold;
  transition: all 0.3s ease;
  transform: translateX(-40px);
}

@media screen and (max-width: 680px) {
  .cmshtml .bt-more p {
    font-size: 12px;
  }
}

.cmshtml .bt-more p a {
  color: rgba(12, 12, 30, 0.66);
  display: block;
  text-decoration: none;
}

.cmshtml .bt-more p a:before {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 2px solid rgba(0, 64, 151, 0.66);
  border-bottom: 2px solid rgba(0, 64, 151, 0.66);
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  display: inline-block;
}

.cmshtml .bt-more p a:after {
  content: "";
  width: 50px;
  height: 2px;
  background-color: rgba(0, 64, 151, 0.66);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  display: inline-block;
}

.cmshtml .to_bt a {
  padding: 15px 60px;
  display: inline-block;
  background: #fff;
  color: #004097;
  border-radius: 10px;
  text-decoration: none;
  font-weight: bold;
  position: relative;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
  border: 1px solid #CACAD9;
  box-shadow: -3px -3px 0 rgba(138, 200, 248, 0.58) inset;
}

.cmshtml .to_bt a:hover {
  box-shadow: none;
  transform: translateY(3px);
}

@media screen and (max-width: 680px) {
  .cmshtml .to_bt.mail {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 10000;
    margin: 0;
  }
}

.cmshtml .to_bt.mail a {
  position: relative;
  background: #0058D0;
  padding: 20px 40px 20px 80px;
}

@media screen and (max-width: 680px) {
  .cmshtml .to_bt.mail a {
    width: 100%;
    padding: 20px 0px 20px 20px;
  }
}

.cmshtml .to_bt.mail a:before {
  content: "";
  background: url(../img/fix/bt-mail.svg) no-repeat 50% 50%;
  width: 23px;
  height: 15px;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 30px;
  bottom: 0;
  margin: auto;
}

.cmshtml .en {
  font-family: 'Libre Baskerville', serif;
  letter-spacing: 1.2px;
}

.cmshtml .section_primary {
  padding: 6vw  0 6vw 10%;
  margin: 0 auto;
  position: relative;
  display: block;
  overflow: hidden;
}

.cmshtml .section_primary:before {
  content: "";
  width: 30vw;
  height: 100%;
  background: url("../img/bg_lead.jpg") no-repeat 0 0;
  background-size: cover;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}

.cmshtml .section_primary .wrap-lead {
  position: relative;
}

.cmshtml .section_primary .wrap-lead .txt {
  padding-right: 43.5vw;
}

.cmshtml .section_primary .wrap-lead .img {
  width: 40.5vw;
  height: 262px;
  position: absolute;
  top: 0;
  right: 0;
}

.cmshtml .section_primary .wrap-lead .img img {
  width: 100%;
  min-width: 657px;
  height: auto;
}

.cmshtml .section_primary .wrap-lead h2 {
  font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
  font-size: 32px;
  letter-spacing: 0;
}

.cmshtml .section_primary .wrap-lead p {
  margin: 3em 0;
  line-height: 2.0;
}

.cmshtml .section_primary .wrap-reason {
  position: relative;
}

.cmshtml .section_primary .wrap-reason .txt {
  padding-right: 43.5vw;
  padding-top: 139px;
  position: relative;
}

.cmshtml .section_primary .wrap-reason .txt:before {
  content: "";
  background: url("../img/reason.png") no-repeat 0 0;
  width: 531px;
  height: 139px;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}

.cmshtml .section_primary .wrap-reason h2 {
  padding-top: 1em;
  position: relative;
  display: inline-block;
}

.cmshtml .section_primary .wrap-reason h2:before {
  content: "";
  width: 100%;
  height: 4px;
  background: #004097;
  position: absolute;
  top: 0;
  left: 0;
}

.cmshtml .section_primary .wrap-reason .img {
  width: 36.5vw;
  height: 262px;
  position: absolute;
  top: 139px;
  right: 0;
}

.cmshtml .section_primary .wrap-reason .img img {
  width: 100%;
  min-width: 657px;
  height: auto;
}

.cmshtml .section_primary .wrap-reason h2 {
  font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
  font-size: 32px;
  letter-spacing: 0;
}

.cmshtml .section_primary .wrap-reason p {
  margin: 3em 0;
  line-height: 2.0;
}

@media screen and (max-width: 680px) {
  .cmshtml .section_primary {
    padding: 50px 0 0 5%;
  }
  .cmshtml .section_primary:before {
    width: 14vw;
  }
  .cmshtml .section_primary .wrap-lead h2,
.cmshtml .section_primary .wrap-reason h2 {
    font-size: 24px;
  }
  .cmshtml .section_primary .wrap-lead .txt,
.cmshtml .section_primary .wrap-reason .txt {
    padding-right: 15.5vw;
  }
  .cmshtml .section_primary .wrap-lead .img,
.cmshtml .section_primary .wrap-reason .img {
    position: relative;
    top: 0;
  }
  .cmshtml .section_primary .wrap-lead .txt:before,
.cmshtml .section_primary .wrap-reason .txt:before {
    width: 100%;
    height: 19vw;
  }
  .cmshtml .section_primary .wrap-reason .txt {
    padding-top: 20vw;
  }
}

.cmshtml .section-products {
  background: #004097;
  display: flex;
  flex-flow: row wrap;
}

.cmshtml .section-products:before {
  content: "";
  width: 32%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/bg_productarea.jpg");
  background-size: cover;
  z-index: -1;
}

@media screen and (max-width: 680px) {
  .cmshtml .section-products:before {
    content: none;
  }
}

.cmshtml .section-products .title {
  width: 32%;
}

.cmshtml .section-products .title h2 {
  color: #fff;
  font-weight: bold;
  text-align: center;
  font-size: 32px;
  padding-left: 5%;
  margin-top: 123px;
}

.cmshtml .section-products .product-iconlist {
  width: 68%;
}

@media screen and (max-width: 680px) {
  .cmshtml .section-products .title {
    width: 100%;
  }
  .cmshtml .section-products .title h2 {
    margin-top: 1em;
    font-size: 22px;
  }
  .cmshtml .section-products .product-iconlist {
    width: 100%;
  }
}

.cmshtml .product-iconlist {
  display: flex;
  flex-flow: row wrap;
  max-width: 1080px;
  padding: 50px 0 50px 6vw;
}

.cmshtml .container .product-iconlist{
  padding: 0;
  justify-content: space-between;
}

@media screen and (max-width: 680px) {
  .cmshtml .product-iconlist {
    padding: 1em 0;
  }
}

.cmshtml .product-iconlist li {
  margin: 0 16px 16px 0;
  width: 265px;
  box-shadow: 6px 6px 0 rgba(255, 255, 255, 0.46);
  position: relative;
  background-color: #fff;
  transition: all 0.25s ease;
}

#editView .cmshtml .section-products .product-iconlist > div{
  margin: 0 16px 16px 0;
  width: 265px;
  box-shadow: 6px 6px 0 rgba(255, 255, 255, 0.46);
  position: relative;
  background-color: #fff;
  transition: all 0.25s ease;
}

#editView .cmshtml .section-products .product-iconlist > div img{
  width:100%;
  height:auto;
}

@media screen and (max-width: 1080px) {
  .cmshtml .product-iconlist li {
    width: 30%;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml .product-iconlist li {
    width: 46%;
    margin: 0 auto 1em;
  }
}

.cmshtml .product-iconlist li .imgbox {
  position: relative;
  z-index: 2;
}

.cmshtml .product-iconlist li .imgbox img {
  width: 100%;
  height: auto;
}

.cmshtml .product-iconlist li .bn-title {
  padding: 30px 10px;
  height: 175px;
  text-align: center;
  width: 100%;
  font-size: 20px;
  font-weight: bold;
  position: relative;
  line-height: 1.3;
  box-sizing: border-box;
}

@media screen and (max-width: 680px) {
  .cmshtml .product-iconlist li .bn-title {
    font-size: 18px;
  }
}

.cmshtml .product-iconlist li .bn-title:before {
  content: "";
  width: 84px;
  height: 71px;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
  margin: auto;
  display: inline-block;
}

.cmshtml .product-iconlist li .bn-title a {
  width: 100%;
  text-decoration: none;
  transition: all 0.3s ease;
}

.cmshtml .product-iconlist li .bn-title p {
  width: 100%;
  letter-spacing: 0;
  font-weight: bold;
}

.cmshtml .product-iconlist li .bn-title.tankan:before {
  background-image: url("../img/ico_tankan.png");
}

.cmshtml .product-iconlist li .bn-title.karigakoi {
  padding-top: 23px;
}

.cmshtml .product-iconlist li .bn-title.karigakoi:before {
  background-image: url("../img/ico_karigakoi.png");
}

.cmshtml .product-iconlist li .bn-title.kanagu {
  padding-top: 23px;
}

.cmshtml .product-iconlist li .bn-title.kanagu:before {
  background-image: url("../img/ico_kanagu.png");
}

.cmshtml .product-iconlist li .bn-title.kui:before {
  background-image: url("../img/ico_kui.png");
}

.cmshtml .product-iconlist li .bn-title.color {
  letter-spacing: -2px;
}

.cmshtml .product-iconlist li .bn-title.color:before {
  background-image: url("../img/ico_color.png");
}

.cmshtml .product-iconlist li .bn-title.teppan:before {
  background-image: url("../img/ico_teppan.png");
}

.cmshtml .product-iconlist li:hover {
  transform: translate(5px, 5px);
  box-shadow: none;
}

.cmshtml .product-iconlist li:hover .bn-title a {
  color: #004097;
}

.cmshtml .product-iconlist li:hover .bn-title .bt-more p {
  transform: translateX(0);
}

.cmshtml .section-offices {
  margin: 6vw auto;
  max-width: 1460px;
}

.cmshtml .section-offices .title h2 {
  font-size: 32px;
  font-weight: bold;
  color: #004097;
  text-align: center;
  margin-bottom: 1em;
}

@media screen and (max-width: 680px) {
  .cmshtml .section-offices .title h2 {
    font-size: 22px;
  }
}

.cmshtml .section-offices ul {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  border-top: 1px solid #CACAD9;
  border-left: 1px solid #CACAD9;
}

.cmshtml .section-offices ul li {
  width: 25%;
  position: relative;
  border-right: 1px solid #CACAD9;
  border-bottom: 1px solid #CACAD9;
}

@media screen and (max-width: 1080px) {
  .cmshtml .section-offices ul li {
    width: 50%;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml .section-offices ul li {
    width: 100%;
  }
}

.cmshtml .section-offices ul li * {
  transition: all 0.3s ease;
}

.cmshtml .section-offices ul li .mapbox {
  width: 100%;
  height: 256px;
}

.cmshtml .section-offices ul li .mapbox iframe {
  width: 100%;
  height: 100%;
}

.cmshtml .section-offices ul li .address {
  padding: 30px 10%;
  text-align: center;
}

.cmshtml .section-offices ul li .address .office-n {
  font-size: 24px;
  font-weight: bold;
  color: #004097;
}

@media screen and (max-width: 680px) {
  .cmshtml .section-offices ul li .address .office-n {
    font-size: 22px;
  }
}

.cmshtml .section-offices ul li .address a {
  color: #fff;
  text-decoration: none;
}

.cmshtml .section-offices ul li .address address {
  border-bottom: 1px solid #004097;
  margin-bottom: 10px;
  font-size: 15px;
  padding: 10px;
  font-style: normal;
}

@media screen and (max-width: 680px) {
  .cmshtml .section-offices ul li .address p {
    font-size: 13px;
  }
}

.cmshtml .section-offices ul li .address dl {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin-bottom: 0.3em;
}

.cmshtml .section-offices ul li .address dl dt {
  padding-right: 1em;
}

.cmshtml .section-offices ul li .address dl.hour dt, .cmshtml .section-offices ul li .address dl.hour dd {
  font-size: 15px;
}

@media screen and (max-width: 680px) {
  .cmshtml .section-offices ul li .address dl.hour dt, .cmshtml .section-offices ul li .address dl.hour dd {
    font-size: 13px;
  }
}

.cmshtml .section-offices ul li .address dl.tel dt, .cmshtml .section-offices ul li .address dl.fax dt {
  font-size: 15px;
  line-height: 2.0;
}

@media screen and (max-width: 680px) {
  .cmshtml .section-offices ul li .address dl.tel dt, .cmshtml .section-offices ul li .address dl.fax dt {
    font-size: 13px;
  }
}

.cmshtml .section-offices ul li .address dl.tel dd, .cmshtml .section-offices ul li .address dl.fax dd {
  font-size: 18px;
}

@media screen and (max-width: 680px) {
  .cmshtml .section-offices ul li .address dl.tel dd, .cmshtml .section-offices ul li .address dl.fax dd {
    font-size: 16px;
  }
}

.cmshtml .section-offices ul li:hover .imgbox {
  opacity: 0.8;
}

.cmshtml .section-news {
  margin: 0 auto 0;
  position: relative;
  background-color: #F3F6F9;
}

@media screen and (max-width: 1080px) {
  .cmshtml .section-news {
    padding: 0 2%;
  }
}

.cmshtml .section-news .inner {
  display: flex;
  flex-flow: row wrap;

}

.cmshtml .section-news .title {
  width: 100px;
}

.cmshtml .section-news .title h2 {
  margin-top: 30px;
  font-size: 24px;
  font-weight: bold;
}

@media screen and (max-width: 680px) {
  .cmshtml .section-news .title h2 {
    font-size: 22px;
  }
}

.cmshtml .section-news .section_carousel {
  width: calc(100% - 100px);
  padding: 2em 0;
  position: relative;
}

@media screen and (max-width: 1080px) {
  .cmshtml .section-news .section_carousel {
    height: auto;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml .section-news .title h2 {
    margin-top: 1em;
  }
  .cmshtml .section-news #info {
    width: 100%;
    height: 400px;
  }
}

#top-case-slide{
	height: 258px;
	overflow: auto;
	position: relative;
}

.cmshtml .news_dl {
  width: 100%;
  padding: 0 20px 26px;
  clear: both;
  display: flex;
  flex-flow: row wrap;
  position: relative;
}

.cmshtml .news_dl dt {
  font-family: 'Lato',"游ゴシック", sans-serif;
  font-weight: 400;
  width: 120px;
  display: inline-block;
  color: #004097;
  font-size: 15px;
}

.cmshtml .news_dl dd.txt {
  width: calc( 100% - 120px);
  font-size: 15px;
}
#editView .cmshtml .news_dl dd.txt{
  width: 100%;
}

.cmshtml .news_dl dd.txt img {
  float: right;
  margin: 0 5px 10px;
}

@media screen and (max-width: 1080px) {
  .cmshtml .news_dl {
    padding: 16px 2%;
    flex-flow: row wrap;
    justify-content: flex-start;
  }
  .cmshtml .news_dl dt {
    font-size: 12px;
  }
  .cmshtml .news_dl dd.txt {
    margin-top: 5px;
    width: 100%;
    font-size: 12px;
  }
}

.cmshtml #top-case-slide-wrap {
  margin: 20px auto 0;
}

.cmshtml #top-case-slide-wrap .swiper-slide {
  width: 100%;
}

.cmshtml .swiper-button-case-prev, .cmshtml .swiper-button-case-next {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 10;
  display: inline-block;
  cursor: pointer;
}

.cmshtml .swiper-button-case-prev {
  width: 12px;
  height: 12px;
  left: 0;
  right: auto;
}

.cmshtml .swiper-button-case-prev:before {
  content: "";
  width: 10px;
  height: 10px;
  border-left: 2px solid rgba(0, 0, 0, 0.25);
  border-bottom: 2px solid rgba(0, 0, 0, 0.25);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  left: 0;
}

.cmshtml .swiper-button-case-next {
  width: 12px;
  height: 12px;
  right: 0;
  left: auto;
}

.cmshtml .swiper-button-case-next:before {
  content: "";
  width: 10px;
  height: 10px;
  border-left: 2px solid rgba(0, 0, 0, 0.25);
  border-bottom: 2px solid rgba(0, 0, 0, 0.25);
  transform: rotate(-135deg);
  position: absolute;
  top: 0;
  left: 0;
}

.cmshtml .swiper-pagination-clickable .swiper-pagination-bullet {
  margin-right: 6px;
}

.cmshtml .wc_module {
  line-height: 1.8;
}

.cmshtml .cap_lv1 {
  margin: 40px 0 20px 0;
}

.cmshtml .cap_lv2 {
  margin: 20px 0 20px 0;
}

.cmshtml .cap_lv3 {
  margin: 20px 0 10px 0;
}

.cmshtml .fs_lv1 {
  font-size: 12px;
}

@media screen and (max-width: 680px) {
  .cmshtml .fs_lv1 {
    font-size: 10px;
  }
}

.cmshtml .fs_lv2 {
  font-size: 14px;
}

@media screen and (max-width: 680px) {
  .cmshtml .fs_lv2 {
    font-size: 12px;
  }
}

.cmshtml .fs_lv3 {
  font-size: 16px;
}

@media screen and (max-width: 680px) {
  .cmshtml .fs_lv3 {
    font-size: 14px;
  }
}

.cmshtml .fs_lv4 {
  font-size: 18px;
}

@media screen and (max-width: 680px) {
  .cmshtml .fs_lv4 {
    font-size: 16px;
  }
}

.cmshtml .fs_lv5 {
  font-size: 20px;
}

@media screen and (max-width: 680px) {
  .cmshtml .fs_lv5 {
    font-size: 18px;
  }
}

.cmshtml .fs_lv6 {
  font-size: 24px;
}

@media screen and (max-width: 680px) {
  .cmshtml .fs_lv6 {
    font-size: 22px;
  }
}

.cmshtml .fs_lv7 {
  font-size: 32px;
}

@media screen and (max-width: 680px) {
  .cmshtml .fs_lv7 {
    font-size: 30px;
  }
}

.cmshtml .cap-l, .cmshtml .cap-l-t2 h2, .cmshtml .cap-l-t3, .cmshtml .cap-m, .cmshtml .cap-s {
  margin: 8px auto 24px;
}

.cmshtml .cap-l {
  font-size: 20px;
  font-weight: 700;
  padding: 8px;
  text-align: center;
}

@media screen and (max-width: 680px) {
  .cmshtml .cap-l {
    font-size: 18px;
  }
}

.cmshtml .cap-l-t2 {
  margin: 24px auto 0;
  text-align: center;
}

.cmshtml .cap-l-t2 h2 {
  font-size: 32px;
  margin-top: 60px;
  text-align: center;
  display: block;
  position: relative;
  color: #0C0C1E;
}

@media screen and (max-width: 680px) {
  .cmshtml .cap-l-t2 h2 {
    font-size: 24px;
  }
}

.cmshtml .cap-l-t2 h2.c_sub {
  color: #0058D0;
}

.cmshtml .cap-l-t2 h2.c_m {
  color: #004097;
}

.cmshtml .cap-l-t2 h2.tal {
  text-align: left;
}

.cmshtml .cap-l-t2 .tel {
  font-size: 34px;
  line-height: 1.1;
  color: rgba(0, 64, 151, 0.7);
}

@media screen and (max-width: 680px) {
  .cmshtml .cap-l-t2 .tel {
    font-size: 32px;
  }
}

.cmshtml .cap-l-t2.clt2 h2 {
  font-weight: bold;
  color: #004097;
}

.cmshtml .cap-l-t2.clt2.c_01 h2:after {
  background-color: #0058D0;
}

.cmshtml .cap-l-t2.clt2.c_02 h2:after {
  background-color: #EED72F;
}

.cmshtml .cap-l-t2.clt2.c_03 h2:after {
  background-color: #DEDEDE;
}

.cmshtml .cap-l-t2.clt2.c_04 h2:after {
  background-color: #FFF4AC;
}

.cmshtml .cap-l-t2.clt3 h2 {
  padding: 30px 0 10px;
  position: relative;
  color: #0C0C1E;
}

.cmshtml .cap-l-t2.clt3:after {
  margin: auto;
  content: "";
  width: 80px;
  height: 5px;
  background: #004097;
  position: absolute;
  top: 50px;
  left: 0;
  right: 0;
  display: inline-block;
}

.cmshtml .cap-l-t3 {
  margin-top: 60px;
  background: rgba(243, 246, 249, 0.27);
}

.cmshtml .cap-l-t3 h2 {
  padding: 1em 1em 0 1em;
  margin-top: 0px;
  font-weight: 700;
  font-size: 20px;
}

@media screen and (max-width: 680px) {
  .cmshtml .cap-l-t3 h2 {
    font-size: 18px;
  }
}

.cmshtml .cap-l-t3 p {
  padding: 0 1em 1em 1em;
  margin-top: 8px;
  font-family: 'Libre Baskerville', serif;
  font-size: 12px;
  color: #004097;
}

@media screen and (max-width: 680px) {
  .cmshtml .cap-l-t3 h2 {
    width: 100%;
    font-size: 15px;
  }
  .cmshtml .cap-l-t3 p {
    width: 100%;
  }
}

.cmshtml .cap-m {
  margin: 60px auto 40px;
  position: relative;
  text-align: center;
}

.cmshtml .cap-m h3 {
  font-size: 24px;
  position: relative;
}

@media screen and (max-width: 680px) {
  .cmshtml .cap-m h3 {
    font-size: 20px;
    letter-spacing: 0;
  }
}

.cmshtml .cap-m.cm-1 {
  padding-top: 40px;
  margin-bottom: 40px;
}

.cmshtml .cap-m.cm-1 h3 {
  font-weight: bold;
  color: #004097;
}

.cmshtml .cap-m.cm-2 {
  text-align: left;
  border-bottom: 1px solid #004097;
  background: rgba(243, 246, 249, 0.27);
  padding: 16px;
  position: relative;
}

.cmshtml .cap-m.cm-2:before {
  content: "";
  width: 100%;
  height: 1px;
  background: #004097;
  position: absolute;
  top: -5px;
  left: 0;
  display: block;
}

.cmshtml .cap-m.cm-2 h3 {
  border: none;
  padding: 0;
  color: #004097;
}

.cmshtml .cap-m.cm-3 {
  text-align: left;
  background-color: #fff;
  box-shadow: 4px 4px 0 rgba(0, 64, 151, 0.3);
  border: 1px solid #cacad9;
}

.cmshtml .cap-m.cm-3 h3 {
  position: relative;
  padding: 10px 20px;
  color: #004097;
}

.cmshtml .cap-m.cm-3 h3:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  height: 100%;
  width: 5px;
  background: #004097;
}

.cmshtml .cap-m.cm-4 {
  text-align: left;
  background-color: #004097;
  overflow: hidden;
}

.cmshtml .cap-m.cm-4:before {
  content: "";
  width: 100px;
  height: 100px;
  border: 50px solid transparent;
  border-bottom-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  bottom: 0;
  left: -170px;
}

.cmshtml .cap-m.cm-4 h3 {
  padding: 8px  24px;
  font-size: 20px;
  position: relative;
  color: #fff;
}

@media screen and (max-width: 680px) {
  .cmshtml .cap-m.cm-4 h3 {
    font-size: 18px;
  }
}

.cmshtml .cap-s {
  margin-left: auto;
  margin-right: auto;
}

.cmshtml .cap-s h4 {
  font-size: 18px;
  font-weight: 700;
  position: relative;
}

@media screen and (max-width: 680px) {
  .cmshtml .cap-s h4 {
    font-size: 16px;
  }
}

.cmshtml .cap-s.cs-2 h4 {
  position: relative;
  padding-left: 14px;
  color: #004097;
}

.cmshtml .cap-s.cs-2 h4:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  height: 100%;
  width: 4px;
  background: #004097;
}

.cmshtml .cap-s.cs-3 h4 {
  display: inline-block;
  padding-bottom: 6px;
  border-bottom: 1px solid #004097;
}

.cmshtml .header-title {
  margin-top: 40px;
  margin-bottom: 120px;
  background-size: cover;
  position: relative;
  background-attachment: fixed;
  height: 24vw;
  min-height: 250px;
}

@media screen and (max-width: 680px) {
  .cmshtml .header-title {
    margin-bottom: 50px;
    background-size: 200%;
    background-size: cover;
    background-attachment: inherit;
  }
}

.cmshtml .header-title .bgimage {
  text-align: center;
  margin: auto;
  height: 100%;
  overflow: hidden;
}

.cmshtml .header-title .bgimage img {
  width: auto;
  height: 100%;
}

.cmshtml .boxwrap1, .cmshtml .boxwrap2, .cmshtml .boxwrap3, .cmshtml .to-buttonbox {
  margin: 15px auto 30px;
  padding: 0;
  position: relative;
  line-height: 2.2;
}

.cmshtml .boxwrap1.nrw, .cmshtml .nrw.boxwrap2, .cmshtml .nrw.boxwrap3, .cmshtml .nrw.to-buttonbox {
  padding: 0 10%;
}

@media screen and (max-width: 680px) {
  .cmshtml .boxwrap1.nrw, .cmshtml .nrw.boxwrap2, .cmshtml .nrw.boxwrap3, .cmshtml .nrw.to-buttonbox {
    padding: 0;
  }
}

.cmshtml .boxwrap2 {
  padding: 32px;
  border: 3px solid #0058D0;
  background: #fff;
  border-radius: 5px;
  line-height: 1.9;
}

.cmshtml .boxwrap2.bg {
  background-color: rgba(0, 64, 151, 0.06);
  border: 0;
}

.cmshtml .boxwrap2 .cap-m, .cmshtml .boxwrap2 .cap-s {
  margin: 0 0 10px 0;
}

.cmshtml .boxwrap3 img.il {
  margin-right: 24px;
}

@media screen and (max-width: 680px) {
  .cmshtml .boxwrap3 img.il {
    margin-right: 0;
  }
}

.cmshtml .boxwrap3 img.ir {
  margin-left: 24px;
}

@media screen and (max-width: 680px) {
  .cmshtml .boxwrap3 img.ir {
    margin-left: 0;
  }
}

.cmshtml .boxwrap-w {
  margin: 30px 0;
  padding: 0;
  position: relative;
  line-height: 1.9;
}

.cmshtml .boxwrap-w .cap-m {
  margin-top: 0;
}

.cmshtml .tar {
  text-align: right;
}

.cmshtml .tal {
  text-align: left;
}

.cmshtml .tac {
  text-align: center;
}

.cmshtml .imgfull {
  margin-bottom: 80px;
  text-align: center;
}

@media screen and (max-width: 1080px) {
  .cmshtml .imgfull {
    margin-bottom: 10px;
  }
  .cmshtml .imgfull img {
    max-width: 100%;
    height: auto;
  }
}

.cmshtml .ir {
  margin-left: 16px;
}

.cmshtml .il {
  margin-right: 16px;
}

@media screen and (max-width: 680px) {
  .cmshtml .ir, .cmshtml .il {
    width: 100%;
    height: auto;
    margin: 0 0 8px 0;
  }
}

.cmshtml .i1, .cmshtml .i2, .cmshtml .i3, .cmshtml .i4, .cmshtml .i5 {
  margin-bottom: 80px;
}

.cmshtml .i1 .in-wrap, .cmshtml .i2 .in-wrap, .cmshtml .i3 .in-wrap, .cmshtml .i4 .in-wrap, .cmshtml .i5 .in-wrap {
  display: flex;
  flex-flow: row wrap;
}

.cmshtml .i1 .in-wrap div, .cmshtml .i2 .in-wrap div, .cmshtml .i3 .in-wrap div, .cmshtml .i4 .in-wrap div, .cmshtml .i5 .in-wrap div {
  margin: 0 2% 0 0;
  padding: 0;
  text-align: center;
}

.cmshtml .i1 .in-wrap div figure, .cmshtml .i2 .in-wrap div figure, .cmshtml .i3 .in-wrap div figure, .cmshtml .i4 .in-wrap div figure, .cmshtml .i5 .in-wrap div figure {
  padding: 0;
  margin: 0;
}

.cmshtml .i1 .in-wrap div figure figcaption, .cmshtml .i2 .in-wrap div figure figcaption, .cmshtml .i3 .in-wrap div figure figcaption, .cmshtml .i4 .in-wrap div figure figcaption, .cmshtml .i5 .in-wrap div figure figcaption {
  font-size: 14px;
}

@media screen and (max-width: 680px) {
  .cmshtml .i1 .in-wrap div figure figcaption, .cmshtml .i2 .in-wrap div figure figcaption, .cmshtml .i3 .in-wrap div figure figcaption, .cmshtml .i4 .in-wrap div figure figcaption, .cmshtml .i5 .in-wrap div figure figcaption {
    font-size: 12px;
  }
}

.cmshtml .i1 .in-wrap div img, .cmshtml .i2 .in-wrap div img, .cmshtml .i3 .in-wrap div img, .cmshtml .i4 .in-wrap div img, .cmshtml .i5 .in-wrap div img {
  margin-bottom: 8px;
}

.cmshtml .no-borderradius .i1 .in-wrap, .cmshtml .no-borderradius .i2 .in-wrap, .cmshtml .no-borderradius .i3 .in-wrap, .cmshtml .no-borderradius .i4 .in-wrap, .cmshtml .no-borderradius .i5 .in-wrap {
  margin-right: -2%;
}

.cmshtml .no-borderradius .i1 .in-wrap div, .cmshtml .no-borderradius .i2 .in-wrap div, .cmshtml .no-borderradius .i3 .in-wrap div, .cmshtml .no-borderradius .i4 .in-wrap div, .cmshtml .no-borderradius .i5 .in-wrap div {
  float: left;
  margin-right: 1%;
}

.cmshtml .no-flexbox .i1 div, .cmshtml .no-flexbox .i2 div, .cmshtml .no-flexbox .i3 div, .cmshtml .no-flexbox .i4 div, .cmshtml .no-flexbox .i5 div {
  float: left;
}

.cmshtml .i1 {
  margin: 40px auto;
}

.cmshtml .i1 .i1div {
  width: 100%;
}

.cmshtml .i1 .i1div:nth-child(1n) {
  margin-right: 0;
}

.cmshtml .i1.btcap div img {
  margin-bottom: 0;
}

.cmshtml .i1.boxwrap-w {
  margin: 40px 0;
}

@media screen and (max-width: 1080px) {
  .cmshtml .i1div img {
    max-width: 100%;
    height: auto;
  }
}

.cmshtml .i2 {
  margin: 40px auto;
}

.cmshtml .i2 .i2div {
  width: 47.5%;
}

.cmshtml .i2 .i2div:nth-child(2n) {
  margin-right: 0;
}

.cmshtml .i2.btcap div img {
  margin-bottom: 0;
}

.cmshtml .i2.boxwrap-w {
  margin: 40px 0;
}

@media screen and (max-width: 1080px) {
  .cmshtml .i2div img {
    max-width: 100%;
    height: auto;
  }
}

.cmshtml .i3 {
  margin: 40px auto;
}

.cmshtml .i3 .i3div {
  width: 31.5%;
}

.cmshtml .i3 .i3div:nth-child(3n) {
  margin-right: 0;
}

.cmshtml .i3.btcap div img {
  margin-bottom: 0;
}

.cmshtml .i3.boxwrap-w {
  margin: 40px 0;
}

@media screen and (max-width: 1080px) {
  .cmshtml .i3div img {
    max-width: 100%;
    height: auto;
  }
}

.cmshtml .i4 {
  margin: 40px auto;
}

.cmshtml .i4 .i4div {
  width: 23.5%;
}

.cmshtml .i4 .i4div:nth-child(4n) {
  margin-right: 0;
}

.cmshtml .i4.btcap div img {
  margin-bottom: 0;
}

.cmshtml .i4.boxwrap-w {
  margin: 40px 0;
}

@media screen and (max-width: 1080px) {
  .cmshtml .i4div img {
    max-width: 100%;
    height: auto;
  }
}

.cmshtml .i5 {
  margin: 40px auto;
}

.cmshtml .i5 .i5div {
  width: 18.4%;
}

.cmshtml .i5 .i5div:nth-child(5n) {
  margin-right: 0;
}

.cmshtml .i5.btcap div img {
  margin-bottom: 0;
}

.cmshtml .i5.boxwrap-w {
  margin: 40px 0;
}

@media screen and (max-width: 1080px) {
  .cmshtml .i5div img {
    max-width: 100%;
    height: auto;
  }
}

.cmshtml .i2 .in-wrap div {
  margin-right: 5%;
  margin-bottom: 26px;
}

.cmshtml .i2 .in-wrap div.title {
  margin-right: 0;
  margin-bottom: 1px;
  background: #2683FF;
  color: #fff;
  padding: 10px;
  text-align: center;
}

.cmshtml .i2 .in-wrap div.movie {
  margin: 0;
}

.cmshtml .i2 .in-wrap div.movie iframe {
  width: 100%;
}

@media screen and (max-width: 680px) {
  .cmshtml .i2 .in-wrap div {
    width: 100%;
    margin-right: 0;
  }
}

.cmshtml .i3 .in-wrap div {
  margin-right: 2.75%;
  margin-bottom: 26px;
}

.cmshtml .i3 .in-wrap div.title {
  width: 100%;
  margin-right: 0;
  margin-bottom: 1px;
  background: #2683FF;
  color: #fff;
  padding: 10px;
  text-align: center;
}

.cmshtml .i3 .in-wrap div.movie {
  width: 100%;
  margin: 0;
}

.cmshtml .i3 .in-wrap div.movie iframe {
  width: 100%;
}

@media screen and (max-width: 680px) {
  .cmshtml .i3 .in-wrap div {
    width: 100%;
    margin-right: 0;
  }
}

.cmshtml .i3.dormitory-photo .in-wrap div figcaption {
  background: #F3F6F9;
  padding: 20px;
}

.cmshtml .i3.dormitory-photo .in-wrap div figcaption h4 {
  font-size: 14px;
  font-weight: bold;
  color: rgba(0, 64, 151, 0.7);
}

@media screen and (max-width: 680px) {
  .cmshtml .i3.dormitory-photo .in-wrap div {
    width: 100%;
    margin-right: 0;
  }
}

.cmshtml .i2.facility-photo .in-wrap div,
.cmshtml .i3.event-photo .in-wrap div {
  position: relative;
}

.cmshtml .i2.facility-photo .in-wrap div figcaption,
.cmshtml .i3.event-photo .in-wrap div figcaption {
  width: 84%;
  background: #fff;
  padding: 20px 0 20px 10%;
  transform: translate(20%, -40px);
  font-weight: bold;
  text-align: left;
  box-sizing: border-box;
}

.cmshtml .i2.facility-photo .in-wrap div figcaption h3,
.cmshtml .i3.event-photo .in-wrap div figcaption h3 {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 18px;
  color: #004097;
  position: relative;
}

@media screen and (max-width: 680px) {
  .cmshtml .i2.facility-photo .in-wrap div figcaption h3,
.cmshtml .i3.event-photo .in-wrap div figcaption h3 {
    font-size: 16px;
  }
}

.cmshtml .i2.facility-photo .in-wrap div figcaption h3:before,
.cmshtml .i3.event-photo .in-wrap div figcaption h3:before {
  content: "";
  width: 2px;
  height: 80%;
  background: #004097;
  position: absolute;
  left: -15px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.cmshtml .i2.facility-photo .in-wrap div figcaption p,
.cmshtml .i3.event-photo .in-wrap div figcaption p {
  font-size: 15px;
}

@media screen and (max-width: 680px) {
  .cmshtml .i2.facility-photo .in-wrap div figcaption p,
.cmshtml .i3.event-photo .in-wrap div figcaption p {
    font-size: 13px;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml .i2.facility-photo .in-wrap div,
.cmshtml .i3.event-photo .in-wrap div {
    width: 100%;
  }
}

.cmshtml .i5 .in-wrap div {
  margin-bottom: 10px;
}

@media screen and (max-width: 680px) {
  .cmshtml .i5 .in-wrap div .in-wrap .i5div {
    margin-right: 2%;
    margin-bottom: 8px;
    border: solid 1px #CACAD9;
    padding: 24px;
    width: 49%;
  }
  .cmshtml .i5 .in-wrap div .in-wrap .i5div:nth-child(2n) {
    margin-right: 0;
  }
}

.cmshtml .i4 .in-wrap div {
  margin-right: 2%;
  margin-bottom: 20px;
}

@media screen and (max-width: 680px) {
  .cmshtml .i4 .in-wrap div {
    margin-right: 2%;
    margin-bottom: 8px;
    width: 49%;
  }
  .cmshtml .i4 .in-wrap div:nth-child(2n) {
    margin-right: 0;
  }
}

.cmshtml .i-sh {
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);
}

.cmshtml .line-hr {
  margin-bottom: 80px;
}

.cmshtml .line-hr hr {
  height: 1px;
  overflow: hidden;
  border: none;
  border-bottom: solid 1px #CACAD9;
}

.cmshtml .noline-hr {
  margin-bottom: 80px;
}

.cmshtml .noline-hr hr {
  height: 1px;
  overflow: hidden;
  border: none;
}

.cmshtml .dibox {
  margin: 30px auto;
}

@media screen and (max-width: 680px) {
  .cmshtml .dibox {
    width: 100%;
    overflow-x: scroll;
  }
}

.cmshtml .submenu {
  margin: 20px auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}

.cmshtml .submenu li {
  width: 23.5%;
  margin: 0 2% 30px 0;
}

#editView .cmshtml .submenu li {
  width: 100%;
}

@media screen and (max-width: 680px) {
  .cmshtml .submenu li {
    width: 100%;
    margin: 0 0 10px 0;
  }
}

.cmshtml .submenu li:nth-child(4n) {
  margin-right: 0;
}

.cmshtml .submenu li a {
  display: block;
  padding: 10px;
  text-decoration: none;
  font-weight: bold;
  position: relative;
  color: #0C0C1E;
  border: 1px solid #CACAD9;
  background: rgba(243, 246, 249, 0.83);
  transition: all 0.6s;
  text-align: center;
}

#editView .cmshtml .submenu li a {
  padding: 10px 30px;}

.cmshtml .submenu li a:before {
  content: "";
  position: absolute;
  right: 8px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  border-right: 1px solid #0C0C1E;
  border-bottom: 1px solid #0C0C1E;
  transform: rotate(-45deg);
}

.cmshtml .submenu li a:hover {
  background: rgba(38, 131, 255, 0.63);
}

.cmshtml .tb-box1, .cmshtml .tb-box1-2, .cmshtml .tb-box2, .cmshtml .tb-box3, .cmshtml .tb-box5, .cmshtml .tb-boxx {
  width: 100%;
  table-layout: auto;
  margin: 0;
  border-collapse: collapse;
  border-left: 1px solid #CACAD9;
  border-top: 1px solid #CACAD9;
}

@media screen and (max-width: 680px) {
  .cmshtml .tb-box1, .cmshtml .tb-box1-2, .cmshtml .tb-box2, .cmshtml .tb-box3, .cmshtml .tb-box5, .cmshtml .tb-boxx {
    width: 680px;
  }
}

.cmshtml .tb-box1 th, .cmshtml .tb-box1-2 th, .cmshtml .tb-box2 th, .cmshtml .tb-box3 th, .cmshtml .tb-box5 th, .cmshtml .tb-boxx th {
  padding: 16px 4px;
  border-right: 1px solid #CACAD9;
  border-bottom: 1px solid #CACAD9;
  font-size: 14px;
  color: #004097;
  font-weight: bold;
  background: rgba(243, 246, 249, 0.3);
  border-bottom: 1px solid #CACAD9;
}

.cmshtml .tb-box1 th.hd_bggr, .cmshtml .tb-box1-2 th.hd_bggr, .cmshtml .tb-box2 th.hd_bggr, .cmshtml .tb-box3 th.hd_bggr, .cmshtml .tb-box5 th.hd_bggr, .cmshtml .tb-boxx th.hd_bggr {
  background: #004097;
  color: #fff;
  border-bottom: 1px solid #CACAD9;
}

.cmshtml .tb-box1 td, .cmshtml .tb-box1-2 td, .cmshtml .tb-box2 td, .cmshtml .tb-box3 td, .cmshtml .tb-box5 td, .cmshtml .tb-boxx td {
  padding: 16px;
  border-right: 1px solid #CACAD9;
  border-bottom: 1px solid #CACAD9;
  font-size: 14px;
  color: #0C0C1E;
}

.cmshtml .tb-box1 th {
  width: 30%;
}

.cmshtml .tb-box1 th.th-01 {
  width: 70%;
}

.cmshtml .tb-box1 td {
  width: 70%;
}

.cmshtml .tb-box1 td.td-01 {
  width: 30%;
}

@media screen and (max-width: 680px) {
  .cmshtml .tb-box1 {
    width: 100%;
  }
  .cmshtml .tb-box1 tr {
    display: list-item;
    width: 100%;
  }
  .cmshtml .tb-box1 th, .cmshtml .tb-box1 td {
    display: block;
    width: 100%;
    text-align: left;
    padding-left: 1em;
  }
}

.cmshtml .tb-box1-2 th {
  width: 50%;
}

.cmshtml .tb-box1-2 td {
  width: 50%;
}

@media screen and (max-width: 680px) {
  .cmshtml .tb-box1-2 {
    width: 100%;
  }
}

.cmshtml .tb-box2 th {
  width: 33%;
}

.cmshtml .tb-box2 td {
  width: 33%;
}

.cmshtml .tb-box3 th {
  width: 25%;
}

.cmshtml .tb-box3 td {
  width: 25%;
  text-align: center;
}

.cmshtml .tb-box5 th {
  width: 20%;
}

.cmshtml .tb-box5 td {
  width: 20%;
  text-align: center;
}

.cmshtml .tb-boxx th {
  width: auto;
}

.cmshtml .tb-boxx td {
  width: auto;
  text-align: center;
}

.cmshtml .dl-box1 {
  display: block;
}

.cmshtml .dl-box1 dl {
  display: table;
  width: 100%;
  border-top: 1px solid #CACAD9;
}

.cmshtml .dl-box1 dl dt, .cmshtml .dl-box1 dl dd {
  display: table-cell;
  position: relative;
}

.cmshtml .dl-box1 dl dt {
  width: 25%;
  padding: 1em 2%;
  margin-right: 1%;
  color: #004097;
  font-weight: bold;
}

.cmshtml .dl-box1 dl dt:after {
  position: absolute;
  top: -1px;
  left: 0;
  content: '';
  display: block;
  width: 20%;
  height: 1px;
  background: #004097;
}

.cmshtml .dl-box1 dl dd {
  width: 80%;
  padding: 1em 1%;
}

@media screen and (max-width: 680px) {
  .cmshtml .dl-box1 dl {
    display: block;
  }
  .cmshtml .dl-box1 dl dt, .cmshtml .dl-box1 dl dd {
    display: block;
    width: 100%;
  }
  .cmshtml .dl-box1 dl dt {
    padding-bottom: 0;
  }
  .cmshtml .dl-box1 dl dt:after {
    border-color: #CACAD9;
  }
  .cmshtml .dl-box1 dl dd:after {
    border-color: #282828;
  }
}

.cmshtml #pagetop {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 10000000;
}

.cmshtml #pagetop a {
  width: 40px;
  height: 40px;
  display: block;
  position: relative;
}

.cmshtml #pagetop a:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  margin: -5px 0 0 -10px;
  border-top: 2px solid #666;
  border-right: 2px solid #666;
  transform: rotate(-45deg);
  transition: all 0.6s ease;
}

.cmshtml #pagetop a:hover:before {
  top: 0;
}

@media screen and (max-width: 680px) {
  .cmshtml #pagetop {
    display: none;
  }
}

.cmshtml .to-buttonbox {
  overflow: hidden;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: flex-end;
}

.cmshtml .to-buttonbox .to-bt2 {
  margin-left: 2%;
}

@media screen and (max-width: 680px) {
  .cmshtml .to-buttonbox {
    display: flex;
    flex-direction: column-reverse;
  }
  .cmshtml .to-buttonbox .to-bt2 {
    float: none;
    margin: 0;
  }
}

.cmshtml .to-bt2 p {
  padding: 0;
  margin: 0;
  font-weight: 700;
}

.cmshtml .to-bt2 p a {
  display: inline-block;
  padding: 8px 30px 8px 40px;
  text-align: center;
  color: #0C0C1E;
  border: #bbb 1px solid;
  border-radius: 2px;
  text-decoration: none;
  transition: all 0.6s;
  position: relative;
  background: linear-gradient(to bottom, #fff, #ddd);
}

.cmshtml .to-bt2 p a:hover {
  background: linear-gradient(to bottom, #ddd, #fff);
}

.cmshtml .to-bt2 p a[href*=".pdf"]:before {
  content: '';
  display: block;
  position: absolute;
}

.cmshtml .to-bt2 p a[href*=".pdf"]:before {
  top: 0;
  left: 8px;
  bottom: 0;
  margin: auto;
  width: 31px;
  height: 36px;
  background: url("../img/fix/icon-pdf-m.svg") no-repeat left center;
  background-size: 24px 24px;
}

.cmshtml .to-bt2 p a[href*=".doc"]:before {
  content: '';
  display: block;
  position: absolute;
}

.cmshtml .to-bt2 p a[href*=".doc"]:before {
  top: 0;
  left: 4px;
  bottom: 0;
  margin: auto;
  width: 31px;
  height: 36px;
  background: url("../img/fix/icon-word-m.svg") no-repeat left center;
  background-size: 24px 24px;
}

.cmshtml .to-bt2 p a[href*=".xls"]:before {
  content: '';
  display: block;
  position: absolute;
}

.cmshtml .to-bt2 p a[href*=".xls"]:before {
  top: 0;
  left: 4px;
  bottom: 0;
  margin: auto;
  width: 31px;
  height: 36px;
  background: url("../img/fix/icon-xcel-m.svg") no-repeat left center;
  background-size: 24px 24px;
}

.cmshtml .to-bt2 p a[href*=".xlsx"]:before {
  content: '';
  display: block;
  position: absolute;
}

.cmshtml .to-bt2 p a[href*=".xlsx"]:before {
  top: 0;
  left: 4px;
  width: 31px;
  height: 36px;
  background: url("../img/fix/icon-xcel-m.svg") no-repeat left center;
  background-size: 24px 24px;
}

.cmshtml .qabox {
  overflow: hidden;
}

.cmshtml .qabox dl {
  margin: 0 0 10px;
}

.cmshtml .qabox dl dt, .cmshtml .qabox dl dd {
  position: relative;
}

.cmshtml .qabox dl dt:before, .cmshtml .qabox dl dd:before {
  display: block;
  position: absolute;
  top: 0;
  font-size: 30px;
}

@media screen and (max-width: 680px) {
  .cmshtml .qabox dl dt:before, .cmshtml .qabox dl dd:before {
    font-size: 28px;
  }
}

.cmshtml .qabox dl dt {
  color: #004097;
  margin-bottom: 10px;
  padding: 15px 0 10px 45px;
  font-weight: 700;
  position: relative;
  font-size: 18px;
}

@media screen and (max-width: 680px) {
  .cmshtml .qabox dl dt {
    font-size: 16px;
  }
}

.cmshtml .qabox dl dt:before {
  font-family: 'Arial';
  content: 'Q.';
  font-weight: 300;
  left: 10px;
}



.cmshtml .containerbox .qabox dl {
  padding: 0;
}

.cmshtml .show_more {
  cursor: pointer;
}

.cmshtml .show_more dd {
  display: none;
}

.cmshtml .stepbox {
  padding: 0;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

.cmshtml .stepbox li {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  position: relative;
  padding-bottom: 30px;
}

.cmshtml .stepbox li:nth-child(2n) {
  margin-right: 0;
}

.cmshtml .stepbox li .left, .cmshtml .stepbox li .il, .cmshtml .stepbox li .right, .cmshtml .stepbox li .ir {
  position: relative;
}

.cmshtml .stepbox li .left, .cmshtml .stepbox li .il {
  width: 80px;
  color: #fff;
  text-align: center;
  vertical-align: top;
}

.cmshtml .stepbox li .left p, .cmshtml .stepbox li .il p {
  margin-top: 16px;
}

.cmshtml .stepbox li .left h2, .cmshtml .stepbox li .il h2 {
  font-family: 'Libre Baskerville', serif;
  padding-top: 15px;
  width: 80px;
  height: 70px;
  color: #fff;
  background: #004097;
  line-height: 1.3;
  font-size: 26px;
}

.cmshtml .stepbox li .left h2 .step, .cmshtml .stepbox li .il h2 .step {
  font-family: 'Libre Baskerville', serif;
  font-size: 13px;
  display: block;
}

.cmshtml .stepbox li .left h2:before {
  content:"STEP";
  color:#fff;
  display:block;
  font-size: 13px;
}

.cmshtml .stepbox li .left
.boxwrap2, .cmshtml .stepbox li .il
.boxwrap2 {
  box-sizing: border-box;
}

.cmshtml .stepbox li .right, .cmshtml .stepbox li .ir {
  width: calc(100% - 100px);
}

.cmshtml .stepbox li .right h3, .cmshtml .stepbox li .ir h3, .cmshtml .stepbox li .right .stepbox-maintxt, .cmshtml .stepbox li .ir .stepbox-maintxt, .cmshtml .stepbox li .right .stepbox-subtxt, .cmshtml .stepbox li .ir .stepbox-subtxt {
  margin: 0 0 1% 4%;
}

.cmshtml .stepbox li .right h3, .cmshtml .stepbox li .ir h3 {
  font-size: 24px;
  line-height: 1.7;
  font-weight: 700;
  margin-top: 18px;
}

@media screen and (max-width: 680px) {
  .cmshtml .stepbox li .right h3, .cmshtml .stepbox li .ir h3 {
    font-size: 22px;
  }
}

.cmshtml .stepbox li .right .stepbox-maintxt img, .cmshtml .stepbox li .ir .stepbox-maintxt img {
  width: 45%;
  height: auto;
}

.cmshtml .stepbox li .right .to_bt, .cmshtml .stepbox li .ir .to_bt {
  margin-top: 1em;
}

.cmshtml .stepbox li .right .telfax, .cmshtml .stepbox li .ir .telfax {
  margin: 1em auto;
  max-width: 630px;
  padding: 10px;
  background-color: #004097;
}

.cmshtml .stepbox li .right .telfax li, .cmshtml .stepbox li .ir .telfax li {
  width: 50%;
  padding-bottom: 10px;
}

@media screen and (max-width: 680px) {
  .cmshtml .stepbox li .right .telfax li, .cmshtml .stepbox li .ir .telfax li {
    width: 100%;
  }
}

.cmshtml .stepbox li .right .telfax li img, .cmshtml .stepbox li .ir .telfax li img {
  width: auto;
}

.cmshtml .stepbox li .right .i3, .cmshtml .stepbox li .ir .i3 {
  margin-bottom: 20px;
}

.cmshtml .stepbox li:last-child:after {
  border: none;
  display: none;
}

@media screen and (max-width: 680px) {
  .cmshtml .stepbox li .left, .cmshtml .stepbox li .il {
    width: 100%;
  }
  .cmshtml .stepbox li .left h2, .cmshtml .stepbox li .il h2 {
    width: 100%;
    padding: 0;
    height: auto;
  }
  .cmshtml .stepbox li .left h2 .step, .cmshtml .stepbox li .il h2 .step {
    display: none;
  }
  .cmshtml .stepbox li .right, .cmshtml .stepbox li .ir {
    width: 100%;
  }
  .cmshtml .stepbox li:after {
    left: 5%;
  }
}

@media screen and (max-width: 680px) {
  .cmshtml .stepbox li {
    width: 100%;
    margin: 0 0 1em 0;
  }
}

.cmshtml .block-listed{
  position:relative;
}

.cmshtml .block-listed p, .cmshtml .block-listed dl {
  padding-left: 30px;
}

.cmshtml .block-listed p:before, .cmshtml .block-listed dl:before {
  width: 14px;
  height: 14px;
  background: #004097;
  top: 0;
  left:10px;
  bottom: 0;
  margin-right: auto;
}

.cmshtml .block-listed p:after, .cmshtml .block-listed dl:after {
  left:15px;
  width: 6px;
  height: 6px;
}

.cmshtml .block-listed dl {
  display: flex;
}

.cmshtml .block-listed dl dt {
  padding-right: 20px;
  font-weight: bold;
}

.cmshtml .block-listed dl dd {
  padding-right: 20px;
}

@media screen and (max-width: 680px) {
  .cmshtml .block-listed dl {
    display: block;
  }
  .cmshtml .block-listed dl dt {
    display: block;
  }
  .cmshtml .block-listed dl dd {
    display: inline;
  }
}

.cmshtml .sub-box {
  border-top: 1px solid #CACAD9;
  position: relative;
}

.cmshtml .sub-box:before {
  content: "";
  width: 10%;
  height: 1px;
  background: #004097;
  position: absolute;
  top: -1px;
  left: 0;
}

.cmshtml .sub-box h4 {
  padding: 20px 0 0;
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: bold;
  text-align: left;
  position: relative;
}

.cmshtml .sub-box p {
  text-align: left;
}

@media screen and (max-width: 680px) {
  .cmshtml .i2 .i2div.sub-box {
    width: 100%;
    margin-right: 0;
  }
  .cmshtml .i2 .i2div.sub-box .ir {
    width: 50%;
  }
}

.cmshtml .sub-box-wide {
  display: flex;
}

.cmshtml .sub-box-wide .img {
  width: 40%;
}

.cmshtml .sub-box-wide .img img {
  max-width: 100%;
  height: auto;
  margin-bottom: 10px;
}

.cmshtml .sub-box-wide .img img:first-child {
  margin-right: 10px;
}

@media screen and (max-width: 680px) {
  .cmshtml .sub-box-wide .img.img-twins {
    display: block;
    width: 100%;
  }
}

.cmshtml .sub-box-wide .txt-area {
  width: 60%;
}

.cmshtml .sub-box-wide .txt-area .cap-l-t2 h2 {
  margin: 0 0 20px;
  padding-bottom: 0;
}

.cmshtml .sub-box-wide .txt-area img {
  max-width: 100%;
  height: auto;
}

.cmshtml .sub-box-wide .cap-m {
  margin-top: 10px;
}

.cmshtml .sub-box-wide h4 {
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 20px;
  position: relative;
  color: #004097;
  border-bottom: 1px solid #CACAD9;
}

.cmshtml .sub-box-wide h4.catch {
  border: 0;
  font-size: 28px;
  font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
}

@media screen and (max-width: 680px) {
  .cmshtml .sub-box-wide h4.catch {
    font-size: 26px;
  }
}

.cmshtml .sub-box-wide.txt-right .txt-area {
  padding-left: 60px;
}

.cmshtml .sub-box-wide.txt-left {
  flex-flow: row-reverse;
}

.cmshtml .sub-box-wide.txt-left .txt-area {
  padding-right: 60px;
}

@media screen and (max-width: 680px) {
  .cmshtml .sub-box-wide {
    flex-direction: column;
  }
  .cmshtml .sub-box-wide.txt-left {
    flex-direction: column-reverse;
  }
  .cmshtml .sub-box-wide .img {
    width: 100%;
    text-align: center;
  }
  .cmshtml .sub-box-wide .img img:first-child {
    margin-right: 0;
  }
  .cmshtml .sub-box-wide .txt-area {
    margin-bottom: 10px;
    width: 100%;
  }
  .cmshtml .sub-box-wide.txt-left .txt-area, .cmshtml .sub-box-wide.txt-right .txt-area {
    padding: 0;
  }
}

.cmshtml #contactbox table {
  margin: 0 auto 40px;
  max-width: 800px;
}

.cmshtml #contactbox table th {
  width: 38%;
}

@media screen and (max-width: 680px) {
  .cmshtml #contactbox table {
    width: 100%;
  }
  .cmshtml #contactbox table tr {
    display: block;
  }
  .cmshtml #contactbox table th {
    width: 100%;
    padding: 15px 15px 0 15px;
    display: list-item;
    list-style: none;
    text-align: left;
    background: #fff;
    color: #000;
  }
  .cmshtml #contactbox table td {
    width: 100%;
    padding: 15px 15px 5px 15px;
    display: list-item;
    list-style: none;
    background: #fff;
  }
  .cmshtml #contactbox table td p {
    margin-bottom: 10px;
  }
}

.cmshtml #contactbox input.fm-txt, .cmshtml #contactbox select, .cmshtml #contactbox .fm-texa {
  margin-bottom: 10px;
  padding: 8px;
  background-color: #fff;
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #CACAD9;
  font-size: 14px;
}

.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: 25%;
}

.cmshtml #contactbox input.fm-txt.hinmei, .cmshtml #contactbox select.hinmei, .cmshtml #contactbox .fm-texa.hinmei {
  width: 70%;
}

@media screen and (max-width: 680px) {
  .cmshtml #contactbox input.fm-txt.hinmei, .cmshtml #contactbox select.hinmei, .cmshtml #contactbox .fm-texa.hinmei {
    width: 100%;
  }
}

.cmshtml #contactbox input.fm-txt.kosu, .cmshtml #contactbox select.kosu, .cmshtml #contactbox .fm-texa.kosu {
  width: 50px;
}

.cmshtml #contactbox input.fm-txt:focus, .cmshtml #contactbox select:focus, .cmshtml #contactbox .fm-texa:focus {
  outline: none;
  border-color: #004097;
  background: #fff;
}

.cmshtml #contactbox input.fm-chk,
.cmshtml #contactbox input.fm-rad {
  margin-bottom: 10px;
}

.cmshtml #contactbox label {
  display: block;
}

.cmshtml #contactbox tr {
  width: 100%;
}

.cmshtml #contactbox th {
  padding: 15px 15px 5px 15px;
  vertical-align: top;
  text-align: left;
  background: #fff;
  font-weight: bold;
  position: relative;
  font-size: 15px;
}

.cmshtml #contactbox td {
  padding: 15px 15px 5px 15px;
  background: #fff;
  font-size: 15px;
}

.cmshtml #contactbox td p {
  margin-bottom: 10px;
}

.cmshtml #contactbox .to-submit input, .cmshtml #contactbox .to-submit button {
  padding: 10px;
  border-radius: 5px;
  width: 100%;
  background: #CACAD9;
  color: #004097;
  border: 2px solid #CACAD9;
  font-weight: bold;
  cursor: pointer;
}

.cmshtml .hissu {
  margin-right: 1em;
  color: #C60D1F;
  position: relative;
  font-size: 14px;
  font-weight: 500;
}

.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;
  letter-spacing: 0.3em;
  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;
}

.cmshtml #submit:hover,
.cmshtml #reset:hover,
.cmshtml #back:hover {
  background: #333;
  cursor: pointer;
  color: #fff;
}

.cmshtml .small {
  font-size: 14px;
}

.cmshtml .big {
  font-size: 20px;
}

@media screen and (max-width: 680px) {
  .cmshtml .big {
    font-size: 18px;
  }
}

.cmshtml a[href^="tel:"] {
  text-decoration: none;
  color: inherit;
}

@media screen and (min-width: 768px) {
  .cmshtml a[href^="tel:"] {
    pointer-events: none;
  }
}

.cmshtml .wrap-lineup {
  justify-content: center;
}

.cmshtml .wrap-lineup .product-iconlist {
  margin: 0 auto;
}

.cmshtml .wrap-lineup .product-iconlist li {
  width: 48%;
  margin: 2% 0;
  border: 1px solid #CACAD9;
  box-shadow: 6px 6px 0 rgba(0, 64, 151, 0.16);
}

@media screen and (max-width: 680px) {
  .cmshtml .wrap-lineup .product-iconlist li {
    width: 100%;
    margin: 1em 0;
  }
}

.cmshtml .wrap-lineup .product-iconlist li .bn-title {
  text-align: left;
  height: auto;
  font-size: 24px;
  padding: 30px 30px 30px 160px;
}

.cmshtml .wrap-lineup .product-iconlist li .noicon.bn-title{
  padding: 30px;
}

.cmshtml .wrap-lineup .product-iconlist li .bn-title h4{
  padding:0;
  margin:0;
}

@media screen and (max-width: 680px) {
  .cmshtml .wrap-lineup .product-iconlist li .bn-title {
    font-size: 22px;
  }
}

.cmshtml .wrap-lineup .product-iconlist li .bn-title .small {
  display: inline;
}

.cmshtml .wrap-lineup .product-iconlist li .bn-title:before {
  left: 5%;
  top: -30px;
  bottom: 0;
  right: auto;
}

.cmshtml .wrap-lineup .product-iconlist li .bn-title .details {
  margin: 1em 0;
  font-size: 15px;
  line-height: 1.8;
}

@media screen and (max-width: 680px) {
  .cmshtml .wrap-lineup .product-iconlist li .bn-title .details {
    font-size: 13px;
  }
}

.cmshtml .pro-unit {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 20px;
}

.cmshtml .pro-unit .title {
  width: 100%;
  padding-bottom: 5px;
  border-bottom: 2px solid #CACAD9;
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 1em;
  padding-left: 1em;
  position: relative;
}

@media screen and (max-width: 680px) {
  .cmshtml .pro-unit .title {
    font-size: 20px;
  }
}

.cmshtml .pro-unit .title:before {
  content: "";
  width: 4px;
  height: 60%;
  background-color: #004097;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  display: inline-block;
}

.cmshtml .pro-unit .imgbox {
  width: 40%;
  margin-right: 10%;
}

.cmshtml .pro-unit .imgbox img {
  width: 100%;
  height: auto;
}

.cmshtml .pro-unit .details {
  width: 50%;
}

.cmshtml .pro-unit .details p {
  margin-bottom: 2em;
}

.cmshtml .pro-unit .details dl {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

.cmshtml .pro-unit .details dl dt {
  padding: 0.5em;
  width: 50%;
  border-bottom: 1px solid #CACAD9;
  background-color: #F3F6F9;
  text-align: center;
  font-size: 15px;
}

@media screen and (max-width: 680px) {
  .cmshtml .pro-unit .details dl dt {
    font-size: 13px;
  }
}

.cmshtml .pro-unit .details dl dd {
  padding: 0.5em;
  width: 50%;
  border-bottom: 1px solid #CACAD9;
  text-align: center;
  font-size: 15px;
}

@media screen and (max-width: 680px) {
  .cmshtml .pro-unit .details dl dd {
    font-size: 13px;
  }
}

.cmshtml .wrap-pro-unit02 {
  display: flex;
  flex-flow: row wrap;
  margin: 30px auto;
}

.cmshtml .wrap-pro-unit02 .pro-unit {
  width: 46%;
  margin-right: 8%;
}

.cmshtml .wrap-pro-unit02 .pro-unit:nth-child(2n) {
  margin-right: 0;
}

.cmshtml .wrap-pro-unit02 .pro-unit dl dt, .cmshtml .wrap-pro-unit02 .pro-unit dl dd {
  font-size: 12px;
}

.cmshtml .tb-box1 td.num {
  font-size: 28px;
  font-weight: bold;
  font-family: 'Lato',"游ゴシック", sans-serif;
  font-weight: 400;
}

@media screen and (max-width: 680px) {
  .cmshtml .tb-box1 td.num {
    font-size: 26px;
  }
}

.cmshtml span.map {
  margin-left: 1em;
  display: inline-block;
}

.cmshtml .rdtableTable td a {
  display: inline;
  padding: 2px 10px;
  background-color: #F3F6F9;
  border-radius: 6px;
  text-decoration: none;
  color: #004097;
  border: 1px solid #CACAD9;
}

.cmshtml .rdtableTable td a[href*=".pdf"] {
  display: block;
  padding: 2px 10px;
  background-color: #fff;
  border-radius: 6px;
  text-decoration: none;
  border: 1px solid #CACAD9;
}

.cmshtml .boxwrap1 .telfax, .cmshtml .boxwrap2 .telfax, .cmshtml .boxwrap3 .telfax, .cmshtml .to-buttonbox .telfax {
  margin: 1em auto;
  padding: 1em;
}

#editView .cmshtml {
  margin: 0 auto;
  width: 100%;
  max-width: 1560px;
}

#editView .cmshtml #header {
  width: 100%;
  max-width: 1560px;
}

#editView .cmshtml #topslide {
  width: 100%;
  margin: 0 auto;
  height: 1000px;
  overflow-x: scroll;
}

#editView .cmshtml #topslide .sp-slide {
  position: relative;
}

#editView .cmshtml #topslide .sp-slide img {
  width: 100%;
  height: auto;
}

#editView .cmshtml #topslide .sp-slide .copy {
  bottom: 38%;
  visibility: visible;
  opacity: 1;
  transform-origin: left top;
  transform: scale(1);
  left: 0px;
}

#editView .cmshtml #top-case-slide-wrap {
  overflow: auto;
  height: auto;
}

#editView .cmshtml .swiper-button-case-next {
  display: none;
}

#editView .cmshtml #top-case-slide-wrap .swiper-slide {
  height: auto;
  margin: 0 1em 1em 0;
  float: left;
}

#editView .cmshtml .section-news .section_carousel {
  height: auto;
  overflow: auto;
}

#editView .cmshtml #navbar.fixed {
  position: relative;
}

#editView .cmshtml #navigation > div {
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml .title-navi > div {
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml [data-aos^=fade][data-aos^=fade] {
  opacity: 1;
  transform: translateZ(0);
}

#editView .cmshtml .drawer-dropdown-menu {
  display: inline-block;
  position: relative;
  top: 60px;
  left: 0;
  width: auto;
}

#editView .cmshtml .drawer-dropdown-menu > div {
  display: block;
}

#editView .cmshtml .section_secondary article a {
  position: relative;
}

#editView .cmshtml .img-linkbox figcaption a:after {
  position: static;
}

#editView .cmshtml #topslide {
  width: 100%;
  margin: 0 auto;
  height: 1000px;
  overflow-x: scroll;
}

#editView .cmshtml #topslide .sp-slide {
  position: relative;
}

#editView .cmshtml #topslide .sp-slide .copy {
  bottom: 38%;
  visibility: visible;
  opacity: 1;
  transform-origin: left top;
  transform: scale(1);
  left: 0px;
}

#editView .cmshtml .i1 .in-wrap > div {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml .i2 .in-wrap > div {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml .i3 .in-wrap > div {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml .i4 .in-wrap > div {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml .i5 .in-wrap > div {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml .globalmenu > div {
  display: flex;
}

#editView .cmshtml #header.fixed {
  position: relative;
}

#editView .cmshtml #navigation > div {
  flex-grow: 1;
  display: flex;
  justify-content: flex-end;
  flex-flow: row nowrap;
  width: 100%;
}

#editView .cmshtml .drawer-dropdown-menu {
  display: inline-block;
  position: relative;
  top: 60px;
  left: 0;
  width: auto;
}

#editView .cmshtml .drawer-dropdown-menu > div {
  display: block;
}

#editView .cmshtml .title-navi > div,
#editView .cmshtml #footer .flink > div {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml .title-navi > div{
  width: 30%;
}

#editView .cmshtml .title-navi li{
  width:280px;
}

#editView .cmshtml [data-aos^=fade][data-aos^=fade] {
  opacity: 1;
  transform: translateZ(0);
}

#editView .cmshtml .section_primary ul > div {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml .swiper-wrapper > div {
  display: flex;
}

#editView .cmshtml #top-case-slide-wrap .swiper-slide {
  float: left;
  margin: 0 1em 1em 0;
}

#editView .cmshtml .stepbox > div,
#editView .cmshtml .wrap-pro-unit02 > div {
  display: flex;
  flex-flow: row wrap;
}

#editView .cmshtml table {
  width: 80%;
}

#editView .cmshtml table th, #editView .cmshtml table td {
  padding: 16px;
  width: auto;
}

#editView .cmshtml table th {
  background-color: #e9e9e9;
}

#editView .cmshtml .sp-slide {
  width: 100%;
  position: relative;
}

#editView .cmshtml [data-aos^=fade][data-aos^=fade] {
  opacity: 1;
}

#editView .cmshtml .drawer-dropdown {
  position: relative;
}

#editView .cmshtml .drawer-dropdown:before {
  content: "（dropdownあり）";
  font-size: 12px;
  position: relative;
  top: 0;
  left: 0;
}

#editView .cmshtml .img-linkbox {
  width: 250px;
}

.cmshtml .wc_anctxt {
  margin-top: -180px;
  padding-top: 180px;
  display: inline-block;
  transform: translateY(-50px);
}

@media screen and (max-width: 1240px) {
  .cmshtml .wc_anctxt {
    transform: none;
  }
}

.cmshtml .wc_anctxt img {
  width: inherit !important;
  height: inherit  !important;
}







































/* u01汎用class */
.cmshtml .hov {
  transition:0.4s;
}
.cmshtml .hov:hover {
  -webkit-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  transform: translateY(-5px);
  box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.3);
}

/* 左右交互のスマホ時最適化 */
@media (min-width: 1px) and (max-width: 767px){
.cmshtml .rev.rdflexarea{
  flex-direction: column-reverse;
}
}

/* スマホ時ブレイクさせない */
@media screen and (max-width: 767px) {
.cmshtml .cmsbody .spnb {
flex-flow: row nowrap;
}
.cmshtml .cmsbody .spnb table {
min-width: auto;
font-size: 70%;
}
}

.cmshtml .autowidth p{
  display:inline-block;
}



/* u01表 */
.cmsbody table {border-collapse: collapse; }
.cmsbody .rdplanetext figure.table,
.cmsbody .rdplanetext2 figure.table,
.cmsbody .txtarea figure.table {
  width: 100%; }
  .cmsbody .rdplanetext figure.table table,
  .cmsbody .rdplanetext2 figure.table table,
  .cmsbody .txtarea figure.table table {
    border-top: 1px solid #7F7F7F;
    width: 100%; }
    .cmsbody .rdplanetext figure.table table td, .cmsbody .rdplanetext figure.table table th,
    .cmsbody .rdplanetext2 figure.table table td,
    .cmsbody .rdplanetext2 figure.table table th,
    .cmsbody .txtarea figure.table table td,
    .cmsbody .txtarea figure.table table th {
      padding: 1em 0.5em;
      border: none; }
    .cmsbody .rdplanetext figure.table table thead th,
    .cmsbody .rdplanetext2 figure.table table thead th,
    .cmsbody .txtarea figure.table table thead th {
      text-align: inherit; }
    .cmsbody .rdplanetext figure.table table tr th, .cmsbody .rdplanetext figure.table table tr td,
    .cmsbody .rdplanetext2 figure.table table tr th,
    .cmsbody .rdplanetext2 figure.table table tr td,
    .cmsbody .txtarea figure.table table tr th,
    .cmsbody .txtarea figure.table table tr td {
      border-bottom: 1px solid #7F7F7F !important; }
      .cmsbody .rdplanetext figure.table table tr th:first-child, .cmsbody .rdplanetext figure.table table tr td:first-child,
      .cmsbody .rdplanetext2 figure.table table tr th:first-child,
      .cmsbody .rdplanetext2 figure.table table tr td:first-child,
      .cmsbody .txtarea figure.table table tr th:first-child,
      .cmsbody .txtarea figure.table table tr td:first-child {
        border-left: none; }
    .cmsbody .rdplanetext figure.table table th,
    .cmsbody .rdplanetext2 figure.table table th,
    .cmsbody .txtarea figure.table table th {
      width: auto;
      background-color: rgba(215, 216, 230, 0.3); }
    .cmsbody .rdplanetext figure.table table td,
    .cmsbody .rdplanetext2 figure.table table td,
    .cmsbody .txtarea figure.table table td {
      background-color: #fff; }
@media (min-width: 1px) and (max-width: 576px) {
  .cmsbody .container .rdplanetext figure.table,
  .cmsbody .container .rdplanetext2 figure.table {
    width: 100%;
    overflow: scroll; }
    .cmsbody .container .rdplanetext figure.table table,
    .cmsbody .container .rdplanetext2 figure.table table {
      min-width: 460px; }
      .cmsbody .container .rdplanetext figure.table table tr,
      .cmsbody .container .rdplanetext2 figure.table table tr {
        display: table-row;
        width: auto; }
      .cmsbody .container .rdplanetext figure.table table td, .cmsbody .container .rdplanetext figure.table table th,
      .cmsbody .container .rdplanetext2 figure.table table td,
      .cmsbody .container .rdplanetext2 figure.table table th {
        display: table-cell;
        width: auto; }
  .cmsbody .container .rdplanetext.blocktable figure.table,
  .cmsbody .container .rdplanetext2.blocktable figure.table {
    overflow: auto; }
    .cmsbody .container .rdplanetext.blocktable figure.table table,
    .cmsbody .container .rdplanetext2.blocktable figure.table table {
      min-width: 0; }
      .cmsbody .container .rdplanetext.blocktable figure.table table tr,
      .cmsbody .container .rdplanetext2.blocktable figure.table table tr {
        display: block;
        width: 100% !important; }
      .cmsbody .container .rdplanetext.blocktable figure.table table td, .cmsbody .container .rdplanetext.blocktable figure.table table th,
      .cmsbody .container .rdplanetext2.blocktable figure.table table td,
      .cmsbody .container .rdplanetext2.blocktable figure.table table th {
        display: block;
        border-left: none;
        width: 100% !important;
        text-align: center; } }

.cmshtml .cmsbody .rdtableTable th, .cmshtml .cmsbody .rdtableTable td {
  padding: 1.5rem;
}

.cmshtml .cmsbody .rdtableTable thead th {
  border-bottom: none;
}

.cmshtml .cmsbody .rdtableTable {
  border-top: none;
}

.cmshtml .cmsbody .rdtable tbody th {
  border-right-width: 0;
}

.cmshtml .cmsbody .rdtable th {
  font-weight: 700;
  background: rgba(215, 216, 230, 0.3);
}

.cmshtml .cmsbody .rdtable tbody th {
  border-bottom: 1px solid #444;
  color: #3932CC;
  border-right: 1px solid #fff;
}

.cmshtml .cmsbody .rdtableTable td {
  background: #fff;
}

.cmshtml .cmsbody .rdtableTable th, .cmshtml .cmsbody .rdtableTable td {
    border: 1px solid #444;
}


/* WC title */


.cmsbody .rdplanetitle,
.cmsbody .section-contact .rdplanetitle {
  position: relative;
  font-family: 'Zen Kurenaido', sans-serif;
  margin:0;
}

.cmshtml .cmsbody .rdplanetitle h2,
.cmshtml .cmsbody .rdplanetitle h3,
.cmshtml .cmsbody .rdplanetitle h4,
.cmshtml .cmsbody .rdplanetitle h5,
.cmshtml .cmsbody .rdplanetitle h6{
  margin:0;
  padding:0;
}

.cmshtml .cmsbody .rdplanetitle h2,
.cmshtml .cmsbody .section-contact .rdplanetitle h2 {
   padding: 20px 0 0;
   font-size: 32px;
   font-weight: 700;
   text-align:center;
}

.cmshtml .cmsbody .rdplanetitle h2:after,
.cmshtml .cmsbody .section-contact .rdplanetitle h2:after {
    margin: auto;
    content: "";
    width: 60px;
    height: 4px;
    background: #004097;
    position: absolute;
    top: 0;
    left: 0;
    right:0;
    display: inline-block;
}

@media screen and (max-width: 768px) {
.cmshtml .cmsbody .rdplanetitle h2,
.cmshtml .cmsbody .section-contact .rdplanetitle h2 {
  font-size: 1.2rem;
}
}

.cmshtml .cmsbody .rdplanetitle h3,
.cmshtml .cmsbody .section-contact .rdplanetitle h3 {
    padding: 16px;
    font-size: 24px;
    color:#004097;
    border-top: 1px solid #004097;
    border-bottom: 1px solid #004097;
    background: rgba(243, 246, 249, 0.27);
}


@media screen and (max-width: 768px) {
.cmshtml .cmsbody .rdplanetitle h3,
.cmshtml .cmsbody .section-contact .rdplanetitle h3 {
font-size: 1.1rem;
}

.cmshtml .cmsbody .rdplanetitle h3:after,
.cmshtml .cmsbody .section-contact .rdplanetitle h3:after {
    left: 10px;
}
}


.cmshtml .cmsbody .rdplanetitle h4,
.cmshtml .cmsbody .section-contact .rdplanetitle h4 {
    padding: 10px 20px;
    color: #004097;
    text-align: left;
    font-weight: bold;
    font-size: 26px;
    font-size: 1.3rem;
    background-color: #fff;
    box-shadow: 4px 4px 0 rgba(0, 64, 151, 0.3);
    border: 1px solid #cacad9;
    border-left: 5px solid #004097;
}


@media screen and (max-width: 768px) {
.cmshtml .cmsbody .rdplanetitle h4,
.cmshtml .cmsbody .section-contact .rdplanetitle h4 {
font-size: 1rem;
}
}

.cmshtml .cmsbody .rdplanetitle h5,
.cmshtml .cmsbody .section-contact .rdplanetitle h5 {
  display: block;
  color:#fff;
  background-color: #004097;
  font-size: 22px;
  font-weight: 700;
  padding: 8px 24px;
}

@media screen and (max-width: 768px) {
.cmshtml .cmsbody .rdplanetitle h5,
.cmshtml .cmsbody .section-contact .rdplanetitle h5 {
font-size: 1.2rem;
}
}

.cmshtml .cmsbody .rdplanetitle h6,
.cmshtml .cmsbody .section-contact .rdplanetitle h6 {
    padding-bottom: 5px;
    border-bottom: 2px solid #CACAD9;
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 1em;
    padding-left: 1em;
    position: relative;
}

.cmshtml .cmsbody .rdplanetitle h6:before,
.cmshtml .cmsbody .section-contact .rdplanetitle h6:before  {
    content: "";
    width: 4px;
    height: 60%;
    background-color: #004097;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    display: inline-block;
}


@media screen and (max-width: 768px) {
.cmshtml .cmsbody .rdplanetitle h6,
.cmshtml .cmsbody .section-contact .rdplanetitle h6 {
font-size: 1.1rem;
}
}






/* ブログ追記CSS */
.cmshtml .cmsbody .rdListImageEmpty{display:none;}
.cmshtml .cmsbody .rdListShort .rdListItem{ width:100%;border:none;padding: 20px;margin: 0;box-shadow: none;border-bottom: 1px dotted #ccc;}
.cmshtml .cmsbody .rdarticleTitleText a{text-decoration:none; display:block;color:#0e5f5a;font-weight: 700;}
.cmshtml .cmsbody .rdarticleTitleText a:hover{opacity:0.8;}
.cmshtml .cmsbody .rdarticleTitle h3 {font-weight: 700;border-bottom: none;margin-bottom: 0px;padding-bottom: 0px;margin-top: 0; color:#0e5f5a;font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;}
.cmshtml .cmsbody .rdListShort .rdListItem .rdListTitle {display: flex;align-items: center;}
.cmshtml .cmsbody .rdpublishDate{margin-right:20px;}
.cmshtml .cmsbody .rdListShort .rdListItem:nth-child(odd) {background:#fff;}
.cmshtml .cmsbody .rdListShort .rdListItem:nth-child(even) {background:#fff;}
.cmshtml .cmsbody .rdpublishDate {font-weight: 700;margin-bottom: 0;}
.cmshtml .cmsbody .rdListShort .rdListItem .rdListCategoryItem { border: 1px solid #fff; background: #BDE1AB; padding: 4px 10px; display: inline-block;}
.cmshtml .cmsbody .rdListShort .rdListItem .rdListCategoryItem a{ color:#666; font-size:0.8rem;text-decoration: none; font-weight: 700;}

.cmshtml .cmsbody .top-news__list .rdnewArticle .rdnewArticle-contWrap{display: flex; align-items: center;}
.cmshtml .cmsbody .top-news__list .rdnewArticle .rdnewArticle-contWrap .rdnewArticle-ContDate{font-weight:700;margin-right:20px;color:#07913B;}
.cmshtml .cmsbody .top-news__list .rdnewArticle .rdnewArticle-contWrap .rdnewArticle-ContTitle a{font-weight:700;text-decoration:none;}

.cmshtml .cmsbody .rdListShort .rdListItem .ItemrdListTagListItem {padding:0 10px;border: 1px solid #76a6ff; background: none;}
.cmshtml .cmsbody .rdListShort .rdListItem .ItemrdListTagListItem a{color:#76a6ff;text-decoration:none;font-weight:700; font-size:0.8rem;}


@media screen and (max-width: 800px) {
.cmshtml .cmsbody .rdListShort .rdListItem .rdListCategory {right: 0; top: 10px;}
.cmshtml .cmsbody .rdListShort .rdListItem .rdListTitle {display: block;}
.cmshtml .cmsbody .rdListShort .rdListItem .rdListExcerpt {margin-top: 20px;}
}


/* input item */
.cmshtml .contact_item_input input[type=text],
.cmshtml .contact_item_input input[type=tel],
.cmshtml .contact_item_input input[type=email],
.cmshtml .contact_item_input input[type=date]{
font-size: 16px;
height: 28px;
padding: 3px 6px;
line-height: 1.42857143;
border: 1px solid #ccc;
border-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

.cmshtml .contact_item_input input[type=radio],
.cmshtml .contact_item_input input[type=checkbox]{
font-size: 16px;
line-height: 1.42857143;
padding:0;
margin-right: 5px;
box-sizing: border-box;
}

.cmshtml .contact_item_input select{
padding: 3px 6px;
line-height: 1.42857143;
border: 1px solid #ccc;
border-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.cmshtml .contact_item_input textarea{
height: auto;
width: 90%;
padding: 3px 6px;
line-height: 1.42857143;
border: 1px solid #ccc;
border-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

.cmshtml .contact_item_input .contact_item_note{
font-size: 0.85em;
}

.cmshtml .contact-item_width_full{
width: 90%;
}

.cmshtml dt.contact_item_title {
    background: rgba(215, 216, 230, 0.3);
    margin-bottom: 20px;
    padding: 15px;
}

.cmshtml .cmsbody .contact_item_table input[type="tel"]{width:auto;}

.cmshtml .contact_item_table button.btn_contacts_post_api{
  margin-left:10px;
}

.cmshtml .cmsbody .contact_item_table .contact_item_input.subtitle{
  padding: 10px;
  margin-top:40px;
    color: #004097;
    text-align: left;
    font-weight: bold;
    font-size: 26px;
    font-size: 1.3rem;
    border-bottom: 1px solid #004097;
}