@charset "UTF-8";


/*--------------------------------------------------------------------
=== [TOP] ====================================
 -------------------------------------------------------------------*/

#mvArea {
	background-image: url("../img/top/mv_bg_pc.png");
	background-size: cover;
	background-color: #ffdc3b;
    min-height: min(36.46vw, 700px);
    padding: min(7.813vw, 150px) 0;
	position: relative;
	}
/*
#mvArea:after {
	content: "";
	display: inline-block;
	background-image: url("../img/top/mv_frame_pc.png");
	background-size: cover;	
	width: min(55.729vw, 1070px);
	height:min(35.417vw, 680px);
	position: absolute;
	right:min(4.948vw, 95px);
	bottom: 0;
	z-index: 1000;
	}
*/
#mvArea .inner {
display: flex;
align-items: center;
max-width: 1420px;
}

#mvArea .inner .lBox {
    font-family: var(--font-line-seed);
}
  
#mvArea .inner .lBox .catch {
  font-size: min(3.542vw, 68px);
    font-weight: 900;
    margin-bottom:min(2.604vw, 50px);
}

#mvArea .inner .lBox .txt {
  font-size:min(1.25vw, 24px);
  font-family: var(--font-zenmaru);     
}
#mvArea .inner .rBox {
    width:min(40.625vw, 780px);
	position: absolute;
	bottom: 0;
    right: 0;
}
#mvArea .inner .rBox:after {
	content: "";
	display: inline-block;
	background-image: url("../img/top/mv_frame_pc.png");
	background-size: cover;	
    background-position: center bottom;
	width: min(55.64vw, 1070px);
	height:min(35.364vw, 680px);
	position: absolute;
	right:min(4.95vw, 95px);
	bottom: 0;
	z-index: 1000;
	}
#mvArea .inner .rBox .video {
	width: 100%;
    position: absolute;
    bottom:min(7.76vw, 149px);
	right: min(12.969vw, 249px);
	}
#mvArea .kameAnime {
	width: min(16.667vw, 250px);
	height: auto;
	position: absolute;
	z-index: 1001;
	right: min(3.333vw, 50px);
	bottom:min(-4.667vw, -70px);
	}
/*#sec hx*/

section h2 {
    width: auto;
    height: min(2.600vw, 39px);
}
section h2 img {
    width: auto;
    height: 100%;
}


/*newsTopics*/
#newsTopics {
	margin-top:min(2vw, 30px);
	}
#newsTopics a {
    display: flex;
    align-items: center;
    font-size: min(1.2vw, 18px);
    padding:  min(2vw, 30px);
	background-color: #fff;
    position: relative;
	box-shadow: 0px 0px 15px -5px #bababa;
    border-radius: 10px;
}
#newsTopics a .date {
    color: #959595;
    margin-right: min(2vw, 30px);
}
#newsTopics a:after {
    content: '';
    background-image: url(../img/ico_arw06.svg);
    display: inline-block;
    background-size: contain;
    width: min(0.933vw, 14px);
    height: min(1.533vw, 23px);
    position: absolute;
   right:  min(2vw, 30px);
}

#newsTopics .label {
	color: #fff;
	background-color: #F8AB93;
	padding: 2px min(1.333vw, 20px);
    border-radius: min(1.333vw, 20px);
	margin-right: min(0.333vw, 5px);
	font-size: min(0.933vw, 14px);
	}
#newsTopics img {
width: min(2vw, 30px);	
	}

/*#sec01*/

#sec01 {
    padding: min(10.667vw, 160px) 0 0;
    position: relative;
}

#sec01:before {
    content: "CREATIVE";
    position: absolute;
    z-index: -1;
    color: #f4f4ee;
    font-family: var(--font-line-seed);
    font-size: min(19.333vw, 290px);
    font-weight: bold;
    top: 0;
    left: min(-4vw, -60px);    
}
#sec01 .secHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
}


#sec01 .contWrap {
    display: flex;
    margin-right:  min(4vw, 100px);
    margin-top: min(8vw, 120px);
    align-items: center;
}

#sec01 .contWrap figure img {
    border-top-right-radius:  0.521vw;
    border-bottom-right-radius:  0.521vw;
    object-fit: cover; 
    width: min(40vw, 870px);
    height: auto;
}

#sec01 .contWrap:nth-child(even){
    flex-direction: row-reverse;
    margin-right: 0;
    margin-left:  min(4vw, 100px);
}

#sec01 .contWrap:nth-child(even) figure img {
    border-top-left-radius:  0.521vw;
    border-bottom-left-radius:  0.521vw;
   border-top-right-radius:  0;
    border-bottom-right-radius: 0;
}

#sec01 .contWrap .contTxt {
    margin-left: min(4vw, 100px);
}

#sec01 .contWrap:nth-child(even) .contTxt {
    margin-right: min(4vw, 100px);
    margin-left: 0;
}

#sec01 .contWrap .contTxt h3 {
  font-family: var(--font-line-seed);
  font-weight: bold; 
    color: #f45c2e;
    font-size: min(3.333vw, 50px);
    line-height: 1;
    margin-bottom: min(2vw, 30px);    
}

#sec01 .contWrap .contTxt h3 span {
    display: block;
    color: #333;
    border-bottom: 1px solid #333;
    margin-bottom: min(2vw, 30px);
    width: fit-content;
    padding-bottom: min(0.667vw, 10px);
    font-size: min(1.333vw, 20px);
}

#sec01 .contWrap .contTxt .catch {
    font-size: min(2.4vw, 36px);
    margin-bottom: min(3.333vw, 50px);
    font-family: var(--font-zenmaru);     
    font-weight: 900;
}
#sec01 .contWrap .contTxt .txt {
    font-size: min(1.333vw, 20px);
    line-height: 1.8;
}

#sec01 .contBlock {
    position: relative;
    padding-bottom: clamp(142px, 62.000px + 10.667vw, 190px);
    overflow: hidden;
}
#sec01 .contMenu {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-around;
    gap: 10px;
    padding-top: clamp(50px, 0.000px + 6.667vw, 80px);
}
#sec01 .contMenu .item {
    align-self: flex-end;
}
#sec01 .contMenu .item:nth-child(2) {
    order: -1;
}
#sec01 .contMenu .item a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: clamp(180px, -50.769px + 30.769vw, 380px);
    padding-top: 18px;
    border-radius: 50%;
    background-color: #ffdc3b;
    aspect-ratio: 1 / 1;
}
#sec01 .contMenu .item a:after {
    content: "";
    display: block;
    width: clamp(26px, 16.000px + 1.333vw, 32px);
    margin-top: 14%;
    aspect-ratio: 16 / 11;
    background: url(../img/top/sec01_arw01.svg) no-repeat 0 0 / 100% auto;
}
#sec01 .contMenu .item a figure {
    width: 28%;
    margin-bottom: 8%;
}
#sec01 .contMenu .item a h3 {
    color: #000;
    font-size: min(2.4vw, 36px);
    font-family: var(--font-zenmaru);
    font-weight: bold;
}
#sec01 .contMenu .item a .en {
    color: #F45C2E;
    font-family: var(--font-line-seed);
    font-size: min(2vw, 30px);
    font-weight: bold;
}
#sec01 .contMenu .item a:hover {
    transform: scale(1.1);
    opacity: 1;
}

