/*

【CSS記述ルール】

① font-sizeはpxで指定してください
　（rem、%等の指定はしないようお願いいたします）

② members はディレクトリ名に変更してください

③ 必ずディレクトリ名が付いたidセレクタを先頭に記述した後に、要素を記述してください
　（例：#oneday .inner、#oneday .page-title 等）

④ CSS内の画像指定パスは、CSSファイルから見た相対パスで指定してください
　（例：../images/ディレクトリ名/画像名.拡張子）

*/

/*------------------------------------------------------------
common
------------------------------------------------------------*/
.members {
  font-family: 'Noto Sans JP', 'Century Gothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 游ゴシック体, YuGothic, "Yu Gothic Medium", 游ゴシック, 'Yu Gothic', メイリオ, Meiryo, sans-serif;
  font-size: 13px;
  font-weight: 400;
}

#members * {
  box-sizing: border-box;
}

#members a {
  transition: opacity .3s;
  color: unset;
}

#members a[href^="tel:"] {
  display: inline-block;
  transition: none;
}

#members a:hover {
  text-decoration: none;
}

#members a:focus-visible {
  outline: none;
}

#members img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

#members .js-fadein {
  opacity: 0;
  transform: translate(0, 20px);
  transition-property: opacity, transform;
  transition-duration: 1s;
}

#members .scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}

#members .text {
  margin-bottom: 2em;
}

#members .text:last-of-type {
  margin-bottom: 0;
}

#members .pc-br {
  display: none;
}

#members .notes {
  display: inline-block;
  position: relative;
  margin-left: 1em;
}

#members .notes::before {
  content: '\0203B';
  display: block;
  position: absolute;
  top: 0;
  left: -1em;
}

#members .inner {
  width: calc(100% - 24px);
  max-width: 1180px;
  margin: 0 auto;
}

#members a:not([href^="tel:"]):hover{
  opacity: unset!important;
}

#members .br-point{
  display: inline-block;
}

#members .sp-blind{
  display: none;
}

#members .pc-blind{
  display: inline-block;
}

@media print, screen and (min-width: 768px) {/* ---------- タブレット・PC以上 ---------- */
  .members {
    font-size: 16px;
  }
  
  #members a[href^="tel:"] {
    color: inherit;
    pointer-events: none;
  }
  
  #members a:not([href^="tel:"]):hover {
    opacity: .5;
  }
  
  #members .sp-br {
    display: none;
  }
  
  #members .pc-br {
    display: inline;
  }
  
  #members .sp-blind{
    display: inline-block;
  }
  
  #members .pc-blind{
    display: none;
  }
}
/*------------------------------------------------------------
font
------------------------------------------------------------*/
#members .font-solitas{
  font-family: solitas-serif-condensed, sans-serif;
  font-weight: 600;
  font-style: normal;
}

#members .font-tbud{
  font-family: tbudmincho-std, sans-serif;
  font-weight: bold;
  font-style: normal;
}

#members .font-delaney{
  font-family: delaney,sans-serif;
  font-weight: 300;
  font-style: normal;
}

/*------------------------------------------------------------
main
------------------------------------------------------------*/
#members .main{
  min-height: 395px;
  position: relative;
  margin-bottom: 30px;
  z-index: 0;
}

#members .main::after{
  content: "";
  display: block;
  width: calc(100vw / 375 * 325);
  height: 100%;
  background-image: url("../images/members/h1_bg_sp.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top right;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -10;
}

#members .main .main-img{
  width: 100%;
  max-width: calc(100% - 25px);;
  position: relative;
  padding-right: 12px;
}

#members .main-text-wrap{
  width: fit-content;
  position: absolute;
  top: 215px;
  right: 12px;
}

#members .main .main-ttl{
  position: relative;
  z-index: 50;
  width: fit-content;
}

#members .main .main-message{
  position: relative;
  z-index: 50;
  color: #FFF;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .01em;
  width: calc(100vw / 375 * 293);
}

#members .main-ttl .text-box{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

