/*
Theme Name: オーダーメイド枕霜鳥
Description: オリジナルテーマ
Author: Kota Shimotori
*/

@charset "utf-8";

/* ここから共通の設定 */

* {
    box-sizing: border-box;
    text-decoration: none;
}

html {
    font-family: 'Noto Serif JP', serif;
    color: #333333;
    font-size: 1em;
    line-height: 1.6;
}

img {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

body {
    margin: 0 auto;

}

main {
    margin: 0 auto;
    height: auto;
    width: 1140px;
}


hr {
    height: 1px;
    border: 0;
    border-top: 1px solid #e5e7eb;
}

.footer {
    padding: 2rem;
    font-size: 15px;
    color: #999;
    background: #fff;
}

.footer-navi {
    flex-wrap: wrap;
    margin-bottom: 2rem;
}

.footer-navi li {
    display: inline-block;
}

.footer-navi li:not(:last-child) {
    margin-right: 16px;
}

.copyright {
    text-align: center;
}




/*FontAwesomeを使用しています。*/
.header-6 {
    box-sizing: border-box;
    width: 100%;
    height: 120px;
}

.box {
    box-sizing: border-box;
}

/* ========== header ========== */
.box-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 80px;
}

.logo-img {
    width: 150px;
}

.sp-nav {
    display: none;
}

.box-nav {
    height: 40px;
}

/* ========== nav ========== */
.inner-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0 auto;
    list-style: none;
}

.menu {
    padding: 0 4em;
    cursor: pointer;
}

.menu:hover {
    color: #00b5ad;
}

.en {
    margin: 0;
    text-align: center;
}

.en {
    font-size: 0.8em;
    font-weight: bold;
}







.mainvisual {
    display: block !important;
    max-width: 100%;
    width: 1920px;
    height: auto;
    margin: 0 auto;
}

.lp-mainvisual {
    display: block !important;
    max-width: 100%;
    width: 1920px;
    height: auto;
    margin: 0 auto;
}

.news-mainvisual {
    display: block !important;
    max-width: 100%;
    width: 1920px;
    height: auto;
    margin: 0 auto;
}

.contact-mainvisual {
    display: block !important;
    max-width: 100%;
    width: 1920px;
    height: auto;
    margin: 0 auto;
}

.blog-mainvisual {
    display: block !important;
    max-width: 100%;
    width: 1920px;
    height: auto;
    margin: 0 auto;
}

.sp-mainvisual {
    display: none !important;
}

.lead {
    text-align: center;
    margin-top: 100px;
}

.lead p {
    font-size: 1.5em;
}

.lead .lead1 {
    margin-top: 1em;
}

.lead img {
    margin-top: 100px;
}


.main h2 {
    font-size: 2em;
    text-align: center;
    margin-top: 100px;
}

.main .container {
    /* border: 1px solid #0ff; */
    display: flex;

}

.main .container img {
    max-width: 100%;
    width: 350px;
    height: 250px;
    margin-top: 30px;
    margin: 0 142px 0 142px;
}

.number {
   margin: 0 auto;
    width: 100px;
    height: auto;
}

.number:nth-child(2) {
    margin: 100px auto 50px;
}



.number:nth-child(4) {
    /* text-align: right; */
    /* margin-right: 142px; */
    margin: 50px auto 50px;
    /* margin-top: 50px; */
}

.number:nth-child(6) {
    margin: 50px auto 50px;
}

.main .container .item:nth-child(2) {
    margin-right: 142px;
}

.main .container .item:nth-child(6) {
    margin-right: 142px;
}

.main .container .item:nth-child(1) {
    margin-left: 142px;
}

.main .container .item h3 {
    text-align: center;
}

.main .container .item p {
    margin-top: 30px;
}

.button {
    text-align: center;
    margin-top: 100px;
}

.detail .text{
    margin-top: 100px;
    text-align: center;
    font-size: 1.5em;
}

.detail h2 {
    text-align: center;
    margin-top: 100px;
    font-size: 2em;
}

.detail .container {
    display: flex;
    margin-top: 100px;
}

.detail .container img {
    max-width: 100%;
    width: 350px;
    height: 250px;
    margin-top: 30px;
    margin: 0 142px 0 142px;
}

.detail .container .item {
    margin-right: 142px;
}

.detail .container .item h3 {
    text-align: center;
}

.detail2 h2 {
    text-align: center;
    font-size: 2em;
    margin-top: 100px;
}

.detail2 .container {
    display: flex;
    margin: 100px 60px 0 60px;
    /* box-sizing: border-box;
    width: 50%; */
}

.detail2 .container .item {
    /* border: 1px solid #0ff; */
    box-sizing: border-box;
    width: 50%;
    text-align: center;
}