#sec01 .contMenu .item:nth-child(1) a {
    width: clamp(240px, -36.923px + 36.923vw, 480px);
}
#sec01 .contMenu .item:nth-child(1) a figure {
    width: 30%;
}
#sec01 .contMenu .item:nth-child(1) a h3 {
    font-size: min(2.67vw, 40px);
}


#sec01 .contBlock .contPic {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.6;
}
#sec01 .contBlock .contPic figure img {
    width: clamp(280px, 121.667px + 21.111vw, 375px);
    object-fit: cover;
    aspect-ratio: 3 / 2;
}

/*#sec02*/

#sec02 {
    position: relative;
    background-color: #ffdc3b;
    padding: min(10.667vw, 160px) 0;
    overflow: hidden;
}
#sec02 .inner {
    z-index: 1;
    position: relative;
}

#sec02:before {
    content: "CASTING";
    position: absolute;
    color: #ffe372;
    font-family: var(--font-line-seed);
    font-size: min(19.333vw, 290px);
    font-weight: bold;
    top: -1.5vw;
    left: min(-4vw, -60px);
    line-height: 1;   
}

#sec02 .secHead {
    margin-bottom: min(4vw, 60px);
}

#sec02 .leadTxt {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: min(4vw, 60px) 0;
}
#sec02 .leadTxt p {
    font-size: min(1.733vw, 26px);
    font-family: var(--font-zenmaru);     
    font-weight: 900;
}

#sec02 .crewHead {
    display: flex;
    align-items: center;
    margin-bottom: min(4vw, 60px);
}
#sec02 .crewHead h3 {
    font-family: var(--font-line-seed);
    font-size: min(3vw, 45px);
    font-weight: bold;  
    margin-right: min(2.667vw, 40px);  
}
#sec02 .crewHead .sort {
    display: flex;
    font-size: min(1.2vw, 18px);
}
#sec02 .crewHead .sort a {
    color: #fff;
    padding:min(0.667vw, 10px) min(3.333vw, 50px) ;
    background-color: #f3a188;
    display: block;
}
#sec02 .crewHead .sort li:first-child a {
    border-top-left-radius: min(0.667vw, 10px);
    border-bottom-left-radius: min(0.667vw, 10px);
}
#sec02 .crewHead .sort li:last-child a {
    border-top-right-radius: min(0.667vw, 10px);
    border-bottom-right-radius: min(0.667vw, 10px);
}
#sec02 .crewHead .sort li.current a {
    background-color: #f45c2e;
}

#sec02 .crewList {
    display: flex;
    flex-wrap: wrap;
    gap:min(1.333vw, 20px) 0;
    justify-content: space-between;   
}

#sec02 crewList::before {
  content: "";
  display: block;
 width:min(17.867vw, 268px);
  order: 1;
}
#sec02 .crewList::after {
  content: "";
  display: block;
  width:min(17.867vw, 268px);
}

#sec02 .crewList li {
    width:min(17.867vw, 268px);
    padding: min(1.667vw, 25px);
    background-color: #fff;
    border-radius: min(0.667vw, 10px);
    box-sizing: border-box;
}   

#sec02 .crewList li .crewData h4{
    font-size: min(1.467vw, 22px);
    font-family: var(--font-zenmaru);     
    font-weight: 900;
    border-bottom: 1px solid #8c8c8c;
    margin: min(1.333vw, 20px) 0 min(1vw, 15px);
    padding-bottom: min(1vw, 15px);  
	line-height: 1.4;
}
#sec02 .crewList li .crewData h4 .age {
    font-size: min(1.2vw, 18px);
	margin-left: min(0.333vw, 5px);
	}
#sec02 .crewList li .crewData h4 .note {
	font-size: 14px;
    font-weight: normal;
    color: #8c8c8c;
	margin-top: 5px;
	}
#sec02 .crewList li .crewData h4 .age {
    font-size: min(1.2vw, 18px);
	display: block;
	}
#sec02 .crewList li .crewData .sampleVoice dt {
    font-size: min(1.2vw, 18px);
    color:  #8c8c8c;
    margin-bottom: min(0.667vw, 10px);
}

#sec02 .crewList li .crewData .sampleVoice dt:before {
    content: "";
    background-image: url(../img/ico_voice_sample.png);
    background-size: contain;
    display: inline-block;
    width: min(1.2vw, 18px);
    height: min(1vw, 15px);
    margin-right: min(0.333vw, 5px);
	background-repeat: no-repeat;
}
#sec02 .crewList li .crewData .sampleVoice dd {
    display: flex;
    gap:min(0.267vw, 4px);
	flex-wrap: wrap;
}
#sec02 .crewList li .crewData .sampleVoice dd a {
    font-size: min(1.333vw, 16px);
    font-weight: bold;
    color: #f45c2e;
    border: 1px solid #f45c2e;
    width: min(4.667vw, 70px);
    border-radius: min(0.667vw, 10px);
    display: block;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sampleVoice dd a.play {
background: #ffd1c3;
}	


/*#sec03*/

#sec03 {
    position: relative;
    padding:min(20vw, 300px) 0 min(10.667vw, 160px);
    overflow: hidden;
}
#sec03 .inner {
    z-index: 1;
    position: relative;
}

#sec03:before {
    content: "LESSON";
    position: absolute;
    color: #f4f4ee;
    font-family: var(--font-line-seed);
    font-size: min(19.333vw, 290px);
    font-weight: bold;
    top: min(3.333vw, 50px);
    left: min(-1.333vw, -20px);
    line-height: 1;   
}

#sec03 .contTxt h2 {
     margin-bottom: min(4vw, 60px);
}

#sec03 .contTxt .txtWrap {
    width: 60%;
}

#sec03 .contTxt .txtWrap .lead {
    font-size: min(2.667vw, 40px);
    font-family: var(--font-zenmaru);     
    font-weight: 900;
    color: #f45c2e;
    margin-bottom: min(3.333vw, 50px);
}
#sec03 .contTxt .txtWrap .txt {
    font-size: min(1.333vw, 20px);
    line-height: 2.4;
    margin-bottom: min(4.667vw, 70px);
}

#sec03 figure {
    width: min(44vw, 660px);
    position: absolute;
    right: 0;
    top: min(8.667vw, 130px) ;
}
@media (max-width: 1700px){
	#sec03 figure {
    right: -8vw;
}
	}

#sec03 .bnr {
    max-width: 1520px;
    margin:min(13.333vw, 200px) auto 0;
    padding: 0 min(3.333vw, 50px);
}

/*#sec04*/

#sec04 {
    position: relative;
    background-color: #ffdc3b;
    padding: min(10.667vw, 160px) 0;
    overflow: hidden;
}
#sec04 .inner {
    z-index: 1;
    position: relative;
}

