/*
Theme Name: VIPO Film Lab
Author: Teruhisa Osawa
Version: 1.2
*/
*,*::before,*::after{box-sizing:border-box}ul[class],ol[class]{padding:0}body,h1,h2,h3,h4,p,ul[class],ol[class],figure,blockquote,dl,dd{margin:0}body{min-height:100vh;scroll-behavior:smooth;text-rendering:optimizeSpeed;line-height:1.5}ul[class],ol[class]{list-style:none}a:not([class]){text-decoration-skip-ink:auto}img{max-width:100%;display:block}article>*+*{margin-top:1em}input,button,textarea,select{font:inherit}img:not([alt]){filter:blur(0)}

*{
box-sizing:border-box;
}
html, body {
height:100%;
font-family: 'Noto Sans JP', sans-serif;
font-feature-settings : "palt"
letter-spacing:1px;
}
body{
font-size:14px;
color: #000000;
-webkit-text-size-adjust: 100%;
overflow-x: hidden;
}

a{
text-decoration:underline;
opacity:1;
line-height:100%;
color:#000;
text-decoration:none;
}
a:hover {
-webkit-transition:0.7s;
-moz-transition:0.7s;
-o-transition:0.7s;
transition:0.7s;
color:#000000;
}
a img:hover {
-moz-opacity:0.5;
opacity:0.5;
}
a:hover{
opacity:0.4;
cursor:pointer;
}
a.link img:hover,
a.link:hover{
opacity:1;
}
p,dt,dd,td,th,div{
line-height:1.8;
letter-spacing:1px;
}
img{
max-width:100%;
height:auto;
vertical-align:bottom;
}

a.tel,
a.tel img{
opacity:1;
font-weight:500;
cursor:default;
}
.rst{
margin:0;
padding:0;
}
.rst li{
margin:0;
padding:0;
list-style:none;
}

/*====================================================
LAYOUT
====================================================*/
#wrapper{
width:100%;
height:100%;
position:relative;
margin:0 auto;
}

.w1000{
width:1000px;
margin:0 auto;
}
.w900{
width:900px;
margin:0 auto;
}
.w720{
width:720px;
margin:0 auto;
}
.w90{
width:90%;
margin:0 auto;
}
.flex1{
display: -webkit-flex;
display: flex;
}
.flex2{
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
}



.pagenav .pageback,
.pagenav .nextpost,
.pagenav .prevpost{
padding:1rem;
border:1px solid #ddd;
}
.pagenav .uline{
border-bottom:1px solid #ddd;
}
.pagenav .prevpost{
width:28%;
}
.pagenav .pageback{
width:20%;
font-size:16px;
text-align:center;
text-decoration:none;
}
.pagenav .pageback a{
position:relative;
top:35%;
}
.pagenav .nextpost{
width:28%;
}
.pagenav .prevpost a,
.pagenav .nextpost a{
font-size:16px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
display:block;
border-bottom:1px solid #ccc;
margin-bottom:0.3rem;
padding-bottom:0.2rem;
}
.pagenav .arw{
margin-bottom:1rem;
}
.pagenav .date,
.pagenav .arw{
display:block;
}
.pagenav .nextpost .arw{
text-align:right;
}
.pagenav .item:hover{
cursor:pointer;
border:1px solid #000;
}
.pagenav .nextpost.emp,
.pagenav .prevpost.emp{
border:none;
}
.pagenav .item.emp:hover{
cursor:default;
}


