@charset "UTF-8";
/******************************************************

old style

******************************************************/
/******************************************************

fonts

******************************************************/
/*! ALL ***************************************************/
html {
  /* font-size: 62.5%; 62.5% 10px 1em */
  scroll-behavior: smooth;
}

html:not(:has(.renewal)) {

body {
  font-family: "Noto Sans JP", sans-serif;
  -webkit-text-size-adjust: none;
}

img {
  vertical-align: top;
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  backface-visibility: hidden;
}
a img {
  backface-visibility: hidden;
}

input {
  cursor: pointer;
}

#wrapper {
  position: relative;
  width: 100%;
}

.animation {
  transform: translate(0px, 10px);
  opacity: 0;
  transition: opacity 1s ease, transform 1s ease;
  backface-visibility: hidden;
}
.animation.active {
  transform: translate(0%, 0%);
  opacity: 1;
}

footer{
  &.landi-toc-footer{
        background: #da380c;
    padding: 80px 0 40px;
  }
}

article {
  padding-bottom: 160px;
}
article.no_bottom {
  padding-bottom: 0;
}
article section {
  width: auto;
  overflow: hidden;
}
article section.nohidden {
  overflow: visible;
}

@media screen and (max-width: 740px) {
  article {
    padding-bottom: 60px;
  }
  article.no_bottom {
    padding-bottom: 0;
  }
}
/*! SP ***************************************************/
@media screen and (max-width: 740px) {
  body {
    min-width: 320px;
    font-size: 1.4rem;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  .pc {
    display: none !important;
  }
}
@media screen and (min-width: 751px) {
  body {
    &:not(.renewal) #wrapper {
      min-width: 1200px;
    }
  }
  .sp {
    display: none !important;
  }
}
/* header {
  width: 100%;
  height: 90px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  position: relative;
}
header .logo {
  padding-left: 37px;
}
header .logo svg {
  width: 153px;
  height: 40px;
}
header .header_btn {
  width: 220px;
  height: 40px;
  border-radius: 20px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: 600;
  margin-left: auto;
  margin-right: 20px;
}
header .header_btn.wide {
  width: 260px;
}
header .header_btn + .header_btn {
  margin-left: 0;
}
header #menu {
  width: 90px;
  height: 90px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #323232;
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
header #menu > span {
  width: 48px;
  height: 48px;
  position: relative;
}
header #menu > span span {
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #fff;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  position: absolute;
}
header #menu > span span.c1 {
  left: 3px;
  top: 3px;
}
header #menu > span span.c2 {
  left: 19.5px;
  top: 3px;
}
header #menu > span span.c3 {
  left: 36px;
  top: 3px;
}
header #menu > span span.c4 {
  left: 3px;
  top: 19.5px;
}
header #menu > span span.c5 {
  left: 19.5px;
  top: 19.5px;
}
header #menu > span span.c6 {
  left: 36px;
  top: 19.5px;
}
header #menu > span span.c7 {
  left: 3px;
  top: 36px;
}
header #menu > span span.c8 {
  left: 19.5px;
  top: 36px;
}
header #menu > span span.c9 {
  left: 36px;
  top: 36px;
}
header #menu:hover {
  background: #000;
}
header #menu:hover span.c1, header #menu:hover span.c2, header #menu:hover span.c3, header #menu:hover span.c4, header #menu:hover span.c5, header #menu:hover span.c6, header #menu:hover span.c7, header #menu:hover span.c8, header #menu:hover span.c9 {
  left: 19.5px;
  top: 19.5px;
}
header #menu.on > span {
  width: 48px;
  height: 48px;
  position: relative;
}
header #menu.on > span span.c1 {
  left: 19.5px;
  top: 19.5px;
}
header #menu.on > span span.c2 {
  left: 19.5px;
  top: 19.5px;
}
header #menu.on > span span.c3 {
  left: 19.5px;
  top: 19.5px;
}
header #menu.on > span span.c4 {
  left: 19.5px;
  top: 19.5px;
}
header #menu.on > span span.c5 {
  left: -1px;
  top: 21px;
  width: 50px;
  height: 6px;
  border-radius: 3px;
  transform: rotate(45deg);
  opacity: 1;
}
header #menu.on > span span.c6 {
  left: -1px;
  top: 21px;
  width: 50px;
  height: 6px;
  border-radius: 3px;
  transform: rotate(-45deg);
  opacity: 1;
}
header #menu.on > span span.c7 {
  left: 19.5px;
  top: 19.5px;
}
header #menu.on > span span.c8 {
  left: 19.5px;
  top: 19.5px;
}
header #menu.on > span span.c9 {
  left: 19.5px;
  top: 19.5px;
}

@media screen and (max-width: 740px) {
  header {
    height: 50px;
  }
  header .logo {
    padding-left: 10px;
    display: block;
  }
  header .logo svg {
    width: auto;
    height: 30px;
  }
  header .header_btn.wide {
    display: none;
  }
  header .header_btn.login {
    width: 120px;
    height: 30px;
    border-radius: 15px;
    margin-right: 10px;
    font-size: 1.1rem;
  }
  header #menu {
    width: 50px;
    height: 50px;
  }
  header #menu > span {
    width: 26px;
    height: 26px;
  }
  header #menu > span span {
    width: 6px;
    height: 6px;
  }
  header #menu > span span.c1 {
    left: 0;
    top: 0;
  }
  header #menu > span span.c2 {
    left: 10px;
    top: 0;
  }
  header #menu > span span.c3 {
    left: 20px;
    top: 0;
  }
  header #menu > span span.c4 {
    left: 0;
    top: 10px;
  }
  header #menu > span span.c5 {
    left: 10px;
    top: 10px;
  }
  header #menu > span span.c6 {
    left: 20px;
    top: 10px;
  }
  header #menu > span span.c7 {
    left: 0;
    top: 20px;
  }
  header #menu > span span.c8 {
    left: 10px;
    top: 20px;
  }
  header #menu > span span.c9 {
    left: 20px;
    top: 20px;
  }
  header #menu:hover span.c1 {
    left: 10px;
    top: 10px;
  }
  header #menu:hover span.c2 {
    left: 10px;
    top: 10px;
  }
  header #menu:hover span.c3 {
    left: 10px;
    top: 10px;
  }
  header #menu:hover span.c4 {
    left: 10px;
    top: 10px;
  }
  header #menu:hover span.c5 {
    left: 10px;
    top: 10px;
  }
  header #menu:hover span.c6 {
    left: 10px;
    top: 10px;
  }
  header #menu:hover span.c7 {
    left: 10px;
    top: 10px;
  }
  header #menu:hover span.c8 {
    left: 10px;
    top: 10px;
  }
  header #menu:hover span.c9 {
    left: 10px;
    top: 10px;
  }
  header #menu.on > span {
    width: 26px;
    height: 26px;
  }
  header #menu.on > span span.c1 {
    left: 10px;
    top: 10px;
  }
  header #menu.on > span span.c2 {
    left: 10px;
    top: 10px;
  }
  header #menu.on > span span.c3 {
    left: 10px;
    top: 10px;
  }
  header #menu.on > span span.c4 {
    left: 10px;
    top: 10px;
  }
  header #menu.on > span span.c5 {
    left: -1px;
    top: 11px;
    width: 28px;
    height: 4px;
    border-radius: 1.5px;
  }
  header #menu.on > span span.c6 {
    left: -1px;
    top: 11px;
    width: 28px;
    height: 4px;
    border-radius: 1.5px;
  }
  header #menu.on > span span.c7 {
    left: 10px;
    top: 10px;
  }
  header #menu.on > span span.c8 {
    left: 10px;
    top: 10px;
  }
  header #menu.on > span span.c9 {
    left: 10px;
    top: 10px;
  }
} */
#slideMenu {
  visibility: hidden;
  opacity: 0;
  transform: translateY(10px);
  position: absolute;
  right: 0;
  top: 90px;
  width: 376px;
  transition: all 0.2s ease;
  pointer-events: none;
}
#slideMenu.open {
  visibility: visible;
  z-index: 100;
  transform: translateY(0px);
  opacity: 1;
  pointer-events: auto;
  transition: all 0.5s ease;
  backface-visibility: hidden;
}
#slideMenu ul li {
  border-bottom: #464646 solid 1px;
}
#slideMenu ul li a {
  width: 100%;
  height: 54px;
  padding-left: 50px;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  color: #fff;
  font-size: 1.8rem;
  background: #323232;
}
#slideMenu ul li.sub a {
  padding-left: 74px;
  background: #3c3c3c;
}

@media screen and (max-width: 740px) {
  #slideMenu {
    top: 50px;
    width: 100%;
  }
  #slideMenu ul li a {
    width: 100%;
    height: 44px;
    padding-left: 30px;
    font-size: 1.6rem;
  }
  #slideMenu ul li.sub a {
    padding-left: 54px;
  }
}
.title {
  width: 100%;
  height: 500px;
  background: url(../img/title.jpg) no-repeat center center;
  background-size: cover;
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.title h1 {
  width: 341px;
  height: 215px;
  background: rgba(255, 255, 255, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 42px;
}

@media screen and (max-width: 740px) {
  .title {
    width: 100%;
    height: 250px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .title h1 {
    width: 220px;
    height: 170px;
    margin-left: 0;
  }
  .title h1 img {
    width: 160px;
    height: auto;
  }
}
.about_box {
  width: 848px;
  height: 202px;
  background: #e6e6e6;
  margin: 70px auto;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.about_box .about_box_ttl {
  position: absolute;
  left: -60px;
  top: 50%;
  transform: translateY(-50%);
  width: 225px;
  padding: 20px 0;
  background: #da380c;
  color: #fff;
  text-align: center;
}
.about_box .about_box_ttl em {
  display: block;
  font-family: "Roboto", sans-serif;
  font-size: 2.6rem;
  line-height: 1;
}
.about_box .about_box_ttl span {
  font-size: 1.4rem;
}
.about_box p {
  text-align: left;
  font-weight: 400;
}
.about_box .more {
  position: absolute;
  right: 0;
  bottom: 0;
}

@media screen and (max-width: 740px) {
  .about_box {
    width: 100%;
    height: auto;
    padding-bottom: 40px;
    background: #e6e6e6;
    margin: 70px auto;
    position: relative;
    display: block;
  }
  .about_box .about_box_ttl {
    position: static;
    transform: translateY(-50%);
    width: 125px;
    padding: 10px;
    margin: 0 auto;
  }
  .about_box .about_box_ttl em {
    font-size: 2rem;
    line-height: 1;
  }
  .about_box .about_box_ttl span {
    font-size: 1.2rem;
  }
  .about_box p {
    text-align: center;
    font-weight: 400;
  }
  .about_box .more {
    position: absolute;
    right: calc(50% - 100px);
    bottom: -16px;
  }
}
.more {
  width: 200px;
  height: 32px;
  background: #646464;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  transition: all 0.5s ease;
  backface-visibility: hidden;
}
.more:before {
  content: ">";
  font-family: "Roboto", sans-serif;
  font-size: 1.5rem;
  position: absolute;
  right: 10px;
  top: 50%;
  font-weight: normal;
  transform: translateY(-50%);
  color: #fff;
}
.more span {
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 1.4rem;
  font-weight: normal;
  padding-left: 10px;
}
.more:hover {
  background: #da380c;
}
.more:hover:before {
  animation: arrow 1.5s cubic-bezier(1, 0, 0, 1) 1;
}
@keyframes arrow {
  0% {
    transform: translateY(-50%) scale(1, 1);
    transform-origin: 100% 0;
  }
  50% {
    transform: translateY(-50%) scale(0, 1);
    transform-origin: 100% 0;
  }
  50.1% {
    transform: translateY(-50%) scale(0, 1);
    transform-origin: 0 0;
  }
  100% {
    transform: translateY(-50%) scale(1, 1);
    transform-origin: 0 0;
  }
}

.sect_ttl {
  width: 306px;
  height: 70px;
  margin: 100px auto 50px;
  border-top: #da380c solid 6px;
  border-left: #da380c solid 6px;
  box-sizing: border-box;
  text-align: center;
  padding-top: 7px;
  position: relative;
}
.sect_ttl:before {
  content: "";
  position: absolute;
  left: 7px;
  top: 7px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 40px 40px 0 0;
  border-color: #d5d5d5 transparent transparent transparent;
}
.sect_ttl em {
  display: block;
  line-height: 1;
  font-size: 3.4rem;
  font-family: "JetBrains Mono", monospace;
}
.sect_ttl small {
  padding-top: 2px;
  display: block;
  line-height: 1;
  font-size: 1.4rem;
  color: #707070;
}

@media screen and (max-width: 740px) {
  .sect_ttl {
    width: 243px;
    height: 50px;
    margin: 50px auto 25px;
    border-top: #da380c solid 4px;
    border-left: #da380c solid 4px;
    padding-top: 5px;
  }
  .sect_ttl:before {
    left: 5px;
    top: 5px;
    border-width: 30px 30px 0 0;
  }
  .sect_ttl em {
    font-size: 2.4rem;
  }
  .sect_ttl small {
    padding-top: 2px;
    font-size: 1.2rem;
  }
}
.sect_ttl + p {
  text-align: center;
  padding-bottom: 40px;
}

@media screen and (max-width: 740px) {
  .sect_ttl + p {
    text-align: center;
    padding-bottom: 20px;
  }
}
.btn_box .btn {
  width: 400px;
  overflow: hidden;
  height: 90px;
  position: relative;
  background: #000000;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.btn_box .btn:before {
  content: ">";
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  position: absolute;
  right: 10px;
  top: 50%;
  font-weight: 400;
  transform: translateY(-50%);
  color: #fff;
}
.btn_box .btn:after {
  position: absolute;
  left: -18px;
  top: -18px;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 100px 100px 0 0;
  border-color: #505050 transparent transparent transparent;
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.btn_box .btn span {
  padding-left: 20px;
  position: relative;
  z-index: 2;
}
.btn_box .btn span em {
  display: block;
  line-height: 1;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 2.6rem;
  letter-spacing: 2px;
  font-weight: 600;
  padding-bottom: 6px;
}
.btn_box .btn span small {
  display: block;
  line-height: 1;
  font-size: 1.4rem;
  color: #fff;
}
.btn_box .btn:hover {
  background: #da380c;
}
.btn_box .btn:hover:before {
  animation: arrow 1.5s cubic-bezier(1, 0, 0, 1) 1;
}
.btn_box .btn:hover:after {
  border-color: #fff transparent transparent transparent;
  transform: translate(18px, 18px);
  opacity: 0.1;
}

@media screen and (max-width: 740px) {
  .btn_box .btn {
    width: 260px;
    height: 50px;
  }
  .btn_box .btn:before {
    font-size: 1.6rem;
  }
  .btn_box .btn span {
    padding-left: 10px;
  }
  .btn_box .btn span em {
    font-size: 2rem;
    letter-spacing: 1px;
    padding-bottom: 3px;
  }
  .btn_box .btn span small {
    display: block;
    line-height: 1;
    font-size: 1.1rem;
    color: #fff;
  }
  .btn_box .btn:hover {
    background: #da380c;
  }
  .btn_box .btn:hover:before {
    animation: arrow 1.5s cubic-bezier(1, 0, 0, 1) 1;
  }
  .btn_box .btn:hover:after {
    border-color: #fff transparent transparent transparent;
    transform: translate(18px, 18px);
    opacity: 0.1;
  }
}
/* .service {
  width: 100%;
  background: #f0f0f0;
  padding: 60px 0 50px;
  position: relative;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.service:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  border-width: 512px 512px 0 0;
  border-style: solid;
  border-color: #da380c transparent transparent transparent;
}
.service:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  border-width: 0 0 194px 194px;
  border-style: solid;
  border-color: transparent transparent #da380c transparent;
}
.service .item {
  width: 480px;
  background: #fff;
  box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.3);
  position: relative;
  margin-bottom: 60px;
  z-index: 10;
}
.service .item .cover {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
}
.service .item .cover:hover ~ figure img {
  filter: brightness(110%);
}
.service .item .cover:hover ~ .more {
  background: #da380c;
}
.service .item .cover:hover ~ .more:before {
  animation: arrow 1.5s cubic-bezier(1, 0, 0, 1) 1;
}
.service .item figure img {
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.service .item .name {
  padding: 40px 40px 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.service .item .name em {
  width: 108px;
  height: 26px;
  background: #da380c;
  border-radius: 4px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 1.4rem;
  margin-left: 20px;
}
.service .item p {
  padding: 40px 40px 80px;
}
.service .item .more {
  position: absolute;
  right: 0;
  bottom: 0;
}
.service .item + .item {
  margin-left: 40px;
}
.service .btn_box {
  width: 100%;
}

@media screen and (max-width: 740px) {
  .service {
    padding: 30px 20px;
    box-sizing: border-box;
    display: block;
  }
  .service .item {
    width: 100%;
    background: #fff;
    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.3);
    position: relative;
    margin-bottom: 30px;
  }
  .service .item .name {
    padding: 20px 20px 0;
    display: block;
    text-align: center;
  }
  .service .item .name img {
    width: 160px;
  }
  .service .item .name em {
    width: 108px;
    height: 20px;
    margin: 10px auto;
    border-radius: 2px;
    font-size: 1.1rem;
  }
  .service .item p {
    padding: 20px 20px 40px;
  }
  .service .item + .item {
    margin-left: 0px;
  }
  .service .btn_box {
    width: 100%;
  }
} */
/* .news_category {
  width: 880px;
  margin: 20px auto 0;
}
.news_category .toggle {
  display: none;
}
.news_category .category_list {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.news_category .category_list li {
  width: 20%;
}
.news_category .category_list li a {
  display: block;
  text-align: center;
  padding: 10px 0;
  border-bottom: #ccc solid 1px;
  font-family: "JetBrains Mono", monospace;
}
.news_category .category_list li a.current {
  color: #da380c;
  border-color: #da380c;
}
.news_category .category_list li a:hover {
  border-color: #da380c;
}

@media screen and (min-width: 751px) {
  .news_category .category_list {
    display: flex !important;
  }
}
@media screen and (max-width: 740px) {
  .news_category {
    width: calc(100% - 40px);
    box-sizing: border-box;
    margin: 20px auto 0;
    position: relative;
  }
  .news_category .toggle {
    width: 100%;
    height: 32px;
    border-radius: 16px;
    background: #f9f8f8;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-family: "JetBrains Mono", monospace;
    position: relative;
  }
  .news_category .toggle:before {
    content: "\e91b";
    font-family: "icomoon";
    font-size: 1.5rem;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
  }
  .news_category .category_list {
    display: none;
    position: absolute;
    left: 0;
    top: calc(100% + 10px);
    width: 100%;
    z-index: 10;
    flex-direction: column;
    background: #f9f8f8;
    border-radius: 10px;
  }
  .news_category .category_list li {
    width: 100%;
  }
  .news_category .category_list li a {
    display: block;
    text-align: center;
    padding: 6px;
    border-style: dotted;
  }
  .news_category .category_list li a.current {
    color: #da380c;
    border-color: #ccc;
  }
  .news_category .category_list li:last-child a {
    border: 0;
  }
}
.news {
  width: 880px;
  margin: 0 auto;
}
.news .item {
  padding: 20px 80px 20px 20px;
  border-bottom: #da380c solid 1px;
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
.news .item a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.news .item a:hover {
  background: rgba(217, 58, 14, 0.02);
}
.news .item a:hover:before {
  animation: arrow 1.5s cubic-bezier(1, 0, 0, 1) 1;
}
.news .item a:before {
  content: ">";
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  position: absolute;
  right: 10px;
  top: 50%;
  font-weight: 400;
  transform: translateY(-50%);
  color: #da380c;
}
.news .item em {
  font-size: 1.8rem;
  font-weight: 600;
}
.news .item .tag {
  width: 112px;
  height: 22px;
  background: #f5f5f5;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.1rem;
  margin-left: 10px;
  color: #da380c;
  font-family: "JetBrains Mono", monospace;
  font-weight: normal;
}
.news .item .text {
  width: 100%;
  box-sizing: border-box;
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.news .item .text h3 {
  font-size: 1.8rem;
}
.news .item:first-child {
  border-top: #da380c solid 1px;
}
.news .more {
  margin-left: auto;
  margin-top: 40px;
}

@media screen and (max-width: 740px) {
  .news {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
  }
  .news .item {
    padding: 10px 30px 10px 0;
  }
  .news .item em {
    font-size: 1.5rem;
    font-weight: 600;
  }
  .news .item .tag {
    width: 102px;
    height: 20px;
    font-size: 1rem;
  }
  .news .item .text {
    padding-left: 0px;
  }
  .news .item .text h3 {
    font-size: 1.6rem;
  }
  .news .more {
    margin: 20px auto 0;
  }
} */
.recruit {
  /* width: 881px; */
  margin: 0 auto;
}
.recruit .btn_box {
  margin-top: -40px;
}

@media screen and (max-width: 740px) {
  .recruit {
    width: 100%;
    margin: 0 auto;
  }
  .recruit .btn_box {
    margin-top: -20px;
  }
}
.magazine {
  margin: 158px 0 0;
  width: 100%;
  padding: 50px 0 100px;
  background: #f0f0f0;
  position: relative;
  overflow: visible;
}
.magazine h2 {
  text-align: center;
  margin-bottom: 40px;
}
.magazine h2 em {
  display: block;
  line-height: 1;
  color: #da380c;
  font-family: "JetBrains Mono", monospace;
  font-size: 4.4rem;
  letter-spacing: 4px;
}
.magazine h2 small {
  display: block;
  line-height: 1;
  color: #707070;
  font-size: 1.4rem;
  padding-top: 10px;
}
.magazine .magazine_box {
  width: 1000px;
  margin: 0 auto;
  border-top: #da380c solid 6px;
  padding-top: 35px;
  display: flex;
  justify-content: flex-start;
}
.magazine .magazine_box .item {
  width: 310px;
  background: #fff;
  position: relative;
}
.magazine .magazine_box .item a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
}
.magazine .magazine_box .item a:hover ~ figure img {
  filter: brightness(110%);
}
.magazine .magazine_box .item figure img {
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.magazine .magazine_box .item .text {
  padding: 22px;
}
.magazine .magazine_box .item .text h3 {
  color: #da380c;
  font-weight: 600;
  font-size: 1.4rem;
}
.magazine .magazine_box .item + .item {
  margin-left: 35px;
}
.magazine .btn_box {
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -45px;
}

@media screen and (max-width: 740px) {
  .magazine {
    margin: 50px 0 0;
    width: 100%;
    padding: 40px 20px 50px;
    box-sizing: border-box;
    background: #f0f0f0;
    position: relative;
  }
  .magazine h2 {
    text-align: center;
    margin-bottom: 20px;
  }
  .magazine h2 em {
    font-size: 3.4rem;
    letter-spacing: 2px;
  }
  .magazine h2 small {
    font-size: 1.1rem;
  }
  .magazine .magazine_box {
    width: 100%;
    margin: 0 auto;
    border-top: #da380c solid 3px;
    padding-top: 20px;
    display: block;
  }
  .magazine .magazine_box .item {
    width: 100%;
  }
  .magazine .magazine_box .item figure img {
    width: 100%;
  }
  .magazine .magazine_box .item .text {
    padding: 20px;
  }
  .magazine .magazine_box .item + .item {
    margin-left: 0;
    margin-top: 20px;
  }
  .magazine .btn_box {
    position: static;
    margin-top: 20px;
  }
}
/* footer .copyright {
  color: white;
  text-align: center;
  font-size: 0.7rem;
}
footer .site_map {
  width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
footer .site_map ul {
  width: 33%;
  line-height: 3;
}
footer .site_map ul li {
  color: #fff;
}
footer .site_map ul li.sub {
  padding-left: 1em;
}
footer .site_map ul li a {
  color: #fff;
}
footer .site_map ul li a:hover {
  text-decoration: underline;
}
footer .f_logo {
  text-align: center;
  padding-top: 40px;
}
footer .f_logo .svg {
  width: 166px;
  height: 41px;
}
footer .f_logo .svg path {
  fill: #fff;
  stroke: #fff;
}

@media screen and (max-width: 740px) {
  footer {
    background: #da380c;
    padding: 20px;
  }
  footer .copyright {
    color: white;
    text-align: center;
    font-size: 0.7rem;
  }
  footer .site_map {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  footer .site_map ul {
    width: 50%;
    line-height: 3;
  }
}
@media screen and (max-width: 740px) and (max-width: 340px) {
  footer .site_map ul {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 740px) {
  footer .f_logo {
    text-align: center;
    padding-top: 20px;
  }
  footer .f_logo .svg {
    width: 166px;
    height: 41px;
  }
} */
.ttl_landi {
  width: 100%;
  height: 500px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../img/map.webp) no-repeat center center;
  background-size: cover;
  position: relative;
}
.ttl_landi .ttl_landi_txt {
  text-align: center;
}
.ttl_landi .ttl_landi_txt h1 em {
  display: block;
  font-weight: bold;
  font-size: 2.6rem;
  line-height: 1.5;
  margin-bottom: 15px;
}
.ttl_landi .ttl_landi_txt .btn_box {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 68px;
}
.ttl_landi .ttl_landi_txt .btn_box .red_btn_login,
.ttl_landi .ttl_landi_txt .btn_box .red_btn_regist {
  width: 340px;
  height: 60px;
  border-radius: 30px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
}
.ttl_landi .ttl_landi_txt .btn_box .red_btn_login em,
.ttl_landi .ttl_landi_txt .btn_box .red_btn_regist em {
  width: 60px;
  height: 36px;
  background: #fff;
  border-radius: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  font-weight: bold;
  color: #da380c;
  margin-right: 10px;
}
.ttl_landi .ttl_landi_txt .btn_box .red_btn_login span,
.ttl_landi .ttl_landi_txt .btn_box .red_btn_regist span {
  display: block;
  line-height: 1;
  font-size: 2.2rem;
  font-weight: bold;
  color: #fff;
}
.ttl_landi .ttl_landi_txt .btn_box .red_btn_regist {
  margin-left: 40px;
}
.ttl_landi small {
  position: absolute;
  left: calc(50% + 20px);
  bottom: 60px;
  font-size: 1.2rem;
  color: #da380c;
}

@media screen and (max-width: 740px) {
  .ttl_landi {
    width: 100%;
    padding: 50px 0;
    height: auto;
    display: block;
    background: url(../img/map.webp) no-repeat center center;
  }
  .ttl_landi .ttl_landi_txt {
    text-align: center;
  }
  .ttl_landi .ttl_landi_txt h1 {
    width: 240px;
    margin: 0 auto;
  }
  .ttl_landi .ttl_landi_txt h1 em {
    display: block;
    font-weight: bold;
    font-size: 1.6rem;
  }
  .ttl_landi .ttl_landi_txt .btn_box {
    display: block;
    margin-top: 0px;
    padding: 20px;
  }
  .ttl_landi .ttl_landi_txt .btn_box .red_btn_login,
  .ttl_landi .ttl_landi_txt .btn_box .red_btn_regist {
    width: 100%;
    height: 50px;
    border-radius: 25px;
  }
  .ttl_landi .ttl_landi_txt .btn_box .red_btn_login em,
  .ttl_landi .ttl_landi_txt .btn_box .red_btn_regist em {
    width: 50px;
    height: 36px;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.2rem;
    font-weight: bold;
    color: #da380c;
  }
  .ttl_landi .ttl_landi_txt .btn_box .red_btn_login span,
  .ttl_landi .ttl_landi_txt .btn_box .red_btn_regist span {
    font-size: 1.8rem;
  }
  .ttl_landi .ttl_landi_txt .btn_box .red_btn_regist {
    margin-left: 0px;
    margin-top: 20px;
  }
  .ttl_landi small {
    position: absolute;
    left: 0px;
    bottom: 40px;
    padding: 0px;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    display: block;
    line-height: 1.5;
    font-size: 1.1rem;
  }
}
.Breadcrumb {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 10px;
  font-size: 1.3rem;
}
.Breadcrumb li a {
  color: #0076ff;
}
.Breadcrumb li + li:before {
  content: ">";
  margin: 0 8px;
}

@media screen and (max-width: 740px) {
  .Breadcrumb {
    font-size: 1.1rem;
    padding-left: 10px !important;
  }
  .Breadcrumb li + li:before {
    margin: 0 5px;
  }
}
.sect_ttl_02 {
  margin: 100px 0 50px;
  text-align: center;
  position: relative;
}
.sect_ttl_02:before {
  content: "";
  position: absolute;
  left: calc(50% - 10px);
  top: 40px;
  width: 20px;
  height: 4px;
  background: #da380c;
  border-radius: 2px;
}
.sect_ttl_02 span {
  display: block;
  line-height: 1;
  color: #da380c;
  font-family: "JetBrains Mono", monospace;
  font-size: 2rem;
  padding-bottom: 40px;
}
.sect_ttl_02 em {
  display: block;
  text-align: center;
  font-size: 2.8rem;
  font-weight: 600;
  line-height: 1.5;
}

.sect_ttl_02 + p {
  text-align: center;
  margin-bottom: 50px;
}

.sect_ttl_02 + p.left {
  width: 800px;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
  text-align: left;
  letter-spacing: 1px;
}

@media screen and (max-width: 740px) {
  .sect_ttl_02 {
    margin: 50px 15px 25px;
  }
  .sect_ttl_02:before {
    top: 30px;
  }
  .sect_ttl_02 span {
    font-size: 1.6rem;
    padding-bottom: 30px;
  }
  .sect_ttl_02 em {
    font-size: 2rem;
  }
  .sect_ttl_02 + p {
    text-align: center;
    padding: 0 20px;
    margin-bottom: 50px;
  }
}
.triangle_bg {
  text-align: center;
  width: 100%;
  padding: 76px 0;
  box-sizing: border-box;
  background: #f0f0f0;
  position: relative;
}
.triangle_bg:before {
  content: "";
  position: absolute;
  z-index: 0;
  left: 0;
  top: 0;
  border-width: 512px 512px 0 0;
  border-style: solid;
  border-color: #d5d5d5 transparent transparent transparent;
}
.triangle_bg:after {
  content: "";
  position: absolute;
  z-index: 0;
  right: 0;
  bottom: 0;
  border-width: 0 0 194px 194px;
  border-style: solid;
  border-color: transparent transparent #d5d5d5 transparent;
}

@media screen and (max-width: 740px) {
  .triangle_bg {
    padding: 40px 20px;
  }
  .triangle_bg:before {
    border-width: 206px 206px 0 0;
  }
  .triangle_bg:after {
    border-width: 0 0 96px 96px;
  }
}
.point_list {
  width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 10;
}
.point_list .item {
  width: 300px;
  padding: 10px;
  box-sizing: border-box;
  background: #fff;
  box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.29);
  position: relative;
}
.point_list .item em {
  width: 66px;
  height: 66px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "JetBrains Mono", monospace;
  font-weight: 700;
  color: #fff;
  font-size: 3.4rem;
}
.point_list .item figure {
  height: 180px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.point_list .item p {
  padding: 0 20px 20px;
}
.point_list .item .stamp {
  position: absolute;
  right: 20px;
  bottom: -20px;
  width: 100px;
  height: 100px;
  background: #fff;
  border-radius: 50%;
  border: #da380c solid 3px;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #da380c;
  font-weight: bold;
  line-height: 1.5;
  font-size: 1.8rem;
}

.poiint_text {
  padding-top: 60px;
  width: 800px;
  margin: 0 auto;
}
.poiint_text p {
  margin-bottom: 60px;
}
.poiint_text .red_btn_use {
  width: 480px;
  height: 80px;
  border-radius: 40px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  position: relative;
}
.poiint_text .red_btn_use em {
  width: 60px;
  height: 60px;
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #da380c;
  font-weight: bold;
  position: absolute;
  left: 10px;
  top: 10px;
}
.poiint_text .red_btn_use span {
  color: #fff;
  font-weight: 600;
  font-size: 2.8rem;
}
.poiint_text .red_btn_use + small {
  display: block;
  line-height: 1;
  padding-top: 15px;
}

@media screen and (max-width: 740px) {
  .point_list {
    width: 100%;
    display: block;
  }
  .point_list .item {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.29);
    margin-bottom: 20px;
  }
  .point_list .item em {
    width: 46px;
    height: 46px;
    position: relative;
    z-index: 10;
    font-size: 2rem;
  }
  .point_list .item figure {
    height: 120px;
    width: 100%;
  }
  .point_list .item p {
    padding: 0 20px 20px;
  }
  .point_list .item .stamp {
    position: absolute;
    right: 10px;
    bottom: auto;
    top: 10px;
    width: 80px;
    height: 80px;
    border: #da380c solid 2px;
    line-height: 1.5;
    font-size: 1.5rem;
  }
  .poiint_text {
    padding-top: 0px;
    width: 100%;
    margin: 0 auto;
  }
  .poiint_text p {
    margin-bottom: 20px;
  }
  .poiint_text .red_btn_use {
    width: 100%;
    height: 60px;
    border-radius: 30px;
  }
  .poiint_text .red_btn_use em {
    width: 40px;
    height: 40px;
    left: 10px;
    top: 10px;
  }
  .poiint_text .red_btn_use span {
    color: #fff;
    font-weight: 600;
    font-size: 1.8rem;
  }
  .poiint_text .red_btn_use + small {
    display: block;
    line-height: 1;
    padding-top: 15px;
    font-size: 1.2rem;
  }
}
.step_list {
  width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 10;
}
.step_list .item {
  width: 300px;
  padding: 10px 10px 0;
  box-sizing: border-box;
  background: #fff;
  box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.29);
  position: relative;
  margin-bottom: 70px;
}
.step_list .item em {
  width: 66px;
  height: 66px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "JetBrains Mono", monospace;
  font-weight: 700;
  color: #fff;
  font-size: 3.4rem;
}
.step_list .item p {
  padding: 30px 0;
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.5;
}
.step_list .item .item_inner {
  width: calc(100% + 20px);
  margin-left: -10px;
  height: 220px;
  padding: 0 20px;
  box-sizing: border-box;
  background: #e6e6e6;
  display: flex;
  justify-content: center;
  align-items: center;
}
.step_list .item .item_inner .selectBox_cover {
  width: 100%;
}
.step_list .item .item_inner .selectBox_cover .selectBox {
  display: block;
  overflow: hidden;
  position: relative;
}
.step_list .item .item_inner .selectBox_cover .selectBox select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: medium none;
  border-radius: 0px;
  box-sizing: border-box;
  font-size: 1.6rem;
  height: 50px;
  margin: 0;
  padding: 0 20px;
  box-sizing: border-box;
  background: #fff;
  border: none;
  padding-right: 50px;
  color: #323232;
  width: 100%;
  max-width: none;
  box-shadow: none;
  border-radius: 25px;
  background: #fff;
}
.step_list .item .item_inner .selectBox_cover .selectBox select option {
  color: #323232;
  text-align: center;
}
.step_list .item .item_inner .selectBox_cover .selectBox:after {
  background: #fff;
  color: #323232;
  content: "▼";
  font-size: 1rem;
  height: 100%;
  line-height: 50px;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  text-align: center;
  width: 50px;
  border-radius: 25px;
  box-sizing: border-box;
  border: 0;
  display: inline-block;
}
.step_list .item .item_inner .selectBox_cover .selectBox + .selectBox {
  margin-top: 40px;
}

@media screen and (max-width: 740px) {
  .step_list {
    width: 100%;
    display: block;
  }
  .step_list .item {
    width: 100%;
    padding: 10px 10px 0;
    box-sizing: border-box;
    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.29);
    margin-bottom: 20px;
  }
  .step_list .item em {
    width: 46px;
    height: 46px;
    position: relative;
    z-index: 10;
    font-size: 2rem;
  }
  .step_list .item p {
    padding: 15px 0;
    font-size: 1.6rem;
  }
  .step_list .item .item_inner {
    height: auto;
    padding: 20px;
  }
  .step_list .item .item_inner .selectBox_cover {
    width: 100%;
  }
  .step_list .item .item_inner .selectBox_cover .selectBox + .selectBox {
    margin-top: 20px;
  }
}
.red_btn_large {
  width: 480px;
  height: 80px;
  border-radius: 40px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
.red_btn_large.long {
  width: 580px;
}
.red_btn_large span {
  color: #fff;
  font-size: 2.8rem;
  font-weight: bold;
}

.red_btn_large + small {
  display: block;
  width: 100%;
  line-height: 1;
  text-align: center;
  font-size: 1.4rem;
  margin-top: 20px;
}

@media screen and (max-width: 740px) {
  .red_btn_large {
    width: 100%;
    max-width: calc(100vw - 40px);
    height: 60px;
    border-radius: 30px;
    position: relative;
    z-index: 10;
  }
  .red_btn_large.long {
    width: 100%;
  }
  .red_btn_large span {
    color: #fff;
    font-weight: 600;
    font-size: 1.8rem;
  }
  .red_btn_large + small {
    font-size: 1.1rem;
    margin-top: 10px;
  }
}
.account_flow {
  width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 10;
}
.account_flow .item {
  width: 300px;
  padding: 0;
  box-sizing: border-box;
  background: #fff;
  box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.29);
  position: relative;
  margin-bottom: 70px;
}
.account_flow .item em {
  position: absolute;
  left: 10px;
  top: 10px;
  width: 66px;
  height: 66px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "JetBrains Mono", monospace;
  font-weight: 700;
  color: #fff;
  font-size: 3.4rem;
}
.account_flow .item p {
  padding: 30px;
  text-align: left;
  line-height: 2;
}
.account_flow .item .mini_btn {
  position: absolute;
  left: 50%;
  bottom: 25px;
  transform: translateX(-50%);
  width: 220px;
  height: 40px;
  border-radius: 20px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: 600;
  margin: 0 auto;
}

