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

  		　       　マネージャー

************************************************** */
section#instructor_manager {
    background:#000;
    padding:2rem 0rem 4rem;
}

div.manager_img {
    background:url('../img/instructor/manager_img.jpg') #000 no-repeat;
    background-size:100% auto;
    text-align:center;
    padding-top:0rem;
    max-width:1280px;
    margin:0 auto;
    width:100%;
   position:relative;
    height:100%;
    border-top:1px solid #000;
}
div.manager_img::before {
    content:"";
        margin-top:calc(657 / 1182 * 100%);
        display:block;
        color:#fff;
}

div.left_text {
    position:absolute;
    bottom:0;
    left:1rem;
}
span.manager_text {
    display:block;
    top:0;
    left:0;
    color:#fff;
    writing-mode:vertical-rl;
    text-orientation:sideways;
    font-size:4vw;
    line-height:1em;
    font-weight:normal;
    margin-bottom:0.3rem;
}
span.len_text {
    display:block;
    bottom:0;
    left:0;
    color:#fff;
    writing-mode:vertical-rl;
    text-orientation:sideways;
    font-size:16vw;
    line-height:0.7em;
    font-weight:bold;
    vertical-align:top;
    margin-bottom:2rem;
}
span.len_text:first-letter {
    color:#9F070D;
}

div.right_text {
    position:absolute;
    top:1rem;
    right:1rem;
    writing-mode:vertical-rl;
}
span.submanager_text {
    display:block;
    color:#fff;
    font-size:4vw;
    line-height:1em;
    font-weight:normal;
    margin-bottom:0.3rem;
    text-align:left;
}
span.sachi_text {
    display:block;
    color:#fff;
    font-size:16vw;
    line-height:1em;
    font-weight:bold;
    vertical-align:top;
    margin-bottom:2rem;
    text-align:left;
}
span.sachi_text:first-letter {
    color:#9F070D;
}

div.manager_img .manager_comment {
    /* margin-top:calc(657 / 1182 * 100%); */
    margin-left:auto;
    width:70%;
    margin-top:-8vw;
    background-color: rgba(0,0,0,0.8);
    padding:2rem 1rem 2rem 2rem;
}
div.manager_img h2 {
    color:#fff;
    font-size:1.2em;
    line-height:1em;
    font-weight:bold;
    text-align:left;
}
div.manager_img p {
    text-align:left;
    margin:1rem auto 0rem 0;
    color:#fff;
    font-size:0.8rem;
    line-height:1.4em;
    width:90%;
}


/* -----------------------------------------------------
　　　　　　　　　縦書きテキスト（ABOUT）
----------------------------------------------------- */
.vertical_text {
    position:absolute;
    left:0;
    top:0;
}
.vertical_border {
    position:relative;
    width:9vw;
    height:auto;
}
.vertical_border::after {
    border-left:1px solid #fff;
    width:1rem;
    height:6rem;
    display:block;
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:0;
    margin:auto;
}


/* ABOUTのライン位置調整 */
section#about .vertical_border {
    padding-top:7.5rem;
    margin-top:-7rem;
}
section#about .vertical_text {
    left:0;
    right:auto;
}

/* STUDIOのライン位置調整 */
section#studio .vertical_border {
    padding-top:7.5rem;
    margin-top:-2.0rem;
}
section#studio .vertical_text {
    left:auto;
    right:0rem;
}

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

  		　       　インストラクター

************************************************** */
section#instructor_all {
    background:#000;
    padding-bottom:3rem;
    text-align:center;
}

.instructor_body {
    margin-bottom:3rem;
    background:#000;
    border-top:1px solid #000;
}

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

  		　       　プロフィール

