@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  vertical-align: middle;
  word-break: break-all;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, main, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/**
 * Base
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  font-size: 100%;
  font: inherit;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: baseline;
}

button,
input[type="button"],
input[type="checkbox"],
input[type="image"],
input[type="radio"],
input[type="reset"],
input[type="submit"],
label,
select {
  cursor: pointer;
}

button,
input,
select,
textarea {
  vertical-align: top;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: none;
  padding: 0;
}

input[type="text"],
textarea {
  color: inherit;
  font-family: inherit;
}

button {
  margin: 0;
  border: none;
  padding: 0;
  background-color: transparent;
  color: inherit;
  font-family: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

img {
  vertical-align: top;
  max-width: 100%;
}

html,
body {
  height: 100%;
}

html {
  font-size: 62.5%;
}

body {
  min-width: 1140px;
  color: #231f20;
  font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic","メイリオ", Meiryo, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", Verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.6;
  letter-spacing: -1px;
  -moz-osx-font-smoothing: unset;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-text-size-adjust: 100%;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  body {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
  }
}

@media screen and (max-width: 480px) {
  body {
    min-width: 0;
  }
}

a {
  color: #0aad8a;
  text-decoration: none;
}

a img {
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

a:hover {
  text-decoration: underline;
}

a:hover img {
  opacity: 0.8;
}

a[href^="tel:"] {
  pointer-events: none;
}

a[href^="tel:"]:hover {
  text-decoration: none;
}

@media screen and (max-width: 480px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

.is-pc {
  display: inline;
}

@media screen and (max-width: 480px) {
  .is-pc {
    display: none;
  }
}

.is-sp {
  display: none;
}

@media screen and (max-width: 480px) {
  .is-sp {
    display: inline;
  }
}

@media screen and (max-width: 480px) {
  br.is-sp {
    display: block;
  }
}

.t-left {
  text-align: left !important;
}

.t-center {
  text-align: center !important;
}

.t-right {
  text-align: right !important;
}

strong,
b {
  font-weight: bold;
}

/**
 * Header
 */
