/*
Theme Name: PhotoStudio SAKIHAMA Ver1.2.0
Theme URI: 
Author: SAKIHAMA
Author URI: https://photo-sakihama.com
Description: PhotoStudio SAKIHAMA（写真のサキハマ）専用テーマ
Requires PHP: 7.2
Version: 1.2
License: PhotoStudio SAKIHAMA
Text Domain: photostudiosakihama
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre, a, abbr, acronym, address,
big, cite, code, del, dfn, em, font, ins, kbd,
q, s, samp, small, strike, strong, sub, sup,
tt, var, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
h1, h2, h3, h4, h5, h6 {
	position: relative;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
	display: block;
}
a { outline:none !important; color:#333; text-decoration: none; }
a:focus { outline:none !important; color:#333; text-decoration:none; }
a:active { outline:none !important; color:#333; text-decoration:none; }
a:hover { color:#333; text-decoration:none; opacity:0.70; }
a:visit { color:#000; text-decoration:none; }
a {
	-webkit-transition:0.20s;
	        transition:0.20s;
}
address {margin:0;}
b,strong {font-weight: 700;}
em,i,b {font-weight:700;}
p {	margin-bottom: 20px;}
ul,ol {	list-style: none;}
img {
	-ms-interpolation-mode: bicubic;
	border: 0;
	vertical-align: middle;
	-webkit-backface-visibility: hidden;
			backface-visibility: hidden;
}
table {
	border-collapse: separate;
	border-spacing: 0;
	border-width: 0;
	width: 100%;
}
input[type="text"], 
input[type="button"], 
input[type="submit"], 
textarea {
	border-radius:0;
	-webkit-appearance: none;
}

/*-----------------------------------------------------------------------------------------
	body
-----------------------------------------------------------------------------------------*/
body {
    font-family: "Noto Sans JP", sans-serif;
	font-size:16px;
	line-height:180%;
	color:#555;
	background:#fff;	
}
html, body {
	height: 100%;
	width:100%;
	min-width: 960px;
	margin: 0;
	padding: 0;
}
main {}

.dr_on {
    top:0;
    right:0!important;
    visibility:visible !important;
    opacity:1 !important;
    z-index:9999 !important;
    -webkit-transition: .7s;
            transition: .7s;
}
.dr_off {
    top:0;
    right:0;
    visibility:hidden;
    opacity:0;
    -webkit-transition: .7s;
            transition: .7s;
}
.over_hide {
    overflow: hidden !important;
}

/*------------------------------ scroll_up ----------*/
.f-in {
  opacity: 0;
  transform: translate(0, 30px);
  transition: 0.6s ease-in-out;
}
.f-in.is-show {
  transform: translate(0, 0);
  opacity: 1;
}
.f-in-right {
  opacity: 0;
  transform: translate(30px, 0);
  transition: 1s ease-in-out;
}
.f-in-right.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

/*-----------------------------------------------------------------------------------------
	header
-----------------------------------------------------------------------------------------*/
header {
	position:fixed;
    top:-100px;
    animation: h_slide 2s forwards;
    left:0;
	width:100%;
    min-width: 1200px;
	padding:50px 20px 0 20px;
    z-index: 10;
    -webkit-transition: 0.5s;
	        transition: 0.5s;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
header #logo {
	width:120px;
    top:-15px;
}
header #logo img {
	width:100%;
	height:auto;
}
#header {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
			align-items: center;
	-webkit-justify-content: space-between;
			justify-content: space-between;
}
header.show {
    background:rgba(255,255,255,1);
}
header.hide {
    transform: translateY(-100px);
}
header:hover {
    background:rgba(255,255,255,1);
}

/*------------------------------ header animation ----------*/
@keyframes h_slide {
  0% {
     top:-100px;
  }
  100% {
     top:0;
  }
}
@keyframes h_slide_sp {
  0% {
     top:0;
  }
  100% {
     top:0;
  }
}

/*------------------------------ Grobal Nav ----------*/
#gnav {
    margin-right:200px;
	display: -webkit-flex;
	display: flex;
    -webkit-align-items: center;
            align-items: center;
}
#gnav ul {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
			align-items: center;
    margin-right:10px;
}
#gnav ul li {
	font-family: "Noto Serif JP", serif;
    position:relative;
	margin:0 25px;
    padding-bottom:20px;
	letter-spacing: 2px;
	line-height:100% !important;
}
#gnav ul li:before {
    position: absolute;
    content:'';
    top:-12px;
    right:-25px;
    border-left:1px solid #D0D0D0 !important;
    height:39px !important;
    -webkit-transform: rotate(30deg);
            transform: rotate(30deg);
}
#gnav ul li a,
#gnav ul li div {
	display: block;
	color:#333;
    font-size:14px;
	padding:0;
}
#gnav ul li:nth-last-child(-n+1):before,
#gnav ul li ul li:before {
    display: none;
}

/*------------------------------ subMenu ----------*/
#gnav ul li ul {
    position: absolute;
    top: 100%;
    left: -20px;
    width: 150%;
    padding: 0;
    z-index:1;
    background:#fff;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
#gnav ul li ul li {
	position: relative;
	overflow: hidden;
	text-align:left;
	height: 0;
	margin:0;
	font-size:14px;
    width:100% !important;
	padding: 0 !important;
	-webkit-transition: 0.3s;
			transition: 0.3s;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
#gnav ul li:first-child ul {
    width:150% !important;
}
#gnav ul li:first-child ul li {
    width:100% !important;
}
#gnav ul li:hover ul li a {
    background:#fff;
}
#gnav ul li ul li a {
	display: block !important;
	line-height:50px !important;
	padding:0 5px 0 35px;
	margin:0;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
#gnav ul li ul li:hover a {
	opacity:1 !important;
	background:#d7b180; /* #7fb6c8 */
    color:#fff;
}
#gnav ul li ul li a:after {
	position: absolute;
	content:'';
	top:50%;
	left:13px;
	width:5px;
	height: 5px;
	margin-top:-3px;
	border-top:1px solid #333;
	border-right:1px solid #333;
	-webkit-transform:rotate(45deg);
			transform:rotate(45deg);
}
#gnav ul li ul li:hover a:after {
	border-top:1px solid #fff;
	border-right:1px solid #fff;
}
#gnav ul li:hover ul li {
	overflow: visible;
	height:50px !important;
	border-bottom:1px solid rgba(0,0,0,0.05);
}

.head_view {
	top:0 !important;
	visibility:visible !important;
	opacity:1 !important;
	-webkit-transition: 1s;
			transition: 1s;
}
.ic {
    position: relative;
    width:30px;
    margin-top:-18px;
}
.ic img {
    width:100%;
    height:auto;
}
.ic ul {
    position: absolute;
    top:150%;
    left:-145%;
    opacity: 0;
    visibility: hidden;
    background:#111;
    /*border-radius:5px;*/
    padding:25px;
    text-align: center;
    display: block !important;
    -webkit-transition: 0.3s;
            transition: 0.3s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.ic ul:before {
    position: absolute;
    content:'';
    top:-10px;
    left:50%;
    margin-left:-8px;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 12px solid #111;
}
.ic ul li {
    margin:0 !important;
    padding: 0 !important;
}
.ic ul li a {
    color:#fff !important;
    display: block;
    line-height: 40px !important;
}
.ic ul li:before  {
    display: none !important;
}
.ic:hover ul {
    top:130%;
    opacity: 1;
    visibility: visible !important;
}


@media only screen and (max-width:1200px) {
    #header {
        -webkit-justify-content: flex-start;
                justify-content: flex-start;
    }
    header #logo {
        margin-right: 2%;
    }
    #gnav ul {
        margin:0 15px 0 0;
    }
    #gnav ul li {
        margin:0 15px;
    }
    #gnav ul li:before {
        top:-9px;
        right:-15px;
        height:35px !important;
    }
    #gnav ul li a,
    #gnav ul li div {
        font-size:14px;
    }
    .ic ul {
        position: absolute;
        left:-130%;
    }
}
@media only screen and (max-width:1000px) {
    header #logo {
        margin-right:0;
        top:-12px;
    }
}

/*------------------------------ bugger ----------*/
#panel-btn {
    position: fixed;
    display: inline-block;
    top:10px;
    right:15px;
    width:120px;
    max-width:120px;
    min-width:120px;
    height:120px;
    margin-top:0;
    background:#d7b180; /* #7fb6c8 */
    z-index:5000;
    border-radius: 50%;
    -webkit-transition: 0.5s;
	        transition: 0.5s;
}
#panel-btn:hover {
    cursor: pointer;
}

#panel-btn:after {
    position: absolute;
    content:'MENU';
    bottom:20%;
    left:50%;
    font-size:14px;
    font-weight:700;
    margin-left:-25px;
    letter-spacing: 1px;
    color:#fff;
}
#panel-btn-icon {
    display: block;
    position: absolute;
    top: 41%;
    left: 50%;
    width: 40px;
    height: 2px;
    background: #fff;
    margin-left:-25px;
    -webkit-transition: 0.2s;
            transition: 0.2s;
}
#panel-btn-icon:before,
#panel-btn-icon:after {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    display: block;
    height: 2px;
    background: #fff;
    -webkit-transition: 0.3s;
            transition: 0.3s;
}
#panel-btn-icon:before {
    width: 50px;
    margin-top: -12px;
}
#panel-btn-icon:after {
    width: 30px;
    margin-top: 10px;
}
#panel-btn .close {
    background: transparent;
}
#panel-btn .close:before,
#panel-btn .close:after {
    margin-top: 0;
    background: #fff;
    width:45px;
}
#panel-btn .close:before{
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
}
#panel-btn .close:after{
    -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
}

@media only screen and (max-width:1100px) {
    #panel-btn {
        width:100px;
        max-width:100px;
        min-width:100px;
        height:100px;
    }
    #panel-btn:after {
        font-size:10px;
        bottom:17%;
        margin-left:-17px;
    }
    #panel-btn-icon {
        width: 34px;
        margin-left:-17px;
    }
    #panel-btn-icon:before {
        width: 34px;
        margin-top: -9px;
    }
    #panel-btn-icon:after {
        width: 20px;
        margin-top: 7px;
    }
    #panel-btn .close:before,
    #panel-btn .close:after {
        margin-top: 0;
        background: #fff;
        width:30px;
    }
    #panel-btn .close:before{
        -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg);
    }
    #panel-btn .close:after{
        -webkit-transform: rotate(-135deg);
                transform: rotate(-135deg);
    }
}

