/******************************************************************
サイトコンテンツスタイルシート（スマホ版）
Author: T.Sugiyama
Author URI: http://fromdime.com
******************************************************************/

/*-------------------------------------------
ヘッダーバー
-------------------------------------------*/
#head-bar-sp {
    height: 65px;
    background-color: #f8f3f4;
    z-index: 20 !important;

    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1;
}
#head-bar-sp .head-bar-inner {
    height: 100%;
    display: flex;
    align-items: center;
}
#head-bar-sp .head-bar-inner .head-bar-left {
    flex-basis: 20%;
    max-width: 20%;
    text-align: left;
    padding: 0 0.5rem 0 1rem;
}
#head-bar-sp .head-bar-inner .head-bar-center {
    flex-basis: 60%;
    max-width: 60%;
    text-align: center;
    padding: 0 0.5rem;
}
#head-bar-sp .head-bar-inner .head-bar-right {
    flex-basis: 20%;
    max-width: 20%;
    text-align: right;
    padding: 0 1rem 0 0.5rem;
}
#head-bar-sp .head-bar-inner .head-bar-center img {
    max-width: 170px;
}
#head-bar-sp .head-bar-inner .head-bar-right a {
    display: block;
}
#head-bar-sp .head-bar-inner .head-bar-right img {
    max-width: 30px;
}


/*
メニューボタン
*/
.menu-btn a,
.menu-btn a span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
}
.menu-btn a {
    position: relative;
    width: 30px;
    height: 20px;
}
.menu-btn a:after {
    content: "MENU";
    display: inline-block;
    text-align: center;
    font-size: 10px;
    position: absolute;
    bottom: -16px;
    left: 0px;
}
.menu-btn a.btn-close:after {
    content: "CLOSE";
    left: 0px;
}
.menu-btn a span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #706067;
    border-radius: 4px;
}
.menu-btn a span:nth-of-type(1) {
    top: -3px;
}
.menu-btn a span:nth-of-type(2) {
    top: 5px;
}
.menu-btn a span:nth-of-type(3) {
    bottom: 4px;
}

.menu-btn a.btn-close span:nth-of-type(1) {
    -webkit-transform: translateY(7px) rotate(-45deg);
    transform: translateY(7px) rotate(-45deg);
}
.menu-btn a.btn-close span:nth-of-type(2) {
    opacity: 0;
}
.menu-btn a.btn-close span:nth-of-type(3) {
    -webkit-transform: translateY(-9px) rotate(45deg);
    transform: translateY(-9px) rotate(45deg);
}

/*
メニュー
*/
.overlay {
    position: fixed;
    z-index: 50;
    background-color: #f8f3f4;
    border-top: 1px solid #6f6067;
    border-bottom: 1px solid #6f6067;
    color: #ffffff;
    width: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 1.5rem;
    height: calc(100% - 80px);
}
/* スクロールバーのカスタマイズ */
.overlay::-webkit-scrollbar{
    /*    width: 10px;*/
    width: 5px;
}
.overlay::-webkit-scrollbar-track{
    background: #ffffff;
    border-left: solid 1px #ececec;
}
.overlay::-webkit-scrollbar-thumb{
    background: #bbbbbb;
    border-radius: 10px;
    box-shadow: inset 0 0 0 2px #ffffff;
}
.overlay_inner {
    /*        overflow-y: scroll;*/
}

.globalnavi-sp ul li a {
/*    font-size: 0.9rem;*/
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.9rem 0.5rem;
    border-bottom: 1px solid #dddddd;
}
.globalnavi-sp ul li a:hover {
    background-color: #f6dad2;
    color: #000000;
    opacity: 1;
}

/* カテゴリーアコーディオン装飾 */
.globalnavi-sp ul li .dropdown li a {
    padding: 0.8rem 0.5rem 0.8rem 1.5rem;
}
.globalnavi-sp ul li a {
    position: relative;
}
.globalnavi-sp ul li a:after {
    font-family: FontAwesome;
    content: "\f105";
    color: inherit;
    font-weight: normal;
    position: absolute;
    right: 15px;
}
.globalnavi-sp ul li.menu-item-has-children > a:after {
    content: "\f196";
}
.globalnavi-sp ul li.menu-item-has-children.dropdown_open > a:after {
    content: "\f147";
}


/******************************************************************
*******************************************************************

メディアクエリー

*******************************************************************
******************************************************************/

/* ~ 1500px : PC screens */
@media only screen and (max-width: 1500px) {
} /* 1500px以下 End */

/* ~ 1280px : PC screens */
@media only screen and (max-width: 80em) {
} /* 1280px以下 End */

/* ~ 1024px : Medium screens */
@media only screen and (max-width: 64em) {

    /*-------------------------------------------
    contact-area
    -------------------------------------------*/
    #contact-area .inner_width {
        width: 100%;
    }

    .page-booking-form #booking-form .inner_width {
        width: 80%;
    }

    .single-photo_plan .plan_detail .plan_service-sbj {
        padding: 0.8rem 3.0rem 0.8rem 1.0rem;
        font-size: 1.1rem;
    }

    .single-photo_plan #pp-button .pp-button-box .pp-button-sbj > span {
        font-size: 1.3rem;
        margin-right: 0.8rem;
        vertical-align: initial;
    }
    .single-photo_plan #pp-button .pp-button-box .pp-button-sbj {
        padding: 0.2rem 3rem 0.3rem 0.8rem;
        font-size: 1.1rem;
    }
    .single-photo_plan #pp-button .pp-button-box .pp-button-sbj:after {
        width: 30px;
        height: 30px;
    }
    .single-photo_plan #pp-button .pp-button-box .pp-button-box-inner > h2 {
        font-size: 1.2rem;
    }


} /* 1024px以下 End */