#sec04:before {
    content: "WORKS";
    position: absolute;
    color: #ffe372;
    font-family: var(--font-line-seed);
    font-size: min(19.333vw, 290px);
    font-weight: bold;
    top: -1.5vw;
    left: min(-4vw, -60px);
    line-height: 1;   
}

#sec04 .secHead {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: min(4vw, 60px);
}
/*
#sec04 .sortWrap {
    margin: min(4vw, 60px) 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#sec04 .sortWrap .sort {
    display: flex;
    font-size: min(1.333vw, 20px);
	margin-bottom: min(1.333vw, 20px);
}

#sec04 .sortWrap .sort li {
    margin-right: min(1.333vw, 20px);
}

#sec04 .sortWrap .sort li a:before {
    content: "";
    display: inline-block;
    width: min(0.667vw, 10px);
    height: min(0.667vw, 10px);
    border-radius: min(0.333vw, 5px);
    background-color: #333;
    margin-right: min(1vw, 15px);
    vertical-align: middle;
}
#sec04 .sortWrap .sort li.current a {
    color: #f45c2e;
    border-bottom: 1px dashed #f45c2e;
    padding-bottom:min(0.333vw, 5px);
}
#sec04 .sortWrap .sort li.current a:before {
    background-color: #f45c2e;
}*/
#sec04 .worksList {
    display: flex;
    gap:min(5.333vw, 80px) 0;
    flex-wrap: wrap;
    justify-content: space-between;
}

#sec04 .worksList::before {
  content: "";
  display: block;
    width: min(22.667vw, 340px);
  order: 1;
}
#sec04 .worksList::after {
  content: "";
  display: block;
    width: min(22.667vw, 340px);
}

#sec04 .worksList li {
    width: min(22.667vw, 340px);
    position: relative;
}


#sec04 .worksList li img {
    border-radius: min(0.667vw, 10px);
    width:min(22.667vw, 340px);
    height: min(17vw, 255px);
    object-fit: cover;
    background: #fff;
}

#sec04 .worksList li .cat {
    font-size:min(1.2vw, 18px);
    background-color: #f45c2e;
    color: #fff;
    position: absolute;
    left: -10px;
    top:min(1.667vw, 25px);
    padding:min(0.667vw, 10px);
    border-radius: min(0.333vw, 5px);
    line-height: 1;
}

#sec04 .worksList li .ttl {
    font-size: min(1.2vw, 18px);
    margin:  min(1.333vw, 20px) 0  min(0.667vw, 10px) ;
}
#sec04 .worksList li .credit {
   background-color: #ffe372;
	padding: min(0.333vw, 5px) min(0.667vw, 10px);
	border-radius: min(0.667vw, 10px);
	margin-bottom:  min(0.667vw, 10px);
	display: inline-block;
	font-size: min(0.933vw, 14px);
}
#sec04 .worksList li .credit a {
	text-decoration: underline;
	}
#sec04 .worksList li .date {
    color: #737373;
}

/*#sec05*/

#sec05 {
    position: relative;
    padding: min(10.667vw, 160px) 0;
    overflow: hidden;
}
#sec05 .inner {
    z-index: 1;
    position: relative;
}

#sec05:before {
    content: "NEWS";
    position: absolute;
    color: #f4f4ee;
    font-family: var(--font-line-seed);
    font-size: min(19.333vw, 290px);
    font-weight: bold;
    top: min(3.333vw, 50px);
    left: min(-1.333vw, -20px);
    line-height: 1; 
}

#sec05 .secHead {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: min(4vw, 60px);
}

#sec05 .newsList li a {
    display: flex;
    align-items: center;
    font-size: min(1.2vw, 18px);
    padding: min(1vw, 15px) min(2vw, 30px) min(1vw, 15px) 0;
    border-bottom: 1px solid #929292;
    position: relative;
}
#sec05 .newsList li a .date {
    color: #959595;
    margin-right: min(2vw, 30px);
}
#sec05 .newsList li a:after {
    content: '';
    background-image: url(../img/ico_arw06.svg);
    display: inline-block;
    background-size: contain;
    width: min(0.933vw, 14px);
    height: min(1.533vw, 23px);
    position: absolute;
   right: 0;
}

#sec05 .newsList li .label {
	color: #fff;
	background-color: #F8AB93;
	padding: 2px min(1.333vw, 20px);
    border-radius: min(1.333vw, 20px);
	margin-right: min(0.333vw, 5px);
	font-size: min(0.933vw, 14px);
	}
#sec05 .newsList li img {
width: min(2vw, 30px);	
	}

/*#sec06*/

#sec06 {
    position: relative;
    padding:min(8vw, 120px) 0;
    overflow: hidden;
    background-color: #e2e2e2;
}
#sec06 .inner {
    z-index: 1;
    position: relative;
}

#sec06 .contWrap {
    display: flex;
    justify-content: space-between;
    align-items: end;
}

#sec06 .contWrap .txt {
    font-size: min(1.333vw, 20px);
    line-height: 2.4;
    margin-top: min(8vw, 120px);
    width: 60%;
}
#sec06 figure {
    position: relative;
}
#sec06 figure:after {
     content: '';
    background-image: url(../img/top/sec06_ttl.png);
    display: inline-block;
    background-size: contain;
    width: min(43.333vw, 650px);
    height: min(10.8vw, 162px);
    position: absolute;
    right: min(3vw, 45px);
    top: min(22.667vw, 340px);
}

/*--------------------------------------------------------------------
=== [下層ページ] ====================================
 -------------------------------------------------------------------*/


/*------------- creative -------------*/

#creative #btmContWrap:before {
    content: "CREATIVE";   
}
#creative ul .contWrap {
    display: flex;
    margin-bottom: min(9.333vw, 140px);
    align-items: center;
}

#creative ul .contWrap figure img {
    border-radius:  0.521vw;
    object-fit: cover; 
    width: min(45.333vw, 680px);
    height: min(25.333vw, 380px);
}
#creative ul .contWrap figure{
    margin-right: min(6vw, 90px);
}

#creative ul .contWrap:nth-child(odd){
    flex-direction: row-reverse;
}
#creative ul .contWrap:nth-child(odd) figure{
    margin-left: min(6vw, 90px);
}

#creative ul .contWrap h3 {
     font-size: min(2.333vw, 35px);
    font-family: var(--font-line-seed);
    font-weight: bold;   
    color: #F45C2E;
}
#creative ul .contWrap .catch {
    font-size: min(2vw, 30px);
    font-family: var(--font-zenmaru);  
    font-weight: bold;  
}
#creative ul .contWrap .txt {
     font-family: var(--font-zenmaru); 
    font-size: min(1.333vw, 20px);
    margin-top: min(2vw, 30px);
}

#creative .creativeLink {
	margin-top: min(2vw, 30px);
}
#creative .creativeLink a {
    color: #0b7bca;
}

