@charset "utf-8";

/* reset */
html{box-sizing:border-box;-webkit-text-size-adjust:100%}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{padding:0;margin:0}audio:not([controls]){display:none;height:0}hr{overflow:visible}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}summary{display:list-item}small{font-size:80%}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted;text-decoration:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}input{border-radius:0}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[disabled]{cursor:default}[type=number]{width:auto}[type=search]{-webkit-appearance:textfield}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:0;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,select{text-transform:none}button,input,select,textarea{background-color:transparent;border-style:none;color:inherit}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}img{border-style:none;vertical-align: bottom}progress{vertical-align:baseline}svg:not(:root){overflow:hidden}audio,canvas,progress,video{display:inline-block}@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none}::selection{background-color:#b3d4fc;color:#000;text-shadow:none}ul,ol{list-style:none;}a{text-decoration:none;}.wrapper{overflow:hidden;}body{overflow-y:scroll;}

img {
    max-width: 100%;
    vertical-align: bottom;
}

body,a {
    color: #333;
}

/* header */
.page-header {
    width: 100%;
    position: sticky;/* 幅高さは指定すること */
    top: 0;
    left: 0;
    flex-grow: 1;
    z-index: 100;
    background-color: #fff;
}


.g-nav {
    background-color: #fff;
    border-bottom: 1px solid #fe7500;
    flex-grow: 1;
}

.nav-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60px;
}

h1 {
    font-size: 20px;
    position: absolute;
    top:16px;
    left: 10px;
    font-family: 'Montserrat', sans-serif;
}

.g-nav li {
    padding: 0 20px;
}

.g-nav a {
    font-family: 'Limelight', cursive;
    font-weight: bold;
    position: relative;
    z-index: 1;
}

.g-nav a::after {
    position: absolute;
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    background-color: #FBDA32;
    border-radius: 50%;
    top: -14px;
    left: calc(50% - 5px);
    /*不透明度0で非表示*/
    opacity: 0;
    /*下方向へ50%移動*/
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
    /*アニメーションの速度設定*/
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
}

