@charset "utf-8";
/*==================================================
	【トップ】ページ固有のスタイル
==================================================*/
.fm {
	font-size: 112%;
}
.fm2 {
	font-size: 25px;
}
#top_ttl img {
	width: 100%;
}
#top_otoku {
	padding: 80px 0;
}
#top_otoku::before {
	background: #E9F1FD;
}
#top_otoku .line_txt {
	font-size: 40px;
	margin-bottom: 30px;
}
#top_otoku .line_txt .line {
	position: relative;
	border-bottom: 10px solid var(--color-secondary);
	padding-bottom: 5px;
}
#top_otoku .line_txt .line::before, #top_otoku .line_txt .line::after {
	content: "";
	position: absolute;
	left: -50px;
	top: 0;
	display: inline-block;
	width: 3px;
	aspect-ratio: 3 / 59;
	background: var(--color-primary);
	transform: rotate(-45deg);
}
#top_otoku .line_txt .line::after {
	left: auto;
	right: -50px;
	transform: rotate(45deg);
}
#top_otoku .line_txt .line .normal {
	font-weight: normal;
}
#top_otoku .line_txt .line .serif {
	font-size: 60px;
}
#top_otoku .fm2 {
	margin-bottom: 0;
}
#top_otoku .btn01 {
	margin: 50px 0 0;
}
#top_riyou h3 {
	font-size: 40px;
	margin-bottom: 80px;
}
#top_riyou h3 .serif {
	font-size: 60px;
}
#top_riyou .bg_wide {
	padding-bottom: 60px;
}
#top_riyou .bg_wide::before {
	background: #e9f1fd;;
}
#top_riyou .bg_wide .midashi {
	position: relative;
	top: -25px;
}
#top_riyou .bg_wide .midashi span {
	border: 1px solid #bfd9fb;
	width: 560px;
	background: #fff;
	font-weight: bold;
	border-radius: 27px;
	display: inline-block;
	padding: 1px 0 2px;
}
#top_riyou .bg_wide .logo {
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
}
#top_riyou .bg_wide .logo li {
	width: 250px;
	height: 80px;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
#top_riyou .bg_wide .logo li img {
	width: 200px;
}
#top_riyou .bg_wide .logo li:nth-of-type(3) img {
	width: 180px;
}
#top_dokyo .midashi {
	font-size: 40px;
	line-height: 1;
	margin-bottom: 80px;
}
#top_dokyo .list {
	width: 718px;
	margin: 0 auto 100px;
}
#top_dokyo .list .box {
	width: 150px;
}
#top_dokyo .list .box .img {
	width: 150px;
	height: 150px;
	border-radius: 50%;
	background : linear-gradient(45deg, rgba(80, 165, 226, 1) 0%, rgba(44, 130, 241, 1) 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	margin-bottom: 20px;
}
#top_dokyo .list .box .img::before {
	content: "";
	background: url("../img/chk.png") no-repeat center / 100% auto;
	width: 45px;
	height: 44px;
	position: absolute;
	top: 0;
	right: 0;
}
#top_dokyo .list .box .img::after {
	content: "";
	position: absolute;
	right: -30px;
	bottom: 0;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background : rgba(213, 230, 252, 1);
	z-index: -1;
	filter: blur(16.0763px);
}
#top_point01 .bg_wide {
	padding-bottom: 60px;
}
#top_point01 .bg_wide::before {
	background: #f7f7f7;
}
#top_point01 .bg_wide::after {
	height: 180px;
	background : linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
}
#top_point01 .flow {
	margin: 50px 0;
}
#top_point01 .flow img {
	width: 660px;
}
#top_point01 .thin {
	color: #707c8f;
}
#top_point01 .btn01 {
	margin-top: 60px;
}
#top_mitsumori {
	padding-bottom: 150px;
}
#top_mitsumori h3 {
	font-size: 40px;
	margin-bottom: 90px;
}
#top_mitsumori h3 .serif {
	font-size: 60px;
}
#top_mitsumori .mitsumori.bg {
	padding-bottom: 60px;
}
#top_mitsumori .mitsumori.bg::before {
	background: #e9f1fd;
}
#top_mitsumori .mitsumori.bg::after {
	height: 1px;
	background: var(--color-primary);
}
#top_mitsumori .mitsumori h4 {
	display: inline-block;
	position: relative;
	font-size: 30px;
	background: var(--color-primary);
	border-radius: 0 28px 28px 0;
	color: #fff;
	padding: 5px 40px 7px 50px;
	left: 35px;
	top: -27px;
	margin-bottom: 40px;
}
#top_mitsumori .mitsumori h4 span {
	position: absolute;
	top: -8px;
	left: -35px;
	width: 70px;
	height: 70px;
	border-radius: 50%;
	color: var(--color-primary);
	background: var(--color-secondary);
	font-size: 47px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#top_mitsumori .mitsumori .flow {
	margin: 60px 0;
}
#top_mitsumori .mitsumori .flow dl {
	position: relative;
	background: #fff;
	width: 340px;
	border-radius: 10px;
}
#top_mitsumori .mitsumori .flow dl:not(:last-of-type)::before {
	content: "";
	background: #d6dadf;
	position: absolute;
	right: -20px;
	top: 60px;
	height: 200px;
	width: 20px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