@media screen and (max-width: 740px) {
  .account_flow {
    width: 100%;
    display: block;
  }
  .account_flow .item {
    width: 100%;
    overflow: hidden;
    padding: 0;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.29);
    position: relative;
    margin-bottom: 20px;
  }
  .account_flow .item em {
    width: 46px;
    height: 46px;
    font-size: 2rem;
  }
  .account_flow .item figure img {
    width: 100%;
  }
  .account_flow .item p {
    padding: 20px;
    text-align: left;
    line-height: 2;
  }
  .account_flow .item .mini_btn {
    position: static;
    transform: none;
    width: 220px;
    height: 40px;
    border-radius: 20px;
    font-weight: 600;
    margin-bottom: 20px;
  }
}
.faq {
  width: 800px;
  margin: 0 auto;
}
.faq em {
  font-weight: normal;
  display: block;
  margin-bottom: 0.5em;
}
.faq .item + .item {
  margin-top: 1.5em;
}

.company_name {
  width: 800px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.company_name ul {
  width: 30%;
}
.company_name .red_btn_large {
  margin-top: 100px;
}

.Recruitment {
  width: 800px;
  margin: 0 auto;
}
.Recruitment .sect_ttl_02 {
  margin-bottom: 66px;
}
.Recruitment figure {
  width: 521px;
  margin: 0 auto;
  box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.3);
}
.Recruitment p {
  padding: 80px 0 40px;
  text-align: left;
}

@media screen and (max-width: 740px) {
  .faq {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
  }
  .company_name {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto 50px;
    display: block;
  }
  .company_name ul {
    width: 100%;
  }
  .company_name .red_btn_large {
    margin-top: 50px;
  }
  .Recruitment {
    width: 100%;
    margin: 0 auto;
  }
  .Recruitment .sect_ttl_02 {
    margin-bottom: 66px;
  }
  .Recruitment figure {
    width: 100%;
  }
  .Recruitment p {
    padding: 40px 20px 40px;
    text-align: left;
  }
}
.ttl_subpage_01 {
  width: 100%;
  height: 180px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.ttl_subpage_02 {
  width: 100%;
  height: 180px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #da380c;
  position: relative;
}
.ttl_subpage_02:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0.4;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 123px 123px 0 0;
  border-color: #d5d5d5 transparent transparent transparent;
}
.ttl_subpage_02 h1 {
  color: #fff;
  text-align: center;
}
.ttl_subpage_02 h1 em {
  display: block;
  font-family: "JetBrains Mono", monospace;
  font-size: 4.6rem;
  line-height: 1;
}
.ttl_subpage_02 h1 span {
  display: block;
  font-size: 2rem;
  line-height: 1;
  padding-top: 10px;
}

.sect_ttl_03 {
  text-align: center;
  margin: 90px 0;
}
.sect_ttl_03 em {
  display: block;
  font-weight: bold;
  font-size: 2.8rem;
}

.sect_ttl_03 + p {
  margin-top: -70px;
  margin-bottom: 90px;
  text-align: center;
}

@media screen and (max-width: 740px) {
  .ttl_subpage_01 {
    width: 100%;
    height: 120px;
  }
  .ttl_subpage_02 {
    width: 100%;
    height: 120px;
  }
  .ttl_subpage_02:before {
    border-width: 62px 62px 0 0;
  }
  .ttl_subpage_02 h1 em {
    font-size: 3rem;
  }
  .ttl_subpage_02 h1 span {
    font-size: 1.5rem;
    padding-top: 5px;
  }
  .sect_ttl_03 {
    text-align: center;
    margin: 50px 0;
  }
  .sect_ttl_03 em {
    display: block;
    font-weight: bold;
    font-size: 2rem;
  }
  .sect_ttl_03 + p {
    margin-top: -30px;
    margin-bottom: 50px;
    padding: 0 20px;
    text-align: center;
  }
}
.stores {
  width: 910px;
  margin: 0 auto;
}
.stores .stores_inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 100px;
}
.stores .stores_inner .item {
  width: 400px;
  border-bottom: #da380c solid 1px;
  text-align: center;
  padding-bottom: 50px;
}
.stores .stores_inner .item figure {
  width: 100%;
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.stores .stores_inner .item figure img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
.stores .stores_inner .item h3 {
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 40px;
}
.stores .stores_inner .item p {
  text-align: center;
  margin-bottom: 40px;
}
.stores .stores_inner .item .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 260px;
  height: 40px;
  border-radius: 20px;
  background: #da380c;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 auto;
}
.stores .stores_inner .item:nth-child(1),
.stores .stores_inner .item:nth-child(2) {
  border-top: #da380c solid 1px;
}

@media screen and (max-width: 740px) {
  .stores {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto;
  }
  .stores .stores_inner {
    display: block;
    margin-bottom: 50px;
  }
  .stores .stores_inner .item {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    padding-bottom: 25px;
  }
  .stores .stores_inner .item figure {
    width: 100%;
    height: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .stores .stores_inner .item h3 {
    font-weight: bold;
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
  .stores .stores_inner .item p {
    text-align: center;
    margin-bottom: 10px;
  }
  .stores .stores_inner .item .btn {
    width: 100%;
    font-size: 1.6rem;
  }
}
.topMargin {
  margin-top: 80px;
}

@media screen and (max-width: 740px) {
  .topMargin {
    margin-top: 40px;
  }
}
.page {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 60px;
}
.page {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #da380c;
  font-size: 2.6rem;
  font-family: "JetBrains Mono", monospace;
  font-weight: 700;
  background: #e6e6e6;
}
.page a:hover,
.page a.current {
  color: #fff;
  background: #da380c;
}
.page a + a {
  margin-left: 20px;
}

@media screen and (max-width: 740px) {
  .page {
    margin-top: 20px;
  }
  .page a {
    width: 40px;
    height: 40px;
    font-size: 1.7rem;
  }
  .page a + a {
    margin-left: 10px;
  }
}
.news_detail {
  width: 880px;
  margin: 0 auto;
  border-top: #da380c solid 1px;
}
.news_detail .date_tag {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
}
.news_detail .date_tag .date {
  line-height: 1;
  font-size: 2rem;
}
.news_detail .date_tag .tag {
  width: 112px;
  height: 22px;
  background: #f5f5f5;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.1rem;
  color: #da380c;
  font-family: "JetBrains Mono", monospace;
}
.news_detail .news_detail_inner {
  width: 600px;
  margin: 100px auto 0;
}
.news_detail .news_detail_inner h2 {
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 30px;
}
.news_detail .news_detail_inner p {
  margin-bottom: 2em;
  line-height: 2;
}
.news_detail .news_detail_inner p a {
  color: #0090ff;
  text-decoration: underline;
  font-size: 1.8rem;
}
.news_detail .news_detail_inner figure {
  text-align: center;
  margin-top: 70px;
}

@media screen and (max-width: 740px) {
  .news_detail {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
  }
  .news_detail .date_tag {
    padding: 20px 0;
  }
  .news_detail .date_tag .date {
    line-height: 1;
    font-size: 1.5rem;
  }
  .news_detail .date_tag .tag {
    width: 102px;
    height: 20px;
    font-size: 1rem;
  }
  .news_detail .news_detail_inner {
    width: 100%;
    margin: 30px auto 0;
  }
  .news_detail .news_detail_inner h2 {
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
  .news_detail .news_detail_inner p {
    margin-bottom: 1em;
    line-height: 2;
  }
  .news_detail .news_detail_inner p a {
    color: #0090ff;
    text-decoration: underline;
    font-size: 1.5rem;
  }
  .news_detail .news_detail_inner figure {
    text-align: center;
    margin-top: 35px;
  }
}
.ttl_company {
  width: 100%;
  height: 180px;
  background: url(../img/ttl_company.png) no-repeat center center;
  background-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.ttl_company:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
  background: #000;
  opacity: 0.6;
}
.ttl_company h1 {
  position: relative;
  z-index: 10;
  color: #fff;
  font-size: 3.6rem;
  font-weight: normal;
  text-align: center;
  line-height: 1.5;
}

@media screen and (max-width: 740px) {
  .ttl_company {
    width: 100%;
    height: 120px;
  }
  .ttl_company h1 {
    font-size: 2rem;
  }
}
.triangle_left {
  position: relative;
  width: auto;
  overflow: hidden;
}
.triangle_left:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 340px 340px 0 0;
  border-color: #f0f0f0 transparent transparent transparent;
}

.triangle_right {
  position: relative;
  width: auto;
  overflow: hidden;
}
.triangle_right:before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 340px 340px 0;
  border-color: transparent #f0f0f0 transparent transparent;
}

.company_page section + section {
  margin-top: 80px;
}

@media screen and (max-width: 740px) {
  .triangle_left:before {
    border-width: 170px 170px 0 0;
  }
  .triangle_right:before {
    border-width: 0 170px 170px 0;
  }
  .company_page section + section {
    margin-top: 40px;
  }
}
.message {
  width: 800px;
  margin: 0 auto;
}
.message figure {
  flex-shrink: 0;
  margin-bottom: 40px;
}
.message p {
  padding: 0 50px;
}
.message p .name {
  display: block;
  text-align: right;
  padding-top: 1em;
}

@media screen and (max-width: 740px) {
  .message {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto;
    display: block;
    text-align: center;
  }
  .message figure {
    flex-shrink: 0;
    margin-right: 0px;
    margin-bottom: 40px;
  }
  .message p {
    padding: 0;
  }
}
table.type01 {
  width: 800px;
  margin: 0 auto;
}
table.type01 th {
  text-align: right;
  font-weight: normal;
  width: 240px;
  padding-right: 20px;
  box-sizing: border-box;
}
table.type01 td {
  width: 560px;
}

@media screen and (max-width: 740px) {
  table.type01 {
    width: calc(100% - 40px);
    margin: 0 auto;
    display: block;
  }
  table.type01 tbody,
  table.type01 tr {
    display: block;
    width: 100%;
  }
  table.type01 th {
    display: block;
    width: 100%;
    font-weight: bold;
    text-align: left;
    padding-right: 0px;
    box-sizing: border-box;
  }
  table.type01 td {
    display: block;
    width: 100%;
    padding-left: 1em;
    box-sizing: border-box;
  }
}
.Group {
  width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: -80px;
}
.Group .item {
  width: 480px;
  margin-bottom: 80px;
}
.Group .item figure a {
  width: 100%;
  height: 280px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: #323232 solid 1px;
  box-sizing: border-box;
}
.Group .item p a {
  font-size: 2rem;
  color: #0077ff;
}

@media screen and (max-width: 740px) {
  .Group {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    display: block;
    margin-bottom: -40px;
  }
  .Group .item {
    width: 100%;
    margin-bottom: 40px;
  }
  .Group .item figure a {
    width: 100%;
    height: 220px;
    text-align: center;
  }
  .Group .item figure a img {
    width: 90%;
    max-height: 90px;
  }
  .Group .item figure a .gluee {
    width: 50%;
  }
  .Group .item p {
    text-align: center;
  }
  .Group .item p a {
    font-size: 1.5rem;
  }
}
.recruit_area {
  background: #f5f5f5;
  width: 100%;
  overflow: hidden;
}
.recruit_area .recruit_box {
  width: 100%;
  background: #f5f5f5;
  padding: 70px 0;
}
.recruit_area .recruit_box .recruit_box_inner {
  width: 940px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.recruit_area .recruit_box .recruit_box_inner figure {
  flex-shrink: 0;
}
.recruit_area .recruit_box .recruit_box_inner .text h3 small {
  display: inline-block;
  font-family: "JetBrains Mono", monospace;
  font-size: 1.6rem;
  position: relative;
  line-height: 1.25;
}
.recruit_area .recruit_box .recruit_box_inner .text h3 small:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #da380c;
}
.recruit_area .recruit_box .recruit_box_inner .text h3 em {
  display: block;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 1em;
}
.recruit_area .recruit_box .recruit_box_inner .text p {
  width: 550px;
  margin-bottom: 50px;
}
.recruit_area .recruit_box .recruit_box_inner .text .modal_btn {
  width: 312px;
  height: 56px;
  background: #000;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.recruit_area .recruit_box .recruit_box_inner .text .modal_btn:hover {
  background: #da380c;
}
.recruit_area .recruit_box .recruit_box_inner .text .modal_btn:before {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  width: 12px;
  height: 1px;
  background: #fff;
}
.recruit_area .recruit_box .recruit_box_inner .text .modal_btn:after {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  width: 12px;
  height: 1px;
  background: #fff;
  transform: rotate(90deg);
}
.recruit_area .recruit_box .recruit_box_inner .text .modal_btn span {
  color: #fff;
  padding-left: 15px;
}
.recruit_area .recruit_box:nth-child(2n) {
  background: #fff;
}
.recruit_area .red_btn_large {
  margin: 70px auto;
}

@media screen and (max-width: 740px) {
  .recruit_area .recruit_box {
    width: 100%;
    padding: 30px 20px;
    box-sizing: border-box;
  }
  .recruit_area .recruit_box .recruit_box_inner {
    width: 100%;
    margin: 0 auto;
    display: block;
    text-align: center;
  }
  .recruit_area .recruit_box .recruit_box_inner figure {
    flex-shrink: 0;
    margin-top: 3em;
  }
  .recruit_area .recruit_box .recruit_box_inner .text h3 small {
    display: inline-block;
    font-size: 1.2rem;
  }
  .recruit_area .recruit_box .recruit_box_inner .text h3 em {
    font-size: 2rem;
    line-height: 1.5;
    margin-bottom: 1em;
  }
  .recruit_area .recruit_box .recruit_box_inner .text p {
    width: 100%;
    text-align: left;
  }
  .recruit_area .recruit_box .recruit_box_inner .text .modal_btn {
    width: 100%;
    height: 46px;
  }
  .recruit_area .red_btn_large {
    margin: 50px auto;
  }
}
body:not(.renewal) #wrapper article.old_type {
  width: auto;
  overflow: hidden;
  padding-top: 70px;
  /*! registration ***************************************************/
}
body:not(.renewal) #wrapper article.old_type.bg {
  background: #f5f5e9;
}
body:not(.renewal) #wrapper article.old_type .Breadcrumb {
  margin-bottom: 10px;
  padding-left: 37px;
}
body:not(.renewal) #wrapper article.old_type section {
  max-width: 100%;
  width: 1000px;
  margin: 0 auto;
}
body:not(.renewal) #wrapper article.old_type section.wide {
  width: 100%;
}
body:not(.renewal) #wrapper article.old_type section.large_section {
  width: 950px;
  margin-bottom: 30px;
}
body:not(.renewal) #wrapper article.old_type section.middle_section {
  width: 900px;
  margin-bottom: 30px;
}
body:not(.renewal) #wrapper article.old_type section.narrow_section {
  width: 800px;
  margin-bottom: 30px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  section.narrow_section
  .text_box
  .pmark_wrap {
  margin-bottom: 60px;
}
body
  #wrap
  article.old_type
  section.narrow_section
  .text_box
  .pmark_wrap
  .pmark_imgtext {
  display: flex;
}
body
  #wrap
  article.old_type
  section.narrow_section
  .text_box
  .pmark_wrap
  .pmark_imgtext
  img {
  width: 160px;
  height: 160px;
  border: solid 1px rgb(200, 200, 200);
  padding: 8px 50px;
  margin-right: 20px;
}
body
  #wrap
  article.old_type
  section.narrow_section
  .text_box
  .pmark_wrap
  .pmark_imgtext
  p {
  line-height: 23px;
}
body
  #wrap
  article.old_type
  section.narrow_section
  .text_box
  .pmark_wrap
  .pnumber {
  text-align: left;
}
@media screen and (max-width: 740px) {
  body:not(.renewal)
    #wrapper
    article.old_type
    section.narrow_section
    .text_box
    .pmark_wrap {
    margin-bottom: 30px;
  }
  body
    #wrap
    article.old_type
    section.narrow_section
    .text_box
    .pmark_wrap
    .pmark_imgtext {
    display: block;
  }
  body
    #wrap
    article.old_type
    section.narrow_section
    .text_box
    .pmark_wrap
    .pmark_imgtext
    img {
    display: block;
    height: 100px;
    width: 100px;
    margin: 0 auto 40px auto;
  }
}
body:not(.renewal) #wrapper article.old_type .text_box {
  padding: 40px 25px;
  box-sizing: border-box;
  border-radius: 10px;
}
body:not(.renewal) #wrapper article.old_type .text_box *:last-child {
  margin-bottom: 0;
}
body:not(.renewal) #wrapper article.old_type .text_box h2 {
  font-size: 1.9rem;
  font-weight: bold;
  margin-bottom: 30px;
  padding-bottom: 10px;
}
body:not(.renewal) #wrapper article.old_type .text_box h2.redline {
  border-color: #da380c;
}
body:not(.renewal) #wrapper article.old_type .text_box h2.line {
  font-size: 1.9rem;
  font-weight: bold;
  border-bottom: #000 solid 2px;
  margin-bottom: 30px;
  padding-bottom: 10px;
}
body:not(.renewal) #wrapper article.old_type .text_box h2.line.redline {
  border-color: #da380c;
}
body:not(.renewal) #wrapper article.old_type .text_box h3 {
  font-weight: bold;
  margin-bottom: 10px;
  padding-bottom: 10px;
}
body:not(.renewal) #wrapper article.old_type .text_box p {
  margin-bottom: 4em;
  line-height: 2;
}
body:not(.renewal) #wrapper article.old_type .text_box p.middle {
  font-size: 1.5rem;
}
body:not(.renewal) #wrapper article.old_type .text_box a:link {
  color: #0000ee;
  text-decoration: underline;
}
body:not(.renewal) #wrapper article.old_type .text_box a:visited {
  color: #551a8b;
  text-decoration: underline;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.old_type {
    padding-top: 0 !important;
  }
  body:not(.renewal) #wrapper article.old_type .Breadcrumb {
    margin-top: 0;
    display: block;
  }
  body:not(.renewal) #wrapper article.old_type .Breadcrumb li {
    display: inline;
  }
}
body:not(.renewal) #wrapper article.old_type .registration {
  width: 800px;
  margin: 0 auto;
  max-width: 100%;
}
body:not(.renewal) #wrapper article.old_type .registration h1 {
  margin: 60px 0 50px;
  text-align: center;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .registration
  .registration_white_Box {
  background: #fff;
  padding: 60px 35px 35px;
  border-radius: 10px;
  text-align: center;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .registration
  .registration_white_Box
  h2 {
  font-size: 2.5rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 50px;
  line-height: 1;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .registration
  .registration_white_Box
  .merit {
  border: #999999 solid 2px;
  border-radius: 8px;
  position: relative;
  padding: 35px 50px;
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .registration
  .registration_white_Box
  .merit
  h3 {
  position: absolute;
  top: -1em;
  left: 50%;
  transform: translate(-50%, 0);
  font-size: 1.65rem;
  color: #00b900;
  font-weight: bold;
}
body
  #wrap
  article.old_type
  .registration
  .registration_white_Box
  .merit
  h3
  span {
  display: inline-block;
  padding: 0 15px;
  background: #fff;
}
body
  #wrap
  article.old_type
  .registration
  .registration_white_Box
  .merit
  .item
  i {
  display: inline-block;
  color: #00b900;
  height: 40px;
  font-size: 3.5rem;
  margin-bottom: 25px;
  line-height: 40px;
}
body
  #wrap
  article.old_type
  .registration
  .registration_white_Box
  .merit
  .item
  .icon-karte {
  font-size: 4rem;
}
body
  #wrap
  article.old_type
  .registration
  .registration_white_Box
  .merit
  .item
  .icon-map {
  font-size: 4rem;
}
body
  #wrap
  article.old_type
  .registration
  .registration_white_Box
  .merit
  .item
  p {
  font-size: 1.35rem;
  color: #333;
  font-weight: bold;
  font-feature-settings: "palt";
}
body:not(.renewal)
  #wrapper
  article.old_type
  .registration
  .registration_white_Box
  .line_Btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 400px;
  height: 56px;
  border-radius: 28px;
  background: #00b900;
  margin: 0 auto 50px;
  color: #fff;
}
body
  #wrapper
  article.old_type
  .registration
  .registration_white_Box
  .line_Btn
  i {
  font-size: 2.4rem;
}
body
  #wrap
  article.old_type
  .registration
  .registration_white_Box
  .line_Btn
  span {
  font-size: 1.6rem;
  font-weight: bold;
  margin-left: 5px;
  letter-spacing: 1px;
}
body
  #wrap
  article.old_type
  .registration
  .registration_white_Box
  .registration_mail {
  background: #f6f6f6;
  padding: 35px;
}
body
  #wrap
  article.old_type
  .registration
  .registration_white_Box
  .registration_mail
  h3 {
  font-size: 1.6rem;
  font-weight: bold;
  padding-bottom: 35px;
  line-height: 1;
  border-bottom: #cccccc solid 1px;
}
body:not(.renewal) #wrapper article.old_type .registration .footer_link {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 40px 0;
}
body:not(.renewal) #wrapper article.old_type .registration .footer_link li a {
  font-size: 1.4rem;
  color: #000;
  margin: 0 1em;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .registration
  .footer_link
  li
  a:hover {
  text-decoration: underline;
}
body:not(.renewal) #wrapper article.old_type .registration .copy {
  text-align: center;
  font-size: 1.1rem;
  color: #888888;
  margin-bottom: 20px;
}
body:not(.renewal) #wrapper article.old_type .registration.login_box {
  width: 500px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .registration.login_box
  .registration_white_Box {
  padding: 40px 20px 30px;
}
body
  #wrapper
  article.old_type
  .registration.login_box
  .registration_white_Box
  h2 {
  font-size: 2rem;
  margin-bottom: 40px;
}
body
  #wrap
  article.old_type
  .registration.login_box
  .registration_white_Box
  .line_Btn
  span {
  font-feature-settings: "palt";
  text-align: justify;
  margin-left: 10px;
}
body
  #wrap
  article.old_type
  .registration.login_box
  .registration_white_Box
  .registration_mail
  h3 {
  border-bottom: 0;
}
body
  #wrap
  article.old_type
  .registration.login_box
  .registration_white_Box
  .form_box {
  padding: 0;
}
body
  #wrap
  article.old_type
  .registration.login_box
  .registration_white_Box
  .form_box
  input
  + input {
  margin-top: 15px;
}
body
  #wrap
  article.old_type
  .registration.login_box
  .registration_white_Box
  .form_box
  .form_box_text_link {
  margin-top: 30px;
  padding-top: 25px;
  border-top: #cccccc solid 1px;
}
body
  #wrap
  article.old_type
  .registration.login_box
  .registration_white_Box
  .form_box
  .form_box_text_link
  a {
  color: #000;
  font-size: 1.2rem;
  text-decoration: underline;
}
body
  #wrap
  article.old_type
  .registration.login_box
  .registration_white_Box
  .form_box
  .form_box_text_link
  a
  + a {
  margin-left: 15px;
}
body:not(.renewal) #wrapper article.old_type .error {
  width: 100%;
  font-size: 1.2rem !important;
  animation: blink 1s ease infinite;
}
@keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
body:not(.renewal) #wrapper article.old_type .button {
  width: 580px;
  height: 80px;
  border: #555555 solid 1px;
  border-radius: 40px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #da380c;
  margin: 0 auto 0;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  cursor: pointer;
  font-size: 2.6rem;
  font-weight: 600;
}
body:not(.renewal) #wrapper article.old_type .button:hover {
  border-color: #da380c;
  filter: brightness(110%);
}
body:not(.renewal) #wrapper article.old_type .back_cont {
  width: 250px;
  height: 46px;
  border-radius: 23px;
  border: #555555 solid 1px;
  background: #f6f6f6;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #323232;
  margin: 0 auto 0;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  cursor: pointer;
  font-size: 1.6rem;
  font-weight: 600;
}
body:not(.renewal) #wrapper article.old_type .back_cont:hover {
  filter: brightness(110%);
}
body:not(.renewal) #wrapper article.old_type input ~ .button {
  margin-top: 25px;
}
body:not(.renewal) #wrapper article.old_type .form_box {
  padding: 25px 0px 0;
}
body:not(.renewal) #wrapper article.old_type .form_box .inputBox ~ p {
  text-align: left;
  font-size: 1.3rem;
  color: #000;
  line-height: 2;
  margin-bottom: 25px;
  margin-top: 50px;
}
body:not(.renewal) #wrapper article.old_type .form_box .inputBox ~ p a {
  color: #000;
  text-decoration: underline;
}
body:not(.renewal) #wrapper article.old_type .form_box .inputBox ~ p a:hover {
  color: #da380c;
}
body:not(.renewal) #wrapper article.old_type .form_box2 {
  padding: 25px 0px 0;
}
body:not(.renewal) #wrapper article.old_type .form_box2 label.wide {
  padding-left: 20px;
  box-sizing: border-box;
}
body:not(.renewal) #wrapper article.old_type form {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-items: flex-start;
}
body:not(.renewal) #wrapper article.old_type form label {
  width: 130px;
  line-height: 45px;
  flex-shrink: 0;
  font-size: 1.4rem;
  text-align: left;
  margin-bottom: 25px;
}
body:not(.renewal) #wrapper article.old_type form label[for="check"] {
  width: auto;
}
body:not(.renewal) #wrapper article.old_type form label.wide {
  width: 270px;
  padding-right: 20px;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-start;
}
body:not(.renewal) #wrapper article.old_type form label.wide > span {
  display: inline-block;
  line-height: 1.5;
}
body:not(.renewal) #wrapper article.old_type form label.wide > span span {
  display: block;
  font-size: 1.2rem;
}
body:not(.renewal) #wrapper article.old_type form label.wide small {
  flex-shrink: 0;
}
body:not(.renewal) #wrapper article.old_type form label small {
  color: #da380c;
  font-size: 1rem;
  margin-left: 1em;
}
body:not(.renewal) #wrapper article.old_type form label ~ .inputBox {
  width: calc(100% - 130px);
  margin-bottom: 25px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label
  ~ .inputBox
  .inputBox_iner {
  margin-bottom: 25px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label
  ~ .inputBox
  > *:last-child {
  margin-bottom: 0;
}
body:not(.renewal) #wrapper article.old_type form label.wide ~ .inputBox {
  width: calc(100% - 270px);
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label.wide
  ~ .inputBox
  .radio {
  padding: 8px 0;
}
body
  #wrap
  article.old_type
  form
  label.wide
  ~ .inputBox
  .radio
  + .inputBox_iner {
  margin-top: 20px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label.wide
  ~ .inputBox
  .inputBox_iner {
  margin-bottom: 15px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label.wide
  ~ .inputBox
  .inputBox_iner.flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
body
  #wrap
  article.old_type
  form
  label.wide
  ~ .inputBox
  .inputBox_iner.flex
  .radio {
  width: 200px;
  padding: 0;
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label.wide
  ~ .inputBox
  > *:last-child {
  margin-bottom: 0;
}
body:not(.renewal) #wrapper article.old_type form label.wide ~ .inputBox.flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  min-height: 46px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label.wide
  ~ .inputBox.flex
  .radio {
  padding: 0;
}
body
  #wrapper
  article.old_type
  form
  label.wide
  ~ .inputBox.flex
  .radio
  + .radio {
  margin-left: 25px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label.wide
  ~ .inputBox
  .selectBox {
  min-width: 198px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label.wide
  ~ .inputBox
  .selectBox.wide {
  width: 396px;
}
body
  #wrap
  article.old_type
  form
  label.wide
  ~ .inputBox
  input[type="text"]
  + span {
  padding-left: 10px;
  font-size: 1.4rem;
}
body
  #wrap
  article.old_type
  form
  label.wide
  ~ .inputBox
  input[type="text"]
  + input[type="text"],
body
  #wrap
  article.old_type
  form
  label.wide
  ~ .inputBox
  .selectBox
  + .selectBox {
  margin-left: 10px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  form
  label.wide
  ~ .inputBox
  small.note {
  display: block;
  font-size: 1.2rem;
  padding-top: 10px;
}
body:not(.renewal) #wrapper article.old_type form .inputBox2 ~ hr {
  margin: 20px 0;
  width: 100%;
  border: 0;
  border-top: #dddddd solid 1px;
}
body:not(.renewal) #wrapper article.old_type form .scroll_btn {
  margin: 40px auto 80px;
}
body:not(.renewal) #wrapper article.old_type form .scroll_btn .icon-arrow {
  transform: rotate(90deg);
}
body:not(.renewal) #wrapper article.old_type form .privacy_text {
  margin-bottom: 4em;
  line-height: 2;
  font-size: 1.4rem;
}
body:not(.renewal) #wrapper article.old_type form .privacy_text a {
  text-decoration: underline;
}
body:not(.renewal) #wrapper article.old_type .form_back {
  width: 100%;
  text-align: center;
  font-size: 1.2rem;
  margin-top: 30px;
}
body:not(.renewal) #wrapper article.old_type .form_back a {
  color: #009ee8;
}
body:not(.renewal) #wrapper article.old_type .form_back a .icon-arrow1 {
  font-size: 1rem;
  margin-right: 0.5em;
}
body:not(.renewal) #wrapper article.old_type .form_back a span {
  text-decoration: underline;
}
body:not(.renewal) #wrapper article.old_type input[type="email"],
body:not(.renewal) #wrapper article.old_type input[type="text"],
body:not(.renewal) #wrapper article.old_type input[type="password"],
body:not(.renewal) #wrapper article.old_type input[type="tel"] {
  width: 100%;
  height: 45px;
  border: #999999 solid 1px;
  padding: 0 10px;
  box-sizing: border-box;
  font-size: 1.3rem;
}
body:not(.renewal)
  #wrapper
  article.old_type
  input[type="email"]::-moz-placeholder,
body:not(.renewal)
  #wrapper
  article.old_type
  input[type="text"]::-moz-placeholder,
body:not(.renewal)
  #wrapper
  article.old_type
  input[type="password"]::-moz-placeholder,
body:not(.renewal)
  #wrapper
  article.old_type
  input[type="tel"]::-moz-placeholder {
  color: #888;
}
body:not(.renewal) #wrapper article.old_type input[type="email"]::placeholder,
body:not(.renewal) #wrapper article.old_type input[type="text"]::placeholder,
body:not(.renewal)
  #wrapper
  article.old_type
  input[type="password"]::placeholder,
body:not(.renewal) #wrapper article.old_type input[type="tel"]::placeholder {
  color: #888;
}
body:not(.renewal)
  #wrapper
  article.old_type
  input[type="email"][readonly="readonly"],
body:not(.renewal)
  #wrapper
  article.old_type
  input[type="text"][readonly="readonly"],
body:not(.renewal)
  #wrapper
  article.old_type
  input[type="password"][readonly="readonly"],
body:not(.renewal)
  #wrapper
  article.old_type
  input[type="tel"][readonly="readonly"] {
  border: #d0d0d0 dotted 1px;
  background: none;
  outline: 0;
}
body:not(.renewal) #wrapper article.old_type input[type="email"].middle,
body:not(.renewal) #wrapper article.old_type input[type="text"].middle,
body:not(.renewal) #wrapper article.old_type input[type="password"].middle,
body:not(.renewal) #wrapper article.old_type input[type="tel"].middle {
  width: 80%;
}
body:not(.renewal) #wrapper article.old_type input[type="email"].small,
body:not(.renewal) #wrapper article.old_type input[type="text"].small,
body:not(.renewal) #wrapper article.old_type input[type="password"].small,
body:not(.renewal) #wrapper article.old_type input[type="tel"].small {
  width: 30%;
}
body:not(.renewal) #wrapper article.old_type input[type="email"].bg,
body:not(.renewal) #wrapper article.old_type input[type="text"].bg,
body:not(.renewal) #wrapper article.old_type input[type="password"].bg,
body:not(.renewal) #wrapper article.old_type input[type="tel"].bg {
  background: #fff2e4;
}
body:not(.renewal) #wrapper article.old_type textarea {
  width: 100%;
  padding: 10px;
  height: 250px;
  border: #999999 solid 1px;
  box-sizing: border-box;
  vertical-align: top;
}
body:not(.renewal) #wrapper article.old_type textarea[readonly="readonly"] {
  border: #d0d0d0 dotted 1px;
  background: none;
  outline: 0;
}
body:not(.renewal) #wrapper article.old_type .selectBox {
  display: inline-block;
  overflow: hidden;
  position: relative;
  vertical-align: top;
}
body:not(.renewal) #wrapper article.old_type .selectBox select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: medium none;
  border-radius: 0px;
  box-sizing: border-box;
  font-size: 1.3rem;
  height: 45px;
  margin: 0;
  box-sizing: border-box;
  background: #fff;
  border: #999999 solid 1px;
  padding-left: 10px;
  padding-right: 45px;
  width: 100%;
  max-width: none;
  box-shadow: none;
  background: #fff;
}
body:not(.renewal) #wrapper article.old_type .selectBox _:lang(x)::-ms-backdrop,
body:not(.renewal) #wrapper article.old_type .selectBox select {
  width: 110%;
}
body:not(.renewal) #wrapper article.old_type .selectBox:after {
  background: #fff;
  content: "\e901";
  font-family: "icomoon";
  font-size: 1rem;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  width: 45px;
  height: 45px;
  box-sizing: border-box;
  border: #999999 solid 1px;
  border-left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
