@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&display=swap');


* {
    font-family: Arial, 'Noto Sans TC', Helvetica, sans-serif;
}


html:not(.ua-desktop-windows) #main > .wrapper,
html:not(.ua-desktop-windows) #topContents + div,
html:not(.ua-desktop-windows) #gallery .pswp__caption__center,
html:not(.ua-desktop-windows) .outsideWrap .bookmark p {
    font-family: "Ryumin Regular KL", serif;
}

.wrapper {
    width: 90%;
    padding: 40px 0 0;
}

.annotation {
    text-align: center;
    font-size: 14px;
    line-height: 1.8;
}

.note {
    text-align: center;
    color: #f00;
}

.notice {
    text-decoration: underline;
}

.pcOnly {
    display: block;
}

.tabletOnly {
    display: none;
}

.mobileOnly {
    display: none;
}

@media only screen and (min-width : 481px) and (max-width : 767px) {
    .tabletOnly {
        display: block;
    }

    .mobileOnly {
        display: none;
    }

    .pcOnly {
        display: none;
    }
}

@media only screen and (max-width : 480px) {
    .mobileOnly {
        display: block;
    }

    .tabletOnly {
        display: none;
    }

    .pcOnly {
        display: none;
    }
}

h1 {
    font-size: 28px;
}

h2 {
    font-size: 24px;
}

h3 {
    font-size: 22px;
}

#hGlobalNav .wrapper {
    max-width: initial;
}

aside.share span {
    margin-right: 0;
}

a {
    color: #999;
}

.relatedLink a {
    display: inline-block;
    background: url(img/arrow_right.png) no-repeat 14px center;
    border: 1px solid #ccc;
    padding: 7px 14px 7px 28px;
    text-decoration: none;
}

.relatedLink a:hover {
    border: 1px solid #191919;
}

#topContents {
    z-index: 1;
    margin: 0;
    position: relative;
}

#topContents {
    background: url(/tw/feature/fukukan2022/img/back.png) no-repeat center top;
    z-index: 1;
    width: auto;
    height: auto;
    margin-top: 20px;
}

#topContents img {
    z-index: 1;
    width: 100%;
    height: auto;
    position: relative;
}

#topContents h1 {
    width: 25%;
    margin: 150px auto 0;
}

#topContents h1 img {
    bottom: 0;
}

.mainVisual {
    max-width: 900px;
    margin: 0 auto 40px;
}

.mainVisual img {
    width: 100%;
}

.mainVisual li img {
    opacity: 0.6;
}

#topContents .outsideWrap {
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 1) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 1) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 1) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
    /* IE6-9 */
}


.information-image {
    text-align: center;
    padding: 0 20px 40px
}

.information-image img {
    max-width: 700px;
}


#main p {
    /*margin: 20px auto;*/
}

#main p.title {
    margin: 20px 0 10px 0;
    font-size: 18px;
    font-weight: 600;
    display: inline-block;
}

#main p.lead {
    text-align: center;
    font-size: 18px;
    margin: 10px 20px 0;
}

/*utlity*/
.ut-sp {
    display: none;
}

.sp-only {
    display: none;
}

@media only screen and (max-width : 767px) {

    #main p.title,
    #main p.lead {
        font-size: 15px;
    }
}

.price {
    font-size: 15px;
}

.itemName,
.price .num {
    font-size: 28px;
}

.outsideWrap .bookmark .wrapper {
    max-width: 980px;
}

.wideImage.fukukanImg {
    text-align: center;
}

.wideImage.fukukanImg img {
    width: 60%;
}

@media only screen and (max-width : 768px) {
    .wideImage.fukukanImg img {
        width: 100%;
    }
}

ul.wideImage.fukukanImg02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

ul.wideImage.fukukanImg02 li {
    width: calc((100% - 40px) / 3);
    margin-right: 20px;
    margin-bottom: 20px;
}

ul.wideImage.fukukanImg02 li:nth-child(3) {
    margin-right: 0;
}

