@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Lato:300,300i,400,700,700i");
/* =================================================================
 共通
================================================================= */
.container {
  padding-top: 7px;
}

@media only screen and (max-width: 768px) {
  .container {
    padding-top: 12px;
  }
}

.main {
  padding: 50px 20px 0;
}

@media only screen and (max-width: 768px) {
  .main {
    padding: 25px 0;
  }
}

.tab {
  max-width: 930px;
  height: 50px;
  margin: 0 auto 38px;
}

.tab li {
  width: 29.032258064%;
}

.tab-conts {
  display: none;
}

.tab-conts.is-on {
  display: block;
}

@media only screen and (max-width: 768px) {
  .tab {
    height: auto;
    margin: 0 0 25px;
  }
  .tab li:last-child {
    border-right: none;
  }
}

.recommend {
  background: #f5f3ef;
}

.recommend-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.recommend-img {
  margin: 0 0 15px;
}

.recommend-txt {
  position: relative;
}

.recommend-txt .date {
  position: absolute;
  top: 0;
  right: 0;
}

.recommend-txt .trancate-txt {
  height: 52px;
}

@media only screen and (max-width: 768px) {
  .recommend {
    background: #f5f3ef;
  }
  .recommend-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .recommend-img {
    margin: 0 0 12px;
  }
  .recommend-txt {
    position: relative;
  }
  .recommend-txt .trancate-txt {
    height: 45px;
  }
}

.slick-slide:focus {
  outline: none;
}

.slick-prev,
.slick-next {
  width: 40px;
  height: 40px;
  background: #fff;
  border: solid 1px #d0dadb;
  border-radius: 50%;
  z-index: 1;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

.slick-prev {
  left: -22px;
}

.slick-next {
  right: -19px;
}

.slick-prev::before,
.slick-next::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 15px;
  height: 15px;
  margin: auto;
  background: url(/img/icn_arrow_01.png) no-repeat center center;
  background-size: 15px;
  opacity: 1;
}

.slick-prev::before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  background: #fff;
}

@media only screen and (max-width: 768px) {
  .slick-prev,
  .slick-next {
    width: 35px;
    height: 35px;
  }
  .slick-prev {
    left: -18px;
  }
  .slick-next {
    right: -18px;
  }
}

.pagenation {
  margin: 0 -12px;
  font-size: 0;
  letter-spacing: 0;
  word-spacing: 0;
  text-align: center;
}

.pagenation li {
  display: inline-block;
  width: 40px;
  height: 40px;
  margin: 0 7.5px;
  font-size: 14px;
  line-height: 0.06em;
  word-spacing: normal;
}

.pagenation li.prev, .pagenation li.next, .pagenation li.list {
  width: 100px;
  margin: 0 12px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.pagenation li.prev span, .pagenation li.next span, .pagenation li.list span {
  position: relative;
}

.pagenation li.prev span::before, .pagenation li.next span::before, .pagenation li.list span::before {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  content: "";
  width: 10px;
  height: 10px;
  margin: auto;
  background: url(/img/icn_arrow_04.png) no-repeat center center;
  background-size: 10px auto;
}

.pagenation li.prev span {
  padding: 0 0 0 20px;
}

.pagenation li.prev span::before {
  left: 0;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.pagenation li.next span {
  padding: 0 20px 0 0;
}

.pagenation li.next span::before {
  right: 0;
}

.pagenation li a {
  display: block;
  height: 40px;
  border: solid 1px #d0dadb;
  border-radius: 40px;
  font-family: "Lato", sans-serif;
  line-height: 38px;
  text-align: center;
}

.pagenation li a:hover, .pagenation li a.current {
  background: #00abb4;
  border-color: #00abb4;
  color: #fff;
}

.pagenation li a:hover span::before, .pagenation li a.current span::before {
  background: url(/img/icn_arrow_02.png) no-repeat center center;
  background-size: 10px auto;
}

@media only screen and (max-width: 768px) {
  .pagenation {
    margin: 20px -3.5px 0;
  }
  .pagenation li {
    width: 30px;
    height: 30px;
    margin: 0 3.5px;
  }
  .pagenation li.prev, .pagenation li.next, .pagenation li.list {
    width: 75px;
    margin: 0 3.5px;
  }
  .pagenation li.prev span::before, .pagenation li.next span::before, .pagenation li.list span::before {
    width: 8px;
    height: 8px;
    background: url(/img/icn_arrow_04.png) no-repeat center center;
    background-size: 8px auto;
  }
  .pagenation li.prev span {
    padding: 0 12px 0 20px;
  }
  .pagenation li.next span {
    padding: 0 20px 0 12px;
  }
  .pagenation li a {
    height: 30px;
    border-radius: 30px;
    font-size: 12px;
    line-height: 30px;
  }
  .pagenation li a:hover {
    background: #fff;
    border-color: #d0dadb;
    color: #333;
  }
  .pagenation li a:hover span::before {
    background: url(/img/icn_arrow_04.png) no-repeat center center;
    background-size: 8px auto;
  }
}

@media only screen and (max-width: 360px) {
  .pagenation {
    margin: 20px -2.5px 0;
  }
  .pagenation li {
    width: 25px;
    height: 25px;
    margin: 0 2.5px;
  }
  .pagenation li.prev, .pagenation li.next, .pagenation li.list {
    width: 65px;
    margin: 0 2.5px;
  }
  .pagenation li.prev span {
    padding: 0 5px 0 15px;
  }
  .pagenation li.next span {
    padding: 0 15px 0 5px;
  }
  .pagenation li a {
    height: 25px;
    border-radius: 25px;
    line-height: 23px;
  }
}

/* =================================================================
 商品一覧
================================================================= */
.page-nav {
  margin: 0 0 50px;
}

.page-nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-top: solid 1px #d0dadb;
  border-left: solid 1px #d0dadb;
}

.page-nav-list > li {
  width: calc(100% / 5);
  border-bottom: solid 1px #d0dadb;
  border-right: solid 1px #d0dadb;
}

/* 2023.1.16 add */
.page-nav-list-producttype {
	border-left:none;
}
.page-nav-list-producttype > li:nth-child(1), .page-nav-list-producttype > li:nth-child(6), .page-nav-list-producttype > li:nth-child(11){
	border-left: solid 1px #d0dadb;
}
/* 2023.1.16 add */

.page-nav-list > li a {
  display: block;
  position: relative;
  padding: 10px 5px;
  font-size: 13px;
  line-height: 1.5;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.page-nav-list > li a:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 17px;
  width: 8px;
  height: 8px;
  margin: auto;
  border-bottom: solid 1px #9cb2b3;
  border-right: solid 1px #9cb2b3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.page-nav-list > li .after-arrow:before {
  width: 10px;
  height: 10px;
  border-bottom: none;
  border-right: none;
  background: url(/img/icn_arrow_04.webp) no-repeat center center;
  background-size: 10px auto;
  transform: none;
}

.page-nav-list > li a span {
  display: inline-block;
  margin: 0 0 0 12px;
  vertical-align: middle;
}

.page-nav-list > li a:hover {
  background: #e3f5f6;
}

.page-nav-list > li.last {
  padding: 5px 15px 0;
  border-right: none;
  border-bottom: none;
  background: none;
}

.page-nav-list > li.last a {
  padding: 0 31px 0 0;
  line-height: 1.6;
  background: url(/img/icn_arrow_01.png) no-repeat right 6px center;
  background-size: 11px auto;
}

.page-nav-list > li.last a:hover {
  opacity: .7;
}

.page-nav-list > li.last li + li {
  margin-top: 5px;
}

.page-nav-list > li.last .pdf a {
  background: url(/img/icn_pdf.png) no-repeat right center;
  background-size: 26px auto;
}

.page-nav-list > li.last a::before {
  display: none;
}

.page-nav-list > li.last a span {
  margin: 0;
}

.page-nav-list > li.last a span::after {
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  margin: -4px 0 0;
  background: #555;
}

.page-nav.style2 .page-nav-list {
  border-top: none;
}

.page-nav.style2 .page-nav-list li {
  width: calc(99.999999999% / 3);
  text-align: center;
}

.page-nav.style2 .page-nav-list li a {
  display: table;
  width: 100%;
  height: 60px;
  padding: 0;
}

.page-nav.style2 .page-nav-list li a span {
  display: table-cell;
  margin: 0;
}

.page-nav.style2 .page-nav-list li:nth-child(-n+3) {
  border-top: solid 1px #d0dadb;
}

@media only screen and (max-width: 768px) {
  .page-nav {
    display: none;
  }
  .page-nav-list > li.last a:hover {
    opacity: 1;
  }
}

.prod {
  padding: 0 0 10px;
}

.prod-heading {
  margin: 0 0 40px;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 26px;
  line-height: 1.1;
}

.prod-heading.left {
  float: left;
}

.prod-categ {
  position: relative;
  padding: 30px 0 44px;
}

.prod-categ::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: url(/img/bg_dot.png) repeat left top;
}

.prod-categ.style2 {
  padding: 11px 0 20px;
}

.prod-categ.style2 .prod-heading.left {
  margin: 25px 0 0;
}

.prod-categ.style2 .prod-list {
  width: 82.150537634%;
  margin: 0 -1.612903225%;
}

.prod-categ.style2 .prod-item {
  width: 21.073298429%;
  padding: 25px 0 0;
  margin: 0 1.950585175% 5px;
}

.prod-categ.style2 .prod-item-img {
  margin: 0 0 20px;
}

.prod-categ.style2 .prod-item .tag {
  top: 3px;
}

.prod-list {
  width: 67.741935483%;
  float: right;
  margin: 68px -1.612903225% 0;
  font-size: 0;
  letter-spacing: 0;
  word-spacing: 0;
}

.prod-item {
  display: inline-block;
  position: relative;
  width: 28.571428571%;
  margin: 0 2.38095238%;
  padding: 25px 0 0;
  font-size: 14px;
  letter-spacing: 0.06em;
  word-spacing: normal;
  vertical-align: top;
}

.prod-item a:hover {
  background: #e3f5f6;
}

.prod-item.pickup {
  width: 30.107526881%;
  margin: 0;
  padding: 0;
  float: left;
}

.prod-item.pickup .pickup-ttl {
  margin: 0 0 6px;
  color: #ff925c;
  font-family: "Lato", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.0;
  text-align: center;
}

.prod-item.pickup .prod-item-ttl {
  margin: 0;
}

.prod-item.pickup .prod-item-txt {
  font-size: 14px;
  line-height: 2.1;
}

.prod-item.pickup .btn {
  margin: 13px auto 0;
}

.prod-item.pickup .tag {
  top: 68px;
  padding: 2px 3px;
  letter-spacing: 0;
}

.prod-item .tag {
  position: absolute;
  top: 0;
  left: 0;
}

.prod-item-img {
  margin: 0 0 13px;
}

.prod-item-img img {
  border: solid 1px #d0dadb;
}

.prod-item-txt {
  font-size: 13px;
}

.prod-item-ttl {
  margin: 0 0 9px;
}

.prod-item-ttl span {
  padding: 0 20px 0 0;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.8;
  background: url(/img/icn_arrow_01.png) no-repeat right center;
  background-size: 11px auto;
}

@media only screen and (max-width: 768px) {
  .prod {
    padding: 0;
    border-bottom: solid 1px #d0dadb;
  }
  .prod .sp-prod-ttl {
    border-top: solid 1px #d0dadb;
  }
  .prod .sp-prod-ttl a {
    display: block;
    position: relative;
    padding: 8px 15px 7px;
    background: #f7f7f7;
  }
  .prod .sp-prod-ttl a::after {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 11px;
    width: 15px;
    height: 15px;
    margin: auto;
    background: url(/img/icn_plus_02.png) no-repeat center center;
    background-size: 15px;
  }
  .prod .sp-prod-ttl a.is-on::after {
    background: url(/img/icn_minus_02.png) no-repeat center center;
    background-size: 15px;
  }
  .prod .sp-prod-ttl span {
    padding: 0 0 0 15px;
  }
  .prod .sp-prod-ttl img {
    width: 40px;
  }
  .prod .sp-prod-ttl.pdf a,
  .prod .sp-prod-ttl.link a {
    padding: 15px 15px 14px;
  }
  .prod .sp-prod-ttl.pdf a::after,
  .prod .sp-prod-ttl.link a::after {
    width: 12px;
    height: 11px;
    background: url(/img/icn_arrow_01.png) no-repeat center center;
    background-size: 12px auto;
  }
  .prod .sp-prod-ttl.pdf span,
  .prod .sp-prod-ttl.link span {
    padding: 0;
  }
  .prod .sp-prod-ttl.pdf span img {
    width: 25px;
    margin: -2px 0 0 7px;
  }
  .prod-heading {
    margin: 0 0 20px;
    font-size: 19px;
    line-height: 1.0;
    text-align: center;
  }
  .prod-heading.left {
    float: none;
  }
  .prod-categ {
    padding: 0;
    border-top: solid 1px #d0dadb;
  }
  .prod-categ::before {
    display: none;
  }
  .prod-categ > div {
    padding: 18px 15px;
  }
  .prod-categ.style2 {
    padding: 0;
  }
  .prod-categ.style2 > div {
    padding: 18px 15px 25px;
  }
  .prod-categ.style2 .prod-heading.left {
    margin: 0;
  }
  .prod-categ.style2 .prod-list {
    width: auto;
  }
  .prod-categ.style2 .prod-item {
    width: 45.833333333%;
    margin: 0 2.0833333333% 10px;
    padding: 20px 0 0;
  }
  .prod-categ.style2 .prod-item .tag {
    top: 0;
  }
  .prod-list {
    width: auto;
    float: none;
    margin: 0 -2.173913043%;
  }
  .prod-item {
    position: relative;
    width: 45.833333333%;
    margin: 0 2.0833333333%;
    padding: 20px 0 0;
  }
  .prod-item a:hover {
    background: none;
  }
  .prod-item.pickup {
    width: 100%;
    margin: 0 0 25px;
    float: none;
  }
  .prod-item.pickup .pickup-ttl {
    margin: 0 0 10px;
    font-size: 14px;
  }
  .prod-item.pickup .prod-item-ttl {
    margin: 0 0 7px;
  }
  .prod-item.pickup .prod-item-txt p {
    margin: 0;
    font-size: 14px;
    line-height: 1.8;
  }
  .prod-item.pickup .btn {
    margin: 10px 15px 0;
  }
  .prod-item.pickup .btn a {
    height: 45px;
    line-height: 45px;
  }
  .prod-item.pickup .tag.new {
    top: 39px;
  }
  .prod-item .tag.new {
    top: 0;
  }
  .prod-item-img {
    margin: 0 0 15px;
  }
  .prod-item-txt p {
    font-size: 14px;
  }
  .prod-item-ttl {
    margin: 0 0 2px;
  }
  .prod-item-ttl span {
    padding: 0 20px 0 0;
    font-size: 14px;
  }
}

.prod.style2 {
  padding: 0 0 50px;
}

.prod.style2 .prod-head {
  margin: 0 0 44px;
  padding: 28px 47px 25px 32px;
  background: #e3f5f6;
  border-left: solid 5px #00abb4;
}

.prod.style2 .prod-heading {
  margin: 0 0 18px;
}

.prod.style2 .prod-categ {
  margin: 0 0 20px;
  padding: 0;
}

.prod.style2 .prod-categ:last-of-type {
  margin: 0;
}

.prod.style2 .prod-categ::before {
  display: none;
}

.prod.style2 .prod-categ-inner + .prod-categ-inner {
  margin: 13px 0 0;
}

.prod.style2 .prod-list {
  width: auto;
  float: none;
  margin: 25px -1.612903225% 0;
}

.prod.style2 .prod-item {
  width: 46.875%;
  margin: 0 1.5625% 30px;
  padding: 0;
  vertical-align: top;
}

.prod.style2 .prod-item a:hover {
  background: none;
}

.prod.style2 .prod-item-img {
  width: 40%;
  float: left;
  margin: 6px 20px 0 0;
}

.prod.style2 .prod-item-txt {
  margin: -6px 0 0;
  font-size: 0;
  line-height: 2.1;
}

.prod.style2 .prod-item-txt .tag {
  position: relative;
  top: 0;
  margin: 5px 0 5px;
  font-size: 11px;
}

.prod.style2 .prod-item-txt p {
  font-size: 14px;
}

.prod.style2 .prod-item-txt .trancate-txt {
  height: 60px;
}

.prod.style2 .prod-item-ttl {
  margin: 0 0 4px;
  line-height: 1.4;
}

.prod.style2 .prod-item-ttl span {
  background: none;
  line-height: 1.4;
}

.prod.style2 .prod-item .btn {
  width: 150px;
  margin: 18px 0 0 200px;
}

.prod.style2 .prod-item .btn a {
  height: 32px;
  font-size: 13px;
  line-height: 32px;
}

.prod.style2 .prod-item .btn a::after {
  right: 11px;
}

.prod.style2 .prod-recommend {
  margin: 20px 0 0;
  padding: 15px 0 0;
  border-top: solid 1px #d0dadb;
}

.prod.style2 .prod-recommend-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.prod.style2 .prod-recommend-list li {
  width: 48.387096774%;
}

.prod.style2 .prod-recommend-list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.prod.style2 .prod-recommend-img {
  width: 22.22222222%;
}

.prod.style2 .prod-recommend-txt {
  width: 73.333333333%;
  margin: -4px 0 0;
  font-size: 13px;
}

.prod.style2 .prod-recommend-ttl {
  font-size: 16px;
}

.prod.style2 .prod-recommend-ttl span {
  padding: 0 20px 0 0;
  font-weight: bold;
}

@media only screen and (max-width: 768px) {
  .prod.style2 {
    padding: 0;
  }
  .prod.style2 .sp-prod-ttl a {
    height: 55px;
    padding: 0;
    line-height: 55px;
  }
  .prod.style2 .prod-categ {
    margin: 0;
    padding: 0;
  }
  .prod.style2 .prod-categ-inner + .prod-categ-inner {
    margin: 25px 0 0;
  }
  .prod.style2 .prod-categ-lead {
    margin: 0 0 28px;
  }
  .prod.style2 .prod-list {
    width: auto;
    float: none;
    margin: 25px -2.173913043% 0;
  }
  .prod.style2 .prod-item {
    width: 45.833333333%;
    margin: 0 2.0833333333% 5px;
    padding: 20px 0 0;
    vertical-align: top;
  }
  .prod.style2 .prod-item-img {
    width: 100%;
    float: none;
    margin: 0 0 18px;
  }
  .prod.style2 .prod-item-txt {
    width: 100%;
    float: none;
    font-size: 0;
    line-height: 1.8;
  }
  .prod.style2 .prod-item-txt .tag {
    position: absolute;
    top: 0;
    margin: 0;
    font-size: 10px;
  }
  .prod.style2 .prod-item-txt .trancate-txt {
    height: 76px;
  }
  .prod.style2 .prod-item-ttl {
    margin: 0 0 4px;
  }
  .prod.style2 .prod-item-ttl span {
    background: url(/img/icn_arrow_01.png) no-repeat right center;
    background-size: 11px auto;
  }
  .prod.style2 .prod-item .btn {
    display: none;
  }
  .prod.style2 .prod-recommend {
    margin: 10px 0 0;
    padding: 25px 0 0;
    border-top: solid 1px #d0dadb;
  }
  .prod.style2 .prod-recommend-list li {
    width: 47.826086956%;
  }
  .prod.style2 .prod-recommend-list li a {
    display: block;
  }
  .prod.style2 .prod-recommend-img {
    width: 100%;
    margin: 0 0 14px;
  }
  .prod.style2 .prod-recommend-txt {
    width: 100%;
    font-size: 14px;
  }
  .prod.style2 .prod-recommend-ttl {
    font-size: 14px;
  }
  .prod.style2 .prod-recommend-ttl span {
    background: url(/img/icn_arrow_01.png) no-repeat right center;
    background-size: 11px auto;
  }
}

/*検索結果一覧*/
.prod.result {
  padding: 0 0 50px;
}

.prod.result .prod-categ {
  padding: 0 0 25px;
}

.prod.result .prod-categ::before {
  display: none;
}

.prod.result .prod-list {
  width: auto;
  float: none;
  margin: 0 -1.612903225%;
}

.prod.result .prod-item {
  width: 21.875%;
  margin: 0 1.5625%;
}

.prod.result .prod-item img {
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .prod.result {
    padding: 0;
    border-bottom: none;
  }
  .prod.result .prod-categ {
    padding: 0 0 15px;
    border-top: none;
  }
  .prod.result .prod-categ > div {
    padding: 0 15px;
  }
  .prod.result .prod-list {
    margin: 0 -2.173913043%;
  }
  .prod.result .prod-item {
    width: 45.833333333%;
    margin: 0 2.0833333333%;
  }
}

/* =================================================================
 商品詳細
================================================================= */
.detail {
  padding: 50px 0 0;
  /*詳細TOP*/
  /*詳細タブ2,3*/
}

.detail .content {
  padding: 0 20px 45px;
}

.detail .dot-list {
  margin: 5px 0 0;
}

.detail .dot-list li {
  position: relative;
  padding: 0 0 0 18px;
  line-height: 1.9;
}

.detail .dot-list li::before {
  display: block;
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 8px;
  height: 8px;
  margin: auto;
  background: #00abb4;
  border-radius: 50%;
}

.detail-top {
  padding: 0 0 50px;
  border-bottom: solid 1px #d0dadb;
}

.detail-top-slides {
  width: 35.483870967%;
  float: left;
}

.detail-top-slides > div {
  position: relative;
}

.detail-top-slides .btn {
  margin: 30px auto 0;
}

.detail-top-slider li {
  border: solid 1px #d0dadb;
}

.detail-top-no {
  position: absolute;
  bottom: 11px;
  right: 11px;
  width: 30px;
  height: 30px;
}

.detail-top-no li {
  display: block;
  position: absolute;
  width: 30px;
  height: 30px;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  color: #fff;
  font-family: "Lato", sans-serif;
  font-size: 10px;
  line-height: 30px;
  text-align: center;
}

.detail-top-txt {
  padding: 20px 0 0;
  width: 59.139784946%;
  float: right;
  line-height: 2.1;
}

.detail-top-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  padding: 0 0 14px;
  border-bottom: solid 1px #d0dadb;
  width: 59.139784946%;
  float: right;
  line-height: 1.0;
}

.detail-top-head-inner {
  width: 100%;
}

.detail-top-heading {
  padding: 4px 0 0 0;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.4;
}

.detail-top-ttl {
  margin: 0 0 13px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.8;
}

.detail-icn {
  width: 40%;
  margin: -15px 0 0;
  text-align: right;
}

.detail-icn.col3 {
  width: 70%;
}

.detail-icn-list {
  margin: 0 -5px;
  font-size: 0;
  letter-spacing: 0;
  word-spacing: 0;
}

.detail-icn-list li {
  display: inline-block;
  width: 65px;
  height: 65px;
  margin: 0 5px;
  vertical-align: top;
}

.detail .point-box {
  margin: 22px 0 0;
}

.detail .point-box-ttl {
  width: 65px;
  height: 19px;
  margin: 0 0 10px;
  background: #9cb2b3;
  border-radius: 19px;
  color: #fff;
  font-family: "Lato", sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 19px;
  text-align: center;
}

.detail .point-box-list li {
  padding: 0 0 0 26px;
  background: url(/img/icn_check_02.png) no-repeat left center;
  line-height: 1.9;
}

.detail .point-box-txt {
  line-height: 1.9;
}

.detail .section {
  padding: 45px 0 0;
}

.detail .section .inner-txt {
  width: 750px;
  margin: 0 auto;
}

.detail .scene {
  padding: 43px 0 44px;
  border-bottom: solid 1px #d0dadb;
}

.detail .scene .h-style-2 {
  margin: 0 0 14px;
}

.detail .scene-txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.detail .scene-img {
  padding: 10px 0 0 10px;
}

.detail .scene p {
  width: 100%;
  line-height: 2.1;
}

.detail .scene p strong {
  display: block;
}

.detail .scene p.scene-img {
  width: 350px;
}

.detail .spec dl {
  line-height: 2.1;
  border-top: solid 1px #d0dadb;
}

.detail .spec dl:last-of-type {
  border-bottom: solid 1px #d0dadb;
}

.detail .spec dl dt {
  display: table-cell;
  width: 160px;
  padding: 12px 0 12px 19px;
  background: #f5f3ef;
}

.detail .spec dl dd {
  display: table-cell;
  padding: 12px 0 12px 19px;
}

.detail .spec dl dd .color-list li {
  display: inline-block;
  position: relative;
  margin: 0 19px 0 0;
  padding: 0 0 0 19px;
}

.detail .spec dl dd .color-list li::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 15px;
  height: 15px;
  margin: auto;
}

.detail .spec dl dd .color-list li.red::before {
  background: #ff4747;
}

.detail .spec dl dd .color-list li.orange::before {
  background: #ff7d49;
}

.detail .spec dl dd .color-list li.yellow::before {
  background: #ffd633;
}

.detail .spec dl dd .color-list li.green::before {
  background: #44ad75;
}

.detail .spec dl dd .color-list li.blue::before {
  background: #4787d6;
}

.detail .spec dl dd .color-list li.white::before {
  background: #fff;
  border: solid 1px #ccc;
}

.detail .spec dl dd .color-list li.assort::before {
  background: #888;
}

.detail .spec dl dd .color-list li.limegreen::before {
  background: #32CD32;
}

.detail .spec dl dd .color-list li.skyblue::before {
  background: #87CEEB;
}

.detail .spec dl dd .color-list li.lpurple::before {
  background: #8563f8;
}

.detail .spec dl dd .color-list li.pink::before {
  background: #ffc0cb;
}

.detail .spec dl dd .color-list li.bpink::before {
  background: #ff33cc;
}

.detail .spec dl dd .color-list li.lightgreen::before {
  background: #63CC2E;
}

.detail .spec dl dd .color-list li.purple::before {
  background: #800080;
}

.detail .spec dl dd .color-list li.perlred::before {
  background: #A22827;
}

.detail .spec dl dd .color-list li.perlyellow::before {
  background: #E4D852;
}