body:not(.renewal) #wrapper article.old_type .selectBox.bg select {
  background: #fff2e4;
}
body:not(.renewal) #wrapper article.old_type .selectBox.bg:after {
  background: #fff2e4;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .mw_wp_form_confirm
  .selectBox:after {
  content: none !important;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.old_type .registration {
    padding: 0 15px 15px;
    box-sizing: border-box;
  }
  body:not(.renewal) #wrapper article.old_type .registration h1 {
    margin: 30px 0;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    .registration
    .registration_white_Box {
    padding: 25px 15px 15px;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    .registration
    .registration_white_Box
    h2 {
    font-size: 2rem;
    margin-bottom: 40px;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    .registration
    .registration_white_Box
    .merit {
    padding: 15px 0 35px;
    flex-wrap: wrap;
    margin-bottom: 25px;
  }
  body
    #wrapper
    article.old_type
    .registration
    .registration_white_Box
    .merit
    h3 {
    font-size: 1.5rem;
    white-space: nowrap;
  }
  body
    #wrap
    article.old_type
    .registration
    .registration_white_Box
    .merit
    h3
    span {
    padding: 0 10px;
  }
  body
    #wrap
    article.old_type
    .registration
    .registration_white_Box
    .merit
    .item {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 22px;
  }
  body
    #wrap
    article.old_type
    .registration
    .registration_white_Box
    .merit
    .item
    i {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #00b900;
    height: auto;
    width: 40px;
    font-size: 3.5rem;
    margin-bottom: 0px;
    line-height: 40px;
  }
  body
    #wrap
    article.old_type
    .registration
    .registration_white_Box
    .merit
    .item
    p {
    padding-left: 1.5em;
    width: 13em;
    font-size: 1.25rem;
    font-feature-settings: "palt";
    text-align: justify;
  }
  body
    #wrapper
    article.old_type
    .registration
    .registration_white_Box
    .line_Btn {
    max-width: 100%;
  }
  body
    #wrap
    article.old_type
    .registration
    .registration_white_Box
    .line_Btn
    i {
    font-size: 2.4rem;
  }
  body
    #wrap
    article.old_type
    .registration
    .registration_white_Box
    .line_Btn
    span {
    font-size: 1.6rem;
    font-weight: bold;
    margin-left: 5px;
    letter-spacing: 1px;
  }
  body
    #wrap
    article.old_type
    .registration
    .registration_white_Box
    .registration_mail {
    padding: 30px 15px;
  }
  body
    #wrap
    article.old_type
    .registration
    .registration_white_Box
    .registration_mail
    h3 {
    font-size: 1.5rem;
    padding-bottom: 20px;
    border-bottom: 0;
  }
  body:not(.renewal) #wrapper article.old_type .registration .footer_link {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 25px 0;
  }
  body:not(.renewal) #wrapper article.old_type .registration .footer_link li a {
    font-size: 1.2rem;
    color: #000;
    margin: 0 0.5em;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    .registration
    .footer_link
    li
    a:hover {
    text-decoration: underline;
  }
  body:not(.renewal) #wrapper article.old_type .registration .copy {
    text-align: center;
    font-size: 1.1rem;
    color: #888888;
    margin-bottom: 0px;
  }
  body:not(.renewal) #wrapper article.old_type .registration.login_box {
    width: 100%;
  }
  body:not(.renewal) #wrapper article.old_type .registration.login_box h1 img {
    width: 108px;
  }
  body
    #wrapper
    article.old_type
    .registration.login_box
    .registration_white_Box {
    padding: 30px 20px 25px;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    h2 {
    font-size: 1.9rem;
    margin-bottom: 30px;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .line_Btn {
    margin-bottom: 40px;
    height: 45px;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .line_Btn
    span {
    font-size: 1.5rem;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .registration_mail
    h3 {
    border-bottom: 0;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .form_box {
    padding: 0;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .form_box
    input {
    margin-bottom: 15px;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .form_box
    input
    + input {
    margin-top: 0;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .form_box
    .button {
    width: 180px;
    height: 40px;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .form_box
    .button
    span {
    font-size: 1.5rem;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .form_box
    .form_box_text_link {
    margin-top: 25px;
    padding-top: 20px;
    border-top: #cccccc solid 1px;
    text-align: left;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .form_box
    .form_box_text_link
    a {
    display: inline-block;
    color: #000;
    font-size: 1.2rem;
    text-decoration: underline;
    margin-right: 20px;
  }
  body
    #wrap
    article.old_type
    .registration.login_box
    .registration_white_Box
    .form_box
    .form_box_text_link
    a
    + a {
    margin-left: 0px;
  }
  body:not(.renewal) #wrapper article.old_type .button {
    width: 250px;
    height: 46px;
    border: #555555 solid 1px;
    border-radius: 23px;
    background: #fff;
    font-size: 1.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #da380c;
    margin: 0 auto;
    transition: all 0.2s ease;
    backface-visibility: hidden;
    cursor: pointer;
  }
  body:not(.renewal) #wrapper article.old_type .button .icon-arrow {
    font-size: 1rem;
  }
  body:not(.renewal) #wrapper article.old_type .button span {
    font-size: 1.6rem;
    font-weight: bold;
    margin-left: 0.5em;
  }
  body:not(.renewal) #wrapper article.old_type .button:hover {
    border-color: #da380c;
    filter: brightness(110%);
  }
  body:not(.renewal) #wrapper article.old_type input ~ .button {
    margin-top: 10px;
  }
  body:not(.renewal) #wrapper article.old_type .form_box {
    padding: 0;
  }
  body:not(.renewal) #wrapper article.old_type .form_box .inputBox ~ p {
    text-align: left;
    font-size: 1.2rem;
    margin-bottom: 20px;
    margin-top: 0px;
  }
  body:not(.renewal) #wrapper article.old_type form label {
    width: 100% !important;
    line-height: 1;
    flex-shrink: 0;
    font-size: 1.4rem;
    text-align: left;
    margin-bottom: 10px;
  }
  body:not(.renewal) #wrapper article.old_type form label.wide {
    padding-left: 0 !important;
    align-items: center;
  }
  body:not(.renewal) #wrapper article.old_type form label ~ .inputBox {
    width: 100% !important;
  }
  body:not(.renewal) #wrapper article.old_type form label.wide ~ .inputBox {
    width: 100%;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox
    .inputBox_iner {
    margin-bottom: 0;
  }
  body
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox
    .inputBox_iner.flex {
    display: block;
  }
  body
    #wrap
    article.old_type
    form
    label.wide
    ~ .inputBox
    .inputBox_iner.flex
    .radio {
    width: 100%;
    padding: 8px 0;
  }
  body
    #wrap
    article.old_type
    form
    label.wide
    ~ .inputBox
    .inputBox_iner
    + .inputBox_iner {
    margin-top: 10px;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox.flex {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox.flex
    .radio {
    padding: 8px 0;
    width: 50%;
  }
  body
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox.flex
    .radio
    + .radio {
    margin-left: 0px;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox
    .selectBox {
    min-width: 100%;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox
    .selectBox.wide {
    width: 100%;
  }
  body
    #wrap
    article.old_type
    form
    label.wide
    ~ .inputBox
    input[type="text"]
    + span {
    padding-left: 10px;
    font-size: 1.4rem;
  }
  body
    #wrap
    article.old_type
    form
    label.wide
    ~ .inputBox
    input[type="text"]
    + input[type="text"],
  body
    #wrap
    article.old_type
    form
    label.wide
    ~ .inputBox
    .selectBox
    + .selectBox {
    margin-left: 0px;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox
    small.note {
    display: block;
    font-size: 1rem;
    padding-top: 0px;
  }
  body:not(.renewal) #wrapper article.old_type form label.wide ~ .inputBox.age {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox.age
    input {
    margin-bottom: 0;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    form
    label.wide
    ~ .inputBox.age
    span {
    margin-bottom: 0px;
    font-size: 1.3rem;
  }
  body:not(.renewal) #wrapper article.old_type form .scroll_btn {
    margin: 20px auto 40px;
  }
  body:not(.renewal) #wrapper article.old_type form .privacy_text {
    font-size: 1.3rem;
  }
  body:not(.renewal) #wrapper article.old_type input[type="email"],
  body:not(.renewal) #wrapper article.old_type input[type="text"],
  body:not(.renewal) #wrapper article.old_type input[type="password"],
  body:not(.renewal) #wrapper article.old_type input[type="tel"],
  body:not(.renewal) #wrapper article.old_type .selectBox {
    margin-bottom: 10px;
    width: 100%;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    input[type="email"]::-moz-placeholder,
  body:not(.renewal)
    #wrapper
    article.old_type
    input[type="text"]::-moz-placeholder,
  body:not(.renewal)
    #wrapper
    article.old_type
    input[type="password"]::-moz-placeholder,
  body:not(.renewal)
    #wrapper
    article.old_type
    input[type="tel"]::-moz-placeholder,
  body:not(.renewal) #wrapper article.old_type .selectBox::-moz-placeholder {
    color: #888;
  }
  body:not(.renewal) #wrapper article.old_type input[type="email"]::placeholder,
  body:not(.renewal) #wrapper article.old_type input[type="text"]::placeholder,
  body:not(.renewal)
    #wrapper
    article.old_type
    input[type="password"]::placeholder,
  body:not(.renewal) #wrapper article.old_type input[type="tel"]::placeholder,
  body:not(.renewal) #wrapper article.old_type .selectBox::placeholder {
    color: #888;
  }
  body:not(.renewal) #wrapper article.old_type input[type="email"].middle,
  body:not(.renewal) #wrapper article.old_type input[type="text"].middle,
  body:not(.renewal) #wrapper article.old_type input[type="password"].middle,
  body:not(.renewal) #wrapper article.old_type input[type="tel"].middle,
  body:not(.renewal) #wrapper article.old_type .selectBox.middle {
    width: 100%;
  }
  body:not(.renewal) #wrapper article.old_type input[type="email"].small,
  body:not(.renewal) #wrapper article.old_type input[type="text"].small,
  body:not(.renewal) #wrapper article.old_type input[type="password"].small,
  body:not(.renewal) #wrapper article.old_type input[type="tel"].small,
  body:not(.renewal) #wrapper article.old_type .selectBox.small {
    width: 100%;
  }
}
body:not(.renewal) #wrapper article.old_type .check {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
body:not(.renewal) #wrapper article.old_type .check.disabled label {
  pointer-events: none;
  opacity: 0.4;
}
body:not(.renewal) #wrapper article.old_type .check label {
  width: auto;
  line-height: 16px;
  position: relative;
  padding-left: 26px;
  font-size: 1.5rem;
  font-weight: 600;
  white-space: nowrap;
}
body:not(.renewal) #wrapper article.old_type .check label:before {
  content: "";
  width: 16px;
  height: 16px;
  position: absolute;
  left: 0;
  top: 0px;
  border: #999999 solid 1px;
  box-sizing: border-box;
  margin-right: 10px;
  background: #fff;
}
body:not(.renewal) #wrapper article.old_type .check label:after {
  content: "\e916";
  font-family: "icomoon";
  width: 14px;
  height: 14px;
  font-size: 1rem;
  color: #fff;
  background: #0076ff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 1px;
  top: 1px;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  transform: scale(0);
}
body:not(.renewal) #wrapper article.old_type .check input[type="checkbox"] {
  display: none;
}
body
  #wrap
  article.old_type
  .check
  input[type="checkbox"]:checked
  ~ label:after {
  transform: scale(1);
}
body:not(.renewal) #wrapper article.old_type .mail_check {
  width: 100%;
  margin-bottom: 70px;
  text-align: center;
  justify-content: center;
}
body:not(.renewal) #wrapper article.old_type .mail_check.disabled label {
  pointer-events: none;
  opacity: 0.4;
}
body:not(.renewal) #wrapper article.old_type .mail_check label {
  width: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .mail_check
  label
  input[type="checkbox"] {
  display: none;
}
body
  #wrap
  article.old_type
  .mail_check
  label
  input[type="checkbox"]:checked
  ~ span:after {
  transform: scale(1);
}
body:not(.renewal)
  #wrapper
  article.old_type
  .mail_check
  label
  .mwform-checkbox-field-text {
  width: auto;
  line-height: 16px;
  position: relative;
  padding-left: 26px;
  font-size: 1.5rem;
  font-weight: 400;
  white-space: nowrap;
}
body
  #wrap
  article.old_type
  .mail_check
  label
  .mwform-checkbox-field-text:before {
  content: "";
  width: 16px;
  height: 16px;
  position: absolute;
  left: 0;
  top: 0px;
  border: #999999 solid 1px;
  box-sizing: border-box;
  margin-right: 10px;
  background: #fff;
}
body
  #wrap
  article.old_type
  .mail_check
  label
  .mwform-checkbox-field-text:after {
  content: "\e916";
  font-family: "icomoon";
  width: 14px;
  height: 14px;
  font-size: 1rem;
  color: #fff;
  background: #0076ff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 1px;
  top: 1px;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  transform: scale(0);
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.old_type .mail_check {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin-bottom: 30px;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    .mail_check
    label
    .mwform-checkbox-field-text {
    line-height: 1.5;
    padding-left: 26px;
    font-size: 1.3rem;
    white-space: normal;
  }
  body
    #wrap
    article.old_type
    .mail_check
    label
    .mwform-checkbox-field-text:before {
    top: 4px;
  }
  body
    #wrap
    article.old_type
    .mail_check
    label
    .mwform-checkbox-field-text:after {
    top: 5px;
  }
}
body:not(.renewal) #wrapper article.old_type .inputBox .mwform-checkbox-field {
  display: inline-block;
  margin-right: 20px;
  margin-top: 14px;
  margin-left: 0 !important;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .inputBox
  .mwform-checkbox-field
  label {
  width: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-checkbox-field
  label
  input[type="checkbox"] {
  display: none;
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-checkbox-field
  label
  input[type="checkbox"]:checked
  ~ span:after {
  transform: scale(1);
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-checkbox-field
  label
  .mwform-checkbox-field-text {
  width: auto;
  line-height: 16px;
  position: relative;
  padding-left: 26px;
  font-size: 1.5rem;
  font-weight: 400;
  white-space: nowrap;
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-checkbox-field
  label
  .mwform-checkbox-field-text:before {
  content: "";
  width: 16px;
  height: 16px;
  position: absolute;
  left: 0;
  top: 0px;
  border: #999999 solid 1px;
  box-sizing: border-box;
  margin-right: 10px;
  background: #fff;
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-checkbox-field
  label
  .mwform-checkbox-field-text:after {
  content: "\e916";
  font-family: "icomoon";
  width: 14px;
  height: 14px;
  font-size: 1rem;
  color: #fff;
  background: #0076ff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 1px;
  top: 1px;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  transform: scale(0);
}
body:not(.renewal) #wrapper article.old_type .inputBox .mwform-radio-field {
  display: inline-block;
  margin-right: 20px;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .inputBox
  .mwform-radio-field
  label {
  width: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-radio-field
  label
  input[type="radio"] {
  display: none;
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-radio-field
  label
  input[type="radio"]:checked
  ~ span:after {
  transform: scale(1);
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-radio-field
  label
  .mwform-radio-field-text {
  width: auto;
  line-height: 16px;
  position: relative;
  padding-left: 26px;
  font-size: 1.5rem;
  font-weight: 400;
  white-space: nowrap;
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-radio-field
  label
  .mwform-radio-field-text:before {
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0px;
  border: #999999 solid 1px;
  box-sizing: border-box;
  margin-right: 10px;
  background: #fff;
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-radio-field
  label
  .mwform-radio-field-text:after {
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50%;
  color: #fff;
  background: #0076ff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 2px;
  top: 2px;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  transform: scale(0);
}
body
  #wrap
  article.old_type
  .inputBox
  .mwform-radio-field
  + .mwform-radio-field {
  margin-top: 14px;
  margin-left: 0 !important;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.old_type .inputBox .mwform-radio-field {
    display: block;
    margin-right: 0px;
  }
  body
    #wrap
    article.old_type
    .inputBox
    .mwform-radio-field
    + .mwform-radio-field {
    margin-top: 15px;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    .inputBox
    .mwform-checkbox-field {
    display: block;
    margin-right: 0px;
    margin-top: 0;
  }
  body
    #wrap
    article.old_type
    .inputBox
    .mwform-checkbox-field
    + .mwform-checkbox-field {
    margin-top: 15px;
  }
}
body:not(.renewal) #wrapper article.old_type .radio {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
body:not(.renewal) #wrapper article.old_type .radio .horizontal-item {
  margin-left: 0 !important;
  margin-right: 30px;
}
body:not(.renewal) #wrapper article.old_type .radio .horizontal-item label {
  white-space: normal;
}
body
  #wrapper
  article.old_type
  .radio
  .horizontal-item
  label
  input[type="radio"] {
  display: none;
}
body
  #wrap
  article.old_type
  .radio
  .horizontal-item
  label
  input[type="radio"]:checked
  ~ span:after {
  transform: scale(1);
}
body:not(.renewal)
  #wrapper
  article.old_type
  .radio
  .horizontal-item
  label
  span {
  width: auto;
  line-height: 20px;
  position: relative;
  padding-left: 30px;
  font-size: 1.4rem;
  font-weight: 500;
  white-space: nowrap;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .radio
  .horizontal-item
  label
  span:before {
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0;
  border: #999999 solid 1px;
  box-sizing: border-box;
  margin-right: 10px;
  background: #fff;
}
body:not(.renewal)
  #wrapper
  article.old_type
  .radio
  .horizontal-item
  label
  span:after {
  content: "";
  width: 18px;
  height: 18px;
  border-radius: 50%;
  position: absolute;
  left: 1px;
  top: 1px;
  border: #0076ff solid 6px;
  box-sizing: border-box;
  margin-right: 10px;
  background: #fff;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  transform: scale(0);
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.old_type .radio .horizontal-item {
    width: 100%;
    margin: 0;
  }
  body:not(.renewal)
    #wrapper
    article.old_type
    .radio
    .horizontal-item
    + .horizontal-item {
    margin-top: 10px;
  }
}

.swiper-container {
  width: 100%;
  height: 100%;
  padding: 10px 0 60px;
}
.swiper-container .swiper-slide {
  text-align: center;
  font-size: 18px;
  width: 600px;
  position: relative;
  margin: 0 20px;
}
.swiper-container .swiper-slide a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
  z-index: 10;
}
.swiper-container .swiper-slide a:hover ~ figure img {
  filter: brightness(110%);
}
.swiper-container .swiper-slide .swiper_text {
  position: absolute;
  padding: 20px 25px;
  width: 100%;
  box-sizing: border-box;
  left: 0px;
  bottom: 0px;
  color: #fff;
  z-index: 1;
  border-radius: 0 0 10px 10px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
}
.swiper-container .swiper-slide .swiper_text .category {
  text-align: left;
}
.swiper-container .swiper-slide .swiper_text .category em {
  font-size: 1.5rem;
  font-weight: bold;
}
.swiper-container .swiper-slide .swiper_text .category span {
  padding-left: 10px;
  font-size: 1.3rem;
  font-weight: 700;
  text-transform: uppercase;
}
.swiper-container .swiper-slide .swiper_text p {
  text-align: left;
  color: #fff;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.5;
}
.swiper-container .swiper-slide figure {
  width: 100%;
  height: 400px;
}
.swiper-container .swiper-slide figure img {
  border-radius: 10px;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

@media screen and (max-width: 740px) {
  .swiper-container {
    width: 100%;
    height: 100%;
    padding: 25px 0 30px;
  }
  .swiper-container .swiper-slide {
    text-align: center;
    font-size: 18px;
    width: 80%;
    position: relative;
    margin: 0 10px;
  }
  .swiper-container .swiper-slide a {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: block;
    z-index: 10;
  }
  .swiper-container .swiper-slide a:hover ~ figure img {
    filter: brightness(110%);
  }
  .swiper-container .swiper-slide .swiper_text {
    position: absolute;
    left: 0;
    top: 50%;
    padding: 0 40px;
    width: 100%;
    box-sizing: border-box;
    border-radius: 0;
    background: none;
    transform: translate(0, -25%);
  }
  .swiper-container .swiper-slide .swiper_text .category {
    display: inline-block;
    text-align: center;
    border-bottom: #fff solid 2px;
    margin-bottom: 10px;
  }
  .swiper-container .swiper-slide .swiper_text .category em {
    font-size: 1rem;
    font-weight: bold;
  }
  .swiper-container .swiper-slide .swiper_text .category span {
    padding-left: 5px;
    font-size: 1.1rem;
  }
  .swiper-container .swiper-slide .swiper_text p {
    text-align: center;
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1.5;
  }
  .swiper-container .swiper-slide figure {
    position: relative;
    width: 100%;
    height: auto;
  }
  .swiper-container .swiper-slide figure:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: block;
    background: #000;
    z-index: 0;
    border-radius: 10px;
    opacity: 0.2;
  }
}
.List_articles {
  padding-bottom: 26px;
}
.List_articles .item_wrap {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-left: -35px;
}
.List_articles .item_wrap .item {
  width: 310px;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  margin-bottom: 35px;
  margin-left: 35px;
}
.List_articles .item_wrap .item a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
  z-index: 10;
}
.List_articles .item_wrap .item a:hover ~ figure img {
  filter: brightness(110%);
}
.List_articles .item_wrap .item figure {
  width: 100%;
  height: 230px;
  border-radius: 8px 8px 0 0;
  overflow: hidden;
}
.List_articles .item_wrap .item figure img {
  transition: all 0.2s ease;
  backface-visibility: hidden;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.List_articles .item_wrap .item .item_text {
  padding: 20px;
}
.List_articles .item_wrap .item .item_text .category {
  text-align: left;
  color: #da380c;
}
.List_articles .item_wrap .item .item_text .category em {
  font-size: 1.2rem;
  font-weight: bold;
}
.List_articles .item_wrap .item .item_text .category span {
  padding-left: 10px;
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
}
.List_articles .item_wrap .item .item_text p {
  font-feature-settings: "palt";
  text-align: justify;
}

@media screen and (max-width: 740px) {
  .List_articles {
    padding: 0 10px 20px;
  }
  .List_articles .item_wrap {
    justify-content: space-between;
    align-items: inherit;
    margin-left: 0;
  }
  .List_articles .item_wrap .item {
    width: calc((100% - 10px) / 2);
    border-radius: 8px;
    margin-bottom: 10px;
    margin-left: 0;
  }
  .List_articles .item_wrap .item figure {
    width: 100%;
    height: 130px;
  }
  .List_articles .item_wrap .item .item_text {
    padding: 10px;
  }
  .List_articles .item_wrap .item .item_text .category em {
    font-size: 1rem;
  }
  .List_articles .item_wrap .item .item_text .category span {
    padding-left: 5px;
    font-size: 1.1rem;
  }
}
.pick_up {
  background: #ebb3a6;
  margin-bottom: 60px;
}
.pick_up .pick_up_inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 60px 0;
}
.pick_up .pick_up_inner h3 {
  color: #fff;
  padding-bottom: 20px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.pick_up .pick_up_inner h3 i {
  font-size: 3rem;
}
.pick_up .pick_up_inner h3 .icon-light {
  font-size: 2.6rem;
}
.pick_up .pick_up_inner h3 .icon-interview {
  font-size: 2rem;
}
.pick_up .pick_up_inner h3 .icon-money {
  font-size: 2.4rem;
}
.pick_up .pick_up_inner h3 em {
  font-size: 2.25rem;
  font-weight: bold;
  padding: 0 12px;
  display: inline-block;
  line-height: 1;
}
.pick_up .pick_up_inner h3 small {
  font-size: 1.4rem;
  letter-spacing: 1px;
  font-weight: 700;
  text-transform: uppercase;
  display: inline-block;
  line-height: 1;
}
.pick_up .pick_up_inner .pick_up_articles {
  display: flex;
  justify-content: space-between;
}
.pick_up .pick_up_inner .pick_up_articles .item {
  width: calc((100% - 40px) / 2);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.pick_up .pick_up_inner .pick_up_articles .item a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
  z-index: 10;
}
.pick_up .pick_up_inner .pick_up_articles .item a:hover ~ figure img {
  filter: brightness(110%);
}
.pick_up .pick_up_inner .pick_up_articles .item figure {
  width: 100%;
  height: 360px;
}
.pick_up .pick_up_inner .pick_up_articles .item figure img {
  transition: all 0.2s ease;
  backface-visibility: hidden;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.pick_up .pick_up_inner .pick_up_articles .item .item_text {
  padding: 20px;
}
.pick_up .pick_up_inner .pick_up_articles .item .item_text .category {
  text-align: left;
  color: #da380c;
}
.pick_up .pick_up_inner .pick_up_articles .item .item_text .category em {
  font-size: 1.2rem;
  font-weight: bold;
}
.pick_up .pick_up_inner .pick_up_articles .item .item_text .category span {
  padding-left: 10px;
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
}
.pick_up .pick_up_inner .pick_up_articles .item .item_text p {
  font-feature-settings: "palt";
  text-align: justify;
}

@media screen and (max-width: 740px) {
  .pick_up {
    margin-bottom: 30px;
  }
  .pick_up .pick_up_inner {
    max-width: 100%;
    padding: 30px 10px 10px;
  }
  .pick_up .pick_up_inner h3 {
    color: #fff;
    padding-bottom: 20px;
  }
  .pick_up .pick_up_inner h3 .icon-light {
    font-size: 2.2rem;
  }
  .pick_up .pick_up_inner h3 .icon-interview {
    font-size: 1.8rem;
  }
  .pick_up .pick_up_inner h3 .icon-pin {
    font-size: 2.2rem;
  }
  .pick_up .pick_up_inner h3 .icon-money {
    font-size: 2rem;
  }
  .pick_up .pick_up_inner h3 em {
    font-size: 1.9rem;
    padding: 0 12px;
  }
  .pick_up .pick_up_inner h3 small {
    font-size: 1.1rem;
  }
  .pick_up .pick_up_inner .pick_up_articles {
    display: block;
  }
  .pick_up .pick_up_inner .pick_up_articles .item {
    width: 100%;
    margin-bottom: 15px;
  }
  .pick_up .pick_up_inner .pick_up_articles .item figure {
    width: 100%;
    height: 260px;
  }
  .pick_up .pick_up_inner .pick_up_articles .item .item_text {
    padding: 10px;
  }
  .pick_up .pick_up_inner .pick_up_articles .item .item_text .category {
    text-align: left;
    color: #da380c;
  }
  .pick_up .pick_up_inner .pick_up_articles .item .item_text .category em {
    font-size: 1.2rem;
    font-weight: bold;
  }
  .pick_up .pick_up_inner .pick_up_articles .item .item_text .category span {
    padding-left: 10px;
    font-size: 1.1rem;
    font-weight: 700;
    text-transform: uppercase;
  }
  .pick_up .pick_up_inner .pick_up_articles .item .item_text p {
    font-feature-settings: "palt";
    text-align: justify;
  }
}
a.magazine_more {
  width: 350px;
  height: 50px;
  border-radius: 25px;
  border: #888888 solid 1px;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  margin: 60px auto;
}
a.magazine_more .icon-load {
  color: #da380c;
}
a.magazine_more span {
  color: #da380c;
  font-weight: 600;
  margin-left: 5px;
}
a.magazine_more:hover {
  border-color: #da380c;
}
a.magazine_more:hover .icon-load {
  animation: spin 3s linear infinite;
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media screen and (max-width: 740px) {
  a.magazine_more {
    width: 250px;
    height: 40px;
    border-radius: 20px;
    margin: 30px auto;
  }
}
.sub_page_Title {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.sub_page_Title .text {
  width: 50%;
  height: 350px;
  background: #e6b5a8;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sub_page_Title .text h1 {
  color: #fff;
  text-align: center;
}
.sub_page_Title .text h1 em {
  display: block;
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 2px;
}
.sub_page_Title .text h1 small {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1.5rem;
  letter-spacing: 1px;
}
.sub_page_Title figure {
  width: 50%;
  height: 350px;
}
.sub_page_Title figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

@media screen and (max-width: 740px) {
  .sub_page_Title {
    flex-wrap: wrap;
    width: 100%;
  }
  .sub_page_Title .text {
    order: 1;
    width: 100%;
    height: auto;
    padding: 20px;
    box-sizing: border-box;
  }
  .sub_page_Title .text h1 em {
    font-size: 2rem;
  }
  .sub_page_Title .text h1 small {
    font-size: 1.2rem;
  }
  .sub_page_Title figure {
    order: 0;
    width: 100%;
    height: 200px;
  }
}
.detail_article {
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
  margin-bottom: 60px;
}
.detail_article.flex {
  flex-wrap: wrap;
}
.detail_article .main_article {
  width: 650px;
}
.detail_article .main_article.wide {
  width: 675px;
}
.detail_article .aside {
  width: 300px;
}
.detail_article .aside.narrow {
  width: 275px;
}

@media screen and (max-width: 740px) {
  .detail_article {
    width: 100%;
    display: block;
    padding-top: 0px;
    margin-bottom: 30px;
  }
  .detail_article .main_article {
    width: 100%;
  }
  .detail_article .aside {
    width: 100% !important;
  }
  .detail_article .aside.narrow {
    margin-top: 20px;
  }
  .detail_article .aside .aside_box .aside_box_item {
    padding: 15px;
  }
  .detail_article .aside .aside_box .aside_box_item h3 {
    font-size: 1.6rem;
  }
  .detail_article.reverse {
    display: flex;
    flex-wrap: wrap;
  }
  .detail_article.reverse .main_article {
    order: 1;
    width: 100%;
  }
  .detail_article.reverse .aside {
    order: 0;
    width: 100%;
  }
  .detail_article.reverse .aside .blue_btn_large {
    height: 35px;
    margin: 20px auto 10px;
  }
  .detail_article.reverse .aside .blue_btn_large span {
    font-size: 1.3rem;
  }
}
.article_title {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 35px;
}
.article_title figure {
  width: 100%;
  height: 400px;
}
.article_title figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.article_title .text {
  padding: 25px;
  border-bottom: #dddddd solid 1px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.article_title .text .category {
  text-align: left;
  color: #da380c;
  width: 100%;
}
.article_title .text .category em {
  font-size: 1.4rem;
  font-weight: bold;
}
.article_title .text .category span {
  padding-left: 10px;
  font-size: 1.3rem;
  font-weight: 700;
  text-transform: uppercase;
}
.article_title .text h1 {
  width: 100%;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.35;
  padding: 15px 0;
}
.article_title .text .release_time {
  font-size: 1.3rem;
}
.article_title .text .sns {
  display: flex;
  justify-content: center;
  align-items: center;
}
.article_title .text .sns li {
  margin: 0 5px;
}
.article_title .text .sns .icon-facebook {
  font-size: 2.6rem;
  color: #3b578a;
}
.article_title .text .sns .icon-twitter {
  font-size: 2.6rem;
  color: #43aedf;
}
.article_title .text .sns .icon-line {
  font-size: 2.6rem;
  color: #00b900;
}
.article_title .tag_list {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  padding: 17px 19px;
}
.article_title .tag_list li a {
  height: 28px;
  padding: 0 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ececec;
  border-radius: 14px;
  font-size: 1.3rem;
  color: #323232;
  margin: 8px 6px;
}
.article_title .tag_list li a:hover {
  background: #888888;
  color: #fff;
  filter: none;
}

.article_contents {
  background: #fff;
  padding: 35px 25px 25px;
  border-radius: 10px;
}
.article_contents .large_headline {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: bold;
  padding-bottom: 6px;
  border-bottom: #323232 solid 2px;
  margin-bottom: 30px;
  margin-top: 60px;
}
.article_contents .large_headline:first-child {
  margin-top: 0;
}
.article_contents .heading {
  font-size: 1.5rem;
  font-weight: bold;
  padding-bottom: 1em;
}
.article_contents .article_text {
  padding-bottom: 2em;
  font-size: 1.4rem;
  line-height: 2.15;
}
.article_contents .article_text a {
  color: #009ee8;
  text-decoration: underline;
}
.article_contents .article_text_center {
  text-align: center;
  font-size: 1.4rem;
  line-height: 2.15;
}
.article_contents .article_bold {
  font-weight: bold;
  color: #da380c;
}
.article_contents .article_image {
  padding-bottom: 2em;
}
.article_contents .article_image figcaption {
  font-size: 1.1rem;
  color: #888888;
  padding-top: 1em;
}
.article_contents .table_contents {
  padding: 20px;
  background: #f6f6f6;
  margin-bottom: 60px;
}
.article_contents .table_contents li {
  font-size: 1.4rem;
}
.article_contents .table_contents li:before {
  content: "\e901";
  font-family: "icomoon";
  font-size: 1rem;
  margin-right: 5px;
}
.article_contents .table_contents li a {
  color: #323232;
  text-decoration: underline;
}
.article_contents .table_contents li a:hover {
  color: #da380c;
}
.article_contents .table_contents li + li {
  padding-top: 8px;
}
.article_contents .article_advertise {
  padding: 15px;
  background: #f0f0f0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 60px;
}
.article_contents .article_advertise figure {
  width: 228px;
  flex-shrink: 0;
}
.article_contents .article_advertise figure img {
  width: 100%;
}
.article_contents .article_advertise .text {
  padding-left: 15px;
}
.article_contents .article_advertise .text em {
  font-weight: bold;
  font-size: 1.3rem;
}
.article_contents .article_advertise .text p {
  padding: 10px 0;
  font-size: 1.2rem;
}
.article_contents .article_advertise .text a {
  font-size: 1.2rem;
  color: #323232;
  text-decoration: underline;
}
.article_contents .article_advertise .text a:hover {
  color: #da380c;
}
.article_contents .article_table {
  width: 100%;
  font-size: 1.4rem;
  border-bottom: #cccccc solid 1px;
  margin-bottom: 60px;
}
.article_contents .article_table thead tr th {
  padding: 15px;
  text-align: left;
  font-weight: bold;
  background: #f3f3f3;
  border-left: #cccccc solid 1px;
  border-top: #cccccc solid 1px;
}
.article_contents .article_table thead tr th:last-child {
  border-right: #cccccc solid 1px;
}
.article_contents .article_table tbody tr th {
  padding: 15px;
  text-align: left;
  font-weight: bold;
  background: #f3f3f3;
  border-left: #cccccc solid 1px;
  border-top: #cccccc solid 1px;
}
.article_contents .article_table tbody tr td {
  padding: 15px;
  text-align: left;
  border-left: #cccccc solid 1px;
  border-top: #cccccc solid 1px;
}
.article_contents .article_table tbody tr td:last-child {
  border-right: #cccccc solid 1px;
}
.article_contents .article_btn {
  width: 350px;
  height: 50px;
  border-radius: 25px;
  border: #555555 solid 1px;
  box-sizing: border-box;
  background: #f6f6f6;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #da380c;
  margin: 0 auto 60px;
}
.article_contents .article_btn .icon-arrow {
  font-size: 1rem;
  margin-right: 5px;
}
.article_contents .article_btn span {
  font-weight: bold;
  font-size: 1.6rem;
}
.article_contents .article_btn:hover {
  border-color: #da380c;
}
.article_contents .article_red_box {
  border: #ebb3a6 solid 4px;
  padding: 25px;
  margin-bottom: 2em;
}
.article_contents .article_red_box .article_text:last-child {
  padding-bottom: 0;
}
.article_contents .check_point {
  padding: 15px;
  background: #f0f0f0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 2em;
}
.article_contents .check_point figure {
  width: 224px;
  flex-shrink: 0;
}
.article_contents .check_point figure img {
  width: 100%;
}
.article_contents .check_point .text {
  padding-left: 20px;
}
.article_contents .check_point .text p {
  font-weight: bold;
  font-size: 1.3rem;
}
.article_contents .check_point .text a {
  font-size: 1.2rem;
  text-decoration: underline;
  color: #323232;
}
.article_contents .check_point .text a:hover {
  color: #da380c;
}
.article_contents .related_article {
  border: #555555 solid 2px;
  padding: 20px;
  margin-bottom: 25px;
}
.article_contents .related_article h3 {
  font-weight: bold;
  line-height: 1;
  padding-bottom: 10px;
}
.article_contents .related_article .item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 15px;
}
.article_contents .related_article .item figure {
  width: 100px;
  flex-shrink: 0;
}
.article_contents .related_article .item figure img {
  border-radius: 4px;
}
.article_contents .related_article .item .text {
  padding-left: 15px;
}
.article_contents .related_article .item .text .category {
  text-align: left;
  color: #da380c;
  width: 100%;
  line-height: 1.2;
}
.article_contents .related_article .item .text .category em {
  font-size: 1.2rem;
  font-weight: bold;
}
.article_contents .related_article .item .text .category span {
  padding-left: 10px;
  font-size: 1.2rem;
  font-weight: 700;
  text-transform: uppercase;
}
.article_contents .related_article .item .text p a {
  font-size: 1.5rem;
  color: #323232;
  text-decoration: underline;
}
.article_contents .related_article .item .text p a:hover {
  color: #da380c;
}
.article_contents .pages {
  border: #555555 solid 2px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.article_contents .pages .item {
  width: 50%;
  text-align: center;
  padding: 30px 30px 30px 40px;
  position: relative;
}
.article_contents .pages .item a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
  z-index: 10;
}
.article_contents .pages .item a:hover ~ em,
.article_contents .pages .item a:hover ~ p,
.article_contents .pages .item a:hover ~ i {
  color: #da380c;
}
.article_contents .pages .item em {
  font-weight: bold;
  font-size: 1.4rem;
  padding-bottom: 10px;
  display: block;
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.article_contents .pages .item p {
  line-height: 1.5;
  font-size: 1.5rem;
  text-align: left;
  color: #323232;
  text-decoration: underline;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  font-feature-settings: "palt";
  text-align: justify;
}
.article_contents .pages .item .icon-left {
  position: absolute;
  left: 15px;
  top: 50%;
  margin-top: -0.5em;
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.article_contents .pages .item .icon-right {
  position: absolute;
  right: 15px;
  top: 50%;
  margin-top: -0.5em;
  transition: all 0.2s ease;
  backface-visibility: hidden;
}
.article_contents .pages .item + .item {
  padding: 30px 40px 30px 30px;
}
.article_contents .pages .item + .item:before {
  content: "";
  width: 1px;
  height: calc(100% - 40px);
  position: absolute;
  left: 0;
  top: 20px;
  background: #888888;
}
.article_contents .partner_slide.swiper-container {
  margin: 0px 0 2em;
  padding: 0;
}
.article_contents .partner_slide.swiper-container .swiper-slide {
  width: auto;
  margin: 0;
}
.article_contents .partner_slide.swiper-container .swiper-button-next {
  background-image: none;
  display: flex;
  justify-content: center;
  align-items: center;
  right: 50px;
}
.article_contents .partner_slide.swiper-container .swiper-button-next i {
  font-size: 3rem;
}
.article_contents .partner_slide.swiper-container .swiper-button-prev {
  background-image: none;
  display: flex;
  justify-content: center;
  align-items: center;
  left: 50px;
}
.article_contents .partner_slide.swiper-container .swiper-button-prev i {
  font-size: 3rem;
}
.article_contents .partner_feature {
  border-top: #aaaaaa dotted 2px;
  padding: 20px 0;
}
.article_contents .partner_feature h3 {
  font-weight: bold;
  padding-bottom: 20px;
}
.article_contents .partner_feature .partner_feature_list {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  margin-left: -9px;
  margin-bottom: -9px;
}
.article_contents .partner_feature .partner_feature_list li {
  font-size: 1.3rem;
  border: #999999 solid 2px;
  line-height: 1;
  padding: 6px 10px;
  margin-left: 9px;
  margin-bottom: 9px;
}
.article_contents .branch {
  background: #f3f3f3;
  border-radius: 10px;
  padding: 20px;
  display: flex;
  justify-content: flex-start;
  margin-bottom: 20px;
}
.article_contents .branch figure {
  flex-shrink: 0;
  width: 150px;
}
.article_contents .branch figure a {
  display: block;
  border: #000 solid 1px;
}
.article_contents .branch .text {
  width: calc(100% - 150px);
  padding-left: 20px;
  box-sizing: border-box;
}
.article_contents .branch .text h3 {
  margin-bottom: 15px;
}
.article_contents .branch .text h3 i {
  color: #da380c;
  font-size: 1rem;
  margin-right: 5px;
}
.article_contents .branch .text h3 a {
  color: #da380c;
  font-size: 1.8rem;
  font-weight: 600;
  text-decoration: underline;
}
.article_contents .branch .text table {
  width: 100%;
  border-bottom: #999999 dotted 1px;
}
.article_contents .branch .text table th {
  text-align: left;
  border-top: #999999 dotted 1px;
  padding: 8px 0;
  font-size: 1.2rem;
  width: 90px;
}
.article_contents .branch .text table td {
  text-align: left;
  border-top: #999999 dotted 1px;
  padding: 5px 0;
  font-size: 1.2rem;
}
.article_contents .branch:last-child {
  margin-bottom: 0;
}
.article_contents .case_box {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  margin-left: -20px;
  margin-bottom: -20px;
}
.article_contents .case_box figure {
  margin-left: 20px;
  margin-bottom: 20px;
}
.article_contents .case_box figure figcaption {
  font-size: 1.4rem;
  padding-top: 5px;
}

.article_contents + .article_contents {
  margin-top: 30px;
}

.area_box_toggle {
  margin-top: 10px;
  margin-bottom: 15px;
}
.area_box_toggle dl {
  margin-top: 5px;
  width: 100%;
}
.area_box_toggle dl dt.toggle {
  background: #f3f3f3;
  height: 40px;
  padding-left: 10px;
  font-size: 1.4rem;
  font-weight: bold;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}
.area_box_toggle dl dt.toggle:before {
  content: "";
  width: 12px;
  height: 3px;
  background: #000;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -2px;
}
.area_box_toggle dl dt.toggle:after {
  content: "";
  width: 12px;
  height: 3px;
  background: #000;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -2px;
  transition: all 0.2s ease;
  backface-visibility: hidden;
  transform: rotate(90deg);
}
.area_box_toggle dl dt.toggle.on:after {
  transform: rotate(0deg);
}
.area_box_toggle dl dd {
  display: none;
  padding: 0 10px 10px;
  background: #f3f3f3;
  font-size: 1.4rem;
}

.aside .aside_rectangle {
  margin-bottom: 20px;
}
.aside .aside_box {
  background: #fff;
  border-radius: 10px;
  border: #888888 solid 2px;
  margin-bottom: 20px;
}
.aside .aside_box .aside_box_item {
  padding: 25px;
}
.aside .aside_box .aside_box_item h3 {
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem;
}
.aside .aside_box .aside_box_item p {
  font-size: 1.3rem;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 1px;
  padding: 20px 0;
}
.aside .aside_box .aside_box_item p.area_text {
  text-align: left;
  padding-top: 10px;
}
.aside .aside_box .aside_box_item .blue_btn {
  margin: 0 auto;
  width: 200px;
  height: 35px;
}
.aside .aside_box .aside_box_item .blue_btn span {
  font-size: 1.4rem;
}
.aside .aside_box .aside_box_item .blue_btn_large {
  margin: 20px 0 10px;
}
.aside .aside_box .aside_box_item .red.bold {
  color: #da380c;
  font-weight: bold;
}
.aside .aside_box .aside_box_item .btn_box .blue_btn_large + .blue_btn_large {
  margin-top: 0;
}
.aside .aside_box .aside_box_item .unit_price {
  font-size: 1.8rem;
  text-align: center;
  font-weight: 600;
}
.aside .aside_box .aside_box_item .unit_price em {
  font-size: 2.5rem;
  font-weight: 600;
}
.aside .aside_box .aside_box_item .area_tag {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  margin: 20px 0 10px;
}
.aside .aside_box .aside_box_item .area_tag li {
  margin-right: 10px;
  margin-bottom: 10px;
}
.aside .aside_box .aside_box_item .area_tag li a {
  font-size: 1.3rem;
  padding: 6px 8px;
  line-height: 1;
  border: #999999 solid 2px;
  display: inline-block;
  color: #323232;
}
.aside .aside_box .aside_box_item + .aside_box_item {
  border-top: #aaaaaa dotted 2px;
  padding: 15px 25px 10px;
}
.aside .aside_box .aside_nav li a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  color: #da380c;
  padding: 15px 0;
}
.aside .aside_box .aside_nav li a i {
  flex-shrink: 0;
  font-size: 2.8rem;
  width: 40px;
  text-align: center;
}
.aside .aside_box .aside_nav li a i.icon-partners {
  font-size: 2.5rem;
}
.aside .aside_box .aside_nav li a span {
  padding-left: 10px;
}
.aside .aside_box .aside_nav li a span em {
  line-height: 1;
  display: block;
  font-size: 1.5rem;
  font-weight: bold;
}
.aside .aside_box .aside_nav li a span small {
  padding-top: 5px;
  display: block;
  line-height: 1;
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
}
.aside .aside_box .aside_pick_up_list {
  padding: 20px 18px;
}
.aside .aside_box .aside_pick_up_list h3 {
  font-weight: 700;
  font-size: 1.6rem;
  text-transform: uppercase;
  padding-bottom: 20px;
}
.aside .aside_box .aside_pick_up_list .list_item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 15px;
}
.aside .aside_box .aside_pick_up_list .list_item figure {
  width: 100px;
  flex-shrink: 0;
}
.aside .aside_box .aside_pick_up_list .list_item figure img {
  border-radius: 4px;
}
.aside .aside_box .aside_pick_up_list .list_item .text {
  padding-left: 10px;
}
.aside .aside_box .aside_pick_up_list .list_item .text .category {
  text-align: left;
  color: #da380c;
  width: 100%;
  line-height: 1.2;
}
.aside .aside_box .aside_pick_up_list .list_item .text .category em {
  font-size: 1.1rem;
  font-weight: bold;
}
.aside .aside_box .aside_pick_up_list .list_item .text .category span {
  padding-left: 10px;
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
}
.aside .aside_box .aside_pick_up_list .list_item .text p {
  line-height: 1.35;
}
.aside .aside_box .aside_pick_up_list .list_item .text p a {
  font-size: 1.2rem;
  color: #323232;
  text-decoration: underline;
}
.aside .aside_box .aside_pick_up_list .list_item .text p a:hover {
  color: #da380c;
}
.aside .aside_box .aside_pick_up_list .list_item:last-child {
  margin-bottom: 0;
}

.content_heading {
  font-size: 1.7rem;
  padding-bottom: 20px;
  font-weight: bold;
}

@media screen and (max-width: 740px) {
  .article_title {
    border-radius: 0px;
    margin-bottom: 30px;
  }
  .article_title figure {
    height: 280px;
  }
  .article_title .text {
    padding: 20px;
  }
  .article_title .text .category em {
    font-size: 1.2rem;
  }
  .article_title .text .category span {
    padding-left: 5px;
    font-size: 1.1rem;
  }
  .article_title .text h1 {
    font-size: 2rem;
  }
  .article_title .text .release_time {
    font-size: 1.2rem;
  }
  .article_title .tag_list {
    padding: 12px 14px;
  }
  .article_title .tag_list li a {
    height: 24px;
    padding: 0 10px;
    border-radius: 12px;
    font-size: 1.2rem;
    margin: 8px 6px;
  }
  .article_contents {
    padding: 25px 15px 15px;
    border-radius: 0px;
  }
  .article_contents .large_headline {
    padding-left: 15px;
    font-size: 1.7rem;
    margin: 60px -15px 30px;
  }
  .article_contents .large_headline:first-child {
    margin-top: 0;
  }
  .article_contents .heading {
    font-size: 1.4rem;
  }
  .article_contents .table_contents {
    padding: 15px;
  }
  .article_contents .article_advertise {
    padding: 15px;
    background: #f0f0f0;
    display: block;
    margin-bottom: 60px;
  }
  .article_contents .article_advertise figure {
    width: 100%;
    flex-shrink: 0;
  }
  .article_contents .article_advertise figure img {
    width: 100%;
  }
  .article_contents .article_advertise .text {
    padding-left: 0px;
    padding-top: 15px;
  }
  .article_contents .article_advertise .text p {
    padding: 5px 0;
  }
  .article_contents .article_table {
    font-size: 1.2rem;
  }
  .article_contents .article_table thead tr th {
    padding: 10px;
  }
  .article_contents .article_table tbody tr th {
    padding: 10px;
  }
  .article_contents .article_table tbody tr td {
    padding: 10px;
  }
  .article_contents .article_btn {
    max-width: 100%;
    width: 300px;
    height: 40px;
    border-radius: 20px;
  }
  .article_contents .article_btn span {
    font-size: 1.4rem;
  }
  .article_contents .article_red_box {
    padding: 15px;
  }
  .article_contents .check_point {
    padding: 15px;
    display: block;
    margin-bottom: 2em;
  }
  .article_contents .check_point figure {
    width: 100%;
    flex-shrink: 0;
  }
  .article_contents .check_point figure img {
    width: 100%;
  }
  .article_contents .check_point .text {
    padding-left: 0px;
    padding-top: 10px;
  }
  .article_contents .related_article {
    padding: 15px;
    margin-bottom: 25px;
  }
  .article_contents .related_article h3 {
    font-size: 1.4rem;
    padding-bottom: 0;
  }
  .article_contents .related_article .item .text {
    padding-left: 10px;
  }
  .article_contents .related_article .item .text .category em {
    font-size: 1.1rem;
  }
  .article_contents .related_article .item .text .category span {
    padding-left: 5px;
    font-size: 1.1rem;
  }
  .article_contents .related_article .item .text p a {
    font-size: 1.4rem;
  }
  .article_contents .pages {
    align-items: flex-start;
  }
  .article_contents .pages .item {
    width: 50%;
    text-align: center;
    padding: 15px 15px 15px 15px;
    position: relative;
  }
  .article_contents .pages .item em {
    font-size: 1.4rem;
  }
  .article_contents .pages .item p {
    font-size: 1.3rem;
  }
  .article_contents .pages .item .icon-left {
    left: 15px;
    top: 20px;
    margin-top: 0;
  }
  .article_contents .pages .item .icon-right {
    right: 15px;
    top: 20px;
    margin-top: 0;
  }
  .article_contents .pages .item + .item {
    padding: 15px 15px 15px 15px;
  }
  .article_contents .pages .item + .item:before {
    height: calc(100% - 30px);
    top: 15px;
  }
  .article_contents .partner_slide.swiper-container .swiper-slide img {
    max-width: 250px;
  }
  .article_contents .partner_slide.swiper-container .swiper-button-next {
    right: 10px;
  }
  .article_contents .partner_slide.swiper-container .swiper-button-next i {
    font-size: 2.5rem;
  }
  .article_contents .partner_slide.swiper-container .swiper-button-prev {
    left: 10px;
  }
  .article_contents .partner_slide.swiper-container .swiper-button-prev i {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 740px) and (max-width: 320px) {
  .article_contents .partner_slide.swiper-container .swiper-slide img {
    max-width: 200px;
  }
  .article_contents .partner_slide.swiper-container .swiper-button-next {
    right: 10px;
  }
  .article_contents .partner_slide.swiper-container .swiper-button-next i {
    font-size: 2rem;
  }
  .article_contents .partner_slide.swiper-container .swiper-button-prev {
    left: 10px;
  }
  .article_contents .partner_slide.swiper-container .swiper-button-prev i {
    font-size: 2rem;
  }
}
@media screen and (max-width: 740px) {
  .article_contents .partner_feature h3 {
    font-size: 1.4rem;
    color: #da380c;
    padding-bottom: 10px;
  }
  .article_contents .partner_feature .partner_feature_list {
    padding-top: 10px;
    margin-left: -8px;
    margin-bottom: -8px;
  }
  .article_contents .partner_feature .partner_feature_list li {
    font-size: 1.2rem;
    padding: 6px 8px;
    margin-left: 8px;
    margin-bottom: 8px;
  }
  .article_contents .partner_feature .unit_price {
    font-size: 1.6rem;
    font-weight: 600;
  }
  .article_contents .partner_feature .unit_price em {
    font-size: 2.2rem;
    font-weight: 600;
  }
  .article_contents .branch {
    border-radius: 10px;
    padding: 20px;
    display: block;
    margin-bottom: 15px;
    position: relative;
  }
  .article_contents .branch figure {
    width: 70px;
  }
  .article_contents .branch .text {
    width: 100%;
    padding-left: 0px;
  }
  .article_contents .branch .text h3 {
    position: absolute;
    left: 110px;
    top: 30px;
    margin-bottom: 0px;
    line-height: 1.35;
    padding-right: 20px;
  }
  .article_contents .branch .text h3 a {
    font-size: 1.4rem;
  }
  .article_contents .branch .text table {
    margin-top: 20px;
  }
  .article_contents .branch .text table th {
    padding: 6px 0;
    font-size: 1.2rem;
    width: 80px;
  }
  .article_contents .branch .text table td {
    padding: 6px 0;
    font-size: 1.2rem;
  }
  .article_contents .case_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-left: 0px;
    margin-bottom: -20px;
  }
  .article_contents .case_box figure {
    width: calc((100% - 15px) / 2);
    margin-left: 0px;
    margin-bottom: 20px;
  }
  .article_contents .case_box figure img {
    width: 100%;
  }
  .aside {
    box-sizing: border-box;
    padding: 0 20px;
    margin-top: 40px;
  }
  .aside .aside_rectangle {
    text-align: center;
    margin-bottom: 40px;
  }
  .aside .aside_box {
    border-radius: 8px;
  }
  .aside .aside_box .aside_box_item + .aside_box_item {
    padding: 15px 20px 10px;
  }
  .aside .aside_box .btn_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 12px 0;
  }
  .aside .aside_box .btn_box .blue_btn_large {
    margin: 0;
    height: 50px;
    width: calc(50% - 6px);
    border-radius: 7px;
  }
  .aside .aside_box .btn_box .blue_btn_large span {
    line-height: 1.2;
    text-align: center;
  }
  .aside .aside_box .aside_pick_up_list {
    padding: 16px 16px 16px;
  }
  .aside .aside_box .aside_pick_up_list h3 {
    padding-bottom: 10px;
  }
  .content_heading {
    font-size: 1.4rem;
    padding-bottom: 15px;
    padding-left: 10px;
  }
}
.ttl_landi_counter {
  width: 100%;
  height: 500px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #f5f5f5;
  position: relative;
}
.ttl_landi_counter .ttl_landi_txt {
  text-align: center;
}
.ttl_landi_counter .ttl_landi_txt h1 em {
  display: block;
  font-weight: bold;
  font-size: 2.6rem;
  line-height: 1;
  padding-bottom: 30px;
}
.ttl_landi_counter .ttl_landi_txt h1 span {
  width: 275px;
  height: 40px;
  border-radius: 20px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 2rem;
  font-weight: 600;
  margin: 15px auto 0;
}
.ttl_landi_counter figure {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 4520px;
  height: 98px;
  background: url(../img/town.png) repeat-x center center;
  background-size: 2260px 98px;
  animation: slide 60s linear infinite;
}
@keyframes slide {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-2260px, 0, 0);
  }
}

@media screen and (max-width: 740px) {
  .ttl_landi_counter {
    width: 100%;
    padding: 30px 0 80px;
    height: auto;
    display: block;
  }
  .ttl_landi_counter .ttl_landi_txt {
    text-align: center;
  }
  .ttl_landi_counter .ttl_landi_txt h1 {
    width: 240px;
    margin: 0 auto;
  }
  .ttl_landi_counter .ttl_landi_txt h1 em {
    display: block;
    font-weight: bold;
    font-size: 1.6rem;
  }
  .ttl_landi_counter .ttl_landi_txt h1 span {
    width: 100%;
    height: 32px;
    border-radius: 16px;
    font-size: 1.6rem;
    margin: 10px auto 0;
  }
}
.point_list.counter .item h3 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 30px;
}

@media screen and (max-width: 740px) {
  .point_list.counter .item h3 {
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}
.point {
  width: 1040px;
  margin: 0 auto;
  padding: 80px 0;
}
.point .point_ttl {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.point .point_ttl em {
  width: 200px;
  height: 66px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 3.4rem;
  position: relative;
}
.point .point_ttl em:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 33px 0 33px 24px;
  border-color: transparent transparent transparent #da380c;
  position: absolute;
  left: 100%;
  top: 0;
}
.point .point_ttl span {
  font-size: 2.8rem;
  font-weight: 600;
  margin-left: 40px;
}
.point .point_ttl + p {
  padding: 20px 0 40px;
}
.point .point_box {
  display: flex;
  justify-content: space-between;
}
.point .point_box .item {
  width: 480px;
  margin-bottom: 60px;
}
.point .point_box .item h4 {
  padding: 20px 0;
  font-weight: 600;
  font-size: 2rem;
  line-height: 1.5;
}
.point .point_box .item h4 small {
  display: block;
  font-size: 1.4rem;
  font-weight: 400;
}
.point:last-child {
  padding-bottom: 0;
}

@media screen and (max-width: 740px) {
  .point {
    width: 100%;
    margin: 0 auto;
    padding: 40px 20px 0;
    box-sizing: border-box;
  }
  .point .point_ttl {
    display: block;
  }
  .point .point_ttl em {
    width: 160px;
    height: 40px;
    font-size: 2rem;
  }
  .point .point_ttl em:before {
    border-width: 20px 0 20px 16px;
  }
  .point .point_ttl span {
    font-size: 2rem;
    font-weight: 600;
    margin-left: 0px;
    display: block;
    padding-top: 10px;
  }
  .point .point_ttl + p {
    padding: 10px 0 20px;
  }
  .point .point_box {
    display: block;
  }
  .point .point_box .item {
    width: 100%;
    margin-bottom: 30px;
  }
  .point .point_box .item figure {
    width: 100%;
  }
  .point .point_box .item figure img {
    width: 100%;
  }
  .point .point_box .item h4 {
    padding: 15px 0;
    font-size: 1.6rem;
    text-align: center;
  }
  .point .point_box .item h4 small {
    display: block;
    font-size: 1.2rem;
    font-weight: 400;
  }
  .point .point_box .item:last-child {
    margin-bottom: 0;
  }
}
/* .service {
  overflow: hidden;
}
.service .Benefits {
  width: 800px;
  border: #da380c solid 4px;
  padding: 36px;
  box-sizing: border-box;
  background: #fff;
  position: relative;
  z-index: 10;
  text-align: center;
}
.service .Benefits em {
  width: 238px;
  height: 54px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 2.6rem;
  font-weight: 600;
  margin: 0 auto;
}
.service .Benefits h2 {
  font-size: 2.8rem;
  color: #da380c;
  font-weight: 600;
  line-height: 1.5;
  margin: 30px 0;
}
.service .Benefits p {
  text-align: center;
}

@media screen and (max-width: 740px) {
  .service {
    overflow: hidden;
  }
  .service .Benefits {
    width: 100%;
    border: #da380c solid 2px;
    padding: 16px;
  }
  .service .Benefits em {
    width: 218px;
    height: 38px;
    font-size: 1.6rem;
  }
  .service .Benefits h2 {
    font-size: 2rem;
    color: #da380c;
    font-weight: 600;
    line-height: 1.5;
    margin: 15px 0;
  }
  .service .Benefits p {
    text-align: center;
  }
} */
.counter_exhibition {
  width: 960px;
  margin: 0 auto;
  padding-bottom: 100px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.counter_exhibition .map {
  order: 1;
  flex-shrink: 1;
  width: 460px;
  height: 312px;
  position: relative;
}
.counter_exhibition .map iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
}
.counter_exhibition .text {
  order: 0;
  width: 460px;
  position: relative;
}
.counter_exhibition .text .circle {
  position: absolute;
  right: 0;
  top: 0;
}
.counter_exhibition .text .circle span {
  text-align: center;
  font-feature-settings: "palt";
}
.counter_exhibition .text .circle span em {
  font-size: 1.4rem;
  display: block;
  font-weight: bold;
  line-height: 1.25;
  color: #da380c;
}
.counter_exhibition .text .circle span small {
  color: #da380c;
  line-height: 1.5;
  padding-top: 2px;
  font-size: 1rem;
  display: block;
}
.counter_exhibition .text figure {
  padding-bottom: 10px;
}
.counter_exhibition .text p small {
  padding-top: 10px;
  display: block;
  font-size: 1.4rem;
}
.counter_exhibition .rsv_area {
  margin-top: 50px;
  order: 2;
  width: 100%;
  background: #fafafa;
  padding: 20px;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.counter_exhibition .rsv_area .tel {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  pointer-events: none;
}
.counter_exhibition .rsv_area .tel span {
  display: block;
  font-weight: 600;
  font-size: 2.8rem;
  padding-left: 10px;
  letter-spacing: 2px;
  line-height: 38px;
}
.counter_exhibition .rsv_area .tel small {
  font-size: 1.5rem;
}
.counter_exhibition .rsv_area .rsv_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 200px;
  height: 40px;
  border-radius: 20px;
  background: #da380c;
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
}

@media screen and (max-width: 740px) {
  .counter_exhibition {
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    margin: 0 auto;
    padding-bottom: 40px;
    display: block;
    position: relative;
  }
  .counter_exhibition .map {
    flex-shrink: 0;
    width: 100%;
    height: 262px;
    position: relative;
  }
  .counter_exhibition .map iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: block;
  }
  .counter_exhibition .text {
    width: 100%;
    text-align: center;
    padding-top: 15px;
    position: static;
  }
  .counter_exhibition .text .circle {
    position: static;
    display: block;
    text-align: center;
  }
  .counter_exhibition .text .circle span em {
    font-size: 1.2rem;
  }
  .counter_exhibition .text .circle span small {
    font-size: 1rem;
  }
  .counter_exhibition .text p {
    text-align: center;
  }
  .counter_exhibition .text p small {
    display: block;
    font-size: 1.2rem;
  }
  .counter_exhibition .rsv_area {
    margin-top: 20px;
    width: 100%;
    background: #fafafa;
    padding: 15px;
    display: block;
  }
  .counter_exhibition .rsv_area .tel {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    pointer-events: auto;
  }
  .counter_exhibition .rsv_area .tel img {
    width: 26px;
  }
  .counter_exhibition .rsv_area .tel span {
    font-size: 2.4rem;
    padding-left: 5px;
    letter-spacing: 1px;
    line-height: 26px;
  }
  .counter_exhibition .rsv_area .tel small {
    display: block;
    width: 100%;
    font-size: 1.2rem;
    text-align: center;
  }
  .counter_exhibition .rsv_area .rsv_btn {
    margin: 20px auto 0;
    width: 200px;
    height: 40px;
    border-radius: 20px;
    background: #da380c;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
  }
}
.reserve {
  width: 960px;
  margin: 0 auto;
  padding-bottom: 80px;
  display: flex;
  justify-content: space-between;
}
.reserve .item {
  width: 460px;
  background: #fafafa;
  text-align: center;
  padding: 50px 25px 25px;
  box-sizing: border-box;
}
.reserve .item h3 {
  font-weight: bold;
  font-size: 2rem;
}
.reserve .item p {
  text-align: center;
  padding: 15px 0 30px;
}
.reserve .item a.tel {
  width: 350px;
  height: 78px;
  border-radius: 39px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  pointer-events: none;
}
.reserve .item .rsv_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 200px;
  height: 40px;
  border-radius: 20px;
  background: #da380c;
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
}

@media screen and (max-width: 740px) {
  .reserve {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto;
    padding-bottom: 0px;
    display: block;
  }
  .reserve .item {
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    margin-bottom: 20px;
  }
  .reserve .item h3 {
    font-size: 1.8rem;
  }
  .reserve .item p {
    padding: 10px 0 20px;
  }
  .reserve .item a.tel {
    width: 100%;
    height: 58px;
    border-radius: 29px;
    pointer-events: auto;
  }
  .reserve .item a.tel img {
    width: auto;
    height: 38px;
  }
  .reserve .item .rsv_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    width: 200px;
    height: 40px;
    border-radius: 20px;
    background: #da380c;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
  }
}
.ttl_landi_area {
  width: 100%;
  height: 180px;
  background: #f5f5f5 url(../img/town.png) no-repeat center bottom;
  background-size: auto 98px;
}

@media screen and (max-width: 740px) {
  .ttl_landi_area {
    width: 100%;
    height: 120px;
    background: #f5f5f5 url(../img/town.png) no-repeat center bottom;
    background-size: auto 66px;
  }
}
.area {
  text-align: center;
  margin-top: 90px;
}
.area h2 {
  font-size: 2.8rem;
  font-weight: 600;
  margin-bottom: 30px;
}
.area p {
  text-align: center;
  margin-bottom: 50px;
}
.area .area_list {
  margin: 100px auto;
  display: flex;
  justify-content: center;
}
.area .area_list dl {
  margin: 0 8px;
}
.area .area_list dl dt {
  width: 100px;
  height: 32px;
  background: #f0f0f0;
  border-radius: 16px;
  color: #da380c;
  font-weight: 600;
  font-size: 1.4rem;
  margin-bottom: 20px;
}
.area .area_list dl dd {
  text-align: center;
  line-height: 2.4;
}
.area .area_list dl dd a.disabled {
  pointer-events: none;
  color: #c0c0c0;
}
.area .area_list dl dd a:hover {
  color: #da380c;
  text-decoration: underline;
}

@media screen and (max-width: 740px) {
  .area {
    text-align: center;
    margin-top: 40px;
  }
  .area h2 {
    font-size: 2rem;
    margin-bottom: 10px;
  }
  .area p {
    text-align: center;
    padding: 0 20px;
    margin-bottom: 20px;
  }
  .area figure {
    padding: 0 40px;
  }
  .area .area_list {
    margin: 40px auto;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
  }
  .area .area_list dl {
    margin: 0 0 30px;
    min-width: 33%;
  }
  .area .area_list dl dt {
    width: 90px;
    height: 24px;
    border-radius: 12px;
    font-size: 1.2rem;
    margin: 0 auto 10px;
  }
  .area .area_list dl dd {
    text-align: center;
    line-height: 2;
  }
  .area .area_list dl dd a:hover {
    color: #da380c;
    text-decoration: underline;
  }
}
.exhibition_box {
  margin: 100px 0;
}
.exhibition_box .counter_exhibition {
  padding-bottom: 40px;
}
.exhibition_box .exhibition_reserve {
  width: 1000px;
  padding: 20px 60px 0;
  box-sizing: border-box;
  margin: 0 auto;
  background: #fafafa;
}
.exhibition_box .exhibition_reserve .reserve_ttl {
  width: 100%;
  font-size: 2.2rem;
  padding-bottom: 6px;
  font-weight: 600;
  color: #da380c;
  text-align: center;
  border-bottom: #da380c solid 2px;
}
.exhibition_box .exhibition_reserve .reserve {
  width: 100%;
  padding: 30px 0;
}
.exhibition_box .exhibition_reserve .reserve .item {
  width: 400px;
  padding: 0px;
}
.exhibition_box .exhibition_reserve .reserve .item .rsv_btn {
  margin: 19px auto;
}
.exhibition_box .exhibition_reserve .reserve .item p {
  padding-bottom: 0;
}
.exhibition_box .red_btn_large {
  margin-top: 100px;
}

@media screen and (max-width: 740px) {
  .exhibition_box {
    margin: 40px 0;
  }
  .exhibition_box .counter_exhibition {
    padding-bottom: 20px;
  }
  .exhibition_box .exhibition_reserve {
    width: calc(100% - 40px);
    padding: 20px 20px 0;
    box-sizing: border-box;
  }
  .exhibition_box .exhibition_reserve .reserve_ttl {
    width: 100%;
    font-size: 1.8rem;
    padding-bottom: 2px;
    border-bottom: #da380c solid 1px;
  }
  .exhibition_box .exhibition_reserve .reserve {
    width: 100%;
    padding: 20px 0;
  }
  .exhibition_box .exhibition_reserve .reserve .item {
    width: 100%;
    padding: 0px;
  }
  .exhibition_box .exhibition_reserve .reserve .item .rsv_btn {
    margin: 30px auto 0;
  }
  .exhibition_box .exhibition_reserve .reserve .item p {
    padding-bottom: 0;
  }
  .exhibition_box .red_btn_large {
    margin-top: 40px;
  }
}
.service_box {
  background: #f0f0f0;
  width: 100%;
  overflow: hidden;
  padding-bottom: 80px;
}
.service_box .inner {
  width: 1000px;
  margin: 80px auto 0;
  background: #fff;
  box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.16);
  text-align: center;
  padding: 60px;
  box-sizing: border-box;
}
.service_box .inner .logo {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin-bottom: 55px;
}
.service_box .inner .logo span {
  width: 132px;
  height: 32px;
  background: #da380c;
  border-radius: 4px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 600;
  margin-left: 28px;
}
.service_box .inner .text_box {
  display: flex;
  justify-content: space-between;
}
.service_box .inner .text_box figure {
  flex-shrink: 0;
}
.service_box .inner .text_box .text {
  padding-left: 30px;
  position: relative;
}
.service_box .inner .text_box .text a.more {
  position: absolute;
  right: 0;
  bottom: 0;
}
.service_box .inner .text_box_02 {
  margin-top: 112px;
}
.service_box .inner .text_box_02 h3 {
  font-weight: 600;
  font-size: 2.8rem;
  margin-bottom: 30px;
}
.service_box .inner .text_box_02 figure {
  margin-bottom: 35px;
}
.service_box .inner .text_box_02 .red_btn_large {
  margin-top: 35px;
}

@media screen and (max-width: 740px) {
  .service_box {
    width: 100%;
    padding: 0 15px 20px;
    box-sizing: border-box;
  }
  .service_box .inner {
    width: 100%;
    margin: 40px auto 0;
    background: #fff;
    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.16);
    text-align: center;
    padding: 25px 15px;
    box-sizing: border-box;
  }
  .service_box .inner .logo {
    display: block;
    margin-bottom: 25px;
  }
  .service_box .inner .logo img {
    width: 170px;
    height: auto;
  }
  .service_box .inner .logo span {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 170px;
    height: 22px;
    border-radius: 11px;
    font-size: 1.1rem;
    margin: 10px auto 0;
  }
  .service_box .inner .text_box {
    display: block;
  }
  .service_box .inner .text_box figure {
    flex-shrink: 0;
  }
  .service_box .inner .text_box .text {
    padding-left: 0px;
    position: relative;
  }
  .service_box .inner .text_box .text p {
    padding: 10px 0;
  }
  .service_box .inner .text_box .text a.more {
    position: relative;
    margin: 0 auto;
  }
  .service_box .inner .text_box_02 {
    margin-top: 40px;
  }
  .service_box .inner .text_box_02 h3 {
    font-size: 2rem;
    margin-bottom: 20px;
  }
  .service_box .inner .text_box_02 figure {
    margin-bottom: 10px;
  }
  .service_box .inner .text_box_02 .red_btn_large {
    margin-top: 15px;
  }
}
.pageTop {
  position: fixed;
  right: 40px;
  bottom: -68px;
  z-index: 100;
  transition: all 0.4s cubic-bezier(1, 0, 0, 1);
  backface-visibility: hidden;
  opacity: 0;
}
.pageTop.on {
  bottom: 60px;
  opacity: 1;
}

@media screen and (max-width: 740px) {
  .pageTop {
    display: none;
  }
}
.youtube_box {
  width: 1040px;
  margin: 0 auto 100px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.youtube_box .item {
  width: 480px;
  height: 267px;
  position: relative;
}

.youtube_box .item iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
}

@media screen and (max-width: 740px) {
  .youtube_box {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto 20px;
    display: block;
  }
  .youtube_box .item {
    width: 100%;
    height: auto;
    padding-top: 55.6%;
  }
  .youtube_box .item + .item {
    margin-top: 20px;
  }
}
.ttl_landi_frontpage {
  width: 100%;
  height: 500px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  position: relative;
}
.ttl_landi_frontpage .frontpage_txt {
  text-align: center;
}
.ttl_landi_frontpage .frontpage_txt h1 em {
  display: block;
  font-weight: bold;
  font-size: 2.9rem;
  line-height: 1.42;
  padding-bottom: 30px;
  font-feature-settings: "palt";
  text-align: center;
  white-space: nowrap;
}
.ttl_landi_frontpage .frontpage_txt h1 em span {
  font-weight: 200;
  color: #da380c;
}
.ttl_landi_frontpage #aoi {
  position: absolute;
  left: 50%;
  bottom: 0;
  margin-left: 120px;
  z-index: 10;
}
.ttl_landi_frontpage #scroll {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 4520px;
  height: 98px;
  background: url(../img/town.png) repeat-x center center;
  background-size: 2260px 98px;
  animation: slide 60s linear infinite;
}
@keyframes slide {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-2260px, 0, 0);
  }
}

