@ charset "UTF-8";

html {
    font-size: 100%;
   
}

.site-title{
    margin:0 auto;
}


/*メニューバ�?�、コン�?ン�?タイトル表示*/
.mswlogo{
    width:200px;
    height:100px;
    padding:10px 20px 10px 20px;
}

.logo {
    width: 150px;
    height:200px;
    
}

.logo2 {
    width: 80px;
    height: 20px;
}

.logo3 {
    width: 110px;
    height: 20px;
}

.logo4 {
    margin-top:20px;
    width: 200px;
    height: 50px;
}

.logo5 {
    margin-top: 20px;
    width: 250px;
    height: 50px;
}

.logo6 {
    margin-top: 20px;
    width: 300px;
    height: 50px;
}

.logo7 {
    width: 200px;
    height: 150px;
}

.logo8 {
    margin-top:0px;
    margin-bottom:10px;
    width: 200px;
    height: 50px;
}

.top{
    width:60px;
    height: 30px;
}

.title{
    margin-top:10px;
}


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.iicon{
    margin:-5px auto;
}


/*ヘッダーメニュー*/

body{
   padding-top: 100px;/* ヘッダーの後ろに要�?が隠れな�?ようにするため */
     }

header{/*ヘッダーを�?��?�ジ上部に固定す�?*/
    width: 100%;
    box-sizing: border-box;/* padding�?を含んで�?�?100%にするため */
    position: fixed;/* ウィンドウを基準に画面に固�? */
    top: 0;/*上下�?�固定位置上か�?0pxにする*/
    left: 0; /*左右の固定位置左から0pxにする*/
}

.main-nav {
    display: flex;
    
    font-size: 1.25em;
    text-transform: uppercase;
    margin: 40px 25px auto;
    list-style: none;
}

    .main-nav li {
        margin-left: 36px;
    }

    .main-nav a {
        color: #FFDE59;
        font-family: LoRes 12 OT;
    }

     


.page-header {
    display: flex;
    justify-content: space-between;
}

.wrapper {
    max-height:100px;
    margin: 0 auto ;
    padding: 0 0 4%  0;
    background-color: #0097B2;
} 



/*それぞれのペ�?�ジ見�?��?*/
h3 {
    margin:auto;
    text-align:left;
    border-bottom: dotted 3px #e78f1c;
}

/*body全体�?��?キスト、背景色設�?*/

body {
    color: #5D0D11;
    font-size: 1.0rem;
    text-align: center;
    background-color: #F9F8CD;
}

img {
    max-width: 100%;
}

li {
    list-style: none;
}




/*footer全体�?��?キスト、背景色設�?*/
#footer {
    font-size: 0.7rem;
    padding: 10px 0;
    text-align: center;
    background-color: #0097B2;
    color: #F9F8CD;
}

/*topペ�?�ジ*/

.yuukaows {
    margin: 10px auto 5px auto;
}

.mainv {
    margin: auto;
}

.light {
    width: 30px;
    height: 30px;
}

.light2 {
    width: 20px;
    height: 20px;
}

.new dl {
    display: flex;
    flex-wrap: wrap;
    width: 1000px;
    margin: 20px auto 20px auto;
}

.new dt {
    width: 20%;
    padding: 15px;
    text-align:left;
}

.new dd {
    width: 80%;
    border-top: dotted 3px #e78f1c;
    padding: 15px 15px 15px 0;
    text-align:left;
}


/*about,guideペ�?�ジ*/
.content {
    width: 480px;
    height: 480px;
    text-align: justify;
    padding: 20px 20px 20px 20px;
}

.click {
    text-align: center;
    
}

.content2 {
    width: 480px;
    height: 350px;
    text-align: left;
    padding: 20px 20px 20px 20px;
}

.content 4{
    width: 480px;
    height: 480px;
    text-align: justify;
    padding: 20px 20px 20px 20px;
}

.oya {
   width:1000px;
    display:flex;
    flex-wrap: wrap;
    margin:auto;
}

.num {
    width: 30px;
    height: 30px;
}

.guide{
    margin:50px auto;
}


/*worksペ�?�ジ*/

.oya2 {
    width: 1000px;
    margin: 0 auto;
}

.content3 {
    padding: 10px 0px 30px 0px;
    text-align: left;
}

/*画像クリ�?クで別窓表示*/
.modal-wrapper {
    z-index: 999;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 60px 10px;
    text-align: center; 
}

    .modal-wrapper:not(:target) {
        opacity: 0;
        visibility: hidden;
        transition: opacity .3s, visibility .3s;
        
    }

    .modal-wrapper:target {
        opacity: 1;
        visibility: visible;
        transition: opacity .4s, visibility .4s;
        
    }

    .modal-wrapper::after {
        display: inline-block;
        height: 100%;
        margin-left: -.05em;
        vertical-align: middle;
        content: ""; 
    }

    .modal-wrapper .modal-window {
        box-sizing: border-box;
        display: inline-block;
        z-index: 20;
        position: relative;
        width: 70%;
        max-width: 600px;
        padding: 30px 30px 15px;
        border-radius: 2px;
        background: #f9f8cd;
        box-shadow: 0 0 30px rgba(0, 0, 0, .6);
        vertical-align: middle;
    }

        .modal-wrapper .modal-window .modal-content {
            max-height: 80vh;
            overflow-y: auto;
        }

.modal-overlay {
    z-index: 10;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, .8)
}

