﻿/* all page */
.txt_color1{color: #5d7fff;} /* メインカラー */
.txt_color2{color: #bad2d5;} /* サブカラー */
.txt_color3{color: #f6ff6d;} /* アクセントカラー1 */
.txt_color4{color: #f6f5ee;} /* アクセントカラー2 */

.bg_color1{background-color: #5d7fff;} /* メインカラー */
.bg_color2{background-color: #bad2d5;} /* サブカラー */
.bg_color3{background-color: #f6ff6d;} /* アクセントカラー1 */
.bg_color4{background-color: #f6f5ee;} /* アクセントカラー2 */

.border_color1{border-color: #fff;}
.border_color2{border-color: #fff;}
.border_color3{border-color: #f6ff6d;}
.border_color4{border-color: #bad2d5;}

/* hover */
.hvr_txt_color1:hover{color: #007aff !important;} /* メインカラー */

.hvr_bg_color3:hover{background-color: #f6ff6d !important;} /* アクセントカラー1 */

.hvr_border_color3:hover{border-color: #f6ff6d !important;}


#loading_line .line {
    background: linear-gradient(51deg, #362ae0 0%,#3b79cc 50%,#42d3ed 100%);
}

h2,h3,h4{
	font-family: 'Noto Sans JP', sans-serif;
}

.linkStyle{
    border-bottom: 1px solid;
}


/* top */

/* header */

.is-fixed {
    background-color: rgba(255, 255, 255, 0.7);
	border-bottom: 1px solid #fff;
}

.top_nav ul li {
    text-shadow: 0px 0px 3px black;
}
.top_nav ul li:hover {
    text-shadow: 0px 0px 3px white;
}


/* main img */
.vegas-overlay {
    opacity: 0 !important;
}

.main_img_wrap .catch{
	bottom: 25px;
    left: 0;
	right: 0;
	animation-name: SlideIn;
	animation-delay: 2s;
	animation-duration:1s;
	animation-fill-mode:forwards;
	opacity:0;
	padding-left: 30px;
	padding-bottom: 30px;
}
@keyframes SlideIn{
  from {
    opacity: 0;
  transform: translateX(-100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}

.main_img_wrap .catch::before{
	animation: bg 0.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
	animation-delay: 2s;
  background: linear-gradient(to right, #362ae0 0%,#3b79cc 50%,#42d3ed 100%);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform-origin: left center;
	z-index: -1;
	opacity:0;
}
@keyframes bg {
  0% {
    opacity: 0;
    transform: scaleX(0) translateX(-5%);
  }
  30% {
    transform: scaleX(1) translateX(0);
  }
  100% {
    transform: scaleX(1) translateX(0);
  }
  30%, 100% {
    opacity: 1;
  }
}

.main_img_wrap .catch span {
	font-family: 'Noto Sans JP', sans-serif;
    font-size: calc(1rem + 35px);
	font-weight: 900;
	line-height: 2;
	background-color: transparent;
	color: #fff;
}
.main_img_wrap .catch span br {
    display: none;
}




/* main */
#luxy {
	background: linear-gradient(51deg, #42d3ed, #27dcc4, #5D7FFF, #2A57FF);
    background-size: 1000% 1000%;
    animation: GradientBackground 6s ease infinite;
}

	@keyframes GradientBackground {
		0% {
		background-position: 0% 50%;
		}

		50% {
		background-position: 100% 50%;
		}

		100% {
		background-position: 0% 50%;
		}
	}





/* contents */
#contents {
    padding-bottom: 20px;
	background-color: transparent;
	position: relative;
}
#contents::before{
	content: "ABOUT US";
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
	font-size: 220px;
	color: #fff;
	position: absolute;
	top: 0;
	left: -75px;
	opacity: 0.15;
}
#contents .box figure {
	color: transparent;
}
#contents .box figure:after {
    opacity: 0.3;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #fff), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #fff),color-stop(.75, #fff), color-stop(.75, transparent),to(transparent));
	-webkit-background-size: 14px 14px;
}
#contents .box:nth-child(3) {
    margin-top: 140px;
	margin-bottom: 140px;
}
#contents .box:nth-child(odd) figure:after {
    right: 50%;
}

#contents .box .txt_wrap {
    z-index: 2;
}
#contents .box h3 span{
	color: #fff;
}
#contents .box h3:before {
    color: #f6ff6d;
}

#contents .box .txt_wrap .t_cms_txt4{
	color: #fff;
}
#contents .box .txt_wrap .t_cms_txt7{
	color: #fff;
}
#contents .box .txt_wrap .t_cms_txt10{
	color: #fff;
}

.svg_box{
	display: none;
}

.img-container:before {
    background: #bbf3ff;
}
.t_cms_img2 .img-container:before {
    background: #55caff;
}






/* topcms */
#top_cms{
	background-color: #f3f3f3;
	position: relative;
	padding-top: 0;
	margin-top: 100px;
}
#top_cms:before{
	display: none;
}

#top_cms .top_cms_box:last-child {
    padding-bottom: 40px;
}

#top_cms .line {
    display: none;
}

#top_cms .top_cms_box .cms_title{
    position: relative;
}
#top_cms .top_cms_box .cms_title:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -10px;
    margin: auto;
    display: inline-block;
    width: 35px;
    height: 2px;
    background-color: #5d7fff;
}

