@charset 'utf-8';
html{
    min-width: 1200px;
}
.sp{
    display: none !important;
}
.pc{
    display: block !important;
}
img{
    max-width: 100%;
    height: auto;
}
.MB80 {
    margin-bottom: 80px;
}
@media screen and (min-width: 800px) {
    .w1194{
        width: 1260px;
        margin: auto;
        position: relative;
    }
    .w1045{
        width: 1045px;
        margin: auto;
        position: relative;
    }
}

/* header */
header{
    position: fixed;
    top: 120px;
    width: 100%;
    z-index: 10;
}
#logo_en{
    display: inline-block;
    position: fixed;
    left: 70px;
}
#logo_ja{
    position: absolute;
    top: 0;
    right: 0;
}
#text_slider{
    background: #812F31;
    height: 40px;
}
#text_slider li{
    line-height: 40px;
    font-size: 24px;
    color: #fff;
    white-space: nowrap;
}

/* footer */
footer{
    text-align: right;
    font-size: 11px;
    padding: 58px 0;
}

/* main */
main{
    padding-top: 80px;
}

/* title */
.title{
    font-size: 0;
    margin-bottom: 20px;
    position: relative;
}
.title *{
    display: inline-block;
}
.title.white *{
    color: #fff;
}
.title h2{
    font-size: 43px;
    line-height: 1.28em;
    margin-right: 10px;
}
.title p{
    font-size: 13px;
    line-height: 1.46em;
}

/* more_btn */
.more_btn{
    position: absolute;
    bottom: 0;
    right: 0;
}
.more_btn a{
    display: block;
    padding: 8px 23px;
    border: 1px solid #000;
    font-size: 13px;
    line-height: 1.3em;
    border-radius: 40px;
    transition: 0.3s;
}
.more_btn a:hover{
    background: #000;
    color: #fff;
}
.white .more_btn a{
    border: 1px solid #fff;
}
.white .more_btn a:hover{
    background: #fff;
    color: #813132;
}

/* =======================================================

    TOP

========================================================== */
/* #main */
#main{
    margin-bottom: 64px;
}
#nav{
    position: absolute;
    top: 140px;
    left: 0;
    z-index: 1;
}
#nav nav{
    margin-bottom: 67px;
}
#nav nav li{
    margin-bottom: 20px;
}
#nav nav li:last-of-type{
    margin-bottom: 0;
}
#nav nav li span{
    font-size: 0;
}
#nav nav li a{
    display: block;
    position: relative;
}
#nav nav li a:before,
#nav nav li a:after{
    line-height: 63px;
    background: #fff;
    display: inline-block;
    white-space: nowrap;
    transition: 0.3s;
    padding-right: 4px;
}
#nav nav li a:before{
    font-size: 54px;
	font-family: "Tilt Neon", sans-serif;
    opacity: 1;
}
#nav nav li a:hover:before{
    opacity: 0;
}
#nav nav li a:after{
    font-size: 46px;
    font-weight: 500;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}
#nav nav li a:hover:after{
    opacity: 1;
}
#nav nav li:nth-of-type(1) a:before{
    content: "About";
}
#nav nav li:nth-of-type(1) a:after{
    content: "ヨールウォールについて";
}
#nav nav li:nth-of-type(2) a:before{
    content: "Risograph";
}
#nav nav li:nth-of-type(2) a:after{
    content: "リソグラフの魅力";
}
#nav nav li:nth-of-type(3) a:before{
    content: "Print Services";
}
#nav nav li:nth-of-type(3) a:after{
    content: "データ作成の方法と印刷注文";
}
#nav nav li:nth-of-type(4) a:before{
    content: "Store";
}
#nav nav li:nth-of-type(4) a:after{
    content: "オンラインストア";
}
#nav nav li:nth-of-type(5) a:before{
    content: "Contact";
}
#nav nav li:nth-of-type(5) a:after{
    content: "問合せ・入稿窓口";
}
#nav > ul{
    font-size: 0;
}
#nav > ul li{
    display: inline-block;
    margin-right: 16px;
}
#slide{
    /*margin-left: 146px;*/
    width: 1045px;
    margin: 0 auto;
}