.l-header {
  position: relative;
  height: 112px;
  line-height: 1.6;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media screen and (max-width: 480px) {
  .l-header {
    position: fixed;
    height: 54px;
    width: 100%;
    background: #FFF;
    z-index: 9999;
    top: 0;
    left: 0;
  }
  .l-header + * {
    padding-top: 54px;
  }
}

.l-header a {
  color: #231f20;
  text-decoration: none;
  -webkit-transition: color .3s;
  transition: color .3s;
}

.l-header a:hover {
  color: #0aad8a;
}

.l-header__inner {
  width: 1100px;
  margin: 0 auto;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: padding .3s;
  transition: padding .3s;
}

.l-header__inner::after {
  content: "";
  display: block;
  clear: both;
}

@media screen and (max-width: 480px) {
  .l-header__inner {
    position: relative;
    width: 100%;
    z-index: 10;
  }
}

.l-header .logo {
  float: left;
  margin: 27px 0 0 16px;
  width: 342px;
  line-height: 1;
}

@media screen and (max-width: 480px) {
  .l-header .logo {
    width: 214px;
    margin-top: 18px;
    height: 36px;
    font-size: 0;
  }
  .l-header .logo img {
    width: 100%;
  }
}

.l-header .navArea {
  position: relative;
}

.l-header .subNav {
  position: absolute;
  right: 0;
  top: 8px;
}

.l-header .subNav ul {
  display: inline-block;
  vertical-align: -4px;
  margin-right: 8px;
}

.l-header .subNav ul li {
  display: inline-block;
  margin-left: 6px;
}

.l-header .subNav ul li a {
  display: block;
  padding: 4px;
  font-size: 1.2rem;
  letter-spacing: -1px;
  line-height: 1;
}

.l-header .subNav form {
  position: relative;
  display: inline-block;
}

.l-header .subNav form input[type="text"] {
  border: 1px solid #d1d0d1;
  width: 182px;
  height: 24px;
  padding: 0 6px;
  border-radius: 3px;
  font-size: 1.2rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.l-header .subNav form input[type="text"]:hover {
  border-color: #0aad8a;
}

.l-header .subNav form input[type="image"] {
  position: absolute;
  right: 6px;
  top: 5px;
}

@media screen and (max-width: 480px) {
  .l-header .subNav {
    display: none;
  }
}

.l-header .formNav {
  position: absolute;
  right: 0;
  top: 40px;
}

.l-header .formNav ul {
  font-size: 0;
}

.l-header .formNav li {
  display: inline-block;
  margin-left: 9px;
}

.l-header .formNav li a {
  background: #0aad8a;
  display: block;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: center;
  border-radius: 2px;
  padding: 10px 14px;
  line-height: 1;
  color: #FFF;
  letter-spacing: 0;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.l-header .formNav li a:hover {
  background: #088a6e;
}

@media screen and (max-width: 480px) {
  .l-header .formNav {
    display: none;
  }
}

.l-header .globalNav {
  position: absolute;
  top: 80px;
  left: 0;
  width: 100%;
  height: 40px;
  text-align: center;
  background: #231f20;
  -webkit-transition: background .3s;
  transition: background .3s;
  z-index: 20;
}

.l-header .globalNav.fixed {
  position: fixed;
  top: 0;
  left: 50%;
  width: 1100px;
  margin-left: -550px;
  z-index: 1000;
  -webkit-box-shadow: 0 3px 12px rgba(0, 0, 0, 0.24);
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.24);
}

.l-header .globalNav > ul > li {
  display: inline-block;
}

.l-header .globalNav > ul > li > a {
  display: block;
  padding: 8px 20px;
  color: #FFF;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.l-header .globalNav > ul > li > a:hover {
  background: #4f4b4c;
}

.l-header .globalNav > ul > li:hover > a {
  background: #4f4b4c;
}

.l-header .globalNav > ul > li:hover .inner {
  opacity: 1;
  visibility: visible;
}

.l-header .globalNav .inner {
  position: absolute;
  visibility: hidden;
  overflow: hidden;
  opacity: 0;
  width: 100%;
  left: 0;
  top: 40px;
  background: #4f4b4c;
  z-index: 100;
  padding: 30px 100px 42px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.l-header .globalNav .inner:before {
  display: block;
  position: absolute;
  content: "";
  left: 625px;
  bottom: 0;
  height: calc(100% - 40px);
  width: 1px;
  background: #7a7878;
}

.l-header .globalNav .inner--left {
  overflow: hidden;
  float: left;
  width: 525px;
}

.l-header .globalNav .inner--left a {
  display: block;
  color: #f5f5f5;
}

.l-header .globalNav .inner--left a:hover {
  text-decoration: underline;
}

.l-header .globalNav .inner--left .title {
  position: relative;
  margin-bottom: 12px;
  font-size: 1.8rem;
  font-weight: bold;
}

.l-header .globalNav .inner--left .title a {
  padding: 5px 0;
}

.l-header .globalNav .inner--left .title a:after {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #FFF;
  border-right: 2px solid #FFF;
  width: 4px;
  height: 4px;
  margin: 0 0 0 14px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 3px;
}

.l-header .globalNav .inner--left li a {
  position: relative;
  padding: 5px 0;
  font-size: 1.5rem;
  background: none;
}

.l-header .globalNav .inner--left li a:before {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #FFF;
  border-right: 2px solid #FFF;
  width: 4px;
  height: 4px;
  margin: 0 14px 0 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

.l-header .globalNav .inner--left .half-left {
  float: left;
  width: 280px;
}

.l-header .globalNav .inner--left .half-right {
  float: left;
  width: 245px;
}

.l-header .globalNav .inner--right {
  float: right;
  width: 345px;
  margin-top: 10px;
}

.l-header .globalNav .inner--right .title {
  font-size: 1.6rem;
  font-weight: bold;
  color: #f5f5f5;
}

.l-header .globalNav .inner--right .body {
  margin-top: 15px;
  font-size: 1.5rem;
  color: #f5f5f5;
}

@media screen and (max-width: 480px) {
  .l-header .globalNav {
    display: none;
  }
}

.l-header .anchorNav {
  display: none;
  background: #f4f4f4;
}

.l-header .anchorNav.fixed {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0;
  top: 40px;
  left: 50%;
  width: 1100px;
  margin-left: -550px;
  z-index: 999;
  -webkit-box-shadow: 0 3px 12px rgba(0, 0, 0, 0.24);
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.24);
}

.l-header .anchorNav p {
  width: 280px;
  padding-left: 32px;
  font-size: 1.4rem;
  color: #7a7878;
}

.l-header .anchorNav li {
  float: left;
  margin: 0 1px;
}

.l-header .anchorNav li a {
  display: block;
  padding: 12px 15px 11px;
  font-size: 1.4rem;
  border-bottom: 3px solid #a6a4a4;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.l-header .anchorNav li a:hover {
  text-decoration: none;
  background: #FFF;
  color: #231f20;
  border-color: #0aad8a;
}

.l-header .anchorNav li:first-child {
  margin-left: 0;
}

@media screen and (max-width: 480px) {
  .l-header .anchorNav {
    display: none !important;
  }
}

.l-header .spMenuBtn {
  display: none;
}

@media screen and (max-width: 480px) {
  .l-header .spMenuBtn {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 54px;
    height: 54px;
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  .l-header .spMenuBtn .hamburgerIcon {
    display: block;
    position: relative;
    margin: 0 auto;
    width: 18px;
    height: 12px;
    text-align: center;
  }
  .l-header .spMenuBtn .hamburgerIcon span {
    display: inline-block;
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    height: 2px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all .3s;
    transition: all .3s;
    background-color: #231f20;
  }
  .l-header .spMenuBtn .hamburgerIcon span:before, .l-header .spMenuBtn .hamburgerIcon span:after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: all .3s;
    transition: all .3s;
    background-color: #231f20;
  }
  .l-header .spMenuBtn .hamburgerIcon span:before {
    top: -5px;
  }
  .l-header .spMenuBtn .hamburgerIcon span:after {
    bottom: -5px;
  }
  .l-header .spMenuBtn.is-active .hamburgerIcon span {
    background-color: transparent;
  }
  .l-header .spMenuBtn.is-active .hamburgerIcon span:before {
    top: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .l-header .spMenuBtn.is-active .hamburgerIcon span:after {
    bottom: 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}

@media screen and (max-width: 480px) {
  .is-spMenuActive .l-header {
    height: 100%;
  }
  .is-spMenuActive .logo {
    float: none;
    margin: 0;
    height: 54px;
    padding: 18px 16px 0;
    width: 246px;
  }
  .is-spMenuActive .l-header__inner {
    background: #FFF;
    height: 100%;
    overflow-y: auto;
  }
  .is-spMenuActive .navArea {
    background: #4f4b4c;
  }
  .is-spMenuActive .globalNav,
  .is-spMenuActive .globalNav.fixed {
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    top: auto;
    left: auto;
    margin: 0;
    background: #4f4b4c;
    -webkit-box-shadow: none;
    box-shadow: none;
    z-index: 10;
  }
  .is-spMenuActive .globalNav .inner,
  .is-spMenuActive .globalNav.fixed .inner {
    display: none;
  }
  .is-spMenuActive .globalNav > ul > li,
  .is-spMenuActive .globalNav.fixed > ul > li {
    display: block;
    padding-left: 8.5%;
    text-align: left;
  }
  .is-spMenuActive .globalNav > ul > li a,
  .is-spMenuActive .globalNav.fixed > ul > li a {
    position: relative;
    border-bottom: 1px solid #7a7878;
    padding: 10px 20px 12px 0;
    font-size: 1.4rem;
  }
  .is-spMenuActive .globalNav > ul > li a:after,
  .is-spMenuActive .globalNav.fixed > ul > li a:after {
    display: block;
    position: absolute;
    content: "";
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    top: 50%;
    right: 35px;
    margin-top: -2px;
    width: 4px;
    height: 4px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .is-spMenuActive .formNav {
    display: block;
    position: relative;
    top: auto;
    right: auto;
    z-index: 10;
    padding: 7px 0 15px;
  }
  .is-spMenuActive .formNav li {
    display: block;
    margin: 0;
    padding: 8px 8.5% 0;
  }
  .is-spMenuActive .formNav li a {
    padding: 13px 14px;
    font-size: 1.4rem;
  }
  .is-spMenuActive .subNav {
    display: block;
    position: relative;
    top: auto;
    right: auto;
    z-index: 10;
  }
  .is-spMenuActive .subNav ul {
    display: block;
    margin: 0 0 0 8.5%;
    border-top: 1px solid #7a7878;
  }
  .is-spMenuActive .subNav ul li {
    display: block;
    margin-left: 0;
  }
  .is-spMenuActive .subNav ul li a {
    position: relative;
    border-bottom: 1px solid #7a7878;
    padding: 10px 20px 12px 0;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.6;
    color: #FFF;
  }
  .is-spMenuActive .subNav ul li a:after {
    display: block;
    position: absolute;
    content: "";
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    top: 50%;
    right: 35px;
    margin-top: -2px;
    width: 4px;
    height: 4px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .is-spMenuActive .subNav form {
    display: block;
    padding: 15px 8.5% 35px;
  }
  .is-spMenuActive .subNav form input[type="text"] {
    width: 100%;
    background: #7a7878;
    border: none;
    padding: 20px;
    font-size: 1.4rem;
  }
  .is-spMenuActive .subNav form input[type="text"]::-webkit-input-placeholder {
    color: #d1d0d1;
  }
  .is-spMenuActive .subNav form input[type="text"]::-ms-input-placeholder {
    color: #d1d0d1;
  }
  .is-spMenuActive .subNav form input[type="text"]::placeholder {
    color: #d1d0d1;
  }
  .is-spMenuActive .subNav form input[type="image"] {
    top: 32px;
    right: 12%;
  }
  .is-spMenuActive .spMenuBtn.is-active {
    background: #4f4b4c;
  }
  .is-spMenuActive .spMenuBtn.is-active .hamburgerIcon span:before, .is-spMenuActive .spMenuBtn.is-active .hamburgerIcon span:after {
    background: #FFF;
  }
}

.spMenuBg {
  display: none;
}

@media screen and (max-width: 480px) {
  .spMenuBg {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 5;
  }
}

.l-sp-accr {
  display: none;
}

@media screen and (max-width: 480px) {
  .l-sp-accr {
    display: block;
    background: #231f20;
  }
  .l-sp-accr > ul li ul {
    display: none;
    height: 0;
    line-height: 0;
    opacity: 0;
    -webkit-transition: height .3s, line-height .3s, opacity .1s;
    transition: height .3s, line-height .3s, opacity .1s;
  }
  .l-sp-accr > ul li.active > ul {
    display: block;
    height: auto;
    line-height: 2;
    opacity: 1;
  }
  .l-sp-accr > ul li.active ul ul {
    padding-left: 24px;
  }
  .l-sp-accr > ul li.active > a:before {
    display: none;
  }
  .l-sp-accr > ul > li > ul {
    display: none;
  }
  .l-sp-accr a {
    position: relative;
    display: block;
    padding: 13px 40px 13px 25px;
    color: #FFF;
    font-size: 1.4rem;
  }
  .l-sp-accr a:hover {
    text-decoration: none;
  }
  .l-sp-accr a::after {
    display: block;
    content: "";
    position: absolute;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    width: 5px;
    height: 5px;
    right: 20px;
    top: 50%;
    margin-top: -5px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .l-sp-accr .accr > a:before {
    display: block;
    position: absolute;
    content: "";
    width: 2px;
    height: 10px;
    top: 50%;
    right: 21px;
    margin-top: -6px;
    background: #FFF;
  }
  .l-sp-accr .accr > a:after {
    border: none;
    width: 10px;
    height: 2px;
    right: 17px;
    margin-top: -2px;
    background: #FFF;
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}

.quickLink {
  position: fixed;
  right: -144px;
  bottom: 240px;
  width: 192px;
  z-index: 100;
}

.quickLink li {
  position: relative;
  width: 192px;
  right: 0;
  overflow: hidden;
  -webkit-transition: right .8s;
  transition: right .8s;
}

.quickLink li a {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1px;
  color: #FFF;
  width: 192px;
  height: 48px;
  padding-left: 50px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.5rem;
  -webkit-transition: background-color .8s;
  transition: background-color .8s;
}

.quickLink li a:hover {
  background-color: #088a6e !important;
  color: #FFF;
}

.quickLink li:nth-child(1) a {
  background: url(/demoweb/shared/img/common/ql_01.png) no-repeat 14px 50% #0aad8a;
}

.quickLink li:nth-child(2) a {
  background: url(/demoweb/shared/img/common/ql_02.png) no-repeat 14px 50% #0aad8a;
}

.quickLink li:nth-child(3) a {
  background: url(/demoweb/shared/img/common/ql_03.png) no-repeat 15px 50% #0aad8a;
}

.quickLink li:nth-child(4) a {
  background: url(/demoweb/shared/img/common/ql_04.png) no-repeat 15px 50% #0aad8a;
}

@media screen and (max-width: 480px) {
  .quickLink {
    display: none;
    bottom: 24px;
  }
}

/**
 * Footer
 */
.c-contact {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
}

.c-contact .name {
  font-size: 1.3rem;
  font-weight: bold;
}

.c-contact .open {
  margin: 3px 0 15px;
  font-size: 1.3rem;
}

.c-contact--contact {
  width: 300px;
  margin-right: 30px;
}

.c-contact--contact .btn--g {
  width: 100%;
  max-width: unset;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-contact--contact .btn--g {
    max-width: none;
  }
}

.c-contact--tel {
  width: 300px;
}

.c-contact--tel .tel {
  margin-top: 18px;
  font-size: 30px;
  color: #019f3b;
  font-family: 'Roboto';
  font-weight: bold;
  line-height: 1;
  letter-spacing: 1px;
}

.c-contact--tel .tel:before {
  display: inline-block;
  content: "";
  left: 0;
  top: 3px;
  width: 46px;
  height: 26px;
  vertical-align: -2px;
  margin-right: 6px;
  background: url(/demoweb/shared/img/common/icon_free.png) no-repeat 0 0/46px auto;
}

@media screen and (max-width: 480px) {
  .c-contact {
    display: block;
  }
  .c-contact--contact {
    width: 88.2%;
    margin: 0 6.4% 30px;
  }
  .c-contact--tel {
    width: 88.2%;
    margin: 0 6.4%;
  }
}

.c-conv .copy {
  margin-top: -6px;
  font-size: 1.5rem;
  line-height: 1.5;
  text-align: center;
}

@media screen and (max-width: 480px) {
  .c-conv .copy {
    margin: 0 8.8%;
    font-size: 1.3rem;
    text-align: left;
    line-height: 1.7;
  }
}

.c-conv .open {
  margin-top: 15px;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0;
}

@media screen and (max-width: 480px) {
  .c-conv .open {
    margin-top: 13px;
  }
}

.c-conv .tel {
  margin-top: 15px;
  text-align: center;
}

.c-conv .tel li {
  display: inline-block;
  text-align: left;
  vertical-align: top;
}

@media screen and (max-width: 480px) {
  .c-conv .tel {
    margin-top: 0;
  }
}

.c-conv .tel .free {
  margin-right: 19px;
}

.c-conv .tel .free a {
  position: relative;
  display: block;
  padding: 26px 0 0 56px;
  font-size: 3.0rem;
  font-weight: bold;
  color: #019f3b;
  font-family: 'Roboto';
  line-height: 1;
  letter-spacing: 1px;
}

.c-conv .tel .free a:before {
  display: block;
  position: absolute;
  content: "";
  left: 0;
  top: 29px;
  width: 46px;
  height: 26px;
  background: url(/demoweb/shared/img/common/icon_free.png) no-repeat 0 0/46px auto;
}

@media screen and (max-width: 480px) {
  .c-conv .tel .free a {
    margin: 0 0 0 24px;
    padding: 16px 0 0 56px;
    white-space: nowrap;
  }
  .c-conv .tel .free a:before {
    top: 19px;
  }
}

.c-conv .tel .mobile {
  display: inline-block;
  margin-left: 18px;
}

.c-conv .tel .mobile p {
  margin-bottom: 8px;
  font-weight: normal;
  font-size: 1.3rem;
  color: #231f20;
}

.c-conv .tel .mobile a {
  position: relative;
  display: block;
  padding: 0 0 0 54px;
  font-size: 3.0rem;
  font-weight: bold;
  color: #007a52;
  font-family: 'Roboto';
  line-height: 1;
  letter-spacing: 1px;
}

.c-conv .tel .mobile a:before {
  display: block;
  position: absolute;
  content: "";
  left: 0;
  top: 1px;
  width: 40px;
  height: 30px;
  background: url(/demoweb/shared/img/common/icon_tel.png) no-repeat 0 0/40px auto;
}

@media screen and (max-width: 480px) {
  .c-conv .tel .mobile {
    margin: 18px 0 0;
    text-align: center;
    white-space: nowrap;
  }
  .c-conv .tel .mobile a {
    margin-left: 5px;
  }
}

.c-conv .btns {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 733px;
  margin: 0 auto;
  padding: 40px 0 6px;
  text-align: center;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-conv .btns {
    padding-bottom: 46px;
  }
}

.c-conv .btns li {
  display: inline-block;
  margin: 0 4px;
  width: 175px;
}

.c-conv .btns li a {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #0aad8a;
  width: 175px;
  height: 40px;
  border-radius: 3px;
  line-height: 1;
  font-size: 1.5rem;
  color: #FFF;
  font-weight: 500;
  text-align: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-decoration: none;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.c-conv .btns li a:hover {
  background: #088a6e;
}

@media screen and (max-width: 480px) {
  .c-conv .btns {
    display: block;
    width: calc(100% - 17.6%);
    margin: 0 8.8%;
    padding: 33px 0 20px;
  }
  .c-conv .btns li {
    display: block;
    margin: 8px 0 0;
    width: 100%;
  }
  .c-conv .btns li a {
    width: 100%;
  }
}

.l-footer {
  background-color: #f5f5f5;
  text-align: left;
}

.l-footer--inner {
  width: 1100px;
  margin: 0 auto;
  padding: 44px 0 70px;
}

.l-footer--links {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}

.l-footer--links > ul {
  width: 220px;
}

.l-footer--links > ul:nth-child(1), .l-footer--links > ul:nth-child(2), .l-footer--links > ul:nth-child(3) {
  width: 281px;
}

.l-footer--links > ul > li ul {
  padding-bottom: 12px;
}

.l-footer--links > ul > li > a {
  display: block;
  margin-bottom: 7px;
  padding: 6px 0;
  font-weight: bold;
  font-size: 1.5rem;
  color: #231f20;
}

.l-footer--links > ul > li li > a {
  display: block;
  padding: 5px 0;
  font-size: 1.4rem;
  color: #231f20;
  line-height: 1.5;
}

.l-footer--links + .l-footer--links {
  margin-top: 54px;
}

.l-footer--links + .l-footer--links ul:nth-child(4) {
  padding-top: 4px;
}

.l-footer--links + .l-footer--links ul:nth-child(4) a {
  padding: 5px 0;
  font-weight: normal;
  font-size: 1.4rem;
}

.l-footer a {
  -webkit-transition: color .3s;
  transition: color .3s;
  text-decoration: none;
}

.l-footer a:hover {
  color: #0aad8a;
  text-decoration: none;
}

@media screen and (max-width: 480px) {
  .l-footer--inner {
    width: 100%;
    padding: 0 6.4% 18px;
  }
  .l-footer--links {
    display: block;
    padding: 18px 0 0;
  }
  .l-footer--links > ul {
    width: 100%;
  }
  .l-footer--links > ul:nth-child(1), .l-footer--links > ul:nth-child(2), .l-footer--links > ul:nth-child(3) {
    width: 100%;
  }
  .l-footer--links > ul > li > a {
    position: relative;
    background: #FFF;
    margin-bottom: 8px;
    padding: 10px 15px;
  }
  .l-footer--links > ul > li > a::after {
    display: block;
    content: "";
    position: absolute;
    border-top: 2px solid #a6a4a4;
    border-right: 2px solid #a6a4a4;
    width: 4px;
    height: 4px;
    right: 20px;
    top: calc(50% - 2px);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .l-footer--links > ul > li ul {
    display: none;
  }
  .l-footer--links > ul.acr > li > a::before {
    display: block;
    content: "";
    position: absolute;
    background: #a6a4a4;
    width: 9px;
    height: 1px;
    right: 18px;
    top: 50%;
  }
  .l-footer--links > ul.acr > li > a::after {
    display: block;
    content: "";
    position: absolute;
    background: #a6a4a4;
    border: none;
    width: 1px;
    height: 9px;
    right: 22px;
    top: calc(50% - 4px);
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  .l-footer--links > ul.acr > li > a.active {
    margin-bottom: 0;
  }
  .l-footer--links > ul.acr > li > a.active:after {
    display: none;
  }
  .l-footer--links > ul.acr ul.active {
    display: block;
    margin-bottom: 8px;
    padding: 0 0 0 8%;
    background: #FFF;
  }
  .l-footer--links > ul.acr ul.active > li:first-child {
    border-top: 1px solid #CCC;
  }
  .l-footer--links > ul.acr ul.active > li:last-child > a {
    border-bottom: none;
  }
  .l-footer--links > ul.acr ul.active > li > a {
    position: relative;
    border-bottom: 1px solid #CCC;
    padding: 10px 20px 10px 0;
  }
  .l-footer--links > ul.acr ul.active > li > a::after {
    display: block;
    content: "";
    position: absolute;
    border-top: 2px solid #a6a4a4;
    border-right: 2px solid #a6a4a4;
    width: 4px;
    height: 4px;
    right: 20px;
    top: 50%;
    margin-top: -3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .l-footer--links + .l-footer--links {
    padding-top: 0;
    margin-top: 20px;
  }
  .l-footer--links + .l-footer--links ul {
    display: none;
  }
  .l-footer--links + .l-footer--links ul:nth-child(4) {
    display: none;
  }
}

.pagetop {
  position: fixed;
  right: 33px;
  bottom: 110px;
}

.pagetop a {
  display: block;
  background: #FFF;
  width: 58px;
  height: 58px;
  border-radius: 58px;
  text-align: center;
  border: 1px solid #e7e7e7;
  -webkit-transition: border-color .3s;
  transition: border-color .3s;
}

.pagetop:before {
  display: block;
  content: "";
  position: absolute;
  width: 12px;
  height: 2px;
  left: 50%;
  top: 21px;
  background: #a6a4a4;
  margin-left: -6px;
  -webkit-transition: border-color .3s;
  transition: border-color .3s;
}

.pagetop:after {
  display: block;
  content: "";
  position: absolute;
  border-top: 2px solid #a6a4a4;
  border-right: 2px solid #a6a4a4;
  width: 6px;
  height: 6px;
  left: 50%;
  top: 28px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-left: -4px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.pagetop:hover a {
  border-color: #0aad8a;
}

.pagetop:hover:before {
  background-color: #0aad8a;
}

.pagetop:hover:after {
  border-color: #0aad8a;
}

@media screen and (max-width: 480px) {
  .pagetop {
    display: none;
  }
}

.b-footer {
  overflow: hidden;
  width: 1070px;
  margin: 30px auto 35px;
}

.b-footer .logo {
  float: left;
  width: 300px;
}

.b-footer .copyright {
  float: left;
  margin: 5px 0 0 26px;
  white-space: nowrap;
  font-size: .9rem;
  color: #a6a4a4;
  font-family: 'Roboto';
  letter-spacing: 0;
}

@media screen and (max-width: 480px) {
  .b-footer {
    width: 100%;
    margin: 0;
    padding-bottom: 83px;
  }
  .b-footer .logo {
    float: none;
    margin: 35px auto 20px;
    text-align: center;
  }
  .b-footer .logo img {
    width: 240px;
  }
  .b-footer .copyright {
    float: none;
    margin: 0;
    text-align: center;
  }
}

.b-footer ul {
  float: right;
  margin-top: 3px;
}

.b-footer ul li {
  display: inline-block;
}

.b-footer ul li a {
  font-size: 1.2rem;
  color: #666666;
  -webkit-transition: color .3s;
  transition: color .3s;
}

.b-footer ul li a:hover {
  color: #0aad8a;
  text-decoration: none;
}

.b-footer ul li a::after {
  display: inline;
  content: "|";
  padding: 0 4px;
}

.b-footer ul li:last-child a:after {
  display: none;
}

@media screen and (max-width: 480px) {
  .b-footer ul {
    float: none;
    margin: 35px 6.4% 0;
    text-align: center;
  }
  .b-footer ul li a::after {
    padding: 0 8px;
  }
}

.b-pagetop {
  display: none;
  position: fixed;
  right: 8px;
  bottom: -60px;
  z-index: 10000;
  -webkit-transition: bottom .3s;
  transition: bottom .3s;
}

@media screen and (max-width: 480px) {
  .b-pagetop {
    display: block;
  }
  .b-pagetop.active {
    bottom: 64px;
  }
}

.b-pagetop a {
  display: block;
  background: #FFF;
  width: 40px;
  height: 40px;
  border-radius: 40px;
  text-align: center;
  border: 1px solid #e7e7e7;
  -webkit-transition: border-color .3s;
  transition: border-color .3s;
}

.b-pagetop:before {
  display: block;
  content: "";
  position: absolute;
  width: 12px;
  height: 2px;
  left: 50%;
  top: 15px;
  background: #a6a4a4;
  margin-left: -7px;
  -webkit-transition: border-color .3s;
  transition: border-color .3s;
}

.b-pagetop:after {
  display: block;
  content: "";
  position: absolute;
  border-top: 2px solid #a6a4a4;
  border-right: 2px solid #a6a4a4;
  width: 6px;
  height: 6px;
  left: 50%;
  top: 21px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-left: -5px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.b-contact {
  display: none;
}

@media screen and (max-width: 480px) {
  .b-contact {
    display: block;
  }
  .b-contact.active a {
    bottom: 0;
  }
  .b-contact a {
    display: block;
    position: fixed;
    left: 0;
    bottom: -60px;
    width: 100%;
    padding: 12px;
    background: #0aad8a;
    color: #FFF;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    -webkit-transition: bottom .3s;
    transition: bottom .3s;
    z-index: 9999;
  }
  .b-contact a img {
    vertical-align: -3px;
    margin-right: 10px;
  }
}

/**
 * Wrapper
 */
/**
 * Contents
 */
.l-contents {
  min-height: 400px;
}

.l-contents * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.l-contents .sectLg {
  padding: 33px 20px;
}

.l-contents .sectLg--bg {
  background: #f5f5f5;
}

.l-contents .sectLg--bg-g {
  background: #d5f1eb;
}

.l-contents .sectLg--conv {
  background: #d5f1eb;
  padding: 40px 0 50px;
}

.l-contents .sectLg--contact {
  background: #d5f1eb;
  width: 1140px;
  margin: 0 auto 80px;
  padding: 40px 0 50px;
  text-align: center;
}

@media screen and (max-width: 480px) {
  .l-contents .sectLg--contact {
    width: 100%;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 480px) {
  .l-contents .sectLg.clm1 {
    padding: 30px 0 60px;
  }
  .l-contents .sectLg.clm1 > .c-container > .c-wyswyg:first-child {
    padding-top: 0;
  }
}

@media screen and (max-width: 480px) {
  .l-contents .sectLg {
    padding: 38px 0;
  }
}

.l-contents--2clm {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 1100px;
  margin: 0 auto;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm {
    display: block;
    width: 100%;
  }
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .l-contents--2clm {
    height: auto !important;
  }
}

.l-contents--2clm.is-subPage .l-contents--2clm--left {
  margin-top: -45px;
}

.l-contents--2clm.is-subPage .g-aside {
  padding: 28px 0 42px;
}

.l-contents--2clm.l-titleset .l-contents--2clm--left {
  margin-top: -8px;
}

.l-contents--2clm.l-titleset .g-aside {
  padding-top: 64px;
}

.l-contents--2clm--left {
  width: 818px;
  padding-bottom: 42px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .l-contents--2clm--left {
    position: relative !important;
    height: auto !important;
  }
}

.l-contents--2clm--left .sectLg {
  padding-left: 0;
  padding-right: 0;
}

.l-contents--2clm--left .c-container {
  width: 100%;
}

.l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-hdg--xl:first-child {
  margin-top: 40px;
}

.l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-hdg--label:first-child + .c-wyswyg p {
  font-size: 1.8rem;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-hdg--label:first-child + .c-wyswyg p {
    font-size: 1.5rem;
  }
}

.l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-anchor:first-child {
  margin-top: 10px;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-anchor:first-child {
    margin-top: -10px;
  }
}

.l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-thumb-text-list:first-child {
  margin-top: -23px;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-wyswyg:first-child {
    padding-top: 15px;
  }
}

.l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-wyswyg:first-child p {
  font-size: 1.8rem;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-wyswyg:first-child p {
    font-size: 1.5rem;
  }
}

.l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-img:first-child + .c-wyswyg > p {
  font-size: 1.8rem;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left .c-container:first-child:not(.not-first) > .c-img:first-child + .c-wyswyg > p {
    font-size: 1.5rem;
  }
}

.l-contents--2clm--left .c-container:first-child.not-first > .c-card--list:first-child {
  margin-top: 3px;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left .c-container:first-child.not-first > .c-card--list:first-child {
    margin-top: 25px;
  }
}

.l-contents--2clm--left .c-container .c-list--bg.clm2 li {
  width: 395px;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left .c-container .c-list--bg.clm2 li {
    width: 100%;
  }
}

.l-contents--2clm--left .c-container .c-list--bg.voice li {
  -ms-flex-line-pack: start;
  align-content: start;
  -webkit-box-pack: left;
  -ms-flex-pack: left;
  justify-content: left;
  text-align: left;
}

.l-contents--2clm--left .c-container .c-list--bg.voice li .title {
  -webkit-box-pack: left;
  -ms-flex-pack: left;
  justify-content: left;
}

.l-contents--2clm--left .c-container .c-btn-3clm--item a {
  width: 254px;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left .c-container .c-btn-3clm--item a {
    width: 100%;
  }
}

.l-contents--2clm--left .c-container .btn-bg--item a {
  width: auto;
  min-width: 310px;
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left .c-container .btn-bg {
    margin: 30px 6.4% 0;
  }
  .l-contents--2clm--left .c-container .btn-bg--item a {
    min-width: unset;
  }
}

@media screen and (max-width: 480px) {
  .l-contents--2clm--left {
    width: 100%;
    padding-bottom: 20px;
  }
}

/* 右サイドナビ */
.g-aside {
  width: 254px;
  padding-top: 42px;
}

.g-aside a {
  position: relative;
  display: block;
  padding: 11px 35px 12px 25px;
  font-size: 1.5rem;
  -webkit-transition: background .3s;
  transition: background .3s;
}

.g-aside a:hover {
  text-decoration: none;
  background: #cceee7;
}

.g-aside a:after {
  display: block;
  position: absolute;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 4px;
  height: 4px;
  top: 50%;
  right: 20px;
  margin-top: -2px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.g-aside a[target="_blank"]:after {
  border: none;
  margin-top: -7px;
  right: 15px;
  width: 14px;
  height: 14px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
  -webkit-transform: rotate(0);
  transform: rotate(0);
}

.g-aside .current > a {
  background: #cceee7;
  color: #231f20;
}

.g-aside li:nth-child(1) a {
  border-bottom: 1px solid #9cded0;
}

.g-aside .accr > a:before {
  display: block;
  position: absolute;
  content: "";
  width: 2px;
  height: 10px;
  top: 50%;
  right: 21px;
  margin-top: -6px;
  background: #0aad8a;
}

.g-aside .accr > a:after {
  border: none;
  width: 10px;
  height: 2px;
  right: 17px;
  margin-top: -2px;
  background: #0aad8a;
  -webkit-transform: rotate(0);
  transform: rotate(0);
}

.g-aside .accr ul {
  display: none;
  background: #f4f4f4;
}

.g-aside .accr ul a {
  padding-left: 40px;
}

.g-aside .accr ul li:nth-child(1) a {
  border-bottom: none;
}

.g-aside .accr.active ul {
  display: block;
}

.g-aside .accr.active > a:before {
  display: none;
}

@media screen and (max-width: 480px) {
  .g-aside {
    display: none;
  }
}

/* お問い合わせ */
.l-contact {
  background: #d5f1eb;
  margin-top: 40px;
}

.l-contact--top {
  background: #f4f4f4;
  padding: 40px;
}

.l-contact--top .btn--g {
  margin: 0 auto;
  width: 442px;
  max-width: unset;
  padding: 12px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .l-contact--top .btn--g {
    max-width: none;
  }
}

.l-contact .c-title-cen {
  padding-top: 35px;
}

.l-contact .c-conv {
  padding-bottom: 35px;
}

@media screen and (max-width: 480px) {
  .l-contact--top {
    padding: 20px 15px;
  }
  .l-contact--top .btn--g {
    width: 100%;
    padding: 15px;
    white-space: normal;
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

/**
 * Page
 */
/* トップページ */
.pg-top {
  /* 重要なお知らせ */
}

.pg-top .l-contents .sectLg {
  padding: 40px 0 50px;
}

@media screen and (max-width: 480px) {
  .pg-top .l-contents .sectLg {
    padding: 38px 0;
  }
}

.pg-top .mainVisual {
  margin-bottom: -4px;
}

.pg-top .mainVisual__item img {
  width: 100%;
}

.pg-top .mainVisual .slick-arrow {
  width: 48px;
  height: 88px;
  background: rgba(0, 0, 0, 0.24);
  top: 50%;
  margin-top: -58px;
  text-indent: -9999px;
  overflow: hidden;
}

.pg-top .mainVisual .slick-prev {
  position: absolute;
  left: 0;
  z-index: 2;
}

.pg-top .mainVisual .slick-prev::before {
  display: block;
  position: absolute;
  content: "";
  top: 50%;
  left: 21px;
  width: 13px;
  height: 13px;
  margin-top: -9px;
  border-right: 3px solid #FFF;
  border-bottom: 3px solid #FFF;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.pg-top .mainVisual .slick-next {
  position: absolute;
  right: 0;
  z-index: 2;
}

.pg-top .mainVisual .slick-next::before {
  display: block;
  position: absolute;
  content: "";
  top: 50%;
  right: 21px;
  width: 13px;
  height: 13px;
  margin-top: -9px;
  border-right: 3px solid #FFF;
  border-bottom: 3px solid #FFF;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.pg-top .mainVisual .slick-dots {
  margin-top: 24px;
  text-align: center;
}

.pg-top .mainVisual .slick-dots li {
  display: inline-block;
  height: 12px;
  width: 12px;
  background: #e7e7e7;
  margin: 0 3px;
  border-radius: 8px;
  text-indent: -9999px;
  overflow: hidden;
  border: 2px solid #FFF;
}

.pg-top .mainVisual .slick-dots li.slick-active {
  background: #FFF;
  border: 2px solid #0aad8a;
}

@media screen and (max-width: 480px) {
  .pg-top .mainVisual .slick-dots {
    margin-top: 16px;
  }
}

@media screen and (max-width: 480px) {
  .pg-top .mainVisual {
    margin-bottom: -30px;
  }
}

.pg-top .important-alert {
  width: 1100px;
  margin: 40px auto 0;
}

.pg-top .important-alert--item {
  background: #ffebeb;
  border: 1px solid #fb5656;
  margin-top: 20px;
  padding: 17px;
  text-align: center;
  color: #fb5656;
  font-size: 1.5rem;
}

.pg-top .important-alert--item a {
  color: #fb5656;
}

@media screen and (max-width: 480px) {
  .pg-top .important-alert {
    width: 87.2%;
    margin: 50px 6.4% -20px;
  }
  .pg-top .important-alert--item {
    margin-top: 15px;
    padding: 14px;
  }
}

@media screen and (max-width: 480px) {
  .pg-top .c-thumb-text--item .thumb {
    float: none;
    width: 100%;
    margin: 0 0 10px;
  }
  .pg-top .c-thumb-text--item .texts {
    float: none;
    width: 100%;
  }
}

.c-clm4-list {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}

.c-clm4-list--item {
  width: 25%;
}

.c-clm4-list--item .title {
  font-size: 1.5rem;
  font-weight: bold;
  color: #606060;
}

.c-clm4-list--item .c-wyswyg {
  margin-top: 20px;
}

.c-clm4-list--item .c-wyswyg a {
  margin-top: 10px;
}

@media screen and (max-width: 480px) {
  .c-clm4-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .c-clm4-list--item {
    width: 100%;
    margin-top: 30px;
  }
  .c-clm4-list--item:first-child {
    margin-top: 0;
  }
  .c-clm4-list--item .title {
    margin: 0 6.4%;
  }
  .c-clm4-list--item .c-wyswyg {
    margin: 0;
    padding-top: 5px;
  }
}

/* 汎用詳細 */
/* 共通 */
#page-general .pageTitle {
  background-image: url(/demoweb/shared/img/support/title_bg.png);
}

#page-general .pageTitle.none {
  background-image: url(/demoweb/shared/img/common/title_bg_none.png);
  height: 40px;
}

/* サービスお申込み */
#page-form {
  padding-bottom: 42px;
}

#page-form .pageTitle {
  background-image: url(/demoweb/shared/img/form/title_bg.png);
}

@media screen and (max-width: 480px) {
  #page-form {
    padding-bottom: 62px;
  }
}

/* サポート */
#page-support .pageTitle {
  background-image: url(/demoweb/shared/img/support/title_bg.png);
}

#page-support .pageTitle.none {
  background-image: url(/demoweb/shared/img/support/title_bg_none.png);
  height: 40px;
}

@media screen and (max-width: 480px) {
  #page-support .pageTitle.none {
    height: 24px;
  }
}

/* 導入事例 */
#page-case .pageTitle {
  background-image: url(/demoweb/shared/img/case/title_bg.png);
}

#page-case .pageTitle.none {
  background-image: url(/demoweb/shared/img/case/title_bg_none.png);
  height: 40px;
}

/* セミナー */
#page-seminar {
  padding-bottom: 42px;
}

#page-seminar .pageTitle {
  background-image: url(/demoweb/shared/img/seminar/title_bg.png);
}

/* ECサービス一覧 */
#page-service .pageTitle {
  background-image: url(/demoweb/shared/img/service/title_bg.png);
}

#page-service .pageTitle.none {
  background-image: url(/demoweb/shared/img/common/title_bg_none.png);
  height: 40px;
}

@media screen and (max-width: 480px) {
  #page-service .pageTitle.none {
    height: 24px;
  }
}

#page-service .p-logo--webcorrect {
  margin: -8px 0 -18px;
}

@media screen and (max-width: 480px) {
  #page-service .p-logo--webcorrect {
    margin: 40px 6.4% 0;
  }
}

#page-service .service-item {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  background: #f4f4f4;
  margin-top: 74px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#page-service .service-item .img {
  width: 348px;
}

#page-service .service-item .texts {
  width: 470px;
  padding: 0 30px;
}