/*====================================================
HEADER
====================================================*/
#header{
padding:13px 0 0 0;
}
#hd1{
margin-bottom:20px;
}
#hd_logo{
width:113px;
}
#hdmn{
position:relative;
}
#hdmn #nav a{
font-weight:bold;
font-size:16px;
}
#hd_contact{
width:366px;
background:#333333;
color:#fff;
padding:0.7rem 2rem;
}
#hd_contact:hover{
opacity:0.7;
cursor:pointer;
}
#hd_contact .org_name{
font-size:12px;
line-height:1.1;
letter-spacing:2px;
}
#hd_contact .org_name .spc1{
display:block;
letter-spacing:4px;
}
#hd_contact a{
font-size:16px;
color:#fff;
padding-right:50px;
background:url(https://filmlab.vipo.or.jp/v1/common/img/ico/email.png) no-repeat right center;
background-size:30px 20px;
}
#hd_contact a:hover{
opacity:1;
}
#nav{
margin-bottom:1rem;
}
#nav ul li{
position:relative;
line-height:1;
}
#nav ul li:after{
position:absolute;
content:"|";
right:-1.2rem;
top:0;
}
#nav ul li:last-child:after{
content:"";
}
#mn.flex1{
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
}
#mn .item{
width:25%;
background:#cb2940;
color:#fff;
position:relative;
text-align:center;
min-height:96px;
z-index:0;
display: table;
}
#mn.v2 .item{
width:20%;
}
#mn.v3 .item{
width:16.6666%;
min-height:80px;
position:relative;
}
#mn .item:hover{
cursor:pointer;
opacity:0.8;
}
#mn .item.cs:hover{
cursor:default;
opacity:1;
}
#mn .item a{
color:#fff;
}
#mn .item:before{
position:absolute;
content:"";
top:0;
left:0;
width: 52px;
height: 52px;
border-left: 52px solid rgba(255,255,255,0.9);
border-bottom: 52px solid transparent;
z-index:2;
}
#mn .item .ttl{
display: table-cell;
vertical-align: middle;
line-height:1.3;
}
#mn .item .en{
display:block;
font-size:11px;
padding-top:0.3rem;
}
#mn .item .num{
font-size:21px;
color:#cb2940;
position:absolute;
font-weight:bold;
left:8px;
top:7px;
z-index:3;
line-height:1;
font-family: 'Questrial', sans-serif;
}
#mn .item2{background:#895289;}
#mn .item2 .num{color:#895289;}
#mn .item3{background:#2abaac;}
#mn .item3 .num{color:#2abaac;}
#mn .item4{background:#f7b24a;}
#mn .item4 .num{color:#f7b24a;}
#mn .item5{background:#ea6605;}
#mn .item5 .num{color:#ea6605;}
#mn .item6{background:#f4494d;}
#mn .item6 .num{color:#f4494d;}
#mn .item7{background:#596291;}
#mn .item7 .num{color:#596291;}
#mn .item8{background:#29ba63;}
#mn .item8 .num{color:#29ba63;}
#mn .item9{background:#b04687;}
#mn .item9 .num{color:#b04687;}
#mn .item10{background:#b8b8b8;}
#mn .item10 .num{color:#b8b8b8;}
#mn .item11{background:#d6d419;}
#mn .item11 .num{color:#d6d419;}
#mn .item12{background:#1ac6d5;}
#mn .item12 .num{color:#1ac6d5;}

#mn.v3 .item .num{
letter-spacing:-2px;
left:5px;
font-size:18px;
}
#mn.v3 .item.new .num{
top:14px;
}
#mn.v3 .item span.new{
font-size:10px;
color:#cb2940;
position:absolute;
font-weight:bold;
top:-1px;
left:2px;
z-index:2;
font-family: 'Arial Narrow";
}

#hdmbg{
display:none;
position:fixed;
width:100%;
height:100%;
z-index:10;
background:rgba(255,255,255,0.0);
}
#hdmbg.active{
display:block;
}
#hdm{
position:fixed;
top:0;
right:-420px;
width:420px;
background:rgba(0,0,0,0.7);
z-index:11;
height:100%;
padding:125px 30px 25px 30px;
opacity:0;
-webkit-transition:0.7s;
-moz-transition:0.7s;
-o-transition:0.7s;
transition:0.7s;
}
#hdm.active{
right:0;
opacity:1;
}
#hdm a{
color:#fff;
font-size:24px;
display:block;
padding:0.3rem;
}
#hdm li{
margin-bottom:1rem;
}
#hdm ul{
margin-bottom:4rem;
}
.btn_close {
display: block;
position: absolute;
right:30px;
top:25px;
width: 52px;
height: 52px;
border:5px solid #fff;
float:right;
}
.btn_close::before, .btn_close::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 5px;
height: 30px;
background: #fff;
}
.btn_close::before {
transform: translate(-50%,-50%) rotate(45deg);
}
.btn_close::after {
transform: translate(-50%,-50%) rotate(-45deg);
}
.btn_close:hover{
cursor:pointer;
}