#top_mitsumori .mitsumori .flow dl dt {
	position: relative;
	height: 100px;
	border-bottom: 1px solid var(--color-primary);
	font-size: 27px;
	font-weight: bold;
	line-height: 1.3;
	padding-left: 80px;
	padding-bottom: 2px;
	display: flex;
	align-items: center;
}
#top_mitsumori .mitsumori .flow dl dt .maru {
	width: 35px;
	height: 35px;
	background: var(--color-primary);
	border-radius: 50%;
	color: #fff;
	font-weight: bold;
	font-size: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 32px;
	left: 25px;
}
#top_mitsumori .mitsumori .flow dl dd {
	padding: 20px;
	position: relative;
	height: 246px;
}
#top_mitsumori .mitsumori .flow dl dd .thin {
	color: #707c8f;
}
#top_mitsumori .mitsumori .flow dl dd .img {
	position: absolute;
	bottom: 40px;
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
	width: 180px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0;
}
#top_mitsumori .mitsumori .btn01 {
	margin-top: 60px;
}
#top_mitsumori .mitsumori .btn01 a {
	padding-top: 18px;
}
#top_mitsumori .mitsumori .waku {
	border: 5px solid #06c755;
	padding: 0 100px 100px;;
}
#top_mitsumori .mitsumori .waku h4 {
	left: -70px;
}
#top_mitsumori .mitsumori .waku .info {
	width: 550px;
}
#top_mitsumori .mitsumori .waku .info .logo {
	margin-bottom: 20px;
}
#top_mitsumori .mitsumori .waku .info .logo img {
	width: 100px;
}
#top_mitsumori .mitsumori .waku .info .btn01 {
	margin-top: 50px;
	margin-bottom: 0;
}
#top_net_type {
	padding-bottom: 110px;
}
#top_net_type::before {
	background: #eaecef;
}
#top_net_type h3 {
	position: relative;
	top: -30px;
	margin-bottom: 30px;
}
#top_net_type h3 span {
	font-size: 40px;
	color: #fff;
	background: var(--color-font);
	padding: 14px 40px 19px;
	position: relative;
	font-weight: 500;
}
#top_net_type h3 span::before, #top_net_type h3 span::after {
	content: "";
	width: 14px;
	height: 100%;
	background: var(--color-font);
	position: absolute;
	top: 0;
	left: -13px;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
#top_net_type h3 span::after {
	left: auto;
	right: -14px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}