@media screen and (max-width: 740px) {
  .ttl_landi_frontpage {
    width: 100%;
    padding: 23.33333vw 0 28.66667vw;
    height: auto;
    display: block;
  }
  .ttl_landi_frontpage .frontpage_txt {
    margin: 0;
  }
  .ttl_landi_frontpage .frontpage_txt h1 {
    margin: 0 auto;
    box-sizing: border-box;
  }
  .ttl_landi_frontpage .frontpage_txt h1 em {
    text-align: center;
    display: block;
    font-weight: bold;
    font-size: 3.2vw;
    padding-bottom: 10px;
    white-space: nowrap;
  }
  .ttl_landi_frontpage .frontpage_txt img {
    width: 49.8%;
  }
  .ttl_landi_frontpage #aoi {
    position: absolute;
    left: auto;
    right: 10px;
    bottom: 0;
    margin-left: 0;
    z-index: 10;
    width: 49.8%;
  }
  .ttl_landi_frontpage #aoi img {
    width: 100%;
    height: auto;
  }
}
.modal_box {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  transition: all 0.5s ease;
  backface-visibility: hidden;
  opacity: 0;
  transform: scale(1.1);
  pointer-events: none;
}
.modal_box.on {
  opacity: 1;
  transform: scale(1);
  pointer-events: auto;
}
.modal_box .modal_box_item {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 924px;
  max-width: 100%;
  box-sizing: border-box;
  height: 70%;
  background: #fff;
  z-index: 10;
  transition: all 0.4s ease;
  backface-visibility: hidden;
  opacity: 0;
  pointer-events: none;
}
.modal_box .modal_box_item.on {
  opacity: 1;
  pointer-events: auto;
}
.modal_box .modal_box_item .modal_box_cover {
  overflow-y: auto;
  width: 100%;
  height: 100%;
  -webkit-overflow-scrolling: touch;
}
.modal_box .modal_box_item .modal_box_cover:before {
  content: "";
  position: absolute;
  right: 0;
  top: -50px;
  width: 45px;
  height: 2px;
  background: #fff;
  z-index: 100;
  transform: rotate(45deg);
  pointer-events: none;
}
.modal_box .modal_box_item .modal_box_cover:after {
  content: "";
  position: absolute;
  right: 0;
  top: -50px;
  width: 45px;
  height: 2px;
  background: #fff;
  z-index: 100;
  transform: rotate(-45deg);
  pointer-events: none;
}
.modal_box .modal_box_item .modal_box_cover .modal_box_inner {
  width: 100%;
  padding: 76px 76px 100px;
  box-sizing: border-box;
}
.modal_box .modal_box_item .modal_box_cover .modal_box_inner h3 small {
  display: inline-block;
  font-family: "JetBrains Mono", monospace;
  font-size: 1.6rem;
  position: relative;
  line-height: 1.25;
}
.modal_box .modal_box_item .modal_box_cover .modal_box_inner h3 small:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #da380c;
}
.modal_box .modal_box_item .modal_box_cover .modal_box_inner h3 em {
  display: block;
  font-size: 2.4rem;
  font-weight: bold;
}
.modal_box .modal_box_item .modal_box_cover .modal_box_inner h4 {
  background: #646464;
  text-align: center;
  color: #fff;
  font-size: 2rem;
  margin-bottom: 30px;
  margin-top: 76px;
}
.modal_box .modal_box_item .modal_box_cover .modal_box_inner ol li {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 1em;
}
.modal_box .modal_box_item .modal_box_cover .modal_box_inner ol li em {
  width: 240px;
  flex-shrink: 0;
}
.modal_box .modal_box_item .modal_box_cover .modal_box_inner .red_btn_large {
  margin-top: 100px;
}
.modal_box #modal_box_bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
  background: rgba(0, 0, 0, 0.6);
}

