

/*ヘッダー*/
body,
html {
  height: 100%;
  margin: 0 auto;
}
.header {
	background-color:#000;
}
.head{	
	display: flex;
	justify-content: space-around;
	flex-wrap:wrap;
	align-items:center;
}
h1{ 
	margin:0 30px;
	font-family: "Broadway";
	font-size: 60px;
    border-bottom: 0px solid #000;
    background: linear-gradient(90deg, #58c6ff 0%, #076ad9 20%, #ff3bef 40%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; 
    animation: rotation-x 2.5s linear infinite;
}
@keyframes rotation-x {
  0% {
    transform: rotateX(0deg);
  }
  100% {
    transform: rotateX(360deg);
  }
}
h2 { 
	margin:0 40px;
	font-family: "Nico Moji";
	font-size:40px;
	color: #fff;
	white-space: nowrap;
}

h3 {	
	font-family: "Broadway";
	font-size:40px;
	color: #696969;
	text-align: center;
	display:block;
}

/* ヘッダーを最前列に表示 */

/* プルダウンメニュー*/
.input-hidden{
	display: none;
}
	/* label 半円*/
.hamburger-switch{
	width: 2em;
	height: 2em;
}
/* メニューリスト */
.hamburger-menulist{
	font-size:20px;
	margin-right: 5%;
	list-style: none;
	display:flex;
}
/* プルダウンメニュー */
	/* プルダウンスイッチ */
.hamburger-mark{
	position: absolute;
	left: 50%;
	transform: translate(-50%, 1%);
	border-radius: 50%;
	z-index: -1;
	cursor: pointer;
	background-color: transparent;
}
	/* スイッチの矢印マーク */
.hamburger-mark:before{
	content: "";
	position: absolute;
	width: .6em;
	height: .6em;
	border: 2px solid;
	border-color: transparent #fff #fff transparent; /* 矢印マークの色（#333のみ変更） */
	top: 80%;
	left: 50%;
	transform: translate(-50%, 50%) rotate(45deg);
}
#hamburger-checkswitch:checked ~ .hamburger-menuwrap-pulldown .hamburger-mark:before{
	transform: translate(-50%, 100%) rotate(225deg);
}
	/* メニューリストのデザイン */
.hamburger-menuwrap-pulldown{
	position: fixed;
	top:-170px;
	width: 100%;
	height:170px;
	left: 0;
	padding:0;
	bottom: calc(100% - 4em );
	transition: .3s;
	z-index: 9980;
	background-color: rgba(255,255,255,0.5);
}

.navi{
	font-family: "Paytone One", serif;
	margin-top:20px;
}
ul{
	margin-top:3px;
	justify-content: space-around;
	align-items:center;	
	list-style:none;
}
li :hover {    
	display: block;
	background-color:#00ff7f;
	transition: 1s;
	transform: rotateX(360deg);
}
.hamburger-menulist-pulldown a{
	margin-top:3px;
	margin-right:3px;
	color: #fff; /* メニューリストの文字色 */
}
	/* メニューリストのアニメーション（上から） */
#hamburger-checkswitch:checked ~ .hamburger-menuwrap-pulldown{
	transform: translate(0, 100%);
	
}

/*花火*/
@keyframes fireworks-animation {
	0% {
		transform: translate(-50%, 50vh);
		width: 4px;
		opacity: 1;
	}
	50% {
		width: 4px;
		opacity: 1;
	}
	100% {
		width: 400px;
		opacity: 0;
	}
}

.c-firework,
.c-firework::before,
.c-firework::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 40%;
	aspect-ratio: 1;
	background: radial-gradient(circle, #ff0 10px, #000 0) 50% 00%,
		radial-gradient(circle, #ff0 10px, #000 0) 00% 50%,
		radial-gradient(circle, #ff0 10px, #000 0) 50% 99%,
		radial-gradient(circle, #ff0 10px, #000 0) 99% 50%,
		radial-gradient(circle, #ff0 10px, #000 0) 80% 90%,
		radial-gradient(circle, #ff0 10px, #000 0) 95% 90%,
		radial-gradient(circle, #ff0 10px, #000 0) 10% 60%,
		radial-gradient(circle, #ff0 10px, #000 0) 31% 80%,
		radial-gradient(circle, #ff0 10px, #000 0) 80% 10%,
		radial-gradient(circle, #ff0 10px, #000 0) 90% 23%,
		radial-gradient(circle, #ff0 10px, #000 0) 45% 20%,
		radial-gradient(circle, #ff0 10px, #000 0) 13% 24%;
	background-size: 4px 4px;
	background-repeat: no-repeat;
	transform: translate(-50%, -50%);
	animation: fireworks-animation 4s infinite;
}
.c-firework::before {
	transform: translate(-50%, -50%) rotate(25deg) !important;
}
.c-firework::after {
	transform: translate(-50%, -50%) rotate(-37deg) !important;
}


/*下部矢印*/
html {
    scroll-behavior: smooth;
}
.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #fff;
    border: solid 2px #000;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}
.pagetop__arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: translateY(20%) rotate(-45deg);
}
@media (hover: hover) and (pointer: fine) {
    .pagetop:hover, .pagetop:hover .pagetop__arrow {
        border-color: #000000;
    }
}


/*フッター*/

#footer {
	width:30%;
	margin:12px auto;
	border-top: 2px solid #000000;
	padding:12px;
	text-align:center;
}
p {
	width:39%;
	margin:5px auto;
	text-align:left;
	font-family: "Silkscreen", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size:18px;
}


/*--ギャラリーページ--*/

/*--コンテンツ設定--*/
.area {
    background-color: #ffffff;
    overflow: hidden;
    width: 100%;
    padding: 5% 0;
}
/*--固定背景--*/
div {
	box-sizing: border-box;
	color: #FFF;
	font-size: 5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 5%;
}


h4 {
    font-family: 'Impact';
    font-size: 55px;
    font-weight:bold;
    text-align: center;
    color:#FFFFFF;
    text-shadow: #000 1px 0 10px;
}

.cd-fixed-bg {
    position: relative;
    min-height: 100%;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center center;
    z-index: 2;
}

/*--固定背景01--*/
.cd-fixed-bg.cd-bg-1  {
  background-image: url('../images/pic_06.JPG');
}

/*--固定背景02--*/
.cd-fixed-bg.cd-bg-2  {
  background-image: url('../images/webdesign.png');
}

/*--固定背景03--*/
.cd-fixed-bg.cd-bg-3  {
  background-image: url('../images/pic_07.JPG');
}

/*--固定背景04--*/
.cd-fixed-bg.cd-bg-4  {
  background-image: url('../images/pic_04.JPG');
}

