html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	font-weight: normal;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

nav ul, nav li {
	margin: 0;
}

nav ul, ul {
	list-style: none;
}

.span1, .span2, .span3, .span4, .span5, .span6, .span7, .span8, .span9, .span10, .span11, .span12 {
	/*float:left;*/
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.col {
	margin-left: 0.5%;
}

.col:first-child {
	margin-left: 0;
}

.span1 {
	width: 8.333333333%;
}

.span2 {
	width: 16.66666667%;
}

.span3 {
	width: 25%;
}

.span4 {
	width: 33.33333333%;
}

.span5 {
	width: 41.66666667%;
}

.span6 {
	width: 50%;
}

.span7 {
	width: 58.33333333%;
}

.span8 {
	width: 66.66666667%;
}

.span9 {
	width: 75%;
}

.span10 {
	width: 83.33333333%;
}

.span11 {
	width: 91.66666667%;
}

.span12 {
	width: 100%;
}

.clear {
	clear: both;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

.center {
	text-align: center;
}

img {
	vertical-align: bottom;
}

.pc_no {
	display: none;
}

.sp_no {
	display: inline;
}

body {
	font-size: 1rem;
	font-family: 'Noto Sans JP', sans-serif;
    color: rgba(23, 25, 36, 1);
	line-height: 1.5;
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing: 0.02em;
	font-feature-settings: "palt";
	-webkit-text-size-adjust: 100%;

	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;
	}

	input[type="submit"]::-webkit-search-decoration,
	input[type="button"]::-webkit-search-decoration {
		display: none;
	}

	input[type="submit"]::focus,
	input[type="button"]::focus {
		outline-offset: -2px;
	}

	select {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
	}
}

a {
	text-decoration: none;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.services a {
	font-weight: bold;
	color: #ffffff;
	background-color: #1e82ab;
	border-radius: 40px;
	padding: 10px 20px;
}
.gojokai_area_st a {
	font-weight: bold;
	color: #ffffff;
	background-color: #1e82ab;
	border-radius: 40px;
	padding: 10px 20px;
}
.news_a{
	font-weight: bold;
	color: #ffffff;
	background-color: #1e82ab;
	border-radius: 40px;
	padding: 10px 20px;
	margin-top: 10%;
}
.sanjyo_btn{
	padding: 0.5rem 2.5rem;
	text-decoration: none;
	font-weight: 600;
	background-color: #fff;
	color: #1e82ab;
	border: 2px solid;


}

a:hover,
a:active {
	text-decoration: none;
}

::selection {
	background: rgba(255, 239, 39, 1);
}

::-moz-selection {
	background: rgba(255, 239, 39, 1);
}

/* - default - */
h1 {
	font-size: 1.714285714em;
	/* 24 / 14 */
	line-height: 1em;
	/* 21 / 14 */
}

h2 {
	font-size: 1.5em;
	/* 21 / 14 */
	line-height: 1em;
	/* 21 / 14 */
}

p {
	font-size: 1em;
	/* 14 / 14 */
	margin-bottom: 1em;
}

.box {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.boxnowrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
}


table {
	border-collapse: collapse;
}

.dsptbl {
	display: table;
}

.dsptblcell {
	display: table-cell;
}

ul.disc,
ol.disc {
	list-style-type: disc;
}

.flex {
	display: flex;
}
.flex_row {
	display: flex;
	flex-direction: row-reverse;
}

.inner {
	max-width: 1100px;
	margin: 0 auto;
	padding: 1% 2%;
	/*border: 1px solid rgb(39, 79, 255);*/
}

.midashi {
	h3 {
		position: relative;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(18px, 4vw, 40px);
		font-weight: bolder;
		border-bottom: 5px solid;
		border-color: #1e82ab;
		background: none;
		color: #13526b !important;
		margin: 2%;
	}
	h3:before,
    h3:after {
    position: absolute;
    top: 100%;
    left: 50%;
    content: "";
    height: 0;
    width: 0;
}
    h3:before {
    border: 16px solid;
    border-color: transparent;
    border-top-color: #1e82ab;
    margin-left: -16px;
}
    h3:after {
    border: 10px solid;
    border-color: transparent;
    border-top-color: #fff;
    margin-left: -10px;
}

}

header {
	overflow: visible;

	.logo {
		@media screen and (max-width: 768px) {
			padding: 10px 0;
			width: 77%;
		}
		@media screen and (max-width: 480px) {
			width: 66%;
		}

	}

	.soroe {
		align-items: center;
	}

	.menu {
		li {
			margin: 0 0 0 1.5em;
		}
		ul {
			width: 10em;
			padding-left: 1em;
		}
	}
	.flex {
		a {
			color: #13526b;
			font-weight: bold;
			font-size:min(1.2vw,15px);
		}
	}
	.menubut {
		a{
			color: #ffffff;
			background-color: #1e82ab;
			border-radius: 15px;
			margin: auto;
			margin-left: 10%;
			padding: 1em 2em;
			white-space: nowrap;
		}

	}
}

.top_a {
	font-family: 'Noto Sans JP', sans-serif;
	color: #ffffff;
	font-size: 2.0vw;
	font-weight:bold;
	bottom: 0%;
	margin-bottom: 0.5%;
	text-align: center;
	text-shadow: 
	0.1em 0.1em 0 rgb(19, 82, 107),
    0 0 10px rgba(19, 82, 107, 0.6), /* 青いぼかし（薄い・中） */
    0 0 15px rgba(19, 82, 107, 0.7), /* 青いぼかし（薄い・大） */
    0 0 20px rgba(19, 82, 107, 0.3), /* さらに薄いぼかし */
    0 0 30px rgba(19, 82, 107, 0.4); /* 最外の薄いぼかし */
}
.top_b {
	font-family: 'Noto Sans JP', sans-serif;
	color: #1e82ab;
	font-size: 2.5vw;
	font-weight:bold;
	padding: 9% 6%;
	text-align: center;
	text-shadow: 
	0.1em 0.1em 0 rgb(255, 255, 255),
    0 0 10px rgba(19, 82, 107, 0.4), /* 青いぼかし（薄い・中） */
    0 0 15px rgba(19, 82, 107, 0.35), /* 青いぼかし（薄い・大） */
    0 0 20px rgba(19, 82, 107, 0.6), /* さらに薄いぼかし */
    0 0 30px rgba(19, 82, 107, 0.2); /* 最外の薄いぼかし */
}
.top_c {
	font-family: 'Noto Sans JP', sans-serif;
	color: #D04D34;
	font-size: 2.3vw;
	font-weight:bold;
	padding-top: 3%;
	padding-left: 43%;
	text-align: center;
	text-shadow: 
	0.1em 0.1em 0 rgb(255, 255, 255),
    0 0 10px rgba(19, 82, 107, 0.4), /* 青いぼかし（薄い・中） */
    0 0 15px rgba(19, 82, 107, 0.35), /* 青いぼかし（薄い・大） */
    0 0 20px rgba(19, 82, 107, 0.3), /* さらに薄いぼかし */
    0 0 30px rgba(19, 82, 107, 0.2); /* 最外の薄いぼかし */

}

.top_d {
	font-family: 'Noto Sans JP', sans-serif;
	color: #146789;
	font-size: 1.8vw;
	font-weight:bold;
	padding-top: 30%;
	padding-left: 43%;
	text-align: center;
	text-shadow: 
	0.1em 0.1em 0 rgb(255, 255, 255),
    0 0 10px rgba(228, 231, 8, 0.4), /* 青いぼかし（薄い・中） */
    0 0 15px rgba(228, 231, 8, 0.35), /* 青いぼかし（薄い・大） */
    0 0 20px rgba(228, 231, 8, 0.3), /* さらに薄いぼかし */
    0 0 30px rgba(228, 231, 8, 0.2); /* 最外の薄いぼかし */


}

.fv {
	position: relative;
	.inner {
		font-family: 'Noto Sans JP', sans-serif;
		color: #ffffff;
		font-size: 1.8vw;
		font-weight:bold;
		padding-left: 50%;
		bottom: 0%;
		text-shadow: 
		0 0 10px rgba(19, 82, 107, 0.4), /* 青いぼかし（薄い・中） */
		0 0 15px rgba(19, 82, 107, 0.35), /* 青いぼかし（薄い・大） */
		0 0 20px rgba(19, 82, 107, 0.3), /* さらに薄いぼかし */
		0 0 30px rgba(19, 82, 107, 0.2); /* 最外の薄いぼかし */
	
		b {
			white-space: nowrap;
		}
	}
}

#ityped {
	position: absolute;


	}
	.gojokai_area {
		background-color: #c2dfeb;
		color: #13526b;
		margin-top: 5%;
		padding-top: 3% !important;
		h1 {
			font-family: 'Noto Sans JP', sans-serif;

			font-weight: bolder;
			font-size: clamp(15px, 2.5vw, 49px) !important;

		}
		h2 {
			font-family: 'Noto Sans JP', sans-serif;
			font-weight: bold;
			font-size: clamp(12px, 1.8vw, 32px) !important;

			margin-top: 4% !important;
			margin-bottom: 0% !important;
		}
		span {
			font-weight: bold;
			font-size: clamp(7px, 0.8vw, 26px) !important;
		}
		p{
			font-family: 'Noto Sans JP', sans-serif;
			font-size: clamp(9px, 1.0vw, 15px) !important;
			margin-top: 1%;
		}
	}

	.gj_in {
		max-width: 100%;
		padding: 0 6%;
	dl {
		color: #13526b;
		font-size:min(1.2vw,15px);
	}

}
.gojokai_area_st{
	background-color: #c2dfeb;
	color: #13526b;
	margin: 0 auto 3% auto;
	padding-top: 3%;
	h1 {
		font-weight: bold;
		font-size: 2.5rem;
	}
}
.gj_st {
	dl {
		color: #13526b;
		font-size: 0.9rem;
	}
	.table {
		background-color: #ffffff;
	}
	.span10 {
	}
	.center {
	}
}

#container {
	section {
		padding: 5% 0 0 0;

		h2 {
			margin: 0 0 1em 0;
		}
	}

	.news {
		dl {
			padding: 0 1em;
		}

		dd {
			margin: 0 0 1em 0;
		}
	}

	.services {
		padding-bottom: 8%;
		.lists {
			gap: 20px;

			@media screen and (max-width: 480px) {
				gap: 0px;
				flex-direction: column;
			}
		}
		h1 {
			font-family: 'Noto Sans JP', sans-serif;
			font-size: 2.0rem;
			font-weight: bolder;
			color: #ffffff;
			background-color: #1e82ab;
			margin: 5% 0 2% 0;
			padding: 2% 3%;
		}
		h2 {
			color: #13526b;
			font-size: 2.5rem;
			font-weight: bold;
		}
		p{
			margin-left: 4%;
			margin-right: 4%;
		}
		.big {
			font-size: 4.5rem;
			font-weight: bold;
		}
		.poikatu_g {
		}
	}


	.poikatu {
		justify-content: space-between;
		background-color: #c2dfeb !important;

		margin-bottom: 4%;
		a {
			color: #ffffff;
		}
	}
	.costcut {
		justify-content: space-between;
		margin-bottom: 4%;
	}

}

