@charset "utf-8";
/* CSS Document */

#wrap {
    width: 100%;
    position: relative;
}

.sp {
    display: none !important;
}

@media screen and (max-width: 767px) {
    .pc {
        display: none !important;
    }
    .sp {
        display: block !important;
    }
}

/* 左サイドコンテンツ */
#left-wrap {
    position: fixed;
    width:240px;
    height: 100%;
    background-image: url("../images/left-wrap-bg.png");
    background-size: cover;
    z-index: 10;
}
.human-logo {
    position: absolute;
    right:40px;
    top:40px;
    width: 16%;
    max-width: 200px;
    z-index: 11;
}
.tokyo-logo {
    position: absolute;
    top:70px;
    left:70px;
    width: 444px;
    z-index: 11;
}
#left-wrap .siryou-seikyu {
    position: fixed;
    top: 230px;
    left: 50px;
    /* background:rgba(233,174,254,0.5); */
    border-radius: 50%;
    width: 112px; /* 直径 */
	height: 112px;
}
#left-wrap .siryou-seikyu .box{
  /* animation: animName 10s linear infinite; */
  width:112px;
  height:112px;
}

@keyframes animName {
 0%{
    transform: rotate(0deg);
   }
100%{
    transform: rotate(360deg);
   }
}

/* スマホ用 */
@media screen and (max-width: 767px) {
    #left-wrap {
        width:100%;
        height: 68px;
        background-image: url("../images/left-wrap-bg-sp.png");
        z-index: 10;
    }
    .human-logo {
        position: fixed;
        right: auto;
        top: 18px;
        left: 18px;
        width: 100px;
    }
    .tokyo-logo {
        width: 55%;
        left: 22px;
        top: 56px;
    }
    #left-wrap .siryou-seikyu {
        left: auto;
        right: 0;
        top:0;
        transform: scale(0.8, 0.8);
    }
}


/* 右サイドコンテンツ */
#right-wrap {
    width: 100%;
    box-sizing: border-box;
    padding-left: 240px;
}
#right-wrap .main-v {
    position: relative;
    width: 100%;
}
#right-wrap #inner {
    padding: 0 60px;
}
#right-wrap #inner2 {
    padding: 0 60px;
}
#right-wrap #inner .intro {
    background-image: url(../images/intro-bg.png);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 110px 0;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    font-size: 24px;
    line-height: 1.8;
    font-weight: bold;
}

/* スマホ用 */
@media screen and (max-width: 767px) {
    #right-wrap {
        padding-left: 0;
        padding-top: 68px;
    }
    #right-wrap #inner {
        padding: 0 ;
    }
    #right-wrap #inner2 {
        padding: 0 ;
    }
    #right-wrap #inner .intro {
        padding: 50px 0;
        font-size: 15px;
    }
}

/* asmiさん */
#right-wrap #inner .asmi-conts {
    position: relative;
    margin: 60px auto 120px;
    width: 100%;
}
#right-wrap #inner .asmi-conts .img {
    position: absolute;
    left: 0;
    top: -70px;
    width: 33.65%;
}
#right-wrap #inner .asmi-conts .txt {
    background-image: url("../images/asmi-bg.png");
    width: 73.07%;
    margin-left: auto;
    padding: 20px;
}
#right-wrap #inner .asmi-conts .txt .inner {
    background:rgba(255,255,255,0.72);
    padding: 20px 20px 20px 10%;
    font-size: 14px;
}
#right-wrap #inner .asmi-conts .txt .inner .title {
    font-weight: bold;
    margin-bottom: 20px;
}
#right-wrap #inner .asmi-conts .txt .inner .sns-list {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
#right-wrap #inner .asmi-conts .txt .inner .sns-list >span,#right-wrap #inner .asmi-conts .txt .inner .sns-list>a {
    margin: 0 10px;
}
#right-wrap #inner .asmi-conts .txt .inner .sns-list >a:last-child {
    margin-right: 0;
}
#right-wrap #inner .asmi-conts .txt .inner .sns-list img {
    width: 100%;
}
#right-wrap #inner .asmi-conts .txt .inner .sns-list span {
    width: 82px;
}
#right-wrap #inner .asmi-conts .txt .inner .sns-list a {
    width: 30px;
}