.detail .spec dl dd .color-list li.perlgreen::before {
  background: #2A7135;
}

.detail .spec dl dd .color-list li.perlblue::before {
  background: #0187CE;
}

.detail .spec dl dd .color-list li.black::before {
  background: #000;
}

.detail .spec .btn {
  width: 338px;
  margin: 30px auto 0;
}

.detail .sample-slides {
  max-width: 730px;
  margin: 0 auto;
}

.detail .sample-slides-nav {
  width: 16.438356164%;
  float: right;
}

.detail .sample-slides-nav .slick-slide {
  margin: 0 0 10px;
  cursor: pointer;
}

.detail .sample-slider {
  width: 73.972602739%;
  float: left;
}

.detail .sample-slider .caption {
  margin: 14px 0 0;
  font-size: 13px;
  line-height: 2.2;
  text-align: center;
}

.detail .sample .slick-prev,
.detail .sample .slick-next {
  margin: -20px 0 0;
}

.detail .movie {
  padding: 37px 0 0;
}

.detail .movie-box {
  position: relative;
  width: 100%;
  max-width: 730px;
  margin: 0 auto;
  padding-top: 44.195%;
  overflow: hidden;
}

.detail .movie-box.movie2 {
  padding-top: 56.301369863%;
}

.detail .movie-box iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.detail .contact .h-style-2 {
  margin: 0 0 15px;
}

.detail .contact-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.detail .contact-btn {
  width: 48.387096774%;
  padding: 25px 7.096774193% 30px;
  background: #e3f5f6;
  text-align: center;
}

.detail .contact-btn-list li {
  width: 100%;
}

.detail .contact-btn-list li + li {
  margin: 10px 0 0;
}

.detail .contact-btn-list li.window a::after, .detail .contact-btn-list li.dl a::after {
  display: none;
}

.detail .contact-btn-list li.window a:hover span {
  background: url(/img/icn_window_02.png) no-repeat left center;
}

.detail .contact-btn-list li.window span {
  padding: 0 0 0 25px;
  background: url(/img/icn_window.png) no-repeat left center;
}

.detail .contact-btn-list li.dl a:hover span {
  background: url(/img/icn_dl_02.png) no-repeat left center;
}

.detail .contact-btn-list li.dl span {
  padding: 0 0 0 26px;
  background: url(/img/icn_dl.png) no-repeat left center;
}

/* 2022.2.22 add start */
.detail .contact-btn-2 {
  margin: 0 auto 50px;
}

.detail .contact-btn-2 a::after {
  display: none;
}

.detail .contact-btn-2 span {
  padding: 0 0 0 26px;
  background: url(/img/icn_dl.png) no-repeat left center;
}

/* 2022.2.22 add end */
.detail .relation {
  margin: 50px 0 0;
  padding: 48px 20px 40px;
  background: #f5f3ef;
}

.detail .relation .h-style-3 {
  margin: 0 0 25px;
}

.detail .relation .h-style-3 span {
  background: #f5f3ef;
}

.detail .relation-slider {
  padding: 30px 15px;
  background: #fff;
}

.detail .relation-slider li {
  position: relative;
  padding: 0 15px;
}

.detail .relation-prod {
  margin: 0 0 47px;
}

.detail .relation-prod-img {
  width: 42.857142857%;
  float: left;
  border: solid 1px #d0dadb;
}

.detail .relation-prod-txt {
  width: 52.38095238%;
  float: right;
  padding: 5px 0 0;
  font-size: 13px;
}

.detail .relation-prod .btn {
  position: absolute;
  bottom: 35px;
  left: 215px;
  width: 150px;
}

.detail .relation-prod .btn a {
  height: 32px;
  line-height: 32px;
  font-size: 13px;
}

.detail .relation-prod .btn a::after {
  right: 15px;
}

.detail .relation-prod-ttl {
  margin: -4px 0 2px;
  font-size: 16px;
  font-weight: bold;
}

.detail .relation .recommend .h-style-2 {
  margin: 0 0 16px;
}

.detail .relation .recommend li {
  width: 22.580645161%;
}

@media only screen and (max-width: 768px) {
  .detail {
    padding: 25px 0 0;
  }
  .detail .tab {
    margin: 0 0 43px;
  }
  .detail .content {
    margin: 0 15px;
    padding: 0;
  }
  .detail .dot-list {
    margin: 17px 0 0;
  }
  .detail .dot-list li {
    padding: 0 0 0 16px;
    font-size: 12px;
    line-height: 1.8;
  }
  .detail .dot-list li::before {
    display: block;
    content: "";
    position: absolute;
    top: 7px;
    left: 0;
    width: 8px;
    height: 8px;
    margin: auto;
    background: #00abb4;
    border-radius: 50%;
  }
  .detail-top {
    padding: 0;
    border-bottom: none;
  }
  .detail-top-slides {
    width: 100%;
    float: none;
    padding: 0 15px;
  }
  .detail-top-slides .btn {
    margin: 27px auto 0;
  }
  .detail-top-no {
    width: 24px;
    height: 24px;
  }
  .detail-top-no li {
    width: 24px;
    height: 24px;
    line-height: 24px;
  }
  .detail-top-txt {
    padding: 23px 0 0;
    width: 100%;
    float: none;
    line-height: 1.8;
  }
  .detail-top-head {
    margin: 0 0 22px;
    padding: 0;
    border-bottom: none;
    width: 100%;
    float: none;
  }
  .detail-top-head .tag {
    position: absolute;
    top: -22px;
    left: 0;
  }
  .detail-top-heading {
    padding: 0;
    font-size: 15px;
    line-height: 1.4;
  }
  .detail-top-ttl {
    margin: 0 0 7px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.1;
  }
  .detail-icn.col3 {
    width: 78%;
  }
  .detail-icn.col3 li {
    width: 28.301886792%;
  }
  .detail-icn-list {
    margin: 0 -2.536011361%;
  }
  .detail-icn-list li {
    width: 43.44468044%;
    height: auto;
    margin: 0 2.416593357%;
    font-size: 10px;
  }
  .detail .point-box {
    margin: 17px 0 0;
  }
  .detail .point-box-ttl {
    width: 55px;
    height: 16px;
    margin: 0 0 10px;
    background-size: 12px;
    border-radius: 16px;
    font-size: 12px;
    line-height: 16px;
  }
  .detail .point-box-list li {
    padding: 0 0 0 18px;
    font-size: 12px;
    line-height: 1.9;
  }
  .detail .point-box-txt {
    line-height: 1.9;
  }
  .detail .section {
    padding: 45px 0 0;
  }
  .detail .section .inner-txt {
    width: auto;
  }
  .detail .scene {
    padding: 32px 0 44px;
    border-bottom: solid 1px #d0dadb;
  }
  .detail .scene-txt {
    width: 100%;
  }
  .detail .scene-img {
    padding: 32px 0 0 5px;
  }
  .detail .scene p {
    font-size: 12px;
    line-height: 1.8;
  }
  .detail .scene p strong {
    margin: 0 0 5px;
  }
  .detail .scene p.scene-img {
    width: 43.12%;
  }
  .detail .spec dl {
    font-size: 12px;
    line-height: 1.4;
    border-top: solid 1px #d0dadb;
  }
  .detail .spec dl:last-of-type {
    border-bottom: solid 1px #d0dadb;
  }
  .detail .spec dl dt {
    display: table-cell;
    width: 76px;
    padding: 8px 0 8px 5px;
    background: #f5f3ef;
  }
  .detail .spec dl dd {
    display: table-cell;
    padding: 8px 0 8px 5px;
  }
  .detail .spec dl dd .color-list li {
    margin: 0 14px 0 0;
    padding: 0 0 0 14px;
  }
  .detail .spec dl dd .color-list li::before {
    width: 10px;
    height: 10px;
  }
  .detail .spec .btn {
    width: auto;
    margin: 30px auto 0;
  }
  .detail .sample-slides {
    max-width: inherit;
    margin: 0 auto;
  }
  .detail .sample-slides-nav {
    width: 13.768115942%;
    float: right;
  }
  .detail .sample-slides-nav .slick-slide {
    margin: 0 0 5px;
    cursor: pointer;
  }
  .detail .sample-slider {
    width: 73.913043478%;
    float: left;
    margin: 0 15px;
  }
  .detail .sample-slider .caption {
    margin: 8px 0 0;
    font-size: 10px;
    line-height: 1.4;
  }
  .detail .movie-box {
    padding-top: 56.231884057%;
  }
  .detail .contact {
    margin: 0 15px;
    padding: 45px 0 0;
  }
  .detail .contact-box {
    display: block;
  }
  .detail .contact-btn {
    width: 100%;
    margin: 0 0 10px;
    padding: 15px 15px 20px;
  }
  .detail .contact-btn-list li.window a:hover span {
    background: url(/img/icn_window.png) no-repeat left center;
    background-size: 15px auto;
  }
  .detail .contact-btn-list li.window span {
    padding: 0 0 0 20px;
    background-size: 15px auto;
  }
  .detail .contact-btn-list li.dl a:hover span {
    background: url(/img/icn_dl.png) no-repeat left center;
    background-size: 15px auto;
  }
  .detail .contact-btn-list li.dl span {
    padding: 0 0 0 22px;
    background-size: 15px auto;
  }
  .detail .relation {
    margin: 30px 0 0;
    padding: 23px 15px 40px;
    background: #f5f3ef;
  }
  .detail .relation-slider {
    margin: 0 15px;
    padding: 15px 20px 10px;
    background: #fff;
  }
  .detail .relation-slider li {
    padding: 0;
  }
  .detail .relation-prod {
    margin: 0 0 38px;
  }
  .detail .relation-prod .h-style-2 {
    margin: 0 0 25px;
  }
  .detail .relation-prod-img {
    width: 32.727272727%;
    float: left;
  }
  .detail .relation-prod-txt {
    width: 61.8181818%;
    float: right;
    padding: 0;
    font-size: 12px;
    line-height: 1.8;
  }
  .detail .relation-prod-ttl {
    margin: 0 0 2px;
    font-size: 12px;
    line-height: 1.2;
  }
  .detail .relation .recommend .h-style-2 {
    margin: 0 0 23px;
  }
  .detail .relation .recommend li {
    width: 47.826086956%;
  }
  .detail .relation .recommend-txt .tag,
  .detail .relation .recommend-txt .date {
    height: auto;
  }
  .detail .relation .recommend-txt p {
    font-size: 12px;
    height: 45px;
    overflow: hidden;
  }
}

.detail-section + .detail-section {
  padding: 50px 0 0;
}

.detail-section-inner {
  width: 730px;
  margin: 45px auto -8px;
}

.detail-section .detail-list-img {
  width: 345px;
  margin: 23px auto 0;
}

.detail-section .detail-list-img img {
  width: 100%;
}

.detail-heading {
  padding: 0 0 15px;
  border-bottom: solid 1px #d0dadb;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 26px;
  line-height: 1.3;
}

.detail-list {
  width: 730px;
  margin: 16px auto 0;
}

.detail-list > li {
  padding: 48px 0 50px;
  line-height: 2.1;
}

.detail-list > li:last-child {
  padding: 45px 0 0;
}

.detail-list > li + li {
  border-top: solid 1px #d0dadb;
}

.detail-list > li.col2 {
  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;
}

.detail-list > li.col2 .detail-list-ttl,
.detail-list > li.col2 .detail-list-txt {
  width: 490px;
}

.detail-list > li.col2 .detail-list-img {
  width: 200px;
  margin: -40px 0 0;
}

.detail-list > li.col2.fr {
  display: block;
}

.detail-list > li.col2.fr .detail-list-ttl,
.detail-list > li.col2.fr .detail-list-txt {
  float: right;
}

.detail-list > li.col2.fr .detail-list-img {
  float: left;
}

.detail-list-ttl {
  position: relative;
  width: 100%;
  margin: 0 0 17px;
  padding: 0 0 0 74px;
  color: #00abb4;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 18px;
  line-height: 1.6;
}

.detail-list-ttl > span {
  position: absolute;
  left: 0;
}

.detail-list-ttl .no {
  display: inline-block;
  width: 24px;
  height: 24px;
  margin: 0 0 0 5px;
  background: #00abb4;
  border-radius: 24px;
  color: #fff;
  line-height: 24px;
  text-align: center;
}

.detail-list-txt .btn {
  width: 280px;
  margin: 21px 0 0;
}

.detail-list-txt .btn a {
  height: 40px;
  font-size: 14px;
  line-height: 40px;
}

.detail-list-txt .btn a::after {
  display: none;
}

.detail-list-txt .btn a span {
  padding: 3px 0 0 26px;
  background: url(/img/icn_dl_03.png) no-repeat left center;
}

.detail-list-txt .note {
  color: #888;
  font-size: 13px;
  line-height: 2.0;
}

.detail-list-img {
  margin: 23px 0 0;
  text-align: center;
}

.detail .feature,
.detail .howto {
  padding-top: 7px;
}

.detail .howto .detail-list-txt {
  line-height: 1.9;
}

@media only screen and (max-width: 768px) {
  .detail-section + .detail-section {
    padding: 40px 0 0;
  }
  .detail-section-inner {
    width: auto;
    margin: 37px auto 0;
  }
  .detail-section .detail-list-img {
    width: auto;
  }
  .detail-heading {
    padding: 0 0 8px;
    font-size: 15px;
    line-height: 1.4;
  }
  .detail-list {
    width: auto;
    margin: 0;
  }
  .detail-list > li {
    padding: 37px 0 40px;
    line-height: 2.1;
  }
  .detail-list > li:last-child {
    padding: 37px 0 0;
  }
  .detail-list > li + li {
    border-top: solid 1px #d0dadb;
  }
  .detail-list > li.col2 {
    display: block;
  }
  .detail-list > li.col2 .detail-list-ttl,
  .detail-list > li.col2 .detail-list-txt {
    width: auto;
  }
  .detail-list > li.col2 .detail-list-img {
    width: auto;
    margin: 18px 0 0;
  }
  .detail-list > li.col2 .detail-list-img img {
    width: inherit;
    zoom: .5;
  }
  .detail-list > li.col2.fr .detail-list-ttl,
  .detail-list > li.col2.fr .detail-list-txt {
    float: none;
  }
  .detail-list > li.col2.fr .detail-list-img {
    float: none;
  }
  .detail-list-ttl {
    margin: 0 0 15px;
    padding: 0 0 0 59px;
    font-size: 15px;
    line-height: 1.4;
  }
  .detail-list-ttl .no {
    width: 15px;
    height: 15px;
    margin: -2px 0 0 5px;
    border-radius: 15px;
    font-size: 10px;
    line-height: 15px;
    vertical-align: middle;
  }
  .detail-list-txt {
    font-size: 12px;
    line-height: 1.8;
  }
  .detail-list-txt .btn {
    width: auto;
    margin: 17px 0 0;
  }
  .detail-list-txt .note {
    font-size: 10px;
    line-height: 1.8;
  }
  .detail-list-img {
    width: auto;
    margin: 21px 0 0;
  }
  .detail .howto .detail-list-txt {
    line-height: 1.8;
  }
  .detail .feature,
  .detail .howto {
    margin: -20px 0 0;
    padding-top: 0;
  }
}

.news-popup {
  position: fixed;
  bottom: 200px;
  right: 10px;
  width: 250px;
  background: #fff;
  border-radius: 5px;
  -webkit-box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2);
  z-index: 2;
  opacity: 0;
  -webkit-transition: opacity .3s 1s;
  transition: opacity .3s 1s;
}

.news-popup.fade {
  opacity: 1;
}

.news-popup p {
  font-size: 13px;
  line-height: 1.8;
}

.news-popup-inner {
  padding: 10px 20px 0;
}

.news-popup-ttl {
  color: #00abb4;
  font-weight: bold;
}

.news-popup .btn {
  width: auto;
  margin: 10px 0 0;
}

.news-popup .btn a {
  height: 30px;
  border: none;
  border-radius: 0 0 5px 5px;
  line-height: 30px;
  font-size: 13px;
}

.news-popup .btn a::after {
  right: 10px;
}

.news-popup .close {
  position: absolute;
  top: -29px;
  right: 0;
  width: 21px;
  height: 21px;
  background: #00abb4;
  border-radius: 50%;
  -webkit-box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2);
  cursor: pointer;
}

.news-popup .close:before, .news-popup .close:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 10px;
  height: 1px;
  margin: auto;
  background: #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.news-popup .close:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media only screen and (max-width: 768px) {
  .news-popup {
    bottom: 15px;
    left: 0;
    right: 0;
    width: calc(100% - 30px);
    margin: 0 auto;
    z-index: 9999;
  }
  .news-popup p {
    font-size: 12px;
  }
  .news-popup-inner {
    padding: 20px 15px 0;
  }
  .news-popup .btn a {
    height: 40px;
    line-height: 40px;
    font-size: 12px;
  }
  .news-popup .close {
    top: -40px;
    width: 30px;
    height: 30px;
  }
  .news-popup .close:before, .news-popup .close:after {
    display: block;
    content: "";
    width: 20px;
  }
}

/* =================================================================
 スペック一覧
================================================================= */
.speclist {
  padding: 50px 0 60px;
}

.speclist .h-style-4 {
  margin: 0 0 46px;
}

.speclist .tab {
  margin: 0 auto 50px;
}

.speclist .tab li {
  width: 23.010752688%;
}

.speclist-txt {
  margin: 0 0 12px;
  line-height: 2.1;
}

.speclist-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-left: solid 1px #d0dadb;
}

.speclist-menu li {
  position: relative;
  width: calc(100% / 6);
  border-bottom: solid 1px #d0dadb;
  border-right: solid 1px #d0dadb;
  cursor: pointer;
}

.speclist-menu li:nth-child(-n+6) {
  border-top: solid 1px #d0dadb;
}

.speclist-menu li:hover, .speclist-menu li.active {
  background: #e3f5f6;
}

.speclist-menu li:hover .checkbox, .speclist-menu li.active .checkbox {
  color: #00abb4;
}

.speclist-menu li.off {
  background: #f7f7f7;
  color: #aaa;
  cursor: default;
}

.speclist-menu li.off .checkbox span::after {
  background: #ddd;
  border-radius: 3px;
}

.speclist-menu li.off label {
  cursor: default;
}

.speclist-menu li.off img {
  -webkit-filter: grayscale(1);
  filter: grayscale(1);
}

.speclist-menu li.off:hover {
  background: #f7f7f7;
}

.speclist-menu li.off:hover .checkbox {
  color: #aaa;
}

.speclist-menu li.l2 .checkbox > span {
  margin: 0;
}

.speclist-menu li.l2 .checkbox span.item {
  margin: 9px 0 10px 5px;
  line-height: 1.5;
  text-align: left;
}

.speclist input[type=checkbox] {
  display: none;
}

.speclist input[type=checkbox]:checked + .checkbox span:before {
  opacity: 1;
}

.speclist .checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  position: relative;
  padding: 23px 0 0;
}

.speclist .checkbox > span {
  margin: -5px 0 0;
  text-align: center;
}

.speclist .checkbox span.item {
  display: block;
  position: relative;
  margin: 14px 0 16px;
  padding: 0 0 0 21px;
  font-size: 12px;
}

.speclist .checkbox span.item::after {
  display: block;
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  width: 16px;
  height: 16px;
  margin: auto;
  background: url(/img/product/icn_checkbox.png) no-repeat center center;
}

.speclist .checkbox span.item::before {
  display: block;
  content: "";
  position: absolute;
  top: 7px;
  left: 6px;
  width: 5px;
  height: 9px;
  border-right: 2px solid #00abb4;
  border-bottom: 2px solid #00abb4;
  opacity: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 1;
}

.speclist-table {
  margin: 47px 0 0;
}

.speclist-table dl {
  width: 100%;
  overflow: hidden;
  border-top: solid 1px #d0dadb;
}

.speclist-table dl:last-of-type {
  border-bottom: solid 1px #d0dadb;
}

.speclist-table dl dt {
  float: left;
  width: 150px;
  min-height: 53px;
  padding: 17px 20px 0;
  background: #f5f3ef;
}

.speclist-table dl dd {
  display: none;
  float: left;
  width: 260px;
  padding: 17px 20px;
  line-height: 1.4;
}

.speclist-table dl dd.is-on {
  display: block;
}

.speclist-table dl.name dt {
  min-height: 148px;
  padding: 60px 20px 0;
}

.speclist-table dl.name dd {
  padding: 18px 0 18px;
  color: #00abb4;
  font-size: 15px;
  line-height: 1.4;
  text-align: center;
}

.speclist-table dl.name dd span {
  display: block;
  margin: 11px 0 0;
}

.speclist-table dl.cap dd {
  padding: 22px 20px 17px;
}

.speclist-table dl.cap dd span {
  display: block;
  color: #888;
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: 0.06em;
}

.speclist-table dl.material dd span {
  display: none;
}

.speclist-table dl.link dd {
  padding: 20px 10px;
}

.speclist-table dl.link .btn {
  width: 150px;
  margin: 0 0 10px;
}

.speclist-table dl.link .btn:last-child {
  margin: 0;
}

.speclist-table dl.link .btn a {
  height: 32px;
  font-size: 13px;
  line-height: 32px;
}

.speclist-table dl.link .btn a::after {
  right: 11px;
}

@media only screen and (max-width: 768px) {
  .speclist {
    padding: 25px 0 40px;
  }
  .speclist .h-style-4 {
    margin: 0 0 24px;
  }
  .speclist .tab {
    width: 100%;
    margin: 0 auto 19px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  .speclist .tab li {
    width: 120px;
  }
  .speclist .tab-conts {
    margin: 0 15px;
  }
  .speclist-txt {
    margin: 0 0 13px;
    line-height: 2.1;
  }
  .speclist-menu {
    width: 100%;
  }
  .speclist-menu li {
    width: calc(100% / 3);
  }
  .speclist-menu li:nth-child(-n+6) {
    border-top: none;
  }
  .speclist-menu li:nth-child(-n+3) {
    border-top: solid 1px #d0dadb;
  }
  .speclist-menu li:hover {
    background: none;
  }
  .speclist-menu li:hover .checkbox {
    color: #333;
  }
  .speclist-menu li.active {
    background: #e3f5f6;
  }
  .speclist-menu li.active .checkbox {
    color: #00abb4;
  }
  .speclist-menu li span {
    font-size: 10px;
  }
  .speclist-menu li span img {
    display: block;
    width: 52px;
    margin: 0 auto;
  }
  .speclist-menu li.l2 .checkbox span.item {
    margin: 10px 0 5px;
  }
  .speclist-menu li.l2 .checkbox span.item::before {
    top: 4px;
  }
  .speclist input[type=checkbox] {
    display: none;
  }
  .speclist input[type=checkbox]:checked + .checkbox span:before {
    opacity: 1;
  }
  .speclist .checkbox {
    display: block;
    position: relative;
    width: auto;
    padding: 10px 5px 0;
    text-align: center;
    font-size: 0;
  }
  .speclist .checkbox > span {
    display: block;
    margin: 0;
  }
  .speclist .checkbox span.item {
    display: inline-block;
    padding: 0 0 0 15px;
    margin: 10px 0;
    line-height: 1.4;
    text-align: left;
    font-size: 10px;
  }
  .speclist .checkbox span.item::after {
    width: 12px;
    height: 12px;
    top: 2px;
    bottom: inherit;
    background: url(/img/product/icn_checkbox.png) no-repeat center center;
    background-size: 12px;
  }
  .speclist .checkbox span.item::before {
    top: 4px;
    left: 4px;
    width: 3.5px;
    height: 6px;
    border-right: 1px solid #00abb4;
    border-bottom: 1px solid #00abb4;
    opacity: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    z-index: 1;
  }
  .speclist-table {
    margin: 40px 0 0;
  }
  .speclist-table dl {
    display: block;
    width: 100%;
    height: 123px;
    border-top: none;
  }
  .speclist-table dl.auto {
    height: auto;
  }
  .speclist-table dl:first-of-type {
    border-top: solid 1px #d0dadb;
  }
  .speclist-table dl:last-of-type {
    border-bottom: solid 1px #d0dadb;
  }
  .speclist-table dl dt {
    width: 100%;
    min-height: auto;
    float: none;
    padding: 5px 0;
    font-size: 12px;
    text-align: center;
  }
  .speclist-table dl dd {
    width: 50%;
    float: left;
    font-size: 12px;
    line-height: 1.4;
    text-align: center;
    word-wrap: break-word;
  }
  .speclist-table dl dd.is-on {
    display: block;
    padding: 12px 0 13px 3.623188405%;
  }
  .speclist-table dl dd.is-on.left {
    padding: 12px 3.623188405% 13px 0;
    border-right: solid 1px #d0dadb;
  }
  .speclist-table dl.name dt {
    min-height: auto;
    padding: 5px 20px;
  }
  .speclist-table dl.name dd {
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
  }
  .speclist-table dl.name dd.is-on {
    padding: 14px 0 15px 3.623188405%;
  }
  .speclist-table dl.name dd.is-on.left {
    padding: 14px 3.623188405% 15px 0;
  }
  .speclist-table dl.name dd span {
    display: block;
    margin: 10px 0 0;
  }
  .speclist-table dl.name dd span img {
    width: inherit;
    zoom: .5;
  }
  .speclist-table dl.cap dd.is-on {
    padding: 13px 0 12px 3.623188405%;
  }
  .speclist-table dl.cap dd.is-on.left {
    padding: 13px 3.623188405% 12px 0;
  }
  .speclist-table dl.cap dd span {
    margin: 4px 0 0;
    font-size: 10px;
    line-height: 1.7;
    letter-spacing: 0.06em;
    text-align: left;
  }
  .speclist-table dl.material dd span {
    display: inline;
  }
  .speclist-table dl.link ddis-on {
    padding: 15px 3.623188405% 15px 0;
  }
  .speclist-table dl.link ddis-on.left {
    padding: 15px 0 15px 3.623188405%;
  }
  .speclist-table dl.link .btn {
    width: 99%;
    margin: 0 0 10px;
  }
  .speclist-table dl.link .btn:last-child {
    margin: 0;
  }
  .speclist-table dl.link .btn a {
    height: 45px;
    font-size: 13px;
    line-height: 45px;
  }
  .speclist-table dl.link .btn a::after {
    right: 11px;
  }
}

@media only screen and (max-width: 320px) {
  .speclist .checkbox span.item {
    letter-spacing: -0.04em;
  }
}

/* =================================================================
 セミナー一覧
================================================================= */
.seminar {
  padding-bottom: 240px;
}

.seminar .inner {
  position: relative;
}

.seminar-heading {
  display: inline-block;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 34px;
  letter-spacing: 0.04em;
  line-height: 1.4;
}

.seminar .head {
  margin: 43px 0 0;
}

.seminar .head-txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 140px;
  background: #ffdece;
}