/*====================================================
SPNAVI
====================================================*/
#spnav{
position:absolute;
right:30px;
display:none;
}
#sp-btn{
display: inline-block;
position: relative;
width: 51px;
height: 36px;
background:none;
top:0;
float:right;
}
#sp-btn:hover{
opacity:1;
}
#sp-btn-icon{
display: block;
position: absolute;
top: 50%;
left: 0;
width: 51px;
height: 5px;
background: #000;
transition: .2s;
}
#sp-btn-icon:before, #sp-btn-icon:after{
display: block;
content: "";
position: absolute;
top: 50%;
left: 0;
width: 51px;
height: 5px;
background: #000;
transition: .3s;
}
#sp-btn-icon:before{
margin-top: -19px;
}
#sp-btn-icon:after{
margin-top: 15px;
}

/*====================================================
MAIN
====================================================*/
#main{
}
.page #main{
padding-top:4rem;
}
.top-v2 #main{
padding-top:0;
}
#top1{
margin-bottom:2rem;
}
#tslide a:hover img,
#tslide a:hover{
opacity:1;
}
#tslide .item{
width:100%;
height:250px;
position:relative;
color:#fff;
}
#tslide .item a{
color:#fff;
font-size:42px;
display:block;
margin-bottom:2rem;
padding-right:2rem;
font-weight:600;
line-height:1.3;
text-shadow: 0px 0px 10px #000;
}
#tslide .item p{
padding-right:3rem;
font-size:14px;
line-height:1.7;
text-shadow: 0px 0px 5px #000;
}
#tslide .item1{
background:url(https://filmlab.vipo.or.jp/v1/common/img/slide1b.jpg) no-repeat center center;
background-size:cover;
}
#tslide .item2{
background:url(https://filmlab.vipo.or.jp/v1/common/img/slide2b.jpg) no-repeat center center;
background-size:cover;
}
#tslide .item3{
background:url(https://filmlab.vipo.or.jp/v1/common/img/slide3b.jpg) no-repeat center center;
background-size:cover;
}
#tslide .item .item_in{
position:absolute;
left:48%;
top:10%;
}
.sec h2{
text-align:center;
font-size:28px;
letter-spacing:8px;
position:relative;
margin-bottom:3.5rem;
}
.sec h2 .inside{
position:relative;
z-index:3;
line-height:1.7;
}
.sec h2 .en{
display:block;
font-size:16px;
letter-spacing:1px;
}
.sec h2:after{
content:"";
position:absolute;
height:70px;
width:100%;
background:#f0f0f0;
left:0;
top:30px;
z-index:0;
}
#newsbox .item{
width:30%;
border:1px solid #000;
position:relative;
margin-bottom:3rem;
}
#newsbox .item .txt{
padding:1.5rem;
line-height:1.3;
letter-spacing:1px;
}
#newsbox .item .date{
display:block;
font-weight:bold;
margin-bottom:1rem;
}
#newsbox .item:hover{
opacity:0.8;
cursor:pointer;
}
#newsbox .flex2::after{
content:"";
display: block;
width:30%;
}
.btn_list{
width:230px;
display:block;
margin:0 auto;
}
.btn_list a{
padding:0.5rem;
display:block;
border:1px solid #000;
text-align:center;
}

#top3,
#top2{
margin-bottom:6rem;
}

#coursebox .item{
width:30%;
margin-bottom:2rem;
}
#coursebox .flex2:after {
content: "";
display: block;
width: 30%;
height: 0;
}
#coursebox .item .img{
height:150px;
background:url(https://filmlab.vipo.or.jp/v1/common/img/course1.jpg) no-repeat;
background-size:cover;
color:#fff;
text-align:center;
padding-top:1rem;
line-height:1.5;
}
#coursebox .item:hover{
opacity:0.8;
cursor:pointer;
}
#coursebox .item.cs:hover{
opacity:1;
cursor:default;
}
#coursebox .item a{
color:#fff;
font-size:18px;
}
#coursebox .txt{
padding:1rem;
background:#ededed;
height:225px;
position:relative;
}
#newsbox .txt:after,
#coursebox .txt:after{
position:absolute;
content:"";
bottom:0;
right:0;
width: 21px;
height: 21px;
border-right: 21px solid rgba(0,0,0,1);
border-top: 21px solid transparent;
z-index:2;
}
#coursebox .txt p{
line-height:1.5;
font-size:16px;
letter-spacing:0;
}
#coursebox .item .num{
font-size:28px;
font-weight:bold;
display:block;
margin-bottom:0.5rem;
}
#coursebox .item2 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course2.jpg) no-repeat;}
#coursebox .item3 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course3.jpg) no-repeat;}
#coursebox .item4 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course4.jpg) no-repeat;}
#coursebox .item5 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course5.jpg) no-repeat;}
#coursebox .item6 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course6.jpg) no-repeat;}
#coursebox .item7 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course7.jpg) no-repeat;}
#coursebox .item8 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course8.jpg) no-repeat;}
#coursebox .item9 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course9.jpg) no-repeat;}
#coursebox .item10 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course10.jpg) no-repeat;background-size:cover;}
#coursebox .item11 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course11.jpg) no-repeat;background-size:cover;}
#coursebox .item12 .img{background:url(https://filmlab.vipo.or.jp/v1/common/img/course12.jpg) no-repeat;background-size:cover;}