.news_area {
	padding-top: 5%;
	margin-bottom: 5%;

	h2 {
		color: #13526b;
		font-size: 2.8rem;
		font-weight: bold;
		margin-bottom: 4%;
	}
	p {
		color: #13526b;
		margin: 0;
		padding: 0;
		display: inline-block;
	}
	.inner {
		gap: 1%;
	}
	.flex {
		margin-bottom: 5%;
		flex-wrap: wrap;
	}
	.center {
		margin-bottom:5%;
	}
	a {
		margin-bottom: 8%;
	}
}

/*フッター*/

footer {
	padding: 3% 0;
	background-color: #1e82ab;
	.logo {
		@media screen and (max-width: 768px) {
			padding: 10px 0;
			width: 77%;
		}
	}

	.soroe {
		align-items: center;
	}

	.menu {
		li {
			margin: 0 0 0 1.5em;
		}
		ul {
			padding-left: 1em;
		}
	}
	.flex {
		a {
			color: #ffffff;
		}
	}
	nav {
		gap: 10%;
		white-space: nowrap !important; /* 改行を防ぐ */
		a {
			font-size:clamp(9px, 1.2vw, 15px) !important;
		}
		li {
			margin-bottom: 5%;
		}
	}

}
.footer_main {
	gap: 10%;
}

