@charset "utf-8";
/* CSS Document */
#mainvisual{background: url("../../images/top/mv_bg.jpg") repeat-x; text-align: center; line-height: 1; position: relative;}
#mainvisual .inner{max-width: 1600px; margin: 0 auto; position: relative;}
#mainvisual .btn2{width: 52%; position: absolute; bottom: 20%; left: 43%;}
#mainvisual .btn2 a{display: block; margin: 1.5% 1% 0 0;float: left;width: 32%;}
#mainvisual .btn2 a:hover{opacity: .8;}

#mainvisual .btn{position: absolute; top: 72%; right: 20px; width: 298px; height: 100px; overflow: hidden; background: #fff;}
#mainvisual .btn img{position: relative; z-index: 10;}
#mainvisual .btn:before {content: ''; position: absolute; top: 50%; left: 50%; width: 130%; height: 350%; z-index: 1;
background: linear-gradient(-90deg, #FF00A1, #F6FF00);
animation: anime 3s linear infinite; -webkit-animation: anime 3s linear infinite;}
#mainvisual .btn:hover img{opacity: .9;}
#mainvisual .btn3{position: absolute; top: 96%; right: 20px; width: 298px; height: 100px; overflow: hidden; background: #fff;}
#mainvisual .btn3 img{position: relative; z-index: 10;}
#mainvisual .btn3:before {content: ''; position: absolute; top: 50%; left: 50%; width: 130%; height: 350%; z-index: 1;
background: linear-gradient(-90deg, #FF00A1, #F6FF00);
animation: anime 3s linear infinite; -webkit-animation: anime 3s linear infinite;}
#mainvisual .btn3:hover img{opacity: .9;}


@keyframes anime {
0% {transform: translate(-50%, -50%) rotate(0deg);}
100% {transform: translate(-50%, -50%) rotate(360deg);}
}
@-webkit-keyframes anime {
0% {transform: translate(-50%, -50%) rotate(0deg);}
100% {transform: translate(-50%, -50%) rotate(360deg);}
}