/* ~ 960px : Tablet screens */
@media only screen and (max-width: 60em) {

    /*-------------------------------------------
    ヘッダーバー
    -------------------------------------------*/
    #head-bar .head-bar-lower {
        margin-top: 13px;
    }
    #head-bar .head-bar-lower .head-bar-center img {
        max-width: 180px;
    }
    #head-bar .globalnavi_parent > li a {
        font-size: 1rem;
    }

    .single-photo_plan #pp-info .menu_lead {
        font-size: 1.4rem;
    }
    .single-photo_plan #pp-info .menu_illust img {
        max-width: 130px;
    }

    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust .pd_illust_img {
        max-width: 105px;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust .pd_illust_left {
        margin: 0 1.5rem;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust .icon-plan_service {
        max-width: 22px;
    }


    /*-------------------------------------------
    ページのタイトルアイコン
    -------------------------------------------*/
    .page-access .headline:after {
        right: -50%;
        top: -30px;
        width: 150px;
        height: 150px;
    }


    /*
    セットプラン
    */
    .single-photo_plan .set_plan .set_plan-box .set_plan_title {
        padding: 0.2rem 2.5rem 0.3rem 1rem;
        font-size: 1.1rem;
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan_price {
        font-size: 1.3rem;
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner {
        padding: 1.5rem;
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner > .set_plan_illust {
/*
        flex-basis: 43%;
        max-width: 43%;
*/
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner > .set_plan_description {
/*
        flex-basis: 52%;
        max-width: 52%;
*/
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner > .set_plan_description p {
        font-size: 1.0rem;
    }

} /* 960px以下 End */

/* ~ 896px : スマホ横 */
@media only screen and (max-width: 56em) {

    .page-booking-form #booking-form .inner_width {
        width: 90%;
    }
    .page-booking-form #booking-form .section_main {
        padding: 3rem 3rem;
    }


    .single-photo_plan .plan_detail .plan_service-box {
        padding-top: 1rem;
    }
    .single-photo_plan .plan_detail .plan_service-box-inner {
        flex-flow: wrap;
    }
    .single-photo_plan .plan_detail .plan_service-box-left {
        flex-basis: 100%;
        max-width: 100%;
    }
    .single-photo_plan .plan_detail .plan_service-sbj {
        margin-bottom: 2rem;
        padding: 0.8rem 5rem 0.8rem 1.0rem;
    }
    .single-photo_plan .plan_detail .plan_service-sbj:after {
        width: 40px;
        height: 40px;
        right: -1.5rem;
    }
    .single-photo_plan .plan_detail .plan_service-sbj > br {
        display: none;
    }
    .single-photo_plan .plan_detail .plan_service-box-right {
        flex-basis: 100%;
        max-width: 100%;
    }

    .single-photo_plan #pp-button .pp-button-box .pp-button-sbj {
            padding: 0.2rem 2.5rem 0.3rem 0.8rem;
            font-size: 1.0rem;
    }

} /* 896px以下 End */

/* ~ 812px : iphone X screens */
@media only screen and (max-width: 50.750em) {

    /*-------------------------------------------
    ヘッダーバー
    -------------------------------------------*/
    #head-bar .globalnavi_parent > li a {
        font-size: 0.9rem;
        padding: 0.2rem;
    }


    .home .photo_planlist > ul > li {
        flex-basis: 32%;
        max-width: 32%;
        margin-right: 2%;
    }
    .home .photo_planlist > ul > li:nth-child(5n+5) {
        margin-right: 2%;
    }
    .home .photo_planlist > ul > li:nth-child(3n+3) {
        margin-right: 0;
    }


    /*
    HOW TO
    */
    .page-howto .headline:before,
    .page-howto .headline:after {
        top: 0px;
        width: 100px;
        height: 100px;
    }
    .page-howto .headline:before {
        left: -45%;
    }
    .page-howto .headline:after {
        right: -45%;
    }


    /*
    セットプラン
    */
    .single-photo_plan .set_plan .set_plan-box .set_plan_title {
        font-size: 1.0rem;
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan_price {
        font-size: 1.2rem;
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner > .set_plan_illust {
/*
        flex-basis: 40%;
        max-width: 40%;
*/
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner > .set_plan_description {
/*
        flex-basis: 54%;
        max-width: 54%;
*/
    }


    .single-photo_plan #pp-button .pp-button-inner {
        flex-flow: wrap;
        max-width: 50%;
        margin: 0 auto;
        justify-content: center;
    }
    .single-photo_plan #pp-button .pp-button-box {
        flex-basis: 100%;
        max-width: 100%;
    }


    /*
    スタジオポイント
    */
    .page-studio-points #studio-points .inner_width {
        width: 88%;
    }
    .page-studio-points #studio-points .studio-points-box .thumb {
/*
        flex-basis: 47%;
        max-width: 47%;
*/
    }
    .page-studio-points #studio-points .studio-points-box .text {
/*
        flex-basis: 47%;
        max-width: 47%;
*/
    }


    /*
    フォトプラン：スタジオポイント
    */
    .single-photo_plan #studio-points .inner_width {
        width: 88%;
    }
    .single-photo_plan #studio-points .section_main .section_inner .text h2 {
        font-size: 1.0rem;
    }
    .single-photo_plan #studio-points .studio-points-cap > li .text {
        font-size: 1.0rem;
    }

} /* 812px以下 End */

