/*パンくずリスト*/
.breadcrumbs {
    padding: 80px 24px;
    font-size: 14px;
    text-align: right;
    color: #fff;
    text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
}
/*
.interview-post-page .breadcrumbs {
    padding: 630px 30px 0;
}
*/

/*各ページヘッター　img変更*/
.page-title.faq-page{
    background-image: url(../img/faq-page-title.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 386px;
	margin-bottom: 80px;
}
.page-title.recruit-page{
    background-image: url(../img/requirements.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 386px;
	margin-bottom: 80px;
}
.page-title.newgrad-page{
    background-image: url(../img/newgrad-page-title.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 386px;
	margin-bottom: 80px;
}
.page-title.career-page{
    background-image: url(../img/career-page-title.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 386px;
	margin-bottom: 80px;
}
.page-title.part-page{
    background-image: url(../img/part-page-title.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 386px;
	margin-bottom: 80px;
}
.page-title.gallery-page{
    background-image: url(../img/gallery-page-title.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 386px;
	margin-bottom: 80px;
}
.page-title.interview-page{
    background-image: url(../img/interview-page-title.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 386px;
	margin-bottom: 80px;
}
.page-title.message-page{
    background-image: url(../img/message-page-title.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 386px;
	margin-bottom: 80px;
}
.page-title.data-page{
    background-image: url(../img/data-page-title.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 386px;
	margin-bottom: 80px;
}

/*各ページヘッター　共通*/

/* カーテンのスタイル（初期状態でテキストを覆う） */
.page-title-ja::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
background-color: #79033d; /* カーテンの色（自由に変更可能） */
    transform: scaleX(1);
    transform-origin: right; /* 左から開く */
    transition: transform 0.5s ease-in-out;
}

/* カーテンが左から右に開く */
.page-title-ja.active::before {
    transform: scaleX(0);
  background-color: #79033d;
}
/* カーテンのスタイル（初期状態でテキストを覆う） */
.page-title-en::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
background-color: #79033d; /* カーテンの色（自由に変更可能） */
    transform: scaleX(1);
    transform-origin: right; /* 左から開く */
    transition: transform 0.5s ease-in-out;
}

/* カーテンが左から右に開く */
.page-title-en.active::before {
    transform: scaleX(0);
  background-color: #79033d;
}



.page-title-ja{
	position: absolute;
	font-size: 42px;
	color: #2B2729;
	background-color: #fff;
	font-weight: bold;
	top: 64%;
    left: 10%;
    padding: 0 8px;
    overflow: hidden;
    white-space: nowrap;
    text-align: center;
    display: inline-block;
}
.page-title-en{
	position: absolute;
    font-size: 80px;
    color: #2B2729;
    background-color: #fff;
    font-weight: bold;
    letter-spacing: 0.08em;
	bottom: -45px;
    left: 10%;
    line-height: 1;
    padding: 0 8px;
}
.page-sub{
	margin-bottom: 45px;
}
.page-sub p{
	font-size: 18px;
}






/*下層ページ用　見出し*/
.a-title-bg{
    background-color: #333;
    display: inline-block;
    width: auto;
    height: 66px;
    padding: 0 60px;
    margin-bottom: 60px;
    clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%);
}
.a-title-bg h3 {
    font-size: 32px;
    color: #fff;
    text-align: center;
    line-height: 66px;
    letter-spacing: 0.1em;
}


@media screen and (max-width:768px) {
.page-title.message-page, 
.page-title.faq-page, 
.page-title.interview-page, 
.page-title.data-page, 
.page-title.gallery-page,
.page-title.recruit-page, 
.page-title.career-page, 
.page-title.newgrad-page, 
.page-title.part-page {
   height: 200px;
/*    margin-top: 60px;*/
    margin-bottom: 45px;
}
/*各ページヘッター　共通*/
.page-title-ja {
    font-size: 18px;

}
.page-title-en {
    font-size: 42px;
    bottom: -10px;
    letter-spacing: 0;
}

.page-sub p {
    font-size: 16px;
}




/*下層ページ用　見出し*/
    .a-title-bg {
        width: auto;
        height: auto;
        margin-bottom: 30px;
        padding: 15px 20px;
    }
.a-title-bg h3 {
        font-size: 18px;
        line-height: 1;
    }

}




/*---------------
メッセージページ
---------------*/
.wide {
    max-width: 1120px;
    max-width: 77vw;
    margin: 0 auto;
    padding-bottom: 110px;
}
.message-box {
	padding: 48px 10px;
	box-shadow: 10px 10px 0px #79033d;
	border: 1px solid #333;
    background-image: url(../img/grid-bg.png);
    background-position: center;
    background-repeat: repeat;
    background-size: unset;
    text-align: center;
    position: relative;
}
.ideal {
    margin-bottom: 30px;
}
.mission-vision .item {
    width: 48%;
}
.message-p-box {
    width: 80%;
    margin: 0 auto;
}
.mission-vision.flex {
    justify-content: space-between;
}

.message-page-title h3 {
    font-size: 32px;
    color: #79033d;
    line-height: 1.2;
	text-align: center;
}
.message-page-title h4 {
    font-size: 18px;
	text-align: center;
}
p.txt-rarge {
    font-size: 24px;
    font-weight: bold;
    text-align: left;
    margin-top: 30px;
	position: relative;
}
.txt-rarge::before{
	content: "";
	width: 20px;
	height: 3px;
	background-color: #79033d;
	position: absolute;
    top: 24px;
    left: -28px;
}
.wide p {
    text-align: left;
}
.link-txt {
    text-align: right;
    padding-top: 30px;
}
.link-txt.gakuen-hp {
    width: 80%;
    margin: 0 auto;
}
.link-icon{
	font-size: 16px;
	color: #79033d;
	border-bottom: 1px solid #79033d;
	position: relative;
}
.link-icon::after{
    content: "";
    background-image: url(../img/link-icon.png);
    background-position: center;
    background-size: contain;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 2px;
    right: -25px;
}
.message-p-box .flex {
    justify-content: space-between;
    align-items: center;
}

.message-img {
    padding-bottom: 110px;
}


#r-message{
	padding-top: 45px;
}
.r-message .flex{
	align-items: center;
	padding: 60px 0;
}

.flex .m-wrap-l{
	width: 40%;
}

.flex .m-wrap-r{
	width: 60%;
	height: 100%;
}

.txt-bg {
	    background-color: rgb(121, 3, 61);
    background: linear-gradient(270deg, rgba(121, 3, 61, 1) 0%, rgba(156, 17, 85, 1) 100%);
    padding: 80px 0;
    color: #ffffff;
	position: relative;
}
.txt-bg::before{
	content: "";
    background-color: #9C1155;
    width: 80px;
    height: 100%;
    position: absolute;
    top: 0;
    left: -79px;
    z-index: -10;
}
.txt-bg-02 {
	    background-color: rgb(121, 3, 61);
    background: linear-gradient(270deg, rgba(121, 3, 61, 1) 0%, rgba(156, 17, 85, 1) 100%);
    padding: 80px 0;
    color: #ffffff;
	position: relative;
}
.txt-bg-02::before{
	content: "";
    background-color: rgba(121, 3, 61, 1);
    width: 80px;
    height: 100%;
    position: absolute;
    top: 0;
    right: -79px;
    z-index: -10;
}
.txt-bg h4, 
.txt-bg-02 h4{
    font-size: 32px;
    padding-bottom: 20px;
    text-align: left;
}
.txt-bg p, 
.txt-bg-02 p{
	font-size: 18px;
}

@media screen and (max-width:768px) {
    .page-title.message-page{
	background-position: right;
    }
    .message-page .page-title-ja {
        font-size: 18px;
        top: 67%;
    }
.message-box {
    padding: 48px 15px;
	}
.message-nav ul.faq-nav {
    display: block;
}
.message-nav ul.faq-nav li {
        margin-right: 0;
        margin: 15px 0;
    }
    .message-page.inner {
        max-width: 550px;
        width: 100%;
    }
    .message-page-title.wide {
        max-width: 550px;
        width: 85%;
        padding-top: 45px;
    }
.mission-vision.flex {
    display: block;
    justify-content: space-between;
}
.mission-vision .item {
    width: 100%;
    margin-top: 30px;
}	
.message-page-title h3 {
    font-size: 24px;
}
p.txt-rarge {
	font-size: 21px;
    margin-left: 24px;
}
.date-box-wrap.message-box.item,
.date-box-wrap.message-box{
    padding: 2em;
}
	.message-p-box{
		width: 100%;
	}
.message-p-box .flex {
    display: block;
	}

.link-txt, 
.link-txt.gakuen-hp{
    display: inline-block;
    width: auto;
}
.link-txt.sp-only {
    text-align: right;
}
.txt-rarge::before {
    top: 18px;
}
.wide {
    padding-bottom: 72px;
}
.message-img {
    padding-bottom: 0;
}

.r-message .flex {
  display: block;
  padding: 30px 0 60px;
  }
.flex.sp-col-2.message-sp-last {
    padding-bottom: 80px;
	}
	
.flex .m-wrap-l {
    width: 90%;
}
.flex .m-wrap-r {
    width: 100%;
    padding: 30px;
}
.txt-bg::before {
    content: "";
    background-color: rgb(121, 3, 61);
    background: linear-gradient(270deg, rgba(121, 3, 61, 1) 0%, rgba(156, 17, 85, 1) 100%);
    width: 100%;
    height: 45px;
    position: absolute;
    top: -44px;
    left: 0;
    z-index: -10;
}
.txt-bg h4, .txt-bg-02 h4 {
    font-size: 28px;
}
.txt-bg p, .txt-bg-02 p {
    font-size: 16px;
}
.flex.sp-col-2 {
    display: flex
;
    flex-direction: column-reverse;
}
.sp-col-2 .m-wrap-l {
    margin: 0 0 0 auto;
}
.txt-bg-02::before {
    content: "";
    background-color: rgb(121, 3, 61);
    background: linear-gradient(270deg, rgba(121, 3, 61, 1) 0%, rgba(156, 17, 85, 1) 100%);
    width: 100%;
    height: 45px;
    position: absolute;
    top: -44px;
    right: 0;
    z-index: -10;
}
.message-page-title .date-box-wrap::before {
    display: none;
}

}


/*-------------
 FAQ
----------*/
.faq-nav-wrap{
	margin: 0 auto;
	padding: 110px 0 30px 0;
}

ul.faq-nav li {
	display: flex;
	margin-right: 40px;
	position: relative;
	width: 100%;
}
ul.faq-nav li:last-child {
	margin-right: 0;
}

ul.faq-nav {
  display: flex;
	justify-content: space-evenly;
    margin: 0 auto 30px auto;
	width: 95%;
}

ul.faq-nav li a {
    display: flex;
    align-items: center;
    padding: 0 1em;
    height: 60px;
    width: 100%;
    border: 1px solid #000;
    font-weight: bold;
    box-shadow: 5px 5px 0px #79033d;
}


ul.faq-nav li::after{
	content: "";
	height: 10px;
  width: 10px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  transform: rotate(135deg);
	margin: 0 10px;
	position: absolute;
	right: 8px;
	top: 40%;
}


/*アコーディオンメニュー ここから*/
/* 必須 */
.accordion-content {
  display: none;
}

/* 装飾用 */

.accordion-header {
background: rgb(121,3,61);
background: linear-gradient(225deg, rgba(121,3,61,1) 0%, rgba(156,17,85,1) 100%);
  color: #fff;
  font-size: 18px;
  line-height: 1.8;
  padding: 16px 45px 16px 45px;
  margin: 24px 0 0;
  transition: background .3s ease;
  cursor: pointer;
  position: relative;
}

.accordion-header::before,
.accordion-header::after{
  position:absolute;
  content:'';
  top:1px;
  right:20px;
  bottom:0;
  width:12px;
  height:2px;
  margin:auto;
  background:#fff;
}
.accordion-header::after{
  transform:rotate(-90deg);
  transition:transform 0.3s;
}
.accordion-header.active::after{
	transform:rotate(0deg);
}

.accordion-content {
background-color: #FFF;
    border: 1px solid #333;
    padding: 30px 30px 30px 45px;
    font-size: 18px;
    line-height: 1.8;
}

.accordion-header p,
.accordion-content p{
margin-left: 30px;
    line-height: 1.6;
    position: relative;
}

.accordion-content p a {
    border-bottom: 1px solid #79033D;
	color: #79033D;
}

.accordion-header p::before{
position: absolute;
    content: "Q";
    top: 3px;
    line-height: 1;
    left: -45px;
    color: #fff;
    font-size: 21px;
}
.faq-link{
	border-bottom: 1px solid #333;
}


.accordion-content p::before{
    position: absolute;
    content: "A";
    font-weight: bold;
    top: 0;
    left: -45px;
    color: #79033d;
    font-size: 21px;
}

/* hover */
.accordion-header:hover {
background: rgb(121,3,61);
background: linear-gradient(225deg, rgba(121,3,61,1) 0%, rgba(156,17,85,1) 100%);
}

/*アコーディオンメニュー ここまで*/

div#other {
    padding-bottom: 80px;
}

.accordion-wrap{
	padding-top: 80px;
}

.accordion h4 {
    font-size: 28px;
    color: #333;
    letter-spacing: 0.1em;
    border-left: 4px double rgba(179, 34, 79, 1);
    padding-left: .5em;
	margin-top: 45px;
}

.accordion.inner{
	max-width: 980px;
	margin-bottom: 60px;
}


section.inner.section-p-top{
	    padding-top: 60px;
}

@media screen and (max-width:768px) {
/*------------
FAQ
-----------*/
.faq-nav-wrap {
    padding: 0;
}
.accordion.inner {
     padding: 0;
    margin-bottom: 15px;
}
.accordion-wrap {
    padding-top: 45px;
}
ul.faq-nav {
    width: 100%;
}
ul.faq-nav li a {
        height: 48px;
        font-size: 14px;
        padding: 0 1rem;
        line-height: 1.1;
}
    ul.faq-nav li {
        margin-right: 0;
        margin: 5px;
    }
ul.faq-nav {
    margin: 0 auto;
}
.accordion-content {
    padding: 16px 20px;
    font-size: 16px;
}
.accordion h4 {
    font-size: 21px;
    margin-top: 30px;
}
.accordion-header p, .accordion-content p {
    margin: 0 8px 0 25px;
    position: relative;
}

.accordion-header p::before {
    position: absolute;
    content: "Q";
    top: 3px;
    line-height: 1;
    left: -30px;
    color: #fff;
    font-size: 18px;
}
.accordion-content p::before {
    position: absolute;
    content: "A";
    font-weight: bold;
    top: 0;
    left: -30px;
    color: #79033d;
    font-size: 18px;
}
	
	
}

/*--------------
募集要項一覧ページ
----------------*/
.recruit-col-wrrap {
  padding-bottom: 110px;
}

.wp-block-column img {
  width: 100%;
  height: auto;
  display: block;
}

.recruit-txt-wrap {
    background-color: #fff;
    box-shadow: 10px 10px 0px #79033d;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    height: 200px;
    padding: 30px 45px;
    margin: auto 0;
    margin-left: -45px;
    position: relative;
}

.recruit-title {
    font-size: 24px;
    color: #FFF;
    background-color: #333;
    display: inline-block;
    padding: 8px 24px;
    position: absolute;
    top: -30px;
}
p.open-guideline-contents {
    font-size: 18px;
}
.guideline-contents {
  font-size: 21px;
}
p.guideline-link {
    text-align: right;
}
.guideline-link a {
  font-weight: bold;
  text-decoration: none;
  color: #79033d;
}

@media screen and (max-width: 998px) {
.flex.recruit-txt-wrap {
    display: block;
}
}

@media screen and (max-width: 768px) {
  .recruit-col-wrrap {
    flex-direction: column;
  }
p.open-guideline-contents {
    font-size: 16px;
}
	

}


/*--------------
募集要項詳細ページ
----------------*/
.page-id-15, 
.page-id-18, 
.page-id-20,
.page-id-22{
    background-color: #E7E7E7;
}
.page-id-18 #cta{
    margin-top: 0;
    padding-top: 110px;
}
.page-id-22 #cta {
    margin-top: 0;
    padding-top: 110px;
}
.page-id-20 #cta {
    margin-top: 0;
    padding-top: 110px;
}
td.td-border-01{
	position: relative;
}

td.td-border-01::before{
	content: "";
	background-color: #79033D;
	display: block;
	position: absolute;
	width: 3px;
	height: 70%;
	left: 0;
	top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
td.td-border-02{
	position: relative;
}

td.td-border-02::before{
	content: "";
	background-color: #C21269;
	display: block;
	position: absolute;
	width: 3px;
	height: 70%;
	left: 0;
	top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.flow-wrap {
    padding-top: 60px;
    margin-top: 110px;
    background-color: #fff;
}


/*table*/

.recruit-inner{
	max-width: 1000px;
	width: 90%;
	margin: 0 auto;
	padding-top: 60px;
}
.recruit-inner.flow-pc.flow-sp {
    padding: 0;
}
    .table_wrap__item {
-webkit-box-align: center;
    -ms-flex-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	align-items: flex-start;
    padding: 30px;
    position: relative;
    background-color: #fff;
    margin: 20px 0;
    border-left: 5px solid #79033D;
}

.table_wrap__title {
	font-size: 21px;
    width: 165px;
    font-weight: bold;
    letter-spacing: 0.03em;
}
    .table_wrap__separation {
        height: calc(100% - 30px);
        left: 205px;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 2px;
    }
.table_wrap__separation {
    background: #79033D;
    display: block;
}
.table_wrap__text_area {
        line-height: 1.68;
        padding-left: 37.5px;
    letter-spacing: 0.05em;
    }

.table_wrap__text {
  font-size: 16px;
  line-height: 1.8;
}

.table_wrap__text {
    display: block;
	white-space: pre-wrap;
}

.sc2 .table_wrap__item {
	border-left: 5px solid #C21269;
}

.sc2 .table_wrap__separation {
    background: #C21269;
}
.gakuen-logo {
    width: 250px;
    margin: 0 0 0 auto;
}
.over-flow {
    padding-bottom: 110px;
}


@media screen and (max-width:768px) {

.recruit-inner {
    max-width: 550px;
    width: 85%;
    padding-top: 10px;
}

    .table_wrap__item {
    display: block;
	padding: 16px;
}

.table_wrap__separation {
    position: initial;
        height: 1px;
        margin-top: 14px;
        width: 100%;
}
.table_wrap__title {
    font-size: 16px;
    padding: 0 10px;
    width: 100%;
}
.table_wrap__text_area {
        line-height: 1.69;
        margin-top: 14px;
        padding: 0 10px;
}
.gakuen-logo {
    width: 160px;
}
.flow-wrap {
    padding: 45px 0 60px 0;
    margin-top: 45px;
    background-color: #fff;
}
.over-flow {
    width: 850px;
}
.flow-sp {
    width: 90%;
    margin: 0 0 0 auto;
    overflow: hidden;
    overflow-x: scroll;
}

}







/*------------
ギャラリー
-----------*/
/*背景色*/
.page-id-93{
    background-color: #E7E7E7;
}

.section-wrap{
	padding: 80px 0 110px 0;
}

/*バーチャルキャンパス見学*/
.v-campus-wrap {
    background-color: #fff;
    padding: 60px 45px;
    border: 1px solid #333;
	margin-bottom: 80px;
}
ul.faq-nav.gallery-na{
	margin: 0;
}

ul.faq-nav.gallery-nav li {
    margin: 14px 0;
	position: relative;
	width: 30%;
}
ul.faq-nav.gallery-nav li::after {
    content: "";
    height: 10px;
    width: 10px;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    transform: rotate(45deg);
    margin: 0 10px;
    position: absolute;
    right: 8px;
    top: 40%;
}
/*ギャラリーsplide*/

/* 選択されていないサムネイルは薄くする */
.gallery-page-wrap .splide__slide {
  opacity: .6;
}
/* 選択されているサムネイルだけ透過しない */
.gallery-page-wrap .splide__slide.is-active {
  opacity: 1;
}
/* 画像サイズ調整 */
.gallery-page-wrap .splide__slide img {
  height: auto;
  width: 100%;
}
/* スライダーの幅 */
.wrapper {
  margin-inline: auto;
  max-width: 780px;
  width: 100%;
    margin-bottom: 80px;
}

#main-carousel .splide__arrow--next, 
#campus-main-carousel .splide__arrow--next{
    right: -10%;
}
#main-carousel .splide__arrow--prev, 
#campus-main-carousel .splide__arrow--prev{
    left: -10%;
}
#main-carousel .splide__arrow--prev, 
#main-carousel .splide__arrow--next, 
#campus-main-carousel .splide__arrow--prev, 
#campus-main-carousel .splide__arrow--next{
    width: 65px;
    height: 65px;
    margin-top: 40px;
    transition: all 0.5s 0s ease;
    background-color: #79033D;
    border-radius: 50%;
    place-content: center;
    cursor: pointer;
    opacity: 1;
}
#main-carousel .splide__arrow:disabled, 
#campus-main-carousel .splide__arrow:disabled{
    pointer-events: none;
    opacity: 0.5;
}
#main-carousel .splide__arrow svg, 
#campus-main-carousel .splide__arrow svg{
    fill: #fff;
}

