@charset "UTF-8";
/* CSS Document */
.sk-folding-cube-wrap {
	position: fixed;
	display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: #fff;
}

.sk-folding-cube {
  margin: 20px auto;
  width: 40px;
  height: 40px;
  position: relative;
  -webkit-transform: rotateZ(45deg);
          transform: rotateZ(45deg);
}

.sk-folding-cube .sk-cube {
  float: left;
  width: 50%;
  height: 50%;
  position: relative;
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1); 
}
.sk-folding-cube .sk-cube:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #333;
  -webkit-animation: sk-foldCubeAngle 2.4s infinite linear both;
          animation: sk-foldCubeAngle 2.4s infinite linear both;
  -webkit-transform-origin: 100% 100%;
      -ms-transform-origin: 100% 100%;
          transform-origin: 100% 100%;
}
.sk-folding-cube .sk-cube2 {
  -webkit-transform: scale(1.1) rotateZ(90deg);
          transform: scale(1.1) rotateZ(90deg);
}
.sk-folding-cube .sk-cube3 {
  -webkit-transform: scale(1.1) rotateZ(180deg);
          transform: scale(1.1) rotateZ(180deg);
}
.sk-folding-cube .sk-cube4 {
  -webkit-transform: scale(1.1) rotateZ(270deg);
          transform: scale(1.1) rotateZ(270deg);
}
.sk-folding-cube .sk-cube2:before {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.sk-folding-cube .sk-cube3:before {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s; 
}
.sk-folding-cube .sk-cube4:before {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}
@-webkit-keyframes sk-foldCubeAngle {
  0%, 10% {
    -webkit-transform: perspective(140px) rotateX(-180deg);
            transform: perspective(140px) rotateX(-180deg);
    opacity: 0; 
  } 25%, 75% {
    -webkit-transform: perspective(140px) rotateX(0deg);
            transform: perspective(140px) rotateX(0deg);
    opacity: 1; 
  } 90%, 100% {
    -webkit-transform: perspective(140px) rotateY(180deg);
            transform: perspective(140px) rotateY(180deg);
    opacity: 0; 
  } 
}

@keyframes sk-foldCubeAngle {
  0%, 10% {
    -webkit-transform: perspective(140px) rotateX(-180deg);
            transform: perspective(140px) rotateX(-180deg);
    opacity: 0; 
  } 25%, 75% {
    -webkit-transform: perspective(140px) rotateX(0deg);
            transform: perspective(140px) rotateX(0deg);
    opacity: 1; 
  } 90%, 100% {
    -webkit-transform: perspective(140px) rotateY(180deg);
            transform: perspective(140px) rotateY(180deg);
    opacity: 0; 
  }
}

/*ドロワー*/
.contents {
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#navTgl:checked ~ .contents {
	transform: translateX(500px);
}

/* :::::: toggle button :::::: */
#navTgl {
	display: none;
}
label {
	cursor: pointer;
	position: fixed;
	top: 0;
	left: 0;
}
.open {
	z-index: 2;
	width: 100px;
	height: 100px;
	background: lightSeaGreen;
	transition: background .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before,
.open::after {
	content: "";
}
.open span,
.open::before,
.open::after {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	left: 30%;
	width: 40%;
	border-bottom: 2px solid white;
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before {
	transform: translateY(-8px);
}
.open::after {
	transform: translateY(8px);
}
.close {
	z-index: 1;
	width: 100%;
	height: 100%;
	pointer-events: none;
	transition: background .6s;
}
#navTgl:checked + .open {
	background: indianRed;
	transform: translateX(500px);
}
#navTgl:checked + .open span {
	transform: scaleX(0);
}
#navTgl:checked + .open::before {
	transform: rotate(45deg);
}
#navTgl:checked + .open::after {
	transform: rotate(-45deg);
}
#navTgl:checked ~ .close {
	pointer-events: auto;
	background: rgba(0,0,0,.3);
}