/* #rental */
#rental{
    margin-bottom: 100px;
}
#rental .item{
    float: left;
    width: 335px;
    margin-right: 20px;
    position: relative;
    overflow: hidden;
}
#rental .item:before{
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: 0.3s;
}
#rental .item:hover:before{
    transform: scale(1.05);
    filter: blur(2px);
}
#rental .item:nth-of-type(1):before{
    background: url(../img/rental_space_wall.jpg)no-repeat center;
    background-size: cover;
}
#rental .item:nth-of-type(2):before{
    background: url(../img/rental_space_mall.jpg)no-repeat center;
    background-size: cover;
}
#rental .item:nth-of-type(3):before{
    background: url(../img/rental_space_call.jpg)no-repeat center;
    background-size: cover;
}
#rental .item:nth-of-type(3){
    margin-right: 0;
}
#rental .item a{
    display: block;
    height: 220px;
    box-sizing: border-box;
    padding: 5px 17px 14px 20px;
    background: rgba(34, 8, 4, 0.2);
    position: relative;
}
#rental .item *{
    color: #fff;
}
#rental .item h3{
    font-size: 50px;
    line-height: 1.28em;
}
#rental .item p{
    font-size: 12px;
    line-height: 18px;
    margin-top: -8px;
    font-weight: 700;
}
#rental .item span{
    font-size: 16px;
    line-height: 1.25em;
    position: absolute;
    bottom: 14px;
    right: 17px;
}

/* #news-wall */
#news-wall{
    position: relative;
    margin-bottom: 80px;
}
#news-wall:before{
    content: "";
    height: 100%;
    width: calc(((100% - 1045px) / 2) + 603px);
    background: #813132;
    position: absolute;
    top: 0;
    left: 0;
}

/* #news */
#news{
    width: 603px;
    float: left;
    padding: 64px 40px 0 0;
    box-sizing: border-box;
}
#news .item{
    margin-bottom: 40px;
}
#news .item:last-of-type{
    margin-bottom: 0;
}
#news .item a{
    display: block;
    transition: 0.3s;
}
#news .item a:hover{
    color: #bf6769;
}
#news .item .img{
    width: 221px;
    float: left;
    overflow: hidden;
}
#news .item .img img{
    aspect-ratio: 221 / 162;
    width: 100%;
    height: auto;
    object-fit: cover;
    transition: 0.3s;
}
#news .item a:hover img{
    transform: scale(1.05);
    filter: blur(2px);
}
#news .item .text{
    width: 221px;
    float: left;
    color: #fff;
    margin-left: 24px;
}
#news .item .text p{
    font-size: 13px;
    margin-bottom: 16px;
}
#news .item .text p *{
    letter-spacing: 0.05em;
}
#news .item .text p a{
    display: inline;
    margin-left: 16px;
    text-decoration: underline;
}
#news .item .text h3{
    font-size: 16px;
    font-weight: 400;
    line-height: 1.55em;
}

/* #wall */
#wall{
    width: 376px;
    float: right;
}
#wall .title h2{
    font-size: 32px;
    line-height: 1.28em;
}
#wall .title h2 span{
    font-size: 78px;
    line-height: 1.25em;
    margin-top: -15px;
}
#wall .title p{
    /*margin-left: -25px;*/
}
#wall > p{
    overflow: hidden;
}
#wall > p a img{
    transition: 0.3s;
    width: 100%;
    height: auto;
}
#wall > p a:hover img{
    transform: scale(1.05);
    filter: blur(2px);
}
#wall > p.bnr {
    margin-top: 32px;
}
#wall .title {
    text-align: center;
}