/* 見出し キャプション */
.g-txtbox .ttl {
    padding: 4px 29px 7px;
    color: #fff;
    position: relative;
    top: -17px;
    font-size: 2rem;
    font-weight: 700;
    background: #79033d;
    letter-spacing: 0.05em;
}
.g-txtbox {
    padding-bottom: 16px;
    background-color: #fff;
	margin-bottom: 16px;
}
.g-txtbox p {
    font-weight: bold;
    padding: 0 30px;
    letter-spacing: 0.05em;
}

.g-video-wrap{
	text-align: center;
}




@media screen and (max-width:768px) {
/*------------
ギャラリー
-----------*/
.gallery-page-wrap .inner{
        max-width: 550px;
        width: 90%;
}
.wrapper {
    margin-bottom: 60px;
}
.section-wrap {
    padding: 20px 0 80px 0;
}

#main-carousel .splide__arrow--next, 
#campus-main-carousel .splide__arrow--next{
    right: -4%;
	top: 25%;
}
#main-carousel .splide__arrow--prev, 
#campus-main-carousel .splide__arrow--prev{
    left: -4%;
	top: 25%;
}
#main-carousel .splide__arrow--prev, 
#main-carousel .splide__arrow--next, 
#campus-main-carousel .splide__arrow--prev, 
#campus-main-carousel .splide__arrow--next{
    width: 38px;
    height: 38px;
    opacity: 1;
}
.g-txtbox {
    margin-bottom: 8px;
}
.g-txtbox .ttl {
    padding: 4px 16px 7px;
    font-size: 1.6rem;
}
.g-txtbox p {
    font-weight: normal;
    padding: 0 16px;
    font-size: 1.4rem;
}