/*------------------------------ Menu Box ----------*/
.bx-menu {
    position:fixed;
    top:0;
	right:0;
	width:100%;
	max-width:100%;
	height:100%;
	visibility:hidden;
	opacity:0;
	margin:0;
    padding-bottom:50px;
    overflow-x: hidden;
    background: radial-gradient(ellipse at center,  #f9fcf7 0%,#f5f9f0 100%);
    z-index: 1000 !important;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
/*
.bx-menu:before {
    font-family: "Nothing You Could Do", cursive;
    position: absolute;
    content:'Menu -';
    top:10%;
    left:12%;
    color:#CCD4C1;
    font-size:70px;
    -webkit-transform: rotate(-15deg);
            transform: rotate(-15deg);
    -webkit-transition: 0.5s;
	        transition: 0.5s;
}
*/
.bx-menu ul {
    margin:5% auto 0 auto;
    width:400px;
    height:90%;
}
.bx-menu ul li {
    font-family: "Noto Serif JP", serif;
    position: relative;
    font-size:20px;
    line-height:250%;
}
.bx-menu ul li a {
    display: block;
}
.bx-menu ul li ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    margin:0 0 4% 4% !important;
    height:auto !important;
    width:auto !important;
}
.bx-menu ul li ul li {
    height: auto !important;
    width:50%;
    font-size:16px !important;
    padding-left:30px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.bx-menu ul li ul li:before {
    position: absolute;
    content:'';
    top:50%;
    left:10px;
    width:8px;
    height:8px;
    margin-top:-4px;
    border-left:1px solid #000;
    border-bottom:1px solid #000;
}
.bx-menu ul li.ic {
    margin-top:2%;
    padding-left:50px;
    background:url("img/parts/instagram.svg") 0 50% no-repeat;
    background-size:30px auto;
}
.bx-menu ul li.ic img {
    margin-right:2%;
    float:left !important;
}

@media only screen and (max-width:1200px) {
    .bx-menu:before {
        top:6%;
        left:4%;
        font-size:40px;
    }
    .bx-menu ul li.ic {
        margin-top:3%;
    }
}

/*-----------------------------------------------------------------------------------------
	box contact
-----------------------------------------------------------------------------------------*/
.bx-contact {
	position:relative;
    background: linear-gradient(to bottom, #f2f4f7 0%, #ffffff 20%);
    padding:80px 10px;
	-webkit-box-sizing:border-box;
            box-sizing:border-box;
}
.bx-contact .fx {
    max-width:1200px;
	padding:100px 10px 0 10px;
    margin:0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
            align-items: center;
    -webkit-justify-content: center;
            justify-content: center;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
.bx-contact .fx p {
    font-size: 22px;
    font-weight:700;
    margin-right:5%;
}
.bx-contact .fx div {
    border-left:1px solid #ccc;
    padding-left: 5%;
    white-space: nowrap;
	-webkit-box-sizing:border-box;
            box-sizing:border-box;
}
.bx-contact .fx div p {
    font-size:14px;
    padding-left:55px;
}
.bx-contact .fx div p.tel {
    font-size: 50px !important;
    font-weight:700;
    line-height:200%;
    margin-bottom:0;
    background:url("img/parts/ic_tel.svg") 0 50% no-repeat;
    background-size:35px auto;
	-webkit-box-sizing:border-box;
            box-sizing:border-box;
}

/*-----------------------------------------------------------------------------------------
	box reservation
-----------------------------------------------------------------------------------------*/
.bx-res {
	position:relative;
    background:url("img/parts/bg/resevetion.jpg") 50% 50% no-repeat fixed;
    backgrouns-size:100% auto;
    padding:180px 10px;
	-webkit-box-sizing:border-box;
            box-sizing:border-box;
}
.bx-res:after {
    position: absolute;
    content:'';
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.10);
}
.bx-res .bx-in-res {
    position: relative;
    width:600px;
    background:#fff;
    /*border-radius:20px;*/
    padding:80px 40px;
    margin:0 10% 0 auto;
    box-shadow: 30px 30px 0 rgba(0,0,0,0.20);
    z-index: 1;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.bx-res .bx-in-res p {
    font-size:18px;
    line-height:180%;
}
.bx-res .bx-in-res p.ttl-res {
    font-family: "Noto Serif JP", serif;
    font-weight:100;
    font-size:40px;
    line-height: 100% !important;
    letter-spacing: 2px;
    color:#000;
    margin-bottom:40px;
}
.bx-res .bx-in-res p.ttl-res span {
    position: relative;
    margin-left:60px;
    font-size:28px;
}
.bx-res .bx-in-res p.ttl-res span:before {
    position: absolute;
    content:'';
    top:50%;
    left:-55px;
    width:50px;
    border-top:1px solid #ccc;
    transform:rotate(-60deg);
}

@media only screen and (max-width:1200px) {
    .bx-res {
        background:url("img/parts/bg/resevetion.jpg") 50% 50% no-repeat local;
    }
    .bx-res .bx-in-res {
        border-radius:15px;
        margin:0 auto !important;
    }
}

/*-----------------------------------------------------------------------------------------
	footer
-----------------------------------------------------------------------------------------*/
#footer {
	position:relative;
    background:#d7b180; /* #7fb6c8 */
    padding:80px 10px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
            align-items: center;
    -webkit-justify-content: center;
            justify-content: center;
	-webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#footer p.logo-f {
    width:170px;
    margin: 0 4% 0 0;
}
#footer p.logo-f img {
    width:100%;
    height:auto;
}
#footer div {
    color:#fff;
    letter-spacing:1px;
    font-size:14px;
}
#footer dl div {
    display: -webkit-flex;
    display: flex;
}
#footer dl div dt {
    margin-right:3%;
}
#footer dl div dd {
    white-space: nowrap;
}
footer small {
	display: block;
	font-size:13px;
	text-align:center;
	line-height:70px;
    background:#fff;
    color:#333; /*#25404c*/
    letter-spacing:2px;
}

/*------------------------------ PageUp ----------*/
#pageUp {
	position: fixed;
	right:35px;
	bottom:35px;
	width:80px;
	height:80px;
	border:5px solid #fff;
	background:#333;
	border-radius:50%;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	z-index: 10;
}
#pageUp:after {
	position: absolute;
	content:'';
	top:28px;
	left:24px;
	width:20px;
	height:20px;
	border-top:2px solid #fff;
	border-right:2px solid #fff;
	-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
}
#pageUp:hover {
	cursor: pointer;
}
#pop-res {
    display: none !important;
}
/*
#pop-res {
    position: fixed;
    right:-150px;
    bottom:200px;
    background:url("img/parts/ic_reservation.svg") 50% 23px no-repeat #12130E;
    background-size:30px auto;
    width:150px;
    z-index: 10;
    border-radius: 10px 0 0 10px;
    -webkit-transition: 1s;
            transition: 1s;
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.05);
            box-shadow: 0 0 10px rgba(0,0,0,0.05);
}
#pop-res a {
    position: relative;
    border-radius:10px 10px 0 0;
    font-size:14px;
    text-align: center;
    display: block;
    color:#fff;
    line-height:150%;
    padding:70px 10px 20px 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
#pop-res:hover {
    background:url("img/parts/ic_reservation.svg") 50% 23px no-repeat #647287;
    background-size:30px auto;
}
*/

/*---------- pop-res visit ----------*/
/*
.in {
    right:0 !important;
}
*/

@media only screen and (max-width:1100px) {
    /*
    #pop-res {
        position: fixed;
        right:-125px;
        background:url("img/parts/ic_reservation.svg") 50% 21px no-repeat #12130E;
        background-size:22px auto;
        width:120px;
    }
    #pop-res a {
        font-size:14px;
        text-align: center;
        display: block;
        color:#fff;
        line-height:150%;
        padding:60px 10px 20px 10px;
    }
    #pop-res:hover {
        background:url("img/parts/ic_reservation.svg") 50% 21px no-repeat #647287;
        background-size:22px auto;
    }
    */
}

/*----------------------------------------------------------------------
	top page
 ---------------------------------------------------------------------*/
/*------------------------------ slider ----------*/
#slider {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100vh;
    animation: slidein 2.5s forwards;
}
.swiper-slide {
    background: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
            align-items: center;
    -webkit-justify-content: center;
            justify-content: center;
    height: 100vh;
}
.swiper-slide img {
    display: block;
    width: 100vw;
    height: auto;
    height: 100vh;
    object-fit: cover;
}
#catchcopy {
    display: none;
}
/*
#catchcopy {
    font-family: "Nothing You Could Do", cursive;
    position: absolute;
    left:6%;
    z-index: 1;
    line-height:130%;
    color:#000;
    font-size:70px;
    animation: fadein 2.5s forwards;
    -webkit-transition: 0.5s;
	        transition: 0.5s;
}
#catchcopy span div {
    display: inline !important;
    opacity:0;
}
@keyframes slidein {
  0% {
     opacity: 0;
  }
  100% {
     opacity: 1;
  }
}
@keyframes fadein {
  0% {
     opacity: 0;
     top:80%;
     transform: translateY(0) rotate(0);
  }
  100% {
     opacity: 1;
     top:65%;
     transform: translateY(0) rotate(-7deg);
  }
}
*/
/*
@media only screen and (max-width:1200px) {
    #catchcopy {
        left:6%;
        z-index: 1;
        line-height:130%;
        font-size:55px;
    }
}
*/
@media only screen and (max-width:1050px) {
    #slider {
        width: 100%;
        height: auto !important;
    }
    .swiper-slide {
        width: 100%;
        height: auto !important;
    }
    .swiper-slide img {
        width: 100%;
        height: auto !important;
    }
}

/*------------------------------ top box ----------*/
#wrapper-tp {
    position: relative;
    background:#F2F4F7;
}
#wrapper-tp section {
    position: relative;
    padding:80px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

/*------------------------------ concept ----------*/
#concept {
    padding: 80px 0 80px 0 !important;
}
#concept h1 {
    font-size:80px;
    color:#d7b180;
    font-weight: 300;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 3px;
    /*
    font-family: "Nothing You Could Do", cursive;
    -webkit-transform: rotate(-1deg);
            transform: rotate(-1deg);
    */
}
#concept h1 span {
    color:#d7b180 !important;
    font-size:45px;
    display: block !important;
    margin-bottom:60px;
    
}
.message {
    max-width:900px;
    margin:100px auto 0 auto;
}
.message p {
    text-align: center;
    line-height:250%;
    color:#aaa;
    margin:0 !important;
    font-size:18px !important;
}

