/*
Last Updated: 2024-1-29
mushitori
*/

/*----------------------------------------
	全体
----------------------------------------*/

html{
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	font-family:'メイリオ',Meiryo,'游ゴシック体', 'Yu Gothic', YuGothic,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
}

section{
	/* overflow: hidden; */
}

.text_yugo{
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
}
.noto{
	font-family: 'Noto Sans JP', sans-serif;
}


/*----------------------------------------
	text
----------------------------------------*/

p{
	line-height: 2.0;
	font-feature-settings : "pkna";
}
.text_12{ font-size:12px !important; }
.text_13{ font-size:13px !important; }
	.ls_-2{ letter-spacing: -2px; }
	.ls_-1{ letter-spacing: -1px; }
	.ls_1{ letter-spacing: 1px; }
	.ls_2{ letter-spacing: 2px; }
	.ls_3{ letter-spacing: 3px; }
	.ls_4{ letter-spacing: 4px; }

@media print, screen and (min-width: 1000px) {

	.text_16{ font-size:16px !important; }
	.text_18{ font-size:18px !important; }
	.text_20{ font-size:20px !important; }
	.text_24{ font-size:24px !important; }
	.text_28{ font-size:28px !important; }
	.text_30{ font-size:30px !important; }


}/*END*/

@media print, screen and (min-width: 769px) and ( max-width: 999px) {

	.text_16{ font-size:15px !important; }
	.text_18{ font-size:17px !important; }
	.text_20{ font-size:18px !important; }
	.text_24{ font-size:22px !important; }
	.text_28{ font-size:25px !important; }
	.text_30{ font-size:28px !important; }
	.ls_3{ letter-spacing: 2px; }
	.ls_5{ letter-spacing: 3px; }

}/*END*/

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

	.text_16,
	.text_18{
		font-size: 14px !important;
	}
	.text_20{ font-size:16px !important; }
	.text_24,
	.text_28{ font-size:18px !important; }
	.text_30{ font-size:24px !important; }

	.ls_-2{ letter-spacing: -1px; }
	.ls_-1{ letter-spacing: -0px; }
	.ls_2{ letter-spacing: 1px; }
	.ls_3{ letter-spacing: 2px; }
	.ls_4{ letter-spacing: 3px; }

}/*END*/

@media screen and (max-width: 479px){
	.ls_-2{ letter-spacing: -0px; }
	.ls_2{ letter-spacing: 0px; }
	.ls_3{ letter-spacing: 1px; }
	.ls_4{ letter-spacing: 2px; }

	p{ line-height: 1.5; }
	.text_30{ font-size:20px !important; }

}/*END*/

.text_30{ line-height: 1.5; }


/*----------------------------------------
	margin padding
----------------------------------------*/

.m_b5{ margin-bottom:5px !important; }
.m_b10{ margin-bottom:10px !important; }
.p_t5{ padding-top: 5px; }
.p_t10{ padding-top: 10px; }
.p_b5{ padding-bottom: 5px; }
.p_b10{ padding-bottom: 10px; }

