@charset "UTF-8";
/*
Theme Name: FORGING SUGIYAMA
Description: FORGING SUGIYAMA
Version: 1.0
*/

/*--------------------------------------------------*/

/* TOP

/*--------------------------------------------------*/
#wrap.HOME .b-main {
  margin-top: 0;
}
.b-header.m-fv {
  position: relative;
  z-index: 50;
}
#wrap.HOME .b-header .b-siteLogo a {
  pointer-events: none;
}
#wrap.HOME .b-contentBox .b-contMds {
  margin-bottom: 1.8em;
}
@media screen and (max-width: 767px) {
  
  #wrap.HOME .b-header .b-siteLogo span {
    display: none;
  }
  #wrap.HOME .b-contMds .e-en {
    font-size: min(14.29vw,50px);
  }
  #wrap.HOME .b-contMds:has(.e-en) .e-txt {
    font-size: min(5.143vw,18px);
  }
}
@media screen and (min-width: 768px) {
  .b-header.m-fv .b-siteLogo a {
    display: none;
  }
  .b-header:not(.m-fv) .b-siteLogo span {
    display: none;
  }
  .b-header.m-fv {
    background: none;
    background-color: rgb(255 255 255 / .0);
    backdrop-filter: blur(7px) brightness(.97);
  }
  #wrap.HOME .b-contMds .e-en {
    font-size: 65px;
  }
   #wrap.HOME .b-contMds:has(.e-en) .e-txt{
    font-size: 20px;
  }
  .b-header.m-fv .b-nav a {
    color: #fff;
  }
}

/* fv
/*---------------*/
.b-fv {
  position: relative;
  z-index: 10;
}

.b-fv .b-arrow {
  display: block;
  aspect-ratio: 1/1;
  width: 22px;
  position: absolute;
  bottom: -22px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
}
.b-fv .container {
  display: flex;
  justify-content: left;
  align-items: center;
  height: 100%;
  position: relative;
  z-index: 5;
}
.b-fv .b-catch {
  width: min(58vw,385px);
}
.b-fv .cover {
  width: 100%;
  position: absolute;
  bottom: -1px;
  z-index: 1;
}
.b-fv .cover picture {
  display: block;
  height: 100%;
}
.b-fvMovie {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: absolute;
  z-index: 1;
}
.b-fvMovie video {
  display: block;
  object-fit: cover;
  min-width: 100%;
  min-height: 100%;
}


@media screen and (max-width: 767px) {
  .b-fv {
    aspect-ratio: 375/595;
  }
  .b-fv::after {
    bottom: -20px;
  }
}
@media screen and (min-width: 768px) {
  .b-fv {
    height: 750px;
  }
  .b-fv .cover {
    height: 130px;
  }
  .b-fv .cover img {
    display: inline-block;
    object-fit: fill;
    height: 100%;
  }
  .b-fv .b-arrow {
    bottom: 10;
  }
}
@media screen and (max-width: 880px) {
  #wrap.HOME .b-main {
    margin-top: -55px;
  }
}
@media screen and (min-width: 881px) {
  #wrap.HOME .b-main {
    margin-top: -75px;
  }
}

/* spec
/*---------------*/
.b-specBox {
  position: relative;
}
.b-specBox::before,
.b-specBox::after {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
}
.b-specBox::before {
  top: -1px;
  background: linear-gradient(180deg, rgb(255 255 255 / 1) 0%, rgb(255 255 255 / 0) 100%);
}
.b-specBox::after {
  bottom: -1px;
  background: linear-gradient(0, rgb(255 255 255 / 1) 0%, rgb(255 255 255 / 0) 100%);
}
.b-specBox .container {
  position: relative;
  z-index: 1;
}
.b-specBox .b-mds {
  text-align: center;
  word-break: keep-all;
  letter-spacing: .1em;
  font-size: min(6.286vw,22px);
}
.b-specBox .b-list .e-item {
  filter: drop-shadow(0 0px 12px rgb(0 0 0 / .16));
}
@media screen and (max-width: 767px) {
  .b-specBox {
    margin-top: 45px;
    padding: 60px 0 60px;
    background: url(assets/images/spec-bg-sp.jpg) center bottom / cover;
  }
  .b-specBox::before,
  .b-specBox::after {
    height: 125px;
  }
  .b-specBox .b-list {
    margin-top: 60px;
  }
  .b-specBox .b-list .e-item {
    display: block;
    width: calc( 100% - 30px);
    max-width: 400px;
    margin: 0 auto 30px;
  }
}
@media screen and (min-width: 768px) {
  .b-specBox {
    padding: 100px 0 180px;
    background: url(assets/images/spec-bg-pc.jpg) center bottom / cover;
  }
  .b-specBox::before,
  .b-specBox::after {
    height: 100px;
  }
  .b-specBox .b-list {
    display: flex;
    column-gap: min(4vw,60px);
    margin-top: 90px;
  }
  .b-specBox .b-list .e-item {
    flex: 1;
  }
}

.b-tecTopBox,
.b-busTopBox,
.b-aboutTopBox,
.b-infoTopBox,
.b-top2block,
.b-recruitTopBox {
  margin-top: var(--contentTop);
}

/* tec
/*---------------*/
.b-tecTopBox .b-cont .e-txt {
  font-size: min(4vw,14px);
}
.b-tecTopBox .b-list {
  display: block;
  border-bottom: 1px solid var(--color-line);
}
.b-tecTopBox .b-list li {
  display: block;
  border-top: 1px solid var(--color-line);
}
.b-tecTopBox .b-list a {
  display: flex;
  align-items: center;
  font-size: min(7.429vw,26px);
  font-weight: 700;
  line-height: 1;
  position: relative;
  text-decoration: none !important;
  color: var(--color-bk) !important;
}
.b-tecTopBox .b-list a::before {
  content: "";
  aspect-ratio: 45 / 30;
  width: 1.8em;
  text-align: center;
}
.b-tecTopBox .b-list li:nth-of-type(1) a::before {
  background: url(assets/images/01.svg) center center / contain no-repeat;
}
.b-tecTopBox .b-list li:nth-of-type(2) a::before {
  background: url(assets/images/02.svg) center center / contain no-repeat;
}
.b-tecTopBox .b-list li:nth-of-type(3) a::before {
  background: url(assets/images/03.svg) center center / contain no-repeat;
}
.b-tecTopBox .b-list a::after {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: .5em;
  border-top: 2px solid var(--color-key);
  border-right: 2px solid var(--color-key);
  transform-origin: center right;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-20%) rotate(45deg) skew(-15deg,-15deg);
}
@media screen and (max-width: 768px) {
  .b-tecTopBox .b-list a {
    padding: .5em 0;
  }
  .b-tecTopBox .b-list a::before {
    text-align: left;
    margin-right: 1em;
  }
}
@media screen and (min-width: 768px) {
  .b-tecTopBox .container {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    column-gap: min(5vw,90px);
  }
  .b-tecTopBox .b-txts {
    min-width: 400px;
  }
  .b-tecTopBox .b-list {
    width: 100%;
  }
  .b-tecTopBox .b-list a {
    padding: 1.2em 0;
    transition: .3s all;
  }
  .b-tecTopBox .b-list a::before {
    margin: 0 min(6vw,3em) 0 .5em;
  }
  .b-tecTopBox .b-list a:hover {
    color: var(--color-hover) !important;
  }
  .b-tecTopBox .b-list a:hover::after {
    border-color: var(--color-hover);
  }
  
}

/* bus
/*---------------*/
.b-busTopBox .b-3column dt {
  color: var(--color-key);
  line-height: 1;
  text-align: left;
  margin: .8em 0 .5em;
  padding-left: .5em;
  font-size: var(5.714vw,20px);
  border-left: 4px solid var(--color-key);
  letter-spacing: .1em;
}
@media screen and (min-width: 768px) {
  .b-busTopBox .b-3column {
    column-gap: 60px;
  }
  .b-busTopBox .b-links {
    text-align: right;
  }
}