.seminar .head-txt.skillup {
  background: #e3f5f6;
}

.seminar .head-txt.skillup > div {
  margin: 8px 0 0 60px;
}

.seminar .head-txt.lecture {
  background: #ece3f6;
}

.seminar .head-txt.lecture > div {
  margin: 8px 0 0 23px;
}

.seminar .head-txt > div {
  position: relative;
  margin: 8px 0 0 105px;
  padding: 0 0 0 65px;
}

.seminar .head-txt p {
  font-size: 16px;
  letter-spacing: 0.04em;
  line-height: 1.7;
}

.seminar .head-icn {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 53px;
  margin: auto;
  line-height: 1.0;
}

.seminar .page-nav {
  margin: 50px 0 0;
}

.seminar .page-nav-list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border: none;
}

.seminar .page-nav-list li {
  width: 49.462365591%;
  border: none;
  text-align: center;
}

.seminar .page-nav-list li a {
  padding: 11px 0 10px;
  background: #9cb2b3;
  color: #fff;
}

.seminar .page-nav-list li a::before {
  top: -5px;
  width: 10px;
  height: 10px;
  border-color: #fff;
}

.seminar-info:last-of-type {
  padding: 10px 0 100px;
}

.seminar-info-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.seminar-info-list > li + li {
  margin: 65px 0 0;
}

.seminar-info-img {
  /* width: 25.806451612%; */
  width: 338px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: 0 47px 0 0;
  /* float: left; */
}

.seminar-info-img img {
  width: 100%;
}

.seminar-info-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 70.967741935%;
  float: right;
  margin: 0 0 10px;
  padding: 0 0 20px;
  border-bottom: solid 1px #d0dadb;
}

.seminar-info-tags-wrap {
  display: inline-block;
  border: solid 1px #00aeb6;
  margin: 0 0 23px;
}

.seminar-info-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 5px 15px;
}

.seminar-info-tags dt {
  font-size: 12px;
  color: #00aeb6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.seminar-info-tags dt::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 16px;
  background: #00aeb6;
  margin: 0 14px;
}

.seminar-info-tags dd {
  font-size: 12px;
  color: #00aeb6;
}

.seminar-info-date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.seminar-info-date > dl {
  padding: 0 12px 0 0;
}

.seminar-info-date > dl > dt {
  display: table-cell;
  position: relative;
  padding: 0 9px 0 27px;
  background: url(/img/bg_dot_02.png) no-repeat right center;
  font-size: 16px;
  vertical-align: middle;
}

.seminar-info-date > dl > dt::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 20px;
  height: 19px;
  margin: auto;
  background: url(/img/icn_sche.png) no-repeat center center;
}

.seminar-info-date > dl > dd {
  display: table-cell;
}

.seminar-info-date > dl > dd:not(.seminar-tag) {
  padding: 0 10px 0 9px;
  letter-spacing: 0.02em;
  line-height: 2.1;
  vertical-align: middle;
}

.seminar-info-date .other {
  position: absolute;
  right: 0;
}

.seminar-info-date .other-btn {
  position: relative;
  width: 112px;
  height: 28px;
  padding: 0 13px;
  border: solid 1px #d0dadb;
  border-radius: 28px;
  font-size: 13px;
  line-height: 28px;
  cursor: pointer;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.seminar-info-date .other-btn:hover {
  background: #d0dadb;
  border-color: #9cb2b3;
}

.seminar-info-date .other-btn::before {
  display: inline-block;
  content: "";
  position: absolute;
  bottom: -21px;
  right: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: 0 auto;
  border-style: solid;
  border-width: 0 8px 13px 8px;
  border-color: transparent transparent #f5f3ef transparent;
  opacity: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

.seminar-info-date .other-btn::after {
  display: inline-block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 7px 5px 0 5px;
  border-color: #9cb2b3 transparent transparent transparent;
}

.seminar-info-date .other-btn.active::before {
  opacity: 1;
}

.seminar-info-date .other-date {
  position: absolute;
  right: 0;
  width: 355px;
  margin: 20px 0 0;
  padding: 20px;
  background: #f5f3ef;
}

.seminar-info-date .other-date dl + dl {
  margin: 10px 0 0;
}

.seminar-info-date .other-date dl dt {
  display: table-cell;
}

.seminar-info-date .other-date dl dd {
  display: table-cell;
  padding: 0 20px 0 10px;
  background: url(/img/icn_arrow_01.png) no-repeat right center;
  background-size: 11px auto;
  vertical-align: bottom;
}

.seminar-info-txt {
  /* width: 70.967741935%; */
  /* float: right; */
  font-size: 13px;
  line-height: 1.5;
  width: 100%;
}

.seminar-info-ttl {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.4;
  margin: 0 0 20px;
}

.seminar-info-ttl small {
  display: block;
  font-size: 16px;
}

.seminar-info .no-txt {
  color: #ff5c5c;
  font-size: 16px;
  text-align: center;
}

.seminar-tag {
  width: 110px;
  /* padding: 7px 0; */
  background: #fff;
  border: solid 1px #00abb4;
  color: #00abb4;
  font-size: 12px;
  letter-spacing: 0.06em;
  /* line-height: 1.0; */
  line-height: 28px;
  word-spacing: normal;
  vertical-align: top;
  text-align: center;
}

.seminar-tag a {
  color: inherit;
  display: block;
}

.seminar-tag.remaining {
  border-color: #ff925c;
  color: #ff925c;
}

.seminar-tag.place {
  width: auto;
  height: 28px;
  margin: 0 10px 0 0;
  /* padding: 7px 8px; */
  padding: 0 8px;
  background: #00abb4;
  border: none;
  color: #fff;
  font-size: 14px;
}

.seminar-tag.place span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 18px;
}

.seminar-tag.place span::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 14px;
  height: 19px;
  margin: auto;
  background: url(/img/icn_pin.png) no-repeat center center;
}

.seminar-info-btn {
  width: 340px;
  margin: 36px auto 0;
}

.seminar-step {
  margin: 45px 0 0;
}

.seminar-step h2 {
  margin: 0 0 35px;
}

.seminar-step .seminar-info-ttl {
  margin: 0 0 15px;
}

.seminar-step-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.seminar-step-list li + li {
  margin: 35px 0 0;
}

.seminar-step-icn {
  width: 85px;
  margin: 0 35px 0 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.seminar-step-icn.step02 img {
  width: 51px;
}

.seminar-step-icn.step03 img {
  width: 74px;
}

.seminar-step-img {
  margin: 20px 0 0;
}

.seminar-step-img img {
  width: 269px;
}

.seminar-step-img figcaption {
  font-size: 10px;
  line-height: 2.0;
}

@media only screen and (min-width: 1200px) and (max-width: 1230px) {
  .seminar-info-date > dl > dt {
    font-size: 15px;
  }
  .seminar-info-date > dl > dt::before {
    width: 18px;
    background-size: 18px auto;
  }
  .seminar-info-date > dl > dd {
    font-size: 13px;
  }
  .seminar-info-date > dl > dd .other-btn {
    width: 112px;
    font-size: 13px;
  }
}

@media only screen and (max-width: 960px) {
  .seminar-info-date > dl > dt {
    padding: 0 5px 0 25px;
    font-size: 15px;
  }
  .seminar-info-date > dl > dt::before {
    width: 18px;
    background-size: 18px auto;
  }
  .seminar-info-date > dl > dd {
    font-size: 13px;
  }
  .seminar-info-date > dl .other-btn {
    width: 105px;
    font-size: 12px;
  }
}

@media only screen and (max-width: 930px) {
  .seminar-info-date > dl > dt {
    font-size: 14px;
  }
  .seminar-info-date > dl > dd {
    font-size: 12px;
  }
  .seminar-info-date .other-btn {
    width: 100px;
    font-size: 12px;
  }
}

@media only screen and (max-width: 768px) {
  .seminar {
    padding-top: 20px;
    padding-bottom: 50px;
  }
  .seminar-heading {
    display: inline-block;
    font-size: 19px;
    line-height: 1.3;
  }
  .seminar .head {
    margin: 0 15px;
  }
  .seminar .head-txt {
    height: 100px;
    padding: 15px 0 10px;
  }
  .seminar .head-txt > div {
    margin: 0 0 0 30px;
    padding: 0 0 0 35px;
  }
  .seminar .head-txt.skillup > div {
    margin: 0;
  }
  .seminar .head-txt.lecture > div {
    margin: 0 0 0 30px;
  }
  .seminar .head-txt p {
    font-size: 10px;
    line-height: 2.1;
  }
  .seminar .head-icn {
    height: 27px;
  }
  .seminar .head-icn img {
    width: inherit;
    zoom: .5;
  }
  .seminar .page-nav {
    display: block;
    margin: 25px 15px 0;
  }
  .seminar .page-nav-list li {
    width: 49.275362318%;
  }
  .seminar .page-nav-list li a {
    padding: 16px 0 15px;
  }
  .seminar .page-nav-list li a::before {
    right: 10px;
    width: 7px;
    height: 7px;
  }
  .seminar-info {
    padding: 0 15px;
  }
  .seminar-info:last-of-type {
    padding: 15px 15px 60px;
  }
  .seminar-info-list li {
    display: block;
  }
  .seminar-info-list > li + li {
    margin: 40px 0 0;
  }
  .seminar-info-img {
    width: auto;
    margin: 0 -15px;
  }
  .seminar-info-top {
    display: block;
    width: 60.869565217%;
    margin: 0 0 10px;
    padding: 0;
    border-bottom: none;
  }
  .seminar-info-tags-wrap {
    margin: 0 0 20px;
  }
  .seminar-info-tags {
    /* margin: 0 0 10px; */
    padding: 1px 12px;
  }
  .seminar-info-tags dt,
  .seminar-info-tags dd {
    font-size: 10px;
  }
  .seminar-info-tags dt::after {
    height: 10px;
    margin: 0 6px;
  }
  .seminar-info-date {
    display: block;
  }
  .seminar-info-date > dl {
    padding: 0;
  }
  .seminar-info-date > dl > dt {
    display: table-cell;
    position: relative;
    padding: 0 7px 0 21px;
    font-size: 12px;
    vertical-align: middle;
  }
  .seminar-info-date > dl > dt::before {
    width: 15px;
    height: 14px;
    background-size: 15px auto;
  }
  .seminar-info-date > dl > dd.seminar-tag {
    display: none;
  }
  .seminar-info-date > dl > dd:not(.seminar-tag) {
    padding: 0 0 0 9px;
    font-size: 12px;
    letter-spacing: 0;
    line-height: 1.2;
    vertical-align: middle;
  }
  .seminar-info-date .other {
    display: block;
    position: inherit;
    margin: 4px 0 0;
  }
  .seminar-info-date .other-btn {
    width: 100%;
    height: 30px;
    border: solid 1px #d0dadb;
    border-radius: 30px;
    font-size: 12px;
    line-height: 28px;
    text-align: center;
  }
  .seminar-info-date .other-btn::before {
    bottom: -12px;
    border-width: 0 5px 11px 5px;
  }
  .seminar-info-date .other-btn::after {
    right: 10px;
    border-width: 7px 5px 0 5px;
  }
  .seminar-info-date .other-date {
    width: calc(100% - 30px);
    margin: 11px 15px 0;
    padding: 13px 15px;
  }
  .seminar-info-date .other-date dl + dl {
    margin: 10px 0 0;
  }
  .seminar-info-date .other-date dl dt {
    display: table-cell;
  }
  .seminar-info-date .other-date dl dt a {
    display: block;
  }
  .seminar-info-date .other-date dl dt .seminar-tag {
    margin: 0;
  }
  .seminar-info-date .other-date dl dd {
    padding: 0 16px 0 10px;
    font-size: 12px;
    letter-spacing: 0.04em;
  }
  .seminar-info-txt {
    clear: both;
    width: auto;
    float: none;
    font-size: 12px;
    line-height: 1.7;
  }
  .seminar-info-ttl {
    font-size: 14px;
    line-height: 1.7;
    margin: 0 0 15px;
  }
  .seminar-info-ttl small {
    font-size: 12px;
  }
  .seminar-tag {
    width: 84px;
    /*padding: 4px 0;*/
    font-size: 10px;
    line-height: 20px;
  }
  .seminar-tag a {
    color: inherit;
    display: block;
  }
  .seminar-tag.place {
    height: 20px;
    margin: 0 5px 0 0;
    /* padding: 5px; */
    font-size: 10px;
  }
  .seminar-tag.place span {
    padding: 0 0 0 13px;
  }
  .seminar-tag.place span::before {
    width: 9px;
    height: 13px;
    background-size: 9px auto;
  }
  .seminar-info-btn {
    margin: 20px auto 0;
    width: 91.304347826%;
  }
  .seminar-step {
    margin: 37px 15px 0;
  }
  .seminar-step h2 {
    margin: 0 0 38px;
  }
  .seminar-step .seminar-info-ttl {
    margin: 0 0 11px;
  }
  .seminar-step-list li + li {
    margin: 15px 0 0;
  }
  .seminar-step-icn {
    width: 56.5px;
    margin: 0 25px 0 0;
  }
  .seminar-step-icn.step02 img {
    width: 33px;
  }
  .seminar-step-icn.step03 img {
    width: 48.5px;
  }
  .seminar-step-img {
    margin: 4px 0 0;
  }
  .seminar-step-img img {
    width: 100%;
  }
  .seminar-step-img figcaption {
    margin: 5px 0 0;
    letter-spacing: 0;
  }
}

@media only screen and (max-width: 360px) {
  .seminar .head-txt > div {
    margin: 0;
  }
  .seminar .head-txt.skillup > div {
    margin: 0;
  }
  .seminar .head-txt.lecture > div {
    margin: 0;
  }
  .seminar .page-nav-list li a {
    font-size: 10px;
  }
  .seminar .page-nav-list li a::before {
    right: 10px;
    width: 5px;
    height: 5px;
  }
  .seminar-info-top {
    display: block;
    width: 60.869565217%;
    margin: 0 0 10px;
    padding: 0;
    border-bottom: none;
  }
  .seminar-info-tags {
    /* margin: 0 0 10px; */
  }
  .seminar-info-date {
    display: block;
  }
  .seminar-info-date > dl {
    padding: 0;
  }
  .seminar-info-date > dl > dt {
    padding: 0 5px 0 19px;
    font-size: 11px;
  }
  .seminar-info-date > dl > dd {
    padding: 0 0 0 7px;
    font-size: 10px;
  }
  .seminar-info-date .other {
    display: block;
    position: inherit;
    margin: 10px 0 0;
  }
  .seminar-info-date .other-btn {
    font-size: 11px;
  }
  .seminar-tag {
    width: 79px;
    padding: 4px 0;
    font-size: 10px;
    letter-spacing: -0.04em;
  }
  .seminar-tag.place {
    margin: 0 3px 0 0;
    padding: 5px 3px;
  }
  .seminar-tag.place span {
    padding: 0 0 0 11px;
  }
}

/* =================================================================
 セミナー詳細
================================================================= */
.side {
  position: absolute;
  top: 72px;
  width: 250px;
  margin: 0 0 0 680px;
}

.side dl {
  padding: 14px 12px;
  background: #00abb4;
  color: #fff;
}

.side dl dt {
  display: table-cell;
  padding: 0 12px 0 22px;
  background: url(/img/icn_pin.png) no-repeat left center;
  line-height: 2.1;
  vertical-align: middle;
}

.side dl dd {
  display: table-cell;
  padding: 0 0 0 15px;
  background: url(/img/bg_dot_03.png) repeat-y left top;
  font-size: 18px;
  line-height: 1.6;
}

.side .schedule {
  margin: 20px 0 0;
}

.side .schedule-ttl {
  padding: 4px 10px;
  background: #00abb4;
  color: #fff;
  line-height: 2.1;
}

.side .schedule-ttl span {
  display: inline-block;
  padding: 0 0 0 26px;
  background: url(/img/icn_sche_02.png) no-repeat left center;
  background-size: 18px auto;
}

.side .schedule-list {
  background: #f5f3ef;
}

.side .schedule-list li {
  border-bottom: solid 1px #d0dadb;
}

.side .schedule-date {
  position: relative;
  height: 60px;
  padding: 0 10px;
  line-height: 60px;
  cursor: pointer;
}

.side .schedule-date::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 11px;
  width: 20px;
  height: 20px;
  margin: auto;
  background: url(/img/icn_plus_02.png) no-repeat center center;
  background-size: 20px auto;
}

.side .schedule-date.active::after {
  background: url(/img/icn_minus_02.png) no-repeat center center;
  background-size: 20px auto;
}

.side .schedule-conts {
  padding: 0 8% 12px;
}

.side .schedule-conts .btn {
  width: 100%;
}

.side .schedule-conts .btn a {
  padding: 0 0 0 16px;
  background: #ff925c;
  border-color: #ff925c;
  text-align: left;
}

.side .schedule-conts .btn a::after {
  right: 20px;
}

.side .schedule-conts .btn a:hover {
  background: #ffe1d2;
  color: #ff925c;
}

.side .schedule-conts .btn a:hover::after {
  background: url(/img/icn_arrow_05.png) no-repeat center center;
}

.side .schedule-conts .btn.fin {
  height: 50px;
  background: #9cb2b3;
  border-radius: 50px;
  color: #fff;
  font-size: 16px;
  line-height: 50px;
  text-align: center;
}

.side .schedule-conts .note {
  margin: 12px 0 0;
  font-size: 12px;
  letter-spacing: 0.04em;
  line-height: 2.4;
}

@media only screen and (max-width: 930px) {
  .side {
    margin: 0 0 0 640px;
  }
}

@media only screen and (max-width: 768px) {
  .side {
    position: relative !important;
    top: 0 !important;
    width: auto;
    margin: 40px 0 15px !important;
  }
  .side dl {
    padding: 5px 12px;
  }
  .side dl dt {
    padding: 0 7px 0 17px;
    background-size: 9px auto;
    font-size: 12px;
    line-height: 1.2;
  }
  .side dl dd {
    padding: 3px 0 3px 11px;
    font-size: 14px;
    line-height: 1.0;
  }
  .side .schedule {
    margin: 9px 0 0;
  }
  .side .schedule-ttl {
    padding: 0 10px;
    font-size: 12px;
    line-height: 1.2;
  }
  .side .schedule-ttl span {
    display: inline-block;
    padding: 8px 0 8px 19px;
    background: url(/img/icn_sche_02.png) no-repeat left center;
    background-size: 13px auto;
  }
  .side .schedule-list {
    background: #f5f3ef;
  }
  .side .schedule-list li {
    border-bottom: solid 1px #d0dadb;
  }
  .side .schedule-date {
    height: 50px;
    padding: 0 15px;
    font-size: 12px;
    line-height: 50px;
  }
  .side .schedule-date::after {
    right: 15px;
    width: 15px;
    height: 15px;
    margin: auto;
    background-size: 15px auto;
  }
  .side .schedule-date.active::after {
    background-size: 15px auto;
  }
  .side .schedule-conts {
    padding: 0 15px 13px;
  }
  .side .schedule-conts .btn a {
    font-size: 15px;
    text-align: center;
  }
  .side .schedule-conts .btn a::after {
    width: 12px;
    height: 11px;
    background-size: 11px auto;
  }
  .side .schedule-conts .btn a:hover {
    background: #ff925c;
    color: #fff;
  }
  .side .schedule-conts .btn a:hover::after {
    background: url(/img/icn_arrow_02.png) no-repeat center center;
    background-size: 11px auto;
  }
  .side .schedule-conts .btn.fin {
    height: 45px;
    border-radius: 45px;
    font-size: 15px;
    line-height: 45px;
  }
  .side .schedule-conts .note {
    margin: 8px 0 0;
    font-size: 10px;
    letter-spacing: 0.04em;
    line-height: 1.5;
    text-align: center;
  }
}

.article {
  width: 67.741935483%;
  float: left;
  padding: 0 0 50px;
}

.article-heading {
  margin: 0 0 44px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
}

.article p {
  line-height: 2.1;
}

.article-img {
  margin: 0 0 42px;
}

.article .memo {
  margin: 20px 0 0;
  padding: 15px 20px;
  background: #f5f3ef;
}

.article .memo-ttl {
  margin: 0 0 5px;
  color: #00abb4;
  line-height: 1.7;
  font-weight: bold;
}

.article .memo-list {
  line-height: 1.9;
}

.article .memo-list li {
  padding: 0 0 0 26px;
  background: url(/img/icn_check.png) no-repeat left center;
}

.article .section {
  margin: 45px 0 0;
}

.article .section .h-style-2 {
  margin: 0 0 14px;
}

.article .section dl {
  border-top: solid 1px #d0dadb;
}

.article .section dl:last-of-type {
  border-bottom: solid 1px #d0dadb;
}

.article .section dl dt {
  display: table-cell;
  width: 140px;
  padding: 0 0 0 10px;
}

.article .section dl dd {
  display: table-cell;
  padding: 8px 0 7px;
  line-height: 2.1;
}

.article .section .list li {
  margin: 0 0 0 -7px;
  line-height: 2.1;
}

.article .section .map {
  width: 100%;
  height: 300px;
  margin: 50px 0 0;
  border: solid 1px #d0dadb;
}

.article .section .map-btn {
  width: 260px;
  margin: 20px auto 0;
}

.article .section .map-btn a {
  height: 40px;
  background: #fff;
  border-color: #d0dadb;
  color: #333;
  font-size: 14px;
  line-height: 40px;
}

.article .section .map-btn a::after {
  display: none;
}

.article .section .map-btn a span {
  display: inline-block;
  padding: 0 0 0 25px;
  background: url(/img/icn_pin_03.png) no-repeat left center;
}

.article .section .map-btn a:hover {
  background: #d0dadb;
  border-color: #9cb2b3;
}

.article .section .note {
  margin: 22px 0 0;
  font-size: 13px;
  line-height: 1.8;
}

.article .recommend {
  padding: 25px 30px 20px;
}

.article .recommend-list li {
  width: 30.877192982%;
}

.article .recommend-txt {
  line-height: 1.8;
}

.article .recommend-txt p {
  line-height: 1.8;
}

.article .recommend-txt .tag {
  line-height: 1.0;
}

.article .recommend-txt .date {
  font-size: 12px;
}

.article .contact-block .contact-list-no {
  font-size: 34px;
  line-height: 1.0;
}