#members .main .ttl-eng{
  color: #6B5E11;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: .1em;
  min-width: 130px;
  width: fit-content;
  padding-left: 5px;
  transform: translateY(-9px);
}

#members .main .ttl-jpn{
  color: #FFF;
  font-size: 12px;
  letter-spacing: .04em;
  min-width: 138px;
  width: fit-content;
  padding-left: 3px;
  transform: translateY(3px);
}

#members .main .message-box{
  display: flex;
  justify-content: flex-end;
  padding: 20px 0 18px;
}

#members .main .inner-box-eng{
  background-color: #FFF;
  max-height: 24px;
  width: fit-content;
}

#members .main .inner-box-jpn{
  margin-right: -12px;
  background-color: #6B5E11;
}

@media print, screen and (min-width: 768px) {/* ---------- タブレット・PC以上 ---------- */
  #members .main::after{
    background-image: url("../images/members/h1_bg_pc@2x.jpg");
    width: 100%;
    height: 100%;
  }
  
  #members .main .main-img{
    max-width: unset;
    width: 88%;
  }
  
  #members .main{
    margin-bottom: 80px;
  }
  
  #members .main .ttl-eng{
    font-size: 40px;
    transform: translateY(-5px);
    line-height: 1;
  }
  
  #members .main .ttl-jpn{
    font-size: 22px;
    padding: 0 6px;
    transform: translateY(9px);
    line-height: 1;
  }
  
  #members .main .main-message{
    font-size: 16px;
    max-width: 960px;
  }
  
  #members .main .inner-box-eng{
    max-height: unset;
    height: 48px;
    width: 130%;
  }
  
  #members .main-text-wrap{
    top: calc(100vw / 1920 * 430);
  }
  
  #members .main .message-box{
    justify-content: center;
    padding: 40px 0 36px;
  }
  
  #members .main-img img{
    object-fit: cover;
    object-position: right;
    width: 100%;
    /*height: 600px;*/
  }
  
  #members .main .inner-box-jpn{
    height: 30px;
    width: 110%;
    margin-right: -30px;
  }
}

@media print, screen and (min-width: 1560px) {/* ---------- ～画面幅1560px ---------- */
  #members .main .main-img{
    height: calc(100vw / 1920 * 600);
  }
  
  #members .main-img img{
    height: auto;
  } 
  #members .main::after{
    width: calc(100vw / 1920 * 1560);
  }

}

@media print, screen and (min-width: 768px) and (max-width: 1280px) {/* ---------- 画面幅768px ～ 1280px ---------- */
  #members .main-img img{
    /*height: 500px;*/
  }
  
 
}


/*------------------------------------------------------------
suggest
------------------------------------------------------------*/
#members .suggest-ttl{
  text-align: center;
  width: fit-content;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 50px 0 40px;
}

#members .suggest-ttl-eng{
  font-size: 25px;
  font-weight: 600;
  letter-spacing: .1em;
  line-height: 1.2;
  padding-bottom: 6px;
}

#members .suggest-wrap .bg{
  background-image: url("../images/members/suggest_bg_sp.jpg");
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  padding-bottom: 58px;
}

#members .suggest-wrap{
  color: #FFF;
}

#members .suggest-wrap .link-box{
  width: 140px;
  height: 130px;
  display: flex;
  align-items: flex-end;
  position: relative;
}

#members .suggest-wrap .link-box-outer:nth-last-of-type(-n+1){
  margin-bottom: 0;
}

#members .suggest-wrap .link-ttl-eng{
  font-size: 18px;
  font-weight: 600;
  letter-spacing: .1em;
}

#members .suggest-wrap .link-ttl-jpn{
  font-size: 10px;
  font-weight: bold;
  letter-spacing: .04em;
}

#members .suggest-wrap .text-wrap{
  position: relative;
  width: 100%;
  z-index: 50;
}

#members .suggest-wrap .suggest-links .text-wrap::after{
  content: "";
  display: block;
  width: 6px;
  height: 11px;
  transform: translateY(-50%);
  position: absolute;
  right: 5px;
  top: 50%;
  background-image: url("../images/members/icon_arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

#members .suggest-wrap .link-box-wrap{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 300px;
  margin: 0 auto;
}