/* スマホ用 */
@media screen and (max-width: 767px) {
    #right-wrap #inner .asmi-conts {
        margin: -40px auto 60px;
    }
    #right-wrap #inner .asmi-conts .img {
        top: 47px;
        width: 88%;
        left: 5%;
        position: relative;
    }
    #right-wrap #inner .asmi-conts .txt {
        width: 100%;
    }
    #right-wrap #inner .asmi-conts .txt .inner {
        padding: 40px 20px 20px;
    }
    #right-wrap #inner .asmi-conts .txt .inner .sns-list {
        margin-top: 15px;
    }
}

/* 5つの音楽のカタチ */
#right-wrap #inner .conts01 {
    position: relative;
    margin: 60px auto;
    width: 100%;
}
#right-wrap #inner .conts01 .title01{
    max-width: 670px;
    margin: 0 auto 50px;
}
#right-wrap #inner .conts01 .menu-list {
    display: flex;
    justify-content: space-between;
}
#right-wrap #inner .conts01 .menu-list >a {
    width: 19.5%;
}
#right-wrap #inner .conts01 .menu-list >a img {
    width: 100%;
}
#right-wrap #inner .conts01 .menu-conts#net-artist {
    background-color: #ffdff9;
}
#right-wrap #inner .conts01 .menu-conts#sound-artist {
    background-color: #f6ccff;
}
#right-wrap #inner .conts01 .menu-conts#singer {
    background-color: #ebcfff;
}
#right-wrap #inner .conts01 .menu-conts#movie-creater {
    background-color: #e1d2ff;
}
#right-wrap #inner .conts01 .menu-conts#vocalo {
    background-color: #daedff;
}
#right-wrap #inner .conts01 .menu-conts {
    width: 100%;
    border-radius: 5px;
    padding: 35px 18px;
    display: flex;
    position: relative;
    justify-content: space-between;
    margin-bottom: 25px;
}
#right-wrap #inner .conts01 .menu-conts:after {
    position: absolute;
    top:20px;
    left: 20px;
    width: 100%;
    height: 100%;
    background-image: url("../images/dot-bg.png");
    background-repeat: repeat;
    content: '';
    display: block;
}
#right-wrap #inner .conts01 .menu-conts>div {
    position: relative;
    z-index: 2;
}
/* 3カラム用
#right-wrap #inner .conts01 .menu-conts>div:nth-child(1) {
    width: 33.5%;
} */
#right-wrap #inner .conts01 .menu-conts>div:nth-child(1) {
    width: 52%;
}
#right-wrap #inner .conts01 .menu-conts>div:nth-child(1) .title {
    border-radius: 5px;
    text-align: center;
    font-weight: bold;
    font-size: 22px;
    padding: 10px 5px;
    box-sizing: border-box;
    color: #fff;
    margin-bottom: 25px;
}
#right-wrap #inner .conts01 .menu-conts#net-artist>div:nth-child(1) .title {
    background-color: #ff8dea;
}
#right-wrap #inner .conts01 .menu-conts#sound-artist>div:nth-child(1) .title {
    background-color: #eb90ff;
}
#right-wrap #inner .conts01 .menu-conts#singer>div:nth-child(1) .title {
    background-color: #d498ff;
}
#right-wrap #inner .conts01 .menu-conts#movie-creater>div:nth-child(1) .title {
    background-color: #ba97ff;
}
#right-wrap #inner .conts01 .menu-conts#vocalo>div:nth-child(1) .title {
    background-color: #82c2ff;
}
#right-wrap #inner .conts01 .menu-conts>div:nth-child(1) p {
    padding: 0 15px;
    margin-bottom: 20px;
}
#right-wrap #inner .conts01 .menu-conts>div:nth-child(1) p.bold {
    font-weight: bold;
}
/* 3カラム用
#right-wrap #inner .conts01 .menu-conts>div:nth-child(2) {
    width: 24.8%;
} */
#right-wrap #inner .conts01 .menu-conts>div:nth-child(2) {
    width: 45%;
}
#right-wrap #inner .conts01 .menu-conts>div:nth-child(2) img {
    width:100%;
}

#right-wrap #inner .conts01 .menu-conts>div:nth-child(3) {
    width: 39.8%;
}
#right-wrap #inner .conts01 .menu-conts>div:nth-child(3) img {
    width:100%;
}