@media only screen and (max-width: 768px) {
  .article {
    width: auto;
    float: none;
    margin: 0 15px 15px;
    padding: 0;
  }
  .article-heading {
    margin: 0 0 19px;
    font-size: 15px;
    line-height: 1.8;
  }
  .article p {
    line-height: 1.8;
  }
  .article-img {
    margin: 0 0 19px;
  }
  .article .memo {
    margin: 20px 0 0;
    padding: 12px 10px;
  }
  .article .memo-ttl {
    margin: 0 0 10px;
    line-height: 1.0;
  }
  .article .memo-list {
    font-size: 12px;
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  .article .memo-list li {
    margin: 0 0 0 4px;
    padding: 0 0 0 18px;
    background: url(/img/icn_check.png) no-repeat left 5px;
    background-size: 12px;
  }
  .article .section {
    margin: 39px 0 0;
    font-size: 12px;
    line-height: 1.8;
  }
  .article .section .h-style-2 {
    margin: 0 0 21px;
  }
  .article .section dl {
    border-top: solid 1px #d0dadb;
  }
  .article .section dl:last-of-type {
    border-bottom: solid 1px #d0dadb;
  }
  .article .section dl dt {
    width: 76px;
    padding: 0;
    font-size: 12px;
  }
  .article .section dl dd {
    font-size: 12px;
    line-height: 1.4;
  }
  .article .section .map {
    height: 245px;
    margin: 40px 0 0;
  }
  .article .section .map-btn {
    width: auto;
    margin: 15px 15px 0;
  }
  .article .section .map-btn a {
    height: 45px;
    font-size: 15px;
    line-height: 45px;
  }
  .article .section .map-btn a span {
    padding: 0 0 0 24px;
    background-size: 13px auto;
  }
  .article .section .note {
    margin: 15px 0 0;
    font-size: 11px;
  }
  .article .recommend {
    padding: 15px 15px 10px;
  }
  .article .recommend .h-style-2 {
    margin: 0 0 13px;
  }
  .article .recommend-list li {
    width: 47.619047619%;
  }
  .article .recommend-txt .date {
    font-size: 10px;
    line-height: 1.4;
  }
  .article .contact-block .contact-list li {
    background: #f5f3ef;
  }
  .article .contact-block .contact-list-no {
    font-size: 18px;
  }
}

/* =================================================================
 INFORMATION
================================================================= */
.info {
  position: relative;
  padding: 50px 20px;
}

.info .inner {
  position: relative;
  background: #fff;
}

.info-tab li {
  width: 17.204301075%;
}

.info-conts {
  /* margin: 47px 0 0; */
}

.info-conts-ttl {
  font-size: 16px;
  letter-spacing: 0.06em;
  font-weight: 700;
  line-height: 1.3125;
  text-align: center;
  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;
  margin: 0 0 28px;
}

.info-conts-ttl span {
  margin: 0 10px;
}

.info-conts-ttl::before,
.info-conts-ttl::after {
  content: "";
  display: block;
  height: 1px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background: #f5f3ef;
}

.info-conts-list {
  margin: 0 -2.150537634%;
  font-size: 0;
  letter-spacing: 0;
  word-spacing: 0;
}

.info-conts-list li {
  display: inline-block;
  width: 45.876288659%;
  margin: 0 2.06185567% 50px;
  font-size: 14px;
  letter-spacing: 0.06em;
  word-spacing: normal;
  vertical-align: top;
}

.info-conts-list li a {
  overflow: hidden;
}

.info-conts.is-on {
  display: block;
}

.info-conts .btn {
  margin: 40px auto 0;
}

.info-conts-latest {
  margin: 0 0 40px;
}

.info-conts-latest dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.info-conts-latest dl + dl {
  margin: 14px 0 0;
}

.info-conts-latest dl dt {
  width: 100px;
  line-height: 1.7;
}

.info-conts-latest dl dd {
  line-height: 1.7;
}

.info-conts-latest dl dd.latest-list-tag {
  width: 98px;
}

.info-conts-latest dl dd.latest-list-tag .tag {
  margin: 0;
  vertical-align: middle;
}

.info-conts-latest dl dd.latest-list-txt {
  width: 692px;
}

.info-conts-latest dl dd.latest-list-txt a {
  display: block;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.info-conts-latest dl dd.latest-list-txt a span {
  border-bottom: solid 1px transparent;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.info-conts-latest dl dd.latest-list-txt a:hover span {
  border-color: #000;
}

.info-img {
  position: relative;
  width: 42.696629213%;
  float: left;
  padding: 26.966292134% 0 0;
  overflow: hidden;
}

.info-img img {
  position: absolute;
  top: 0;
  left: 0;
}

.info-txt {
  width: 52.808988764%;
  float: right;
}

.info-txt-date {
  color: #888;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  line-height: 1.9;
}

.info-txt .trancate-txt {
  height: 52px;
}

@media only screen and (max-width: 768px) {
  .info {
    position: relative;
    padding: 25px 0 40px;
  }
  .info-tab li {
    width: 108px;
  }
  .info-conts {
    margin: 0 15px;
  }
  .info-conts-ttl {
    font-size: 14px;
    margin: 0 0 25px;
  }
  .info-conts-list {
    margin: 0 -2.898550724%;
  }
  .info-conts-list li {
    width: 44.520547945%;
    margin: 0 2.739726027% 18px;
  }
  .info-conts-list li a {
    display: block;
  }
  .info-conts-latest {
    margin: 0 0 20px;
  }
  .info-conts-latest dl {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .info-conts-latest dl + dl {
    margin: 14px 0 0;
  }
  .info-conts-latest dl dt {
    position: relative;
    width: 67.5px;
    vertical-align: middle;
  }
  .info-conts-latest dl dd {
    line-height: 1.7;
  }
  .info-conts-latest dl dd.latest-list-tag {
    width: 98px;
    line-height: 1.0;
  }
  .info-conts-latest dl dd.latest-list-tag .tag {
    margin: 0;
    vertical-align: middle;
  }
  .info-conts-latest dl dd.latest-list-txt {
    display: block;
    width: 100%;
    margin: 3px 0 0;
  }
  .info-conts-latest dl dd.latest-list-txt a {
    display: block;
    font-size: 12px;
  }
  .info-conts-latest dl dd.latest-list-txt a span {
    border-bottom: none;
  }
  .info-conts-latest dl dd.latest-list-txt a:hover span {
    border-color: transparent;
  }
  .info-conts .btn {
    margin: 20px 15px 0;
  }
  .info-img {
    width: 100%;
    float: none;
    margin: 0 0 10px;
    padding: 67.7901234567% 0 0;
    background: none !important;
  }
  .info-img img {
    display: block !important;
  }
  .info-txt {
    position: relative;
    width: 100%;
    float: none;
    font-size: 12px;
    line-height: 1.8;
  }
  .info-txt-tag {
    padding: 3px;
    font-size: 10px;
  }
  .info-txt-date {
    font-size: 10px;
    letter-spacing: 0.07em;
    line-height: 1.4;
  }
  .info-txt .trancate-txt {
    height: 42px;
  }
}

.info-article {
  width: 730px;
  float: none;
  margin: 0 auto;
}

.info-article-head .tag {
  float: left;
  margin: 0 20px 15px 0;
  line-height: 1.0;
}

.info-article-head .date {
  margin: 0;
  line-height: 1.0;
}

.info-article .article-heading {
  clear: both;
  margin: 0 0 50px;
  padding: 0 0 14px;
  border-bottom: solid 1px #d0dadb;
}

.info-article p {
  line-height: 2.1;
}

.info-article p + p {
  margin: 41px 0 0;
}

.info-article img {
  display: block;
  margin: 0 auto;
}

.info-article .col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 41px 0 0;
}

.info-article .col2 p {
  width: 340px;
  margin: 0;
}

.info-article .col2 p a {
  display: block;
  margin: 0 0 20px;
  text-decoration: underline;
}

.info-article .col2 p a:last-of-type {
  margin: 20px 0 0;
}

.info-article .sns {
  margin: 78px 0 50px;
  font-size: 0;
  letter-spacing: 0;
  word-spacing: 0;
  text-align: center;
}

.info-article .sns li {
  display: inline-block;
}

.info-article .sns li.fb {
  width: 23px;
  margin: 0 57px 0 0;
}

.info-article .sns li.tw {
  width: 27px;
}

.info-article .pagenation li.prev,
.info-article .pagenation li.next,
.info-article .pagenation li.list {
  margin: 0 10px;
}

@media only screen and (max-width: 768px) {
  .info-article {
    width: auto;
    margin: 0 15px;
    padding: 0 0 25px;
  }
  .info-article-head .tag {
    float: left;
    margin: 0 9px 9px 0;
    line-height: 1.0;
  }
  .info-article-head .date {
    margin: 0;
    padding: 2px 0 0;
    font-size: 10px;
  }
  .info-article .article-heading {
    clear: both;
    margin: 0 0 19px;
    padding: 0;
    border-bottom: none;
  }
  .info-article p {
    font-size: 12px;
    line-height: 1.8;
  }
  .info-article p + p {
    margin: 17px 0 0;
  }
  .info-article .col2 {
    display: block;
    margin: 15px 0 0;
  }
  .info-article .col2 p {
    width: auto;
  }
  .info-article .col2 p + p {
    margin: 15px 0 0;
  }
  .info-article .sns {
    margin: 35px 0 40px;
  }
  .info-article .sns li.fb {
    width: 25px;
    margin: 0 50px 0 0;
  }
  .info-article .sns li.tw {
    width: 30px;
  }
  .info-article .pagenation li.prev,
  .info-article .pagenation li.next,
  .info-article .pagenation li.list {
    margin: 0 7.5px;
  }
}

/* =================================================================
 DHができる8のこと
================================================================= */
.dh8 {
  padding: 60px 20px 20px;
}

.dh8-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 46px 0 0;
}

.dh8-list li {
  position: relative;
  width: 290px;
  margin: 0 0 30px;
}

.dh8-list li.top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 300px;
  background: #00abb4;
  color: #fff;
}

.dh8-list li.top div {
  width: 100%;
  margin: 7px 0 0;
  padding: 0 30px;
}

.dh8-list li.top div .dh8-icn {
  margin: 0 0 25px;
}

.dh8-list li.top div .lead {
  line-height: 1.8;
  text-align: left;
}

.dh8-list li.top::after {
  display: none;
}

.dh8-list li a {
  display: block;
  height: 300px;
  padding: 13px 0 0;
  background: #f5f3ef;
  text-align: center;
}

.dh8-list li.no2 .dh8-list-ttl {
  margin: 0 0 36px;
}

.dh8-list li.no2 .dh8-icn {
  margin: 0 0 33px;
}

.dh8-list li.no3 .dh8-list-ttl {
  margin: 0 0 15px;
}

.dh8-list li.no3 .dh8-icn {
  margin: 0 0 14px;
}

.dh8-list li.no4 .dh8-list-ttl, .dh8-list li.no5 .dh8-list-ttl {
  margin: 0 0 23px;
}

.dh8-list li.no4 .dh8-icn, .dh8-list li.no5 .dh8-icn {
  margin: 0 0 23px;
}

.dh8-list li.no6 .dh8-list-ttl {
  margin: 0 0 21px;
}

.dh8-list li.no6 .dh8-icn {
  margin: 0 0 20px;
}

.dh8-list li.no7 .dh8-list-ttl {
  margin: 0 0 37px;
}

.dh8-list li.no7 .dh8-icn {
  margin: 0 0 11px;
}

.dh8-list li.no8 .dh8-list-ttl {
  margin: 0 0 36px;
}

.dh8-list li.no8 .dh8-icn {
  margin: 0 0 49px;
}

.dh8-list li::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 15px;
  right: 15px;
  width: 19px;
  height: 16px;
  background: url(/img/icn_arrow_01.png) no-repeat center center;
  background-size: 19px auto;
}

.dh8-list-ttl {
  margin: 0 0 32px;
  font-size: 18px;
  line-height: 1.3;
}

.dh8-no {
  margin: 0 0 12px;
  color: #ff925c;
  font-family: "Lato", sans-serif;
  font-size: 40px;
  font-weight: 300;
  font-style: italic;
  line-height: 1.0;
}

.dh8-icn {
  margin: 0 0 32px;
  text-align: center;
}

.dh8-conts-item {
  position: relative;
  padding: 50px 50px 44px;
  background: #fff;
}

.dh8-conts-item .h-style-3 {
  line-height: 1.4;
  letter-spacing: -0.02em;
}

.dh8-conts-item .h-style-3::before {
  display: none;
}

.dh8-conts-item .dh8-no {
  position: absolute;
  top: -40px;
  left: -25px;
  font-size: 80px;
}

.dh8-conts-item .dh8-icn {
  position: relative;
  height: 108px;
  margin: 0 0 42px;
}

.dh8-conts-item .dh8-icn img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.dh8-conts-img {
  width: 350px;
  margin: 10px auto 0;
}

.dh8-recommend {
  margin: 21px 0 0;
}

.dh8-recommend-ttl {
  display: inline-block;
  height: 19px;
  margin: 0 0 9px;
  padding: 0 10px;
  background: #9cb2b3;
  border-radius: 19px;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  line-height: 19px;
}

.dh8-recommend-list li {
  line-height: 1.9;
}

.dh8-recommend-list li a {
  display: block;
  padding: 0 0 0 26px;
  background: url(/img/icn_arrow_01_2.png) no-repeat left center;
  background-size: 16px auto;
}

.dh8-recommend-list li a span {
  border-bottom: solid 1px transparent;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.dh8-recommend-list li a:hover span {
  border-color: #000;
}

.dh8-lead {
  line-height: 1.9;
  text-align: center;
}

@media only screen and (max-width: 768px) {
  .dh8 {
    padding: 40px 0;
    margin: 0 15px;
  }
  .dh8 .h-style-4 {
    margin: 0 0 15px;
    font-size: 19px;
  }
  .dh8-list {
    display: block;
    margin: 18px 0 0;
  }
  .dh8-list li {
    width: auto;
    margin: 0 0 15px;
  }
  .dh8-list li.top {
    display: block;
    height: auto;
  }
  .dh8-list li.top div {
    margin: 0;
    padding: 23px 0 10px;
  }
  .dh8-list li.top div .lead {
    font-size: 12px;
    text-align: center;
  }
  .dh8-list li.top .dh8-icn {
    margin: 0 0 21px !important;
  }
  .dh8-list li.top .dh8-icn img {
    width: 51px;
  }
  .dh8-list li.no1 .dh8-icn img {
    width: 70px;
  }
  .dh8-list li.no2 .dh8-icn img {
    width: 92px;
  }
  .dh8-list li.no3 .dh8-icn img {
    width: 80px;
  }
  .dh8-list li.no4 .dh8-icn img, .dh8-list li.no5 .dh8-icn img {
    width: 61px;
  }
  .dh8-list li.no6 .dh8-icn img {
    width: 78px;
  }
  .dh8-list li.no7 .dh8-icn img {
    width: 76px;
  }
  .dh8-list li.no8 .dh8-icn img {
    width: 84px;
  }
  .dh8-list li a {
    display: block;
    height: auto;
    padding: 7px 0 15px;
    font-size: 12px;
  }
  .dh8-list li::after {
    bottom: 10px;
    right: 10px;
    width: 16px;
    height: 15px;
    background-size: 16px auto;
  }
  .dh8-list-ttl {
    margin: 0 0 20px !important;
    font-size: 14px;
    line-height: 1.2;
  }
  .dh8-no {
    margin: 0 0 6px;
    font-size: 23px;
  }
  .dh8-icn {
    position: relative;
    height: 54px;
    margin: 0 0 18px !important;
  }
  .dh8-icn img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
  .dh8-conts-item {
    position: relative;
    padding: 25px 15px 35px;
    font-size: 12px;
  }
  .dh8-conts-item .h-style-3 {
    font-size: 15px;
  }
  .dh8-conts-item .dh8-no {
    position: absolute;
    top: -20px;
    left: -10px;
    right: 0;
    margin: 0 auto;
    font-size: 40px;
    text-align: center;
  }
  .dh8-conts-item .dh8-icn {
    position: relative;
    height: 54px;
    margin: 0 0 20px;
  }
  .dh8-conts-item .dh8-icn img {
    width: inherit;
    zoom: .5;
  }
  .dh8-conts-item .dh8-txt {
    margin: 0 10px;
  }
  .dh8-conts-img {
    width: 70%;
    margin: 5px auto 0;
  }
  .dh8-recommend {
    margin: 21px 0 0;
  }
  .dh8-recommend-ttl {
    height: 16px;
    margin: 0 0 9px;
    padding: 0 8px;
    border-radius: 16px;
    font-size: 12px;
    letter-spacing: 0;
    line-height: 16px;
  }
  .dh8-recommend-list li {
    line-height: 1.8;
  }
  .dh8-recommend-list li a {
    padding: 0 0 0 17px;
    background-size: 11px auto;
  }
  .dh8-recommend-list li a span {
    border: none;
  }
}

.mfp-bg {
  background: #000;
  opacity: .6;
}

.mfp-wrap {
  min-width: 930px;
  left: 125px;
}

.mfp-container {
  right: 0;
  width: 730px;
  margin: 0 auto;
  padding: 0;
}

.mfp-close {
  top: inherit;
  bottom: -70px;
  left: 0;
  width: 200px;
  height: 40px;
  margin: 0 auto;
  padding: 0;
  border: solid 1px #fff;
  border-radius: 40px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  line-height: 40px;
  opacity: 1;
  cursor: pointer;
}

.mfp-close span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 23px;
  color: #fff;
}

.mfp-close span::before, .mfp-close span::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 19px;
  height: 1px;
  margin: auto;
  background: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.mfp-close span::after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

button.mfp-arrow {
  width: 40px;
  height: 40px;
  margin: -18px 0 0;
  background: #fff url(/img/icn_arrow_01_2.png) no-repeat center center;
  background-size: 15px auto;
  border: solid 1px #d0dadb;
  border-radius: 50%;
  opacity: 1;
}

button.mfp-arrow::before, button.mfp-arrow::after {
  display: none;
}

button.mfp-arrow-right {
  right: -20px;
}