#members .suggest-wrap .link-box::after{
  position: absolute;
  content: "";
  display: block;
  width: 140px;
  height: 130px;
  top: 0;
  left: 0;
  background-color: #333333;
  opacity: .44;
  transition: all .3s ease-out;
}

#members .suggest-wrap .link-box-outer:hover .link-box::after{
  opacity: 0;
}

#members .suggest-wrap .link-box-outer:hover .link-box{
  transition: all .3s ease;
  transform: scale(1.2);
  will-change: transform;
}

#members .link-box-outer{
  overflow: hidden;
  position: relative;
  margin-bottom: 20px;
}

#members .suggest-wrap .link-box-outer .text-wrap{
  position: absolute;
  bottom: 0;
  padding: 0 6px 7px;
}

#members .suggest-links{
  margin-bottom: 30px;
}

@media print, screen and (min-width: 768px) {/* ---------- タブレット・PC以上 ---------- */
  #members .suggest-wrap .link-box-wrap{
    max-width: 1200px;
    padding: 0 10px;
  }
  
  #members .suggest-wrap .link-box{
    width: 100%;
    max-width: 220px;
    height: 210px;
    align-items: stretch;
  }
  
  #members .suggest-wrap .link-box::after{
    width: 100%;
    max-width: 280px;
    height: 260px;
  }
  
  #members .link-box-outer{
    margin-bottom: 0;
    width: calc((100% - 80px) / 5);
    z-index: 0;
  }
  
  #members .suggest-wrap .link-ttl-eng{
    font-size: 30px;
    letter-spacing: .05em;
  }
  
  #members .suggest-wrap .link-ttl-jpn{
    font-size: 16px;
  }
  
  #members .suggest-wrap .link-box-outer .text-wrap{
    padding: 0 10px 30px 10px;
  }
  
  #members .suggest-wrap .suggest-links .text-wrap::after{
    top: calc(50% - 10px);
    right: 10px;
    width: 8px;
    height: 14px;
  }
  
  #members .suggest-wrap .bg{
    background-image: url("../images/members/suggest_bg_pc@2x.jpg");
    padding-bottom: 120px;
  }
  
  #members .suggest-ttl-eng{
    font-size: 40px;
    padding-bottom: 10px;
  }
  
  #members .suggest-ttl-jpn{
    font-size: 22px;
  }
  
  #members .suggest-links{
    margin-bottom: 57px;
  }
  
  #members .link-box-outer:hover .text-wrap::after{
  right: 18px;
}
  
  #members .suggest-ttl{
  padding: 120px 0 80px;
  }
  
  #members .suggest-links .link-box img{
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

/*------------------------------------------------------------
btn
------------------------------------------------------------*/
#members .btn-search .btn-text-eng{
  font-size: 20px;
  font-weight: 600;
  padding-right: 20px;
  letter-spacing: .1em;
}

#members .btn-search{
  max-width: 351px;
}

#members .btn01{
  width: calc(100% - 24px);
  border-radius: 5px;
  margin: 0 auto;
  transition: all .3s ease-out;
  background: linear-gradient(to right, #C8BB8D 0%, #6B5E11 51%, #C8BB8D 100%);
  background-size: 200% auto;
  filter: drop-shadow(0px 5px 3px rgba(0,0,0,0.16));
}

#members .btn01:hover{
  background-position: right center;
}

#members .btn01 .text-wrap{
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: fit-content;
  margin: 0 auto;
  padding: 16px 0;
}

#members .btn01 .text-wrap::after{
  content: "";
  display: block;
  width: 8px;
  height: 14px;
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  transition: all .3s ease-out;
  background-image: url("../images/members/icon_arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

#members .btn01 .btn-text-jpn{
  padding-right: 31px;
  letter-spacing: .04em;
}

#members .btn01:hover .text-wrap::after{
  left: 105%;
}