#top_net_type > .txt {
	font-size: 20px;
	margin-bottom: 50px;
	font-weight: 500;
}
#top_net_type .logo {
	width: 540px;
	height: 110px;
	margin: 0 auto;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 50px;
	position: relative;
}
#top_net_type .logo::before {
	content: "";
	position: absolute;
	inset: 5px;
	border: 1px solid #ccc;
	pointer-events: none;
}
#top_net_type .logo img {
	width: 500px;
}
#top_net_type .btn01 {
	margin-bottom: 50px;
}
#top_net_type .waku {
	border-radius: 10px;
	background: #fff;
	width: 850px;
	margin: 0 auto;
	padding: 35px 0;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.3;
}
#top_net_type .waku .txt02 {
	font-size: 30px;
}
#top_point02 h4.point {
	margin: 50px 0;
}
#top_point02 .rsa_wrap {
	margin-bottom: 90px;
}
#top_point02 .rsa_wrap dl {
	margin-bottom: 50px;
}
#top_point02 .rsa_wrap dl dt {
	margin-bottom: 60px;
}
#top_point02 .rsa_wrap dl dt span {
	width: 500px;
	border: 1px solid #bfd9fb;
	border-radius: 23px;
	font-weight: bold;
	font-size: 22px;
	display: inline-block;
	padding: 1px 0 3px;
}
#top_point02 .rsa_wrap dl dd {
	justify-content: center;
	gap: 0 75px;
}
#top_point02 .rsa_wrap dl dd .box {
	width: 160px;
}
#top_point02 .rsa_wrap dl dd .box .img {
	border-radius: 50%;
	background: #f4f9fe;
	width: 150px;
	height: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}