button.mfp-arrow-left {
  left: -20px;
  background: #fff url(/img/icn_arrow_01.png) no-repeat center center;
  background-size: 15px auto;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

button.mfp-arrow:active {
  margin: -18px 0 0;
}

.mfp-close:active {
  top: inherit;
}

@media only screen and (max-width: 1200px) {
  .mfp-wrap {
    left: 0;
  }
}

@media only screen and (max-width: 768px) {
  .mfp-wrap {
    min-width: inherit;
  }
  .mfp-bg {
    position: fixed !important;
    padding: 0 0 40px;
  }
  .mfp-container {
    right: 0;
    width: auto;
    margin: 0 30px;
    padding: 50px 0;
  }
  .mfp-close {
    width: auto;
    height: 45px;
    border-radius: 45px;
    font-size: 15px;
    line-height: 45px;
  }
  .mfp-close span {
    display: inline-block;
    position: relative;
    padding: 0 0 0 20px;
    color: #fff;
  }
  .mfp-close span::before, .mfp-close span::after {
    width: 14px;
    height: 1px;
  }
  button.mfp-arrow {
    width: 35px;
    height: 35px;
    margin: 0;
    background-size: 14px auto;
  }
  .mfp-arrow-right {
    right: -17px;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  .mfp-arrow-left {
    left: -17px;
  }
  button.mfp-arrow:active {
    margin: 0;
  }
}

/*モーダルアニメーション*/
@-webkit-keyframes fadeIn {
  0% {
    opacity: .5;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@Keyframes fadeIn {
  0% {
    opacity: .5;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

.dh8-conts-item {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: .3s;
  animation-duration: .3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
}

.mfp-fade.mfp-bg,
.mfp-fade button {
  opacity: 0;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.mfp-fade.mfp-bg.mfp-ready {
  opacity: .6;
}

.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content,
.mfp-fade.mfp-ready button {
  opacity: 1;
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content,
.mfp-fade.mfp-removing button {
  opacity: 0;
}

/* =================================================================
 会社案内
================================================================= */
/*メッセージ*/
.message {
  opacity: 0;
  padding: 0 0 100px;
  /*背景あしらい*/
}

@media only screen and (max-width: 768px) {
  .message {
    padding: 0 0 25px;
  }
}

.message-heading {
  margin: 0 0 50px;
}

@media only screen and (max-width: 768px) {
  .message-heading {
    margin: 0 0 33px;
  }
}

.message section .inner {
  position: relative;
  max-width: 1140px;
}

.message section p {
  font-size: 14px;
  line-height: 2.4;
}

.message section p + p {
  margin: 35px 0 0;
}

@media only screen and (max-width: 768px) {
  .message section .inner {
    max-width: auto;
    margin: 0 15px;
  }
  .message section p {
    line-height: 1.8;
    text-align: center;
  }
  .message section p + p {
    margin: 25px 0 0;
  }
}

@media only screen and (max-width: 360px) {
  .message section p {
    letter-spacing: 0.02em;
  }
}

@media only screen and (max-width: 320px) {
  .message section p {
    font-size: 12px;
  }
}

.message .head {
  background: url(/img/company/bg_head_pc.jpg) repeat-x center top;
}

.message .head-txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 54.824561403%;
  float: left;
  padding: 65px 0 0 3.508771929%;
}

.message .head-img {
  width: 41.929824561%;
  float: right;
  margin: 68px -11px 0 0;
}

@media only screen and (max-width: 768px) {
  .message .head {
    background: url(/img/company/bg_head_sp.jpg) repeat-x center top;
    background-size: cover;
  }
  .message .head-txt {
    display: block;
    width: auto;
    float: none;
    padding: 40px 0 0;
  }
  .message .head-img {
    width: 234.5px;
    height: 319px;
    float: none;
    margin: 8px 0 0 22px;
    overflow: hidden;
  }
}

.message .conts1 {
  margin: 2px 0 0;
  background: #fff0e9;
}

.message .conts1 .lead {
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 21px;
  text-align: left;
  letter-spacing: 0.06em;
  line-height: 1.9;
}

.message .conts1-txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 42.105263157%;
  float: right;
  margin: 0 9.824561403% 0 0;
}

.message .conts1-img {
  width: 38.070175438%;
  float: left;
  margin: 38px 0 0 4.649122807%;
}

@media only screen and (max-width: 768px) {
  .message .conts1 {
    margin: 1px 0 0;
    padding: 34px 0 0;
  }
  .message .conts1 .lead {
    font-size: 17px;
    text-align: center;
    line-height: 1.8;
  }
  .message .conts1-txt {
    display: block;
    width: auto;
    float: none;
    margin: 0 0 0;
  }
  .message .conts1-img {
    width: 217px;
    height: 291px;
    overflow: hidden;
    float: right;
    margin: 11px 17px 0;
  }
}

.message .conts2 {
  padding: 46px 0 0;
}

.message .conts2 .inner {
  width: 830px;
  margin: 0 auto;
}

.message .conts2-heading {
  margin: 0 0 3px;
  color: #00abb4;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 20px;
  text-align: center;
}

.message .conts2 .lead {
  margin: 0 0 27px;
  font-size: 14px;
  line-height: 2.6;
}

.message .conts2 dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: solid 1px #d0dadb;
}

.message .conts2 dl:first-of-type dd {
  padding: 23px 0 45px 38px;
}

.message .conts2 dl:last-child {
  border-bottom: solid 1px #d0dadb;
}

.message .conts2 dl dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 150px;
}

.message .conts2 dl dd {
  width: 680px;
  padding: 23px 0 24px 38px;
}

.message .conts2 dl dd .h-style-2 {
  margin: 0 0 8px;
  line-height: 1.8;
}

.message .conts2 dl dd p {
  line-height: 1.8;
}

@media only screen and (max-width: 768px) {
  .message .conts2 {
    padding: 34px 0 0;
  }
  .message .conts2 .inner {
    width: auto;
    margin: 0 15px;
  }
  .message .conts2-heading {
    font-size: 15px;
  }
  .message .conts2 .lead {
    margin: 0 0 22px;
    padding: 0;
    font-size: 12px;
    line-height: 1.8;
  }
  .message .conts2 dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-top: solid 1px #d0dadb;
  }
  .message .conts2 dl:first-of-type dd {
    padding: 19px 0 20px;
  }
  .message .conts2 dl:last-child {
    border-bottom: none;
  }
  .message .conts2 dl dt {
    display: block;
    width: 32.463768115%;
    padding: 25px 0;
  }
  .message .conts2 dl dt img {
    width: auto;
    zoom: .5;
  }
  .message .conts2 dl dd {
    width: 67.536231884%;
    padding: 19px 0 20px;
  }
  .message .conts2 dl dd .h-style-2 {
    margin: 0 0 9px;
    line-height: 1.8;
  }
  .message .conts2 dl dd p {
    font-size: 12px;
    text-align: left;
  }
}

@media only screen and (max-width: 360px) {
  .message .conts2 dl dt {
    padding: 25px 8px 0 0;
  }
}

@media only screen and (max-width: 320px) {
  .message .conts2 dl dd .h-style-2 {
    font-size: 14px;
  }
}

.message .bg {
  position: absolute;
  opacity: 1;
}

.message .bg1 {
  top: 77px;
  left: 632px;
  width: 67px;
  height: 56px;
  background: url(/img/company/bg_01.png) no-repeat center center;
}

.message .bg2 {
  top: 119px;
  right: 5px;
  width: 120px;
  height: 56px;
  background: url(/img/company/bg_02.png) no-repeat center center;
}

.message .bg3 {
  top: 308px;
  right: 540px;
  width: 54px;
  height: 45px;
  background: url(/img/company/bg_03.png) no-repeat center center;
}

.message .bg4 {
  top: 306px;
  right: 25px;
  width: 76px;
  height: 54px;
  background: url(/img/company/bg_04.png) no-repeat center center;
}

.message .bg5 {
  top: 519px;
  left: 508px;
  width: 160px;
  height: 112px;
  background: url(/img/company/bg_05.png) no-repeat center center;
}

.message .bg6 {
  top: 731px;
  left: 492px;
  width: 92px;
  height: 64px;
  background: url(/img/company/bg_06.png) no-repeat center center;
}

.message .bg7 {
  top: 82px;
  right: 40px;
  width: 159px;
  height: 74px;
  background: url(/img/company/bg_07.png) no-repeat center center;
}

.message .bg8 {
  top: 275px;
  right: 80px;
  width: 65px;
  height: 50px;
  background: url(/img/company/bg_08.png) no-repeat center center;
}

.message .bg9 {
  top: 473px;
  right: 40px;
  width: 63px;
  height: 44px;
  background: url(/img/company/bg_09.png) no-repeat center center;
}

.message .bg10 {
  top: 643px;
  left: 508px;
  width: 86px;
  height: 74px;
  background: url(/img/company/bg_10.png) no-repeat center center;
}

@media only screen and (max-width: 768px) {
  .message .bg1 {
    top: 205px;
    left: 0;
    width: 47px;
    height: 33px;
    background: url(/img/company/bg_01_sp.png) no-repeat center center;
    background-size: 47px auto;
  }
  .message .bg2 {
    top: 334px;
    right: 0;
    width: 138px;
    height: 403px;
    background: url(/img/company/bg_02_sp.png) no-repeat center center;
    background-size: 138px auto;
  }
  .message .bg3 {
    top: inherit;
    bottom: -13px;
    left: 19px;
    right: inherit;
    width: 34px;
    height: 37px;
    background: url(/img/company/bg_03_sp.png) no-repeat center center;
    background-size: 37px auto;
  }
  .message .bg7 {
    top: 319px;
    right: 0;
    width: 62px;
    height: 29px;
    background: url(/img/company/bg_04_sp.png) no-repeat center center;
    background-size: 62px auto;
  }
  .message .bg8 {
    top: inherit;
    bottom: 17px;
    right: inherit;
    left: 2px;
    width: 118px;
    height: 247px;
    background: url(/img/company/bg_05_sp.png) no-repeat center center;
    background-size: 118px auto;
  }
}

/*会社概要*/
.overview {
  padding: 50px 20px;
}

.overview-list {
  border-top: solid 1px #d0dadb;
}

.overview-list > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: solid 1px #d0dadb;
}

.overview-list > dl > dt {
  width: 200px;
  padding: 25px 20px 0;
}

.overview-list > dl > dd {
  width: 730px;
  padding: 22px 0 23px;
  line-height: 2.1;
}

.overview-list > dl > dd > p {
  float: left;
  width: 226px;
}

.overview-list > dl > dd .map {
  width: 100%;
  height: 300px;
  margin: 21px 0 8px;
  border: solid 1px #d0dadb;
}

.overview-list > dl > dd .map-btn {
  float: none;
  width: 260px;
  margin: 20px auto 0;
}

.overview-list > dl > dd .map-btn a {
  height: 40px;
  background: #fff;
  border-color: #d0dadb;
  color: #333;
  font-size: 14px;
  line-height: 40px;
}

.overview-list > dl > dd .map-btn a::after {
  display: none;
}

.overview-list > dl > dd .map-btn a:hover {
  background: #d0dadb;
  border-color: #9cb2b3;
}

.overview-list > dl > dd .map-btn a:hover::after {
  display: none;
}

.overview-list > dl > dd .map-btn a span {
  display: inline-block;
  padding: 0 0 0 25px;
  background: url(/img/icn_pin_03.png) no-repeat left center;
}

.overview-list > dl.address dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.overview-list > dl.address dl dt {
  width: 60px;
}

.overview-list > dl.group dd dl dt {
  font-weight: bold;
}

.overview-list > dl.group dd dl + dl {
  margin: 29px 0 0;
}

.overview-list > dl.business li {
  position: relative;
  padding: 0 0 0 40px;
}

.overview-list > dl.business span {
  position: absolute;
  left: -8px;
}

.overview-list > dl.customer p {
  width: 269px;
}

@media only screen and (max-width: 768px) {
  .overview {
    padding: 40px 0;
  }
  .overview-list {
    margin: 0 15px;
  }
  .overview-list > dl {
    display: block;
  }
  .overview-list > dl > dt {
    width: auto;
    padding: 20px 0 14px;
    font-weight: bold;
    line-height: 1.0;
  }
  .overview-list > dl > dd {
    width: auto;
    padding: 0 0 15px;
    font-size: 12px;
    line-height: 1.8;
  }
  .overview-list > dl > dd > p {
    float: none;
    width: auto;
  }
  .overview-list > dl > dd .map {
    height: 245px;
    margin: 20px 0 5px;
  }
  .overview-list > dl > dd .map-btn {
    width: auto;
    margin: 15px 15px 0;
  }
  .overview-list > dl > dd .map-btn a {
    height: 45px;
    font-size: 15px;
    line-height: 45px;
  }
  .overview-list > dl > dd .map-btn a span {
    padding: 0 0 0 24px;
    background-size: 13px auto;
  }
  .overview-list > dl.address dl dt {
    width: 42px;
  }
  .overview-list > dl.group dd dl dt {
    margin: 0 0 3px;
  }
  .overview-list > dl.group dd dl dd {
    line-height: 2.2;
  }
  .overview-list > dl.group dd dl + dl {
    margin: 4px 0 0;
  }
  .overview-list > dl.business li {
    padding: 0 0 0 28px;
  }
  .overview-list > dl.business span {
    left: -7px;
  }
  .overview-list > dl.customer p {
    width: auto;
  }
}

/*沿革*/
.history {
  padding: 50px 20px;
}

.history-list {
  position: relative;
}

.history-list > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: solid 1px #d0dadb;
}

.history-list > dl:first-child > dt {
  padding: 36px 0 27px;
}

.history-list > dl:first-child > dd {
  padding: 36px 0 26px;
}

.history-list > dl:last-child {
  border-bottom: none;
}

.history-list > dl:last-child > dd {
  padding: 28px 0 30px;
}

.history-list > dl > dt {
  width: 100px;
  padding: 27px 0;
  line-height: 1.0;
  color: #00abb4;
  font-family: "Lato", sans-serif;
  font-size: 24px;
  letter-spacing: 0.02em;
  text-align: center;
}

.history-list > dl > dd {
  position: relative;
  width: 830px;
  padding: 28px 0 23px;
  line-height: 1.8;
}

.history-list > dl > dd .border {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 42px;
  width: 2px;
  height: 101%;
  background: #00abb4;
}

.history-list > dl > dd dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.history-list > dl > dd dl + dl {
  margin: 11px 0 0;
}

.history-list > dl > dd dl dt {
  position: relative;
  width: 111px;
  padding: 3px 0 0;
  color: #00abb4;
  font-size: 12px;
  letter-spacing: 0.02em;
  line-height: 1.0;
  text-align: right;
}

.history-list > dl > dd dl dt strong {
  font-family: "Lato", sans-serif;
  font-size: 16px;
  font-weight: normal;
}

.history-list > dl > dd dl dt::before {
  display: block;
  content: "";
  position: absolute;
  top: 3px;
  left: 35px;
  width: 16px;
  height: 16px;
  background: #00abb4;
  border-radius: 50%;
}

.history-list > dl > dd dl dd {
  width: 719px;
  padding: 0 0 0 30px;
}

.history-list > dl > dd dl dd .note {
  display: block;
  color: #888;
  font-size: 13px;
  line-height: 1.9;
}

@media only screen and (max-width: 768px) {
  .history {
    margin: 0 15px;
    padding: 25px 0 40px;
  }
  .history-list > dl {
    display: block;
    border-bottom: solid 1px #d0dadb;
  }
  .history-list > dl:first-child > dt {
    padding: 13px 0 9px;
  }
  .history-list > dl:first-child > dd {
    padding: 0 0 10px;
  }
  .history-list > dl:last-child {
    border-bottom: solid 1px #d0dadb;
  }
  .history-list > dl:last-child > dd {
    padding: 0 0 10px;
  }
  .history-list > dl > dt {
    width: auto;
    padding: 13px 0 9px;
    font-size: 15px;
    text-align: left;
  }
  .history-list > dl > dd {
    width: 100%;
    padding: 0 0 10px;
    line-height: 1.8;
  }
  .history-list > dl > dd .border {
    display: none;
  }
  .history-list > dl > dd dl {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .history-list > dl > dd dl + dl {
    margin: 5px 0 0;
  }
  .history-list > dl > dd dl dt {
    width: 37px;
    padding: 0;
    font-size: 12px;
    letter-spacing: 0.02em;
    line-height: 1.8;
  }
  .history-list > dl > dd dl dt strong {
    font-size: 12px;
  }
  .history-list > dl > dd dl dt::before {
    display: none;
  }
  .history-list > dl > dd dl dd {
    width: 82.608695652%;
    padding: 0;
    font-size: 12px;
  }
  .history-list > dl > dd dl dd .note {
    font-size: 12px;
    line-height: 1.8;
  }
  .history .company-bnr {
    padding: 40px 0;
  }
}

/*パートナー*/
.partner {
  padding: 50px 20px;
}

.partner-lead {
  padding: 12px 0;
  border-top: solid 1px #d0dadb;
  border-bottom: solid 1px #d0dadb;
  font-size: 14px;
  line-height: 2.1;
  text-align: center;
}

.partner-list {
  margin: 50px 0 0;
}

.partner-list li + li {
  margin: 50px 0 0;
}

.partner-list-img {
  width: 27.9569892247%;
  float: left;
}

.partner-list-info {
  width: 68.817204301%;
  float: right;
  font-size: 12px;
  line-height: 1.8;
}

.partner-list-name {
  margin: 0 0 22px;
  font-size: 22px;
  line-height: 1.0;
}

.partner-list-name span {
  display: block;
  margin: 5px 0 0;
  color: #888;
  font-size: 13px;
  line-height: 1.7;
}

.partner-list-txt {
  width: 68.817204301%;
  float: right;
  margin: 20px 0 0;
  line-height: 2.1;
}

.partner-list-ttl {
  color: #00abb4;
  font-size: 18px;
  line-height: 1.6;
}

@media only screen and (max-width: 768px) {
  .partner {
    margin: 0 15px;
    padding: 33px 0 40px;
  }
  .partner-lead {
    padding: 0;
    border: none;
    line-height: 1.8;
    text-align: center;
  }
  .partner-list {
    margin: 35px 0 0;
  }
  .partner-list li + li {
    margin: 35px 0 0;
  }
  .partner-list-img {
    width: 37.68115942%;
    float: left;
    margin: 0 0 21px;
  }
  .partner-list-info {
    width: 57.971014492%;
    float: right;
    font-size: 10px;
  }
  .partner-list-name {
    margin: -7px 0 3px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.8;
  }
  .partner-list-name span {
    margin: 0;
    font-size: 10px;
    font-weight: normal;
    line-height: 2.5;
  }
  .partner-list-txt {
    clear: both;
    width: 100%;
    float: none;
    margin: 0;
    font-size: 12px;
    line-height: 1.8;
  }
  .partner-list-ttl {
    font-size: 14px;
    line-height: 1.5;
  }
  .partner .company-bnr {
    padding: 40px 0;
  }
}

@media only screen and (max-width: 320px) {
  .partner-lead {
    font-size: 12px;
  }
}

/* =================================================================
 ブランドサイト
================================================================= */
.brand {
  padding: 46px 20px 0;
}

.brand .h-style-3 {
  margin: 0 0 44px;
}

.brand-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -2.688172043%;
}

.brand-list li {
  width: 28.163265306%;
  margin: 0 2.551020408% 38px;
}

.brand-list-img {
  margin: 0 0 20px;
}

.brand-list-ttl {
  margin: 0 0 15px;
  font-weight: bold;
  text-align: center;
}

@media only screen and (max-width: 768px) {
  .brand {
    margin: 0 15px;
    padding: 39px 0 0;
  }
  .brand .h-style-3 {
    margin: 0 0 23px;
  }
  .brand-list {
    display: block;
    margin: 0;
  }
  .brand-list li {
    width: auto;
    margin: 0 0 25px;
  }
  .brand-list li:last-child {
    margin: 0 0 40px;
  }
  .brand-list-img {
    width: 50%;
    float: left;
    margin: 0;
  }
  .brand-list-ttl {
    width: 45.652173913%;
    float: right;
    margin: 0 0 10px;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.0;
    text-align: left;
  }
  .brand-list-txt {
    width: 45.652173913%;
    float: right;
    font-size: 12px;
  }
}

/* =================================================================
 フォーム
================================================================= */
.form {
  padding: 50px 20px;
}

.form-heading {
  margin: 0 0 28px;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 18px;
  line-height: 1.2;
}

.form-block + .form-block {
  margin: 48px 0 0;
}

.form dl {
  display: table;
  table-layout: fixed;
  width: 100%;
  border-top: solid 1px #d0dadb;
}

.form dl:last-of-type {
  border-bottom: solid 1px #d0dadb;
}

.form dl dt {
  display: table-cell;
  width: 180px;
  padding: 23px 20px;
  background: #f5f3ef;
  line-height: 1.4;
  vertical-align: middle;
}

.form dl dt.top {
  padding: 20px;
  vertical-align: top;
}

.form dl dd {
  display: table-cell;
  width: 80.64516129%;
  padding: 20px;
  vertical-align: middle;
  word-wrap: break-word;
}

.form dl dd.txt {
  line-height: 2.1;
  padding: 23px 20px;
}

.form dl dd p {
  line-height: 1.4;
}

.form dl dd .note {
  margin: 5px 0 0;
  font-size: 12px;
  letter-spacing: 0;
}

.form dl dd span.hyphen {
  margin: 0 8px;
}

.form input[type=text],
.form input[type=tel],
.form input[type=email],
.form textarea,
.form select {
  height: 34px;
  padding: 0 10px;
  background: #e3f5f6;
}

.form input[type=text]:focus::-webkit-input-placeholder,
.form input[type=tel]:focus::-webkit-input-placeholder,
.form input[type=email]:focus::-webkit-input-placeholder,
.form textarea:focus::-webkit-input-placeholder,
.form select:focus::-webkit-input-placeholder {
  color: transparent;
}

.form input[type=text]:focus:-ms-input-placeholder,
.form input[type=tel]:focus:-ms-input-placeholder,
.form input[type=email]:focus:-ms-input-placeholder,
.form textarea:focus:-ms-input-placeholder,
.form select:focus:-ms-input-placeholder {
  color: transparent;
}

.form input[type=text]:focus::-ms-input-placeholder,
.form input[type=tel]:focus::-ms-input-placeholder,
.form input[type=email]:focus::-ms-input-placeholder,
.form textarea:focus::-ms-input-placeholder,
.form select:focus::-ms-input-placeholder {
  color: transparent;
}

.form input[type=text]:focus::placeholder,
.form input[type=tel]:focus::placeholder,
.form input[type=email]:focus::placeholder,
.form textarea:focus::placeholder,
.form select:focus::placeholder {
  color: transparent;
}

.form input[type=text] + span {
  margin: 0 0 0 9px;
}

.form textarea {
  max-width: 700px;
  height: 170px;
  padding: 10px;
}

.form textarea + span {
  display: block;
  font-size: 12px;
}

.form .aform-input {
  width: 458px;
}

.form .aform-text.townarea,
.form .aform-text.address,
.form .aform-zipcode {
  width: 390px;
}

.form .aform-text.age {
  width: 180px;
}

.form .aform-twice-note {
  display: block;
  margin: 15px 0 0;
}

.form .select-wrap {
  display: inline-block;
  position: relative;
}

.form .select-wrap::after {
  display: block;
  content: "";
  position: absolute;
  top: -6px;
  bottom: 0;
  right: 16px;
  width: 8px;
  height: 8px;
  margin: auto;
  border-bottom: solid 1px #333;
  border-right: solid 1px #333;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.form .select select {
  position: relative;
  width: 227px;
  color: #333;
  vertical-align: middle;
  cursor: pointer;
}

.form .select select::-ms-expand {
  display: none;
}

.form label.file {
  display: inline-block;
  width: 227px;
  height: 34px;
  margin: 0 10px 0 0;
  padding: 0 10px;
  background: #00abb4;
  border: solid 1px #00abb4;
  border-radius: 34px;
  color: #fff;
  line-height: 34px;
  text-align: center;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.form label.file:hover {
  background: #e3f5f6;
  color: #00abb4;
}

.form label.file .aform-upload {
  display: none;
}

.form .address p {
  margin: 0 0 20px;
}

.form .address p:last-child {
  margin: 0;
}

.form .address .txt {
  display: inline-block;
  width: 60px;
  margin: 0 8px 0 0;
  text-align: right;
  vertical-align: middle;
}

.form .radio-btn dd {
  padding: 28px 20px;
}

.form .aform-radio-ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.form .aform-radio-ul li {
  margin: 0 29px 0 0;
}

.form .aform-radio-ul li .aform-radio {
  display: none;
}

.form .aform-radio-ul li label {
  position: relative;
  padding: 0 0 0 30px;
  cursor: pointer;
}

.form .aform-radio-ul li label::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 20px;
  height: 20px;
  margin: auto;
  background: url(/img/seminar/icn_radio.png) no-repeat center center;
}

.form .aform-radio-ul li label::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 6px;
  width: 8px;
  height: 8px;
  margin: auto;
  border-radius: 50%;
  background: #00abb4;
  opacity: 0;
}

.form .aform-radio-ul li label.other {
  margin: 0 9px 0 0;
}

.form .aform-radio-ul li label.other + input {
  margin: -7px 0 0;
}

.form input[type=radio]:checked + label::after,
.form input[type=checkbox]:checked + label::after {
  opacity: 1;
}

.form input[type=checkbox] {
  display: none;
}

.form input[type=checkbox] + label {
  display: block;
  position: relative;
  padding: 0 0 0 21px;
}

.form input[type=checkbox] + label::before {
  display: block;
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  width: 16px;
  height: 16px;
  margin: auto;
  background: url(/img/product/icn_checkbox.png) no-repeat center center;
}

.form input[type=checkbox] + label::after {
  display: block;
  content: "";
  position: absolute;
  top: 7px;
  left: 6px;
  width: 5px;
  height: 9px;
  border-right: 2px solid #00abb4;
  border-bottom: 2px solid #00abb4;
  opacity: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 1;
}

.form .name dd > span {
  margin: 0 20px 0 0;
}

.form .name-txt {
  display: inline-block;
  width: 30px;
  margin: 0 9px 0 0;
  text-align: right;
}

.form .name .aform-name-ul,
.form .name .aform-kana-ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.form .name .aform-name-ul li,
.form .name .aform-kana-ul li {
  margin: 0 20px 0 0;
  font-size: 0;
  letter-spacing: 0;
}

.form .name .aform-name-ul li label,
.form .name .aform-kana-ul li label {
  display: inline-block;
  width: 28px;
  margin: 0 13px 0 0;
  font-size: 14px;
  text-align: right;
  vertical-align: middle;
}

.form .name .aform-name-ul li .aform-name,
.form .name .aform-name-ul li .aform-kana,
.form .name .aform-kana-ul li .aform-name,
.form .name .aform-kana-ul li .aform-kana {
  width: 180px;
  font-size: 14px;
}

.form .employment dd {
  padding: 20px;
}

.form .employment dd .aform-radio-ul {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 255px;
}

.form .employment dd .aform-radio-ul li {
  margin: 0 29px 15px 0;
}

.form .employment dd .aform-radio-ul li:last-child {
  margin-bottom: 0;
}

.form .employment dd .aform-radio-ul li:nth-last-child(2) {
  position: relative;
}

.form .employment dd .aform-radio-ul li:nth-last-child(2) .aform-field-option-text {
  position: absolute;
  top: -5px;
  left: 100%;
  width: 295px;
  margin: 0 0 0 15px;
}

.form .exp-inner {
  border-top: solid 1px #d0dadb;
}

.form .exp dd p {
  margin: 0 0 20px;
}

.form .exp dd p:nth-child(2) {
  margin: 0;
}

.form .exp .txt {
  display: inline-block;
  width: 60px;
  margin: 0 8px 0 0;
  text-align: right;
}

.form .form-exp dl {
  border-top: none;
  border-bottom: solid 1px #d0dadb;
}

.form .form-exp dl:nth-child(2) {
  display: none;
}

.form .form-exp dl:last-child {
  border-top: none;
}

.form .form-exp dd {
  position: relative;
}

.form .form-exp:last-of-type dl {
  margin: 15px 0 0;
  border-top: solid 1px #d0dadb;
}

.form .form-exp .aform-text {
  width: 180px;
}

.form-exp.add-exp {
  display: none;
}

.form .pr {
  margin: 50px 0 0;
}

.form .rec {
  display: inline-block;
  position: relative;
  top: 1px;
  left: 4px;
  width: 25px;
  height: 16px;
  background: #00abb4;
  color: #fff;
  font-size: 10px;
  line-height: 16px;
  text-align: center;
  vertical-align: top;
}

.form .add-btn {
  width: 100%;
  margin: 15px 0 0;
  font-size: 15px;
  text-align: center;
  cursor: pointer;
}

.form .add-btn span {
  position: relative;
  padding: 0 0 0 30px;
}

.form .add-btn span::before, .form .add-btn span::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 16px;
  height: 2px;
  margin: auto;
  background: #9cb2b3;
}

.form .add-btn span::after {
  left: 7px;
  width: 2px;
  height: 16px;
}

.form .add-btn.default {
  display: none;
}

.form .add-btn.active span::after {
  display: none;
}

.form .add-box {
  margin: 48px 0 0;
}

.form-btn {
  margin: 50px auto 0;
  text-align: center;
}

.form-btn button {
  position: relative;
  width: 278px;
  height: 50px;
  margin: 0 10px;
  background: #00abb4;
  border: solid 1px #00abb4;
  border-radius: 50px;
  color: #fff;
  font-size: 16px;
  line-height: 48px;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.form-btn button::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 35px;
  width: 10px;
  height: 10px;
  margin: auto;
  background: url(/img/icn_arrow_02.png) no-repeat center center;
  background-size: 10px;
}

.form-btn button:hover {
  background: #e3f5f6;
  color: #00abb4;
}

.form-btn button:hover::after {
  background: url(/img/icn_arrow_03.png) no-repeat center center;
  background-size: 10px;
}

.form-btn button.backbtn {
  background: none;
  color: #00abb4;
}

.form-btn button.backbtn::after {
  left: 35px;
  right: inherit;
  background: url(/img/icn_arrow_03.png) no-repeat center center;
  background-size: 10px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.form-btn button.backbtn:hover {
  background: #00abb4;
  color: #fff;
}

.form-btn button.backbtn:hover::after {
  background: url(/img/icn_arrow_02.png) no-repeat center center;
  background-size: 10px;
}

@media only screen and (max-width: 768px) {
  .form {
    padding: 40px 0 40px;
  }
  .form .h-style-4 {
    margin: 0 15px 35px;
    font-size: 19px;
  }
  .form-heading {
    margin: 0 15px 12px;
    font-size: 15px;
    line-height: 1.2;
  }
  .form-block + .form-block {
    margin: 25px 0 0;
  }
  .form dl {
    display: block;
    width: auto;
    border-top: solid 1px #d0dadb;
  }
  .form dl:last-child {
    border-bottom: solid 1px #d0dadb;
  }
  .form dl dt {
    display: block;
    width: 100%;
    padding: 8px 15px;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.2;
    vertical-align: middle;
  }
  .form dl dt.top {
    padding: 8px 15px;
  }
  .form dl dd {
    display: block;
    width: 100%;
    padding: 15px 15px 23px;
    font-size: 12px;
  }
  .form dl dd.txt {
    padding: 15px 15px 23px;
    line-height: 1.8;
  }
  .form dl dd p {
    line-height: 1.4;
  }
  .form dl dd span.hyphen {
    margin: 0 1.739130434%;
  }
  .form input[type=text],
  .form input[type=tel],
  .form input[type=number],
  .form input[type=email],
  .form textarea,
  .form select {
    height: 35px;
    font-size: 16px;
  }
  .form textarea {
    max-width: inherit;
    height: 100px;
  }
  .form .aform-input {
    width: 100%;
  }
  .form .aform-text.townarea,
  .form .aform-text.address,
  .form .aform-zipcode {
    width: 78.260869565%;
  }
  .form .aform-text.age {
    width: 34.782608695%;
  }
  .form .select-wrap {
    width: 78.260869565%;
  }
  .form .select-wrap::after {
    top: -8px;
    bottom: 0;
    right: 14px;
    width: 12px;
    height: 12px;
  }
  .form .select select {
    width: 100%;
  }
  .form .select option {
    color: #888;
  }
  .form label.file {
    margin: 0;
  }
  .form label.file-txt {
    margin: 5px 0 0;
    display: block;
  }
  .form label.file:hover {
    background: #00abb4;
    color: #fff;
  }
  .form .address p {
    margin: 0 0 15px;
  }
  .form .address .txt {
    width: 52px;
    text-align: left;
  }
  .form .address .txt.no {
    text-align: right;
  }
  .form .radio-btn dd {
    padding: 15px 15px 23px;
  }
  .form .aform-radio-ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: -10px;
  }
  .form .aform-radio-ul li {
    margin: 0 20px 10px 0;
  }
  .form .aform-radio-ul li label {
    padding: 0 0 0 20px;
  }
  .form .aform-radio-ul li label::before {
    width: 15px;
    height: 15px;
    margin: auto;
    background: url(/img/seminar/icn_radio.png) no-repeat center center;
    background-size: 15px;
  }
  .form .aform-radio-ul li label::after {
    left: 4px;
    width: 7px;
    height: 7px;
  }
  .form .name dd.txt {
    padding: 15px 15px 23px;
  }
  .form .name .aform-name-ul li,
  .form .name .aform-kana-ul li {
    width: 42.028985507%;
    margin: 0 15px 0 0;
  }
  .form .name .aform-name-ul li:last-child,
  .form .name .aform-kana-ul li:last-child {
    margin: 0;
  }
  .form .name .aform-name-ul li label,
  .form .name .aform-kana-ul li label {
    width: auto;
    margin: 0 10px 0 0;
    font-size: 12px;
  }
  .form .name .aform-name-ul li .aform-name,
  .form .name .aform-name-ul li .aform-kana,
  .form .name .aform-kana-ul li .aform-name,
  .form .name .aform-kana-ul li .aform-kana {
    width: 82.758620689%;
    font-size: 16px;
  }
  .form .name .aform-kana-ul li {
    width: 45.217391304%;
  }
  .form .name .aform-kana-ul li .aform-name,
  .form .name .aform-kana-ul li .aform-kana {
    width: 76.923076923%;
  }
  .form .employment dd {
    padding: 15px 15px 23px;
  }
  .form .employment dd .aform-radio-ul {
    width: 200px;
  }
  .form .employment dd .aform-radio-ul li {
    margin: 0 20px 12px 0;
  }
  .form .employment dd .aform-radio-ul li:nth-last-child(2) .aform-field-option-text {
    width: 155px;
  }
  .form .form-exp .aform-text {
    width: 34.782608695%;
  }
  .form .form-exp .aform-text[class$="office"] {
    width: 60%;
    min-width: 200px;
  }
  .form .pr {
    margin: 25px 0 0;
  }
  .form .rec {
    top: 0;
    height: 15px;
    font-size: 10px;
    line-height: 15px;
  }
  .form .add-btn {
    width: auto;
    margin: 15px 15px 0;
    font-size: 12px;
    text-align: center;
  }
  .form .add-btn span {
    padding: 0 0 0 15px;
  }
  .form .add-btn span::before, .form .add-btn span::after {
    width: 11px;
    height: 1px;
  }
  .form .add-btn span::after {
    left: 5px;
    width: 1px;
    height: 11px;
  }
  .form .add-box {
    margin: 25px 0 0;
  }
  .form-btn {
    margin: 25px 15px 0;
  }
  .form-btn button {
    width: 100%;
    height: 45px;
    margin: 0;
    font-size: 15px;
    line-height: 45px;
  }
  .form-btn button:hover {
    background: #00abb4;
    color: #fff;
  }
  .form-btn button:hover::after {
    background: url(/img/icn_arrow_02.png) no-repeat center center;
    background-size: 10px;
  }
  .form-btn button.backbtn {
    margin: 0 0 15px;
  }
  .form-btn button.backbtn::after {
    left: 35px;
    right: inherit;
    background: url(/img/icn_arrow_03.png) no-repeat center center;
    background-size: 10px;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .form-btn button.backbtn:hover {
    background: none;
    color: #00abb4;
  }
  .form-btn button.backbtn:hover::after {
    background: url(/img/icn_arrow_03.png) no-repeat center center;
    background-size: 10px;
  }
}

@media only screen and (max-width: 360px) {
  .form .name .aform-name-ul li label,
  .form .name .aform-kana-ul li label {
    margin: 0 8px 0 0;
  }
  .form .name .aform-kana-ul li label {
    margin: 0 7px 0 0;
  }
}

@media only screen and (max-width: 768px) {
  .form .name .aform-name-ul li,
  .form .name .aform-kana-ul li {
    width: 45.028985507%;
  }
  .form .name .aform-kana-ul li {
    width: 47.217391304%;
  }
}

@media only screen and (min-width: 768px) {
  .form dl.rec-btm .rec {
    top: 3px;
    left: 0;
  }
}

.form .notice {
  margin: 0 0 40px;
  padding: 20px;
  border: solid 1px red;
}

.form .notice-ttl {
  margin: 0 0 10px;
  text-align: center;
  font-weight: bold;
  color: red;
}

.form .notice-txt {
  font-size: 12px;
}

@media only screen and (max-width: 768px) {
  .form .notice {
    margin: 0 15px 20px;
    padding: 10px 15px;
  }
  .form .notice-ttl {
    margin: 0 0 5px;
    font-size: 12px;
  }
  .form .notice-txt {
    font-size: 10px;
  }
}

.form .sample-inner {
  border-top: solid 1px #d0dadb;
}

.form .sample-item > div {
  border-bottom: solid 1px #d0dadb;
}

.form .sample-item-name {
  margin: 0 0 0 10px;
}

.form .sample-item:not(.add-item) {
  border-top: solid 1px #d0dadb;
}

.form .sample-item:not(.add-item):last-of-type {
  border-bottom: solid 1px #d0dadb;
}

.form .sample dl {
  border-top: none;
  border-bottom: none;
}

.form .sample dl dt {
  background: none;
}

.form .sample .minus-btn {
  padding: 20px;
}

.form .sample .sample1_standard,
.form .sample .sample2_standard,
.form .sample .sample3_standard,
.form .sample .sample4_standard,
.form .sample .sample5_standard {
  width: 100%;
  height: 20px;
  background: none;
  padding: 0;
  resize: none;
}

.form .sample .add-btn .close {
  display: none;
}

.form .sample .add-btn.active span {
  display: none;
}

.form .sample .add-btn.active .close {
  display: inline-block;
}

@media only screen and (max-width: 768px) {
  .form .sample-item-name {
    margin: 0 0 0 5px;
  }
  .form .sample dl {
    border-top: none;
    border-bottom: none;
  }
  .form .sample dl dt {
    background: none;
  }
  .form .sample dl dd {
    padding: 5px 15px 15px;
  }
  .form .sample dl dd img {
    width: 40px;
  }
  .form .sample .sample1_standard,
  .form .sample .sample2_standard,
  .form .sample .sample3_standard,
  .form .sample .sample4_standard,
  .form .sample .sample5_standard {
    height: 35px;
  }
}

.form.comp {
  text-align: center;
}

.form.comp .btn {
  margin: 50px auto 0;
}

@media only screen and (max-width: 768px) {
  .form.comp p {
    font-size: 12px;
    margin: 0 15px;
  }
  .form.comp .btn {
    margin: 25px 15px 0;
  }
}

.form .err {
  margin: 2px 0 0;
  color: #cc0000;
  font-size: 12px;
}

.form.mailmagazine .notice-txt {
  margin: 0 0 40px;
}

.form.mailmagazine .employment dd .aform-radio-ul {
  width: 290px;
}

.form.mailmagazine .employment dd .aform-radio-ul li {
  display: inline-block;
  width: 115px;
}

.form.mailmagazine .employment dd .aform-radio-ul li.other {
  width: auto;
  margin: 0;
}

@media only screen and (max-width: 768px) {
  .form.mailmagazine .notice-txt {
    margin: 0 15px 20px;
  }
  .form.mailmagazine .employment dd .aform-radio-ul li {
    width: 85px;
  }
  .form.mailmagazine .employment dd .aform-radio-ul li:last-child .aform-field-option-text {
    width: 120px;
  }
  .form.mailmagazine .subscription .aform-radio-ul {
    display: block;
  }
  .form.mailmagazine .subscription .aform-radio-ul li {
    margin: 0 0 5px;
  }
  .form.mailmagazine .subscription .aform-radio-ul label {
    display: inline-block;
  }
  .form.mailmagazine .subscription .aform-radio-ul label::before {
    top: 4px;
    bottom: inherit;
  }
  .form.mailmagazine .subscription .aform-radio-ul label::after {
    top: 8px;
    bottom: inherit;
  }
}

@media only screen and (max-width: 320px) {
  .form.mailmagazine .employment dd .aform-radio-ul li:last-child .aform-field-option-text {
    width: 100px;
  }
}

.form-lead p {
  font-size: 14px;
  line-height: 2.1;
  letter-spacing: 0.06em;
}

.form-lead p + p {
  margin-top: 29px;
}

.form-lead p b {
  font-weight: 700;
}

.form-lead ul li {
  font-size: 13px;
  line-height: 2.0;
  letter-spacing: 0.06em;
}

.form-flow {
  margin: 54px 0 48px;
  padding: 28px 40px 40px;
  background: #e3f5f6;
}

.form-flow h3 {
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 21px;
  line-height: 1.0;
  margin: 0 0 28px;
}

.form-flow-list li {
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  font-size: 14px;
  line-height: 2.1;
  letter-spacing: 0.06em;
  padding: 21px 40px 21px 20px;
  background: #fff;
  position: relative;
  display: inline-block;
  min-width: 460px;
}

.form-flow-list li.number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.form-flow-list li::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 22px 28.5px 0 28.5px;
  border-color: #00abb4 transparent transparent transparent;
  position: absolute;
  bottom: -22px;
  left: 60px;
}