.footer_a {
	a{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: bold;
		font-size:min(4.0vw,45px);
		color: #ffffff;
		background-color: #1e82ab;
		border-radius: 20px;
		display: inline-flex;
		flex-direction: column;
		width: 50%;
	}
.footer_b {
	color: #ffffff;
	font-weight: lighter;
	display: block;
	a {
		margin-bottom: 2%;
	}
}
.footer_li li {
	white-space: nowrap !important; /* 改行を防ぐ */

}

.footer_li {
}
	li{
		margin-bottom: 5px;
		font-size:clamp(6px, 0.9vw, 9px) !important;

	}
	.footer_a {
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: bold;
		display: flex !important; /* 子要素をフレックスボックスで制御 */
		flex-direction: column !important; /* 子要素を縦並びにする */
		a{
			display: inline-flex;
			flex-direction: column;
		}
		ul {
			display: inline-flex;
			flex-direction: column;
		}
	}

}
footer p{
	color: #ffffff;
	font-family: sans-serif;
	font-size: 0.9vw;
	margin-top:4%;
}


/*ホームservice内容*/
.service-container_1 {
	padding: 20px;
	border-radius: 8px; /* 角を丸く */
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 軽い影を付ける */
	max-width: 900px;
  }
.service-midashi {
	padding: 1% 5%;
	width: 80%;
	border-radius: 50px;
	display: flex;
	justify-content: space-between; /* 両端に配置 */
	align-items: center; /* 縦方向の中央揃え */
	background-color: #1e82ab; /* 見出しの背景色 */

}
  .service-container_1 h1 {
	font-family: 'Noto Sans JP', sans-serif;
	color: #fff;
	margin: 0;
	font-size:clamp(12px, 1.6vw, 24px) !important;
	font-weight: bold;
	display: inline-block; /* 横並びを実現 */
  }

  .service-container_1 a {
	padding: 1% 2%;
	border-radius: 50px;
	background-color: #fff;
	color: #13526b;
	font-size:clamp(7px, 1.3vw, 16px) !important;
	text-decoration: none;
	font-weight: bold;
  }

  .service-container_1 a:hover {
	text-decoration: underline; /* ホバー時に下線を追加 */
  }

  .service-container_1 .content_1 {
	background-color: #ffffff; /* 内容の背景色 */
	color: #333;
	margin-top: 20px;
	padding: 20px;
	border-radius: 8px;
	border: 2px solid #1e82ab; /* 枠線 */
  }

  .service-container_1 .content_1 ul {
	padding-left: 20px; /* リストの余白 */
	margin: 0;
  }

  .service-container_1 .content_1 ul li {
	list-style-type: disc !important; /* ● を使ったリストスタイル */
	margin-bottom: 10px; /* 項目間の余白 */
	font-size:clamp(9px, 1.0vw, 16px) !important;
  }