ul.wideImage.fukukanImg02 li img {
    width: 100%
}

@media only screen and (max-width:420px) {
    ul.wideImage.fukukanImg02 {
        width: 100%;
        max-width: 1400px;
        margin: 0 auto;
        padding: 0;
        position: relative;
        white-space: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: none;
        display: inline-block;
    }

    ul.wideImage.fukukanImg02 li {
        width: 75%;
        display: inline-block;
        vertical-align: top;
        white-space: normal;
    }

    ul.wideImage.fukukanImg02 li:nth-child(3) {
        margin-right: 20px;
    }
}

.item ul {
    clear: both;
    width: 100%;
}

.item li {
    float: none;
    display: inline-block;
    vertical-align: top;
    position: relative;
    width: 32%;
    height: 520px;
    box-sizing: border-box;
    padding: 0 15px;
    cursor: pointer;
    overflow: hidden;
    position: relative;
}

.item li img {
    width: 100%;
    border-radius: 50%;
}

#main .item li p.caption {
    margin-bottom: 10px;
    font-size: 12px;
    position: relative;
}

#main .item li p.caption:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjI1JSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 25%, rgba(255, 255, 255, 1) 100%);
    /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(255, 255, 255, 1)));
    /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 25%, rgba(255, 255, 255, 1) 100%);
    /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 25%, rgba(255, 255, 255, 1) 100%);
    /* Opera 11.10+ */
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 25%, rgba(255, 255, 255, 1) 100%);
    /* IE10+ */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 25%, rgba(255, 255, 255, 1) 100%);
    /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
    /* IE6-8 */
}

#main .item li .cap.all p.caption:before {
    display: none;
}

#main .item li .cap .annotaion {
    font-size: 12px;
}

.ua-ie-8 #main .item li p.caption {
    height: 40px;
    overflow: hidden;
}

.ua-ie-8 #main .item li .cap.all p.caption {
    height: auto;
    overflow: visible;
}

#main p.title .region {
    display: block;
    font-size: 15px;
    padding-top: 5px;
}

.item li .caption .studio {
    display: inline-block;
    margin: 10px 0 20px;
    font-size: 12px;
    width: 100%;
}

.item li .caption .studio .address {
    margin: 10px 0;
}

.item li .caption .studio .info,
.item li .caption .studio .tel {
    display: block;
    margin: 3px 0;
}

.more {
    cursor: pointer;
    font-size: 12px;
    position: absolute;
    z-index: 100;
    top: 120px;
}

.more:hover {
    text-decoration: underline;
}

.item li .more img {
    width: 20px;
    height: auto;
}

.hp a {
    text-decoration: underline;
}

.shop h1,
.shop ul {
    text-align: center;
}

.shop li {
    display: inline-block;
    margin: 5px 10px;
    font-size: 14px;
}

#shopList dl {
    box-sizing: border-box;
    padding: 20px;
    background: #f7f7f7;
    margin: 0 0 20px;
    display: none;
    overflow: hidden;
}

#shopList dt {
    font-weight: bold;
    padding: 15px 0 0;
}

#shopList dt:nth-child(1) {
    padding-top: 0;
}

#shopList dd {
    display: inline-block;
    padding: 3px 20px 3px 0;
    margin: 0;
}

#shopList .area {
    font-weight: bold;
    padding: 10px 0 10px 40px;
    margin-top: 10px;
    cursor: pointer;
    background: url(/img/fukukan/2021/open.png) no-repeat 10px center;
    border-bottom: 1px solid #eee;
}

#shopList .area.active {
    background: url(/img/fukukan/2021/close.png) no-repeat 10px center;
}

#shopList #first-edition {
    margin: 20px 0 50px;
}

#shopList p.period {
    font-weight: bold;
}

/*2021*/
.about a {
    text-decoration: underline;
    margin: 10px 0 0;
    display: block;
}

.shop-annotation {
    text-align: center;
    margin: 0 0 50px;
}