/* スマホ用 */
@media screen and (max-width: 767px) {
    #right-wrap #inner .conts01 .title01 {
        margin-bottom: 20px;
    }
    #right-wrap #inner .conts01 .menu-list {
        flex-wrap: wrap;
        justify-content: center;
    }
    #right-wrap #inner .conts01 .menu-list >a {
        width: 33%;
        margin-right: 0.5%;
    }
    #right-wrap #inner .conts01 .menu-list >a:nth-child(3) {
        margin-right: 0;
    }
    #right-wrap #inner .conts01 .menu-conts {
        display: block;
    }
    #right-wrap #inner .conts01 .menu-conts>div:nth-child(1) {
        width: 100%;
        margin-bottom: 10px;
    }
    #right-wrap #inner .conts01 .menu-conts>div:nth-child(2) {
        width: 100%;
        margin-bottom: 20px;
    }
    #right-wrap #inner .conts01 .menu-conts>div:nth-child(3) {
        width: 100%;
    }
    #right-wrap #inner .conts01 .menu-conts:after {
        top: 5px;
        left: 5px;
    }
    #right-wrap #inner .conts01 .menu-conts>div:nth-child(1) .title {
        font-size: 18px;
    }
}

/* アーティスト活動の流れ */
#right-wrap #inner .conts02 {
    position: relative;
    margin: 60px auto 120px;
    width: 100%;
}
#right-wrap #inner .conts02 .title02{
    max-width: 486px;
    margin: 0 auto 80px;
}
#right-wrap #inner .conts02 .flow-conts {
    background-image: url("../images/flow-bg.png");
    background-size: cover;
    background-position: bottom;
    position: relative;
    width: 100%;
    padding: 50px 30px 30px;
    box-sizing: border-box;
}
#right-wrap #inner .conts02 .flow-conts .title-inner {
    display: flex;
    position: absolute;
    top:-25px;
    width: 100%;
    left: 0;
}
#right-wrap #inner .conts02 .flow-conts .title-inner>div {
    width: 50%;
    position: relative;
}
#right-wrap #inner .conts02 .flow-conts .title-inner>div:nth-child(1) .title {
    background: #58cfff;
}
#right-wrap #inner .conts02 .flow-conts .title-inner>div:nth-child(2) .title {
    background: #f27dff;
}
#right-wrap #inner .conts02 .flow-conts .title-inner>div .title {
    position: absolute;
    left: 50%;
    width: 160px;
    border-radius: 5px;
    line-height: 50px;
    text-align: center;
    font-size: 20px;
    color: #fff;
    font-weight: bold;
    margin-left: -80px;
}
#right-wrap #inner .conts02 .flow-conts .list {
    background:rgba(255,255,255,0.79);
    border-radius: 5px;
    display: flex;
    position: relative;
    align-items: center;
}
#right-wrap #inner .conts02 .flow-conts .arrow {
    width: 38px;
    margin: 5px auto;
    padding-left: 10px;
}
#right-wrap #inner .conts02 .flow-conts .list>div:nth-child(1),#right-wrap #inner .conts02 .flow-conts .list>div:nth-child(3) {
    width: 42.46%;
    text-align: center;
    padding: 25px 5px;
}
#right-wrap #inner .conts02 .flow-conts .list>div:nth-child(2) {
    padding: 25px 5px;
    text-align: center;
    width: 15.8%;
}
#right-wrap #inner .conts02 .flow-conts .list>div:nth-child(2) img {
    width: 64px;
}
#right-wrap #inner .conts02 .flow-conts .list>div:nth-child(3) .icon {
    width: 21px;
    vertical-align: bottom;
    margin-left: 5px;
}
#right-wrap #inner .conts02 .flow-conts .list>div:nth-child(3) .icon2 {
    width: 21px;
    vertical-align: -3px;
    margin-left: 0;
}
#right-wrap #inner .conts02 .flow-conts .list>div:nth-child(3) .icon3 {
    width: 21px;
    vertical-align: -9px;
    margin-left: 0;
}
#right-wrap #inner .conts02 .flow-conts .list>div.stage03 {
    font-weight: bold;
    font-size: 16px;
}
#right-wrap #inner .conts02 .flow-conts .list.stage04 {
    display: block;
    padding: 25px 5px;
    font-size: 20px;
    text-align: center;
    font-weight: bold;
}
#right-wrap #inner .conts02 .flow-conts .list.stage04 .stage04-title {
    position: relative;
}
#right-wrap #inner .conts02 .flow-conts .list.stage04 .stage04-title:before,#right-wrap #inner .conts02 .flow-conts .list.stage04 .stage04-title:after {
    content: '';
    display: inline-block;
    position: absolute;
    width: 18px;
    height: 20px;
    top:50%;
    margin-top: -10px;
    background-size: 100% auto;
}
#right-wrap #inner .conts02 .flow-conts .list.stage04 .stage04-title:before {
    background-image: url("../images/icon-indees.png");
    left: -25px;
}
#right-wrap #inner .conts02 .flow-conts .list.stage04 .stage04-title:after {
    background-image: url("../images/icon-indees02.png");
    right: -25px;
}
#right-wrap #inner .conts02 .flow-conts .list.stage05 {
    display: block;
    padding: 5px 5px;
}
#right-wrap #inner .conts02 .flow-conts .list.stage05 .stage05-title {
    max-width: 400px;
    margin: 0 auto;
}
#right-wrap #inner .conts02 .flow-conts .list .point01 {
    position: absolute;
    left: 17%;
    top: 23px;
    width: 19.27%;
    z-index: 2;
}
#right-wrap #inner .conts02 .flow-conts .list .point02 {
    position: absolute;
    left: 17%;
    top: 3px;
    width: 24.22%;
    z-index: 2;
}
#right-wrap #inner .conts02 .flow-conts .list .point03 {
    position: absolute;
    right: -8%;
    top: -92px;
    width: 16.39%;
    z-index: 2;
}
#right-wrap #inner .conts02 .flow-bottom-title {
    max-width: 653px;
    margin: 35px auto 60px;
}