/*各コンテンツ*/


/*メリット*/
.merit_container {
	margin-bottom: 5%;
	background-color: #c2dfeb;
	.top_h1 {
		font-family: 'Noto Sans JP', sans-serif;
		color: #13526b;
		font-weight:700;
		font-size: clamp(15px, 2.5vw, 49px) !important;

	}
	.top_h2 {
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 600;
		font-size: clamp(15px, 1.5vw, 28px) !important;

		margin-top: 4% !important;
		margin-bottom: 0% !important;
	}
	.top_span {
		font-weight: bold;
		font-size: clamp(7px, 0.8vw, 22px) !important;
	}
	.top_p{
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(9px, 0.9vw, 12px) !important;
		font-weight: 300;
		margin-top: 1%;
	}


	h2 {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(10px, 1.6vw, 30px) !important;
		font-weight: bold;
		color: #13526b !important;
	}
	.h2_strong {
		color: #ffffff !important;
		background-color: #1e82ab;
		border-radius: 10px;
		padding-top: 1.5%;
		padding-bottom: 1.5%;
		margin-top: 3.5% !important;
	}
	h3 {
		position: relative;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(18px, 4vw, 40px);
		font-weight: bolder;
		border-bottom: 5px solid;
		border-color: #1e82ab;
		background: none;
		color: #13526b !important;
		margin: 4%;
	}
	h3:before,
    h3:after {
    position: absolute;
    top: 100%;
    left: 50%;
    content: "";
    height: 0;
    width: 0;
}
    h3:before {
    border: 16px solid;
    border-color: transparent;
    border-top-color: #1e82ab;
    margin-left: -16px;
}
    h3:after {
    border: 10px solid;
    border-color: transparent;
    border-top-color: #c2dfeb;
    margin-left: -10px;
}
	.content_one_in {
		margin: 0 8%;
	}
	li,
	p
	 {
		font-family: 'Noto Sans JP', sans-serif;
		color: #13526b !important;
		font-weight: bolder;
		margin: 1% 0;
	}
	.box {
		flex: 1;
	}
	.img {
		max-width: 50%; /* 親要素に収まるよう調整 */
		height: auto; /* アスペクト比を維持 */
		margin-top: 10px; /* 画像とテキストの間に余白を追加 */
		object-fit: cover; /* 画像をコンテナに自然に収める */
		align-items: center;
	  }
	  .img2 {
		max-width: 100%; /* 親要素に収まるよう調整 */
		height: auto; /* アスペクト比を維持 */
		margin-top: 10px; /* 画像とテキストの間に余白を追加 */
		object-fit: cover; /* 画像をコンテナに自然に収める */
		align-items: center;
	  }
	ol li{
		list-style: none;
		width: 90% !important;
		display: inline-block;
		padding: 0;
		background-color: #ffffff;
		width: 100%;
		gap: 5%;
		border-radius: 1vw;
		padding: 1% 3%;
		h4 {
			color: #ffffff;
			background-color: #1e82ab;
			border-radius: 50%;
			height:4vw;
			width: 4vw;
			font-size: clamp(20px, 2vw, 40px);
			display: flex; /* 中央揃えのため */
			align-items: center; /* 縦方向の中央揃え */
			justify-content: center; /* 横方向の中央揃え */
		}
		small {
			font-size: clamp(8px, 0.9vw, 12px);
			font-weight:400;

		}
		strong {
			color: #fff;
			display: inline-block;
			font-size: clamp(8px, 0.8vw, 12px);
			font-weight: bold;
			background-color: #b80415;
			border-radius: 15vw;
			margin-top: 5%!important;
			padding: 1% 1%;
			align-content: center;

		}
		span {
			font-size: clamp(9px, 1.2vw, 30px);
			font-weight: bold;
		}
		h2 {
			font-weight: bolder;
			font-size: clamp(14px, 1.2vw, 30px) !important;
			margin-bottom: 0px !important;
		}
		p {
			font-weight: normal;
			font-size: clamp(11px, 0.7vw, 12px);
		}


	}
	.mer_a {
		font-size: clamp(7px, 1.2vw, 15px);
		flex-wrap: nowrap;
		padding: 1% 2%;
		text-decoration: none;
		color: #fff;
		background-color: #146789;
		border-radius: 20px; /* 角を丸く */
	}
	.mer_li {
		display: flex; /* 横並びにする */
        align-items: center; /* 垂直方向を中央揃えにする */
        /*gap: 5%; /* 要素間の間隔 */
	}
	.mer_p {
		margin-left: 3%;
		width: 40%;
	}
	.mer_contens {
		align-items: center;
		text-align: center;
		flex-wrap: wrap !important;
	}

	/*入会金*/
	.kaihi_x {
	 font-family: 'Noto Sans JP', sans-serif;
	 font-weight: 400;
	 color: #b80415 !important;
	 font-size: clamp(9px, 1.5vw, 15px);
	}
}