/* :::::: drawer menu :::::: */
.menu {
	z-index: 1;
	position: fixed;
	overflow: auto;
	top: 0;
	left: 0;
	width: 500px;
	height: 100%;
	margin: 0;
	padding: 10px;
	box-sizing: border-box;
	background: rgba(0,0,0,.6);
	transform: translateX(-100%);
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.menu h2,
.menu a {
	color: white;
}
.menu h2 {
	text-align: center;
}
.menu ul {
	margin: 0;
	padding: 0;
}
.menu li {
	font-size: 20px;
	line-height: 1.4;
}
.menu li:not(:first-child) {
	border-top: 1px solid rgba(255,255,255,.6);
}
.menu a {
	display: block;
	padding: 1em 2em;
	text-decoration: inherit;
	transition: background .6s;
}
.menu a:hover {
	background: black;
}
#navTgl:checked ~ .menu {
	transform: none;
}

/*ここまでドロワー*/


a {
  transition: color .3s; }

@keyframes r1 {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
@keyframes fluffy1 {
  0% {
    transform: translateY(0); }
  5% {
    transform: translateY(0); }
  10% {
    transform: translateY(0); }
  20% {
    transform: translateY(-15px); }
  25% {
    transform: translateY(0); }
  30% {
    transform: translateY(-15px); }
  50% {
    transform: translateY(0); }
  100% {
    transform: translateY(0); } }
@-webkit-keyframes anime_move1 {
  0% {
    -webkit-transform: rotateX(0deg) rotate(0deg); }
  100% {
    -webkit-transform: rotateX(0deg) rotate(360deg); } }
@keyframes anime_move1 {
  0% {
    transform: rotateX(0deg) rotate(0deg); }
  100% {
    transform: rotateX(0deg) rotate(360deg); } }
html {
  scroll-behavior: smooth;
  /*カテゴリスクロールを滑らかに*/ }

#wrapper {
  overflow: hidden;
  /*ボックスからはみ出した内容は「表示しません」*/ }

html, body {
  margin: 0;
  /* 余白の削除 */
  padding: 0;
  /* 余白の削除 */
  width: 100%;
  height: 100%; }

/*フェードインJQuery必要*/
.fadein {
  opacity: 0;
  transform: translate(0, 50px);
  transition: all 1500ms; }

.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0); }

/*フェードインはここまで*/

.header {
  height: 0px;
  margin-left: auto;
  margin-right: auto;
  border: 3px solid #fff;
  /* 表示領域を白枠で囲う */
  height: 100%;
  /* 縦の表示領域はheader-bkと同じ */
  width: 750px;
  /* 横の幅970px */
  margin: auto;
  /* 中央揃え */ }

.headerbackground {
  background-color: #00409E;
  opacity: 0.8;
  position: fixed;
  z-index: 9999;
  width: 100%;
  height: 50px; }

.headerbackgroundb {
  background-color: #00409E;
  /* 背景色(紺) */
  padding: 0px 0 0px;
  /* 上10px、下20pxをあける */
  height: 80px;
  /* 縦の高さ110px */
  width: 100%;
  /* 横の幅を100% */ }

.mu {
  background-color: #ffffff;
  width: 750px;
  height: 200px;
  margin: auto; }

/*看板*/
.kanban{
	margin-right: auto;
	margin-left: auto;
}

.whatcampylo {
  width: 650px;
  text-align: left;
  margin-top: 200px;
  margin-left: auto;
  margin-right: auto; }

.campylosetumei {
  margin-top: 150px;
  margin-bottom: 100px;
  font-size: 25px; }

.campylologo {
  margin: 50px 0px 100px 0px; }

.followme {
  margin: 50px 0px 300px 0px; }

.snshover {
  transition: all 1s linear 0s;
  border-radius: 50%;
  cursor: pointer;
}
.snshover:hover {
  transform: rotateY(360deg);
}

.catemoji {
  color: #ffffff;
  font-size: 15px; }

.catemojia {
  color: #ffffff;
  font-size: 5px; }