/* #archives */
#archives .item{
    font-size: 0;
    margin-bottom: 40px;
}
#archives .item:last-of-type{
    margin-bottom: 0;
}
#archives .item .date{
    width: 88px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 101px;
    text-align: center;
    transition: 0.3s;
    position: relative;
}
#archives .item div.date:before{
    content: "";
    width: 41px;
    height: 2px;
    background: #000;
    position: absolute;
    top: 50%;
    left: 104px;
    margin-top: -1px;
}
#archives .item a:hover div.date:before{
    background: #813132;
    animation-name: date_line;
    animation-duration: 0.3s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
}
@keyframes date_line {
    from {
        width: 0;
    }
    to {
        width: 41px;
    }
}
#archives .item a:hover .date{
    color: #823133;
}
#archives .item .date span{
    display: block;
}
#archives .item .date .date{
    font-size: 46px;
    line-height: 1.28em;
    margin-bottom: 3px;
}
#archives .item .date .month{
    font-size: 16px;
    line-height: 1.25em;
    margin-bottom: 9px;
}
#archives .item .date .year{
    font-size: 13px;
    line-height: 1.3em;
}
#archives .item .img{
    width: 856px;
    display: inline-block;
    vertical-align: middle;
    overflow: hidden;
}
#archives .item a{
    display: block;
}
#archives .item a img{
    aspect-ratio: 856 / 450;
    width: 100%;
    height: auto;
    object-fit: cover;
    transition: 0.3s;
}
#archives .item a:hover img{
    transform: scale(1.05);
    filter: blur(2px);
}
#archives .cat{
    text-align: right;
    margin-top: 15px;
    font-size: 13px;
    letter-spacing: 0.05em;
}
#archives .cat a{
    text-decoration: underline;
    color: #823133;
    transition: 0.3s;
}
#archives .cat a:hover{
    color: #000;
}

/* =======================================================

    下層共通

========================================================== */
.under-title{
    text-align: center;
    margin-bottom: 64px;
}
.under-title h2{
    font-size: 43px;
    line-height: 1.28em;
}
.under-title p{
    font-size: 14px;
    line-height: 1.43em;
}

/* =======================================================

    アーカイブ

========================================================== */
#under.archive .wrapper{
    display: flex;
}
#under.archive .wrapper #side{
    order: 1;
    width: 120px;
    margin-right: 69px;
}
#under.archive .wrapper #side *{
	font-family: "Tilt Neon", sans-serif;
	font-weight: 400;
}
#under.archive .wrapper #side .inner{
    position: sticky;
    top: 240px;
    left: 0;
}
#under.archive .wrapper #side dt,
#under.archive .wrapper #side li p{
    font-size: 16px;
    margin-bottom: 8px;
}
#under.archive .wrapper #side dd li{
    font-size: 12px;
    line-height: 2.25em;
}
#under.archive .wrapper #side dd li a{
    color: #813132;
    text-decoration: underline;
    transition: 0.3s;
}
#under.archive .wrapper #side dd li a:hover{
    color: #000;
}
#under.archive .wrapper #side .month{
    margin-bottom: 61px;
}
#under.archive .wrapper #side .month ul ul{
    margin-bottom: 24px;
    padding-left: 24px;
    display: none;
}
#under.archive .wrapper #side .month li:last-of-type ul{
    margin-bottom: 0;
}
#under.archive .wrapper #side .month li p{
    padding-left: 18px;
    position: relative;
    line-height: 1.2em;
}
#under.archive .wrapper #side .month li p:before{
    content: "";
    width: 12px;
    height: 12px;
    background: url(../img/ico_plus.svg)no-repeat center #000;
    background-size: 8px auto;
    transition: 0.3s;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