#page-service .service-item .texts .name {
  font-size: 1.4rem;
}

#page-service .service-item .texts .title {
  margin-top: 6px;
  font-size: 2.0rem;
  color: #0aad8a;
  font-weight: 500;
}

#page-service .service-item .texts .body {
  margin-top: 22px;
  font-size: 1.5rem;
}

#page-service .service-item .texts .link a {
  margin-top: 26px;
  display: inline-block;
  border: 1px solid #d1d0d1;
  color: #0aad8a;
  font-size: 1.5rem;
  border-radius: 3px;
  background: #FFF;
  padding: 5px 22px;
  -webkit-transition: all .3s;
  transition: all .3s;
}

#page-service .service-item .texts .link a[target="_blank"]:after {
  position: static;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 16px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

#page-service .service-item .texts .link a:hover {
  border-color: #088a6e;
  color: #088a6e;
  text-decoration: none;
}

@media screen and (max-width: 480px) {
  #page-service .service-item {
    display: block;
    margin: 40px 6.4% 0;
  }
  #page-service .service-item .img {
    width: 100%;
  }
  #page-service .service-item .img img {
    width: 100%;
  }
  #page-service .service-item .texts {
    padding: 20px 15px;
    width: 100%;
  }
}

/* ECソリューション */
#page-solution .pageTitle {
  background-image: url(/demoweb/shared/img/service/ec_service/title_bg.png);
  color: #231f20;
}

@media screen and (max-width: 480px) {
  #page-solution .pageTitle {
    height: auto;
  }
}

#page-solution .pageTitle.none {
  background-image: url(/demoweb/shared/img/service/ec_service/title_bg_none.png);
  height: 40px;
}

/* Grow Together */
#page-group_merit .pageTitle {
  height: auto;
  background: none;
}

#page-group_merit .sectSt {
  padding-bottom: 80px;
}

#page-group_merit .sectSt .c-container {
  width: 724px;
}

@media screen and (max-width: 480px) {
  #page-group_merit .sectSt {
    padding: 0 0 60px;
  }
  #page-group_merit .sectSt .c-container {
    width: 100%;
  }
}

#page-group_merit .c-hdg--xl {
  text-align: center;
}

#page-group_merit .c-hdg--xl .main {
  padding-bottom: 40px;
}

#page-group_merit .c-hdg--xl .main:before {
  content: '';
  position: absolute;
  bottom: -2px;
  left: -8px;
  width: 8px;
  height: 2px;
  background-color: #fff;
}

#page-group_merit .c-hdg--xl .sub {
  position: absolute;
  left: 0;
  width: 100%;
  bottom: 5px;
  text-align: center;
  display: block;
  font-size: 1.4rem;
  border: none;
}

#page-group_merit .c-hdg--xl .sub:after {
  display: none;
}

#page-group_merit .group_merit--txt-img {
  margin-top: 35px;
  text-align: center;
}

#page-group_merit .group_merit--txt-img .txt {
  font-size: 1.6rem;
}

#page-group_merit .group_merit--txt-img .img {
  margin-top: 30px;
}

@media screen and (max-width: 480px) {
  #page-group_merit .group_merit--txt-img {
    margin-left: 6.4%;
    margin-right: 6.4%;
  }
  #page-group_merit .group_merit--txt-img .txt {
    font-size: 1.5rem;
  }
  #page-group_merit .group_merit--txt-img .img img {
    width: 100%;
  }
}

/*  パートナーシップ */
#page-partner .pageTitle {
  height: 210px;
  background-image: url(/demoweb/shared/img/partner/title_bg.png);
}

@media screen and (max-width: 480px) {
  #page-partner .pageTitle {
    height: auto;
  }
}

/*  各種サービスログイン */
#page-member .pageTitle {
  height: 210px;
  background-image: url(/demoweb/shared/img/support/title_bg.png);
}

#page-member .pageTitle.none {
  background-image: url(/demoweb/shared/img/common/title_bg_none.png);
  height: 40px;
}

/*  メンテナンス */
.pg-maintenance .l-header {
  height: 101px;
  background: url(/demoweb/shared/img/common/title_bg_none.png) no-repeat 0 100%/100% 15px #FFF;
  margin-bottom: 0;
}

@media screen and (max-width: 480px) {
  .pg-maintenance .l-header {
    height: 55px;
    background-image: none;
  }
}

@media screen and (max-width: 480px) {
  .pg-maintenance .l-header + * {
    background: url(/demoweb/shared/img/common/title_bg_none.png) no-repeat 0 0/100% 15px #FFF;
    padding-top: 1px !important;
    margin-top: 55px !important;
  }
}

@media screen and (max-width: 480px) {
  .pg-maintenance #page-general {
    padding-top: 10px;
  }
}

@media screen and (max-width: 480px) {
  .pg-maintenance .b-footer {
    padding-bottom: 30px;
  }
}

/* らくうるカート */
#page-cart {
  padding: 15px 0 50px;
}

#page-cart .c-card--item .date {
  margin-bottom: 4px;
  font-size: 1.4rem;
}

#page-cart .c-card--item .title {
  font-size: 2rem;
}

@media screen and (max-width: 480px) {
  #page-cart .c-card--item .date {
    margin-top: 10px;
  }
}

#page-cart .c-titleset .sub {
  font-size: 1.8rem;
  color: #0aad8a;
}

@media screen and (max-width: 480px) {
  #page-cart .c-titleset {
    margin-top: 20px;
  }
  #page-cart .c-titleset .sub {
    font-size: 1.6rem;
  }
}

#page-cart .mv {
  margin-top: 35px;
}

#page-cart .to-back-btn .c-btn-1clm--item a {
  width: 216px;
}

#page-cart .to-back-btn .c-btn-1clm--item a:hover {
  background: #0aad8a;
  color: #FFF;
}

@media screen and (max-width: 480px) {
  #page-cart .to-back-btn .c-btn-1clm--item a {
    width: 87.2%;
  }
}

@media screen and (max-width: 480px) {
  #page-cart {
    margin-top: 5px;
    padding: 0 0 30px;
  }
}

header.pg-cart {
  height: 100px;
  border-bottom: 1px solid #e7e7e7;
}

@media screen and (max-width: 480px) {
  header.pg-cart {
    height: 61px;
  }
}

header.pg-cart .logo {
  margin: 22px 0 0 10px;
}

@media screen and (max-width: 480px) {
  header.pg-cart .logo {
    margin: 10px 0 0 10px;
  }
  header.pg-cart .logo img {
    width: 210px;
  }
}

header.pg-cart .btn {
  float: right;
  margin-top: 26px;
}

header.pg-cart .btn a {
  position: relative;
  display: block;
  width: 128px;
  height: 47px;
}

header.pg-cart .btn a:hover {
  color: inherit;
  top: 4px;
}

header.pg-cart .btn a:hover:before {
  display: none;
}

header.pg-cart .btn a span {
  position: relative;
  display: block;
  line-height: 47px;
  height: 47px;
  background: #f8d639;
  font-size: 1.4rem;
  text-align: center;
  border-radius: 6px;
  z-index: 2;
}

header.pg-cart .btn a:before {
  display: block;
  content: "";
  background: #d0b80f;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 6px;
  z-index: 1;
  bottom: -4px;
  left: 0;
}

header.pg-cart .btn a .is-sp {
  display: none;
}

@media screen and (max-width: 480px) {
  header.pg-cart .btn {
    margin: 0;
  }
  header.pg-cart .btn a {
    width: 60px;
    height: 60px;
    border-radius: 0;
    font-size: 1rem;
  }
  header.pg-cart .btn a span {
    line-height: 1.2;
    height: 60px;
    border-radius: 0;
  }
  header.pg-cart .btn a:hover {
    top: 0;
  }
  header.pg-cart .btn a:before {
    display: none;
  }
  header.pg-cart .btn a .is-pc {
    display: none;
  }
  header.pg-cart .btn a .is-sp {
    display: block;
  }
}

footer.pg-cart {
  background: #00c7bb;
}

footer.pg-cart .l-footer__inner {
  width: 1100px;
  margin: 0 auto;
}

footer.pg-cart .l-footer__inner .copyright {
  padding: 24px 0;
  text-align: right;
  color: #FFF;
  font-size: 1.4rem;
}

@media screen and (max-width: 480px) {
  footer.pg-cart .l-footer__inner {
    width: 100%;
  }
  footer.pg-cart .l-footer__inner .copyright {
    padding: 12px 20px;
    font-size: 1.0rem;
    text-align: left;
  }
}

/**
 * Component
 */
.c-container {
  margin: auto;
  padding: 0;
  width: 1100px;
}

@media screen and (max-width: 480px) {
  .c-container {
    width: auto;
  }
}

.c-container > .c-hdg--xl:first-child {
  margin-top: 0;
}

.c-container > .c-anchor:first-child {
  margin-top: 10px;
}

@media screen and (max-width: 480px) {
  .c-container > .c-anchor:first-child {
    margin-top: -20px;
  }
}

/* ページタイトル */
.pageTitle {
  background: url(/demoweb/shared/img/form/title_bg.png) no-repeat 0 0;
  background-size: cover;
  color: #FFF;
}

.pageTitle.none {
  height: 40px;
}

.pageTitle--inner {
  width: 1038px;
  margin: 0 auto;
  padding: 42px 0;
}

.pageTitle--title {
  margin-bottom: 13px;
  font-size: 3.6rem;
}

.pageTitle--copy {
  font-size: 1.5rem;
  font-weight: bold;
}

@media screen and (max-width: 480px) {
  .pageTitle {
    height: auto;
    min-height: 120px;
  }
  .pageTitle.none {
    min-height: unset;
    background-size: auto 24px;
    height: 24px;
  }
  .pageTitle.none .pageTitle--inner {
    padding: 0;
  }
  .pageTitle--inner {
    width: 100%;
    padding: 40px 6.4%;
  }
  .pageTitle--title {
    font-size: 2.4rem;
    margin-bottom: 0;
  }
}

/* ページタイトル（下層） */
.subPageTitle {
  width: 1100px;
  margin: 31px auto 0;
}

.subPageTitle .title {
  font-size: 3.0rem;
}

.subPageTitle .date {
  margin-bottom: 40px;
  font-size: 1.5rem;
}

@media screen and (max-width: 480px) {
  .subPageTitle {
    width: 87.2%;
    margin: 30px 6.4% 0;
  }
  .subPageTitle .title {
    font-size: 2.6rem;
  }
  .subPageTitle .date {
    margin-bottom: 10px;
  }
}

.page--copy {
  margin-top: 22px;
  font-size: 1.6em;
}

.c-titleset {
  width: 1100px;
  margin: 37px auto -30px;
}

.c-titleset .name {
  color: #0aad8a;
  font-size: 1.4rem;
  letter-spacing: 1px;
}

.c-titleset .title {
  font-size: 3.0rem;
}

.c-titleset .service {
  margin-top: 15px;
  font-size: 1.2rem;
  color: #666666;
}

@media screen and (max-width: 480px) {
  .c-titleset {
    width: 87.2%;
    margin: 34px 6.4% -40px;
  }
  .c-titleset .title {
    margin-top: 2px;
    font-size: 2.6rem;
    line-height: 1.4;
  }
}

/* パンくず */
.breadcrumbs {
  position: relative;
  width: 1038px;
  margin: 0 auto;
  padding: 18px 0 8px;
  font-size: 1.4rem;
  color: #a6a4a4;
  z-index: 2;
}

.breadcrumbs li {
  display: inline-block;
}

.breadcrumbs li a {
  display: inline-block;
}

.breadcrumbs li a:after {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #a6a4a4;
  border-right: 2px solid #a6a4a4;
  width: 4px;
  height: 4px;
  margin: 0 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

@media screen and (max-width: 480px) {
  .breadcrumbs {
    display: none;
  }
}

.breadcrumbs + .sectLg {
  padding-bottom: 80px;
}

@media screen and (max-width: 480px) {
  .breadcrumbs + .sectLg {
    padding-bottom: 40px;
  }
}

/* 一覧を見る */
.btn-more {
  position: relative;
  margin: 30px 0 -2px;
  font-size: 1.5rem;
  text-align: center;
}

.btn-more:before {
  position: absolute;
  display: block;
  content: "";
  left: 50%;
  top: 0;
  width: 1px;
  height: 9px;
  margin-left: -1px;
  background: #0aad8a;
}

.btn-more:after {
  position: absolute;
  display: block;
  content: "";
  left: 50%;
  top: 4px;
  width: 9px;
  height: 1px;
  margin-left: -5px;
  background: #0aad8a;
}

.btn-more.news {
  margin: 30px 0 40px;
}

@media screen and (max-width: 480px) {
  .btn-more.news {
    margin: 20px 0 30px;
  }
}

.btn-more a {
  display: block;
  padding-top: 16px;
  line-height: 1;
}

@media screen and (max-width: 480px) {
  .btn-more {
    margin: 24px 0 10px;
  }
}

/* ボタン */
.btn--g {
  position: relative;
  display: block;
  width: 100%;
  max-width: 216px;
  background: #0aad8a;
  border-radius: 3px;
  padding: 8px 0;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  color: #FFF;
}

.btn--g + .btn--w {
  margin-top: 7px;
}

.btn--g[target="_blank"]:after {
  content: '';
  display: inline-block;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -7px;
  width: 14px;
  height: 14px;
  background: url(/demoweb/shared/img/common/icon_blank.png) no-repeat 50% 50%/14px auto;
}

.btn--g:hover {
  text-decoration: none;
}

@media screen and (max-width: 480px) {
  .btn--g {
    display: inline-block;
    width: auto;
    max-width: unset;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-size: 1.5rem;
    padding: 8px 23px;
  }
}

@media screen and (max-width: 480px) and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .btn--g {
    max-width: none;
  }
}

