@charset "utf-8";
/* CSS Document */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
}
body {
	overflow-x:hidden;
}
/*
font-family: 'M PLUS 1p', sans-serif;
font-family: 'Noto Sans JP', sans-serif;
font-family: 'Noto Sans SC', sans-serif;
*/
@media only screen and (max-width: 769px) {

}
html {scroll-padding-top: 120px;}
/* TOP
*******************************************************/



#global-nav {
	width: 100%;
  background-color: #fff;
  height: 90px;
  z-index: 99;
}
.m_fixed {
  transition: 0.3s;
  box-shadow: 0 5px 10px -5px rgba(0,0,0,.3);
}
#global-nav.m_fixed {
	left: 0;
	position: fixed;
	top: 0;
}

#global-nav .inner {
	padding-bottom: 0;
	padding-top: 0;
	margin: 0 auto;
  max-width: 100%;
}
.global-list {
display: block;
max-width:1040px;
margin: 0 auto;
height: 90px;
overflow: hidden;
font-size: 0;
}
.global-list .logo {
width: 200px;
display:inline-block;
vertical-align: top;
}
.global-list .logo img {
width: auto;
height: 55px;
}
.global-list .logo a {
display: block;
padding: 18px 0;
}
.global-list .logo a:hover {
opacity: .7;
}

.global-list .menu {
display:inline-block;
width: calc(100% - 450px);
vertical-align: top;
font-size: 0;
}
.global-list .menu #gNav ul {
padding: 17px 0px 5px 0px;
list-style: none;
}
.global-list .menu #gNav ul li {
display: inline-block;
width: calc(100% / 5);
margin-bottom: 5px;
height: 30px;
line-height: 25px;
text-align: center;
}
.global-list .menu #gNav a {
display: inline-block;
text-decoration: none;
color: #000;
font-size: 0.9rem;
font-weight: 600;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.03deg);
margin: 0 auto;
  transition: .2s;
  position: relative;
}
.nav10 {
letter-spacing: -0.1rem;
text-indent: -8px;
}
@media only screen and (max-width: 769px) {
.nav10 {
letter-spacing: 0;
text-indent: 0;
}
}
.global-list .menu #gNav a::after{
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 0;
	height: 2px;
	background-color: #ee2d7b;
	transition: .3s;
	transform: translateX(-50%);
}
.global-list .menu #gNav a:hover::after{
	width: 100%;
}


.global-list .g-info {
display:inline-block;
width: 250px;
vertical-align: top;
padding: 17px 0;
}
.global-list .g-info img {
display: block;
width: 100%;
height: auto;
}
.global-list .g-info p {
display: block;
clear: both;
margin-bottom: 5px;
}
.global-list .g-info a {
display: block;
width: 100%;
border-radius: 4px 4px 0 0;
overflow: hidden;
}
.global-list .g-info a:hover {
opacity: .7;
}
.global-list .g-info div {
}
.global-list .g-info div span {
}


/*========= 背景動画設定のCSS ===============*/

/*header設定*/
#header{
    position: relative;/*h1の中央寄せ配置の起点とするためのrelative*/
    height: calc(100vh - 90px);
} 

#video-area{
    position: fixed;
    z-index: -1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
}

#video {
    /*天地中央配置*/
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}



.top-sectionarrow {
position: absolute;
display: block;
width: 50px;
height: 50px;
bottom: 70px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
}
.top-sectionarrow img {
display: block;
width: 100%;
height: auto;
margin: 0;
padding: 0;
}





.mainbody-01 {
background: url(../img/bg_01.jpg) no-repeat 50% 0;
background-position: center;
background-attachment: fixed;
background-size: 100% auto;
min-height: 100vh;
padding-top: 130px;
padding-bottom: 65px;
}

.mainbody-02 {
background: url(../img/bg_02.jpg) no-repeat 50% 0;
background-position: center;
background-attachment: fixed;
background-size: 100% auto;
min-height: 100vh;
padding-top: 130px;
padding-bottom: 65px;
}

.division-title {
text-align: center;
font-family: 'Hina Mincho', serif;
font-weight: 600;
font-size: 4rem;
text-shadow: 
    #fff 6px 0px,  #fff -6px 0px,
    #fff 0px -6px, #fff 0px 6px,
    #fff 6px 6px , #fff -6px 6px,
    #fff 6px -6px, #fff -6px -6px,
    #fff 3px 6px,  #fff -3px 6px,
    #fff 3px -6px, #fff -3px -6px,
    #fff 6px 3px,  #fff -6px 3px,
    #fff 6px -3px, #fff -6px -3px;
background-image: url(../img/title-bg.png);
background-repeat: no-repeat;
background-position: top center;
background-size: contain;
padding: 40px 0  10px 0;
margin-bottom: 30px;
}
.division-title p {
font-family: 'Courgette', cursive;
font-weight: 400;
font-size: 4rem;

}



.division-title-inner {
text-align: center;
font-family: 'Hina Mincho', serif;
font-weight: 600;
font-size: 4rem;
text-shadow: 
    #fff 6px 0px,  #fff -6px 0px,
    #fff 0px -6px, #fff 0px 6px,
    #fff 6px 6px , #fff -6px 6px,
    #fff 6px -6px, #fff -6px -6px,
    #fff 3px 6px,  #fff -3px 6px,
    #fff 3px -6px, #fff -3px -6px,
    #fff 6px 3px,  #fff -6px 3px,
    #fff 6px -3px, #fff -6px -3px;
background-image: url(../img/title-bg.png);
background-repeat: no-repeat;
background-position: top center;
background-size: contain;
padding: 40px 0  10px 0;
margin-bottom: 30px;
}
.division-title-inner p {
font-family: 'Courgette', cursive,'M PLUS 1p', sans-serif;
font-weight: 400;
font-size: 2rem;

}