.v-campus-wrap {
    padding: 45px 30px;
    margin-bottom: 60px;
}
ul.faq-nav.gallery-nav {
    display: block;
}
ul.faq-nav.gallery-nav li {
	width: 100%;
}
video.vid_main {
    width: 100%;
    height: auto;
}


}


/*--------------------
	インタビュー一覧
---------------------*/
/*背景色*/
.page-id-95{
    background-color: #F0F0F0;
}
/*------検索エリア------*/

.search-area .search-wrap {
    margin: 0 17px;
    padding: 22px 30px 50px 32px;
    background: rgb(121, 3, 61);
    background: linear-gradient(225deg, rgba(121, 3, 61, 1) 0%, rgba(156, 17, 85, 1) 100%);
}
.search-wrap{
	position: relative;
}
.search-wrap::before{
content: "";
    background-image: url(../img/keyword.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    display: block;
    width: 24vw;
    height: 150px;
    position: absolute;
    top: -79px;
    right: -60px;
}

.search-area .search-box_wrap .list {
    max-width: 957px;
    align-items: center;
}
.search-area .search-box_wrap .item {
    display: flex;
    width: 100%;
        margin-top: 18px;
        padding-top: 18px;
    border-top: 1px solid rgb(255 255 255 / 50%);
}
.search-area .search-box_wrap .item:first-child {
    border: none;
}
.search-area .search-box_wrap .left {
	max-width: 11vw;
    width: 100%;
}
.search-area .search-box_wrap .right {
    margin-left: 128px;
}

.key-title{
	font-size: 18px;
	font-weight: bold;
	color: #fff;
}

.search-area .keyword {
	display: inline-block;
	border-radius: 16px;
	color: #79033d;
	background: #fff;
	transition: .3s ease-in-out;
	padding: 4px 16px;
	font-size: 16px;
	font-weight: bold;
	margin: 8px 8px 8px 0;
}





/*-------検索エリア　ここまで------*/


ul.i-list-wrap {
    padding: 45px 0;
}
ul.i-list-wrap li{
	width: 30%;
}
ul.i-list-wrap.flex{
padding: 45px 0;
    max-width: 1000px;
    width: 90%;
    margin: 0 auto;
    justify-content: flex-start;
    gap: 3.3%;
}
li.i-card-item {
	margin: 45px 0;
    border: 1px solid #333;
    box-shadow: 10px 10px 0px 0px rgba(121, 3, 61, 1);
	transition: 0.5s all;
}

li.i-card-item:hover{
    box-shadow: none;
	transform: translate(10px, 10px);
}




@media screen and (max-width:768px) {



    ul.i-list-wrap.flex {
        display: block;
        width: 80%;
        padding: 0 0 60px;
    }
ul.i-list-wrap li {
    width: 100%;
}


.search-area .search-wrap {
    margin: 0;
    padding: 24px;
}
.key-title {
    font-size: 16px;
    font-weight: bold;
    color: #fff;
}
.search-wrap::before {
    width: 65vw;
    height: 20vw;
    top: -5%;
    right: -5%;
}
.search-area .search-box_wrap .item {
    display: block;
    width: 100%;
}
	.search-area .search-box_wrap .item:first-child{
		margin-top: 0;
		padding-top: 0;
	}
.search-area .search-box_wrap .left {
    width: 100%;
    max-width: none;
}
.search-area .search-box_wrap .right {
    margin-left: 0;
	margin-top: 16px;
}
.search-area .keyword {
        padding: 3px 8px;
        font-size: 1.2rem;
	margin: 6px 8px 6px 0;
}




}



/*------------------
 データで見る
----------------*/


/* --------
タブ フレーム
--------*/

/* タブ全体を囲むコンテナの設定 */
.tab-switch {
    display: flex;
    flex-wrap: wrap;
    max-width: 1100px;
    width: 95%;
    margin: auto;
    justify-content: space-between;
	gap: 0 14px;
	margin-bottom: 110px;
}

/* 各タブボタンの設定 */
.tab-title {
    flex: 1 1 auto;
    order: -1;
    position: relative;
    padding: 24px 1em 12px;
    background-color: #E1E1E1;
    color: #333;
    text-align: center;
    cursor: pointer;
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
/*    border: 2px solid #BCBCBC;*/
	border-bottom: none;
    border-radius: 15px 15px 0 0;
}


.tab-border1::before{
	content: "";
    background-color: #EB7A3B;
    width: 100%;
    height: 16px;
    border-radius: 13px 13px 0 0;
    position: absolute;
    top: 0px;
    left: 0;
}
.tab-border2::before{
	content: "";
    background-color: #4285C3;
    width: 100%;
    height: 16px;
    border-radius: 13px 13px 0 0;
    position: absolute;
    top: 0px;
    left: 0;
}
.tab-border3::before{
	content: "";
    background-color: #C21269;
    width: 100%;
    height: 16px;
    border-radius: 13px 13px 0 0;
    position: absolute;
    top: 0px;
    left: 0;
}

.tab-switch span.title-s {
    font-weight: normal;
}

/* タブのホバーおよび選択時の色 */
.tab-switch label:has(:checked) {
    background-color: #fff;
    border: 2px solid #333;
	border-bottom: none;
}

/* ラジオボタン自体は非表示 */
.tab-switch input {
    display: none;
}

/* タブコンテンツのスタイル */
.tab-switch > div {
    display: none;
    width: 100%;
    padding: 80px;
  border: 2px solid #333;
}

/* 選択されたタブのコンテンツを表示 */
.tab-switch label:has(:checked) + div {
    display: block;
}
.tab-content{
	background-image: url(../img/grid-bg.png);
    background-position: center;
    background-repeat: repeat;
    background-size: unset;
    text-align: center;
}

.data-item img{
	width: 100px;
	text-align: center;
}
.data-item h3{
	font-size: 18px;
	text-align: center;
	line-height: 1.3;
	padding-top: 10px;
}
.data-large{
	font-size: 62px;
	line-height: 1;
	font-weight: bold;
}
span.data-small {
    font-weight: bold;
}
span.d-small-2 {
    display: block;
}
span.data-medium {
    font-size: 24px;
    font-weight: bold;
}
span.m-large{
	font-size: 48px;
	line-height: 2;
}
.data-txt a {
    border-bottom: 1px solid #333;
}

/* --------
タブ 内容
--------*/

h2.data-title{
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	position: relative;
	margin-bottom: 60px;
}
span.data-title-sub {
    display: block;
    font-size: 16px;
    font-weight: normal;
	text-align: right;
}

.underline01::before{
	content: "";
	background-color: #FB6D3A;
	width: 60px;
	height: 5px;
	display: block;
	position: absolute;
    bottom: -10px;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.underline02::before{
	content: "";
	background-color: #4285C3;
	width: 60px;
	height: 5px;
	display: block;
	position: absolute;
    bottom: -10px;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.underline03::before{
	content: "";
	background-color: #C21269;
	width: 60px;
	height: 5px;
	display: block;
	position: absolute;
    bottom: -10px;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.data-item-wrap{
	margin: 20px 0 30px;
}

.data-item{
width: calc(100% / 3 - 40px / 3);
    height: 280px;
    border: 2px solid #333;
    margin-right: 20px;
    background-color: #fff;
	padding: 30px;
}
.data-item:nth-of-type(3n){
	margin-right: 0;
}

/* ----------------
タブ 内容 アコーディオン
----------------*/

.data-txt-wrap {
    width: 100%;
    background-color: #fff;
    border: 2px solid #333;
    padding: 30px;
    min-height: 280px;
	margin-top: 20px;
}
.data-txt-wrap .flex{
    align-items: center;
	height: 100%;
}
.data-contents-01 .work-data.data-txt-wrap{
    box-shadow: 10px 10px 0px 0px rgb(235 122 59);
}
.data-contents-02 .work-data.data-txt-wrap{
    box-shadow: 10px 10px 0px 0px #4285C3;
}
.data-contents-03 .work-data.data-txt-wrap{
    box-shadow: 10px 10px 0px 0px #C21269;
}
.data-txt-icon img {
    width: 120px;
}
.data-txt-icon {
    width: 32%;
}
.data-txt {
    width: 68%;
}
.data-txt div {
    text-align: left;
    font-size: 24px;
}
.data-txt p {
    text-align: left;
}
.data-contents-01 span.caption {
    display: block;
    margin: 16px auto 8px 0;
    width: 140px;
    text-align: center;
    background-color: #EB7A3B;
    color: #fff;
    line-height: 28px;
    padding: 0 8px;
}
.data-contents-02 span.caption {
    display: block;
    margin: 16px auto 8px 0;
    width: 140px;
    text-align: center;
    background-color: #4285C3;
    color: #fff;
    line-height: 28px;
    padding: 0 8px;
}
.data-contents-03 span.caption {
    display: block;
    margin: 16px auto 8px 0;
    width: 140px;
    text-align: center;
    background-color: #C21269;
    color: #fff;
    line-height: 28px;
    padding: 0 8px;
}
.balloon-l, 
.balloon-c, 
.balloon-r{
	position: relative
}
.balloon-l:before {
    content: "";
    position: absolute;
    top: -35px;
    left: 15%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 20px solid #FFF;
    z-index: 2;
}

.balloon-l:after {
content: "";
    position: absolute;
    top: -40px;
    left: 15%;
    margin-left: -17px;
    border: 17px solid transparent;
    border-bottom: 23px solid #333;
    z-index: 1;
}
.balloon-c:before {
    content: "";
    position: absolute;
    top: -35px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 20px solid #FFF;
    z-index: 2;
}

.balloon-c:after {
content: "";
    position: absolute;
    top: -40px;
    left: 50%;
    margin-left: -17px;
    border: 17px solid transparent;
    border-bottom: 23px solid #333;
    z-index: 1;
}
.balloon-r:before {
    content: "";
    position: absolute;
    top: -35px;
    right: 120px;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 20px solid #FFF;
    z-index: 2;
}

.balloon-r:after {
content: "";
    position: absolute;
    top: -40px;
    right: 118px;
    margin-left: -17px;
    border: 17px solid transparent;
    border-bottom: 23px solid #333;
    z-index: 1;
}
    .data-accordion-content {
      display: none;
    }
    .data-accordion-content.active.pc {
      display: block;
    }
    .data-accordion-header {
      cursor: pointer;
    }
.data-accordion-header{
	box-shadow: 5px 5px 0px 0px #0f0007;
	transition: 0.5s all;
}
.data-accordion-header:hover{
	box-shadow: none;
	transform: translate(5px, 5px);
}


.orange-label{
	position: relative;
}

.orange-label::before {
    content: "";
    bottom: 0;
    right: 0;
    border-top: 4.5em solid transparent;
    border-right: 4.5em solid #FB6D3A; /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 100;
}
.orange-label::after {
    content: "click";
    display: block;
    bottom: 5px;
    color: #fff;
    font-weight: bold;
    right: 0px;
    position: absolute;
    z-index: 101;
    margin-right: 5px;
}
.blue-label{
	position: relative;
}

.blue-label::before {
    content: "";
    bottom: 0;
    right: 0;
    border-top: 4.5em solid transparent;
    border-right: 4.5em solid #4285C3; /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 100;
}
.blue-label::after {
    content: "click";
    display: block;
    bottom: 5px;
    color: #fff;
    font-weight: bold;
    right: 0px;
    position: absolute;
    z-index: 101;
    margin-right: 5px;
}
.pink-label{
	position: relative;
}

.pink-label::before {
    content: "";
    bottom: 0;
    right: 0;
    border-top: 4.5em solid transparent;
    border-right: 4.5em solid #C21269; /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 100;
}
.pink-label::after {
    content: "click";
    display: block;
    bottom: 5px;
    color: #fff;
    font-weight: bold;
    right: 0px;
    position: absolute;
    z-index: 101;
    margin-right: 5px;
}
.data-txt-wrap{
	position: relative;
}
.accordion-content_close {
    border: 0;
    background-color: #fff;
	display: flex;
    align-items: center;
    position: absolute;
    top: 2rem;
    right: 2rem;
    color: #545454;
    font-size: 1em;
}
.batsu {
  display: block;
  position: relative;
  width: 25px;
  height: 25px;
    margin-left: 5px;
}
 
.batsu::before, .batsu::after { /* 共通設定 */
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px; /* 棒の幅（太さ） */
  height: 25px; /* 棒の高さ */
  background: #333;
}
 
.batsu::before {
  transform: translate(-50%,-50%) rotate(45deg);
}
 
.batsu::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}






@media screen and (min-width:769px) and ( max-width:1190px) {
	
	span.data-large {
    font-size: 48px;
}
	
	
	
}


@media screen and (max-width:768px) {
.page-id-97 .inner {
    max-width: 550px;
    width: 90%;
}
.tab-switch {
    max-width: 550px;
    width: 100%;
    gap: 0 5px;
	margin-bottom: 90px;
}
.tab-switch > div {
    padding: 20px;
}
label.tab-title {
    width: 30%;
    font-size: 14px;
    padding: 1.5em .2em 1em;
}

.data-item-wrap.flex.sp {
    display: flex;
    gap: 5%;
    margin: 0;
}

.data-item{
    width: 45%;
	height: auto;
    padding: 20px 8px;
    margin-bottom: 20px;
     margin-right: 0;
}
h2.data-title {
    font-size: 21px;
    margin-bottom: 45px;
}
.data-item h3 {
    font-size: 16px;

    padding-top: 10px;
}
span.data-large {
    font-size: 32px;
}
.data-item img {
    width: 60px;
    text-align: center;
}
.data-txt-wrap {
    padding: 0 20px 20px;
	}
.data-txt-wrap .flex {
    display: block;
    width: 100%;
}
.data-txt-icon {
    width: 75px;
    margin: 30px auto 0;
}
.data-txt div {
    text-align: center;
    font-size: 21px;
        margin-top: 10px;
}
.data-txt {
    width: 100%;
}
span.data-medium {
    font-size: 16px;
}
.accordion-content_close {
    top: 1rem;
    right: 1rem;
    font-size: 0.8em;
}
.data-contents-01 span.caption {
    font-size: 14px;
    width: 115px;
    line-height: 1.8;
}


.data-accordion-content.active.pc {
    display: none;
}
    .data-accordion-content.active {
      display: block;
        margin-bottom: 30px;
    }
.orange-label::before {
    content: "";
    bottom: 0;
    right: 0;
    border-top: 3em solid transparent;
    border-right: 3em solid #FB6D3A;
    position: absolute;
    z-index: 100;
}
.orange-label::after {
    content: "click";
    display: block;
    font-size: 11px;
    bottom: 5px;
    color: #fff;
    font-weight: bold;
    right: 0px;
    position: absolute;
    z-index: 101;
    margin-right: 3px;
}
.blue-label::before {
    content: "";
    bottom: 0;
    right: 0;
    border-top: 3em solid transparent;
    border-right: 3em solid #4285C3;
    position: absolute;
    z-index: 100;
}
.blue-label::after {
    content: "click";
    display: block;
    font-size: 11px;
    bottom: 5px;
    color: #fff;
    font-weight: bold;
    right: 0px;
    position: absolute;
    z-index: 101;
    margin-right: 5px;
}
.pink-label::before {
    content: "";
    bottom: 0;
    right: 0;
    border-top: 3em solid transparent;
    border-right: 3em solid #C21269;
    position: absolute;
    z-index: 100;
}
.pink-label::after {
    content: "click";
    display: block;
    font-size: 11px;
    bottom: 5px;
    color: #fff;
    font-weight: bold;
    right: 0px;
    position: absolute;
    z-index: 101;
    margin-right: 5px;
}

}


/*-----------------------
	インタビュー記事ページ
-----------------------*/
.interview-post-page{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 80vh;
}
.staff-title {
    position: absolute;
    color: #2B2729;
    background-color: rgb(255 255 255 / 84%);
    width: 45%;
    top: 50%;
    left: 0;
    padding: 30px 1em 30px 5em;
}
span.small-title-bg {
    background-color: #79033D;
    font-size: 18px;
    color: #fff;
    padding: 1rem;
    position: absolute;
    top: -2rem;
    left: 5em;
    font-weight: bold;
}
p.staff-message {
    font-size: 36px;
    line-height: 1.3;
    margin: 20px 0;
    font-weight: bold;
}
span.staff-keyword {
    border: 1px solid #333;
    padding: 0.3rem 0.5rem;
    margin-right: 24px;
}
span.staff-keyword:last-child{
	margin-right: 0;
}
.interview-sec-bg.inner {
	align-items: center;
}
.staff-profile-wrap {
    padding: 45px 0;
}
.staff-profile-wrap .flex{
	align-items: center;
}
.name-wrap {
    width: 30%;
}
.profile-wrap-r {
    width: 70%;
}
.pf-left {
    width: 20%;
}
.pf-right {
    width: 80%;
}
.pf-right {
    width: 80%;
    border-left: 1px solid #333;
    padding-left: 45px;
}
p.katagaki, 
p.name{
	font-size: 21px;
	font-weight: bold;
}
.medium-txt{
	font-size: 18px;
	font-weight: bold;
}
.interview-section.i-sec-bg{
	background-image: url(../img/i-gb-pc.png);
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: auto;
    padding-bottom: 110px;
	background-color: #F0F0F0;
}
.prof-box{
    width: 650px;
    height: 100%;
    background-color: #fff;
    border: 1px solid #333;
    padding: 40px;
    position: relative;
    margin: auto auto auto 0;
    box-shadow: 10px 10px 0px #79033d;
}

.prof-box table tbody tr th, 
.prof-box table tbody tr td {
    padding: 1rem 2rem;
}
.prof-box ul li {
    padding: 1rem 2rem;
	border-bottom: 3px dotted #D9D9D9;
}
.prof-box ul li:last-child{
	border-bottom: none;
}
span.p-left {
    display: inline-block;
    width: 100px;
}
.interview-prof-img{
    width: 30%;
    height: 100%;
}
.prof-img-box{
    width: 250px;
    height: 100%;
    margin: auto 0 auto auto;
}
/*
.prof-box::before{
	content: "";
    background-image: url(../img/interview_01.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: -50%;
    left: -26%;
    width: 250px;
    height: 500px;
}
*/
.interview-section .a-title-bg {
    margin-top: 150px;
}
.video-play-btn{
	width: 380px;
    height: 130px;
    position: relative;
    margin: 30px;
}
.video-play-btn::before{
	content: "";
    background-image: url(../img/video-play-btn.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    max-width: 350px;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.video-play-btn p {
    font-size: 24px;
    font-weight: bold;
    position: absolute;
    top: 42%;
    left: 45%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 10;
}
.video-wrap {
    width: 55%;
}
.video-btn-wrap {
    width: 45%;
}
section.interview-sns {
	padding: 110px 0;
}
.sns-wrap{
	position: relative;
}
.video-wrap video{
	width: 500px;
}

.sns-p {
    display: block;
    font-size: 24px;
    font-weight: bold;
    margin-left: 60px;
}
.interview-sns .btn-img{
    background-image: url(../img/insta-bnt.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 250px;
    height: 60px;
    margin: 0 auto;
}
.interview-sns .btn-img a::hover{
	opacity: 0.6;
}
#sb_instagram .sbi_photo img {
    height: auto;
}
#sb_instagram #sbi_images .sbi_item {
	border: 1px solid #6f6f6f;
    box-shadow: 10px 10px 0px #79033d;
	
}
.pc-only #sb_instagram #sbi_images .sbi_item:hover {
    box-shadow: none;
	transform: translate(10px, 10px);
}



.sns-feed {
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
}

@media screen and (max-width:768px) {
.interview-post-page {
    height: 45vh;
}
.staff-title {
    width: 100%;
    height: 40%;
    padding: 0 20px;
    bottom: 0;
    top: unset;
    left: 0;
}
p.staff-message {
    font-size: 21px;
    margin: 25px 0;
}
span.staff-keyword {
    font-size: 12px;
    margin-right: 10px;
}
.staff-profile-wrap {
    padding: 60px 0 45px;
}
.pf-left, 
.name-wrap, 
.profile-wrap-r{
    width: 100%;
}
    .pf-right {
        margin: 10px 0 20px;
        width: 100%;
        border-left: none;
        border-top: 1px solid #333;
        padding-left: 0;
        padding-top: 10px;
    }
p.katagaki, 
p.name{
    display: inline-block;
}
.interview-sec-bg.inner {
    width: 100%;
}
.staff-profile-wrap .flex {
    display: block;
}
.video-btn-wrap {
    width: 100%;
}
.prof-img-box {
    width: 160px;
    height: 100%;
    margin: 0;
}
.interview-prof-img {
    width: 30%;
    height: 100%;
    z-index: 10;
}
.prof-box {
    width: 65%;
    padding: 30px 20px;
}
	.prof-box ul li span{
		font-size: 14px;
	}
span.p-left {
    display: block;
}
.medium-txt {
    font-size: 16px;
}
span.small-title-bg {
    font-size: 16px;
    padding: 0.5rem 1.5rem;
    top: -2rem;
    left: 3em;
}
.interview-section .a-title-bg {
    margin-top: 60px;
}
.video-play-btn p {
    font-size: 18px;
}
.video-play-btn::before {
    width: 95%;
	}
.interview-video .flex {
    flex-direction: column-reverse;
}
.video-wrap {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
width: 100%;
	margin-top: 30px;
}
	
.video-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.video-play-btn {
    width: 100%;
	margin: 0;
}
.sns-feed {
    max-width: 550;
    width: 95%;
}
.sns-p {
    font-size: 16px;
    margin-left: 20px;
}
	
#sb_instagram #sbi_images .sbi_item {
    box-shadow: 5px 5px 0px #79033d;
}
.postid-115 .interview-post-page {
    height: 45vh;
    background-position: right;
}
/*	i-gb-sp.png作成後入れ替え */
.interview-section.i-sec-bg {
    background-image: url(../img/i-gb-sp.png);
    background-position: top;
    background-repeat: no-repeat;
    background-size: contain;
    padding-bottom: 80px;
}
section.interview-sns {
    padding: 80px 0;
}
	
	
	
	
}