.work {
  width: 700px;
  text-align: left;
  margin-top: 200px;
  margin-left: auto;
  margin-right: auto; }

.workichiran {
  margin-bottom: 200px;
  margin-top: 0px; 
  width: 750px;
  height: auto;
}

/*スライドエフェクト*/
* {
  box-sizing: border-box; }

.item {
  width: 200px;
  height: 200px;
  margin: 50px auto;
  padding-top: 75px;
  background: #ccc;
  text-align: center;
  color: #FFF;
  font-size: 3em; }

/*ここまでスライドエフェクト*/
/*メールエフェクト*/
.mailicon {
  width: 122px;
  height: 122px;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 50%;
  filter: drop-shadow(3px 3px 3px #B0B0A9); }

.mailicon img {
  width: 100%;
  cursor: pointer;
  transition-duration: 0.5s; }

.mailicon img:hover {
  transform: rotate(360deg);
  transition-duration: 0.5s; }

/*ここまでメーレフェクト*/
.mailicon {
  margin-bottom: 300px;
  margin-top: 100px; }

.jisseki {
  margin: 200px 0px 50px 0px; }

.kigyouwidth{
	width: 740px;
	margin-left: auto;
	margin-right: auto;
}

.andmore {
  text-align: right;
  font-size: 15px;
  margin: 40px 0px 0px 0px; }

/*andmoreエフェクト*/
.andmore {
  transition: .3s; }

.andmore span {
  display: inline-block; }

.andmore:hover span {
  -webkit-transform: rotateY(360deg);
  transform: rotateY(360deg);
  transition: .6s; }

.andmore:hover span:nth-of-type(1) {
  -webkit-transition-delay: .02s;
  transition-delay: .02s; }

.andmore:hover span:nth-of-type(2) {
  -webkit-transition-delay: .04s;
  transition-delay: .04s; }

.andmore:hover span:nth-of-type(3) {
  -webkit-transition-delay: .06s;
  transition-delay: .06s; }

.andmore:hover span:nth-of-type(4) {
  -webkit-transition-delay: .08s;
  transition-delay: .08s; }

.andmore:hover span:nth-of-type(5) {
  -webkit-transition-delay: .10s;
  transition-delay: .10s; }

/*きらりマウスホバー*/
.hover14 figure {
  position: relative; }

.hover14 figure::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: '';
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg); }

.hover14 figure:hover::before {
  -webkit-animation: shine .75s;
  animation: shine .75s; }

@-webkit-keyframes shine {
  100% {
    left: 125%; } }
@keyframes shine {
  100% {
    left: 125%; } }
/*ここまできらりマウスホバー*/
.suehisa {
  margin-top: 150px;
  margin-right: auto;
  margin-bottom: 0px;
  margin-left: auto;
  width: 750px;
}

.sitemap {
  background-color: #474747;
  color: #ffffff;
  margin: auto; }