/*------------------------------ service ----------*/
#service {
    background:url("img/parts/bg/shikkui.jpg") 50% 50% no-repeat;
    background-size:cover;
}
#service p.ctr {
    text-align: center;
}
.bx-service {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    width:80% !important;
    margin:0 auto;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.bx-service:after {
    position: absolute;
    content:'';
    right:0;
    bottom:0;
    width:100%;
    border-left:1px solid #efefef !important;
}
.sv {
    position: relative;
    overflow: hidden;
    width:32%;
    margin-bottom:2%;
    background:#fff;
    /*border-radius:15px;*/
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.sv img {
    width:100%;
    height: auto;
}
.sv dl {
    margin:7% 5%;
}
.sv dl div dt {
    font-family: "Noto Serif JP", serif;
    font-size:20px;
    font-weight:700;
    margin-bottom:20px;
}
.sv dl div dd {
    font-size:16px;
    margin-bottom:20px;
    line-height:180%;
    color:#999;
}

@media only screen and (max-width:1500px) {
    .bx-service {
        width:95% !important;
    }
}
@media only screen and (max-width:1200px) {
    .bx-service {
        width:90% !important;
    }
    .sv {
        width:48.5%;
        margin-bottom:3%;
    }
    .sv dl div dt {
        font-size:20px;
    }
    .sv dl div dd {
        font-size:14px;
    }
}

/*------------------------------ gallery ----------*/
#gallery {}

/*---------- gallery slider ----------*/
.swiper-gallery {
    position: relative;
    overflow: hidden;
    padding-bottom:2%;
}
.swiper-gallery .swiper-slide {
    /*
    border:20px solid #fff;
    box-sizing:border-box;
    border-radius:10px;
    box-shadow: 0 0 10px rgba(0,0,0,0.10);
    */
}
.swiper-gallery .swiper-slide span {
    position: absolute;
    width:102%;
    font-size:20px;
    bottom:-1px;
    left:-1%;
    display: block;
    text-align: center;
    line-height: 70px;
    background:#F2F4F7;
    /*background:#fff;*/
}
.swiper-gallery img {
    width:100%;
    height: auto;
}
.swiper-gallery img:hover {
    opacity: 1 !important;
}

@media only screen and (max-width:1100px) {
    /*
    .swiper-gallery .swiper-slide {
        border:15px solid #fff;
    }
    */
    .swiper-gallery .swiper-slide span {
        font-size:18px;
    }
}

/*------------------------------ store information ----------*/
#store-info {
    position: relative;
    padding:450px 0 10% 0 !important;
    background:url("img/parts/bg/shikkui.jpg") 0 0 no-repeat;
    background-size:cover;
}
#store-info:before {
    position: absolute;
    content:'';
    top:0;
    left:0;
    width:100%;
    height:550px;
    background:url("img/parts/bg/studio.jpg") 50% 80% no-repeat;
    background-size:cover;
}
#store-info:after {
    position: absolute;
    content:'';
    top:0;
    left:0;
    width:100%;
    height: 550px;
    background:rgba(0,0,0,0.20);
    z-index: 0;
}
.bx-store-info {
    position: relative;
    max-width:1200px;
    margin:0 auto;
    padding:0 2%;
    z-index: 1;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items:flex-start;
            align-items:flex-start;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.bx-store-info div {
    width:45% !important;
}
.bx-store-info h1 {
    font-family: "Noto Serif JP", serif;
    margin:50px 0 30px 0;
    font-size:35px;
    font-weight:100;
    letter-spacing: 5px;
    text-align: left !important;
}
.bx-store-info p {
    font-size:20px;
    line-height:200%;
    margin-bottom:70px;
}
.bx-store-info p.more-btn {
    margin-left:0 !important;
    font-size:16px;
    width:100%;
    line-height:70px !important;
}
.storeImg {
    position: relative;
    width:50%;
    /*border:10px solid #fff;*/
    margin-top:50px;
    box-shadow: 10px 10px 0 rgba(0,0,0,0.20);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.storeImg img {
    width:100%;
    height:auto;
}
/*
.storeImg01,
.storeImg02 {
    position: absolute;
    width:28%;
    border:20px solid #fff;
    border-radius: 10px;
    box-shadow: 15px 15px 0 rgba(0,0,0,0.20);
    opacity: 0;
    transform: rotate(0);
    transition: 0.6s ease-in-out;
    z-index: 1;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.storeImg01 img,
.storeImg02 img {
    width:100%;
    height:auto;
}
.storeImg01 {
    position: absolute;
    top:250px;
    right: 5%;
}
.storeImg02 {
    position: absolute;
    top:750px;
    right:18%;
}
.storeImg01.pt1 {
  transform: translate(0, 0) rotate(5deg);
  opacity: 1;
}
.storeImg02.pt2 {
  transform: translate(0, 0) rotate(-8deg);
  opacity: 1;
}
*/
@media only screen and (max-width:1500px) {
    /*
    .storeImg01.pt1 {
        transform: translate(0, 0) rotate(-10deg);
        opacity: 1;
    }
    .storeImg02.pt2 {
        transform: translate(0, 0) rotate(8deg);
        opacity: 1;
    }

    #store-info {
        padding:650px 0 33% 5% !important;
    }
    #store-info h1 {
        margin: 50px 0 50px 0;
        font-size:40px;
        letter-spacing: 10px;
        text-align: left !important;
    }
    #store-info h1 span {
        margin-top:30px;
        font-size:26px;
    }
    #store-info p {
        font-size:18px;
        line-height:180%;
    }
    #store-info p.more-btn {
        margin-left:0 !important;
        font-size:16px;
        line-height:70px !important;
        width:40%;
    }
    
    .storeImg01,
    .storeImg02 {
        border:15px solid #fff;
    }
    .storeImg01 {
        position: absolute;
        top:350px;
        right: 15%;
        width:35%;
    }
    .storeImg02 {
        position: absolute;
        top:850px;
        right:5%;
        width:35%;
    }
    */
}
@media only screen and (max-width:1200px) {
    .bx-store-info {
        padding:0 5%;
    }
    .bx-store-info div {}
    .bx-store-info h1 {
        margin:20px 0 40px 0;
        font-size:30px;
        letter-spacing: 3px;
        text-align: left !important;
    }
    .bx-store-info h1 span {
        margin-top:30px;
        font-size:16px;
    }
    .bx-store-info p {
        font-size:18px;
        line-height:200%;
    }
    .bx-store-info p br {
        display: none;
    }
    .bx-store-info p.more-btn {
        margin-left:0 !important;
        font-size:16px;
        width:100%;
        line-height:70px !important;
    }
    .storeImg {
        position: relative;
        width:50%;
        border:10px solid #fff;
        border-radius: 10px;
        margin-top:50px;
        box-shadow: 10px 10px 0 rgba(0,0,0,0.20);
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    .storeImg img {
        width:100%;
        height:auto;
    }
    /*
    #store-info {
        padding:650px 0 40% 5% !important;
    }
    .storeImg01 {
        position: absolute;
        right:13%;
        top:400px;
        width:37%;
    }
    .storeImg02 {
        position: absolute;
        top:880px;
        width:37%;
    }
    */
}
@media only screen and (max-width:1100px) {
    /*
    .storeImg01 {
        position: absolute;
        top:480px;
        width:36%;
    }
    .storeImg02 {
        position: absolute;
        top:850px;
        width:36%;
    }
    */
}

/*-----------------------------------------------------------------------------------------
	2nd - basic
-----------------------------------------------------------------------------------------*/

article {
    position: relative;
    padding-top:32%;
    min-width:960px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
#wrapper {
    position: relative;
    width:100%;
    min-width:960px;
    background:#f2f4f7;
    /*padding:50px 0 0 0;*/
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
section {}
section h1 {
    font-family: "Noto Serif JP", serif;
    font-size:35px;
    font-weight:100;
    text-align: center;
    letter-spacing:2px;
    padding-top:150px;
    margin:-100px 0 80px 0;
}
section h1 span div {
    display: inline !important;
    opacity:0;
}

section h2 {
    font-size:30px;
    font-weight:700;
    text-align: center;
    color:#035d7e;
    margin-bottom:50px;
}
section p {
    font-size:20px;
    line-height:180%;
    margin-bottom:50px;
}
.ttlm {
    font-size:22px;
    font-weight:700;
    margin-bottom:80px;
    line-height: 200%;
    text-align: center;
}
.inner {
    position: relative;
    padding: 100px 0;
    /*max-width:1200px;*/
    margin:0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

/*------------------------------ more btn ----------*/
.more-btn {
    position: relative;
    margin:0 auto !important;
    width:600px;
    text-align: center;
    line-height:90px;
    /*
    border-radius:90px;
    background: linear-gradient(to right,  #8fd3de 0%,#5ca4c2 65%,#5c90c2 100%);
    */
    background:#d7b180;
    box-shadow: 0 7px 0 rgba(0,0,0,0.10);
}
.more-btn a {
    position: relative;
    display: block;
    color:#fff;
    font-size:20px;
    font-weight:700;
}
.more-btn a:after {
    position:absolute;
    content:'';
    top:50%;
    right:8%;
    width:40px;
    height:16px;
    margin-top:-8px;
    background:url("img/parts/ic_arrow.svg") 0 0 no-repeat;
    background-size:100% auto;
    -webkit-transition: 0.2s;
            transition: 0.2s;
}
.more-btn a:hover:after {
    right:6%;
    opacity: 1 !important;
}
@media only screen and (max-width:1500px) {
    .more-btn {
        margin:50px auto 0 auto !important;
        width:40%;
        line-height:70px;
        /*order-radius:70px;*/
    }
    .more-btn a {
        font-size:16px;
    }
    .more-btn a:after {
        width:20px;
        height:15px;
    }
}

/*---------- more reservation ------------------------------*/
.more-res {
    position: relative;
    margin:50px 0 0 0 !important;
    width:100%;
    text-align: center;
    line-height:70px !important;
    letter-spacing: 2px;
    /*
    border-radius:70px;
    background:#d7b180;background: linear-gradient(to right,  #8fd3de 0%,#5ca4c2 65%,#5c90c2 100%);
    */
    background:#d7b180;
    box-shadow: 0 7px 0 rgba(0,0,0,0.10);
}
.more-res a {
    position: relative;
    display: block;
    color:#fff;
    font-size:20px;
    font-weight:700;
}
.more-res a:after {
    position:absolute;
    content:'';
    top:50%;
    right:10%;
    width:30px;
    height:30px;
    margin-top:-15px;
    background:url("img/parts/ic_reservation.svg") 0 0 no-repeat;
    background-size:100% auto;
    -webkit-transition: 0.2s;
            transition: 0.2s;
}

/*------------------------------ more reservation ----------*/
.more-sv {
    position: relative;
    margin:50px auto !important;
    width:80%;
    text-align: center;
    line-height:60px;
    /*
    border-radius:60px;
    background: linear-gradient(to right, #8fd3de 0%,#5ca4c2 65%,#5c90c2 100%);
    */
    background:#d7b180;
    box-shadow: 0 7px 0 rgba(0,0,0,0.10);
}
.more-sv a {
    position: relative;
    display: block;
    color:#fff;
    font-size:16px;
    font-weight:700;
}
.more-sv a:after {
    position:absolute;
    content:'';
    top:50%;
    right:8%;
    width:25px;
    height:15px;
    margin-top:-5px;
    background:url("img/parts/ic_arrow.svg") 0 0 no-repeat;
    background-size:100% auto;
    -webkit-transition: 0.2s;
            transition: 0.2s;
}
.more-sv a:hover:after {
    right:6%;
    opacity: 1 !important;
}
@media only screen and (max-width:1500px) {
    .more-sv {
        margin:50px auto !important;
        width:80%;
    }
    .more-sv a {
        font-size:14px;
    }
    .more-sv a:after {
        width:20px;
        height:15px;
    }
}

/*-----------------------------------------------------------------------------------------
	2nd - Faq
-----------------------------------------------------------------------------------------*/

#faq {
    background:url("img/parts/bg/faq.jpg") 50% 0 no-repeat fixed;
    background-size:100% auto;
}
#faq section {
    text-align: center;
}
#faq section:first-child {
    padding-top:100px;
}

/*------------------------------ faq category ---------*/
.ttl-cat {
    font-weight:700;
    font-size:20px;
}
.list-category {
    max-width:1200px;
    margin:0 auto 100px auto;
    padding:0 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.list-category li {
    width:32%;
    margin:0 0 2% 0;
    border-radius: 5px;
    background:url("img/parts/ic_arrow_blue.svg") 95% 50% no-repeat #fff;
    background-size:30px auto;
    -webkit-transition: 0.3s;
            transition: 0.3s;
    -webkit-box-shadow: 5px 5px rgba(0,0,0,0.10);
            box-shadow: 5px 5px rgba(0,0,0,0.10);
}
.list-category li a {
    position: relative;
    display: block;
    line-height:100px;

}
.list-category li.set,
.list-category li:hover {
    background:url("img/parts/ic_arrow_wht.svg") 95% 50% no-repeat #63b0c1;
    background-size:30px auto;
}
.list-category li.set a,
.list-category li:hover a {
    color:#fff;
    opacity: 1 !important;
}
.list-category::after{
    content:"";
    display: block;
    width:32%;
}

/*------------------------------ faq list ---------*/
.bx-faq {
    background:#fff;
    padding:100px 10px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
.list-faq {
    margin:0 auto;
    max-width:1200px;
}
.list-faq div {
	position: relative;
	margin-bottom:25px;
	border-radius:5px;
	background:#fff;
    text-align:left;
	border:3px solid #C2CED3;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
.list-faq div dt {
	position: relative;
	font-weight: 700;
	line-height: 150%;
	padding: 30px 90px 25px 90px;
	font-size:20px;
	background:url("img/parts/ic_faq_q.svg") 23px 25px no-repeat;
    background-size:40px auto;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
.list-faq div dt:before {
	position: absolute;
	content:'';
	top:43px;
	right:20px;
	border-top: 3px solid #C2CED3;
	width:21px;
	-webkit-transition: 0.2s;
			transition: 0.2s;
}
.list-faq div dt:after {
	position: absolute;
	content:'';
	top:33px;
	right:30px;
	height: 20px;
	border-left: 3px solid #C2CED3;
}
.list-faq div dt:hover {
	cursor: pointer;
	opacity: 0.7;
}
.list-faq div dd {
	display: none;
	position: relative;
	line-height: 180%;
	padding: 30px 20px 40px 70px;
	margin:0 20px;
	font-size:18px;
    border-top:1px dashed #ccc;
	background:url("img/parts/ic_faq_a.svg") 12px 35px no-repeat;
    background-size:22px auto;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}

/*------------------------------ accordion toggle ----------*/
.list-faq div.sel dt:before {
	border-top: 3px solid #63b0c1;
}
.list-faq div.sel dt:after {
	display: none;
}
.sel {
	border:3px solid #63b0c1 !important;
	-webkit-box-shadow: 5px 5px 10px rgba(0,0,0,0.10);
			box-shadow: 5px 5px 10px rgba(0,0,0,0.10);
}

/*-----------------------------------------------------------------------------------------
	2nd - Store
-----------------------------------------------------------------------------------------*/

/*------------------------------ information ----------*/
#store {
    background:url("img/parts/bg/faq.jpg") 50% 0 no-repeat fixed;
    background-size:100% auto;
}
#staff .inner {
    margin-bottom:0 !important;
    padding-bottom:0 !important;
}
.imgStore {
    width:85%;
    height:auto;
    margin:0 auto 100px auto;
    display: block;
}
.bx-staff {
    position: relative;
    background:#fff;
    padding:0 7.5% 10% 5%;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
.bx-staff h2 {
    position: relative;
    font-family: "Noto Serif JP", serif;
    font-size:40px;
    font-weight:700;
    text-align: left;
    line-height: 200%;
    top:-200px !important;
    margin-bottom:-280px;
    color:#333;
    width:65%;
    background:#fff;
    padding:50px;
    z-index: 1;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}

.staff-voice {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
            align-items: flex-start;
    -webkit-justify-content: space-between;
            justify-content: space-between;

}
.staff-voice div.bx-voice {
    width:50%;
    padding:150px 50px 0 50px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
    -webkit-transition:0.5s;
            transition:0.5s;
}
.staff-voice div.bx-voice p {
    font-size:26px;
    margin-bottom:30px;
}
.staff-voice div.bx-voice h3 {
    font-size:20px;
    font-weight:700;
    color:#4890a0;
    margin-bottom:30px;
}

.list-staff div {
    padding:1% 0;
    font-size:20px;
    font-style:italic;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
            align-items: flex-start;
}
.list-staff div dt {
    margin-right:5%;
}
.staff-voice img {
    position:absolute;
    top:0;
    right:7%;
    width:35%;
    height: auto;
}

@media only screen and (max-width:1700px) {
    .bx-staff h2 {
        width:70%;
        font-size:40px;
    }
    .staff-voice div.bx-voice {
        width:55%;
        padding:100px 100px 0 50px;
    }
}
@media only screen and (max-width:1550px) {
    .bx-staff h2 {
        font-size:35px;
    }
    .staff-voice div.bx-voice p {
        font-size:20px;
        margin-bottom:30px;
    }
}
@media only screen and (max-width:1400px) {
    .bx-staff {
        padding:0 1% 10% 5%;
    }
    .bx-staff h2 {
        font-size:30px;
    }
    .staff-voice div {
        width:60%;
        padding:100px 50px 0 50px;
    }
    .staff-voice div.bx-voice p {
        font-size:18px;
        margin-bottom:30px;
    }
    .staff-voice h3 {
        font-size:18px;
        font-weight:700;
        color:#4890a0;
        margin-bottom:20px;
    }

    .list-staff div {
        padding:2px 0 !important;
        font-size:16px;
    }
    .list-staff div dt {
        margin-right:4%;
    }
}
@media only screen and (max-width:1250px) {
    .bx-staff h2 {
        font-size:27px;
    }
}
@media only screen and (max-width:1100px) {
    .bx-staff h2 {
        font-size:23px;
    }
    .staff-voice div p {
        font-size:16px;
        margin-bottom:20px;
    }
}

/*------------------------------ map ----------*/
#map {}
#map iframe {
    width:100%;
    height:750px;
}

.bx-store {
    position: relative;
    display: -webkit-flex;
    display: flex;
    padding:50px;
    background:#fff;
    margin:0 0 -100px 8%;
    top:-150px;
    -webkit-align-items: flex-start;
            align-items: flex-start;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.bx-store img {
    width:15%;
    height:auto;
    -webkit-transition:0.5s;
            transition:0.5s;
}
.bx-store div {
    margin-left:5%;
    padding:2% 2% 2% 5%;
    border-left:1px solid #ccc;
}
.bx-store div h2 {
    font-size:20px;
    font-weight:700;
    color:#333;
    text-align: left;
    margin-bottom:5%;
}
.bx-store div p {
    font-size:16px;
    margin-bottom:2%;
}
.bx-store div dl div {
    margin-left:0;
    padding:0;
    border-left:none;
    display: -webkit-flex;
    display: flex;
    
}
.bx-store div dl div dt {
    width:10%;
    margin-right: 4%;
}

@media only screen and (max-width:1700px) {
    .bx-store img {
        width:20%;
        height:auto;
    }
}
@media only screen and (max-width:1400px) {
    .bx-store div h2 {
        font-size:24px;
        line-height: 150%;
    }
    .bx-store div h2 br {
        display: block;
    }
    .bx-store img {
        width:25%;
        height:auto;
    }
    .bx-store div dl div dt {
        width:23%;
        margin-right: 2%;
    }
}
@media only screen and (max-width:1200px) {
    .bx-store {
        position: relative;
        display: -webkit-flex;
        display: flex;
        padding:50px;
        background:#fff;
        margin:0 5% -50px 5%;
        top:-150px;
        -webkit-align-items: flex-start;
                align-items: flex-start;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    .bx-store img {
        width:40%;
        height:auto;
    }
    .bx-store div p {
        font-size:14px;
    }
    .bx-store div dl div dt,
    .bx-store div dl div dd {
        font-size:14px;
    }
}

/*-----------------------------------------------------------------------------------------
	2nd - Inquiry
    2nd - Reservation
-----------------------------------------------------------------------------------------*/

#inquiry {
    background:url("img/parts/bg/inquiry.jpg") 50% 0 no-repeat fixed;
    background-size:100% auto;
}
#inquiry .tx-c {
    text-align: center;
    margin-bottom:80px;
    line-height:200%;
}
#inquiry .tx-c span {
    display: inline;
}
@media only screen and (max-width:1200px) {
    #inquiry .tx-c {
        font-size:18px;
        margin-bottom:50px;
    }
    #inquiry .tx-c span {
        display: block;
    }
}

/*------------------------------ form text ----------*/
.bx-form {
    background:#fff;
    margin:0 auto;
    padding:0 4%;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
.mailForm {
    max-width:1200px;
    margin:0 auto;
}
.mailForm .tx-form {
    text-align: center;
    font-weight:700;
    font-size:20px;
}
.mailForm p {
    font-size:18px;
}
.mailForm p a {
    color:#4890a0;
    text-decoration: underline;
}

/*------------------------------ Form common ----------*/
.attention {
	position: relative;
	display:block;
	color:#e50012;
	padding-left:20px;
	font-size: 14px;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
.attention:before {
	position: absolute;
	content:'※';
	top:1px;
	left:0;
}

.mailForm div {
	border-bottom:1px solid #efefef;
	padding:20px 10px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items:center;
			align-items:center;	
}
.mailForm div dt {
	position: relative;
	padding:0 0 0 70px;
	width:30%;
	font-weight:700;
}
.mailForm div dd {
	width:70%;
}
.mailForm div dt,
.mailForm div dd {
	font-size:16px;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.mailForm div dd input[type="text"],
.mailForm div dd input[type="email"],
.mailForm div dd input[type="number"],
.mailForm div dd input[type="date"],
.mailForm div dd input[type="tel"] {
	width:100%;
	height: 50px;
	line-height: 50px;
	padding:0 10px;
	display: inline-block;
	background:#fff;
    border:1px solid #859093;
    border-radius:5px;
	font-size: 16px;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.mailForm div dd input[type="text"].zip {
	width:20%;
	padding:0 10px;
	display: inline-block;
    margin-bottom:15px;
}
.mailForm div dd select {
	width:40%;
	height: 50px;
	line-height: 50px;
	padding:0 10px;
	display: inline-block;
	background:#fff;
	font-size: 16px;
	border:1px solid #ccc;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.mailForm div dd label {
	line-height:35px;
    display: -webkit-flex;
			display: flex;
	-webkit-align-items: center;
			align-items: center;
}
.mailForm div dd label:hover {
	cursor: pointer;
}
.mailForm div dd textarea {
	display: block;
	width:100%;
	min-height: 200px;
	padding:10px;
	background:#fff;
    border:1px solid #859093;
    border-radius:5px;
	font-size: 16px;
    line-height:150%;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.mailForm div dd img {
	margin:15px 0;
}
.wpcf7-captchar {
	width:40% !important;
}
.h:before {
	position: absolute;
	content:'必 須';
	top:3px;
	left:0;
	margin:0;
	color:#fff;
	width:55px;
	font-size:12px;
	background:#002f56;
	border-radius:3px;
	text-align: center;
}
.n:before {
	position: absolute;
	content:'任 意';
	top:3px;
	left:0;
	margin:0;
	color:#fff;
	width:55px;
	font-size:12px;
	background:#b2b2b2;
	border-radius:3px;
	text-align: center;
}
.error {
	display: block;
	margin:10px 0 0 0;
	color:#ff0000;
}
.bx-send {
    position: relative;
	padding:20px 0 !important;
	text-align:center;
    margin:0 auto;
    border-bottom:0 !important;
}
.bx-send input[type="submit"] {
	display: block;
    border:none;
	background:#002f56;
	color:#fff;
	width:500px;
	height:70px;
	line-height:70px;
    border-radius: 70px;
	font-size:16px;
	margin:30px auto 0 auto;
    box-shadow: 0 7px 0 rgba(0,0,0,0.10);
	-webkit-transition:0.3s;
			transition:0.3s;
}
.bx-send input[type="submit"]:hover {
	background:#8fd3de;
	cursor: pointer;
}
.bx-send p {
	margin:0 auto !important;
    border:none !important;
}
.error-entry {
	border:1px solid #c1272d;
	padding:4%;
	text-align: center;
	color:#c1272d;
	margin-bottom: 50px;
	background:rgba(255,77,1,0.10);
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
.wpcf7-list-item {
	display: block;
}
.wpcf7-response-output {
    text-align: center;
    background:#fff;
    font-size:12px !important;
    padding:20px 10px !important;
}
.err {
	display: block !important;
	margin:10px 0 0 0;
	color:#ff0000;
    font-size:16px;
    font-weight:700;
}
#child label {
    margin-right:10% !important;
}
.ttl-form {
    text-align: center;
}


/*------------------------------ 確認画面 ----------*/
#mail_confirm h2 {
    text-align: left;
    font-size:26px;
    margin:0 0 2% 0;
    padding:2%;
    background:#efefef;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;  
}
dl.confirm {
    margin:0 0 4% 0 !important;
}
dl.confirm div {
    padding:2% 1%;
    border-bottom:1px solid #efefef;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center !important;
            align-items: center !important;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
dl.confirm div:last-child {
    border-bottom:0 !important;
}
dl.confirm div dt {
    width:30%;
    font-size:18px;
    color:#000;
    background:none;
    margin:0;
    padding:0 0 0 80px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
dl.confirm div dt.h:before,
dl.confirm div dt.n:before {
    top:0 !important;
    left:0 !important;
}
dl.confirm div dd {
    width:68%;
    margin:0;
    padding:0;
    display: block !important;
}
dl.confirm div dd p,
dl.confirm div dd ul {
    margin-bottom:2%;
}

.complete h1 {
    font-family: 'Noto Sans JP', sans-serif;
}
.complete p {
    text-align: center;
}

/*------------------------------ privacy policy ----------*/
#bx-privacy {
    position: relative;
    background:#fff;
    border:1px solid #859093;
    border-radius:10px;
    padding:40px 20px;
    margin:120px auto 80px auto;
    display: block;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#bx-privacy h2 {
	font-family: 'Noto Sans JP', sans-serif;
    text-align: center;
    font-size:18px;
    font-weight:700;
    margin:40px 0;
    color:#035d7e;
}
#bx-privacy h3 {
    font-size:14px;
    font-weight:700;
}
#bx-privacy p {
    font-size:14px;
    margin-bottom:20px;
}
#bx-privacy ul {
    margin-bottom:20px;
}
#bx-privacy ul li {
    font-size:14px;
    list-style:disc;
    margin-left:20px;
}
#bx-privacy div {
    display: block;
    position: relative;
    height: 350px;
    overflow-x:hidden;
    border:none !important;
    padding:0 40px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}

/*------------------------------ agree ----------*/
#agree {
    display: block;
    text-align: center;
    width:330px;
    margin: 0 auto 80px auto;
    font-size:22px;
    border-bottom:none !important;
}
#agree input[type="checkbox"],
#agree input[type="radio"] {
    border:1px solid #ccc;
    margin-right:20px;
    -webkit-transform: scale(2.5, 2.5);
            transform: scale(2.5, 2.5);
}
.screen-reader-response ul li {
    margin:10px 0 !important;
    font-size:12px !important;
}

