
@charset "Shift_JIS";

/*--------------------------------------------------------
  フルCSSプロフェッショナルテンプレート部品設定
--------------------------------------------------------*/

.hpb-parts-cnt-style {
    border-color: #d5d5d6;
    text-align: left !important;
}

.hpb-parts-hl-style {
    margin-top: 15px !important;
    padding: 5px 0.2em !important;
    background-image: none !important;
    background-color: #ffffff !important;
    border-color: #009de8 !important;
}

.hpb-parts-cbox-style {
    border-color: #d5d5d6;
}

.hpb-parts-img-01 {
    margin: 0px !important;
}

.hpb-parts-img-02 {
    margin: 0px !important;
}

.hpb-parts-hr-style {
    border-color: #d5d5d6;
}

.hpb-parts-pbox-style {
    border-color: #d5d5d6;
}
.hpb-parts-pbox-style h4 {
    padding: 0px;
}
.hpb-parts-pbox-style img {
    margin: 0px !important;
}

.hpb-parts-blist-style {
    border-color: #009de8;
}
a.hpb-parts-blist-style:link {
    color: #666666;
}
a.hpb-parts-blist-style:visited {
    color: #666666;
}
a.hpb-parts-blist-style:hover {
    color: #009de8;
}
a.hpb-parts-blist-style:active {
    color: #009de8;
}

/*--------------------------------------------------------
  ユーザー設定スタイル
--------------------------------------------------------*/
/*まずはお決まりのボックスサイズ算出をborer-boxに */
*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;/*rem算出をしやすくするために*/
}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

.bdr-b {
    border-bottom:thick #4169e1 solid;
}

.item {
  display: inline-block;
}
@font-face {
    font-family: 'たぬき油性マジック';
    src:url('/fonts/public/HuiFont/HuiFontP109.eot');
    src:url('/fonts/public/HuiFont/HuiFontP109.eot?#iefix') format('embedded-opentype'), 
url('/fonts/public/HuiFont/HuiFontP109.woff')format('woff'), 
url('/fonts/public/HuiFont/HuiFontP109.ttf')format('truetype'), 
url('/fonts/public/HuiFont/HuiFontP109.svg#HuiFontP109') format('svg');
    font-weight: normal;
    font-style: normal;
}
.kokuban {
    font-family: HuiFontP109;
    color: #fff;
    background-color: #114400;
    margin: 10px 0 10px 0;
    padding: 15px;
    border: 9px solid #a60;
    border-radius: 3px;
    box-shadow: 2px 2px 4px #666, 2px 2px 2px #111 inset;
    text-shadow: 0px 0px 2px #000;
    line-height: 1.9;
}
.point {
    color: #ffb1b3;
    font-weight: bold;
    border: 3px solid #ffb1b3;
}

/* 黒板風　2 */
.kokuban-s2 {
 position: relative;
 margin: 2em auto;
 padding: 1em;
 width: 90%; /* ボックス幅 */
 background: #006633; /* ボックス背景色 */
 color: #fff; /* 文章色 */
 border: 8px solid #b2771f; /* 枠線 */
 border-radius: 3px; /* 角の丸み */
 box-shadow: 0 0 5px #333, 0 0 5px #555 inset;
}
.kokuban-s2::before,
.kokuban-s2::after {
 position: absolute;
 content: '';
 bottom: 0;
} 
.kokuban-s2::before {
 width: 20px; 
 right: 10px;
 border: solid 3px #ffff00; /*チョーク（黄色）*/
 border-radius: 3px 2px 0 2px;
}
.kokuban-s2::after {
 width: 15px; 
 right: 45px;
 border: solid 3px #fff; /*チョーク（白） */
 border-radius: 8px 5px 2px 5px;
}

/*　テープ　枠　1 */
.kakomi-tape1 {
 position: relative;
 margin: 3em auto;
 padding: 35px 20px 15px;
 width: 70%; /*ボックス幅*/
 color: #555555; /* 文字色 */
 background-color: #e8ddbd; /*背景色*/
 box-shadow: 0 2px 2px #ccc; /* 影 */
}
.kakomi-tape1::before {
 position: absolute;
 top: -1.5em;
 left: 35%;
 height: 40px;
 width: 160px; /*テープの幅*/
 content: "";
 border: 1px solid #ccc; /*枠太さ・色*/
 background-color: #FFF; /*テープ色*/
 opacity: 0.3; /*テープ透明度0〜1*/
 transform: rotate( -5deg ); /*テープ角度*/
}