.shop-annotation p {
    margin: 0;
    display: inline-block;
    line-height: 1.5;
    font-size: 14px;
    color: #999;
}

.l-reserve-wrap {
    background: #ffffff;
    padding: 10px 15px 12px;
    border-radius: 4px;
    margin: 0 auto;
    width: 100%;
    max-width: 400px;
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    border: 1px solid #e6e3c5;
    box-sizing: border-box;
    justify-content: center;
}

.reserve-annotation {
    text-align: center;
    background: #f1eddd;
    padding: 15px 15px;
    margin: 60px auto 10px;
}

.reserve-annotation p {
    margin: 0;
}

.reserve-annotation ul {
    margin: 0;
}

.reserve-annotation ul li {
    line-height: 1.6;
    font-size: 14px;
}

.reserve-annotation .reserve-title {
    display: inline-block;
    font-family: "Gothic MB101 Bold", "MySansSerif", "YakuHanJP", sans-serif;
    padding: 6px 28px;
    border-top: 1px solid #585858;
    border-bottom: 1px solid #585858;
    margin-bottom: 10px;
    font-size: 15px;
    color: #222;
    /* border-radius: 2px; */
    /* background: #fff; */
    font-weight: bold;
}

.reserve-annotation .reserve-text {
    display: block;
    font-size: 13px;
    line-height: 1.6;
    color: #555;
    font-weight: bold;
    font-family: 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

.reserve-annotation .reserve-main-title {
    font-size: 24px;
    font-family: "Gothic MB101 Bold", "MySansSerif", "YakuHanJP", sans-serif;
    font-feature-settings: 'palt'1;
    font-weight: bold;
    margin: 10px 0 5px;
    padding: 0 0 6px;
    display: inline-block;
}

.wideImage.fukukanImg img {
    width: 60%;
    max-width: 580px;
}

.outsideWrap.detail-area {
    margin-bottom: 40px;
}

.outsideWrap .bookmark {
    margin-bottom: 40px;
}

.border-annotation {
    margin: 0 auto;
    text-align: center;
    box-sizing: border-box;
    padding: 10px 10px 25px;
    border-bottom: 1px solid #DEDEDE;
}

.border-annotation p {
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 5px;
}

.annotation.anno-main {
    line-height: 1.5;
    font-size: 13px;
    padding: 10px 30px;
    margin: 0 5px 20px;
    border-radius: 4px;
    display: inline-block;
    text-align: left;
}

.reserve-end-wrap p {
    color: #7F0019;
    text-align: center;
}

.outsideWrap.howTo .wideImage.fukukanImg {
    margin-bottom: 15px;
    background: #f1eddd;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation p:first-child {
    padding: 0.65em 0.95em;
    background-color: rgba(0, 0, 0, 0.1);
    border-radius: 2px;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation p:nth-child(2) {
    padding: 1.25em 1.35em;
}

.how-to-buy__link {
    text-align: center;
    margin: 0 auto;
    position: relative;
    padding-bottom: 10px;
}

.how-to-buy__link .text-link {
    position: relative;
    font-weight: bold;
    display: inline-block;
    transition: all 0.3s ease 0s;
    border-radius: 50px;
    line-height: 1;
    color: #585858;
    margin: 0 auto 10px;
    padding: 10px 24px 35px;
    border-radius: 8px;
    font-weight: bold;
    font-size: 19px;
    font-family: 'Gothic MB101 Bold', 'MySansSerif', 'YakuHanJP', sans-serif;
    font-feature-settings: 'palt'1;
}

.how-to-buy__link .text-link:after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 14px;
    display: inline-block;
    width: 14px;
    height: 14px;
    margin: 0px auto;
    border-bottom: 2px solid #777;
    border-right: 2px solid #777;
    transform: rotate(45deg);
    content: '';
}

.reserve-btn {
    text-align: center;
    margin: 40px auto;
    display: block;
    width: 90%;
}

.reserve-btn a {
    display: block;
    border-radius: 50px;
    transition: all 0.3s ease 0s;
    color: #FFF;
    font-size: 16px;
    font-weight: bold;
    background: #333;
    border-radius: 50px;
    text-align: center;
    max-width: 670px;
    margin: 0 auto;
    padding: 16px;
}

.howTo-wrapper_content {
    border: 1px solid #c2c2c2;
    padding: 25px;
    border-radius: 6px;
    margin-bottom: 30px;
    background: #f7f7f7;
}

.howTo-wrapper_annotation h2 {
    font-size: 14px;
    margin: 0 0 5px;
    font-weight: bold;
    color: #555;
}

.howTo-wrapper_annotation {
    margin-bottom: 100px;
    color: #777;
}

.howTo-wrapper_confirmation a {
    font-weight: bold;
    color: #555;
    border-bottom: 1px solid #222;
}

.howTo-annotation_list {
    padding-left: 20px;
    font-size: 13px;
}

.howTo-annotation_list ul {
    list-style: disc;
}

.howTo .reserve-text {
    text-align: center;
    display: block;
    margin-bottom: 25px;
    font-size: 13px;
    padding: 0 15px;
    line-height: 1.6;
    color: #555;
    font-weight: bold;
    font-family: 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

#main .reserve-btn a:hover {
    opacity: .9;
    color: #FFF;
}

#how-to-buy {
    margin: 100px 0 0;
    padding: 50px 0 60px;
    border-top: 1px solid #DEDEDE;
    border-bottom: 1px solid #DEDEDE;
}