#top_point02 .rsa_wrap dl dd .box .img img.hamidashi {
	position: absolute;
}
#top_point02 .rsa_wrap dl dd .box .txt {
	font-size: 109%;
	line-height: 1.5;
}
#top_point02 .pick_area {
	padding-bottom: 110px;
}
#top_point02 .pick_area::before {
	top: -100px;
	height: calc(100% + 100px);
	background: #f7f7f7;
}
#top_point02 .pick_area::after {
	top: -100px;
	height: 180px;
	background : linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
}
#top_point02 .pick_area h3 {
	margin-bottom: 50px;
}
#top_point02 .pick_area h3 span {
	color: #f69108;
	font-size: 32px;
	position: relative;
}
#top_point02 .pick_area h3 span::before, #top_point02 .pick_area h3 span::after {
	content: "";
	background: url("../img/pick.png") no-repeat center / 100% auto;
	width: 37px;
	aspect-ratio: 37 / 65;
	position: absolute;
	top: -10px;
	left: -60px;
}
#top_point02 .pick_area h3 span::after {
	left: auto;
	right: -60px;
	transform: scaleX(-1);
}
#top_point02 .pick_area .links {
	width: 915px;
	margin: 60px auto 0;
}
#top_point02 .pick_area .links ul {
	
}
#top_point02 .pick_area .links ul li {
	padding-left: 40px;
	position: relative;
	margin-bottom: 20px;
}
#top_point02 .pick_area .links ul li:last-of-type {
	margin-bottom: 0;
}
#top_point02 .pick_area .links ul li::before {
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	background: #e9f1fd url("../img/arrow03.png") no-repeat center;
}
#top_point02 .pick_area .links ul li a {
	text-decoration: underline;
	color: var(--color-font);
}
#top_point03 {
	padding-bottom: 110px;
}
#top_point03::before {
	background: #e9f1fd;
	top: 340px;
	height: calc(100% - 340px);
}
#top_point03::after {
	top: 340px;
	height: 100px;
	background : linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
}
#top_point03 h4.point {
	font-size: 35px;
	margin: 50px 0;
}
#top_point03 .list .box {
	width: 340px;
}
#top_point03 .list .box .img {
	text-align: center;
	margin-bottom: 20px;
}
#top_point04 {
	padding-bottom: 150px;
}
#top_point04 .chks {
	margin-bottom: 10px;
}
#top_point04 .chks li {
	width: 250px;
	height: 140px;
	padding-top: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background : linear-gradient(90deg, rgba(80, 165, 226, 1) 0%, rgba(44, 130, 241, 1) 100%);
	color: #fff;
	font-size: 25px;
	font-weight: 500;
	line-height: 1.3;
	border-radius: 10px;
	position: relative;
}
#top_point04 .chks li::before {
	content: "";
	position: absolute;
	top: -25px;
	left: 50%;
	transform: translateX(-50%);
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border: 1px solid #80b4f7;
	background: #fff url("../img/chk02.png") no-repeat center;
}
#top_point04 .chks li .fs {
	font-size: 16px;
}
#top_blog {
	padding-top: 80px;
	padding-bottom: 110px;
}
#top_blog::before {
	background: #e9f1fd;
}
#top_blog::after {
	height: 1px;
	background: var(--color-primary);
}
#top_blog h3 {
	position: relative;
	top: -102px;
}
#top_blog h3 span {
	width: 500px;
	border-radius: 23px;
	font-weight: bold;
	font-size: 22px;
	display: inline-block;
	padding: 6px 0 9px;
	background: var(--color-primary);
	color: #fff;
}
#top_blog .waku {
	width: 800px;
	background: #fff;
	margin: 0 auto;
	border-radius: 10px;
	padding: 50px;
	margin-bottom: 60px;
}
#top_blog .btn01 a {
	color: var(--color-primary);
	background: #fff url("../img/arrow02.png") no-repeat center right 60px / 18px auto;
	border-color: #a7c7f7;
	font-size: 25px;
	font-weight: 500;
}
#top_blog .btn01 a:hover {
	background-color: #e0e3e7;
}
#top_blog .post {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding-bottom: 50px;
	margin-bottom: 50px;
}
#top_blog .post:last-of-type {
	margin-bottom: 0;
}
#top_blog .post::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: radial-gradient(
		circle farthest-corner at 74.45% 50%,
		#6495d4 0%,
		#9da9b7 100%
	);
}
#top_blog .post .img {
	width: 200px;
}
#top_blog .post .img img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}
#top_blog .post .img .dummy {
	width: 100%;
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #ccc;
}
#top_blog .post .img .dummy img {
	width: 90%;
	aspect-ratio: unset;
	object-fit: unset;
}
#top_blog .post .info {
	width: 471px;
}
#top_blog .post .info .date {
	background: url("../img/pen.png") no-repeat left top;
	padding-left: 30px;
}
#top_blog .post .info a {
	font-size: 22px;
	font-weight: 500;
	text-decoration: underline;
}
#top_contact {
	color: #fff;
}
#top_contact::before {
	background : linear-gradient(135deg, rgba(80, 165, 226, 1) 0%, rgba(44, 130, 241, 1) 100%);
}
#top_contact h3 {
	margin-bottom: 50px;
}
#top_contact h3 span {
	font-size: 50px;
	position: relative;
}
#top_contact h3 span::before, #top_contact h3 span::after {
	content: "";
	position: absolute;
	background: #fff;
	width: 62px;
	height: 3px;
	transform: rotate(45deg);
	left: -80px;
	bottom: 30px;
}
#top_contact h3 span::after {
	left: auto;
	right: -80px;
	transform: rotate(-45deg);
}
#top_contact .btn01 {
	margin-bottom: 50px;
}
#top_contact .btn01 a {
	font-size: 46px;
}
#top_contact .btn01 a img {
	width: 65px;
	margin-right: 15px;
	position: relative;
	top: -10px;
}
#top_notice::before {
	background: url("../img/bg.png") no-repeat top right;
}
#top_notice .waku {
	border: 1px solid var(--color-font);
	padding: 20px;
	margin-bottom: 60px;
}
#top_notice .waku .thin {
	color: #707c8f;
}
@media print, screen and (min-width: 769px){ /* PCのみ */
}
@media print, screen and (min-width: 641px){ /* PC・タブレット */
	/* お知らせ */
	#top_info dl {
		display: flex;
	}
	#top_info dt {
		width: 100px;
	}
	#top_info dd {
		width: calc(100% - 100px);
	}
}
@media only screen and (max-width: 768px) and (min-width: 641px){ /* タブレットのみ */
}
@media only screen and (max-width: 768px) {  /* タブレット以下 */
	.fm {
		font-size: 115%;
	}
	.fm2 {
		font-size: 20px;
	}
	#top_otoku {
		padding: 50px 0;
	}
	#top_otoku .line_txt {
		font-size: 30px;
	}
	#top_otoku .line_txt .line .serif {
		font-size: 50px;
	}
	#top_riyou .bg_wide .logo {
		flex-wrap: wrap;
		gap: 10px 0;
	}
	#top_riyou .bg_wide .txt {
		font-size: 120%;
	}
	#top_riyou .bg_wide .logo li {
		width: 49%;
	}
	#top_dokyo .midashi {
		line-height: 1.3;
		font-size: 35px;
	}
	#top_dokyo .list {
		max-width: 600px;
		width: 100%;
		margin-bottom: 80px;
	}
	#top_dokyo .list .box {
		font-size: 130%;
	}
	#top_mitsumori h3 {
	}
	#top_mitsumori .cen_tbs {
		text-align: center;
	}
	#top_mitsumori .mitsumori > .txt {
		font-size: 130%;
		text-align: center;
	}
	#top_mitsumori .mitsumori .cen_tbs {
		position: relative;
		left: -12.5px;
	}
	#top_mitsumori .mitsumori h4 {
		font-size: 28px;
	}
	#top_mitsumori .mitsumori .flow dl {
		width: 32%;
	}
	#top_mitsumori .mitsumori .flow dl:not(:last-of-type)::before {
		width: 4%;
		right: -4%;
	}
	#top_mitsumori .mitsumori .flow dl dt {
		height: auto;
		padding: 20px 20px 20px 50px;
	}
	#top_mitsumori .mitsumori .flow dl dt .maru {
		top: 20px;
		left: 10px;
	}
	#top_mitsumori .mitsumori .flow dl dd {
		padding: 15px;
	}
	#top_mitsumori .mitsumori .flow dl dd .fm {
		font-size: 130%;
	}
	#top_mitsumori .mitsumori .flow dl dd .img {
		width: 100%;
		height: auto;
		position: relative;
		bottom: auto;
		left: auto;
		transform: unset;
	}
	#top_mitsumori .mitsumori .waku {
		padding: 0 20px 20px;
	}
	#top_mitsumori .mitsumori .waku .cen_tbs {
		left: 12.5px;
	}
	#top_mitsumori .mitsumori .waku h4 {
		left: auto;
		white-space: nowrap;
	}
	#top_mitsumori .mitsumori .waku .img {
		width: 30%;
	}
	#top_mitsumori .mitsumori .waku .info {
		width: 65%;
	}
	#top_mitsumori .mitsumori .waku .btn01 {
		margin-top: 30px;
	}
	#top_net_type {
		padding-bottom: 50px;
	}
	#top_net_type h3 {
		top: -55px;
		margin-bottom: -20px;
	}
	#top_net_type h3 span {
		display: block;
		padding: 14px 20px 19px;
		font-size: 30px;
	}
	#top_net_type .waku {
		width: 80%;
	}
	#top_point02 .rsa_wrap dl dd {
		gap: 0 50px;
	}
	#top_point02 .pick_area {
		padding-bottom: 50px;
	}
	#top_point02 .pick_area h3 span {
		font-size: 24px;
	}
	#top_point02 .pick_area .links {
		width: 100%;
		margin-top: 30px;
	}
	#top_point02 .pick_area .links ul {
		margin-bottom: 10px;
	}
	#top_point02 .pick_area .links ul li {
		margin-bottom: 10px;
	}
	#top_point03 {
		padding-bottom: 50px;
	}
	#top_point03 .list .box {
		width: 100%;
		display: flex;
		justify-content: space-between;
		margin-bottom: 20px;
	}
	#top_point03 .list .box:last-of-type {
		margin-bottom: 0;
	}
	#top_point03 .list .box .img {
		width: 39%;
		margin-bottom: 0;
	}
	#top_point03 .list .box .txt {
		width: 58%;
	}
	#top_blog .waku {
		width: 100%;
		padding: 20px;
	}
	#top_blog .post {
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	#top_blog .post::after {
		bottom: -1px;
	}
	#top_blog .post .img {
		width: 180px;
	}
	#top_blog .post .info {
		width: calc(100% - 200px);
	}
	#top_point04 {
		padding-bottom: 90px;
	}
	#top_point04 .chks li {
		width: 49%;
		margin-bottom: 35px;
	}
	#top_point04 .chks li:nth-of-type(3), #top_point04 .chks li:nth-of-type(4) {
		margin-bottom: 0;
	}
	#top_notice .waku {
		margin-bottom: 30px;
	}
}
@media only screen and (max-width: 640px){ /* スマホ */
	.fm2 {
		font-size: 17px;
	}
	#top_otoku {
		padding: 10px 0 30px;
	}
	#top_otoku .line_txt {
		font-size: 25px;
	}
	#top_otoku .line_txt .line .serif {
		font-size: 30px;
	}
	#top_otoku .line_txt .line::before, #top_otoku .line_txt .line::after {
		width: 2px;
		aspect-ratio: 2 / 30;
		top: 5px;
	}
	#top_otoku .line_txt .line::before { 
		left: -15px;
		transform: rotate(-30deg);
	}
	#top_otoku .line_txt .line::after {
		right: -15px;
		transform: rotate(30deg);
	}
	#top_otoku .btn01 {
		margin-top: 20px;
	}
	#top_riyou h3 {
		font-size: 25px;
		margin-bottom: 30px;
	}
	#top_riyou h3 .serif {
		font-size: 35px;
	}
	#top_riyou .bg_wide {
		padding-bottom: 40px;
	}
	#top_riyou .bg_wide::before {
		top: 20px;
		height: calc(100% - 18px);
	}
	#top_riyou .bg_wide .midashi {
		top: 0;
	}
	#top_riyou .bg_wide .midashi span {
		width: auto;
		padding: 1px 20px 2px;
	}
	#top_riyou .bg_wide .logo {
		width: calc(100% - 20px);
		margin: 0 auto;
	}
	#top_riyou .bg_wide .logo li {
		height: auto;
		aspect-ratio: 32 / 8;
	}
	#top_riyou .bg_wide .logo li img {
		width: 80%;
	}
	#top_riyou .bg_wide .logo li:nth-of-type(3) img {
		width: 70%;
	}
	#top_dokyo .midashi {
		font-size: 23px;
		margin-bottom: 30px;
	}
	#top_dokyo .list {
		width: calc(100% - 20px);
		margin-bottom: 40px;
	}
	#top_dokyo .list .box {
		width: 30%;
	}
	#top_dokyo .list .box .img {
		width: 100%;
		height: auto;
		aspect-ratio: 1 / 1;
		margin-bottom: 10px;
	}
	#top_dokyo .list .box .img::before {
		width: 30px;
		height: auto;
		aspect-ratio: 45 / 44;
	}
	#top_dokyo .list .box .img::after {
		right: -5px;
		width: 25px;
		height: 25px;
		filter: blur(5px);
	}
	#top_dokyo .list .box .img img {
		transform: scale(0.7);
	}
	#top_dokyo .list .box .txt {
		font-size: 17px;
	}
	#top_point01 .flow {
		margin: 20px 0;
	}
	#top_point01 .flow img {
		width: 100%;
	}
	#top_point01 .bg_wide {
		padding-bottom: 0;
	}
	#top_point01 .bg_wide::before {
		display: none;
	}
	#top_point01 .btn01 {
		margin-top: 40px;
	}
	#top_point01 .btn01 a {
		width: 100%;
		padding-top: 23px;
		font-size: 18px;
	}
	#top_mitsumori {
		padding-top: 0;
	}
	#top_mitsumori h3 {
		font-size: 30px;
		margin-bottom: 60px;
	}
	#top_mitsumori h3 .serif {
		font-size: 50px;
	}
	#top_mitsumori {
		padding-bottom: 100px;
	}
	#top_mitsumori .mitsumori h4 {
		font-size: 18px;
		padding: 5px 15px 7px 25px;
		top: -18px;
		left: 28px;
		margin-bottom: 0;
	}
	#top_mitsumori .mitsumori h4 span {
		width: 46px;
		height: 46px;
		top: -4px;
		left: -28px;
		font-size: 30px;
	}
	#top_mitsumori .mitsumori .flow {
		margin: 20px 0;
	}
	#top_mitsumori .mitsumori .flow dl {
		width: 100%;
		margin-bottom: 20px;
	}
	#top_mitsumori .mitsumori .flow dl:not(:last-of-type)::before {
		top: auto;
		bottom: -10px;
		right: auto;
		left: 50%;
		transform: translateX(-50%);
		width: 200px;
		height: 10px;
		clip-path: polygon(50% 100%, 0 0, 100% 0);
	}
	#top_mitsumori .mitsumori .flow dl dt {
		padding: 10px 10px 10px 50px;
		font-size: 18px;
	}
	#top_mitsumori .mitsumori .flow dl dt .maru {
		top: 6px;
		width: 30px;
		height: 30px;
		font-size: 22px;
		padding-bottom: 2px;
	}
	#top_mitsumori .mitsumori .flow dl dd {
		height: auto;
	}
	#top_mitsumori .mitsumori .flow dl dd .fm {
		font-size: 110%;
	}
	#top_mitsumori .mitsumori .btn01 {
		margin-top: 30px;
		margin-bottom: 0;
	}
	#top_mitsumori .mitsumori .btn01 a {
		padding-top: 10px;
	}
	#top_mitsumori .mitsumori.bg {
		padding-bottom: 40px;
	}
	#top_mitsumori .mitsumori .waku {
		padding: 0 10px 15px;
	}
	#top_mitsumori .mitsumori .waku .img {
		width: 50%;
	}
	#top_mitsumori .mitsumori .waku .info {
		width: 47%;
	}
	#top_mitsumori .mitsumori .waku .info .logo {
		margin-bottom: 10px;
	}
	#top_mitsumori .mitsumori .waku .info .logo img {
		width: 80px;
	}
	#top_mitsumori .mitsumori .waku .info .txt {
		font-size: 110%;
		margin-bottom: 0;
		line-height: 1.5;
	}
	#top_mitsumori .mitsumori .waku .btn01 {
		margin-top: 20px;
	}
	#top_net_type h3 {
		top: -44px;
	}
	#top_net_type h3 span {
		font-size: 19px;
		width: calc(100% - 30px);
		margin: 0 auto;
	}
	#top_net_type > .txt {
		font-size: 17px;
		margin-bottom: 20px;
	}
	#top_net_type .logo {
		width: 80%;
		height: auto;
		aspect-ratio: 54 / 11;
		text-align: center;
		margin-bottom: 30px;
	}
	#top_net_type .logo img {
		width: 80%;
	}
	#top_net_type .btn01 {
		margin-bottom: 40px;
	}
	#top_net_type .btn01 a {
		font-size: 18px;
		padding-top: 20px;
		height: 70px;
	}
	#top_net_type .btn01 a .label {
		font-size: 18px;
	}
	#top_net_type .waku {
		padding: 15px;
	}
	#top_net_type .waku .txt {
		font-size: 14px;
	}
	#top_net_type .waku .txt02 {
		font-size: 20px;
	}
	#top_point02 h4.point {
		margin: 30px 0;
	}
	#top_point02 > .txt {
		font-size: 110%;
	}
	#top_point02 .rsa_wrap {
		margin-bottom: 0;
	}
	#top_point02 .rsa_wrap dl {
		margin-bottom: 40px;
	}
	#top_point02 .rsa_wrap dl dt {
		margin-bottom: 30px;
	}
	#top_point02 .rsa_wrap dl dt span {
		width: 100%;
		font-size: 17px;
	}
	#top_point02 .rsa_wrap dl dd {
		gap: 0 1%;
	}
	#top_point02 .rsa_wrap dl dd .box {
		width: 48%;
		margin-bottom: 20px;
	}
	#top_point02 .rsa_wrap dl dd .box .img {
		width: 100%;
		height: auto;
		aspect-ratio: 1 / 1;
		margin-bottom: 10px;
	}
	#top_point02 .rsa_wrap dl dd .box .img img {
		width: 70%;
	}
	#top_point02 .rsa_wrap dl dd .box .img img.hamidashi {
		width: 150px;
	}
	#top_point02 .rsa_wrap dl dd.dsp_hpt {
		display: none;
	}
	#top_point02 .pick_area {
		padding-bottom: 40px;
	}
	#top_point02 .pick_area h3 span {
		font-size: 20px;
	}
	#top_point02 .pick_area h3 span::before {
		left: -55px;
	}
	#top_point02 .pick_area h3 span::after {
		right: -70px;
	}
	#top_point02 .pick_area .links ul li {
		font-size: 90%;
	}
	#top_point03 h4.point {
		font-size: 26px;
		margin: 30px 0;
	}
	#top_point02 h4.point .pri {
		font-size: 25px;
	}
	#top_point03 .list .box .txt {
		font-size: 100%;
		line-height: 1.7;
	}
	#top_point04 {
		padding-bottom: 50px;
	}
	#top_point04 .chks li {
		width: 100%;
		height: auto;
		display: block;
		text-align: left;
		margin-bottom: 10px;
		padding: 8px 10px 10px 25px;
		margin-left: 5px;
		font-size: 20px;
	}
	#top_point04 .chks li:nth-of-type(3), #top_point04 .chks li:nth-of-type(4) {
		margin-bottom: 10px;
	}
	#top_point04 .chks li::before {
		width: 30px;
		height: 30px;
		top: calc(50% - 15px);
		left: 0;
		background-size: 60% auto;
	}
	#top_point04 .chks li br {
		display: none;
	}
	#top_blog {
		padding-top: 20px;
		padding-bottom: 50px;
	}
	#top_blog h3 {
		top: -42px
	}
	#top_blog h3 span {
		width: auto;
		padding: 6px 20px 9px;
		font-size: 20px;
	}
	#top_blog .waku {
		margin-bottom: 40px;
	}
	#top_blog .post .img {
		width: 30%;
	}
	#top_blog .post .info {
		width: 65%;
	}
	#top_blog .post .info .date {
		margin-bottom: 5px;
	}
	#top_blog .post .info .ttl {
		margin-bottom: 5px;
	}
	#top_blog .post .info a {
		font-size: 17px;
	}
	#top_blog .post .info .txt {
		font-size: 100%;
	}
	#top_blog .btn01 {
		margin-bottom: 0;
	}
	#top_blog .btn01 a {
		font-size: 18px;
		padding-top: 13px;
		padding-right: 30px;
		background-position: center right 15px;
	}
	#top_contact h3 {
		margin-bottom: 20px;
	}
	#top_contact h3 span {
		font-size: 30px;
	}
	#top_contact h3 span::before, #top_contact h3 span::after {
		width: 40px;
		bottom: 20px;
	}
	#top_contact h3 span::before {
		transform: rotate(50deg);
		left: -50px;
	}
	#top_contact h3 span::after {
		transform: rotate(-50deg);
		right: -50px;
	}
	#top_contact .btn01 {
		margin-bottom: 20px;
	}
	#top_contact .btn01 a {
		font-size: 30px;
		padding-top: 16px;
	}
	#top_contact .btn01 a img {
		width: 50px;
		margin-right: 10px;
		top: -5px;
	}
}
@media only screen and (max-width: 320px){ /* スマホ */
	#top_otoku .line_txt {
		font-size: 20px;
	}
	#top_riyou h3 {
		font-size: 22px;
	}
	#top_dokyo .midashi {
		font-size: 21px;
	}
	#top_dokyo .list .box .txt {
		font-size: 15px;
	}
	#top_mitsumori h3 {
		font-size: 28px;
	}
	#top_mitsumori .mitsumori h4 {
		font-size: 16px;
	}
	#top_mitsumori .mitsumori > .txt {
		font-size: 120%;
	}
	#top_net_type h3 span {
		font-size: 16px;
	}
	#top_net_type > .txt {
		font-size: 15px;
	}
	#top_net_type .btn01 a .label {
		font-size: 15px;
	}
	#top_net_type .btn01 a {
		font-size: 15px;
	}
	#top_net_type .waku {
		width: 90%;
	}
	#top_net_type .waku .txt {
		font-size: 13px;
	}
	#top_point02 h4.point .pri {
		font-size: 20px;
	}
	#top_point02 > .txt {
		font-size: 95%;
	}
	#top_point02 .rsa_wrap dl dd .box .txt {
		font-size: 96%;
	}
	#top_point02 .rsa_wrap dl dt span {
		font-size: 14px;
	}
	#top_point03 > .txt {
		font-size: 100%;
	}
	#top_point03 h4.point {
		font-size: 21px;
	}
	#top_point04 .chks li {
		font-size: 18px;
	}
	#top_point04 .chks li .fs {
		font-size: 14px;
	}
	#top_contact .btn01 a {
		font-size: 25px;
		padding-top: 19px;
	}
	#top_contact .btn01 a img {
		width: 40px;
	}
}