/*-----------------------------------------------------------------------------------------
    2nd - Reservation only
-----------------------------------------------------------------------------------------*/
#reservation {
    padding-top:0;
    background:url("img/parts/bg/reservation.jpg") 50% 0 no-repeat fixed;
    background-size:100% auto;
}
.bx-reservation {
    background:#fff;
    border-radius: 20px;
    padding:40px 60px;
    margin:0 auto 80px auto;
    max-width:960px;
    -webkit-transition:0.5s;
            transition:0.5s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.bx-reservation h2 {
    text-align: center;
    font-size: 20px !important;
    margin-bottom:40px;
}
.bx-reservation p {
    font-size:18px;
    margin-bottom:40px;
}
.bx-reservation ul {
    margin-left:20px;
}
.bx-reservation ul li {
    list-style: disc;
    margin-bottom:5px;
    font-size:18px;
}
.bx-reservation ul li a {
    text-decoration: underline;
    color:#4890a0;
}
.resForm #photoTypeSub {
    position: relative;
    overflow: hidden;
    margin-top:20px;
    display: block;
    border-radius:10px !important;
    width:100%;
}
.resForm #photoTypeSub p {
    position: relative;
    padding-left:70px;
}
.resForm #photoTypeSub p.h-s:before {
	position: absolute;
	top:0;
	left:0px;
	margin:0;
	width:55px;
	font-size:12px;
	border-radius:3px;
	text-align: center;
}
.resForm #photoTypeSub p.h-s:before {
	content:'必 須';
	color:#fff;
	background:#002f56;
}
.resForm #photoTypeSub p.h-s br {
    display: none;
}
.resForm #wrap-wedding,
.resForm #wrap-babykids {
    width:100% !important;
    display: none;/**/
    background:#efefef;
    padding:20px 30px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.resForm #wrap-wedding p,