#how-to-buy h1 {
    font-size: 24px;
    line-height: 1.3;
    margin: 0 0 20px;
    font-family: "Gothic MB101 Bold", "MySansSerif", "YakuHanJP", sans-serif;
    font-weight: bold;
    text-align: center;
}

.wrapper.shop h1 {
    font-size: 24px;
    margin-bottom: 10px;
    font-family: "Gothic MB101 Bold", "MySansSerif", "YakuHanJP", sans-serif;
    font-weight: bold;
    text-align: center;
}

.period .term-end-text {
    font-weight: bold;
    color: #7F0019;
}

#first-edition.ut-term-end dl,
#second-edition.ut-term-end dl {
    color: #888;
    margin: 0;
}

#first-edition.ut-term-end,
#second-edition.ut-term-end {
    border-radius: 4px;
    margin: 20px 0 50px;
    background: #f1f1f1;
    padding: 10px;
}

#shopList .ut-term-end .period {
    padding: 0 10px;
    color: #777;
    margin: 10px 0 0;
}

.reserve-annotation .pickup-link {
    width: 100%;
    max-width: 480px;
    margin: 5px auto 5px;
    text-align: right;
    font-size: 13px;
}

.reserve-annotation .pickup-link a {
    text-align: right;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
    color: #555;
    border-bottom: 1px solid #222;
    font-family: 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

.wideImage.fukukanImg img {
    width: 100%;
    max-width: 640px;
    height: auto;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation .annotation-title {
    font-size: 15px;
    font-weight: bold;
    color: #7F0019;
    margin: 10px 0;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation .annotation.pick-up-list {
    padding: 10px;
    border: 1px solid #dedede;
    border-radius: 4px;
    margin: 12px 0;
    color: #333;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation p span {
    margin-left: 0;
}

.config_conts {
    margin-bottom: 40px;
}

.config_conts-lead a {
    color: #555;
    border-bottom: 1px solid #222;
}

.config_conts-txt {
    margin-bottom: 20px;
}

.config_conts-imgbox img {
    width: 100%;
    height: auto;
}

.config_conts-img {
    width: 48%;
    margin: 0 auto;
}

.config_conts-img.conts-img__wide {
    width: 80%;
}

.config_conts-imgbox {
    display: flex;
}

.config_conts-lead {
    font-size: 16px;
    margin: 0 0 20px;
    background: #e4e4e4;
    padding: 10px 15px;
    color: #333;
    border-radius: 2px;
}

.howTo-wrapper_content .annotation-title {
    font-size: 19px;
    font-weight: bold;
    margin: 0 0 20px;
    display: block;
}

/*FAQ*/
.accordion {
    border-top: 1px solid #e7e7e7;
    margin-bottom: 80px;
}

.question-inner {
    max-width: 1024px;
    margin: 0 auto;
    padding: 0;
}

.accordion li {
    padding: 0 5px;
    border-bottom: 1px solid #e7e7e7;
}

.accordion .ac-answer {
    display: none;
    padding: 0 0 30px;
}

.accordion p.ac-question {
    cursor: pointer;
    position: relative;
    margin: 0;
    padding: 30px 20px 30px 0;
    line-height: 1.4;
    font-size: 16px;
    font-weight: bold;
}

.accordion p.ac-question:after {
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    right: 0;
    background: url(/jp/parts/img/open.png) no-repeat;
    background-size: cover;
}

.accordion p.ac-question.open:after {
    background: url(/jp/parts/img/close.png) no-repeat;
}

.accordion .answer-link a {
    font-size: 14px;
    color: #333;
    font-weight: bold;
    text-decoration: underline;
}

.answer-link a {
    font-size: 15px;
    font-weight: bold;
    color: #555;
    border-bottom: 1px solid #222;
}

@media only screen and (max-width : 767px) {
    #topContents h1 {
        width: 60%;
    }
}

@media only screen (min-width : 601px) and (max-width : 767px) {
    #topContents {
        width: 100%;
        overflow: hidden;
        background-size: 150%;
    }

    #topContents .wrap {
        height: auto;
        overflow: hidden;
    }

    #topContents {
        z-index: 1;
        margin: 0;
        position: relative;
    }

    #topContents img {
        width: 100%;
        height: auto;
    }

    #topContents h1 {
        margin-top: 300px;
    }

    .item li {
        width: 49%;
        height: 320px;
    }
}