.g-nav a:hover::after {
  /*不透明度1で表示*/
  opacity: 1;
  /*0位置に移動*/
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.g-nav li:last-of-type>a {
    background-color: #ffb16c;
    padding: 6px;
    color: #fff;
    border-radius: 6px;
}

.nav-wrapper {
    visibility: hidden;
    opacity: 0;
    display: none;
}

.burger-btn {
    display: none;
}

@media screen and (max-width: 767px) {

    h1 {
        width: 300px;
        top: 10px;
        font-size: 20px;
        font-family: 'Montserrat', sans-serif;
    }

    .nav-menu {
        flex-wrap: wrap;
        height: 80px;
    }

    /* デフォルトのbuttonスタイルをリセット */
	button {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		background: transparent;
		border: 0;
		border-radius: 0;
		color: inherit;
		cursor: pointer;
		font: inherit;
		margin: 0;
		outline: none;
		padding: 0;
		vertical-align: middle;
	}

    .burger-btn{
        display: block;      
        width: 39px;      
        height: 39px;      
        position: relative;      
        z-index: 3;
        border:none;
        left: 320px;
        
      }    
      .bar{      
        width: 20px;      
        height: 1px;        
        display: block;      
        position: absolute;      
        left: 50%;      
        transform: translateX(-50%);      
        background-color: rgb(255, 102, 0);    
      }    
      .bar_top{   
        top: 10px;
      }
      .bar_mid{    
        top: 50%;
        transform: translate(-50%,-50%);
      }
      .bar_bottom{
        bottom: 10px;
      }

      .burger-btn.close .bar_top{      
        transform: translate(-50%,10px) rotate(45deg);      
        transition: transform .3s;    
      }    
      .burger-btn.close .bar_mid{      
        opacity: 0;       
        transition: opacity .3s;    
      }    
      .burger-btn.close .bar_bottom{      
      transform: translate(-50%,-8px) rotate(-45deg);      
      transition: transform .3s;    
      }

      .nav-wrapper{      
        /* visibility: hidden; */     
        /* opacity: 0; */ 
        width: 100%;      
        height: 100vh;      
        position: fixed;      
        top: 0;      
        right: 0;
        transition: all .5s;       
        z-index: 2;     
      }     
      .header-nav{        
        width: 100%;        
        height: 100%;        
        background-image: url('../../img/sp-nav-bk.jpg');
        background-position:bottom;
        background-repeat:no-repeat;  
        z-index: 2;
        opacity:0.9;
      }     
      .nav-list{        
        display: block;        
        position: absolute;        
        top: 50%;        
        left: 50%;        
        transform: translate(-50%,-50%);        
        text-align: center;     
        font-family:'Montserrat', sans-serif;
        font-weight: 700;
      }      
      .nav-item{        
        margin-right: 0;        
        margin-bottom: 40px;      
      }
      
      /* メニューオープン時 */
      .nav-wrapper.fade {
          visibility: visible;
          opacity: 1;
          display: block;
      }

      .noscroll{
        overflow: hidden;
      }


      .nav-menu {
        display: none;
      }

      .g-nav {
          border-bottom: none;
      }

}

/* main */
.pic-sp {
    display: none;
}

@media only screen and (max-width: 768px) {
    .pic-pc {
        display: none;
    }

    .pic-sp {
        display: block;
    }
}

.title {
    text-align: center;
    font-size: 36px;
    padding: 30px 0;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 500;
}

.content-txt {
    max-width: 600px;
    font-size: 16px;
    line-height: 1.6;
    text-align: left;
    margin: 0 auto;
}

.wrapper {
    max-width: 960px;
    margin: 0 auto 30px;
}

.main-visual {
    max-width: 400px;
    margin: 0 auto 50px;
    position: relative;
}

.main-visual img {
    position: relative;
    z-index: 2;
}

.main-visual::before {
    content: '';
    position: absolute;
    bottom: -30px;
    right: -30px;
    width: 100%;
    height: 100%;
    background-image: radial-gradient(
        #ea987e 20%,
        rgba(0 0 0 / 0) 21%
    );
    background-size: 10px 10px;
    background-position: right bottom;
    background-repeat: repeat;
    z-index: 1;
}

.sp {
    display: none;
}

.back-btn {
    max-width: 600px;
    margin: 60px auto 0;
}

.back-btn a {
    border-bottom: 1px solid #333;
}

@media screen  and (max-width: 767px) {

    .title {
        font-size: 24px;
    }

    .content-txt {
        max-width: 800px;
        font-size: 16px;
        line-height: 1.6;
        text-align: left;
        margin: 10px 16px 0;
        }

        main {
            margin: 0 10px;
        }
    
        .wrapper {
            margin: 0 auto 30px;
        }
    
        .main-visual {
            margin: 0 16px 60px;
        }

        .sp {
            display: block;
        }

        .back-btn {
            max-width: 600px;
            margin: 30px 16px 0;
        }
    }

/* contact */
form {
    width: 90%;
    max-width: 500px;
    height: auto;
    margin: 0 auto 40px;
    padding-top: 50px;
}

label span {
    width: 60px;
    margin-left: 8px;
    text-align: center;
    padding: 1px;
    background-color: #f83600;
    color: #fff;
    border-style: none;
    font-size: 0.8rem;
}

.contact__item {
    margin-bottom: 20px;
}

.contact__item input {
    width: 100%;
    margin: 0;
    padding: 10px 5px;
    background-color: #fff;
    border-style: none;
    border: 1px solid #333;
    border-radius: 4px;
    text-align: left;
    outline: none;
}

textarea {
    width: 100%;
    margin: 0;
    padding: 10px 5px;
    background-color: #fff;
    border-style: none;
    border-radius: 4px;
    font-size: 1rem;
    text-align: left;
    outline: none;
    border: 1px solid #333;
}

.submit-btn {
    width: 100px;
    text-align: center;
    padding: 15px;
    background-color: #ffb16c;
    border-style: none;
    border-radius: 4px;
    font-size: 1rem;
    color: #fff;
    filter: drop-shadow(1px 1px 2px rgba(0,0,0,.3));
    outline: none;
}

.submit-btn:hover {
    opacity: .8;
	transform: translateY(-3px);
	opacity: .7;
}

/* footer */
footer {
    margin: 0 auto;
    padding: 40px 20px 40px;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
}