#under.archive .wrapper #side .month li p.active:before{
    background-image: url(../img/ico_minus.svg);
}
#under.archive .wrapper #side .month li p:hover{
    cursor: pointer;
    color: #813132;
}
#under.archive .wrapper #side .month li p:hover:before{
    background-color: #813132;
}
#under.archive .wrapper #side .category dd{
    padding-left: 7px;
}
#under.archive .wrapper .archive-list{
    order: 2;
    width: 856px;
}
#under.archive .item{
    margin-bottom: 40px;
}
#under.archive .item.news{
    margin-bottom: 56px;
}
#under.archive .item:last-of-type{
    margin-bottom: 0 !important;
}
#under .post-text{
    margin-bottom: 24px;
}
#under .post-text p{
    margin-bottom: 24px;
}
#under .post-text p .date{
    font-size: 16px;
    margin-right: 24px;
}
#under .post-text p a{
    font-size: 13px;
    color: #823133;
    text-decoration: underline;
    letter-spacing: 0.05em;
    transition: 0.3s;
}
#under .post-text p a:hover{
    color: #000;
}
#under .post-text h3{
    font-size: 26px;
    letter-spacing: 0.05em;
    line-height: 1.46em;
    font-weight: 400;
}
#under .post-text h3 a{
    transition: 0.3s;
}
#under .post-text h3 a:hover{
    color: #823133;
}
#under.archive .item .cat{
    margin-top: 15px;
    text-align: right;
}
#under.archive .item .cat a{
    font-size: 13px;
    color: #823133;
    text-decoration: underline;
    transition: 0.3s;
}
#under.archive .item .cat a:hover{
    color: #000;
}
#under.archive .item .img{
    overflow: hidden;
}
#under.archive .item img{
    aspect-ratio: 856 / 450;
    width: 100%;
    height: auto;
    object-fit: cover;
    transition: 0.3s;
}
#under.archive a:hover img{
    transform: scale(1.05);
    filter: blur(2px);
}
.pagination{
    text-align: center;
    margin: 80px 0 34px;
    font-size: 0;
}
.pagination *{
    font-size: 18px;
	font-family: "Tilt Neon", sans-serif;
	font-weight: 400;
    width: 40px;
    line-height: 40px;
    display: inline-block;
    margin: 0 8px;
    transition: 0.3s;
}
.pagination a:hover{
    color: #813132;
}
.pagination .current{
    background: #000;
    border-radius: 50%;
    color: #fff;
}
.pagination .prev,
.pagination .next{
    font-size: 16px;
	font-family: "Noto Sans JP", sans-serif;
    width: auto;
    margin: 0;
    position: relative;
}
.pagination .prev{
    margin-right: 72px;
    padding-left: 38px;
}
.pagination .next{
    margin-left: 72px;
    padding-right: 38px;
}
.pagination .prev:before,
.pagination .next:before{
    content: "";
    width: 10px;
    height: 18px;
    position: absolute;
    top: 50%;
    background: url(../img/arrow.svg)no-repeat center;
    background-size: contain;
    transition: 0.3s;
}
.pagination .prev:before{
    left: 0;
    transform: translateY(-50%);
}
.pagination .next:before{
    right: 0;
    transform: translateY(-50%) rotate(180deg);
}
.pagination .prev:hover:before{
    left: -4px;
}
.pagination .next:hover:before{
    right: -4px;
}


/* =======================================================

    single

========================================================== */
#single .thumb,
#single .post-text{
    margin-bottom: 64px;
}
#single .thumb{
    /*margin-left: 189px;*/
    /*width: 1045px;*/
}
#single .content p{
    font-size: 16px;
    letter-spacing: 0.05em;
    margin-bottom: 50px;
    line-height: 2.25em;
}
#single .content p:last-of-type{
    margin-bottom: 0;
}
#single .content p a{
    text-decoration: underline;
    color: #813132;
    transition: 0.3s;
}
#single .content p a:hover{
    color: #000;
}
.back_to_link{
    margin: 80px 0 34px;
}
.back_to_link a{
    font-size: 16px;
    padding-left: 38px;
    position: relative;
}
.back_to_link a:before{
    content: "";
    width: 10px;
    height: 18px;
    position: absolute;
    top: 50%;
    background: url(../img/arrow.svg)no-repeat center;
    background-size: contain;
    transition: 0.3s;
}
.back_to_link a:before{
    left: 0;
    transform: translateY(-50%);
}
.back_to_link a:hover:before{
    left: -4px;
}