@media print, screen and (min-width: 769px) {

	.m_b15{ margin-bottom:15px !important; }
	.m_b20{ margin-bottom:20px !important; }
	.m_b25{ margin-bottom:25px !important; }
	.m_b30{ margin-bottom:30px !important; }
	.m_b40{ margin-bottom:40px !important; }
	.m_b45{ margin-bottom:45px !important; }
	.m_b50{ margin-bottom:50px !important; }
	.m_b60{ margin-bottom:60px !important; }
	.m_b70{ margin-bottom:70px !important; }
	.m_b80{ margin-bottom:80px !important; }
	.m_b90{ margin-bottom:90px !important; }
	.m_b100{ margin-bottom:100px !important; }
	.m_b120{ margin-bottom:120px !important; }

	.p_t15{ padding-top: 15px; }
	.p_t20{ padding-top: 20px; }
	.p_t25{ padding-top: 25px; }
	.p_t30{ padding-top: 30px; }
	.p_t40{ padding-top: 40px; }
	.p_t45{ padding-top: 45px; }
	.p_t50{ padding-top: 50px; }
	.p_t60{ padding-top: 60px; }
	.p_t70{ padding-top: 70px; }
	.p_t80{ padding-top: 80px; }
	.p_t100{ padding-top: 100px; }

	.p_b15{ padding-bottom: 15px; }
	.p_b20{ padding-bottom: 20px; }
	.p_b25{ padding-bottom: 25px; }
	.p_b30{ padding-bottom: 30px; }
	.p_b40{ padding-bottom: 40px; }
	.p_b50{ padding-bottom: 50px; }
	.p_b60{ padding-bottom: 60px; }
	.p_b70{ padding-bottom: 70px; }
	.p_b80{ padding-bottom: 80px; }
	.p_b90{ padding-bottom: 90px; }
	.p_b100{ padding-bottom: 100px; }

}/*END*/

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

	.m_b15{ margin-bottom:13px !important; }
	.m_b20{ margin-bottom:16px !important; }
	.m_b25{ margin-bottom:18px !important; }
	.m_b30{ margin-bottom:20px !important; }
	.m_b40{ margin-bottom:22px !important; }
	.m_b50{ margin-bottom:25px !important; }
	.m_b60{ margin-bottom:30px !important; }
	.m_b70{ margin-bottom:35px !important; }
	.m_b80{ margin-bottom:40px !important; }
	.m_b90{ margin-bottom:40px !important; }
	.m_b100{ margin-bottom:45px !important; }
	.m_b120{ margin-bottom:45px !important; }

	.p_t15{ padding-top: 13px; }
	.p_t20{ padding-top: 16px; }
	.p_t25{ padding-top: 18px; }
	.p_t30{ padding-top: 20px; }
	.p_t40{ padding-top: 22px; }
	.p_t50{ padding-top: 25px; }
	.p_t60{ padding-top: 25px; }
	.p_t70{ padding-top: 30px; }
	.p_t80{ padding-top: 30px; }
	.p_t100{ padding-top: 45px; }

	.p_b15{ padding-bottom: 13px; }
	.p_b20{ padding-bottom: 16px; }
	.p_b25{ padding-bottom: 18px; }
	.p_b30{ padding-bottom: 20px; }
	.p_b40{ padding-bottom: 22px; }
	.p_b50{ padding-bottom: 25px; }
	.p_b60{ padding-bottom: 25px; }
	.p_b70{ padding-bottom: 30px; }
	.p_b80{ padding-bottom: 30px; }
	.p_b90{ padding-bottom: 40px; }
	.p_b100{ padding-bottom: 45px; }

}/*END*/


/*----------------------------------------
	共通
----------------------------------------*/

.respon{ width: 100%; }
.center{ text-align: center; }
.text_right{ text-align: right; }
.left{ float: left; }
.right{ float: right; }
.text_bold{ font-weight: bold; }
.text_pink{ color: #ec72a8; }
.text_gray{ color: #999; }
.inb{ display: inline-block; }

.op:hover{
	filter: alpha(opacity=60);
	-moz-opacity:060;
	opacity:0.60;
}



.inner_frame{
	max-width: 1240px;
	padding-right: 20px;
	padding-left: 20px;
	margin-right: auto;
	margin-left: auto;
	box-sizing: border-box;
}

@media print, screen and (min-width: 769px) {

	.op:hover{
		-webkit-transition: opacity 0.1s ease-out;
		-moz-transition: opacity 0.1s ease-out;
		-ms-transition: opacity 0.1s ease-out;
		transition: opacity 0.1s ease-out;
	}

}/*END*/

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


	.box_l{
		float: left;
		width: 48.33%;
	}
	.box_l30{
		float: left;
		width: 23%;
	}
	.box_l60{
		float: left;
		width: 60%;
	}
	.box_r{
		float: right;
		width: 48.33%;
	}
	.box_r40{
		float: right;
		width: 35%;
	}
	.box_r70{
		float: right;
		width: 77%;
	}

}/*END*/

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

	.inner_frame{
		padding-right: 4.5%;
		padding-left: 4.5%;
	}
	.sp_left{ text-align: left; }

}/*END*/