/* top2block
/*---------------*/
.b-top2block {
  position: relative;
}
.b-top2block .b-item,
.b-top2block .b-contMds .e-en,
.b-top2block .b-contMds .e-txt {
  color: #fff;
}
.b-top2block .b-contMds {
  text-align: left;
  margin-bottom: .8em !important;
}
.b-top2block .b-item .b-links {
  text-align: right;
}
.b-top2block .b-item .b-links a {
  background: #fff;
  color: var(--color-key);
}
.b-top2block .b-item .b-links a::after {
  border-color: var(--color-key);
}
@media screen and (max-width: 767px) {
  #wrap.HOME .b-contentBox .b-top2block .b-contMds .e-en {
    font-size: min(8.571vw,30px);
  }
  .b-top2block .b-item {
    padding: 30px 20px;
  }
}
@media screen and (max-width: 880px) {
  .b-top2block .container {
    width: 100%;
    margin: 0;
  }
  .b-top2block .b-item:first-of-type {
    background: url(assets/images/top-process-bg.jpg) center center / cover;
  }
  .b-top2block .b-item:last-of-type {
    background: url(assets/images/top-product-bg.jpg) center center / cover;
  }
}
@media screen and (min-width: 768px) {
  .b-top2block .b-item {
    padding: 50px 45px 30px;
  }
  .b-top2block .b-item .b-links a:hover {
    color: #fff;
    background: var(--color-hover);
  }
  .b-top2block .b-item .b-links a:hover::after {
    border-color: #fff;
  }
}
@media screen and (min-width: 881px) {
  .b-top2block::before,
  .b-top2block::after {
    content: "";
    display: block;
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
  }
  .b-top2block::before {
    left: 0;
    background: url(assets/images/top-process-bg.jpg) center center / cover;
  }
  .b-top2block::after {
    right: 0;
    background: url(assets/images/top-product-bg.jpg) center center / cover;
  }
  .b-top2block .container {
    display: flex;
    position: relative;
    z-index: 1;
  }
  .b-top2block .b-item {
    display: flex;
    flex-direction: column;
    width: 50%;
    padding: 50px 45px 30px;
  }
  .b-top2block .b-item .b-txt {
    margin-bottom: 80px;
    margin-left:  0;
  }
  .b-top2block .b-item .b-links {
    align-self: flex-end;
    margin-top: auto;
    margin-bottom: 0;
  }
  .b-top2block .b-item:first-of-type {
    padding-left: 0;
  }
  .b-top2block .b-item:last-of-type {
    padding-right: 0;
  }
  
}

/* about
/*---------------*/
.b-aboutTopBox .b-contMds {
  margin-bottom: 1em !important;
}
@media screen and (max-width: 767px) {
  .b-aboutTopBox::before{
    content: "";
    display: block;
    width: calc(100% - 20px);
    height: 30vw;
    min-height: 180px;
    background: url(assets/images/top-about-sp.jpg) center top / cover;
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) {
  .b-aboutTopBox .container {
    display: flex;
    align-items: flex-start;
    column-gap: min(4.5vw,50px);
  }
  .b-aboutTopBox .container::before{
    content: "";
    display: block;
    width: 50%;
    height: 320px;
    background: url(assets/images/top-about-pc.jpg) right center / cover;
    margin-left: -100px;
  }
  .b-aboutTopBox .b-txts {
    width: calc(50% + 100px);
  }
  .b-aboutTopBox .b-links {
    text-align: right;
  }
}

/* info
/*---------------*/
.b-infoTopBox {
  padding: 30px 0;
}
.b-infoTopBox .b-contMds {
  display: flex;
  margin-bottom: .8em !important;
}
.b-infoTopBox .b-contMds .e-txt {
  font-size: min(4.57vw,16px) !important;
  transform: translateY(-2px);
}
@media screen and (max-width: 767px) {
  .b-infoTopBox .b-contMds .e-en {
    margin-right: 1em;
  }
  .b-infoTopBox .b-contMds .e-en {
    font-size: min(8.57vw,30px) !important;
  }
}
@media screen and (min-width: 768px) {
  .b-infoTopBox .b-contMds .e-en {
    margin-right: .5em;
  }
  .b-infoTopBox .b-contMds .e-en {
    font-size: 33px !important;
  }
  .b-infoTopBox .b-links {
    text-align: right;
  }
}

/* recruit
/*---------------*/
.b-recruitTopBox .b-txts {
  border-radius: 10px;
  background-color: rgb(255 255 255 / .6);
  backdrop-filter: blur(40px) brightness(1.5) ;
}
.b-recruitTopBox .b-contMds {
  margin-bottom: .8em !important;
}
@media screen and (max-width: 767px) {
  .b-recruitTopBox {
    background: url(assets/images/top-recruit-sp.jpg) center center / cover;
    padding: 78vw 0 15px;
  }
  .b-recruitTopBox .b-contMds {
    display: flex;
    align-items: center;
    line-height: 1;
  }
  .b-recruitTopBox .b-contMds .e-txt {
    margin-left: .65em;
  }
  .b-recruitTopBox .b-txts {
    padding: 25px 15px 25px 15px;
  }
}
@media screen and (min-width: 768px) {
  .b-recruitTopBox {
    background: url(assets/images/top-recruit-pc.jpg) right center / cover;
    padding: 20px 0;
  }
  .b-recruitTopBox .b-txts {
    width: 460px;
    margin-left: auto;
    padding: 45px 35px 35px;
  }
  .b-recruitTopBox .b-links {
    text-align: right;
    margin-top: 60px;
  }
}

#wrap.HOME .b-contactBox {
  margin-top: 0;
}
#wrap.HOME .b-contactBox .container {
  display: block;
  text-align: center;
}
#wrap.HOME .b-contactBox .b-tels {
  border: 0 none;
}
#wrap.HOME .b-contactBox .b-links a {
  max-width: 480px;
  height: 80px;
}
@media screen and (max-width: 767px) {
  #wrap.HOME .b-contactBox .b-links a {
    width: 100%;
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) {
  #wrap.HOME .b-contactBox .b-links a {
    width: 480px;
    font-size: 30px;
    margin: 20px auto 40px;
  }
}

/*--------------------------------------------------*/