/* =======================================================

    アニメーション

========================================================== */
#slide{
    opacity: 0;
    animation-name: fadeIn;
    animation-duration: 0.8s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-timing-function:ease-in-out;
}
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@media screen and (min-width: 800px) {
    #nav nav li{
        opacity: 0;
        animation-name: each-left;
        animation-duration: 0.3s;
        animation-iteration-count: 1;
        animation-fill-mode: forwards;
        animation-timing-function:ease-in-out;
    }
    #nav nav li:nth-of-type(1){
        animation-delay: 0.1s
    }
    #nav nav li:nth-of-type(2){
        animation-delay: 0.2s
    }
    #nav nav li:nth-of-type(3){
        animation-delay: 0.3s
    }
    #nav nav li:nth-of-type(4){
        animation-delay: 0.4s
    }
    #nav nav li:nth-of-type(5){
        animation-delay: 0.5s
    }
    #nav > ul{
        opacity: 0;
        animation-name: each-left;
        animation-duration: 0.3s;
        animation-delay: 0.6s;
        animation-iteration-count: 1;
        animation-fill-mode: forwards;
        animation-timing-function:ease-in-out;
    }
}
@media screen and (max-width: 799px) {
    #nav.active nav li{
        opacity: 0;
        animation-name: each-left;
        animation-duration: 0.3s;
        animation-iteration-count: 1;
        animation-fill-mode: forwards;
        animation-timing-function:ease-in-out;
    }
    #nav.active nav li:nth-of-type(1){
        animation-delay: 0.1s
    }
    #nav.active nav li:nth-of-type(2){
        animation-delay: 0.2s
    }
    #nav.active nav li:nth-of-type(3){
        animation-delay: 0.3s
    }
    #nav.active nav li:nth-of-type(4){
        animation-delay: 0.4s
    }
    #nav.active nav li:nth-of-type(5){
        animation-delay: 0.5s
    }
    #nav.active > ul{
        opacity: 0;
        animation-name: each-left;
        animation-duration: 0.3s;
        animation-delay: 0.6s;
        animation-iteration-count: 1;
        animation-fill-mode: forwards;
        animation-timing-function:ease-in-out;
    }
}
@keyframes each-left {
    from {
        transform: translateX(-20px);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}
.animation{
    transition: 0.8s;
    opacity: 0;
}
.animation.active{
    opacity: 1;
}
.animation.bottom{
    transform: translateY(20px);
}
.animation.bottom.active{
    transform: translateY(0);
}
.animation.left{
    transform: translateX(-20px);
}
.animation.left.active{
    transform: translateX(0);
}
.animation.right{
    transform: translateX(20px);
}
.animation.right.active{
    transform: translateX(0);
}
.animation.each-bottom > *{
    transform: translateY(20px);
    opacity: 0;
}
.animation.each-bottom.active > *{
    animation-name: each-bottom;
    animation-duration: 0.8s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-timing-function:ease-in-out;
}
.animation.each-bottom.active > *:nth-of-type(1){
    animation-delay: 0.2s
}
.animation.each-bottom.active > *:nth-of-type(2){
    animation-delay: 0.4s
}
.animation.each-bottom.active > *:nth-of-type(3){
    animation-delay: 0.6s
}
.animation.each-bottom.active > *:nth-of-type(4){
    animation-delay: 0.8s
}
.animation.each-bottom.active > *:nth-of-type(5){
    animation-delay: 1s
}
@keyframes each-bottom {
    from {
        transform: translateY(20px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}
/* =======================================================

    下層ページ

========================================================== */
.lower {
    width: 1045px;
    margin: 0 auto;
}
.lower_inner {
    width: 952px;
    margin: 0 auto;
}
.lower h1, .majorttl {
    font-size: 46px;
    line-height: 1.28em;
    margin-bottom: 32px;
}
.lower h1 span {
    font-size: 22px;
    font-feature-settings: "palt";
    font-weight: bold;
}
.lower p {
    text-align: left;
    font-size: 15px;
    line-height: 2.2em;
}
.lower p.en {
    font-size: 13px;
}
.lower .jp_ex {
    margin-bottom: 80px;
}
.lower .en_ex {
    margin-bottom: 80px;
}
.lower .en_ex p {
    font-size: 13px;
    line-height: 1.8;
    letter-spacing: 0.5px;
}
.lower .jp_ex h2 {
    font-size: 28px;
    line-height: 1.28em;
    margin-bottom: 20px;
}
.lower .en_ex h2 {
    font-size: 18px;
    line-height: 1.28em;
    margin-bottom: 12px;
}
.area_gray {
    margin: 92px 0 0;
}
.area_gray_inner {
    background: #EFEFEF;
    padding: 52px 64px;
}
.area_gray_inner h2 {
    margin-bottom: 32px;
    line-height: 160%;
}
.area_gray_inner p {
    line-height: 2.0;
    margin-bottom: 32px;
}
.point {
    margin: 48px 0;
}
.point h3 {
    font-size: 36px;
    text-align: left;
    margin-bottom: 8px;
    background: #26FC49;
    display: table;
    font-weight: bold;
}
.point h4 {
    font-size: 24px;
    text-align: left;
    font-weight: bold;
    margin-bottom: 20px;
    background: #FFFE4E;
    display: table;
    line-height: 1.3;
}
.area_gray .box-a {
    float: left;
    width: 388px;
}
.area_gray .box-b {
    float: right;
    width: 392px;
}
.area_gray .box-b img:first-child {
    padding-bottom: 10px;
}
.step {
    margin: 48px 0;
}
.step h3 {
    font-size: 28px;
    text-align: left;
    margin-bottom: 8px;
    background: #FF6CE9;
    display: table;
    font-weight: bold;
}
.step h4 {
    font-size: 24px;
    text-align: left;
    font-weight: bold;
    margin-bottom: 16px;
    background: #59F873;
    display: table;
    line-height: 1.3;
}
.step p {
    margin-bottom: 20px;
}
p.anno {
    font-size: 12px;
}
.area_gray ul {
    text-align: left;
}
.area_gray li {
    font-size: 15px;
    line-height: 1.8;
}
.btn, a.btn, button.btn {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	display: inline-block;
	padding: 1rem 4rem;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	letter-spacing: 0.1em;
	color: #212529;
	border-radius: 0.5rem;
}
.btn--bk, a.btn--bk {
	color: #fff;
	background-color: #000;
	margin: 40px 0 0;
}
.btn--bk:hover, a.btn--bk:hover {
	color: #fff;
	background: #464646;
}



@media screen and (max-width: 799px){
    html{
        min-width: auto;
        max-width: 100%;
    }
    .sp{
        display: block !important;
    }
    .pc{
        display: none !important;
    }

    /* header */
    header{
        position: absolute;
        top: 64px;
        left: 24px;
        width: calc(100% - 48px);
    }
    #logo_ja{
        width: 15px;
        top: 48px;
        right: 16px;
    }
	#btn {
		width: 44px;
		height: 44px;
		background: #000000;
		border-radius: 22px;
		position: fixed;
		top: 52px;
		right: 24px;
		z-index: 100;
	}
	#btn div {
		display: block;
		position: relative;
		width: 44px;
		height: 44px;
	}
	#btn span{
		width: 20px;
		height: 1px;
		background: #fff;
		display: block;
		position: absolute;
		left: 12px;
		z-index: 101;
		transition: .1s;
	}
	#btn span:nth-child(1) {
		top: 19px;
	}
	#btn span:nth-child(2) {
		top: 24px;
	}
	#btn.active span:nth-child(1) {
		transform: rotate(45deg);
		top: 22px;
	}
	#btn.active span:nth-child(2) {
		transform: rotate(-45deg);
		top: 22px;
	}
    #text_slider{
        height: 32px;
    }
    #text_slider li{
        line-height: 32px;
        font-size: 16px;
    }

    /* footer */
    footer{
        font-size: 10px;
        padding: 80px 24px 24px;
    }

    /* main */
    main{
        padding: 96px 24px 0;
    }

    /* title */
    .title h2{
        font-size: 32px;
        margin-right: 8px;
    }
    .title p{
        font-size: 10px;
    }

    /* more_btn */
    .more_btn a{
        padding: 6px 20px;
        font-size: 11px;
    }

    /* =======================================================

        TOP

    ========================================================== */
    /* #main */
    #main{
        margin-bottom: 48px;
    }
    #nav{
        opacity: 0;
        transform: translateX(100%);
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        padding: 140px 48px 0;
        box-sizing: border-box;
        background: #fff;
        z-index: 99;
        transition: 0.3s;
    }
    #nav.active{
        opacity: 1;
        transform: translateX(0);
    }
    #nav nav li a:before{
        line-height: 40px;
        font-size: 36px;
        opacity: 1 !important;
    }
    #nav nav li a:after{
        display: none !important;
    }
    #slide{
        margin-left: 0;
    }

    /* #rental */
    #rental{
        margin-bottom: 80px;
    }
    #rental .item{
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
        float: none;
    }
    #rental .item:nth-of-type(3){
        margin-bottom: 0;
    }

    /* #news-wall */
    #news-wall{
        position: static;
        margin-bottom: 0;
    }
    #news-wall:before{
        display: none;
    }

    /* #news */
    #news{
        width: 100%;
        float: none;
        padding: 64px 24px 40px 0;
        box-sizing: border-box;
        position: relative;
        margin-bottom: 80px;
    }
    #news:before{
        content: "";
        height: 100%;
        width: calc(100% + 48px);
        background: #813132;
        position: absolute;
        top: 0;
        left: -24px;
        z-index: -1;
    }
    #news .title{
        margin-bottom: 32px;
    }
    #news .item{
        margin-bottom: 24px;
    }
    #news .item .img{
        width: 40%;
    }
    #news .item .text{
        width: calc(60% - 16px);
        margin-left: 16px;
    }
    #news .item .text p{
        font-size: 10px;
        margin-bottom: 12px;
    }
    #news .item .text p a{
        margin-left: 12px;
    }
    #news .item .text h3{
        font-size: 14px;
    }

    /* #wall */
    #wall{
        width: 100%;
        float: none;
        margin-bottom: 80px;
    }
    #wall .title h2{
        font-size: 24px;
        text-align: center;
    }
    #wall .title h2 span{
        font-size: 56px;
        margin-top: -8px;
    }
    #wall .title {
        text-align: center;
    }

    /* #archives */
    #archives .item{
        margin-bottom: 32px;
    }
    #archives .item .date{
        width: 64px;
        margin-right: 40px;
    }
    #archives .item div.date:before{
        width: 32px;
        left: 80px;
        height: 1px;
    }
    #archives .item .date .date{
        font-size: 40px;
    }
    #archives .item .img{
        width: calc(100% - 104px);
    }
    #archives .cat{
        font-size: 10px;
        margin-top: 10px;
    }

    /* =======================================================
    
        下層共通
    
    ========================================================== */
    .under-title{
        margin-bottom: 48px;
    }
    .under-title h2{
        font-size: 36px;
    }
    
    /* =======================================================
    
        アーカイブ
    
    ========================================================== */
    #under.archive .wrapper #side{
        width: 100px;
        margin-right: 0;
    }
    #under.archive .wrapper #side .inner{
        top: 64px;
    }
    #under.archive .wrapper #side dt,
    #under.archive .wrapper #side li p{
        font-size: 14px;
    }
    #under.archive .wrapper #side dd li{
        line-height: 2em;
    }
    #under.archive .wrapper #side .category dd{
        padding-left: 0;
    }
    #under.archive .wrapper #side .month{
        margin-bottom: 40px;
    }
    #under.archive .wrapper #side .month ul ul{
        padding-left: 18px;
    }
    #under.archive .wrapper .archive-list{
        width: calc(100% - 100px);
    }
    #under .post-text{
        margin-bottom: 16px;
    }
    #under .post-text p{
        margin-bottom: 12px;
    }
    #under .post-text p .date{
        font-size: 13px;
        margin-right: 16px;
    }
    #under .post-text h3{
        font-size: 20px;
        font-weight: bold;
    }
    #under.archive .item{
        margin-bottom: 32px;
    }
    #under.archive .item.news{
        margin-bottom: 40px;
    }
    #under.archive .item .cat{
        margin-top: 10px;
    }
    .pagination{
        margin: 80px 0 0;
    }
    .pagination *{
        font-size: 14px;
        width: 32px;
        line-height: 32px;
        margin: 0 4px;
    }
    .pagination .prev,
    .pagination .next{
        font-size: 14px;
    }
    .pagination .prev{
        margin-right: 32px;
        padding-left: 20px;
    }
    .pagination .next{
        margin-left: 32px;
        padding-right: 20px;
    }
    .pagination .prev:before,
    .pagination .next:before{
        width: 6px;
        height: 100%;
    }

    /* =======================================================
    
        single
    
    ========================================================== */
    #single .thumb,
    #single .post-text{
        margin-bottom: 36px;
    }
    #single .thumb{
        margin-left: 0;
    }
    #single .content p{
        font-size: 14px;
        margin-bottom: 20px;
        line-height: 1.8em;
    }
    .back_to_link{
        margin: 80px 0 0;
    }
    .back_to_link a{
        font-size: 14px;
        padding-left: 20px;
    }
    .back_to_link a:before{
        width: 6px;
        height: 100%;
    }
}