/* スマホ用 */
@media screen and (max-width: 767px) {
    #right-wrap #inner .conts02 .flow-conts {
        padding: 30px 5%;
    }
    #right-wrap #inner .conts02 .flow-conts .title-inner>div .title {
        left: 50%;
        width: 120px;
        line-height: 36px;
        font-size: 14px;
        margin-left: -60px;
    }
    #right-wrap #inner .conts02 .flow-conts .list {
        font-size: 12px;
    }
    #right-wrap #inner .conts02 .flow-conts .list>div.stage03 {
        font-size: 13px;
    }
    #right-wrap #inner .conts02 .flow-conts .list.stage04 {
        font-size: 18px;
    }
    #right-wrap #inner .conts02 .flow-conts .list.stage05 .stage05-title {
        padding: 5px 5%;
        max-width: 100%;
        width: 100%;
    }
    #right-wrap #inner .conts02 .flow-conts .list .point01 {
        left: 7%;
        top: 19px;
        width: 31.27%;
    }
    #right-wrap #inner .conts02 .flow-conts .list .point02 {
        left: 4%;
        top: 32px;
        width: 38.22%;
    }
    #right-wrap #inner .conts02 .flow-conts .list .point03 {
        right: 65%;
        top: 52px;
        width: 30.39%;
    }
}

/* 3年間のスケジュール */
#right-wrap #inner .conts03 {
    position: relative;
    margin: 60px auto;
    width: 100%;
}
#right-wrap #inner .conts03 .title03{
    max-width: 486px;
    margin: 0 auto 60px;
}

/* 音楽業界への就職も可能 */
#right-wrap #inner .conts04 {
    position: relative;
    margin: 60px auto;
    width: 100%;
}
#right-wrap #inner .conts04 .title04{
    text-align: center;
    font-size: 25px;
    font-weight: bold;
    margin: 0 auto 60px;
}
#right-wrap #inner .conts04 .title04 span {
    border-bottom:5px double;
}
/* スマホ用 */
@media screen and (max-width: 767px) {
    #right-wrap #inner .conts04 .title04{
        font-size: 19px;
        margin-bottom: 30px;
    }
}
/* 音楽業界で活躍する卒業生 */
#right-wrap #inner .conts05 {
    position: relative;
    margin: 60px auto;
    width: 100%;
}
#right-wrap #inner .conts05 .title05{
    max-width: 403px;
    margin: 0 auto 60px;
}
#right-wrap #inner .conts05 .conts05-list {
    display: flex;
    flex-wrap: wrap;
}
#right-wrap #inner .conts05 .conts05-list>a{
    width: 32.6%;
    margin-right:1.1%; 
    position: relative;
    margin-bottom: 5px;
}
#right-wrap #inner .conts05 .conts05-list>a:after {
    content: '＋';
    display: inline-block;
    top: 2px;
    right: 10px;
    position: absolute;
    font-size: 20px;
    color: #333;
}
#right-wrap #inner .conts05 .conts05-list>a:nth-of-type(3n) {
    margin-right:0; 
}

.course_ob{
	width:100%;
	margin:0 auto;
}
.course_ob h5{
	height:40px;
	background:#000;
	color:#FFF;
	padding-left:20px;
	font-size:18px;
	font-weight:bold;
	text-align:left;
	line-height:2.0em;
}
.course_ob .ob-flex {
    display: flex;
    justify-content: space-between;
}
p.obphoto{
	max-width:240px;
	padding-top:10px;
}
div.ob_txt{
	max-width:690px;
	padding:10px 0 0 20px;
	text-align:left;
}
div.ob_txt p{
	font-size:16px;
	font-weight:bold;
	margin-bottom:15px;
}
div.ob_txt dt{
	font-size:12px;
	font-weight:bold;
	margin-bottom:15px;
}
div.ob_txt dd{font-size:12px;}