.resForm #wrap-babykids p {
    margin-bottom:0 !important;
}
.resForm div dd #wrap-wedding div,
.resForm div dd #wrap-babykids div {
    width:100%;
    padding:0;
}
.resForm div dd #wrap-wedding div label,
.resForm div dd #wrap-babykids div label {
    width:33% !important;
    display: inline-block;
}
#formOverView {
    margin-top:20px;
    opacity: 0;
    display: none;/**/
    transition: 0.5s;
}
#view_select {
    display: none;
    transition: 0.5s;
}
.view {
    margin-top:0;
    opacity:1 !important;
    display: block;
    transition: 0.5s;
}

@media only screen and (max-width:1400px) {
    .bx-reservation {
        max-width:90%;
        padding:8% 4%;
    }
}

/*------------------------------ table ----------*/
.txt-web {
    text-align: center;
    font-weight:700;
    font-size:28px !important;
    margin:0 auto 2% auto !important;
}
.yyyy_mm {
    text-align: center;
    font-weight:700;
    font-size:20px !important;
    margin:0 auto 2% auto !important;
}
.table-reservation {
    position: relative;
    border-spacing: 1px;
    width:100% !important;
    margin:0 auto 30px auto;
}
.table-reservation caption {
    margin-bottom:30px;
    font-size:22px;
    font-weight:700;
}
.table-reservation th {
    font-weight:700 !important;
}
.table-reservation th,
.table-reservation td {
    font-size:14px !important;
}
.table-reservation td {
    padding:10px 0 10px 0;
    width:12.5%;
    line-height:120%;
    vertical-align: middle;
    text-align: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.day {
    /*background:#8fd3de !important;*/
    background:#00C3E3 !important;
    line-height:130%;
    color:#fff;
}
.no_day {
    background:#ccc !important;
    line-height:130%;
    color:#fff;
}
.time {
    background:#52C37F;
    color:#fff;
}
.in_time {
    background:rgba(82,195,127,0.10);
    font-size:16px;

}
.res {
    background:#f9f9f9;
    font-weight:700;
    font-size:16px;
}

/*------------------------------ week ----------*/
.select_week {
	display: -webkit-flex;
	display: flex;
	border-bottom: 0 !important;
	-webkit-justify-content: center;
			justify-content: center;
}
.select_week p {
	padding:0 15px;
	line-height:100%;
}
.select_week p.last_week {
	border-right:1px solid #000;
}
.select_week a {
	color:#002f56;
	text-decoration: underline;
}

@media only screen and (max-width:1400px) {
    .table-reservation {
        width:100% !important;
    }
}

/*------------------------------ step list ----------*/
.list-step {
    position: relative;
    display:-webkiti-flex;
    display:flex;
    max-width:700px;
    margin:40px auto 80px auto;
    -webkiti-justify-content: space-between;
            justify-content: space-between;
}
.list-step:before {
    position: absolute;
    content:'';
    top:50%;
    left:10%;
    width:80%;
    border-bottom:10px solid #e6e6e6;
}
.list-step li {
    position: relative;
    width:140px;
}
.list-step li.step {
    width:180px;
}
.list-step li img {
    width:100%;
    height:auto;
}
.list-step li.step img {
    position: absolute;
    width:100%;
    height:auto;
    top:50%;
    left:50%;
    transform: translate(-50%, -50%);
}

/*------------------------------ midashi ----------*/
.fx-res {
    margin:0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.fx-res div {
    width:32%;
    padding:30px !important;
    border-radius:5px;
    background:#f9f9f9;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.fx-res div p {
    margin-bottom:5px;
    font-weight:700;
    font-size:16px;
}

/*------------------------------ resForm common ----------*/
.resForm {
    max-width:1200px;
    margin:0 auto;
}
.resForm div {
	padding:20px 0;

}
.resForm div dt {
    position: relative;
    padding:20px 20px 20px 90px;
    margin-bottom:40px;
    background:#63b0c1;
    color:#fff;
    font-size:26px;
    font-weight:700;
    border-radius:5px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.resForm div dd {
	width:100%;
    padding:0 10px;
    font-size:18px;
	display: -webkit-flex;
	display: flex;
    -webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-align-items:center;
			align-items:center;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
.resForm div dd input[type="text"],
.resForm div dd input[type="email"],
.resForm div dd input[type="number"],
.resForm div dd input[type="date"],
.resForm div dd input[type="tel"] {
	width:100%;
	height: 50px;
	line-height: 50px;
	padding:0 10px;
	display: inline-block;
	background:#fff;
    border:1px solid #859093;
    border-radius:5px;
	font-size: 16px;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.resForm div dd.visit input[type="number"] {
	width:40%;
	padding:0 10px;
	display: inline-block;
    font-size:18px;
    text-align: center;
}
.resForm div dd.telephone input[type="text"] {
	width:50%;
	padding:0 10px;
	display: inline-block;
}
.resForm div dd select {
	width:100%;
	height: 50px;
	line-height: 50px;
	padding:0 10px;
    margin-top:15px;
	display: inline-block;
	background:#fff;
	font-size: 16px;
	border:1px solid #859093;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.resForm div dd label {
	line-height:50px;
    width:33%;
    display: -webkit-flex;
			display: flex;
	-webkit-align-items: center;
			align-items: center;
}
.resForm div dd label:hover {
	cursor: pointer;
}
.resForm div dd textarea {
	display: block;
	width:100%;
	min-height: 200px;
	padding:10px;
	background:#fff;
    border:1px solid #859093;
    border-radius:5px;
	font-size: 16px;
    line-height:150%;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.resForm div dd img {
	margin:15px 0;
}
.resForm .h:before,
.resForm .n:before {
	position: absolute;
	top:20px;
	left:15px;
	margin:0;
	width:55px;
	font-size:12px;
	border-radius:3px;
	text-align: center;
}
.resForm .h:before {
	content:'必 須';
	color:#fff;
	background:#002f56;
}
.resForm .n:before {
	content:'任 意';
	color:#fff;
	background:#b2b2b2;
}
@media only screen and (max-width:1400px) {
    .resForm div dd {
        font-size:14px;
        line-height:130%;
    }
}

/*------------------------------ resForm radio checkbox ----------*/
.resForm  input[type="radio"],
.resForm  input[type="checkbox"] {
    position: relative;
    right: 0;
    bottom: 0;
    left: 0;
    top:0px !important;
    height: 30px;
    width: 30px;
    vertical-align: -100%;
    transition:all .15s ease-out 0s;
    cursor: pointer;
    display: inline-block;
    margin: 0 10px 0 0;
    outline: none;
    border-radius: 10%;
	opacity:1 !important;
	-webkit-appearance: none;
    		appearance: none;
}
.resForm  input[type="radio"] {
    border-radius: 50%;
}
.resForm  input[type="radio"]:checked:before,
.resForm  input[type="checkbox"]:checked:before {
    transform: scale(0.5);
}
.resForm input[type="radio"]:before {
    content: '';
	margin:-4px 0 0 -4px;
    width: 32px;
    height: 32px;
	display: block;
    border-radius: 50%;
    transform: scale(0);
    -webkit-transition: 0.2s;
			transition: 0.2s;
}
.resForm input[type="checkbox"]:before {
    content: '';
	margin:-4px 0 0 -4px;
    width: 32px;
    height: 32px;
	display: block;
    transform: scale(0);
    -webkit-transition: 0.2s;
			transition: 0.2s;
}
.resForm input[type="radio"],
.resForm input[type="checkbox"] {
    border: 3px solid #999;
	background:#fff;
}
.resForm input[type="radio"]:checked:before,
.resForm input[type="checkbox"]:checked:before {
    background: #555;
}


/*------------------------------  ----------*/
.area-confirm {
    padding-top:0 !important;
}

/*-----------------------------------------------------------------------------------------
    2nd - studio
-----------------------------------------------------------------------------------------*/

#studio_plan {
    background:url("img/parts/bg/studio.jpg") 50% 0 no-repeat fixed;
    background-size:100% auto;
}

/*------------------------------ photo studio ----------*/
#photo-studio {
    background:#fff;
}
#photo-studio img {
    display: block;
    max-width:1200px;
    width:100%;
    height:auto;
    margin:0 auto;
}

/*------------------------------ photo kind ----------*/
#photograph {}
#photograph p {
    text-align: center;
    font-size:20px;
    line-height: 200%;
}
.list-PhotoType {
    margin:0 auto;
    width:80%;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.list-PhotoType::after{
  content:"";
  display: block;
  width:33%;
}
.list-PhotoType li {
    position: relative;
    overflow: hidden;
    width:33%;
    margin-bottom:0.5%;
}
.list-PhotoType li span {
    position: absolute;
    right:0;
    bottom:10%;
    display: block;
    background:#fff;
    line-height:50px;
    text-align: center;
    width:200px;
    color:#30484C;
    letter-spacing:2px;
    font-size:18px;
    font-style: italic;
    font-weight:700;
}
.list-PhotoType li img {
    width:100%;
    height:auto;
}

@media only screen and (max-width:1200px) {
    #photo-type p {
        font-size:16px;
    }
    .list-PhotoType {
        margin:0 auto;
        width:99%;
    }
    .list-PhotoType li span {
        width:50%;
        font-size:15px;
        letter-spacing:1px;
    }
}

/*------------------------------ photo plan ----------*/
#photoplan {
    background:#fff;
}
#photoplan img {
    max-width:1200px;
    height:auto;
}
.list-plan {
    margin:0 auto;
    width:80%;
    display: -webkit-flex;
    display: flex;
    -webkit-transition: 0.5s;
            transition: 0.5s;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.list-plan li {
    position: relative;
    width:50%;
    background:#fff;
    padding-bottom:120px;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
.list-plan li:nth-child(2n-1):after {
    position:absolute;
    content:'';
    top:0;
    right:0;
    border-left:1px solid #eee;
    height: 100%;
}
.list-plan li img {
    width:100%;
    height: auto;
}
.list-plan li dl {
    margin:5%;
}
.list-plan li p.more-btn {
    width:50% !important;
    line-height:60px !important;
}
.list-plan li p.more-btn a {
    font-size:16px !important;
}
.list-plan li dl div dt {
    font-size: 32px;
    font-weight:700;
    color:#22373A;
    margin-bottom:30px;
}
.list-plan li dl div dd strong {
    display: block;
    font-weight:700;
}
.list-plan li dl div dd {
    font-size: 20px;
    line-height: 180%;
}
.list-plan li dl div dd.b-ex {
    color:#909090;
    font-size:18px;
    min-height:120px;
    margin:50px 0 0 0;
}
.list-plan li dl div dd.b-ex span {
    position: relative;
    padding-left:20px;
    margin-right: 40px;
    display: inline-block;
}
.list-plan li dl div dd.b-ex span:before {
    position: absolute;
    content:'';
    top:13px;
    left:2px;
    width:10px;
    height:10px;
    border-radius:50%;
    background:#909090;
}
.list-plan li dl div dt.option:after {
    content: '';
    display: inline-block;
    width: 120px;
    height: 27px;
    background:url("img/parts/ic_option.svg") 0 0 no-repeat;
    background-size: 120px auto;
    margin-left:30px;
}
.list-plan li:nth-last-child(-n+3) {
    width:33.33333333%;
    padding-bottom:40px;
}
.list-plan li:nth-last-child(-n+3) dl div dt {
    font-size:24px;
    margin-bottom:25px;
}
.list-plan li:nth-last-child(-n+3) dl div dd {
    font-size:16px;

}
.list-plan li:nth-last-child(-n+3) dl div dd.b-ex {
    font-size:14px;
    min-height:auto;
    margin:30px 0 0 0;
}
.list-plan li:nth-last-child(-n+3) dl div dd.b-ex span {
    padding-left:20px;
    margin-right: 20px !important;
}
.list-plan li:nth-last-child(-n+3) dl div dd.b-ex span:before {
    top:9px;
    left:4px;
    width:7px;
    height:7px;
}
.list-plan li:nth-last-child(-n+3):after {
    position:absolute;
    content:'';
    top:0;
    right:0;
    border-left:1px solid #eee;
    height: 100%;
}
@media only screen and (max-width:1500px) {
    .list-plan {
        width:99%;
    }
}
@media only screen and (max-width:1200px) {
    .list-plan {
        width:99%;
    }
    .list-plan li {
        padding-bottom:120px;
    }
    .list-plan li dl {
        margin:4%;
    }
    .list-plan li p.more-btn {
        width:70% !important;
    }
    .list-plan li p.more-btn a {
        font-size:16px !important;
    }
    .list-plan li dl div dt {
        font-size: 28px;
        margin-bottom:20px;
    }
    .list-plan li dl div dd {
        font-size: 16px;
    }
    .list-plan li dl div dd.b-ex {
        color:#909090;
        font-size:15px;
        min-height:100px;
        margin:0;
    }
    .list-plan li dl div dd.b-ex span:before {
        position: absolute;
        content:'';
        top:13px;
        left:2px;
        width:10px;
        height:10px;
        border-radius:50%;
        background:#909090;
    }
    .list-plan li dl div dt.option:after {
        width: 90px;
        height: 30px;
        background:url("img/parts/ic_option.svg") 0 10px no-repeat;
        background-size: 90px auto;
        margin-left:20px;
    }

    .list-plan li:nth-last-child(-n+3) {
        width:50%;
        padding-bottom:40px;
        border-bottom:1px solid #efefef;
    }
    .list-plan li:nth-last-child(-n+3) dl div dt {
        font-size:20px;
        margin-bottom:25px;
    }
    .list-plan li:nth-last-child(-n+3) dl div dd {
        font-size:16px;
    }

    .list-plan li:nth-last-child(-n+3) dl div dd.b-ex {
        font-size:14px;
        min-height:auto;
        margin:30px 0 0 0;
    }
    .list-plan li:nth-last-child(-n+3) dl div dd.b-ex span {
        padding-left:20px;
        margin-right: 20px !important;
    }
    .list-plan li:nth-last-child(-n+3) dl div dd.b-ex span:before {
        top:9px;
        left:4px;
        width:7px;
        height:7px;
    }
    .list-plan li:nth-last-child(-n+3):after {
        position:absolute;
        content:'';
        top:0;
        right:0;
        border-left:1px solid #eee;
        height: 100%;
    }
}

/*-----------------------------------------------------------------------------------------
	2nd page - Costume
-----------------------------------------------------------------------------------------*/
#costume {
    background:url("img/parts/bg/faq.jpg") no-repeat fixed;
    background-size:100% auto;
    background-position: top 0;
    text-align: center;
}
ul.list-catalog {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    margin:0 auto;
    max-width: 80%
}
ul.list-catalog li {
    position: relative;
    width:23%;
    border:10px solid #fff;
    border-radius: 10px;
    margin:0 0 1% 0;
}
ul.list-catalog:after {
  content:"";
  display: block;
  width:23%;
}
ul.list-catalog li img {
    width:100%;
    height: auto;
}

/*-----------------------------------------------------------------------------------------
	2nd page - Photo-gallery
-----------------------------------------------------------------------------------------*/

#photo-gallery {
    background:url("img/parts/bg/faq.jpg") 50% 0 no-repeat fixed;
    background-size:100% auto;
    text-align: center;
    object-fit: cover;
}
#photo-gallery .grid {
    width:95% !important;
    margin:0 auto;
}
#photo-gallery .grid-item {
    width: 16%;
}
#photo-gallery .grid-item--width2 {
    width: 31.83555555%;

}
#photo-gallery .grid-item img {
    width:100%;
    height: auto;
    display: block;
    padding:5px;
    box-sizing: border-box;
}