/*　さらに影 */
.box30 {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box30 .box-title {
    font-size: 1.2em;
    background: #5fc2f5;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box30 p {
    padding: 15px 20px;
    margin: 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;
}
.box21 p {
    margin: 0; 
    padding: 0;
}

/*　角丸水玉P */
.mybox1{
	background-color: #F6D4D8;  /* 背景色 */
	border-radius: 5px;
	margin: 10px 5px; /* 外側の余白 上下・左右 */
	padding: 30px 20px 20px 20px; /* 内側の余白 上・右・下・左 */
	position: relative;
	z-index: 0;
}
.mybox1:before{
	border: 1px solid #fff; /* 白い実線 */
	border-radius: 5px;
	content: '';
	display: block;
	margin: 4px;
	position: absolute;
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px;
	z-index: -1;
}
.mybox1:after{
	background-color: #d9ccb3; /* マステ部分の色1 */
	background-image: linear-gradient(45deg, #dfd4be 25%, transparent 25%, transparent 75%, #dfd4be 75%, #dfd4be), linear-gradient(45deg, #dfd4be 25%, transparent 25%, transparent 75%, #dfd4be 75%, #dfd4be); /* マステ部分の色2 */
	background-position: 0 0, 12px 12px;
	background-size: 24px 24px;
	border-left: 2px dotted rgba(255,255,255,0.9);
	border-right: 2px dotted rgba(255,255,255,0.9);
	box-shadow: 0 0 5px rgba(255,255,255,0.5);
	content: '技能教習開始時間の変更のお知らせ';
	display: block;
	margin: 0 0 10px 0;
	padding: 5px 20px;
	color: #696969;  /* マステ部分文字色 */
	text-align: center;
	position: absolute;
	top: -10px;
	left: 20px;
	transform: rotate(-3deg);
	-moz-transform: rotate(-3deg);
	-webkit-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
}

/* ふんわり　枠　3 */
.kakomi-kage3 {
 position: relative;
 margin: 2em auto;
 padding: 2.5em 1em .5em;
 width: 90%;
 background-color: #badcad; /* 背景色 */
 color: #555; /* 文字色 */ 
 box-shadow: 0 0 10px 10px #badcad; /* 影 */
}
.title-kage3 {  
 position: absolute;
 left: 10px;
 top: 2px;
 padding: 0 .5em;
 font-weight: bold;
 color: #b8860b; /* タイトル色 */
 border-style: none none solid;
 border-color: #d6e9ca; /*タイトル下線 */
 border-width: 3px;
}

/*　テープ　枠　3 */
.kakomi-tape3 {
 position:relative;
 padding: 35px 20px 15px;
 margin: 2.5em auto;
 width: 90%;
 color: #555555; /* 文字色 */
 background-color: #e8ddbd;
 box-shadow: inset 0 0 40px rgba(204, 186, 136,1), 0 2px 2px #ccc;
}
.title-tape3 {
 position: absolute;
 top: -15px;
 left: 30px;
 padding: 4px 20px;
 color: #555555; /*タイトル色*/
 font-weight: bold;
 background-color: rgba(255,255,255,.4);
 border-left: 2px dotted rgba(0,0,0,.1);
 border-right: 2px dotted rgba(0,0,0,.1);
 box-shadow: 0 0 5px rgba(0,0,0,0.2); 
 transform: rotate(-5deg);
}

.mybox3{
	border: 1px solid #ccc;	/* 線の太さ・種類・色 */
	box-shadow:1px 1px 6px 0px #ccc;
	padding: 50px 10px 10px 10px;	/* 内側の余白 上・右・下・左 */
	position: relative;
	z-index: -2
}
.mybox3:before{
	background-image: -webkit-gradient(radial, 30% 30%, 0, 30% 30%, 10, from(#ffe5ed), to(#e50044));	/* マップピンの色 */
	border-radius: 50%;
	box-shadow: .5px .5px 4px 1px rgba(128, 128, 128, 0.5);
	content: '';
	display: block;
	position: absolute;
	top: 5px;
	left: 50%;
	width: 15px;
	height: 15px;
	z-index: 0;
}
.mybox3:after{
	background-image: linear-gradient(-80deg, transparent 47%, #333333 47%, #333333 52%, transparent 52%, transparent);
	content: '';
	position: absolute;
	top: 15px;
	left: 50%;
	width: 10px;
	height: 13px;
	z-index: -1;
}

/*まずはお決まりのボックスサイズ算出をborer-boxに */
*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;/*rem算出をしやすくするために*/
}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;
}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn--yellow {
  color: #000;
  background-color: #fff100;
  border-bottom: 5px solid #ccc100;
}

a.btn--yellow:hover {
  margin-top: 3px;
  color: #000;
  background: #fff20a;
  border-bottom: 2px solid #ccc100;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;
}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

.btn-engine-start {
  position: relative;

  width: 145px;
  height: 145px;
  margin: 0 auto;

  border-radius: 50%;
  background: white;
  background: -webkit-linear-gradient(
    315deg,
    white 0%,
    white 22%,
    #ddd 44%,
    #a5a5a5 52%,
    black 100%
  );
  background: linear-gradient(
    135deg,
    white 0%,
    white 22%,
    #ddd 44%,
    #a5a5a5 52%,
    black 100%
  );
  -webkit-box-shadow: 0 3px 12px rgba(0, 0, 0, 0.3);
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.3);
}

.btn-engine-start:before {
  position: absolute;
  top: 7.5px;
  left: 7.5px;

  display: block;

  width: 130px;
  height: 130px;

  content: "";

  border-radius: 50%;
  background: #515151;
  background: -webkit-linear-gradient(
    -45deg,
    #515151 0%,
    #515151 19%,
    #ededed 50%,
    white 77%,
    white 100%
  );
  background: -webkit-linear-gradient(
    315deg,
    #515151 0%,
    #515151 19%,
    #ededed 50%,
    white 77%,
    white 100%
  );
  background: linear-gradient(
    135deg,
    #515151 0%,
    #515151 19%,
    #ededed 50%,
    white 77%,
    white 100%
  );

  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#515151', endColorstr='#ffffff', GradientType=1);
}

.btn-engine-start:hover a.btn-engine-start-in:before {
  top: 20px;

  background: #61c419;
  -webkit-box-shadow: 0 0 6px rgba(97, 196, 25, 0.3);
  box-shadow: 0 0 6px rgba(97, 196, 25, 0.3);
}

.btn-engine-start:hover a.btn-engine-start-in {
  padding: 37px 0 0;

  color: #b4e391;
  -webkit-box-shadow: inset 0 1px 1px black, 0 1px 2px rgba(0, 0, 0, 0.5);
  box-shadow: inset 0 1px 1px black, 0 1px 2px rgba(0, 0, 0, 0.5);
  text-shadow: 0 0 6px rgba(97, 196, 25, 0.3), 0 0 6px rgba(97, 196, 25, 0.3);
}

a.btn-engine-start-in {
  font-size: 14px;
  line-height: 1.2;

  position: absolute;
  top: 18px;
  left: 18px;

  width: 109px;
  height: 109px;
  padding: 35px 0 0;

  color: #fff;
  border-radius: 50%;
  background: #959595;
  background: -webkit-linear-gradient(
    -45deg,
    #959595 0%,
    #0d0d0d 46%,
    #010101 50%,
    #0a0a0a 69%,
    #1b1b1b 100%
  );
  background: -webkit-linear-gradient(
    315deg,
    #959595 0%,
    #0d0d0d 46%,
    #010101 50%,
    #0a0a0a 69%,
    #1b1b1b 100%
  );
  background: linear-gradient(
    135deg,
    #959595 0%,
    #0d0d0d 46%,
    #010101 50%,
    #0a0a0a 69%,
    #1b1b1b 100%
  );
  -webkit-box-shadow: inset 0 2px 2px white, 0 2px 4px rgba(0, 0, 0, 0.5);
  box-shadow: inset 0 2px 2px white, 0 2px 4px rgba(0, 0, 0, 0.5);

  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#959595', endColorstr='#1b1b1b', GradientType=1);
}

a.btn-engine-start-in:before {
  position: absolute;
  top: 18px;
  left: calc(50% - 13px);

  width: 26px;
  height: 8px;

  content: "";
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;

  border-radius: 10px;
  background: green;
  background: #555;
}

a.btn-engine-start-in span {
  font-size: 10px;
}

/* ふんわり手書き枠　4 */
.kakomi-kage4 {
 margin: 2em auto;
 padding: 1em;
 width: 90%;
 color: #555555; /* 文字色 */
 background-color: #FFFFE0; /* 背景色 */
 box-shadow: 0 0 5px 2px #ffa042, 0 0 5px 2px #ffa042 inset; /* 影 */
 border-radius: 2em .7em 3em .9em/.8em 3em .7em 2em; /*角の丸み*/
}
.box49{
    padding: 8px 19px;
    margin: 2em 0;
    color: #2c2c2f;
    background: #cde4ff;
    border-top: solid 5px #5989cf;
    border-bottom: solid 5px #5989cf;
}
.box49 p {
    margin: 0; 
    padding: 0;
}

.box29 {
    margin: 2em 0;
    background: #dcefff;
}
.box29 .box-title {
    font-size: 1.2em;
    background: #5fb3f5;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box29 p {
    padding: 15px 20px;
    margin: 0;
}
.box16{
    padding: 0.5em 1em;
    margin: 2em 0;
    background: -webkit-repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px,#e9f4ff 3px, #e9f4ff 7px);
    background: repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px,#e9f4ff 3px, #e9f4ff 7px);
}
.box16 p {
    margin: 0; 
    padding: 0;
}

$color1: #244F75;
$color2: #60BFBF;
$color3: #8C4B7E;
$color4: #F8BB44;
$color5: #F24B4B;

@mixin easeOut {
  transition: all .6s cubic-bezier(0.23, 1, 0.32, 1);
}

@mixin break {
  @media screen and (max-width: 760px) {
    @content;
  }
}

* {
  box-sizing: border-box;
}

.strips {
  min-height: 100vh;
  text-align: center;
  overflow: hidden;
  color: white;
  
  &__strip {
    will-change: width, left, z-index, height;
    position: absolute;
    width: 20%;
    min-height: 100vh;
    overflow: hidden;
    cursor: pointer;
    @include easeOut;
    
    &:nth-child(1) {
      left: 0;
    }
    
    &:nth-child(2) {
      left: 20vw;
    }
    
    &:nth-child(3) {
      left: 40vw;
    }
    
    &:nth-child(4) {
      left: 60vw;
    }
    
    &:nth-child(5) {
      left: 80vw;
    }
    
    &:nth-child(1) {
      .strip__content {
        background: $color1;
        transform: translate3d(-100%, 0, 0);
        animation-name: strip1;
        animation-delay: 0.1s;
      }
    }
    
    &:nth-child(2) {
      .strip__content {
        background: $color2;
        transform: translate3d(0, 100%, 0);
        animation-name: strip2;
        animation-delay: 0.2s;
      }
    }
    
    &:nth-child(3) {
      .strip__content {
        background: $color3;
        transform: translate3d(0, -100%, 0);
        animation-name: strip3;
        animation-delay: 0.3s;
      }
    }
    
    &:nth-child(4) {
      .strip__content {
        background: $color4;
        transform: translate3d(0, 100%, 0);
        animation-name: strip4;
        animation-delay: 0.4s;
      }
    }
    
    &:nth-child(5) {
      .strip__content {
        background: $color5;
        transform: translate3d(100%, 0, 0);
        animation-name: strip5;
        animation-delay: 0.5s;
      }
    }
    
    @include break {
      min-height: 20vh;
      &:nth-child(1) {
        top: 0;
        left: 0;
        width: 100%;
      }

      &:nth-child(2) {
        top: 20vh;
        left: 0;
        width: 100%;
      }

      &:nth-child(3) {
        top: 40vh;
        left: 0;
        width: 100%;
      }

      &:nth-child(4) {
        top: 60vh;
        left: 0;
        width: 100%;
      }

      &:nth-child(5) {
        top: 80vh;
        left: 0;
        width: 100%;
      }
    }
  }
  
  .strip__content {
    animation-duration: 1s;
    animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    animation-fill-mode: both;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-decoration: none;

    &:hover {
      &:before {
        transform: skew(-30deg) scale(3) translate(0, 0);
        opacity: 0.1;
      }
    }

    &:before {
      content: "";
      position: absolute;
      z-index: 1;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: white;
      opacity: 0.05;
      transform-origin: center center;
      transform: skew(-30deg) scaleY(1) translate(0, 0);
      @include easeOut;
    }
  }
  
  .strip__inner-text {
    will-change: transform, opacity;
    position: absolute;
    z-index: 5;
    top: 50%;
    left: 50%;
    width: 70%;
    transform: translate(-50%,-50%) scale(0.5);
    opacity: 0;
    @include easeOut;
  }
  
  &__strip--expanded {
    width: 100%;
    top: 0 !important;
    left: 0 !important;
    z-index: 3;
    cursor: default;
    
    @include break {
      min-height: 100vh;
    }
    
    .strip__content {
      &:hover {
        &:before {
          transform: skew(-30deg) scale(1) translate(0, 0);
          opacity: 0.05;
        }
      }
    }
    
    .strip__title {
      opacity: 0;
    }
    
    .strip__inner-text {
      opacity: 1;
      transform: translate(-50%, -50%) scale(1);
    }
  }
}

.strip__title {
  display: block;
  margin: 0;
  position: relative;
  z-index: 2;
  width: 100%;
  font-size: 3.5vw;
  color: white;
  @include easeOut;
  
  @include break {
    font-size: 28px;
  }
}

.strip__close {
  position: absolute;
  right: 3vw;
  top: 3vw;
  opacity: 0;
  z-index: 10;
  @include easeOut;
  cursor: pointer;
  transition-delay: 0.5s;
  
  &--show {
    opacity: 1;
  }
}

@keyframes strip1 {
  0% {
    transform: translate3d(-100%, 0, 0);
  }
  
  100% {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes strip2 {
  0% {
    transform: translate3d(0, 100%, 0);
  }
  
  100% {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes strip3 {
  0% {
    transform: translate3d(0, -100%, 0);
  }
  
  100% {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes strip4 {
  0% {
    transform: translate3d(0, 100%, 0);
  }
  
  100% {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes strip5 {
  0% {
    transform: translate3d(100%, 0, 0);
  }
  
  100% {
    transform: translate3d(0, 0, 0);
  }
}

/* Demo purposes */

body {
  font-family: 'Lato';
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
  line-height: 1.5;
}

h1, h2 {
  font-weight: 300;
}

.fa {
  font-size: 30px;
  color: white;
}

h2 {
  font-size: 36px;
  margin: 0 0 16px;
}

p {
  margin: 0 0 16px;
}

/* ホワイトボード風　タイトル　2*/
.wboard-w2 {
 position: relative;
 margin: 2em auto;
 padding: 3.2em 1em 1em;
 width: 90%; /* ボックス幅 */
 background-color: #fff; /* ボックス背景色 */
 color: #000000; /* 文章色 */
 border: 5px solid #c6c6c6; /* 枠線 */
 box-shadow: 0 0 8px #333, 0 0 2px #555 inset;
}
.wboard-w2::before,
.wboard-w2::after {
 position: absolute;
 content: '';
 bottom: 4px;
 width: 25px; 
 border-radius: 2px;
 box-shadow: 1px 1px 3px #666;
} 
.wboard-w2::before {
 right: 60px;
 border: solid 3px #333; /*飾りペン黒 */
 transform: rotate(2deg); /*飾りペン角度 */
}
.wboard-w2::after {
 right: 22px;
 border: solid 3px #ff0000; /*飾りペン赤 */
 transform: rotate(9deg); /*飾りペン角度 */
}
.title-w2 {
 position: absolute;
 top: .6em;
 left: 1em;
 font-weight: bold; /* 太文字 */
 font-size: 1.1em;
 color: #ff0000; /* タイトル文字色 */
}

/* ホワイトボード風　タイトル　6 */
.wboard-w6 {
 position: relative;
 margin: 2em auto;
 padding: 3.5em 1em 1em;
 width: 90%; /* ボックス幅 */
 background-color: #fffff9; /* ボックス背景色 */
 color: #000; /* 文章色 */
 border: 5px solid #e6b422; /* 枠線 */
 border-radius: 3px; /* 角の丸み */
 box-shadow: 0 0 8px #333, 0 0 2px #555 inset;
}
.wboard-w6::before,
.wboard-w6::after {
 position: absolute;
 content: '';
 width: 25px; 
 bottom: 3px;
 border-radius: 2px;
 box-shadow: 1px 1px 3px #666;
} 
.wboard-w6::before {
 right: 55px;
 border: solid 3px #333333; /*飾ペン黒 */
}
.wboard-w6::after {
 right: 20px;
 border: solid 3px #ff42a0; /*飾ペンピンク */
 transform: rotate(8deg); /*飾ペン角度 */
}
.title-w6 {
 position: absolute;
 padding: .1em .5em;
 left: 1em;
 top: .5em;
 font-weight: bold;
 font-size: 1.1em; /* 文字サイズ */
 color: #ff42a0; /* タイトル文字色 */
 background-color: #fffff9; /* ボックス背景色 */
 box-shadow: 1px 1px 3px #a0a0a0;
}

/* ホワイトボード風*/
.wboard-w1 {
 position: relative;
 margin: 2em auto;
 padding: 1em 1em 1em;
 width: 90%; /* ボックス幅 */
 background-color: #fff; /* ボックス背景色 */
 color: #000000; /* 文章色 */
 border: 5px solid #C0C0C0; /* 枠線 */
 border-radius: 3px; /* 角の丸み */
 box-shadow: 0 0 8px #333, 0 0 2px #555 inset;
}
.wboard-w1::before,
.wboard-w1::after {
 position: absolute;
 content: '';
 bottom: 3px;
 width: 25px; 
 border-radius: 2px;
 box-shadow: 1px 1px 3px #666;
} 
.wboard-w1::before {
 right: 55px;
 border: solid 3px #ff0000; /*飾ペン赤 */
}
.wboard-w1::after {
 right: 20px;
 border: solid 3px #333; /*飾ペン黒 */
 transform: rotate(8deg); /*飾ペン角度 */
}

button {
  /* ブラウザ特有のスタイルを無効に */
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;

  /* 整える */
  margin: 1em 0; /* 前後の隙間 */
  padding: 0.6em 1em; /* 塗りの余白 */
  font-size: 3em; /* フォントサイズ */
  background-color: #000080; /* 背景色 */
  color: #000080; /* テキストカラー */
  cursor: pointer; /* カーソルを指マークに */
  border-radius: 3px; /* 角の丸み */
  border: 0; /* 枠線を消す */
  transition: 0.3s; /* ホバーの変化を滑らかに */
}

/* ホバー時（カーソルをのせた時）の見た目 */
button:hover {
  background-color: #90ee90; /* 背景色 */
}

* {
  box-sizing: border-box;
}
body {
  min-height: 100vh;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* 装飾 */
button {
  color: #191970;
  background: #edde7b;
  padding: 20px 30px;
  display: inline-block;
  border-radius: 7px;
  border: none;
  cursor: pointer;
}

button1 {
  /* ブラウザ特有のスタイルを無効に */
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;

  /* 整える */
  margin: 1em 0; /* 前後の隙間 */
  padding: 0.6em 1em; /* 塗りの余白 */
  font-size: 3em; /* フォントサイズ */
  background-color: #000080; /* 背景色 */
  color: #000080; /* テキストカラー */
  cursor: pointer; /* カーソルを指マークに */
  border-radius: 3px; /* 角の丸み */
  border: 0; /* 枠線を消す */
  transition: 0.3s; /* ホバーの変化を滑らかに */
}

/* ホバー時（カーソルをのせた時）の見た目 */
button:hover {
  background-color: #fffff; /* 背景色 */
}

* {
  box-sizing: border-box;
}
body {
  min-height: 100vh;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* 装飾 */
button1 {
  color: #fffafa;
  background: #ff0000;
  padding: 20px 30px;
  display: inline-block;
  border-radius:7px;
  border: none;
  cursor: pointer;
}

.box26 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #95ccff;
    border-radius: 8px;
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #fff;
    color: #95ccff;
    font-weight: bold;
}
.box26 p {
    margin: 0; 
    padding: 0;
}

.box27 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #ffff66;
    border-radius: 8px;
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #fff;
    color: #6666ff;
    font-weight: bold;
}
.box27 p {
    margin: 0; 
    padding: 0;
}

.btn-text-3d {
  text-decoration: none;
  font-weight: bold;
  font-size: 40px;
  color: #ff0505;
  text-shadow: 0px 4px 2px rgba(0, 0, 0, 0.32), 0px 1px 0px #ff0505, 0px 2px 0px #ff0505, 0px 3px 0px #ff0505;
}
.btn-text-3d:active {
  top: 4px;
  text-shadow: none;
}

.btn-flat-simple {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 0.25em 0.5em;
  text-decoration: none;
  color: #00BCD4;
  background: #e60012;
  transition: .4s;
}

.btn-flat-simple:hover {
  background: #e60012;
  color: white;
}

.btn-real-dent {
  /*周りの凹み*/
  display: inline-block;
  position: relative;
  text-decoration: none;
  color: rgba(3, 169, 244, 0.54);
  width: 100px;
  height: 100px;
  border-radius: 50%;
  text-align: center;
  background: #f7f7f7;
  box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.08);
}
.btn-real-dent i {
  /*ボタン自体*/
  position: absolute;
  content: '';
  width: 80px;
  height: 80px;
  line-height: 80px;
  left: 10px;
  top: 9px;
  border-radius: 50%;
  font-size: 40px;
  background-image: linear-gradient(#e8e8e8 0%, #d6d6d6 100%);
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.66);
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.5), 0 2px 2px rgba(0, 0, 0, 0.19);
  border-bottom: solid 2px #b5b5b5;
}
  
.btn-real-dent .fa:active {
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.5), 0 2px 2px rgba(0, 0, 0, 0.19);
  border-bottom: solid 2px #d8d8d8;
}

.btn-cross {
  display: inline-block;
  position: relative;
  padding: 0.25em 1em;
  border-top: solid 2px black;
  border-bottom: solid 2px black;
  text-decoration: none;
  font-weight: bold;
  color: #03A9F4;
}
.btn-cross:before, .btn-cross:after {
  content: '';
  position: absolute;
  top: -7px;
  width: 2px;
  height: -webkit-calc(100% + 14px);
  height: calc(100% + 14px);
  background-color: black;
  transition: .3s;
}
.btn-cross:before {
  left: 7px;
}
.btn-cross:after {
  right: 7px;
}
.btn-cross:hover:before {
  top: 0px;
  left:0;
  height: 100%;
}
.btn-cross:hover:after {
  top: 0px;
  right: 0;
  height: 100%;
}

.example {/*親div*/
  position: relative;/*相対配置*/
  }

.example p {
  position: absolute;/*絶対配置*/
  top: -50%;
  left: -50%;
  -ms-transform: translate(10%,10%);
  -webkit-transform: translate(10%,10%);
  transform: translate(10%,10%);
  margin:0;
  padding:0;
  color: fffaf0;/*文字は白に*/
  top: 0;
  left: 0;
  }

.example img {
  width: 100%;
  }

.btn-sticky {
  display: inline-block;
  padding: 3em 25em;
  text-decoration: none;
  background: #ff0000;
c5c  border-left: solid 15px #000000;/*左線*/
  color: #ff0000;/*文字色*/
  font-weight: bold;
  box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.29);
}
.btn-sticky:active {
  box-shadow: inset 0 0 2px rgba(128, 128, 128, 0.1);
  transform: translateY(2px);
}

.btn-social-long-twitter {
  color: #ff0000;/*文字・アイコン色*/
  border-radius: 7px;/*角丸に*/
  display: inline-block;
  height: 50px;/*高さ*/
  width: 400px;/*幅*/
  text-align: center;/*中身を中央寄せ*/
  font-size: 25px;/*文字のサイズ*/
  line-height: 50px;/*高さと合わせる*/
  background: #ff0000;
  overflow: hidden;/*はみ出た部分を隠す*/
  text-decoration:none;/*下線は消す*/
}

.btn-social-long-twitter .fa-twitter {
  text-shadow: 2px 2px 0px #ff0000;
  font-size: 30px;
}

.btn-social-long-twitter span {
  display:inline-block;
  transition: .5s;
}

.btn-social-long-twitter:hover span {
  -webkit-transform: rotateX(360deg);
  transform: rotateX(360deg);
}

.btn-social-long-twitter {
  color: #FFF;/*文字・アイコン色*/
  border-radius: 7px;/*角丸に*/
  display: inline-block;
  height: 50px;/*高さ*/
  width: 250px;/*幅*/
  text-align: center;/*中身を中央寄せ*/
  font-size: 25px;/*文字のサイズ*/
  line-height: 50px;/*高さと合わせる*/
  background: #0000cd;
  overflow: hidden;/*はみ出た部分を隠す*/
  text-decoration:none;/*下線は消す*/
}

.btn-social-long-twitter .fa-twitter {
  text-shadow: 2px 2px 0px #000000;
  font-size: 30px;
}

.btn-social-long-twitter span {
  display:inline-block;
  transition: .5s;
}

.btn-social-long-twitter:hover span {
  -webkit-transform: rotateX(360deg);
  transform: rotateX(360deg);
}

.box4{
    padding: 8px 19px;
    margin: 2em 0;
    color: #2c2c2f;
    background: #cde4ff;
    border-top: solid 5px #5989cf;
    border-bottom: solid 5px #5989cf;
}
.box4 p {
    margin: 0; 
    padding: 0;
}

.box29 {
    margin: 2em 0;
    background: #dcefff;
}
.box29 .box-title {
    font-size: 1.2em;
    background: #5fb3f5;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box29 p {
    padding: 15px 20px;
    margin: 0;
}

/*シンプル角丸（影）枠 2*/
.kakomi-maru2 {
 margin: 2em auto;
 padding: 1em;
 width: 90%;
 color: #666666; /*文字色*/
 border: 2px solid #996633; /*線の太さ・色*/
 background-color: #fff; /*背景色*/
 box-shadow: -2px 5px 5px #e8d3c7; /*影*/
 border-radius: 20px; /*角の丸み*/
}

/* ふんわり　枠　1 */
.kakomi-kage1 {
 margin: 2em auto;
 padding: 1em;
 width: 90%;
 color: #555555; /* 文字色 */
 background-color: #e0ffff; /* 背景色 */
 box-shadow: 0 0 10px 10px #e0ffff; /* 影 */
}

/* ふんわり　枠　1 */
.kakomi-kage2 {
 margin: 2em auto;
 padding: 1em;
 width: 90%;
 color: #ff6347; /* 文字色 */
 background-color: #5f9ea0; /* 背景色 */
 box-shadow: 0 0 10px 10px #5f9ea0; /* 影 */
}

/* ふんわり　枠　1 */
.kakomi-kage3 {
 margin: 2em auto;
 padding: 1em;
 width: 90%;
 color: #ff0000; /* 文字色 */
 background-color: #5f9ea0; /* 背景色 */
 box-shadow: 0 0 10px 10px #5f9ea0; /* 影 */
}

/* ねこBOX D*/
.neko-box-d {
 position: relative;
 margin: 4em auto 3em;
 padding: 20px 30px;
 width: 90%; /* ボックス幅 */
 background: #fdf5e6; /* ボックス背景色 */
 color: #333333; /* 文字色 */
 font-weight: bold; /* テキスト太字（不要なら行を削除） */
 text-align: center; /* テキスト中央（不要なら行を削除） */
 border: 5px solid #F3983B; /* ボックス枠線(太さ・線種・色) */
 border-radius: 50px;
 box-shadow: 1px 1px 3px #acacac; /* ボックス影（不要なら行を削除） */
 z-index: auto;
}
.neko-box-d::before, 
.neko-box-d::after {
 height: 60px;
 width: 60px;
 position: absolute;
 content:'';
 top: -30px;
 z-index: -10;
}
.neko-box-d::before {
 left: 20%;
 background: #555555; /* 左耳背景色 */
 border: 5px solid #F3983B; /* 左耳枠線(太さ・線種・色) */
 border-radius: 10px 50px 100px 50px;
 transform: rotate( 45deg );
 box-shadow: 1px -1px 3px #acacac; /* 耳の影（不要なら行を削除） */
}
.neko-box-d::after {
 right: 20%;
 background: #B8824D; /* 右耳背景色 */
 border: 5px solid #F3983B; /* 右耳枠線(太さ・線種・色) */
 border-radius: 50px 10px 50px 100px;
 transform: rotate( -45deg );
 box-shadow: 1px 1px 3px #acacac; /* 耳の影（不要なら行を削除） */
}
.neko-wrap-d{
 background-color: transparent;
 position: relative;
 z-index: 0;
}

.img1{
  width:760px;
  height:230px;
  background:url('img/ti-bakun/zoo1.jpg');
}

.img1:hover{
  background:url('img/ti-bakun/zoo2.jpg');
}

body {
  background: linear-gradient(#fff, #fff);
  font: 14px sans-serif;
  padding: 20px;
}
.letter {
  background: #fff;
  box-shadow: 0 0 10px rgba(0,0,0,0.3);
  margin: 26px auto 0;
  max-width: 550px;
  min-height: 300px;
  padding: 24px;
  position: relative;
  width: 80%;
}
.letter:before, .letter:after {
  content: "";
  height: 98%;
  position: absolute;
  width: 100%;
  z-index: -1;
}
.letter:before {
  background: #fafafa;
  box-shadow: 0 0 8px rgba(0,0,0,0.2);
  left: -5px;
  top: 4px;
  transform: rotate(-2.5deg);
}
.letter:after {
  background: #f6f6f6;
  box-shadow: 0 0 3px rgba(0,0,0,0.2);
  right: -3px;
  top: 1px;
  transform: rotate(1.4deg);
}

/* タイトル付　枠（影）3　*/
.kakomi-box14 {
 position: relative;
 margin: 2em auto;
 padding: 1.2em;
 width: 90%;
 color: #555555; /* 文字色 */
 background-color: #fff;
 border: 4px double #ff0000; /* 枠線の太さ・色 */
 box-shadow: 2px 2px 2px #ccc;/* 影の色 */
}
.title-box14 {
 position: absolute;
 padding: 0 .5em;
 left: 20px;
 top: -15px;
 font-weight: bold;
 background-color:  #ff0000; /* タイトル背景色 */
 color: #fff; /* タイトル文字色 */
}

.fashionable-box2{
  margin: 2em 25px;
  padding: 1em;
  background-color: #f1f8e9;
  border: dashed 3px #aed581;
  box-shadow: 0 0 0 10px #f1f8e9, 0 0 0 25px #aed581;
  border-radius: 3px;
}

.fashionable-box2 p{
  margin: 0;
  padding: 0;
}

section {
  max-width: 600px;
  margin: 60px auto;
}
a.btn_09 {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #795548;
  text-align: center;
  text-decoration: none;
  width: 100%;
  height: 100px;
  padding: 20px 20px 20px 75px;
  background-color: #ffffff;
  border: 5px solid #FFC107;
  border-radius: 10px;
  box-sizing: border-box;
  position: relative;
  transition-duration: 0.3s;
}
a.btn_09::before {
  content: '';
  width: 60px;
  height: 60px;
  position: absolute;
  top: 50%;
  left: 20px;
  margin-top: -30px;
  background-image: url("https://125naroom.com/wp/wp-content/themes/design125naroom/img/kinoko_pan.png");
  background-size: contain;
  background-repeat: no-repeat;
}
a.btn_09 span {
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
}
a.btn_09 span span {
  display: block;
  font-size: 16px;
  margin-bottom: 7px;
}
a.btn_09:hover {
  color: #ffffff;
  background-color: #FFC107;
}

section {
  max-width: 800px;
  margin: 20px auto;
}
a.btn_08 {
  position: relative;
  display: block;
  color: #ffffff;
  font-size: 24px;
  text-decoration: none;
  text-align: center;
}
a.btn_08::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background: linear-gradient(155deg, #ffbfbf 20%, #c2fcf9 40%, #f9c5ff 51%, #ffbfbf 80%);
  border-radius: 7em;
  box-sizing: border-box;
}
a.btn_08::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background-color: #f5b2ac;
  border-radius: 7em;
  box-sizing: border-box;
  transform: translate(0, -10px);
}
a.btn_08 span {
  position: relative;
  display: block;
  padding: 1rem 5rem;
  transform: translate(0, -10px);
  overflow: hidden;
  z-index: +1;
}
a.btn_08 span::before {
  content: "";
  position: absolute;
  top: -180px;
  left: 0;
  width: 30px;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  opacity: 0;
  transform: rotate(45deg);
}
a.btn_08::after, a.btn_08 span {
  transition-property: transform;
  transition-duration: 0.3s;
}
a.btn_08:hover::after, a.btn_08:hover span {
  transform: translate(0, 0);
}
a.btn_08:hover span::before {
  animation: shine 1s ease-in-out 1;
}
@keyframes shine {
  0% {
    transform: scale(1) rotate(45deg);
    opacity: 0;
  }
  10% {
    transform: scale(1) rotate(45deg);
    opacity: 0.5;
  }
  20% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  80% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

/* 大枠ボックス */
.layer{
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 auto;
}

/* 背景画像の読み込み */
.layer-bg{
  background: url(https://homepagenopro.com/wp-content/uploads/2018/02/planet-581239_1280.jpg) no-repeat 0 0;
  background-size: 100%;
}

/* 重ねる文字の基本設定 */
.layer-txt{
  text-shadow: 1px 1px 4px rgba(0,0,0,0.4);
  color: #fff;
  letter-spacing: 0.4rem;
}

/* SP向けの設定 */
@media screen and (max-width: 600px) {
  .layer-txt{
   font-size: 1.4rem;
   padding: 4rem 0;
  }
}

/* PC向けの設定 */
@media screen and (min-width: 601px) {
  .layer-txt{
    font-size: 2rem;
    padding: 8rem 0;
  }
}
/*スライド*/
.container {
  position: relative;
  width: 800px;
  max-width: 75%;
  height: 600px;
}

.image {
  position: absolute;
  width: 60%;
  opacity: 0;
  animation: change-img-anim 15s infinite;
}

.image:nth-of-type(1) {
  animation-delay: 0s;
}
.image:nth-of-type(2) {
  animation-delay: 10s;
}
.image:nth-of-type(3) {
  animation-delay: 20s;
}

@keyframes change-img-anim {
  0%{ opacity: 0;}
  10%{ opacity: 1;}
  90%{ opacity: 1;}
  100%{ opacity: 0;}
}

.sample-box-9 {
    background: -webkit-linear-gradient(top, #fff 0%, #f0f0f0 100%);
    background: linear-gradient(to bottom, #fff 0%, #f0f0f0 100%);
    border: 1px solid #ccc;
    border-top: 4px solid #1c66fe;
    box-shadow: 0 -1px 0 rgba(255, 255, 255, 1) inset;
    margin: 2em 0;
    padding: 2em;
}

/* もちもち動く */
.box50 {
  margin: 30px auto;
  width: 600px;
  height: 100px;
  border-radius:5px;
  background: #c2ed93;
  animation: poyon 1.2s infinite;
}

@keyframes poyon {
  0%   { transform: scale(1.0, 1.0) translate(0%, 0%); }
  15%  { transform: scale(0.9, 0.9) translate(0%, 5%); }
  30%  { transform: scale(1.3, 0.8) translate(0%, 10%); }
  50%  { transform: scale(0.8, 1.3) translate(0%, -10%); }
  70%  { transform: scale(1.1, 0.9) translate(0%, 5%); }
  100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}

/* ぽよんと弾む */
.circle52 {
   width: 100px;
   height: 100px;
   margin : 50px auto;
   border-radius: 50px;
   background: #ed93b0;
   animation: mochimochi 1s infinite;
}

@keyframes mochimochi {
  0% {
    transform: scale(1, 0.8);
  }
  20% {
    transform: scale(0.8, 1.1);
  }
  90% {
    transform: scale(1, 1);
  }
  100% {
    transform: scale(1, 0.8);
  }
}

/* ふわふわ浮遊 */
.circle53 {
  width: 100px;
   height: 100px;
   margin: 50px auto;
   border-radius: 50px;
   background: #95dade;
   animation: fuwafuwa 2s infinite;
}

@keyframes fuwafuwa {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-30px);
  }
  100% {
    transform: translateY(0px);
  }
}

.button-simple {
    position: relative;
    font-weight: bold;
    padding: 10px 200px;
    margin: 0px 5px;
    border-radius: 30px;/*角の丸み*/
    font-size: 22px;/*文字サイズ*/
    background-color: #00a455;/*背景色*/
    color: #fff;/*文字色*/
    display: inline-block;
    text-shadow: 1px 1px 0px rgb(0, 0, 0, 0.3);
    box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
}
.button-simple:before {
    font-family: FontAwesome;
    content: '';/*好きなアイコン*/
    color: #eeee22;/*アイコンの色*/
    margin-right: 3px;
}
a:hover .button-simple {
    background-color: #00ff7f;/*触れたときの背景色*/
    color: #fff;/*触れたときの文字色*/
    box-shadow: 0 0px 0 rgb(0, 0, 0, 0.3);
    animation-play-state: paused;
    top: 3px;
}

/* ぷるぷるボタン */
.purupuru {
    animation: purupuru 0.1s infinite;
}
@keyframes purupuru {
    0% {
        transform: translate(0px, 0px)
    }
    50% {
        transform: translate(0px, 1px) rotateZ(1deg)
    }
}

.button-simple1 {
    position: relative;
    font-weight: bold;
    padding: 10px 200px;
    margin: 0px 5px;
    border-radius: 30px;/*角の丸み*/
    font-size: 18px;/*文字サイズ*/
    background-color: #00a455;/*背景色*/
    color: #fff;/*文字色*/
    display: inline-block;
    text-shadow: 1px 1px 0px rgb(0, 0, 0, 0.3);
    box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
}
.button-simple:before {
    font-family: FontAwesome;
    content: '';/*好きなアイコン*/
    color: #eeee22;/*アイコンの色*/
    margin-right: 3px;
}
a:hover .button-simple {
    background-color: #00ff7f;/*触れたときの背景色*/
    color: #fff;/*触れたときの文字色*/
    box-shadow: 0 0px 0 rgb(0, 0, 0, 0.3);
    animation-play-state: paused;
    top: 3px;
}

/* ぷるぷる */
.purupuru {
    animation: purupuru 0.1s infinite;
}
@keyframes purupuru {
    0% {
        transform: translate(0px, 0px)
    }
    50% {
        transform: translate(0px, 1px) rotateZ(1deg)
    }
}

/* ぷるぷる2 */
.purupuru2 {
    animation: purupuru2 0.1s infinite;
}
@keyframes purupuru2 {
    0% {
        transform: scale(1, 1);
    }
    50% {
        transform: scale(0.98, 0.95)
    }
}

/* ペコペコ凹むボタン */
.pekopeko {
    animation: pekopeko 2s infinite;
    box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
}
@keyframes pekopeko {
    0% {
        box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
        top: 0px;
    }
    10% {
        box-shadow: 0 0 0 rgb(0, 0, 0, 0.3);
        top: 3px;
    }
    20% {
        box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
        top: 0px;
    }
    30% {
        box-shadow: 0 0 0 rgb(0, 0, 0, 0.3);
        top: 3px;
    }
    40% {
        box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
        top: 0px;
    }
}

/* 上下ゆれ */
.yureru-j {
    animation: yureru-j 2s infinite;
}
@keyframes yureru-j {
    0% {
        transform: translate(0px, 2px);
    }
    5% {
        transform: translate(0px, -2px);
    }
    10% {
        transform: translate(0px, 2px);
    }
    15% {
        transform: translate(0px, -2px);
    }
    20% {
        transform: translate(0px, 2px);
    }
    25% {
        transform: translate(0px, -2px);
    }
    30% {
        transform: translate(0px, 0px);
    }
}

/* 横揺れ */
.yureru-s {
    animation: yureru-s 2s infinite;
}
@keyframes yureru-s {
    0% {
        transform: translate(2px, 0px);
    }
    5% {
        transform: translate(-2px, 0px);
    }
    10% {
        transform: translate(2px, 0px);
    }
    15% {
        transform: translate(-2px, 0px);
    }
    20% {
        transform: translate(2px, 0px);
    }
    25% {
        transform: translate(-2px, 0px);
    }
    30% {
        transform: translate(0px, 0px);
    }
}


.mocchiri {
    animation: mocchiri 3s infinite;
}
@keyframes mocchiri {
    0% {
        transform: scale(1, 0.8);
    }
    20% {
        transform: scale(0.8, 1.1);
    }
    95% {
        transform: scale(1, 1);
    }
    100% {
        transform: scale(1, 0.8);
    }
}

/* ぱつんと跳ねる */
.patsun {
    animation: patsun 2s infinite;
}
@keyframes patsun {
    0% {
        transform: rotateZ(0deg);
    }
    22% {
        transform: rotateZ(0deg);
    }
    24% {
        transform: translate(-2px, -10px) rotateZ(-18deg) scale(0.8, 1.3);
    }
    26% {
        transform: rotateZ(0deg) scale(1, 1.1);
    }
    28% {
        transform: translate(0px, -2px) rotateZ(-2deg;
        )
    }
    30% {
        transform: rotateZ(0deg);
    }
    32% {
        transform: translate(0px, -2px) rotateZ(-2deg);
    }
    33% {
        transform: rotateZ(0deg);
    }
    34% {
        transform: translate(0px, -2px) rotateZ(-2deg);
    }
    35% {
        transform: rotateZ(0deg);
    }
    36% {
        transform: translate(0px, -2px) rotateZ(-2deg);
    }
    37% {
        transform: rotateZ(0deg);
    }
    38% {
        transform: translate(0px, -2px) rotateZ(-2deg);
    }
    39% {
        transform: rotateZ(0deg);
    }
    100% {
        transform: rotateZ(0deg);
    }
}

/* ドキドキ */
.dokidoki {
    animation: dokidoki 1.5s infinite;
}
@keyframes dokidoki {
    0% {
        transform: scale(1.05)
    }
    5% {
        transform: scale(1)
    }
    95% {
        transform: scale(1)
    }
    100% {
        -webkit-transform: scale(1.05)
    }
}

/* 上下に揺れる */
.yureru-js {
    animation: yureru-js 0.4s infinite;
}
@keyframes yureru-js {
    0% {
        transform: translate(1px, 1px);
    }
    25% {
        transform: translate(1px, -1px);
    }
    50% {
        transform: translate(-1px, -1px);
    }
    75% {
        transform: translate(-1px, 1px);
    }
    100% {
        transform: translate(1px, 1px);
    }
}

/* ブルリ */
.bururi {
    animation: bururi 1s infinite;
}
@keyframes bururi {
    50% {
        transform: scale(1, 1);
    }
    52% {
        transform: scale(0.98, 0.95)
    }
    54% {
        transform: scale(1, 1);
    }
    56% {
        transform: scale(0.98, 0.95)
    }
    58% {
        transform: scale(1, 1);
    }
    60% {
        transform: scale(0.98, 0.95)
    }
}

.mask-bg {
  color: transparent;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  overflow: hidden;
  position: relative;
  transition: color 0ms 450ms;
}
.mask-bg::after {
  background: linear-gradient(to right, #362ae0 0%,#3b79cc 50%,#42d3ed 100%);
  bottom: 0;
  content: '';
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(0, 100%);
}
 
.mask-bg.is-animated {
  color: #362ae0;
}
.mask-bg.is-animated::after {
  animation: mask-bg 1.2s cubic-bezier(0.8, 0, 0.170, 1);
}
 
@keyframes mask-bg {
  0% {
    transform: translate(0, 101%)
  }
  40%, 60% {
    transform: translate(0, 0%)
  }
  100% {
    transform: translate(0, -100%)
  }
}

/*主な共通部分は省略*/
a.btn-sns {
  font-size: 4.8rem;
  line-height: 100px;

  width: 100px;
  height: 100px;
  padding: 0;

  letter-spacing: 0;

  color: #fff;
  border-radius: 50%;
}

a.btn-sns:hover {
  color: #fff;
}

a.btn-sns--youtube {
  background: #cd201f;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;
}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn-malformation {
  font-size: 2rem;

  padding: 3rem 4rem;

  color: #fff;
  border-radius: 100% 80px / 80px 100%;
  background-color: #eb6100;
}

a.btn-malformation:hover {
  color: #fff;
  border-radius: 60% 80% / 100% 80%;
}

a.btn-malformation {
  font-size: 2rem;

  padding: 3rem 4rem;

  color: #fff;
  border-radius: 100% 80px / 80px 100%;
}

a.btn-malformation:hover {
  color: #fff;
  border-radius: 60% 80% / 100% 80%;
}

.btn-malformation--pastel {
  background: #fca1a1;
  background: -webkit-linear-gradient(-45deg, #91BEDA 40%, #93ff93 100%);
  background: -webkit-linear-gradient(315deg, #91BEDA 40%, #93ff93 100%);
  background: linear-gradient(135deg,#91BEDA 40%, #93ff93 100%);
  -webkit-box-shadow: 30px 10px 0 #ffbf7f;
  box-shadow: 30px 10px 0 #ffbf7f;

  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fca1a1', endColorstr='#fcfc5d', GradientType=1);
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;
}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn-malformation {
  font-size: 2rem;

  padding: 3rem 4rem;

  color: #fff;
  border-radius: 100% 80px / 80px 100%;
  background-color: #91BEDA;
}

a.btn-malformation:hover {
  color: #fff;
  border-radius: 60% 80% / 100% 80%;
}.

.picture {
  width: 500px;
  margin: 0 auto;
  overflow: hidden;
}

.slidshow {
  position: relative;
  width: 400px;
  height: 250px;
  overflow: hidden;
}

.slidshow {
  .slidshow-img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: auto;
    opacity: 0;
    animation: slidshow 12s linear infinite;

    &:nth-child(2) {
      animation-delay: 3s;
    }

    &:nth-child(3) {
      animation-delay: 6s;
    }

    &:nth-child(4) {
      animation-delay: 9s;
    }
  }
}
@keyframes slidshow {
  0% {
    opacity: 0;
  }

  20% {
    opacity: 1;
  }

  25% {
    opacity: 1
  }

  38% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}