#top4{
background:url(https://filmlab.vipo.or.jp/v1/common/img/contact_bg.jpg) no-repeat center center;
background-size:cover;
padding:5rem 0;
margin-bottom:6rem;
}
#top4 h2{
color:#fff;
font-size:20px;
letter-spacing:3px;
margin-bottom:2rem;
line-height:2;
}
#ft_contact{
width:500px;
background:#fff;
padding:1.3rem 3rem;
margin:0 auto;
}
#ft_contact:hover{
opacity:0.7;
cursor:pointer;
}
#ft_contact .org_name{
font-size:17px;
line-height:1.1;
letter-spacing:2px;
}
#ft_contact .org_name .spc1{
display:block;
letter-spacing:4px;
}
#ft_contact a{
font-size:22px;
margin-top:0.5rem;
padding-right:70px;
min-height:28px;
display:block;
background:url(https://filmlab.vipo.or.jp/v1/common/img/ico/email2.png) no-repeat right center;
background-size:42px 28px;
}
#ft_contact a:hover{
opacity:1;
}

#pagetop{
position:fixed;
bottom:2rem;
right:2rem;
width:44px;
}
/*====================================================
PAGE
====================================================*/
#breadcrumb{
margin-top:0.5rem;
}
#breadcrumb ul li{
margin-left:0.8rem;
padding-left:0.5rem;
display:inline;
font-size:12px;
}
#breadcrumb ul li:first-child{
margin:0;
padding:0;
}
#breadcrumb ul li:after{
content:">";
position:relative;
right:-0.7rem;
}
#breadcrumb ul li:last-child:after{
content:"";
}
#breadcrumb ul li a{
text-decoration:underline;
font-size:12px;
}

.newsyear{
background: #f0f0f0;
margin-bottom:3rem;
padding:1.2rem;
}
.newsyear ul{
text-align:center;
}
.newsyear ul li{
display:inline;
margin-left:2.5rem;
}
.newsyear ul li:first-child{
margin-left:0;
}
.newsyear ul li a{
text-decoration:underline;
font-size:16px;
}
.secnews h2{
text-align:center;
margin-bottom:3rem;
font-size:32px;
letter-spacing:5px;
}

#news{
margin-bottom:6rem;
}
.secnews #newsbox .item{
margin-bottom:3rem;
}
#newsbox .item .img img{
width:100%;
height:150px;
object-fit: cover;
}

.pager,
.pager ul{
text-align:center;
}
.pager ul li{
display:inline-block;
margin-left:0.3rem;
color:#ccc;
}
.pager ul li:first-child{
margin-left:0;
}
.pager ul li .current,
.pager ul li a{
padding:0.2rem 0.5rem;
display:block;
font-size:21px;
}
.pager ul li .current{
line-height:20px;
background:#000;
color:#fff;
border:1px solid #000;
}

.pager ul li a{
color:#000;
border:1px solid #000;
}


.ttlbg{
background:#f0f0f0;
}
.ttlbg h1{
font-size:26px;
padding:0.5rem 0;
margin-bottom:4rem;
}
.ttlbg h1 .date{
font-size:16px;
line-height:26px;
padding-right:2rem;
}
.entry p{
margin-bottom:3rem;
line-height:2.2;
font-size:16px;
}
.entry p.mb2{
margin-bottom:2rem;
}
.entry .img{
width:60%;
margin:0 auto 6rem auto;
}
.entry .img2{
width:60%;
margin:0 auto 4rem auto;
}
.entry a{
text-decoration:underline;
}