************************************************** */
.instructor_profile {
    width:100%;
    max-width:640px;
    margin:0rem auto 0;
    aspect-ratio: 1 / 1;
    /* overflow:hidden; */
    position:relative;
    background:#000;
}
/* -----------------------------------------------------
　　　　　　　　　　　　　　名前
----------------------------------------------------- */
.instructor_profile_text {
    position:absolute;
    top:0;
    left:-1rem;
    z-index:1;
    text-align:left;
}
.instructor_profile_name {
    transform:rotate(-7deg);
    position:relative;
    margin:4rem 0 0 0rem;
    width:12em;
}
.instructor_profile_name span {
    background:#9F070D;
    color:#fff;
    position:absolute;
    top:-0.75rem;
    left:-1rem;
    font-size:0.7rem;
    line-height:1em;
    padding:0.3rem 1rem 0.3rem 4rem;
}
.instructor_profile_name h3 {
    background:rgba(255,255,255,0.95);
    text-align:center;
    font-weight:bold;
    font-size:2.4rem;
    line-height:1em;
    padding:2rem 0rem 1.5rem 1rem;
}
.instructor_profile_name h3 ruby {
    font-weight:bold;
    /* ruby-position:under; */
    ruby-position:top;
    letter-spacing:0.3rem;
    ruby-align: center;
}
.instructor_profile_name h3 ruby rt {
    font-size:0.6rem;
    line-height:1em;
    letter-spacing:2em;
    padding-left:2em;
    padding-bottom:0.2em;
}

/* shizuku */
section#shizuku .instructor_profile_name h3 {
    font-size:2rem;
}
section#shizuku .instructor_profile_name h3 ruby {
    letter-spacing:0.2rem;
}
/* こっさん */
section#kossan .instructor_profile_name h3 {
    font-size:2rem;
}
/* RYUSEI */
section#ryusei .instructor_profile_name h3 {
    font-size:2.4rem;
}
section#ryusei .instructor_profile_name h3 ruby {
    letter-spacing:0rem;
}
/* なある */
section#naaru .instructor_profile_name h3 {
    font-size:2rem;
}
/* Tomoko */
section#tomoko .instructor_profile_name h3 {
    font-size:2rem;
}
section#tomoko .instructor_profile_name h3 ruby {
    letter-spacing:0.1rem;
}

/* kazuya */
section#kazuya .instructor_profile_name h3 {
    font-size:2rem;
}
section#kazuya .instructor_profile_name h3 ruby {
    letter-spacing:0.1rem;
}

/* -----------------------------------------------------
　　　　　　　　　　　その他の情報
----------------------------------------------------- */
ul.instructor_profile_other {
    margin:3rem 0 0 3rem;
}
ul.instructor_profile_other li {
    color:#fff;
    /* text-shadow:0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000; */
    font-size:0.8rem;
    line-height:1em;
    margin-bottom:1rem;
}

/* -----------------------------------------------------
　　　　            プロフィール画像
----------------------------------------------------- */
.instructor_profile_img {
    overflow:hidden;
    position:relative;
    width:100%;
    height:100%;
}
.instructor_profile_img img {
    position:absolute;
    top:0;
    right:-10%;
    width:90%;
    height:auto;
}

/* -----------------------------------------------------
　　　　　　　　　スクール名見出し（下方向吹き出し）
----------------------------------------------------- */
h4.profile_title {
    position:relative;
    display:block;
    background:#333;
    font-size:0.9rem;
    line-height:1em;
    text-align:center;
    color:#fff;
    font-weight:bold;
    padding:1rem;
    max-width:640px;
    margin:0 auto 2rem;
}
h4.profile_title:before {
	content:"";
	position:absolute;
	top:100%;
	left:50%;
	margin-left:calc(0.5rem * -1);
	border:0.5rem solid transparent;
	border-top:0.5rem solid #333;
}

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

  		　       　YouTube

************************************************** */
.instructor_youtube {
    position: relative;
    max-width:640px;
    width:100%;
    height:auto;
    aspect-ratio: 1080 / 720;
    margin:0 auto 2rem;
}

