html{
    font-size: 62.5%;
}
body{
    font-size: 1.6rem;
    font-family: Arial, Helvetica, sans-serif;
    color: #000;
    background: #f0f4fb;
    line-height: 1.5;
}
img{
    vertical-align: bottom;
    max-width: 100%;
    height: auto;
}

#wrapper{
    margin: 0 auto;
    width: 100%;
    }


/* ●smart.css 画面の横幅が600pxまで */
/* ヘッダー */

header{
    height: 50px;
}

header h1 img{
    width: 45px;
    position: absolute;
    top: 10px;
    left: 20px;
}

/* ハンバーガーメニュークリック前
 /* クリックエリアと位置を指定 ---------------------- */
.btnHamburger {
    position: fixed;
    z-index: 3;
    top: 15px;
    right: 10px;
    width: 30px; /* クリックエリアの横幅*/
    height: 20px; /* クリックエリアの高さ*/
    /* cursor: pointer; */
}
        
/* 3本線の1本ごとに共通するスタイルを指定 ---------------------- */
.btnHamburger .line {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 30px; /* 横幅 */
    height: 4px; /* 1本辺りの高さ */
    background: #3D5276; /* 線の色 */
        
    /* 適用するプロパティ、変化する時間、変化する速度 */
    transition: 0.3s;
}
        
    /* 3本線の各線の位置を指定 ---------------------- */
.btnHamburger .line_01 { top: 0px; }
.btnHamburger .line_02 { top: 8px; }
.btnHamburger .line_03 { top: 16px; }

/* #coverlayerクリック前 */
#coverlayer{
    position: fixed;
    z-index: 2;
    top: 0;
    right: 0;
    bottom: 0;
    width: 1px;
    background: #3D5276;
    opacity: 0.2;
    transition: 0.5s;
}


/* navクリック前 */
nav{
    position: fixed;
    top: 100px;
    right: -100%;
    width: 100%;
    opacity: 0;
    transition: 1s;
    z-index: 2;

}

/* ハンバーガーメニュークリック後 */
/* 最上部の線のスタイル ---------------------- */
.btnHamburger.is-active .line_01 {
    top: 8px; /* 上から2番目の線の位置に変更 */
    background: #fff;
    
    /* 線を45度回転 */
    transform: rotate(45deg);
}
    
/* 上から2番目の線のスタイル ---------------------- */
.btnHamburger.is-active .line_02 {
    opacity: 0; /* 不透明度を下げて線を消す */
}
    
/* 最下部の線のスタイル ---------------------- */
.btnHamburger.is-active .line_03 {
    top: 8px; /* 上から2番目の線の位置に変更 */
    background: #fff;
        
    /* 線を135度回転 */
    transform: rotate(135deg);
}

/* #coverlayerクリック後 */
#coverlayer.is-active{
    width:  85%;
    opacity: 1;
}

/* navクリック後 */
nav.is-active{
    left: 30%;
    opacity: 1;
    position: fixed;
    z-index: 1000;
}

nav ul li {
    margin: 20px;
    }

 nav ul li a{
	color: #fff;
	text-decoration: none;
    font-size: 1.8rem;
    margin-left: 60px;
    font-family: "Handlee", cursive;
}

nav ul li a:hover{
    font-weight: bold;
}


p{
    font-size: 1.3rem;
    margin: 0 0 10px 10px;
    padding-right: 10px;
}

main article h2{
    font-size: 2rem;
    font-weight: bold;
    background: #3D5276;
    padding: 5px 0 5px 10px; 
    margin-bottom: 20px;
    color: #fff;
    font-family: "Handlee", cursive;
}

dt{
    margin-left: 10px;
}

.dd1{
    margin: 10px 0 5px 10px;
}

footer{
    background: #3D5276;
    text-align: center;
}
footer small{
    font-size: 1.2rem;
    line-height: 40px;
    color: #fff;
}

/* フォームのビジュアル指定 */
main section dd{
    margin: 0 0 20px 10px;
}
input[type="text"],input[type="email"]{
    width:300px;
}

textarea{
    width: 80%;
    height: 200px;
}
label{
    margin-right:10px;
}
input[type="submit"]{
    margin:0 0 30px 10px;
    background-color: #3D5276;
    color: #fff;
    border-radius: 30px;
    padding: 10px 20px;
    font-size: 1.4rem;
}

/* エラーメッセージの色 */
.error{
    color: #f00;
}

main section h3{
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 15px;
}
main section p{
    margin-bottom: 15px;
}

@media screen and (min-width: 600px){

header{
        height: 70px;
}
    
header h1 img{
    position: absolute;
    top: 15px;
    left: 20px;
    width: 70px;
}

 nav ul li a{
    margin-left: 180px;
}


p{
    font-size: 1.4rem;
    margin: 0 0 10px 10px;
    padding-right: 10px;
}

main article h2{
    font-size: 2.1rem;
    font-weight: bold;
    background: #3D5276;
    padding: 5px 0 5px 10px; 
    margin-bottom: 20px;
}

footer small{
    font-size: 1.2rem;
    line-height: 60px;
}

input[type="text"],input[type="email"]{
    height: 32px;
}

input[type="submit"]{
    width: 150px;
    padding: 10px 20px;
}

}

/* パソコン */
@media screen and (min-width: 980px){

#wrapper{
    width: 980px;
    margin: 0 auto;
}

header{
    height: 80px;
}

header h1 img{
    position: absolute;
    top: 20px;
    left: 23px;
    width: 5%;
}

 nav ul li a{
    margin-left: 330px;
}


p{
    font-size: 1.5rem;
    margin: 0 0 20px 10px;
    padding-right: 10px;
}

main article h2{
    font-size: 2.2rem;
    font-weight: bold;
    background: #3D5276;
    padding: 5px 0 5px 10px; 
    margin-bottom: 20px;
}

footer small{
    font-size: 1.3rem;
    line-height: 60px;
}

/* フォームのビジュアル指定 */

main section dd{
    margin: -1.5em 0 30px 150px;
}

textarea{
    width: 80%;
    height: 200px;
}

}
