@charset "utf-8";
/* CSS Document */

*{
	margin: 0;
	padding: 0;
    word-break: break-all;
}

html { 
	overflow-y: scroll;
	overflow-x: hidden;
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
	margin-top: 0 !important;
}


body {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
	font-size: 1.3rem;/*16*/
	/*-webkit-text-size-adjust: none;*/
	line-height: 1.5;
	color: #000000;
	overflow: hidden;
}

html.is-open {
	overflow: hidden;
}

.noto-serif-jp-400 {
  font-weight: 400;
}

.noto-serif-jp-500 {
  font-weight: 500;
}

.noto-serif-jp-700 {
  font-weight: 700;
}


img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: top;
	vertical-align: bottom;
}
a {
	/*overflow: hidden;*/
	outline: none;
	color: #000000;
	text-decoration:none;
}
.pc_hide {
}

.sp_hide {
	display: none !important;
}

.mokuji_hide{
	display: none;
}

a {
	opacity: 1;/*-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;*/
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"], input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
}


select::-ms-expand {
    display: none;
}

h1,h2,h3,h4{
	font-weight: 500;
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

#all_wrap,
#contents{
	overflow: hidden;
}

ol, ul {
    list-style: none;
	box-sizing: border-box;
}

/*===================================
	外枠
=====================================*/

#all_wrap{
	width: 100%;
}

#container{
	width: 83.3333%;/*600*/
	margin: 0 auto;
}

/*===================================
	#header_wrap
=====================================*/

#header_wrap{
	width: 100%;
	padding: 40px 0 30px;
}

#header_wrap h1.head_logo{
	width: 66.8333%;/*401*/
	margin: 0 auto;
}

#header_wrap h1.head_logo img{
	width: 100%;
	height: auto;
}

/*===================================
	.main_wrap
=====================================*/

.main_wrap{
	width: 100%;
	margin: 30px 0 35px;
	position: relative;
}

.main_wrap::before{
	content: '';
	display: inline-block;
	background: url("images/lp/logo01.svg")no-repeat;
	background-size: contain;
	width: 55px;
	height: 55px;
	position: absolute;
	bottom: -28px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}

.main_wrap img{
	width: 100%;
	height: auto;
}

.main_wrap h2.catch_txt{
	width: 100%;
	font-size: 2.35rem;
	line-height: 1;
	color: #fff;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-5%);
	z-index: 1;
}

.main_wrap .detail_link{
	width: 37.50%;/*150*/
	position: absolute;
	bottom: -45px;
	right: 0;
	z-index: 1;
}

.main_wrap .detail_link a{
	display: flex;
	align-items: center;
	padding: 10px 0;
	border-bottom: 1px solid #000;
	position: relative;
}

.main_wrap .detail_link a::after{
	content: '';
	display: inline-block;
	background: url("images/lp/link_ico.svg")no-repeat;
	background-size: contain;
	width: 16px;
	height: 16px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	z-index: 1;
}


/*===================================
	.concept_wrap
=====================================*/

.concept_wrap{
	width: 100%;
	padding: 35px 0 50px;
}

.concept_wrap .txt_area01 h2.concept_midashi{
	font-size: 1.75rem;
	line-height: 1;
	letter-spacing: 0.15em;
	color: #231815;
	
}

.concept_wrap p.txt01{
	margin-top: 25px;
	font-size: 1.3rem;
	line-height: 2.2301;
	letter-spacing: 0.15em;
	color: #231815;
	text-align: justify;
}

.concept_wrap .concept_img{
	margin-top: 75px;
	width: 100%;
	position: relative;
}

.concept_wrap .concept_img::before{
	content: '';
	display: inline-block;
	background: url("images/lp/txt_img.svg")no-repeat;
	background-size: contain;
	width: 4.35rem;
	height: 260px;
	position: absolute;
	top: -199px;
	right: 1.25%;
	z-index: 1;
}

.concept_wrap .concept_img img{
	width: 100%;
	height: auto;
}

.concept_wrap .txt_area02{
	margin-top: 60px;
}

.concept_wrap .txt_area02 + .txt_area02{
	margin-top: 50px;
}

.concept_wrap .txt_area02 p.large_txt{
	font-size: 1.5rem;
	line-height: 1;
	letter-spacing: 0.025em;
	color: #231815;
}

.concept_wrap .txt_area02 p.txt02{
	margin-top: 15px;
	font-size: 1.3rem;
	line-height: 1.8333;
	color: #231815;
	text-align: justify;
}

.concept_wrap .gallery{
	margin-top: 55px;
	display: flex;
	justify-content: space-between;
}

.concept_wrap .gallery .photo01{
	width: 47.75%;
}

.concept_wrap .gallery .photo01 img{
	width: 100%;
	height: auto;
}

/*===================================
	.menu_wrap
=====================================*/

.menu_wrap{
	width: 100%;
	padding: 50px 0;
}

.menu_wrap h2.midashi_img{
	width: 16.6666%;/*100*/
	margin: 0 auto;
}

.menu_wrap h2.midashi_img img{
	width: 100%;
	height: auto;
}

.menu_wrap .menu_img{
	width: calc(100vw - 30px);
	margin-top: 45px;
	position: relative;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.menu_wrap .menu_img img{
	width: 100%;
	height: auto;
}

/*===================================
	.information_wrap
=====================================*/

.information_wrap{
	width: 100%;
	padding: 50px 0 75px;
}

.information_wrap .left_area{
	width: 100%;
}

.information_wrap .left_area p.large_txt{
	font-size: 1.5rem;
	line-height: 1;
	color: #231815;
}

.information_wrap .right_area{
	width: 100%;
	margin-top: 50px;
}

.information_wrap .right_area .logo_img{
	width: 69.6666%;/*418*/
}

.information_wrap .right_area .logo_img img{
	width: 100%;
	height: auto;
}

.information_wrap .right_area .txt_area{
	width: 100%;
	margin-top: 30px;
}

.information_wrap .right_area .txt_area dl{
	font-size: 1.3rem;
	line-height: 2.10;
	color: #231815;
	text-align: justify;
}

.information_wrap .right_area .txt_area dl + dl{
	margin-top: 1.5em;
}

.information_wrap .right_area .txt_area dl dt{
	width: 100%;
}

.information_wrap .right_area .txt_area dl dd{
	width: 100%;
}


.information_wrap .right_area .txt_area p.info_txt{
	font-size: 1.3rem;
	line-height: 2.10;
	color: #231815;
	text-align: justify;
}

.information_wrap .right_area .txt_area a.tel-link{
	color: #0000EE;
	text-decoration: underline;
}

/*===================================
	.information_wrap
=====================================*/

#footer_wrap{
	border-top: 1px solid rgba(35,24,21,0.25);
	padding: 50px 0;
}

#footer_wrap p.copy_txt{
	font-size: 1.0rem;
	line-height: 1;
	letter-spacing: 0.05em;
	color: #231815;
	text-align: center;
}

























































































































