.sitemapyohaku {
  background-color: #474747; }

.sitemapmoji {
  width: 750px;
  text-align: left;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
}

.smmoji{
	font-size: 30px;
}

.sitemaphover {
  position: relative;
  display: inline-block;
  transition: .3s; }

.sitemaphover::after {
  position: absolute;
  bottom: .3em;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background-color: #2ecc71;
  opacity: 0;
  transition: .3s; }

.sitemaphover:hover::after {
  bottom: 0;
  opacity: 1; }

.footeryohaku {
  background-color: #000000;
  height: 3px; }

.footer {
  background-color: #000000;
  height: 60px; }

.footeraline {
  margin: 10px 0px 0px 0px; }

/*Aboutページ*/
.koujichuu {
  margin: 100px 0px 100px 0px; }

/*koujiefectエフェクト*/
.koujiefect {
  transition: .3s; }

.koujiefect span {
  display: inline-block; }

.koujiefect:hover span {
  -webkit-transform: rotateY(360deg);
  transform: rotateY(360deg);
  transition: .6s; }

.koujiefect:hover span:nth-of-type(1) {
  -webkit-transition-delay: .02s;
  transition-delay: .02s; }

.koujiefect:hover span:nth-of-type(2) {
  -webkit-transition-delay: .04s;
  transition-delay: .04s; }

.koujiefect:hover span:nth-of-type(3) {
  -webkit-transition-delay: .06s;
  transition-delay: .06s; }

.koujiefect:hover span:nth-of-type(4) {
  -webkit-transition-delay: .08s;
  transition-delay: .08s; }

.koujiefect:hover span:nth-of-type(5) {
  -webkit-transition-delay: .10s;
  transition-delay: .10s; }

.shasin {
  max-width: 100%;
  margin: 0px 0px 200px 0px; }

/*ここからホームページデザイン*/
.hpbanner{
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 100px;
	margin-left: auto;
	padding: 0px;
}


*{
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.steph1{
  font-size: 15px;
  font-family: 'Montserrat';
  font-weight: normal;
  color: #444;
  text-align: center;
  margin: 2rem 0;
}

.hpwrapper{
  width: 90%;
  margin: 0 auto;
  max-width: 80rem;
}

.hpcols{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.hpcol{
  width: calc(40% - 2rem);
  margin: 1rem;
  cursor: pointer;
}

.hpcontainer{
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
    -webkit-perspective: 1000px;
            perspective: 1000px;
}

.hpfront,
.hpback{
  background-size: cover;
    background-position: center;
    -webkit-transition: -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    transition: -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    -o-transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1), -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    text-align: center;
    min-height: 280px;
    height: auto;
    border-radius: 10px;
    color: #fff;
    font-size: 1.5rem;
}

.hpback{
  background: #cedce7;
  background: -webkit-linear-gradient(45deg,  #cedce7 0%,#596a72 100%);
  background: -o-linear-gradient(45deg,  #cedce7 0%,#596a72 100%);
  background: linear-gradient(45deg,  #cedce7 0%,#596a72 100%);
}

.hpfront:after{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    content: '';
    display: block;
    opacity: .6;
    background-color: #000;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    border-radius: 10px;
}
.hpcontainer:hover .hpfront,
.hpcontainer:hover .hpback{
    -webkit-transition: -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    transition: -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    -o-transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1), -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
}

.hpback{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.hpinner{
    -webkit-transform: translateY(-50%) translateZ(60px) scale(0.94);
            transform: translateY(-50%) translateZ(60px) scale(0.94);
    top: 50%;
    position: absolute;
    left: 0;
    width: 100%;
    padding: 2rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    outline: 1px solid transparent;
    -webkit-perspective: inherit;
            perspective: inherit;
    z-index: 2;
	font-size: 20px;
}

.hpcontainer .hpback{
    -webkit-transform: rotateY(180deg);
            transform: rotateY(180deg);
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d;
}

.hpcontainer .hpfront{
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg);
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d;
}

.hpcontainer:hover .hpback{
  -webkit-transform: rotateY(0deg);
          transform: rotateY(0deg);
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.hpcontainer:hover .hpfront{
  -webkit-transform: rotateY(-180deg);
          transform: rotateY(-180deg);
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.hpfront .hpinner p{
  font-size: 2rem;
  margin-bottom: 2rem;
  position: relative;
}

.hpfront .hpinner p:after{
  content: '';
  width: 4rem;
  height: 2px;
  position: absolute;
  background: #C6D4DF;
  display: block;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -.75rem;
}

.hpfront .hpinner span{
  color: rgba(255,255,255,0.7);
  font-family: 'Montserrat';
  font-weight: 300;
}

@media screen and (max-width: 64rem){
  .hpcol{
    width: calc(33.333333% - 2rem);
  }
}

@media screen and (max-width: 48rem){
  .hpcol{
    width: calc(50% - 2rem);
  }
}

@media screen and (max-width: 32rem){
  .hpcol{
    width: 100%;
    margin: 0 0 2rem 0;
  }
}




/*フリーランスならではの価格設定*/
.box21{
    padding: 0.5em 1em;
    background: -moz-linear-gradient(#ffb03c, #ff708d);
    background: -webkit-linear-gradient(#ffb03c, #ff708d);
    background: linear-gradient(to right, #ffb03c, #ff708d);
    color: #FFF;
	width: 600px;
	height: 60px;
	margin-top: 200px;
	margin-bottom: 100px;
}
.box21 p {
    margin: 0; 
    padding: 0;
	font-size: 30px;
}

.hpapiel {
	width: 700px;
	margin-top: 100px;
	margin-right: auto;
	margin-bottom: 300px;
	margin-left: auto;
}

.hpapiel1{
	font-size: 15px;
	width: 700px;
	margin-right: auto;
	margin-left: auto;
}

.hpapiel2{
	font-size: 23px;
	line-height:50px;
	margin-right: auto;
	margin-left: auto;
}

.hpapiel3{
	font-size: 28px;
}

.hpapiel4{
	font-size: 23px;
}

.hpapiel5{
	font-size: 15px;
	margin-right: auto;
	margin-left: auto;
}




.hpmeyasu{
	margin-top: 200px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	font-size: 20px;
}

.hpbtn-flat-border {
  display: inline-block;
  padding: 0.3em 1em;
  text-decoration: none;
  color: #67c5ff;
  border: solid 2px #67c5ff;
  border-radius: 3px;
  transition: .4s;
  font-size: 50px;
  margin-bottom: 200px;
}

.hpbtn-flat-border:hover {
  background: #67c5ff;
  color: white;
}



/*BLOG*/

.blogkanban{
  width: 100%;
  height: 0;
  padding-top: calc(480 / 1000 * 100%); /* calc(画像高さ ÷ 画像横幅 × 100%) */
  background: url("../img/blogtop.jpg")center center / cover no-repeat;
  margin-bottom: 200px;
}

.blogh1 h1{
	font-size: 33px;
	margin-top: 100px;
	margin-left: 40px;
}

.hiduke p{
	font-size: 20px;
	color: #676767;
	margin-top: 20px;
	margin-left: 50px;
}

.blogmidashi p{
	margin-top: 0px;
	margin-left: 50px;
	margin-bottom: 30px;
	width: 500px;
	background-color: #000000;
	color: #FFFFFF;
	font-size: 30px;
	text-align: center;
}

.episode{
  width: 100%;
  height: 0;
  padding-top: calc(480 / 1000 * 100%); /* calc(画像高さ ÷ 画像横幅 × 100%) */
  background: url("../img/episode0.jpg")center / cover no-repeat;
  margin-bottom: 100px;
}

.honbun {
    text-align: center;
	line-height: 35px;
	margin-right: auto;
	margin-left: auto;
}
.honbun p {
    display: inline-block;
    text-align: left;
	font-size: 25px;
}

.midashi2{
	margin-top: 100px;
	margin-bottom: 50px;
	margin-left: 50px;
}

.blogtable{
	margin-top: 100px;
	margin-bottom: 100px;
	table-layout: fixed;
	font-size: 20px;
}

.bloglistall{
	text-align: center;
	line-height: 35px;
}

.shutokuhouhou{
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	margin-top: 100px;
	margin-bottom: 100px;
	font-size: 20px;
}
.nokorizandaka{
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	margin-top: 200px;
	margin-bottom: 100px;
}

.episodebannera{
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	margin-top: 300px;
	margin-bottom: 100px;
	background-color: #E9E9E9;
}




/*NewTOPはここから*/
.newtopvideo{
    filter: drop-shadow(0px 0px #000);
}

.video{
    filter: drop-shadow(0px 0px #000);
}

.newperformance{
	text-align: center;
}

.newperformance p{
	text-align: left;
	display: inline-block;
}


/*福ぞん*/
.fukuzon {
  background-image: url("img/ fukuzon_page.jpg");
  margin: 0;
  background-repeat: no-repeat;
background-size:contain;
}