@media screen and (max-width: 740px) {
  .modal_box .modal_box_item {
    width: 96%;
    max-width: 100%;
    box-sizing: border-box;
    height: 86%;
    position: fixed;
    left: 2%;
    top: auto;
    bottom: 1.5%;
    transform: none;
  }
  .modal_box .modal_box_item .modal_box_cover:before {
    top: -30px;
  }
  .modal_box .modal_box_item .modal_box_cover:after {
    top: -30px;
  }
  .modal_box .modal_box_item .modal_box_cover .modal_box_inner {
    width: 100%;
    padding: 15px 15px 30px;
    box-sizing: border-box;
  }
  .modal_box .modal_box_item .modal_box_cover .modal_box_inner h3 small {
    display: inline-block;
    font-family: "JetBrains Mono", monospace;
    font-size: 1.6rem;
    position: relative;
    line-height: 1.25;
  }
  .modal_box .modal_box_item .modal_box_cover .modal_box_inner h3 small:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: #da380c;
  }
  .modal_box .modal_box_item .modal_box_cover .modal_box_inner h3 em {
    display: block;
    font-size: 2.4rem;
    font-weight: bold;
  }
  .modal_box .modal_box_item .modal_box_cover .modal_box_inner h4 {
    font-size: 1.5rem;
    margin-bottom: 20px;
    margin-top: 36px;
  }
  .modal_box .modal_box_item .modal_box_cover .modal_box_inner ol li {
    display: block;
    margin-bottom: 1em;
  }
  .modal_box .modal_box_item .modal_box_cover .modal_box_inner ol li em {
    display: block;
    width: 100%;
    flex-shrink: 0;
  }
  .modal_box .modal_box_item .modal_box_cover .modal_box_inner ol li p {
    padding-left: 1em;
  }
  .modal_box .modal_box_item .modal_box_cover .modal_box_inner .red_btn_large {
    margin-top: 30px;
  }
  .modal_box #modal_box_bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: block;
    background: rgba(0, 0, 0, 0.6);
  }
}
.docment_box {
  background: #f5f5f5;
  padding: 52px 0;
  width: 100%;
  position: relative;
}
.docment_box:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  width: 50vw;
  height: 100%;
  background: #f5f5f5;
  z-index: -1;
}
.docment_box::after {
  content: "";
  position: absolute;
  right: 50%;
  top: 0;
  width: 50vw;
  height: 100%;
  background: #f5f5f5;
  z-index: -1;
}
.docment_box .docment_box_inner {
  display: flex;
  justify-content: flex-start;
}
.docment_box .docment_box_inner .text {
  width: calc(100% - 400px);
  padding-left: 50px;
  box-sizing: border-box;
}
.docment_box .docment_box_inner .text h3 {
  line-height: 1.5;
  font-feature-settings: "palt";
  text-align: justify;
}
.docment_box .docment_box_inner .text h4 {
  font-size: 1.6rem;
  margin-top: 1em;
}
.docment_box .docment_box_inner .text ol {
  font-size: 1.4rem;
}

.form_ttl {
  text-align: center;
  color: #da380c;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin: 90px 0 60px;
}

@media screen and (max-width: 740px) {
  .docment_box {
    padding: 25px;
    width: 100%;
    box-sizing: border-box;
    position: relative;
  }
  .docment_box:before {
    content: none;
  }
  .docment_box::after {
    content: none;
  }
  .docment_box .docment_box_inner {
    flex-direction: column;
  }
  .docment_box .docment_box_inner .text {
    width: 100%;
    padding-left: 0px;
    padding-top: 20px;
    box-sizing: border-box;
  }
  .docment_box .docment_box_inner .text h3 {
    line-height: 1.5;
    font-feature-settings: "palt";
    text-align: justify;
  }
  .docment_box .docment_box_inner .text h4 {
    font-size: 1.4rem;
    margin-top: 1em;
  }
  .docment_box .docment_box_inner .text ol {
    font-size: 1.3rem;
  }
  .form_ttl {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1;
    margin: 45px 0 30px;
  }
}
.thanks_section {
  width: 1000px;
  background: #fff;
  margin: 0 auto;
  text-align: center;
  padding: 40px 40px 60px;
  box-sizing: border-box;
}
.thanks_section h2 {
  font-weight: bold;
  font-size: 2.8rem;
  margin-bottom: 20px;
}
.thanks_section p {
  text-align: center;
}
.thanks_section p + .btn_box {
  margin-top: 50px;
}

.thanks_section + .thanks_section {
  margin-top: 40px;
}

@media screen and (max-width: 740px) {
  .thanks_section {
    width: calc(100% - 40px) !important;
    padding: 20px;
  }
  .thanks_section h2 {
    font-weight: bold;
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
  .thanks_section p {
    text-align: left;
  }
  .thanks_section p + .btn_box {
    margin-top: 20px;
  }
  .thanks_section + .thanks_section {
    margin-top: 20px;
  }
}
.qa_contact {
  text-align: center;
  padding-top: 135px;
}
.qa_contact h2 {
  font-weight: bold;
  font-size: 2.8rem;
  line-height: 1;
  margin-bottom: 40px;
}
.qa_contact .qa_contact_box {
  width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-around;
}
.qa_contact .qa_contact_box .item {
  width: 175px;
  text-align: center;
}
.qa_contact .qa_contact_box .item h3 {
  font-size: 1.8rem;
  font-weight: bold;
}
.qa_contact .qa_contact_box .item p {
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.5;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.qa_contact .qa_contact_box .item .red_btn {
  width: 100%;
  height: 40px;
  border-radius: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #da380c;
}
.qa_contact .qa_contact_box .item .red_btn span {
  color: #fff;
  font-weight: bold;
  font-size: 1.6rem;
}

@media screen and (max-width: 740px) {
  .qa_contact {
    text-align: center;
    padding-top: 50px;
  }
  .qa_contact h2 {
    font-weight: bold;
    font-size: 2rem;
    line-height: 1;
    margin-bottom: 0px;
  }
  .qa_contact .qa_contact_box {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .qa_contact .qa_contact_box .item {
    width: calc(50% - 10px);
    text-align: center;
    margin-top: 25px;
  }
  .qa_contact .qa_contact_box .item h3 {
    font-size: 1.6rem;
    font-weight: bold;
  }
  .qa_contact .qa_contact_box .item p {
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.5;
    height: 50px;
  }
  .qa_contact .qa_contact_box .item .red_btn {
    width: 100%;
    height: 40px;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #da380c;
  }
  .qa_contact .qa_contact_box .item .red_btn span {
    color: #fff;
    font-weight: bold;
    font-size: 1.4rem;
  }
}
.recruitment_box {
  display: flex;
  justify-content: center;
  padding-top: 70px;
}
.recruitment_box .item figure {
  margin-bottom: 38px;
}
.recruitment_box .item .btn {
  width: 330px;
}
.recruitment_box .item + .item {
  margin-left: 70px;
}

@media screen and (max-width: 740px) {
  .recruitment_box {
    display: block;
    padding: 30px 20px;
  }
  .recruitment_box .item figure {
    margin-bottom: 16px;
  }
  .recruitment_box .item .btn {
    width: 100%;
  }
  .recruitment_box .item + .item {
    margin-left: 0px;
    margin-top: 50px;
  }
}
.interview_box {
  display: flex;
  justify-content: center;
  padding-top: 70px;
  padding-bottom: 100px;
}
.interview_box .item {
  width: 216px;
}
.interview_box .item figure {
  margin-bottom: 28px;
}
.interview_box .item .text .name {
  padding-bottom: 10px;
  border-bottom: #323232 solid 1px;
}
.interview_box .item .text .name em {
  display: block;
  font-size: 1.8rem;
}
.interview_box .item .text .name small {
  font-size: 1.3rem;
  display: block;
  line-height: 1;
}
.interview_box .item .text h3 {
  padding: 20px 0;
  line-height: 1.5;
  font-weight: bold;
}
.interview_box .item .text p {
  font-size: 1.4rem;
}
.interview_box .item + .item {
  margin-left: 46px;
}

@media screen and (max-width: 740px) {
  .interview_box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 30px 20px;
  }
  .interview_box .item {
    width: calc(50% - 10px);
    padding-bottom: 30px;
  }
  .interview_box .item figure {
    margin-bottom: 18px;
  }
  .interview_box .item .text .name {
    padding-bottom: 10px;
    border-bottom: #323232 solid 1px;
  }
  .interview_box .item .text .name em {
    display: block;
    font-size: 1.5rem;
  }
  .interview_box .item .text .name small {
    font-size: 1.1rem;
    line-height: 1.3;
  }
  .interview_box .item .text h3 {
    padding: 20px 0;
    line-height: 1.5;
    font-weight: bold;
  }
  .interview_box .item .text p {
    font-size: 1.2rem;
  }
  .interview_box .item + .item {
    margin-left: 0px;
  }
}
/*----------------------------------
2021-12-24 改修
----------------------------------*/
body:not(.renewal) #wrapper article section.animation .pmark {
  display: flex;
  width: 800px;
  margin: 30px auto 0 auto;
  justify-content: flex-start;
}
body:not(.renewal) #wrapper article section.animation .pmark img {
  width: 150px;
}
body:not(.renewal) #wrapper article section.animation .pmark table {
  margin-left: 44px;
}
body:not(.renewal) #wrapper article section.animation .pmark th {
  width: 110px;
  font-weight: normal;
  text-align: left;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article section.animation .pmark {
    width: 100%;
    display: block;
  }
  body:not(.renewal) #wrapper article section.animation .pmark img {
    display: block;
    margin: 0 auto 20px auto;
  }
  body:not(.renewal) #wrapper article section.animation .pmark table {
    width: calc(100% - 40px);
    margin: 0 auto;
    display: block;
  }
  body:not(.renewal) #wrapper article section.animation .pmark table tbody {
    display: block;
    width: 100%;
  }
  body:not(.renewal) #wrapper article section.animation .pmark table tbody tr {
    display: block;
    width: 100%;
  }
  body:not(.renewal)
    #wrapper
    article
    section.animation
    .pmark
    table
    tbody
    tr
    th {
    font-weight: bold;
    text-align: left;
  }
}
@media screen and (max-width: 740px) {
  body:not(.renewal)
    #wrapper
    article
    section.animation.where_get
    .sect_ttl_02
    + p {
    text-align: left;
  }
}
body:not(.renewal)
  #wrapper
  article
  section.animation
  .stores
  .stores_inner
  .item
  .flex {
  display: flex;
}
body:not(.renewal)
  #wrapper
  article
  section.animation
  .stores
  .stores_inner
  .item
  .flex
  .btn {
  max-width: 45%;
  border-radius: 5px;
}
body
  #wrap
  article
  section.animation
  .stores
  .stores_inner
  .item
  .flex
  .landi_area_url {
  font-size: 1.5rem;
}
@media screen and (max-width: 740px) {
  body
    #wrap
    article
    section.animation
    .stores
    .stores_inner
    .item
    .flex
    .landi_area_url {
    font-size: 1.2rem;
  }
}
body:not(.renewal) #wrapper article section.area h2 {
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article section.area h2 {
    margin-bottom: 8vw;
  }
}
body:not(.renewal) #wrapper article section.area .sub_ttl {
  color: #da380d;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.5;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article section.area .sub_ttl {
    font-size: 2rem;
    margin-bottom: 8vw;
  }
}
body:not(.renewal) #wrapper article section.area .flex {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 auto 40px;
  max-width: 790px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article section.area .flex {
    margin: 0 auto 10.67vw;
    max-width: 90vw;
  }
}
body:not(.renewal) #wrapper article section.area .flex a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  max-width: 250px;
  border: #da380d solid 3px;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.0015);
  border-radius: 10px;
  padding: 30px 25px;
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article section.area .flex a {
    justify-content: center;
    min-width: 100%;
    padding: 8vw 6.67vw;
  }
}
body:not(.renewal) #wrapper article section.area .flex a:not(:last-child) {
  margin-right: 20px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article section.area .flex a:not(:last-child) {
    margin-right: 0;
    margin-bottom: 8vw;
  }
}
body:not(.renewal) #wrapper article section.area .flex a img {
  width: 100%;
  max-width: 100%;
  height: 150px;
  margin: 0 auto;
  -o-object-fit: contain;
  object-fit: contain;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article section.area .flex a img {
    max-width: 34.67vw;
    height: 34.67vw;
  }
}
body:not(.renewal) #wrapper article section.area .flex a p {
  font-weight: bold;
  font-size: 18px;
  margin: 0;
}
body:not(.renewal) #wrapper article section.area .flex a p.name {
  color: #da380d;
  margin: 20px 0;
}
body:not(.renewal) #wrapper article section.area .flex a p.link {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #da380d;
  border-radius: 20px;
  color: #fff;
  width: 100%;
  height: 40px;
  box-sizing: border-box;
  position: relative;
}
body:not(.renewal) #wrapper article section.area .flex a p.link:before {
  position: absolute;
  content: "▶︎";
  font-size: 10px;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
}
body:not(.renewal) #wrapper article section.case_study .flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article section.case_study .flex {
    justify-content: center;
  }
}
body:not(.renewal) #wrapper article section.case_study .flex a {
  width: 100%;
  max-width: 350px;
  display: block;
}
body:not(.renewal) #wrapper article section.case_study .flex a .inner {
  background: #fafafa;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 182px;
  padding: 0;
  padding-right: 8px;
  position: relative;
  margin-bottom: 8px;
}
body:not(.renewal) #wrapper article section.case_study .flex a .inner:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 60px 60px 0 0;
  border-color: #da380c transparent transparent transparent;
}
body:not(.renewal) #wrapper article section.case_study .flex a .inner .txt {
  max-width: 225px;
  width: 100%;
}
body:not(.renewal) #wrapper article section.case_study .flex a .inner .txt * {
  font-weight: bold;
  text-align: center;
}
body:not(.renewal)
  #wrapper
  article
  section.case_study
  .flex
  a
  .inner
  .txt
  .content_ttl {
  font-size: 20px;
  letter-spacing: 0.2em;
  line-height: 2.1;
  margin-bottom: 6px;
}
body:not(.renewal)
  #wrapper
  article
  section.case_study
  .flex
  a
  .inner
  .txt
  .num {
  color: #da380c;
  font-size: 40px;
  letter-spacing: 0.1em;
  line-height: 0.65;
}
body:not(.renewal) #wrapper article section.case_study .flex a .inner img {
  width: 165px;
  height: 165px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: 0;
}
body:not(.renewal) #wrapper article section.case_study .flex a .inner + p {
  font-size: 15px;
  line-height: 2.3333333333;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article
    section.case_study
    .flex
    a:not(:last-child) {
    margin-bottom: 5.13vw;
  }
}
@media screen and (min-width: 769px) {
  body:not(.renewal) #wrapper article section.case_study .flex a:hover {
    filter: brightness(90%);
  }
}
body:not(.renewal) #wrapper article .detail_article .aside .adlist li a {
  display: block;
  width: 100%;
}
body:not(.renewal) #wrapper article .detail_article .aside .adlist li a img {
  width: 100%;
}
body:not(.renewal)
  #wrapper
  article
  .detail_article
  .aside
  .adlist
  li:not(:last-child) {
  margin-bottom: 20px;
}
body:not(.renewal)
  #wrapper
  article
  .detail_article
  .aside
  .adlist
  li.landi_app {
  padding: 30px 18px 20px;
  border: 2px solid #da380c;
  border-radius: 10px;
}
body:not(.renewal)
  #wrapper
  article
  .detail_article
  .aside
  .adlist
  li.landi_app
  img.ttl {
  max-width: 230px;
  display: block;
  margin: 0 auto 20px;
}
body:not(.renewal)
  #wrapper
  article
  .detail_article
  .aside
  .adlist
  li.landi_app
  ul {
  max-width: 80%;
  margin: 0 auto;
}

/*----------------------------------
2022-01-14 導入事例新設 ヘッダー追加
----------------------------------*/

body:not(.renewal) #wrapper article#case_study {
  padding-bottom: 50px;
}
body:not(.renewal) #wrapper article#case_study * {
  font-family: "メイリオ", "Meiryo", "ＭＳ ゴシック",
    "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  color: #323232;
}
body:not(.renewal) #wrapper article#case_study br.toc {
  display: none;
}
body:not(.renewal) #wrapper article#case_study br.content {
  display: none;
}
body:not(.renewal) #wrapper article#case_study .inner {
  margin: 0 auto;
}
body:not(.renewal) #wrapper article#case_study a {
  text-decoration: unset;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  body:not(.renewal) #wrapper article#case_study a {
    transition: 0.3s;
  }
  body:not(.renewal) #wrapper article#case_study a:hover {
    opacity: 0.8;
  }
}
body:not(.renewal) #wrapper article#case_study .flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article#case_study .flex {
    flex-direction: column;
  }
}
body:not(.renewal) #wrapper article#case_study .reverse {
  flex-direction: row-reverse;
}
body:not(.renewal) #wrapper article#case_study img {
  margin: 0 auto;
  display: block;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article#case_study .sp {
    display: block !important;
  }
}
@media screen and (min-width: 769px) {
  body:not(.renewal) #wrapper article#case_study .sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article#case_study .pc {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  body:not(.renewal) #wrapper article#case_study .pc {
    display: block !important;
  }
}
body:not(.renewal) #wrapper article#case_study section {
  box-sizing: border-box;
}
body:not(.renewal) #wrapper article#case_study .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  background: #da380c;
  color: #fff;
  font-weight: bold;
  max-width: 340px;
  height: 60px;
  border-radius: 50px;
  font-size: 20px;
  letter-spacing: 0.05em;
}
body:not(.renewal) #wrapper article#case_study .head_h2 {
  letter-spacing: 0.1em;
  font-weight: bold;
}
body:not(.renewal) #wrapper article#case_study .contents_head {
  background: #f0f0f0;
  position: relative;
}
body:not(.renewal) #wrapper article#case_study .contents_head:before,
body:not(.renewal) #wrapper article#case_study .contents_head:after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
}
body:not(.renewal) #wrapper article#case_study .contents_head:before {
  top: 0;
  left: 0;
  border-width: 33.33vw 33.33vw 0 0;
  border-color: #da380c transparent transparent transparent;
}
@media screen and (min-width: 1200px) {
  body:not(.renewal) #wrapper article#case_study .contents_head:before {
    border-width: 400px 400px 0 0;
  }
}
body:not(.renewal) #wrapper article#case_study .contents_head:after {
  bottom: 0;
  right: 0;
  border-width: 0 0 16.21vw 16.21vw;
  border-color: transparent transparent #da380c transparent;
}
@media screen and (min-width: 1200px) {
  body:not(.renewal) #wrapper article#case_study .contents_head:after {
    border-width: 0 0 194.51px 194.51px;
  }
}
body:not(.renewal) #wrapper article#case_study .contents_head .inner {
  padding: 80px 0;
  max-width: 860px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article#case_study .contents_head .inner {
    padding: 20.51vw 0;
  }
}
body:not(.renewal) #wrapper article#case_study .contents_head .inner .main_txt {
  margin-bottom: 100px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_head
    .inner
    .main_txt {
    margin-bottom: 8.97vw;
    padding: 0 30px;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_head
  .inner
  .main_txt
  * {
  text-align: center;
  color: #323232;
  font-weight: bold;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_head
  .inner
  .main_txt
  .case_num_ttl {
  font-size: 28px;
  letter-spacing: 0.4em;
  line-height: 1.5;
  margin-bottom: 26px;
}
@media screen and (max-width: 768px) {
  body
    #wrapper
    article#case_study
    .contents_head
    .inner
    .main_txt
    .case_num_ttl {
    font-size: 28px;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_head
  .inner
  .main_txt
  .case_num {
  color: #da380c;
  position: relative;
  font-size: 60px;
  letter-spacing: 0.1em;
  line-height: 0.4333333333;
  margin-bottom: 75px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_head
    .inner
    .main_txt
    .case_num {
    font-size: 40px;
    margin-bottom: 14.1vw;
  }
}
body
  #wrapper
  article#case_study
  .contents_head
  .inner
  .main_txt
  .case_num:before {
  position: absolute;
  content: "";
  background: #da380c;
  width: 20px;
  height: 3px;
  border-radius: 1.5px;
  bottom: -36px;
  left: 50%;
  transform: translateX(-50%);
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_head
  .inner
  .main_txt
  .head_h1 {
  font-size: 28px;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_head
    .inner
    .main_txt
    .head_h1 {
    font-size: 15px;
    margin-bottom: 5.13vw;
  }
}
body
  #wrapper
  article#case_study
  .contents_head
  .inner
  .main_txt
  .company_underh1 {
  font-size: 26px;
  margin-bottom: 28px;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .contents_head
    .inner
    .main_txt
    .company_underh1 {
    font-size: 16px;
    margin-bottom: 5.13vw;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_head
  .inner
  .main_txt
  p
  span {
  display: block;
  line-height: 1.25;
  word-break: keep-all;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_head
    .inner
    .main_txt
    p
    span {
    line-height: 1.5;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_head
  .inner
  .main_txt
  p
  span
  + span {
  margin-top: 8px;
}
body:not(.renewal) #wrapper article#case_study .contents_head .inner .flex {
  align-items: flex-start;
  justify-content: flex-start;
  margin-bottom: 70px;
  flex-wrap: nowrap;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article#case_study .contents_head .inner .flex {
    margin-bottom: 10.26vw;
  }
}
body:not(.renewal) #wrapper article#case_study .contents_head .inner .flex img {
  width: 310px;
  height: 310px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: 0 70px 0 0;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_head
    .inner
    .flex
    img {
    width: 76.92vw;
    height: 76.92vw;
    margin: 0 auto 7.69vw;
  }
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_head
    .inner
    .flex
    .txt {
    padding: 0 30px;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_head
  .inner
  .flex
  .txt
  .head_h2 {
  font-size: 22px;
  line-height: 1.5;
  height: 50px;
  display: flex;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_head
    .inner
    .flex
    .txt
    .head_h2 {
    margin-bottom: 10px;
    height: auto;
    align-items: center;
    text-align: center;
    justify-content: center;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_head
  .inner
  .flex
  .txt
  p
  + .head_h2 {
  margin-top: 20px;
}
body:not(.renewal) #wrapper article#case_study .main_article .toc > .inner {
  padding: 90px 0 50px;
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article#case_study .main_article .toc > .inner {
    padding: 11.54vw 15px;
  }
}
body:not(.renewal) #wrapper article#case_study .main_article .toc br.toc {
  display: block;
}
body:not(.renewal) #wrapper article#case_study .main_article .toc .inner .ttl {
  color: #da380c;
  text-align: center;
  line-height: 1;
  font-weight: bold;
  font-size: 40px;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .main_article
    .toc
    .inner
    .ttl {
    font-size: 30px;
    margin-bottom: 20px;
  }
}
body:not(.renewal) #wrapper article#case_study .main_article .toc .inner a {
  display: block;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a
  .inner {
  width: 100%;
  max-width: 1000px;
  display: flex;
  align-items: flex-start;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a
  .inner
  .num {
  color: #da380c;
  font-weight: bold;
  margin-right: 20px;
  font-size: 26px;
  line-height: 1.2307692308;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .main_article
    .toc
    .inner
    a
    .inner
    .num {
    font-size: 20px;
    margin-right: 10px;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a
  .inner
  .toc_ttl {
  font-weight: bold;
  font-size: 20px;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .main_article
    .toc
    .inner
    a
    .inner
    .toc_ttl {
    font-size: 15px;
    line-height: 1.5;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a:hover {
  opacity: 1;
  background: #f0f0f0;
  filter: unset;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a:hover
  .toc_ttl {
  color: #da380c;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup {
  display: flex;
  justify-content: space-between;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup
  .inner {
  padding: 40px 0;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .main_article
    .toc
    .inner
    a.pickup
    .inner {
    padding: 5.13vw 0;
  }
}
body
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup
  .inner
  .txt {
  max-width: 520px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  body
    #wrapper
    article#case_study
    .main_article
    .toc
    .inner
    a.pickup
    .inner
    .txt {
    max-width: 100%;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup
  .inner
  .txt
  .num {
  position: relative;
  font-size: 46px;
  margin-bottom: 60px;
  line-height: 1;
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .toc
    .inner
    a.pickup
    .inner
    .txt
    .num {
    font-size: 30px;
    margin-bottom: 30px;
    text-align: center;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup
  .inner
  .txt
  .num:before {
  position: absolute;
  content: "";
  background: #da380c;
  width: 18px;
  height: 3px;
  border-radius: 1.5px;
  bottom: -30px;
  left: 0;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .toc
    .inner
    a.pickup
    .inner
    .txt
    .num:before {
    bottom: -15px;
    width: 4.8vw;
    left: 50%;
    transform: translate(-50%);
  }
}
body
  #wrap
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup
  .inner
  .txt
  .toc_ttl {
  font-size: 22px;
  letter-spacing: 0.1em;
  line-height: 1.6363636364;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .toc
    .inner
    a.pickup
    .inner
    .txt
    .toc_ttl {
    margin-bottom: 5px;
    text-align: center;
    font-size: 15px;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup
  .inner
  .txt
  .toc_ttl
  + p {
  line-height: 2;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .toc
    .inner
    a.pickup
    .inner
    .txt
    .toc_ttl
    + p {
    font-size: 12px;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup
  .inner
  img {
  width: 440px;
  height: 300px;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  body
    #wrapper
    article#case_study
    .main_article
    .toc
    .inner
    a.pickup
    .inner
    img {
    width: 100%;
    height: auto;
    margin-top: 15px;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup
  + a:not(.pickup) {
  margin-top: 37.5px;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .toc
    .inner
    a.pickup
    + a:not(.pickup) {
    margin-top: 0;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .toc
  .inner
  a.pickup:hover
  .inner
  .txt
  .toc_ttl {
  color: #323232;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .toc
  .inner
  a:not(.pickup) {
  padding: 20px 0;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .main_article
    .toc
    .inner
    a:not(.pickup) {
    padding: 10px 0;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .contents
  .content
  br.content {
  display: block;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .contents
  .content
  .inner {
  padding: 65px 0;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .main_article
    .contents
    .content
    .inner {
    padding: 11.54vw 15px;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .contents
  .content
  .inner
  .num {
  text-align: center;
  font-weight: bold;
  font-size: 46px;
  position: relative;
  line-height: 1;
  letter-spacing: 0.05em;
  margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
  body
    #wrapper
    article#case_study
    .main_article
    .contents
    .content
    .inner
    .num {
    font-size: 30px;
    margin-bottom: 30px;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .contents
  .content
  .inner
  .num:before {
  position: absolute;
  content: "";
  background: #da380c;
  width: 25px;
  height: 3px;
  border-radius: 1.5px;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .contents
    .content
    .inner
    .num:before {
    width: 6.67vw;
    bottom: -15px;
  }
}
body
  #wrapper
  article#case_study
  .main_article
  .contents
  .content
  .inner
  .head_h2 {
  text-align: center;
  font-size: 22px;
  margin-bottom: 50px;
  color: #da380c;
  line-height: 1.6363636364;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .contents
    .content
    .inner
    .head_h2 {
    font-size: 15px;
    margin-bottom: 5.33vw;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .contents
  .content
  .inner
  .txt_Area {
  width: 100%;
  max-width: 740px;
  margin: 0 auto;
}
body
  #wrap
  article#case_study
  .main_article
  .contents
  .content
  .inner
  .txt_Area
  .question {
  position: relative;
  font-size: 18px;
  padding-left: 1.8rem;
  font-weight: bold;
  margin-bottom: 15px;
  color: #505050;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .contents
    .content
    .inner
    .txt_Area
    .question {
    font-size: 15px;
    padding-left: 1.5rem;
  }
  body
    #wrap
    article#case_study
    .main_article
    .contents
    .content
    .inner
    .txt_Area
    .question
    br {
    display: none;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .contents
  .content
  .inner
  .txt_Area
  .question:before {
  position: absolute;
  content: "■";
  left: 0;
  top: -0.1em;
}
body
  #wrap
  article#case_study
  .main_article
  .contents
  .content
  .inner
  .txt_Area
  p {
  line-height: 1.75;
}
body
  #wrap
  article#case_study
  .main_article
  .contents
  .content
  .inner
  .txt_Area
  + .flex {
  max-width: 740px;
  margin: 0 auto;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .contents
  .content
  .inner
  img {
  margin-top: 50px;
  max-width: 370px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .main_article
    .contents
    .content
    .inner
    img {
    margin-top: 6.67vw;
    max-width: 100%;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .contents
  .content.gray {
  background: #f0f0f0;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .main_article
  .contents
  .content.message {
  background: #da380c;
  width: 100%;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .main_article
    .contents
    .content.message {
    padding: 0;
  }
}
body
  #wrapper
  article#case_study
  .main_article
  .contents
  .content.message
  .inner {
  padding: 70px 0 60px;
  max-width: 780px;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .contents
    .content.message
    .inner {
    padding: 18.667vw 20px;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .contents
  .content.message
  .inner
  * {
  color: #fff;
}
body
  #wrap
  article#case_study
  .main_article
  .contents
  .content.message
  .inner
  .head_h2 {
  font-size: 26px;
  line-height: 1.3846153846;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .contents
    .content.message
    .inner
    .head_h2 {
    font-size: 20px;
  }
}
body
  #wrap
  article#case_study
  .main_article
  .contents
  .content.message
  .inner
  .txt {
  font-size: 18px;
  padding: 0;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .main_article
    .contents
    .content.message
    .inner
    .txt {
    font-size: 14px;
  }
}
body:not(.renewal) #wrapper article#case_study .contents_footer .inner {
  max-width: 840px;
  padding: 95px 0 0;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article#case_study .contents_footer .inner {
    padding: 13.33vw 30px 0;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .head_h2 {
  text-align: center;
  line-height: 0.619047619;
  font-size: 42px;
  margin-bottom: 48px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_footer
    .inner
    .head_h2 {
    margin-bottom: 8vw;
    font-size: 30px;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .head_h2
  + a
  + .btn {
  margin: 40px auto 75px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_footer
    .inner
    .head_h2
    + a
    + .btn {
    margin: 5.33vw auto 8vw;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .flex
  .item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #fafafa;
  width: 100%;
  max-width: 400px;
  padding: 38px 0;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_footer
    .inner
    .flex
    .item {
    max-width: 100%;
    padding: 5.33vw 0;
  }
  body
    #wrap
    article#case_study
    .contents_footer
    .inner
    .flex
    .item:not(:last-child) {
    margin-bottom: 5.33vw;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .flex
  .item
  * {
  text-align: center;
  font-weight: bold;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .flex
  .item
  .head_h3 {
  font-size: 22px;
  letter-spacing: 0.02em;
  line-height: 1.3636363636;
}
@media screen and (max-width: 768px) {
  body
    #wrapper
    article#case_study
    .contents_footer
    .inner
    .flex
    .item
    .head_h3 {
    font-size: 20px;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .flex
  .item
  .img_box {
  width: 120px;
  height: 120px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 3.5px auto 7.5px;
}
body
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .flex
  .item
  .img_box
  img {
  margin: 0;
  width: 100%;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .flex
  .item
  .btn {
  max-width: 220px;
  width: 100%;
  height: 40px;
  font-size: 18px;
  letter-spacing: 0.1em;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .more_Area {
  margin-top: 155px;
  max-width: 840px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_footer
    .inner
    .more_Area {
    margin-top: 10vw;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .ttl {
  text-align: center;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.4em;
  font-size: 28px;
  margin-bottom: 32px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article#case_study
    .contents_footer
    .inner
    .more_Area
    .ttl {
    letter-spacing: 0.2em;
    font-size: 24px;
    margin-bottom: 5vw;
  }
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  a {
  width: 100%;
  max-width: 400px;
  display: block;
}
body
  #wrap
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  a
  .inner {
  background: #fafafa;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 182px;
  padding: 0;
  padding-right: 8px;
  position: relative;
  margin-bottom: 8px;
}
body
  #wrap
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  a
  .inner:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 60px 60px 0 0;
  border-color: #da380c transparent transparent transparent;
}
body
  #wrap
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  a
  .inner
  .txt {
  max-width: 225px;
  width: 100%;
}
body
  #wrap
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  a
  .inner
  .txt
  * {
  font-weight: bold;
  text-align: center;
}
body
  #wrap
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  a
  .inner
  .txt
  .content_ttl {
  font-size: 20px;
  letter-spacing: 0.2em;
  line-height: 2.1;
  margin-bottom: 6px;
}
body
  #wrap
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  a
  .inner
  .txt
  .num {
  color: #da380c;
  font-size: 40px;
  letter-spacing: 0.1em;
  line-height: 0.65;
}
body
  #wrap
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  a
  .inner
  img {
  width: 165px;
  height: 165px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: 0;
}
body
  #wrap
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  a
  .inner
  + p {
  font-size: 18px;
  line-height: 2.3333333333;
}
@media screen and (max-width: 768px) {
  body
    #wrap
    article#case_study
    .contents_footer
    .inner
    .more_Area
    .flex
    a
    .inner
    + p {
    font-size: 13px;
    line-height: 2;
  }
}
body
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .more_Area
  .flex
  .empty {
  width: 100%;
  max-width: 400px;
}
body:not(.renewal)
  #wrapper
  article#case_study
  .contents_footer
  .inner
  .for_archive {
  text-decoration: underline;
  color: #0077ff;
  letter-spacing: 0.1em;
  line-height: 2.625;
  text-align: center;
  display: block;
  margin-top: 38px;
}
body:not(.renewal) #wrapper article#case_study + footer .site_menu {
  padding-top: 40px;
}
body:not(.renewal) #wrapper article.archive.case_study .Breadcrumb {
  padding: 10px 10px 70px 37px;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article.archive.case_study .Breadcrumb {
    padding: 10px 0 20px 0 !important;
    max-width: 350px;
    margin: 0 auto;
  }
}
body:not(.renewal) #wrapper article.archive.case_study .flex {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article.archive.case_study .flex {
    justify-content: center;
  }
}
body:not(.renewal) #wrapper article.archive.case_study .flex a {
  width: 100%;
  max-width: 350px;
  display: block;
  margin-bottom: 50px;
}
body:not(.renewal) #wrapper article.archive.case_study .flex a .inner {
  background: #fafafa;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 182px;
  padding: 0;
  padding-right: 8px;
  position: relative;
  margin-bottom: 8px;
}
body:not(.renewal) #wrapper article.archive.case_study .flex a .inner:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 60px 60px 0 0;
  border-color: #da380c transparent transparent transparent;
}
body:not(.renewal) #wrapper article.archive.case_study .flex a .inner .txt {
  max-width: 225px;
  width: 100%;
}
body:not(.renewal) #wrapper article.archive.case_study .flex a .inner .txt * {
  font-weight: bold;
  text-align: center;
}
body:not(.renewal)
  #wrapper
  article.archive.case_study
  .flex
  a
  .inner
  .txt
  .content_ttl {
  font-size: 20px;
  letter-spacing: 0.2em;
  line-height: 2.1;
  margin-bottom: 6px;
}
body:not(.renewal)
  #wrapper
  article.archive.case_study
  .flex
  a
  .inner
  .txt
  .num {
  color: #da380c;
  font-size: 40px;
  letter-spacing: 0.1em;
  line-height: 0.65;
}
body:not(.renewal) #wrapper article.archive.case_study .flex a .inner img {
  width: 165px;
  height: 165px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: 0;
}
body:not(.renewal) #wrapper article.archive.case_study .flex a .inner + p {
  font-size: 15px;
  line-height: 1.5;
  font-feature-settings: normal;
}
@media screen and (max-width: 768px) {
  body:not(.renewal) #wrapper article.archive.case_study .flex a .inner + p {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  body:not(.renewal)
    #wrapper
    article.archive.case_study
    .flex
    a:not(:last-child) {
    margin-bottom: 5.13vw;
  }
}
@media screen and (min-width: 769px) {
  body:not(.renewal) #wrapper article.archive.case_study .flex a:hover {
    filter: brightness(90%);
  }
}
body:not(.renewal) #wrapper article.TOP .top_movie iframe {
  display: block;
  margin: 0 auto;
  width: 800px;
  height: 450px;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.TOP .top_movie iframe {
    margin: 30px auto 10px;
    width: 84%;
    height: 47vw;
  }
}
body:not(.renewal) #wrapper article.company_page section .head_h3 {
  font-weight: bold;
  letter-spacing: 0.05em;
}
body:not(.renewal) #wrapper article.company_page section .message .head_h3 {
  line-height: 1.75;
  font-size: 24px;
  margin-bottom: 30px;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.company_page section .message .head_h3 {
    font-size: 20px;
    margin-bottom: 15px;
  }
}
body:not(.renewal) #wrapper article.company_page section .message p {
  padding: 0;
}
body:not(.renewal) #wrapper article.company_page section .inner {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.company_page section .inner {
    padding: 0 15px;
  }
}
body:not(.renewal) #wrapper article.company_page section .inner .head_h3 {
  line-height: 1.5;
  font-size: 18px;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.company_page section .inner .head_h3 {
    line-height: 1.75;
    font-size: 14px;
  }
}
body:not(.renewal)
  #wrapper
  article.company_page
  section
  .inner
  .head_h3
  + p
  + .head_h3 {
  margin-top: 15px;
}
@media screen and (max-width: 740px) {
  body:not(.renewal)
    #wrapper
    article.company_page
    section
    .inner
    .head_h3
    + p
    + .head_h3 {
    margin-top: 20px;
  }
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper article.company_page section .Group {
    display: flex;
    flex-direction: column;
  }
}
@media screen and (max-width: 740px) {
  body:not(.renewal)
    #wrapper
    article.company_page
    section
    .Group
    .item.freedom
    figure
    a
    img {
    width: 26vw;
  }
}
@media screen and (max-width: 740px) {
  body:not(.renewal)
    #wrapper
    article.company_page
    section
    .Group
    .item.freedom {
    order: 1;
  }
  body:not(.renewal)
    #wrapper
    article.company_page
    section
    .Group
    .item.freedom_hombu {
    order: 2;
  }
  body:not(.renewal) #wrapper article.company_page section .Group .item.gluee {
    order: 3;
  }
  body:not(.renewal) #wrapper article.company_page section .Group .item.archi {
    order: 4;
  }
}
@media screen and (min-width: 751px) {
  body:not(.renewal) #wrapper article.company_page section table.type01 th {
    text-align: left;
    width: 180px;
  }
}

/*----------------------------------
2022-02-03 ポップアップバナー追加
----------------------------------*/
body #PopUp {
  pointer-events: none;
  display: block;
  overflow: visible;
  position: fixed;
  bottom: 20px;
  left: -330px;
  z-index: 9999;
  opacity: 0;
  transition: all 0.4s cubic-bezier(1, 0, 0, 1);
}
@media screen and (max-width: 768px) {
  body #PopUp {
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    max-width: 300px;
    width: 100%;
  }
}
body #PopUp .close {
  opacity: 1;
  background: #da380c;
  border: 1px solid #fff;
  width: 30px;
  height: 30px;
  position: absolute;
  right: -10px;
  top: -10px;
  border-radius: 50%;
  z-index: 999;
}
body #PopUp .close span {
  position: absolute;
  background: #fff;
  top: 50%;
  left: 20%;
  width: 18px;
  height: 2px;
}
body #PopUp .close span:first-child {
  transform: rotate(45deg);
}
body #PopUp .close span:last-child {
  transform: rotate(-45deg);
}
body #PopUp.show {
  left: 20px;
  opacity: 1;
  pointer-events: auto;
}
@media screen and (max-width: 768px) {
  body #PopUp.show {
    left: 50%;
    bottom: 20px;
  }
}
body #PopUp.show img {
  z-index: 99;
  border-radius: 10px;
}
@media screen and (min-width: 769px) {
  body #PopUp.show.hide {
    left: -100vw !important;
  }
}
body #PopUp:hover {
  filter: unset;
}

/*----------------------------------
2022-02-21 TOP MV改修
----------------------------------*/
@media screen and (max-width: 740px) {
  body#home #wrapper .ttl_landi_frontpage {
    padding: 0;
    height: 76.53vw;
  }
}
body#home #wrapper .ttl_landi_frontpage .mv-img {
  width: 250px;
  position: absolute;
  left: calc(50% - 380px);
  bottom: 94px;
}
@media screen and (max-width: 740px) {
  body#home #wrapper .ttl_landi_frontpage .mv-img {
    width: 32.57vw;
    left: 12vw;
    bottom: 17vw;
  }
}
body#home #wrapper .ttl_landi_frontpage .frontpage_txt {
  position: absolute;
  left: 47vw;
}
@media screen and (max-width: 740px) {
  body#home #wrapper .ttl_landi_frontpage .frontpage_txt {
    left: 43vw;
    top: 45%;
    transform: translateY(-50%);
  }
  body#home #wrapper .ttl_landi_frontpage .frontpage_txt h1 em {
    font-size: 3.5vw;
  }
}

/*----------------------------------
2022-03-14 新規ページ「app」
----------------------------------*/
@media screen and (min-width: 1362px) {
  body header .pc_menu {
    justify-content: flex-end;
    max-width: 100%;
  }
}
@media screen and (max-width: 1481px) and (min-width: 1362px) {
  body header .pc_menu li > a {
    padding: 0 10px;
    font-size: 15px;
  }
  body header .pc_menu li:not(.has_child) a {
    padding: 0 10px;
  }
  body header .pc_menu li.has_child a {
    padding: 0 20px;
  }
}
@media screen and (max-width: 1481px) and (min-width: 1362px) {
  body header {
    padding-right: 10px;
  }
  body header .header_btn {
    margin: 0 0 0 10px;
    width: 150px;
    font-size: 12px;
  }
}
body #wrap.lp20220311 .lp_line {
  width: 100%;
  background: #da380d;
}
body #wrap.lp20220311 .lp_line .inner {
  display: flex;
  justify-content: space-around;
  max-width: 800px;
  width: 100%;
  align-items: center;
  margin: 0 auto;
}
body #wrap.lp20220311 .lp_line .inner em {
  color: #fff;
  font-weight: bold;
  font-size: 3.2rem;
}
body #wrap.lp20220311 .lp_line .inner .appbtn {
  display: flex;
  justify-content: center;
  align-items: center;

  a{
    width: 50%;
  }
}
body #wrap.lp20220311 .lp_ttl {
  width: 100%;
  max-width: 800px;
  height: 528px;
  margin: 0 auto;
  position: relative;
}
body #wrap.lp20220311 .lp_ttl .appvideo {
  width: 100%;
  margin: 5px auto;
}
body #wrap.lp20220311 .lp_ttl .lp_iframe-wrapper {
  width: 100%;
  max-width: 800px;
  padding-top: 56.25%;
  position: relative;
}
body #wrap.lp20220311 .lp_ttl .lp_iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
body #wrap.lp20220311 .lp_ttl .lp_login {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  font-weight: bold;
  background: #323232;
}
body #wrap.lp20220311 .lp_ttl .lp_login a {
  color: #fff;
  font-size: 32px;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .lp_line {
    position: static;
    display: block;
    text-align: center;
  }
  body #wrap.lp20220311 .lp_line .inner em {
    display: block;
    color: #fff;
    font-weight: bold;
    font-size: 1.5rem;
    line-height: 1;
    width: 50%;
  }
  body #wrap.lp20220311 .lp_ttl {
    width: 100%;
    height: auto;
    background: none;
  }
  body #wrap.lp20220311 .lp_ttl .lp_login a {
    font-size: 16px;
  }
}
body #wrap.lp20220311 .appbtn {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1;
}
body #wrap.lp20220311 .appbtn a:first-child {
  margin-right: 5px;
}
body #wrap.lp20220311 .sect_ttl_02 {
  margin: 92px 0 46px;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .sect_ttl_02 {
    margin: 37px 0 37px;
  }
}
body #wrap.lp20220311 .lp_service {
  width: 100%;
  background: #da380c;
  text-align: center;
  padding: 64px 0;
}
body #wrap.lp20220311 .lp_service .large_box {
  width: 800px;
  padding: 58px;
  margin: 0 auto;
  box-sizing: border-box;
  background: #ffffff;
  border: 6px solid #d86f53;
}
body #wrap.lp20220311 .lp_service .large_box h3 {
  font-size: 5rem;
  font-weight: bold;
  color: #da380c;
  line-height: 1;
  padding-bottom: 60px;
}
body #wrap.lp20220311 .lp_service .large_box h3 span {
  background: linear-gradient(transparent 70%, #ffff00 0%);
}
body #wrap.lp20220311 .lp_service .lp_service_inner {
  width: 1000px;
  padding-top: 54px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
