/* ===============================================
font
=============================================== */
/* Noto Sans JP */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
/* Greycliff CF */
@import url("https://use.typekit.net/isg2ced.css");
/* Montserrat */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');


/* ---------------------------------------------------------------------
共通
--------------------------------------------------------------------- */
html,body{
    width: 100%;
}

body{
	font-family:YakuHanJP, "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", sans-serif;
	margin:0;
	padding:0;
	line-height:160%;
	font-size: 16px;
	background:#fff;
	font-feature-settings: "palt";
	min-height: 100dvh;
}

.f-min {
  font-family: "游明朝","游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro","HiraMinProN-W6" , "HGS明朝E" , "ＭＳ Ｐ明朝", "MS PMincho", serif;
}


a:link {
	color: #333333;
	text-decoration: none;
}
a:hover {
	color: #333333;
	text-decoration: underline;
}
a:visited {
	color: #333333;
	text-decoration: none;
}
a:active {
	color: #333333;
	text-decoration: none;
}

a:hover img {
/*	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
	opacity: 0.70;*/
}
a img{
	border:none;
}
.clear{
	clear:both;
}

th {
	font-weight: 600;
}

@media screen and (max-width: 767px) {
	body {font-size: 14px;}
}
@media screen and (min-width: 768px){
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}

/* ---------------------------------------------------------------------
タグリセット
--------------------------------------------------------------------- */
h1,h2,h3,h4,h5,h6,p,div,ul,li,dl,dt,dd,form {
	margin: 0px;
	padding: 0px;
}

