@charset "UTF-8";




#layout {
	background-color: #fff;
	padding: 0;
}

#main {
	width: 100%;
	margin: 0 auto;
}


.entry-content h1,
.entry-content h2 {
	text-align: center;
	font-family: "Kaisei Decol", serif;
	font-weight: 500;
	font-size: min(8vw, 2.5rem);
	color: #8b0000;
	line-height: 1.5;
	margin: 50px auto 16px;
	padding: 8px;
}

 /*見出しの花*/
.back_img_01 {
	position: relative;
	width: fit-content;
}

.back_img_01::before {
	position: absolute;
	content: "";
	width: 100px;
	height: 100px;
	top: 0;
	bottom: 0;
	left: -100px;
	background: url("../images/back/01.png") no-repeat;
	transform: scale(1);
}

.back_img_02 {
	position: relative;
	width: fit-content;
}

.back_img_02::before {
	position: absolute;
	content: "";
	width: 100px;
	height: 100px;
	top: 0;
	bottom: 0;
	left: -100px;
	background: url("../images/back/02.png") no-repeat;
	transform: scale(1);
}

.back_img_03 {
	position: relative;
	width: fit-content;
}

.back_img_03::before {
	position: absolute;
	content: "";
	width: 100px;
	height: 100px;
	top: 0;
	bottom: 0;
	left: -100px;
	background: url("../images/back/03.png") no-repeat;
	transform: scale(1);
}


.entry-content h3 {
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	font-style: normal;
	font-size: 1.3rem;
	text-indent: .3rem;
	color: #8b0000;
	margin: 1em auto 1.2em;
}

.entry-content p {
	font-family: "Zen Maru Gothic", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1rem;
	text-indent: .3em;
	color: #666;
	margin: 1em auto 1.2em;
}

.entry-content {
	width: 100%;
	margin: auto;
}

section .box,
section .box_01 {
	width: min(96%, 1280px);
	margin: 32px auto 20px;
}

section .box_01 p {
	text-align: center;
}

section.topic_section{
	background-color: #fff;
	padding: 21px 0;
}

section.buken_box {
	background-color: var(--back_color--);
	padding: 21px 0 40px;
}

section.seminara_section{
    background-color: #fff;
	padding:  0 0;
	margin: 0;
}



/*ピックアップ*/
section.buken_pickup {
	background-color: #faefc7;
	padding: 21px 0 80px;
	position: relative;
}
/*pickup上部*/
.custom-shape-divider-top-1739944600 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.custom-shape-divider-top-1739944600 svg {
    position: relative;
    display: block;
    width: calc(100% + 1.3px);
    height: 96px;
}

.custom-shape-divider-top-1739944600 .shape-fill {
	fill: #fff;
}
/*pickup下部*/
.custom-shape-divider-bottom-1739944748 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}

.custom-shape-divider-bottom-1739944748 svg {
    position: relative;
    display: block;
    width: calc(100% + 1.3px);
    height: 96px;
}

.custom-shape-divider-bottom-1739944748 .shape-fill {
    fill: var(--back_color--);
}


.img_01 {
	width: min(98%, 820px);
	display: block;
	margin: auto;
}


.grid_3 {
	display: grid;
	column-gap: 50px;
	grid-template-columns: repeat(3, 1fr);
	margin: 35px auto 16px;

}

.grid_3 div {
	border: 2px solid #8b0000;
	background-color:var(--newsbox-back-color) ;
	/*ドット部*/
	background-image: radial-gradient(circle, #f0ddc9 3px, transparent 3px);
	background-position: 0 0;
	background-size: 25px 25px;
	/*ここまでドット*/
	border-radius: 32px;
	padding: 0 16px;
}

.grid_3 h3 {
	text-align: center;
}
.grid_3 p{
background: #ffffff78;
}

.grid_3 img {
	width: 80%;
	display: block;
	margin: auto;
}

.top_img_box {
	background: #051f74;
	position: relative;
}

.top_img {
	width: 100%;
	height: auto;
	position: relative;
	margin: 0 auto ;
	overflow: hidden;
}

.top_img img.slide {
	display: block;
	width: 100vw;
	height: auto;
	margin: auto;
	animation: animationZoom 5s ease-in-out forwards;
}

@keyframes animationZoom {
	100% {
		transform: scale(1.1)
	}
}

.custom-shape-divider-bottom-1746759356 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
	margin-bottom: -1px;
}