@media only screen and (max-width : 600px) {
    #main .item li p.caption:before {
        height: 100%;
    }

    #topContents h1 {
        margin-top: 180px;
    }
}

@media only screen and (max-width : 480px) {
    #topContents {
        background: url(/tw/feature/fukukan2022/img/back_sp.png) no-repeat center top;
        z-index: 1;
        width: auto;
        height: auto;
        background-size: cover;
    }
}

.photoswipe-gallery {
    width: 100%;
    display: inline-block;
}

.photoswipe-gallery figure {
    display: inline-block;
    vertical-align: top;
    position: relative;
    width: 32%;
    height: auto;
    box-sizing: border-box;
    padding: 20px 3%;
    cursor: pointer;
    overflow: hidden;
    position: relative;
}

.photoswipe-gallery figure img {
    width: 100%;
    height: auto;
    border-radius: 50%;
    margin: 0;
}

.pswp__caption__center .region {
    margin-left: 20px;
    color: #999;
}

@media only screen and (max-width : 767px) {
    .photoswipe-gallery figure:nth-child(2n+1) {
        width: 48%;
        padding: 20px 1% 0 1%;
        margin-right: 2%;
    }

    .photoswipe-gallery figure:nth-child(2n) {
        width: 48%;
        padding: 20px 1% 0 1%;
    }

    .pswp__caption__center p.title {
        margin: 0;
    }

    .annotation.anno-main {
        text-align: left;
    }

    .reserve-list {
        margin: 4px 0 0;
    }

    .reserve-list dt {
        display: block;
        margin: 0;
        text-align: center;
    }

    .reserve-list dd {
        margin: 0 0 2px;
        text-align: center;
    }

    .wideImage.fukukanImg img {
        width: 100%;
    }

    .reserve-annotation .reserve-text {
        padding: 0 10px;
    }

    .annotation.anno-main {
        padding: 0 10px;
    }

    .config_conts-imgbox {
        flex-wrap: wrap;
    }

    .config_conts-img {
        width: 65vw;
        margin: 0 auto 20px;
    }

    .outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation p:nth-child(2) {
        padding: 1.25em 1.15em;
    }

    .reserve-annotation .reserve-text {
        padding: 0 15px;
    }

    .annotation.anno-main {
        text-align: left;
    }

    #main p.title,
    #main p.lead {
        font-size: 14px;
    }

    #shopList dt {
        width: 100%;
    }

    #shopList dd {
        margin: 3px 0 3px 0;
        padding: 0;
    }

    #shopList dd:after {
        margin-right: 12px;
        content: "";
    }

    .period .term-end-text {
        display: block;
        padding: 5px 0 0;
    }
}