.form-flow-list li:last-child::after {
  display: none;
}

.form-flow-list li + li {
  margin: 32px 0 0;
}

.form-flow-ttl {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.8;
}

.form-flow-num {
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 16px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #00abb4;
  color: #fff;
  float: left;
  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;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: 5px 15px 0 0;
}

.from-block-h {
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 20px;
  line-height: 1.0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 30px;
}

.from-block-h + p {
  line-height: 1.4;
  margin: 0 0 20px;
}

.form .from-block-h + p span {
  margin: 0 5px 0 0;
  left: 0;
}

.from-block-h::before {
  content: "";
  display: block;
  width: 6px;
  height: 26px;
  background: #00abb4;
  margin: 0 12px 0 0;
}

.form-block .type {
  padding: 25px 0;
  border-top: solid 1px #d0dadb;
  border-bottom: solid 1px #d0dadb;
}

.form dl dt br + .rec {
  left: 0;
}

@media only screen and (max-width: 768px) {
  .form-lead {
    margin: 0 15px;
  }
  .form-lead p {
    line-height: 1.8;
  }
  .form-lead p + p {
    margin-top: 20px;
  }
  .form-lead ul li {
    line-height: 1.8;
  }
  .form-flow {
    margin: 30px 0;
    padding: 25px 15px 30px;
    background: #e3f5f6;
  }
  .form-flow h3 {
    font-size: 17px;
    margin: 0 0 20px;
  }
  .form-flow-list li {
    padding: 15px;
    min-width: inherit;
  }
  .from-block-h {
    margin: 0 15px 20px;
  }
  .from-block-h + p {
    margin: 0 15px 15px;
  }
  .form-block .type {
    padding: 15px 0;
    margin: 0 15px;
  }
  .form dl dt br + .rec {
    left: 4px;
  }
}

/* =================================================================
 CONTACT
================================================================= */
.contact .lead-txt {
  line-height: 2.1;
}

.contact .btn {
  width: 340px;
}

.contact-block {
  margin: 50px 0 0;
}

.contact-block-head {
  position: relative;
  height: 231px;
  background: url(/img/contact/bg_contact.jpg) no-repeat center top;
  background-size: cover;
}

.contact-block-heading {
  display: table;
  height: 100%;
  float: right;
  margin: auto 116px auto 0;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 26px;
}

.contact-block-heading span {
  display: table-cell;
  vertical-align: middle;
}

.contact-block-content {
  padding: 0 30px;
  background: #e3f5f6;
}

.contact-block-content > div {
  padding: 48px 0 50px;
}

.contact-block-content > div.tell {
  padding: 48px 0 40px;
}

.contact-block-content > div + div {
  border-top: solid 1px #d0dadb;
}

.contact-block .h-style-2 {
  line-height: 1.2;
  text-align: center;
}

.contact-block .lead-txt {
  text-align: center;
}

.contact-block .btn {
  margin: 21px auto 0;
}

.contact-list {
  margin: 20px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.contact-list li {
  width: 49.425287356%;
  margin: 0 0 10px;
  padding: 23px 0 26px;
  background: #fff;
}

.contact-list li:nth-last-child(-n+2) {
  margin: 0;
}

.contact-list li.internet .btn {
  margin: 13px auto 0;
}

.contact-list li .note {
  font-size: 12px;
  line-height: 2.2;
  text-align: center;
}

.contact-list-ttl {
  margin: 0 0 5px;
  line-height: 2.1;
  text-align: center;
}

.contact-list-no {
  color: #ff925c;
  font-family: "Lato", sans-serif;
  font-size: 36px;
  letter-spacing: 0.06em;
  line-height: 1.0;
  text-align: center;
}

.contact-list-no::before {
  display: inline-block;
  content: "";
  width: 37px;
  height: 23px;
  margin: 0 9px 0 0;
  background: url(/img/contact/icn_tell.png) no-repeat center center;
}

.contact-block-content > .contact-block-lists--one ul {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.contact-block-content > .contact-block-lists--one li.internet {
  background: none;
}

@media only screen and (max-width: 768px) {
  .contact {
    padding: 40px 0;
  }
  .contact .lead-txt {
    line-height: 1.4;
  }
  .contact .btn {
    width: auto;
  }
  .contact-block {
    margin: 40px 0 0;
  }
  .contact-block-head {
    position: relative;
    height: 92px;
    background: url(/img/contact/bg_contact.jpg) no-repeat center top;
    background-size: cover;
  }
  .contact-block-heading {
    margin: auto 15px auto 0;
    font-size: 19px;
  }
  .contact-block-heading span {
    display: table-cell;
    vertical-align: middle;
  }
  .contact-block-content {
    padding: 0 15px;
  }
  .contact-block-content > div {
    padding: 23px 0 25px;
  }
  .contact-block-content > div.tell {
    padding: 22px 0 40px;
  }
  .contact-block-content > div + div {
    border-top: solid 1px #d0dadb;
  }
  .contact-block .h-style-2 {
    margin: 0 0 8px;
    line-height: 1.2;
    text-align: center;
  }
  .contact-block .btn {
    margin: 23px 15px 0;
  }
  .contact-list {
    margin: 14px 0 0;
    display: block;
  }
  .contact-list li {
    width: 100%;
    margin: 0 0 15px;
    padding: 10px 0 13px;
    background: #fff;
  }
  .contact-list li:nth-last-child(-n+2) {
    margin: 0 0 15px;
  }
  .contact-list li:last-child {
    margin: 0;
  }
  .contact-list li.internet .btn {
    margin: 0 15px;
  }
  .contact-list li .note {
    margin: 5px 0 0;
    line-height: 1.8;
    text-align: center;
  }
  .contact-list-ttl {
    margin: 0 0 2px;
    font-size: 12px;
    line-height: 1.8;
  }
  .contact-list-no {
    color: #ff925c;
    font-family: "Lato", sans-serif;
    font-size: 18px;
    line-height: 1.0;
    text-align: center;
  }
  .contact-list-no a {
    color: #ff925c;
  }
  .contact-list-no::before {
    width: 18.5px;
    height: 11.5px;
    margin: 0 5px 0 0;
    background-size: 18.5px auto;
  }
}

@media only screen and (max-width: 320px) {
  .contact .lead-txt {
    font-size: 12px;
  }
  .contact-list li .note {
    font-size: 10px;
  }
}

.qa-list {
  margin: 23px 0 0;
}

.qa-list li {
  margin: 0 0 30px;
}

.qa-list p {
  line-height: 2.1;
}

.qa-list p span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 46px;
}

.qa-list p span::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  height: 36px;
  margin: auto;
  border-radius: 50%;
  font-family: "Lato", sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 32px;
  text-align: center;
}

.qa-list .que {
  position: relative;
  padding: 12px 20px;
  background: #f5f3ef;
  cursor: pointer;
}

.qa-list .que::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  width: 20px;
  height: 20px;
  margin: auto;
  background: url(/img/icn_plus_02.png) no-repeat center center;
  background-size: 20px;
}

.qa-list .que.active::after {
  background: url(/img/icn_minus_02.png) no-repeat center center;
  background-size: 20px;
}

.qa-list .que span {
  padding: 4px 0 3px 46px;
}

.qa-list .que span::before {
  content: "Q";
  background: #fff;
  border-radius: 50%;
  color: #00abb4;
}

.qa-list .ans {
  display: none;
  border: solid 1px #f5f3ef;
  border-top: none;
}

.qa-list .ans.l1 span::before {
  top: -3px;
}

.qa-list .ans p {
  padding: 23px 20px 20px;
}

.qa-list .ans p a {
  text-decoration: underline;
}

.qa-list .ans p img {
  display: block;
  margin: 23px auto 7px;
}

.qa-list .ans span::before {
  content: "A";
  top: 7px;
  background: #00abb4;
  border-radius: 50%;
  color: #fff;
}

.qa-list .ans .caption {
  display: block;
  width: 400px;
  padding: 0;
  margin: 45px auto 0;
}

.qa-list .ans .caption img {
  margin: 0 auto 13px;
}

.qa-list .ans .caption::before {
  display: none;
}

.qa .btn {
  margin: 0 auto;
}

@media only screen and (max-width: 768px) {
  .qa {
    margin: 0 15px;
  }
  .qa-list {
    margin: 23px 0 0;
  }
  .qa-list li {
    margin: 0 0 25px;
  }
  .qa-list p {
    font-size: 12px;
    line-height: 1.8;
  }
  .qa-list p span {
    padding: 0 0 0 38px;
  }
  .qa-list p span::before {
    width: 28px;
    height: 28px;
    font-size: 14px;
    line-height: 28px;
  }
  .qa-list .que {
    padding: 0 50px 0 10px;
  }
  .qa-list .que::after {
    right: 15px;
    width: 15px;
    height: 15px;
    background-size: 15px;
  }
  .qa-list .que.active::after {
    background-size: 15px;
  }
  .qa-list .que span {
    padding: 15px 0 14px 38px;
  }
  .qa-list .que span::before {
    top: 10px;
  }
  .qa-list .que.l2 span {
    padding: 8px 0 8px 38px;
  }
  .qa-list .que.l2::after {
    top: 17px;
    bottom: inherit;
  }
  .qa-list .ans p {
    padding: 11px 10px;
  }
  .qa-list .ans img {
    padding: 0 5px;
  }
  .qa-list .ans span::before {
    top: 4px;
  }
  .qa-list .ans .caption {
    width: auto;
    margin: 15px 0 5px;
    font-size: 12px;
    text-align: center;
  }
  .qa-list .ans .caption img {
    margin: 0 auto 10px;
  }
  .qa-list .ans .caption::before {
    display: none;
  }
  .qa .btn {
    margin: 0 15px;
  }
}

/* =================================================================
 WEB請求書のご登録
================================================================= */

.register {
  min-height: calc(100vh - 151px);
  padding-bottom: 40px;
}

.register .register-lead {
  line-height: 2;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin-bottom: 47px;
}

.register .register-text {
  line-height: 2;
  margin-bottom: 43px;
}

.register .register-box {
  padding: 18px 20px;
  border: 1px solid #f00;
  margin-bottom: 60px;
  margin-top: 53px;
}

.register .register-heading {
  margin-bottom: 13px;
  font-size: 22px;
}

.register .register-box .register-caution {
  font-weight: bold;
  color: #f00;
}

.register .register-box .register-caution-detail {
  font-size: 12px;
  line-height: 1.8;
}

.register .register-btn {
  margin: 0 auto;
}

@media only screen and (max-width: 768px) {
  .register {
    min-height: auto;
    padding: 40px 15px;
  }
  .register .register-title {
    font-size: 19px;
  }

  .register .register-lead {
    line-height: 1.8;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    margin-bottom: 24px;
  }

  .register .register-heading {
    margin-bottom: 18px;
    font-size: 19px;
  }

  .register .register-text {
    line-height: 1.8;
    margin-bottom: 27px;
  }

  .register .register-box {
    margin: 36px 5px 39px;
  }

  .register .register-btn {
    margin: 0 15px;
  }
}

/* =================================================================
 FAQ
================================================================= */
.faq {
  padding: 50px 20px;
}

.faq-search {
  padding: 30px 0 27px;
  background: #f5f3ef;
  text-align: center;
}

.faq-search > p {
  display: inline-block;
  vertical-align: middle;
}

.faq-search .h-style-2 {
  margin: 0 15px 0 0;
}

.faq-search .search {
  width: 400px;
}

.faq-search .search input[type=search] {
  width: 400px;
}

.faq-search .keywords {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 15px 0 0 10px;
}

.faq-search .keywords-ttl {
  position: relative;
  width: 121px;
  height: 19px;
  margin: 0 20px 0 0;
  background: #9cb2b3;
  color: #fff;
  font-size: 13px;
  line-height: 19px;
}

.faq-search .keywords-ttl::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: -10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9.5px 0 9.5px 10px;
  border-color: transparent transparent transparent #9cb2b3;
}

.faq-search .keywords-list li {
  display: inline-block;
  margin: 0 14px 0 0;
  line-height: 1.9;
}

.faq-search .keywords-list li a {
  display: block;
  position: relative;
  color: #00abb4;
}

.faq-search .keywords-list li a::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 4px;
  width: 100%;
  height: 1px;
  background: #00abb4;
}

.faq-categ {
  margin: 47px 0 0;
}

.faq-categ-list {
  margin: 0 -1.075268817%;
  font-size: 0;
  letter-spacing: 0;
  word-spacing: 0;
}

.faq-categ-list li {
  display: inline-block;
  width: 22.842105263%;
  margin: 0 1.052631578% 21px;
  letter-spacing: 0.06em;
  word-spacing: normal;
  border: solid 1px #d0dadb;
}

.faq-categ-list li a.current .faq-categ-ttl, .faq-categ-list li a:hover .faq-categ-ttl {
  background: #e3f5f6;
  color: #00abb4;
}

.faq-categ-list li a.current p::before, .faq-categ-list li a:hover p::before {
  opacity: 1;
}

.faq-categ-list li a.current img, .faq-categ-list li a:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.faq-categ-ttl {
  position: relative;
  height: 45px;
  font-size: 15px;
  line-height: 45px;
  text-align: center;
}

.faq-categ-ttl::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  width: 11px;
  height: 10px;
  margin: auto;
  background: url(/img/icn_arrow_01.png) no-repeat center center;
  background-size: 11px auto;
}

.faq .qa {
  margin: 57px 0 0;
}

@media only screen and (max-width: 768px) {
  .faq {
    padding: 40px 0;
  }
  .faq-search {
    margin: 0 15px;
    padding: 15px 15px 7px;
    text-align: left;
  }
  .faq-search > p {
    display: block;
  }
  .faq-search .h-style-2 {
    margin: 0 0 15px;
  }
  .faq-search .search {
    width: auto;
    margin: 0;
  }
  .faq-search .search input[type=search] {
    width: 100%;
  }
  .faq-search .keywords {
    display: block;
    margin: 14px 0 0;
  }
  .faq-search .keywords-ttl {
    width: 102px;
    height: 18px;
    margin: 0 0 8px;
    padding: 0 5px;
    font-size: 12px;
    letter-spacing: 0;
    line-height: 18px;
  }
  .faq-search .keywords-ttl::after {
    right: -10px;
    border-width: 9px 0 9px 10px;
  }
  .faq-search .keywords-list li {
    margin: 0 4.444444444% 0 0;
    font-size: 12px;
    line-height: 1.8;
  }
  .faq-categ {
    margin: 39px 15px 0;
  }
  .faq-categ-list {
    margin: 0 -0.724637681%;
    font-size: 0;
    letter-spacing: 0;
    word-spacing: 0;
  }
  .faq-categ-list li {
    display: inline-block;
    position: relative;
    width: 48.571428571%;
    margin: 0 0.714285714% 5px;
    letter-spacing: 0.06em;
    word-spacing: normal;
    border: solid 1px #d0dadb;
  }
  .faq-categ-list li a {
    overflow: hidden;
  }
  .faq-categ-list li a.current .faq-categ-ttl, .faq-categ-list li a:hover .faq-categ-ttl {
    background: rgba(0, 0, 0, 0.3);
    color: #333;
  }
  .faq-categ-list li a.current p::before, .faq-categ-list li a:hover p::before {
    opacity: 0;
  }
  .faq-categ-list li a.current img, .faq-categ-list li a:hover img {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  .faq-categ-ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-contact: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    margin: auto;
    background: rgba(0, 0, 0, 0.3);
    font-size: 13px;
    line-height: 1.0;
    text-align: center;
  }
  .faq-categ-ttl::after {
    top: initial;
    bottom: 10px;
    right: 10px;
    width: 11px;
    height: 10px;
    background: url(/img/icn_arrow_02.png) no-repeat center center;
    background-size: 11px auto;
  }
  .faq-categ-ttl p {
    width: 100%;
    color: #fff;
  }
  .faq .qa {
    margin: 33px 15px 0;
  }
}

/*検索結果*/
.result {
  padding: 50px 20px;
}

.result em {
  background: #9cfaff;
  font-style: normal;
}

.result .h-style-2 {
  margin: 0 0 13px;
  text-align: center;
}

.result .faq-search {
  margin: 50px 0 0;
  padding: 25px 0 30px;
}

.result .faq-search > p {
  display: block;
  margin: 0 auto;
}

.result .faq-categ {
  margin: 25px 0 0;
}

.result .faq-categ-list {
  margin: 0;
  border-top: solid 1px #d0dadb;
  border-right: solid 1px #d0dadb;
}

.result .faq-categ-list li {
  width: calc(100% / 4);
  margin: 0;
  border-top: none;
  border-right: none;
}

.result .pagenation {
  margin: 51px -12px 0;
}

@media only screen and (max-width: 768px) {
  .result {
    padding: 25px 0 40px;
  }
  .result .h-style-2 {
    margin: 0 0 15px;
    text-align: center;
  }
  .result .faq-search {
    margin: 25px 0 0;
    padding: 15px;
  }
  .result .faq-categ {
    margin: 25px 15px 0;
  }
  .result .faq-categ-list li {
    width: calc(100% / 2);
  }
  .result .faq-categ-list li a {
    display: block;
    height: 57px;
  }
  .result .faq-categ-list li a .faq-categ-ttl {
    display: block;
    position: relative;
    padding: 0 0 0 10px;
    background: none;
    font-size: 14px;
    line-height: 57px;
  }
  .result .faq-categ-list li a .faq-categ-ttl p {
    color: #333;
    text-align: left;
  }
  .result .faq-categ-list li a .faq-categ-ttl::after {
    top: 0;
    bottom: 0;
    right: 10px;
    background: url(/img/icn_arrow_01.png) no-repeat center center;
    background-size: 11px auto;
  }
  .result .pagenation {
    margin: 25px -3.5px 0;
  }
}

@media only screen and (max-width: 320px) {
  .result .faq-categ-list li a .faq-categ-ttl {
    font-size: 13px;
  }
  .result .faq-categ-list li a .faq-categ-ttl::after {
    right: 10px;
  }
}

/* =================================================================
 プライバシーポリシー
================================================================= */
.policy p strong {
  display: block;
}

.policy p a.link {
  display: inline-block;
  border-bottom: solid 1px #00abb4;
  color: #00abb4;
}

.policy ul {
  margin: 41px 0;
}

.policy ul li {
  padding: 0 0 0 1em;
  text-indent: -1em;
}

.policy ul li + li {
  margin: 20px 0 0;
}

.policy ul li ul {
  margin: 10px 0 0;
}

.policy ul li ul li + li {
  margin: 10px 0 0;
}

@media only screen and (max-width: 768px) {
  .policy ul {
    margin: 17px 0;
  }
  .policy ul li {
    font-size: 12px;
    padding: 0 0 0 1em;
    text-indent: -1em;
  }
  .policy ul li + li {
    margin: 17px 0 0;
  }
  .policy ul li ul {
    margin: 10px 0 0;
  }
  .policy ul li ul li + li {
    margin: 10px 0 0;
  }
}

/* =================================================================
 404
================================================================= */
.notfound {
  text-align: center;
  padding: 105px 0 0;
}

.notfound-txt {
  position: relative;
  top: -118px;
}

.notfound h1 {
  position: relative;
  z-index: 1;
}

.notfound h2 {
  margin: 0 0 5px;
  font-family: "Lato", sans-serif;
  font-size: 40px;
  font-weight: 700;
}

.notfound .lead {
  line-height: 1.8;
}

.notfound .btn {
  margin: 126px auto 0;
}

@media only screen and (max-width: 768px) {
  .notfound {
    padding: 50px 15px 55px;
  }
  .notfound-txt {
    position: relative;
    top: -50px;
  }
  .notfound h2 {
    margin: 0 0 10px;
    font-size: 25px;
  }
  .notfound .lead {
    padding: 0;
    font-size: 12px;
    line-height: 1.8;
  }
  .notfound .btn {
    margin: 60px auto 0;
  }
}

/* =================================================================
 サイトマップ
================================================================= */
.sitemap .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.sitemap .h-style-2 {
  padding: 0 0 15px;
  border-bottom: solid 1px #d0dadb;
}

.sitemap section {
  width: calc(100% / 3);
  margin: 0 0 50px;
  padding: 0 20px;
}

.sitemap section ul li {
  position: relative;
  padding: 0 0 0 18px;
  line-height: 1.9;
}

.sitemap section ul li::before {
  display: block;
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 8px;
  height: 8px;
  margin: auto;
  background: #00abb4;
  border-radius: 50%;
}

.sitemap section ul li + li {
  margin: 10px 0 0;
}

.sitemap section ul li a {
  display: block;
  font-size: 15px;
}