/*４つ並びのボタン*/
.button-area {
	font-family: Arial, sans-serif;
	background-color: #c2dfeb;
  }

  .button-4 {
	display: flex;
	grid-template-columns: repeat(2, 40%); /* 横2列 */
	grid-template-rows: repeat(2, 50px);    /* 縦2行 */
	gap: 2%; /* ボタン間の隙間 */
  }

  .but_4 {
	display: inline-block;
	text-align: center;
	background-color: #1e82ab; /* ボタンの色 */
	color: #fff; /* 文字の色 */
	text-decoration: none; /* 下線を消す */
	border-radius: 8px; /* 角を丸く */
	font-size: clamp(6px, 0.8vw, 16px);
	font-weight: bold;
	cursor: pointer;
	transition: background-color 0.3s ease; /* ホバー時の色変化に滑らかさを追加 */
	width: 45%; /* ボタンの幅 */
	padding: 2% 3%;
  }

  .but_4:hover {
	background-color: #146789; /* ホバー時の色 */
  }





/*入会金*/
.kaihi_container {
	margin-bottom: 4%;
	h2 {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(10px, 1.2vw, 30px) !important;
		font-weight: bold;
		color: #13526b !important;
	}
	.h2_strong {
		color: #ffffff !important;
		background-color: #1e82ab;
		border-radius: 10px;
		padding-top: 1.5%;
		padding-bottom: 1.5%;
		margin-top: 3.5% !important;
	}
	h3 {
		position: relative;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(18px, 4vw, 40px);
		font-weight: bolder;
		border-bottom: 5px solid;
		border-color: #1e82ab;
		background: none;
		color: #13526b !important;
		margin: 2%;
	}
	h3:before,
    h3:after {
    position: absolute;
    top: 100%;
    left: 50%;
    content: "";
    height: 0;
    width: 0;
}
    h3:before {
    border: 16px solid;
    border-color: transparent;
    border-top-color: #1e82ab;
    margin-left: -16px;
}
    h3:after {
    border: 10px solid;
    border-color: transparent;
    border-top-color: #fff;
    margin-left: -10px;
}

}



.p_poikatu,
.p_traffic,
.p_postage,
.p_insurance,
.p_benefits,
.p_familymo
 {
	padding-top: 1.2%;
	h1 {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(18px, 2.4vw, 38px) !important;
		font-weight: bolder;
		color: #ffffff;
		background-color: #1e82ab;
		padding: 3%;
		margin: 3% 0;
		margin-top: 0;
	}

}