.attension{background: #f3741a; color: #fff; padding: 60px 0 0;}
.attension .a_cont { padding:30px;border:2px solid #fff;text-align: center; }
.attension h5 {font-size:24px;font-weight:bold;padding:10px;background: #e73901;margin:0 0 15px;}
.attension p {font-size:16px;}
.attension .second_box {margin:20px 0 0;}
.attension .second_box p {margin:20px 0 0;}

#news{background: #f3741a; color: #fff; padding: 35px 0; margin: 0 0 100px;}
#news .content{display: flex;}
#news .tit{width: 145px; font-size: 18px; line-height: 1.5; font-weight: 600; letter-spacing: 0.2em; font-family: 'Poppins', sans-serif;}
#news dl{width: calc(100% - 145px); display: flex; flex-wrap: wrap;}
#news dt{width: 90px;}
#news dd{width: calc(100% - 90px); margin: 0 0 8px;}
#news dd:last-of-type{margin: 0;}
#news dd a{text-decoration: underline;}
#news dd a:hover{opacity: .8;}

#group{margin: 0 0 50px; display: flex; justify-content: space-between; flex-wrap: wrap;}

#bnr{width: 50%;}
#bnr li{margin: 0 0 10px;}
#bnr li:last-of-type{margin: 0;}
#bnr a:hover{opacity: .8;}

#twitter{width: 29.6%;}
#twitter .tit_en{margin: 0 0 25px;}
#twitter .box{height: 382px; overflow: auto;}

#fair{width: 14.82%;}
#fair .tit{font-weight: 500; line-height: 1.2; margin: 0 0 15px; padding: 0 0 0 25px; position: relative;}
#fair .tit:before{content: ''; width: 12px; height: 2px; margin: 0 14px 0 0; display: block; background: #e96f19; position: absolute; top: 0.8em; left: 0;}
#fair .slick-slide{margin: 4px 0;}
#fair .slick-slide div{display: block !important; line-height: 1;}

#bnr2{max-width: 820px; display: flex; justify-content: space-between; margin: 0 auto;}
#bnr2 a{width: 48.8%;}
#bnr2 a:hover{opacity: .8;}

#contact{padding-bottom: 0;}

#bnr3{max-width: 800px; margin: 0 auto; padding: 60px 0; display: flex; flex-wrap: wrap; justify-content: space-between;}
#bnr3 a{width: 32.5%;}
#bnr3 a:hover{opacity: .8;}

#catalogue{display: flex; flex-wrap: wrap; padding: 0 0 90px;}
#catalogue li{width: /*31.482%*/23.611111%; margin: /*0 2.777% 2.777% 0*/0 1.851852% 1.851852% 0; background: #f3741a; color: #fff; text-align: center; font-weight: 500;}
#catalogue li:last-of-type {margin: /*0 2.777% 2.777% 0*/0 0 1.851852% 0}
/*#catalogue li:nth-of-type(3n){margin: 0 0 2.777%;}*/
#catalogue a{display: block; padding: 0 0 30px;}
#catalogue figure{overflow: hidden;}
#catalogue figure img{transition: all 1s ease;}
#catalogue .tit_en{padding: 25px 0 10px;}
#catalogue .tit_en:before{background: #fff;}
#catalogue .txt{font-size: 20px; line-height: 1; margin: 0 0 25px;}
#catalogue .btn{color: #f3741a; background: #fff; width: 180px; margin: 0 auto; line-height: 50px; border-radius: 50px; position: relative;}
#catalogue .btn:after{content: ''; position: absolute; top: calc(50% - 5px); right: 14px; 
border: solid #f3741a; border-width: 0 1px 1px 0; display: inline-block; padding: 5px; transform: rotate(-45deg);}
#catalogue li a:hover{background: #f46805;}
#catalogue a:hover figure img{transform: scale(1.1);}

.catalogue2{padding: 0 0 90px;max-width:1300px;width:100%;margin:0 auto;}
.catalogue2 #cataloguebox1 {float:left;width: 26.153846%;margin-right:1.538462%;}
.catalogue2 #cataloguebox2 {float:left;width: 26.153846%;margin-right:1.538462%;}
.catalogue2 #cataloguebox3 {float:left;width: 44.615385%;}
.catalogue2 #cataloguebox2 a {display: block;}
.catalogue2 #cataloguebox2 a:nth-of-type(1){ padding: 0 0 20px;}
.catalogue2 a:hover {opacity:0.8;}

#cataloguebox_vr {background: #f3741a;color: #fff;padding: 50px 0 10px;display: block;text-align: center;}
#cataloguebox_vr h5 {font-size:18px;font-weight:bold;margin-bottom:10px;}
#cataloguebox_vr h5 br {display: none;}

#fairOnline{background: url("../../images/top/faironline_bg.jpg") no-repeat center center/cover; text-align: center; padding: 0 0 130px;}
#fairOnline .tit{font-size: 26px; font-weight: bold; color: #f3741a; background: #fff; padding: 18px 0; display: inline-block; max-width: 690px; width: 100%; border-radius: 80px; position: relative; top: -40px;}
#fairOnline .tit:after{content: ''; width: 27px; height: 21px; background: url("../../images/top/faironline_down.png") no-repeat top left/100% auto; display: inline-block; margin: 0 0 0 1em;}

#fairOnline .txt{margin: 230px 0 60px;}
#fairOnline .btn{max-width: 924px; margin: 0 auto 80px; display: flex; flex-wrap: wrap;}
#fairOnline .btn a{width: 48.052%; margin: 0 3.896% 2% 0; display: block;}
#fairOnline .btn a:nth-of-type(2n){margin: 0 0 2%;}
#fairOnline .btn a:hover{opacity: .8;}

#fairOnline .btn2{font-size: 26px; color: #fff; font-weight: bold; width: 400px; margin: 0 auto 30px; display: block; background: linear-gradient(to right, #e73700, #f16500); padding: 18px 0; border-radius: 80px; position: relative; box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.3);}
#fairOnline .btn2:after{content: ''; position: absolute; top: calc(50% - 3px); right: 8%; 
border: solid #fff; border-width: 0 1px 1px 0; display: inline-block; padding: 3px; transform: rotate(-45deg);}
#fairOnline .btn2:hover{background: #e73700;}

#fairOnline .btn3{font-weight: bold; width: 320px; margin: 0 auto; display: block; background: #fff; padding: 8px 0; border-radius: 50px; position: relative; box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.3);}
#fairOnline .btn3:after{content: ''; position: absolute; top: calc(50% - 3px); right: 8%; 
border: solid #000; border-width: 0 1px 1px 0; display: inline-block; padding: 3px; transform: rotate(-45deg);}
#fairOnline .btn3:hover{background: #f16500; color: #fff;}
#fairOnline .btn3:hover:after{border: solid #fff; border-width: 0 1px 1px 0;}

.posRel{position: relative;}
.posAbs{position: absolute; top: -50px; left: 0;}

/* seminar */
#seminar .tit{letter-spacing: 0.25em; font-weight: 600; font-family: 'Poppins', sans-serif; text-align: center; margin: 0 0 50px;}
#seminar .tit:before{content: ''; width: 12px; height: 2px; margin: 0 14px 0 0; display: inline-block; vertical-align: middle; background: #e96f19;}
#seminar .tit span{font-size: 34px; letter-spacing: 0; font-family: 'Noto Sans JP', sans-serif; display: block;}
#seminar .tit2{text-align: center; font-size: 24px; font-weight: 500; color: #f3741a; background: #fef1e8; padding: 9px 0; margin: 0 0 30px;}
#seminar .txt{font-size: 24px; line-height: 1.3; color: #e96f19; font-weight: 500;}
#seminar .txt2{font-size: 20px; line-height: 1.3; color: #e96f19; font-weight: 500; margin: 0 0 15px;}

#seminar .box{border: 2px solid #f3741a; padding: 8px 28px; margin: 0 0 30px;}
#seminar .rows{padding: 20px 0; border-bottom: 1px dotted #d6d6d6;}
#seminar .rows:last-of-type{border-bottom: none;}
#seminar .boxFlex{display: flex; flex-wrap: wrap;}

#seminar .col1{width: 180px; margin: 0 20px 0 0; font-size: 18px; font-weight: 500; color: #fff; background: #e96f19; text-align: center; display: flex; align-items: center; justify-content: center;}
#seminar .col2{width: calc(100% - 200px);}
#seminar .col2 .txt{color: #333;}
#seminar .bold{font-weight: 500;}
#seminar .item{margin: 0 20px 0 0;}
#seminar .item:last-of-type{margin: 0;}
#seminar .item figure{margin: 0 0 12px;}
#seminar .txtSpace{padding: 15px 0 35px;}
#seminar .txtSpace2{padding: 15px 0 0;}
#seminar .cap{font-size: 12px; line-height: 1.5;}
#seminar .name{font-size: 22px; line-height: 1.55;}
#seminar .name span{font-size: 16px;}
/*#seminar .box1,
#seminar .box2,
#seminar .box3,
#seminar .box4{opacity:0.3;}*/
#seminar .closed {position:relative;}
#seminar .closed:before {position:absolute;content:"配信は終了しました。";display:none;top:50%;left:35%;background:#313131;color:#fff;padding: 12px 50px;text-align: center;font-size:24px;z-index: 2;}
#seminar .col2 .btn1,
#seminar .col2 .btn2{font-size: 12px; padding: 8px 20px; border-radius: 3px; position: relative; top: -3px; margin: 0 0 0 5px;}
#seminar .col2 .btn1{background: #eb2222; color: #fff; font-size: 12px;}
#seminar .col2 .btn2{border: 1px solid #eb2222; color: #eb2222;}
#seminar .closedTxt {font-size:18px;background:#313131;color:#fff;padding: 6px 16px;text-align: center;margin:0 0 0 10px;}

.closeTxt {background: #f3741a;color: #fff;padding: 50px 0;margin: 0 0 100px;text-align: center;}
.closeTxt h5 {font-size:24px;font-weight:bold;}
.closeTxt p {font-size:16px;}

/* ============== Media =============== */
@media only screen and (max-width: 1600px){
    #mainvisual .btn{width: 19.25vw; height: 6.425vw;}
	#mainvisual .btn3{width: 19.25vw; height: 6.425vw;}
}

@media only screen and (max-width: 1200px){
.catalogue2 #cataloguebox2 a:nth-of-type(1){padding: 0 0 1.7vw;}
}

@media only screen and (max-width: 1080px){
    #catalogue{font-size: 1.2vw;}
    #catalogue a{padding: 0 0 3vw;}
    #catalogue .tit_en{padding: 2.5vw 0 1vw;}
    #catalogue .txt{font-size: 1.8vw; margin: 0 0 2.5vw;}
    #catalogue .btn{width: 60%; line-height: 5vw;}

    
    #fairOnline{padding: 0 0 13vw;}
    #fairOnline .txt{margin: 23vw 0 6vw;}
    #fairOnline .btn{margin: 0 auto 8vw;}
}

@media only screen and (max-width: 1000px){
    #seminar .box1 .item{margin: 0 20px 20px 0;}
}

@media only screen and (max-width: 768px){
    #mainvisual img{width: 100%;}
    #mainvisual .btn2{width: 60%; position: static; margin: 0 auto 4vw;}    
    #mainvisual .btn{width: 65vw; height: 21.777vw; position: relative; top: auto; right: auto; display: block; margin: 0 auto 3vw;}
	#mainvisual .btn3{width: 65vw; height: 21.777vw; position: relative; top: auto; right: auto; display: block; margin: 0 auto 5vw;}
	#mainvisual .btn2 a{margin: 1.5% 0 0 0;float: none;width: 100%;}
        
    #group{margin: 0 0 15vw;}
    
	.attension{padding: 40px 0 0;}
	.attension .a_cont { padding:20px;text-align: left; }
	.attension h5 {font-size:5vw;}
	.a_cont p.sp_br br {display: none;}
	.attension p {font-size:3.5vw;}

	
    #news{padding: 5vw 0; margin: 0 0 15vw;}
    #news .content{flex-wrap: wrap;}
    #news .tit{width: 100%; font-size: 4.6vw;}
    #news dl{width: 100%;}
    #news dt{width: 23%;}
    #news dd{width: 77%; margin: 0;}
    
    #bnr{width: 100%; text-align: center; margin: 0 0 15vw;}
    #bnr li{margin: 0 0 2.5vw;}
    #bnr img{width: 100%;}
    
    #twitter{width: 100%; margin: 0 0 15vw;}
    #twitter .tit_en{margin: 0 0 4vw;}
    #twitter .box{height: 100vw;}
    
    #fair{width: 100%;} 
    #fair .tit{font-size: 3.5vw; padding: 0 0 0 6vw; margin: 0 0 4vw;}
    #fair .tit:before{width: 3vw; height: 0.4vw; top: 0.6em;} 
    #fair .slick-slide{margin: 0 1vw;}
    #fair .slick-slide img{width: 100%;}
    
    #bnr2{margin: 0 auto; flex-wrap: wrap; text-align: center;}
    #bnr2 a{width: 100%;}
    #bnr2 a:nth-of-type(1){margin: 0 0 3vw;}        
    
    #bnr3{padding: 15vw 0 28vw;}
    
    #catalogue{font-size: 3.5vw; padding: 0 0 15vw;}
    #catalogue li{width: 100%; margin: 0 0 5vw !important;}
    #catalogue li img{width: 100%;}
    #catalogue a{padding: 0 0 7vw;}    
    #catalogue .tit_en{padding: 6vw 0 2.5vw;}    
    #catalogue .txt{font-size: 5vw; margin: 0 0 6vw;}
    #catalogue .btn{line-height: 12vw;}
    #catalogue .btn:after{right: 7%; padding: 1vw;}
	
	.catalogue2 {padding:0 13% 90px;}
	.catalogue2 #cataloguebox1 {float:left;width: 48%;margin-right:4%;}
	.catalogue2 #cataloguebox2 {float:left;width: 48%;margin-right:0;}
	.catalogue2 #cataloguebox2 a:nth-of-type(1){padding: 0 0 2.5vw;}
	.catalogue2 #cataloguebox3 {float:none;width: 100%;padding:20px 0 0;clear: both;}
	
	#cataloguebox_vr {padding: 30px 0 10px;}
	#cataloguebox_vr h5 {font-size:4vw;margin-bottom:10px;}
	#cataloguebox_vr h5 br {display: block;}
    
    #fairOnline .tit{font-size: 3.8vw; padding: 3vw 0; top: -6vw;}
    #fairOnline .tit:after{width: 3.2vw; height: 2.5vw; margin: 0 0 0 0.5em;}
    #fairOnline .btn2{font-size: 4vw; width: 70%; padding: 3vw 0; margin: 0 auto 5vw;}
    #fairOnline .btn2:after{right: 4%;}
    #fairOnline .btn3{width: 65%; padding: 2vw 0;}
    #fairOnline .btn3:after{right: 4%;}
    
    .posAbs{top: -20vw;}
	
	#seminar .tit{font-size: 3.5vw; margin: 0 0 7vw;}
    #seminar .tit:before{width: 3vw; height: 0.4vw; margin: 0 3vw 0 0;}
    #seminar .tit span{font-size: 6vw; line-height: 1.7;}
    #seminar .tit2{font-size: 5vw; margin: 0 0 5vw;}
    #seminar .txt{font-size: 5vw;}
    #seminar .txt2{font-size: 4vw; margin: 0 0 2vw;}
    #seminar .box{padding: 2vw 4vw; margin: 0 0 7vw;}
    #seminar .rows{padding: 2vw 0;}    
    #seminar .col1{font-size: 3.8vw; width: 48%; margin: 0 0 2vw;}
    #seminar .col2{width: 100%;}
    #seminar .item{width: 48.5%; margin: 0 3% 0 0;}
    #seminar .item:nth-of-type(2n){margin-right: 0;}
    #seminar .item img{width: 100%;}
    #seminar .item figure{margin: 0;}
    #seminar .txtSpace{padding: 2vw 0 4vw;}
    #seminar .txtSpace2{padding: 2vw 0 0;}
    #seminar .cap{font-size: 2.8vw;}
    #seminar .name{font-size: 4.5vw;}
    #seminar .name span{font-size: 3.5vw;}
    
    #seminar .box1 .item{width: 100%; max-width: 100%; display: flex; justify-content: space-between; margin: 0 0 3vw;}
    #seminar .box1 .item figure{width: 48.5%;}
    #seminar .box1 .item .cont{width: 48.5%;}
	#seminar .col2 .btn1, 
    #seminar .col2 .btn2{font-size: 2.57vw; padding: 1vw 1vw; margin: 10px 0 0 0; display: inline-block;}
	#seminar .closed:before {top:50%;left:22%;padding: 12px 20px;font-size:5vw;}
	#seminar .closedTxt {font-size:4vw;padding: 4px 6px;display: block; margin:10px 0 0 0;}
	
	.closeTxt {padding: 30px 0;margin: 0 0 50px;text-align: left;}
	.closeTxt h5 {font-size:5vw;}
	.closeTxt p {text-align: left;font-size:3.8vw;}
	.closeTxt p br {display:none;}
	
}

@media only screen and (max-width: 480px){
    #fairOnline .btn{width: 84%;}
    #fairOnline .btn a{width: 100%; margin: 0 0 1vw;}
	
	.catalogue2 {padding:0 5% 90px;}
	
	#seminar .closed:before {left:18%;}
}