.modal-open {
 overflow: visible!important;
 position: static!important;
}
/* スマホ用 */
@media screen and (max-width: 767px) {
    #right-wrap #inner .conts05 .title05{
        width: 90%;
    }
    #right-wrap #inner .conts05 .conts05-list {
        justify-content: space-between;
    }
    #right-wrap #inner .conts05 .conts05-list>a{
        width: 49%;
        margin-right:0; 
    }
    #right-wrap #inner .conts05 .conts05-list>a:nth-of-type(3n) {
        margin-right:0; 
    }
    .course_ob .ob-flex {
        display: block;
    }
    p.obphoto{
        width: 100%;
        max-width: 100%;
    }
    div.ob_txt{
        width: 100%;
        padding:10px 0;
    }
}

/* お問い合わせエリア */
#right-wrap .contact-area {
    background-image: url("../images/contact-bg.png");
    background-size: cover;
    width: 100%;
    padding: 70px 10%;
    display: flex;
    align-items: center;
    justify-content: space-around;
}
#right-wrap .contact-area>a {
    width: 394px;
    border-radius: 40px;
    font-size: 22px;
    line-height: 80px;
    height: 80px;
    font-weight: bold;
    padding-left: 20px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    position: relative;
    margin: 0 10px;
}
#right-wrap .contact-area>a:before {
    content: '';
    display: inline-block;
    width: 26px;
    height: 31px;
    background-size: 100% auto;
    background-repeat: no-repeat;
    margin-right: 10px;
    position: relative;
    top: 6px;
}
#right-wrap .contact-area>a.siryou {
    background-color: #dfaefe;
    box-shadow: 2px 2px 0px 0 rgb(184, 118, 225);
}
#right-wrap .contact-area>a.line {
    background-color: #4df388;
    box-shadow: 2px 2px 0px 0 rgb(44, 214, 104);
}
#right-wrap .contact-area>a.siryou:before {
    background-image: url("../images/siryou.png");
}
#right-wrap .contact-area>a.line:before {
    background-image: url("../images/line.png");
    width: 31px;
}
/* INTROのお問い合わせエリア */
#right-wrap .contact-area.-intro {
    background-image: none;
    width: 100%;
    padding: 0 0 10px;
    display: flex;
    align-items: center;
    justify-content: space-around;
}
.cv-wrap {
    width: 100%;
    margin: auto;
    max-width: 1000px;
}
.cv-note {
    width: fit-content;
    position: relative;
    padding: 0.5em 1em;
    margin: -2em 0 2em 6%;
    background: #e6f4ff;
    color: #56adff;
    font-weight: bold;
    border-radius: 5px;
}
.cv-note:after {
    position: absolute;
    content: '';
    top: 100%;
    left: 30px;
    border: 15px solid transparent;
    border-top: 15px solid #e6f4ff;
    width: 0;
    height: 0;
}
.cv-note p {
    font-size: 16px;
}
.cv-note p span {
    font-size: 20px;
}
/* スマホ用 */
@media screen and (max-width: 767px) {
    #right-wrap .contact-area {
        padding: 30px 10%;
        display: block;
    }
    #right-wrap .contact-area>a {
        width: 100%;
        font-size: 16px;
        display: block;
        line-height: 56px;
        height: 56px;
        margin: 0 auto;
    }
    #right-wrap .contact-area>a.siryou {
        margin-bottom: 20px;
    }
    #right-wrap .contact-area>a:before {
        top:10px;
    }

    #right-wrap .contact-area.-intro {
        display: block;
        padding: 10px 10%;
    }
    .cv-note {
        margin: -1em 0 0.5em 62%;
    }
    .cv-note p {
        font-size: 14px;
    }
    .cv-note p span {
        font-size: 18px;
    }
}
/* ネットで活躍するための3つのスキル */
#right-wrap .conts06 {
    background-color: #fffbd8;
    padding: 90px 60px;
}
#right-wrap .conts06-bottom-title {
    max-width: 516px;
    margin: 60px auto 120px;
}
/* スマホ用 */
@media screen and (max-width: 767px) {
    #right-wrap .conts06 {
        padding: 30px 5%;
    }
    #right-wrap .conts06-bottom-title {
        margin: 30px auto 30px;
    }
}

