<div class="cp_snslink10">
<div class="cp_link_list">
<input type="checkbox" id="cp_toggle02" />
<label for="cp_toggle02" class="fa fa-share-alt"></label>
<div class="cp_link">
<ul>
<li><a href="#" class="fa fa-twitter" title="Twitter"></a></li>
<li><a href="#" class="fa fa-facebook" title="Facebook"></a></li>
<li><a href="#" class="fa fa-google-plus" title="Google+"></a></li>
<li><a href="#" class="fa fa-instagram" title="Instagram"></a></li>
</ul>
</div>
</div>
</div>
* {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
body {
/*設置する親要素ページ全体ならbodyなど*/
position: relative;
height: 100vh;
margin: 0;
padding: 0;
}
.contents {
/*サンプルはfixedの確認のためにheight指定しています。*/
height: 2000px;
}
.cp_snslink10 {
position: fixed;
top: 6%;
left: 1%;
display: block;
margin: 0;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
width: 40%;
}
.cp_snslink10 .cp_link_list{
position: relative;
-webkit-perspective: 1000px;
perspective: 1000px;
z-index: 1000;
}
.cp_snslink10 .cp_link_list input{
display: none;
}
.cp_snslink10 .cp_link_list label {
position: relative;
display: -webkit-box;
display: flex;
-webkit-box-pack: center;
justify-content: center;
-webkit-box-align: center;
align-items: center;
cursor: pointer;
font-size: 24px;
width: 50px;
height: 50px;
text-align: center;
color: #ffffff;
background: #F48FB1;
border-radius: 50%;
outline: none;
z-index: 100000;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.cp_snslink10 .cp_link_list .cp_link {
position: absolute;
margin: 0;
top: 60px;
-webkit-transform: rotateY(180deg);
transform: rotateY(180deg);
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
-webkit-transition-delay: 0.5s;
transition-delay: 0.5s;
}
.cp_snslink10 .cp_link_list .cp_link ul{
position: relative;
list-style: none;
margin: 0;
padding: 0;
z-index: -1;
}
.cp_snslink10 .cp_link_list .cp_link ul li{
margin-bottom: 10px;
position: relative;
opacity: 0;
width: 50px;
height: 50px;
-webkit-transform: translateY(-100%) rotate(0);
transform: translateY(-100%) rotate(0);
-webkit-transition: all 0.5s;
transition: all 0.5s;
}
.cp_snslink10 .cp_link_list .cp_link ul li a{
display: -webkit-box;
display: flex;
color: #ffffff;
text-decoration: none;
text-align: center;
font-size: 24px;
width: 100%;
height: 100%;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: center;
justify-content: center;
text-align: center;
background: #F48FB1;
text-decoration: none;
border-radius: 50%;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.cp_snslink10 .cp_link_list .cp_link ul li a:hover{
background: #42A5F5;
color: #ffffff;
}
.cp_snslink10 .cp_link_list input:checked ~ label {
background: #EC407A;
}
.cp_snslink10 .cp_link_list input:checked ~ .cp_link{
-webkit-transform: rotateY(0);
transform: rotateY(0);
-webkit-transition-delay: 0s;
transition-delay: 0s;
}
.cp_snslink10 .cp_link_list input:checked ~ .cp_link ul li{
opacity: 1;
-webkit-transform: translateY(0) rotate(360deg);
transform: translateY(0) rotate(360deg);
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.cp_snslink10 .cp_link_list input:checked ~ .cp_link ul li:nth-of-type(1){
-webkit-transition-delay: 0;
transition-delay: 0;
z-index: 4;
}
.cp_snslink10 .cp_link_list input:checked ~ .cp_link ul li:nth-of-type(2){
-webkit-transition-delay: 0.3s;
transition-delay: 0.3s;
z-index: 3;
}
.cp_snslink10 .cp_link_list input:checked ~ .cp_link ul li:nth-of-type(3){
-webkit-transition-delay: .6s;
transition-delay: .6s;
z-index: 2;
}
.cp_snslink10 .cp_link_list input:checked ~ .cp_link ul li:nth-of-type(4){
-webkit-transition-delay: .9s;
transition-delay: .9s;
z-index: 1;
}
.cp_snslink10 .cp_link_list .cp_link{
top: 0;
left: 60px;
}
.cp_snslink10 .cp_link_list .cp_link ul li{
display: inline;
float: left;
margin-bottom: 0;
margin-right: 10px;
-webkit-transform: translateX(-100%) rotate(0);
transform: translateX(-100%) rotate(0);
}
.cp_snslink10 .cp_link_list input:checked ~ .cp_link ul li{
-webkit-transform: translateX(0) rotate(360deg);
transform: translateX(0) rotate(360deg);
}