.content_one,
.content_two,
.content_thr,
.content_for,
.content_fiv,
.content_six
 {
	background-color: #c2dfeb;
	margin-top: 4%;
	margin-bottom: 4%;
	h2 {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(12px, 1.5vw, 21px) !important;
		font-weight: 500;
		color: #13526b !important;
	}
	.h2_strong {
		color: #ffffff !important;
		background-color: #1e82ab;
		border-radius: 0.5vw;
		padding-top: 1.5%;
		padding-bottom: 1.5%;
		margin-top: 3.5% !important;
	}
	h3 {
		position: relative;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(15px, 1.9vw, 24px) !important;
		font-weight: bolder;
		border-bottom: 5px solid;
		border-color: #1e82ab;
		background: none;
		color: #13526b !important;
		margin: 2%;
	}
	h3:before,
    h3:after {
    position: absolute;
    top: 100%;
    left: 50%;
    content: "";
    height: 0;
    width: 0;
}
    h3:before {
    border: 16px solid;
    border-color: transparent;
    border-top-color: #1e82ab;
    margin-left: -16px;
}
    h3:after {
    border: 10px solid;
    border-color: transparent;
    border-top-color: #c2dfeb;
    margin-left: -10px;
}
	.content_one_in {
		margin: 0 8%;
	}
	li,
	p
	 {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(8px, 0.7vw, 12px);
		color: #13526b !important;
		font-weight: bolder;
		margin: 1% 0;
	}
	img {
		margin: 3% 0;
	}
	.red{
		color: #b80415;
		font-weight: bolder;
	}
	a {
		font-family: 'Noto Sans JP', sans-serif;
		color: #ffffff;
		font-weight: bolder;
		background-color: #1e82ab;
		border-radius: 15px;
		padding: 1em 2em;
		width: 20%;
		white-space: nowrap;
		display: block;
		margin: auto;
	}
	ol {
		list-style: none;
		width: 50%;
		display: inline-block;
		padding: 0;
		margin: auto;
	}
    .p_insurance {
		width: 100% !important;
		display: block;
		 h2 {
			font-size: clamp(12px, 1.8vw, 32px) !important;
		}
	}
	.centerimg {
		display: block;
		margin: auto;
		margin-top: 3%;
		margin-bottom: 3%;
	}

	ol li {
		background-color: #ffffff;
		border-radius: 0.5vw;
		padding: 1% 2%;
		h4 {
			color: #ffffff;
			background-color: #1e82ab;
			border-radius: 0.5vw;
			width: 30%;
			font-size: clamp(10px, 0.7vw, 14px);
			text-align: center;
			font-weight: normal;
			padding: 1% 0;
			margin: 1.2% auto;
		}
		span {
			font-size: clamp(10px, 0.7vw, 15px);
			font-weight: bold;
		}
		h2 {
			font-weight: 500;
			font-size: clamp(10px, 1.4vw, 21px) !important;
		}
		p {
			font-weight: normal;
			font-size: clamp(8px, 0.7vw, 12px);
		}
		img {
			margin: auto;
			border-radius: 0 !important;
		}
	}
	img {
		border-radius: 0.5vw;
	}
	.img_cont {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		width: 40%;
		align-items: flex-start;
		margin: auto;
	}
}
.content_back {
	a {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(10px, 1.1vw, 15px) !important;
		color: #ffffff;
		font-weight: bolder;
		background-color: #1e82ab;
		border-radius: 1vw;
		padding: 2% 3%;
		width: 20%;
		white-space: nowrap;
		display: block;
		margin: auto;
	}
}
/*見舞金要素*/

.a_kiyaku {
	padding: 5% 0% !important;
	width: 100% !important;
	display: block !important;
	color: #b80415 !important;
	font-size: clamp(21px, 3vw, 38px);
	background-color: transparent !important;
}
.a_kiyaku:hover {
	text-decoration: underline; /* ホバー時に下線を追加 */
  }
  .a_kiyaku span  {
	color: #13526b !important;
	font-size: clamp(15px, 2.5vw, 24px);

  }


@media screen and (min-width: 768px) {
	.hamburger {
	  display: none; /* 768px以上では非表示 */
	}
  }

/* iPad用 */
@media screen and (max-width: 768px) {
	.pc_no {
		display: inline;
	}

	.sp_no {
		display: none;
	}
}

/* iPhone用 */
@media screen and (max-width: 480px) {}

/*フォーム用/
#form-component {
  /*
	.btn_submit:hover {
		background: rgba(255, 255, 255, 1);
		color: fade(@acnt_c, 100%);
	}
	*/
  /* カスタマイズ */

  .contactbody {
	text-align: left !important;
  }

#form-component .logo_area {
  margin: 3% 0;
}
#form-component .ttl_area h1 {
  font-size: 36px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: bold;
  margin-bottom: 1em;
}
#form-component h2 {
  font-size: 20px;
  margin-bottom: 1em;
}
#form-component p {
  font-size: 16px;
  color: #ffffff;
}
#form-component table {
  width: 100%;
  border: none;
}
#form-component td {
  width: 100%;
  display: block;
  border: none;
}
#form-component th {
	width: 100%;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  background: rgba(19, 82, 107, 0.5);
  padding: 1em;
  position: relative;
}
#form-component table {
  table-layout: fixed;
  box-sizing: border-box;
}
#form-component th,
#form-component td {
  padding: 1em;
}
#form-component .ttl {
  align-items: center;
  justify-content: space-between;
}
#form-component .required,
#form-component .any {
  font-size: 14px;
  color: #ffffff;
  padding: 0.5em 1em;
  border-radius: 10px;
  position: absolute;
  right: 0;
  margin-right: 3%;
}
#form-component .required {
  background: #ed3b34;
}
#form-component .any {
  background: #969696;
}
#form-component input[type="submit"],
#form-component input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
#form-component input[type="submit"]::-webkit-search-decoration,
#form-component input[type="button"]::-webkit-search-decoration {
  display: none;
}
#form-component input[type="submit"]::focus,
#form-component input[type="button"]::focus {
  outline-offset: -2px;
}
#form-component select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
#form-component input[type="text"],
#form-component input[type="email"],
#form-component input[type="tel"],
#form-component input[type="url"],
#form-component input[type="date"],
#form-component select,
#form-component textarea {
  font-size: 18px;
  width: 100%;
  padding: 0.5em 0;
  font-family: 'Noto Sans JP', sans-serif;
}
#form-component select {
  width: 100%;
  background: #ffffff;
  border: solid 1px rgba(0, 0, 0, 0.7);
  color: #231815;
}
#form-component .check-box {
  font-size: 18px;
  color: #231815;

}
#form-component textarea {
  height: 10em;
  color: #231815;

}
#form-component .textarea th {
  vertical-align: top;
}
#form-component .btn_submit {
  background: #ed3b34;
  font-size: 18px;
  padding: 0.5em 1em;
  font-family: 'Noto Sans JP', sans-serif;
  color: #ffffff;
  border: solid 1px #ed3b34;
}
#form-component ul.overview {
  padding: 0 0 0 1em;
  list-style: disc;
  margin: 0 1em 1em 1em;
  font-size: 16px;
}
#form-component ul.overview li {
  margin: 0 0 0.5em 0;
}
#form-component .moresub_inner {
  max-width: 630px;
  margin: 0 auto;
  padding: 0 2%;
}
#form-component .clm-hidden {
  display: none;
}
#form-component #campaign-name,
#form-component .readonly {
  background: rgba(0, 0, 0, 0.1);
}
#form-component input[type="file"] {
  width: 100%;
}
.grecaptcha-badge {
  visibility: hidden;
}

