/* CSS Document */
html {
    scroll-behavior: smooth;
}
body{
	background-color: #121212;
	color: aliceblue;
	font-size: 25px;
	line-height: 150%
}
header{
	
}
footer{
    border-top: 1px solid hsl(0deg 0% 100% / 40%);
    padding: 20px 5px;
    margin: 25px auto 0px;
    width: 90%;
    font-size: 0.5em;
    line-height: 130%;
    text-align: center;
}

/*
===================================================
	キラーん
===================================================
*/
.kira{
    width: auto;
    height: auto;
    position: relative;
    overflow: hidden;
}
.kira::after{
  content: "";
  display: block;
  width: 30px;
  height: 100%;
  position: absolute;
  top: -180px;
  left: 0;
  background-color: #5cffea;
  opacity: 0;
  transform: rotate(45deg);
  animation: reflect 2s ease-in-out infinite;
  -webkit-transform: rotate(45deg);
  -webkit-animation: reflect 2s ease-in-out infinite;
}
@keyframes reflect{
  0% { transform: scale(0) rotate(45deg); opacity: 0; }
  80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
  81% { transform: scale(4) rotate(45deg); opacity: 1; }
  100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes reflect{
  0% { transform: scale(0) rotate(45deg); opacity: 0; }
  80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
  81% { transform: scale(4) rotate(45deg); opacity: 1; }
  100% { transform: scale(50) rotate(45deg); opacity: 0; }
}

/*
===================================================
	星空
===================================================
*/

@keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}
@-webkit-keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}
@-moz-keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}
@-ms-keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}

@keyframes move-clouds-back {
    from {background-position:0 0;}
    to {background-position:10000px 0;}
}
@-webkit-keyframes move-clouds-back {
    from {background-position:0 0;}
    to {background-position:10000px 0;}
}
@-moz-keyframes move-clouds-back {
    from {background-position:0 0;}
    to {background-position:10000px 0;}
}
@-ms-keyframes move-clouds-back {
    from {background-position: 0;}
    to {background-position:10000px 0;}
}

.animsition, .animsition-overlay {
    position: relative;
    opacity: 0;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
	    height: auto !important;
    animation-duration: 750ms;
    opacity: 1;
}

.stars {
    background: #000 url(../emogru-img/stars.png) repeat top center;
    z-index: -10;
}
.stars, .twinkling, .clouds {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: block;

}
.twinkling {
    background: transparent url(../emogru-img/twinkling.png) repeat top center;
    z-index: -9;
    -moz-animation: move-twink-back 200s linear infinite;
    -ms-animation: move-twink-back 200s linear infinite;
    -o-animation: move-twink-back 200s linear infinite;
    -webkit-animation: move-twink-back 200s linear infinite;
    animation: move-twink-back 200s linear infinite;

}
.clouds {
    background: transparent url(../emogru-img/clouds.png) repeat top center;
    z-index: -8;
    -moz-animation: move-clouds-back 200s linear infinite;
    -ms-animation: move-clouds-back 200s linear infinite;
    -o-animation: move-clouds-back 200s linear infinite;
    -webkit-animation: move-clouds-back 200s linear infinite;
    animation: move-clouds-back 200s linear infinite;
}

/*
===================================================
	流星
===================================================
*/

.lines {
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	height:100%;
	display:block;
	z-index: -3;
}
.lines .line {
	position: absolute;
	width: 1px;
	height: 100%;
	top: 0;
	left: 50%;
	/*background: rgba(255, 255, 255, 0.1);*/
	overflow: hidden;
	transform:skew(-17deg,-17deg);
}
.lines .line::after {
    content: '';
    display: block;
    position: absolute;
    height: 15vh;
    width: 100%;
    top: -50%;
    left: 0;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #ffffff 75%, #00fff5 100%);
    animation: run 7s 0s infinite;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(0.4, 0.26, 0, 0.97);
}
.lines .line:nth-child(1) {
	margin-left: -25%;
	transform:skew(-15deg,-15deg);
}
.lines .line:nth-child(1)::after {
	animation-delay: 1.5s;
}
.lines .line:nth-child(3) {
	margin-left: 30%;
	transform:skew(18deg,18deg);
}
.lines .line:nth-child(3)::after {
	animation-delay: 2s;
}
    
