@charset "UTF-8";

/* ------------------------------------------
	BASIC
--------------------------------------------- */

html { font-size: 62.5%; }

body {
    font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #191612;
    
    line-height: 1.6;
    font-size: 1.6rem;
    /* background-color: #ffffff; */
}



a:link {
    text-decoration: none;
    color: #191612;
}

a:visited {
    text-decoration: none;
}

a:hover,
a:active,
a:focus {
    text-decoration: none;
    border-bottom: 3px solid #9e9b9b;
}

a:hover img {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
}


p{
    font-size: 1.6rem;
    padding-left: 17%;
    text-align: left;
}


.viewmore{
    width: 10%;
    margin: 10% 0;
    margin-left: 70%;
}

.viewmore_c{
    width: 125px;
    margin: 10% auto;
}

@media(max-width:599px) {
    body {
        font-size: 14px;
    }
    br {
        display: none;
    }

    #privacypolicy p br {
        display: block;
    }

    img{
        width: 90%;
    }

    .viewmore {
        width: 30%;
        margin-left: 60%;
        
    }
    header img {
        display: block;
        width: 15%;
        margin: 0 auto;
        margin-top: 2%;
        margin-bottom: 2%;
    }
}

@media(min-width:600px) and (max-width:959px) {
    body {
        font-size: 16px;
        overflow: hidden;
    }
}


/* ------------------------------------------
	header
--------------------------------------------- */


.header_pc {
    width: 15%;
    margin: 0 auto;
    margin-top: 2%;
    margin-bottom: 2%;
}

header a:hover,
header a:active,
header a:focus {
    border-bottom: none;
 }

.top_mv{
width: 85%;
margin: 0 15% 0 0;
}

.mfheader{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    background-color: #ffffff;
    position: fixed;
    margin: 0 auto;
    top: 0;
    z-index: 1000;
}

/*=== 丸が動いてスクロールを促す ====*/

/*スクロールダウン全体の場所*/
.scrolldown2{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:150px;
	left:95%;
}

/*Scrollテキストの描写*/
.scrolldown2 span{
    /*描画位置*/
	position: absolute;
	left:10px;
	bottom:10px;
    /*テキストの形状*/
	color: #9e9b9b;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	/*縦書き設定*/
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

/* 丸の描写 */
.scrolldown2:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:-4px;
    /*丸の形状*/
	width:10px;
	height:10px;
	border-radius: 50%;
	background:#9e9b9b;
    /*丸の動き1.6秒かけて透過し、永遠にループ*/
	animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:45px;}
     100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
      0%{opacity:0}
     50%{opacity:1;}
    80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown2:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:0;
	left:0;
    /*線の形状*/
	width:2px;
	height: 50px;
	background:#9e9b9b;
}



@media(max-width:599px) {
    
    
}


/* ------------------------------------------
	nav
--------------------------------------------- */

nav {
    padding: 2% 10%;
    padding-top: 3%;
    padding-bottom: 4%;
    margin: 0 auto;
    width: 100%;
    background-color:#ffffff;
}

nav ul {
    display: flex;
    width: 100%;
    margin: 0 auto;
    /*メニュー前提の位置調整*/
}

nav ul li {
    text-align: center;
    width: 100%;
}

nav ul li a {
    display: block;
    color: #fff;
    font-size: 1.4rem;
    line-height: 20px;
    /*文字行高さ*/
    /* padding: 8px 24px 4px; */
    /*パディング高さ*/
    border-top: none;
}

/*
疑似クラスとは、セレクタに付加するキーワードで、
選択される要素に対して特定の状態を指定します。

例）:hover
選択した要素上にマウスカーソルがあるときにスタイルを適用
*/

nav ul li a:link,
nav ul li a:visited {
    color: #191612;
    
}

nav ul li a:hover,
nav ul li a:active {
    color: #191612;
    border-bottom: 3px solid #9e9b9b;
    text-decoration: none;
}