/* 基礎カリキュラム */
#right-wrap #inner2 .conts07 {
    width: 100%;
    margin: 0 auto;
}
#right-wrap #inner2 .conts07 .title {
    background: linear-gradient(to right, #f3b9ff, #d7adff,#add7ff);
    width: 100%;
    padding: 30px 20px;
    box-sizing: border-box;
    color: #fff;
    text-align: center;
    font-weight: bold;
    margin-bottom: 50px;
    font-size: 24px;
}
#right-wrap #inner2 .conts07 .conts07-list {
    display: flex;
    justify-content: space-between;
}
#right-wrap #inner2 .conts07 .conts07-list>div {
    width: 32%;
}
#right-wrap #inner2 .conts07 .conts07-list>div p {
    padding: 25px;
}
@media screen and (max-width: 767px) {
    #right-wrap #inner2 .conts07 .title {
        font-size: 18px;
        padding: 10px 10px;
    }
    #right-wrap #inner2 .conts07 .title span {
        font-size: 16px;
    }
    #right-wrap .conts06-bottom-title {
        margin: 30px auto 30px;
    }
    #right-wrap #inner2 .conts07 .conts07-list { 
        flex-wrap: wrap;
        width: 90%;
        margin: 0 auto;
    }
    #right-wrap #inner2 .conts07 .conts07-list>div {
        width: 100%;
    }
}


/* 学生の声 */
#right-wrap #inner2 .voice {
    border: 2px solid #c21500;
    border-image: linear-gradient(to bottom, #f3b9ff, #d7adff,#add7ff);
    border-image-slice: 1;
    border-radius: 5px;
    padding: 35px 0 0;
    display: flex;
    align-items: center;
    position: relative;
    margin-bottom: 120px;
}
#right-wrap #inner2 .voice .img {
    width:220px;
    margin: 0 35px 0 5px;
    position: relative;
}
#right-wrap #inner2 .voice .hukidashi {
    width: 204px;
    top: -10px;
    left: -10px;
    position: absolute;
}
#right-wrap #inner2 .voice .txt {
    flex: 1;
    padding-right: 20px;
}
#right-wrap #inner2 .voice .txt .title {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 20px;
}
#right-wrap #inner2 .voice .txt p {
    margin-bottom: 20px;
}
#right-wrap #inner2 .voice .name {
    display: none;
}
/* スマホ */
@media screen and (max-width: 767px) {
    #right-wrap #inner2 .voice {
        flex-wrap: wrap;
        width: 94%;
        margin: 50px auto;
    }
    #right-wrap #inner2 .voice .img {
        width: 30%;
        margin-right: 5%;
        margin-left: 2%
    }
    #right-wrap #inner2 .voice .name {
        width: 63%;
        font-weight: bold;
        display: block;
        text-align: center;
    }
    #right-wrap #inner2 .voice .txt {
        width: 90%;
        flex: auto;
        margin: 10px 5%;
    }
    #right-wrap #inner2 .voice .txt .title {
        display: none;
    }
    #right-wrap #inner2 .voice .hukidashi {
        width: 176px;
        top: -16px;
        left: -10px;
    }
}