/* ~ 767px : Tablet screens */
@media only screen and (max-width: 47.938em) {

    /*-------------------------------------------
    ヘッダーバー
    -------------------------------------------*/
    #head-bar {
        display: none;
    }
    #head-bar-sp {
        display: block;
    }
    #inner-header {
        padding-top: 65px;
    }


    /*-------------------------------------------
    ページのタイトルアイコン
    -------------------------------------------*/
    .page-access .headline:after {
/*        content: none;*/
    }


    /*-------------------------------------------
    予約フォーム
    -------------------------------------------*/
    .page-booking-form #booking-form .inner_width {
        width: 100%;
    }
    .page-booking-form #booking-form .section_main {
        padding: 3rem 2rem;
    }


    /*-------------------------------------------
    contact-area
    -------------------------------------------*/
    .instagram-link {
        padding: 0.7rem 2rem 0.5rem;
    }
    #contact-area .flexitem {
        padding: 1rem 1.5rem;
    }
    #contact-area .contact-left {
        border-left: none;
        padding-left: 0;
    }
    #contact-area .instagram-link img {
        max-width: 100%;
    }
    #contact-area .contact-telno {
        font-size: 1.6rem;
    }
    #contact-area .contact-right {
        border-right: none;
        padding-right: 0;
    }
    #contact-area .form-link img {
        max-width: 20px;
    }
    #contact-area .form-link span {
        font-size: 1.1rem;
    }


    .page-options #options .inner_width, .page-options #rental .inner_width {
        width: 95%;
    }



    /*-------------------------------------------
    お取り寄せ
    -------------------------------------------*/
    .page-otoriyose #otoriyose-flow .inner_width {
        width: 95%;
    }



    /******************************************************************

    カスタム投稿

    ******************************************************************/
    /*-------------------------------------------
    photo plan
    -------------------------------------------*/
    /*
    フォトメニュー基本情報
    */
    .single-photo_plan #pp-info .menu_lead {
        font-size: 1.2rem;
    }
    .single-photo_plan #pp-info .menu_illust img {
        max-width: 110px;
    }
    .single-photo_plan #pp-info .pp-info-bottom {
        text-align: center;
    }
    .single-photo_plan #pp-info .pp-info-bottom p {
        font-size: 1.1rem;
    }

    /*
    プランボタン
    */
/*
    .single-photo_plan #pp-button .pp-button-box {
        flex-basis: 46%;
        max-width: 46%;
    }
    .single-photo_plan #pp-button .pp-button-box .pp-button-sbj > span {
        padding: 3px 7px;
        font-size: 1.2rem;
        line-height: 17px;
        vertical-align: unset;
        margin-right: 0.8rem;
    }
    .single-photo_plan #pp-button .pp-button-box .pp-button-sbj {
        padding: 0.2rem 3rem 0.3rem 1rem;
        font-size: 1.1rem;
    }
*/
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust .pd_illust_left {
        display: none;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox {
        justify-content: space-around;
    }

    /*
    セットプラン
    */
    .single-photo_plan .set_plan .set_plan-box .set_plan_title-wrapper {
        flex-flow: wrap;
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan_title {
        font-size: 1.0rem;
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan_price {
        font-size: 1.1rem;
        flex-basis: 100%;
/*        margin: 0.5rem 0rem 0 1rem;*/
        margin: 1rem 0rem 0 1.5rem;
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner > .set_plan_illust {
/*
        flex-basis: 33%;
        max-width: 33%;
*/
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner > .set_plan_description {
/*
        flex-basis: 61%;
        max-width: 61%;
*/
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner > .set_plan_description p {
        font-size: 0.9rem;
    }
    .single-photo_plan .set_plan .set_plan-box .set_plan-box-inner {
        padding: 1.0rem;
    }


    /*
    フォトプラン：スタジオポイント
    */
    .single-photo_plan #studio-points .inner_width {
        width: 75%;
    }
    .single-photo_plan #studio-points .section_main .section_inner {
        flex-basis: 100%;
        max-width: 100%;
        margin-right: 0;
    }
    .single-photo_plan #studio-points .section_main .section_inner:nth-child(1) {
        margin-right: 0;
    }
    .single-photo_plan #studio-points .section_main .section_inner .thumb {
        margin-bottom: 1rem;
    }
    .single-photo_plan #studio-points .section_main .section_inner .text h2 {
        font-size: 1.1rem;
    }
    .single-photo_plan #studio-points .studio-points-cap > li .text {
        font-size: 1.1rem;
    }
    .single-photo_plan #studio-points .studio-points-cap > li {
        flex-basis: 100%;
        max-width: 100%;
        margin-right: 0;
    }
    .single-photo_plan #studio-points .studio-points-cap > li .thumb {
        margin-bottom: 1rem;
    }

} /* 767px以下 End */

/* 641px ~ 1024px : Medium only */
@media only screen and (min-width: 40.0625em) and (max-width: 64em) {
} /* 641px ~ 1024px End */