/*========= TOP-POINTBOX ===============*/
.top-pointbox {
padding-bottom: 130px;
}
.top-pointbox ul {
max-width: 1040px;
margin: 0 auto;
list-style: none;
padding: 0;
font-size: 0;
}
.top-pointbox ul li {
    backdrop-filter: blur(10px);
    background-color: rgba(255,255,255,.3);
    border-radius: 10px;
    padding: 10px;
    margin: 0 0 20px 0;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
}
.top-pointbox ul li dl {
border-radius: 5px;
width: 100%;
vertical-align: top;
background-image: url(../img/point-bg.png);
background-repeat: no-repeat;
background-position: left bottom;
background-size: 30%;
}
.top-pointbox ul li dl dt {
padding: 10px;
display: inline-block;
width: calc(25% - 10px);
text-align: center;
font-family: 'Courgette', cursive;
font-size: 3.2rem;
font-weight: 400;
color: #fff;
}
.top-pointbox ul li dl dt p {
display: inline-block;
font-family: 'Courgette', cursive;
font-weight: 400;
font-size: 5rem;
margin: -10px 0 -30px 10px;
}
.top-pointbox ul li dl dt img {
display: block;
width: 80%;
height: auto;
margin: 0 auto;
padding: 0;
}
.top-pointbox ul li dl dd {
display: inline-block;
width: calc(75% - 60px);
padding: 20px;
background-color: #fff;
border-radius: 4px;
vertical-align: top;
margin: 10px 0;
}
.top-pointbox ul li dl dd div {
font-size: 1.1rem;
line-height: 1.55;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
}
.top-pointbox ul li dl dd p {
font-size: 2.2rem;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
font-weight: 500;
text-align: center;
padding: 10px;

}
.top-pointbox ul li dl dd p span {
display: block;
margin: 5px 0 10px 0;
font-size: 1.5rem;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
font-weight: 500;
text-align: center;

}
.top-pointbox ul li dl dd p span {
  position: relative;
  display: inline-block;
  padding: 0.6em 3em;
}
.top-pointbox ul li dl dd p span::before,.top-pointbox ul li dl dd p span::after {
  position: absolute;
  content: '';
  top: calc(50% - 1px);
  width: 2em;
  height: 2px;
  background-color: #DA5019;
}
.top-pointbox ul li dl dd p span::before {
  left:0;
}
.top-pointbox ul li dl dd p span::after {
  right: 0;
}

.point-01 dl {background-color: #F27999;}
.point-02 dl {background-color: #F257BC;}
.point-03 dl {background-color: #A04AD9;}
.point-04 dl {background-color: #7E131B;}
.point-05 dl {background-color: #ff3d00;}





/*========= TOP-COURSEBOX ===============*/



.top-coursebox {
max-width: 1040px;
margin: 0 auto 20px auto;
}
.top-coursebox p {
display: block;
margin: 0;
    padding: 10px;
    backdrop-filter: blur(10px);
    background-color: rgba(255,255,255,.3);
    border-radius: 10px;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
}
.top-coursebox p a {
border-radius: 5px;
overflow: hidden;
display: block;
margin: 0;
padding: 0;
background-color: #fff;
}
.top-coursebox p a img {
display: block;
margin: 0;
padding: 0;
width: 100%;
height: auto;
}
.top-coursebox img:hover {
opacity: .7;
}
.top-coursebox ul {
list-style: none;
font-size: 0;
margin-bottom: -20px;
}
.top-coursebox li {
display: inline-block;
width: calc(100% / 2 - 10px);
margin-bottom: 20px;
}
.top-coursebox li:nth-of-type(odd) {
padding-right: 10px;
}
.top-coursebox li:nth-of-type(even) {
padding-left: 10px;
}

.coursebox-last {
margin-bottom: 120px;
}



/*========= TOP-LECTURERBOX ===============*/


.top-lecturer-box {
font-size: 0;
display: block;
margin: 0;
padding: 10px;
backdrop-filter: blur(10px);
background-color: rgba(255,255,255,.3);
border-radius: 10px;
box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
max-width: 1020px;
margin: 0 auto;
}
.top-lecturer-box figure {
background-color: #fff;
border-radius: 120px 120px 5px 5px;
background-image:url(../img/lecturer-bg-left.png),url(../img/lecturer-bg-right.png);
background-position: top left,top right;
background-repeat: no-repeat;
background-size: 40%;

}

.lecturer-frames {
position: relative;
padding: 120px 20px 0 20px;
margin-top: 120px;
display: block;

}
.lecturer-frames .lecturer-photo {
width: 200px;
height: 200px;
position: absolute;
top:-100px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
overflow: hidden;
border-radius: 50%;
}
.lecturer-frames .lecturer-photo img {
display: block;
width: 100%;
height: auto;
margin: 0;
padding: 0;
}

.lecturer-frames .postname {
display: block;
font-size: 1rem;
font-weight: 600;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.03deg);
text-align: center;

}
.lecturer-frames .name {
font-family: 'Courgette', cursive;
font-size: 2rem;
text-align: center;
}

.lecturer-frames2 {
position: relative;
padding: 120px 20px 0 20px;
margin-top: 120px;
display: block;

}
.lecturer-frames2 .lecturer-photo {
width: 160px;
height: 160px;
position: absolute;
top:-100px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
overflow: hidden;
border-radius: 50%;
}
.lecturer-frames2 .lecturer-photo img {
display: block;
width: 100%;
height: auto;
margin: 0;
padding: 0;
}

.lecturer-frames2 .postname {
display: block;
font-size: 1rem;
font-weight: 600;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.03deg);
text-align: center;

}
.lecturer-frames2 .name {
font-family: 'Courgette', cursive;
font-size: 2rem;
text-align: center;
}

.lecturer-main .mainbox {
padding: 20px;
}
.lecturer-main .mainbox .status {
text-align: center;
padding: 10px 0 20px 0;
}
.lecturer-main .mainbox .sec-title {
text-align: center;
padding: 30px 0 20px 0;
font-size: 2.4rem;
font-weight: 500;
}
.lecturer-main .mainbox-frame {
font-size: 1.1rem;
font-family: 'M PLUS 1p', sans-serif;
}
.lecturer-main .mainbox-frame p {
transform: rotate(0.05deg);
}
.lecturer-main .mainbox table {
border-top:1px solid #555;
}
.lecturer-main .mainbox table th {
width: 15%;
padding: 10px;
border-bottom:1px solid #555;
}
.lecturer-main .mainbox table td {
width: 85%;
padding: 10px;
border-bottom:1px solid #555;

}

.lecturer-subframes {font-size: 0; margin: 0 -5px; }
.lecturer-subframes li {
vertical-align: top;
display: inline-block;
width: calc(100% / 2 - 10px);
padding: 0 5px;
}
.lecturer-subframes li {
vertical-align: top;
display: inline-block;
width: calc(100% / 2 - 10px);
padding: 0 5px;
}
.lecturer-subframes li .lc-txt {
text-align: left;
font-size: 1rem;
}


/*========= FOOTERBOX ===============*/

footer {
background-color: #fff;
box-shadow: 0 5px 10px -5px rgba(0,0,0,.8) inset;
padding: 40px 0;
font-size: 0;
}

.foot-box {
max-width: 1040px;
margin: 0 auto;
}
.foot-box p {
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.03deg);
font-weight: 500;
font-size: 1rem;
}

.foot-box dl {}
.foot-box dt {
vertical-align: top;
display: inline-block;
width: 30%;
}
.foot-box dt img {
display: block;
width: 100%;
height: auto;
margin: 0;
padding: 0;
}

.foot-box dt .foot-linfo {
padding-top: 10px;
}
.foot-box dt .foot-linfo img {
display: block;
margin-top: 10px;
}
.foot-box dt .foot-linfo a:hover {
opacity: .7;
}
.foot-box dd {
display: inline-block;
width: calc(70% - 30px);
padding-left: 30px;
vertical-align: top;
text-align: center;
}
.foot-box dd table {
width: 40%;
margin: 0 auto  20px auto;
}
.foot-box dd table td {
width: calc(100% / 2);
}
.foot-box dd table td a {
display: inline-block;
margin: 0 auto;
}
.foot-box dd table td img {
display: block;
margin: 0 auto;
padding: 0;
width: 30%;
height: auto;
}
.foot-box dd table td a:hover {
opacity: .7;
}


.foot-box .scool-listbox {
margin-top: 40px;
border-top: 1px solid #555;
}
.foot-box .scool-listbox ul {
font-size: 0;
border-bottom: 1px solid #555;
}
.foot-box .scool-listbox ul li {
display: inline-block;
text-align: center;
width: calc(100% / 5);
vertical-align: top;
padding: 20px 0;
}
.foot-box .scool-listbox ul li .scl-title {
font-size: 1.3rem;
padding-bottom: 10px;
}
.foot-box .scool-listbox ul li p {
padding: 0 20px;
}
.foot-box .scool-listbox ul li a {
display: inline-block;
margin-top: 10px;
padding: 1px 5px;
background-color: #FFC9E7;
color: #ee2d7b;
text-decoration: none;
border-radius: 4px;
}
.foot-box .scool-listbox ul li a:hover {
background-color: #ee2d7b;
color: #fff;
}
@media only screen and (max-width: 769px) {
.foot-box .scool-listbox ul {
text-align: center;
}
.foot-box .scool-listbox ul li {
width: calc(100% / 2);
}
}




.fNav {}
.fNav ul {
padding: 10px 0px 15px 0px;
list-style: none;
}
.fNav ul li {
display: inline-block;
width: calc(100% / 5);
margin-bottom: 10px;
height: 25px;
line-height: 25px;
text-align: center;
}
.fNav a {
display: inline-block;
text-decoration: none;
color: #000;
font-size: 0.9rem;
font-weight: 500;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.03deg);
margin: 0 auto;
transition: .2s;
position: relative;
}

.fNav a::after{
position: absolute;
bottom: 0;
left: 50%;
content: '';
width: 0;
height: 2px;
background-color: #ee2d7b;
transition: .3s;
transform: translateX(-50%);
}
.fNav a:hover::after{
width: 100%;
}

footer figure {
text-align: center;
font-size: 0.9rem;
font-weight: 500;
padding: 40px 0 0px 0;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.03deg);
}