/* 講師陣 */
#right-wrap #inner2 .conts08 {
    width: 100%;
    margin: 0 auto 120px;
}
#right-wrap #inner2 .conts08 .title08{
    max-width: 450px;
    margin: 0 auto 60px;
}
#right-wrap #inner2 .conts08 .conts08-list {
    display: flex;
}
#right-wrap #inner2 .conts08 .conts08-list>div{
    width: 32.6%;
    margin-right:1.1%; 
    position: relative;
    margin-bottom: 5px;
    flex-direction: column ;
    display: flex;
}
#right-wrap #inner2 .conts08 .conts08-list>div:nth-of-type(3n) {
    margin-right:0; 
}
#right-wrap #inner2 .conts08 .conts08-list>div .name {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    padding: 20px;
}
#right-wrap #inner2 .conts08 .conts08-list>div .profile {
    padding: 20px;
    border: 2px solid #c21500;
    border-image: linear-gradient(to bottom, #f3b9ff, #d7adff,#add7ff);
    border-image-slice: 1;
    flex-grow: 1;
}
#right-wrap #inner2 .conts08 .conts08-list>div .profile .title {
    text-align: center;
    margin-bottom: 20px;
}
#right-wrap #inner2 .conts08 .conts08-list>div .profile .comment {
    text-align: center;
    margin-bottom: 20px;
}
/* スマホ */
@media screen and (max-width: 767px) {
    #right-wrap #inner2 .conts08 {
        margin-bottom: 60px;
    }
    #right-wrap #inner2 .conts08 .title08{
        width:90%;
    }
    #right-wrap #inner2 .conts08 .conts08-list {
        width: 90%;
        margin: 0 auto 30px;
        flex-wrap: wrap;
    }
    #right-wrap #inner2 .conts08 .conts08-list>div{
        width: 100%;
        margin-bottom: 30px;
    }
}
/* ティックトック */
#right-wrap .conts09 {
    width: 100%;
    margin: 120px auto 120px;
    padding: 0 60px;
    display: flex;
    align-items: center;
}
#right-wrap .conts09>div.img {
    width: 360px;
    margin-right:40px;
}
#right-wrap .conts09>div.txt {
    flex: 1;
}
#right-wrap .conts09>div.txt .title {
    font-weight: bold;
    font-size: 18px;
}
#right-wrap .conts09>div.txt .title img {
    vertical-align: middle;
    width: 35px;
    margin-left: 10px;
}
#right-wrap .conts09>div.txt p {
    margin-bottom: 20px;
}
/* スマホ */
@media screen and (max-width: 767px) {
    #right-wrap .conts09 {
        width: 90%;
        margin: 40px auto 60px;
        padding: 0 0;
        display: block;
    }
    #right-wrap .conts09>div.img {
        width: 100%;
        margin-bottom: 10px;
    }
    #right-wrap .conts09>div.txt {
        flex: auto;
        width: 100%;
        text-align: center;
        margin-bottom: 15px;
    }
    #right-wrap .conts09>div.txt .tick-icon {
        display: inline-block;
    }
    #right-wrap .conts09>div.txt p {
        text-align: left;
    }
}
/* よくある質問 */
#right-wrap .conts10 {
    width: 100%;
    margin: 120px auto 60px;
    padding: 120px 60px;
    background-color: #fff0d8;
}
#right-wrap .conts10 .title10{
    font-weight: bold;
    font-size: 32px;
    text-align: center;
    margin: 0 auto 60px;
}
#right-wrap .conts10 .title10 img {
    width: 86px;
}
#right-wrap .conts10 .q-title {
    background: linear-gradient(to right, #f3b9ff, #d7adff,#add7ff);
    width: 100%;
    padding: 20px 20px 20px 80px;
    box-sizing: border-box;
    color: #fff;
    margin-bottom: 25px;
    font-size: 16px;
    position: relative;
}
#right-wrap .conts10 .q-title:before {
    position: absolute;
    content: '';
    display: inline-block;
    background-image: url("../images/q-title.png");
    width: 21px;
    height: 42px;
    background-size: 100% auto;
    background-repeat: no-repeat;
    left: 28px;
    top: 23px;
}
#right-wrap .conts10 .a-conts {
    width: 100%;
    padding: 20px 20px 20px 80px;
    box-sizing: border-box;
    margin-bottom: 25px;
    font-size: 14px;
    position: relative;
}
#right-wrap .conts10 .a-conts:before {
    position: absolute;
    content: '';
    display: inline-block;
    background-image: url("../images/a-title.png");
    width: 21px;
    height: 42px;
    background-size: 100% auto;
    background-repeat: no-repeat;
    left: 28px;
    top: 50%;
    margin-top: -21px;
}
/* スマホ */
@media screen and (max-width: 767px) {
    #right-wrap .conts10 {
        margin: 40px auto;
        padding: 30px 5%;
    }
    #right-wrap .conts10 .title10{
        font-size: 22px;
        margin-bottom: 30px;
    }
    #right-wrap .conts10 .q-title {
        font-size: 14px;
        padding: 15px 20px 15px 50px;
    }
    #right-wrap .conts10 .a-conts { 
        padding: 15px 20px 15px 50px;
    }
    #right-wrap .conts10 .q-title:before {
        left: 15px;
        top:17px;
    }
    #right-wrap .conts10 .a-conts:before {
        left: 15px;
    }
}

/* 校舎一覧 */
#right-wrap .conts11 {
    width: 100%;
    margin: 60px auto 0;
    padding: 60px 60px;
}
#right-wrap .conts11 .inner {
    width: 100%;
    padding: 60px 60px;
    background: linear-gradient(45deg, #fae3ff, #eae5fe,#deefff);
}
#right-wrap .conts11 .title11{
    font-weight: bold;
    font-size: 32px;
    text-align: center;
    margin: 0 auto 60px;
}
/*タブ切り替え全体のスタイル*/
#right-wrap .conts11 .tabs {
  margin-top: 50px;
  padding-bottom: 40px;
    justify-content: center;
    width: 100%;
    flex-wrap: wrap;
    display: flex;
  margin: 0 auto;}