/*------------- casting -------------*/

#casting #btmContWrap:before {
    content: "CASTING";   
}


#casting #btmContWrap #contHead figure img {
	border-radius: min(0.667vw, 10px); 
	width: min(33.333vw, 640px); 
	 aspect-ratio: 4 / 3; 
    object-fit: cover; 
    height: auto;  
	margin-top: min(2vw, 30px);
	}
#casting .castingCol {
	display: flex;
	margin-top: min(8vw, 120px);
	gap: 0 20px;
	justify-content: space-between;
	position: relative;
}

#casting .castingCol::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(50% - 0.5px); 
	width: 1px;
	background-color: #333;
}

#casting .castingCol .col {
	width: 45%;
}


#casting .castingCol h3 {
    font-size:min(1.6vw, 24px);
    font-family: var(--font-zenmaru);
    font-weight: bold;
}
#casting .castingCol .txt {
	font-size: min(1.2vw, 18px);
	}

#casting #btmContWrap .crewWrap {
	background-color: #ffdc3b;
	padding: min(8vw, 120px) 0 min(6.667vw, 100px);
}
#casting .crewHead {
    margin-bottom: min(4vw, 60px);
	text-align: center;
}

#casting .crewHead h2 {
    font-size: min(3.333vw, 50px);
    font-family: var(--font-line-seed);
    font-weight: bold;   
    color: #F45C2E;
    height: auto;
}  
#casting .crewHead h2 span {
    display: block;
    font-size: min(2vw, 30px);
    font-family: var(--font-zenmaru);  
    font-weight: bold;  
    color: #333;
}
#casting .crewHead .txt {
     font-family: var(--font-zenmaru); 
    font-size: min(1.333vw, 20px);
    margin: min(2vw, 30px) 0;
	line-height: 2;
}
#casting .crewHead .sort {
    display: flex;
    font-size: min(1.2vw, 18px);
	justify-content: center;
}
#casting .crewHead .sort a {
    color: #fff;
    padding:min(0.667vw, 10px) min(3.333vw, 50px) ;
    background-color: #f3a188;
    display: block;
}
#casting .crewHead .sort li:first-child a {
    border-top-left-radius: min(0.667vw, 10px);
    border-bottom-left-radius: min(0.667vw, 10px);
}
#casting .crewHead .sort li:last-child a {
    border-top-right-radius: min(0.667vw, 10px);
    border-bottom-right-radius: min(0.667vw, 10px);
}
#casting .crewHead .sort li.current a {
    background-color: #f45c2e;
}

#casting .crewList {
    display: flex;
    flex-wrap: wrap;
    gap:min(1.333vw, 20px) 0;
    justify-content: space-between;   
}

#casting .crewList::before {
  content: "";
  display: block;
 width:min(17.867vw, 268px);
  order: 1;
}
#casting .crewList::after {
  content: "";
  display: block;
  width:min(17.867vw, 268px);
}

#casting .crewList li {
    width:min(17.867vw, 268px);
    padding: min(1.667vw, 25px);
    background-color: #fff;
    border-radius: min(0.667vw, 10px);
    box-sizing: border-box;
}     

#casting .crewList li .crewData h4{
    font-size: min(1.467vw, 22px);
    font-family: var(--font-zenmaru);     
    font-weight: 900;
    border-bottom: 1px solid #8c8c8c;
    margin: min(1.333vw, 20px) 0 min(1vw, 15px);
    padding-bottom: min(1vw, 15px);  
	line-height: 1.4;
}
#casting .crewList li .crewData h4 .note {
	font-size: 14px;
    font-weight: normal;
    color: #8c8c8c;
	margin-top: 5px;
	}
#casting .crewList li .crewData h4 .age {
    font-size: min(1.2vw, 18px);
	display: block;
	}
#casting .crewList li .crewData .sampleVoice dt {
    font-size: min(1.2vw, 18px);
    color:  #8c8c8c;
    margin-bottom: min(0.667vw, 10px);
}
#casting .crewList li .crewData .sampleVoice dd {
    display: flex;
    gap:min(0.267vw, 4px);
	flex-wrap: wrap;	
}
#casting .crewList li .crewData .sampleVoice dd a {
    font-size: min(1.333vw, 20px);
    font-weight: bold;
    color: #f45c2e;
    border: 1px solid #f45c2e;
    width: min(4.667vw, 70px);
    border-radius: min(0.667vw, 10px);
    display: block;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
#casting .crewList li .crewData .sampleVoice dt:before {
    content: "";
    background-image: url(../img/ico_voice_sample.png);
    background-size: contain;
    display: inline-block;
    width: min(1.2vw, 18px);
    height: min(1vw, 15px);
    margin-right: min(0.333vw, 5px);
	background-repeat: no-repeat;
}
#casting .crewList li .crewData .sampleVoiceControls {
    display: none;
    position: relative;
    max-width: 300px;
    width: 100%;
    margin-top: 10px;
    padding-top: min(1.64vw, 18px);
}
#casting .crewList li .crewData .sampleVoiceSeek {
    width: 100%;
    appearance: none;
    height: 10px;
    background: #ccc;
    border-radius: 100px;
}
#casting .crewList li .crewData .sampleVoiceSeek::-webkit-slider-runnable-track {
    height: 10px;
    background: linear-gradient(to right,
        #f45c2e var(--seek-percent, 0%),
        #ccc var(--seek-percent, 0%)
    );
    border-radius: 100px;
}
#casting .crewList li .crewData .sampleVoiceSeek::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    margin-top: -3px;
    background: #f45c2e;
    border-radius: 50%;
    border: none;
    box-shadow: none;
    cursor: pointer;
}
#casting .crewList li .crewData .sampleVoiceControls .sampleVoiceTime {
    position: absolute;
    top: 0;
    right: 0;
    color: #f45c2e;
    text-align: right;
    font-size: min(1vw, 11px);
}

/*------------- casting btm -------------*/
#casting #crewDetail {
	display: flex;
	padding: min(10vw, 150px) min(3.333vw, 50px);
	max-width: 1520px;
	margin: 0 auto;
	}
#casting #crewDetail .lBox {
	margin-right: min(4.667vw, 70px);
	}
#casting #crewDetail .lBox figure img {
    border-radius:  0.521vw;
    object-fit: cover; 
    width: min(33.333vw, 500px);
    height: min(50vw, 750px);
}

#casting #crewDetail .lBox .sampleVoice {
	display: flex;
	margin-top: min(1.333vw, 20px);
	}
#casting #crewDetail .lBox .sampleVoice dt {
    font-size: min(1.2vw, 18px);
    color:  #8c8c8c;
    margin-right:min(1.667vw, 25px);
}
#casting #crewDetail .lBox .sampleVoice dd {
    display: flex;
    gap:min(0.267vw, 4px);
	flex-wrap: wrap;
}
#casting #crewDetail .lBox .sampleVoice dd a {
    font-size: min(1.333vw, 20px);
    font-weight: bold;
    color: #f45c2e;
    border: 1px solid #f45c2e;
    width: min(4.667vw, 70px);
    border-radius: min(0.667vw, 10px);
    display: block;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