@media print, screen and (min-width: 768px) {/* ---------- タブレット・PC以上 ---------- */
  #members .btn-search{
    max-width: 960px;
  }


  
  #members .btn-search .btn-text-eng{
    font-size: 34px;
    line-height: 1.2;
  }
  
  #members .btn-search .btn-text-jpn{
    font-size: 20px;
  }
  
  #members .btn01 .text-wrap::after{
    width: 10px;
    height: 18px;
  }
  
  #members .btn01{
    border-radius: 10px;
    filter: drop-shadow(0px 10px 6px rgba(0,0,0,0.16));
  }
  
  #members .btn01 .text-wrap{
    padding: 34px 0 37px;
  }
}

/*------------------------------------------------------------
link-member
------------------------------------------------------------*/
#members .content-wrap .link-box .bg{
  background-image: url("../images/members/link_box_bg_sp.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 100% 20px;
}

#members .content-wrap .link-member-text-box{
  background-color: #333333;
  color: #FFF;
  letter-spacing: .1em;
  padding: 10px 15px;
  width: 100%;
  max-width: 249px;
  box-shadow: 0px 10px 6px 0px rgba(0, 0, 0, .1);
  position: absolute;
  bottom: 10px;
  right: 0;
}

#members .content-wrap .link-member-wrap:nth-of-type(2n) .link-member-text-box{
  left: 0;
}

#members .content-wrap .link-member-text-box::after{
  content: "";
  display: block;
  width: 13px;
  height: 9px;
  background-image: url("../images/members/icon_link_bottom.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  right: 14px;
  top: 27px;
  transition: all .3s ease;
}

#members .content-wrap .link-member-wrap:hover .link-member-text-box::after{
  transform: translateY(5px);
}

#members .content-wrap .link-member-wrap .link-member-img{
  max-width: 150px;
}

#members .content-wrap .link-member-name .name-jpn{
  font-size: 15px;
  padding-right: 10px;
}

#members .content-wrap .link-member-job{
  font-size: 12px;
}

#members .content-wrap .link-member-job .job-year{
  padding-right: 12px;
}

#members .content-wrap .link-member-name, #members .link-member-job{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-end;
}

#members .content-wrap .link-member-wrap{
  position: relative;
  margin-bottom: 15px;
  display: flex;
}

#members .content-wrap .link-member-wrap:last-of-type{
  margin-bottom: 0;
}

#members .content-wrap .link-member-wrap:nth-of-type(2n){
  display: flex;
  flex-direction: row-reverse;
}

#members .content-wrap .link-box-inner-wrap{
  width: calc(100% - 40px);
  max-width: 350px;
  margin: 0 auto;
  position: relative;
  z-index: 50;
}

#members .content-wrap .link-member-wrap .link-box{
  margin-bottom: 60px;
  position: relative;
}

#members .content-wrap .link-member-wrap .link-box::after{
  content: "";
  display: block;
  width: 325px;
  height: 480px;
  background-image: url("../images/members/link_box_bg_sp.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: 20px;
  right: 0;
  z-index: 10;
}

#members .content-wrap .link-box{
  margin-bottom: 60px;
}