.instructor_youtube iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.instructor_youtube .overlay-text {
  position: absolute;
  top: 10%;
  left: 5%;
  color: white;
  font-size: 1.0rem;
  line-height:1.2em;
  font-weight: bold;
  z-index: 2;
  text-shadow: 0 0 5px black;
  opacity: 0;
  transform: translateX(-50px);
  transition: all 0.6s ease;
  pointer-events: none;
  text-align:center;
}

.instructor_youtube .overlay-text.show {
  opacity: 1;
  transform: translateX(0);
}

.instructor_youtube .overlay-text.hide {
  opacity: 0;
  transform: translateX(50px);
}


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

  		　       　受賞履歴

************************************************** */
span.instructor_aword_year {
    color:#fff;
    font-size:1rem;
    line-height:1em;
    display:block;
    text-align:left;
    max-width:640px;
    margin:0 auto 0.5rem;
    padding-left:0.5em;
    font-weight:bold;
}
ul.instructor_aword {
    list-style-type:disc;
    padding:0 1rem 2rem 2rem;
    max-width:640px;
    margin:0 auto;
}
ul.instructor_aword li {
    color:#fff;
    margin-bottom:0.5rem;
    text-align:left;
    font-size:0.9rem;
    line-heigh:1em;
}

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

  		　       　チーム

************************************************** */
.team_body {
    background:#eee;
    padding:2rem 0 2rem 0;
    margin-bottom:6rem;
}

h4.team_title {
    position:relative;
    display:block;
    background:#D8D224;
    font-size:0.9rem;
    line-height:1em;
    text-align:center;
    color:#fff;
    font-weight:bold;
    padding:1rem;
    max-width:640px;
    margin:0 auto 2rem;
}
h4.team_title:before {
	content:"";
	position:absolute;
	top:100%;
	left:50%;
	margin-left:calc(0.5rem * -1);
	border:0.5rem solid transparent;
	border-top:0.5rem solid #D8D224;
}

.team_detail {
    width:96%;
    max-width:640px;
    margin:0rem auto 1rem;
    display:flex;
    align-items:center;
}
.team_detail:last-child {
    margin-bottom:0rem;
}
.team_detail_left {
    flex-basis:50%;
}
.team_detail_right {
    flex-basis:50%;
}
.team_detail h3 {
    color:#000;
    font-weight:bold;
    font-size:1rem;
    line-height:1em;
    margin:0rem 0 1rem 1.5rem;
    text-align:left;
}
.team_detail h3 ruby rt {
    margin-bottom:0.5em;
}
.team_detail ul {
    list-style-type:disc;
    margin:0 0 0 0.5rem;
}
.team_detail ul li {
    color:#000;
    margin-bottom:0.5em;
    text-align:left;
    font-size:0.8rem;
}
.team_detail ul li:last-child {
    margin-bottom:0rem;
}

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

  		　       　吹き出しコメント

************************************************** */
.instructor_comment {
    position:relative;
    text-align:left;
    max-width:640px;
    width:100%;
    margin:1rem auto 0;
}
.instructor_comment_face {
    display:flex;
    justify-content:left;
    align-items:center;
    margin-right:auto;
}
.instructor_comment_face img {
    width:20%;
    height:auto;
    object-fit:cover;
    border-radius:50%;
}

.instructor_comment_bg {
    position:absolute;
    top:50%;
    right:0;
    transform:translate(0%,-50%);
    background-color:#42808F;
    width:76%;
    height:80%;
    border-radius:0.6rem;
    border:1px solid #42808F;
    display:flex;
    align-items:center;
    color:#fff;
    padding:0 1.5rem;
    font-size:0.9rem;
}

.instructor_comment_bg::before {
    position:absolute;
    top:0;
    left:-3rem;
    width:100%;
    height:100%;
    background-color:#42808F;
    content:'';
    clip-path:polygon(3rem 70%, 1rem 30%, 3rem 50%);
}