#casting #crewDetail .lBox .sampleVoice dt:before {
    content: "";
    background-image: url(../img/ico_voice_sample.png);
    background-size: contain;
    display: inline-block;
    width: min(1.2vw, 18px);
    height: min(1vw, 15px);
    margin-right: min(0.333vw, 5px);
	background-repeat: no-repeat;
}

#casting #crewDetail .lBox .sampleVoiceControls {
    display: none;
    position: relative;
    max-width: 300px;
    width: 100%;
    margin-top: 10px;
    padding-top: min(1.64vw, 18px);
}
#casting #crewDetail .lBox .sampleVoiceSeek {
    width: 100%;
    appearance: none;
    height: 10px;
    background: #ccc;
    border-radius: 100px;
}
#casting #crewDetail .lBox .sampleVoiceSeek::-webkit-slider-runnable-track {
    height: 10px;
    background: linear-gradient(to right,
        #f45c2e var(--seek-percent, 0%),
        #ccc var(--seek-percent, 0%)
    );
    border-radius: 100px;
}
#casting #crewDetail .lBox .sampleVoiceSeek::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    margin-top: -3px;
    background: #f45c2e;
    border-radius: 50%;
    border: none;
    box-shadow: none;
    cursor: pointer;
}
#casting #crewDetail .lBox .sampleVoiceControls .sampleVoiceTime {
    position: absolute;
    top: 0;
    right: 0;
    color: #f45c2e;
    text-align: right;
    font-size: min(1vw, 11px);
}

#casting #crewDetail .rBox h2 {
	font-size: min(3.2vw, 48px);
	font-family: var(--font-line-seed);
    font-weight: bold;
	height: auto;
	}
#casting #crewDetail .rBox .crewSpec {
	font-size: min(2vw, 30px);
    font-family: var(--font-zenmaru);     
    font-weight: bold;
	margin-bottom: min(2vw, 30px);
	}
#casting #crewDetail .rBox .txt {
     font-family: var(--font-zenmaru); 
    font-size: min(1.333vw, 20px);
	line-height: 2;
}

#casting #crewDetail .crewWorks {
	margin-top: min(5.333vw, 80px);
	}

#casting #crewDetail .crewWorks h3 {
	font-size:min(2.533vw, 38px);
	font-family: var(--font-line-seed);
    font-weight: bold;
	color: #f45c2e;
	margin-bottom: min(1.333vw, 20px);
	}


#casting #crewDetail .crewWorks p  {
	line-height: 1.8;
		}

#casting #crewDetail .crewWorks ul {
     font-family: var(--font-zenmaru); 
    font-size: min(1.333vw, 20px);
}

#casting #crewDetail .crewWorks ul li {
	margin-bottom: min(0.667vw, 10px);
	text-indent: min(-2vw, -30px);
    padding-left: min(2vw, 30px);
	}
#casting #crewDetail .crewWorks ul li:before {
	content: "・";
	color: #f45c2e;
	margin-right: min(0.667vw, 10px);
	}

#casting #crewDetail .note {
	margin-top: min(0.667vw, 10px);
	color: #8c8c8c;
	}

/*------------- works -------------*/

#works #btmContWrap:before {
    content: "WORKS";   
}
#works #btmContWrap .inner {
	padding: min(10vw, 150px) min(3.333vw, 50px);
}

#works .sortWrap {
    margin-bottom: min(5.333vw, 80px);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#works .sortWrap .sort {
    display: flex;
    font-size: min(1.333vw, 20px);
	margin-bottom: min(1.333vw, 20px);
}

#works .sortWrap .sort li {
    margin-right: min(1.333vw, 20px);
}

#works .sortWrap .sort:first-child li.current a {
	background-color: #f45c2e;
    color: #fff;
	padding:min(0.332vw, 5px) min(0.667vw, 10px);
    border-radius: min(0.333vw, 5px);
}

#works .sortWrap .sort:nth-child(2) {
    display: flex;
    font-size: min(1.333vw, 20px);
	margin-bottom: min(1.333vw, 20px);
}

#works .sortWrap .sort:nth-child(2) li {
    margin-right: min(1.333vw, 20px);
}

#works .sortWrap .sort:nth-child(2) li a:before {
    content: "";
    display: inline-block;
    width: min(0.667vw, 10px);
    height: min(0.667vw, 10px);
    border-radius: min(0.333vw, 5px);
    background-color: #333;
    margin-right: min(1vw, 15px);
    vertical-align: middle;
}
#works .sortWrap .sort:nth-child(2) li.current a {
    color: #f45c2e;
    border-bottom: 1px dashed #f45c2e;
    padding-bottom: min(0.333vw, 5px)
}
#works .sortWrap .sort:nth-child(2) li.current a:before {
    background-color: #f45c2e;
}
#works .worksList {
    display: flex;
    gap:min(5.333vw, 80px) 0;
    flex-wrap: wrap;
    justify-content:  space-between;
}

#works .worksList::before {
  content: "";
  display: block;
  width: min(22.667vw, 340px);
  order: 1;
}
#works .worksList::after {
  content: "";
  display: block;
  width: min(22.667vw, 340px);
}
#works .worksList li {
    width: min(22.667vw, 340px);
    position: relative;
}


#works .worksList li img {
    border-radius: min(0.667vw, 10px);  
    width:min(22.667vw, 340px);
    height: min(17vw, 255px);
    object-fit: cover;
}

#works .worksList li .cat {
    font-size:min(1.2vw, 18px);
    background-color: #f45c2e;
    color: #fff;
    position: absolute;
    left:-10px;
    top:min(1.667vw, 25px);
    padding:min(0.667vw, 10px);
    border-radius: min(0.333vw, 5px);
    line-height: 1;
}

#works .worksList li .ttl {
    font-size: min(1.2vw, 18px);
    margin:  min(1.333vw, 20px) 0  min(0.667vw, 10px) ;
}
#works .worksList li .credit {
   background-color: #ffe372;
	padding: min(0.333vw, 5px) min(0.667vw, 10px);
	border-radius: min(0.667vw, 10px);
	margin-bottom:  min(0.667vw, 10px);
	display: inline-block;
	font-size: min(0.933vw, 14px);
}
#works .worksList li .credit a {
	text-decoration: underline;
	}
#works .worksList li .date {
    color: #737373;
}
/*------------- news -------------*/

#news #btmContWrap:before {
    content: "NEWS";   
}
#news #btmContWrap .inner {
	padding:0 min(3.333vw, 50px) min(10vw, 150px) ;
}

#news #btmContWrap #contHead {
	padding-bottom: min(4.667vw, 70px);
	}