@media print, screen and (min-width: 768px) {/* ---------- タブレット・PC以上 ---------- */
#members .content-wrap .link-member-wrap .link-member-img{
    max-width: 360px;
    overflow: hidden;
  }
  
  #members .content-wrap .link-member-wrap .link-member-img img{
    transition: all .3s ease;
  }
  
  #members .content-wrap .link-member-wrap:hover .link-member-img img{
    transform: scale(1.1);
  }
  
  #members .link-box .link-member-text-box-pc{
    font-size: 20px;
    position: absolute;
    top: 70%;
    left: 0;
    letter-spacing: .1em;
    width: max-content;
    transform-origin: right top;
    transform: translate(-20px, -50%);
  }
  
  #members .content-wrap .link-member-wrap:hover .link-member-text-box-pc{
    transform: translate(-20px, -50%);
  }
  
  #members .content-wrap .link-box .link-member-text-box-pc .text-box{
    width: fit-content;
    margin-bottom: 14px;
    padding: 6px 20px;
    position: relative;
    opacity: 0;
  }
  
  #members .content-wrap .link-member-wrap:hover .link-member-text-box-pc .text-box{
    opacity: 1;
  }
  
  #members .content-wrap .link-box .link-member-text-box-pc .text-box::before{
    content: "";
    display: block;
    background-color: #FFF;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: .3s transform;
  }
  
  #members .content-wrap .link-member-wrap:hover .link-member-text-box-pc .text-box::before{
    transform: scale(1, 1);
    transform-origin: left top;
  }
  
  #members .content-wrap .link-box .link-member-text-box-pc .text-box:last-of-type{
    margin-bottom: 0;
  }
  
  #members .content-wrap .link-member-text-box-pc .decoration{
    color: #978E57;
  }
  
  #members .content-wrap .link-member-name .name-jpn{
    font-size: 20px;
  }
  
  #members .content-wrap .link-member-text-box{
    font-size: 14px;
    max-width: 321px;
    padding: 10px 20px;
    left: 0;
    bottom: -37px;
    transition: all .3s ease-out;
  }
  
  #members .content-wrap .link-member-name, #members .link-member-job{
    align-items: center;
  }
  
  #members .content-wrap .link-box-inner-wrap{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    justify-content: center;
    max-width: 1200px;
    padding-left: 20px;
    width: 100%;
    gap: 80px;
  }
  
  #members .content-wrap .link-member-wrap{
    margin-bottom: 0;
    width: calc((100% - 100px) / 3);
  }
  
  #members .content-wrap .link-box{
    margin-bottom: 266px;
    position: relative;
  }
  
  #members .content-wrap .link-box::after{
    content: "";
    display: block;
    width: 100%;
    height: 400px;
    background-color: #F5F5F5;
    position: absolute;
    bottom: -50px;
  }
  
  #members .content-wrap .link-member-wrap:hover .link-member-text-box{
    background-color: #6B5E11;
  }
}

@media print, screen and (min-width: 768px) and (max-width: 1280px) {/* ---------- 画面幅768px ～ 1280px ---------- */
  #members .content-wrap .link-member-wrap .link-member-text-box-pc .text-box{
    opacity: 1;
  }
  
  #members .content-wrap .link-member-wrap .link-member-text-box-pc .text-box::before{
    transform: scale(1, 1);
    transform-origin: left top;
  }
  
  #members .link-box .link-member-text-box-pc{
    font-size: calc(0.9375rem + ((1vw - 3.75px) * 0.3236));
  }
  

}

/*------------------------------------------------------------
content-box
------------------------------------------------------------*/
#members .content-box{
  margin-bottom: 50px;
  margin-top: -70px;
  padding-top: 70px;
}

#members .content-box .prof-img{
  width: calc(100% - 12px);
  margin: 0 0 0 auto;
  position: relative;
  z-index: 50;
}

#members .content-box .prof-copy{
  font-size: 20px;
  letter-spacing: .1em;
  position: absolute;
  left: 27px;
  top: 70%;
  transform: translateY(-50%);
  z-index: 50;
}

#members .content-box .prof-copy .decoration{
  color: #978E57;
}

#members .content-box .member-prof-wrap{
  position: relative;
  padding-bottom: 35px;
}

#members .content-box .prof-copy .text{
  margin-bottom: 9px;
  background-color: #FFF;
  padding: 3px 10px;
  width: fit-content;
  font-size: min(calc(1.25rem + ((1vw - 3.75px) * 0.6472)), 30px);
}

#members .content-box .prof-copy .text:last-of-type{
  margin-bottom: 0;
}

#members .content-box .prof-text-box{
  background-color: #333333;
  color: #FFF;
  padding: 10px 15px;
  letter-spacing: .1em;
  width: calc(100vw / 750 * 456);
  position: relative;
  margin: -34px 0 0 auto;
  z-index: 50;
}

#members .content-box .prof-text-box .name-jpn{
  font-size: 16px;
  margin-right: 14px;
}

#members .content-box .prof-text-box .name-eng{
  font-size: 12px;
}

#members .content-box .prof-text-box .prof-job{
  font-size: 12px;
}