/*========= SMART PHONE ===============*/
.hamburger {
display:none;
}
nav.globalMenuSp {display: none;}

.spbr {display: none;}

@media only screen and (max-width: 769px) {
.spbr {display: block;}
body {padding-top: 0px !important;position: relative;}
#video-area {display: none;}
#global-nav {display: none;}
nav.globalMenuSp {display: block;}
#header {
position: relative;
height: calc(100vh);
background-image: url(../img/sp_top_mv.jpg);
background-attachment: normal;
position: sticky;
position: -webkit-sticky; /* Safari */
background-position: top center;
background-repeat: no-repeat;
background-size: cover;
background-color: #ccc;
}

.mainbody-01 {
background: url(../img/bg_01.jpg) no-repeat 50% 0;
background-position: center;
background-attachment: normal;
position: sticky;
position: -webkit-sticky; /* Safari */
background-size: cover;
min-height: 100vh;
padding: 80px 10px 60px 10px;
}
.mainbody-02 {
background: url(../img/bg_02.jpg) no-repeat 50% 0;
background-position: center;
background-attachment: normal;
position: sticky;
position: -webkit-sticky; /* Safari */
background-size: cover;
min-height: 100vh;
padding: 80px 10px 60px 10px;
}
/*　ハンバーガーメニューボタン　*/
.hamburger {
display : block;
position: fixed;
z-index : 3;
right : 10px;
top   : 6px;
width : 42px;
height: 42px;
cursor: pointer;
text-align: center;
}
.hamburger span {
display : block;
position: absolute;
width   : 30px;
height  : 2px ;
left    : 6px;
background : #BBBBBB;
-webkit-transition: 0.3s ease-in-out;
-moz-transition   : 0.3s ease-in-out;
transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
top: 10px;
}
.hamburger span:nth-child(2) {
top: 20px;
}
.hamburger span:nth-child(3) {
top: 30px;
}

/* スマホメニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) {
top : 20px;
left: 6px;
background :#555;
-webkit-transform: rotate(-45deg);
-moz-transform   : rotate(-45deg);
transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
top: 20px;
background :#555;
-webkit-transform: rotate(45deg);
-moz-transform   : rotate(45deg);
transform        : rotate(45deg);
}

/* メニュー背景　*/
nav.globalMenuSp {
position: fixed;
top  : 70px;
left : 10px;
right: 10px;
bottom: 140px;
text-align: center;
transform: scale(0,0);
transition: all 0.6s;
backdrop-filter: blur(10px);
background-color: rgba(255,255,255,.3);
border-radius: 10px;
box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
z-index: 2;
/*height: calc(100vh - 170px);*/
width: calc(100vw - 20px);
overflow: hidden;
}

nav.globalMenuSp ul {
margin: 0 auto;
padding: 0 0 20px 0;
width: calc(100% - 10px);
height: calc(100% - 20px);
overflow-y: scroll;
-webkit-overflow-scrolling: touch;
margin: 5px;
border-radius: 5px;
}

nav.globalMenuSp ul li {
list-style-type: none;
padding: 0;
width: 100%;
background-color: #fff;
margin-bottom: 3px;
transition: .4s all;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#ddd;
}

nav.globalMenuSp ul li a {
display: block;
color: #000;
text-decoration :none;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.03deg);
font-weight: 500;
font-size: 1rem;
text-align: left;
padding: 0.8em 0 0.8em 1em;
}

/* クリックでjQueryで追加・削除 */
nav.globalMenuSp.active {
  opacity: 100;
  display: block;
  transform: scale(1,1);
}

.top-coursebox p {
display: block;
margin: 0;
padding: 5px;
backdrop-filter: blur(10px);
background-color: rgba(255,255,255,.3);
border-radius: 10px;
box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
}
.top-coursebox {
margin: 0 auto 10px auto;
}
.top-coursebox ul {
    list-style: none;
    font-size: 0;
    margin-bottom: -10px;
}
.top-coursebox li:nth-of-type(odd) {
    padding-right: 5px;
}
.top-coursebox li:nth-of-type(even) {
    padding-left: 5px;
}
.top-coursebox li {
    display: inline-block;
    width: calc(100% / 2 - 5px);
    margin-bottom: 10px;
}