#news .newsList li a {
    display: flex;
    align-items: center;
    font-size:min(1.2vw, 18px);
    padding: min(1vw, 15px) min(2vw, 30px) min(1vw, 15px) 0;
    border-bottom: 1px solid #929292;
    position: relative;
}
#news .newsList li a .date {
    color: #959595;
    margin-right: min(2vw, 30px);
}
#news .newsList li a:after {
    content: '';
    background-image: url(../img/ico_arw06.svg);
    display: inline-block;
    background-size: contain;
    width: min(0.933vw, 14px);
    height: min(1.533vw, 23px);
    position: absolute;
   right: 0;
}
#news .newsList li .label {
	color: #fff;
	background-color: #F8AB93;
	padding: 2px min(1.333vw, 20px);
    border-radius: min(1.333vw, 20px);
	margin-right: min(0.333vw, 5px);
	font-size: min(0.933vw, 14px);
	}

#news .newsList li img {
width: min(2vw, 30px);	
	}
#news .newsDetail #contHead,#news .newsDetail .inner {
	    max-width: 960px;
	}
#news .newsDetail #contHead h2 {
	    font-size: min(2.267vw, 30px);
	text-align: left;
	}
#news .newsDetail h2 .label {
	color: #fff;
	background-color: #F8AB93;
	padding: 2px min(1.333vw, 20px);
    border-radius: min(1.333vw, 20px);
	margin-left: min(0.333vw, 5px);
	font-size: min(0.933vw, 14px);
	display: inline-block;
	}
#news .newsDetail #contHead .date {
	margin-top:  min(0.667vw, 10px) ;
	text-align: left;
	}

#news .newsDetail .unit {
	margin-bottom: 80px;
	}
#news .newsDetail h3 {
font-size: min(1.467vw, 22px);
    font-weight: bold;
    border-bottom: double 5px #ffdc3b;
    padding-bottom: min(0.667vw, 10px) ;
    margin-bottom: min(2vw, 30px);
	}


#news .newsDetail .img {
	margin: min(2.667vw, 40px) auto;
	text-align: center;
	}
#news .newsDetail img {
	max-width: 960px;
	width: inherit;
	}
#news .newsDetail .img figcaption {
		font-size:min(0.933vw, 14px);
	margin-top:  min(0.667vw, 10px) ;
	}

#news .newsDetail .txt {
	font-size:min(1.333vw, 20px);	
	font-weight: 400;
	}
#news .newsDetail .txt p {
	margin: min(2vw, 30px) auto;
	}
#news .newsDetail .txt li {
	margin-bottom:  min(0.667vw, 10px) ;
	position: relative;
	padding-left: min(1.333vw, 20px);
	}

#news .newsDetail .txt li:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 10px;
    background: #F8AB93;
    margin: auto;
}
#news .newsDetail .txt a {
	color: #0b7bca;
	}

#news .newsDetail .linkList {
	border-top: 1px solid #DFDFDF;
	border-bottom: 1px solid #DFDFDF;
	padding: min(2vw, 30px) 0;
	margin-top: min(4vw, 60px);
	}

#news .newsDetail .linkList ul {
	display: flex;
	flex-direction: column;
	gap:  min(0.667vw, 10px) ;
}
#news .newsDetail .linkList ul li {
	display: flex;
	align-items: center;
	}
#news .newsDetail .linkList ul li:before {
	content: "";
	background-color: #ADADAD;
	width: 6px;
	height: 6px;
	border-radius: 6px;
	display: inline-block;
	margin-right: 10px;
	}
#news .newsDetail .linkList a {
	color: #0b7bca;
	}
#news .newsDetail .linkList a img {
	width: min(1.333vw, 20px);
	}
#news .col2 {
	display: flex;
	gap:0 min(2.667vw, 40px);
	}

#news .col2 aside {
	margin-top: min(2vw, 30px) ;
	width: min(13.333vw, 200px);
	font-size:min(1.333vw, 20px);
	box-shadow: 0px 0px 15px -5px #bababa;
	border-radius: 20px;
	padding: min(2vw, 30px) ;
	height: fit-content;
	}
#news .col2 aside ul li {
	margin-bottom: min(0.667vw, 10px);
	position: relative;
	padding-left: min(1.333vw, 20px);
	}
#news .col2 aside ul li:last-child{
	margin-bottom: 0;
	}
#news .col2 aside ul li:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 8px;
    height: 8px;
	border-radius: 10px;
    background: #F8AB93;
    margin: auto;
}
#news .col2 aside ul li .current {
	color:#F45C2E;
    font-weight: bold;
	}

/*------------- about -------------*/

#about #btmContWrap:before {
    content: "ABOUT";   
}
#about #btmContWrap .inner {
	padding:0 min(3.333vw, 50px) /*min(10vw, 150px)*/ ;
}

#about #btmContWrap #contHead {
	padding-bottom: min(4.667vw, 70px);
	}
#about #btmContWrap ul {
    border-top: 1px solid #929292;	
	}
#about #btmContWrap li {
    display: flex;
    align-items: center;
    font-size: min(1.333vw, 20px);
    padding: min(2vw, 30px) 0;
    border-bottom: 1px solid #929292;
    position: relative;
}
#about #btmContWrap li .ttl {
    width: min(15.333vw, 230px);
}
#about #btmContWrap li:last-child {
	border: none;
	}

#about .message {
	width: 80%;
	margin: 0 auto min(4.667vw, 70px) auto;
	overflow: hidden;
}
#about .message .kame {
	width: 20%;
	float: right;
	}
#about .message .kame img {
	border-radius: 0.521vw;
	}
#about .message .txt {
	font-size: min(1.042vw, 24px);
	line-height: 2.5;
	position: relative;
	}
#about .message .txt figure {
	width: 15%;
	position: absolute;
	right: 0;
	bottom: 0;
	}
#about .message .company {
	margin-top: min(1.042vw, 20px);
}
#about .message .name {
    font-weight: bold;
	font-size: min(1.042vw, 20px);
}
#about .message .name span {
	font-size: min(0.833vw, 16px);
	font-weight: normal;
	margin-right: min(0.521vw, 10px);
	}


/*------------- contact -------------*/

#contact #btmContWrap:before {
    content: "CONTACT";   
}
#contact #btmContWrap .inner {
	max-width:1060px;
	padding-bottom: min(10vw, 150px);
	}
#contact #btmContWrap #contHead {
	padding-bottom: min(1.333vw, 20px);
	}

#contact #btmContWrap .contactCat {
	    font-size: min(1.333vw, 20px);
	text-align: center;
}
#contact #btmContWrap .contactCat label {
	margin-right: min(1.333vw, 20px);
	}
#contact #btmContWrap .contactCat label input {
	margin-right: min(0.333vw, 5px);
	}

#contact #btmContWrap ul {
    border-top: 1px solid #929292;	
	margin: min(5.333vw, 80px) 0;
	}