.custom-shape-divider-bottom-1746759356 svg {
    position: relative;
    display: block;
    width: calc(100% + 1.3px);
    height: 50px;
}

.custom-shape-divider-bottom-1746759356 .shape-fill {
    fill: #fff;
}





/*右寄せ*/

.top_img .slide-text {
	position: absolute;
	color: #000;
	z-index: 10;
	width: 100%;
	top: 20%;
	right: 0;
	text-align: right;
}


/*左寄*/
/*
.top_img .slide-text {
	position: absolute;
	color: #000;
	z-index: 10;
	width: 100%;
	top: 20%;
	left: 0;
	text-align: right;
}
	*/


.top_img .slide-text .yoko-text h3 {
	font-family: 'M PLUS 1p', sans-serif;
	font-weight: 500;
	font-size: min(10vw, 45px);
	letter-spacing: .2rem;
	color: #000;

}


/*右寄*/

.top_img .slide-text .yoko-text p {
	width: fit-content;
	font-family: "Kaisei Decol", serif;
	font-weight: 400;
	font-size: clamp(1.8rem, 4vw, 4rem);
	background: #f5f5f591;
	margin-right: 0;
	margin-left: auto;
	margin-bottom: 1rem;
	padding: 0 32px;
}

/*左寄*/
/*
	.top_img .slide-text .yoko-text p {
		width: fit-content;
		font-family: "Kaisei Decol", serif;
		font-weight: 400;
		font-size: clamp(1.8rem, 4vw, 4rem);
		background: #f5f5f591;
		margin-left: 0;
		margin-bottom: 1rem;
		padding: 0 32px;
	}
		*/

.fadeIn {
	animation-name: fadeInAnime;
	animation-duration: 5s;
	animation-fill-mode: forwards;
	opacity: 0;
}

/*スタート時間*/
.delay-time02 {
	animation-delay: 0.3s;
}

.delay-time03 {
	animation-delay: 0.6s;
}

@keyframes fadeInAnime {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}



/*右から左*/
/*
.fadeIn {
opacity: 0;
transform: translateX(300px);
animation-name: fadeInAnime;
animation-duration: 5s;
animation-fill-mode: forwards;
}
*/

/*右から左*/
/*
@keyframes fadeInAnime {
    0% {
    }
    100% {
        opacity: 1;
        transform: translate(0);
    }
}
	*/




/*キャッシュフロー*/
section.cash_box{
  /* 方眼紙模様に必須のスタイル */
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)),
                    linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px));
  background-size: 16px 16px;
  background-repeat: repeat;
  background-position: center center;
  border-top:1px solid #f0f0f0 ;
  border-bottom:1px solid #f0f0f0 ;
	padding: 40px 0;
}

.cash_grid_img{
	display: grid;
	column-gap: 6px;
	grid-template-columns: repeat(3, 1fr);
	justify-content: center;
	align-items: center;
	grid-column-gap:32px;
	row-gap: 32px;
}