.top_cms_box {
    background-color: rgba(255, 255, 255, 0.4);
	padding: 40px;
	border-radius: 5px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 50px;
}
.top_cms_box:before {
    display: none;
}

.cms_title{
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
}
.cms_title p span.letter_3{
	color: #333;
}
#top_cms .cms_title p .letter_1 {
    color: #5d7fff;
}

.cms_2-c .box_description2{
    border-left: 3px solid #5d7fff;
}

.cms_6-a .cate_box{
    border-color: #5d7fff;
}



/* other */
.other .other_link .loader{
	background: linear-gradient(to right, #007aff 0%,#2fc6ff 100%);
	position: relative;
}
.other .other_link .loader::before{
	background-color: #fff;
	content: "";
	display: block;
	position: absolute;
	top: -100px;
	left: 0;
	width: 30px;
	height: 100%;
	opacity: 0;
	transition: cubic-bezier(0.32, 0, 0.67, 0);
}
.other .other_link .loader:hover::before{
	animation: kiran 0.5s linear 1;
}
@keyframes kiran {
  0% {
    transform: scale(2) rotate(45deg);
    opacity: 0;
  }
  20% {
    transform: scale(20) rotate(45deg);
    opacity: 0.6;
  }
  40% {
    transform: scale(30) rotate(45deg);
    opacity: 0.4;
  }
  80% {
    transform: scale(45) rotate(45deg);
    opacity: 0.2;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

.other .box {
    border: 2px solid #fff;
}

.other .box_title2 {
    color: #fff;
}
.other .box_title {
    color: #f6ff6d;
}
.other .box_title span {
    color: #fff;
}

.sns_box {
    background-color: #f3f3f3;
}
.sns_links li {
    max-width: 40px;
    height: 40px;
}


/* footer */
footer {
    background-color: #d4ecef;
}
#footer p{
	color: #1E1E1E;
}

footer .svg_box {
    display: none;
}


#page-top a{
	background-color: #362ae0;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
}



/* under page */
.all_page {
	background: linear-gradient(51deg, #2FC6FF, #5D7FFF, #15DDDD , #2A57FF);
    background-size: 800% 800%;
    animation: GradientBackground 10s ease infinite;
}

	@keyframes GradientBackground {
		0% {
		background-position: 0% 50%;
		}

		50% {
		background-position: 100% 50%;
		}

		100% {
		background-position: 0% 50%;
		}
	}
.page2 .sns_box ,.page3 .sns_box ,.page4 .sns_box ,.page5 .sns_box ,.page6 .sns_box ,.page7 .sns_box ,.page8 .sns_box ,.page9 .sns_box ,.page10 .sns_box{
    background-color: transparent;
}



.page_title_box:before {
    color: #f6ff6d;
}

#title_img span::after {
    background-color: rgba(123,234,244,0.3);
    content: '';
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: 3;
}

.cate_list li a {
	background-color: rgba(255, 255, 255, 0.5);
	border: 1px solid #5d7fff;
	border-radius: 5px;
	box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px;
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cate_list li a:hover {
    transform: translateY(-5px);
	color: #333 !important;
}


.cate{
	background-color: rgba(255, 255, 255, 0.7);
	padding: 40px;
	border-radius: 5px;
}
.cate h3{
	color: #5d7fff;
}



/* cms1 */
#cms_1-c .cate_box{
    background-color: rgba(255, 255, 255, 0.7);
	padding: 40px;
	border-radius: 5px;
	border: 1px solid #5d7fff;
}

.date{
    color: #362ae0;
}

.pager li a{
    margin: 0 5px;
}
.pager li a span{
    border-color: #5d7fff;
}
.pager li a span:hover{
    background-color: #5d7fff;
}


/* cms2 */
#cms_6-a .cate{
	background: none;
	padding: 0;
	border-radius: 0;
	box-shadow: none;
}
#cms_6-a .cate_title{
    background-color: rgba(93, 127, 255, 0.7);
	padding: 10px;
	border-radius: 5px;
	color: #fff;
}
#cms_6-a .box_wrap{
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 5px;
    border-color: #5d7fff;
}
#cms_6-a .box_wrap .cate_box{
    border-color: #5d7fff;
}