/*----------------------------------------
	contents
----------------------------------------*/
.clearfix {
	clear: both;
}
.rela{
	position: relative;
}

.point_list{
	padding-top: 25px;
	padding-bottom: 25px;
	background: #206f6b;
}
.point_list ul{
	max-width: 1239px;
	box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: auto;
	margin-right: auto;
}


.text_navy {
	color: #31527f;
}


.contact_box{
	padding: 50px 4.83%;
	background: #fdf2f4;
	box-sizing: border-box;
}
.contact_box li a{
	display: block;
	transition: all 0.4s;
}
.btn_map{
	display: block;
	margin-right: auto;
	margin-left: auto;
	background: #000;
	color: #fff;
	width: 100%;
	max-width: 450px;
	text-decoration: none;
	text-align: center;
	padding: 20px;
	transition: all 0.4s;
}
.btn_map:hover{
	opacity: 0.7;
}


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


	.point_list li{
		width : 33.11%;
		box-sizing: border-box;
		text-align: center;
		float: left;
		position: relative;
	}
	.point_list li:nth-child(1),
	.point_list li:nth-child(3),
	.point_list li:nth-child(5),
	.point_list li:nth-child(7){
		width: 0.16%;
	}

	.box_45l{
		float: left;
		width: 45%;
	}
	.box_55r{
		float: right;
		width: 55%;
	}
	.box_55l{
		float: left;
		width: 55%;
	}
	.box_45r{
		float: right;
		width: 45%;
	}
	.box_40l{
		float: left;
		width: 38%;
	}
	.box_60r{
		float: right;
		width: 58%;
	}
	.box_0l{
		float: left;
		width: 50%;
	}
	.box_0r{
		float: right;
		width: 50%;
	}

	.contact_ul{
		margin-left: -1.75%;
	}
	.contact_ul li{
		width : 31.57%;
		float: left;
		margin-left: 1.75%;
	}

	.p_t70_pc{
		padding-top: 70px;
	}


}/*END*/

@media screen and (max-width: 599px) {
	.sp_none{
		display: none;
	}
	.sp_w_80{
		width: 80%;
	}
	.point_list{
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.point_list ul{
		max-width: 440px;
	}
	.point_list li{
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.point_list li:nth-child(1),
	.point_list li:nth-child(3),
	.point_list li:nth-child(5),
	.point_list li:nth-child(7){
		display: none;
	}
	.point_list li:nth-child(2),
	.point_list li:nth-child(4){
		border-bottom: 1px dotted #fff;
	}

	.contact_box{
		padding: 30px 4.5%;
	}
	.contact_box li{
		margin-bottom: 20px;
	}
	.sp_m_t30{
		margin-top: 30px;
	}
	.sp_m_b30{
		margin-bottom: 30px;
	}

}/*END*/


/*----------------------------------------

----------------------------------------*/
.max580 {
	max-width: 580px;
}
.max520 {
	max-width: 520px;
}
.m_center {
	margin-left: auto;
	margin-right: auto;
}
.bg_01{
	background: #fff;
}
.bg_02{
	background: #fdf2f4;
}
.bg_03{
	background: #fde985;
}
.location_deco {
	position: absolute;
	top: 5%;
	right: 0;
	max-width: 468px;
	width: 45%;
}
@media screen and (max-width: 768px) {
	.location_deco {
		display: block;
		width: 80%;
		margin-top: 30px;
		position: relative;
		margin-left: auto;
	}
}