.fixed {
    position: fixed;
    margin: 0 auto;
    top: 0;
    left: 0;
    z-index: 1500;
  }

  .ham-whole,.header_sp{
    display: none;
  }


.frex1{
   display: none;
}
 




  

@media(max-width:599px) {

    nav ul {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        margin: 0 auto;
    }

    nav,.header_pc{
        display: none;
    }

    .nav_sp,.ham-whole,.header_sp{
        display: block;
      }
    .header_sp{
        margin-top: 15%;
    }
    .ham-whole{
        display: flex;
    }

      #ham-check {
        display: none;
    }
    .ham-open {
        display: flex;
        height: 50px;
        width: 50px;
        justify-content: center;
        align-items: center;
        z-index: 1100;
        cursor: pointer;
        position: fixed;
        top: 0;
        right: 0;
        background-color:#ffffff
    }
    .ham-open span,
    .ham-open span:before,
    .ham-open span:after {
        content: '';
        display: block;
        height: 3px;
        width: 25px;
        border-radius: 3px;
        background: #774f07;
        transition: 0.5s;
        position: absolute;
    }
    .ham-open span:before {
        bottom: 8px;
    }
    .ham-open span:after {
        top: 8px;
    }
    #ham-check:checked ~ .ham-open span {
        background: rgba(255, 255, 255, 0);
    }
    #ham-check:checked ~ .ham-open span::before {
        bottom: 0;
        transform: rotate(45deg);
    }
    #ham-check:checked ~ .ham-open span::after {
        top: 0;
        transform: rotate(-45deg);
    }
    .ham-whole nav {
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        right: -100%;
        z-index: 99;
        background: #f1f3f2f6;
        transition: .5s;
        padding: 80px 0;
        box-sizing: border-box;
        text-align: center;
    }
    .ham-whole nav ul li a {
        margin: 0 0 20px 0;
        display: block;
        border-bottom: 0.3px solid #d6d6d6f6;
        padding: 0 0 10px 0;
    }
    #ham-check:checked ~ nav {
        right: 0;
    }

    .frex1{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        background-color: #ffffff;
            position: fixed;
            margin: 0 auto;
            top: 0;
            z-index: 1000;
    }

    .box1{
        width: 60%;
    }

    .box1 img{
        display: inline-block;
        width: 50%;
        padding: 8% 2% 2% 5%;
        margin: 0;
       text-align: left;
    }

    

    .box2{
        width: 40%;
        padding: 3% 2%;
    }

    
   
}


/* nav ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 90%;
    margin: 0 auto;
  
}
nav ul li a {
    display: block;
    color: #fff;
    font-size: 18px;
    line-height: 20px;
    padding: 8px;
    margin-bottom: 20PX;
    border-top: none;
}
 */

/* ------------------------------------------
	main
--------------------------------------------- */

h1 {
    color: #191612;
    font-size: 3.2rem;
    text-align: center;
    line-height: 95%;
    width: 30%;
    margin: 5% auto;
    padding: 3%;
    padding-top: 20%;
    padding-bottom: 1%;
    border-bottom:5px solid #774f07;
}

h2 {
    padding-left: 17%;
    color: #191612;
    text-align: left;
    font-size: 1.6rem;
}

h2 img{
    width: 3%;
    margin: 0 2%;
}



/*-------------Q&A*/


/*ベース*/
.accordion{
    width: 70%;
    margin: 0 auto;
}

.accordion span{
    font-size: 2rem;
    color: #9e9b9b;
    padding: 0 5%;
    margin-right: 15%;
}

.toggle {
	display: none;
}
.Label {		/*タイトル*/
	padding: 2%;
	display: block;
    font-size: 1.4rem;
	color: #191612;
	border-bottom:0.3px solid #9e9b9b;
}
.Label::before{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #9e9b9b;
	border-right: 2px solid #9e9b9b;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
}
.Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.content {		/*本文*/
	height: 0;
	margin-bottom:10px;
	padding:0 20px;
	overflow: hidden;
}