/* サービスセクション全体 */
.services-container {
    display: flex; /* 左右に並べる */
    gap: 20px; /* 左右の間隔 */
    padding: 20px;
}

/* 左側のコンテンツ */
.services-content {
    flex: 3; /* 左側の幅を広めに */
    background-color: #fff;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 5px;
}

/* 右側のサイドバー */
.services-sidebar {
    flex: 1; /* 幅を固定 */
    background-color: #f4f4f4;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* 影を追加 */
}

/* サイドバーのデフォルトコンテンツ */
.services-sidebar p {
    margin: 0;
    font-size: 14px;
    color: #555;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
    .services-container {
        flex-direction: column; /* 縦並びにする */
    }
    .services-content,
    .services-sidebar {
        flex: none; /* 幅をリセット */
        width: 100%; /* 画面全幅を使用 */
    }
}

/* ハンバーガーアイコン */
.hamburger {
	font-size: 24px;
	cursor: pointer;
  }
  
  /* メニューの初期状態（非表示） */
  .sp-menu {
	display: none;
	background-color: #c2dfeb;
	position: fixed;
	top: 50px;
	left: 0;
	width: 100%;
	z-index: 1000; /* 他の要素より前面に配置 */
  }
  
  .sp-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
  }
  
  .sp-menu li {
	border-bottom: 1px solid #555;
  }
  
  .sp-menu li a {
	display: block;
	color: #13526b;
	text-decoration: none;
	padding: 15px;
  }
  
  /* 「お申込み」を目立たせる */
  .sp-menu li a.highlight {
	background-color: #146789;
	color: white;
	font-weight: bold;
  }

  /*特定商法*/
  /* styles.css */
.tokusho_body {
	font-family: Arial, sans-serif;
	line-height: 1.6;
	margin: 0;
	padding: 20px;
  }
  
  .tokusho_container {
	max-width: 800px;
	margin: 0 auto;
	background: #fff;
	padding: 20px;
  }
  
  .tokusho_section {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 0;
	border-bottom: 1px dashed #13526b;
	gap: 5%;
  }
  
  .tokusho_section:last-child {
	border-bottom: none;
  }
  
  h2 {
	font-size: 18px;
	color: #13526b;
	margin: 0;
	flex: 1; /* h2 の横幅を調整 */
  }
  
  p {
	margin: 0;
	color: #555;
	flex: 2; /* p の横幅を調整 */
	text-align: left; /* p を右寄せにする */
  }  
/*お問い合わせ、申込*/

.contact_body {
	h1 {
		color: #13526b;
	}
	li {
		color: #13526b;
	}
}

