@charset "utf-8";
/* CSS Document */

.common_link_btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 75px;
	border: 3px solid #f28e1e;
	border-radius: 38px;
	background-image: url("../images/common/link_ico_col06.svg");
	background-repeat: no-repeat;
	background-size: 2.25em auto;/*36*/
	background-position: right 1.25em center;/*20*/
	background-color: #fff;
	font-size: 112.5%;/*18*/
	line-height: 1;
	letter-spacing: 0.1em;
	color: #000000;
	text-decoration: none;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}

.common_link_btn a:hover,
.common_link_btn a:focus-visible{
	opacity: 1;
	background-color: #f28e1e;
	color: #fff;
}

/*===================================
	.hiroba.block01
=====================================*/

.hiroba.block01{
	padding: 63px 0 126px;
	position: relative;
	isolation: isolate;

}

.hiroba.block01 .sec-inner .large_img{
	width: 39.91%;/*439*/
	margin: 0 auto;
}

.hiroba.block01 .sec-inner .large_img img{
	width: 100%;
	height: auto;
}

.hiroba.block01 .sec-inner p{
	font-size: 100%;
	line-height: 1.88;
	letter-spacing: 0.05em;
	text-align: justify;
	color: #333333;
}

.hiroba.block01 .sec-inner p{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.hiroba.block01 .sec-inner p.large_txt{
	font-size: 137.5%;/*22*/
	line-height: 1.59;
	letter-spacing: 0.05em;
	color: #754c24;
	text-align: justify;
}

.hiroba.block01 .sec-inner p.center{
	text-align: center;
}

.hiroba.block01 .sec-inner .flex_column01{
	width: 90.91%;/*1000*/
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	gap: 0;	
}

.hiroba.block01 .sec-inner .flex_column01 .img_area{
	width: 47.3%;
	flex-basis: auto !important;
    flex-grow: 0 !important;
}

.hiroba.block01 .sec-inner .flex_column01 .img_area img{
	width: 100%;
	height: auto;
}

.hiroba.block01 .sec-inner .flex_column01 .txt_area{
	width: 47.0%;
	flex-basis: auto !important;
    flex-grow: 0 !important;
}

.hiroba.block01 .sec-inner .flex_column02{
	width: 90.91%;/*1000*/
	margin: 0 auto;
	display: flex;
	gap: 0;
	background: #fffbee;
	border-radius: 20px;
	padding: 24px 0;
	box-sizing: border-box;
	position: relative;
}

.hiroba.block01 .sec-inner .flex_column02::before{
	content: '';
	background: url("../images/hiroba/area_shadow01.webp")no-repeat;
	background-size: 100% auto;
	width: 101.1%;
	height: auto;
	aspect-ratio: 1011 / 246;
	position: absolute;
	top: 22px;
	left: 2.9%;
	z-index: -1;
}

.hiroba.block01 .sec-inner .flex_column02 .img_area{
	width: 24.0%;
	flex-basis: auto !important;
    flex-grow: 0 !important;
}

.hiroba.block01 .sec-inner .flex_column02 .img_area figure{
	width: 73.75%;/*177*/
	margin: 0 auto;
}

.hiroba.block01 .sec-inner .flex_column02 .img_area figure img{
	width: 100%;
	height: auto;
}

.hiroba.block01 .sec-inner .flex_column02 .txt_area{
	width: 72.1%;
	flex-basis: auto !important;
    flex-grow: 0 !important;
}

.hiroba.block01 .sec-inner .flex_column02 .txt_area p.border{
	padding: 15px 0;
	border-bottom: 1px solid #f28e1e;
	box-sizing: border-box;
	font-size: 156.25%;/*25*/
	line-height: 1;
}

.hiroba.block01 .sec-inner .num_midashi{
	display: flex;
	align-items: center;
	gap: 0 1.5%;
	width: 90.91%;/*1000*/
	height: 90px;
	border-radius: 20px;
	background-color: #fff0f8;
	margin: 0 auto;
}

.hiroba.block01 .sec-inner .num_midashi.color02{
	background-color: #eef7e4;
}

.hiroba.block01 .sec-inner .num_midashi.color03{
	background-color: #fcf4e0;
}

.hiroba.block01 .sec-inner .num_midashi p:first-child{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 6.0%;
	height: auto;
	aspect-ratio: 1 / 1;
	background: #fff;
	border-radius: 50%;
	font-size: 187.5%;/*30*/
	line-height: 1;
	letter-spacing: 0.05em;
	color: #e188b5;
	margin-left: 2.2%;
}

.hiroba.block01 .sec-inner .num_midashi.color02 p:first-child{
	color: #7db35b;
}

.hiroba.block01 .sec-inner .num_midashi.color03 p:first-child{
	color: #ec8234;
}


.hiroba.block01 .sec-inner .num_midashi p:last-child{
	flex: 1;
	font-size: 187.5%;/*30*/
	line-height: 1;
	letter-spacing: 0.05em;
	color: #603813;
}

.hiroba.block01 .sec-inner .flex_column03{
	width: 90.91%;/*1000*/
	margin: 0 auto;
	display: flex;
	gap: 0;
}

.hiroba.block01 .sec-inner .flex_column03 .img_area{
	width: 50.0%;
	flex-basis: auto !important;
    flex-grow: 0 !important;
}

.hiroba.block01 .sec-inner .flex_column03 .img_area figure{
	width: 61.6%;/*308*/
	margin: 0 auto;
}

.hiroba.block01 .sec-inner .flex_column03 .img_area figure img{
	width: 100%;
	height: auto;
}

.hiroba.block01 .sec-inner .flex_column03 .txt_area{
	width: 47.0%;
	flex-basis: auto !important;
    flex-grow: 0 !important;
}

.hiroba.block01 .sec-inner .flex_column03 .txt_area .common_link_btn{
	width: 63.83%;/*300*/
	margin: 0 auto;
}

.hiroba.block01 .sec-inner h4.h4_midashi02 {
	padding-bottom: 23px;
	font-size: 187.5%;/*30*/
	line-height: 1;
	letter-spacing: 0.05em;
	color: #754c24;
	text-align: center;
	position: relative;
}

.hiroba.block01 .sec-inner h4.h4_midashi02::before {
	content: '';
	background: url("../images/common/tit_parts01.svg")no-repeat;
	background-size: 100% auto;
	width: 5.73%;/*63*/
	height: auto;
	aspect-ratio: 76 / 11;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap{
	width: 83.27%;/*916*/
	margin: 30px auto 0;
	border: 3px solid #f28e1e;
	border-radius: 20px;
	background-color: #fff;
	padding: 33px 0 44px;
	box-sizing: border-box;
	position: relative;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap::before{
	content: '';
	background: url("../images/hiroba/area_shadow02.webp")no-repeat;
	background-size: 100% auto;
	width: 103.28%;/*946*/
	height: auto;
	aspect-ratio: 946 / 615;
	position: absolute;
	top: 39px;
	left: 0.44%;/*4*/
	z-index: -1;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01,
.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area02,
.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03{
	width: 88.54%;/*811*/
	margin: 0 auto;
	box-sizing: border-box;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01{
	display: flex;
	gap: 0 9.0%;/*73*/
	padding-bottom: 31px;
	border-bottom: 2px solid #aeaeae;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01 .tel_area{
	width: 45.01%;/*365*/
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01 .tel_area p{
	font-size: 143.75%;/*23*/
	line-height: 1;
	letter-spacing: 0.05em;
	color: #754c24;
	text-align: right;
	padding-right: 17.81%;/*65*/
	box-sizing: border-box;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01 .tel_area .img{
	width: 100%;
	margin-top: 4px;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01 .tel_area .img img{
	width: 100%;
	height: auto;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01 .email_area{
	width: 40.32%;/*327*/
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01 .email_area p{
	font-size: 143.75%;/*23*/
	line-height: 1;
	letter-spacing: 0.05em;
	color: #754c24;
	text-align: right;
	padding-right: 10.70%;/*35*/
	box-sizing: border-box;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01 .email_area .img{
	width: 100%;
	margin-top: 4px;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area01 .email_area .img img{
	width: 100%;
	height: auto;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area02{
	padding: 25px 0 28px;
	border-bottom: 2px solid #aeaeae;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area02 ul.contact_list{
	width: max-content;
}
.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area02 ul.contact_list li{
	font-size: 125%;/*20*/
	line-height: 1;
	letter-spacing: 0;
	color: #231815;
	padding-left: 1.2em;/*24*/
	box-sizing: border-box;
	position: relative;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area02 ul.contact_list li::before{
	width: 0.9em;/*18*/
	top: 2px;
	left: 0;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area02 ul.contact_list li + li{
	margin-top: 8px;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03{
	padding-top: 34px;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 p.c_txt_lv1{
	font-size: 143.75%;/*23*/
	line-height: 1;
	letter-spacing: 0.05em;
	color: #754c24;
	text-align: center;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 p.place_txt{
	margin-top: 13px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 125%;/*20*/
	line-height: 1;
	color: #231815;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 p.place_txt::before{
	content: '';
	background: url("../images/hiroba/place_ico.svg")no-repeat;
	background-size: 100% auto;
	width: 4.18%;/*23*/
	height: auto;
	aspect-ratio: 23 / 33;
	margin-right: 2.36%;/*13*/
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 .c_list{
	width: max-content;
	margin: 18px auto 0;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 .c_list p{
	font-size: 100%;
	line-height: 1.56;
	color: #231815;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 .common_link_btn{
	width: 53.02%;/*430*/
	margin: 28px auto 0;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 .common_link_btn a{
	position: relative;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 .common_link_btn a::before {
	content: '';
	background: url("../images/hiroba/mail_ico02.webp") no-repeat;
	background-size: 100% auto;
	width: 8.37%; /*36*/
	height: auto;
	aspect-ratio: 36 / 26;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 7.44%; /*32*/
	z-index: 1;
	transition: opacity 0.3s ease;
	opacity: 1;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 .common_link_btn a::after {
	content: '';
	background: url("../images/hiroba/hov_mail_ico02.webp") no-repeat;
	background-size: 100% auto;
	width: 8.37%;
	height: auto;
	aspect-ratio: 36 / 26;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 7.44%;
	z-index: 2;
	transition: opacity 0.3s ease;
	opacity: 0;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 .common_link_btn a:hover::before {
	opacity: 0;
}

.hiroba.block01 .sec-inner .hiroba_contact_wrap .contact_area03 .common_link_btn a:hover::after {
	opacity: 1;
}

/**/

.hiroba.block01 .sec-inner .gmap{
	width: 83.27%;/*916*/
	margin: 0 auto;
}

.hiroba.block01 .sec-inner .gmap iframe{
	width: 100%;
	height: auto;
	aspect-ratio: 916 / 475;
}

.hiroba.block01 .sec-inner figure.hiroba_table{
	width: 90.91%;/*1000*/
	margin: 0 auto;
}

.hiroba.block01 .sec-inner figure.hiroba_table table{
	width: 100%;
/*
	border-top: 1px solid #00a498;
	border-left: 1px solid #00a498;
*/
	box-sizing: border-box;
	border-collapse: collapse;
	border-spacing: 0;
}

.hiroba.block01 .sec-inner figure.hiroba_table table tr td{
	width: 80.38%;
	height: 80px;
/*
	border-bottom: 1px solid #00a498;
	border-right: 1px solid #00a498;
*/
	border-color: #00a498;
	box-sizing: border-box;
	background: #fff;
	font-size: 100%;
	line-height: 1.44;
	letter-spacing: 0.05em;
	color: #333333;
	padding: 0 1em;
}

.hiroba.block01 .sec-inner figure.hiroba_table table tr td:first-child{
	width: calc(100% - 80.38%);
	background: #eff9f5;
}


.hiroba.block01 .sec-inner ul{
	width: 90.91%;/*1000*/
	margin: 0 auto;
	list-style: none;
}

.hiroba.block01 .sec-inner ul li{
	font-size: 100%;
	line-height: 1.56;
	letter-spacing: 0.05em;
	color: #333333;
	padding-left: 2.7%;
	box-sizing: border-box;
	position: relative;
}

.hiroba.block01 .sec-inner ul li::before{
	content: '';
	background: #f28e1e;
	width: 1.4%;
	height: auto;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	position: absolute;
	top: 4px;
	left: 0.4%;
	z-index: 1;
}

.hiroba.block01 .sec-inner ul li + li{
	margin-top: 15px;
}

.hiroba.block01 .sec-inner ul li a,
.hiroba.block01 .sec-inner p a{
	color: #0056b3;
	text-decoration: underline;
}

/*===================================
	.hiroba.block01.bg-color
=====================================*/

.hiroba.block01.bg-color{
	padding: 78px 0 116px;
	margin-bottom: 150px;
	background: #fffbee;
	position: relative;
}

/* ── 上の装飾（55pxはみ出す） ── */
.hiroba.block01.bg-color::before {
    content: '';
    position: absolute;
    
    /* 天辺から55px上に配置 */
    top: -55px; 
    left: 50%;
    width: 100vw;
    height: 68px; /* 円の直径 */
    transform: translateX(-50%);
    z-index: -1;

    background-image: radial-gradient(#fffbee 70%, transparent 71%);
    background-size: 68px 68px;
    background-repeat: repeat-x;
    background-position: center top;
}

/* ── 下の装飾（40pxはみ出す） ── */
.hiroba.block01.bg-color::after {
    content: '';
    position: absolute;
    
    /* 底辺から40px下に配置 */
    bottom: -40px; 
    left: 50%;
    width: 100vw;
    height: 68px; /* 円の直径 */
    transform: translateX(-50%);
    z-index: -1;

    background-image: radial-gradient(#fffbee 70%, transparent 71%);
    background-size: 68px 68px;
    background-repeat: repeat-x;
    background-position: center top; 
}