.toggle:checked + .Label + .content {	/*開閉時*/
	height: auto;
	padding:20px ;
	transition: all .3s;
}
.toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
}





/*-------------Q&Aここまで*/



.border{
/*  border-top: 0.3px solid #9e9b9b;
 border-bottom:0.3px solid #9e9b9b;  */
 background-color: #f1f3f2f6;
}


.contact{
    display: block;
    text-align: center;
    padding: 4%;
}




article{
    background-color: #FAF9F8;
}


section {
    padding: 6%;
}

.mail{
    width: 8%;
    margin: 0;
    margin-right: 10%;
}

.button-054 {
    font-size: 1.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 30%;
    margin: 8% auto;
    padding: 2% 3% 2% 0;
    border: 1px solid #774f07;
    background-color: #774f07;
    color: #ffffff;

}

.button-054 a{
    color: #ffffff;
}

.button-054::after {
    position: absolute;
    right: 2.5em;
    transform: translateY(-50%);
    transform-origin: left;
    width: 2em;
    height: .5em;
    background-color: #ffffff;
    clip-path: polygon(0 100%, 100% 100%, 70% 40%, 70% 90%, 0% 90%);
    content: '';
    transition: transform .3s;
}

.button-054:hover::after {
    transform: translateY(-50%) scaleX(1.4);
}

.dai{
font-size: 3.5rem;
margin-top: 6%;
padding: 0;
text-align: center;
}

.dai span{
    padding-right: 2%;
    }

.time{
    text-align: center;
    font-size: 1.4rem;
    padding-top: 2%;
    
}





@media(max-width:599px) {

 h1{
    font-size : 2.2rem;
    width: 80%;
}

h2 {
    padding: 10% 4% 0 4%;
    font-size: 1.6rem;
}

h2 img{
    width: 5%;
    margin: 0 2%;
}

section {
    padding: 0%;
    margin-bottom: 25%;
}

.border {
    margin-bottom: 15%;
}

p {
    padding: 0 4%;
    text-align: left;
}


.accordion{
    width: 90%;
    margin: 0 auto;
}

.accordion span{
    font-size: 1.8rem;
    padding: 0 2% 0 0;
    margin-right: 0;
}

.Label::before{
    right: 10px;
}

.Label{
    display: flex;
    padding: 2% 6% 2% 2%;
}

.contact {
    margin-top: 10%;
    padding-top: 15%;
}


.button-054 {
    width: 90%;
    margin: 8% auto;
    padding: 6% 10% 6% 0;
    font-size: 1.6rem;
}

.dai {
    font-size: 2.5rem;
}

.time {
    padding-top: 0;
    padding-bottom: 15%;
}

.button-054::after {
    right: 1.8em;
    
}

.mail {
    margin-right: 5%;
}


   
}


/* ------------------------------------------
	home
--------------------------------------------- */



#home article {
    margin-top: 20%;
}

#home h1 {
    color: #555555;
    border-bottom: solid 5px #312f2a;
    font-size: 3.2rem;
    text-align: right;
    line-height: 70%;
    width: 20%;
    margin-top: 15%;
    padding: 1%;
}


@media(max-width:599px) {
   
    #home article {
        margin-top: 50%;
    }
    #home h1 {
        border-bottom: solid 3px #312f2a;
        font-size: 22px;
        width: 30%;
        margin-top: 5%;
        padding: 2%;
    }
   
}


/* ------------------------------------------
	privacypolicy
 ----------------------------------------- */

#privacypolicy h2 {
    padding-left: 0;
    width: 70%;
    margin: 0 auto;
    margin-bottom: 3%;
}

#privacypolicy dl{
    width: 70%;
    margin: 0 auto;
}

#privacypolicy dt{
    font-size: 1.8rem;
    font-weight: bold;
}

#privacypolicy dd{
    margin-bottom: 3%;
}

#privacypolicy ul{
    list-style: disc;
    padding-left: 2%;
}