.division-title {
    text-align: center;
    font-family: 'Hina Mincho', serif;
    font-weight: 600;
    font-size: 1.7rem;
  text-shadow    : 
       3px  3px 0px #ffffff,
      -3px  3px 0px #ffffff,
       3px -3px 0px #ffffff,
      -3px -3px 0px #ffffff,
       3px  0px 0px #ffffff,
       0px  3px 0px #ffffff,
      -3px  0px 0px #ffffff,
       0px -3px 0px #ffffff;

background-image: url(../img/title-bg.png);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: contain;
    padding: 40px 0 10px 0;
    margin-bottom: 30px;
}
.division-title p {
    font-family: 'Courgette', cursive;
    font-weight: 400;
    font-size: 2rem;
}
.division-title-inner {
text-align: center;
font-family: 'Hina Mincho', serif;
font-weight: 600;
font-size: 3.2rem;
text-shadow: 
    #fff 2px 0px 0px, #fff -2px 0px 0px,
    #fff 0px -2px 0px, #fff 0px 2px 0px,
    #fff 2px 2px 0px, #fff -2px 2px 0px,
    #fff 2px -2px 0px, #fff -2px -2px 0px,
    #fff 1px 2px 0px, #fff -1px 2px 0px,
    #fff 1px -2px 0px, #fff -1px -2px 0px,
    #fff 2px 1px 0px, #fff -2px 1px 0px,
    #fff 2px -1px 0px, #fff -2px -1px 0px,
    #fff 1px 1px 0px, #fff -1px 1px 0px,
    #fff 1px -1px 0px, #fff -1px -1px 0px;
background-image: url(../img/title-bg.png);
background-repeat: no-repeat;
background-position: top center;
background-size: contain;
padding: 40px 0  10px 0;
margin-bottom: 0px;
font-weight: bold;
}
.division-title-inner p {
font-family: 'Courgette', cursive,'M PLUS 1p', sans-serif;
font-weight: 400;
font-size: 1.3rem;
text-shadow: 
    #fff 2px 0px 0px, #fff -2px 0px 0px,
    #fff 0px -2px 0px, #fff 0px 2px 0px,
    #fff 2px 2px 0px, #fff -2px 2px 0px,
    #fff 2px -2px 0px, #fff -2px -2px 0px,
    #fff 1px 2px 0px, #fff -1px 2px 0px,
    #fff 1px -2px 0px, #fff -1px -2px 0px,
    #fff 2px 1px 0px, #fff -2px 1px 0px,
    #fff 2px -1px 0px, #fff -2px -1px 0px,
    #fff 1px 1px 0px, #fff -1px 1px 0px,
    #fff 1px -1px 0px, #fff -1px -1px 0px;
}
.coursebox-last {
    margin-bottom: 60px;
}

.top-pointbox ul li {
    backdrop-filter: blur(10px);
    background-color: rgba(255,255,255,.3);
    border-radius: 10px;
    padding: 5px;
    margin: 0 0 20px 0;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
}
.top-pointbox ul li dl {
padding-bottom: 5px;
    background-image: url(../img/point-bg_sp.png);
    background-repeat: no-repeat;
    background-position: right top;
    background-size: 40%;
}
.top-pointbox ul li dl dt {
    padding: 10px 10px 10px 25px;
    display: block;
    width: calc(100% - 30px);
	margin: 0 auto;
    text-align: left;
    font-family: 'Courgette', cursive;
    font-size: 3.2rem;
    font-weight: 400;
    color: #fff;
}
.top-pointbox ul li dl dt img {
    display: block;
    width: 28%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    float: right;
}
.top-pointbox ul li dl dd {
clear: both;
    display: block;
    width: calc(100% - 30px);
    padding: 10px;
    background-color: #fff;
    border-radius: 4px;
    vertical-align: top;
    margin: 10px auto  0px auto;
}
.top-pointbox ul li dl dd p {
    font-size: 1.6rem;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
    font-weight: 500;
    text-align: center;
    padding: 10px;
}
.top-pointbox ul li dl dd p span {
    font-size: 1.1rem;
    margin: 5px 0 0px 0;
}
.top-pointbox ul li dl dd div {
    font-size: 0.9rem;
    line-height: 1.35;
}
.top-pointbox {
    padding-bottom: 60px;
}

.top-lecturer-box {
font-size: 0;
display: block;
margin: 0;
padding: 5px;
backdrop-filter: blur(10px);
background-color: rgba(255,255,255,.3);
border-radius: 10px;
box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
max-width: 1020px;
margin: 0 auto;
}
.top-lecturer-box_spimg {
border-radius: 5px 5px 0 0;
}

.lecturer-frames .lecturer-photo {
width: 130px;
height: 130px;
position: absolute;
top: -40px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
overflow: hidden;
border-radius: 50%;
}
.top-lecturer-box figure {
    background-color: #fff;
    border-radius: 60px 60px 5px 5px;
    background-image: url(../img/lecturer-bg-left.png),url(../img/lecturer-bg-right.png);
    background-position: top left,top right;
    background-repeat: no-repeat;
    background-size: 40%;
}
.lecturer-frames {
    position: relative;
    padding: 120px 20px 0 20px;
    margin-top: 40px;
    display: block;
}
.lecturer-main .mainbox {
    padding: 10px;
}
.lecturer-main .mainbox-frame {
    font-size: 1rem;
}

.lecturer-main .mainbox table th {
display: block;
    width: 100%;
    padding: 10px 0;
    border-bottom: none;
}

.lecturer-main .mainbox table td {
display: block;
    width: 100%;
    padding: 0px 0  10px 0;
    border-bottom: 1px solid #555;
}
.lecturer-main .mainbox .sec-title {
    text-align: center;
    padding: 30px 0 20px 0;
    font-size: 1.4rem;
    font-weight: 500;
}
.lecturer-subframes li {
    vertical-align: top;
    display: inline-block;
    width: calc(100% / 1 - 10px);
    padding: 0 5px;
}

.lecturer-frames2 .lecturer-photo {
    width: 130px;
    height: 130px;
    position: absolute;
    top: -80px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    overflow: hidden;
    border-radius: 50%;
}
.lecturer-frames2 {
    position: relative;
    padding: 60px 20px 0 20px;
    margin-top: 120px;
    display: block;
}

.foot-box dt {
    vertical-align: top;
    display: block;
    width: 70%;
	margin: 0 auto 30px auto;
}
.foot-box dd {
    display: block;
    width: calc(100%);
    padding-left: 0px;
    vertical-align: top;
    text-align: center;
}
.fNav ul {
display: none;
}
.foot-box dd table {
    width: 80%;
    margin: 0 auto 20px auto;
}

.foot-box .ftable-01 td {
display: block;
    text-align: center;
    width: 100%;
    border-bottom: none;
    padding: 20px 0;
}
footer figure {
border-top: 1px solid #555;
    text-align: center;
    font-size: 0.9rem;
    font-weight: 500;
    padding: 20px 0 60px 0;
	margin-top: 40px;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.03deg);
}
.top-sectionarrow {
    bottom: 180px;
}


}