/* =======================================================

    クリックで画像拡大

========================================================== */
.lower {
    text-align: center;
}
.MB40 {
    margin-bottom: 40px;
}
.MB64 {
    margin-bottom: 64px;
}


.lb {
    display: flex;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,.7);
    opacity: 0;
    transition: .3s opacity ease;
    pointer-events: none;
    z-index: 100;
}

.lb img {
    width: auto !important;
    max-height: 100%!important;
    cursor: pointer;
}

.lb img,
.lb iframe {
    transform: scale(.85);
    transition: .3s all ease;
}

.lb:target {
    opacity: 1;
    pointer-events: auto;
    z-index: 101;
}

.lb:target img,
.lb:target iframe {
    transform: scale(1);
}

/* なんちゃって閉じるボタン*/
.lb::before,.lb::after {
    display: block;
    position: fixed;
    content: "";
    width: 24px;
    height:3px;
    top: 24px;
    right: 12px;
    background: #fff;
    border-radius: 4px;
}
.lb::before {
    transform: rotate(-315deg);
}
.lb::after {
    transform: rotate(315deg);
}



/* =======================================================

    20250527追記

========================================================== */
#inkcolor.box {
    display: flex;
}
#inkcolor.box > div{
    width: 50%;
}
#prices li {
    margin-bottom: 40px;
}