.sitemap section ul li a span {
  border-bottom: solid 1px transparent;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.sitemap section ul li a:hover span {
  border-color: #555;
}

@media only screen and (max-width: 768px) {
  .sitemap .inner {
    margin: 0 10px;
  }
  .sitemap section {
    width: calc(100% / 2);
    margin: 0 0 30px;
    padding: 0 5px;
  }
  .sitemap section ul li + li {
    margin: 10px 0 0;
  }
  .sitemap section ul li a {
    display: block;
    font-size: 13px;
  }
  .sitemap section ul li a span {
    border-bottom: none;
  }
}

@media only screen and (max-width: 320px) {
  .sitemap section ul {
    padding: 0 8px;
  }
  .sitemap section ul li a {
    font-size: 12px;
  }
}

@media only screen and (min-width: 769px) {
  .aform-field-41 span {
    display: inline-block;
    margin-top: -5px;
  }
}

/* =================================================================
 新規開業サポート
================================================================= */
@media only screen and (max-width: 768px) {
  .clinic-support .main {
    padding-top: 35px;
  }
  .clinic-support .main .inner {
    margin: 0 15px;
  }
}

.clinic-support .branch {
  padding-top: 68px;
  padding-bottom: 200px;
  min-height: calc(100vh - 151px);
  line-height: 2.1;
  text-align: center;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
}

.clinic-support .branch .branch-text-02 {
  font-size: 18px;
  margin-top: 81px;
}

.clinic-support .branch .btn-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 30px;
}

.clinic-support .branch .btn-list li {
  margin: 0 10px;
}

.clinic-support .branch .btn-list li:last-child a {
  background: #333;
  border-color: #333;
  color: #fff;
}

.clinic-support .branch .btn-list li:last-child a::after {
  background-image: url(/img/icn_arrow_02.png);
  background-size: 10px auto;
}

.clinic-support .branch .btn-list li:last-child a:hover {
  background: #d0dadb;
  border-color: #9cb2b3;
  color: #333;
}

.clinic-support .branch .btn-list li:last-child a:hover::after {
  background-image: url(/img/icn_arrow_04.png);
}

@media only screen and (max-width: 768px) {
  .clinic-support .branch {
    padding-top: 19px;
    padding-bottom: 50px;
    min-height: calc(100vh - 187px);
    font-size: 12px;
    line-height: 1.8;
  }
  .clinic-support .branch .branch-text-02 {
    margin-top: 25px;
  }
  .clinic-support .branch .btn-list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 22px;
  }
  .clinic-support .branch .btn-list li {
    width: 47.68115942%;
    margin: 0;
  }
  .clinic-support .branch .btn-list li a::after {
    right: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .clinic-support .h-style-4 {
    font-size: 19px;
    letter-spacing: 0.02em;
    line-height: 1.4;
    margin: 0 0 12px;
  }
}

.clinic-support .lead {
  font-size: 14px;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  line-height: 2.1;
}

@media only screen and (max-width: 768px) {
  .clinic-support .lead {
    line-height: 1.8;
    padding: 0;
  }
}

.clinic-support .support {
  margin-top: 50px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .support {
    margin-top: 33px;
  }
  .clinic-support .support .h-style-3 {
    margin-bottom: 30px;
  }
}

.clinic-support .col {
  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 only screen and (max-width: 768px) {
  .clinic-support .col {
    display: block;
  }
}

.clinic-support .col-item {
  background: #e3f5f6;
  padding: 28px 30px 30px;
  position: relative;
  margin: 0 0 45px;
  width: 455px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item {
    width: 100%;
    padding: 21px 15px 25px;
    margin: 0 0 32.5px;
  }
}

.clinic-support .col-item:first-child {
  width: 100%;
}

.clinic-support .col-item h4 {
  font-size: 18px;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.6;
  text-align: center;
  margin: 0 0 23px;
}

.clinic-support .col-item h4 span {
  font-family: "Lato", sans-serif;
  font-size: 40px;
  font-weight: 400;
  font-style: italic;
  letter-spacing: 0.02em;
  line-height: 1.0;
  color: #ffad2d;
  position: absolute;
  left: 0;
  right: 0;
  top: -21px;
  margin: 0 auto;
  text-align: center;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item h4 {
    font-size: 16px;
    line-height: 1.4;
  }
  .clinic-support .col-item h4 span {
    font-size: 30px;
    top: -18px;
  }
}

.clinic-support .col-item .h-style-2 {
  width: 100%;
}

.clinic-support .col-item .h-style-2 small {
  font-size: 14px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item .h-style-2 {
    line-height: 1.2;
  }
  .clinic-support .col-item .h-style-2 small {
    display: block;
    font-size: 12px;
    line-height: 1.6;
  }
}

.clinic-support .col-item .title {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-align: center;
}

.clinic-support .col-item-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list {
    display: block;
  }
}

.clinic-support .col-item-list > li {
  background: #fff;
  position: relative;
}

.clinic-support .col-item-list > li:nth-child(1) {
  width: 200px;
  padding: 30px 20px 30px;
}

.clinic-support .col-item-list > li:nth-child(1)::before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background: #00abb4;
  border-radius: 50%;
  position: absolute;
  top: -20px;
  bottom: 0;
  right: -35px;
  margin: auto;
  z-index: 1;
}

.clinic-support .col-item-list > li:nth-child(1) .box {
  background: #f5f3ef;
  padding: 10px 0 35px;
  border-radius: 10px;
  border: solid 2px #00abb4;
  background: url(/img/icn_arrow_01.png) no-repeat center bottom 10px;
  background-size: 19px auto;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
}

.clinic-support .col-item-list > li:nth-child(1) .box::before, .clinic-support .col-item-list > li:nth-child(1) .box::after {
  content: "";
  display: block;
  width: 18px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: -20px;
  bottom: 0;
  right: -24px;
  margin: auto;
  z-index: 1;
}

.clinic-support .col-item-list > li:nth-child(1) .box::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list > li:nth-child(1) {
    width: 100%;
    padding: 15px 15px 15px;
  }
  .clinic-support .col-item-list > li:nth-child(1)::before {
    width: 30px;
    height: 30px;
    top: auto;
    bottom: -20px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .clinic-support .col-item-list > li:nth-child(1) .box {
    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;
    border-radius: 5px;
    padding: 14px 0 16px;
    background-position: right 12px bottom 10px;
    background-size: 15.5px auto;
  }
  .clinic-support .col-item-list > li:nth-child(1) .box::before, .clinic-support .col-item-list > li:nth-child(1) .box::after {
    width: 14px;
    height: 1px;
    top: auto;
    bottom: -6px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .clinic-support .col-item-list > li:nth-child(1) .box .title {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    font-size: 16px;
  }
  .clinic-support .col-item-list > li:nth-child(1) .box .icon {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 46px;
    margin: 0 10px 0 0;
  }
}

.clinic-support .col-item-list > li:nth-child(2) {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0 0 0 30px;
  padding: 30px 30px 30px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list > li:nth-child(2) {
    margin: 10px 0 0;
    padding: 15px 15px 15px;
  }
}

.clinic-support .col-item-list > li:nth-child(2) ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list > li:nth-child(2) ul {
    display: block;
  }
}

.clinic-support .col-item-list > li:nth-child(2) ul li {
  width: 180px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list > li:nth-child(2) ul li {
    width: 100%;
    border: solid 2px #ff925c;
    border-radius: 5px;
  }
  .clinic-support .col-item-list > li:nth-child(2) ul li + li {
    margin: 15px 0 0;
  }
  .clinic-support .col-item-list > li:nth-child(2) ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 15px 11px 14px 15px;
    background: url(/img/icn_arrow_01.png) no-repeat right 12px bottom 10px;
    background-size: 15.5px auto;
  }
}

.clinic-support .col-item-list > li:nth-child(2) ul li.blue .en-title {
  background-color: #00abb4;
}

.clinic-support .col-item-list > li:nth-child(2) ul li.blue .text {
  border-color: #00abb4;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list > li:nth-child(2) ul li.blue {
    border-color: #00abb4;
  }
}

.clinic-support .col-item-list > li:nth-child(2) ul li .en-title {
  background: #ff925c;
  color: #fff;
  font-family: "Lato", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 2.4;
  height: 24px;
  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;
  border-radius: 10px 10px 0 0;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list > li:nth-child(2) ul li .en-title {
    width: 50px;
    height: 34px;
    border-radius: 5px;
    font-size: 12px;
    line-height: 1.0;
    text-align: center;
    margin: 0 12.5px 0 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}

.clinic-support .col-item-list > li:nth-child(2) ul li .text {
  border: solid 2px #ff925c;
  border-top: none;
  border-radius: 0 0 10px 10px;
  height: calc(100% - 24px);
  text-align: center;
  padding: 10px 0 35px;
  background: url(/img/icn_arrow_01.png) no-repeat center bottom 10px;
  background-size: 19px auto;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list > li:nth-child(2) ul li .text {
    width: 100%;
    height: auto;
    border: none;
    padding: 0;
    text-align: left;
    background: none;
    line-height: 1.1;
  }
  .clinic-support .col-item-list > li:nth-child(2) ul li .text .title {
    letter-spacing: 0;
    line-height: 1.2;
  }
}

.clinic-support .col-item-list > li:nth-child(2) ul li .title {
  font-size: 16px;
  line-height: 1.35;
  margin-top: 2px;
  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;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list > li:nth-child(2) ul li .title {
    display: block;
    text-align: left;
  }
}

.clinic-support .col-item-list > li .h-style-2 {
  margin-bottom: 11px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item-list > li .h-style-2 {
    margin-bottom: 9px;
  }
}

.clinic-support .col-item-list > li .icon--01 {
  width: 49px;
  margin: 0 auto 9px;
}

.clinic-support .col-item--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 20px;
  margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item--flex {
    margin-bottom: 32.5px;
    padding: 21px 15px 11px;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .clinic-support .col-item--flex:last-child {
    margin-bottom: 0;
  }
}

.clinic-support .col-item--flex h4 {
  text-align: left;
  margin: 0;
}

.clinic-support .col-item--flex .icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: 0 15px 0 0;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item--flex .icon {
    margin: 0 9px 0 0;
  }
}

.clinic-support .col-item--flex .icon--02 {
  width: 68px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item--flex .icon--02 {
    width: 52px;
  }
}

.clinic-support .col-item--flex .icon--03 {
  width: 44px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item--flex .icon--03 {
    width: 35px;
  }
}

.clinic-support .col-item--flex:last-child {
  padding-right: 10px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .col-item--flex:last-child {
    padding-left: 33px;
    padding-right: 15px;
  }
}

.clinic-support .detail {
  max-width: 730px;
  margin: 0 auto;
}

@media only screen and (max-width: 768px) {
  .clinic-support .detail {
    padding-top: 33px;
  }
}

.clinic-support .detail p {
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  text-align: center;
  line-height: 2.1;
}

.clinic-support .detail p + p {
  margin-top: 10px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .detail p {
    line-height: 1.8;
  }
  .clinic-support .detail p + p {
    margin-top: 8px;
  }
}

.clinic-support .detail .box {
  background: #f5f3ef;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 24px 0 22px;
  margin: 11px 0 20px;
}

.clinic-support .detail .box .dot-list {
  margin-top: 0;
}

.clinic-support .detail .box .dot-list li {
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
}

@media only screen and (max-width: 768px) {
  .clinic-support .detail .box {
    padding: 15px 15px;
    margin: 13px 0;
  }
}

.clinic-support .modal-content {
  padding: 30px 50px 50px;
  max-width: 730px;
  background: #fff;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content {
    padding: 20px 15px;
  }
}

.clinic-support .modal-content .icon {
  font-family: "Lato", sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  width: 120px;
  height: 24px;
  border-radius: 24px;
  background: #ff925c;
  border-radius: 24px;
  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;
  margin: 0 auto 15px;
}

.clinic-support .modal-content .icon.pro {
  background: #00abb4;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content .icon {
    width: 100px;
  }
}

.clinic-support .modal-content h2 {
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 26px;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: -0.06em;
  line-height: 1.1;
  text-align: center;
  margin: 0 0 30px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content h2 {
    font-size: 15px;
    margin: 0 0 17px;
  }
}

.clinic-support .modal-content h3 {
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 18px;
  line-height: 1.6;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: 0.06em;
  margin: 0 0 13px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content h3 {
    font-size: 15px;
    text-align: center;
    margin: 0 0 8px;
  }
}

.clinic-support .modal-content p {
  line-height: 1.8;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: 0.06em;
}

.clinic-support .modal-content p small {
  display: block;
  font-size: 13px;
  line-height: 1.9;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content p {
    font-size: 12px;
  }
}

.clinic-support .modal-content .col {
  margin: 42px 0 0;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content .col {
    margin: 15px 0 0;
  }
  .clinic-support .modal-content .col .modal-img {
    margin: 0 25px;
  }
}

.clinic-support .modal-content .detail {
  margin: 0;
  padding: 0;
  width: 400px;
}

.clinic-support .modal-content .detail .dot-list li b {
  font-weight: 700;
}

.clinic-support .modal-content .detail p {
  font-size: 13px;
  line-height: 1.6;
  text-align: left;
  margin: 17px 0 0;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content .detail {
    width: 100%;
  }
  .clinic-support .modal-content .detail .dot-list {
    margin: 10px 0 0;
  }
  .clinic-support .modal-content .detail p {
    margin: 10px 0 0;
  }
}

.clinic-support .modal-content .box {
  margin: 50px 0 0;
  padding: 24px 30px;
  border: solid 2px #00abb4;
  background: #f2fbfc;
  border-radius: 10px;
  line-height: 1.8;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: 0.06em;
}

.clinic-support .modal-content .box + .box {
  margin-top: 20px;
}

.clinic-support .modal-content .box b {
  display: block;
  font-weight: 700;
}

.clinic-support .modal-content .box p + p {
  margin-top: 20px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content .box {
    padding: 13px 20px 17px;
    margin: 18px 0;
  }
  .clinic-support .modal-content .box + .box {
    margin-top: 18px;
  }
  .clinic-support .modal-content .box p + p {
    margin-top: 10px;
  }
  .clinic-support .modal-content .box p span {
    display: none;
  }
  .clinic-support .modal-content .box p small {
    font-size: 11px;
  }
}

.clinic-support .modal-content .box-img {
  width: 380px;
  margin: 24px auto 0;
  text-align: center;
}

.clinic-support .modal-content .box-img p {
  font-weight: 700;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: 0.02em;
}

.clinic-support .modal-content .box-img + p {
  font-size: 13px;
  line-height: 1.6;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: 0.02em;
  text-align: center;
  margin: 8px 0 0;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content .box-img {
    width: 235px;
    margin-top: 21px;
  }
  .clinic-support .modal-content .box-img p {
    line-height: 1.4;
  }
  .clinic-support .modal-content .box-img + p {
    font-size: 10px;
    line-height: 1.4;
  }
}

.clinic-support .modal-content .mfp-close {
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: 0.06em;
  width: 200px;
  height: 40px;
  border: solid 1px #fff;
}

@media only screen and (max-width: 768px) {
  .clinic-support .modal-content .mfp-close {
    width: 100%;
    height: 45px;
  }
}

.clinic-support form .app .set ul {
  margin: 20px 0 0;
}

.clinic-support form .app .set ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 15px;
}

.clinic-support form .app .set ul li:last-child {
  margin-bottom: 0;
}

.clinic-support form .app .set ul li label {
  width: 224px;
}

.clinic-support form .app .aform-tel {
  margin-top: 10px;
}

.clinic-support form .app ._3col dd p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.clinic-support form .app ._3col dd label {
  margin: 0 29px 0 15px;
}

.clinic-support form .app ._3col .select select {
  width: 167px;
}

.clinic-support form .app .address .aform-zipcode {
  width: 227px;
}

.clinic-support form .app .address .txt.no {
  margin: 0 2px 0 0;
}

.clinic-support form .app .address-2 {
  display: none;
}

.clinic-support form .app .selector-hide {
  display: none;
}

@media only screen and (max-width: 768px) {
  .clinic-support form .app {
    margin-left: -15px;
    margin-right: -15px;
  }
  .clinic-support form .app .aform-name-ul,
  .clinic-support form .app .aform-kana-ul {
    margin-right: 0;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .clinic-support form .app .aform-name-ul li,
  .clinic-support form .app .aform-kana-ul li {
    margin: 0;
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .clinic-support form .app .aform-name-ul li .aform-input,
  .clinic-support form .app .aform-kana-ul li .aform-input {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .clinic-support form .app .aform-name-ul li:nth-child(2),
  .clinic-support form .app .aform-kana-ul li:nth-child(2) {
    padding: 0 0 0 5px;
  }
  .clinic-support form .app .set ul li {
    display: block;
  }
  .clinic-support form .app .set ul li label {
    display: block;
    margin: 0 0 5px;
  }
  .clinic-support form .app .set .select-wrap {
    width: 100%;
  }
  .clinic-support form .app ._3col dd label {
    margin: 0 10px 0 5px;
  }
  .clinic-support form .app ._3col .select {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .clinic-support form .app ._3col .select .select-wrap {
    width: 100%;
  }
  .clinic-support form .app ._3col .select select {
    width: 100%;
    padding: 0 35px 0 10px;
  }
  .clinic-support form .app .address .aform-zipcode {
    width: 78.260869565%;
  }
  .clinic-support form .app .address .txt.no {
    margin: 0 3px 0 0;
  }
}

/* =================================================================
 動画掲載
================================================================= */
.support-movie .main {
  padding-top: 60px;
  padding-bottom: 110px;
}

.support-movie .dot-list li {
  position: relative;
  padding: 0 0 0 15px;
  font-size: 14px;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: 0.08em;
  line-height: 1.9;
}

.support-movie .dot-list li::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background: #00abb4;
  border-radius: 50%;
  position: absolute;
  top: 9px;
  left: 0;
}

.support-movie .movie-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 0 -42px;
}

.support-movie .movie-list > li {
  width: 47.849462365%;
  margin: 0 0 42px;
}

.support-movie .movie-thumb {
  position: relative;
}

.support-movie .movie-thumb::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #222;
  opacity: 0.2;
  position: absolute;
  top: 0;
  left: 0;
}

.support-movie .movie-thumb-icon {
  width: 50px;
  height: 50px;
  background: rgba(255, 255, 255, 0.6);
  border: solid 1px #fff;
  border-radius: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.support-movie .movie-thumb-icon::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 0 8px 14px;
  border-color: transparent transparent transparent #00abb4;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 40%;
  margin: auto;
}

.support-movie .movie-text {
  margin: 15px 0 0;
}

.support-movie .movie-text .head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.support-movie .movie-text .tag {
  font-size: 14px;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: 0.06em;
  min-width: inherit;
  padding: 4px 10px;
}

.support-movie .movie-text .count {
  font-size: 13px;
  color: #666;
  margin: 0 0 0 auto;
}

.support-movie .movie-text .dot-list {
  margin-top: 8px;
}

.support-movie .movie-title {
  font-size: 18px;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.06em;
  margin: 15px 0 0;
}

.support-movie .mfp-container {
  width: 930px;
}

.support-movie .mfp-iframe-holder .mfp-content {
  max-width: 100%;
}

.support-movie .mfp-close {
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  letter-spacing: 0.06em;
  width: 200px;
  height: 40px;
  border: solid 1px #fff;
  border-radius: 40px;
  text-align: center;
  padding: 0;
  bottom: -80px;
  top: auto;
}

@media only screen and (max-width: 768px) {
  .support-movie .main {
    padding-top: 25px;
    padding-bottom: 60px;
  }
  .support-movie .main .inner {
    margin: 0 15px;
  }
  .support-movie .dot-list li::before {
    top: 7px;
  }
  .support-movie .movie-list {
    display: block;
  }
  .support-movie .movie-list > li {
    width: 100%;
    margin: 0 0 24px;
  }
  .support-movie .movie-text {
    margin-top: 13px;
  }
  .support-movie .movie-text .tag {
    font-size: 10px;
    padding: 5px 4px;
  }
  .support-movie .movie-text .dot-list {
    margin-top: 8px;
  }
  .support-movie .movie-text .dot-list li {
    font-size: 12px;
    letter-spacing: 0.06em;
  }
  .support-movie .movie-title {
    font-size: 16px;
    line-height: 1.2;
    margin-top: 10px;
  }
  .support-movie .mfp-container {
    width: auto;
    margin: 0 15px;
  }
}
/*# sourceMappingURL=style.css.map */

/* 20220908 */

.clinic-support .-mgb40 {
  margin-bottom: 40px;
}
.clinic-support .-mgb40 > span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ff6));
  background: linear-gradient(transparent 60%, #ff6 60%);
}
.clinic-support .-mgb2col {
  margin-bottom: 80px;
}
.clinic-support .col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
.clinic-support .col2 > .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.clinic-support .col2 > .image > img {
  max-width: 100%;
  height: auto;
}
.clinic-support .h-style-3 {
  margin-bottom: 40px;
}
.clinic-support .col-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  padding: 40px 30px 30px;
}
.clinic-support .col-item > .trial-lead {
  text-align: center;
  margin-bottom: 50px;
}
.clinic-support .col-item .c-s-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0 40px;
  margin-bottom: 70px;
}
.clinic-support .col-item .c-s-contents.-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.clinic-support .col-item .c-s-contents.-reverse > .number-box > .number {
  left: auto;
  right: 25px;
}
.clinic-support .col-item .c-s-contents.-reverse > .number-box > .notice {
  font-size: 12px;
  margin-top: 10px;
}
.clinic-support .col-item .c-s-contents.-last {
  margin-bottom: 0;
}
.clinic-support .col-item .c-s-contents > .number-box {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 405px;
}
.clinic-support .col-item .c-s-contents > .number-box > .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.clinic-support .col-item .c-s-contents > .number-box > .image > img {
  max-width: 100%;
  height: auto;
}
.clinic-support .col-item .c-s-contents > .number-box > .number {
  font-family: "Lato", sans-serif;
  font-size: 60px;
  font-weight: 400;
  font-style: italic;
  letter-spacing: 0.02em;
  line-height: 1;
  color: #ffad2d;
  position: absolute;
  left: 25px;
  top: -30px;
}
.clinic-support .col-item .c-s-contents > .text-box > .h-style-4 {
  font-size: 24px;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-weight: 400;
  color: #00abb4;
  text-align: left;
  letter-spacing: 0.06em;
  line-height: 1.2;
  margin: 0 0 20px;
}
.clinic-support .col-item .c-s-contents > .text-box > .text-list {
  gap: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.clinic-support .col-item .c-s-contents > .text-box > .text-list.-mgb {
  margin-bottom: 30px;
}
.clinic-support .col-item .c-s-contents > .text-box > .text-list > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
  letter-spacing: 0.06em;
}
.clinic-support .col-item .c-s-contents > .text-box > .text-list > .list::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background: #00abb4;
  border-radius: 50%;
  margin-right: 10px;
}
.clinic-support .col-item .c-s-contents > .text-box > .notice {
  font-size: 14px;
  letter-spacing: 0.06em;
}
.clinic-support .col-item .c-s-contents > .text-box > .notice.-mgb {
  margin-bottom: 30px;
}
.clinic-support .btn {
  width: 290px;
  margin: 0 auto 45px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .-mgb2col {
    margin-bottom: 40px;
  }
  .clinic-support .h-style-3 {
    margin-bottom: 15px;
  }
  .clinic-support .h-style-3 > span {
    line-height: 1.4;
    display: inline-block;
    background: #fff;
  }
  .clinic-support .h-style-3::before {
    z-index: -1;
  }
  .clinic-support .col2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .clinic-support .support .h-style-3 {
    margin-bottom: 15px;
  }
  .clinic-support .col-item {
    width: 100%;
    padding: 21px 15px 25px;
  }
  .clinic-support .col-item > .trial-lead {
    text-align: left;
    margin-bottom: 35px;
  }
  .clinic-support .col-item .c-s-contents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 25px;
    margin-bottom: 30px;
  }
  .clinic-support .col-item .c-s-contents.-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .clinic-support .col-item .c-s-contents.-reverse > .number-box > .number {
    right: 5px;
  }
  .clinic-support .col-item .c-s-contents > .number-box > .number {
    font-size: 30px;
    left: auto;
    right: 5px;
    top: -15px;
  }
  .clinic-support .col-item .c-s-contents > .text-box > .h-style-4 {
    font-size: 15px;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 1.2;
  }
  .clinic-support .col-item .c-s-contents > .text-box > .text-list {
    gap: 2px;
  }
  .clinic-support .col-item .c-s-contents > .text-box > .text-list.-mgb {
    margin-bottom: 20px;
  }
  .clinic-support .col-item .c-s-contents > .text-box > .text-list > .list {
    font-size: 12px;
  }
  .clinic-support .col-item .c-s-contents > .text-box > .text-list > .list::before {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    background: #00abb4;
    border-radius: 50%;
    margin-right: 10px;
  }
  .clinic-support .col-item .c-s-contents > .text-box > .notice {
    font-size: 14px;
    letter-spacing: 0.06em;
  }
  .clinic-support .col-item .c-s-contents > .text-box > .notice.-mgb {
    margin-bottom: 20px;
  }
  .clinic-support .col-item .c-s-contents > .text-box > .notice.-sfz {
    font-size: 12px;
  }
  .clinic-support .btn {
    width: 100%;
  }
}
/* ===============================================
# クリニック申し込みフォーム
=============================================== */
.clinic-support .app form .name-2,
.clinic-support .app .h-style-3::before {
  display: none;
}

.form .aform-radio-ul li .aform-radio,
.form .aform-checkbox-ul li .aform-checkbox {
  display: none !important;
}

.form .aform-checkbox-ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 0;
}

.form .aform-checkbox-ul li {
  margin: 0 29px 0 0;
}

.support-form input[type=checkbox] + label::after {
  border-radius: 0;
  background: none;
}

.support-form .aform-checkbox-ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 0;
}
.support-form .aform-checkbox-ul li {
  margin: 0 29px 0 0;
}

.form .aform-textarea {
  margin-top: 10px;
  width: 100%;
}

.h-style-4.confirm {
  font-size: 26px;
  margin-bottom: 40px;
}

/* 20220908 end */

/* ===============================================
# 20221004 サンプル請求　改修
=============================================== */
.h-style-3 > .s-complete-bg {
  background: #f5f3ef;
}

.h-style-4.-s-complete {
  margin: 0 15px 17px;
}
.h-style-4.-s-complete + p {
  font-size: 14px;
}

.container.-htauto {
  position: relative;
}