/*タブのスタイル*/
#right-wrap .conts11 .tab_item {
  width: 110px;
  height: 50px;
  background-color: #fff;
  line-height: 50px;
  font-size: 16px;
  text-align: center;
  display: block;
  font-weight: bold;
  transition: all 0.2s ease;
    margin: 0 10px;
}
#right-wrap .conts11 .tab_item:hover {
  opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
#right-wrap .conts11 .tab_content {
  display: none;
  padding: 40px 0 0;
  clear: both;
  overflow: hidden;
    width: 100%;
}


/*選択されているタブのコンテンツのみを表示*/
#tokyo:checked ~ #tokyo_content,
#osaka:checked ~ #osaka_content,
#hiroshima:checked ~ #hiroshima_content,
#naha:checked ~ #naha_content{
  display: block;
}

/*選択されているタブのスタイルを変える*/
#tokyo:checked + .tab_item,#osaka:checked + .tab_item,#hiroshima:checked + .tab_item,#naha:checked + .tab_item {
  background-color: #f4c0ff;
}

#right-wrap .conts11 .tab_content .contents {
    display: flex;
    background: none;
}
#right-wrap .conts11 .tab_content .contents>div:first-child {
    width: 46%;
    margin-right: 2%;
}
#right-wrap .conts11 .tab_content .contents>div:last-child {
    width: 52%;
}
#right-wrap .conts11 .tab_content .contents>div:first-child .title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
}
#right-wrap .conts11 .tab_content .contents>div:first-child .list {
    display: flex;
    margin-bottom: 20px;
    align-items: center;
}
#right-wrap .conts11 .tab_content .contents>div:first-child .list .list-title {
    background-color: #6d6d6d;
    color: #fff;
    font-size: 16px;
    text-align: center;
    width: 122px;
    height: 50px;
    line-height: 50px;
    border-radius: 5px;
    margin-right: 15px;
}
#right-wrap .conts11 .tab_content .contents>div:first-child .list .list-conts {
    flex: 1;
}
#right-wrap .conts11 .tab_content .contents>div:first-child .btn-list {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
#right-wrap .conts11 .tab_content .contents>div:first-child .btn-list>a {
    width: 48%;
    background-color: #000;
    border-radius: 5px;
    height: 50px;
    line-height: 50px;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
}
/* Google Mapを囲う要素 */
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

/* スマホ */
@media screen and (max-width: 767px) {
    #right-wrap .conts11 {
        width: 100%;
        padding: 0;
        margin: 30px auto;
    }
    #right-wrap .conts11 .title11 {
        font-size: 22px;
        margin-bottom: 30px;
    }
    #right-wrap .conts11 .inner {
        width:100%;
        padding: 30px 5%;
    }
    #right-wrap .conts11 .tab_item {
        width: 22%;
        margin: 0 1%;
        font-size: 14px;
        height: 36px;
        line-height: 36px;
    }
    #right-wrap .conts11 .tab_content .contents {
        display: block;
    }
    #right-wrap .conts11 .tab_content .contents>div:first-child {
        width: 100%;
        margin: 0 auto 20px;
    }
    #right-wrap .conts11 .tab_content .contents>div:last-child {
        width: 100%;
        margin: 0 auto;
    }
    #right-wrap .conts11 .tab_content .contents>div:first-child .list .list-title {
        font-size: 14px;
        height: 38px;
        line-height: 38px;
        width: 100px;
    }
}

/* copyright */
.copyright {
    border-top: 1px solid #b5b5b5;
    padding: 10px;
    text-align: center;
    margin-top: 60px;
    color: #7f7f7f;
    font-size: 12px;
}

/* 20240124 追加 */
.fv_bnr {
    position: absolute;
    bottom: 10px;
}

.fv_bnr a:hover {
    opacity: 0.8;
}

.fv_bnr img {
    width: 350px;
}

@media screen and (max-width: 767px) {
    .fv_bnr {
        bottom: -20%;
    }

    .fv_bnr img {
        width: 45vw;
    }
}


/* 20241101 */
@media screen and (max-width: 767px) {
    #right-wrap #inner .conts01 .menu-list {
        justify-content: center;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    #right-wrap #inner .conts01 .menu-list >a {
        width: 100%;
    }
}