@media screen and (max-width: 480px) {
  .btn--g[target="_blank"] {
    padding-right: 46px;
  }
}

.btn--w {
  position: relative;
  display: block;
  width: 100%;
  max-width: 216px;
  background: #FFF;
  border: 1px solid #d1d0d1;
  border-radius: 3px;
  padding: 7px 0;
  font-size: 1.6rem;
  text-align: center;
  color: #0aad8a;
}

.btn--w[target="_blank"]:after {
  content: '';
  display: inline-block;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -7px;
  width: 14px;
  height: 14px;
  margin-left: 8px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.btn--w:hover {
  text-decoration: none;
}

@media screen and (max-width: 480px) {
  .btn--w {
    font-size: 1.5rem;
    width: auto;
    max-width: 176px;
  }
}

/* 見出し */
.c-hdg {
  margin: 2em auto 1.5em;
}

.c-hdg + *[class^="c-"] {
  margin-top: 0;
}

.c-hdg--xl {
  position: relative;
  margin-top: 68px;
  font-size: 2.4rem;
  font-weight: 500;
}

.c-hdg--xl span {
  position: relative;
  display: inline-block;
  padding-bottom: 16px;
  border-bottom: 2px solid #0aad8a;
  z-index: 2;
}

.c-hdg--xl span:after {
  content: '';
  position: absolute;
  bottom: -2px;
  right: -8px;
  width: 8px;
  height: 2px;
  background-color: #fff;
}

.c-hdg--xl span.target {
  position: relative;
  display: block;
  border: none;
  padding-bottom: 0;
  color: #0aad8a;
  font-size: 1.8rem;
  font-weight: 300;
}

.c-hdg--xl span.target:after {
  display: none;
}

@media screen and (max-width: 480px) {
  .c-hdg--xl span.target {
    font-size: 1.6rem;
  }
}

.c-hdg--xl:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #e7e7e7;
}

.c-hdg--xl + .c-hdg--lg {
  margin-top: 32px;
}

.c-hdg--xl + .c-list--bg {
  margin-top: 23px;
}

.c-hdg--xl + .p-logo--webcorrect {
  margin-top: 40px !important;
}

@media screen and (max-width: 480px) {
  .c-hdg--xl {
    margin: 48px 6.4% 0;
    font-size: 2.2rem;
  }
  .c-hdg--xl + .c-img-txt {
    margin-top: 32px;
  }
}

.c-hdg--lg {
  margin: 49px 0 -16px;
  font-size: 2.0rem;
  color: #0aad8a;
  font-weight: 500;
}

@media screen and (max-width: 480px) {
  .c-hdg--lg {
    margin: 40px 6.4% -18px;
    font-size: 1.8rem;
  }
}

.c-hdg--lg + .c-service--2clm {
  margin-top: 9px;
}

.c-hdg--lg + .c-hdg--md {
  margin-top: 32px;
}

.c-hdg--lg + .c-list--bg {
  margin-top: 20px;
}

.c-hdg--lg + .c-browser {
  margin-top: 35px;
}

@media screen and (max-width: 480px) {
  .c-hdg--lg + .c-browser {
    margin-top: 25px;
  }
}

@media screen and (max-width: 480px) {
  .c-hdg--lg + .c-img-txt {
    margin-top: 35px;
  }
}

.c-hdg--md {
  margin-top: 22px;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: left;
  text-indent: -1em;
  margin-left: 1em;
}

.c-hdg--md:before {
  display: inline-block;
  content: "";
  position: static;
  width: 12px;
  height: 12px;
  background: #0aad8a;
  margin-right: 8px;
}

.c-hdg--md + .c-img {
  margin-top: 18px;
}

.c-hdg--md + .c-table-set {
  margin-top: -18px;
}

.c-hdg--md + .c-wyswyg {
  margin-top: 15px;
}

@media screen and (max-width: 480px) {
  .c-hdg--md + .c-wyswyg {
    margin-top: -15px;
  }
}

.c-hdg--md + .c-img-txt {
  margin-top: -10px;
}

@media screen and (max-width: 480px) {
  .c-hdg--md + .c-img-txt {
    margin-top: 10px;
  }
}

@media screen and (max-width: 480px) {
  .c-hdg--md {
    margin: 22px 6.4% 0 calc(1em + 6.4%);
  }
}

.c-hdg--sm {
  font-size: 2rem;
}

.c-hdg--sm:before {
  width: 8px;
}

@media screen and (max-width: 480px) {
  .c-hdg--sm {
    font-size: 1.8rem;
  }
}

.c-hdg--mn {
  font-size: 1.8rem;
  font-weight: bold;
}

.c-hdg--label {
  margin-top: 40px;
}

.c-hdg--label span {
  display: inline-block;
  background: #cceee7;
  padding: 14px 110px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #0aad8a;
  line-height: 1;
}

@media screen and (max-width: 480px) {
  .c-hdg--label {
    margin: 30px 6.4% 0;
  }
  .c-hdg--label span {
    padding: 15px 80px;
    font-size: 1.5rem;
  }
}

/* コンポーネント共通 */
.c-thumb-text,
.c-thumb-icon,
.c-3clm {
  font-size: 1.6rem;
}

@media screen and (max-width: 480px) {
  .c-thumb-text,
  .c-thumb-icon,
  .c-3clm {
    font-size: 1.5rem;
  }
}

/* サムネイル+テキスト */
.c-thumb-text {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -38px 0 5px;
  font-size: 0;
}

@media screen and (max-width: 480px) {
  .c-thumb-text {
    display: block;
    margin: -5px 6.4% 2px;
  }
}

@media screen and (max-width: 480px) {
  .c-thumb-text.clm-3 {
    margin-top: 30px;
  }
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-thumb-text.clm-3 {
    width: 1105px;
  }
}

.c-thumb-text.clm-3 .c-thumb-text--item {
  width: 348px;
}

.c-thumb-text.clm-3 .c-thumb-text--item a {
  padding-bottom: 47px;
}

.c-thumb-text.clm-3 .c-thumb-text--item a img {
  width: 100%;
}

.c-thumb-text.clm-3 .c-thumb-text--item:nth-child(4n + 1) {
  margin-left: 28px;
}

.c-thumb-text.clm-3 .c-thumb-text--item:nth-child(3n + 1) {
  margin-left: 0;
}

@media screen and (max-width: 480px) {
  .c-thumb-text.clm-3 .c-thumb-text--item {
    width: 100%;
    margin: 22px 0 0;
  }
  .c-thumb-text.clm-3 .c-thumb-text--item a {
    padding-bottom: 0;
  }
  .c-thumb-text.clm-3 .c-thumb-text--item:nth-child(4n + 1) {
    margin-left: 0;
  }
  .c-thumb-text.clm-3 .c-thumb-text--item .service {
    margin-top: 4px;
    line-height: 1.2;
  }
}

@media screen and (max-width: 480px) {
  .c-thumb-text.clm-5 {
    margin-top: 30px;
  }
}

.c-thumb-text.clm-5 .c-thumb-text--item {
  width: 200px;
  margin-left: 25px;
}

.c-thumb-text.clm-5 .c-thumb-text--item a {
  padding-bottom: 18px;
}

.c-thumb-text.clm-5 .c-thumb-text--item:nth-child(3n + 1) {
  margin-left: 25px;
}

.c-thumb-text.clm-5 .c-thumb-text--item:nth-child(5n + 1) {
  margin-left: 0;
}

.c-thumb-text.clm-5 .c-thumb-text--item .service {
  position: relative;
  margin-top: 14px;
}

@media screen and (max-width: 480px) {
  .c-thumb-text.clm-5 .c-thumb-text--item {
    width: 100%;
    margin: 22px 0 0;
  }
  .c-thumb-text.clm-5 .c-thumb-text--item a {
    padding-bottom: 0;
  }
  .c-thumb-text.clm-5 .c-thumb-text--item:nth-child(3n + 1) {
    margin-left: 0;
  }
  .c-thumb-text.clm-5 .c-thumb-text--item .service {
    margin-top: 4px;
    line-height: 1.2;
  }
}

.c-thumb-text.no-link .c-thumb-text--item {
  margin-bottom: -8px;
  font-weight: bold;
}

.c-thumb-text.no-link .c-thumb-text--item a {
  padding-bottom: 0;
}

.c-thumb-text--item {
  position: relative;
  width: 254px;
  margin: 38px 0 0 28px;
}

.c-thumb-text--item:nth-child(4n + 1) {
  margin-left: 0;
}

.c-thumb-text--item a {
  display: block;
  padding-bottom: 28px;
  color: #231f20;
}

.c-thumb-text--item a:hover {
  text-decoration: none;
}

.c-thumb-text--item .title {
  font-size: 1.6rem;
}

.c-thumb-text--item .name {
  font-size: 1.6rem;
}

.c-thumb-text--item .copy {
  margin-top: 10px;
  font-size: 1.4rem;
}

.c-thumb-text--item .thumb {
  margin-bottom: 17px;
}

.c-thumb-text--item .service {
  position: absolute;
  left: 0;
  bottom: 0;
  color: #0aad8a;
  font-size: 1.2rem;
}

@media screen and (max-width: 480px) {
  .c-thumb-text--item {
    width: 100%;
    margin: 0;
    margin-top: 23px;
    padding-bottom: 0;
    overflow: hidden;
  }
  .c-thumb-text--item a {
    padding-bottom: 0;
  }
  .c-thumb-text--item .thumb {
    float: left;
    width: 120px;
    margin-right: 17px;
  }
  .c-thumb-text--item .texts {
    float: right;
    width: calc(100% - 137px);
    margin-top: -3px;
  }
  .c-thumb-text--item .copy {
    margin-top: 5px;
    font-size: 1.2rem;
  }
  .c-thumb-text--item .title {
    font-size: 1.6rem;
  }
  .c-thumb-text--item .service {
    position: relative;
    margin-top: 4px;
    bottom: auto;
  }
}

.c-thumb-text.no-service {
  margin-bottom: -15px;
}

.c-thumb-text.no-service .c-thumb-text--item a {
  padding-bottom: 0;
}

@media screen and (max-width: 480px) {
  .c-thumb-text.no-service {
    margin-bottom: 0;
  }
}

/* サムネイル+アイコン */
.c-thumb-icon {
  margin: 0 -2px;
}

@media screen and (max-width: 480px) {
  .c-thumb-icon {
    margin: 0;
  }
}

.c-thumb-icon--list {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -4px;
}

@media screen and (max-width: 480px) {
  .c-thumb-icon--list {
    margin: -2px calc(6.4% - 3px);
  }
}

.c-thumb-icon--list.clm-5 {
  margin: -5px 0 -2px -1px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-thumb-icon--list.clm-5 {
    width: 1105px;
  }
}

.c-thumb-icon--list.clm-5 .c-thumb-icon--item {
  background: #0aad8a;
  width: 216px;
  margin: 5px 2px 0 3px;
  padding-bottom: 35px;
}

.c-thumb-icon--list.clm-5 .c-thumb-icon--item a {
  color: #FFF;
}

.c-thumb-icon--list.clm-5 .c-thumb-icon--item .thumb {
  margin: 54px 0 20px;
}

.c-thumb-icon--list.clm-5 .c-thumb-icon--item .title {
  margin-bottom: 0;
  line-height: 1.4;
}

.c-thumb-icon--list.clm-5 .c-thumb-icon--item:hover {
  background: #FFF;
}

.c-thumb-icon--list.clm-5 .c-thumb-icon--item:hover .title {
  color: #0aad8a;
}

@media screen and (max-width: 480px) {
  .c-thumb-icon--list.clm-5 {
    margin: 0 calc(6.4% - 3px);
  }
  .c-thumb-icon--list.clm-5 .c-thumb-icon--item {
    width: calc(50% - 5px);
    padding-bottom: 25px;
  }
  .c-thumb-icon--list.clm-5 .c-thumb-icon--item .thumb {
    margin: 30px 0 13px;
  }
  .c-thumb-icon--list.clm-5 .c-thumb-icon--item .thumb img {
    height: 32px;
    width: auto;
  }
}

.c-thumb-icon--item {
  position: relative;
  background: #fecb0a;
  width: 180px;
  margin: 4px 2px 0;
  padding-bottom: 27px;
  text-align: center;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.c-thumb-icon--item a {
  display: block;
  color: #231f20;
}

.c-thumb-icon--item .thumb {
  margin: 34px 0 20px;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 64px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.c-thumb-icon--item .title {
  margin-bottom: 8px;
  font-weight: bold;
}

.c-thumb-icon--item .copy {
  font-size: 1.4rem;
  line-height: 1.4;
}

.c-thumb-icon--item:hover {
  background: #FFF;
  -webkit-box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
  box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
}

.c-thumb-icon--item:hover a {
  text-decoration: none;
}

.c-thumb-icon--item:hover .title {
  color: #0ad0fe;
}

@media screen and (max-width: 480px) {
  .c-thumb-icon--item {
    width: calc(50% - 5px);
    margin: 5px 3px 0 2px;
    padding-bottom: 20px;
  }
  .c-thumb-icon--item:nth-child(1) .thumb img,
  .c-thumb-icon--item:nth-child(4) .thumb img {
    height: 40px;
  }
  .c-thumb-icon--item .thumb {
    margin: 30px 0 11px;
    height: 51px;
  }
  .c-thumb-icon--item .thumb img {
    width: auto;
    height: 51px;
  }
  .c-thumb-icon--item .title {
    margin-bottom: 5px;
  }
}

/* 中央見出し */
.c-title-cen {
  margin: -3px 0 28px;
  font-size: 2.4rem;
  text-align: center;
  line-height: 1;
  color: #0aad8a;
}

@media screen and (max-width: 480px) {
  .c-title-cen {
    font-size: 1.8rem;
    margin: -4px 6.4% 23px;
    line-height: 1.3;
  }
}

/* リンクリスト */
@media screen and (max-width: 480px) {
  .c-list {
    padding: 0 4.3%;
  }
}

.c-list--item a {
  position: relative;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background: #FFF;
  border-bottom: 1px solid #e7e7e7;
  padding: 20px 32px 16px;
  font-size: 1.5rem;
  line-height: 1.4;
  -webkit-transition: background .3s;
  transition: background .3s;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-list--item a {
    width: 1100px;
    height: auto !important;
  }
}

.c-list--item a .date {
  width: 215px;
  color: #606060;
  white-space: nowrap;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-list--item a .date {
    position: static !important;
    display: inline-block !important;
    height: auto !important;
    vertical-align: top;
  }
}

.c-list--item a .place {
  width: 125px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-list--item a .place {
    position: static !important;
    display: inline-block !important;
    height: auto !important;
    vertical-align: top;
  }
}

.c-list--item a .title {
  width: 510px;
  padding-right: 20px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-list--item a .title {
    position: static !important;
    display: inline-block !important;
    height: auto !important;
    vertical-align: top;
  }
}

.c-list--item a .title span {
  display: inline-block;
  padding-bottom: 2px;
  border-bottom: 1px solid #FFF;
  -webkit-transition: border .3s;
  transition: border .3s;
}

.c-list--item a .status {
  color: #606060;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-list--item a .status {
    position: static !important;
    display: inline-block !important;
    height: auto !important;
    vertical-align: top;
  }
}

.c-list--item a[href$=".pdf"]::before {
  display: block;
  content: "";
  position: absolute;
  width: 42px;
  height: 16px;
  right: 24px;
  top: 20px;
  background: url(/demoweb/shared/img/common/icon_pdf.png) no-repeat 0 0/42px auto;
}

@media screen and (max-width: 480px) {
  .c-list--item a[href$=".pdf"]::before {
    right: 2px;
  }
}

.c-list--item a:hover {
  background: #f4f4f4;
  text-decoration: none;
}

.c-list--item a:hover .title {
  color: #088a6e;
}

.c-list--item a:hover .title span {
  border-bottom: 1px solid #088a6e;
}

@media screen and (max-width: 480px) {
  .c-list--item a {
    padding: 21px 15px 20px;
    font-size: 1.3rem;
  }
  .c-list--item a .date {
    width: 180px;
  }
  .c-list--item a .place {
    width: auto;
  }
  .c-list--item a .title {
    margin-top: 6px;
    width: 100%;
    line-height: 1.7;
  }
  .c-list--item a .status {
    margin-top: 5px;
  }
}

.c-list--in-title {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: left;
  -ms-flex-align: left;
  align-items: left;
  background: #FFF;
  margin-bottom: -2px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-list--in-title {
    height: auto !important;
  }
  .c-list--in-title .c-list {
    height: auto !important;
    position: relative !important;
  }
}

.c-list--in-title + .c-list--in-title {
  margin-top: 16px;
}

.c-list--in-title .list-title {
  margin: 20px 0 0 32px;
  width: 154px;
  font-size: 1.5rem;
  font-weight: bold;
  color: #0aad8a;
}

.c-list--in-title .c-list--item a {
  width: 912px;
  padding-left: 0;
  padding-right: 70px;
}

.c-list--in-title .c-list--item .date {
  width: 190px;
}

.c-list--in-title .c-list--item .title {
  width: 652px;
}

@media screen and (max-width: 480px) {
  .c-list--in-title {
    display: block;
    margin: 0 4.3%;
  }
  .c-list--in-title .list-title {
    margin: 0;
    padding: 20px 15px 0;
    width: calc(100% - 30px);
  }
  .c-list--in-title .c-list--item a {
    padding: 19px 2px 16px;
    width: 100%;
  }
  .c-list--in-title .c-list--item .title {
    margin-top: 8px;
    width: 100%;
  }
}

/* バナー群 */
.c-banners {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: -38px -14px 0;
}

.c-banners li {
  margin: 38px 14px 0;
}

.c-banners li a {
  display: block;
}

.c-banners + .btn-more {
  margin-top: 6px;
}

@media screen and (max-width: 480px) {
  .c-banners {
    display: block;
    margin: 26px 6.4% 0;
  }
  .c-banners li {
    margin: 9px 0 0;
  }
  .c-banners li img {
    width: 100%;
  }
  .c-banners + .btn-more {
    margin-top: 23px;
  }
}

/* 2カラム本文 */
.c-2clm {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 32px;
}

.c-2clm--item {
  width: 550px;
}

.c-2clm--item p {
  line-height: 1.85;
}

.c-2clm--item p.note {
  margin-top: 10px;
  font-size: 1.2rem;
}

.c-2clm--item .copy {
  margin-bottom: 25px;
  font-size: 2.0rem;
  font-weight: 500;
  color: #0aad8a;
  line-height: 1.4;
  letter-spacing: -1px;
}

.c-2clm--item input[type="text"] {
  width: 348px;
  border-radius: 3px;
  font-size: 1.4rem;
  padding: 8px 14px;
  margin-bottom: 4px;
  border: 1px solid #d1d0d1;
}

.c-2clm--item input[type="text"] + input[type="text"] {
  margin-bottom: 15px;
}

@media screen and (max-width: 480px) {
  .c-2clm {
    margin: 24px 6.4% -3px;
  }
  .c-2clm--item {
    width: 100%;
  }
  .c-2clm--item .copy {
    margin-bottom: 17px;
    font-size: 1.8rem;
  }
  .c-2clm--item input[type="text"] {
    width: 100%;
  }
  .c-2clm--item + .c-2clm--item {
    margin-top: 20px;
  }
}

/* 3カラム本文 */
.c-3clm {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 32px;
}

.c-3clm--item:nth-child(1) {
  width: 260px;
  margin-right: 61px;
}

.c-3clm--item:nth-child(2) {
  width: 260px;
  margin: 0 55px;
}

.c-3clm--item:nth-child(3) {
  width: 348px;
  margin-left: 61px;
}

.c-3clm--item p {
  line-height: 1.85;
}

.c-3clm--item .copy {
  margin-bottom: 25px;
  font-size: 2.0rem;
  font-weight: 500;
  color: #0aad8a;
  line-height: 1.4;
  letter-spacing: -1px;
}

.c-3clm--item #form--order {
  padding: 3px 0;
}