figure a {
    display: block;
}

figure p.caption {
    overflow: hidden;
    display: block;
    /*    display: -webkit-box;
    */
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
}

.reserve-annotation .pickup-link {
    width: 100%;
    max-width: 580px;
    margin: 5px auto 10px;
    text-align: right;
}

.wideImage.fukukanImg img {
    width: 100%;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation .annotation.pick-up-list {
    padding: 12px 13px;
}

.pswp__caption__center p.caption {
    -webkit-line-clamp: none;
    line-clamp: none;
    font-size: 15px;
    line-height: 1.6;
}

@media only screen and (max-width : 767px) {
    .pswp__caption__center p.caption {
        font-size: 13px;
    }
}

#main figcaption p.caption {
    font-size: 15px;
    margin: 0;
    /*    max-height: 31px;*/
    line-height: 1.4;
    word-wrap: break-word;
    text-align: justify;
}

#main p.about {
    width: 700px;
    font-size: 13px;
    text-align: center;
    line-height: 1.6;
    padding: 0 15px;
    margin: 0 auto;
    color: #666;
}

@media only screen and (max-width : 710px) {
    #main p.about {
        width: 90%;
    }
}


.about a {
    text-decoration: underline;
}

.pswp__caption__center span.studio {
    display: block;
    font-size: 11px;
    color: #999;
    margin-top: 5px;
}

.pswp__caption__center span.studio span {
    display: block;
}

#main aside.share {
    border: none;
    text-align: center;
    color: #999;
    font-size: 12px;
    margin: 0 auto;
    padding: 20px 0 0 0;
}

aside.share a {
    width: 22px;
    height: auto;
    display: inline-block;
    margin: 0 0 0 10px;
}

aside.share a img {
    width: 100%;
    vertical-align: middle;
    opacity: .6;
}

aside.share a img.fbBtn {
    width: 85%;
}

.scrollArea ul:after {
    content: "";
    display: block;
    clear: both;
}

@media screen and (max-width: 374px) {
    .scrollArea > ul > li {
        padding: 1%;
        width: 18%;
    }
}

.scrollArea {
    visibility: hidden;
    /*min-height: 700px;*/
    overflow: hidden;
}

.scrollArea > ul > li {
    list-style: none;
    width: 18%;
    float: left;
    padding: 1%;
    z-index: 10;
}

@media (max-width: 599px) {
    .mainVisual > p {
        right: 15%;
        font-size: 35px;
    }

    /*.scrollArea {min-height: 400px;}*/
    .scrollArea > ul > li {
        padding: 1%;
        width: 18%;
    }
}

/* photo swipe */
#gallery .pswp__caption__center {
    color: #333;
}

#gallery .pswp__caption__center .title {
    font-size: 18px;
    font-weight: 600;
}

#gallery .pswp__caption__center .region {
    color: #333;
    font-size: 15px;
    padding-top: 5px;
    display: block;
    margin-left: 0;
}

.photoswipe-gallery figure img,
#gallery .pswp__img {
    border-radius: 50%;
}

#gallery .pswp__caption,
#gallery .pswp__top-bar {
    background-color: rgba(0, 0, 0, 0);
}

#gallery .studio {
    color: #333;
}