.entry .uline a{
text-decoration:none;
}
#single{
padding-bottom:10rem;
}

#catch_page{
width:100%;
height:285px;
background:url(https://filmlab.vipo.or.jp/v1/common/img/catch_news2.jpg) no-repeat center center;
background-size:cover;
position:relative;
}
#catch_page .catch_in{
width:373px;
height:285px;
background:rgba(192,0,23,0.7);
float:right;
}
#catch_page .h1,
#catch_page h1{
font-size:36px;
color:#fff;
text-align:right;
position:absolute;
right:50px;
bottom:50px;
letter-spacing:2px;
font-weight:700;
}
#catch_page .h1 .en,
#catch_page h1 .en{
display:block;
font-size:21px;
}
#naiyo,
#contact{
margin-bottom:6rem;
}
#naiyo table,
#contact table{
width:100%;
}
#naiyo table td,
#naiyo table th,
#contact table td,
#contact table th{
text-align:left;
padding:1rem 0;
}
#naiyo table td,
#contact table td{
padding-left:1.5rem;
}
#naiyo table th,
#contact table th{
width:200px;
vertical-align:top;
}
#contact .req{
float:right;
color:#fff;
background:#9d1729;
font-weight:normal;
padding:0 0.3rem;
font-size:12px;
}
#contact .ipt1{
padding:1rem;
width:65%;
}
#contact .txa{
width:100%;
height:200px;
}
#contact .flex{
}
#contact .flex .mwform-radio-field,
#contact .flex .wpcf7-list-item{
width:33%;
float:left;
display:block;
margin-bottom:1rem;
}
#contact .mw_wp_form .horizontal-item{
margin-left:0 !important;
}
.acceptance{
padding: 1rem;
text-align: center;
}
.link{
text-decoration:underline;
}
.btn_submit{
text-align:center;
}
.btn_submit input{
background:url(https://filmlab.vipo.or.jp/v1/common/img/btn_submit.png) no-repeat;
background-size:cover;
width: 366px;
height:50px;
margin:0 auto;
border:none;
text-indent:-1000px;
}

.tbl2{
border-collapse:collapse;
}
.tbl2 tr{
background:url(https://filmlab.vipo.or.jp/v1/common/img/line.png) repeat-x bottom;
}
.course_img{
margin:2rem 0;
}
.course_img .img{
text-align:center;
font-size:12px;
margin-right:2rem;
}
.course_img .img img{
width:242px;
margin-bottom:0.3rem;
}
.course_img .img:last-child{
margin-right:0;
}

.sec .description{
text-align:center;
font-size:18px;
line-height:2;
margin-bottom:4rem;
letter-spacing:1px
}
.sec .description .small{
display:block;
margin-top:0.5rem;
font-size:80%;
}

.entry .txt{
margin-bottom:4rem;
}
.entry .alignleft{
float:left;
margin:0 1rem 1rem 0;
}
.entry .alignright{
float:right;
margin:0 0 1rem 1rem;
}
.entry .aligncenter{
display:block;
text-align:center;
margin:0 auto;
}
.entry h3{
border-left:20px solid #ddd;
margin-bottom:1.5rem;
line-height:1.3;
padding:0 0 0 0.5rem;
}
.entry table{
border-collapse:collapse;
border-top:1px solid #ddd;
border-left:1px solid #ddd;
margin-bottom:1rem;
}
.entry table th,
.entry table td{
padding:0.5rem;
border-bottom:1px solid #ddd;
border-right:1px solid #ddd;
}
.entry table th{
background:#eee;
white-space:nowrap;
}

.course_txt p{
margin-bottom:1rem;
}
.btn_newc{
width:500px;
margin:0 auto 2rem auto;
}
.course{
margin-bottom:6rem;
}
.course h2{
background: #f0f0f0;
margin-bottom: 2rem;
padding:1.5rem 0;
text-align:center;
line-height:1;
font-size:30px;
letter-spacing:2px;
position:relative;
}
.course h2 .year{
position:absolute;
top:-16px;
left:0;
right:0;
}
.course h2 .small{
display:block;
font-size:18px;
}
.course li{
list-style:none;
margin-bottom:1rem;
}
.course li a{
border-bottom:1px solid #000;
}
.archivelist h1{
text-align:center;
margin-bottom:6rem;
}
.freetext{
margin:0 0 4rem 0;
}
/*====================================================
FOOTER
====================================================*/
#footer{
background:#000;
padding:3rem 0;
color:#fff;
}
#footer a{
color:#fff;
}
.logo_ft{
width:248px;
}
.copyright{
padding-top:0.5rem;
font-size:12px;
white-space:nowrap;
margin-bottom:2rem;
}
.ftr1{
margin-right:7rem;
}
.ftr1 dd{
margin-left:1rem;
}
#footer .flex2{
flex-direction: row-reverse;
}
.vipologo{
margin-left:1.5rem;
}
.vipologo img{
width:80px;
margin-left:1rem;
display:inline;
position:relative;
top:-5px;
}