/* =======================================================

    SP

========================================================== */
@media screen and (max-width: 736px) {
	header {
		top: 64px;
	}
	#slide {
		width: 100%;
	}
	#slide img {
		width: 100%;
  		height: 500px;
  		object-fit: cover;
	}
	#logo_en {
		left: 14px;
	}
	#rental .clearfix {
		width: 90%;
		margin: 0 auto;
	}
	#rental .item {/yallwall.jp/cms/wp-content/themes/yallwall/assets/css/reset.css
		margin-bottom: 20px;
	}
	#wall > p {
		width: 90%;
		margin: 0 auto;
	}
	#wall > p.bnr {
		width: 100%;
	}
	.title p {
		font-size: 12px;
	}
	.lower, .lower_inner {
		width: 100%;
	}
	.lower .jp_ex h2 {
		font-size: 22px;
	}
	.area_gray_inner {
		padding: 52px 26px;
	}
	.area_gray_inner h2 {
		font-size: 20px;
	}
	.point h3 {
		font-size: 28px;
	}
	.point h4, .step h4 {
		font-size: 22px;
        font-feature-settings: "palt";
	}
	.area_gray .box-a, .area_gray .box-b {
		width: 100%;
		float: none;
	}
	#inkcolor.box {
		display: block;
	}
	#inkcolor.box > div {
		width: 100%;
	}
	.btn, a.btn, button.btn {
		font-size: 1.1rem;
	}
	.lower h1, .majorttl {
		font-size: 40px;
		line-height: 1.1em;
	}
	.lower h1 span {
		font-size: 20px;
	}
	.step p {
		margin-bottom: 32px;
	}
	#under.archive .wrapper {
		display: block;
	}
	#under.archive .wrapper .archive-list {
		width: calc(100%);
		margin-bottom: 64px;
	}
    #prices li {
        margin-bottom: 20px;
    } 
    #rental .item span {
        font-size: 13px;
    }
}