body #wrap.lp20220311 .lp_service .lp_service_inner .item {
  width: 300px;
  height: 300px;
  margin-bottom: 40px;
  padding: 12px;
  background: #ffffff;
  box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.1607843137);
  border: 4px solid #d5d5d5;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
body #wrap.lp20220311 .lp_service .lp_service_inner .item em {
  display: block;
  width: 100%;
  background: #f0f0f0;
  font-size: 1.8rem;
  color: #da380c;
  line-height: 1.4;
  font-weight: bold;
  padding: 10px;
  box-sizing: border-box;
  font-feature-settings: "palt";
}
body #wrap.lp20220311 .lp_service .lp_service_inner .item figure {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
body #wrap.lp20220311 .lp_service .lp_service_inner + small {
  width: 1000px;
  margin: 0 auto;
  color: #fff;
  display: block;
  text-align: left;
  font-size: 1.4rem;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .lp_service {
    width: 100%;
    padding: 32px 18px;
    box-sizing: border-box;
  }
  body #wrap.lp20220311 .lp_service .large_box {
    width: 100%;
    padding: 29px 9px 20px;
    margin: 0 auto;
    box-sizing: border-box;
    border: none;
    border-radius: 13px;
  }
  body #wrap.lp20220311 .lp_service .large_box h3 {
    font-size: 2.8rem;
    padding-bottom: 40px;
  }
  body #wrap.lp20220311 .lp_service .large_box h3 span {
    background: linear-gradient(transparent 70%, #ffff00 0%);
  }
  body #wrap.lp20220311 .lp_service .lp_service_inner {
    width: 100%;
    padding-top: 20px;
  }
  body #wrap.lp20220311 .lp_service .lp_service_inner .item {
    width: calc((100% - 15px) / 2);
    height: auto;
    margin-bottom: 20px;
    padding: 8px;
    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.1607843137);
    border: 2px solid #d5d5d5;
  }
  body #wrap.lp20220311 .lp_service .lp_service_inner .item em {
    font-size: 1.2rem;
    padding: 8px;
    box-sizing: border-box;
    font-feature-settings: "palt";
    margin-bottom: 8px;
  }
  body #wrap.lp20220311 .lp_service .lp_service_inner .item em br {
    display: none;
  }
  body #wrap.lp20220311 .lp_service .lp_service_inner .item figure {
    height: 100%;
    padding: 0;
    box-sizing: border-box;
  }
  body #wrap.lp20220311 .lp_service .lp_service_inner .item figure img {
    max-height: 100px;
    max-width: 100%;
    width: auto;
  }
  body #wrap.lp20220311 .lp_service .lp_service_inner + small {
    width: 100%;
    margin: 0 auto;
    color: #fff;
    display: block;
    text-align: left;
    font-size: 1.2rem;
  }
}
body #wrap.lp20220311 h3.sub_ttl {
  color: #da380c;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.4;
  padding-bottom: 46px;
  text-align: center;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 h3.sub_ttl {
    font-size: 1.8rem;
    padding-bottom: 26px;
    text-align: center;
  }
}
body #wrap.lp20220311 .lp_video {
  text-align: center;
}
body #wrap.lp20220311 .lp_video .youtube {
  width: 596px;
  height: 333px;
  position: relative;
  margin: 0 auto;
}
body #wrap.lp20220311 .lp_video .youtube iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .lp_video {
    padding: 0 12px;
  }
  body #wrap.lp20220311 .lp_video .youtube {
    width: 100%;
    height: auto;
    padding-bottom: 55%;
  }
}
body #wrap.lp20220311 .lp_special {
  width: 740px;
  margin: 0 auto;
}
body #wrap.lp20220311 .lp_special .graph {
  width: 100%;
  background: #f5f5f5;
  margin: 0 auto;
  padding: 35px 60px;
  box-sizing: border-box;
}
body #wrap.lp20220311 .lp_special .graph em {
  display: block;
  text-align: center;
  font-weight: bold;
  font-size: 2.2rem;
  padding-bottom: 40px;
}
body #wrap.lp20220311 .lp_special p {
  padding: 26px 0 52px;
}
body #wrap.lp20220311 .lp_special .red {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 502px;
  height: 110px;
  margin: 0 auto;
  background: #da380c;
  color: #fff;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .lp_special {
    width: 100%;
    margin: 0 auto;
  }
  body #wrap.lp20220311 .lp_special .graph {
    width: 100%;
    padding: 20px;
  }
  body #wrap.lp20220311 .lp_special .graph em {
    font-size: 1.5rem;
    padding-bottom: 20px;
  }
  body #wrap.lp20220311 .lp_special p {
    padding: 20px;
  }
  body #wrap.lp20220311 .lp_special .red {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 20px;
    padding: 15px;
    box-sizing: border-box;
    width: calc(100% - 40px);
    height: auto;
    font-size: 1.8rem;
    line-height: 1.5;
  }
}
body #wrap.lp20220311 .step_box {
  width: 860px;
  margin: 0 auto;
}
body #wrap.lp20220311 .step_box .step_ttl {
  width: 100%;
  height: 56px;
  background: #d5d5d5;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
body #wrap.lp20220311 .step_box .step_ttl .serif {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: #f7f700;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.25;
  font-weight: bold;
  font-size: 2rem;
  position: absolute;
  left: 100px;
  bottom: 10px;
  font-feature-settings: "palt";
}
body #wrap.lp20220311 .step_box .step_ttl .serif.step02 {
  width: 105px;
  height: 105px;
}
body #wrap.lp20220311 .step_box .step_ttl .serif:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 22px 22px 22px;
  border-color: transparent transparent #f7f700 transparent;
  position: absolute;
  right: 0;
  bottom: 0;
}
body #wrap.lp20220311 .step_box .step_ttl h3 {
  font-size: 2.8rem;
  font-weight: bold;
}
body #wrap.lp20220311 .step_box .step_box_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 26px;
}
body #wrap.lp20220311 .step_box .step_box_inner .item {
  width: 250px;
  height: 240px;
  background: #ffffff;
  box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.1607843137);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
}
body #wrap.lp20220311 .step_box .step_box_inner .item h4 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
}
body #wrap.lp20220311 .step_box .step_box_inner .item h4 span {
  width: 52px;
  height: 52px;
  background: #da380c;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 2.8rem;
  font-weight: bold;
  font-family: JetBrains Mono NL;
}
body #wrap.lp20220311 .step_box .step_box_inner .item h4 em {
  padding-left: 8px;
  font-weight: bold;
  font-feature-settings: "palt";
  text-align: justify;
  line-height: 1.3;
}
body #wrap.lp20220311 .step_box .step_box_inner .item figure {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
body #wrap.lp20220311 .step_box .step_box_inner .icon-arrow {
  color: rgba(100, 100, 100, 0.9019607843);
  font-size: 2rem;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .step_box {
    width: 100%;
    margin: 0 auto;
  }
  body #wrap.lp20220311 .step_box .step_ttl {
    width: 100%;
    height: auto;
    padding: 10px 20px;
    box-sizing: border-box;
    justify-content: flex-end;
  }
  body #wrap.lp20220311 .step_box .step_ttl .serif {
    width: 70px;
    height: 70px;
    font-size: 1.4rem;
    position: absolute;
    left: 10px;
    bottom: 10px;
  }
  body #wrap.lp20220311 .step_box .step_ttl .serif.step02 {
    width: 70px;
    height: 70px;
  }
  body #wrap.lp20220311 .step_box .step_ttl .serif:before {
    border-width: 0 18px 18px 18px;
  }
  body #wrap.lp20220311 .step_box .step_ttl h3 {
    text-align: right;
    font-size: 1.8rem;
  }
  body #wrap.lp20220311 .step_box .step_box_inner {
    padding: 16px 14px;
  }
  body #wrap.lp20220311 .step_box .step_box_inner .item {
    width: calc((100% - 30px) / 3);
    height: 160px;
    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.1607843137);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    position: relative;
  }
  body #wrap.lp20220311 .step_box .step_box_inner .item h4 {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
  }
  body #wrap.lp20220311 .step_box .step_box_inner .item h4 span {
    width: 26px;
    height: 26px;
    font-size: 1.4rem;
  }
  body #wrap.lp20220311 .step_box .step_box_inner .item h4 em {
    display: none;
  }
  body #wrap.lp20220311 .step_box .step_box_inner .item figure {
    padding-top: 5px;
    width: 50px;
    height: 70px;
  }
  body #wrap.lp20220311 .step_box .step_box_inner .item figure img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
  }
  body #wrap.lp20220311 .step_box .step_box_inner .item em.sp {
    display: block;
    width: 100%;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
    position: absolute;
    left: 0;
    bottom: 15px;
  }
  body #wrap.lp20220311 .step_box .step_box_inner .icon-arrow {
    color: rgba(100, 100, 100, 0.9019607843);
    font-size: 1rem;
  }
}
body #wrap.lp20220311 .lp_banner {
  width: 1200px;
  height: 380px;
  margin: 60px auto 90px;
  background-size: cover;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
body #wrap.lp20220311 .lp_banner .text {
  margin-left: 330px;
  width: 670px;
  text-align: left;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
}
body #wrap.lp20220311 .lp_banner .text ul {
  font-size: 3.2rem;
  font-weight: bold;
  color: #da380c;
  width: 100%;
  height: 80px;
  text-align: right;
  position: relative;
}
body #wrap.lp20220311 .lp_banner .text ul .change_txt {
  position: absolute;
  right: 0;
  top: 0;
  opacity: 0;
  transition: all 2s ease;
  transform: translateX(10px);
}
body #wrap.lp20220311 .lp_banner .text ul .change_txt.is-active {
  transform: translateX(0px);
  opacity: 1;
  transition: all 2s ease;
}
body #wrap.lp20220311 .lp_banner .text .innner_logo em {
  display: block;
  font-size: 2.8rem;
  font-weight: bold;
  padding-bottom: 10px;
}
body #wrap.lp20220311 .lp_banner .text .innner_logo .appbtn {
  padding-top: 25px;
}
body #wrap.lp20220311 .lp_banner .text figure {
  margin-bottom: 10px;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .lp_banner {
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    height: auto;
    margin: 30px auto 50px;
    background-size: cover;
    justify-content: flex-end;
  }
  body #wrap.lp20220311 .lp_banner .text {
    margin-left: 0;
    width: auto;
    display: block;
    text-align: right;
  }
  body #wrap.lp20220311 .lp_banner .text ul {
    font-size: 2rem;
    line-height: 1.5;
    width: auto;
    height: 50px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    white-space: nowrap;
  }
  body #wrap.lp20220311 .lp_banner .text .innner_logo {
    width: 140px;
    padding-top: 20px;
    text-align: left;
    margin-left: auto;
  }
  body #wrap.lp20220311 .lp_banner .text .innner_logo em {
    display: block;
    font-size: 1.2rem;
    font-weight: bold;
    padding-bottom: 10px;
    white-space: nowrap;
  }
  body #wrap.lp20220311 .lp_banner .text .innner_logo svg {
    width: 140px;
    height: auto;
  }
  body #wrap.lp20220311 .lp_banner .text .innner_logo .appbtn {
    padding-top: 5px;
    display: block;
    text-align: left;
    width: 140px;
  }
  body #wrap.lp20220311 .lp_banner .text .innner_logo .appbtn a {
    display: block;
  }
  body #wrap.lp20220311 .lp_banner .text .innner_logo .appbtn a img.apple {
    width: 110px !important;
  }
  body #wrap.lp20220311 .lp_banner .text .innner_logo .appbtn a + a {
    margin-top: -10px;
    margin-left: -11px;
  }
  body #wrap.lp20220311 .lp_banner .text figure {
    display: none;
  }
}
body #wrap.lp20220311 .shop_search_box {
  width: 1000px;
  height: 300px;
  background: #da380c;
  border-radius: 6px;
  margin: 85px auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
body #wrap.lp20220311 .shop_search_box .text {
  color: #fff;
  padding-left: 40px;
}
body #wrap.lp20220311 .shop_search_box .text .btn {
  width: 540px;
  height: 64px;
  background: #fff;
  border-radius: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}
body #wrap.lp20220311 .shop_search_box .text .btn span {
  color: #da380c;
  font-size: 3rem;
  font-weight: bold;
}
body #wrap.lp20220311 .shop_search_box .text .btn .icon-arrow {
  color: #da380c;
  margin-left: 20px;
  color: #da380c;
}
body #wrap.lp20220311 .shop_search_box .text p {
  font-size: 1.8rem;
  font-weight: bold;
}
body #wrap.lp20220311 .shop_search_box .text p + p {
  padding-bottom: 0.75em;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .shop_search_box {
    width: 100%;
    height: auto;
    padding: 30px;
    box-sizing: border-box;
    border-radius: 0;
    margin: 30px auto;
    display: block;
  }
  body #wrap.lp20220311 .shop_search_box figure {
    width: 190px;
    margin: 0 auto;
  }
  body #wrap.lp20220311 .shop_search_box .text {
    padding-top: 30px;
    color: #fff;
    padding-left: 0px;
    text-align: center;
  }
  body #wrap.lp20220311 .shop_search_box .text .btn {
    width: 100%;
    height: 50px;
    border-radius: 25px;
    margin-bottom: 20px;
  }
  body #wrap.lp20220311 .shop_search_box .text .btn span {
    font-size: 1.8rem;
  }
  body #wrap.lp20220311 .shop_search_box .text .btn .icon-arrow {
    color: #da380c;
    margin-left: 20px;
    color: #da380c;
  }
  body #wrap.lp20220311 .shop_search_box .text small {
    display: block;
    text-align: left;
  }
  body #wrap.lp20220311 .shop_search_box .text p {
    font-size: 1.4rem;
    font-feature-settings: "palt";
    text-align: justify;
    line-height: 1.8;
  }
  body #wrap.lp20220311 .shop_search_box .text p span {
    display: block;
    font-size: 1.6rem;
  }
  body #wrap.lp20220311 .shop_search_box .text p + p {
    padding-top: 0.5em;
  }
}
body #wrap.lp20220311 .contact_box {
  display: flex;
  justify-content: space-around;
  width: 1000px;
  margin: 46px auto 160px;
}
body #wrap.lp20220311 .contact_box .item a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
body #wrap.lp20220311 .contact_box .item a:hover {
  color: #da380c;
}
body #wrap.lp20220311 .contact_box .item a figure {
  width: 100%;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 24px;
}
body #wrap.lp20220311 .contact_box .item a em {
  font-weight: bold;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .contact_box {
    display: block;
    text-align: center;
    width: 100%;
    margin: 26px auto 0;
  }
  body #wrap.lp20220311 .contact_box .item {
    margin-bottom: 60px;
  }
  body #wrap.lp20220311 .contact_box .item a {
    display: block;
  }
  body #wrap.lp20220311 .contact_box .item a:hover {
    color: #da380c;
  }
  body #wrap.lp20220311 .contact_box .item a figure {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 14px;
  }
}

/*----------------------------------
2022-04-14 マガジンバナー追加
----------------------------------*/
body article .detail_article .main_article .app_banner {
  width: 100%;
  height: 250px;
  margin: 0px auto 60px;
  background-image: url(../img/banner.jpg);
  background-repeat: no-repeat;
  background-position: left -60px top;
  background-size: auto 130%;
  position: relative;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
body article .detail_article .main_article .app_banner .text .innner_logo {
  padding-right: 20px;
  text-align: center;
}
body article .detail_article .main_article .app_banner .text .innner_logo em {
  display: block;
  font-size: 2rem;
  font-weight: bold;
  padding-bottom: 10px;
  text-align: center;
}
body
  article
  .detail_article
  .main_article
  .app_banner
  .text
  .innner_logo
  .appbtn {
  padding-top: 10px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (max-width: 740px) {
  body article .detail_article .main_article .app_banner {
    width: 100%;
    padding: 20px 40px 20px 20px;
    box-sizing: border-box;
    height: auto;
    margin: 0px auto 50px;
    justify-content: flex-end;
    background-image: url(../img/banner.jpg);
    background-repeat: no-repeat;
    background-position: left -70px top;
    background-size: auto 120%;
  }
  body article .detail_article .main_article .app_banner .text {
    margin-left: 0;
    width: auto;
    display: block;
    text-align: right;
  }
  body article .detail_article .main_article .app_banner .text .innner_logo {
    width: 140px;
    padding: 0;
    text-align: left;
    margin-left: auto;
  }
  body article .detail_article .main_article .app_banner .text .innner_logo em {
    display: block;
    font-size: 1.2rem;
    font-weight: bold;
    padding: 0 0 5px;
    white-space: nowrap;
  }
  body
    article
    .detail_article
    .main_article
    .app_banner
    .text
    .innner_logo
    .svg {
    padding-right: 0px;
  }
  body
    article
    .detail_article
    .main_article
    .app_banner
    .text
    .innner_logo
    .appbtn {
    padding-top: 5px;
    display: block;
    text-align: left;
    width: 140px;
  }
  body
    article
    .detail_article
    .main_article
    .app_banner
    .text
    .innner_logo
    .appbtn
    a {
    display: block;
  }
  body
    article
    .detail_article
    .main_article
    .app_banner
    .text
    .innner_logo
    .appbtn
    a
    img.apple {
    width: 110px !important;
  }
  body
    article
    .detail_article
    .main_article
    .app_banner
    .text
    .innner_logo
    .appbtn
    a
    + a {
    margin-top: -10px;
    margin-left: -11px;
  }
}

/*----------------------------------
2022-05-09 会社概要改修
----------------------------------*/
body:not(.renewal) #wrapper article.company_page .type01 tr td {
  padding: 10px 0;
}
body:not(.renewal) #wrapper article.company_page .type01 tr td.office {
  display: block;
  padding: 10px 0;
  line-height: 1.25;
}

/*----------------------------------
2022-06-05 採用改修
----------------------------------*/
body:not(.renewal) #wrapper .no_bottom .lead {
  width: 940px;
  margin: 30px auto -30px;
}
body:not(.renewal) #wrapper .no_bottom .recruit_area .recruit_box_inner .text {
  width: 65%;
}
body:not(.renewal)
  #wrapper
  .no_bottom
  .recruit_area
  .recruit_box_inner
  .text
  h3
  em {
  display: flex;
  align-items: center;
  margin-top: 10px;
}
body:not(.renewal)
  #wrapper
  .no_bottom
  .recruit_area
  .recruit_box_inner
  .text
  h3
  em
  span.box {
  background: #fff;
  display: inline-flex;
  font-size: 14px;
  width: auto;
  border-radius: 8px;
  border: 1px solid #000;
  align-items: center;
  line-height: 1.25;
  height: 45px;
  padding: 0 20px 0 10px;
  margin-right: 15px;
}
body:not(.renewal)
  #wrapper
  .no_bottom
  .recruit_area
  .recruit_box_inner
  .text
  p {
  width: 100%;
}
body:not(.renewal)
  #wrapper
  .no_bottom
  .recruit_area
  .recruit_box_inner
  .text
  p
  + p {
  margin-top: -40px;
}
body:not(.renewal) #wrapper article.old_type .radio {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}
body .modal_box .modal_box_item {
  top: 55%;
}
body .modal_box .modal_box_item .modal_box_cover .modal_box_inner h3 em {
  display: flex;
  align-items: center;
  margin-top: 10px;
}
body
  .modal_box
  .modal_box_item
  .modal_box_cover
  .modal_box_inner
  h3
  em
  span.box {
  background: #fff;
  display: inline-flex;
  font-size: 14px;
  width: auto;
  border-radius: 8px;
  border: 1px solid #000;
  align-items: center;
  line-height: 1.25;
  height: 45px;
  padding: 0 20px 0 10px;
  margin-right: 15px;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper .no_bottom .lead {
    width: 100%;
    margin: 30px auto 0;
    padding: 0 20px;
    box-sizing: border-box;
  }
  body:not(.renewal)
    #wrapper
    .no_bottom
    .recruit_area
    .recruit_box_inner
    .text {
    width: 100%;
  }
  body:not(.renewal)
    #wrapper
    .no_bottom
    .recruit_area
    .recruit_box_inner
    .text
    h3
    em {
    text-align: left;
    font-size: 18px;
    margin-bottom: 10px;
  }
  body
    #wrapper
    .no_bottom
    .recruit_area
    .recruit_box_inner
    .text
    h3
    em
    span.box {
    text-align: center;
    height: 40px;
    padding: 0 10px;
    margin-right: 10px;
  }
  body:not(.renewal)
    #wrapper
    .no_bottom
    .recruit_area
    .recruit_box_inner
    .text
    p
    + p {
    margin-top: -30px;
  }
  body .modal_box .modal_box_item {
    top: 30vw;
  }
  body .modal_box .modal_box_item .modal_box_cover .modal_box_inner h3 em {
    text-align: left;
    font-size: 18px;
    margin-bottom: 10px;
  }
  body
    .modal_box
    .modal_box_item
    .modal_box_cover
    .modal_box_inner
    h3
    em
    span.box {
    text-align: center;
    height: 40px;
    padding: 0 10px;
    margin-right: 10px;
  }
}

/*----------------------------------
2022-06-08 ランディ加盟店を探す 改修
----------------------------------*/
body:not(.renewal) #wrapper #landi_area {
  padding: 0;
}
body:not(.renewal) #wrapper #landi_area section {
  box-sizing: border-box;
}
body:not(.renewal) #wrapper #landi_area section .inner {
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
body:not(.renewal) #wrapper #landi_area section .inner .head_h2 {
  background: #da380c;
  color: #fff;
  font-size: 32px;
  letter-spacing: 0.1em;
  font-weight: bold;
  text-align: center;
  position: relative;
  height: 68px;
  margin-bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