/* 640px以下:Small screens */
@media only screen and (max-width: 40em) {


    /******************************************************************

    共通

    ******************************************************************/
    html {
        font-size: 0.8125rem;
    }
    h1, h2, h3, h4, h5, h6 {
        font-size: 1.2rem;
        line-height: 1.4;
    }
    .button {
        /*        padding: 0.4rem 1rem 0.35rem 1rem;*/
/*        font-size: 1rem;*/
    }
    .button_wrapper {
        text-align: center;
    }
    img {
        width: 100%;
    }
    br.br-pc {
        display: none;
    }
    br.br-sp {
        display: block;
    }

    /******************************************************************

    構造調整タグ

    ******************************************************************/
    .base_width {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
    .base_width.base_width_sp {
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .inner_width {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
    }
    main {
        /* padding-top: 30px; */
        padding-bottom: 2rem;
    }
    .single-news #main,
    .tax-news_cat #main,
    .post-type-archive-news #main {
    }
    #sidebar {
    }

    .home #main section {
        margin-bottom: 2rem;
    }

    /*-------------------------------------------
    テーブルの基本レイアウト
    -------------------------------------------*/
    table.base_table {
    }
    table.base_table tr {
        border-bottom: 1px solid #e7e7e7;
    }
    table.base_table tr:first-child {
    }
    table.base_table tr th,
    table.base_table tr td {
        display: block;
        width: 100%;
    }
    table.base_table tr th {
        padding: 0.8rem 0 0.2rem;
        font-weight: bold;
    }
    table.base_table tr td {
        padding: 0.2rem 0 0.8rem;
    }


    /******************************************************************

    汎用パーツ

    ******************************************************************/
    /*
    横並びレイアウト
    */
    .flexbox {
        flex-flow: row wrap;
    }
    .flexbox-wrap {
    }
    .flexbox-center {
    }

    .intlink-wrapper {
        text-align: center;
        margin: 0 auto;
    }
    .headline_wrapper {
        text-align: center; 
        margin-top: 3rem;
        margin-bottom: 3rem;
    }
    .headline {
        font-size: 1.4rem;
        /*        letter-spacing: 3px;*/
    }
    .headline.icon-title, .section_title.icon-title {
        margin-bottom: 1rem;
        font-size: 1.4rem;
    }
    .headline.icon-title:before, .section_title.icon-title:before {
        width: 40px;
        height: 40px;
    }
    .breadcrumb {
    }

    .section_title img {
        max-width: 140px;
    }


    /******************************************************************

    プラグイン

    ******************************************************************/



    /******************************************************************

    ヘッダー

    ******************************************************************/
    /*
    HOW TO
    */
    .page-howto .headline_wrapper {
        margin-bottom: 11rem;
    }
    .page-howto .headline:before,
    .page-howto .headline:after {
        top: 105px;
        width: 90px;
        height: 90px;
    }
    .page-howto .headline:before {
        left: 0%;
    }
    .page-howto .headline:after {
        right: 0;
    }


    /******************************************************************

    サイドバー

    ******************************************************************/



    /******************************************************************

    ユーティリティナビゲーション

    ******************************************************************/



    /******************************************************************

    フッター

    ******************************************************************/
    /*-------------------------------------------
    フッターナビゲーション
    -------------------------------------------*/
    #footer {
        font-size: 0.9rem;
    }
    #footer .footer-info p {
    }
    #footernavi > ul {
        flex-flow: wrap;
        justify-content: center;
        margin-bottom: 2rem;
    }
    #footernavi > ul > li a {
/*        font-size: 0.9rem;*/
    }
    #footer-main .info-area {
        flex-flow: wrap;
        justify-content: center;
        margin-bottom: 3rem;
    }
    #footer-main .info-area .logo {
        margin-bottom: 1.5rem;
    }
    #footer-bottom .footer-bottom-inner {
        flex-flow: wrap;
        justify-content: center;
    }
    #footer-bottom .footer-bottom-inner .logo-nikke {
        margin-bottom: 1.5rem;
    }


    /*-------------------------------------------
    contact-area
    -------------------------------------------*/
    .instagram-link {
        padding: 0;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    #contact-area .flexbox {
        flex-flow: wrap;
        justify-content: center;
    }

    #contact-area .flexitem {
        padding: 0;
    }
    #contact-area .contact-left {
        order: 2;
        flex-basis: 48%;
        max-width: 48%;
        margin-right: 2%;
    }
    #contact-area .instagram-link img {
        max-width: 140px;
    }
    #contact-area .contact-center {
        order: 1;
        flex-basis: 100%;
        max-width: 100%;
        border: none;
        margin-top: 1.0rem;
        margin-bottom: 1.5rem;
    }
    #contact-area .contact-telno {
/*        font-size: 1.6rem;*/
    }
    #contact-area .contact-right {
        order: 3;
        flex-basis: 48%;
        max-width: 48%;
    }
    #contact-area .form-link {
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    #contact-area .form-link img {
    }
    #contact-area .form-link span {
    }

    /******************************************************************

    トップページ(toppage)

    ******************************************************************/
    #main {
        padding-top: 0;
    }


    /*-------------------------------------------
    トップページメインスライダー
    注意：下2つのcssの順番は変えないこと
    -------------------------------------------*/
    .main-slider .slide-pc {
        display: none;
    }
    .main-slider .slide-sp {
        display: block;
    }


    /*-------------------------------------------
    concept
    -------------------------------------------*/
    #concept .section_main .concept-text {