.sample-complete {
  padding: 80px 0 50vh;
  background: #f5f3ef;
  margin: 74px -20px -50px;
}
@media only screen and (max-width: 768px) {
  .sample-complete {
    padding: 37px 0;
    margin: 33px 0 -40px;
  }
}
@media only screen and (max-width: 768px) {
  .sample-complete > .inner {
    margin: 0 15px;
  }
}
@media only screen and (max-width: 768px) {
  .sample-complete > .inner > .h-style-3 {
    margin: 0 0 19px;
  }
  .sample-complete > .inner > .h-style-3 + p {
    margin: 0;
    font-size: 14px;
  }
}
.sample-complete > .inner > .lists {
  margin-top: 55px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
}
@media only screen and (max-width: 768px) {
  .sample-complete > .inner > .lists {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 30px;
    gap: 35px;
  }
}
.sample-complete > .inner > .lists > .item {
  width: calc((100% - 80px) / 3);
}
@media only screen and (max-width: 768px) {
  .sample-complete > .inner > .lists > .item {
    width: 100%;
  }
}
.sample-complete > .inner > .lists > .item > .text {
  margin: 22px 0 0;
  text-align: left;
  line-height: 2;
}
@media only screen and (max-width: 768px) {
  .sample-complete > .inner > .lists > .item > .text {
    margin: 16px 0 0;
    font-size: 14px;
    line-height: 1.8;
  }
}
.sample-complete > .inner > .lists > .item > .image {
  display: block;
}
.sample-complete > .inner > .lists > .item > .image:hover {
  opacity: 0.7;
}

/* ===============================================
# 20221111 お問い合わせ改修
=============================================== */
.page-nav-list.contact-nav-list {
  margin-bottom: 50px;
}
@media only screen and (max-width: 768px) {
  .page-nav-list.contact-nav-list {
    margin: 0 15px 40px;
  }
}
.page-nav-list.contact-nav-list > .item {
  width: 33.3333333333%;
  max-height: 82px;
}
@media only screen and (max-width: 768px) {
  .page-nav-list.contact-nav-list > .item {
    width: 50%;
    max-height: 55px;
  }
}
.page-nav-list.contact-nav-list > .item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
  height: 100%;
}
.page-nav-list.contact-nav-list > .item a > .icon-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 35%;
}
.page-nav-list.contact-nav-list > .item a > .icon-wrap > .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: 0;
}
@media only screen and (max-width: 768px) {
  .page-nav-list.contact-nav-list > .item a > .icon-wrap > .icon {
    margin: 0;
  }
}
@media only screen and (max-width: 768px) {
  .page-nav-list.contact-nav-list > .item a > .icon-wrap > .icon.faq img {
    width: 57%;
  }
}
.page-nav-list.contact-nav-list > .item a > .icon-wrap > .icon > img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (max-width: 768px) {
  .page-nav-list.contact-nav-list > .item a > .icon-wrap > .icon > img {
    width: 50%;
    -o-object-fit: contain;
       object-fit: contain;
  }
}
@media only screen and (max-width: 320px) {
  .page-nav-list.contact-nav-list > .item a > .icon-wrap > .icon > img {
    width: 42%;
    -o-object-fit: contain;
       object-fit: contain;
  }
}
.page-nav-list.contact-nav-list > .item a > .text {
  display: block;
  width: 70px;
  word-break: keep-all;
  position: absolute;
  top: 50%;
  left: 47%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  margin: 0;
}
@media only screen and (max-width: 768px) {
  .page-nav-list.contact-nav-list > .item a > .text {
    font-size: 12px;
    left: 50%;
  }
}
.page-nav-list.contact-nav-list > .item a::before {
  right: 11px;
}
/* clinic-support */
.clinic-support .interview {
  margin: 50px auto;
  padding: 28px 40px 23px;
  background: #f5f3ef;
}
.clinic-support .interview .h-style-3 {
  margin-bottom: 28px;
  text-align: center;
}
.clinic-support .interview .h-style-3:before {
  display: none;
}
.clinic-support .interview__box {
  margin-bottom: 26px;
  display: flex;
  gap: 12px 40px;
}
.clinic-support .interview__item {
  width: 100%;
}
.clinic-support .interview__item a {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: center;
}
.clinic-support .interview__item a:hover {
  opacity: .7;
}
.clinic-support .interview__item p {
  line-height: 1.6;
}
.clinic-support .interview__item p + p {
  margin-top: 10px;
}
.clinic-support .interview__img {
  width: 210px;
  flex-shrink: 0;
}
.clinic-support .interview__link {
  text-align: right;
}
.clinic-support .interview__link a {
  position: relative;
  padding-right: 20px;
  display: inline-block;
  font-size: 13px;
  color: #00abb4;
}
.clinic-support .interview__link a:before {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  right: 0;
  background: url(/img/icn_arrow_03.png) no-repeat center center;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  margin-top: -1px;
}

@media only screen and (max-width: 768px) {
  .clinic-support .interview {
    margin: 40px auto;
    padding: 22px 20px 17px;
  }
  .clinic-support .interview .h-style-3 {
    line-height: 1.4;
    margin-bottom: 13px;
  }
  .clinic-support .interview__box {
    margin-bottom: 8px;
    flex-direction: column;
  }
  .clinic-support .interview__item a {
    gap: 10px;
    align-items: flex-start;
  }
  .clinic-support .interview__item p {
    line-height: 1.78;
  }
  .clinic-support .interview__item p + p {
    margin-top: 3px;
  }
  .clinic-support .interview__img {
    padding-top: 6px;
    width: 28vw;
  }
}

/* interview */
.interview .main {
  padding-top: 60px;
}
@media only screen and (max-width: 768px) {
  .interview .main {
    padding: 0;
  }
  .interview .main > .inner {
    padding: 0 15px;
  }
}
@media only screen and (max-width: 768px) {
  .interview__mv {
    width: calc(100% + 30px);
    margin: 0 -15px;
  }
}
.interview__mv__headline {
  max-width: 730px;
  width: 100%;
  margin: 0 auto;
  padding: 36px 20px 0;
  transform: translateY(-80px);
  background: #FFF;
  text-align: center;
  color: #555555;
}
@media only screen and (max-width: 768px) {
  .interview__mv__headline {
    width: calc(100% - 60px);
    padding: 21px 10px 0;
    transform: translateY(-68px);
  }
}
.interview__mv__ttl {
  margin-bottom: 13px;
  font-size: 30px;
  line-height: 1.4;
  color: #00abb4;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
}
@media only screen and (max-width: 768px) {
  .interview__mv__ttl {
    font-size: 19px;
  }
}
.ruby rt {
  letter-spacing: -0.05em;
}
.interview__head {
  margin: -33px auto 42px;
  padding: 24px 30px;
  background: #e3f5f6;
}
@media only screen and (max-width: 768px) {
  .interview__head {
    margin: -36px auto 33px;
    padding: 20px 15px 17px;
  }
}
.interview__head__box {
  display: flex;
  gap: 20px 30px;
}
@media only screen and (max-width: 768px) {
  .interview__head__box {
    flex-direction: column;
  }
}
.interview__head__lead {
  width: 38.6%;
  padding-right: 25px;
  border-right: 1px solid #d0dadb;
}
@media only screen and (max-width: 768px) {
  .interview__head__lead {
    width: 100%;
    padding-right: 0;
    padding-bottom: 20px;
    border-right: none;
    border-bottom: 1px solid #d0dadb;
  }
}
@media only screen and (max-width: 768px) {
  .interview__head__lead p:not(.interview__head__ttl) {
    line-height: 1.535;
  }
}
.interview__head__list {
  width: calc(61.4% - 30px);
}
@media only screen and (max-width: 768px) {
  .interview__head__list {
    width: 100%;
  }
}
.interview__head__list li {
  display: flex;
  align-items: baseline;
}
.interview__head__list li::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background: #00abb4;
  border-radius: 50%;
  margin-right: 10px;
  flex-shrink: 0;
}
@media only screen and (max-width: 768px) {
  .interview__head__list li {
    font-size: 12px;
  }
}
.interview__head__ttl {
  margin-bottom: 14px;
  font-size: 18px;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
}
@media only screen and (max-width: 768px) {
  .interview__head__ttl {
    margin-bottom: 5px;
    font-size: 17px;
  }
}
.interview__text {
  margin-bottom: 54px;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .interview__text {
    margin-bottom: 33px;
    padding: 0 25px;
    text-align: left;
  }
}
.interview__sec-wrap {
  margin-bottom: 51px;
  padding: 0 100px;
}
@media only screen and (max-width: 768px) {
  .interview__sec-wrap {
    margin-bottom: 34px;
    padding: 0;
  }
}
.interview__sec-wrap > p {
  margin-top: 26px;
  text-align: right;
  color: #666666;
}
@media only screen and (max-width: 768px) {
  .interview__sec-wrap > p {
    margin-top: 17px;
  }
}
.interview__sec {
  margin-bottom: 55px;
}
@media only screen and (max-width: 768px) {
  .interview__sec {
    margin-bottom: 34px;
  }
}
.interview__sec:last-of-type {
  margin-bottom: 0;
}
.interview__sec__ttl {
  line-height: 1.4;
}
.interview__sec__ttl::before {
  display: none;
}
@media only screen and (max-width: 768px) {
  .interview__sec__ttl {
    margin-bottom: 35px;
    font-size: 15px;
  }
}
.interview__sec__ttl span {
  display: inline;
  padding: 0;
  background: linear-gradient(to bottom, transparent 65%, #e3f5f6 65%, #e3f5f6 90%, transparent 90%);
}
@media only screen and (max-width: 768px) {
  .interview__sec__ttl span {
    background: linear-gradient(to bottom, transparent 64%, #e3f5f6 64%);
    line-height: 1.6;
    font-size: 18px;
  }
}
.interview__sec__img {
  margin-bottom: 36px;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .interview__sec__img {
    margin-bottom: 25px;
  }
}
.interview__sec__img img {
  margin-bottom: 8px;
}
@media only screen and (max-width: 768px) {
  .interview__sec__img img {
    margin-bottom: 0;
  }
}
.interview__sec__img figcaption {
  padding-top: 8px;
  font-size: 13px;
  color: #666666;
}
@media only screen and (max-width: 768px) {
  .interview__sec__img figcaption {
    font-size: 10px;
    padding: 11px 0 3px;
  }
}
.interview__sec__desc + .interview__sec__desc {
  margin-top: 27px;
}
@media only screen and (max-width: 768px) {
  .interview__sec__desc + .interview__sec__desc {
    margin-top: 16px;
  }
}
.interview__sec__desc + .interview__sec__notes {
  margin-top: 15px;
}
@media only screen and (max-width: 768px) {
  .interview__sec__desc + .interview__sec__notes {
    margin-top: 10px;
  }
}
.interview__sec__notes {
  counter-reset: number 0;
}
.interview__sec__notes p small {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 10px;
}
.interview__sec__notes p small:before {
  display: block;
  content: "※"counter(number)"";
  counter-increment: number 1;
}
.interview__sec__desc p + p {
  margin-top: 24px;
}
.interview__sec__desc strong {
  font-weight: bold;
}
.interview__sec__tag {
  font-weight: bold;
}
.interview__sec__tag._person01 {
  color: #2c8de5;
}
.interview__sec__tag._person02 {
  color: #aa7dbc;
}
.interview__list {
  width: calc(100% - 200px);
  margin: 0 auto 50px;
  padding: 18px 40px 23px;
  background: #f5f3ef;
}
@media only screen and (max-width: 768px) {
  .interview__list {
    width: 100%;
    margin-bottom: 40px;
    padding: 15px 20px 17px;
  }
}
.interview__list__ttl {
  margin-bottom: 16px;
  text-align: center;
  font-size: 26px;
  font-weight: bold;
  font-family: "Lato", sans-serif;
}
@media only screen and (max-width: 768px) {
  .interview__list__ttl {
    margin-bottom: 10px;
    font-size: 19px;
  }
}
.interview__list__box {
  margin-bottom: 17px;
  display: flex;
  justify-content: center;
  gap: 12px 40px;
}
@media only screen and (max-width: 768px) {
  .interview__list__box {
    margin-bottom: 7px;
    flex-direction: column;
  }
}
.interview__list__item {
  /*width: 210px;*/
}
@media only screen and (max-width: 768px) {
  .interview__list__item {
    width: 100%;
  }
}
.interview__list__item a {
  display: flex;
  /*flex-direction: column;*/
  gap: 15px;
  align-items: center;
  justify-content: center;
}
.interview__list__item a:hover {
  opacity: .7;
}
@media only screen and (max-width: 768px) {
  .interview__list__item a {
    flex-direction: row;
    align-items: flex-start;
    gap: 15px 10px;
  }
}
.interview__list__item p {
  line-height: 1.77;
  font-size: 13px;
}
@media only screen and (max-width: 768px) {
  .interview__list__item p {
    line-height: 1.78;
    font-size: 14px;
  }
}
.interview__list__item p + p {
  margin-top: 5px;
}
@media only screen and (max-width: 768px) {
  .interview__list__item p + p {
    margin-top: 3px;
  }
}
@media only screen and (max-width: 768px) {
  .interview__list__img {
    padding-top: 5px;
    width: 28vw;
    flex-shrink: 0;
  }
}
.interview__list__link {
  text-align: right;
}
.interview__list__link a {
  position: relative;
  padding-right: 20px;
  display: inline-block;
  font-size: 13px;
  color: #00abb4;
}
.interview__list__link a:before {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  right: 0;
  background: url(/img/icn_arrow_03.png) no-repeat center center;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  margin-top: -1px;
}
.interview .btn {
  margin: 0 auto 50px;
}
@media only screen and (max-width: 768px) {
  .interview .btn {
    margin-bottom: 40px;
  }
}

.seminar-finish__ttl {
  margin-bottom: 20px;
  font-size: 22px;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .seminar-finish__ttl {
    font-size: 18px;
  }
}
.seminar-finish__text p {
  margin-bottom: 10px;
}
.seminar-finish__text p:last-child {
  margin-bottom: 0;
}

/*-- メッセージ --*/
.message {
  padding: 0;
}
@media only screen and (max-width: 768px) {
  .message section p {
    text-align: left;
    font-size: 15px;
  }
}
.message section .inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 15px;
}
.message .bar {
  display: inline-block;
  position: relative;
  width: 2em;
  height: 1em;
  margin: 0 3px;
}
.message .bar:after {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  top: 50%;
  left: 0;
  margin-top: 3px;
}
.message .vision {
  padding: 92px 0 80px;
  background: url(/img/company/bg_vision_pc.png) no-repeat center center/cover;
}
@media only screen and (max-width: 768px) {
  .message .vision {
    padding: 47px 0 40px;
    background-image: url(/img/company/bg_vision_sp.png);
    background-position: center 60%;
  }
}
.message .vision__head {
  margin-bottom: 56px;
}
@media only screen and (max-width: 768px) {
  .message .vision__head {
    margin-bottom: 66.6666666vw;
  }
}
.message .vision__ttl {
  margin-bottom: 36px;
  font-size: 60px;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-weight: bold;
  line-height: 1.55;
}
@media only screen and (max-width: 768px) {
  .message .vision__ttl {
    margin-bottom: 37px;
    font-size: 35px;
    line-height: 1.4;
  }
}
.message .vision__ttl span {
  display: block;
  font-size: 24px;
  font-weight: bold;
  color: #00abb4;
}
@media only screen and (max-width: 768px) {
  .message .vision__ttl span {
    font-size: 15px;
  }
}
@media only screen and (max-width: 768px) {
  .message .vision__text p {
    line-height: 2;
  }
  .message .vision__text p + p {
    margin-top: 30px;
  }
}
.message .vision__move {
  padding: 23px 83px 42px;
  background: #FFF;
  -webkit-box-shadow: 0px 0px 8px 5px rgba(0, 0, 0, 0.08);
          box-shadow: 0px 0px 8px 5px rgba(0, 0, 0, 0.08);
}
@media only screen and (max-width: 768px) {
  .message .vision__move {
    padding: 25px 20px 15px;
  }
}
.message .vision__move__ttl {
  margin-bottom: 20px;
  font-size: 30px;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .message .vision__move__ttl {
    margin-bottom: 23px;
    font-size: 18px;
  }
}
.message .vision__move__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-left: 1px solid #d0dadb;
}
@media only screen and (max-width: 768px) {
  .message .vision__move__list {
    position: relative;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    border-left: none;
  }
  .message .vision__move__list:before {
    position: absolute;
    display: block;
    content: "";
    top: 50%;
    left: 50%;
    width: 41px;
    height: 41px;
    background: #FFF;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
.message .vision__move__list li {
  width: 100%;
  padding: 6px 15px 10px;
  border-right: 1px solid #d0dadb;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .message .vision__move__list li {
    width: 50%;
    border-right: none;
  }
  .message .vision__move__list li:nth-child(1) {
    padding: 0 20px 15px 0;
    border-right: 1px solid #d0dadb;
  }
  .message .vision__move__list li:nth-child(2) {
    padding: 0 0 15px 20px;
  }
  .message .vision__move__list li:nth-child(3) {
    padding: 20px 15px 0 0;
    border-right: 1px solid #d0dadb;
    border-top: 1px solid #d0dadb;
  }
  .message .vision__move__list li:nth-child(3) .vision__move__img {
    padding: 1px 0 2px;
  }
  .message .vision__move__list li:nth-child(4) {
    padding: 20px 0 0 15px;
    border-top: 1px solid #d0dadb;
  }
  .message .vision__move__list li:nth-child(4) .vision__move__img {
    padding: 2px 0 4px;
  }
}
.message .vision__move__img {
  height: 82px;
  margin-bottom: 15px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 768px) {
  .message .vision__move__img {
    height: 42px;
    margin-bottom: 5px;
  }
}
.message .vision__move__img img {
  max-height: 100%;
  width: auto;
}
@media only screen and (max-width: 768px) {
  .message .vision__move__text {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.message .vision__move__text p {
  line-height: 1.7857142857;
}
@media only screen and (max-width: 768px) {
  .message .vision__move__text p {
    font-size: 12px;
    line-height: 1.6;
    text-align: center;
  }
}
.message .msg {
  position: relative;
  padding: 63px 0 69px;
  /*-- あしらい --*/
}
@media only screen and (max-width: 768px) {
  .message .msg {
    padding: 31px 0 34px;
  }
}
.message .msg__ttl {
  margin-bottom: 57px;
  color: #00abb4;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-size: 40px;
  line-height: 1.62475;
}
@media only screen and (max-width: 768px) {
  .message .msg__ttl {
    margin-bottom: 25px;
    font-size: 23px;
  }
}
.message .msg__ttl .bar:after {
  height: 2px;
  background: #00abb4;
}
.message .msg__text__item:first-child p {
  margin-top: 0;
}
.message .msg__text p {
  margin-top: 36px;
  font-size: 14px;
  line-height: 2.4285714286;
}
@media only screen and (max-width: 768px) {
  .message .msg__text p {
    margin-top: 25px;
    line-height: 1.7857142857;
  }
}
.message .msg__text .bar:after {
  height: 1px;
  background: #000;
  margin-top: 2px;
}
@media only screen and (max-width: 768px) {
  .message .msg .bg {
    background-size: 100% auto;
  }
}
.message .msg .bg1 {
  top: 28px;
  left: 690px;
}
@media only screen and (max-width: 768px) {
  .message .msg .bg1 {
    background-image: url(/img/company/bg_01.png);
    height: 41px;
    width: 49px;
    top: 17%;
    left: auto;
    right: 25px;
  }
}
.message .msg .bg2 {
  top: 70px;
  right: 156px;
}
@media only screen and (max-width: 768px) {
  .message .msg .bg2 {
    background-image: url(/img/company/bg_02.png);
    height: 28px;
    width: 60px;
    top: 10.7%;
    left: 50px;
  }
}
.message .msg .bg3 {
  top: 258px;
  right: 688px;
  background-image: url(/img/company/bg_11.png);
}
@media only screen and (max-width: 768px) {
  .message .msg .bg3 {
    display: none;
  }
}
.message .msg .bg4 {
  top: 256px;
  right: 178px;
}
@media only screen and (max-width: 768px) {
  .message .msg .bg4 {
    width: 108px;
    height: 75px;
    top: 69%;
    right: auto;
    left: 35px;
  }
}
.message .msg .bg5 {
  top: 777px;
  left: auto;
  right: 212px;
}
@media only screen and (max-width: 768px) {
  .message .msg .bg5 {
    display: none;
  }
}
.message .msg .bg6 {
  width: 184px;
  height: 89px;
  top: 540px;
  left: 140px;
  background-image: url(/img/company/bg_12.png);
}
@media only screen and (max-width: 768px) {
  .message .msg .bg6 {
    width: 137px;
    height: 66px;
    top: 31.7%;
    left: 15px;
  }
}
.message .msg .bg7 {
  top: 990px;
  right: 228px;
  width: 65px;
  height: 55px;
  background: url(/img/company/bg_01.png) no-repeat center center/100% auto;
}
@media only screen and (max-width: 768px) {
  .message .msg .bg7 {
    top: 46%;
    right: 43px;
    width: 49px;
    height: 41px;
  }
}
.message .msg .bg8 {
  top: 1184px;
  left: 440px;
  width: 86px;
  height: 74px;
  background: url(/img/company/bg_10.png) no-repeat center center/100% auto;
}
@media only screen and (max-width: 768px) {
  .message .msg .bg8 {
    width: 64px;
    height: 55px;
    top: 88%;
    left: 50px;
  }
}
.message .msg .bg9 {
  top: 1323px;
  right: 160px;
  width: 63px;
  height: 44px;
  background: url(/img/company/bg_05.png) no-repeat center center/100% auto;
}
@media only screen and (max-width: 768px) {
  .message .msg .bg9 {
    width: 47px;
    height: 33px;
    top: 94.2%;
    right: 22px;
  }
}
.message .spirit {
  padding: 64px 0 82px;
  background: #eef2f4;
}
@media only screen and (max-width: 768px) {
  .message .spirit {
    padding: 32px 0 41px;
  }
}
.message .spirit__ttl {
  margin-bottom: 28px;
  font-size: 30px;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .message .spirit__ttl {
    margin-bottom: 21px;
    font-size: 20px;
    line-height: 1.4;
  }
}
.message .spirit__ttl span {
  padding-right: 0.5em;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .message .spirit__ttl span {
    display: block;
    padding-right: 0;
  }
}
.message .spirit__list {
  padding: 0 50px;
}
@media only screen and (max-width: 768px) {
  .message .spirit__list {
    padding: 0;
  }
}
.message .spirit__list li {
  margin-bottom: 30px;
  padding: 28px 60px 29px;
  background: #FFF;
}
.message .spirit__list li:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  .message .spirit__list li {
    margin-bottom: 25px;
    padding: 12px 20px;
  }
}
.message .spirit__list__ttl {
  margin-bottom: 17px;
  font-size: 20px;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 768px) {
  .message .spirit__list__ttl {
    margin-bottom: 20px;
    font-size: 16px;
  }
}
.message .spirit__list__ttl > span {
  display: block;
  font-size: 28px;
  font-weight: bold;
  color: #00abb4;
}
@media only screen and (max-width: 768px) {
  .message .spirit__list__ttl > span {
    font-size: 18px;
  }
}
.message .spirit__list__ttl .bar {
  margin: 0 7px;
  width: 1.1em;
}
@media only screen and (max-width: 768px) {
  .message .spirit__list__ttl .bar {
    margin: 0 3px;
    width: 1.7em;
  }
}
.message .spirit__list__ttl .bar:after {
  height: 2px;
  background: #00abb4;
}
@media only screen and (max-width: 768px) {
  .message .spirit__list__ttl .bar:after {
    margin-top: 1px;
  }
}
.message .spirit__list p {
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 768px) {
  .message .spirit__list p {
    font-size: 14px;
  }
}
.interview__comment {
  margin-top: 55px;
  padding: 20px 30px;
  border: 4px solid #e3f5f6;
  border-radius: 10px;
}
@media only screen and (max-width: 768px) {
  .interview__comment {
    margin-top: 35px;
    padding: 20px 15px 40px;
  }
}
.interview__comment__ttl {
  margin-bottom: 10px;
  color: #00abb4;
  font-size: 18px;
  font-family: "TsukuARdGothicStd-M", "FOT-筑紫A丸ゴシック Std M", sans-serif;
}
@media only screen and (max-width: 768px) {
  .interview__comment__ttl {
    font-size: 17px;
    text-align: center;
  }
}
.interview__comment__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px 20px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 768px) {
  .interview__comment__item {
    margin-bottom: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.interview__comment__item:last-child {
  margin-bottom: 0;
}
.interview__comment__img {
  width: 100px;
  margin: 0 auto;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  padding-top: 10px;
}
@media only screen and (max-width: 768px) {
  .interview__comment__img {
    padding-top: 0;
  }
}
.interview__comment__desc dt {
  margin-bottom: 5px;
  font-weight: bold;
  font-size: 16px;
}
@media only screen and (max-width: 768px) {
  .interview__comment__desc dt {
    margin-bottom: 0;
    font-size: 14px;
  }
}

.policy_line {
  /* min-height: calc(100vh - 151px); */
  min-height: 878px;
}

.policy_line ul li + li {
  margin: 10px 0 0;
}


@media only screen and (max-width: 768px) {
  .policy_line {
    min-height: auto;
  }
}

/* 確認画面 */
#confirm {
  position: fixed;
  width: calc(100% - 250px);
  height: 100%;
  background: #FFF;
  top: 0;
  right: 0;
}
@media only screen and (max-width: 1200px) {
  #confirm {
    width: 100%;
    padding: 0 15px;
  }
}
#confirm .confirm-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
}
#confirm .confirm-conts {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #confirm .confirm-conts {
    width: 100%;
    font-size: 12px;
  }
}
#confirm .confirm-text {
  font-size: 18px;
  margin-top: 80px;
}
@media only screen and (max-width: 768px) {
  #confirm .confirm-text {
    margin-top: 25px;
  }
}
#confirm .confirm-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
  margin-top: 30px;
}
@media only screen and (max-width: 768px) {
  #confirm .confirm-btn {
    gap: 0;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  #confirm .confirm-btn__item {
    width: 47.68115942%;
  }
}
#confirm .btn.style2 a {
  background: #333;
  border-color: #333;
  color: #fff;
}