#members .content-box .prof-text-box .prof-job, #members .content-box .prof-text-box .prof-name{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

#members .content-box .prof-text-box .job-year{
  margin-right: 13px;
}

#members .content-box .prof-number .number-eng{
  font-size: 12px;
  margin-right: 10px;
}

#members .content-box .prof-number .number-counter{
  font-size: 20px;
  line-height: 1.2;
}

#members .content-box .prof-number{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  letter-spacing: .1em;
  position: absolute;
  margin-top: 10px;
  top: auto;
  bottom: 34px;
  z-index: 11;
  left: 12px;
}

#members .content-box .member-prof-wrap::after{
  content: "";
  display: block;
  background-image: url("../images/members/member_main_bg_sp.png");
  width: 100px;
  height: 300px;
  position: absolute;
  bottom: 0;
  z-index: 10;
}

#members .member-job-wrap{
  font-size: 14px;
  letter-spacing: .01em;
}

#members .content-box .member-job-wrap .bg{
  background-color: #FFF;
  width: calc(100% - 12px);
  margin-bottom: 50px;
}

#members .content-box .job-ttl{
  color: #5C2C3F;
  font-weight: 500;
  line-height: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  padding-bottom: 20px;
}

#members .content-box .job-inner-box{
  padding: 20px 23px 30px 0;
}

#members .content-box .job-inner-box:nth-of-type(n+2){
  padding-top: 0;
}

#members .content-box .job-inner-box:last-of-type{
  padding-bottom: 20px;
}

#members .content-box .job-ttl::before{
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  background-color: #5C2C3F;
  margin-right: 10px;
}

#members .content-box .job-text{
  padding-left: 40px;
  line-height: 1.64;
}

#members .content-box .job-img-wrap{
  padding: 0 0 30px;
  margin: 0  calc((100vw - 300px) / 2);
  max-width: 300px;
  width: 100%;
}

#members .content-box .member-message-wrap .bg{
  background-color: #5C2C3F;
  padding: 30px 0;
}

#members .content-box .member-message-wrap{
  color: #FFF;
  letter-spacing: .01em;
  font-size: 14px;
  line-height: 1.64;
}

#members .content-box .message-img{
  max-width: 250px;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 33px;
}

#members .content-box .message-ttl{
  position: relative;
  margin-bottom: 20px;
}

#members .content-box .message-ttl::before{
  content: "Message";
  display: block;
  position: absolute;
  opacity: .3;
  font-size: 20px;
  font-family: delaney,sans-serif;
  font-weight: 300;
  font-style: normal;
  left: -15px;
  bottom: 5px;
}

#members .content-box .message-text-box{
  padding: 0 23px 0 28px;
}

#members .content-box .message-box-outer{
  height: 100%;
  padding: 50px 0;
  background-image: url("../images/members/member_inner_bg_sp.png");
  background-size: contain;
  background-position: right;
  background-repeat: no-repeat;
}

#members .content-box:nth-of-type(even) .prof-img{
  margin: 0;
}

#members .content-box:nth-of-type(even) .prof-copy .text{
  margin: 0 0 9px auto;
}

#members .content-box:nth-of-type(even) .prof-copy{
  display: flex;
  flex-direction: column;
  top: unset;
  right: 15px;
  transform: unset;
  bottom: 8%;
}

#members .content-box:nth-of-type(even) .prof-text-box{
  margin: -34px 0 0 0;
  padding-left: 35px;
  padding-right: 10px;
}

#members .content-box:nth-of-type(even) .prof-number{
  justify-content: flex-end;
  right: 12px;
}

#members .content-box:nth-of-type(even) .member-prof-wrap::after{
  right: 0;
  background-position: right;
}

#members .content-box:nth-of-type(even) .message-box-outer{
  background-position: left;
}