/*        font-size: 1.8rem;*/
    }
    #concept .concept-lead {
        margin: 2rem auto 4rem;
        justify-content: space-around;
    }
    #concept .concept-lead-center {
        flex-basis: 100%;
        max-width: 100%;
        font-size: 1.15rem;
        line-height: 1.8;
        order: 1;
        margin-bottom: 1.5rem;
    }
    #concept .concept-lead-left {
        flex-basis: 50%;
        max-width: 50%;
        text-align: right;
        order: 2;
    }
    #concept .concept-lead-right {
        flex-basis: 50%;
        max-width: 50%;
        text-align: left;
        order: 3;
    }
    #concept .concept-lead-left img {
        max-width: 40px;
    }
    #concept .concept-lead-right img {
        max-width: 40px;
    }


    /*
    一覧
    */
    .home .photo_planlist > ul {
    }
    .home .photo_planlist > ul > li {
        flex-basis: 48%;
        max-width: 48%;
        margin-right: 4%;
        margin-bottom: 2rem;
    }
    .home .photo_planlist > ul > li:nth-child(5n+5) {
        margin-right: 4%;
    }
    .home .photo_planlist > ul > li:nth-child(3n+3) {
        margin-right: 4%;
    }
    .home .photo_planlist > ul > li:nth-child(2n+2) {
        margin-right: 0;
    }


    /******************************************************************

    投稿（お知らせ）

    ******************************************************************/



    /******************************************************************

    固定ページ(page)

    ******************************************************************/
    /*-------------------------------------------
    HOW TO
    -------------------------------------------*/
    .page-howto #howto .howto-box .text {
        flex-basis: 80%;
        max-width: 80%;
        text-align: center;
    }
    .page-howto #howto .howto-box .text img {
        max-width: 90px;
    }
    .page-howto #howto .howto-box .text .icon-step {
        margin-bottom: 0.5rem;
    }
    .page-howto #howto .howto-box .text .howto-description {
        text-align: left;
    }
    .page-howto #howto .border-bottom {
        width: 80%;
        border-bottom: 1px dotted #ab9396;
        padding-bottom: 2rem;
        margin-bottom: 2rem;
    }


    /*-------------------------------------------
    access
    -------------------------------------------*/
    .page-access .headline:after {
        right: -26%;
        top: 0;
        width: 120px;
        height: 120px;
    }


    /*-------------------------------------------
    photo-products
    -------------------------------------------*/
    .page-photo-products .products-kind .products-kind-title {
        font-size: 1.1rem;
    }
    .page-photo-products .products-kind .products-kind-list > li .products-kind-list-price {
        font-size: 1.1rem;
    }


    /*-------------------------------------------
    studio-points
    -------------------------------------------*/
    .page-studio-points #studio-points .inner_width {
        width: 82% !important;
    }
    .page-studio-points #studio-points .studio-points-box {
         margin-bottom: 3rem; 
    }
    .page-studio-points #studio-points .studio-points-box .thumb {
        flex-basis: 100%;
        max-width: 100%;
        order: 1 !important;
    }
    .page-studio-points #studio-points .studio-points-box .text {
        flex-basis: 100%;
        max-width: 100%;
        order: 2 !important;
    }
    .page-studio-points #studio-points .studio-points-cap > li {
        flex-basis: 100%;
        max-width: 100%;
    }

    /*
    お取り寄せ衣装
    */
    .page-otoriyose .otoriyose-readme .otoriyose-readme-text span.br-pc {
        display: inline;
        margin-left: 0;
    }
    .single-photo_plan .set_plan .set_plan_notes-box {
        font-size: 1.1rem;
    }

    /******************************************************************

    カスタム投稿

    ******************************************************************/
    /*-------------------------------------------
    photo-plan
    -------------------------------------------*/
    .single-photo_plan #pp-info {
        margin-bottom: 2rem;
    }
    .single-photo_plan #pp-info .pp-info-left {
        flex-basis: 0;
        max-width: 0;
        display: none;
    }
    .single-photo_plan #pp-info .pp-info-center {
        flex-basis: 100%;
        max-width: 100%;
/*        font-size: 1.1rem;*/
    }
    .single-photo_plan #pp-info .pp-info-right {
        flex-basis: 0;
        max-width: 0;
        display: none;
    }
    .single-photo_plan #pp-info .pp-info-border {
        margin-bottom: 2.5rem;
    }
    .single-photo_plan #pp-info .pp-info-bottom p {
/*        font-size: 1.0rem;*/
    }


    /*
    プランボタン
    */
    .single-photo_plan #pp-button .pp-button-inner {
        max-width: 80%;
    }
    .single-photo_plan #pp-button .pp-button-box {
        flex-basis: 80%;
        max-width: 80%;
        margin-bottom: 1.5rem;
    }
    .single-photo_plan #pp-button {
        margin-bottom: 2rem;
    }


    /*
    セットプラン
    */
    .single-photo_plan .set_plan .set_plan-inner {
        flex-flow: wrap;
    }
    .single-photo_plan .set_plan .set_plan-box {
        flex-basis: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 1.5rem;
    }


    .single-photo_plan .plan_detail {
        margin-bottom: 4rem;
    }
    .single-photo_plan .plan_detail .bg-color {
        padding: 2rem 0;
        margin-bottom: 2rem;
    }
    .single-photo_plan .plan_detail .section_title {
        font-size: 1.3rem;
    }
    .single-photo_plan .plan_detail .section_title > .plan_number {
        padding: 3px 7px;
        font-size: 1.3rem;
        /* line-height: 1; */
        line-height: 17px;
        vertical-align: unset;
        margin-right: 0.8rem;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust .pd_illust_img {
        max-width: 70px;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust p {
        font-size: 0.9rem;
    }
    .single-photo_plan .plan_detail .plan_price {
        font-size: 1.5rem;
        margin-left: 2.5rem;
    }
    .single-photo_plan .plan_detail .plan_notes {
        font-size: 1.1rem;
    }
    .single-photo_plan .plan_detail .link-page {
        margin-bottom: 3rem;
    }


    .single-photo_plan #studio-points .inner_width {
        width: 82% !important;
    }


    /*-------------------------------------------
    gallery
    -------------------------------------------*/
    .single-gallery .article-title-wrapper .button-wrapper .button {
        padding: 0.5rem;
    }


    /******************************************************************

    スタジオ予約フォーム

    ******************************************************************/
    .page-booking-form #booking-form .section_main {
        padding: 2.5rem 1.5rem;
    }

    /******************************************************************

    お問い合わせフォーム

    ******************************************************************/
    .page-contact #contact-form .section_main {
        padding: 2.5rem 1.5rem;
    }

    /******************************************************************

    404 Page Not Found

    ******************************************************************/



} /* 640以下 End */

