@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
}

/* ハンバーガーメニュー搭載 */
/*ナビメニューのスタイルを指定*/
nav.NavMenu{
	position: fixed; /*表示位置を固定*/
	z-index: 2; /*重ね順を変更*/
	top: 0; /*表示位置を指定*/
	left: 0; /*表示位置を指定*/
	background: #fff;/*背景を白にする*/
	color: #000; /*文字色を黒にする*/
	text-align: center; /*テキストを中央揃え*/
	width: 100%; /*全幅表示*/
	transform: translateX(-100%); /*ナビを上に隠す上から出したい場合は、transform: translateYを使う。*/
	transition: all 0.6s; /*アニメーションの時間を指定*/
}

nav.NavMenu ul{
	background: #ccc; /*背景をグレーにする*/
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

nav.NavMenu ul li{
	font-size: 1.1em;
	list-style-type: none;
	padding: 0;
	width: 100%;
	border-bottom: 1px dotted #333;
}

nav.NavMenu ul li:last-child{
	padding-bottom: 0;
	border-bottom: none; /*最後のメニュー項目のみ下線を消す*/
}

nav.NavMenu ul li a{
	display: block; /*クリックできる領域を広げる*/
	color: #000;
	padding: 1em 0;
}


/*トグルボタンが押されたときに付与するクラス*/
nav.NavMenu.active{
	transform: translateX(0%);/*上から出したい場合は、transform: translateYを使う。*/
}


/*トグルボタンのスタイルを指定*/
.Toggle {
	position: fixed;    /* bodyに対しての絶対位置指定 */
	right: 13px;
	top: 12px;
	width: 42px;
	height: 42px;
	cursor: pointer;/*divだけどカーソルが変わるようにしている*/
	z-index: 3;/* ボタンを一番上にしている(押せなくなるから) */
}

.Toggle span {
	display: block;
	position: absolute;
	width: 30px;
	border-bottom: solid 3px #000;
	transition: .35s ease-in-out;			/*変化の速度を指定*/
	left: 6px;
}

.Toggle span:nth-child(1) {
	top: 9px;
}
.Toggle span:nth-child(2) {
	top: 18px;
}

.Toggle span:nth-child(3) {
	top: 27px;
}

/* 最初のspanをマイナス45度に */
.Toggle.active span:nth-child(1) {
	top: 18px;
	left: 6px;
	transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
	top: 18px;
	transform: rotate(45deg);
}


/* -------全体への指示------------ */
html {
    scroll-behavior: smooth;
}
section {
    width: 80%;
    margin-top: auto;
    margin-left: auto;
}

ul li a {
    text-decoration: none;
}
h2 {
    font-size: 3vw;
    margin-top: 3vw;
    margin-bottom: 2vw;
    text-align: center;
    font-family: "M PLUS 1 Code", monospace;
    color: red;
}
/* ------------------------------ */
header {
    display: flex;
    width: 80%;
    height: 80vh;
    padding-top: 1vw;
    margin-left: auto;
    margin-right: auto;
    align-items: baseline;
    background-image: url(../images/hana-s.jpg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    vertical-align: bottom;
}

h1 {
    width: 30%;
    margin-left: 10%;
    font-size: 4vw;
    color: orangered;
    font-family: "M PLUS 1 Code", monospace;
    transition: 1s;
}
header:hover h1 {
    transform: translate(1vw,14vw) scale(1.8,5);
    transition: 1s;
}
/* -------ナビ----------------- */
nav {
    width: 60%;
}
.main-ul {
    display: flex; 
}
.main-li {
    width: 20%;
    line-height: 3;
    list-style-type: none;
    background-color: YellowGreen;
}
.main-li:hover {
    background-color: orange;
}
.main-li a {
    display: block;
    text-align: center;
    color: yellow;
}
.main-li a:hover {
    color: #fff;
}
.main-a {
    display: block;
    list-style: 3;
    text-align: center;
    text-decoration: none;
    font-size: 1.6vw;
    color: #202020;
}   

/* ------サブメニュー---------------- */
.sub-ul {
    position: absolute;
    width: 100%;
    list-style-type: none;
    opacity: 0;
    transition: 0.5s;
}
.sub-ul .sub-li {
   
}
.sub-ul .sub-li a {
    display: block;
    line-height: 2;
    text-align: center;
    text-decoration: none;
    color: #008899;
    font-size: 1.2vw;
    border-bottom: 1px solid #909090;
    background-color:rgb(203, 247, 115);
}
.sub-ul .sub-li a:hover {
    background-color: orange;
    color: #fff;
}
/*  プルダウンメニュー */
.pull {
    position: relative;
    overflow: hidden;   
}
.pull:hover {
    overflow: visible;  
}
.pull:hover .sub-ul {
    opacity: 1;
    transition: 0.5s;   
} 
/* ---------- 戻るボタン -------------- */
.top-button {
    display: flex;
    position: relative;
    position: fixed;
    width: 5%;
    z-index: 2;
}
.top-button a {
    text-decoration: none;
}
.top-button img {
    display: block;
    position: absolute;
  
    width: 100%;
    top: -8vw;
    left: 92vw;
    transform: ccalc(1,1);
    transition: 1s;
}
.top-button img:hover {
    transform: scale(1.2,1.2);
    transition: 1s;
}
/* ----セクション⓵　ABOUTページ-------------- */
section:nth-of-type(1) {
    display: flex;
    width: 80%;
    height: 82vh;
    margin-left: auto;
    margin-right: auto;
    background-color: lightgoldenrodyellow;
}
.about-img {
    width:25%;  
    margin-left: 5%;
    margin-top: 10vw;
}
.about-img img {
    display: block;
    width: 100%; 
   
}
.about-p {
    width: 60%;
    margin-left: 10%;
    margin-top: 3vw;
}
h3 {
    color: darkblue;
    font-size: 2vw;
    text-align: center;
}
.about-p p {
    margin-top: 1vw;
    line-height: 1.8;
    font-size: 1.3vw;
}
.about-p p:nth-of-type(1) {
    margin-top: 3vw;
}
.about-p p:nth-of-type(2) {
   width: 85%;
    white-space: pre-wrap;
}
.about-p p span {
    color: red;
}

/* ---セクション⓶　WORKS----------------------------- */
section:nth-of-type(2) {
    width: 80%;
    height: 710vh;
    margin-left: auto;
    margin-right: auto;
}
section:nth-of-type(2) h3 {
    font-size:2vw;
    margin-top: 2vw;
    margin-bottom: 1vw;
    border-bottom: 2px dotted darkblue;
    text-align: left;
}
/* --------webサイト------------- */
.web-top {
    display: flex;
   
}
.web-top figure {
    width: 48%;
    
    border: 1px dotted #909090;
}
.web-top figure:nth-of-type(1){
    margin-right: 4%;
}
.web-top figure a {
    display: block;
    text-decoration: none;
}
.web-top figure img {
    display: block;
    width: 100%;
    transform: scale(1,1);
    transition: 1s;
    border-bottom: 4px dotted yellowgreen;
}
.web-top figure img:hover {
    transform: scale(1.05,1.05);
    transition: 1s;
}
/* -------figcaption---------------- */
figcaption ul {
    margin-top: 1vw;
    margin-bottom: 1vw;
}
figcaption ul li {
    display: flex;
    line-height: 1.8;
    font-size: 1.1vw;
    
}
figcaption ul li span {
    display: inline-block;
    width: 19%;
    margin-left: 3%;
}
figcaption ul li p {
    width: 75%;
    margin-right: 3%;
}
/* ------------------------ */
.web-bottom {
    display: flex;
    margin-top: 2vw;
}
.web-bottom figure {
    width: 48%;
    border: 1px dotted #909090;
}
.web-bottom figure:nth-of-type(1){
    margin-right: 4%;
}
.web-bottom figure a {
    text-decoration: none;
}
.web-bottom figure img {
    display: block;
    width: 100%;
    transform: scale(1,1);
    transition: 1s;
    border-bottom: 4px dotted yellowgreen;
}
.web-bottom figure img:hover {
    transform: scale(1.05,1.05);
    transition: 1s;
}
/* ------- バナー-------------- */
.banner-box {
    display: flex;
}
.banner-box figure {
    width: 30%;
    border: 1px dotted #909090;
}
.img {
    overflow: hidden;
}
.banner-box figure:nth-of-type(2) {
    margin-left: 5%;
    margin-right: 5%;
}
.banner-box figure img {
    display: block;
    width: 100%;
    transform: scale(1,1);
    transition: 1s;
    border-bottom: 4px dotted yellowgreen;
}
.banner-box figure img:hover {
    transform: scale(1.05,1.05);
    transition: 1s;
}
/* -------figcaption--------------- */
.banner-box figure figcaption ul {
    margin-top: 1vw;
    margin-bottom: 1vw;
}
.banner-box figure figcaption ul li {
    display: flex;
    line-height: 1.8;
    font-size: 0.9vw;
    
}
.banner-box figure figcaption ul li span {
    display: inline-block;
    width: 24%;
    margin-left: 3%;
}
.banner-box figure figcaption ul li p {
    width: 70%;
    margin-right: 3%;
}
/* -------ポスター------------------------- */
.poster {
    display: flex;
}
h4 {
    font-size: 1.5vw;
    text-align: center;
    margin-top: 0.5vw;
    margin-bottom: 0.5vw;
}
.poster {
    display: flex;
}
.poster-parent {
    width: 50%;
}
.poster-box {
    display: flex;
}
.poster-box figure {
    width: 46%;
    margin-left: auto;
    margin-right: auto;
    border: 1px dotted #909090;
}
.poster-box figure:nth-of-type(2) {
    margin-left: 0%;
}
/* -------figcaption--------------- */
.poster-box figure figcaption ul {
    margin-top: 1vw;
    margin-bottom: 1vw;
}
.poster-box figure figcaption ul li {
    display: flex;
    line-height: 1.8;
    font-size: 0.9vw;
    
}
.poster-box figure figcaption ul li span {
    display: inline-block;
    width: 30%;
    margin-left: 3%;
}
.poster-box figure figcaption ul li p {
    width: 64%;
    margin-right: 3%;
}
/* ------------------------------ */
.poster-box figure img {
    display: block;
    width: 100%;
    transform: scale(1,1);
    transition: 1s;
    border-bottom: 4px dotted yellowgreen;

}
.poster-box figure img:hover {
    transform: scale(1.05,1.05);
    transition: 1s;
}
/* ---------ロゴ・名刺------------- */
.cardLogo { 
}
/* ---------トマトロゴ----------- */
.tomato {
    width: 80%;
}
.tomato img {
    display: block;
    width: 10%;
    margin-left: 10%;
    transform: translateX(4vw);
    transition: 3s;
}
.tomato img:hover {
    transform: translateX(-4vw);
    transition: 3s;
}
/* -------トマト名刺------------ */
.cardLogo-box1 {
    display: flex;
    margin-top: 2vw;
    margin-bottom: 2vw; 
}

.cardLogo-box1 figure {
    width: 50%;
    border: 1px dotted #909090;
    background-color: lightgoldenrodyellow;
}
.cardLogo-box1 figure img { 
    display: block;
    width: 60%;
    margin-left: auto;
    margin-right: auto;
}
.cardLogo-box1 figure img:hover {
    transform: rotateY(360deg);
    transition: 3s;
}
.card1 {
    margin-bottom: 1vw;
}
.card3 {
    margin-bottom: 1vw;
}
/* ------手裏剣ロゴ------------------------ */
.syurikenn {
    width: 80%;
}
.syurikenn img {
    display: block;
    width: 10%;
    margin-left: 10%;
    transform: translateX(4vw);
    transition: 1s;
}
.syurikenn img:hover {
    transform: translateX(-4vw);
    transition: 1s;
}
/* ----------手裏剣名刺------------- */
.cardLogo-box2 {
    display: flex;
    margin-right: auto;
    margin-top: 2vw;
    margin-bottom: 2vw;
    background-color: lightgoldenrodyellow;
}
.cardLogo-box2 figure {
    width: 50%;
    border: 1px dotted #909090;
}
/* ----5・6-------------- */
.card-y {
    display: flex;
}
.card5{
    width: 50%;
}
.card5 img {
    display: block;
    width: 70%;
    margin-left: auto;
    margin-right: auto;
}
.card5 img:hover {
    transform: rotateY(360deg);
    transition: 3s;
}
.card6 {
    width: 50%;
}
.card6 img {
    display: block;
    width: 70%;  
    margin-right: auto;
}
.card6 img:hover {
 transform: rotateY(360deg);
    transition: 3s;
}
/* ------------------- */
.cardLogo-box2 figure:nth-of-type(2) img {
    display: block;
    width: 60%;
    margin-left: auto;
    margin-right: auto;
}
.card7 {
    margin-bottom: 1vw;
}
.card7 img:hover {
    display: block;
    transform: rotateY(360deg);
    transition: 3s;
}
.card8 img:hover {
    display: block;
    transform: rotateY(360deg);
    transition: 3s;
}
/* --------ロゴボタン---------------- */
.rogo2 {
    display: flex;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.botan {
    width: 10%;
    margin-left: 7%;
    margin-right: 43%;
}
.botan img {
    display: block;
    width: 80%;
    transform: translateX(4vw);
    transition: 3s;
}
.botan img:hover {
    transform: translateX(-4vw);
    transition: 3s;
}
/* -----ロゴひよこ----------- */
.hiyoko {
    width: 10%;
    margin-right: 30%;
}
.hiyoko img {
    display: block;
    width: 80%;
    transform: translateX(4vw);
    transition: 3s;
}
.hiyoko img:hover {
    transform: translateX(-4vw);
    transition: 3s;
}
.rogo3 {
    display: flex;
}
.rogo3 p {
    width: 50%;
    font-size: 1.5vw;
} 
/* ------------------------------- */
.cardLogo-box3 {
    display: flex;
    margin-right: auto;
    margin-top: 2vw;
    margin-bottom: 2vw;
    background-color: lightgoldenrodyellow;
}
.cardLogo-box3 figure {
    width: 50%;
    border: 1px dotted #909090;
}
.card-y {
    display: flex;
}
.card9{
    width: 50%;
}
.card9 img {
    display: block;
    width: 82%;
    margin-left: 14%;
    margin-right: 4%;
}
.card9 img:hover {
 transform: rotateY(360deg);
    transition: 3s;
}
.card10 {
    width: 50%;
    margin-left: 4%;
}
.card10 img {
    display: block;
    width: 82%; 
    margin-left: 4%; 
    margin-right: auto;
}
.card10 img:hover {
 transform: rotateY(360deg);
    transition: 3s;
}
/* ------------------- */
.cardLogo-box3 figure:nth-of-type(2) img {
    display: block;
    width: 65%;
    margin-left: 13%;
    margin-right: auto;
}
.card11 {
    width: 100%;
    margin-bottom: 1vw;
}
.card11 img:hover {
    display: block;
    transform: rotateY(360deg);
    transition: 3s;
}
.card12 {
    width: 100%;
}
.card12 img:hover {
    display: block;
    transform: rotateY(360deg);
    transition: 3s;
}
/* ----------コラージュ------------ */
.collage {
    display: flex;
}
.collage figure {
    width: 24%;
    margin-left: auto;
    margin-right: auto;
    border: 1px dotted #909090;
}
.collage figure img {
    display: block;
    width: 100%;
    transform: scale(1,1);
    transition: 1s;
    border-bottom: 4px dotted yellowgreen;
}
.collage figure img:hover {
    transform: scale(1.05,1.05);
    transition: 1s;
}
/* -------figcaption--------------- */
.collage figure figcaption ul {
    margin-top: 1vw;
    margin-bottom: 1vw;
}
.collage figure figcaption ul li {
    display: flex;
    line-height: 1.8;
    font-size: 0.9vw;
    
}
.collage figure figcaption ul li span {
    display: inline-block;
    width: 30%;
    margin-left: 3%;
}
.collage figure figcaption ul li p {
    width: 64%;
    margin-right: 3%;
}
/* ----------リタッチ-------------- */
.retouch {
    display: flex;
}
.retouch figure {
    width: 24%;
    margin-left: auto;
    margin-right: auto;
    border: 1px dotted #909090;
}
.retouch figure img {
    display: block;
    width: 100%;
    transform: scale(1,1);
    transition: 1s;
}
.retouch figure img:hover {
    transform: scale(1.05,1.05);
    transition: 1s;
}
.retouch figure img:nth-of-type(2) {
    margin-top: 0.5vw;
    border-bottom: 4px dotted yellowgreen;
}
/* -------figcaption--------------- */
.retouch figure figcaption ul {
    margin-top: 1vw;
    margin-bottom: 1vw;
}
.retouch figure figcaption ul li {
    display: flex;
    line-height: 1.8;
    font-size: 0.9vw;
    
}
.retouch figure figcaption ul li span {
    display: inline-block;
    width: 30%;
    margin-left: 3%;
}
.retouch figure figcaption ul li p {
    width: 64%;
    margin-right: 3%;
}
/* ----------GIFアニメ------------- */
.gif {
    display: flex;
}
.gif figure {
    width: 30%;
    border: 1px dotted #909090;
}
.gif figure:nth-of-type(2) {
    margin-left: 5%;
    margin-right: 5%;
}
.gif figure img {
    width: 100%;
    border-bottom: 4px dotted yellowgreen;
}
/* -------figcaption--------------- */
.gif figure figcaption ul {
    margin-top: 1vw;
    margin-bottom: 1vw;
}
.gif figure figcaption ul li {
    display: flex;
    line-height: 1.8;
    font-size: 0.9vw;
    
}
.gif figure figcaption ul li span {
    display: inline-block;
    width: 24%;
    margin-left: 3%;
}
.gif figure figcaption ul li p {
    width: 70%;
    margin-right: 3%;
}

/* ----セクション⓷　STUDYページ -------------*/
/* 一旦消す */
section:nth-of-type(3) {
     display: none;
    width: 100%;
    height: 30vh;
    background-color: beige;
}
section:nth-of-type(3) a {
    display: block;
    text-decoration: none;
}
/* ----ここまで消す------------------------- */

/* <!--セクション⓸　CONTACTページ-----------> */
section:nth-of-type(4) {
    width: 100%;
    height: 25vh;
    background-color: YellowGreen;
}
section:nth-of-type(4)h2 {
    padding-top: 4vw;
}
section:nth-of-type(4) p {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 2vw;
    padding-bottom: 2vw;
    font-size: 2vw;
    color: #fff;
    text-align: center;
    border: 1px dotted #fff;
} 
section:nth-of-type(4) p:hover {
    color: YellowGreen;
    background-color: #fff;
}
section:nth-of-type(4) a {
    display: block;
    text-decoration: none;
}
/* ----------ここからfooter-------- */  
footer {
    background-color: YellowGreen;
    display: flex;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 5vw;
    
}
footer p {
    width: 20%;
    margin-left: 30%;
    font-size: 1vw;
    color: #fff;
    padding: 1vw 0;
    text-align: center;
}
.sns  {
    width: 20%;
    margin-right: 30%;
    display: block;
    text-align: center;
    font-size: 2vw;
    color: #fff;
}
.sns a {
    text-decoration: none;
    color: #fff;
}