body:not(.renewal) #wrapper #landi_area section .inner .head_h2:before,
body:not(.renewal) #wrapper #landi_area section .inner .head_h2:after {
  position: absolute;
  content: "";
  border-style: solid;
  width: 0;
  height: 0;
  top: 0;
}
body:not(.renewal) #wrapper #landi_area section .inner .head_h2:before {
  border-width: 68px 68px 0 0;
  border-color: rgba(213, 213, 213, 0.4) transparent transparent transparent;
  left: 0;
}
body:not(.renewal) #wrapper #landi_area section .inner .head_h2:after {
  border-width: 0 0 68px 68px;
  border-color: transparent transparent rgba(213, 213, 213, 0.4) transparent;
  right: 0;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper #landi_area section .inner {
    padding: 0 15px 50px;
  }
  body:not(.renewal) #wrapper #landi_area section .inner .head_h2 {
    font-size: 16px;
    height: 50px;
    line-height: 1.1;
  }
  body:not(.renewal) #wrapper #landi_area section .inner .head_h2:before {
    border-width: 50px 50px 0 0;
  }
  body:not(.renewal) #wrapper #landi_area section .inner .head_h2:after {
    border-width: 0 0 50px 50px;
  }
}
body:not(.renewal) #wrapper #landi_area section .flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}
@media screen and (max-width: 767px) {
  body:not(.renewal) #wrapper #landi_area section .flex {
    flex-direction: column;
  }
}
body:not(.renewal) #wrapper #landi_area section#sec_10 .inner {
  padding-bottom: 50px;
}
body:not(.renewal) #wrapper #landi_area section#sec_10 .inner > p {
  text-align: center;
  font-size: 22px;
  margin: 30px auto;
}
body:not(.renewal) #wrapper #landi_area section#sec_10 .inner .flex .item {
  width: 250px;
  height: 240px;
  box-shadow: 8px 8px 16px rgba(0, 0, 0, 0.16);
  position: relative;
  display: flex;
  flex-direction: column;
}
body
  #wrap
  #landi_area
  section#sec_10
  .inner
  .flex
  .item:not(:last-child):before {
  position: absolute;
  content: "▶︎";
  width: 20px;
  color: #646464;
  top: 50%;
  transform: translateY(-50%);
  right: -40px;
}
body:not(.renewal) #wrapper #landi_area section#sec_10 .inner .flex .item .txt {
  width: 100%;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_10
  .inner
  .flex
  .item
  .txt
  p {
  display: flex;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_10
  .inner
  .flex
  .item
  .txt
  p
  * {
  line-height: 1;
  font-weight: bold;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_10
  .inner
  .flex
  .item
  .txt
  p
  .num {
  background: #da380c;
  color: #fff;
  font-weight: bold;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  font-size: 28px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_10
  .inner
  .flex
  .item
  .txt
  p
  .ttl {
  font-size: 17px;
  line-height: 1.4117647059;
  display: flex;
  align-items: center;
  padding-left: 10px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_10
  .inner
  .flex
  .item
  .img_box {
  height: auto;
  width: 100%;
  display: flex;
  flex-grow: 2;
  align-content: center;
  justify-content: center;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_10
  .inner
  .flex
  .item
  .img_box
  img {
  display: block;
  margin: 0 auto;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper #landi_area section#sec_10 .inner > p {
    text-align: left;
    font-size: 16px;
    margin: 10px auto 30px;
    padding: 0 15px;
    line-height: 1.875;
  }
  body:not(.renewal) #wrapper #landi_area section#sec_10 .inner .flex .item {
    margin: 0 auto;
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section#sec_10
    .inner
    .flex
    .item:not(:last-child) {
    margin: 0 auto 60px;
  }
  body
    #wrap
    #landi_area
    section#sec_10
    .inner
    .flex
    .item:not(:last-child):before {
    width: auto;
    top: unset;
    transform: rotate(90deg) translateX(50%);
    right: 50%;
    bottom: -40px;
  }
}
body:not(.renewal) #wrapper #landi_area section.area {
  margin-top: 40px;
}
body:not(.renewal) #wrapper #landi_area section.area .head_h1 {
  font-size: 28px;
  font-weight: bold;
  letter-spacing: 0.028em;
}
body:not(.renewal) #wrapper #landi_area section.area .head_h1 + p {
  margin-bottom: 20px;
}
body:not(.renewal) #wrapper #landi_area section.area .map {
  margin-top: 40px;
  width: 100%;
  height: 855px;
  position: relative;
}
body:not(.renewal) #wrapper #landi_area section.area .map figure {
  padding-top: 200px;
}
body:not(.renewal) #wrapper #landi_area section.area .map .area_list {
  margin: 0;
  position: absolute;
  top: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
}
body:not(.renewal) #wrapper #landi_area section.area .map .area_list dl {
  margin: 0;
  background: #f0f0f0;
  padding: 7px 10px 0;
  border-radius: 4px;
  position: absolute;
}
body:not(.renewal) #wrapper #landi_area section.area .map .area_list dl dt {
  letter-spacing: 0.1em;
  height: auto;
  width: auto;
  background: unset;
  border-radius: unset;
  margin-bottom: 5px;
}
body:not(.renewal) #wrapper #landi_area section.area .map .area_list dl dd ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 154px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl
  dd
  ul
  li {
  margin-bottom: 10px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl
  dd
  ul
  li
  a {
  font-weight: bold;
  letter-spacing: 0.018em;
  background: #fff;
  width: 72px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 17px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_10 {
  top: 130px;
  right: 0;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_10
  dd
  ul {
  justify-content: center;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_20 {
  top: 236px;
  right: 0;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_30 {
  top: 428px;
  right: 50px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_40 {
  top: 40px;
  right: 214px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_40
  dd
  ul {
  width: 236px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_50 {
  top: 530px;
  right: 242px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_60 {
  top: 530px;
  right: 436px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_70 {
  top: 162px;
  left: 194px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_80 {
  top: 530px;
  right: 630px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section.area
  .map
  .area_list
  dl.area_90 {
  top: 162px;
  left: 0;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper #landi_area section.area {
    margin-top: 0;
  }
  body:not(.renewal) #wrapper #landi_area section.area .head_h1 + p {
    margin-bottom: 4vw;
  }
  body:not(.renewal) #wrapper #landi_area section.area .map {
    width: 100%;
    height: auto;
    position: static;
  }
  body:not(.renewal) #wrapper #landi_area section.area .map figure {
    display: none;
  }
  body:not(.renewal) #wrapper #landi_area section.area .map .area_list {
    position: relative;
    justify-content: space-between;
    margin: 25px 0 0;
    padding: 0;
    box-sizing: border-box;
    padding-right: 2px;
  }
  body:not(.renewal) #wrapper #landi_area section.area .map .area_list dl {
    position: static;
    right: unset !important;
    box-sizing: border-box;
    padding: 0;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 5px;
    min-width: unset;
    width: 32%;
    box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.16);
  }
  body:not(.renewal) #wrapper #landi_area section.area .map .area_list dl dt {
    font-size: 1.4rem;
    margin: 0;
  }
  body:not(.renewal) #wrapper #landi_area section.area .map .area_list dl dd {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    min-height: 44vw;
    width: calc(100vw - 29.5px) !important;
    opacity: 0;
    pointer-events: none;
    transition: 0.3s;
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section.area
    .map
    .area_list
    dl
    dd
    ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between !important;
    background: #fff;
    width: 100% !important;
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section.area
    .map
    .area_list
    dl
    dd
    ul
    li {
    margin-bottom: 5px;
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section.area
    .map
    .area_list
    dl
    dd
    ul
    li
    a {
    width: 29.7vw;
    height: 50px;
    border-radius: 4px;
    background: #f0f0f0;
    letter-spacing: 0.1em;
    box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.16);
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section.area
    .map
    .area_list
    dl
    dd
    ul:after {
    display: block;
    content: "";
    max-width: 29.7vw;
    width: 100%;
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section.area
    .map
    .area_list
    dl
    dd.show {
    opacity: 1;
    pointer-events: auto;
    z-index: 10;
    background: #fff;
  }
  body:not(.renewal) #wrapper #landi_area section.area .map .area_list dl.show {
    position: absolute;
    top: 0;
    left: 0;
  }
  body:not(.renewal) #wrapper #landi_area section.area .map .back {
    background: #da380c;
    color: #fff;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    height: 30px;
    width: 80px;
    border-radius: 20px;
    margin: 15px auto 0;
    padding-left: 5px;
    position: relative;
    opacity: 0;
    pointer-events: none;
    transition: 0.3s;
    position: relative;
    z-index: 20;
  }
  body:not(.renewal) #wrapper #landi_area section.area .map .back.show {
    opacity: 1;
    pointer-events: auto;
  }
  body:not(.renewal) #wrapper #landi_area section.area .map .back:before {
    position: absolute;
    content: "";
    width: 8px;
    height: 15px;
    background: url(../img/landi_area/arrow.svg) no-repeat;
    background-size: contain;
    top: 50%;
    transform: translateY(-50%) rotate(180deg);
    left: 10px;
  }
}
body:not(.renewal) #wrapper #landi_area section#sec_20 .inner {
  padding-bottom: 135px;
}
body:not(.renewal) #wrapper #landi_area section#sec_20 .inner .head_h2 {
  margin-bottom: 50px;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_20
  .inner
  .slider
  .slick-slide {
  padding: 0 5px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_20
  .inner
  .slider
  .slick-slide
  div {
  height: inherit;
  display: flex;
  align-items: center;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_20
  .inner
  .slider
  .slick-slide
  div
  img {
  -o-object-fit: contain;
  object-fit: contain;
  height: inherit;
}
body:not(.renewal)
  #wrapper
  #landi_area
  section#sec_20
  .inner
  .slider
  + .slider {
  margin-top: 40px;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper #landi_area section#sec_20 .inner {
    padding: 0 15px 16vw;
  }
  body:not(.renewal) #wrapper #landi_area section#sec_20 .inner .head_h2 {
    margin-bottom: 8vw;
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section#sec_20
    .inner
    .slider
    .slick-slide {
    height: 40px;
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section#sec_20
    .inner
    .slider
    + .slider {
    margin-top: 5.33vw;
  }
}
body:not(.renewal) #wrapper #landi_area section#sec_30 .inner .flex {
  margin-top: 50px;
  justify-content: center;
}
body:not(.renewal) #wrapper #landi_area section#sec_30 .inner .flex .item {
  width: 25%;
  margin-bottom: 70px;
}
body:not(.renewal) #wrapper #landi_area section#sec_30 .inner .flex .item img {
  display: block;
  margin: 0 auto 10px;
  width: 160px;
  height: 88px;
  -o-object-fit: contain;
  object-fit: contain;
}
body:not(.renewal) #wrapper #landi_area section#sec_30 .inner .flex .item .txt {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  font-weight: bold;
  color: #da380c;
  letter-spacing: 0.05em;
  border: 2px solid #da380c;
  height: 34px;
  width: 160px;
  border-radius: 17px;
  box-sizing: border-box;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper #landi_area section#sec_30 .inner .flex {
    margin-top: 8vw;
    justify-content: space-between;
    flex-direction: unset;
  }
  body:not(.renewal) #wrapper #landi_area section#sec_30 .inner .flex .item {
    width: 50%;
    margin-bottom: 12vw;
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section#sec_30
    .inner
    .flex
    .item
    img {
    margin: 0 auto 10px;
    width: 42.67vw;
    height: 23.47vw;
  }
  body:not(.renewal)
    #wrapper
    #landi_area
    section#sec_30
    .inner
    .flex
    .item
    .txt {
    font-size: 12px;
    width: 42.67vw;
  }
}

/*----------------------------------
2022-06-27 採用改修
----------------------------------*/
body:not(.renewal) #wrapper article section .lead + .sect_ttl_02 + img {
  display: block;
  margin: 0 auto 30px;
}
body:not(.renewal)
  #wrapper
  article
  section
  .recruit_area
  .recruit_box
  .recruit_box_inner {
  align-items: flex-start;
}
body
  #wrap
  article
  section
  .recruit_area
  .recruit_box
  .recruit_box_inner
  .text
  h3
  em
  > span:not(.box) {
  display: flex;
  flex-direction: column;
}
body
  #wrap
  article
  section
  .recruit_area
  .recruit_box
  .recruit_box_inner
  .text
  h3
  em
  small:before {
  display: none;
}
body
  #wrap
  article
  section
  .recruit_area
  .recruit_box
  .recruit_box_inner
  .text
  h3
  em
  small
  span {
  border-bottom: 1px solid #da380c;
}
body
  #wrapper
  article
  section
  .recruit_area
  .recruit_box
  .recruit_box_inner
  .txt {
  width: 60%;
}
body .modal_box_item .modal_box_cover .modal_box_inner h3 em > span:not(.box) {
  display: flex;
  flex-direction: column;
}
body .modal_box_item .modal_box_cover .modal_box_inner h3 em small:before {
  display: none;
}
body .modal_box_item .modal_box_cover .modal_box_inner h3 em small span {
  border-bottom: 1px solid #da380c;
}
@media screen and (max-width: 767px) {
  body:not(.renewal) #wrapper article section .lead + .sect_ttl_02 + img {
    width: 70%;
  }
  body
    #wrap
    article
    section
    .recruit_area
    .recruit_box
    .recruit_box_inner
    .txt {
    margin-top: 15px;
    width: 100%;
  }
  body
    #wrap
    article
    section
    .recruit_area
    .recruit_box
    .recruit_box_inner
    .txt
    .modal_btn {
    background: #000;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    position: relative;
    transition: all 0.2s ease;
    backface-visibility: hidden;
    width: 100%;
    height: 46px;
    margin-top: 10px;
  }
  body
    #wrap
    article
    section
    .recruit_area
    .recruit_box
    .recruit_box_inner
    .txt
    .modal_btn
    span {
    color: #fff;
    padding-left: 15px;
  }
  body
    #wrap
    article
    section
    .recruit_area
    .recruit_box
    .recruit_box_inner
    .txt
    .modal_btn:before,
  body
    #wrap
    article
    section
    .recruit_area
    .recruit_box
    .recruit_box_inner
    .txt
    .modal_btn:after {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background: #fff;
    right: 16px;
    top: 50%;
  }
  body
    #wrap
    article
    section
    .recruit_area
    .recruit_box
    .recruit_box_inner
    .txt
    .modal_btn:after {
    transform: rotate(90deg);
  }
  body
    .modal_box_item
    .modal_box_cover
    .modal_box_inner
    h3
    em
    > span:not(.box) {
    display: flex;
    flex-direction: column;
  }
  body .modal_box_item .modal_box_cover .modal_box_inner h3 em small:before {
    display: none;
  }
  body .modal_box_item .modal_box_cover .modal_box_inner h3 em small span {
    border-bottom: 1px solid #da380c;
  }
}

/*----------------------------------
2022-09-07 ランディマガジン調整
----------------------------------*/
body:not(.renewal)
  #wrapper
  article
  section
  .detail_article
  .main_article
  .bnr_img {
  display: block;
  margin-bottom: 20px;
}

/*----------------------------------
2022-10-18 /landi/調整
----------------------------------*/
body:not(.renewal) #wrapper .ttl_landi .ttl_landi_txt .btn_box .red_btn_regist {
  margin-left: 0;
}
body:not(.renewal) #wrapper .ttl_landi small {
  left: 50%;
  transform: translateX(-50%);
}

/*----------------------------------
2022-10-26 case_study調整
----------------------------------*/
body:not(.renewal) #wrapper #case_study .main_article .inner img.main {
  max-width: 800px;
  max-height: 800px;
  width: 100%;
  height: auto;
  margin: 0 auto 100px;
  -o-object-fit: contain;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  body:not(.renewal) #wrapper #case_study .main_article .inner img.main {
    margin-bottom: 50px;
    max-height: 400px;
  }
}

/*----------------------------------
2022-12-22 /landi/ 改修
----------------------------------*/
body:not(.renewal) #wrapper .sect_ttl_02 em {
  letter-spacing: 0.084em;
}
body:not(.renewal) #wrapper .sect_ttl_02 + p {
  letter-spacing: 0.018em;
}
@media screen and (max-width: 740px) {
  body:not(.renewal) #wrapper .sect_ttl_02 em {
    letter-spacing: 0;
  }
  body:not(.renewal) #wrapper .sect_ttl_02 + p {
    letter-spacing: 0;
  }
}
body #wrap.page_landi * {
  box-sizing: border-box;
}
body #wrap.page_landi .flex {
  display: flex;
}
body #wrap.page_landi .red_btn {
  display: block;
  text-align: center;
}
body #wrap.page_landi .red_btn span {
  position: relative;
  height: 60px;
  border-radius: 30px;
  background: #da380c;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  color: #fff;
  width: auto;
  min-width: 340px;
  font-size: 22px;
  font-weight: bold;
}
body #wrap.page_landi .red_btn span:before {
  position: absolute;
  content: "▶︎";
  color: #fff;
  right: 15px;
  top: 49%;
  transform: translateY(-50%);
  line-height: 1;
  font-size: 15px;
}
body #wrap.page_landi .sect_ttl_02 {
  margin: 112px 0 23px;
}
body #wrap.page_landi .sect_ttl_02 + p {
  margin-bottom: 106px;
}
body #wrap.page_landi .sect_ttl_02.sub:before {
  display: none;
}
body #wrap.page_landi .triangle_bg {
  padding: 75px 0;
}
body #wrap.page_landi .triangle_bg:before {
  border-width: 35.83vw 35.83vw 0 0;
}
body #wrap.page_landi .triangle_bg:after {
  border-width: 0 0 16.21vw 16.21vw;
}
body #wrap.page_landi .slideshow-wrap {
  display: flex;
  align-items: center;
  /* ここの高さは必要 */
  height: 80px;
  overflow: hidden;
  /* スライドさせるkeyframesの中身 */
}
body #wrap.page_landi .slideshow-wrap .slideshow {
  display: flex;
  padding: 0;
  /* スライドさせる loop-slideのkeyframesを指定*/
  animation: loop-slide 55s infinite linear 1s both;
}
body #wrap.page_landi .slideshow-wrap .slideshow img {
  height: 60px;
  padding: 5px;
  -o-object-fit: contain;
  object-fit: contain;
}
@keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@media screen and (max-width: 740px) {
  body #wrap.page_landi .slideshow-wrap .slideshow {
    animation: loop-slide 20s infinite linear 1s both;
  }
  body #wrap.page_landi .red_btn span {
    height: 50px;
    border-radius: 25px;
    min-width: 280px;
    font-size: 18px;
  }
  body #wrap.page_landi .red_btn span:before {
    font-size: 12px;
  }
  body #wrap.page_landi .sect_ttl_02 {
    margin: 16.8vw 0 14px;
  }
  body #wrap.page_landi .sect_ttl_02 + p {
    font-size: 16px;
    text-align: left;
    padding: 0;
    max-width: 80vw;
    margin: 0 auto 7.28vw;
    line-height: 1.625;
    font-feature-settings: normal;
  }
  body #wrap.page_landi .sect_ttl_02 em {
    font-size: 1.6rem;
  }
  body #wrap.page_landi .triangle_bg {
    padding: 35.5px 20px 55px;
  }
  body #wrap.page_landi .triangle_bg:before {
    border-width: 86.67vw 86.67vw 0 0;
  }
  body #wrap.page_landi .triangle_bg:after {
    border-width: 0 0 24.09vw 24.09vw;
  }
}
body #wrap.page_landi .ttl_landi {
  height: 36.67vw;
}
body #wrap.page_landi .ttl_landi .flex {
  align-items: center;
  width: 100%;
  justify-content: space-between;
  padding: 0 8.33vw;
}
body #wrap.page_landi .ttl_landi .flex .box {
  background: rgba(255, 255, 255, 0.8);
  padding: 3.08vw 3.33vw 2.5vw;
}
body #wrap.page_landi .ttl_landi .flex .box img {
  width: 29.58vw;
  display: block;
  margin-bottom: 1.954vw;
}
body #wrap.page_landi .ttl_landi .flex .box h1 {
  text-align: center;
  font-weight: bold;
  font-size: 1.67vw;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
body #wrap.page_landi .ttl_landi .flex .box p {
  text-align: left;
  font-weight: 300;
  font-size: 2rem;
}
body #wrap.page_landi .ttl_landi .flex .box p.left {
  text-align: left;
}
body #wrap.page_landi .ttl_landi .flex .box p.bold {
  font-weight: 800;
  font-size: 3.4rem;
}
body #wrap.page_landi .ttl_landi .flex > picture {
  width: 40.5vw;
}
@media screen and (min-width: 751px) {
  body #wrap.page_landi .ttl_landi .flex > picture img {
    width: 75%;
  }
}
body #wrap.page_landi .ttl_landi + .red_btn {
  margin-top: 4.17vw;
}
@media screen and (max-width: 740px) {
  body #wrap.page_landi .ttl_landi {
    height: 138.4vw;
    background: url(../img/landi/map_sp.webp) no-repeat;
    background-size: contain;
    padding: 6.4vw 0 5.33vw;
  }
  body #wrap.page_landi .ttl_landi .flex {
    flex-direction: column;
    padding: 0 11.2vw;
    box-sizing: border-box;
  }
  body #wrap.page_landi .ttl_landi .flex .box {
    width: 100%;
    box-sizing: border-box;
    padding: 5.33vw 4.6vw 4.8vw;
    margin-bottom: 7.2vw;
  }
  body #wrap.page_landi .ttl_landi .flex .box img {
    width: 69.72vw;
    margin-bottom: 3.2vw;
  }
  body #wrap.page_landi .ttl_landi .flex .box h1 {
    font-size: 4vw;
    line-height: 1.6666666667;
  }
  body #wrap.page_landi .ttl_landi .flex .box p {
    text-align: center;
    font-size: 1.4rem;
  }
  body #wrap.page_landi .ttl_landi .flex .box p.bold {
    font-size: 2rem;
  }
  body #wrap.page_landi .ttl_landi .flex > picture {
    width: 100%;
  }
  body #wrap.page_landi .ttl_landi + .red_btn {
    margin-top: 5.33vw;
  }
}
@media screen and (max-width: 740px) {
  body #wrap.page_landi article {
    padding-bottom: 18vw;
  }
}
@media screen and (max-width: 740px) {
  body #wrap.page_landi article section:not(.features) .sect_ttl_02 + p {
    font-size: 14px;
  }
}
body #wrap.page_landi article section.features .point_list {
  max-width: 980px;
  width: 100%;
}
body #wrap.page_landi article section.features .point_list .item {
  width: 230px;
  position: relative;
}
body #wrap.page_landi article section.features .point_list .item em {
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  font-size: 22px;
}
body #wrap.page_landi article section.features .point_list .item .stamp {
  right: 6px;
  top: -13px;
  bottom: unset;
  width: 60px;
  height: 60px;
  line-height: 1.14;
  font-size: 1.4rem;
}
body #wrap.page_landi article section.features .point_list .item p {
  text-align: center;
  font-weight: bold;
  font-size: 17px;
  line-height: 1.4117647059;
  height: 50px;
  padding: 0;
}
body #wrap.page_landi article section.features .point_list + p {
  text-align: center;
  color: #da380c;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0.084em;
  margin: 77px 0 40px;
}
body #wrap.page_landi article section.features .point_list:not(.border) .item {
  padding: 55px 10px 30px;
}
body
  #wrap.page_landi
  article
  section.features
  .point_list:not(.border)
  .item
  figure {
  height: 130px;
  margin-bottom: 35px;
}
body #wrap.page_landi article section.features .point_list.border .wrapDiv p {
  text-align: center;
}
body #wrap.page_landi article section.features .point_list.border .item {
  border: 3px solid #da380c;
  padding: 70px 0 30px;
}
body #wrap.page_landi article section.features .point_list.border .item figure {
  height: 97.7px;
  margin-bottom: 50px;
}
body #wrap.page_landi article section.features .point_list.border .item em {
  top: -3px;
  left: -3px;
}
@media screen and (max-width: 740px) {
  body #wrap.page_landi article section.features .point_list {
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  body #wrap.page_landi article section.features .point_list .item {
    width: 42.67vw;
  }
  body #wrap.page_landi article section.features .point_list .item em {
    width: 28px;
    height: 28px;
    font-size: 18px;
  }
  body #wrap.page_landi article section.features .point_list .item p {
    font-size: 14px;
    line-height: 1.4285714286;
    height: 40px;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list
    .item:nth-last-child(1),
  body
    #wrap.page_landi
    article
    section.features
    .point_list
    .item:nth-last-child(2) {
    margin-bottom: 0;
  }
  body #wrap.page_landi article section.features .point_list .item figure img {
    height: inherit;
  }
  body #wrap.page_landi article section.features .point_list + p {
    font-size: 16px;
    letter-spacing: 0;
    margin: 18.4vw 0 5.33vw;
    line-height: 1.625;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list:not(.border)
    .item {
    padding: 10.48vw 10px 15px;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list:not(.border)
    .item
    figure {
    height: 23.78vw;
    margin-bottom: 4.53vw;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list:not(.border)
    .item:nth-child(1)
    figure
    img {
    width: 33.93vw;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list:not(.border)
    .item:nth-child(2)
    figure
    img {
    width: 24.59vw;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list:not(.border)
    .item:nth-child(3)
    figure
    img {
    width: 25.42vw;
    padding-left: 2.67vw;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list:not(.border)
    .item:nth-child(4)
    figure
    img {
    width: 19.16vw;
  }
  body #wrap.page_landi article section.features .point_list.border .wrapDiv p {
    margin-bottom: 16px;
  }
  body #wrap.page_landi article section.features .point_list.border .item {
    padding: 13.33vw 0 12px;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list.border
    .item
    figure {
    height: 17.35vw;
    margin-bottom: 9.33vw;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list.border
    .item:nth-child(1)
    figure
    img,
  body
    #wrap.page_landi
    article
    section.features
    .point_list.border
    .item:nth-child(2)
    figure
    img,
  body
    #wrap.page_landi
    article
    section.features
    .point_list.border
    .item:nth-child(4)
    figure
    img {
    width: 21.33vw;
  }
  body
    #wrap.page_landi
    article
    section.features
    .point_list.border
    .item:nth-child(3)
    figure
    img {
    width: 18.67vw;
  }
}
body #wrap.page_landi article section.store .sect_ttl_02 {
  margin: 103px 0 19px;
}
body #wrap.page_landi article section.store .sect_ttl_02 + p {
  margin-bottom: 60px;
}
body #wrap.page_landi article section.store .sect_ttl_02.sub {
  margin: 125px 0 19px;
}
body #wrap.page_landi article section.store .slider {
  max-width: 820px;
  margin: 0 auto;
}
body #wrap.page_landi article section.store .slider .slick-slide {
  padding: 0 5px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}
body #wrap.page_landi article section.store .slider .slick-slide div {
  height: inherit;
  display: flex;
  align-items: center;
}
body #wrap.page_landi article section.store .slider .slick-slide div img {
  -o-object-fit: contain;
  object-fit: contain;
  height: inherit;
}
body #wrap.page_landi article section.store .slider + .slider {
  margin-top: 40px;
}
body #wrap.page_landi article section.store > .flex {
  max-width: 1000px;
  margin: 0 auto 75px;
  width: 100%;
  justify-content: space-between;
}
body #wrap.page_landi article section.store > .flex * {
  display: block;
}
body #wrap.page_landi article section.store > .flex .item {
  max-width: 300px;
  min-height: 430px;
  width: inherit;
  position: relative;
  box-shadow: 6px 8px 16px rgba(0, 0, 0, 0.1);
  padding: 40px 20px 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
body #wrap.page_landi article section.store > .flex .item:before {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 40px 40px 0;
  border-color: transparent #da380c transparent transparent;
}
body #wrap.page_landi article section.store > .flex .item span.name {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  min-height: 64px;
}
body #wrap.page_landi article section.store > .flex .item span.date .msg {
  font-size: 14px;
  line-height: 1.5;
}
body #wrap.page_landi article section.store > .flex .item span.date .msg br {
  display: none;
}
body #wrap.page_landi article section.store > .flex .item img {
  width: 166px;
  height: 166px;
  -o-object-fit: cover;
  object-fit: cover;
  margin: 0 auto;
}
body #wrap.page_landi article section.store + section .sect_ttl_02 {
  margin-top: 140px;
}
body #wrap.page_landi article section.store + section .sect_ttl_02 + P {
  margin-bottom: 50px;
}
body #wrap.page_landi article section.store + section .flex {
  max-width: 458px;
  width: 100%;
  margin: 0 auto;
  justify-content: space-between;
}
body #wrap.page_landi article section.store + section .flex .item {
  max-width: 175px;
  width: 100%;
}
body #wrap.page_landi article section.store + section .flex .item .icon img {
  height: 41.4px;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  margin: 0 auto 13.8px;
  display: flex;
}
body #wrap.page_landi article section.store + section .flex .item .icon span {
  font-size: 18px;
  letter-spacing: 0.05em;
  font-weight: bold;
  display: block;
  text-align: center;
}
body #wrap.page_landi article section.store + section .flex .item .red_btn {
  width: 100%;
}
body
  #wrap.page_landi
  article
  section.store
  + section
  .flex
  .item
  .red_btn
  span {
  height: 40px;
  border-radius: 20px;
  margin-top: 20px;
  font-size: 16px;
  letter-spacing: 0.05em;
  min-width: unset;
  width: 100%;
}
body
  #wrap.page_landi
  article
  section.store
  + section
  .flex
  .item
  .red_btn
  span:before {
  display: none;
}
@media screen and (max-width: 740px) {
  body #wrap.page_landi article section.store .sect_ttl_02 {
    margin: 14.72vw 0 14px;
  }
  body #wrap.page_landi article section.store .sect_ttl_02 + p {
    margin-bottom: 30px;
  }
  body #wrap.page_landi article section.store .sect_ttl_02.sub {
    margin: 20.8vw 0 14px;
  }
  body #wrap.page_landi article section.store .slider .slick-slide {
    height: 40px;
  }
  body #wrap.page_landi article section.store .slider + .slider {
    margin-top: 5.33vw;
  }
  body #wrap.page_landi article section.store > .flex {
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto 10.67vw;
    flex-direction: column;
    align-items: center;
  }
  body #wrap.page_landi article section.store > .flex * {
    display: block;
  }
  body #wrap.page_landi article section.store > .flex .item {
    max-width: 100%;
    min-height: unset;
    width: 100%;
    box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.1);
    padding: 25px 20px 20px;
    display: flex;
    flex-direction: unset;
    justify-content: space-between;
  }
  body #wrap.page_landi article section.store > .flex .item:before {
    border-width: 0 24px 24px 0;
  }
  body #wrap.page_landi article section.store > .flex .item span.name {
    font-size: 14px;
    line-height: 1.7142857143;
    min-height: unset;
  }
  body #wrap.page_landi article section.store > .flex .item span.date {
    padding-bottom: 0;
    font-size: 12px;
  }
  body #wrap.page_landi article section.store > .flex .item span.date .msg {
    font-size: 12px;
  }
  body #wrap.page_landi article section.store > .flex .item img {
    width: 100px;
    height: 100px;
    margin: 0;
  }
  body #wrap.page_landi article section.store > .flex .item .txt {
    width: 100%;
    padding-left: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  body #wrap.page_landi article section.store > .flex .item:not(:last-child) {
    margin-bottom: 25px;
  }
  body #wrap.page_landi article section.store + section .sect_ttl_02 {
    margin-top: 20.8vw;
  }
  body #wrap.page_landi article section.store + section .flex {
    max-width: 335px;
  }
  body #wrap.page_landi article section.store + section .flex .item {
    max-width: 156px;
  }
  body #wrap.page_landi article section.store + section .flex .item .icon img {
    height: 29.24px;
    margin: 0 auto 12.3px;
  }
  body #wrap.page_landi article section.store + section .flex .item .icon span {
    font-size: 14px;
  }
  body
    #wrap.page_landi
    article
    section.store
    + section
    .flex
    .item
    .red_btn
    span {
    margin-top: 16px;
    font-size: 14px;
  }
}

/*----------------------------------
2023-02-22 ポップアップの調整
----------------------------------*/
body #PopUp.hide {
  pointer-events: none;
  opacity: 0;
}

/*----------------------------------
2023-06-23 アコーディオン
----------------------------------*/
#slideMenu ul li.sub .accordion {
  max-width: 100%;
  margin: 0 auto;
}
#slideMenu ul li.sub .accordion .accordion__item {
  position: relative;
}
#slideMenu
  ul
  li.sub
  .accordion
  .accordion__item.is-active
  .accordion__title::before {
  transform: rotate(180deg);
}
#slideMenu
  ul
  li.sub
  .accordion
  .accordion__item.is-active
  .accordion__title::after {
  transform: rotate(180deg);
  opacity: 0;
}
#slideMenu ul li.sub .accordion .accordion__item li a {
  font-size: 13px;
}
#slideMenu ul li.sub .accordion .accordion__title {
  width: 100%;
  height: 44px;
  padding-left: 54px;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  color: #fff;
  font-size: 1.6rem;
  background: #323232;
  position: relative;
  cursor: pointer;
}
#slideMenu ul li.sub .accordion .accordion__title::before,
#slideMenu ul li.sub .accordion .accordion__title::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  background-color: #fff;
  width: 15px;
  height: 2px;
  transition: all 0.3s;
}
#slideMenu ul li.sub .accordion .accordion__title::after {
  transform: rotate(90deg);
}
#slideMenu ul li.sub .accordion .accordion__title a {
  font-size: 14px;
  font-weight: bold;
  height: 40px;
  display: flex;
  align-items: center;
}
#slideMenu ul li.sub .accordion .accordion__title a:before {
  display: none !important;
}
#slideMenu ul li.sub .accordion .accordion__content {
  display: none;
  cursor: pointer;
}
#slideMenu ul li.sub .accordion .accordion__content.is-open {
  display: block;
}
#slideMenu ul li.sub .accordion .accordion__content li a {
  padding-left: 74px;
  font-size: 15px;
}