.c-3clm--item #form--order input[type="text"] {
  width: 100%;
  border: 1px solid #d1d0d1;
  border-radius: 3px 3px 0 0;
  padding: 9px 12px;
  font-size: 1.4rem;
}

.c-3clm--item #form--order input[type="text"]:nth-child(2) {
  border-top: none;
  border-radius: 0 0 3px 3px;
}

.c-3clm--item #form--order .btn--g {
  margin-top: 15px;
}

@media screen and (max-width: 480px) {
  .c-3clm {
    margin: 24px 6.4% -3px;
  }
  .c-3clm--item:nth-child(1) {
    width: 100%;
    margin: 0;
  }
  .c-3clm--item:nth-child(2) {
    width: 100%;
    margin: 24px 0 0;
  }
  .c-3clm--item:nth-child(3) {
    width: 100%;
    margin: 34px 0 0;
  }
  .c-3clm--item .copy {
    margin-bottom: 17px;
    font-size: 1.8rem;
  }
}

/* wyswyg */
.c-wyswyg {
  margin-top: 32px;
  font-size: 1.6rem;
  line-height: 1.7;
}

@media screen and (max-width: 480px) {
  .c-wyswyg {
    display: block;
    margin: 0;
    padding: 30px 6.4% 0;
    font-size: 1.5rem;
    overflow-x: auto;
  }
}

.c-wyswyg p, .c-wyswyg ul, .c-wyswyg ol, .c-wyswyg dl {
  margin-top: 2.6rem;
}

.c-wyswyg p:first-child, .c-wyswyg ul:first-child, .c-wyswyg ol:first-child, .c-wyswyg dl:first-child {
  margin-top: 0;
}

.c-wyswyg p.link, .c-wyswyg ul.link, .c-wyswyg ol.link, .c-wyswyg dl.link {
  margin-top: 0;
}

.c-wyswyg p.link a:before, .c-wyswyg ul.link a:before, .c-wyswyg ol.link a:before, .c-wyswyg dl.link a:before {
  display: inline-block;
}

.c-wyswyg p a, .c-wyswyg ul a, .c-wyswyg ol a, .c-wyswyg dl a {
  display: inline;
  margin: 0;
  font-size: 1.6rem;
}

.c-wyswyg p a:before, .c-wyswyg ul a:before, .c-wyswyg ol a:before, .c-wyswyg dl a:before {
  display: none;
}

.c-wyswyg p a.inline, .c-wyswyg ul a.inline, .c-wyswyg ol a.inline, .c-wyswyg dl a.inline {
  padding-left: 0;
  text-decoration: underline;
}

.c-wyswyg p a.inline:hover, .c-wyswyg ul a.inline:hover, .c-wyswyg ol a.inline:hover, .c-wyswyg dl a.inline:hover {
  text-decoration: none;
}

@media screen and (max-width: 480px) {
  .c-wyswyg p a, .c-wyswyg ul a, .c-wyswyg ol a, .c-wyswyg dl a {
    font-size: 1.5rem;
  }
}

.c-wyswyg p + ol,
.c-wyswyg p + ul {
  margin: 0 0 0 1.5em;
}

.c-wyswyg ol + p,
.c-wyswyg ul + p {
  margin-top: 0;
}

.c-wyswyg .alert {
  color: #ff3700;
}

.c-wyswyg .success {
  color: #0aad8a;
}

.c-wyswyg.t-center a:before, .c-wyswyg.t-right a:before {
  display: inline-block;
  position: static;
  margin-right: 12px;
  vertical-align: 2px;
}

.c-wyswyg a {
  position: relative;
  margin-top: 7px;
  padding-left: 20px;
  font-size: 1.5rem;
  color: #0aad8a;
}