.detail2 .container .item img {
    /* border: 1px solid #0ff; */
    max-width: 100%;
    width: 350px;
    height: auto;
}

.detail2 .container .item h4 {
    text-align: center;
}

.detail3 h2 {
    text-align: center;
    font-size: 2em;
    margin-top: 100px;
}

.detail3 .text {
    text-align: center;
    margin-top: 100px;
}

.detail3 .grid-container {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}

.detail3 .grid-container .grid-item {
    margin-top: 50px;
}

.detail3 .grid-container .grid-item h4 {
    text-align: center;
}

.detail3 .container {
    display: flex;
    margin: 100px 60px 0 60px;
}

.detail3 .container .item img {

    /* border: 1px solid #0ff; */
    max-width: 100%;
    width: 350px;
    height: auto;
    text-align: center;
}

.detail3 .container .item {
    /* border: 1px solid #0ff; */
    box-sizing: border-box;
    width: 50%;
    text-align: center;
}

.detail3 .container .item p {
    text-align: left;
}

.shop-info h2 {
    font-size: 2em;
    text-align: center;
    margin-top: 100px;
}

.shop-info .container {
    display: flex;
    margin: 100px 0 100px 0;
}

.shop-info .container .item {
    text-align: center;
    margin: 0 20px 0 20px;
}

.shop-info .container .item p {
    margin-top: 30px;
    line-height: 3em;
    text-align: left;
}

iframe {
    width: 600px;
    height: 450px;
}

.btn-container {
    display: flex;
    justify-content: space-around;
    margin-top: 100px;
}

.background_btn02 {
    display: inline-block;
    color: #fff;
    /* 文字色 */
    font-weight: bold;
    /* 文字の太さ */
    width: 100%;
    max-width: 350px;
    /* ボタン幅 */
    text-decoration: none;
    border: 2px solid #C69C6D;
    /* 線の色 */
    padding: 1em 2em;
    text-align: center;
    position: relative;
    background-repeat: no-repeat;
    background-position: 100% 0;
    background-size: 200% auto;
    background-image: linear-gradient(to right, #fff 0%, #fff 50%, #C69C6D 50%, #C69C6D 100%);
    /* 背景色(マウスオーバー後→前) */
    transition: background-position .8s cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-transition: background-position .8s cubic-bezier(0.19, 1, 0.22, 1);
}

.background_btn02_arrow {
    display: inline-block;
    padding-left: 1em;
}

/* マウスオーバーした際のデザイン */
.background_btn02:hover {
    background-position: 0 0;
    color: #000;
    /* 文字色 */
}

.background_btn02:hover .background_btn02-line path,
.background_btn02:hover .background_btn02-line line {
    stroke: #000;
    /* 矢印の色 */
}

/* ここからLPの設定 */

.LP-lead h2 {
    font-size: 2.5em;
    text-align: center;
    margin-top: 100px;
}

.LP-lead .wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    margin-top: 100px;
}

.LP-lead .wrapper .item {
    text-align: center;
}

.LP-lead img {
    text-align: center;
    margin-top: 100px;
}

.LP2 {
    margin-top: 100px;
    text-align: center;
}

.LP3 {
    margin-top: 100px;
    text-align: center;
}

.LP4 {
    margin-top: 100px;
    text-align: center;
}

.LP-container {
    /* border: 1px solid #333333; */
    display: flex;
    margin-top: 100px;
}

.LP-container .LP-item {
    /* border: 1px solid #333333; */
    box-sizing: border-box;
    width: 50%;
    text-align: center;
    margin: 0 50px 0 50px;
}

.LP-container .LP-item img {
    width: 400px;
    height: auto;
}

.LP-container .LP-item p {
    text-align: left;
    font-size: 1.2em;
}

.LP5 {
    margin: 100px 0 100px 0;
    text-align: center;
}

/* ここからお問い合わせの設定 */

/*デザインcss↓*/

.box_con02 {
    max-width: 900px;
    margin: 0 auto;
}

.box_con02 form {
    width: 100%;
}

.box_con02 form table {
    width: 100%;
}

.box_con02 form table tr {
    position: relative;
}

.box_con02 form table tr:first-child td:before {
    content: "";
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    height: 1px;
    border-bottom: solid 1px rgba(28, 46, 83, 0.5);
}

