@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700&family=Noto+Sans+JP:wght@300;400;500;700&family=Oswald:wght@200;300;400;500;600;700&display=swap');

*:focus {
  outline: none;
}

#ha_wrapper{
	max-width:1500px;
    width: 100%;
	text-align: center;
    margin: 5% auto 0;
	color: #000000;
    display: block;
    padding-bottom: 8%;
    letter-spacing: 1px;
    font-family: 'Noto Sans JP', sans-serif;
}
#ha_wrapper img{
    width: 100%;
    border: 0;
	vertical-align: bottom;
} 
#ha_wrapper ul{
	padding: 0;
	overflow: hidden;
    margin: 0 auto;
}
#ha_wrapper li{
	list-style: none;
    margin: 0 auto;
}
#ha_wrapper a{
    text-decoration: none;
}
#ha_wrapper h1{
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 20px;
    text-align: center;
    margin: 3% auto;
    line-height: 1,2em;
    
}

.pc{
	display: block;
}
.sp{
	display: none;
}
.title{
    width: 30%;
    text-align: center;
    display: block;
    margin: 0 auto;
}

.lead{
    color: #000000;
	display: block;
	margin: 5% auto;
	font-size: 16px;
    line-height: 2.2em;
    letter-spacing: 1px;
	text-align: center;
    font-weight: 300;
}
#ha_contents{
    width: 100%;
    margin: 0 auto;
    
}
#ha_contents .ha_box{
    max-width: 1100px;
    width: 100%;
    text-align: center;
    margin: 5% auto;
    display: inline-block;
    position: relative;
}
#ha_contents .ha_box .mainbox{
    width: 100%;
    text-align: center;
    display: inline-block;
    margin: 0 auto;
}
#ha_contents .ha_box .mainbox .nobox{
    width: 48%;
    float:right;
    display: inline-block;
    margin: 0 auto;
    margin-top: 10%;
}
#ha_contents .ha_box .mainbox .nobox .no{
    width: 40%;
    text-align: center;
    margin: 0 auto;
    display: block;
}

#ha_contents .ha_box .mainbox .mainimg{
    width: 50%;
    float: left;
    position: relative;
    display: inline-block;
    margin: 0 auto;
}
#ha_contents .ha_box .mainbox .bg{
    width: 94%;
    float: right;
    margin-top: 5%;
    position: relative;
    display: inline-block;
    
}
#ha_contents .ha_box .mainbox .main{
    width: 94%;
    position: absolute;
    left: 0;
    top: 0;
}
#ha_contents .ha_box .mainbox .detailbox{
    width: 45%;
    float: right;
    display: inline-block;
    margin: 5% auto 0;
}
#ha_contents .ha_box .mainbox .detailbox .item{
    font-size: 20px;
    text-align: center;
    font-weight:bold;
    font-family: 'Oswald', sans-serif;
    line-height: 2em;
    letter-spacing: 2px;
    margin: 0 auto;
}
#ha_contents .ha_box .mainbox .detailbox .col{
    width: 50%;
    text-align: center;
    display: block;
    margin: 2% auto;
}
#ha_contents .ha_box .stylebox{
    width: 100%;
    text-align: center;
    display: inline-block;
    position: relative;
    margin: 10% auto;
    border-bottom: #000000 2px solid;
    padding-bottom: 5%;
}
#ha_contents .ha_box .stylebox ul{
    width: 70%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
}
#ha_contents .ha_box .stylebox ul li{
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    margin: 4% 5%;
}
#ha_contents .ha_box .stylebox .plus_l{
    width: 50px;
    position: absolute;
    bottom: 2%;
    left: 0;
    z-index: 5;
}
#ha_contents .ha_box .stylebox .plus_r{
    width: 50px;
    position: absolute;
    bottom: 2%;
    right: 0;
    z-index: 5;
}


