@charset "utf-8"; /* 文字化けを防ぐ*/ 




html {
    font-size: 100%
}

body{
    font-family: "Yu Gothic Medium", "游ゴシック Medium",Yu Gothic, "游ゴシック体", "ヒラギノ角ゴ", serif; 
    line-height: 1.7;
    color: #432;
}

a {
    text-decoration: none;
}

img {
    max-width: 100%;
}

/* header --- */
.header-logo {
    width: 210px;
    margin-top: 14px;
}

.main-nav{
    display: flex;
    font-size: 1.25rem;
    text-transform: uppercase;
    margin-top: 34px;
    list-style: none;

}
.main-nav li {
    margin-left: 36px;
}
.main-nav a {
    color: #432;
}
.main-nav a:hover {
    color: #ff8ab9;
}

.header {
    display: flex;
    justify-content: space-between;
}   
.wrapper {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 4%;

}
.home-content {
    text-align: center;
    margin-top: 10%;
}
.home-content p{
    font-size: 1.125rem;
    margin: 10px 0 42px;
}

/*見だし */
.page-title {
    font-size: 5rem;
    font-family: 'Philosopher', serif;
    color:rgb(91, 73, 57);
}
/*ボタン*/

.button {
    font-size: 1.375rem;
    background:  #ff8ab9;
    color: #fff;
    padding: 18px 32px;
    border-radius: 5px;
}
#home {
    background-image: url(../images/main-bg2.jpg), linear-gradient(#fafae0,#ffafbd);
    background-blend-mode: overlay;
    min-height: 100vh;
}
.big-bg {
    background-size: cover;
    background-position: center top;
}
#home .main-title {
    text-transform: none;

}

#news {
    background-image: url(../images/news-bg.jpg);
    height:270px;
    margin-bottom: 40px;
}

#news .page-title{
    text-align: center;
}


/*footer*/
footer {
    background: #432;
    text-align: center;
    padding: 26px 0;
}
footer p {
    color: #fff;
    font-size: 0.875rem;
}

/*記事部分*/
article {
    width: 60%;
    order: 1;
}
aside {
    width: 22%;
    order: 2;
}
.ad {
    order: 3;    
}

.news-contents {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}
.post-info {
    position: relative;
    padding-top: 4px;
    margin-bottom: 40px;
}
.post-date{
    background:  #ff8ab9;
    border-radius: 50%;
    color: #fff;
    width: 100px;
    height: 100px;
    font-size: 1.625rem;
    text-align: center;
    position: absolute;
    top: 0;
    padding-top: 10px;
}
.post-date span{
    font-size: 1rem;
    border-top: 1px rgba(255, 255, 255, .5) solid;
    padding-top: 6px;
    display: block;
    width: 60px;
    margin: 0 auto;
}

.post-title {
    font-family: "Yu Mincho", "YuMincho", serif;
    font-size: 2rem;
    font-weight: normal;
}
.post-title, .post-cat {
    margin-left: 120px;
}
article img{
    margin-bottom: 20px;
}
article p {
    margin-bottom: 1rem;
}

/*サイドバー部分*/
.sub-title {
    font-size: 1.375rem;
    padding: 0 8px 8px;
    border-bottom: 2px #ff8ab9 solid;
    font-weight: normal;
}
.sub-menu{
    list-style: none;
    margin-bottom:60px;
}
.sub-menu li{
    border-bottom: 1px #ddd solid;
}
.sub-menu a {
    color: #432;
    padding: 10px;
    display: block;
}
.sub-menu a:hover {
    color: #ff8ab9;
}

/*MENU*/
#menu {
    background-image: url(../images/menu-bg.jpg), linear-gradient(hsl(60, 72%, 93%,80%),hsl(350, 100%, 84%,50%));
    background-blend-mode: overlay;
    min-height:100vh;
}
.menu-content {
    max-width: 560px;
    margin-top: 10%;;

}
.menu-content .page-title {
    text-align: center;
}
.menu-content p {
    font-size:1.125rem;
    margin: 10px 0 0;
}

.grid {
    display: grid;
    gap: 26px;
    grid-template-columns: repeat(auto-fit,minmax(240px, 1fr));
    margin-top: 6%;
    margin-bottom: 50px;
}
.big-box {
    grid-column: 1 / 3;
    grid-row: 1 / 3;
}
.big-box img {
    height: 94%;
    width: 100%;
    object-fit: cover;
}

/*CONTACT*/
#contact {
    background-image: url(../images/contact-bg.jpg);
    background-color: hwb(0 100% 0% / 0.5);
    background-blend-mode:overlay;
    min-height: 100vh;
    object-fit: cover;
}

form div {
    margin-bottom: 14px;
}
label {
    font-size: 1.125rem;
    margin-bottom: 10px;
    display: block;
}
input[type="text"], input[type="email"], textarea {
    background: rgba(255, 255, 255, .5);
    border: 1px #fff solid;
    border-radius: 5px;
    padding: 10px;
    font-size: 1rem;
}
input[type="text"], input[type="email"]{
    width: 100%;/*★*/
    max-width: 240px;
}
textarea{
    width: 100%;
    max-width: 480px;
    height: 6rem;
}

#location {
    padding: 4% 0;
}

#location .wrapper{
    display: flex;
    justify-content: space-between;
}
.location-info{
    width: 22%;
}
.location-info p{
    padding: 12px 10px;
}
.location-map{
    width:74%;
}

iframe{
    width: 100%;
}


/*モバイル版*/
@media (max-width: 600px) {
.page-title {
    font-size: 2.5rem;
}

/*header*/
.main-nav {
    font-size: 1rem;
    margin-top: 10px;
}
.main-nav li{
    margin: 0 20px;

}

/*home*/
.home-content{
    margin-top:20px;
}
.header {
    flex-direction: column;
    align-items: center;
}

/*NEWS*/
.news-contents{
flex-direction: column;
}
article, aside {
    width:100%;
}
#news .page-title{
    margin-top:30px;

}
aside {
    margin-top: 60px;
}
.post-info {
    margin-bottom:30px;

}
.post-date {
    width:70px;
    height: 70px;
    font-size: 1rem;
}
.post-date span{
    font-size:0.875rem;
    padding-top: 2px;
}
.post-cat{
    font-size:0.875rem;
    margin-top: 10px;
}
.post-title, .post-cat{
    margin-left: 80px;
}

/*CONTACT*/
#contact .page-title {
    margin-top: 40px;
}
#contact .wrapper{
    padding-bottom:10px;
}

/*フォーム*/
input[type="text"], input[type="email"], textarea {
    max-width: 100%;
}
/*店舗情報、地図、SNS*/
#location .wrapper, #sns .wrapper {
    flex-direction: column;
}

.location-info, .location-map, .sns-box{
    width: 100%;
}
.sns-box {
    margin-bottom: 30px;

}
}