.spfootinfo {display: none;}
@media only screen and (max-width: 769px) {
.spfootinfo {
display: block;
position: fixed;
bottom: 10px;
left: 10px;
width: 265px;
font-size: 0;
z-index: 999;
}
.spfootinfo a {
display: inline-block;
width: calc(50% - 10px);
margin-right: 10px;
overflow: hidden;
border-radius: 5px;
background-color: #fff;
box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
}
.spfootinfo a img {
display: block;
margin: 0;
padding: 0;
width: 100%;
height: auto;
}







}

.sp-header,
.sp-logo {display: none;}
@media only screen and (max-width: 769px) {
.sp-header {
display: block;
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 3;
overflow: hidden;
backdrop-filter: blur(10px);
background-color: rgba(255,255,255,.75);
height: 55px;
box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
}
.sp-logo {
display: block;
padding: 10px 0;
text-align: center;
height: 35px;
}
.sp-logo img {
display: inline-block;
margin: 0;
padding: 0;
width: auto;
height: 100%;
}


}






#page_top {
width: 68px;
height: 68px;
position: fixed;
right: 10px;
bottom: 10px;
opacity: 1;
z-index: 999;
}
#page_top a {
position: relative;
display: block;
width: 68px;
height: 68px;
text-decoration: none;
}
#page_top a img {
display: block;
margin: 0;
padding: 0;
width: 100%;
height: auto;
}












/****************************
INNER
*****************************/
.inner-page-headmenu {
position: fixed;
top: 0;
left: 0;
right: 0;
box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
}

.inner-box {
	max-width: 1030px;
    display: block;
    margin: 0 auto 20px auto;
    padding: 5px;
    backdrop-filter: blur(10px);
    background-color: rgba(255,255,255,.8);
    border-radius: 10px;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
}


.inner-coursebox ul {
    list-style: none;
    font-size: 0;
    margin-bottom: -10px;
}
.top-coursebox li:nth-of-type(odd) {
    padding-right: 5px;
}
.top-coursebox li:nth-of-type(even) {
    padding-left: 5px;
}
.top-coursebox li {
    display: inline-block;
    width: calc(100% / 2 - 5px);
    margin-bottom: 10px;
}



.qa-8 {
padding: 20px;
}
.qa-8 dt {
    font-size: 1.6rem;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
    font-weight: 500;
    color: #ff4280;
	text-shadow: 
    #fff 2px 0px 0px, #fff -2px 0px 0px,
    #fff 0px -2px 0px, #fff 0px 2px 0px,
    #fff 2px 2px 0px, #fff -2px 2px 0px,
    #fff 2px -2px 0px, #fff -2px -2px 0px,
    #fff 1px 2px 0px, #fff -1px 2px 0px,
    #fff 1px -2px 0px, #fff -1px -2px 0px,
    #fff 2px 1px 0px, #fff -2px 1px 0px,
    #fff 2px -1px 0px, #fff -2px -1px 0px,
    #fff 1px 1px 0px, #fff -1px 1px 0px,
    #fff 1px -1px 0px, #fff -1px -1px 0px;
	padding-left: 40px;
	position: relative;
}

.qa-8 dt::before,
.qa-8 dd::before {
    margin-right: .4em;
}

.qa-8 dt::before {
display: block;
position: absolute;
top: 0;
left: 0;
    content: "Q.";
}

.qa-8 dd {
    margin: 0 0 2.5em;
	padding: 10px 10px 10px 50px;
	position: relative;
    background-color: #ffffff;
    color: #333333;
	border-radius: 5px;
	margin-top: 10px;
}
.qa-8 dd p {
	display: inline-block;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
}
.qa-8 dd p a {
	display: inline-block;
	padding: 3px 5px;
	font-weight: bold;
	color: #fff;
	background-color: deeppink;
	border-radius: 3px;
	margin-bottom: 10px;
	margin-top: 5px;
	text-decoration: none;
}
.qa-8 dd p a:hover {opacity: 0.7;}


.qa-8 dd::before {
display: block;
position: absolute;
top: 10px;
left: 15px;
font-size: 1.3rem;
    content: "A.";
	font-weight: bold;
	color: #2272FF;
	vertical-align: top;
}