/* 479px以下: SP screens */
@media only screen and (max-width: 29.938em) {

    .headline img {
        max-width: 200px;
    }
    .page-options .section_title img {
        max-width: 200px;
    }
    .single-photo_plan .section_title img {
        max-width: 200px !important;
    }

    /*
    HOW TO
    */
/*
    .page-howto .headline:before,
    .page-howto .headline:after {
        top: 20px;
        width: 35px;
        height: 35px;
    }
    .page-howto .headline:before {
        left: -16%;
    }
    .page-howto .headline:after {
        right: -16%;
    }
*/


    /******************************************************************

    フッター

    ******************************************************************/
    #footer {
        padding: 1.5rem 0rem 2rem;
    }
    #footer-main .info-area .footer-info .site-title {
        font-size: 1.2rem;
        margin-bottom: 0.5rem;
    }
    #footer-main .info-area .footer-info .site-desc {
        font-size: 1.0rem;
    }


    /*-------------------------------------------
    contact-area
    -------------------------------------------*/
    #contact-area .contact-area_title {
        top: -66px;
    }
    #contact-area .contact-area_title img {
        max-width: 200px;
    }
    #contact-area .contact-left {
        flex-basis: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 0.8rem;
    }
    #contact-area .contact-right {
        flex-basis: 100%;
        max-width: 100%;
    }
    .instagram-link {
        height: auto;
        padding: 0.5rem 1rem;
    }
    #contact-area .form-link {
        height: auto;
        padding: 1rem 1rem;
    }


    /******************************************************************

    トップページ(toppage)

    ******************************************************************/
    /*-------------------------------------------
    concept
    -------------------------------------------*/
    #concept .section_title {
        margin: 1rem auto;
    }
    #concept .section_title img {
        max-width: 200px;
    }
    #concept .section_main .concept-text {
        font-size: 1.5rem;
    }
    #concept .concept-lead-center {
/*        font-size: 1.0rem;*/
        letter-spacing: 1px;
    }

    /*-------------------------------------------
    campaign
    -------------------------------------------*/
    .home #campaign {
        margin-bottom: 6rem !important;
    }
    #campaign .campaign-head {
        display: none;
    }
    #campaign .campaign-body {
        flex-flow: wrap;
    }
    #campaign .campaign-bottom {
        display: none;
    }
    #campaign .section_header {
        flex-basis: 100%;
        max-width: 100%;
    }
    #campaign .section_title_wrapper {
        margin-bottom: 1rem;
    }
    #campaign .section_title img {
        max-width: 200px;
    }
    #campaign .section_title + img {
        max-width: 60px;
    }
    #campaign .section_main {
        flex-basis: 100%;
        max-width: 100%;
    }


    /*-------------------------------------------
    photo-plan
    -------------------------------------------*/
    #photo-plan {
        padding: 2rem 0 2rem;
        margin-bottom: 6rem !important;
    }
    #photo-plan .photo-plan-bottom {
    }
    #photo-plan .photo-plan-bottom img {
        max-width: 80px;
        right: 0;
        top: -12px;
    }
    #photo-plan .section_header {
    }
    #photo-plan .section_title {
        margin-bottom: 1.5rem;
    }
    #photo-plan .section_title img {
        max-width: 200px;
    }
    #photo-plan .section_title_wrapper {
        position: relative;
        top: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    #photo-plan .section_title_wrapper > img {
        max-width: 80px;
        position: absolute;
        left: 0;
        top: -70px;
    }
    #photo-plan .section_title_wrapper > .adjust-box {
        display: none;
    }
    #photo-plan .section_main {
    }


    /*
    一覧
    */
    .home .photo_planlist > ul > li .text h2 {
        font-size: 1.1rem;
    }


    /*-------------------------------------------
    toppage-banner
    -------------------------------------------*/
    #toppage-banner {
        padding: 0 1rem;
        margin-bottom: 3rem !important;
    }
    #toppage-banner .section_title {
    }
    #toppage-banner .toppage-banner-inner-lower > p {
        font-size: 1.0rem;
    }
    #toppage-banner .toppage-banner-inner {
        padding: 2rem 1.0rem 2rem;
    }


    /******************************************************************

    投稿（お知らせ）

    ******************************************************************/
    .home #news {
        padding: 1.5rem 0 2rem;
        margin-bottom: 3rem !important;
    }
    .home #news .section_title {
        font-size: 1.5rem;
        margin-bottom: 0.5rem;
        text-align: center;
    }
    .postlist-ul > li {
        padding: 1rem 0;
        border-bottom: 1px dotted #231815;
    }
    .postlist-ul > li .text {
        /*    display: flex;*/
    }
    .postlist-ul > li .text .date {
/*        font-size: 1rem;*/
        margin-bottom: 0.4rem;
    }
    .postlist-ul > li .text .list-title {
/*        font-size: 0.9rem;*/
    }


    /******************************************************************

    固定ページ(page)

    ******************************************************************/
    /*-------------------------------------------
    HOW TO
    -------------------------------------------*/
    .page-howto .section_header {
        margin-bottom: 3rem;
        text-align: left;
    }
    .page-howto .howto-lead {
/*        font-size: 1.0rem;*/
    }
    .page-howto #howto .howto-box .text {
        flex-basis: 100%;
        max-width: 100%;
    }
    .page-howto #howto .howto-box .text .howto-description {
/*        font-size: 1.0rem;*/
    }
    .page-howto #howto .howto-box .text img {
        max-width: 80px;
    }
    .page-howto #howto .border-bottom {
        width: 100%;
    }

    /*-------------------------------------------
    撮影オプション
    -------------------------------------------*/
    .page-options .section_title_wrapper {
        margin: 0rem 0 2rem;
    }
    .page-options .section_header {
        margin-bottom: 2rem;
    }
    .page-options .options-lead,
    .page-options .rental-lead {
/*        font-size: 1.0rem;*/
        text-align: left;
    }

    /* テーブル */
