@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;500;600&family=Mochiy+Pop+One&family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@700&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@500;600;700&family=Dancing+Script:wght@400;500;600&family=Mochiy+Pop+One&family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@700&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Kaisei+Tokumin&family=Kiwi+Maru:wght@300;400;500&family=Mochiy+Pop+One&display=swap');
/*===============================================
●PCレイアウト設定 
===============================================*/
@media screen and   (min-width: 651px){
/*メイン画像ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.index{
position: relative;
font-family: 'Noto Serif JP';
padding-bottom: 50px
}

.index .main{
position: relative;
width: 100%;
height: 100vh
}
.index .main img{
width: 100%
}
.index .main .maincatch{
position: absolute;
top: 45%;
left: 58%;
width: 38%;
}
.index .main .maincatch .name{
 width: 60%;
  font-weight: 500;
color: #333;
line-height: 160%;
}
.index .main .maincatch .name img{
width: 100%
}
.index .main .maincatch .lead{
font-family: 'Noto Serif JP';
font-size: clamp(1.4rem,1.5vw,2.4rem);
line-height: 250%;
padding-top: 5vw;
color: #666
}
/*スクロール背景チェンジーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
section {
    display: flex;
}
.one {
    align-items: center;
    width: 100%;
    min-height: 100vh;
}
.bg {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0;
    transition: all 0.5s ease 0s;
    z-index: -1;
}
.show .bg {
    opacity: 1;
}
.bg._01 {
    background-image: url("../images/index/bg1.png");
}
.bg._02 {
    background-image: url("../images/index/bg2.png");
}
.bg._03 {
    background-image: url("../images/index/bg3.png");
}
.bg._04 {
    background-image: url("../images/index/bg4.jpg");
}
.index .box2{
width: 45%;
margin-left: 50%;
padding-top: 20vh;
font-size: 1.8rem;
line-height: 230%;
color: #666;
}
.index .box2 .subtitle{
font-size: 2.8rem;
font-weight: 600;
margin-bottom: 30px;padding-bottom: 3px;
border-bottom: #FFF 3px solid;
color: #999;
}
.index .box2 .photo{
margin: 20px 0;
border-radius:12px;
overflow: hidden;
}
.index .box2 .photo img{
width: 100%
}
.index .box2 .bt{
padding-top: 50px;
} 
.index .box2 .bt a{
display: block;
width: 650px;
margin: 0 auto;
max-width: 90%;
padding: 10px 0;
font-size: 1.8rem;
font-weight: 500;
text-align: center;
transition: 0.5s;
border: #FFF 1px solid
}
.index .box2 .bt a:hover{
background-color: #FFF
}
/*事務所概要-----------------------------------------*/
.profile{
font-family: 'Noto Serif JP';
}
.profile .box1{
width: 1200px;
max-width: 90%;
padding-top: 100px;
margin: 0 auto;
}
.profile .catch{
font-size: 2.0rem;
font-weight: 600;
color: #000;
width: 630px;
max-width: 90%;
margin: 0 auto 0 auto;
line-height: 210%
}
.profile .flex_profile{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 50px;
}
.profile .flex_profile2{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.profile .box1 .com{
width: 58%;
line-height: 180%;
}
.profile .box1 .photo{
width: 35%;
overflow: hidden
}
.profile .box1 .photo img{
width: 100%
}
.profile .subtitle{
font-size: 2.8rem;
font-weight: 600;
color: #777;
text-align: center;
padding-top: 100px;
padding-bottom: 40px;
}
.profile .box2{
width: 1200px;
max-width: 90%;
margin: 0 auto;
padding-bottom: 50px
}
.profile .flex_profile3{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.profile .flex_profile3 .com{
width: 70%;
}
.profile  .flex_profile3 .photo{
width: 28%;
overflow: hidden;
margin-top: 40px;
}
.profile  .flex_profile3 .photo img{
width: 100%
}
.profile .box2 table{
width: 100%;
border-collapse: collapse
}
.profile .box2 td{
padding: 4% 0 1% 0;
border-bottom: 1px dotted #666;
}
.profile .box2 td:nth-child(1){
width: 17%
}
.profile .box2 td .map{
margin: 30px 0;
padding: 1%;
border: #666 1px solid
}
/*弁護士経歴-----------------------------------------*/
.biography{
font-family: 'Noto Serif JP';
}
.biography .box1{
width: 1200px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.biography .box1 .com{
width: 70%;
line-height: 160%;
font-size: 1.4rem
}
.biography .date{
text-align: right;
width: 1200px;
max-width: 90%;
margin: 0 auto;
}
.biography .box1 .com .name{
font-weight: 600;
padding-bottom: 20px;
font-size: 1.8rem
}
.biography .box1 .com table{
width: 100%;
border-collapse: collapse
}
.biography .box1 .com td{
padding: 1%;
}
.biography .box1 .com td:nth-child(1){
width: 30%;
}
.biography .box1 .photo{
width: 28%;
padding-top: 60px
}
.biography .box1 .photo img{
width: 100%
}
.biography .subtitle{
font-size: 2.8rem;
font-weight: 600;
color: #777;
text-align: center;
padding-top: 100px;
padding-bottom: 40px;
}
.biography .box2{
width: 1200px;
max-width: 90%;
margin: 0 auto;
padding-bottom: 50px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
font-size: 1.4rem
}
.biography .box2 .com{
width: 70%;
}
.biography .box2 table{
width: 100%;
border-collapse: collapse
}
.biography .box2 td{
padding: 1%;
}
.biography .box2 td:nth-child(1){
width: 17%
}
.biography .box2 .photo{
width: 28%;
padding-top: 30px
}
.biography .box2 .photo img{
width: 100%
}
/*取扱い業務-----------------------------------------*/
.practice{
font-family: 'Noto Serif JP';
}
.practice .date2{
text-align: right;
width: 80%;
margin: 0 auto;
padding-top: 40px
}
.practice .box1{
width: 880px;
max-width: 90%;
margin: 0 auto;
padding-top: 50px
}
.practice .box1 .left .com{
font-size: 2.0rem;
font-weight: 600;
line-height: 210%;
}

.practice .subtitle{
font-size: 2.0rem;
font-weight: 600;
color: #333;
text-align: center;
padding-top: 100px;
padding-bottom: 20px;
line-height: 210%
}
.practice .box2{
width: 1200px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.practice .box2 .inner{
width: 32%;
margin-bottom: 50px;
}
.practice .box2 .inner .com{
}
.practice .box2 .inner .com .subtitle2 {
  position: relative;
  padding-left: 25px;
  font-size: 2.5rem;
  font-weight: 600;
  margin-bottom: 30px;
   border-bottom: solid 3px #BFA183;
}

.practice .box2 .inner .com .flex_practice{
}
.practice .box2 .inner .com .flex_practice li{
display: block;
background-color: #FFF;
color: #666;
font-size: clamp(1.3rem,0.5vw.1.6rem);
font-weight: 600;
text-align: center;
padding: 10px 0;
margin-bottom: 25px
}
.practice dl{
width: 1200px;
max-width: 90%;
margin: 0 auto;
padding-top: 100px;
}
.practice dl .subtitle2{
font-size: 2.0rem;
font-weight: 600;
margin-bottom: 40px;
background-color: #FFF;
padding: 5px 5px 5px 20px
}
.practice dl .com{
padding-bottom: 50px;
}
.practice dt{
font-weight: 600;
margin-bottom: 30px;
border-bottom: solid 3px #666;
}
.practice dd{
margin-bottom: 50px
}
.practice dd .date{
font-size: 1.4rem;
font-weight: bold;
margin-bottom: 20px;
}
/*弁護士報酬-----------------------------------------*/
.fee{
font-family: 'Noto Serif JP';
}
.fee .box1{
width: 1200px;
max-width: 90%;
margin:50px auto 50px auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;

}
.fee .box1 dl{
margin: 0;
padding: 0;
width: 48%;
margin-bottom: 50px
}
.fee .box1 dt {
  position: relative;
  padding-left: 25px;
  font-size: 2.5rem;
  font-weight: 600;
  margin-bottom: 30px;
   border-bottom: solid 3px #BFA183;
}
.fee .box1 dd{
margin-left: 0;
margin-bottom: 100px;
color: #000
}
.fee .box1 dd .bt{
margin-top: 15px;
width: 400px;
max-width: 90%;
}
.fee .box1 dd .bt a{
display: block;
border: #C00 1px solid;
color: #C00;
text-align: center;
font-size: 1.6rem;
font-weight: 500;
padding: 10px 0;
transition: 0.5s;
background-color: #FFF
}
.fee .box1 .bt a:hover{
background-color: #C00;
color: #FFF
}
/*アクセス-----------------------------------------*/
.access{
font-family: 'Noto Serif JP';
}
.access .box1{
width: 1100px;
max-width: 90%;
margin: 50px auto
}
.access .box1 .add{
font-size: 1.8rem;
font-weight: 600;
padding-bottom: 3px;
border-bottom: 1px #666 solid;
margin-bottom:20px;
}
.access .box1 .guide{
font-weight: 600;
margin-bottom:50px;
}
.access .box1 .map{
margin-bottom: 50px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.access .box1 .map .box_map{
width: 35%
}
/*--口コミを消すCSS
#map_clip {
        overflow: hidden;
        position: relative;
        width: 112%;
        height: 500px;
        margin: 0 auto
}
#map_clip iframe{
        position: absolute;
        inset: -150px;
        width: calc(100% + 300px);
        height: calc(100% + 300px);
}
*/
.access .box1 .map .photo{
width:60%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.access .box1 .map .photo .inner{
width: 49.5%;
text-align: center;
font-size: 1.4rem;
}
.access .box1 .map .photo .inner img{
width: 100%;
margin-bottom: 10px
}
.access .box1 .box_photo{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background-color: #CCC;
padding: 2%
}
.access .box1 .box_photo .photo{
width: 33%;
text-align: center;
font-size: 1.4rem

}
.access .box1 .box_photo .photo img{
width: 100%;
margin-bottom: 10px
}
/*==================================================
ふわっ
===================================*/

/* その場で */
.fadeIn{
animation-name:fadeInAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

/* 下から */

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/* 上から */

.fadeDown{
animation-name:fadeDownAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeDownAnime{
  from {
    opacity: 0;
  transform: translateY(-100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/* 左から */

.fadeLeft{
animation-name:fadeLeftAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeLeftAnime{
  from {
    opacity: 0;
  transform: translateX(-100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}

/* 右から */

.fadeRight{
animation-name:fadeRightAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeRightAnime{
  from {
    opacity: 0;
  transform: translateX(100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeInTrigger,
.fadeUpTrigger,
.fadeDownTrigger,
.fadeLeftTrigger,
.fadeRightTrigger{
    opacity: 0;
}
}
/*===============================================
●スマホれいあうと設定 画面の横幅が650px以下
===============================================*/
@media screen and  (max-width: 650px){
/*メイン画像ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.index{
position: relative;
font-family: 'Noto Serif JP';
}

.index .main{
position: relative;
width: 100%;
height: 100vh
}
.index .main img{
width: 100%
}
.index .main .maincatch{
position: absolute;
top: 45%;
width: 100%;
transform: translateY(-50%);
text-align: center
}
.index .main .maincatch .name{
 width: 80%;
 margin: 0 auto;
  font-weight: 500;
color: #333;
top: 45%;
left: 60%;
line-height: 160%;
}
.index .main .maincatch .name img{
width: 100%
}
.index .main .maincatch .lead{
font-family: 'Noto Serif JP';
font-size: 1.6rem;
line-height: 250%;
padding: 60px 10% 0 10%;
color: #666
}
/*スクロール背景チェンジーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
section {
    display: flex;
}
.one {
    align-items: center;
    width: 100%;
    min-height: 100vh;
}
.bg {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0;
    transition: all 0.5s ease 0s;
    z-index: -1;
}
.show .bg {
    opacity: 1;
}
.bg._01 {
    background-image: url("../images/index/bg1.png");
}
.bg._02 {
    background-image: url("../images/index/bg2.png");
}
.bg._03 {
    background-image: url("../images/index/bg3.png");
}
.bg._04 {
    background-image: url("../images/index/bg4.jpg");
}
.index .box2{
width: 90%;
margin: 0 auto;
padding-top: 10vh;
font-size: 1.6rem;
line-height: 200%;
color: #666;
}
.index .box2 .subtitle{
font-size: 2.0rem;
font-weight: 600;
margin-bottom: 30px;
padding-bottom: 3px;
border-bottom: #FFF 3px solid;
color: #999;
}
.index .box2 .photo{
margin: 20px 0;
border-radius:12px;
overflow: hidden;
}
.index .box2 .photo img{
width: 100%
}
.index .box2 .bt{
padding-top: 30px;
} 
.index .box2 .bt a{
display: block;
width: 650px;
margin: 0 auto;
max-width: 90%;
padding: 10px 0;
font-size: 1.8rem;
font-weight: 500;
text-align: center;
transition: 0.5s;
border: #FFF 1px solid;
background-color: #FFF
}

/*事務所概要-----------------------------------------*/
.profile{
font-family: 'Noto Serif JP';
}
.profile .box1{
width: 90%;
padding-top: 50px;
margin: 0 auto;
}
.profile .catch{
font-size: 2.0rem;
font-weight: 600;
color: #000;
width: 90%;
margin: 0 auto 0 auto;
}
.profile .flex_profile{

}
.profile .flex_profile2{
display: flex;
flex-wrap: wrap;
justify-content: center;
flex-direction: column-reverse
}
.profile .box1 .com{
line-height: 180%;
}
.profile .box1 .photo{
width: 80%;
margin:15px auto;

border-radius: 10px;
overflow: hidden
}
.profile .box1 .photo img{
width: 100%
}
.profile .subtitle{
font-size: 2.5rem;
font-weight: 600;
color: #777;
text-align: center;
padding-top: 100px;
padding-bottom: 40px;
}
.profile .box2{
width: 90%;
margin: 0 auto;
padding-bottom: 50px
}
.profile .flex_profile3{
padding-bottom: 30px;
}
.profile .flex_profile3 .photo{
width: 80%;
margin: 0 auto
}
.profile .flex_profile3 .photo img{
width: 100%
}
.profile .box2 table{
width: 100%;
border-collapse: collapse
}
.profile .box2 td{
display: block;
}
.profile .box2 td:nth-child(1){
font-weight: 600;
padding-bottom: 3px;
}
.profile .box2 td:nth-child(2){
border-bottom: 1px dotted #666;
margin-bottom: 25px;
}
.profile .box2 td .map{
margin: 30px 0;
padding: 1%;
border: #666 1px solid
}
/*弁護士経歴-----------------------------------------*/
.biography{
font-family: 'Noto Serif JP';
}
.biography .date{
text-align: right;
width: 90%;
margin: 0 auto;
padding-bottom: 20px
}
.biography .box1{
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.biography .box1 .com{
width: 100%;
line-height: 160%;
font-size: 1.4rem
}
.biography .box1 .com .name{
font-weight: 600;
padding-bottom: 20px;
font-size: 1.8rem
}
.biography .box1 .com table{
width: 100%;
border-collapse: collapse
}
.biography .box1 .com td{
padding: 1%;
display: block;
}
.biography .box1 .com td:nth-child(1){
font-weight: 500
}
.biography .box1 .com td:nth-child(2){
border-bottom: 1px solid #666;
margin-bottom: 25px
}
.biography .box1 .photo{
width: 80%;
padding-top: 20px
}
.biography .box1 .photo img{
width: 100%
}
.biography .subtitle{
font-size: 2.5rem;
font-weight: 600;
color: #777;
text-align: center;
padding-top: 100px;
padding-bottom: 40px;
}
.biography .box2{
width: 90%;
margin: 0 auto;
padding-bottom: 50px;

}
.biography .box2 .com{
line-height: 100%;
font-size: 1.4rem
}
.biography .box2 table{
width: 100%;
border-collapse: collapse
}
.biography .box2 td{
display: block;
padding: 1%;
border-bottom: 1px dotted #666;
margin-bottom: 25px;
line-height: 200%
}

.biography .box2 .photo{
width: 80%;
padding-top: 20px;
margin: 0 auto;
}
.biography .box2 .photo img{
width: 100%
}

/*取扱い業務-----------------------------------------*/
.practice{
font-family: 'Noto Serif JP';
}
.practice .box1{
width: 90%;
margin: 0 auto;
padding: 50px 0
}
.practice .date2{
text-align: right;
width: 90%;
margin: 0 auto;
padding-bottom: 20px
}
.practice .box1 .left{
line-height: 160%;
position: relative;
font-size: 1.8rem;
line-height: 180%;
font-weight: 600
}

.practice .subtitle{
font-size: 1.6rem;
font-weight: 600;
color: #333;
padding: 50px 4% 20px 4%;
padding-bottom: 20px;
}
.practice .box2{
width: 90%;
margin: 0 auto;
padding-bottom: 50px;
}
.practice .box2 .inner{
margin-bottom: 50px;
}

.practice .box2 .inner .com{

}
.practice .box2 .inner .com .subtitle2 {
  position: relative;
  padding-left: 25px;
  font-size: 2.3rem;
  font-weight: 600;
  margin-bottom: 30px;
  border-bottom: solid 3px #BFA183;
}

.practice .box2 .inner .com .flex_practice{
}
.practice .box2 .inner .com .flex_practice li{
display: block;
background-color: #FFF;
color: #000;
font-size: clamp(1.3rem,0.5vw.1.6rem);
font-weight: 600;
text-align: center;
padding: 10px 0;
margin-bottom: 25px
}
.practice dl{
width: 1200px;
max-width: 90%;
margin: 0 auto;
padding-top: 50px;
}
.practice dl .subtitle2{
font-size: 2.0rem;
font-weight: 600;
margin-bottom: 40px;
background-color: #FFF;
padding: 5px 5px 5px 20px
}
.practice dl .com{
padding-bottom: 50px;
}
.practice dt{
font-weight: 600;
margin-bottom: 30px;
border-bottom: solid 3px #666;
font-size: 1.6rem
}
.practice dd{
margin-bottom: 50px;
margin-left: 0
}
.practice dd .date{
font-size: 1.4rem;
font-weight: bold;
margin-bottom: 20px;
}
/*弁護士報酬-----------------------------------------*/
.fee{
font-family: 'Noto Serif JP';
}
.fee .box1{
width: 90%;
margin: 50px auto 50px auto;

}

.fee .box1 dl{
margin: 0;
padding: 0;
margin-bottom: 50px
}
.fee .box1 dt {
  position: relative;
  color: #333;
  font-size: 2.0rem;
  font-weight: 600;
  margin-bottom: 20px;
   border-bottom: solid 3px #BFA183;
    padding-left: 25px;
}

.fee .box1 dd{
margin-left: 0;
margin-bottom: 50px;
color: #000
}
.fee .box1 dd .bt{
margin-top: 15px;
width: 400px;
max-width: 90%;
}
.fee .box1 dd .bt a{
display: block;
border: #C00 1px solid;
color: #C00;
text-align: center;
font-size: 1.6rem;
font-weight: 500;
padding: 10px 0;
transition: 0.5s;
background-color: #FFF
}
.fee .box1 .bt a:hover{
background-color: #C00;
color: #FFF
}

/*アクセス-----------------------------------------*/
.access{
font-family: 'Noto Serif JP';
}
.access .box1{
width:90%;
margin: 50px auto
}
.access .box1 .add{
font-size: 1.8rem;
font-weight: 600;
padding-bottom: 3px;
border-bottom: 1px #666 solid;
margin-bottom:20px;
}
.access .box1 .guide{
font-weight: 600;
margin-bottom:50px;
}
.access .box1 .map{
margin-bottom: 50px;
}
.access .box1 .map .box_map{
margin-bottom: 20px
}
.access .box1 .map .photo{
background-color: #CCC;
padding: 2%
}
.access .box1 .map .photo .inner{
text-align: center;
font-size: 1.4rem;
margin-bottom: 30px
}
.access .box1 .map .photo .inner img{
width: 100%;
margin-bottom: 10px
}
.access .box1 .box_photo{

background-color: #CCC;
padding: 2%
}
.access .box1 .box_photo .photo{
text-align: center;
font-size: 1.4rem;
margin-bottom: 30px;
}
.access .box1 .box_photo .photo img{
width: 100%;
margin-bottom: 10px
}

/*===============================================
●Java Script用設定 
===============================================*/

@-webkit-keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }

  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
@keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }

  to {
      opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}

/*きらっと光る*/

.btnshine{
    /*キラッと光る基点とするためrelativeを指定*/
  position: relative;
    /*ボタンの形状*/  
  display:inline-block;
    background: #333;
    color: #fff;
    padding: 10px 20px;
    text-decoration: none;
    outline: none;
    overflow: hidden;
}

/*キラッと光る*/
.btnshine::before {
  content: '';
    /*絶対配置でキラッと光るの位置を決める*/
  position: absolute;
  top: 0;
  left: -75%;
    /*キラッと光る形状*/
    width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
  transform: skewX(-25deg);
}

/*hoverした際の移動のアニメーション*/
.btnshine:hover::before {
  animation: shine 1.4s;
}

@keyframes shine {
  100% {
    left: 125%;
  }
}