.voicebox {
padding: 20px;
}
.voicebox dt {
    font-size: 1.6rem;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
    font-weight: 500;

	text-shadow: 
    #fff 2px 0px 0px, #fff -2px 0px 0px,
    #fff 0px -2px 0px, #fff 0px 2px 0px,
    #fff 2px 2px 0px, #fff -2px 2px 0px,
    #fff 2px -2px 0px, #fff -2px -2px 0px,
    #fff 1px 2px 0px, #fff -1px 2px 0px,
    #fff 1px -2px 0px, #fff -1px -2px 0px,
    #fff 2px 1px 0px, #fff -2px 1px 0px,
    #fff 2px -1px 0px, #fff -2px -1px 0px,
    #fff 1px 1px 0px, #fff -1px 1px 0px,
    #fff 1px -1px 0px, #fff -1px -1px 0px;
	padding-left: 0px;
	position: relative;
}
.vb-sc-01 {color: #F82487;}
.vb-sc-02 {color: #03318E;}
.vb-sc-03 {color: #FF660B;}


.voicebox dt::before,
.voicebox dd::before {
    margin-right: .4em;
}



.voicebox dd {
    margin: 0 0 2.5em;
	padding: 10px 10px 10px 10px;
	position: relative;
    background-color: #ffffff;
    color: #333333;
	border-radius: 5px;
	margin-top: 10px;
}
.voicebox dd p {
	display: inline-block;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
}



.inner-frame {
padding: 20px;
}
.inner-frame dt {
    font-size: 1.6rem;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
    font-weight: 500;

	text-shadow: 
    #fff 2px 0px 0px, #fff -2px 0px 0px,
    #fff 0px -2px 0px, #fff 0px 2px 0px,
    #fff 2px 2px 0px, #fff -2px 2px 0px,
    #fff 2px -2px 0px, #fff -2px -2px 0px,
    #fff 1px 2px 0px, #fff -1px 2px 0px,
    #fff 1px -2px 0px, #fff -1px -2px 0px,
    #fff 2px 1px 0px, #fff -2px 1px 0px,
    #fff 2px -1px 0px, #fff -2px -1px 0px,
    #fff 1px 1px 0px, #fff -1px 1px 0px,
    #fff 1px -1px 0px, #fff -1px -1px 0px;
	padding-left: 0px;
	position: relative;
}
.inner-frame dt {color: #F82487;}


.inner-frame dt::before,
.inner-frame dd::before {
    margin-right: .4em;
}



.inner-frame dd {
    margin: 0 0 2.5em;
	padding: 20px;
	position: relative;
    background-color: #ffffff;
    color: #333333;
	border-radius: 5px;
	margin-top: 10px;
}
.inner-frame dd p {
	display: inline-block;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
}
.inner-frame dd p a {color: deeppink; font-weight: bold; display: inline-block;padding: 0 3px; margin: 0 3px;}
.inner-frame dd p a:hover {text-decoration: none;}


.if-ibs {
background-image: url(../img/p03img.png);
background-repeat: no-repeat;
background-position: right center;
}

@media only screen and (max-width: 769px) {
.if-ibs {
background-image: url(../img/p03img.png);
background-repeat: no-repeat;
background-position: center 10px;
padding-top: 220px !important;
}
}

.if-tbl {}


.if-tbl table{
  width: 100%;
  border-collapse: collapse;
}

.if-tbl table tr{
  border-bottom: solid 2px white;
}

.if-tbl table tr:last-child{
  border-bottom: none;
}

.if-tbl table th{
  position: relative;
  text-align: left;
  width: 30%;
  background-color: #F93E6C;
  color: white;
  text-align: center;
  padding: 10px 0;
}

.if-tbl table th:after{
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  position: absolute;
  top:calc(50% - 10px);
  right:-10px;
  border-left: 10px solid #F93E6C;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

.if-tbl table td{
  text-align: left;
  width: 70%;
  text-align: center;
  background-color: #eee;
  padding: 10px 0;
}

.studio-photo {
display:block;
width: 33%;
height: auto;
float: right;
outline: 4px solid #fff;
outline-offset: -4px;
box-shadow: 0 5px 10px -5px rgba(0,0,0,.3);
}
.incol-2 {
display:inline-block;
float: left;
}
.in-studio-box {
width:65%;
font-size: 0.97rem;
display: inline-block;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
}

.insub-subttl {
display: block;
font-size: 1.2rem;
font-weight: bold;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
color: #FFFFFF;
padding: 10px 0 10px 15px;
background-color: #ff4280;
background-image: url(../img/point-bg_sp.png);
background-repeat: no-repeat;
background-position: center right;
background-size: 30%;
margin-bottom: 10px;
border-radius: 3px;
}










.profile-box {
min-height: 80vh;
}
.prof-frame-01 {
background-image: url(../img/p02art01.jpg);
background-repeat: no-repeat;
background-position:  top center;
background-size: cover;
}

.prof-frame {
position: relative;
max-width: 1030px;
min-height: 80vh;
margin: 0 auto 0 auto;
}
.prof-frame-01-txtimg {
display: block;
position: absolute;
bottom: 10em;
left: 0;
width: 440px;
height: 175px;
text-indent: -9999px;
background-image: url(../img/p02art01_txt.png);
background-repeat: no-repeat;
background-position:  top left;
background-size: contain;
}


.inner-lecturer-box {
background-color: #fff;
border-radius: 120px 120px 5px 5px;
background-image:url(../img/lecturer-bg-left.png),url(../img/lecturer-bg-right.png);
background-position: top left,top right;
background-repeat: no-repeat;
background-size: 40%;
max-width: 1030px;
margin: 0 auto;

}

.inner-lecturer-box .lecturer-frames {
position: relative;
padding: 120px 20px 0 20px;
margin-top: 120px;
display: block;

}
.inner-lecturer-box .lecturer-frames .lecturer-photo {
width: 200px;
height: 200px;
position: absolute;
top:-100px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
overflow: hidden;
border-radius: 50%;
}
.inner-lecturer-box .lecturer-frames .lecturer-photo img {
display: block;
width: 100%;
height: auto;
margin: 0;
padding: 0;
}

.inner-lecturer-box .lecturer-frames .postname {
display: block;
font-size: 1rem;
font-weight: 600;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.03deg);
text-align: center;

}
.inner-lecturer-box .lecturer-frames .name {
font-family: 'Courgette', cursive;
font-size: 2rem;
text-align: center;
}

.inner-lecturer-box .mainbox {
padding: 20px;
}
.inner-lecturer-box .status {
text-align: center;
padding: 10px 0 20px 0;
}
.inner-lecturer-box .sec-title {
text-align: center;
padding: 30px 0 20px 0;
font-size: 2.4rem;
font-weight: 500;
}
.inner-lecturer-box .mainbox-frame {
font-size: 1.1rem;
font-family: 'M PLUS 1p', sans-serif;
}
.inner-lecturer-box .mainbox-frame p {
transform: rotate(0.05deg);
}
.inner-lecturer-box .mainbox table {
border-top:1px solid #555;
}
.inner-lecturer-box .mainbox table th {
width: 15%;
padding: 10px;
border-bottom:1px solid #555;
}
.inner-lecturer-box .mainbox table td {
width: 85%;
padding: 10px;
border-bottom:1px solid #555;

}

#panel {
	max-width:1030px;
	margin:0 auto 60px auto;
}
 
#panel > dt {
  padding: 30px 0px 0px 0px;
  font-weight: bold;
	position:relative;
  z-index: 1;
  transition: .3s;
}
#panel > .open {padding-top:120px; transition: .3s;}
#panel > dt p {
  height:50px;
  width: 100%;
  font-size:26px;
	text-align:left;
	padding-top:10px;
  color: white;
  cursor: pointer;
  background-color:#EF8576;
  border-radius: 10px;
	display: inline-block;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
	text-align: center;
}
#panel > dt p br {
display: none;
}
@media only screen and (max-width: 769px) {
#panel > dt p {
  height:auto;
  padding-bottom: 10px;
}
#panel > dt p br {
display: block;
}
}
 
#panel > dd {
  z-index: 0;
  margin: -10px auto 0px auto;
  font-size:1.4rem;
  line-height:2.3rem;
  text-align:left;
    display: block;
    padding: 15px 5px 5px 5px;
    backdrop-filter: blur(10px);
    background-color: rgba(255,255,255,.8);
    border-radius: 0 0 10px 10px;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
}












.photoalbum {}
.photoalbum dd {}
.photoalbum dd ul {list-style: none; font-size: 0;}
.photoalbum dd ul li {
list-style: none;
display: inline-block;
width: calc(100% / 5);
vertical-align:middle;
}
@media screen and (max-width:480px) {
.photoalbum dd ul li {
width: calc(100% / 2);
}
}


.photoalbum dd ul li div {
margin: 10px;
border-radius:2px;
overflow:hidden;
box-shadow:3px 3px 6px 3px rgba(0,0,0,0.2);
background-color:rgba(255,255,255,1.00);
}
.photoalbum dd ul li div img:hover {
opacity: 1;
}
.photoalbum dd ul li div img {
opacity: 0.6;
display: block;
  border: 5px solid #fff;
  border-radius: 3px;
  box-sizing: border-box;
margin: 0;
padding: 0;
width: 100%;
height: auto;
}


@media only screen and (max-width: 769px) {}