/*----------------------------------
223-07-07 landipro 調整
----------------------------------*/
body.landi {
  overflow-x: hidden;
}
body.landi #wrap.page_landi * {
  font-family: "メイリオ", "Meiryo", "ＭＳ ゴシック",
    "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
}
body.landi #wrap.page_landi .company .slider {
  display: none;
  height: 80px;
  opacity: 0;
  animation: company-slider forwards 0.5s 1s;
}
@keyframes company-slider {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
body.landi #wrap.page_landi .company .slider img {
  height: 80px;
  padding: 5px;
  -o-object-fit: contain;
  object-fit: contain;
}
body.landi #wrap.page_landi .company .slider.slick-initialized {
  display: block;
}
body.landi #wrap.page_landi .cta_area {
  background: #da380c;
  padding: 23px 0;
}
body.landi #wrap.page_landi .cta_area .red_btn {
  margin: 0 auto;
}
body.landi #wrap.page_landi .cta_area .red_btn span {
  height: 50px;
  border-radius: 6px;
  background: #fff;
  color: #da380c;
  min-width: 340px;
  box-shadow: 4px 4px 2px rgba(0, 0, 0, 0.16);
}
body.landi #wrap.page_landi .cta_area .red_btn span:before {
  content: "▶︎";
  color: #da380c;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
}
body.landi #wrap.page_landi article {
  padding-bottom: 85px;
}
body.landi #wrap.page_landi article .sect_ttl_02:before {
  content: unset;
}
body.landi #wrap.page_landi article .store {
  padding: 60px 0 95px;
}
body.landi #wrap.page_landi article .store .line {
  font-size: 28px;
  font-weight: bold;
  color: #da380c;
  width: 280px;
  border: 2px solid #da380c;
  margin: 0 auto;
  position: relative;
  line-height: 1;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.1em !important;
}
body.landi #wrap.page_landi article .store .line:before,
body.landi #wrap.page_landi article .store .line:after {
  position: absolute;
  content: "";
  background: #fff;
  width: 2px;
  height: 7px;
}
body.landi #wrap.page_landi article .store .line:before {
  left: -2px;
  bottom: -2px;
}
body.landi #wrap.page_landi article .store .line:after {
  right: -2px;
  top: -2px;
}
body.landi #wrap.page_landi article .store .line + .introduction {
  margin-top: 45px;
}
body.landi #wrap.page_landi article .store > p {
  text-align: center;
}
body.landi #wrap.page_landi article .store > p.introduction {
  margin-top: 40px;
}
body.landi #wrap.page_landi article .store > p.introduction b {
  font-size: 20px;
}
body.landi #wrap.page_landi article .store > p.introduction b span {
  line-height: 1;
}
body.landi #wrap.page_landi article .store > p.introduction b span.num {
  color: #da380c;
  font-size: 46px;
}
body.landi #wrap.page_landi article .store > p.introduction b span.p {
  color: #da380c;
  font-size: 36px;
}
body.landi #wrap.page_landi article .store > p.introduction b span.middle {
  font-size: 26px;
}
body.landi #wrap.page_landi article .store > p.introduction b span sup {
  vertical-align: super;
  font-size: 2rem;
}
body.landi #wrap.page_landi article .store > p.introduction + p {
  margin: 20px 0 45px;
}
body.landi #wrap.page_landi article .store > p:nth-child(1) {
  letter-spacing: 0.018em;
}
body.landi #wrap.page_landi article .store .explanation {
  margin: 0 0 40px 0;
}
body.landi #wrap.page_landi article .store .explanation p {
  text-align: center;
}
body.landi #wrap.page_landi article .features .sect_ttl_02 {
  margin: 78px 0 52px;
}
body.landi #wrap.page_landi article .features .sect_ttl_03 {
  text-align: center;
  margin: 0 auto 22px;
  background: #da380c;
  color: #fff;
  font-weight: bold;
  font-size: 26px;
  max-width: 980px;
  width: 100%;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
}
body.landi #wrap.page_landi article .features .sect_ttl_03 + p {
  margin-top: 0;
  margin-bottom: 50px;
  line-height: 1.625;
}
body.landi #wrap.page_landi article .features .point_list {
  margin-bottom: 0;
}
body.landi #wrap.page_landi article .features .point_list .item {
  box-shadow: 6px 6px 12px rgba(0, 0, 0, 0.16);
}
body.landi #wrap.page_landi article .features .point_list + .sect_ttl_03 {
  margin-top: 110px;
}
body.landi #wrap.page_landi article .features + .store {
  padding: 115px 0 0;
}
body.landi #wrap.page_landi article .features + .store .sect_ttl_02.sub {
  margin: 155px 0 19px;
}
body.landi #wrap.page_landi article .features + .store + section .sect_ttl_02 {
  margin-top: 85px;
}
@media screen and (min-width: 751px) {
  body.landi #wrap.page_landi article .features + .store + section .flex {
    max-width: 500px;
  }
  body.landi #wrap.page_landi article .features + .store + section .flex .item {
    max-width: 230px;
  }
}
body.landi #wrap.page_landi article .features .flex_cta {
  display: grid;
  grid-auto-flow: column;
  place-content: center;
  -moz-column-gap: 20px;
  column-gap: 20px;
  margin: 100px 0 10px;
}
body.landi #wrap.page_landi article .features .flex_cta .cta_area {
  background: initial;
  padding: 0;
}
body.landi #wrap.page_landi article .features .flex_cta .cta_area .btn {
  margin: 0 auto;
}
body.landi #wrap.page_landi article .features .flex_cta .cta_area .btn span {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding-right: 26px;
  font-size: 22px;
  font-weight: bold;
  height: 50px;
  border-radius: 6px;
  background: #da380c;
  color: white;
  min-width: 280px;
  box-shadow: 4px 4px 2px rgba(0, 0, 0, 0.16);
}
body.landi
  #wrap.page_landi
  article
  .features
  .flex_cta
  .cta_area
  .btn
  span:before {
  position: absolute;
  content: "▶︎";
  color: white;
  top: 50%;
  right: 26px;
  transform: translateY(-50%);
}
body.landi
  #wrap.page_landi
  article
  .features
  .flex_cta
  .cta_area
  .btn
  span.red {
  background: #da380c;
  color: white;
}
body.landi
  #wrap.page_landi
  article
  .features
  .flex_cta
  .cta_area
  .btn
  span.white {
  border: solid 1px #da380c;
  background: white;
  color: #da380c;
}
body.landi
  #wrap.page_landi
  article
  .features
  .flex_cta
  .cta_area
  .btn
  span.white:before {
  color: #da380c;
}
@media screen and (max-width: 740px) {
  body.landi #wrap.page_landi article .features .flex_cta {
    grid-auto-flow: initial;
    row-gap: 20px;
    margin-top: 40px;
  }
}
body.landi #wrap.page_landi article .worries {
  padding: 75px 0 66px;
}
body.landi #wrap.page_landi article .worries * {
  position: relative;
  z-index: 10;
}
body.landi #wrap.page_landi article .worries > p {
  font-weight: bold;
  font-size: 28px;
  text-align: center;
  line-height: 1.2857142857;
}
body.landi #wrap.page_landi article .worries > p.red {
  line-height: 1.3125;
  letter-spacing: 0.084em;
  font-size: 32px;
  color: #da380c;
  position: relative;
}
body.landi #wrap.page_landi article .worries > p.red:before {
  position: absolute;
  content: "";
  top: 0;
}
body.landi #wrap.page_landi article .worries ul {
  margin: 35px auto 130px;
  max-width: 620px;
  width: 100%;
  position: relative;
}
body.landi #wrap.page_landi article .worries ul:before {
  position: absolute;
  content: "";
  width: 50px;
  height: 59.97px;
  background: url(../img/landi/worries_arrow.png) no-repeat;
  background-size: contain;
  bottom: -99.97px;
  left: 50%;
  transform: translateX(-50%);
}
body.landi #wrap.page_landi article .worries ul li {
  width: 100%;
  height: 60px;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  text-align: center;
  border-radius: 6px;
  background: #fff;
  color: #323232;
  font-weight: bold;
  margin-bottom: 25px;
}
body.landi #wrap.page_landi article .worries .contents {
  background: #fff;
  border-radius: 6px;
  max-width: 1000px;
  margin: 85px auto 0;
  padding: 40px 0;
}
body.landi #wrap.page_landi article .worries .contents > img {
  display: block;
  margin: 0 auto;
}
body.landi #wrap.page_landi article .worries .contents b {
  text-align: center;
  font-size: 20px;
}
body.landi #wrap.page_landi article .worries .contents .flex {
  justify-content: center;
  align-items: baseline;
  line-height: 1;
}
body.landi #wrap.page_landi article .worries .contents .flex img {
  width: 236.05px;
}
body.landi #wrap.page_landi article .worries .contents .flex b {
  transform: translateY(-9px);
  margin-left: 9px;
}
body.landi #wrap.page_landi article .worries .contents .flex + b {
  letter-spacing: 0.084em;
}
body.landi #wrap.page_landi article .worries .contents span.middle {
  font-size: 28px;
}
body.landi #wrap.page_landi article .worries .contents span.large {
  font-size: 36px;
}
body.landi #wrap.page_landi article .worries .contents span.red {
  color: #da380c;
}
body.landi #wrap.page_landi article .worries .contents > img {
  max-width: 462px;
  margin: 25px auto 40px;
}
body.landi #wrap.page_landi article .worries .contents > img + b {
  font-size: 24px;
  line-height: 1.58;
}
body.landi #wrap.page_landi article .annotation {
  margin: 60px auto 0;
  width: 70%;
}
body.landi #wrap.page_landi article .annotation p {
  line-height: normal;
  font-size: 1.6rem;
}
body.landi #wrap.page_landi article .annotation p em {
  color: red;
}
body.landi #wrap.page_landi article .annotation .marginbottom {
  margin-bottom: 20px;
}
body.landi #wrap.page_landi article .annotation .company {
  font-size: 1.4rem;
}
@media screen and (max-width: 740px) {
  body.landi #wrap.page_landi .red_btn span {
    height: 40px;
    border-radius: 20px;
    min-width: 230px;
    font-size: 14px;
  }
  body.landi #wrap.page_landi .ttl_landi .flex .box {
    margin-bottom: 3.47vw;
  }
  body.landi #wrap.page_landi .cta_area {
    padding: 6.13vw 0;
  }
  body.landi #wrap.page_landi .cta_area .red_btn span {
    border-radius: 1.6vw;
    min-width: 75.2vw;
    font-size: 16px;
  }
  body.landi #wrap.page_landi .cta_area .red_btn span:before {
    right: 4.8vw;
  }
  body.landi #wrap.page_landi article {
    padding-bottom: 11.87vw;
  }
  body.landi #wrap.page_landi article .store {
    padding: 15px 0;
  }
  body.landi #wrap.page_landi article .store .line {
    font-size: 18px;
    width: 200px;
    height: 42px;
  }
  body.landi #wrap.page_landi article .store .line + .introduction {
    margin-top: 20px;
  }
  body.landi #wrap.page_landi article .store > p.introduction {
    margin-top: 30px;
  }
  body.landi #wrap.page_landi article .store > p.introduction b {
    font-size: 16px;
  }
  body.landi #wrap.page_landi article .store > p.introduction b span.num {
    font-size: 40px;
  }
  body.landi #wrap.page_landi article .store > p.introduction b span.p {
    font-size: 30px;
  }
  body.landi #wrap.page_landi article .store > p.introduction b span.middle {
    font-size: 16px;
  }
  body.landi #wrap.page_landi article .store > p.introduction + p {
    margin: 5px 0 30px;
  }
  body.landi #wrap.page_landi article .store > p:nth-child(1) {
    letter-spacing: 0;
    text-align: left;
    max-width: 80vw;
    margin: 0 auto;
  }
  body.landi #wrap.page_landi article .store .slider {
    height: 80px;
  }
  body.landi #wrap.page_landi article .store .slider .slick-slide {
    height: 80px;
  }
  body.landi #wrap.page_landi article .store .slider + .slider {
    margin-top: 0;
  }
  body.landi #wrap.page_landi article .store .explanation {
    margin: 0 0 40px 0;
  }
  body.landi #wrap.page_landi article .store .explanation p {
    text-align: center;
  }
  body.landi #wrap.page_landi article .features .sect_ttl_02 {
    margin: 40px 0 23px;
  }
  body.landi #wrap.page_landi article .features .sect_ttl_03 {
    margin: 0 auto 12px;
    font-size: 16px;
    max-width: 89.33vw;
    height: 36px;
  }
  body.landi #wrap.page_landi article .features .sect_ttl_03 + p {
    text-align: left;
    font-size: 16px;
    margin-bottom: 25px;
    line-height: 1.625;
  }
  body.landi #wrap.page_landi article .features .point_list {
    padding: 0 20px;
  }
  body.landi #wrap.page_landi article .features .point_list .item {
    box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.16);
  }
  body.landi #wrap.page_landi article .features .point_list + .sect_ttl_03 {
    margin-top: 45px;
  }
  body.landi #wrap.page_landi article .features + .store {
    padding: 65px 0 0;
  }
  body.landi #wrap.page_landi article .features + .store .sect_ttl_02.sub {
    margin: 40px 0 15px;
  }
  body.landi #wrap.page_landi article .features + .store .sect_ttl_02.sub + p {
    text-align: left;
    margin-bottom: 20px;
  }
  body.landi
    #wrap.page_landi
    article
    .features
    + .store
    + section
    .sect_ttl_02 {
    margin-top: 65px;
  }
  body.landi
    #wrap.page_landi
    article
    .features
    + .store
    + section
    .sect_ttl_02
    em {
    line-height: 1.625;
  }
  body.landi
    #wrap.page_landi
    article
    .features
    + .store
    + section
    .sect_ttl_02
    + p {
    margin-bottom: 40px;
    line-height: 1.857;
  }
  body.landi #wrap.page_landi article .features + .store + section .flex {
    flex-direction: column;
    align-items: center;
  }
  body.landi #wrap.page_landi article .features + .store + section .flex .item {
    max-width: 230px;
  }
  body.landi
    #wrap.page_landi
    article
    .features
    + .store
    + section
    .flex
    .item
    + .item {
    margin-top: 50px;
  }
  body.landi #wrap.page_landi article .worries {
    padding: 25px 0 30px;
  }
  body.landi #wrap.page_landi article .worries > p {
    font-size: 28px;
    text-align: center;
    line-height: 1.2857142857;
  }
  body.landi #wrap.page_landi article .worries > p.red {
    line-height: 1.2857142857;
    font-size: 28px;
  }
  body.landi #wrap.page_landi article .worries ul {
    margin: 20px auto 70px;
    max-width: 74.67vw;
  }
  body.landi #wrap.page_landi article .worries ul:before {
    width: 38.46px;
    height: 46.12px;
    bottom: -60.62px;
  }
  body.landi #wrap.page_landi article .worries ul li {
    font-size: 14px;
    line-height: 1.4285714286;
    margin: 0 auto 14px;
  }
  body.landi #wrap.page_landi article .worries .contents {
    max-width: 88vw;
    margin: 15px auto 0;
    padding: 25px 0 20px;
  }
  body.landi #wrap.page_landi article .worries .contents b {
    font-size: 20px;
  }
  body.landi #wrap.page_landi article .worries .contents .flex {
    justify-content: center;
    align-items: baseline;
  }
  body.landi #wrap.page_landi article .worries .contents .flex img {
    width: 175px;
  }
  body.landi #wrap.page_landi article .worries .contents .flex b {
    transform: translateY(-5px);
    margin-left: 9px;
  }
  body.landi #wrap.page_landi article .worries .contents span.middle {
    font-size: 16px;
  }
  body.landi #wrap.page_landi article .worries .contents span.large {
    font-size: 24px;
  }
  body.landi #wrap.page_landi article .worries .contents > img {
    margin: 19.6px auto 24.7px;
    width: 75.2vw;
  }
  body.landi #wrap.page_landi article .worries .contents > img + b {
    font-size: 20px;
    line-height: 1.3;
    max-width: 79vw;
    display: block;
    margin: 0 auto;
  }
}
body #landi_bnr {
  position: fixed;
  bottom: 0;
  width: 100%;
  background: rgba(218, 56, 12, 0.67);
  display: none;
}
body #landi_bnr .inner {
  max-width: 740px;
  margin: 0 auto;
  padding: 20px 0;
}
body #landi_bnr .inner p {
  background: #fee172;
  width: 100%;
  height: 50px;
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
body #landi_bnr .inner ul {
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
body #landi_bnr .inner ul li {
  width: 100%;
}
body #landi_bnr .inner ul li a {
  max-width: 340px;
  width: 100%;
  height: 60px;
  border-radius: 40px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #cc381a;
  font-weight: bold;
  font-size: 22px;
}
@media screen and (max-width: 740px) {
  body #landi_bnr {
    display: block;
    background: unset;
    z-index: 30;
  }
  body #landi_bnr .inner {
    max-width: 100%;
    padding: 0;
  }
  body #landi_bnr .inner ul {
    margin-top: 0;
  }
  body #landi_bnr .inner ul li {
    width: 50%;
  }
  body #landi_bnr .inner ul li a {
    max-width: 100%;
    height: 70px;
    border-radius: 0;
    font-size: 12px;
    font-size: 16px;
    letter-spacing: 0.04em;
  }
  body #landi_bnr .inner ul li.wide {
    width: 100%;
  }
  body #landi_bnr .inner ul li:nth-child(1) a {
    background: #da380c;
    color: #fff;
  }
  body #landi_bnr .inner ul li:nth-child(2) a {
    background: #c9c9c9;
    color: #ea3b0c;
  }
}

/*----------------------------------
223-07-19 landipro app 調整
----------------------------------*/
body #wrap.lp20220311 .lp_ttl {
  height: auto;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .lp_ttl .lp_login a {
    line-height: 1.25;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 64px;
  }
}
body #wrap.lp20220311 .lp_ttl a.landi_download {
  color: #fff;
  font-size: 24px;
  background: #da380c;
  width: 100%;
  font-weight: bold;
  display: flex;
  margin: 5px auto 0;
  height: 64px;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 740px) {
  body #wrap.lp20220311 .lp_ttl a.landi_download {
    font-size: 16px;
    text-align: center;
    line-height: 1.25;
    height: 80px;
  }
}

/*----------------------------------
24-1-9 地震についてのアナウンス
----------------------------------*/
.disaster-announce {
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
  padding: 20px;
  box-sizing: border-box;
  background-color: #e6e6e6;
}
.disaster-announce p {
  text-align: center;
  color: #000;
  font-size: 1.4rem;
}
.disaster-announce p .spbr {
  display: none;
}

.landi-page {
  margin: 20px auto;
}

@media screen and (max-width: 767px) {
  .disaster-announce {
    padding: 10px;
  }
  .disaster-announce p {
    font-size: 1.2rem;
  }
  .disaster-announce p .spbr {
    display: inline;
  }
}
/*----------------------------------
23-12-18 recruit 調整
----------------------------------*/
.extend .red_btn_large {
  margin: 100px auto;
}
.extend img {
  display: block;
  margin: 0 auto 50px;
}

.modal_box_inner .innerLi p {
  margin-bottom: 10px;
}

.pagination {
  margin-top: 80px;
}
.pagination .wp-pagenavi {
  display: flex;
  justify-content: center;
  gap: 16px;
}
.pagination .wp-pagenavi * {
  display: flex;
  width: 50px;
  height: 50px;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  font-size: 18px;
  box-sizing: border-box;
  color: #024754;
}
.pagination .wp-pagenavi .current {
  color: #fff;
  background: #024754;
}
.pagination .wp-pagenavi .page {
  margin: 0;
}
.pagination .wp-pagenavi .extend {
  align-items: flex-end;
  font-size: 40px;
  font-weight: 400;
  line-height: 1;
  color: #ddd;
}
.pagination .wp-pagenavi a {
  background: #ddd;
}
.pagination + .search_box {
  margin-top: 100px;
}
.pagination + .search_box + .shift_button {
  display: flex;
  max-width: 236px;
  margin-left: auto;
  margin-right: auto;
  background: #024754;
  margin: 105px auto 0;
}
.pagination.landi .wp-pagenavi .current {
  background: #da380c;
  color: #fff;
}
.pagination.landi .wp-pagenavi * {
  color: #da380c;
}

@media screen and (max-width: 767px) {
  .pagination {
    margin-top: 18.667vw;
  }
  .pagination .wp-pagenavi {
    gap: 13px;
  }
  .pagination .wp-pagenavi * {
    width: 40px;
    height: 40px;
    font-size: 13px;
  }
  .pagination .wp-pagenavi .extend {
    width: 20px;
  }
  .pagination + .search_box + .shift_button {
    margin: 17.067vw auto 0;
    max-width: 236px;
  }
  .extend .red_btn_large {
    margin: 50px auto;
  }
  .extend img {
    width: 70%;
  }
}
/*----------------------------------
2023-12-23 改修
----------------------------------*/
@media screen and (max-width: 750px) {
  body .sp_flex {
    display: flex !important;
  }
}
@media screen and (min-width: 751px) {
  body .sp_flex {
    display: none !important;
  }
}
@media screen and (max-width: 750px) {
  body .pc_flex {
    display: none !important;
  }
}
@media screen and (min-width: 751px) {
  body .pc_flex {
    display: flex !important;
  }
}
body nav#panlistid * {
  color: #7b7b7b !important;
  font-size: 14px;
  max-width: 1000px;
  margin: 0 auto;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 750px) {
  body nav#panlistid {
    padding: 0 20px;
  }
}
body .shift_button {
  height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  color: #ddd;
  font-size: 20px;
  letter-spacing: 0.1em;
  font-weight: 500;
  padding: 0 60px 4px;
  margin-top: 70px;
  box-sizing: border-box;
}
body .shift_button:before {
  pointer-events: none;
  position: absolute;
  z-index: 10;
  content: "";
  top: -4px;
  left: -4px;
  box-sizing: border-box;
  border: 1px solid #7b7b7b;
  width: 100%;
  height: 100%;
}
body .shift_button.corp {
  background: #024754;
  color: #ddd !important;
}
body .shift_button.gray {
  display: flex;
  max-width: 200px;
  height: 50px;
  margin: 70px auto 0;
  padding: 0;
  color: #fff;
  background: #767171;
  box-shadow: 2px 2px 5px #767171;
  letter-spacing: 0;
  justify-content: flex-start;
  padding-left: 1.5em;
  font-size: 14px;
}
body .shift_button.gray:before {
  top: 50%;
  transform: translateY(-50%);
  left: unset;
  right: 1.3em;
  box-sizing: border-box;
  border: unset;
  width: auto;
  height: auto;
  content: "＞";
  font-size: 12px;
}
@media screen and (max-width: 750px) {
  body .shift_button {
    font-size: 18px;
    padding: 0 60px 4px;
    margin-top: 45px;
  }
}
body header.new_header {
  height: 200px;
  border-bottom: 0;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.08);
  position: fixed;
  top: 0;
  z-index: 99999;
  width: 100%;
  background-color: white;
}
body header.new_header .head_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0 60px;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}
body header.new_header .head_inner .logo {
  padding: 0;
  border: unset;
}
body header.new_header .head_inner .menu_block {
  height: 100%;
}
body header.new_header .head_inner .menu_block .tab {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  margin-bottom: 40px;
}
body header.new_header .head_inner .menu_block .tab > * * {
  min-width: 200px;
  padding: 0 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 70px;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.04em;
}
body header.new_header .head_inner .menu_block .tab .materials {
  background: #024754;
}
body header.new_header .head_inner .menu_block .tab .materials a {
  color: #bfbfbf;
}
body header.new_header .head_inner .menu_block .tab .contact {
  background: #bfbfbf;
}
body header.new_header .head_inner .menu_block .tab .contact a {
  color: #024754;
}
body header.new_header .head_inner .menu_block .menu_list {
  display: flex;
  align-items: center;
  gap: 40px;
}
@media screen and (min-width: 751px) {
  body header.new_header .head_inner .menu_block .menu_list {
    justify-content: flex-end;
  }
}
body header.new_header .head_inner .menu_block .menu_list li a {
  font-weight: 500;
  letter-spacing: 0.05em;
  font-size: 21px;
  color: #202121;
}
@media screen and (max-width: 750px) {
  body header.new_header {
    height: 70px;
    box-shadow: unset;
  }
  body header.new_header .head_inner {
    padding: 0 0 0 20px;
  }
  body header.new_header .head_inner .logo img {
    width: 145px;
    -o-object-fit: contain;
    object-fit: contain;
  }
  body header.new_header .head_inner .menu_block {
    height: 100%;
  }
  body header.new_header .head_inner .menu_block .tab {
    display: none;
  }
  body header.new_header .head_inner .menu_block .menu_list {
    gap: 0;
  }
  body
    header.new_header
    .head_inner
    .menu_block
    .menu_list
    li:not(.toggle_box) {
    display: none;
  }
}
body header.new_header.landi .head_inner .menu_block .tab .materials {
  background: #da380c;
}
body header.new_header.landi .head_inner .menu_block .tab .materials a {
  color: #f5f5f5;
}
body header.new_header.landi .head_inner .menu_block .tab .contact a {
  color: #da380c;
}
body header.new_header.corp .head_inner .logo {
  padding: 0;
}
body header.new_header.corp .head_inner .logo img {
  width: 290.33px;
  height: 65px;
  -o-object-fit: contain;
  object-fit: contain;
}
@media screen and (max-width: 750px) {
  body header.new_header.corp .head_inner .logo {
    padding: 0;
  }
  body header.new_header.corp .head_inner .logo img {
    width: 145px;
    height: 29px;
  }
}
@media screen and (max-width: 750px) {
  body .accordion .content {
    display: none;
  }
}
body .site_menu {
  display: flex;
  justify-content: center;
  padding-top: 105px;
}
body .site_menu .item {
  border-left: 1px solid #ddd;
  padding: 0 40px;
}
@media screen and (min-width: 751px) {
  body .site_menu .item {
    display: flex;
    justify-content: flex-start;
    padding: 0;
    padding-left: 40px;
  }
}
body .site_menu .item:last-child {
  padding-left: 30px;
}
body .site_menu .item * {
  color: #024754;
}
body .site_menu .item > ul > li > a {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.6666666667;
  border-bottom: 1px solid #024754;
}
body .site_menu .item > ul > li > ul {
  margin-top: 10px;
}
body .site_menu .item > ul > li > ul > li > a {
  font-size: 15px;
  line-height: 2;
  font-weight: 500;
}
body .site_menu .item > ul > li > ul > li + li {
  margin-top: 12px;
}
@media screen and (min-width: 751px) {
  body .site_menu .item > ul > li > ul > li ul:not(.content) {
    padding-left: 20px;
    font-size: 14px;
  }
}
body .site_menu .item > ul > li > ul > li ul.content {
  padding-left: 20px;
  margin-bottom: 5px;
}
body .site_menu .item > ul > li > ul > li ul.content > li {
  margin-bottom: 0;
}
body .site_menu .item > ul > li > ul > li ul.content > li > a {
  font-size: 14px;
  line-height: 2.1428571429;
}
body .site_menu .item > ul > li + li {
  margin-top: 20px;
}
body .site_menu .item .tab {
  gap: 5px;
  margin-bottom: 40px;
}
body .site_menu .item .tab > * {
  margin: 0;
}
body .site_menu .item .tab > * * {
  height: 70px;
  width: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: unset !important;
  letter-spacing: 0.04em;
}
body .site_menu .item .tab .materials {
  background: #024754;
  margin-bottom: 10px;
}
body .site_menu .item .tab .materials a {
  color: #bfbfbf;
}
body .site_menu .item .tab .contact {
  background: #bfbfbf;
}
body .site_menu .item .tab .contact a {
  color: #024754;
}
@media screen and (min-width: 751px) {
  body .site_menu {
    max-width: 1000px;
    margin: 0 auto;
  }
  body .site_menu .item {
    width: 33.33%;
  }
  body .site_menu .toggle + a {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6666666667;
    border-bottom: 1px solid #024754;
  }
  body .site_menu .toggle + a + ul {
    margin-top: 10px;
  }
  body .site_menu .trigger.unfocus .toggle + a {
    border: unset !important;
    font-size: 15px;
    line-height: 2;
    font-weight: 500;
  }
  body .site_menu .trigger.unfocus ul {
    padding-left: 0;
  }
  body .site_menu .trigger.unfocus ul li {
    margin-top: 0 !important;
  }
  body .site_menu .trigger.unfocus ul li a {
    font-size: 14px;
    font-weight: 400;
    padding-left: 22px;
  }
  body .site_menu .trigger .content {
    margin-top: 10px;
  }
  body .site_menu .trigger .content li a {
    font-size: 15px;
    line-height: 2;
    font-weight: 500;
  }
  body .site_menu .trigger .content li + li {
    margin-top: 12px;
  }
  body .site_menu .trigger .content ul li a {
    font-size: 14px;
    font-weight: 400;
    padding-left: 22px;
  }
  body .site_menu .trigger .content ul li + li {
    margin-top: 0;
  }
}
@media screen and (max-width: 750px) {
  body .site_menu {
    display: block;
    padding-top: 70px;
  }
  body .site_menu .item {
    border-left: unset;
    padding: 0;
  }
  body .site_menu .item * {
    display: block;
    width: 100%;
  }
  body .site_menu .item * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-weight: 500;
  }
  body .site_menu .item .trigger {
    position: relative;
  }
  body .site_menu .item .trigger .toggle {
    position: absolute;
    pointer-events: none;
    width: 15px;
    height: 15px;
    right: 30px;
    top: 20px;
    overflow: hidden;
  }
  body .site_menu .item .trigger .toggle:before,
  body .site_menu .item .trigger .toggle:after {
    position: absolute;
    content: "";
    background: #024754;
  }
  body .site_menu .item .trigger .toggle:before {
    width: 100%;
    height: 2px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }
  body .site_menu .item .trigger .toggle:after {
    width: 2px;
    height: 100%;
    left: 50%;
    transform: translateX(-50%);
    transition: transform 0.3s;
  }
  body .site_menu .item .trigger .toggle + a {
    font-size: 18px;
    font-weight: 500;
    background: transparent;
  }
  body .site_menu .item .trigger .content {
    cursor: pointer;
    display: none;
  }
  body .site_menu .item .trigger .content.is-open {
    display: block;
  }
  body .site_menu .item .trigger.unfocus .toggle + a {
    font-size: 15px;
  }
  body .site_menu .item .trigger.unfocus ul {
    padding-left: 0;
  }
  body .site_menu .item .trigger.unfocus ul li {
    margin-top: 0 !important;
  }
  body .site_menu .item .trigger.unfocus ul li a {
    font-size: 14px;
    font-weight: 400;
    padding-left: 22px;
  }
  body .site_menu .item .trigger.is-active .toggle:after {
    transform: translateX(-50%) rotate(90deg);
  }
  body .site_menu .item li {
    /* アコーディオン全体 */
    /* アコーディオン */
    /* アコーディオンのタイトル */
  }
  body .site_menu .item li .accordion {
    max-width: 800px;
    margin: 0 auto;
  }
  body .site_menu .item li .accordion__item {
    border: 1px solid #ccc;
    margin-top: 10px;
    cursor: pointer;
  }
  body .site_menu .item li .accordion__title {
    position: relative;
    border-bottom: 1px solid #ddd;
  }
  body .site_menu .item li .accordion__title a {
    font-size: 15px;
    line-height: 2;
    font-weight: 500;
    width: auto;
    display: inline-flex;
    border: unset;
  }
  body .site_menu .item li .accordion__title.corp {
    background: #024754;
  }
  body .site_menu .item li .accordion__title.corp a {
    color: #fff !important;
  }
  body .site_menu .item li .accordion__title.corp .toggle:before,
  body .site_menu .item li .accordion__title.corp .toggle:after {
    background: #fff;
  }
  body .site_menu .item li .accordion__title.corp + .content a {
    color: #024754 !important;
  }
  body .site_menu .item li .accordion__title.child > a {
    font-size: 15px;
  }
  body .site_menu .item li .accordion__title.child + .content li a {
    font-weight: 400;
    background: #eaeaea;
  }
  body .site_menu .item li .accordion__content {
    padding: 0 20px 15px 20px;
    display: none;
    cursor: pointer;
  }
  body .site_menu .item li .accordion__content.is-open {
    display: block;
  }
  body .site_menu .item a {
    height: 60px;
    display: flex;
    align-items: center;
    padding-left: 30px;
    color: #024754;
    background: #f5f5f5;
    border-bottom: 1px solid #ddd;
  }
  body .site_menu .item:first-child > ul > li > a {
    font-size: 18px;
    color: #fff;
    background: #024754;
  }
  body .site_menu .item:last-child {
    padding-left: 0;
  }
  body .site_menu .item > ul > li > a {
    font-size: 15px;
    font-weight: 500;
    line-height: 2;
    border-bottom: 1px solid #ddd;
  }
  body .site_menu .item > ul > li > ul {
    margin-top: 0;
  }
  body .site_menu .item > ul > li > ul > li + li {
    margin-top: 0;
  }
  body .site_menu .item > ul > li > ul > li ul.content {
    padding-left: 0;
    margin-bottom: 0;
  }
  body .site_menu .item > ul > li > ul > li ul.content > li {
    margin-bottom: 0;
  }
  body .site_menu .item > ul > li > ul > li ul.content > li a {
    background: #eaeaea;
  }
  body .site_menu .item > ul > li + li {
    margin-top: 0;
  }
  body .site_menu .item ul li.common a {
    color: #000 !important;
    border-bottom: 1px solid #ddd !important;
    font-size: 18px;
    background: #fff;
  }
  body .site_menu .item .tab {
    display: none;
  }
}
body footer .site_menu {
  max-width: 1000px;
  margin: 0 auto;
  padding-top: 0;
}
body footer .site_menu .item {
  padding: 0 30px 0 40px;
  width: 33.33%;
}
@media screen and (min-width: 751px) {
  body footer .site_menu .item {
    display: block;
  }
}
body footer .site_menu .item img {
  margin-bottom: 20px;
}
body footer .site_menu .item img + p,
body footer .site_menu .item address {
  font-size: 14px;
  font-weight: 500;
  line-height: 2.1428571429;
}
body footer .site_menu .item > ul > li > a {
  padding-bottom: 3px;
}
body footer .site_menu .item > ul > li + li {
  margin-top: 45px;
}
body footer .site_menu .item > ul > li > ul > li > ul {
  padding-left: 22px;
  font-size: 14px;
  line-height: 2.1428571429;
  margin: 10px 0 5px;
}
body footer .copy {
  width: 100%;
  color: #fff;
  margin: 85px auto 0;
  text-align: center;
  font-size: 12px;
  line-height: 1.5;
}
body footer.corp {
  background: #024754;
}
body footer.corp .site_menu .item {
  border-left: #366771 1px solid;
}
body footer.corp .site_menu .item > ul > li > a {
  border-bottom: 1px solid #fff;
}
body footer.corp .site_menu .item * {
  color: #fff;
}
body footer.corp .site_menu .item:last-child {
  border-right: #366771 1px solid;
}
body footer.landi .site_menu .item {
  border-left: #dd5834 1px solid;
}
body footer.landi .site_menu .item > ul > li > a {
  border-bottom: 1px solid #fff;
}
body footer.landi .site_menu .item * {
  color: #fff;
}
body footer.landi .site_menu .item:last-child {
  border-right: #dd5834 1px solid;
}
@media screen and (max-width: 750px) {
  body footer .site_menu {
    padding: 13.333vw 20px 10.667vw;
    max-width: 100%;
  }
  body footer .site_menu .item {
    padding: 0;
    width: 100%;
    border-left: unset !important;
  }
  body footer .site_menu .item img {
    margin-bottom: 15px;
    width: 184.32px;
    -o-object-fit: contain;
    object-fit: contain;
  }
  body footer .site_menu .item a {
    background: unset;
    border-bottom: unset;
    height: auto;
    padding-left: 0;
  }
  body footer .site_menu .item > ul > li > a {
    font-size: 18px;
    padding-bottom: 3px;
    display: inline;
    font-weight: bold;
    border-bottom: 1px solid #fff;
  }
  body footer .site_menu .item > ul > li + li {
    margin-top: 25px;
    border-top: 1px solid #366771;
    padding-top: 27px;
  }
  body footer .site_menu .item > ul > li > ul {
    margin-top: 15px;
  }
  body footer .site_menu .item > ul > li > ul > li + li {
    margin-top: 15px;
  }
  body footer .site_menu .item > ul > li > ul > li > ul {
    padding-left: 20px;
    margin: 0 0 20px;
  }
  body footer .site_menu .item:last-child {
    border-right: unset !important;
  }
  body footer .site_menu .item + .item {
    border-top: #366771 1px solid;
    margin-top: 25px;
    padding: 27px 0 0;
  }
  body footer.landi .item > ul > li + li {
    border-top: 1px solid #dd5834;
  }
  body footer.landi .item + .item {
    border-top: #dd5834 1px solid;
  }
  body footer .copy {
    margin: 0 auto;
    padding-bottom: 10.667vw;
  }
}
body #slide_menu {
  background: #f5f5f5;
  position: fixed;
  top: 0;
  z-index: 99999;
  left: 0;
  right: 0;
  padding: 60px 0 75px;
  pointer-events: none;
  opacity: 0;
  transition: 0.3s;

  a{
    pointer-events: none;
  }

  .on &{
    a{
      pointer-events: all;
    }
  }
}
body #slide_menu .toggle_box.close {
  position: absolute;
  right: 60px;
  top: 60px;
  z-index: 999999;
}
body #slide_menu.landi .site_menu .item * {
  color: #da380c;
}
body #slide_menu.landi .site_menu .item > ul > li > a {
  border-bottom: 1px solid #da380c;
}
body #slide_menu.landi .site_menu .item .tab .materials {
  background: #da380c;
}
body #slide_menu.landi .site_menu .item .tab .materials a {
  color: #fff;
}
body #slide_menu.landi .site_menu .item .tab .contact a {
  color: #da380c;
}
@media screen and (min-width: 751px) {
  body #slide_menu.landi .site_menu .item .toggle + a {
    border-bottom: 1px solid #da380c;
  }
}
@media screen and (max-width: 750px) {
  body #slide_menu {
    top: 0;
    z-index: 999;
    padding: 0;
    overflow-y: auto;
    overflow-x: hidden;
    height: 100%;
  }
  body #slide_menu .toggle_box.close {
    display: none;
  }
}
body #modal_bg {
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  z-index: 100;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  pointer-events: none;
  opacity: 0;
  transition: 0.3s;
}
body .toggle_box {
  background: #e6e6e6;
  width: 50px;
  height: 50px;
  position: relative;
  cursor: pointer;
}
body .toggle_box span {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  background: #024754;
  content: "";
  width: 16px;
  height: 2px;
  transition: 0.3s;
}
body .toggle_box span:nth-child(1) {
  top: 18px;
}
body .toggle_box span:nth-child(2) {
  top: 50%;
  transform: translate(-50%, -50%);
}
body .toggle_box span:nth-child(3) {
  bottom: 18px;
}
body .toggle_box.close {
  background: #e6e6e6 url(../img/icon/close.svg) 16px 16px no-repeat;
}
body .toggle_box.close.landi {
  background: #e6e6e6 url(../img/icon/close_landi.svg) 16px 16px no-repeat;
}
body .toggle_box.landi span {
  background: #da380c;
}
@media screen and (max-width: 750px) {
  body .toggle_box {
    width: 70px;
    height: 70px;
  }
  body .toggle_box span {
    width: 22px;
    height: 3px;
  }
  body .toggle_box span:nth-child(1) {
    top: 26px;
  }
  body .toggle_box span:nth-child(2) {
    top: 50%;
    transform: translate(-50%, -50%);
  }
  body .toggle_box span:nth-child(3) {
    bottom: 26px;
  }
  body .toggle_box.on span {
    width: 22px;
    height: 3px;
  }
  body .toggle_box.on span:nth-child(1) {
    top: 26px;
  }
  body .toggle_box.on span:nth-child(2) {
    opacity: 0;
  }
  body .toggle_box.on span:nth-child(3) {
    bottom: 26px;
  }
  body .toggle_box.close {
    background: #e6e6e6;
  }
}
body.on {
  overflow: hidden;
}
body.on #modal_bg {
  pointer-events: auto;
  opacity: 1;
}
@media screen and (max-width: 750px) {
  body.on .toggle_box span:nth-child(1) {
    transform: translate(-50%, -50%) rotate(45deg);
    top: 36px;
  }
  body.on .toggle_box span:nth-child(2) {
    opacity: 0;
  }
  body.on .toggle_box span:nth-child(3) {
    transform: translate(-50%, -50%) rotate(-45deg);
    bottom: 31.5px;
  }
}
body.on #slide_menu {
  opacity: 1;
  pointer-events: auto;
}
body:not(.renewal) #wrapper article.archive,
body:not(.renewal) #wrapper article.post_page,
body:not(.renewal) #wrapper article.single {
  padding: calc(20px + 7rem) 0 120px;

  @media(max-width:1023px){
    padding-top: 20px;
  }
}
body:not(.renewal) #wrapper article.archive.case_study .flex,
body:not(.renewal) #wrapper article.post_page.case_study .flex,
body:not(.renewal) #wrapper article.single.case_study .flex {
  margin: 100px auto 0;
}
body:not(.renewal) #wrapper article.archive.case_study.landi nav#panlistid *,
body:not(.renewal) #wrapper article.post_page.case_study.landi nav#panlistid *,
body:not(.renewal) #wrapper article.single.case_study.landi nav#panlistid * {
  max-width: 1100px;
}
@media screen and (max-width: 750px) {
  body:not(.renewal) #wrapper article.archive.case_study .flex,
  body:not(.renewal) #wrapper article.post_page.case_study .flex,
  body:not(.renewal) #wrapper article.single.case_study .flex {
    margin: 20px auto 0;
  }
  body:not(.renewal) #wrapper article.archive.case_study.landi nav#panlistid *,
  body:not(.renewal)
    #wrapper
    article.post_page.case_study.landi
    nav#panlistid
    *,
  body:not(.renewal) #wrapper article.single.case_study.landi nav#panlistid * {
    max-width: 100%;
  }
}
body:not(.renewal) #wrapper article.single {
  padding-bottom: 0;
}
body:not(.renewal) #wrapper article.old_type {
  padding: calc(20px + 7rem) 0 120px;
}
body:not(.renewal) #wrapper article.old_type .ttl_box {
  margin-bottom: 0;
}
body:not(.renewal) #wrapper article.old_type .ttl_box h1 {
  border-bottom: unset;
  padding-bottom: 0;
}
body:not(.renewal) #wrapper article.old_type .narrow_section {
  margin-top: 65px;
}
body:not(.renewal) #wrapper article .form_section .ttl span.labels,
body:not(.renewal) #wrapper article .form_section .wide span.labels,
body:not(.renewal) #wrapper article .form_box .ttl span.labels,
body:not(.renewal) #wrapper article .form_box .wide span.labels {
  font-size: 12px;
  font-weight: bold;
  border-radius: 5px;
  width: 36px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 6px;
  color: #fff;
}
body:not(.renewal) #wrapper article .form_section .ttl span.labels.reqire,
body:not(.renewal) #wrapper article .form_section .wide span.labels.reqire,
body:not(.renewal) #wrapper article .form_box .ttl span.labels.reqire,
body:not(.renewal) #wrapper article .form_box .wide span.labels.reqire {
  background: #da380c;
}
body:not(.renewal) #wrapper article .form_section .ttl span.labels.free,
body:not(.renewal) #wrapper article .form_section .wide span.labels.free,
body:not(.renewal) #wrapper article .form_box .ttl span.labels.free,
body:not(.renewal) #wrapper article .form_box .wide span.labels.free {
  background: #000;
}
body:not(.renewal) #wrapper article .form_section .wide,
body:not(.renewal) #wrapper article .form_box .wide {
  line-height: 20px;
}
body:not(.renewal) #wrapper article .form_section .wide > span,
body:not(.renewal) #wrapper article .form_box .wide > span {
  width: 200px;
}
@media screen and (max-width: 750px) {
  body:not(.renewal) #wrapper article .form_section .wide,
  body:not(.renewal) #wrapper article .form_box .wide {
    align-items: flex-start;
  }
  body:not(.renewal) #wrapper article .form_section .wide > span,
  body:not(.renewal) #wrapper article .form_box .wide > span {
    width: calc(100% - 42px);
  }
}
body article.old_type .button.corp {
  color: #024754;
}
body article.old_type .button:hover {
  border-color: #024754;
} /*# sourceMappingURL=style.css.map */

}