.c-wyswyg a:before {
  display: block;
  position: absolute;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  top: 10px;
  left: 0;
  width: 5px;
  height: 5px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-wyswyg a.t-center:before, .c-wyswyg a.t-right:before {
  display: inline-block;
  position: static;
  margin-right: 12px;
  vertical-align: 2px;
}

.c-wyswyg a[href^="#"]:after, .c-wyswyg a[target="_blank"]:after, .c-wyswyg a[href$=".pdf"]:after, .c-wyswyg a[href$=".doc"]:after, .c-wyswyg a[href$=".xls"]:after, .c-wyswyg a[href$=".ppt"]:after, .c-wyswyg a.linkIconPdf:after {
  content: '';
  display: inline-block;
  width: 10px;
  height: 14px;
  margin-left: 0.5em;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: 0 0;
}

.c-wyswyg a[target="_blank"]:after {
  width: 14px;
  height: 14px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-wyswyg a[href$=".pdf"]:after, .c-wyswyg a.linkIconPdf:after {
  width: 42px;
  height: 18px;
  padding-right: 10px;
  vertical-align: -3px;
  background-image: url(/demoweb/shared/img/common/icon_pdf.png);
  background-size: 42px auto;
}

.c-wyswyg strong {
  font-weight: bold;
}

.c-wyswyg em {
  font-style: italic;
}

.c-wyswyg del {
  text-decoration: line-through;
}

.c-wyswyg ul {
  padding-left: 1em;
}

.c-wyswyg ul > li {
  padding-left: 0;
}

.c-wyswyg ul > li > ul:last-of-type,
.c-wyswyg ul > li > ol:last-of-type {
  margin-bottom: 0.9em;
}

.c-wyswyg ol {
  padding-left: 1em;
}

.c-wyswyg ol > li {
  padding-left: 1em;
}

.c-wyswyg ol > li > ul:last-of-type,
.c-wyswyg ol > li > ol:last-of-type {
  margin-bottom: 0.9em;
}

.c-wyswyg ul > li {
  position: relative;
}

.c-wyswyg ul > li:before {
  position: absolute;
  display: block;
  content: "";
  width: 4px;
  height: 4px;
  background: #231f20;
  border-radius: 4px;
  left: -1em;
  top: 12px;
}

.c-wyswyg ul + small {
  padding-top: 15px;
}

.c-wyswyg ol.list-none > li:before,
.c-wyswyg ul.list-none > li:before {
  display: none;
}

.c-wyswyg ol > li {
  list-style: decimal;
}

.c-wyswyg hr {
  margin-top: 2em;
  border-top: 1px solid #efefef;
}

.c-wyswyg small {
  display: block;
  padding-top: 5px;
  font-size: 1.2rem;
}

.c-wyswyg small a {
  font-size: 1.2rem;
  padding-left: 0;
  text-decoration: underline;
}

.c-wyswyg small a:before {
  display: none;
}

.c-wyswyg small a:hover {
  text-decoration: none;
}

.c-wyswyg.note {
  margin-top: 15px;
}

.c-wyswyg.note p,
.c-wyswyg.note a {
  font-size: 1.2rem;
  padding-top: 0;
}

.c-wyswyg.note p {
  margin-top: 10px;
}

.c-wyswyg sup {
  vertical-align: 5px;
  font-size: 1.2rem;
}

.c-wyswyg .c-link-3clm {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-wyswyg .c-link-3clm {
    width: 1100px !important;
    height: auto !important;
  }
}

.c-wyswyg .c-link-3clm li {
  width: 33.3%;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-wyswyg .c-link-3clm li {
    display: inline-block !important;
    position: static !important;
    height: auto !important;
    vertical-align: top;
  }
}

.c-wyswyg .c-link-3clm li:before {
  display: none;
}

.c-wyswyg .c-link-3clm li a {
  display: block;
  padding: 6px 20px 6px 26px;
  font-size: 1.5rem;
}

.c-wyswyg .c-link-3clm li a:before {
  top: 15px;
}

@media screen and (max-width: 480px) {
  .c-wyswyg .c-link-3clm {
    display: block;
  }
  .c-wyswyg .c-link-3clm li {
    width: 100%;
  }
}

.c-wyswyg + .c-img,
.c-wyswyg + .p-logo--webcorrect {
  margin-top: 25px !important;
}

.c-wyswyg + .c-hdg--md {
  margin-top: 45px;
}

@media screen and (max-width: 480px) {
  .c-wyswyg + .c-hdg--md {
    margin-top: 25px;
  }
}

.c-wyswyg + .c-btn-1clm {
  margin-top: 10px;
}

.c-wyswyg + .c-list--bg {
  margin-top: 30px;
}

@media screen and (max-width: 480px) {
  .c-wyswyg + .c-list--bg {
    margin-top: 13px;
  }
}

@media screen and (max-width: 480px) {
  .c-wyswyg table {
    white-space: nowrap;
  }
}

/* カード型リンク（３カラム） */
.c-card--list {
  overflow: hidden;
  margin: 25px -14px -40px;
}

.c-card--list.clm2 .c-card--item {
  width: 395px;
}

.c-card--list.clm2 .c-card--item > a,
.c-card--list.clm2 .c-card--item > .inner {
  width: 395px;
}

@media screen and (max-width: 480px) {
  .c-card--list.clm2 .c-card--item {
    width: 100%;
  }
  .c-card--list.clm2 .c-card--item > a,
  .c-card--list.clm2 .c-card--item > .inner {
    width: 100%;
  }
}

.c-card--list + .btn-bg {
  margin-top: 50px;
}

@media screen and (max-width: 480px) {
  .c-card--list {
    margin: 25px 6.4% -40px;
  }
}

.c-card--item {
  float: left;
  width: 254px;
  margin: 8px 14px 0;
  padding-bottom: 25px;
  position: relative;
}

.c-card--item > a,
.c-card--item > .inner {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-transition: -webkit-box-shadow .3s;
  transition: -webkit-box-shadow .3s;
  transition: box-shadow .3s;
  transition: box-shadow .3s, -webkit-box-shadow .3s;
  position: relative;
  width: 254px;
  border-top: 8px solid #fecb0a;
  text-decoration: none;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-card--item > a,
  .c-card--item > .inner {
    height: auto !important;
  }
}

.c-card--item > a .texts,
.c-card--item > .inner .texts {
  padding: 17px 23px 24px;
  color: #231f20;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-card--item > a .texts,
  .c-card--item > .inner .texts {
    position: static !important;
  }
}

.c-card--item > a:not(.nolink),
.c-card--item > .inner:not(.nolink) {
  cursor: pointer;
}

.c-card--item > a:not(.nolink):hover,
.c-card--item > .inner:not(.nolink):hover {
  -webkit-box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
  box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
}

.c-card--item > a:not(.nolink):hover p.link,
.c-card--item > .inner:not(.nolink):hover p.link {
  background: #cceee7;
}

.c-card--item > a:not(.nolink):hover span.link.btn--g,
.c-card--item > .inner:not(.nolink):hover span.link.btn--g {
  background: #088a6e;
}

@media screen and (max-width: 480px) {
  .c-card--item > a:not(.nolink):hover,
  .c-card--item > .inner:not(.nolink):hover {
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

.c-card--item > a[target="_blank"] span.link:after,
.c-card--item > .inner[target="_blank"] span.link:after {
  position: static;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 16px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-card--item > a[target="_blank"] .btn span.link:after,
.c-card--item > .inner[target="_blank"] .btn span.link:after {
  background-image: url(/demoweb/shared/img/common/icon_blank.png);
}

.c-card--item > a[href$=".pdf"] span.link:after,
.c-card--item > .inner[href$=".pdf"] span.link:after {
  position: static;
  content: "";
  display: inline-block;
  width: 42px;
  height: 18px;
  margin-left: 16px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_pdf.png) no-repeat 50% 50%/42px auto;
}

.c-card--item > a[href$=".pdf"] .btn span.link:after,
.c-card--item > .inner[href$=".pdf"] .btn span.link:after {
  display: none;
}

.c-card--item .c-wyswyg {
  margin-top: 15px;
}

.c-card--item .c-wyswyg small a {
  margin-top: 0;
  padding-left: 0;
  text-decoration: underline;
}

.c-card--item .c-wyswyg small a:before {
  display: none;
}

.c-card--item .c-wyswyg small a:hover {
  text-decoration: none;
}

.c-card--item .logo {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #f4f4f4;
  min-height: 96px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: -17px -23px 20px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-card--item .logo {
    height: auto !important;
  }
  .c-card--item .logo img {
    position: static !important;
  }
}

.c-card--item .title {
  color: #0aad8a;
  line-height: 1.4;
  font-size: 2.4rem;
}

.c-card--item .copy {
  margin-top: 11px;
  font-size: 1.4rem;
  line-height: 1.75;
  color: #666666;
}

.c-card--item .img {
  margin-top: 20px;
  text-align: center;
}

.c-card--item .input {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 25px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.2rem;
}

.c-card--item .input p {
  display: inline-block;
  margin-right: 10px;
}

.c-card--item .input input {
  width: 85px;
  padding: 10px 10px;
  border: 1px solid #CCC;
}

.c-card--item div.link,
.c-card--item p.link {
  padding: 10px 18px;
  -webkit-transition: background .3s;
  transition: background .3s;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-card--item div.link,
  .c-card--item p.link {
    position: static !important;
  }
}

.c-card--item div.link .name,
.c-card--item p.link .name {
  padding: 5px 0 5px;
  font-size: 1.5rem;
}

.c-card--item div.link .name + a,
.c-card--item p.link .name + a {
  padding-top: 0;
}

.c-card--item div.link .name + a:before,
.c-card--item p.link .name + a:before {
  top: 10px;
}

.c-card--item div.link a,
.c-card--item div.link span.link,
.c-card--item p.link a,
.c-card--item p.link span.link {
  position: relative;
  display: block;
  padding: 5px 0 5px 31px;
  font-size: 1.5rem;
  -webkit-transition: background .3s;
  transition: background .3s;
}

.c-card--item div.link a:before,
.c-card--item div.link span.link:before,
.c-card--item p.link a:before,
.c-card--item p.link span.link:before {
  position: absolute;
  display: block;
  content: "";
  top: 14px;
  left: 4px;
  border-right: 2px solid #0aad8a;
  border-bottom: 2px solid #0aad8a;
  width: 5px;
  height: 5px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.c-card--item div.link a[target="_blank"]:after,
.c-card--item div.link span.link[target="_blank"]:after,
.c-card--item p.link a[target="_blank"]:after,
.c-card--item p.link span.link[target="_blank"]:after {
  position: static;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 16px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-card--item div.link a[href$=".pdf"]:after,
.c-card--item div.link span.link[href$=".pdf"]:after,
.c-card--item p.link a[href$=".pdf"]:after,
.c-card--item p.link span.link[href$=".pdf"]:after {
  position: static;
  content: "";
  display: inline-block;
  width: 42px;
  height: 18px;
  margin-left: 16px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_pdf.png) no-repeat 50% 50%/42px auto;
}

.c-card--item div.link a + a,
.c-card--item div.link a + span.link,
.c-card--item div.link span.link + a,
.c-card--item div.link span.link + span.link,
.c-card--item p.link a + a,
.c-card--item p.link a + span.link,
.c-card--item p.link span.link + a,
.c-card--item p.link span.link + span.link {
  padding-top: 0;
}

.c-card--item div.link a + a:before,
.c-card--item div.link a + span.link:before,
.c-card--item div.link span.link + a:before,
.c-card--item div.link span.link + span.link:before,
.c-card--item p.link a + a:before,
.c-card--item p.link a + span.link:before,
.c-card--item p.link span.link + a:before,
.c-card--item p.link span.link + span.link:before {
  margin-top: -6px;
}

.c-card--item .btn {
  padding-bottom: 25px;
}

.c-card--item .btn a,
.c-card--item .btn span.link,
.c-card--item .btn input[type="submit"] {
  margin: 0 auto;
}

.c-card--item .btn a {
  -webkit-transition: background .3s;
  transition: background .3s;
}

.c-card--item .btn a:hover {
  background: #088a6e;
}

.c-card--item .open {
  margin-top: 22px;
  letter-spacing: 0;
  font-size: 13px;
  font-weight: bold;
}

.c-card--item .tel {
  margin-top: 19px;
}

.c-card--item .free a {
  position: relative;
  display: block;
  padding-left: 42px;
  font-size: 2.4rem;
  font-weight: bold;
  color: #019f3b;
  font-family: 'Roboto';
  line-height: 1;
  letter-spacing: 1px;
  white-space: nowrap;
}

.c-card--item .free a:before {
  display: block;
  position: absolute;
  content: "";
  left: 0;
  top: 2px;
  width: 37px;
  height: 21px;
  background: url(/demoweb/shared/img/common/icon_free.png) no-repeat 0 0/37px auto;
}

.c-card--item .mobile {
  margin-top: 10px;
}

.c-card--item .mobile p {
  margin-bottom: 7px;
  font-weight: normal;
  font-size: 1.3rem;
  color: #231f20;
}

.c-card--item .mobile a {
  position: relative;
  display: block;
  padding-left: 42px;
  font-size: 2.4rem;
  font-weight: bold;
  color: #007a52;
  font-family: 'Roboto';
  line-height: 1;
  letter-spacing: 1px;
  white-space: nowrap;
}

.c-card--item .mobile a:before {
  display: block;
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 32px;
  height: 24px;
  background: url(/demoweb/shared/img/common/icon_tel.png) no-repeat 0 0/32px auto;
}

@media screen and (max-width: 480px) {
  .c-card--item {
    width: 100%;
    margin: 0;
  }
  .c-card--item > a,
  .c-card--item > .inner {
    width: 100%;
  }
  .c-card--item > a .texts,
  .c-card--item > .inner .texts {
    padding: 20px 15px 15px;
  }
  .c-card--item .c-wyswyg {
    margin-top: 0;
    padding-top: 0;
  }
  .c-card--item .logo {
    margin-bottom: 0;
  }
  .c-card--item .logo + .title {
    margin-top: 20px;
  }
  .c-card--item .title {
    font-size: 2.0rem;
  }
  .c-card--item .link {
    padding: 10px 15px;
  }
  .c-card--item .mobile {
    padding-bottom: 10px;
  }
  .c-card--item .input {
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left;
  }
  .c-card--item .btn {
    text-align: center;
  }
  .c-card--item .btn a,
  .c-card--item .btn span.link,
  .c-card--item .btn input {
    width: 60%;
  }
}

/* カード型リンク（４カラム） */
.c-card--4clm-list {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -5px 0;
}

.c-card--4clm-list.clm2 .c-card--4clm-item .inner {
  width: 404px;
}

@media screen and (max-width: 480px) {
  .c-card--4clm-list.clm2 {
    margin: 0 6.4%;
  }
  .c-card--4clm-list.clm2 .c-card--4clm-item {
    display: block;
    width: 100%;
  }
  .c-card--4clm-list.clm2 .c-card--4clm-item .inner {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

@media screen and (max-width: 480px) {
  .c-card--4clm-list {
    margin: 0 6.4%;
  }
}

.c-card--4clm-item {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-card--4clm-item > a,
.c-card--4clm-item > .inner {
  display: block;
  -webkit-transition: -webkit-box-shadow .3s;
  transition: -webkit-box-shadow .3s;
  transition: box-shadow .3s;
  transition: box-shadow .3s, -webkit-box-shadow .3s;
  position: relative;
  width: 197px;
  margin: 33px 5px 0;
  border-top: 8px solid #0aad8a;
  padding: 17px 0 3px;
}

.c-card--4clm-item .title {
  color: #0aad8a;
  line-height: 1.6;
  font-size: 2.4rem;
}

.c-card--4clm-item .title span {
  display: block;
  font-size: 1.6rem;
}

.c-card--4clm-item .copy {
  margin-top: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  color: #231f20;
}

.c-card--4clm-item .category {
  margin-top: 20px;
}

.c-card--4clm-item .category li {
  margin-top: 4px;
}

.c-card--4clm-item .category li span {
  display: inline-block;
  padding: 4px 10px;
  font-size: 1.2rem;
  color: #7a7878;
  border: 1px solid #7a7878;
  border-radius: 2px;
}

.c-card--4clm-item .link {
  margin-top: 19px;
  font-size: 1.2rem;
}

.c-card--4clm-item .link:after {
  position: static;
  display: inline-block;
  content: "";
  margin-left: 12px;
  border-right: 2px solid #0aad8a;
  border-bottom: 2px solid #0aad8a;
  width: 5px;
  height: 5px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 3px;
}

@media screen and (max-width: 480px) {
  .c-card--4clm-item {
    margin: 0;
    width: 50%;
  }
  .c-card--4clm-item > a,
  .c-card--4clm-item > .inner {
    width: 100%;
  }
  .c-card--4clm-item .title {
    font-size: 2.0rem;
  }
  .c-card--4clm-item .title span {
    font-size: 1.3rem;
  }
}

/* 1つボタン */
.c-btn-1clm--item a {
  display: inline-block;
  border: 1px solid #d1d0d1;
  border-radius: 3px;
  margin: 30px auto 2px;
  padding: 7px 30px;
  font-size: 1.5rem;
  text-align: center;
  text-decoration: none;
  -webkit-transition: border .3s;
  transition: border .3s;
}

.c-btn-1clm--item a[target="_blank"]:after {
  position: static;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 16px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-btn-1clm--item a:hover {
  border: 1px solid #0aad8a;
}

.c-btn-1clm--item--g a {
  background: #0aad8a;
  margin: 25px auto 2px;
  padding: 12px 25px;
  color: #FFF;
  border: none;
  -webkit-transition: background .3s;
  transition: background .3s;
}

.c-btn-1clm--item--g a[target="_blank"]:after {
  vertical-align: -1px;
  background: url(/demoweb/shared/img/common/icon_blank.png) no-repeat 50% 50%/14px auto;
}

.c-btn-1clm--item--g a:hover {
  background: #088a6e;
  border: none;
}

.c-btn-1clm.t-center .c-btn-1clm--item {
  text-align: center;
}

.c-btn-1clm.t-center .c-btn-1clm--item--g a {
  padding: 12px 90px;
  font-weight: bold;
  font-size: 1.6rem;
}

@media screen and (max-width: 480px) {
  .c-btn-1clm.t-center .c-btn-1clm--item--g a {
    padding: 12px 20px;
  }
}

.c-btn-1clm + .c-hdg--md {
  margin-top: 40px;
}

@media screen and (max-width: 480px) {
  .c-btn-1clm {
    text-align: center;
  }
  .c-btn-1clm--item a {
    margin: 15px 6.4% 0;
  }
  .c-btn-1clm--g a {
    margin-top: 15px;
  }
}

/* 2つボタン */
.c-btn-2clm {
  margin: 0 0 5px;
}

.c-btn-2clm--item {
  display: inline-block;
}

.c-btn-2clm--item a {
  display: inline-block;
  border: 1px solid #d1d0d1;
  min-width: 348px;
  border-radius: 3px;
  margin: 24px 14px 0 0;
  padding: 7px 20px;
  font-size: 1.5rem;
  text-align: center;
}

.c-btn-2clm--item a[target="_blank"]:after {
  position: static;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 16px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-btn-2clm.t-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 -14px 5px;
}

.c-btn-2clm.t-center .c-btn-2clm--item a {
  display: block;
  width: 348px;
  margin: 24px 14px 0;
}

.c-btn-2clm + .c-hdg--md {
  margin-top: 40px;
}

@media screen and (max-width: 480px) {
  .c-btn-2clm {
    margin: 0 6.4%;
  }
  .c-btn-2clm--item {
    display: block;
  }
  .c-btn-2clm--item a {
    min-width: 100%;
    margin-top: 15px;
  }
}

/* 3つボタン */
.c-btn-3clm {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 8px -14px 5px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-btn-3clm {
    width: 1128px !important;
  }
}

.c-btn-3clm--item a {
  display: block;
  border: 1px solid #d1d0d1;
  border-radius: 3px;
  width: 348px;
  margin: 24px 14px 0;
  padding: 7px;
  font-size: 1.5rem;
  text-align: center;
  -webkit-transition: border .3s;
  transition: border .3s;
}

.c-btn-3clm--item a[target="_blank"]:after {
  position: static;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 16px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-btn-3clm--item a:hover {
  text-decoration: none;
  border: 1px solid #0aad8a;
}

.c-btn-3clm--item--g a {
  background: #0aad8a;
  color: #FFF;
  border: none;
  -webkit-transition: background .3s;
  transition: background .3s;
}

.c-btn-3clm--item--g a[target="_blank"]:after {
  vertical-align: -1px;
  background: url(/demoweb/shared/img/common/icon_blank.png) no-repeat 50% 50%/14px auto;
}

.c-btn-3clm--item--g a:hover {
  background: #088a6e;
  border: none;
}

.c-btn-3clm + .c-btn-1clm {
  margin-top: 30px;
}

.c-btn-3clm.t-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media screen and (max-width: 480px) {
  .c-btn-3clm {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0 6.4%;
  }
  .c-btn-3clm--item a {
    width: 100%;
    margin: 20px 0 0;
  }
}

/* アンカー */
.c-anchor {
  overflow: hidden;
  margin: 32px 0 46px;
  background: #f4f4f4;
}

.c-anchor li {
  float: left;
  margin: 0 1px;
}

.c-anchor li a {
  display: block;
  padding: 12px 15px 11px;
  font-size: 1.4rem;
  border-bottom: 3px solid #a6a4a4;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.c-anchor li a:hover {
  text-decoration: none;
  background: #FFF;
  color: #231f20;
  border-color: #0aad8a;
}

.c-anchor li:first-child {
  margin-left: 0;
}

.c-anchor + .c-hdg--xl {
  margin-top: 40px;
}

@media screen and (max-width: 480px) {
  .c-anchor + .c-hdg--xl {
    margin-top: 30px;
  }
}

@media screen and (max-width: 480px) {
  .c-anchor {
    margin: 30px 6.4%;
    background: none;
  }
  .c-anchor ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .c-anchor li {
    float: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 50%;
    margin: 0;
  }
  .c-anchor li:nth-child(even) {
    width: calc(50% - 5px);
    margin: 0 0 0 5px;
  }
  .c-anchor li a {
    padding: 14px 0;
    width: 100%;
  }
}

/* タブ */
.c-tab {
  margin: 40px 0 46px;
}

.c-tab ul {
  position: relative;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-tab ul:before {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 0;
  background: #231f20;
}

.c-tab li {
  float: left;
  margin: 0 1px;
}

.c-tab li a {
  display: block;
  border-top: 1px solid #0aad8a;
  margin: 0 14px;
  padding: 19px 10px;
  font-size: 1.5rem;
}

.c-tab li a:hover {
  text-decoration: none;
  color: #231f20;
}

.c-tab li.current {
  position: relative;
  border-top: 1px solid #231f20;
  border-left: 1px solid #231f20;
  border-right: 1px solid #231f20;
}

.c-tab li.current a {
  color: #231f20;
  border-top: none;
  margin: 0;
  padding: 19px 26px;
}

.c-tab li.current:after {
  position: absolute;
  display: block;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #FFF;
  z-index: 10;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-tab li.current:after {
    bottom: 1px;
  }
}

.c-tab li:first-child {
  margin-left: 0;
  border-left: none;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-tab li:first-child.current:after {
    bottom: 0;
  }
}

.c-tab.bottom {
  margin: 54px 0 4px;
}

.c-tab.bottom ul:before {
  top: 0;
  bottom: auto;
}

.c-tab.bottom li a {
  border-top: none;
  border-bottom: 1px solid #0aad8a;
}

.c-tab.bottom li.current {
  border-top: none;
  border-bottom: 1px solid #231f20;
}

.c-tab.bottom li.current a {
  border-bottom: none;
}

.c-tab.bottom li.current:after {
  top: 0;
  bottom: auto;
}

.c-tab.bottom + .c-wyswyg {
  margin-top: 30px;
}

.c-tab--item .tabBox {
  display: none;
}

.c-tab--item .tabBox > .c-hdg--lg:first-child {
  margin-top: -10px;
}

.c-tab--item .tabBox > .c-wyswyg:first-child {
  padding-top: 0;
}

.c-tab--item .tabBox.current {
  display: block;
}

@media screen and (max-width: 480px) {
  .c-tab {
    overflow-x: auto;
    margin-bottom: 40px;
  }
  .c-tab ul {
    white-space: nowrap;
  }
  .c-tab li:first-child {
    padding-left: calc(6.4% - 10px);
    padding-right: 10px;
  }
  .c-tab li a {
    margin: 0 4px;
    padding: 10px;
  }
  .c-tab li.current a {
    padding: 10px;
  }
}

/* テキスト2カラム（用語集） */
.c-txt--2clm {
  margin-top: 30px;
}

@media screen and (max-width: 480px) {
  .c-txt--2clm {
    margin: 24px 6.4% 0;
  }
}

.c-txt--2clm--item {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 25px;
}

.c-txt--2clm--item .title {
  width: 260px;
  margin-right: 20px;
  font-size: 2.0rem;
  color: #0aad8a;
  font-weight: 500;
}

.c-txt--2clm--item .body {
  font-size: 1.6rem;
  line-height: 1.9;
  width: 538px;
}

@media screen and (max-width: 480px) {
  .c-txt--2clm--item {
    display: block;
    margin-top: 22px;
  }
  .c-txt--2clm--item .title {
    width: 100%;
    margin: 0;
  }
  .c-txt--2clm--item .body {
    margin-top: 5px;
    font-size: 1.5rem;
    width: 100%;
  }
}

@media screen and (max-width: 480px) {
  .c-txt--2clm .c-wyswyg {
    padding: 15px 0 0;
  }
  .c-txt--2clm .c-img {
    margin: 15px 0 0;
  }
}

/* 2カラム */
.c-service--2clm {
  margin: -6px -14px;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 480px) {
  .c-service--2clm {
    display: block;
    margin: 25px 6.4% 0;
  }
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-service--2clm {
    width: 846px;
  }
}

.c-service--2clm--item {
  margin: 25px 14px 0;
  width: 395px;
}

.c-service--2clm--item .texts .title {
  font-size: 1.6rem;
  font-weight: bold;
}

.c-service--2clm--item .texts .title:before {
  display: inline-block;
  content: "";
  position: static;
  width: 12px;
  height: 12px;
  background: #0aad8a;
  margin-right: 8px;
}

.c-service--2clm--item .texts .body {
  margin-top: 8px;
  font-size: 1.6rem;
  line-height: 1.9;
}

.c-service--2clm--item .texts .note {
  margin-top: 5px;
  font-size: 1.2rem;
}

.c-service--2clm--item .texts .text--bg {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 15px;
  background: #f4f4f4;
  padding: 20px 25px;
  font-size: 1.6rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-service--2clm--item .texts .text--bg.b {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #0aad8a;
}

.c-service--2clm--item .texts .text--bg.b strong {
  font-size: 2.4rem;
  font-weight: bold;
}

.c-service--2clm--item img {
  margin-top: 18px;
}

.c-service--2clm--item .link a {
  margin-top: 16px;
  display: block;
  font-size: 1.5rem;
}

.c-service--2clm--item .link a:before {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 4px;
  height: 4px;
  margin-right: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

.c-service--2clm--item .link a[target="_blank"]:after {
  display: inline-block;
  position: static;
  content: "";
  width: 14px;
  height: 14px;
  vertical-align: -2px;
  margin-left: 8px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-service--2clm--item .caption {
  margin-top: 15px;
  font-size: 1.4rem;
}

@media screen and (max-width: 480px) {
  .c-service--2clm--item {
    width: 100%;
    margin: 25px 0 0;
    font-size: 1.5rem;
  }
  .c-service--2clm--item .texts .body {
    font-size: 1.5rem;
  }
  .c-service--2clm--item img {
    width: 100%;
    margin-top: 10px;
  }
  .c-service--2clm--item .caption {
    margin-top: 8px;
  }
}

/* サムネイル＋テキスト（導入事例一覧） */
.c-thumb-text-list {
  margin-top: 55px;
}

@media screen and (max-width: 480px) {
  .c-thumb-text-list {
    margin: 40px 6.4% 0;
  }
}

.c-thumb-text-list.list-mn .c-thumb-text-list--item img {
  width: 348px;
}

.c-thumb-text-list.list-mn .c-thumb-text-list--item .texts {
  width: 470px;
}

.c-thumb-text-list.list-mn .c-thumb-text-list--item .texts .name {
  margin: 5px 0 0;
  font-size: 1.8rem;
}

.c-thumb-text-list.list-mn .c-thumb-text-list--item .texts .title {
  color: #0aad8a;
}

.c-thumb-text-list.list-mn .c-thumb-text-list--item .texts .copy {
  margin-top: 20px;
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
  -webkit-box-orient: unset;
}

.c-thumb-text-list.list-mn .c-thumb-text-list--item .texts .more {
  margin: 15px 0 10px;
}

@media screen and (max-width: 480px) {
  .c-thumb-text-list.list-mn .c-thumb-text-list--item a {
    height: auto;
  }
  .c-thumb-text-list.list-mn .c-thumb-text-list--item img {
    width: 100%;
  }
  .c-thumb-text-list.list-mn .c-thumb-text-list--item .texts {
    width: 100%;
  }
}

.c-thumb-text-list--item {
  margin-top: 33px;
}

.c-thumb-text-list--item a {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.c-thumb-text-list--item a:hover {
  text-decoration: none;
  -webkit-box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
  box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
}

.c-thumb-text-list--item a:hover .texts .title {
  color: #0aad8a;
}

.c-thumb-text-list--item a .thumb {
  width: 442px;
}

.c-thumb-text-list--item a .texts {
  position: relative;
  width: 376px;
  background: #FFF;
  padding: 0 28px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-thumb-text-list--item a .texts .name {
  margin-bottom: 12px;
  font-size: 1.4rem;
}

.c-thumb-text-list--item a .texts .title {
  line-height: 1.4;
  font-size: 2.4rem;
  color: #231f20;
  -webkit-transition: color .3s;
  transition: color .3s;
}

.c-thumb-text-list--item a .texts .service {
  margin-top: 6px;
  font-size: 1.2rem;
  color: #666;
}

.c-thumb-text-list--item a .texts .copy {
  margin-top: 22px;
  font-size: 1.4rem;
  color: #666;
  line-height: 1.7;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.c-thumb-text-list--item a .texts .more {
  display: block;
  margin-top: 28px;
  font-size: 1.2rem;
  font-family: 'Roboto';
  line-height: 1;
}

.c-thumb-text-list--item a .texts .more:after {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 4px;
  height: 4px;
  margin: 0 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

@media screen and (max-width: 480px) {
  .c-thumb-text-list--item {
    margin-top: 30px;
  }
  .c-thumb-text-list--item a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: auto;
  }
  .c-thumb-text-list--item a img {
    width: 100%;
  }
  .c-thumb-text-list--item a .texts {
    width: 100%;
    padding: 20px 15px;
  }
  .c-thumb-text-list--item a .texts .title {
    font-size: 2.2rem;
  }
  .c-thumb-text-list--item a .texts .copy {
    display: none;
  }
  .c-thumb-text-list--item a .texts .more {
    margin-top: 20px;
  }
}

/* 画像 */
.c-img {
  margin: 40px 0 0;
}

.c-img .caption {
  margin-top: 12px;
  font-size: 1.2rem;
}

.c-img + .c-hdg--lg {
  margin-top: 43px;
}

.c-img + .c-hdg--md {
  margin-top: 43px;
}

.c-img + .btn-bg {
  margin-top: 60px;
}

@media screen and (max-width: 480px) {
  .c-img {
    margin: 40px 6.4% 0;
  }
  .c-img.sp_width {
    margin-left: 0;
    margin-right: 0;
  }
  .c-img.w100 {
    margin-left: 0;
    margin-right: 0;
  }
  .c-img img {
    max-width: 100%;
    height: auto;
  }
  .c-img + .c-hdg--lg {
    margin-top: 34px;
  }
}

/* 導入事例詳細 */
.c-case-area {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 45px;
}

.c-case-area .thumb {
  width: 348px;
}

.c-case-area .texts {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #d5f1eb;
  width: 470px;
  padding: 0 30px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-case-area .texts .copy {
  font-size: 1.4rem;
}

.c-case-area .texts .title {
  margin-top: 5px;
  font-size: 2.0rem;
  font-weight: bold;
}

.c-case-area .texts .url {
  font-size: 1.2rem;
  color: #0aad8a;
}

.c-case-area .texts .body {
  margin-top: 15px;
  font-size: 1.4rem;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.c-case-area .texts .btn {
  margin: 20px 0 5px;
}

.c-case-area .texts .btn a {
  display: block;
  border-radius: 3px;
  padding-right: 35px;
  font-size: 1.5rem;
  color: #FFF;
  text-align: center;
  width: 174px;
  height: 40px;
  line-height: 39px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
  background-color: #0aad8a;
}

.c-case-area .texts .btn a[target="_blank"] {
  background: url(/demoweb/shared/img/common/icon_blank.png) no-repeat 90% 50%/14px auto #0aad8a;
}

.c-case-area .texts .btn a:hover {
  text-decoration: none;
  background-color: #088a6e;
}

@media screen and (max-width: 480px) {
  .c-case-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 30px 6.4% 0;
  }
  .c-case-area .thumb {
    width: 100%;
  }
  .c-case-area .texts {
    width: 100%;
    padding: 20px 15px;
  }
  .c-case-area .texts .title {
    font-size: 1.8rem;
  }
  .c-case-area .texts .body {
    font-size: 1.5rem;
  }
}

/* 画像3連 */
.c-col3 {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 10px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-col3 {
    width: 848px;
  }
}

.c-col3 .img {
  width: 254px;
  margin: 30px 0 0 28px;
}

.c-col3 .img:nth-child(3n+1) {
  margin-left: 0;
}

.c-col3 .img .caption {
  margin-top: 15px;
  font-size: 1.4rem;
}

@media screen and (max-width: 480px) {
  .c-col3 {
    display: block;
  }
  .c-col3 .img {
    width: 87.2%;
    margin: 30px 6.4% 0;
  }
  .c-col3 .img:nth-child(3n+1) {
    margin-left: 6.4%;
  }
  .c-col3 .img img {
    width: 100%;
  }
}

/* サムネイル＋テキスト（ECソリューション一覧） */
.c-ec-service {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 4px -14px;
}

.c-ec-service--item {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 395px;
  margin: 32px 14px 0;
}

.c-ec-service--item .inner {
  display: block;
  -webkit-transition: -webkit-box-shadow .3s;
  transition: -webkit-box-shadow .3s;
  transition: box-shadow .3s;
  transition: box-shadow .3s, -webkit-box-shadow .3s;
}

.c-ec-service--item .inner:hover {
  text-decoration: none;
  -webkit-box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
  box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
}

.c-ec-service--item .texts {
  padding: 16px 23px 30px;
}

.c-ec-service--item .texts .title {
  font-size: 2.0rem;
}

.c-ec-service--item .texts .body {
  margin-top: 12px;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #666;
}

.c-ec-service--item .texts .body p {
  margin-top: 15px;
}

.c-ec-service--item .texts .body p:first-child {
  margin-top: 0;
}

.c-ec-service--item .texts .more a {
  display: block;
  margin-top: 16px;
  font-size: 1.2rem;
  font-family: 'Roboto';
  line-height: 1;
}

.c-ec-service--item .texts .more a:after {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 4px;
  height: 4px;
  margin: 0 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

.c-ec-service--item .link {
  background: #f4f4f4;
  padding: 18px 24px;
}

.c-ec-service--item .link p {
  color: #231f20;
  font-size: 1.4rem;
}

.c-ec-service--item .link a {
  display: block;
  margin-top: 4px;
  font-size: 1.5rem;
  padding-left: 25px;
}

.c-ec-service--item .link a:before {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 4px;
  height: 4px;
  margin: 0 19px 0 -26px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

.c-ec-service--item .link a:after {
  display: inline-block;
  margin-left: 5px;
  vertical-align: -2px;
  position: static;
  content: "";
  width: 14px;
  height: 14px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

/* テーブルセット（セミナー情報） */
.c-table-set table {
  margin-top: 38px;
  width: 100%;
}

.c-table-set th {
  background: #e7e7e7;
  padding: 19px 24px;
  font-size: 1.6rem;
  text-align: left;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  width: 40%;
}

.c-table-set td {
  background: #f4f4f4;
  padding: 19px 24px;
  font-size: 1.6rem;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  vertical-align: middle;
  width: 60%;
}

.c-table-set td strong {
  font-size: 1.8rem;
}

.c-table-set td p + p {
  margin-top: 1.8rem;
}

.c-table-set small {
  margin-left: 4px;
  font-size: 1.2rem;
  vertical-align: 4px;
}

.c-table-set.t-seminar tr:hover {
  cursor: pointer;
}

.c-table-set.t-seminar th {
  white-space: nowrap;
  padding: 6px 20px;
  text-align: center;
  font-size: 1.4rem;
  border-right: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  width: auto;
  vertical-align: middle;
}

.c-table-set.t-seminar td {
  padding: 13px 23px;
  font-size: 1.5rem;
  min-width: 160px;
  border-right: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  width: auto;
  vertical-align: middle;
}

.c-table-set.t-seminar td strong {
  font-size: 1.5rem;
}

.c-table-set.t-seminar td.place {
  font-size: 1.6rem;
}

.c-table-set.t-seminar td.price {
  font-size: 1.8rem;
  font-weight: bold;
}

.c-table-set.t-seminar td .more {
  display: block;
  margin-top: 8px;
  font-size: 1.2rem;
  font-family: 'Roboto';
  line-height: 1;
  color: #0aad8a;
}

.c-table-set.t-seminar td .more:after {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 4px;
  height: 4px;
  margin: 0 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

.c-table-set.t-seminar tr.open {
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.c-table-set.t-seminar tr.open td {
  background: #fff4cc;
}

.c-table-set.t-seminar tr.open td.status {
  background: #ffea9c;
  font-weight: bold;
}

.c-table-set.t-seminar tr.open:hover td {
  background-color: #fff6d7;
}

@media screen and (max-width: 480px) {
  .c-table-set.t-seminar.sp-noscroll tr {
    padding-top: 30px;
  }
  .c-table-set.t-seminar.sp-noscroll tr:nth-child(1), .c-table-set.t-seminar.sp-noscroll tr:nth-child(2) {
    padding-top: 0;
  }
  .c-table-set.t-seminar.sp-noscroll tr td {
    background: #F4F4F4 !important;
    padding: 10px;
  }
  .c-table-set.t-seminar.sp-noscroll tr td .title {
    padding: 0;
    margin: 0;
    background: none;
    font-weight: bold;
    font-size: 1.4rem;
  }
  .c-table-set.t-seminar.sp-noscroll tr.open td {
    background: #fff4cc !important;
  }
}

.c-table-set.sp-noscroll td .title {
  display: none;
}

@media screen and (max-width: 480px) {
  .c-table-set.sp-noscroll {
    margin-top: 20px;
  }
  .c-table-set.sp-noscroll table {
    white-space: normal;
    margin-top: 0;
  }
  .c-table-set.sp-noscroll tr {
    display: block;
  }
  .c-table-set.sp-noscroll th {
    display: none;
  }
  .c-table-set.sp-noscroll td {
    display: block;
    background: #F4F4F4 !important;
    border-bottom: 1px solid #FFF;
    width: 100%;
  }
  .c-table-set.sp-noscroll td .title {
    display: block;
    margin: -15px -15px 15px;
    padding: 15px;
    background: #e7e7e7;
  }
  .c-table-set.sp-noscroll td:first-child {
    border-top: 1px solid #f5f5f5;
  }
}

.c-table-set.t-plan {
  margin-bottom: -5px;
}

.c-table-set.t-plan th {
  width: 40%;
  vertical-align: middle;
}

.c-table-set.t-plan td {
  vertical-align: middle;
}

.c-table-set.t-plan td a {
  display: block;
}

.c-table-set.t-plan td a:before {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 4px;
  height: 4px;
  margin: 0 10px 0 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

.c-table-set.t-plan.clm3 th {
  width: 22%;
}

.c-table-set.t-plan tr.bg th {
  background: #ffea9c;
}

.c-table-set.t-plan tr.bg td {
  background: #fff4cc;
}

.c-table-set.t-plan td.bg {
  background: #fff4cc;
}

.c-table-set.t-plan.clm4 tr:first-child th {
  width: auto;
}

.c-table-set.t-plan.clm4 th {
  width: 20%;
}

.c-table-set.t-plan.clm4 td {
  width: 30%;
}

.c-table-set.t-place th,
.c-table-set.t-place td {
  width: auto;
}

.c-table-set.t-place th:first-child,
.c-table-set.t-place td:first-child {
  width: 30%;
}

@media screen and (max-width: 480px) {
  .c-table-set.t-place.sp-noscroll tr {
    margin-top: 30px;
  }
  .c-table-set.t-place.sp-noscroll tr:nth-child(1), .c-table-set.t-place.sp-noscroll tr:nth-child(2) {
    margin-top: 0;
  }
  .c-table-set.t-place.sp-noscroll td:first-child {
    width: 100%;
  }
}

.c-table-set.t-half {
  width: 70%;
}

@media screen and (max-width: 480px) {
  .c-table-set.t-half {
    width: 100%;
  }
}

.c-table-set.t-center th,
.c-table-set.t-center td {
  text-align: center;
}

.c-table-set.td-reset td {
  width: auto;
}

.c-table-set .note {
  margin-top: 12px;
  font-size: 1.2rem;
}

.c-table-set .note.t-right + .note {
  margin-top: 0;
}

.c-table-set + .note {
  margin: 12px 0 0;
  font-size: 1.2rem;
}

.c-table-set + .note.t-right + .note {
  margin-top: 0;
}

@media screen and (max-width: 480px) {
  .c-table-set + .note {
    margin: 12px 6.4% 0;
  }
}

.c-table-set .alert {
  color: #ff3700;
}

.c-table-set .success {
  color: #0aad8a;
}

.c-table-set + .btn-bg {
  margin-top: 45px;
}

@media screen and (max-width: 480px) {
  .c-table-set {
    overflow-x: auto;
    padding: 0 6.4%;
  }
  .c-table-set table {
    white-space: nowrap;
    min-width: 100%;
  }
  .c-table-set th {
    padding: 15px;
    font-size: 1.5rem;
  }
  .c-table-set td {
    padding: 15px;
    font-size: 1.5rem;
  }
}

/* 関連リンク */
.c-relation-link {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #f4f4f4;
  width: 100%;
  margin: 32px 0;
  padding: 19px 24px;
}

.c-relation-link .title {
  margin-right: 92px;
  font-size: 1.5rem;
  font-weight: bold;
  color: #7a7878;
  white-space: nowrap;
}

.c-relation-link a {
  display: block;
  font-size: 1.5rem;
}

.c-relation-link a:before {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 4px;
  height: 4px;
  margin: 0 20px 0 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

@media screen and (max-width: 480px) {
  .c-relation-link {
    background: none;
    display: block;
    padding: 10px 6.4%;
  }
  .c-relation-link .title {
    margin: 0 0 8px;
  }
  .c-relation-link a {
    font-size: 1.6rem;
  }
}

/* フロー */
.c-flow {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 18px;
}

.c-flow--item {
  width: 395px;
  margin-left: 28px;
  text-align: center;
}

.c-flow--item:first-child {
  margin-left: 0;
}

.c-flow--item > .c-hdg--md {
  margin: 0 0 20px 1em;
}

.c-flow--item .title {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 10px;
  padding: 19px 10px;
  font-size: 1.6rem;
  font-weight: bold;
}

.c-flow--item .body {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 10px;
  padding: 9px 10px;
  font-size: 1.6rem;
}

.c-flow--item .arrow {
  width: 0;
  height: 0;
  padding-bottom: 10px;
  border-style: solid;
  border-width: 12px 7px 0 7px;
  margin: 0 auto;
}

.c-flow--item .plus {
  position: relative;
  height: 20px;
}

.c-flow--item .plus:before {
  position: absolute;
  content: "";
  display: block;
  width: 12px;
  height: 2px;
  background: #fecb0a;
  top: 4px;
  left: 50%;
  margin-left: -6px;
}

.c-flow--item .plus:after {
  position: absolute;
  content: "";
  display: block;
  width: 2px;
  height: 12px;
  background: #fecb0a;
  top: -1px;
  left: 50%;
  margin-left: -1px;
}

.c-flow--item .title-body {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  margin-bottom: 10px;
}

.c-flow--item .title-body .title {
  display: block;
  width: 100%;
  margin: 0;
  font-size: 1.4rem;
  padding: 4px 10px;
}

.c-flow--item .title-body .body {
  width: 100%;
  padding: 12px 10px;
  margin: 0;
}

.c-flow--item .title-body .body.blank {
  background: #f4f4f4;
}

.c-flow--item .bodys {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.c-flow--item .bodys .body {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 2px;
}

.c-flow--item .bodys .body:last-child {
  margin-bottom: 0;
}

.c-flow--item.yl .title {
  background: #fee06b;
}

.c-flow--item.yl .body,
.c-flow--item.yl .title-body {
  background: #fff4cc;
}

.c-flow--item.yl .arrow {
  border-color: #fecb0a transparent transparent transparent;
}

.c-flow--item.gr .title {
  background: #6bcdb8;
}

.c-flow--item.gr .body,
.c-flow--item.gr .title-body {
  background: #f4f4f4;
  color: #7a7878;
}

.c-flow--item.gr .bodys .body {
  background: #cceee7;
}

.c-flow--item.gr .arrow {
  border-color: #6bcdb8 transparent transparent transparent;
}

.c-flow.single {
  display: block;
  margin-top: 26px;
}

.c-flow.single .c-flow--item {
  width: 100%;
  margin-left: 0;
}

.c-flow.single .c-flow--item .body {
  padding: 11px 10px;
}

.c-flow.single + .c-wyswyg {
  margin-top: 16px;
}

.c-flow--single {
  display: block;
}

.c-flow--single .title-body .title {
  padding: 15px;
  font-size: 1.6rem;
}

.c-flow--single .title-body .body {
  padding: 15px;
  font-size: 1.5rem;
}

.c-flow--single .c-flow--btn {
  width: 395px;
  margin-top: 55px;
}

.c-flow--single .c-flow--btn a {
  width: 348px;
  max-width: unset;
  margin: 0 auto;
  padding: 12px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-flow--single .c-flow--btn a {
    max-width: none;
  }
}

@media screen and (max-width: 480px) {
  .c-flow--single .c-flow--btn {
    width: 100%;
    margin-top: 40px;
  }
  .c-flow--single .c-flow--btn a {
    width: 100%;
  }
}

@media screen and (max-width: 480px) {
  .c-flow {
    margin: 18px 6.4% 0 calc(6.4% - 7px);
  }
  .c-flow--item {
    margin-left: 7px;
    width: 100%;
  }
}

/* 画像＋テキスト */
.c-img-txt {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 12px -14px 0;
}

.c-img-txt--item {
  margin: 28px 14px 0;
  font-size: 1.6rem;
  line-height: 1.7;
}

.c-img-txt--item.img {
  font-size: 1.4rem;
}

.c-img-txt--item.img img {
  margin-bottom: 10px;
}

.c-img-txt--item.w2 {
  width: 154px;
}

.c-img-txt--item.w3 {
  width: 254px;
}

.c-img-txt--item.w4 {
  width: 348px;
}

.c-img-txt--item.w5 {
  width: 395px;
}

.c-img-txt--item.w6 {
  width: 442px;
}

.c-img-txt--item.w7 {
  width: 536px;
}

.c-img-txt--item.w8 {
  width: 636px;
}

.c-img-txt--item .alert {
  color: #ff3700;
}

.c-img-txt--item .success {
  color: #0aad8a;
}

.c-img-txt--item a {
  display: block;
  margin-top: 7px;
  font-size: 1.5rem;
  color: #0aad8a;
}

.c-img-txt--item a.inline {
  display: inline;
  font-size: 1.6rem;
  text-decoration: underline;
}

.c-img-txt--item a.inline:hover {
  text-decoration: none;
}

.c-img-txt--item a.inline:before, .c-img-txt--item a.inline:after, .c-img-txt--item a.inline[target="_blank"]:after {
  display: none;
}

.c-img-txt--item a:hover {
  text-decoration: none;
}

.c-img-txt--item a:before {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 5px;
  height: 5px;
  margin: 0 18px 0 -2px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

.c-img-txt--item a[href^="#"]:after, .c-img-txt--item a[target="_blank"]:after, .c-img-txt--item a[href$=".pdf"]:after, .c-img-txt--item a[href$=".doc"]:after, .c-img-txt--item a[href$=".xls"]:after, .c-img-txt--item a[href$=".ppt"]:after {
  content: '';
  display: inline-block;
  width: 10px;
  height: 14px;
  margin-left: 0.5em;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: 0 0;
}

.c-img-txt--item a[target="_blank"]:after {
  width: 14px;
  height: 14px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-img-txt--item a[href$=".pdf"]:after {
  width: 42px;
  height: 18px;
  vertical-align: -3px;
  background: url(/demoweb/shared/img/common/icon_pdf.png) no-repeat 0 0/42px auto;
}

.c-img-txt--item a.noicon:before, .c-img-txt--item a.noicon:after {
  display: none;
}

.c-img-txt--item strong {
  font-weight: bold;
}

.c-img-txt--item em {
  font-style: italic;
}

.c-img-txt--item del {
  text-decoration: line-through;
}

.c-img-txt--item ul,
.c-img-txt--item ol {
  padding-left: 1em;
}

.c-img-txt--item ul > li,
.c-img-txt--item ol > li {
  padding-left: 1em;
}

.c-img-txt--item ul > li > ul:last-of-type,
.c-img-txt--item ul > li > ol:last-of-type,
.c-img-txt--item ol > li > ul:last-of-type,
.c-img-txt--item ol > li > ol:last-of-type {
  margin-bottom: 0.9em;
}

.c-img-txt--item ul > li {
  list-style: disc;
}

.c-img-txt--item ol > li {
  list-style: decimal;
}

.c-img-txt--item hr {
  margin-top: 2em;
  border-top: 1px solid #efefef;
}

.c-img-txt--item small {
  display: block;
  padding-top: 5px;
  font-size: 1.2rem;
}

.c-img-txt--item sup {
  vertical-align: 5px;
  font-size: 1.2rem;
}

.c-img-txt + .c-hdg--md {
  margin-top: 50px;
}

@media screen and (max-width: 480px) {
  .c-img-txt {
    margin: 0 6.4%;
  }
  .c-img-txt.sp_width {
    margin-left: 0;
    margin-right: 0;
  }
  .c-img-txt.sp_width .c-img-txt--item {
    margin-left: 6.4%;
    margin-right: 6.4%;
  }
  .c-img-txt.sp_width .c-img-txt--item.img {
    margin: 0;
  }
  .c-img-txt.sp_width .c-img-txt--item.img .caption {
    margin: 0 6.4%;
  }
  .c-img-txt--item {
    width: 100% !important;
    margin: 15px 0 0;
  }
  .c-img-txt--item:first-child {
    margin-top: 0;
  }
  .c-img-txt--item.img img {
    margin-bottom: 0;
    width: 100%;
  }
  .c-img-txt--item .c-hdg--md {
    margin: 15px 6.4% 8px;
  }
  .c-img-txt--item .c-wyswyg {
    padding: 0;
  }
  .c-img-txt + .c-img-txt {
    margin-top: 30px;
  }
}

.clm1 .c-img-txt--item.w1 {
  width: calc(10% - 28px);
}

.clm1 .c-img-txt--item.w2 {
  width: calc(20% - 28px);
}

.clm1 .c-img-txt--item.w3 {
  width: calc(30% - 28px);
}

.clm1 .c-img-txt--item.w4 {
  width: calc(40% - 28px);
}

.clm1 .c-img-txt--item.w5 {
  width: calc(50% - 28px);
}

.clm1 .c-img-txt--item.w6 {
  width: calc(60% - 28px);
}

.clm1 .c-img-txt--item.w7 {
  width: calc(70% - 28px);
}

.clm1 .c-img-txt--item.w8 {
  width: calc(80% - 28px);
}

.clm1 .c-img-txt--item.w9 {
  width: calc(90% - 28px);
}

/* 横並びリスト 背景付き */
.c-list--bg {
  position: relative;
}

.c-list--bg ul {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -14px;
}

@media screen and (max-width: 480px) {
  .c-list--bg ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0 6.4%;
  }
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-list--bg ul {
    width: 1128px;
  }
}

.c-list--bg ul li {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 17px 14px 0;
  width: 254px;
  padding: 17px;
  background: #cceee7;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: bold;
}

.c-list--bg ul li.merit {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.4;
}

.c-list--bg ul li.merit .title {
  width: 100%;
  font-size: 1.6rem;
  font-weight: normal;
}

.c-list--bg ul li.merit .alert {
  font-weight: bold;
  color: #ff3700;
}

.c-list--bg ul li.merit .alert sup {
  margin-left: 4px;
  font-size: 1.2rem;
  vertical-align: 3px;
}

@media screen and (max-width: 480px) {
  .c-list--bg ul li {
    width: 100%;
    margin: 17px 0 0;
  }
}

.c-list--bg.clm1 li {
  padding: 17px 20px;
  width: 100%;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: start;
  text-align: left;
}

.c-list--bg.clm2 li {
  width: 348px;
}

@media screen and (max-width: 480px) {
  .c-list--bg.clm2 li {
    width: 100%;
  }
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-list--bg.voice {
    width: 846px;
  }
}

.c-list--bg.voice li {
  background: #fff4cc;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  -ms-flex-line-pack: distribute;
  align-content: space-around;
  padding: 17px 20px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: normal;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-list--bg.voice li {
    height: auto !important;
  }
  .c-list--bg.voice li > div {
    position: static !important;
  }
}

.c-list--bg.voice li .title {
  margin-bottom: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  font-weight: bold;
  font-size: 1.8rem;
  color: #ff3700;
  line-height: 1.5;
}

.c-list--bg.okng li {
  min-height: 90px;
}

.c-list--bg.okng li:nth-child(odd) {
  background: #fee06b;
}

.c-list--bg.okng li:nth-child(even) {
  background: #d1d0d1;
  font-weight: normal;
}

.c-list--bg.note li {
  background: #f4f4f4;
  font-weight: normal;
}

.c-list--bg.arrow {
  padding-bottom: 16px;
}

.c-list--bg.arrow:after {
  position: absolute;
  bottom: -12px;
  left: 50%;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 7px 0 7px;
  margin-left: -6px;
  border-color: #0aad8a transparent transparent transparent;
}

.c-list--bg .note {
  margin-top: 5px;
  font-size: 1.2rem;
}

@media screen and (max-width: 480px) {
  .c-list--bg .note {
    margin: 10px 6.4% 0;
  }
}

/* テキストエリア */
.c-textarea {
  margin-top: 20px;
}

.c-textarea textarea {
  width: 100%;
  height: 214px;
  border: 1px solid #d1d0d1;
  font-size: 1.2rem;
  padding: 15px 20px;
  color: #7a7878;
}

.c-textarea small {
  display: block;
  margin-top: 15px;
  font-size: 1.2rem;
}

@media screen and (max-width: 480px) {
  .c-textarea {
    margin: 20px 6.4% 0;
  }
  .c-textarea textarea {
    height: 150px;
  }
}

/* dl */
.c-dl {
  margin-top: 25px;
}

.c-dl dl {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 5px;
}

.c-dl dt {
  width: 18%;
  font-size: 1.6rem;
  line-height: 1.8;
}

.c-dl dd {
  width: 82%;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 480px) {
  .c-dl dl {
    display: block;
    padding-top: 15px;
  }
  .c-dl dl:first-child {
    padding-top: 0;
  }
  .c-dl dt {
    width: 87.2%;
    margin: 0 6.4% 8px;
  }
  .c-dl dd {
    width: 87.2%;
    margin: 0 6.4%;
  }
}

/* プライバシーマーク */
.c-pmark {
  text-align: right;
  margin-top: 30px;
}

.c-pmark .logo {
  display: inline-block;
}

.c-pmark .date {
  display: inline-block;
  margin-right: 25px;
  font-size: 1.2rem;
  vertical-align: bottom;
}

@media screen and (max-width: 480px) {
  .c-pmark {
    margin-right: 6.4%;
  }
}

/* お問い合わせ */
.c-tel {
  overflow: hidden;
  background: #d5f1eb;
  margin: 30px 0 50px;
  padding: 25px 20px;
  width: 818px;
  text-align: left;
}

.c-tel .title {
  font-size: 2.4rem;
  color: #0aad8a;
}

.c-tel .address {
  float: left;
  padding-top: 15px;
  font-size: 1.3rem;
  line-height: 1.8;
}

.c-tel .mobile {
  float: left;
  margin: 15px 0 0 65px;
  text-align: center;
}

.c-tel .mobile .open {
  margin-bottom: 7px;
  font-weight: normal;
  font-size: 1.3rem;
  color: #231f20;
}

.c-tel .mobile a {
  position: relative;
  display: block;
  padding-left: 42px;
  font-size: 3.0rem;
  font-weight: bold;
  color: #007a52;
  font-family: 'Roboto';
  line-height: 1;
  letter-spacing: 1px;
  white-space: nowrap;
}

.c-tel .mobile a:before {
  display: block;
  position: absolute;
  content: "";
  left: 0;
  top: 3px;
  width: 32px;
  height: 24px;
  background: url(/demoweb/shared/img/common/icon_tel.png) no-repeat 0 0/32px auto;
}

/* 個人情報窓口 */
.c-window {
  background: #f4f4f4;
  margin: 30px 0 50px;
  padding: 25px 20px;
  width: 442px;
  text-align: left;
}

.c-window .title {
  font-size: 2.4rem;
  color: #0aad8a;
}

.c-window .address {
  padding-top: 15px;
  font-size: 1.3rem;
  line-height: 1.8;
}

@media screen and (max-width: 480px) {
  .c-window {
    width: 87.2%;
    margin-left: 6.4%;
    margin-right: 6.4%;
    padding: 15px 20px;
  }
  .c-window .title {
    font-size: 2.0rem;
  }
}

/* ブラウザ */
.c-browser {
  margin-top: 25px;
}

.c-browser .inner {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 480px) {
  .c-browser {
    display: block;
    margin: 0 0 -10px;
    padding: 20px 6.4% 0;
    overflow-x: auto;
  }
  .c-browser .inner {
    display: block;
    width: 880px;
  }
}

.c-browser .c-browser-logo {
  position: relative;
  width: 254px;
  background: #fff4cc;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 28px;
  padding: 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: 1.6rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  line-height: 1.4;
}

.c-browser .c-browser-logo .txt {
  margin-top: 20px;
}

.c-browser .c-browser-logo:after {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 0;
  right: -20px;
  top: 50%;
  border-style: solid;
  border-width: 7px 0 7px 12px;
  margin-top: -3px;
  border-color: transparent transparent transparent #7a7878;
}

@media screen and (max-width: 480px) {
  .c-browser .c-browser-logo {
    float: left;
  }
}

.c-browser .c-browser-items {
  width: 254px;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.c-browser .c-browser-items li {
  position: relative;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #ffea9c;
  margin: 0 28px 8px 0;
  padding: 0 20px;
  height: 69px;
  font-size: 1.6rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-browser .c-browser-items li:last-child {
  background: #f4f4f4;
  margin-bottom: 0;
}

.c-browser .c-browser-items li:after {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 0;
  right: -20px;
  top: 50%;
  border-style: solid;
  border-width: 7px 0 7px 12px;
  margin-top: -3px;
  border-color: transparent transparent transparent #7a7878;
}

.c-browser .c-browser-items:last-child li {
  background: #fee06b;
  margin-right: 0;
}

.c-browser .c-browser-items:last-child li:last-child {
  background: #d1d0d1;
}

.c-browser .c-browser-items:last-child li:after {
  display: none;
}

@media screen and (max-width: 480px) {
  .c-browser .c-browser-items {
    float: left;
  }
}

.c-browser.row2 .c-browser-items li {
  height: 85px;
}

/* ロゴ画像 */
.c-logo {
  -js-display: flex;
  margin-top: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-logo--item {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #f4f4f4;
  padding: 18px 22px;
  min-width: 254px;
  min-height: 143px;
}

.c-logo + .c-textarea {
  margin-top: 25px;
}

@media screen and (max-width: 480px) {
  .c-logo {
    margin: 18px 6.4% 0;
  }
  .c-logo--item {
    min-width: unset;
    min-height: unset;
  }
  .c-logo--item img {
    width: 100%;
  }
}

/* ECパッケージ */
.c-package--item {
  -webkit-transition: -webkit-box-shadow .3s;
  transition: -webkit-box-shadow .3s;
  transition: box-shadow .3s;
  transition: box-shadow .3s, -webkit-box-shadow .3s;
  border-top: 8px solid #fecb0a;
  margin-top: 30px;
  cursor: pointer;
}

.c-package--item:first-child {
  margin-top: 0;
}

.c-package--item .inner {
  overflow: hidden;
  padding: 17px 23px 24px;
}

.c-package--item .inner .title {
  margin-bottom: 20px;
  font-size: 1.6rem;
  font-weight: bold;
}

.c-package--item .inner .thumb {
  float: left;
  width: 230px;
}

.c-package--item .inner .inner-body {
  float: right;
  width: 512px;
}

.c-package--item .inner .inner-body .copy {
  font-size: 2.0rem;
  color: #0aad8a;
}

.c-package--item .inner .inner-body .body {
  margin-top: 10px;
  font-size: 1.4rem;
  color: #666666;
  line-height: 1.8;
}

.c-package--item .inner .inner-body .more {
  position: relative;
  display: block;
  margin-top: 10px;
  font-size: 1.4rem;
  font-family: 'Roboto';
  line-height: 1;
}

.c-package--item .inner .inner-body .more[target="_blank"]:after {
  content: '';
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 8px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-package--item .service {
  background: #f4f4f4;
  padding: 10px 23px 20px;
}

.c-package--item .service .name {
  margin-top: 10px;
  font-size: 1.3rem;
  font-weight: bold;
}

.c-package--item .service li {
  background: #FFF;
  display: inline-block;
  border: 1px solid #d1d0d1;
  margin: 5px 4px 0 0;
  padding: 4px 12px;
  border-radius: 2px;
  font-size: 1.2rem;
  color: #7a7878;
}

.c-package--item .service .link {
  position: relative;
  display: block;
  margin-top: 17px;
  font-size: 1.4rem;
}

.c-package--item .service .link:before {
  display: inline-block;
  position: static;
  content: "";
  border-top: 2px solid #0aad8a;
  border-right: 2px solid #0aad8a;
  width: 4px;
  height: 4px;
  margin: 0 10px 0 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: 2px;
}

.c-package--item .service .link[target="_blank"]:after {
  content: '';
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 8px;
  vertical-align: -2px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-package--item:hover {
  -webkit-box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
  box-shadow: 0 5px 24px rgba(0, 0, 0, 0.24);
}

@media screen and (max-width: 480px) {
  .c-package--item {
    margin: 30px 6.4% 0;
  }
  .c-package--item .inner {
    padding: 20px 15px;
  }
  .c-package--item .inner .title {
    margin-bottom: 10px;
  }
  .c-package--item .inner .thumb {
    display: block;
    float: none;
    margin: 0 auto;
  }
  .c-package--item .inner .inner-body {
    float: none;
    width: auto;
    margin-top: 15px;
  }
  .c-package--item .service {
    padding: 10px 15px 20px;
  }
}

/* ニュース */
.c-news {
  margin-top: 40px;
}

.c-news--item {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  font-size: 1.5rem;
  border-bottom: 1px solid #e7e7e7;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-news--item {
    height: auto !important;
  }
}

.c-news--item .date {
  color: #606060;
  width: 190px;
  padding: 20px 0;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-news--item .date {
    display: inline-block !important;
    position: static !important;
    height: auto !important;
    vertical-align: top;
  }
}

.c-news--item a {
  display: block;
  width: calc(100% - 270px);
  padding: 20px 0;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-news--item a {
    display: inline-block !important;
    position: static !important;
    height: auto !important;
    vertical-align: top;
  }
}

.c-news--item a[target="_blank"]:after {
  content: '';
  display: inline-block;
  position: static;
  margin-left: 15px;
  vertical-align: -2px;
  width: 14px;
  height: 14px;
  background: url(/demoweb/shared/img/common/icon_blank_w.png) no-repeat 50% 50%/14px auto;
}

.c-news--item a[href$=".pdf"]:after {
  display: block;
  content: "";
  position: absolute;
  width: 42px;
  height: 16px;
  right: 24px;
  top: 23px;
  background: url(/demoweb/shared/img/common/icon_pdf.png) no-repeat 0 0/42px auto;
}

@media screen and (max-width: 480px) {
  .c-news--item a[href$=".pdf"]:after {
    right: 2px;
  }
}

@media screen and (max-width: 480px) {
  .c-news {
    margin: 5px 6.4% 0;
  }
  .c-news--item {
    display: block;
  }
  .c-news--item .date {
    width: 100%;
    padding: 15px 0 8px;
  }
  .c-news--item a {
    width: 100%;
    padding: 0 0 15px;
  }
}

/* 最下部ボタン */
.btn-bg {
  background: #f4f4f4;
  margin: 30px 0 7px;
  padding: 40px 65px;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .btn-bg {
    width: calc(100% - 130px);
    height: auto !important;
    text-align: center;
  }
}

.btn-bg .title {
  margin: -5px -65px 12px;
  text-align: center;
  width: calc(100% + 130px);
  font-size: 2.4rem;
  color: #0aad8a;
}

@media screen and (max-width: 480px) {
  .btn-bg .title {
    margin: 20px 0 10px;
    width: 100%;
    font-size: 2.0rem;
  }
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .btn-bg .title {
    position: static !important;
    width: auto;
    height: auto !important;
  }
}

.btn-bg .body {
  margin: 0 -65px 25px;
  text-align: center;
  width: calc(100% + 130px);
  font-size: 1.4rem;
  color: #666;
}

@media screen and (max-width: 480px) {
  .btn-bg .body {
    margin: 0;
    width: 100%;
  }
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .btn-bg .body {
    position: static !important;
    width: auto;
    height: auto !important;
  }
}

.btn-bg--center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.btn-bg--center .btn-bg--item {
  margin: 0 14px;
}

@media screen and (max-width: 480px) {
  .btn-bg--center .btn-bg--item {
    margin: 15px 0 0;
  }
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .btn-bg--item {
    position: static !important;
    height: auto !important;
    display: inline-block !important;
    margin: 0 14px !important;
  }
}

.btn-bg--item a {
  display: block;
  border-radius: 3px;
  background-color: #0aad8a;
  width: 442px;
  padding: 16px 25px 18px;
  line-height: 1;
  font-size: 1.6rem;
  font-weight: bold;
  color: #FFF;
  text-align: center;
  white-space: nowrap;
}

.btn-bg--item.icon--check a {
  padding: 16px 10px 18px 25px;
  background: url(/demoweb/shared/img/common/icon_check.png) no-repeat 30px 50%/18px auto #0aad8a;
}

.btn-bg--item.icon--note a {
  padding: 16px 10px 18px 25px;
  background: url(/demoweb/shared/img/common/icon_note.png) no-repeat 30px 50%/18px auto #0aad8a;
}

.btn-bg + .c-card--list {
  margin-top: 30px;
}

@media screen and (max-width: 480px) {
  .btn-bg {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 30px 6.4% 7px;
    padding: 5px 15px 20px;
  }
  .btn-bg--item {
    margin: 15px 0 0;
  }
  .btn-bg--item a {
    width: 100%;
    padding: 15px;
    white-space: normal;
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

/* 特定商取引法に基づく表示テンプレートの表 */
.template-download h1 {
  margin-bottom: 10px;
  font-size: 2.0rem;
}

.template-download table {
  width: 100%;
  border-top: 1px solid #CCC;
  border-right: 1px solid #CCC;
}

.template-download th,
.template-download td {
  border-left: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
  padding: 10px 15px;
}

/* 帯のページタイトルがある場合（特に第２階層）、概要文は帯の外に表示 */
.sp-first-outline {
  display: none;
}

@media screen and (max-width: 480px) {
  .sp-first-outline {
    display: block;
    margin: 30px 6.4% -20px;
    font-size: 1.5rem;
  }
  .sp-first-outline.clm1 {
    margin-bottom: 30px;
  }
}

/* 経営方針 */
.vision-text {
  padding: 30px;
  background: #cceee7;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.8;
}

@media screen and (max-width: 480px) {
  .vision-text br {
    display: none;
  }
}

/* 1日の流れ */
.c-schedule {
  margin-top: 10px;
}

.c-schedule--item {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 30px;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-schedule--item {
    height: auto !important;
  }
}

.c-schedule--item .time {
  width: 93px;
  font-size: 1.6rem;
  font-weight: bold;
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-schedule--item .time {
    position: static !important;
    display: inline-block !important;
    height: auto !important;
    vertical-align: top;
    float: left;
  }
}

@media screen and (min-width: 0\0) and (min-resolution: 0.001dpcm) {
  .c-schedule--item .texts {
    position: static !important;
    display: inline-block !important;
    height: auto !important;
    vertical-align: top;
  }
}

.c-schedule--item .texts .title {
  font-size: 1.6rem;
  font-weight: bold;
}

.c-schedule--item .body {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 724px;
  font-size: 1.6rem;
  margin-top: 5px;
}

.c-schedule--item .body img {
  width: 254px;
  margin: 5px 28px 0 0;
}

.c-schedule--item .body img + .text {
  width: 442px;
}

@media screen and (max-width: 480px) {
  .c-schedule--item {
    display: block;
    padding: 0 6.4%;
  }
  .c-schedule--item .time {
    width: 100%;
  }
  .c-schedule--item .body {
    display: block;
    width: 100%;
  }
  .c-schedule--item .body img {
    width: 100%;
    margin: 5px 0;
  }
  .c-schedule--item .body img + .text {
    width: 100%;
  }
}

/**
 * Project
 */
/**
 * Other
 */
body.is-fixed {
  overflow: hidden;
}

/**
 * Utility
 */
.u-alignC {
  text-align: center;
}

/**
 * keyframes
 */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
  z-index: 0;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img.is-pc {
  display: inline;
}

@media screen and (max-width: 480px) {
  .slick-slide img.is-pc {
    display: none;
  }
}

.slick-slide img.is-sp {
  display: none;
}

@media screen and (max-width: 480px) {
  .slick-slide img.is-sp {
    display: inline;
  }
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}