#contact #btmContWrap li {
    display: flex;
    align-items: center;
    font-size: min(1.333vw, 20px);
    padding: min(2vw, 30px) 0;
    border-bottom: 1px solid #929292;
    position: relative;
}
#contact #btmContWrap li .ttl {
    width:min(16.667vw, 250px);
	font-size: min(1.2vw, 18px);
}
#contact #btmContWrap li .ttl span {
	font-size: min(0.933vw, 14px);
	color: #fff;
	background-color: #F45C2E;
	padding: min(0.133vw, 2px) min(0.333vw, 5px);
	border-radius: min(0.333vw, 5px);
	margin-left: min(0.333vw, 5px);
}
#contact #btmContWrap li .cont input {
	border: 1px solid #ccc;
	width: min(46.667vw, 700px);
	padding: min(0.667vw, 10px);
}

#contact #btmContWrap li .cont.address input {
	width: min(6.667vw, 100px);
}
#contact #btmContWrap li .cont textarea {
	border: 1px solid #ccc;
	width: min(46.667vw, 700px);
	padding: min(0.667vw, 10px);
	height: min(11.333vw, 170px);
}

#contact .submit {
	display: flex;
	gap:min(2vw, 30px);
	justify-content: center;
}
#contact .submit .btn a {
	width: min(22.667vw, 340px);
	height: min(4vw, 60px);
	line-height:  min(4vw, 60px);
	background-color: #1aa950;
	font-size: min(1.333vw, 20px);
	color: #fff;
	border-radius:0.26vw;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	}
#contact .submit .btn a:before {
	display: inline-block;
	content: "";
	background-size: cover;
	background-image: url(../img/ico_mail.svg);
	width: min(1.933vw, 29px);
	height: min(1.933vw, 29px);
	margin-right: min(1.000vw, 15px);
}   

#contact .submit .reset a {
	width: min(22.667vw, 340px);
	height: min(4vw, 60px);
	line-height:  min(4vw, 60px);
	background-color: #AFAFAF;
	font-size: min(1.333vw, 20px);
	color: #fff;
	border-radius:0.26vw;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	}

/*lesson*/

#lesson #btmContWrap:before {
    content: "LESSON";
}
#lesson #btmContWrap .teacherWrap {
	background-color: #ffdc3b;
	padding: min(8vw, 120px) 0 min(6.667vw, 100px);
}
#lesson .teacherHead {
    margin-bottom: min(4vw, 60px);
	text-align: center;
}

#lesson .teacherHead h2 {
    font-size: min(3.333vw, 50px);
    font-family: var(--font-line-seed);
    font-weight: bold;   
    color: #F45C2E;
    height: auto;
}  


#lesson .teacherList {
	display: flex;
	flex-wrap: wrap;
	width: min(71vw, 1065px);
	justify-content: center;
	margin: 0 auto;
	gap:min(5.333vw, 80px) min(2.667vw, 40px);
	}

#lesson .teacherList li {
	width: min(21.667vw, 325px);
	text-align: center;
	position: relative;
	}

#lesson .teacherList li img {
	border-radius: min(0.667vw, 10px);
	width: min(21.667vw, 325px);
    height:min(26.667vw, 400px);
    object-fit: cover;
	}
#lesson .teacherList li .cat {
    font-size:min(1.2vw, 18px);
    background-color: #f45c2e;
    color: #fff;
    position: absolute;
    left:-10px;
    top:min(1.667vw, 25px);
    padding:min(0.667vw, 10px);
    border-radius: min(0.333vw, 5px);
    line-height: 1;
}

#lesson .teacherList li .name {
    font-family: var(--font-zenmaru);
	margin-top: min(1.333vw, 20px);
	}
#lesson .teacherList li .name dt {
	font-size: min(1.467vw, 22px);
}
#lesson .teacherList li .name dd {
	font-size: min(1.067vw, 16px);
}

#lesson #btmContWrap .scheduleWrap {
	padding: min(8vw, 120px) 0 min(6.667vw, 100px);
}
#lesson .scheduleHead {
    margin-bottom: min(4vw, 60px);
	text-align: center;
}

#lesson .scheduleHead h2 {
    font-size: min(3.333vw, 50px);
    font-family: var(--font-line-seed);
    font-weight: bold;   
    color: #F45C2E;
    height: auto;
}  

#lesson .scheduleHead .txt {
     font-family: var(--font-zenmaru); 
    font-size: min(1.333vw, 20px);
    margin: min(2vw, 30px) 0;
	line-height: 2;
}

#lesson .scheduleHead .note {
    font-size: min(0.933vw, 14px);
    margin-top:min(1.333vw, 20px);
	color:#8C8C8C;}

#lesson .scheduleWrap .plan,#lesson .scheduleWrap .otherPlan {
	display: flex;
	flex-wrap: wrap;
	gap:min(2.6vw, 40px);
	}

#lesson .scheduleWrap .plan .cont,#lesson .scheduleWrap .otherPlan .cont {
	width: min(44.7vw, 690px);
	border: 1px solid #D9D9D9;
	border-radius: min(0.667vw, 10px);
	padding: min(3.333vw, 50px);
	}

#lesson .scheduleWrap .plan .cont h3,#lesson .scheduleWrap .otherPlan .cont h3 {
	color: #F45C2E;
	font-size: min(2.4vw, 36px);
	font-weight: 900;
	display: flex;
	align-items: center;
	line-height: 1;
	}
#lesson .scheduleWrap .plan .cont h3 .cat {
	color: #000;
	font-size: min(0.933vw, 14px);
	background-color: #FFDC3B;
	padding:min(0.333vw, 5px) min(1vw, 15px);
	line-height: 1;
	border-radius:min(3.333vw, 50px);
	font-weight: bold;
	margin-left: min(1vw, 15px);
	}
#lesson .scheduleWrap .plan .cont h3 .num {
	background-color: #F45C2E;
	color: #fff;
	font-size: min(1.333vw, 20px);
	width: min(2.667vw, 40px);
	height: min(2.667vw, 40px);
	border-radius:min(1.333vw, 20px);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: min(0.667vw, 10px);
	}


#lesson .scheduleWrap .plan .cont .txt ,#lesson .scheduleWrap .otherPlan .cont .txt {
		border-top: 1px solid #D9D9D9;
		border-bottom: 1px solid #D9D9D9;
	padding: min(1.333vw, 20px) 0;
	margin: min(1.333vw, 20px) 0;
	}

#lesson .scheduleWrap .plan .cont .price,#lesson .scheduleWrap .otherPlan .cont .price {
	background-color: #FFFAE0;
	border-radius: min(0.667vw, 10px);
	margin-bottom: min(1vw, 15px);
	padding:  min(1vw, 15px);
	display: flex;
	justify-content: flex-end;
	font-size: min(1.333vw, 20px);
	align-items: baseline;
	line-height: 1;
	}
#lesson .scheduleWrap .plan .cont .price dt,#lesson .scheduleWrap .otherPlan .cont .price dt {
	font-weight: normal;
	margin-right: min(0.667vw, 10px);
	}
#lesson .scheduleWrap .plan .cont .price dt span,#lesson .scheduleWrap .otherPlan .cont .price dt {
	font-weight: bold;
	}