ul,li {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
ol li {
	list-style:none;
}
img {
	margin: 0px;
	padding: 0px;
	border: none;
	vertical-align:bottom;
}
table,tr,td{
	border-collapse: collapse;
}



/* ---------------------------------------------------------------------
ヘッダー
--------------------------------------------------------------------- */
.haikan_header {
	width: 100%;
	height: 70px;
	position: fixed;
	background-color: #fff;
	box-shadow: 0px 0px 8px -2px rgba(90, 90, 90, 0.5);
	z-index: 99;
}
.haikan_header .header_inner {
	width: min(96%, 1080px);
  margin-inline: auto;
	height: stretch;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.haikan_header .header_logo {
	height: 42px;
}
.haikan_header .header_logo img {
	object-fit: contain;
	object-position: center left;
	width: 100%;
	height: 100%;
}
.haikan_header .header_call {
	display: flex;
	align-items: center;
	gap: 12px;
}
@media screen and (min-width: 768px){
.haikan_header .header_call.sp {
	display: none!important;
}
}
.haikan_header .header_call:hover {
	text-decoration: none;
}
.haikan_header .header_call img {
	height: 30px;
}
.haikan_header .header_call .-text {
	font-size: 28px;
	font-weight: 600;
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}
.haikan_header .header_call .-text .-time {
	font-size: 14px;
	font-weight: 500;
}
@media screen and (max-width: 767px){
	.haikan_header {
		height: 60px;
	}
	.haikan_header .header_inner {
	  width: 100%;
	}
	.haikan_header .header_logo {
		height: 30px;
		padding-left: 2%;
	}
	.haikan_header .header_call.pc {
		display: none!important;
	}
	.haikan_header .header_call {
		background: linear-gradient(135deg,#0d1b2a 0%,#002662 100%);
		height: stretch;
		aspect-ratio: 1 / 1;
		justify-content: center;
	}
}


/* ---------------------------------------------------------------------
メイン
--------------------------------------------------------------------- */
main.haikan_content{
	width:100%;
	padding-top: 70px;
}

.title_wrap{
	width:1000px;
	padding:0;
	margin:80px auto;
}
h2{
	display: block;
	height: auto;
	width: 1000px;
	margin:0 auto;
	/* text-indent: 100%; */
	/* white-space: nowrap; */
	/*overflow: hidden;*/
	/* background: url("../images/title.jpg") no-repeat center center; */
	background-size: auto auto;
	background-size: contain;
	font-size: 24px;
	text-align: center;
}
h2 span{
	font-size:36px;
	color:#03376e;
}

@media screen and (max-width: 767px){
main.haikan_content{
	width:100%;
	padding-top: 60px;
}
}
/* ---------------------------------------------------------------------
予約フォーム
--------------------------------------------------------------------- */
/* common styles-into main style sheet */
#common_footerContainer2 {
    width: 100%;
    background: #f8f8f8 !important;
    margin-bottom: -20px;
    margin-top: 40px;
}
.common_ft_c2_inner {
    width: 1080px;
    margin: 0 auto;
    padding: 10px 0;
}
.common_copyright {
    font-size: 14px;
    text-align: center;
    margin-top: 10px;
}
.btm_agree_sec {
    display: flex;
    align-content: center;
    justify-content: center;
}
label {
    font-size: 14px;
    font-weight: 450 !important;
    color: #000000;
}
.lp_head_inner {
    /*width: 85%;
    margin: 0 24% 15px 7%;*/
}


* {
    box-sizing: border-box;
}
.hd_row_top {
	width: 980px;
	margin: 0 auto;
}
.hd_column_lft {
    float: left;
	width: 50%;
	text-align: left
}
.hd_column_rght {
    float: left;
    width: 50%;
}
.hd_row_top:after {
    content: "";
    display: table;
    clear: both;
}
.rght_algn {
	text-align: right;
}
.hd_row_top p {
	padding-left: 30px;
	font-weight: 450;
}

.form_wrap{
	width:100%;
	padding:0;
	margin:0 auto;
	background-color:#fff;
}

.form {
	width:1000px;
	margin: 0 auto;
	padding:0 0 0;
}
.form_tl{
	display:block;
	width:100%;
	background:#55b8b6;
	padding: 30px;
	margin:0 auto 30px;
}
.form p{
	text-align:center;
	font-size:24px;
	color:#fff;
	margin: 0;
}
.form img{
	width:100%;
}
.hd_main {
    width: 100%;
    text-align: center;
    font-size: 25px;
    line-height: 150px;
		font-weight: normal;
}
.underBlock__title {
	background-image: linear-gradient(-45deg, #eaeaea 25%, transparent 25%, transparent 50%, #eaeaea 50%, #eaeaea 75%, transparent 75%, transparent);
	background-size: 8px 8px;
}
.view-pc {
	display: block;
}


/* ---------------------------------------------------------------------
フッター
--------------------------------------------------------------------- */
.haikan_footer {
	background-color: #f2f4f7;
	position: sticky;
  top: 100%;
}
.haikan_footer .copyright {
	font-size: 12px;
	text-align: center;
	padding: 30px 0;
}



/* ---------------------------------------------------------------------
clearfix
--------------------------------------------------------------------- */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*¥*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* ---------------------------------------------------------------------
TinyMCE
--------------------------------------------------------------------- */
strong { font-weight: bold; }
em { font-style: italic; }
blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40px;
    -webkit-margin-end: 40px;
}


/*PC用display:none;■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.sp{
	display:none;
}

.spbr{
	display:none;
}


/* ------------------------------画面の横幅が900px以下 (スマホ) ------------------------------*/
/*@media screen and (max-width:768px){*/
@media screen and (max-width:900px){
/*スマホ用display:none;■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.pc{
	display:none;
}
.sp{
	display:inline;
}
.head_inner {
    width: 100%;
    margin: 2px auto 0;
}
.main_wrap {
	position:relative;
	margin-top:19.46%;
}

.logo {
    width:100%;
    float: none;
    clear: both;
}
.logo a img{
    width:100%;
}
.tel{
    width:100%;
	float: none;

}

.tel img{
    width:100%;
}

h1 {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	height: auto;
	width: 70%;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url("../images/logo.png") no-repeat left center;
		background-size: auto auto;
	background-size: auto auto;
	background-size: contain;
	margin: 5px 0 5px 5px;
	padding: 20px 0 0 30px;
}
.title_wrap {
    width: 100%;
    padding: 0;
    margin: 0 auto;
}
h2 {
    display: block;
    height: 100px;
    width: 100%;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url("../images/title.jpg") no-repeat center center;
        background-size: auto auto;
    background-size: auto auto;
    background-size: contain;
}
.form {
    width: 100%;
    margin: 0 auto;
    padding: 30px 0 0;
}

.form_tl {
    display: block;
    width: 100%;
    background: #55b8b6;
    padding: 10px 0;
    margin: 0 auto;
	white-space: normal;
}

.form p {
	white-space: normal;
	width: 90%;
	font-size:18px;
	text-align:center;
	margin: 0 auto;
}
.ft_wrap {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.ft_wrap p.tel {
    margin-top: 30px;
	border:none;
}

.ft_wrap p.tel span.s_t {
    padding: 15px;
    font-size: 12px;
    background: #222;
    color: #FFF;
    vertical-align: middle;
	display:block;
}
.ft_wrap p.tel span {
    margin-right: 0;
    font-size: 20px;
    font-weight: bold;
}

.ft_wrap p.tel span img {
	width:80% !important;
}
.inf_centr {
	display: none;
}
.lp_tel {
	display: none;
}
.common_ft_c2_inner {
	width: 100%;
}
.hd_row_top {
	width: 100%;
}
.view-pc {
	display: none;
}
.hd_column_lft {
    float: none;
    width: 100%;
    text-align: center;
    margin: 0 auto;
}

.hd_main {
	width: 100%;
	text-align: center;
	font-size: 20px;
	line-height: 150px;
	font-weight: normal;
}
.privacy_box{
	margin: 10px;
}
.privacy_img {
	width: 100%;
}

}