hr{
height: 0;
margin: 0;
padding: 0;
border:0;
margin-bottom:2rem;
border-top: 1px solid #ccc;
border-bottom: 1px solid #fff;
}

/* added on 241014 */
#nslide{
background:#333333;
color:#fff;
height:auto;
}
#nslide{
width:100%;
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
}
#nslide a{
color:#fff;
padding:0.8rem 1.5rem;
display:block;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
#nslide a .cat{
background:#fff;
color:#333;
font-size:12px;
font-weight:bold;
padding:0 0.3rem;
letter-spacing:0;
}

/*====================================================
ANIMATION
====================================================*/
.ani{
opacity:0;
}
.ani.active {
animation:1s fadein forwards;
position:relative;
}
@keyframes fadein {
0% {
opacity: 0;
transform: translateY(10px);
}
100% {
opacity: 1;
transform: translate(0);
}
}


/*====================================================
BASE
====================================================*/
.ctr{text-align:center;}
.tgt{text-align:right;}
.tlt{text-align:left;}
.bold{font-weight:bold;}
.mb02{margin-bottom:0.2rem;}
.mb03{margin-bottom:0.3rem;}
.mb05{margin-bottom:0.5rem;}
.mt05{margin-top:0.5rem;}
.mb1{margin-bottom:1rem;}
.mb15{margin-bottom:1.5rem;}
.mb2{margin-bottom:2rem;}
.mb25{margin-bottom:2.5rem;}
.mb3{margin-bottom:3rem;}
.mb4{margin-bottom:4rem;}
.mb6{margin-bottom:6rem;}
.mb8{margin-bottom:8rem;}
.mt2{margin-top:2rem;}
.pt05{padding-top:0.5rem;}
.pb1{padding-bottom:1rem;}
.pt1{padding-top:1rem;}
.pt2{padding-top:2rem;}
.pt4{padding-top:4rem;}
.pt6{padding-top:6rem;}
.pt8{padding-top:8rem;}
.fff{color:#fff;}
.red{color:#cc0000;}
.big{font-size:150%;}
.med{font-size:120%;}
.txtlt{text-align:left;}
.txtgt{text-align:right;}
.txtctr{text-align:center;}
.txt9{font-size:9px;}
.txt10{font-size:10px;}
.txt11{font-size:11px;}
.txt12{font-size:12px;}
.txt13{font-size:13px;}
.txt15{font-size:15px;}
.txt16{font-size:16px;}
.txt18{font-size:18px;}
.txt20{font-size:20px;}
.txt21{font-size:21px;}
.txt24{font-size:24px;}
.txt25{font-size:25px;}
.txt30{font-size:30px;}
.txt32{font-size:32px;}
.lh1{line-height:1;}
.lh13{line-height:1.3;}
.lh15{line-height:1.5;}
.lh18{line-height:1.8;}
.lh20{line-height:2.0;}
.lh24{line-height:2.4;}
.ls01{letter-spacing:-1px;}
.ls02{letter-spacing:-2px;}
.ls03{letter-spacing:-3px;}
.ls04{letter-spacing:-4px;}
.ls05{letter-spacing:-5px;}
.ls06{letter-spacing:-6px;}
.img100 img,
.img100{
width:100%;
height:auto;
}

strike{
color:#d62154;
}
.yline{
color:#000;
background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #fffb80 0%) repeat scroll 0 0;
}
.shadow{text-shadow: rgba(0,0,0,0.5) 2px 2px 5px;}
.newsboxsp,
.none,
.sp{display:none;}
.pc{display:block;}

.rst{
margin:0;
padding:0;
}

/*====================================================
AFTER
====================================================*/
section:after,
.breadcrumb:after,
.cl:after,
.clearfix:after,
#main:after,
#navigation:after,
#footer:after,
#header:after{content:".";display:block;clear:both;height:0;visibility:hidden;font-size:0;}


/*====================================================
MEDIA QUERY
====================================================*/


@media screen and (max-width: 1080px) {
body{
font-size:18px;
}
#mn .item a{
font-size:14px;
}
#mn .item .en{
font-size:11px;
letter-spacing:0;
}
.spbr{
display:block;
}
.w1000{
width:100%;
}
#contact .w1000,
#single .w1000{
width:90%;
}
#breadcrumb.w1000{
width:96%;
}
#hd_logo{
margin-left:30px;
}
#nav,
#hd_contact{
display:none;
}
#spnav{
display:block;
}
#mn.v2 .item,
#mn .item{
width:33.333%;
}
#mn .item10{
display:none;
}
#newsbox{
width:94%;
margin:0 auto 2.5rem auto;
}
#newsbox .item{
width:48%;
}
#newsbox .item img{
width:100%;
}
#newsbox .item:last-child{
display:none;
}
.secnews #newsbox .item:last-child{
display:block;
}
.btn_list{
width:366px;
}
.btn_list a{
font-size:21px;
padding:0.8rem;
}
#newsbox .item .txt,
#newsbox .item .txt a{
font-size:18px;
}
#coursebox{
width:94%;
}
#coursebox .item{
width:48%;
}
#coursebox .txt{
height:200px;
}
#top4{
padding:6rem 0;
}
#top4 h2{
font-size:24px;
}
#footer{
padding-top:0;
}
#footer .flex2{
display:block;
}
.ftr{
margin-bottom:3.5rem;
}
.ftr li{
border-bottom:1px solid #fff;
}
.ftr dt{
padding:1.2rem;
border-bottom:1px solid #fff;
border-right:1px solid #fff;
line-height:1;
}
.ftr1 li{
border-right:1px solid #fff;
}
.ftr2,
.ftr1{
width:50%;
margin:0;
}
.ftr li a{
padding:1.2rem;
display:block;
}
.ftr .ftr1 li a{
padding-left:2.5rem;
}
.ftr1 dd{
margin-left:0;
}
.ftl .logo_ft{
margin:0 auto;
width:auto;
text-align:center;
}
.ftl .logo_ft img{
width:246px;
margin:0 auto 1rem auto;
}
.copyright{
font-size:16px;
}
#contact .flex .mwform-radio-field,
#contact .flex .wpcf7-list-item{
width:50%;
}
.w900{
width:90%;
}
}