.lsn-box-2col {
width: 50%;
}
.lsn-ttl {
    font-size: 1.6rem;
    font-family: 'M PLUS 1p', sans-serif;
    transform: rotate(0.05deg);
    font-weight: 500;

	text-shadow: 
    #fff 2px 0px 0px, #fff -2px 0px 0px,
    #fff 0px -2px 0px, #fff 0px 2px 0px,
    #fff 2px 2px 0px, #fff -2px 2px 0px,
    #fff 2px -2px 0px, #fff -2px -2px 0px,
    #fff 1px 2px 0px, #fff -1px 2px 0px,
    #fff 1px -2px 0px, #fff -1px -2px 0px,
    #fff 2px 1px 0px, #fff -2px 1px 0px,
    #fff 2px -1px 0px, #fff -2px -1px 0px,
    #fff 1px 1px 0px, #fff -1px 1px 0px,
    #fff 1px -1px 0px, #fff -1px -1px 0px;
	padding-left: 0px;
	position: relative;
}
.lsn-ttl-01 {color: #F82487;}

@media only screen and (max-width: 769px) {
.lsn-box-2col {
width: 100%;
display: block;
}

.inner-frame {
padding: 10px;
}
.inner-frame dd {
    padding: 10px;
}


}



.lsn-mt-tbl table{
  border-collapse: collapse;
  width: 100%;
}
.lsn-mt-tbl .tb01 th,
.lsn-mt-tbl .tb01 td{
  padding: 10px;
  border: solid 2px #fff;
  text-align:center;
  box-sizing:border-box;
  background-color: #f1f1f1;
  vertical-align: middle;
font-size: 0.95rem;
}
.lsn-mt-tbl .tb01 th {
  background: #F93E6C;
  color: #fff;
  
}
@media screen and (max-width: 640px) {
.lsn-mt-tbl .tb01 .head{
    display:none;
  }
.lsn-mt-tbl .tb01 {
    width: 100%;
  }
.lsn-mt-tbl .tb01 td,
.lsn-mt-tbl .tb01 th{
    display: block;
    width: 100%;
    border-bottom:none;
  }
.lsn-mt-tbl .tb01 td{
    padding: 0px 12px 0 0;
    display: block;
    width: 100%;
    line-height: 2.5;
	text-align: left;
  }
.lsn-mt-tbl .tb01 td span {
display: inline-block;

  }
.lsn-mt-tbl .tb01 td:before{
    color: #fff;
    content: attr(data-label);
    font-weight: bold;
    padding: 0px 10px;
display: inline-block;
  background: #F93E6C;
    margin-right: 10px;
    float: left;
  }
.lsn-mt-tbl .tb01 tr:last-child{
    border-bottom: none;
  }
}


.maplink {
text-decoration: none;
display: inline-block;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
color:blueviolet !important;
font-weight: bold;
padding: 5px 0;
font-size: 1.1rem;
}
.maplink:after {
display: inline-block;
content: "";
background-image:url(../img/map-pin-blueviolet.png);
background-position: top center;
background-repeat: no-repeat;
background-size: contain;
width: 14px;
height: 14px;
line-height: 0.9rem;
margin-left: 5px;
}
.maplink:hover {
text-decoration: underline !important;
}

.leclink {
text-decoration: none;
display: inline-block;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
color:deeppink;
font-weight: bold;
padding: 5px 0;
font-size: 1.1rem;
}
.leclink:after {
display: inline-block;
content: "";
background-image:url(../img/lec-link.png);
background-position: top center;
background-repeat: no-repeat;
background-size: contain;
width: 14px;
height: 14px;
line-height: 0.9rem;
margin-left: 5px;
}
.leclink:hover {
text-decoration: underline !important;
}
@media only screen and (max-width: 769px) {
.maplink {margin: -10px 0;}
.leclink {margin: -10px 0;}
}




.nest-frame-01 {
display: inline-block;
width: calc(100% - 20px - 2px);
margin: 15px 0 20px 0;
padding:10px;
border-radius: 5px;
border: 1px solid #ccc;
font-size: 1.1rem;
}
.nest-frame-01 b {
font-weight: bold;
color: #FF5700;
font-size: 1.5rem;
}
.nest-pu-01 {font-size:1.3rem; font-weight: bold; color: #FF5489;}

.nest-frame-02 {
display: block;
width: calc(100% - 20px - 2px);
margin: 15px 0 30px 0;
padding:10px;
border-radius: 5px;
border: 1px solid #ccc;
}
.nest-frame-02 b {
font-weight: bold;
color: #09C191;
font-size: 1.5rem;
}
.nest-frame-02 p {
font-size: 1rem;
display: inline-block;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
position: relative;
margin: 5px 0;
width: calc(100% - 52px);
padding: 10px 10px 10px 40px;
vertical-align: top;
border: 1px solid #f1f1f1;
overflow: hidden;
border-radius: 5px;
}
.nest-frame-02 p span {
display: block;
font-weight: bold;
color: #00BCBF;
font-size: 1.3rem;
}
.nest-frame-02 p:before {
display: block;
background: #00BCBF;
color: #fff;
font-weight: bold;
text-align: center;
font-size: 1.6rem;
padding: 0;
position: absolute;
top: 0;
bottom: 0;
left: 0;
width: 30px;
}

.nest-frame-02 p:nth-of-type(1):before {content: "1";}
.nest-frame-02 p:nth-of-type(2):before {content: "2";}
.nest-frame-02 p:nth-of-type(3):before {content: "3";}
.nest-frame-02 p:nth-of-type(4):before {content: "4";}

@media only screen and (max-width: 769px) {
.nest-frame-02 p {
font-size: 1rem;
display: inline-block;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
position: relative;
margin: 5px 0;
width: calc(100% - 52px);
padding: 10px 10px 10px 40px;
vertical-align: top;
border: 1px solid #f1f1f1;
overflow: hidden;
border-radius: 5px;
}
.nest-frame-02 p:before {
display: block;
background: #00BCBF;
color: #fff;
font-weight: bold;
text-align: center;
font-size: 1.6rem;
padding: 0;
position: absolute;
top: 0;
bottom: 0;
left: 0;
width: 30px;
}


}







.sp-sup-box-01 {
text-align: center;
}
.sp-sup-box-01 a {
color: #555;
}
.sp-sup-box-01 span {
display: inline-block;
margin: 0 10px;
font-size: 1.4rem;
font-weight: bold;
}
.sp-sup-box-01 .spbr {display: none;}
@media only screen and (max-width: 769px) {
.sp-sup-box-01 .spbr {display: block;}
.sp-sup-box-01 a {
display: inline-block;
padding: 3px 15px;
border-radius: 5px;
margin: 10px auto;
color: #fff;
background-color: #FC2898;
text-decoration: none;
}
}
@media (min-width: 751px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}


.formbox {
margin: 20px;
    position: relative;
    background-color: #ffffff;
    color: #333333;
    border-radius: 5px;
    margin-top: 10px;
}
.formbox-txt {
padding: 20px;
}
.formbox-txt b {
color: #F82487;
font-size: 1.6rem;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
font-weight: 500;
padding-left: 0px;
position: relative;
}
.formbox-txt p {
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.03deg);
}

.formbox-txt a {
color: #555;
}
.formbox-txt span {
display: inline-block;
margin: 0 10px;
font-size: 1.4rem;
font-weight: bold;
}
.formbox-txt .spbr {display: none;}
@media only screen and (max-width: 769px) {
.formbox-txt .spbr {display: block;}
.formbox-txt a {
display: inline-block;
padding: 3px 15px;
border-radius: 5px;
margin: 10px auto;
color: #fff;
background-color: #FC2898;
text-decoration: none;
}
.formbox-txt span {margin: 0;}
.formbox {
margin: 10px;
}
}


.inner-box2 {
	max-width: 1040px;
    display: block;
    margin: 0 auto 20px auto;
    backdrop-filter: blur(10px);
    background-color: rgba(255,255,255,.8);
    border-radius: 10px;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
	overflow: hidden;
}




.lesson-col2box {
font-size:0px;
list-style: none;
border: 1px solid #ccc;
border-radius: 5px;
overflow: hidden;
}
.lesson-col2box td {
font-size: 1rem;
padding: 10px;
width: calc(100% / 2);
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
vertical-align: middle;
text-align: center;
}
.lesson-col2box li div {
padding: 10px;
}
.schedule-link-box {
background-color: coral;
background-image: url(../img/point-bg_sp.png);
background-position: top right;
background-repeat: no-repeat;
background-size: contain;
position: relative;
}
.lesson-col2box .schedule-link {
font-size: 1.6rem;
font-weight: bold;
color: #fff;
text-decoration: none;
display:inline-flex;
text-align: center;
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
right: 0;
bottom: 0;
vertical-align: middle;
justify-content: center;
align-items: center;
}
.lesson-col2box .schedule-link:hover,
.schedule-link-box:hover {
opacity: .7;
}
@media only screen and (max-width: 769px) {
.lesson-col2box td {
width: calc(100% - 20px);
display: block;
}
.schedule-link-box {
height: 80px;
}
.maplink {
text-decoration: underline;
}
}


.contact-link {
display: block;
font-weight: bold;
color: #fff;
text-decoration: none;
background-color: #FD6744;
border-radius: 5px;
width: 80%;
margin: 0 auto;
line-height: 2.5;
text-align: center;
font-size: 1.6rem;
}

.contact-link:hover {opacity: 0.7}

@media only screen and (max-width: 769px) {
.contact-link {
width: 80%;
line-height: 2.5;
text-align: center;
font-size: 1.3rem;
margin-bottom: 20px;
}
}


.list-design {
  border: 2px solid #32E0A2;
  border-radius: 10px;
  list-style: none;
  padding: 0 .8em .5em;
  position: relative;
  margin-top: 20px;
}
.list-design li {
  border-bottom: 1px solid #ccc;
  margin-top: 10px;
  padding: .5em 0 .5em 2em;
  line-height: 1.75;
font-size: 1.2rem;
}
.list-design li:before {
  color: #32E0A2;
  content: "●";
  left : 1em;
  margin: 0;
  position: absolute;
  line-height: 1.75;
}
.list-design li:last-of-type {
  border-bottom: none;
}
.list-design li a {
display: inline-block;
color: #FF342D;
}
.list-design li a:hover {
text-decoration: none;
}
.list-design li article {
display: inline-block;
padding: 10px 0px 0px 10px;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
}


@media only screen and (max-width: 769px) {
.list-design li {
line-height: 1.75;
font-size: 0.9rem;
vertical-align: top;
}
.list-design li:before {
font-size: 0.9rem;
  line-height: 1.75;
}
.list-design li a {
display: inline-block;
margin-bottom: 10px;
background-color: #fff;
color: #FF342D;
font-size: 0.9rem;
padding: 0;
margin: 0 0 10px 0;
}
.list-design li article {
padding-left: 0px;
}
}




.top-frame-steparea {}
.top-frame-steparea b {
width: 50%;
display: block;
font-weight: normal;
border: 2px solid #F93E6C;
margin: 0 auto 10px auto;
border-radius: 5px;
overflow: hidden;
font-size: 1.2rem;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
}
.top-frame-steparea b span {
padding: 5px;
font-weight: bold;
display: inline-block;
text-align: center;
width: 30px;
color: #fff;
background-color: #F93E6C;
margin: -1px 10px -1px -1px;
position: relative;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
}


@media only screen and (max-width: 769px) {
.top-frame-steparea b {
width: calc(100% - 4px);
font-size: 1rem;
}
}


.lnk-lsn-bnr {
display: inline-block;
width: calc(100% - 4px);
background-color: coral;
color: #fff;
font-size: 1.3rem;
font-family: 'M PLUS 1p', sans-serif;
transform: rotate(0.05deg);
font-weight: bold;
text-align: center;
padding: 10px 0;
text-decoration: none;
border: 2px solid coral;
transition:all .3s;
}
.lnk-lsn-bnr:hover {
transition:all .3s;
background-color: #fff;
color: coral;
}







.point-catch {
max-width: 1040px;
margin: 0 auto 40px auto;
}
.point-catch ul {
font-size: 0;
}
.point-catch ul li {
vertical-align: top;
display: inline-block;
width: calc(100% / 4);
}
.point-catch li:nth-of-type(even) a {
margin-top: 80px;
}
.point-catch a {
display: block;
}
.point-catch a img {
display: block;
width: 100%;
height: auto;
margin:0;
padding:0;
}
@media only screen and (max-width: 769px) {
.point-catch {
margin-bottom: 10px;
}
.point-catch ul li {
width: calc(100% / 2);
margin-bottom: 20px;
}
.point-catch li:nth-of-type(even) a {
margin-top: 0px;
}


}



.page-nav-lnk {}
.page-nav-lnk ul {
display: block;
padding: 5px;
font-size: 0;
}
.page-nav-lnk li {
display: inline-block;
width: calc(100% / 4 - 10px);
padding: 5px;
}
.page-nav-lnk li a {
font-family: 'Hina Mincho', serif;
display: block;
padding: 10px;
text-align: center;
font-size: 1.4rem;
text-decoration: none;
font-weight: bold;
background-color: #e85a5a;
border-radius: 5px;
color: #fff;
transition: all 0.2s;

}
.page-nav-lnk li a:hover {
transition: all 0.2s;
opacity: .7;
}
@media only screen and (max-width: 769px) {
.page-nav-lnk ul {
padding: 10px;
}
.page-nav-lnk li {
display: inline-block;
width: calc(100% / 1 - 10px);
padding: 5px;
}
}








