/*賛助会とは*/
.sanjyokai_container {
	background-color: #c2dfeb;
	.top_h1 {
		font-family: 'Noto Sans JP', sans-serif;
		color: #13526b;
		font-weight: bolder;
		font-size: clamp(15px, 2.5vw, 49px) !important;

	}
	.top_h2 {
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: bold;
		font-size: clamp(12px, 1.8vw, 28px) !important;

		margin-top: 4% !important;
		margin-bottom: 0% !important;
	}
	.top_span {
		font-weight: bold;
		font-size: clamp(7px, 0.8vw, 26px) !important;
	}
	.top_p{
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(9px, 1.0vw, 15px) !important;
		margin-top: 1%;
	}


	h2 {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(10px, 1.2vw, 30px) !important;
		font-weight: 600;
		color: #13526b !important;
	}
	.h2_strong {
		color: #ffffff !important;
		background-color: #1e82ab;
		border-radius: 10px;
		padding-top: 1.5%;
		padding-bottom: 1.5%;
		margin-top: 3.5% !important;
	}
	h3 {
		position: relative;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: clamp(18px, 4vw, 40px);
		font-weight: bolder;
		border-bottom: 5px solid;
		border-color: #1e82ab;
		background: none;
		color: #13526b !important;
		margin: 2%;
	}
	h3:before,
    h3:after {
    position: absolute;
    top: 100%;
    left: 50%;
    content: "";
    height: 0;
    width: 0;
}
    h3:before {
    border: 16px solid;
    border-color: transparent;
    border-top-color: #1e82ab;
    margin-left: -16px;
}
    h3:after {
    border: 10px solid;
    border-color: transparent;
    border-top-color: #c2dfeb;
    margin-left: -10px;
}
	.content_one_in {
		margin: 0 8%;
	}
	li,
	p
	 {
		font-family: 'Noto Sans JP', sans-serif;
		color: #13526b !important;
		font-weight: 400;
		margin: 1% 0;
	}
	.box {
		flex: 1;
	}
	.img {
		max-width: 100%; /* 親要素に収まるよう調整 */
		height: auto; /* アスペクト比を維持 */
		margin-top: 10px; /* 画像とテキストの間に余白を追加 */
		object-fit: cover; /* 画像をコンテナに自然に収める */
		align-items: center;
	  }
	ol li{
		list-style: none;
		width: 90% !important;
		display: inline-block;
		padding: 0;
		background-color: #ffffff;
		width: 100%;
		gap: 5%;
		border-radius: 1vw;
		padding: 1% 3%;
		h4 {
			color: #ffffff;
			background-color: #1e82ab;
			border-radius: 15vw;
			width: 10%;
			font-size: clamp(20px, 2vw, 40px);
			text-align: center;
			font-weight: normal;
			padding: 1% 0;
		}
		small {
			font-size: clamp(9px, 0.9vw, 15px);
			font-weight:normal

		}
		strong {
			color: #fff;
			display: inline-block;
			font-size: clamp(8px, 0.8vw, 12px);
			font-weight: bold;
			background-color: #b80415;
			border-radius: 15vw;
			margin-top: 5%!important;
			padding: 1% 1%;
			align-content: center;

		}
		span {
			font-size: clamp(10px, 1.5vw, 25px);
			font-weight: bold;
		}
		h2 {
			font-weight: bolder;
			font-size: clamp(12px, 1.2vw, 21px) !important;
			margin-bottom: 0px !important;
		}
		p {
			font-weight: normal;
			font-size: clamp(11px, 0.7vw, 12px);
		}


	}
	.mer_li {
		display: flex; /* 横並びにする */
        align-items: center; /* 垂直方向を中央揃えにする */
        gap: 5%; /* 要素間の間隔 */
	}

}

.p_sanjyokai {

}
.sanjyo_h1 {
	width: 100%;
	background-color: #1e82ab;
	font-family: 'Noto Sans JP', sans-serif;
	color: #fff;
	font-weight: bolder;
	font-size: clamp(15px, 2.5vw, 49px) !important;
	padding: 3%;
	margin: 3% 0;
	margin-top: 0;
}
.sanjyokai_con01 {
	margin-top: 3%;
	margin-bottom: 5%;
	background-color: #fff;
	border: 2px solid #1e82ab; /* 枠線 */
	border-radius: 8px; /* 角を丸く */
	
	li {
		font-size: clamp(9px, 1.2vw, 16px) !important;

	}
}
.sanjyo_ol {
	gap: 3%;
	flex-wrap: wrap;
}
.sanjyo_li {
	flex: 0 0 40%; /* 各要素を横幅50%に設定 */
	list-style: none;
	background-color: #ffffff !important;
	display: inline-block;
	padding: 0;
	gap: 5%;
	border-radius: 1vw;
	padding: 1% 3%;

		small {
			font-size: clamp(7px, 0.9vw, 15px);
			font-weight:normal

		}
		strong {
			color: #fff;
			display: inline-block;
			font-size: clamp(8px, 0.8vw, 12px);
			font-weight: bold;
			background-color: #b80415;
			border-radius: 15vw;
			margin-top: 5%!important;
			padding: 1% 1%;
			align-content: center;

		}
		span {
			font-size: clamp(10px, 1.5vw, 25px);
			font-weight: bold;
		}
		h2 {
			font-weight: bolder;
			font-size: clamp(12px, 1.2vw, 18px) !important;
			margin-bottom: 0px !important;
		}
		p {
			font-weight: normal;
			font-size: clamp(11px, 0.7vw, 12px);
		}
	}
	.sanjyo_fullli {
		list-style: none;
		background-color: #ffffff !important;
		display: inline-block;
		padding: 0;
		gap: 5%;
		border-radius: 1vw;
		padding: 1% 3%;
		width: 89%;
		font-size: clamp(7px, 0.9vw, 15px);
	}

	/*注意事項と条件*/

	.condi_img {
		margin-bottom: 2%;
	}
	.mile_cont {
		gap: 4%;
		margin-top: 3%;
	}

	.mile_img {
		width: 40%;
	}

	.jcb_img {
		height: 50%;
		width: auto;
	}

	.vip_img {
		width: 60%;
		height: auto;
	}

	
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);