/*
    table.options_table {
        table-layout: unset;
        border-collapse:collapse;
        border-spacing: 0px 0px;
        margin-bottom: 2rem;
    }
    table.options_table tbody tr {
        border-bottom: 1px dotted #706067;
    }
    table.options_table tr th {
    }
    table.options_table tr th:first-child {
        width: 100%;
    }
    table.options_table tr td {
    }
    table.options_table tr th,
    table.options_table tr td {
        width: 100%;
        display: block;
        padding: 0.7rem 1.2rem;
        text-align: left;
    }
    table.options_table tr th:nth-child(1),
    table.options_table tr td:nth-child(1) {
        padding-bottom: 0.2rem;
    }
    table.options_table tr td:nth-child(1) {
        font-weight: bold;
    }
    table.options_table tr th:nth-child(2),
    table.options_table tr td:nth-child(2) {
        padding-top: 0.2rem;
        padding-bottom: 0.2rem;
    }
    table.options_table tr th:nth-child(3),
    table.options_table tr td:nth-child(3) {
        padding-top: 0.2rem;
    }

    .page-options .caution-box {
        padding: 1.0rem;
        font-size: 1.0rem;
    }
    .page-options .caution-box > p {
        font-size: 0.9rem;
    }
    .page-options .caution-box .caution-title {
        font-size: 1.0rem;
    }
*/
    table.options_table {
        table-layout: unset;
        border-collapse: collapse;
        border-spacing: 0px 0px;
    }
    table.options_table tr th:first-child,
    #options table.options_table tr th:first-child {
        width: 100%;
    }
    table.options_table thead tr th {
        display: none;
    }
    table.options_table tr th,
    table.options_table tr td {
        width: 100%;
        display: block;
        text-align: left;
        font-size: 0.9rem;
/*        padding: 0.7rem 1rem;*/
    }
    .bg-color table.options_table tbody tr th,
    table.options_table tbody tr th {
        background-color: #706067;
        color: #ffffff;
    }
    .page-options .caution-box {
/*        font-size: 1.0rem;*/
    }


    /*-------------------------------------------
    photo producs
    -------------------------------------------*/
    /*
    products
    */
    .page-photo-products #products-lead .section_header {
        margin-bottom: 2rem;
    }
    .page-photo-products #products-lead .products-lead {
/*        font-size: 1.0rem;*/
    }
    .page-photo-products .products-kind .products-kind-list {
/*        padding: 1.0rem;*/
    }
    .page-photo-products .products-kind .products-kind-list > p {
/*        font-size: 1.0rem;*/
    }
    .page-photo-products .products-box {
        margin-bottom: 2rem;
        padding-bottom: 2rem;
        border-bottom: none;
    }
    .page-photo-products .products-kind .products-kind-title {
        font-size: 1.0rem;
    }
    .page-photo-products .products-kind .products-kind-list > li .products-kind-list-price {
        font-size: 1.0rem;
    }
    .page-photo-products #photo-goods .section_main > .section_inner {
        flex-basis: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 3rem;
    }
/*
    .page-photo-products .title-band .section_title_wrapper .section_title {
        margin-bottom: 0.5rem;
    }
    .page-photo-products .title-band .section_title_wrapper .section_sub_title {
        padding-left: 0;
        flex-basis: 100%;
        max-width: 100%;
    }
*/


    /*
    delivery
    */
    .page-photo-products #delivery {
        margin-bottom: 0 !important;
    }
    .page-photo-products #delivery .section_title {
    }
    .page-photo-products #delivery .bg-color {
/*        padding: 1.5rem 0 0.1rem;*/
    }

    .page-photo-products #delivery .section_inner {
        margin-bottom: 2rem;
    }
    .page-photo-products #delivery .section_inner > p {
/*        font-size: 1.0rem;*/
    }
    .page-photo-products #delivery .section_inner_title {
/*        font-size: 1rem;*/
    }
    .page-photo-products #delivery .section_inner_title > span {
        display: inline-block;
        padding: 3px 7px;
/*        font-size: 1.0rem;*/
        line-height: 15px;
        vertical-align: initial;
        margin-right: 0.3rem;
    }

    .page-photo-products #delivery .caution-box {
    }
    .page-photo-products #delivery .caution-box p {
/*        font-size: 1.0rem;*/
    }


    /*-------------------------------------------
    アクセス
    -------------------------------------------*/
    .page #main .section_title.decor {
        padding: 0.2rem 3rem 0.3rem 1rem;
    }
    .page-access .headline {
        width: 100%;
    }
    .page-access .headline:after {
/*
        right: 0;
        top: 65px;
*/
        right: 0;
        top: 0;
        bottom: 0;
        left: 0;
        position: relative;
        margin: auto;
    }

    /*-------------------------------------------
    Q&A
    -------------------------------------------*/
    .page-qa #qa-area .qa_title {
        width: 100%;
        padding: 0.5rem 1.2rem 0.7rem 1.2rem;
    }
    .page-qa #qa-area .qa_title:after {
        content: none;
    }
    .page-qa #qa-area .qa-list li .question {
/*        font-size: 1.0rem;*/
    }
    .page-qa #qa-area .qa-list li .answer {