/*-----------------------------------------------------------------------------------------
	2nd page - privacy
-----------------------------------------------------------------------------------------*/
#privacy-policy {
    background:url("img/parts/bg/faq.jpg") 50% 0 no-repeat fixed;
    background-size:100% auto;
    padding-top:0;
}
#privacy {
    max-width:900px;
    margin:0 auto;
    padding:0;
    text-align: left;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
#privacy h2 {
    font-size:20px;
    text-align:left;
    margin-bottom:20px;
}
#privacy p {
    font-size:16px;
    margin-bottom:20px;
    line-height:200%;
}
#privacy ul {
    margin:0 0 20px 20px;
}
#privacy ul li {
    list-style: disc;
}

/*-----------------------------------------------------------------------------------------
	SP
-----------------------------------------------------------------------------------------*/
@media only screen and (max-width:800px) {
    a {}
    a:focus {}
    a:active {}
    a:hover { opacity:1; }
    a:visit {}
    a {
        -webkit-transition: unset;;
                transition: unset;;
    }
    address {}
    b,strong {}
    em,i,b {}
    p {	margin-bottom: 4%;}
    ul,ol {}
    img {}
    table {}
    input[type="text"], 
    input[type="button"], 
    input[type="submit"], 
    textarea {}

    /*-----------------------------------------------------------------------------------------
        body
    -----------------------------------------------------------------------------------------*/
    body {}
    html {}
    html, body {
        min-width:100%;
    }
    main {}
    .dr_on {}
    .dr_off {}
    .over_hide {}

    /*------------------------------ scroll_up ----------*/
    .f-in {}
    .f-in.is-show {}

    /*-----------------------------------------------------------------------------------------
        header
    -----------------------------------------------------------------------------------------*/
    header {
        position:fixed;
        top:0 !important;
        left:0;
        min-width: 100%;
        padding:2% 2%;
        height:60px;
        background:rgba(255,255,255,1);
    }
    header #logo {
        width:115px;
        top:0;
        
    }
    header #logo img {}
    #header {}
    header.show {}
    header.hide {
        transform: translateY(0) !important;
    }
    header:hover {}

    /*------------------------------ Grobal Nav ----------*/
    #gnav ul {
        display: none !important;
    }
    #gnav ul li {}
    #gnav ul li:before {}
    #gnav ul li a,
    #gnav ul li div {}
    #gnav ul li:nth-last-child(-n+2):before,
    #gnav ul li ul li:before {}

    /*------------------------------ subMenu ----------*/
    #gnav ul li ul {}
    #gnav ul li ul li {}
    #gnav ul li:first-child ul {}
    #gnav ul li:first-child ul li {}
    #gnav ul li:hover ul li a {}
    #gnav ul li ul li a {}
    #gnav ul li ul li:hover a {}
    #gnav ul li ul li a:after {}
    #gnav ul li ul li:hover a:after {}
    #gnav ul li:hover ul li {}
    .head_view {}

    #gnav .ic {
        position: absolute;
        top:25%;
        right:130px;
        display: block !important;
        margin:0;
        z-index:1;
    }
    #gnav .ic img {}
    #gnav .ic ul {
        position: absolute;
        left:-130%;
        display: block !important;
    }

    /*------------------------------ bugger ----------*/
    #panel-btn {
        top:5px;
        right:5px;
        width:80px;
        max-width:80px;
        min-width:80px;
        height:80px;
    }
    #panel-btn:after {
        font-size:10px;
        bottom:10%;
        margin-left:-17px;
    }
    #panel-btn-icon {
        width: 32px;
        margin-left:-17px;
    }
    #panel-btn-icon:before {
        width: 32px;
        margin-top: -9px;
    }
    #panel-btn-icon:after {
        width: 17px;
        margin-top: 7px;
    }
    #panel-btn .close:before,
    #panel-btn .close:after {
        width:30px;
    }
    #panel-btn .close:before{}
    #panel-btn .close:after{}

    /*------------------------------ Menu Box ----------*/
    .bx-menu {}
    .bx-menu:before {}
    .bx-menu ul {
        margin:20% auto 0 auto;
        width:70%;
        height:70%;
    }
    .bx-menu ul li {
        font-size:16px;
    }
    .bx-menu ul li a {}
    .bx-menu ul li ul {}
    .bx-menu ul li ul li {
        font-size:14px !important;
        padding-left:25px;
    }
    .bx-menu ul li ul li:before {}
    .bx-menu ul li.ic {
        margin-top:3%;
    }

    /*-----------------------------------------------------------------------------------------
        box contact
    -----------------------------------------------------------------------------------------*/
    .bx-contact {
        padding:12% 0 8% 0;
    }
    .bx-contact .fx {
        max-width:90%;
        padding:8% 2%;
        text-align: center;
        margin:10% auto 0 auto;
        display:block;
        border-top:1px solid #ccc;
    }
    .bx-contact .fx p {
        font-size: 16px;
        font-weight: normal;
        margin:0;
    }
    .bx-contact .fx div {
        border-left:none;
        padding-left:0;
    }
    .bx-contact .fx div p {
        font-size:15px;
        padding-left:0;
    }
    .bx-contact .fx div p.tel {
        font-size: 40px !important;
        padding-left:8%;
        background:url("img/parts/ic_tel.svg") 20px 53% no-repeat;
        background-size:33px auto;
    }

    /*-----------------------------------------------------------------------------------------
        box reservation
    -----------------------------------------------------------------------------------------*/
    .bx-res {
        padding:15% 0;
    }
    .bx-res .bx-in-res {
        width:80%;
        border-radius:10px;
        padding:12% 8%;
        margin:0 auto;
        box-shadow: 10px 10px 0 rgba(0,0,0,0.20);
    }
    .bx-res .bx-in-res p {
        font-size:14px;
    }
    .bx-res .bx-in-res p.ttl-res {
        font-size:20px;
        font-weight:700;
        margin-bottom:6%;
    }
    .bx-res .bx-in-res p.ttl-res span {
        margin-left:30px;
        font-size:16px;
    }
    .bx-res .bx-in-res p.ttl-res span:before {
        left:-35px;
        width:40px;
    }
    .bx-res .bx-in-res p.more-res a {
        font-size:14px !important;
    }

    /*-----------------------------------------------------------------------------------------
        footer
    -----------------------------------------------------------------------------------------*/
    #footer {
        padding:8% 2% 0 2%;
        display:block;
    }
    #footer p.logo-f {
        width:30%;
        margin: 0 auto 8% auto;
    }
    #footer p.logo-f img {}
    #footer div {
        width:85%;
        margin:0 auto;
    }
    #footer dl div {
        width:100% !important;
    }

    #footer dl div dt {}
    #footer dl div dd {
        white-space: nowrap !important;
    }
    footer small {
        font-size:12px;
        line-height:60px;
    }
    
    /*------------------------------ pageUp ----------*/
	#pageUp {
        display: none !important;
        /*
		position: fixed;
		right:20px;
		bottom:90px;
		width:45px;
		height:45px;
		z-index: 10;
        border:2px solid #fff;
        */
	}
    /*
	#pageUp:after {
		position: absolute;
		content:'';
		top:17px;
		left:14px;
		width:10px;
		height:10px;
		border-top:2px solid #fff;
		border-right:2px solid #fff;
		-webkit-transform: rotate(-45deg);
				transform: rotate(-45deg);
	}
    */
	#pageUp:hover {}

    #pop-res {
        position: fixed;
        left:15%;
        bottom:1.5%;
        display: block;
        background:url("img/parts/ic_reservation.svg") 10% 50% no-repeat #043F6F;
        background-size:18px auto;
        width:70%;
        z-index: 10;
        text-align:center;
        border-radius: 50px;
        box-shadow: 0 5px 0 rgba(0,0,0,0.10);
        -webkit-transition: unset;
                transition: unset;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    #pop-res a {
        display: block;
        font-size:14px !important;
        font-weight:700;
        line-height:50px;
        padding:0;
        color:#fff;
    }

    /*---------- pop-res visit ----------*/
    .in {
        right:10px !important;
    }

    /*----------------------------------------------------------------------
        top page
     ---------------------------------------------------------------------*/
    /*------------------------------ slider ----------*/
    #slider {
        margin-top:60px;
        width: 100%;
        /*height: 90vh;*/
    }
    .swiper-slide {}
    .swiper-slide img {
        width: 100%;
        height: auto;
    }
    /*
    #catchcopy {
        font-size:26px;
    }
    #catchcopy span div {}
    */

    /*------------------------------ top box ----------*/
    #wrapper-tp {}
    #wrapper-tp section {
        padding:10% 0;
    }

    /*------------------------------ concept ----------*/
    #concept {
        padding: 10% 0 15% 0 !important;
    }
    #concept h1 {
        font-size:27px;
        color:#999;
        letter-spacing:0;
        /*font-family: "Nothing You Could Do", cursive;*/
    }
    .message {
        max-width:100%;
        margin:15% 0 0 0;
    }
    .message p {
        margin:0 auto !important;
        width:80%;
        line-height:200%;
        font-size:16px !important;
        text-align: left;
    }
    .message p br {
        display: none;
    }

    /*------------------------------ service ----------*/
    #service {}
    #service p.ctr {
        font-size:16px;
    }
    .bx-service {
        display:block;
        width:90% !important;
        margin:0 auto;
    }
    .bx-service:after {
        display: none;
    }
    .sv {
        position: relative;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
                align-items: center;
        width:100%;
        margin-bottom:4%;
        border-radius:5px;
        box-shadow: 5px 5px 0 rgba(0,0,0,0.05);
    }
    .sv img {
        width:40%;
        height: auto;
    }
    .sv dl {
        width:54%;
        margin:5% 5%;
    }
    .sv dl div dt {
        font-size:17px;
        margin-bottom:0;
    }
    .sv dl div dd {
        display: none;
    }

    /*------------------------------ gallery ----------*/
    #gallery {}

    /*---------- gallery slider ----------*/
    .swiper-gallery {}
    .swiper-gallery .swiper-slide {
        border-radius:5px;
        border:10px solid #fff;
    }
    .swiper-gallery .swiper-slide span {
        font-size:16px;
        line-height:50px;
    }
    .swiper-gallery img {
        width:100%;
        height: auto;
        margin-left:0 !important;
    }

    /*------------------------------ store information ----------*/
    #store-info {
        position: relative;
        padding:150px 0 15% 0 !important;
        background:url("img/parts/bg/shikkui.jpg") 0 0 no-repeat;
        background-size:cover;
    }
    #store-info:before {
        height:250px;
    }
    #store-info:after {
        height:250px;
    }
    .bx-store-info div {
        width:47% !important;
    }
    .bx-store-info h1 {
        margin:0 0 10% 5%;
        font-size:24px;
        letter-spacing: 5px;
        text-align: left !important;
    }
    .bx-store-info h1 span {
        margin-top:4%;
        font-size:20px;
    }
     .bx-store-info p {
        font-size:14px;
        line-height:200%;
        width:100%;
        margin-left:5%;
    }
    .bx-store-info p br {
        display: none;
    }
    .bx-store-info p.more-btn {
        margin:12% auto 0 5% !important;
        text-align: left;
        width:100% !important;
        font-size:12px;
        line-height:50px !important;
    }
    .bx-store-info p.more-btn a {
        font-size:12px;
        padding-left:10%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    .bx-store-info p.more-btn a:after {
        position:absolute;
        content:'';
        top:50%;
        right:8%;
        width:18px;
        height:10px;
        margin-top:-5px;
        -webkit-transition:unset;
                transition:unset;
    }
    .storeImg {
        margin-top:150px !important;
        width:25% !important;
        border:7px solid #fff;
        border-radius: 10px;
        box-shadow: 10px 10px 0 rgba(0,0,0,0.10);
    }
    .storeImg01 img,
    .storeImg02 img {}

    /*
    .storeImg01,
    .storeImg02 {
        width:33%;
        border:5px solid #fff;
        border-radius: 10px;
        box-shadow: 10px 10px 0 rgba(0,0,0,0.20);
    }
    .storeImg01 img,
    .storeImg02 img {}
    .storeImg01 {
        top:280px;
        right: 3%;
    }
    .storeImg02 {
        top:450px;
        right:7%;
    }
    .storeImg01.pt1 {
      transform: translate(0, 0) rotate(8deg);
    }
    .storeImg02.pt2 {
      transform: translate(0, 0) rotate(-10deg);
    }
    */
    
    /*-----------------------------------------------------------------------------------------
        2nd - basic
    -----------------------------------------------------------------------------------------*/

    article {
        margin-top:60px;
        padding-top:35%;
        min-width:100%;
    }
    #wrapper {
        width:100%;
        min-width:100%;
    }
    section {}
    section h1 {
        font-size:26px;
        margin-bottom:6%;
    }
    section h1 span {
        font-size:18px;
        margin-top:3%;
    }
    section h1 span div {}

    section h2 {
        font-size:20px;
        margin-bottom:6%;
    }
    section p {
        font-size:16px;
        margin-bottom:8%;
    }
    .ttlm {
        font-size:14px;
        font-weight:normal;
        margin:0 auto;
        line-height: 200%;
        text-align: center;
        width:90%;
    }
    .inner {
        padding: 10% 0;
    }

    /*------------------------------ more btn ----------*/
    .more-btn {
        width:70%;
        line-height:50px;
        border-radius:50px;
    }
    .more-btn a {
        font-size:14px;
    }
    .more-btn a:after {
        position:absolute;
        content:'';
        top:50%;
        right:8%;
        width:25px;
        height:12px;
        margin-top:-6px;

        -webkit-transition:unset;
                transition:unset;
    }
    .more-btn a:hover:after {
        right:8%;
    }

    /*---------- more reservation ------------------------------*/
    .more-res {
        position: relative;
        margin:10% 0 0 0 !important;
        width:100%;
        text-align: left;
        line-height:50px !important;
        border-radius:50px;
    }
    .more-res a {
        font-size:16px;
        padding-left:10%;
    }
    .more-res a:after {
        position:absolute;
        content:'';
        top:50%;
        right:10%;
        width:20px;
        height:20px;
        margin-top:-10px;
        -webkit-transition: unset;
                transition: unset;
    }

    /*------------------------------ more reservation ----------*/
    .more-sv {
        position:absolute;
        top:0;
        left:0;
        margin:0 !important;
        width:100%;
        line-height:auto;
        border-radius:0;
        background:none;
        box-shadow:none;
        height: 100%;
    }
    .more-sv a {
        display: block ;
        position: absolute;
        overflow:hidden;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        text-indent:100%;
        white-space:nowrap;
        background/*\**/: #fff\9;
        filter:alpha(opacity=0);
    }
    .more-sv a:after {
        display: none !important;
    }
    .more-sv a:hover:after {
        display: none !important;
    }

    /*-----------------------------------------------------------------------------------------
        2nd - Faq
    -----------------------------------------------------------------------------------------*/

    #faq {
        background:url("img/parts/bg/faq.jpg") 50% 0 no-repeat fixed;
        background-size:150% auto;
    }
    #faq section {}
    #faq section:first-child {
        padding-top:15%;
    }

    /*------------------------------ faq category ---------*/
    .ttl-cat {
        font-size:16px;
    }
    .list-category {
        max-width:100%;
        margin:5% auto 10% auto;
        padding:0 3%;
    }
    .list-category li {
        width:48%;
        margin:0 0 4% 0;
        background-size:20px auto !important;
        -webkit-transition: unset;
                transition: unset;
    }
    .list-category li a {
        line-height:60px !important;
        font-size:14px;
        text-align: left;
        padding-left:5%;
    }
    .list-category li.set {
        background-size:20px auto !important;
    }
    .list-category li:hover {
        background:url("img/parts/ic_arrow_blue.svg") 95% 50% no-repeat #fff;
        background-size:20px auto !important;
    }
    .list-category li:hover a {
        color:#333;
    }

    /*------------------------------ faq list ---------*/
    .bx-faq {
        padding:15% 3%;
    }
    .list-faq {
        max-width:100%;
    }
    .list-faq div {
	    border:2px solid #C2CED3;
        margin-bottom:4%;
    }
    .list-faq div dt {
        padding: 3% 45px;
        font-size:16px;
        background:url("img/parts/ic_faq_q.svg") 13px 16px no-repeat;
        background-size:20px auto;
    }
    .list-faq div dt:before {
        top:24px;
        right:14px;
        border-top: 2px solid #C2CED3;
        width:18px;
    }
    .list-faq div dt:after {
        top:16px;
        right:22px;
        height: 19px;
        border-left: 2px solid #C2CED3;
    }
    .list-faq div dt:hover {
        opacity: 1;
    }
    .list-faq div dd {
        line-height: 150%;
        padding: 4% 5% 4% 30px;
        margin:0 3%;
        font-size:15px;
        background:url("img/parts/ic_faq_a.svg") 2px 22px no-repeat;
        background-size:15px auto;
        -webkit-box-sizing:border-box;
                box-sizing:border-box;
    }

    /*------------------------------ accordion toggle ----------*/
    .list-faq div.sel dt:before {
        border-top: 2px solid #63b0c1;
    }
    .list-faq div.sel dt:after {}
    .sel {
        border:2px solid #63b0c1 !important;
    }

    /*-----------------------------------------------------------------------------------------
        2nd - Store
    -----------------------------------------------------------------------------------------*/

    /*------------------------------ information ----------*/
    #store {
        background:url("img/parts/bg/faq.jpg") 50% 0 no-repeat fixed;
        background-size:150% auto;
    }

    .imgStore {
        width:90%;
        margin:0 auto 5% auto;
    }
    #staff section h1 {
        margin-top:0 !important;
        padding-top:0 !important;
    }
    .bx-staff {
        padding:0 2.5% 30% 2%;
    }
    .bx-staff h2 {
        font-size:18px;
        line-height: 180%;
        top:-80px !important;
        margin-bottom:-80px;
        width:75%;
        padding:4%;
    }
    .bx-staff h2 br {
        display: none;
    }
    .staff-voice {
        display: block;
    }
    .staff-voice div.bx-voice {
        width:100%;
        padding:5% 5% 0 5%;
        -webkit-transition:unset;
                transition:unset;
    }
    .staff-voice div.bx-voice p {
        font-size:16px;
        margin-bottom:5%;
    }
    .staff-voice div.bx-voice h3 {
        font-size:18px;
        margin-bottom:2%;
    }
    .staff-voice img {
        position: absolute;
        width:37%;
        top:64%;
        right:3%;
        border:5px solid #fff;
        border-radius:5px;
        -webkit-box-shadow:10px 10px 0 rgba(0,0,0,0.10);
                box-shadow:10px 10px 0 rgba(0,0,0,0.10);
        -webkit-transform:rotate(3deg);
                transform:rotate(3deg);
    }
    .list-staff div {
        padding:0.2% 0;
        font-size:14px;
    }
    .list-staff div dt {
        margin-right:2%;
    }

    /*------------------------------ map ----------*/
    #map {}
    #map iframe {
        width:100%;
        height:450px;
    }
    .bx-store {
        display:block;
        padding:6%;
        margin:-80px auto 0 auto;
        top:0;
        width:90%;
    }
    .bx-store img {
        display: block;
        width:40%;
        height:auto;
        margin:0 auto 5% auto;
        -webkit-transition:unset;
                transition:unset;
    }
    .bx-store div {
        margin:0 auto;
        width:90%;
        padding:3%;
        border-left:none;
    }
    .bx-store div h2 {
        font-size:18px;
        margin:0 auto 4% auto;
        text-align: center;
    }
    .bx-store div p {
        font-size:16px;
        margin-bottom:2%;
    }
    .bx-store div dl div {
        width:100%;
    }
    .bx-store div dl div dt {
        width:30%;
        margin-right: 4%;
    }

    /*-----------------------------------------------------------------------------------------
        2nd - Inquiry
        2nd - Reservation
    -----------------------------------------------------------------------------------------*/

    #inquiry {
        background:url("img/parts/bg/inquiry.jpg") 50% 0 no-repeat fixed;
        background-size:150% auto;
    }
    #inquiry .tx-c {
        text-align:left;
        margin:0 auto 6% auto;
        line-height:200%;
        width:90%;
        font-size:16px;
    }
    #inquiry .tx-c span {
        display: inline;
    }

    /*------------------------------ form text ----------*/
    .bx-form {
        background:#fff;
        margin:0 auto;
        padding:0 4%;
        -webkit-box-sizing:border-box;
                box-sizing:border-box;
    }
    .mailForm {
        max-width:100%;
        margin:0;
    }
    .mailForm .tx-form {
        font-size:18px;
    }
    .mailForm p {
        font-size:14px;
    }
    .mailForm p a {}

    /*------------------------------ Form common ----------*/
    .attention {}
    .attention:before {}

    .mailForm div {
        padding:2% 0;
        display: block;
        border-bottom:0 !important;
    }
    .mailForm div dt {
        padding:4% 0 4% 70px;
        width:100%;
    }
    .mailForm div dd {
        width:100%;
    }
    .mailForm div dt,
    .mailForm div dd {}
    .mailForm div dd input[type="text"],
    .mailForm div dd input[type="email"],
    .mailForm div dd input[type="date"],
    .mailForm div dd input[type="tel"] {
        padding:0 2%;
        display: inline-block;
        border:1px solid #A3AFB3;
    }
    .mailForm div dd input[type="text"].zip {
        width:50%;
        padding:0 2%;
        margin-bottom:3%;
    }
    
    .mailForm div dd select {
        width:50%;
        height: 50px;
        line-height: 50px;
        padding:0 2%;
    }
    .mailForm div dd label {
        line-height:40px;
    }
    .mailForm div dd label:hover {}
    .mailForm div dd textarea {
        padding:2%;
        border:1px solid #A3AFB3;
        border-radius:5px;
    }
    .mailForm div dd img {
        margin:3% 0;
    }
    .wpcf7-captchar {
        width:40% !important;
    }
    .h:before {
        top:19px;
    }
    .n:before {
        top:19px;
    }
    .error {
        margin:2% 0 0 0;
    }
    .bx-send {
        padding:4% 0 !important;
    }
    .bx-send input[type="submit"] {
        width:80%;
        height:60px;
        line-height:60px;
        border-radius: 60px;
        margin:6% auto 0 auto;
    }
    .bx-send input[type="submit"]:hover {
        background:#002f56;
    }
    .bx-send p {}
    .error-entry {
        padding:4%;
        margin:0 auto 10% auto;
        width:90%;
        font-size:14px !important;
    }
    .wpcf7-list-item {}
    .wpcf7-response-output {
        padding:4% 2% !important;
    }

    /*------------------------------ privacy policy ----------*/
    #bx-privacy {
        border:3px solid #A3AFB3 !important;
        padding:2%;
        margin:10% auto 8% auto;
    }
    #bx-privacy h2 {
        font-size:16px;
        margin:5% 0;
    }
    #bx-privacy h3 {
    }
    #bx-privacy p {
        margin-bottom:4%;
    }
    #bx-privacy ul {
        margin-bottom:4%;
    }
    #bx-privacy ul li {}
    #bx-privacy div {
        height: 250px;
    }

    /*------------------------------ agree ----------*/
    #agree {
        width:90%;
        margin: 0 auto 8% auto;
        font-size:18px;
    }
    #agree input[type="checkbox"],
    #agree input[type="radio"] {
        border:1px solid #A3AFB3;
        margin-right:6%;
    }
    .screen-reader-response ul li {
        margin:2% 0 !important;
        font-size:12px !important;
    }

    /*-----------------------------------------------------------------------------------------
        2nd - Reservation only
    -----------------------------------------------------------------------------------------*/
    #reservation {
        background:none;
        background-size:150% auto;
    }
    .bx-reservation {
        border-radius: 10px;
        padding:8% 5%;
        margin:0 auto 8% auto;
        max-width:95%;
        -webkit-transition:unset;
                transition:unset;
    }
    .bx-reservation h2 {
        text-align: center;
        font-size: 18px !important;
        margin-bottom:5%;
    }
    .bx-reservation p {
        font-size:14px !important;
        margin-bottom:5%;
    }
    .bx-reservation ul {
        margin-left:20px;
    }
    .bx-reservation ul li {
        margin-bottom:0.5%;
        line-height:150%;
        font-size:14px !important;
    }
    .bx-reservation ul li a {}
    
    .resForm #photoTypeSub {
        margin-top:4%;
    }
    .resForm #photoTypeSub p {}
    .resForm #photoTypeSub p.h-s:before {}
    .resForm #photoTypeSub p.h-s:before {}
    .resForm #photoTypeSub p.h-s br {
        display: block !important;
    }
    .resForm #wrap-wedding,
    .resForm #wrap-babykids {
        padding:4%;
    }
    .resForm #wrap-wedding p,
    .resForm #wrap-babykids p {}
    .resForm div dd #wrap-wedding div,
    .resForm div dd #wrap-babykids div {}
    .resForm div dd #wrap-wedding div label,
    .resForm div dd #wrap-babykids div label {
    width:100% !important;
    display:block !important;
    }
    #formOverView {
        margin-top:4%;
    }
    #view_select {}
    .view {}

    /*------------------------------ table ----------*/
    .txt-web {
        font-size:26px !important;
    }
    .yyyy_mm {
        font-size:20px !important;
    }
    .table-reservation {
        border-spacing: 2px;
        width:100% !important;
        margin:0;
    }
    .table-reservation caption {
        margin-bottom:5%;
        font-size:18px;
    }
    .table-reservation th,
    .table-reservation td {
        padding:1% 0;
        width:12.5%;
        font-size:12px !important;
        line-height:150% !important;
    }
    .day {}
    .time {}
    .in_time {}
    .res {}

    /*------------------------------ week ----------*/
    .select_week {}
    .select_week p {
        padding:0 4%;
    }
    .select_week p.last_week {}
    .select_week a {}

    /*------------------------------ step list ----------*/
    .list-step {
        max-width:100%;
        margin:8% auto;
    }
    .list-step:before {
        border-bottom:5px solid #e6e6e6;
    }
    .list-step li {
        position: relative;
        width:70px;
    }
    .list-step li.step {
        width:140px;
    }
    .list-step li img {}
    .list-step li.step img {}

    /*------------------------------ midashi ----------*/
    .fx-res {
        display: block;
    }
    .fx-res div {
        width:100%;
        padding:6% !important;
        margin-bottom:4%;
    }
    .fx-res div p {
        margin-bottom:0.5%;
        font-size:16px;
    }

    /*------------------------------ resForm common ----------*/
    .resForm {
        max-width:100%;
        margin:0;
    }
    .resForm div {
        padding:4% 0;
    }
    .resForm div dt {
        padding:4% 4% 4% 90px;
        margin-bottom:4%;
        font-size:15px !important;
        border-radius:3px;
    }
    .resForm div dd {
        width:100%;
        padding:0 4%;
        font-size:15px !important;
        display:block;
    }
    .resForm div dd input[type="text"],
    .resForm div dd input[type="email"],
    .resForm div dd input[type="date"],
    .resForm div dd input[type="tel"] {
        width:100%;
        height: 45px;
        line-height: 45px;
        padding:0 2%;
        border-radius:3px;
    }
    .resForm div dd.visit input[type="text"],
    .resForm div dd.telephone input[type="text"] {
        width:50%;
        padding:0 2%;
    }
    .resForm div dd select {
        width:100%;
        height: 45px;
        line-height: 45px;
        padding:0 2%;
        margin-top:4%;
    }
    .resForm div dd label {
        line-height:60px;
        width:100%;
    }
    .resForm div dd label:hover {}
    .resForm div dd textarea {
        width:100%;
        padding:2%;
        border-radius:3px;
    }
    .resForm div dd img {
        margin:3% 0;
    }
    .resForm .h:before,
    .resForm .n:before {
        position: absolute;
        top:19px !important;
        left:15px;
        margin:0;
        width:55px;
        font-size:12px;
        border-radius:3px;
        text-align: center;
    }
    .resForm .h:before {}
    .resForm .n:before {}

    /*------------------------------ resForm radio checkbox ----------*/
    .resForm  input[type="radio"],
    .resForm  input[type="checkbox"] {
        position: relative;
        right: 0;
        bottom: 0;
        left: 0;
        top:0px !important;
        height: 30px;
        width: 30px;
        vertical-align: -100%;
        transition:all .15s ease-out 0s;
        cursor: pointer;
        display: inline-block;
        margin: 0 10px 0 0;
        outline: none;
        border-radius: 10%;
        opacity:1 !important;
        -webkit-appearance: none;
                appearance: none;
    }
    .resForm  input[type="radio"] {
        border-radius: 50%;
    }
    .resForm  input[type="radio"]:checked:before,
    .resForm  input[type="checkbox"]:checked:before {
        transform: scale(0.5);
    }
    .resForm input[type="radio"]:before {
        content: '';
        margin:-4px 0 0 -4px;
        width: 32px;
        height: 32px;
        display: block;
        border-radius: 50%;
        transform: scale(0);
        -webkit-transition: 0.2s;
                transition: 0.2s;
    }
    .resForm input[type="checkbox"]:before {
        content: '';
        margin:-4px 0 0 -4px;
        width: 32px;
        height: 32px;
        display: block;
        transform: scale(0);
        -webkit-transition: 0.2s;
                transition: 0.2s;
    }
    .resForm input[type="radio"],
    .resForm input[type="checkbox"] {
        border: 3px solid #999;
        background:#fff;
    }
    .resForm input[type="radio"]:checked:before,
    .resForm input[type="checkbox"]:checked:before {
        background: #555;
    }

    /*-----------------------------------------------------------------------------------------
        2nd - studio
    -----------------------------------------------------------------------------------------*/

    #studio {
        background:url("img/parts/bg/studio.jpg") 50% 0 no-repeat local;
        background-size:130% auto;
    }

    /*------------------------------ photo studio ----------*/
    #photo-studio {}
    #photo-studio img {
        max-width:100%;
    }

    /*------------------------------ photo kind ----------*/
    #photo-type {}
    #photo-type p {
        text-align: left;
        font-size:16px;
        line-height: 200%;
        padding:0 5%;
    }
    #photo-type p br {
        display: none;
    }
    .list-PhotoType {
        width:100%;
    }
    .list-PhotoType::after{
      width:49.5%;
    }
    .list-PhotoType li {
        width:49.5%;
        margin-bottom:1%;
    }
    .list-PhotoType li span {
        line-height:35px;
        width:50%;
        font-size:12px;
    }
    .list-PhotoType li img {}

    /*------------------------------ photo plan ----------*/
    #photo-plan {}
    #photo-plan img {
        max-width:100%;
    }
    .list-plan {
        margin:0;
        width:100%;
        display:block;
        -webkit-transition: unset;
                transition: unset;
    }
    .list-plan li {
        width:100%;
        padding-bottom:10%;
    }
    .list-plan li:nth-child(2n-1):after {
        display: none;
    }
    .list-plan li img {
        margin-bottom:5%;
    }
    .list-plan li dl {}
    .list-plan li p.more-btn {
        width:80% !important;
        line-height:50px !important;
    }
    .list-plan li p.more-btn a {
        font-size:14px !important;
    }
    .list-plan li dl div dt {
        font-size: 24px;
        margin:0 auto 5% auto;
        text-align: center;
    }
    .list-plan li dl div dd strong {}
    .list-plan li dl div dd {
        font-size: 16px;
    }
    .list-plan li dl div dd.b-ex {
        font-size:16px;
        min-height:auto;
        margin:8% 0 0 0;
    }
    .list-plan li dl div dd.b-ex span {
        position: relative;
        padding-left:20px;
        margin-right: 40px;
        display: inline-block;
    }
    .list-plan li dl div dd.b-ex span:before {}
    .list-plan li dl div dt.option:after {
        width: 100px;
        height: 22px;
        background:url("img/parts/ic_option.svg") 0 0 no-repeat;
        background-size: 100px auto;
        margin-left:4%;
    }
    .list-plan li:nth-last-child(-n+3) {
        width:100%;
        padding-bottom:7%;
        border-bottom:none;
    }
    .list-plan li:nth-last-child(-n+3) dl div dt {
        font-size:20px;
        margin-bottom:5%;
    }
    .list-plan li:nth-last-child(-n+3) dl div dd {
        font-size:14px;

    }
    .list-plan li:nth-last-child(-n+3) dl div dd.b-ex {
        font-size:12px;
        min-height:auto;
        margin:30px 0 0 0;
    }
    .list-plan li:nth-last-child(-n+3) dl div dd.b-ex span {
        padding-left:20px;
        margin-right: 20px !important;
    }
    .list-plan li:nth-last-child(-n+3) dl div dd.b-ex span:before {
        top:9px;
        left:4px;
        width:7px;
        height:7px;
    }
    .list-plan li:nth-last-child(-n+3):after {
        display: none;
    }

    /*-----------------------------------------------------------------------------------------
        2nd page - Catalog
    -----------------------------------------------------------------------------------------*/
    #catalog {
        background:url("img/parts/bg/faq.jpg") 50% 0 no-repeat local;
        background-size:150% auto;
    }
    #catalog p {
        width:90%;
        text-align: left;
        margin: 0 auto 8% auto;
    }
    ul.list-catalog {
        max-width: 95%
    }
    ul.list-catalog li {
        position: relative;
        width:30%;
        border:5px solid #fff;
        border-radius: 5px;
        margin:0 0 1% 0;
    }
    ul.list-catalog:after {
      content:"";
      display: block;
      width:30%;
    }
    ul.list-catalog li img {}

    /*-----------------------------------------------------------------------------------------
        2nd page - Photo-gallery
    -----------------------------------------------------------------------------------------*/

    #photo-gallery {
        background:url("img/parts/bg/faq.jpg") 50% 0 no-repeat fixed;
        background-size:150% auto;
    }
    #photo-gallery .grid {}
    #photo-gallery .grid-item {
        width: 34%;
    }
    #photo-gallery .grid-item--width2 {
        width: 68%;
    }
    #photo-gallery .grid-item img {}

    /*-----------------------------------------------------------------------------------------
        2nd page - privacy
    -----------------------------------------------------------------------------------------*/
    #privacy-policy {
        background:url("img/parts/bg/faq.jpg") 50% 0 no-repeat fixed;
        background-size:150% auto;
    }
    #privacy {
        max-width:90%;
    }
    #privacy h2 {
        font-size:18px;
        margin-bottom:24%;
    }
    #privacy p {
        font-size:16px;
        margin-bottom:4%;
        line-height:200%;
    }
    #privacy ul {
        margin:0 0 4% 20px;
    }
    #privacy ul li {}
}