@charset "UTF-8";

body {
    font-family: 'Inter', sans-serif;
    font-size: clamp(1rem, 1vw, 2rem);
    color: black;
}
.sidebar {
    position: fixed;
    background: rgb(255, 255, 255);
    text-align: center;
    width: 18vw;
    height: 100vh;
    z-index: 999;
    top: 0;
    border-right: 0.5vh solid #606060;
}
h1 {
    padding-top: 10vh;
}
h2 {
    font-family: 'Italianno', cursive;
    font-size: clamp(1rem, 3vw, 2rem);
    padding: 3vh 0;
}
.icon_box {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    padding: 3vh 0 8vh 0;
}
.icon_box img:hover {
    opacity: 0.5;
 }
.sidebar li {
    font-size: clamp(1rem, 1.5vw, 2rem);
    padding-bottom: 6vh;
}
.grid li {
    font-size: clamp(1rem, 1.5vw, 2rem);
    padding-bottom: 8vh;
}
li a:hover{
    text-decoration: underline;
}
.hamburger-box {
    display: none;
    z-index: 30;
}
/*ここからメイン*/
.main_area {
    margin-left: 18vw;
}
h3 {
    display: block;
    font-size: clamp(1rem, 3vw, 2rem);
    text-decoration: underline;
    padding-left: 8vw;
    padding-top: 8vh;
}
/*＝＝＝並び替えボタンのCSS*/
.sort-btn {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	padding: 5vh 2vw;
}
.sort-btn li {
    text-align: center;
    list-style:none;
	cursor: pointer;
    font-size: clamp(1rem, 3vw, 2rem);
    border-bottom:1px solid;
    width: 18vw;
    padding-bottom: 3vh;
}
.sort-btn li.active {/*ボタンに現在地＝activeというクラス名がついたら文字の下にアンダーライン*/
    text-decoration: underline;
}
/*＝＝＝Muuriのレイアウトのための調整 */
.grid {
    position: relative;/*並び替えの基準点を指定*/
}
/*各画像の横幅などの設定*/
.item {
    display: block;
    position: absolute;
    width: 33%;/*横並びで3つ表示*/
    z-index: 1;
    list-style:none;
}
/*内側のボックスの高さが崩れないように維持*/
.item-content {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0 0 0 4vw;
}
.grid img{
	width:300px;
	height: 400px;
    object-fit: cover;
    border: 6px solid #BDBDBD;
	vertical-align: bottom;/*画像の下にできる余白を削除*/
}
/*＝＝＝lightboxサムネイル背景と画像選択時の枠線の指定*/
.lightbox-thumbs {
    background: transparent!important;
}
.lightbox-thumbs__list a:before {
    border: 6px solid #FA999B;
}
#copy-text {
    text-align: center;
}
small {
    color: #000;
    text-align: center;
    font-family: BIZ UDMincho;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
/*ここからタブレット用CSS*/
@media only screen and (min-width: 601px) and (max-width: 1024px) {
    .sidebar {
        display: none;
    }
    /*ハンバーガーメニュー*/
    .hamburger-box {
        position: relative;
        display: block;
        z-index: 999;
    }
    .hamburger-menu {
        position: absolute;
        top: 25px;
        left: 35px;
        z-index: 9999;
    }
    .hamburger-menu span {
        display: block;
        transition: all .3s ease-in-out;
        -webkit-transition: all .3s ease-in-out;
        -ms-transition: all .3s ease-in-out;
        -moz-transition: all .3s ease-in-out;
        width: 30px;
        height: 3px;
        border-radius: 2px;
        background-color: rgb(0, 0, 0);
        margin: 8px auto;
        z-index: 9999;
    }
    .hamburger-menu.active span:nth-of-type(1) {
        opacity: 0;
        transform: translateX(-100%);
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
    }
    .hamburger-menu.active span:nth-of-type(3){
        opacity: 0;
        transform: translateX(100%);
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -moz-transform: translateX(100%);
    }
    .g-nav{
        position:fixed;
        z-index: 999;
        top:0;
        left: -120%;
        width:100%;
        height: 100vh;
        background-image: url(../img/work/work1.jpg);
        background-size: cover;
        transition: all .6s ease-in-out;
        -webkit-transition: all .6s ease-in-out;
        -ms-transition: all .6s ease-in-out;
        -moz-transition: all .6s ease-in-out;
    }
    .g-nav.panelactive{
        left: 0;
    }
    .g-nav ul {
        position: absolute;
        z-index: 999;
        top:50%;
        left:50%;
        transform: translate(-50%,-50%);
        -webkit-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
        -moz-transform: translate(-50%,-50%);
    }
    .g-nav li{
        list-style: none;
        text-align: center;
    }
    .g-nav li a{
        color: rgb(51, 51, 51);
        text-decoration: none;
        padding:10px;
        display: block;
        text-transform: uppercase;
        -webkit-text-transform: uppercase;
        -ms-text-transform: uppercase;
        -moz-text-transform: uppercase;
        letter-spacing: 0.1em;
        font-weight: bold;
    }
    .main_area {
        margin: 0;
    }
    h3 {
        text-align: center;
        padding: 5% 5%;
        font-size: clamp(1rem, 5vw, 2rem);
    }
    .sort-btn {
        padding: 3% 5% 10%;
    }
    .sort-btn li {
        font-size: clamp(1rem, 5vw, 2rem);
        padding-bottom: 2%;
    }
    .item {
        width: 50%;
    }
    .item-content {
        padding: 0;
        display: grid;
        justify-content: center;
    } 
}
/*ここからスマホ用CSS*/
@media only screen and (max-width: 600px) {
    .sidebar {
        display: none;
    }
    /*ハンバーガーメニュー*/
    .hamburger-box {
        position: relative;
        display: block;
        z-index: 999;
    }
    .hamburger-menu {
        position: absolute;
        top: 25px;
        left: 35px;
        z-index: 9999;
    }
    .hamburger-menu span {
        display: block;
        transition: all .3s ease-in-out;
        -webkit-transition: all .3s ease-in-out;
        -ms-transition: all .3s ease-in-out;
        -moz-transition: all .3s ease-in-out;
        width: 30px;
        height: 3px;
        border-radius: 2px;
        background-color: rgb(0, 0, 0);
        margin: 8px auto;
        z-index: 9999;
    }
    .hamburger-menu.active span:nth-of-type(1) {
        opacity: 0;
        transform: translateX(-100%);
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
    }
    .hamburger-menu.active span:nth-of-type(3){
        opacity: 0;
        transform: translateX(100%);
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -moz-transform: translateX(100%);
    }
    .g-nav{
        position:fixed;
        z-index: 999;
        top:0;
        left: -120%;
        width:100%;
        height: 100vh;
        background-image: url(../img/work/work1.jpg);
        background-size: cover;
        transition: all .6s ease-in-out;
        -webkit-transition: all .6s ease-in-out;
        -ms-transition: all .6s ease-in-out;
        -moz-transition: all .6s ease-in-out;
    }
    .g-nav.panelactive{
        left: 0;
    }
    .g-nav ul {
        position: absolute;
        z-index: 999;
        top:50%;
        left:50%;
        transform: translate(-50%,-50%);
        -webkit-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
        -moz-transform: translate(-50%,-50%);
    }
    .g-nav li{
        list-style: none;
        text-align: center;
    }
    .g-nav li a{
        color: rgb(51, 51, 51);
        text-decoration: none;
        padding:10px;
        display: block;
        text-transform: uppercase;
        -webkit-text-transform: uppercase;
        -ms-text-transform: uppercase;
        -moz-text-transform: uppercase;
        letter-spacing: 0.1em;
        font-weight: bold;
    }
    .main_area {
        margin: 0;
    }
    h3 {
        text-align: center;
        padding: 5% 5%;
        font-size: clamp(1rem, 5vw, 2rem);
    }
    .sort-btn {
        display: flex;
	    justify-content: center;
	    flex-wrap: wrap;
	    padding: 5% 0 10%;
    }
    .sort-btn li {
        font-size: clamp(1rem, 5vw, 2rem);
        padding-bottom: 2%;
    }
    .item {
        width: 100%;
    }
    .item-content {
        padding: 0;
        display: grid;
        justify-content: center;
    } 
}