.modal-wrapper .modal-close {
    z-index: 20;
    position: absolute;
    top: 0;
    right: 0;
    width: 35px;
    color: #5d0d11 !important;
    font-size: 20px;
    font-weight: 700;
    line-height: 35px;
    text-align: center;
    text-decoration: none;
    text-indent: 0
}

    .modal-wrapper .modal-close:hover {
        color: #e78f1c !important
    }

.modal-text{
    text-align:left;
}
/*worksペ�?�ジサ�?ネイル間�?�アンダーバ�?�消す*/
a{
    text-decoration:none;
}


/*お問�?合わせフォー�?レイアウ�?*/
form {
    width: 90%;
    max-width: 800px;
    margin: 0 auto 40px;
    background: #F9F8CD;
    padding: 40px 0;
}

dl {
    margin: 0 auto;
    width: 500px;
}

.form-item {
    display: flex;
    justify-content: center;
    margin-bottom: 40px;
}

dt {
    width: 200px;
}

dd {
    width: 300px;
}

input[type="text"],
input[type="email"],
select,
textarea {
    display: block;
    width: 100%;
    font-size: 16px;
}

.form-submit {
    text-align: center;
}

input[type="text"] {
    border: 1px solid #5D0D11;
    color: #5D0D11;
}


input[type="email"] {
    border: 1px solid #5D0D11;
    color: #5D0D11;
}


select[name="messageType"] {
    border: 1px solid #5D0D11;
    color: #5D0D11;
}

textarea[ name="message"] {
    border: 1px solid #5D0D11;
    color: #5D0D11;
}

/*ありがと�?ペ�?�ジ*/
.alady{
    width:250px;
    height:300px;
}

/*ヘッダーメニューpc表示はハンバ�?�ガーメニューを表示しな�?*/
@media (min-width:769px){
    .spmenu {
        display: none;
    }
    
}

/*ヘッダーメニューモバイル表示はpcmenuを表示しな�?*/
@media (max-width:768px) {
    .main-nav{
        display: none;
    }
}

/*ハンバ�?�ガーメニューcss*/
    #hamburger {
        position: relative;
        display: block;
        width: 60px;
        height: 25px;
        margin: 25px 25px auto;
    }

    .humm{
        width:60px;
        height:50px;
    }
        
    .sp-nav {
        z-index: 1;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        display: block;
        width: 100%;
        background: rgba(0, 0, 0, .8);
        background-color: #0097B2;
        transition: all .2s ease-in-out;
        opacity: 0;
        transform: translateY(-100%);
    }

        .sp-nav ul {
            padding: 0;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            height: 100%;
        }

        .sp-nav li {
            margin: 0;
            padding: 0;
        }

            .sp-nav li span {
                font-size: 15px;
                color: #F9F8CD;
            }

            .sp-nav li a, .sp-nav li span {
                display: block;
                padding: 20px 0;
            }

        /*基準となるli要�?*/
        .sp-nav .close {
            position: relative;
            padding-left: 20px;
        }
            /*バツ印�?1*/
            .sp-nav .close::before {
                content: '';
                position: absolute;
                top: 50%;
                left: 0;
                display: block;
                width: 16px;
                height: 1px;
                background: #F9F8CD;
                transform: rotate( 45deg );
            }
            /*バツ印�?2*/
            .sp-nav .close::after {
                content: '';
                position: absolute;
                top: 50%;
                left: 0;
                display: block;
                width: 16px;
                height: 1px;
                background: #F9F8CD;
                transform: rotate( -45deg );
            }

    .toggle {
        transform: translateY( 0 );
        opacity: 1;
    }


    

    /*topペ�?�ジモバイル用CSS*/
    @media (max-width:768px) {
        .yuukaows {
            max-width: auto;
            margin: 10px auto 5px auto;
            padding: 0 10px 0 10px;
        }

        .mainv {
            max-width: auto;
            margin: auto;
        }

        .light {
            width: 30px;
            height: 30px;
        }

        .light2 {
            width: 20px;
            height: 20px;
        }

    
        .new dl {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            margin: 20px auto 20px auto;
            padding: 0 20px 0 20px;
        }

        .new dt {
            width: 100%;
            padding: 15px 15px 0 15px;
        }

        .new dd {
         width:100%;
            border-top: dotted 3px #e78f1c;
            margin:auto 0 auto 0;
        }
    }

    /*about,guideペ�?�ジモバイル用CSS*/
    @media (max-width:768px) {

        .oya {
       flex-direction:column;
           width: 100%;
           margin: auto;
        }


        .content {
           width: 100%;
           text-align: left;
        }

        .content2 {
           width: 100%;
           text-align: left;
        }


        .content 4 {
            width: 480px;
            height: 480px;
            text-align: justify;
            padding: 20px 20px 20px 20px;
        }
    }

 



    /*worksペ�?�ジモバイル用CSS*/
    @media (max-width:768px) {
        main{
           margin:auto 20px auto 20px;
        }

        .oya2 {
            width:100%;
            margin: auto ;
        }
        .content3 {
            padding: 10px 0 30px 0px;
            text-align: left;
        }
    }

    /*お問合わせフォー�?モバイル用CSS*/
    @media (max-width:768px) {
        form {
            padding: 20px 0;
        }

        dl {
            width: 90%;
        }

        .form-item {
            display: block;
        }

        dt {
            width: 100%;
        }

        dd {
            width: 100%;
        }
    }