.box_con02 form table tr th {
    width: 30%;
    font-weight: normal;
    padding: 1em .5em;
    background: #1c2e53;
    color: #fff;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.box_con02 form table tr th span {
    background: #cd6f55;
    padding: 0 .3em;
    color: #fff;
    margin-left: .5em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.box_con02 form table tr th:after {
    content: "";
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    height: 1px;
    border-bottom: solid 1px #fff;
}

.box_con02 form table tr td {
    position: relative;
    padding: 1em .5em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.box_con02 form table tr td:after {
    content: "";
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    height: 1px;
    border-bottom: solid 1px rgba(28, 46, 83, 0.5);
}

.box_con02 form table tr .box_br {
    display: block;
}

.box_con02 form table tr select,
.box_con02 form table tr textarea,
.box_con02 form table tr .wide {
    width: 100%;
    height: 3em;
    padding: .5em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.box_con02 form table tr textarea {
    height: 10em;
}

/*プライバシーのデザインcss↓*/

.box_con02 {
    margin: auto;
}

.con_pri {
    max-width: 700px;
    margin: 0 auto;
}

.con_pri .box_pri {
    height: 300px;
    overflow-y: scroll;
    border: 1px solid #cdcdcd;
    background: #f7f7f7;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 20px;
    padding: 20px 55px;
}

.con_pri .box_pri .box_tori {
    text-align: left;
    margin-top: 40px;
}

.con_pri .box_pri .box_tori h4 {
    font-weight: normal;
    margin-bottom: 30px;
    font-size: 150%;
}

.con_pri .box_pri .box_tori .txt {
    padding: 0 20px;
}

.con_pri .box_pri .box_num {
    margin-top: 30px;
}

.con_pri .box_pri .box_num h4 {
    font-weight: normal;
    font-size: 113%;
}

.con_pri .box_pri .box_num .txt {
    padding: 10px 0 0 20px;
}

.box_check {
    text-align: center;
    margin: 1em auto;
}

.box_check label {
    display: inline-block;
}

.box_check label span {
    margin-left: .3em;
}

.btn {
    text-align: center;
}

.btn input {
    display: inline-block;
    background: #eee;
    padding: .5em 4em;
    color: #000;
    text-decoration: none;
    cursor: pointer;
    border: none;
    -moz-transition: all 0.4s;
    -o-transition: all 0.4s;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}

.btn input:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: 0.7;
}


/* ここからNEWSの設定 */

.news h2 {
    font-size: 2.5em;
    text-align: center;
}

.news-list {
    list-style: none outside;
    margin: 100px 0 100px 0;
    padding: 0;
}

.news-list .item a {
    display: flex;
    flex-wrap: wrap;
    flex-wrap: nowrap;
    text-decoration: none;
    color: #333;
    border-bottom: 1px solid #CCC;
    padding: 20px 20px;
}

.news-list .item:first-child a {
    border-top: 1px solid #CCC;
}

.news-list .item .date {
    margin: 0;
    min-width: 140px;
    font-size: 16px;
    color: #999;
    padding: 0 20px 0 0;
}

.news-list .item .category {
    margin: 0;
    min-width: 140px;
    padding: 0 20px 0 0;
}

.news-list .item .category span {
    background: #999;
    color: #FFF;
    text-align: center;
    display: inline-block;
    padding: 5px 20px;
    font-size: 12px;
    line-height: 1;
}

.news-list .item .title {
    margin: 0;
    width: 100%;
}

.news-list .item a:hover .title {
    color: #00F;
}





/* ここからスマホ用デザイン */

/* 959px以下に適用されるCSS（タブレット用） */

@media screen and (max-width: 769px) {
    body {
        margin: auto;
        font-size: 65%;
    }

    main {
        margin: 0 auto;
        width: 100%;
        padding: 0 2%;
    }

    img {
        max-width: 100%;
    }

    p{
        font-size: 1.2em;
    }

    .header-6 {
        display: flex;
        align-items: center;
        justify-content: space-between;
        height: 60px;
        padding: 0 0.8em;
    }

    .box-nav {
        display: none;
    }

    .sp-nav {
        display: block;
    }

    .box-logo {
        height: 60px;
    }

    .logo-img {
        width: 120px;
    }

    .lead{
        margin: 0 20px;
    }




    .button {
        width: 150px;
        height: auto;
        margin: 100px auto 0;
    }

    .number:nth-child(2) {
        margin: 100px auto 0;
        text-align: center;
        width: 50px;
        height: auto;
    }

    .number:nth-child(4) {
        margin: 50px auto 0;
        text-align: center;
        width: 50px;
        height: auto;
    }

    .number:nth-child(6) {
        margin: 50px auto 0;
        text-align: center;
        width: 50px;
        height: auto;
    }

    .main .container {
        flex-direction: column;
        justify-content: space-between;
        margin: 0;
    }

    .main .container:nth-child(5) {
        flex-direction: column-reverse;
    }

    .main .container img {
        margin: 20px 0 0 0;
        max-width: 100%;
        width: 100%;
        height: auto;
        text-align: center;
    }

    .main .container:nth-child(1) {
        flex-direction: column-reverse;
    }

    .main .container .item:nth-child(2) {
        margin: 0;
    }

    .main .container .item:nth-child(6) {
        margin: 0;
    }

    .main .container .item:nth-child(1) {
        margin: 0;
    }

    .main .container .item h3 {
        text-align: center;
        font-size: 2em;
        margin: 30px 20px;
    }

    .main .container .item p {
        margin: 30px 20px 0;
    }

    .detail h2 {
        font-size: 2em;
        margin-bottom: 50px;
    }

    .detail .text{
        text-align: center;
        font-size: 2em;
        margin: 100px 0 100px;
    }

    .detail .container {
        flex-direction: column;
        margin: 0;
    }

    .detail .container img {
        margin: 0;
        width: 100%;
        height: auto;
    }

    .detail .container .item {
        margin: 0;
    }

    .detail .container .item p{
        margin: 30px 20px 0;
    }

    .detail2 h2{
        margin: 100px 0 0 0;
    }

    .detail2 .container {
        flex-direction: column;
        margin-top: 50px;
    }

    .detail2 .container .item {
        max-width: 100%;
        width: 100%;
        height: auto;
    }

    .detail2 .container .item h4{
        font-size: 1.2em;
    }

    .detail2 .container .item:nth-child(2) {
        margin-top: 50px;
    }

    .detail3 .text{
        margin: 50px 20px 10px;
    }

    .detail3 .grid-container {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        margin: 0 20px;
    }

    .detail3 .container {
        flex-direction: column;
        margin: 50px 0 0 0;
    }

    .detail3 .container .item {
        max-width: 100%;
        width: 100%;
        height: auto;
    }

    .detail3 .container .item p{
        margin: 0 20px;
    }

    .detail3 .container .item h3{
        margin: 50px 20px;
    }




    .shop-info h2 {
        /* font-size: 2.5em; */
        text-align: center;
        margin-top: 100px;
    }

    .shop-info .container {

        flex-direction: column;
        margin: 100px 0 50px 0;
    }

    .shop-info .container .item {
        text-align: center;
    }

    .shop-info .container .item img {
        margin-top: 50px;
        width: 150px;
        height: auto;
    }

    .shop-info .container .item p {
        text-align: left;
    }

    iframe {
        max-width: 100%;
        width: 400px;
        height: 250px;
    }


    /* ここからLPの設定 */

    #LP h2 {
        font-size: 1.8em;
    }

    .LP-lead .wrapper .item img {
        margin: 0;
    }

    .LP-container {
        flex-direction: column;
    }

    .LP-container .LP-item {
        max-width: 100%;
        width: 100%;
        height: auto;
        margin: auto;
    }

    .LP-container .LP-item p {
        font-size: 1.5em;
        margin-top: 30px;
    }


    /* ここからお問い合わせの設定 */

    .box_con02 {
        width: 95%;
    }

    .box_con02 form table tr:first-child td:before {
        display: none;
    }

    .box_con02 form table tr th {
        text-align: center;
        width: 100%;
        display: block;
        padding: .8em .2em;
    }

    .box_con02 form table tr td {
        padding: 1.5em .5em;
        display: block;
        width: 100%;
    }

    .con_pri {
        width: 95%;
    }

    .con_pri .box_pri {
        margin-top: 4%;
        padding: 3%;
    }

    .con_pri .box_pri .box_tori {
        margin-top: 4%;
    }

    .con_pri .box_pri .box_tori h4 {
        margin-bottom: 4%;
    }

    .con_pri .box_pri .box_tori .txt {
        padding: 0;
    }

    .con_pri .box_pri .box_num {
        margin-top: 5%;
    }

    .con_pri .box_pri .box_num .txt {
        padding: 3% 0 0 3%;
    }


    /* ここからNEWSの設定 */

    .news-list .item a {
        flex-wrap: wrap;
    }

    .news-list .item .date {
        min-width: 100px;
    }

    .news-list .item .title {
        margin-top: 10px;

    }
}




/* 480px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 480px) {

    body {
        margin: 0 auto;
    }

    img {
        max-width: 100%;
    }

    .footer .footer-navi {
        font-size: 50%;
    }

    .copyright {
        font-size: 50%;
    }

    .header-8 {
        display: flex;
        align-items: center;
        justify-content: space-between;
        height: 60px;
        padding: 0 0.8em;
    }

    .box-nav {
        display: none;
    }

    /* .sp-nav {
        display: block;
    }

    .box-logo {
        height: 60px;
    }

    .logo-img {
        width: 70px;
    } */

    .mainvisual {
        display: none !important;
    }

    .sp-mainvisual {
        display: block !important;
        width: 100%;
        height: 90vh;
    }
}