/*        font-size: 0.9rem;*/
        margin-top: 0.5rem;
        margin-bottom: 1rem;
        padding-top: 1.5rem;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        padding-bottom: 1.5rem;
        border: 1px solid #cccccc;
    }


    /*-------------------------------------------
    gallery
    -------------------------------------------*/
    .pgae-gallery .gallery-item {
        width: 100%;
    }


    /*-------------------------------------------
    お取り寄せ
    -------------------------------------------*/
    .page-otoriyose .flow-inner .section_inner_icon {
        flex-basis: 20%;
        max-width: 20%;
        margin: 0 auto 1.5rem;
    }
    .page-otoriyose .flow-inner .section_inner_text {
        flex-basis: 100%;
        max-width: 100%;
        font-size: 1.1rem;
    }
    .page-otoriyose .flow-01 .flow-inner .section_inner_text .itemleft {
        flex-basis: 100%;
        max-width: 100%;
    }
    .page-otoriyose .flow-01 .flow-inner .section_inner_text .itemright {
        flex-basis: 100%;
        max-width: 100%;
    }
    .page-otoriyose .otoriyose_price_wrapper .otoriyose_price_width {
        width: 100%;
    }
    .page-otoriyose .otoriyose_price_wrapper .otoriyose_price h2 {
        font-size: 1.1rem;
    }
    .page-otoriyose .otoriyose_price_wrapper .otoriyose_price table tr th,
    .page-otoriyose .otoriyose_price_wrapper .otoriyose_price table tr td {
        padding: 0.5rem 0.3rem;
    }

    /******************************************************************

    カスタム投稿

    ******************************************************************/
    /*-------------------------------------------
    photo plan
    -------------------------------------------*/
    .single-photo_plan .article-header {
        margin-bottom: 1.5rem;
    }
    .single-photo_plan #pp-info {
        margin-bottom: 1.0rem;
    }
    .single-photo_plan #pp-info .pp-info-border {
        padding-bottom: 1.5rem;
        margin-bottom: 1.5rem;
    }
    .single-photo_plan #pp-info .pp-info-inner {
        justify-content: center;
    }
    .single-photo_plan #pp-info .pp-info-center {
/*
        font-weight: bold;
        flex-basis: 95%;
        max-width: 95%;
        text-align: left;
*/
    }
    .single-photo_plan #pp-info .pp-info-bottom {
        text-align: left;
    }
    .single-photo_plan #pp-button .pp-button-box .pp-button-box-inner > h2 {
/*        font-size: 1.25rem;*/
    }

    .single-photo_plan .plan_detail .section_title {
/*        font-size: 1.1rem;*/
    }
    .single-photo_plan .plan_detail .section_title > .plan_number {
        padding: 3px 5px;
/*        font-size: 1.1rem;*/
    }
    .single-photo_plan .plan_detail .section_title > .plan_title_en {
        display: none;
    }
    .single-photo_plan .plan_detail .plan_price {
        margin-left: 0.5rem;
    }
    .single-photo_plan .plan_detail .plan_service-sbj {
/*        font-size: 1rem;*/
        padding: 0.8rem 3rem 0.8rem 1.0rem;
    }
    .single-photo_plan .plan_detail .plan_service-box {
        padding-bottom: 1rem;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox {
        flex-flow: wrap;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust {
        flex-basis: 48%;
        max-width: 48%;
        margin-right: 4%;
        margin-bottom: 1rem;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust:nth-child(2n+2) {
        margin-right: 0;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust .pd_illust_inner {
        justify-content: center;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust .pd_illust_img {
        max-width: 90px;
    }
    .single-photo_plan .plan_detail .plan_service-box-right .flexbox .pd_illust p {
        max-width: 115px;
    }


    /*
    プランボタン
    */
    .single-photo_plan #pp-button .pp-button-inner {
        max-width: 100%;
    }
    .single-photo_plan #pp-button .pp-button-box {
        flex-basis: 100%;
        max-width: 100%;
    }


    /*
    セットプラン
    */
    .single-photo_plan .set_plan .set_plan-box {
        flex-basis: 100%;
        max-width: 100%;
    }

    .single-photo_plan #studio-points {
        margin-bottom: 5rem;
    }
    .single-photo_plan #studio-points .bg-img {
        padding: 13rem 0 2rem;
    }

    /*-------------------------------------------
    costume
    -------------------------------------------*/
    .post-type-archive-costume #costume-lead .costume-lead p br {
        display: none;
    }

    .costume-gallery {
/*        margin-bottom: 2rem;*/
    }
    .costume-gallery > a {
        flex-basis: 32%;
        max-width: 32%;
        margin-right: 2%;
/*        margin-bottom: 1.5rem;*/
/*        display: block;*/
    }
    .costume-gallery > a:nth-child(5n+5) {
        margin-right: 2%;
    }
    .costume-gallery > a:nth-child(3n+3) {
        margin-right: 0;
    }


    /*-------------------------------------------
    gallery
    -------------------------------------------*/
    .single-gallery .gallery-item {
        width: 100%;
    }


    /******************************************************************

    スタジオ予約フォーム

    ******************************************************************/
    .page-booking-form .info-wrapper .info-box h5 {
        font-size: 1rem;
/*        font-weight: normal;*/
    }
    .desired-date > .flexbox {
        flex-flow: nowrap;
        /*        font-size: 0.9rem;*/
    }
    .desired-date > .flexbox span:first-child {
        max-width: 100px;
        margin-right: 0;
    }

    /******************************************************************

    お問い合わせフォーム

    ******************************************************************/
    .page-contact .info-wrapper .info-box h5 {
        font-size: 1rem;
        /*        font-weight: normal;*/
    }


}/* 479px以下 End */

/* 330px以下: SP screens */
@media only screen and (max-width: 330px) {
    .page-access .headline:after {
        right: 0;
        top: 0;
        bottom: 0;
        left: 0;
        position: relative;
        margin: auto;
    }
}/* 330px以下 End */