#privacypolicy p{
    padding-left: 0;
    font-size: 1.4rem;
    margin-top: 3%;
}






@media(max-width:599px) {
    #privacypolicy h1{
        padding-top: 25%;
        margin: 10% auto;
    }
    #privacypolicy dl,#privacypolicy h2{
        width: 90%;
    }

    #privacypolicy p{
        padding-bottom: 20%;
        
    }
    
}


/* ------------------------------------------
	companyinfo
--------------------------------------------- */


table {
    border-collapse: collapse;
    width: 90%;
    margin: 0 auto;
}

th.t_top,
td.t_top {
    border-top: #CCC2C2 1px dotted;
    padding-left: 14%;
}

th {
    /* border: #1B435D 1px dotted; */
    border-bottom: #CCC2C2 1px dotted;
    color: #C9BFB8;
    text-align: left;
    padding: 5%;
    padding-left: 14%;
    font-weight: normal;
}

td {
    border-bottom: #CCC2C2 1px dotted;
    color: #89817B;
    background-color: rgba(255, 255, 255, 0.6);
    text-align: left;
    padding: 5%;
    padding-left: 14%;
}


@media(max-width:599px) {
   
    table {
        display: none;
    }
}


/* ------------------------------------------
	rentalservice
--------------------------------------------- */




@media(max-width:599px) {
   
   
}


/* ------------------------------------------
	gallery
--------------------------------------------- */



@media(max-width:599px) {
   
}


/* ------------------------------------------
	privacypolicy
--------------------------------------------- */



@media(max-width:599px) {
    
}





/* ------------------------------------------
	clearfix
--------------------------------------------- */

main::after,
header::after,
nav::after,
footer::after,
.submit_area::after,
#navarea::after {
    content: " ";
    display: block;
    clear: both;
}


/* ------------------------------------------
	footer
--------------------------------------------- */
footer{
    padding: 5% 0;
    
}

footer nav {
    padding: 2% 0;
    margin: 0 auto;
    margin-left: 80%;
    width: 12%;
    background-color: #ffffff;
}

.privacypolicy{
    font-size: 1.4rem;
    text-align: center;
    color: #191612;
}

.privacypolicy :link,
.privacypolicy :visited {
    color: #191612;
    
}

.privacypolicy :hover,
.privacypolicy :active {
    color: #191612;
    border-bottom: 3px solid #9e9b9b;
    text-decoration: none;
}

.instagram{
    width: 30px;
    margin: 10% auto;
}

footer img{
    width: 15%;
    margin: 0 auto;
    margin-top: 2%;
    margin-bottom: 2%;
    display: block;
}

address{
    text-align: center;
    font-size: 1rem;
}

@media(max-width:599px) {

    footer{
        padding: 0;
        padding-bottom: 5%;
    }
    footer img {
        width: 40%;
        margin: 0 auto;
        margin-top: 0;
        margin-bottom: 8%;
        
    }

    .instagram {
        width: 25px;
        margin: 20% auto;
    }

    address{
        font-size: 1rem;
    }
   
}


/* ------------------------------------------
	flex
--------------------------------------------- */
/* 
.frex1{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.box1{
    width: 50%;
}

.box2{
    width: 50%;
} */

@media(max-width:599px) {
    
   
}


/* ------------------------------------------
	botan
--------------------------------------------- */


/***追従するトップへ戻るボタン***/

#page-top {
    position: fixed;
    right: 30px;
    bottom: 20px;
    height: 50px;
    text-decoration: none;
    font-weight: bold;
    transform: rotate(90deg);
    font-size: 90%;
    line-height: 1.5rem;
    color: #af6d20;
    padding: 0 0 0 35px;
    border-top: solid 1px;
}

#page-top::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0px;
    width: 15px;
    border-top: solid 1px;
    transform: rotate(35deg);
    transform-origin: left top;
}


/***トップへ戻るボタンここまで***/




@media(max-width:599px) {
   
}