.pswp__item {
    background-color: #fff;
}

#main p.lead a {
    text-decoration: underline;
}

#trademark {
    position: absolute;
    top: 0;
    right: 0;
}

#trademark img {
    height: 20px;
    margin: 25px 0 0 20px;
}

.outsideWrap .bookmark {
    margin-bottom: 20px;
}

.outsideWrap .bookmark p.studio_address {
    max-width: 400px;
}

.outsideWrap.about {
    padding-top: 40px;
}

.outsideWrap.about h1 {
    text-align: center;
}

.outsideWrap.howTo h1 {
    text-align: center;
}

.outsideWrap.howTo .howTo-wrapper {
    width: 700px;
    margin: 0 auto;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation {
    margin-bottom: 10px;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation p {
    margin: 0;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation p:first-child {
    padding: 0.75em 1.25em;
    background-color: rgba(0, 0, 0, 0.1);
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation p:nth-child(2) {
    padding: 1.25em 2.25em;
}

.outsideWrap.howTo .howTo-wrapper .howTo-wrapper_confirmation p span {
    display: block;
    text-align: left;
    margin-top: 15px;
    margin-left: 0.5em;
}

.outsideWrap.howTo .wideImage.fukukanImg img {
    width: 80%;
    height: auto;
}

@media only screen and (max-width : 768px) {
    .outsideWrap.howTo .wideImage.fukukanImg img {
        width: 100%;
    }
}

@media screen and (max-width: 710px) {
    .outsideWrap.howTo .howTo-wrapper {
        width: 90%;
    }
}

.outsideWrap.icn .wrapper .item-images {
    max-width: 600px;
    display: table;
    margin: 0 auto;
}

.outsideWrap.icn .wrapper .item-image {
    display: table-cell;
    width: 45%;
    vertical-align: top;
    margin: 0;
    padding: 0;
}

.outsideWrap.icn .wrapper .item-image figure {
    margin: 0;
    padding: 0;
}

.outsideWrap.icn .wrapper .item-image figure img {
    width: 100%;
    height: auto;
    margin: 0 0 20px 0;
    padding: 0;
}

.outsideWrap.icn .wrapper .arrow {
    display: table-cell;
    width: 10%;
    margin: 0;
    padding: 10px;
    vertical-align: middle;
}

.outsideWrap.icn .wrapper .arrow figure {
    margin: 0;
    padding: 0;
    text-align: center;
}

.outsideWrap.icn .wrapper .arrow figure img {
    width: 30px;
    height: auto;
    margin: 0;
    padding: 0;
    float: none;
}


@media screen and (max-width : 414px) {
    .outsideWrap.icn .wrapper .arrow {
        display: none;
    }

    .outsideWrap.icn .wrapper .item-images {
        display: block;
    }

    .outsideWrap.icn .wrapper .item-image {
        width: 100%;
        margin: 0 0 30px 0;
        padding: 0;
        display: block;
    }

    .outsideWrap.icn .wrapper .item-image:last-child {
        margin-bottom: 0;
    }
}

@media only screen and (max-width : 480px) {
    .ut-pc {
        display: none;
    }

    .ut-sp {
        display: block;
    }

    .sp-only {
        display: block;
    }

    .reserve-annotation .pickup-link {
        text-align: center;
    }

    .reserve-annotation .pickup-link a {
        margin: 20px auto;
        font-size: 15px;
    }
}

@media only screen and (max-width : 420px) {
    .outsideWrap .bookmark .wrapper {
        width: 100%;
    }

    ul.wideImage.fukukanImg02 {
        width: auto;
        padding: 0 20px;
    }

    ul.wideImage.fukukanImg02 li {
        margin-right: 10px;
        margin-bottom: 10px;
    }

    ul.wideImage.fukukanImg02 li:nth-child(3) {
        margin-right: 10px;
    }

    ul.wideImage.fukukanImg02 li:last-child {
        margin-right: 0;
    }
}