@media screen and (max-width: 900px) {
.pc{display:none;}
.sp{display:block;}
.btn_refine{
width:100%;
}
#tslide .item .item_in{
left:30%;
}
#tslide .item1{
background:url(https://filmlab.vipo.or.jp/v1/common/img/slide1b_sp.jpg) no-repeat center center;
background-size:cover;
}
#tslide .item2{
background:url(https://filmlab.vipo.or.jp/v1/common/img/slide2b_sp.jpg) no-repeat center center;
background-size:cover;
}
#tslide .item3{
background:url(https://filmlab.vipo.or.jp/v1/common/img/slide3b_sp.jpg) no-repeat center center;
background-size:cover;
}
.pagenav .date, .pagenav .arw{
font-size:14px;
}
.pagenav .prevpost,
.pagenav .nextpost{
width:37.5%;
}
.pagenav .pageback{
width:18%;
padding:0;
}
.pagenav .pageback a{
top:41%;
}
.entry .img2,
.entry .img{
width:100%;
}
#contact table td,
#contact table th{
width:100%;
display:block;
}
#contact .req{
float:none;
margin-left:1rem;
}
#contact .ipt1{
width:100%;
}
.btn_submit input{
width:480px;
height:67px;
}
#catch_page .h1,
#catch_page h1{
font-size:30px;
}
.vipologo{
text-align:center;
margin:0;
}
#tslide .item a{
font-size:36px;
}
#tslide .item{
height:320px;
}
#tslide .item .item_in{
top:15%;
left:24%;
}
}