@media print, screen and (min-width: 768px) {/* ---------- タブレット・PC以上 ---------- */
  
  
  #members .content-box .prof-text-box{
    width: calc(100vw / 1920 * 780);
    padding: 30px 25px 30px 60px;
    min-width: 420px;
    margin-top: -74px;
  }
  
  #members .content-box:nth-of-type(even) .prof-text-box{
    margin-top: -74px;
    padding: 30px 60px;
  }
  
  #members .content-box:nth-of-type(even) .prof-text-box .inner-wrap{
    width: fit-content;
    margin: 0 0 0 auto;
  }
  
  #members .content-box .prof-text-box .prof-name{
    padding-bottom: 20px;
  }
  
  #members .content-box .prof-text-box .name-jpn{
    font-size: 30px;
  }
  
  #members .content-box .prof-text-box .name-eng{
    font-size: 20px;
  }
  
  #members .content-box .prof-text-box .prof-job{
    font-size: 14px;
  }
  
  #members .content-box .prof-number .number-eng{
    font-size: 20px;
  }
  
  #members .content-box .prof-number .number-counter{
    margin-top: 8px;
    font-size: 40px;
  }
  
  #members .content-box .prof-img{
    width: 100%;
    max-width: 1560px;
  }
  
  #members .content-box .prof-number{
    width: 490px;
    height: 400px;
    padding: 120px 30px 0 0;
    background-color: #F5F5F5;
    left: 0;
    align-items: center;
    justify-content: flex-end;
  }
  
  #members .content-box .member-prof-wrap::after{
    content: none;
  }
  
  #members .content-box .prof-copy{
    left: 80px;
    top: 65%;
    transform: none;
  }
  
  #members .content-box .job-ttl{
    font-size: 20px;
    padding-bottom: 40px;
  }
  
  #members .content-box .job-text{
    font-size: 16px;
    line-height: 1.87;
    padding-left: 60px;
  }
  
  #members .content-box .member-job-wrap .bg{
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 80px;
  }
  
  #members .content-box .member-prof-wrap{
    margin-bottom: 40px;
    padding-bottom: 127px;
  }
  
  #members .content-box .message-box-outer{
    padding: 80px 0 60px;
    background-image: url("../images/members/member_inner_bg_pc@2x.png");
  }
  
  #members .content-box .job-inner-box{
    padding: 60px 60px 80px 0;
  }
  
  #members .content-box .job-img-wrap{
    max-width: 960px;
    margin: 0 auto;
    padding: 0 0 80px;
  }
  
  #members .content-box .job-inner-box:last-of-type{
    padding-bottom: 60px;
  }
  
  #members .content-box .member-message-wrap .bg{
    display: flex;
    flex-wrap: inherit;
    padding: 60px calc((100% - 1200px) / 2) 0;
  }
  
  #members .content-box .message-text-box{
    max-width: 560px;
    width: 100%;
    margin: 0;
    margin: 0 50px 0 90px;
    padding: 0 0 40px;
  }
  
  #members .content-box .message-img{
    max-width: 500px;
    margin: 0 0 -60px;
    padding: 0;
  }
  
  #members .content-box .message-ttl{
    font-size: 20px;
    font-weight: 500;
  }
  
  #members .content-box .message-text{
    font-size: 16px;
    line-height: 1.8;
  }
  
  #members .content-box{
    margin-bottom: 180px;
    margin-top: -80px;
    padding-top: 80px;
  }
  
  #members .content-box:nth-of-type(even) .prof-copy{
    right: 4%;
  }
  
  #members .content-box:nth-of-type(even) .prof-number{
    right: 0;
    left: auto;
    justify-content: flex-start;
    padding: 120px 0 0 30px;
  }
  
  #members .content-box:nth-of-type(even) .member-message-wrap .bg{
    flex-direction: row-reverse;
  }
  
  #members .content-box .message-ttl::before{
    left: -30px;
    bottom: 8px;
    font-size: 30px;
  }
  
  #members .content-box .job-ttl::before{
    margin-right: 20px;
  }
}

@media print, screen and (min-width: 1560px) {/* ---------- タブレット・PC以上 ---------- */
  #members .content-box .prof-img{
    width: 81%;
    min-width: 1560px;
    max-width: unset;
  }
  
 #members .content-box .prof-number{
    width: calc(100vw / 1920 * 850);
  }

}