/* cms3 */
#cms_2-c .cate_title{
    color: #5d7fff;
    border: 1px solid #5d7fff;
    background-color: rgba(255, 255, 255, 0.7);
    padding: 10px;
	border-radius: 5px;
}
#cms_2-c .cate{
	background: none;
	padding: 0;
	border-radius: 0;
	box-shadow: none;
}
#cms_2-c .cate_box .box_description2{
    background-color: rgba(255, 255, 255, 0.7);
	padding: 20px;
	border-radius: 5px;
	border: 1px solid #5d7fff;
}
#cms_2-c .cate_box .box_description2 .box_txt1{
    color: #5d7fff;
}
#cms_2-c .box_item {
    padding-top: 0;
}


/* cms4 */
#cms_4-a .cate{
    border: 1px solid #5d7fff;
}

#cms_4-a h4{
    color: #333;
}


/* cms5 */

/* page7 */
#page7 .company_wrap{
    background-color: rgba(255, 255, 255, 0.7);
	padding: 40px;
	border-radius: 5px;
}
#page7 .box_item h3{
    color: #5d7fff;
}
#page7 .box_item p{
    color: #333;
}
#page7 .box{
    border-color: #5d7fff;
}
#page7 .box_item{
    border-color: #5d7fff;
}


/* page8 */
#tel_CONTACT{
    background-color: rgba(255, 255, 255, 0.6);
	padding: 30px;
	border-radius: 5px;
	border-color: #5d7fff;
}
#tel_CONTACT h3{
    color: #5d7fff;
}
#tel_CONTACT p a{
    border-radius: 5px;
}
#tel_CONTACT p a:hover{
    background-color: #5d7fff !important;
    opacity: 0.7;
}
#tel_CONTACT #tel_txt > div{
    border-color: #5d7fff;
}
#tel_CONTACT #tel_txt p{
    border-color: #5d7fff;
}

.banner a{
    border-radius: 5px;
}


/* page9 */
#page9 .box_wrap{
    background-color: rgba(255, 255, 255, 0.6);
	padding: 20px;
	border-radius: 5px;
}
#page9 h3{
    border-color: #5d7fff;
}


/* page10 */
.page10 .more_box .more {
    background-color: rgba(255, 255, 255, 0.3);
}



/* IE */
@media all and (-ms-high-contrast: none){
    #cms_2-c .cate_title{
        padding-bottom: 5px;
    }
    
    
    .banner a{
        padding-bottom: 5px;
    }
    
}

/* ---------- 990px以下 ---------- */
@media screen and (max-width: 990px){
	.main_img_wrap .catch span br {
		display: inline;
	}
	.main_img_wrap .catch {
		bottom: 10px;
		padding-bottom: 40px;
	}
	
	
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
    
	#contents::before {
		font-size: 180px;
		left: -70px;
	}
	#contents .box .txt_wrap {
        width: 90%;
        padding-right: 0px;
    }
    #contents .box figure {
        width: 90%;
        margin-top: 30px;
    }
	#contents .box:nth-child(3) {
		margin-top: 100px;
		margin-bottom: 100px;
	}
	#contents .box:nth-child(3) .txt_wrap {
        order: 1;
        margin-top: 0;
    }
    #contents .box:nth-child(3) figure {
        order: 2;
        margin-top: 30px;
    }
	
	#top_cms {
		padding-top: 90px;
	}
	
	.cms_2-c .box_item {
        width: 100%!important;
        border: none;
    }
    .cms_2-c .box_description1 {
        order:1;
    }
    .cms_2-c .box_description2 {
        order:2;
    }
    
    
    
    #cms_2-c .box_item {
        width: 100%!important;
    }
    #cms_2-c .box_description1 {
        order:1;
    }
    #cms_2-c .box_description2 {
        order:2;
    }
    #cms_2-c .cate_box {
        padding-bottom: 50px;
    }
    
	
}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
    .overlay ul li a{
        letter-spacing: 0px;
        padding-left: 0;
        padding-right: 0;
        font-size: 13px;
    }
    
	.main_img_wrap .catch {
		bottom: 10px;
		padding-left: 10px;
		padding-bottom: 25px;
	}
	.main_img_wrap .catch span {
		font-size: calc(1rem + 12px);
		font-weight: 500;
		line-height: 1.8;
	}
	.main_img_wrap .navi {
		bottom: 30px;
	}
	.navi a {
		width: 40px;
		line-height: 40px;
	}
	
	#top_cms {
		padding-top: 0;
	}
	
	#top_cms .top_cms_box {
		padding-bottom: 30px;
		padding-top: 30px;
		padding-right: 20px;
		padding-left: 20px;
	}
	
	
	#cms_1-c .cate_box {
        padding: 20px;
    }
    
    #tel_CONTACT{
    	padding: 20px;
    }
	
}