#lesson .scheduleWrap .plan .cont .price dd span,#lesson .scheduleWrap .otherPlan .cont .price dd span {
	color: #F45C2E;
	font-weight: bold;
	font-size: min(2.4vw, 36px);
	}
#lesson .scheduleWrap .plan .cont .note {
	text-align: right;
	font-size: min(0.933vw, 14px);
    color: #8C8C8C;
	}
#lesson .scheduleWrap .plan div.note {
	text-align: right;
	font-size: min(0.933vw, 14px);
    color: #FF3131;
	width: 100%;
	margin-bottom: min(5.333vw, 80px);
	}
#lesson .scheduleWrap .otherPlan .cont .price dd span.note {
	font-size: min(0.933vw, 14px);
    color: #8C8C8C;
	font-weight: normal;
	}


#lesson #btmContWrap .faqWrap {
	background-color: #F9F9F9;
	padding: min(8vw, 120px) 0 min(6.667vw, 100px);
}
#lesson .faqHead {
    margin-bottom: min(4vw, 60px);
	text-align: center;
}

#lesson .faqHead h2 {
    font-size: min(3.333vw, 50px);
    font-family: var(--font-line-seed);
    font-weight: bold;   
    color: #F45C2E;
    height: auto;
} 

#lesson .faqHead .txt {
    font-family: var(--font-zenmaru);
    font-size: min(1.333vw, 20px);
    margin: min(2vw, 30px) 0;
    line-height: 2;
}
#lesson #btmContWrap .faqWrap ul li {
		margin-bottom: min(1.333vw, 20px);
}
#lesson #btmContWrap .faqWrap ul li .q {
	border-radius: min(0.667vw, 10px);
	border: 1px solid #D9D9D9;
	background-color: #fff;
	line-height: 1;
	padding: min(0.667vw, 10px);
	display: flex;
	font-size: min(1.467vw, 22px);
	font-weight: bold;
	align-items: center;
	position: relative;
	cursor: pointer;
	}

#lesson #btmContWrap .faqWrap ul li .q:after {
    content: '';
    background-image: url(../img/faq_arrw.svg);
    display: inline-block;
    background-size: contain;
    width: min(1.667vw, 25px);
    height: min(1vw, 15px);
    position: absolute;
    right: min(1.333vw, 20px);
}
#lesson #btmContWrap .faqWrap ul li .q span ,#lesson #btmContWrap .faqWrap ul li .a span {
	background-color: #F45C2E;
	color: #fff;
	font-size: min(1.333vw, 20px);
	width: min(3.333vw, 50px);
	height: min(3.333vw, 50px);
	border-radius:min(1.667vw, 25px);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: min(0.667vw, 10px);
	flex-shrink: 0;
	font-weight: 900;
	}
#lesson #btmContWrap .faqWrap ul li .a span {
	background-color: #FFD40C;	
	}

#lesson #btmContWrap .faqWrap ul li .a .wrap {
	padding: min(1.333vw, 20px);
	display: flex;
	align-items: center;
	}

#lesson #btmContWrap .faqWrap ul li .a {
  display: none;
  overflow: hidden;
}

#lesson #btmContWrap .faqWrap ul li .q:after {
  transition: transform 0.3s ease;
}
#lesson #btmContWrap .faqWrap ul li.open .q:after {
  transform: rotate(180deg);
}


#lesson #btmContWrap .teacherDetail {
	display: flex;
	    padding: 0 min(3.333vw, 50px) min(8vw, 120px) min(3.333vw, 50px);
    max-width: 1520px;
    margin: 0 auto;
}
#lesson #btmContWrap .teacherDetail .lBox {
	width: min(26.667vw, 400px);
	margin-right: min(4.667vw, 70px);
	}

#lesson #btmContWrap .teacherDetail .lBox img {
	width: min(26.667vw, 400px);
	height: auto;
	border-radius: min(0.667vw, 10px);
	object-fit: cover;
	}

#lesson #btmContWrap .teacherDetail .rBox h3 {
	font-size: min(3.2vw, 48px);
	font-family: var(--font-zenmaru);
    font-weight: bold;
	margin-bottom:min(2.667vw, 40px);
	}
#lesson #btmContWrap .teacherDetail .rBox h3 span {
	font-size: min(1.6vw, 24px);
	}
#lesson #btmContWrap .teacherDetail .rBox .lessonCont {
	margin-bottom: min(5.333vw, 80px);
	}
#lesson #btmContWrap .teacherDetail .rBox .lessonCont h4 {
	color: #000;
    font-size: min(1.333vw, 20px);
    background-color: #FFDC3B;
    padding: min(0.333vw, 5px) min(1vw, 15px);
    line-height: 1;
    border-radius: min(3.333vw, 50px);
    font-weight: bold;
	display: inline-block;
	margin-bottom: min(1.333vw, 20px);
	}
#lesson #btmContWrap .teacherDetail .rBox .lessonCont .txt {
		font-size: min(3.2vw, 48px);
	font-family: var(--font-zenmaru);
	font-size: min(1.333vw, 20px);
	}

#lesson #btmContWrap .teacherDetail .rBox .loopCont li {
	margin-bottom: min(4vw, 60px);
	}
#lesson #btmContWrap .teacherDetail .rBox .loopCont h4 {
	font-size: min(2vw, 30px);
	border-bottom: 1px dotted #F45C2E;
	color: #F45C2E;
	font-weight: bold;
	margin-bottom:min(1.333vw, 20px); 
}
#lesson #btmContWrap .teacherDetail .rBox .loopCont .txt {
	font-size: min(1.2vw, 18px);
	}
#lesson #btmContWrap .teacherDetail .rBox .loopCont .txt p {
	margin-bottom:min(2vw, 30px);
	}
#lesson #btmContWrap .teacherDetail .rBox .teacherVoice {
	background-color: #FFFAE0;
	padding: min(2vw, 30px);
	border-radius: min(0.667vw, 10px);
	}

#lesson #btmContWrap .teacherDetail .rBox .teacherVoice h4 {
	display: flex;
	align-items: center;
	color: #F45C2E;
	font-size: min(1.333vw, 20px);
	font-weight: bold;
	margin-bottom:min(1.333vw, 20px); 
	}
#lesson #btmContWrap .teacherDetail .rBox .teacherVoice h4 span.name {
	font-size: min(2vw, 30px);
	margin-right: min(0.667vw, 10px);
}
#lesson #btmContWrap .teacherDetail .rBox .teacherVoice figcaption {
	display: flex;
	align-items: baseline;
	}
#lesson #btmContWrap .teacherDetail .rBox .teacherVoice h4 figure img {
	width: min(5.333vw, 80px);
	height: min(5.333vw, 80px);
	object-fit: cover;
	border-radius: min(2.667vw, 40px);
	margin-right: min(0.667vw, 10px);	
	}
#lesson #btmContWrap .teacherDetail .rBox .teacherVoice .txt {
	font-size: min(3.2vw, 48px);
	font-family: var(--font-zenmaru);
	font-size: min(1.333vw, 20px);
	}