/*----------タイトル----------*/
.ttlbox{
	position: relative;
    font-family: 'Oswald', sans-serif;
}
.ttlbox .ttl{
	font-size: 26px;
	width: 100%;
	padding-bottom: 2px;
	position: relative;
	margin-bottom: 3%;
    text-align: center;
    font-weight: 400;
    line-height: 2em;
}
.ttlbox .ttl::after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0%;
	right: 100%;
	background: #000;
	height: 2px;
	opacity: 0;
	transition: 1.2s all 0s ease;
}
.ttlbox .ttl.ac::after{
	content: "";
	width: auto;
	position: absolute;
	bottom: 0;
	left: 0%;
	right: 0%;
	background: #000;
	opacity: 1;
}
.ttlbox .ttl span{
    font-size: 15px;
    font-weight: 400;
}




.mT20{
    margin-top: 20%;
}

/************************************************************
                ボタン
************************************************************/

a.btn_01 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
    width: 50%;
	margin: 10% auto;
    padding: 2% 0;
	border: 1px solid #000000;
	transition: 0.5s;
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 15px;
    background-color: #000000;
    color: #fff;
    line-height: 1.5em;
}
a.btn_01:hover {
    background: #737373;
}
a.btn_23 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 30%;
	margin: auto;
    padding: 2% 4%;
	font-weight: 400;
	border: 1px solid #000000;
	color: #000000;
	cursor: pointer;
	position: relative;
 	overflow: hidden;
 	z-index: 1;
    font-size: 18px;
    background: #D0D0D0;
    
}
a.btn_23::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgb(0, 0, 0);
	transform: translateX(-100%);
	transition: all .3s;
	z-index: -1;
}
a.btn_23:hover::before {
	transform: translateX(0);
}
a.btn_23:hover {
	color: #fff;
}
.hr{
    width: 100%;
    border-bottom:  1px solid #5B5B5B;
    margin: 0 auto;
    text-align: center;
    
}

.Right{
    float: right;
}
.Left{
    float: left;
}

.small{
	font-size:60%;
}

.clear {
	clear: both;
}

/************************************************************
                sp
************************************************************/

@media only screen and (max-width:768px){
    
    #ha_wrapper{
        margin: 15% auto;
    }
    .title{
        width: 70%;
    }
    .lead{
        font-size: 14px;
        margin: 0% auto;
        padding: 15% 0;
        border-bottom: #DCDCDC 1px solid;
    }
    #ha_contents .ha_box{
        width: 94%;
    }
    #ha_contents .ha_box .mainbox{
        width: 94%;
    }
    #ha_contents .ha_box .mainbox .mainimg{
        width: 100%;
    }
    #ha_contents .ha_box .mainbox .nobox{
        width: 100%;
    }
    #ha_contents .ha_box .mainbox .nobox .no{
        width: 40%;
        margin: 5% auto;
    }
    #ha_contents .ha_box .mainbox .detailbox{
        width: 100%;
    }
    #ha_contents .ha_box .mainbox .detailbox .item{
        font-size: 16px;
    }
    #ha_contents .ha_box .mainbox .detailbox .col{
        width: 60%;
        margin: 0 auto;
    }
    #ha_contents .ha_box .stylebox ul{
        width: 100%;
    }
    #ha_contents .ha_box .stylebox ul li{
        margin: 8% 1%;
    }
    #ha_contents .ha_box .stylebox .plus_l{
        width: 20px;
    }
    
    #ha_contents .ha_box .stylebox .plus_r{
        width: 20px;
    }
    .ttlbox .ttl{
        font-size: 18px;
        letter-spacing: 0px;
        font-weight: 500;
    }
    a.btn_01{
        width: 90%;
        font-size: 15px;
        margin: 10% auto 0;
    }
    a.btn_23{
        width: 80%;
        font-size: 15px;
        margin: 5% auto 0;
        line-height: 2em;
        font-weight: 400;
        background: #E0E0E0;
    }
    
    .pc {
		display:none;
	}
	.sp {
		display:block;
		width: 100%;
	}

}