/* technology

/*--------------------------------------------------*/
.b-lineBox.m-tec .b-contLead {
  font-size: var(--size-mds-M);
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .b-lineBox.m-tec .b-img {
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 768px) {
  .b-lineBox.m-tec {
    display: flex;
  }
  .b-lineBox.m-tec .b-img {
    width: 400px;
    min-width: 400px;
    margin-left: min(5vw,65px);
  }
}
.b-lineBox.m-tec.m-last {
  padding-bottom: 50px;
  border-bottom: 1px solid var(--color-line);
}

.b-inspection {
  text-align: center;
}
.b-inspection .b-list,
.b-inspection li {
  display: flex;
}
.b-inspection .b-list {
  flex-wrap: wrap;
}
.b-inspection li {
  align-items: center;
  justify-content: center;
  height: 60px;
  font-size: 13px;
  line-height: 1.69;
  font-weight: 700;
  text-align: center;
  background: var(--color-gray);
  word-break: keep-all;
  overflow-wrap: anywhere;
  padding: 0 1em;
}
@media screen and (max-width: 767px) {
  .b-inspection {
    margin-top: 70px;
  }
  .b-inspection li {
    width: calc( (100% - 10px ) / 2);
    margin-right: 10px;
    margin-bottom: 10px;
  }
  .b-inspection li:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (min-width: 768px) {
  .b-inspection {
    margin-top: 100px;
  }
  .b-inspection li {
    width: calc( (100% - 12px * 3 ) / 4);
    margin-right: 12px;
    margin-bottom: 12px;
  }
  .b-inspection li:nth-child(4n) {
    margin-right: 0;
  }
}

/*--------------------------------------------------*/

/* business

/*--------------------------------------------------*/

@media screen and (max-width: 767px) {
  .p-business .b-article:not(:last-of-type) {
    padding-bottom: 50px;
  }
  .p-business .b-contentLead {
    padding-bottom: 55px;
  }
}
@media screen and (min-width: 768px) {
  .p-business .b-article:not(:last-of-type) {
    padding-bottom: 100px;
  }
  .p-business .b-contentLead {
    padding-bottom: 70px;
  }
  .p-business .b-contentLead .b-txt{
    font-size: 16px;
    line-height: 1.875;
  }
  .p-business .b-contentLead .b-leadImg {
    width: 400px;
    min-width: min(45vw,400px);
    margin-left: min(4vw,45px);
  }
}
/* busDetail */
.b-busDetail {
  position: relative;
}
.b-busDetail::before {
  content: "";
  display: block;
  width: 150px;
  height: 1px;
  background: var(--color-key);
  margin: 0 auto 60px;
}
.b-busDetail .e-mds {
  font-size: var(--size-mds);
  text-align: center;
}
.b-busDetail .b-lead {
  margin-bottom: 50px;
}
@media screen and (min-width: 768px) {
  .b-busDetail .b-lead {
    text-align: center;
  }
}

/* cont03 */

@media screen and (max-width: 767px) {
  .p-business .m-cont03 .b-contMds {
    text-align: left;
  }
}

/* cmfBox */
.b-cmfBox {
  background: var(--color-gray);
  padding: 70px 0 95px;
  text-align: center;
}
.b-cmfBox .b-shoulder:has(+ .b-mds) {
  font-weight: 700;
  line-height: 1.875;
}
.b-cmfBox .b-mds {
  font-size: var(--size-mds);
  line-height: 1.3;
  margin-top: .45em;
}
.b-cmfBox .b-mds em {
  color: var(--color-key);
}

@media screen and (max-width: 767px) {
  .b-cmfBox .b-shoulder:has(+ .b-mds) {
    font-size: min(5.71vw,20px);
  }
}
@media screen and (min-width: 768px) {
  .b-cmfBox .b-shoulder:has(+ .b-mds) {
    font-size: 25px;
  }
  .b-cmfBox .b-lead {
    text-align: center;
  }
}
/* .b-cmf */
.b-cmfBox .b-whiteBox.b-cmf {
  margin-top: 90px;
}
.b-cmfBox .b-whiteBox.b-cmf .e-mds {
padding-top: .5em;}
.b-cmfBox .b-whiteBox.b-cmf .e-mds span {
  display: block;
  line-height: 1.5;
}
.b-cmfBox .b-whiteBox.b-cmf .e-mds .e-txt {
  font-size: min(4vw,14px);
  padding-bottom: .8em;
}
.b-cmfBox .b-whiteBox.b-cmf .inner .e-txt {
  line-height: 1.875;
  margin-top: -1em;
}
.b-cmfBox .b-whiteBox.b-cmf .b-2nd {
  display: inline-block;
  margin-top: 35px;
}
.b-cmfBox .b-whiteBox.b-cmf .e-2ndTxt {
  font-size: min(5.7vw,20px);
  font-weight: 700;
  line-height: 1.5;
}
.b-cmfBox .b-whiteBox.b-cmf .e-2ndTxt:not(:first-of-type)::before {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background: var(--color-key);
  margin: 1em 0 .8em;
}

.b-cmfBox .b-movie video {
  width: 100%;
}

/* busAM */
.b-busAM {
  padding-top: 80px;
  padding-bottom: 60px;
}
.b-busAM .e-mds {
  text-align: center;
  margin-bottom: 1em;
  font-size: var(--size-mds);
}

/* */
.p-business .b-article.m-cont03 .b-busDetail .b-shoulder {
  text-align: center;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .8em;
}

@media screen and (max-width: 767px) {
  .p-business .b-article.m-cont03 .b-busDetail .b-contentLead {
    padding-bottom: 15px;
  }
  .p-business .b-article.m-cont03 .b-busDetail .b-shoulder {
    font-size: min(5.71vw,20px);
  }
  .p-business .b-article.m-cont03 .b-busDetail .b-contMds .e-txt {
    font-size: min(7vw,28px);
  }
}
@media screen and (min-width: 768px) {
  .p-business .b-article.m-cont03 .b-busDetail .b-contentLead {
    padding-bottom: 10px;
  }
  .p-business .b-article.m-cont03 .b-busDetail .b-shoulder {
    font-size: 25px;
  }
}

/**/
.b-whiteBox.m-busLast {
  background: var(--color-key);
  color: #fff;
  font-weight: 700;
  border-radius: 20px;
}
.b-whiteBox.m-busLast picture {
  display: block;
}
@media screen and (max-width: 767px) {
  .b-whiteBox.m-busLast {
    margin-top: 50px;
  }
  .b-whiteBox.m-busLast picture {
    width: 86.27%;
    max-width: 866px;
    margin: 40px auto;
  }
}
@media screen and (min-width: 768px) {
  .b-whiteBox.m-busLast {
    margin-top: 90px;
  }
  .b-whiteBox.m-busLast picture {
    width: 70%;
    max-width: 466px;
    margin: 20px auto;
  }
}

/*--------------------------------------------------*/

/* product

/*--------------------------------------------------*/
.b-contentBox.p-product {
  padding-top: var(--contentTop);
}
.b-productBox {
  padding-bottom: 50px;
}
.b-productBox .b-mds {
  font-size: var(--size-mds);
}
.b-productBox .b-imgs {
  display: flex;
  flex-wrap: wrap;
}
.b-productBox .e-txt {
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .b-productBox .b-imgs {
    gap: 5px;
  }
  .b-productBox .b-imgs .b-item {
    width: calc( (100% - 5px) / 2 );
  }
}
@media screen and (min-width: 768px) {
  .b-productBox .b-imgs {
    gap: 14px;
  }
  .b-productBox .b-imgs .b-item {
    width: calc( (100% - 14px) / 2 );
  }
}

/*--------------------------------------------------*/

/* process

/*--------------------------------------------------*/
.p-process .b-hasSideContent .b-contMds .e-txt {
  text-align: center;
  line-height: 1.3;
  margin-bottom: 1.5em;
}
@media screen and (max-width: 767px) {
  .p-process .b-hasSideContent {
    margin-top: 30px;
  }
}
@media screen and (min-width: 768px) {
  .p-process .b-pageNavBox {
    display: none;
  }
  .p-process .b-hasSideContent {
    margin-top: 80px;
  }
}

.b-whiteBox.m-step {
  padding-top: 0;
}
.b-whiteBox.m-step .b-mds {
  display: flex;
  line-height: 1.6;
}
.b-whiteBox.m-step .b-mds .e-stepNum {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-key);
  font-family: var(--en);
  width: 4.8em;
  font-size: 15px;
  color: #fff;
}
.b-whiteBox.m-step .b-mds .e-txt {
  font-size: var(--size-mds);
}
.b-whiteBox.m-step .b-cont {
  line-height: 1.57;
}
.b-whiteBox.m-step .b-cont+.b-cont {
  margin-top: 40px;
}
.b-whiteBox.m-step .b-cont dd {
  font-size: min(4vw,14px);
}
.b-whiteBox.m-step .e-steplabel {
  font-size: var(--size-mds-M);
  font-weight: 700;
  margin-bottom: .15em;
}
.b-whiteBox.m-step .b-machine {
  margin-bottom: .5em;
}
.b-whiteBox.m-step .b-machine dt::before {
  content: "";
  display: inline-block;
  aspect-ratio: 1/1;
  width: .85em;
  background: var(--color-key);
  transform: translateY(.05em);
}
.b-whiteBox.m-step .b-machine dd,
.b-whiteBox.m-step .e-dd {
  font-size: min(3.429vw,12px);
  text-align: left;
}
.b-whiteBox.m-step .b-machine dd {
  margin-top: .1em;
}

.b-whiteBox.m-step .b-cont .b-list {
  display: flex;
  flex-wrap: wrap;
  row-gap: 5px;
  margin-top: 5px;
}
.b-whiteBox.m-step .b-cont .b-list li {
  display: block;
  border: 1px solid var(--color-key);
  text-align: center;
  padding: .3em .5em .5em;
}
@media screen and (max-width: 767px) {
  .b-whiteBox.m-step {
    margin-bottom: 20px;
  }
  .b-whiteBox.m-step .b-cont .b-txts {
    margin-top: 10px;
  }
  .b-whiteBox.m-step .b-mds {
    margin-bottom: 15px;
  }
  .b-whiteBox.m-step .b-mds .e-stepNum {
    margin-right: .5em;
  }
  .b-whiteBox.m-step .b-stepItem:not(:first-of-type) {
    margin-top: 8px;
  }
  .b-whiteBox.m-step .b-cont .b-list li {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .b-whiteBox.m-step {
    padding-left: 30px;
    padding-right: 25px;
    margin-bottom: 60px;
  }
  .b-whiteBox.m-step .b-mds {
    margin-bottom: 30px;
  }
  .b-whiteBox.m-step .b-mds .e-stepNum {
    margin-right: 1.3em;
  }
  .b-whiteBox.m-step .b-mds .e-txt {
    letter-spacing: .1em;
  }
  .b-whiteBox.m-step .b-cont {
    display: flex;
    column-gap: 25px;
  }
  .b-whiteBox.m-step .b-cont .b-img {
    width: 340px;
    min-width: min(45%,340px);
  }
  .b-whiteBox.m-step .b-cont .b-txts {
    margin-top: -8px;
  }
  .b-whiteBox.m-step .b-stepItem:not(:first-of-type) {
    margin-top: 15px;
  }
  .b-whiteBox.m-step .b-cont .b-list {
    column-gap: 5px;
  }
  .b-whiteBox.m-step .b-cont .b-list li {
    width: calc( (100% - 5px) / 2 );
  }
}


/*--------------------------------------------------*/

/* about

/*--------------------------------------------------*/
.p-about .b-message .inner .b-txt,
.p-about .b-message .inner .e-sign {
  font-size: min(4vw,14px);
  line-height: 1.928;
}
.p-about .b-message .inner .e-sign {
  display: block;
  margin-top: 1.5em;
}
@media screen and (max-width: 767px) {
  .p-about .b-article.m-cont01,
  .p-about .b-article.m-cont03 {
    padding: 30px 0 60px;
  }
}
@media screen and (min-width: 768px) {
  .p-about .b-article.m-cont01,
  .p-about .b-article.m-cont03 {
    padding: 60px 0 80px;
  }
  .p-about .b-message .container {
    display: flex;
    column-gap: min(4.5vw,50px);
  }
  .p-about .b-message .b-contMds {
    margin-bottom: 1.3em;
  }
  .p-about .b-message .b-img {
    width: 409px;
    min-width: min(45%,409px);
  }
}

.p-about .b-message {
  padding-bottom: 60px;
}
.p-about .b-outline.m-outline {
  background: var(--color-grayGr);
}
.b-outline .b-contMds {
  margin-bottom: 1.3em;
}
.b-outline .b-contMds .e-txt {
  font-size: min(7.43vw,26px);
}
.b-outline .b-item {
  display: flex;
  font-size: min(4vw,14px);
  line-height: 1.64;
  border-top: 1px solid var(--color-line);
  position: relative;
}
.b-outline .b-item::before {
  content: "";
  display: block;
  height: 5px;
  background: var(--color-key);
  position: absolute;
  top: 0;
  transform: translateY(-3px);
}
.b-outline .b-item:last-of-type {
  border-bottom: 1px solid var(--color-line);
}
.b-outline .b-item:last-of-type::after {
  content: "";
  display: block;
  height: 5px;
  background: var(--color-key);
  position: absolute;
  bottom: 0;
  transform: translateY(3px);
}
.b-outline .b-item dt,
.b-outline .b-item dd {
  padding: 1em 0;
}
.b-outline .b-item dt {
  font-weight: 700;
  text-align: left;
}
.b-outline .b-item dt span {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .b-outline {
    padding: 50px 0;
  }
  .b-outline .b-item::before,
  .b-outline .b-item::after {
    width: 6em;
  }
  .b-outline .b-item dt {
    width: 6.5em;
    min-width: 6.5em;
  }
  .b-outline .b-item dt span::before {
    content: "[";
  }
  .b-outline .b-item dt span::after {
    content: "]";
  }
}
@media screen and (min-width: 768px) {
  .b-outline {
    padding: 60px 0;
  }
  .b-outline .b-item::before,
  .b-outline .b-item::after {
    width: 190px;
  }
  .b-outline .b-item dt {
    width: 245px;
    min-width: 245px;
  }
  .b-outline .b-item dt span::before {
    content: "（";
  }
  .b-outline .b-item dt span::after {
    content: "）";
  }
}

/* location */
.p-about .b-location .b-mds {
  font-size: var(--size-mds-M);
  text-align: left;
  margin-bottom: .5em;
}
.p-about .b-location .b-mds .e-shoulder,
.p-about .b-location .b-addressBox {
  font-size: min(4vw,14px);
}
.p-about .b-location .b-mds .e-shoulder {
  display: block;
  line-height: 1;
}
.p-about .b-location .b-addressBox {
  line-height: 1.57;
}
.p-about .b-location .b-comment {
  font-size: 12px;
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .p-about .b-location {
    margin-bottom: 40px;
  }
  .p-about .b-map {
    aspect-ratio: 335 / 250;
  }
  .p-about .b-location .b-addressBox {
    margin: 10px 0;
  }
}
@media screen and (min-width: 768px) {
  .p-about .b-article.m-cont02 .container {
    display: flex;
    flex-wrap: wrap;
    gap: 50px 40px;
  }
  .p-about .b-location {
    width: calc( (100% - 40px) / 2 );
  }
  .p-about .b-location .b-mds {
    position: relative;
  }
  .p-about .b-location .b-mds .e-shoulder {
    position: absolute;
    left: 0;
    top: -.5em;
  }
  .p-about .b-location .b-cont {
    display: flex;
    column-gap: 10px;
    margin-bottom: 20px;
  }
  .p-about .b-location .b-img {
    width: min(40%,210px);
    min-width: min(40%,210px);
  }
  .p-about .b-map {
    aspect-ratio: 520 / 205;
  }
}

/* torikumi */
.p-about .b-torikumi .b-contentLead .b-contMds .e-txt {
  line-height: 1.42;
  text-align: center;
}
.p-about .b-torikumi .b-contentLead .b-txt {
  font-size: min(4.57vw,16px);
}
.b-aboutLineBox {
  margin-top: 50px;
  margin-bottom: 30px;
}
.b-aboutLineBox .b-mds,
.b-aboutLineBox .e-lead {
  font-size: var(--size-mds-M);
}
.b-aboutLineBox .b-mds {
  color: var(--color-key);
  position: relative;
}
.b-aboutLineBox .b-mds span {
  display: inline-block;
  background: #fff;
  position: relative;
  z-index: 1;
  padding-right: .8em;
}
.b-aboutLineBox .b-mds::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #707070;
  position: absolute;
  top: 50%;
}
.b-aboutLineBox .e-lead {
  line-height: 1.727;
  margin: .8em 0 1.3em;
}
.b-aboutLineBox .b-time{
  text-align: right;
  font-size: 12px;
  margin-top: 1em;
}
.b-aboutTraining > .e-mds {
  font-size: var(--size-mds-M);
}
.b-aboutTraining .b-3column dt {
  text-align: left;
}
.b-aboutTraining .b-rowColumn dt {
  font-size: var(--size-mds-M);
  font-weight: 700;
}
.b-aboutTraining .b-rowColumn dd {
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .b-aboutTraining .b-rowColumn .b-item {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) {
  .b-aboutTraining .b-3column {
    margin-top: 25px;
  }
  .b-aboutTraining .b-rowColumn {
    margin-top: 60px;
  }
  .b-aboutTraining .b-rowColumn .b-item {
    display: flex;
    align-items: flex-start;
    column-gap: 40px;
    margin-bottom: 60px;
  }
  .b-aboutTraining .b-rowColumn .b-item img {
    width: 275px;
  }
}


/*--------------------------------------------------*/

/* qa

/*--------------------------------------------------*/
.b-qaList {
  padding-top: 50px;
}
.b-qaList .e-mds {
  font-size: var(--size-mds-M);
  margin-bottom: .3em;
}
.b-qaList .e-mds::before {
  content: "";
  display: inline-block;
  aspect-ratio: 1/1;
  width: .85em;
  background: var(--color-key);
  margin-right: .3em;
}
.b-qaList .b-item {
  border-top: 1px solid #707070;
}
.b-qaList .b-item:last-of-type {
  border-bottom: 1px solid var(--color-line);
}
.b-qaList .b-item summary {
  color: var(--color-key);
  padding: 1.5em 0;
  cursor: pointer;
}
.b-qaList .b-item summary .e-txt {
  font-size: 18px;
  line-height: 1.5;
  font-weight: 700;
}
.b-qaList .b-item .b-ans {
  transition: .3s all;
  line-height: 1.625;
  padding-bottom: 20px;
}
.b-qaList .b-item summary,
.b-qaList .b-item .b-ans {
  display: flex;
  align-items: flex-start;
}
.b-qaList .b-item summary .e-txt,
.b-qaList .b-item .b-ans .e-txt {
  width: 100%;
  margin-left: 10px;
}
.b-qaList .b-item summary::before,
.b-qaList .b-item .b-ans::before{
  display: block;
  font-family: var(--en);
  font-weight: 700;
  text-align: center;
  line-height: 1;
}
.b-qaList .b-item summary::before{
  content: "Q";
  margin-top: -.2em;
}
.b-qaList .b-item .b-ans::before {
  content: "A";
  color: #8B8B8B;
  font-size: min(5.71vw,20px);
  transform: translateY(.2em);
}
.b-qaList .b-item summary .b-toggle {
  display: block;
  aspect-ratio: 1/1;
  width: 22px;
  min-width: 22px;
  margin: 6px 30px auto;
}
.b-qaList .b-item summary .b-toggle span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.b-qaList .b-item summary .b-toggle span::before,
.b-qaList .b-item summary .b-toggle span::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background: var(--color-key);
  position: absolute;
  top: 50%;
  transform-origin: center center;
}
.b-qaList .b-item summary .b-toggle span::after {
  transform: rotate(90deg);
  transition: .3s all;
}
.b-qaList .b-item[open] summary .b-toggle span::after {
  transform: rotate(180deg);
}
@media screen and (max-width: 767px) {
  .b-qaList .b-item summary::before,
  .b-qaList .b-item .b-ans::before{
    width: min(10vw,35px);
  }
  .b-qaList .b-item summary::before {
    font-size: min(10vw,35px);
  }
}
@media screen and (min-width: 768px) {
  .b-qaList .b-item summary,
  .b-qaList .b-item .b-ans {
    padding-left: 30px;
  }
  .b-qaList .b-item summary::before,
  .b-qaList .b-item .b-ans::before{
    width: 45px;
  }
  .b-qaList .b-item summary::before{
    font-size: 42px;
  }
  .b-qaList .b-item .b-ans {
    padding-right: 30px;
  }
}

/*--------------------------------------------------*/

/* recruit

/*--------------------------------------------------*/
.p-recruit {
  padding-top: var(--contentTop);
}
.p-recruit .b-links {
  margin-top: 60px;
  text-align: center;
}
.p-recruit .b-links a {
  height: auto;
  font-size: min(5.71vw,20px);
  line-height: 1.25;
}
.p-recruit .b-links a span {
  word-break: keep-all;
}
@media screen and (max-width: 767px) {
  .p-recruit .b-links a {
    padding-top: .8em;
    padding-bottom: .8em;
  }
  .p-recruit .b-links a::after {
    right: 20px;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit .b-links a {
    min-width: 470px;
    padding-top: 1.3em;
    padding-bottom: 1.3em;
  }
  .p-recruit .b-links a::after {
    right: 35px;
  }
}


/*--------------------------------------------------*/

/* CONTACT

/*--------------------------------------------------*/

/* b-contactFlow 
----------------------------------------------------*/
.b-contactFlow {
  margin-top: 50px;
  margin-bottom: 45px;
}
.b-contactFlow,
.b-contactFlow li {
  display: flex;
  justify-content: center;
  align-items: center;
}
.b-contactFlow li {
  flex-direction: column;
  color: #707070;
  position: relative;
}
.b-contactFlow li::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: 15px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #707070;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}
.b-contactFlow li .e-txt {
  margin-top: 1em;
}
.b-contactFlow li .e-arw {
  display: block;
  height: 8px;
  position: absolute;
  top: 0;
  left: 50%;
  border-bottom: 1px solid #000;
}
.b-contactFlow li .e-arw span {
  display: block;
  width: 100%;
  height: 100%;
  border-bottom: 1px solid #ccc;
  position: relative;
}
.b-contactFlow li .e-arw span::after {
  content: "";
  display: block;
  width: 1px;
  height: 13px;
  background: #ccc;
  position: absolute;
  right: 0;
  bottom: 0;
  transform-origin: bottom right;
  transform: rotate(-55deg);
}
.b-contactFlow li:nth-of-type(3) {
  transform: translateX(-.5em)
}
@media screen and (max-width: 767px) {
  .b-contactFlow li+li {
    margin-left: 50px;
  }
  .b-contactFlow li .e-arw {
    width: 95px;
  }
}
@media screen and (min-width: 768px) {
  .b-contactFlow li+li {
    margin-left: 100px;
  }
  .b-contactFlow li .e-arw {
    width: 150px;
  }
}

/* contact */
.b-contactFlow li:nth-of-type(1) {
  color: var(--color-key);
  font-weight: 700;
}
.b-contactFlow li:nth-of-type(1)::before {
  background: var(--color-key);
  border: 0 none;
}
/* confirm */
.snow-monkey-form[data-screen="confirm"] .b-contactFlow li[data-flow="contact"] .e-arw {
  border-color: var(--color-key);
  border-width: 3px;
  transform: translateY(1px);
}
.snow-monkey-form[data-screen="confirm"] .b-contactFlow li[data-flow="confirm"]::before {
  background: var(--color-key);
  border-color: var(--color-key);
}
.snow-monkey-form[data-screen="confirm"] .b-contactFlow li[data-flow="confirm"] .e-txt {
  color: var(--color-key);
  font-weight: 700;
}
/* thanks */
.b-contentBox.p-contact[data-screen="thanks"] .b-contactFlow li[data-flow="contact"] .e-arw,
.b-contentBox.p-contact[data-screen="thanks"] .b-contactFlow li[data-flow="confirm"] .e-arw {
  border-color: var(--color-key);
  border-width: 3px;
  transform: translateY(1px);
}
.b-contentBox.p-contact[data-screen="thanks"] .b-contactFlow li[data-flow="confirm"]::before,
.b-contentBox.p-contact[data-screen="thanks"] .b-contactFlow li[data-flow="thanks"]::before {
  background: var(--color-key);
  border-color: var(--color-key);
}
.b-contentBox.p-contact[data-screen="thanks"] .b-contactFlow li[data-flow="confirm"] .e-txt,
.b-contentBox.p-contact[data-screen="thanks"] .b-contactFlow li[data-flow="thanks"] .e-txt {
  color: var(--color-key);
  font-weight: 700;
}

/* b-leadBox
----------------------------------------------------*/
.b-formWrap.m-form .e-contactMds {
  color: var(--color-key);
  font-size: min(7.442vw,32px);
  line-height: 1.5;
}
.b-formWrap.m-form .e-contactMds + .e-lead {
  font-size: min(4.186vw,18px);
  margin: 1em 0 50px;
}
.b-formWrap .b-leadBox {
  word-break: keep-all;
  overflow-wrap: break-word;
  text-align: center;
  margin-bottom:1em;
}
.b-formWrap .b-leadBox .e-mds {
  font-size: var(--size-mds-M);
  font-weight: 700;
}
.b-formWrap.m-form .b-leadBox .e-img {
  width: 150px;
  margin: auto;
}

.b-formWrap.m-form .b-telFax {
  text-align: center;
  line-height: 1;
  font-family: var(--en);
  font-weight: 700;
  margin-top: 35px;
  margin-bottom: 50px;
}
.b-formWrap.m-form .b-telFax dl {
  display: inline-flex;
  margin-bottom: 20px;
}
.b-formWrap.m-form .b-telFax dt {
  width: 3.1em;
  text-align: center;
  background: var(--color-blue);
  border-radius: 10px;
  color: #fff;
  padding-top: .35em;
  padding-bottom: .4em;
  margin-right: .5em;
  margin-top: -.15em;
  font-size: min(5.116vw,22px);
}
.b-formWrap.m-form .b-telFax dd {
  color: var(--color-key);
  font-size: min(7.442vw,32px);
}
@media screen and (min-width: 768px) {
  .b-formWrap.m-form .b-telFax dl {
    margin: 0 1.5em;
  }
}

/* b-formBox
----------------------------------------------------*/
.b-formWrap .e-req {
  color: #fff;
  font-size: clamp(10px,2.791vw,12px);
  line-height: 1;
  font-weight: 700;
  background: #f00;
  padding: .2em .5em .25em .45em;
  margin-left: 1em;
  margin-right: 4em;
}
.b-formBox dl {
  padding: 2em 0;
}
.b-formBox dl:not(:first-of-type):not(.b-cld) {
  border-top: 1px solid var(--color-line);
}
.b-formBox dl.b-cld {
  padding-top: 0;
}
.b-formBox dt {
  font-weight: 700;
  text-align: left;
}
.b-formBox dd {
  width: 100%;
}
.b-formBox dl.m-add input {
  width: 8em;
}
.b-formBox dl.m-num input {
  width: 15em;
}
@media screen and (max-width: 767px) {
  .b-formWrap .b-whiteBox {
    padding: 35px 20px 0px;
  }
  .b-formBox dl.b-cld {
    margin-top: -1em;
  }
  .b-formBox dt {
    margin-bottom: .5em;
  }
}
@media screen and (min-width: 768px) {
  .b-formWrap .b-whiteBox {
    padding: 65px;
  }
  .b-formBox dl {
    display: flex;
    align-items: flex-start;
  }
  .b-formBox dt {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 265px;
    min-width: 265px;
    padding-left: 1em;
    padding-top: .45em;
  }
}
.b-formBox .b-linkButtons {
  margin-top: 50px;
}

.b-formBox .b-confirmCheck {
  background: var(--color-gray01);
  padding: 1em;
  text-align: center;
  margin-top: 30px;
}
.b-formBox .b-confirmCheck label {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.b-formBox .b-confirmCheck label::before,
.b-formBox .b-confirmCheck label::after{
  content: "";
  display: block;
}
.b-formBox .b-confirmCheck label::before {
  border: 1px solid var(--color-gray02);
  border-radius: 4px;
  background: #fff;
  aspect-ratio: 1/1;
  width: 1.5em;
  margin-right: .5em;
}
.b-formBox .b-confirmCheck label::after{
  aspect-ratio: 1.7/1;
  width: .7em;
  border-left: 3px solid var(--color-key);
  border-bottom: 3px solid var(--color-key);
  position: absolute;
  left: .35em;
  top: .5em;
  transform-origin: center center;
  transform: rotate(-45deg);
  opacity: 0;
}

.snow-monkey-form[data-screen="input"] .m-confirm,
.snow-monkey-form[data-screen="confirm"] .m-input {
  display: none;
}

.b-formWrap .b-block {
  text-align: center;
  margin-top: 60px;
  line-height: 1.75;
}
.b-formWrap .b-block em {
  color: var(--color-key);
}
.b-formWrap .b-block .b-comment .e-txt {
  word-break: keep-all;
  overflow-wrap: break-word;
}

.b-formWrap .b-block .b-confirmCheck {
  padding: 2em 0;
}
.b-formWrap .b-block .b-confirmCheck .e-req{
  margin-right: 0;
}
.b-formWrap .b-block .b-confirmCheck a {
  display: block;
  color: var(--color-key);
  text-decoration: underline;
  margin-bottom: 1em;
}
.b-formWrap .b-block .b-confirmCheck label {
  position: relative;
  cursor: pointer;
}

.b-formWrap button {
  display: block;
  width: min(100%,470px);
  height: 75px;
  background: var(--color-key);
  color: #fff;
  font-weight: 700;
  border-radius: 100px;
  font-size: min(5.14vw,18px);
  margin: auto;
}


/*--------------------------------------------------*/

/* confirm

/*--------------------------------------------------*/
.m-confirm .b-formBox .e-mds {
  display: block;
  text-align: center;
  margin-top: 0;
  padding: 1em;
  background: var(--color-gray01);
  font-size: min(3.256vw,14px);
  font-weight: 400;
}
.m-confirm .b-formBox .e-mds::before {
  display: none;
}

.m-confirm .b-linkButtons .wpcf7-previous {
  min-width: 320px;
  padding: 1.125em 2em;
  background: var(--color-gray02);
  border-radius: 100px;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .m-confirm .b-linkButtons .wpcf7-previous {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 400px) {
  .m-confirm .b-linkButtons .wpcf7-previous {
    min-width: 100% !important;
  }
}
@media screen and (min-width: 768px) {
  .m-confirm .b-linkButtons p {
    display: flex;
    justify-content: center;
  }
  .m-confirm .b-linkButtons .wpcf7-previous {
    margin-right: 20px;
  }
}
.wpcf7-spinner {
  display: none !important;
}
@media screen and (min-width: 768px) {
  .smf-radio-buttons-control--horizontal .smf-label {
    display: inline-block;
  }
}
/*--------------------------------------------------*/

/* thanks

/*--------------------------------------------------*/

.b-contentBox.p-contact[data-screen="thanks"] .b-formWrap .b-leadBox {
  font-size: var(--size-mds-M);
  font-weight: 700;
  line-height: 1.8;
}

.b-contentBox.p-contact[data-screen="thanks"] .b-links {
  margin-top: 40px;
  text-align: center;
}

.b-contentBox.p-contact[data-screen="thanks"] .b-links a {
  height: auto;
  font-size: min(5.71vw,20px);
  line-height: 1.25;
}

@media screen and (max-width: 767px) {
  .b-contentBox.p-contact[data-screen="thanks"] .b-links {
    padding-bottom: 50px;
  }
  .b-contentBox.p-contact[data-screen="thanks"] .b-links a {
    padding-top: .8em;
    padding-bottom: .8em;
  }
  .b-contentBox.p-contact[data-screen="thanks"] .b-links a::after {
    right: 20px;
  }
}
@media screen and (min-width: 768px) {
  .b-contentBox.p-contact[data-screen="thanks"] .b-links a {
    min-width: 470px;
    padding-top: 1.3em;
    padding-bottom: 1.3em;
  }
  .b-contentBox.p-contact[data-screen="thanks"] .b-links a::after {
    right: 35px;
  }
}


/*--------------------------------------------------*/

/* POLICY

/*--------------------------------------------------*/
.p-policy > .container {
  padding-top: var(--contentTop);
}
.p-policy .b-section {
  margin-bottom: 2em;
}
.p-policy .b-section.b-lead {
  margin-bottom: 3em;
}
.p-policy .b-ppItem .e-mds {
  margin-bottom: .2em;
}
.p-policy .b-ppItem .e-mds::before {
  content: "";
  display: inline-block;
  aspect-ratio: 1/1;
  width: .9em;
  background: var(--color-key);
  margin-right: .5em;
  transform: translateY(1px)
}
.p-policy .b-section .b-txt+.b-txt {
  margin-top: .5em;
}
.p-policy .b-section .b-txt.m-indent {
  padding-left: 2em;
}
.p-policy .b-cont {
  overflow-x: auto;
}
.p-policy table {
  width: 910px;
  margin-top: 1em;
  border: 1px solid #EDEDED;
}
.p-policy table th,
.p-policy table td {
  padding: .5em .8em;
  line-height: 1.55;
}
.p-policy table th {
  background: #EDEDED;
  font-weight: 500;
  text-align: left;
}
.p-policy table th+th {
  border-left: 1px solid #fff;
}
.p-policy table th:nth-of-type(1),
.p-policy table th:nth-of-type(2) {
  width: 13em;
}
.p-policy table td {
  vertical-align: top;
}
.p-policy table td+td {
  border-left: 1px solid #EDEDED;
}
@media screen and (max-width: 767px) {
  .p-policy > .container {
    padding-top: 20px;
  }
  .p-policy .b-section {
    line-height: 1.56;
  }
  .p-policy .b-ppItem .e-mds {
    font-size: min(4.57vw,16px)
  }
}
@media screen and (min-width: 768px) {
  .p-policy .b-section {
    line-height: 1.875;
  }
  .p-policy .b-ppItem .e-mds {
    font-size: 22px;
  }
}


/*--------------------------------------------------*/

/* INFORMATION -list

/*--------------------------------------------------*/
.b-postList {
  border-top: 1px solid var(--color-line);
}
.b-postList .b-item {
  border-bottom: 1px solid var(--color-line);
  line-height: 1.55;
}
.b-postList .b-item > span,
.b-postList .b-item > a {
  display: block;
}
.b-postList .b-item > a {
  color: inherit;
  text-decoration: none;
  position: relative;
}
.b-postList .b-item > a::after {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: .75em;
  transform-origin: center center;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  position: absolute;
  top: 50%;
  right: .8em;
  transform: translateY(-50%) rotate(45deg) skew(-8deg,-8deg);
}
.b-postList .b-item .e-data {
  min-width: 8em;
}
.b-postList .b-item .e-postTtl {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .b-postList .b-item > span,
  .b-postList .b-item > a {
    padding: 1em 0;
  }
}
@media screen and (min-width: 768px) {
  .b-postList .b-item > span,
  .b-postList .b-item > a {
    display: flex;
    padding: 1em;
  }
  .b-postList .b-item > a {
    transition: .3s all;
  }
  .b-postList .b-item > a:hover {
    color: var(--color-hover);
  }
  .b-postList .b-item > a:hover::after {
    border-color: var(--color-hover);
  }
}
.b-postList .b-item > a {
  padding-right: 3em;
}

/* pagenation
--------------------------------------------------*/
.b-pagenation {
  display: flex;
  align-items: center;
  justify-content: center;
}
.b-pagenation .page-numbers {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  width: 2em;
  border-radius: 4px;
  font-weight: 700;
  line-height: 1;
  color: var(--color-key);
  text-decoration: none;
}
.b-pagenation .page-numbers.current {
  background: var(--color-key);
  color: #fff;
}

.b-pagenation .page-numbers.prev,
.b-pagenation .page-numbers.next{
  border: 1px solid #ccc;
}
.b-pagenation .e-arw {
  display: block;
  aspect-ratio: 1/1;
  width: .35em;
  transform-origin: center center;
}
.b-pagenation .page-numbers.prev .e-arw {
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  transform: translateX(.1em) rotate(45deg);
}
.b-pagenation .page-numbers.next .e-arw {
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  transform: translateX(-.1em) rotate(45deg);
}
@media screen and (max-width: 767px) {
  .b-pagenation {
    margin-top: 60px;
  }
  .b-pagenation .page-numbers {
    margin: 0 5px; 
  }
}
@media screen and (min-width: 768px) {
  .b-pagenation {
    margin-top: 90px;
  }
  .b-pagenation .page-numbers {
    margin: 0 10px;
    transition: .3s all;
  }
  .b-pagenation .page-numbers:not(.current):hover {
    background: var(--color-hover);
    color: #fff;
  }
  .b-pagenation .page-numbers.prev:hover,
  .b-pagenation .page-numbers.next:hover{
    border-color: var(--color-hover);
  }
  .b-pagenation .page-numbers.prev:hover .e-arw,
  .b-pagenation .page-numbers.next:hover .e-arw {
    border-color: #fff;
  }
}

/*--------------------------------------------------*/

/* INFORMATION -post

/*--------------------------------------------------*/
.b-contentBox.p-information {
  padding-top: 5px;
}
.b-postDiscription,
.b-postBody {
  max-width: 800px;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .b-contentBox.p-information {
    padding-top: 25px;
  }
}

/* postDiscription
--------------------------------------------------*/
.b-postDiscription {
  display: flex;
  flex-direction: column-reverse;
}
.b-postDiscription .e-postTtl {
  font-size: var(--size-mds-M);
  line-height: 1.55;
}
@media screen and (max-width: 767px) {
  .b-postDiscription {
    margin-top: .5em;
  }
  .b-postDiscription .e-data {
    font-size: min(4vw,14px);
  }
}

/* postBody
--------------------------------------------------*/
.b-postBody {
  line-height: 1.55;
  padding-bottom: 30px;
}
.b-postBody > * {
  margin-top: 20px;
  margin-bottom: 0;
}

/* Hedding */
.b-postBody h1 {
  font-size: var(--size-mds-M);
  padding-left: 1.2em;
  position: relative;
}
.b-postBody h1::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: .9em;
  background: var(--color-key);
  position: absolute;
  left: 0;
  top: .4em;
}
.b-postBody h2 {
  color: var(--color-key);
  font-size: min(5.143vw, 20px);
  display: block;
  border-top: 1px solid;
  border-bottom: 1px solid;
  padding: 4px 0;
}
.b-postBody h2::before,
.b-postBody h2::after {
  content: "";
  display: block;
  height: 1px;
  background: var(--color-key);
}
.b-postBody h3 {
  color: var(--color-key);
  font-size: min(5.143vw, 20px);
  font-weight: 500;
  padding-left: .5em;
  position: relative;
}
.b-postBody h3::before {
  content: "";
  display: block;
  aspect-ratio: 5/20;
  height: .95em;
  background: url(assets/images/ic-dots.svg) center center / contain no-repeat;
  position: absolute;
  left: 0;
  top: .32em;
}
.b-postBody h4 {
  font-size: min(5.143vw, 20px);
  border-bottom: 1px solid var(--color-key);
}
.b-postBody h5 {
  font-size: min(5.143vw, 20px);
  border-left: 7px solid var(--color-key);
  padding-left: .5em;
}
.b-postBody h6 {
  font-size: inherit;
}

.b-postBody blockquote {
  font-size: min(4.57vw,16px);
  border-left: 2px solid var(--color-key);
  background: var(--color-gray);
  margin-left: 0;
  margin-right: 0;
  padding: .5em 1em .7em 2.3em;
  position: relative;
}
.b-postBody blockquote::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: min(5.714vw,20px);
  background: url(assets/images/ic-blockquote.svg) center center / contain no-repeat;
  position: absolute;
  left: .5em;
  top: .6em;
}

.b-postBody ul {
  list-style-type: disc;
}
.b-postBody ol {
  list-style-type: decimal;
}
.b-postBody li {
  display: list-item;
  list-style: inherit;
  list-style-type: inherit;
  padding-left: 0px;
  margin-left: 20px;
  margin-bottom: .3em;
  position: relative;
}
.b-postBody ul li::marker {
  color: #fff;
}
.b-postBody ul li::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: .55em;
  background: var(--color-key);
  border-radius: 50%;
  position: absolute;
  left: -15px;
  top: .65em;
}
.b-postBody ol li::marker {
  color: var(--color-key);
  font-weight: 700;
}

.b-postBody table {
  border-color: var(--color-line);
}
.b-postBody table thead {
  border-bottom: 0 none;
}
.b-postBody table th {
  background: var(--color-key);
  color: #fff;
  border-color: var(--color-line);
}

@media screen and (min-width: 768px) {
  .b-postBody {
    line-height: 1.875;
  }
  .b-postBody > * {
    margin-top: 30px;
  }
  .b-postBody h1,
  .b-postBody h2,
  .b-postBody h3,
  .b-postBody h4,
  .b-postBody h5,
  .b-postBody h6 {
    line-height: 1.55;
  }
  .b-postBody blockquote,
  .b-postBody li,
  .b-postBody table {
    line-height: 1.75;
  }
}

/* singleNav
--------------------------------------------------*/
.b-singleNav {
  text-align: center;
  position: relative;
}
.b-singleNav .current {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  background: var(--color-key);
  border-radius: 100px;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  font-size: 12px;
  position: relative;
}
.b-singleNav .current::after {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: .35em;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform-origin: center right;
  position: absolute;
  right: 18px;
  top: 50%;
  transform: rotate(45deg);
}
.b-singleNav a[rel="prev"],
.b-singleNav a[rel="next"] {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  width: 30px;
  border: 1px solid #ccc;
  border-radius: 4px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.b-singleNav .e-arw {
  display: block;
  aspect-ratio: 1/1;
  width: .35em;
  transform-origin: center center;
}
.b-singleNav a[rel="prev"] .e-arw {
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  transform: translateX(.1em) rotate(45deg);
}
.b-singleNav a[rel="next"] .e-arw {
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  transform: translateX(-.1em) rotate(45deg);
}
@media screen and (max-width: 767px) {
  .b-singleNav {
    margin-top: 60px;
  }
  .b-singleNav .current {
    width: 180px;
  }
  .b-singleNav a[rel="prev"] {
    right: calc(50% + 110px);
  }
  .b-singleNav a[rel="next"] {
    left: calc(50% + 110px);
  }
}
@media screen and (min-width: 768px) {
  .b-singleNav {
    margin-top: 90px;
  }
  .b-singleNav a {
    transition: .3s all;
  }
  .b-singleNav a:hover {
    background: var(--color-hover);
  }
  .b-singleNav .current {
    width: 200px;
  }
  .b-singleNav a[rel="prev"] {
    right: calc(50% + 150px);
  }
  .b-singleNav a[rel="next"] {
    left: calc(50% + 150px);
  }
  .b-singleNav a[rel="prev"]:hover,
  .b-singleNav a[rel="next"]:hover {
    border-color: var(--color-hover);
  }
  .b-singleNav a[rel="prev"]:hover .e-arw,
  .b-singleNav a[rel="next"]:hover .e-arw {
    border-color: #fff;
  }
}

/*--------------------------------------------------*/

/* search

/*--------------------------------------------------*/
.b-searchform input {
  border: 0 none !important;
}
.p-search .b-searchBox input {
  font-size: var(--size-mds-M);
  padding-bottom: .5em;
  padding-left: 0;
  border-bottom: 1px solid var(--color-line) !important;
}
@media screen and (max-width: 767px) {
  .p-search .b-searchBox {
    padding: 30px 0;
  }
}
@media screen and (min-width: 768px) {
  .p-search .b-searchBox {
    padding: 50px 0;
  }
}

/* resultList
--------------------------------------------------*/

.b-resultList .b-item {
  border-bottom: 1px solid var(--color-line);
  padding: 1.8em 0;
}
.b-resultList a {
  text-decoration: none;
  line-height: 1.625;
}
.b-resultList .b-discription {
  color: var(--color-bk);
  margin-top: 1em;
}

.b-resultList .highlight {
  background: #FFF700;
}
@media screen and (max-width: 767px) {
  .b-resultList .e-postTtl {
    font-size: min(4.57vw,16px);
  }
  .b-resultList .b-discription {
    font-size: min(4vw,14px);
  }
}
@media screen and (min-width: 768px) {
  .b-resultList a:hover .e-postTtl{
    text-decoration: underline;
  }
  .b-resultList .e-postTtl {
    font-size: 18px;
  }
}


/*--------------------------------------------------*/

/* 404

/*--------------------------------------------------*/
.p-404 {
  text-align: center;
}
.p-404 .e-ttlEn {
  max-width: 180px;
  margin: 30px auto 20px;
}
.p-404 .e-ttl,
.p-404 .e-txt {
  word-break: keep-all;
  overflow-wrap: break-word;
}
.p-404 .e-ttl {
  font-size: clamp(25px,7.55vw,30px);
  line-height: 1.333;
  margin-bottom: .5em;
}
.p-404 .b-links {
  margin-top: 50px;
  text-align: center;
  padding-bottom: 30px;
}
.p-404 .b-links a {
  height: auto;
  font-size: min(5.71vw,20px);
  line-height: 1.25;
}
.p-404 .b-links a span {
  word-break: keep-all;
}
@media screen and (max-width: 767px) {
  .p-404 .b-links a {
    width: 90%;
    max-width: 400px;
    height: 80px;
    padding-top: .8em;
    padding-bottom: .8em;
  }
  .p-404 .b-links a::after {
    right: 20px;
  }
}
@media screen and (min-width: 768px) {
  .p-404 .e-ttlEn {
    margin: 50px auto 40px;
  }
  .p-404 .b-links a {
    min-width: 470px;
    padding-top: 1.3em;
    padding-bottom: 1.3em;
  }
  .p-404 .b-links a::after {
    right: 35px;
  }
}
/*--------------------------------------------------*/

/* slider

/*--------------------------------------------------*/
.b-slider + .arrows {
  display: flex;
}
.slick-list {
  overflow: hidden;
}
.slick-track {
  display: flex;
}
/* arrows */
.arrows {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  margin-top: 5px;
}
.slick-arrow.prev {
  order: 1;
}
.arrows .slick-dots {
  order: 2;
}
.slick-arrow.next {
  order: 3;
}
/* arw */
.slick-arrow::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: 7px;
  margin: .15em .3em 0;
  transform-origin: center center;
  transform: rotate(-45deg);
}
.slick-arrow.prev::before {
  border-top: 1px solid #707070;
  border-left: 1px solid #707070;
}
.slick-arrow.next::before {
  border-bottom: 1px solid #707070;
  border-right: 1px solid #707070;
}
/* dots */
.slick-dots
{

    display: block;

    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}
.slick-dots li
{
    position: relative;
    display: inline-block;
    margin: 0 6px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;
  aspect-ratio: 1/1;
    width: 9px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: 100%;
  border: 1px solid var(--color-key);
  background: #fff;
  border-radius: 50%;
}
.slick-dots li.slick-active button:before
{
  background: var(--color-key);
}