@keyframes run {
	0% {top: -50%;}
	30% {top: -50%;}
	100% {top: 110%}
}


/*
===================================================
	オリジナル
===================================================
*/
.txtcol-1{
    display: inline-block;
    font-weight: bold;
    background: linear-gradient(90deg, #8b6e1f 0%, #ffd842 15%, #ffffff 50%, #ffaa00 90% 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.txtcol-2{
    display: inline-block;
    font-weight: bold;
    background: linear-gradient(90deg, #19c3d9 0%, #306267 45%, #2e6561 50%, #20a6b7 90% 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.txtcol-3{
    display: inline-block;
    font-weight: bold;
    background: linear-gradient(90deg, #006c7f 0%, #5de0ef 45%, #84fdfd 70%, #006a75 85%, #087567 90% 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.txtcol-4{
    display: inline-block;
    font-weight: bold;
    background: linear-gradient(90deg, #7f80ff 0%, #5de0ef 45%, #bcffff 70%, #7fff7f 90% 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.txtcol-5{
    display: inline-block;
    font-weight: bold;
    background: linear-gradient(90deg, #8b8b8b 0%, #ffffff 45%, #ffffff 50%, #515151 90% 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* section CSS */
.section{
    position: relative;
    margin: 0px 0px 50px 0px;
    padding: 0px 0px 15px;
}
.section::after{
    content: "";
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    margin: 1px -15px 1px -15px;
    border-style: solid;
	border-image: linear-gradient(to right, #148497, #65e6f2, #2498aa) 1;
	border-width: 18px;
    bottom: -30px;
    clip-path: polygon(25% 45%, 100% 0%, 100% 80%, 50% 100%, 70% 50%, 0% 100%, 0 20%, 50% 0%);
}


.elm {
    width: 55px;
    font-size: 0.5em;
    text-decoration: none;
    background-color: hwb(222.06deg 0% 59.69% / 73%);
    position: fixed;
    bottom: 15px;
    right: 0px;
    padding: 10px;
    color: #ffffff;
    transition: 1.5s;
    text-align: center;
    border-radius: 15px 0px 0px 15px;
  opacity: 0;
  z-index:-1;
}


.bgimg{
    background: url(../emogru-img/bg-01.png);
    background-repeat: no-repeat;
    background-size: auto;
    background-position-x: center;
    background-position-y: top;
}





.container{
    width: 100%;
    max-width: 950px;
    position: relative;
}
.header-menu{
    width: 100%;
    font-size: 0.6em;
    line-height: 130%;
    text-align: center;
    margin: 0px auto 30px;
    padding: 5px 10px;
}
.header-title{
    width: 100%;
    font-size: 1.4em;
    line-height: 130%;
    text-align: center;
    margin: 0px auto 0px;
    padding: 5px 10px 30px;
}
.caraimg001{
    width: 40%;
    text-align: center;
    margin: 0px auto 25px;
    padding: 25px 0px;
	    max-width: 180px;
}
.content-box{
    background: URL("../emogru-img/bg-02.png");
    background-size: contain;
    width: 100%;
    text-align: center;
    padding: 50px 20px;
    margin: 0px auto 25px;
    background-color: hsl(171deg 100% 14.64%);
    border-radius: 15px;
	    max-width: 645px;
}
.content-title{
    font-size: 1.3em;
    margin: 0px auto 25px;
    text-align: center;
}
.content-txt{
    font-size: 0.7em;
    background-color: hsl(0deg 0% 0% / 50%);
    border-radius: 10px;
    padding: 10px;
}
.order-box{
    display: flex;
    padding: 15px 20px;
    margin: 0px auto 30px;
    background-color: #2f2f2fad;
    border-radius: 15px;
    flex-wrap: wrap;
    min-height: 225px;
}
.order-title{
    width: 100%;
    line-height: 100%;
}
.order-url{
	padding:5px;
	font-size: 0.6em;
}
.order-txt{
    width: 75%;
    font-size: 0.6em;
    line-height: 150%;
    padding: 20px 0px;
}
.order-img{
	width: 25%;
}
.jobdes-box{
    display: flex;
    padding: 15px 20px;
    margin: 0px auto 30px;
    background-color: #2f2f2fad;
    border-radius: 15px;
    flex-wrap: wrap;
    min-height: 225px;
}
.jobdes-title{
    width: 100%;
    line-height: 100%;
}
.jobdes-url{
	padding:5px;
	font-size: 0.6em;
}
.jobdes-txt{
    width: 100%;
    font-size: 0.6em;
    line-height: 150%;
    padding: 20px 0px;
}
.jobdes-img{
    width: 100%;
    text-align: center;
}




@media(min-width:950px){
/* section CSS */
.section{
        position: relative;
        margin: 0px 0px 85px 0px;
        padding: 0px 0px 65px;
}
.section::after{
content: "";
        position: absolute;
        display: block;
        left: 0;
        right: 0;
        margin: 1px auto 1px auto;
        border-style: solid;
        border-image: linear-gradient(to right, #12121200, #148497, #65e6f2, #2498aa, #12121200) 1;
        border-width: 25px;
        bottom: -30px;
        clip-path: polygon(25% 45%, 100% 0%, 100% 80%, 50% 100%, 70% 50%, 0% 100%, 0 20%, 50% 0%);
}
.elm {
    width: 8%;
    font-size: 0.5em;
    text-decoration: none;
    background: linear-gradient(to right, #121212, #148497, #65e6f2, #2498aa, #121212);
    position: fixed;
    bottom: 54px;
    right: 0px;
    padding: 5px;
    color: #ffffff;
    transition: 0.5s;
    text-align: center;
    border-radius: 15px 0px 0px 15px;
  opacity: 0;
  z-index:-1;
}
.bgimg{
        background: url(../emogru-img/bg-01.png);
        background-repeat: repeat-x;
        background-size: auto;
        background-position-x: center;
        background-position-y: top;
}





.container{
    width: 100%;
    max-width: 950px;
    position: relative;
}
.header-menu{
    width: 100%;
    font-size: 0.6em;
    line-height: 130%;
    text-align: center;
    margin: 0px auto 30px;
    padding: 5px 10px;
}
.header-title{
    width: 100%;
    font-size: 1.9em;
    line-height: 130%;
    text-align: center;
    margin: 0px auto 0px;
    padding: 5px 10px 30px;
}
.caraimg001{
    width: 20%;
    text-align: center;
    margin: 0px auto 25px;
    padding: 25px 0px;
}
.content-box{
    background: URL("../emogru-img/bg-02.png");
    background-size: contain;
    width: 75%;
    text-align: center;
    padding: 80px 20px;
    margin: 0px auto 25px;
    background-color: hsl(171deg 100% 14.64%);
    border-radius: 15px;
}
.content-title{
    font-size: 1.8em;
    margin: 0px auto 50px;
    text-align: center;
}
.content-txt{
        font-size: 1.3em;
        background-color: hsl(0deg 0% 0% / 50%);
        border-radius: 10px;
        padding: 20px;
}
.order-box{
    display: flex;
    padding: 15px 20px;
    margin: 0px auto 30px;
    background-color: #2f2f2fad;
    border-radius: 15px;
    flex-wrap: wrap;
    min-height: 225px;
}
.order-title{
    width: 100%;
    line-height: 100%;
}
.order-url{
	padding:5px;
	font-size: 0.6em;
}
.order-txt{
    width: 75%;
    font-size: 0.6em;
    line-height: 150%;
    padding: 20px 0px;
}
.order-img{
	width: 25%;
}
.jobdes-box{
    display: flex;
    padding: 15px 20px;
    margin: 0px auto 30px;
    background-color: #2f2f2fad;
    border-radius: 15px;
    flex-wrap: wrap;
    min-height: 225px;
}
.jobdes-title{
    width: 100%;
    line-height: 100%;
}
.jobdes-url{
	padding:5px;
	font-size: 0.6em;
}
.jobdes-txt{
    width: 100%;
    font-size: 0.6em;
    line-height: 150%;
    padding: 20px 0px;
}
.jobdes-img{
    width: 100%;
    text-align: center;
}
	
	
	
}