.cash_grid_img .reason{
	display: grid;
	grid-template-rows: subgrid; 
    grid-row: span 4; /* 項目数 */
	border:3px solid var(--main-color);
	background-color:var(--newsbox-back-color) ;
	/*ドット部*/
	background-image: radial-gradient(circle, #f0ddc9 3px, transparent 3px);
	background-position: 0 0;
	background-size: 25px 25px;
	/*ここまでドット*/
	border-radius: 32px;
	padding:  20px  20px 0;
}

.cash_grid_img img{
	width: min(150px,100%);
	height: auto;
	margin: 0 auto .5rem;
}

.cash_grid_img h3{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	font-size:clamp(1rem, 0.891rem + 0.55vw, 1.3rem);
	letter-spacing: .1rem;
	line-height: 1.5;
	text-align: center;
	color: var(--main-color);
	margin: 0 auto;
}

.cash_grid_img h4{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	font-size:2rem;
	text-align: center;
	color: #F5AC7C;
	margin: 1rem auto 0;
}

.cash_grid_img p{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	text-align: center;
	line-height: 1;
	font-size:clamp(1rem, 0.927rem + 0.36vw, 1.2rem);
	color: var(--main-color);
	margin:0 auto ;
}






/*お知らせ*/




@media only screen and (max-width: 418px) {
	/*スマホサムネイル*/













}

@media only screen and (min-width: 419px) and (max-width: 1023px) {
	/*タブレットサムネイル*/




}


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



    /*見出しの花*/
	.back_img_01::before,
	.back_img_02::before,
	.back_img_03::before {
		width: 60px;
		height: 60px;
		left: -60px;
		background-size: cover;
		
	}

	/*スマホ*/
	.grid_3 {
		display: block;
		margin: 35px auto 32px;

	}

	.grid_3 div {
		margin-bottom: 32px;
	}

	/*画像をスクエア*/
	.custom-shape-divider-bottom-1746759356 {
		bottom: -1px;
	}

	.custom-shape-divider-bottom-1746759356 svg {
		position: relative;
		display: block;
		width: calc(100% + 1.3px);
		height: 40px;
	}

	.top_img {
		display: inline-block;
		position: relative;
		width: 100%;
		max-width: 100%;
		height: initial;
	}

	.top_img::before {
		content: "";
		display: block;
		padding-top: 100%;
	}

	.top_img img.slide {
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		object-fit: cover;
		object-position: 40% 50%;
	}

	.top_img .slide-text {
		top: 25%;
	}

	.top_img .slide-text .yoko-text p {
		margin-bottom: .5rem;
	}

/*pickup上部*/
.custom-shape-divider-top-1739944600 svg {
    position: relative;
    display: block;
    width: calc(150% + 1.3px);
    height: 80px;
}


/*pickup下部*/
.custom-shape-divider-bottom-1739944748 svg {
    position: relative;
    display: block;
    width: calc(150% + 1.3px);
    height: 70px;
}

/*キャッシュフロー*/
.cash_grid_img{
	display: grid;
	column-gap: 0px;
	gap: 1px;
	grid-template-columns: repeat(2, 1fr);
	justify-content: center;
	align-items: center;
	grid-column-gap:16px;
	row-gap: 18px;
}

.cash_grid_img .reason{
	padding:  0;
}


	/*トピック*/
	/*
	.info_box .info_text {
		width: 96%;
		margin: auto;
		;
	}

	.info_box .info_text li {
		text-indent: 0;
		line-height: 1.5;
		margin-top: .75rem;
	}

	.info_box .info_text li .date {
		display: block;
		font-size: 14px;
		width: auto;
	}
		*/




}

/*スマホ*/


@media only screen and (min-width: 737px) and (max-width: 960px) {

	.top_img {
		height: initial;
	}

	.top_img .slide-text {
		margin: auto;
	}

	.top_img .slide-text .tate-text p {
		font-size: 30px;
	}

	#main {
		width: 100%;
	}

	.grid_3 {
		display: grid;
		column-gap: 20px;
	
	}

		/*画像をスクエア*/
		.custom-shape-divider-bottom-1746759356 {
			bottom: -1px;
		}





}

@media only screen and (min-width: 961px) and (max-width: 1280px) {
	/*タブレットサムネイル*/

	.top_img {
		height: initial;
	}

	.top_img .top_img_but {
		max-width: 20%;
		height: auto;
		bottom: 8%;
		left: 20%;
	}

	.top_img .slide-text {
		margin: auto;
	}

	.top_img .slide-text .tate-text p {
		font-size: 40px;
	}

		/*画像をスクエア*/
		.custom-shape-divider-bottom-1746759356 {
			bottom: -1px;
		}

}