@charset "utf-8";
/* CSS Document */

/*最終更新 2025/11/28 11:50*/

:root{
	--font-color: #231815;
	--pro-color: #1d50a2;
	--pro-sub-color: #d3edfb;
	--home-color: #e8383d;
	--home-sub-color: #fce4df;
	--school-color: #eb6ea5;
	--school-sub-color: #f9d3e3;
	--about-color: #008cd6;
	--archive-color: #6bbc6e;
}

body{font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic Medium", "Meiryo", sans-serif; color: var(--font-color); line-height: 1.7; font-size: 18px; word-wrap: break-word; margin: 0; padding: 0;}

div, section, article, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, span, a, blockquote, th, td, figure{margin: 0; padding: 0; box-sizing: border-box;}
table{border-collapse: collapse;}
th, td{word-break: break-all;}
img{border: 0; vertical-align:bottom;}
ul, ol{list-style: none; margin: 0; padding: 0;}

a{text-decoration: none;}
img{height: auto;}

.float{transition: .3s all;}
.float:hover{transform: translateY(-3px);}



/*------------------------------------------------------*/
/*------------------------------------------------------*/
/* header */
/*------------------------------------------------------*/
/*------------------------------------------------------*/
.header__wrap{
	width: 940px;
	font-size: 0;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.header__logo{
	height: auto;
	margin-top: 71px;
}
.header__btn{
	width: 117px;
	margin-top: 54px;
	display: inline-block;
}
.header__thumb{
	width: 293px;
	flex-shrink: 0;
}
.header__center{
	text-align: center;
	background-image: url("../image/back_head.png");
	padding: 25px 0 0;
	flex-grow: 1;
}

/* header_local */
.header_local__wrap{
	height: 114px;
	background-image: url("../image/back_head.png");
	margin-bottom: 108px;
	position: relative;
}
.header_local__wrap.header_local--about{
	margin-bottom: 0;
}
.header_local__inner{
	height: 173px;
	width: 590px;
	font-size: 0;
	margin: auto;
	position: absolute;
	top: 26px;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.color--home .header_local__inner{
	width: 727px;
}
.header_local--about .header_local__inner{
	height: 100px;
	width: 727px;
	position: relative;
	top: 0;
	justify-content: center;
}
.header_local__title{
	font-size: 0;
	text-align: center;
}
.header_local--about .pagetop{
	position: absolute;
	right: 0;
}
@media only screen and (max-width:600px){
	.header__wrap{
		width: 100%;
	}
	.header__thumb{
		width: 30%;
	}
	.header__center{
		width: 40%;
		padding-top: 8px;
	}
	.header__thumb--pro, .header__thumb--home{
		width: 100%;
	}
	.header__logo-sub{
		width: 40%;
	}
	.header__logo{
		width: 80%;
		margin-top: 14%;
	}
	.header__btn{
		width: 40%;
		margin-top: 10%;
	}
	.header__btn img{
		width: 100%;
	}
	.header_local__wrap:not(.header_local--about){
		height: 75px;
		margin-bottom: 48px;
	}
	.header_local__inner, .color--home .header_local__inner{
		height: 106px;
		width: 100%;
		padding: 0 8px;
		top: 16px;
	}
	.header_local--about .header_local__inner{
		height: 90px;
		width: 100%;
		padding: 0 8px;
	}
	.header_local__logo{
		width: 80px;
		height: auto;
		margin: 0;
	}
	.header_local__title{
		width: 190px;
	}
		.header_local__title img{
			height: auto;
			width: 100%;
		}
	.pagetop{
		bottom: -32px;
		right: 0;
	}
	.pagetop img{
		width: 80px;
	}
	.header_local--about .pagetop{
		bottom: auto;
		right: 8px;
	}
}
.header__item{
	position: relative;
}
.header__thumb--home{
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	animation-name: thumb_anime;
	transform-origin: center center;
	animation-duration: 10s;
	animation-fill-mode: both;
	animation-iteration-count: infinite;
}
.header__thumb--01{animation-delay: 2s;}
.header__thumb--02{animation-delay: 3s;}
.header__thumb--03{animation-delay: 4s;}
.header__thumb--04{animation-delay: 5s;}
@keyframes thumb_anime{
	from{
		animation-timing-function: linear;
		opacity: 0;
	}to{
		animation-timing-function: linear;
		opacity: 0;
	}8%{
		animation-timing-function: linear;
		opacity: 1;
	}50%{
		animation-timing-function: linear;
		opacity: 1;
	}58%{
		animation-timing-function: linear;
		opacity: 0;
	}
}



/*------------------------------------------------------*/
/*------------------------------------------------------*/
/* footer */
/*------------------------------------------------------*/
/*------------------------------------------------------*/
.footer__wrap{
	text-align: center;
}
.copyright{
	font-size: 12px;
	margin-top: 32px;
	padding: 22px 0 32px;
}
@media only screen and (max-width:600px){
	.copyright{
		margin: 16px 0 0;
		padding: 16px 8px;
	}
}

.footer__banner{
	width: 100%;
	margin: 37px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
}



/*------------------------------------------------------*/
/*------------------------------------------------------*/
/* top */
/*------------------------------------------------------*/
/*------------------------------------------------------*/
.conteiner_top{
	width: 940px;
	margin: 31px auto 39px;
}
.top__title{
	text-align: center;
	margin: 7px auto;
}
.top_menu{
	margin: 16px auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 5px 19px;
}
.top_menu__item{
	position: relative;
}
.top_menu__item:last-child{
	margin-top: 32px;
}
.top_menu__caution{
	position: absolute;
	bottom: 36px;
	right: -50px;
}
@media only screen and (max-width:600px){
	.conteiner_top{
		width: 80%;
		margin: 24px auto;
	}
	.top__title{
		width: 50%;
		margin: 0 auto 16px;
	}
	.top__title img{
		width: 100%;
	}
	.top_menu{
		width: 100%;
		gap: 8px;
	}
	.top_menu__item{
		width: calc(50% - 4px);
		margin: 0;
	}
	.top_menu__item img{
		width: 100%;
	}
	img.top_menu__caution{
		width: 50px;
		bottom: 20px;
		right: -24px;
	}
}

.archive_carousel__wrap{
	background-image: url("../image/back_bottom.png");
	padding: 60px 0 30px;
}
.archive_carousel--local{
	padding: 30px 0;
}
.archive_carousel__inner{
	width: 850px;
	background: #fff;
	border: 2px solid var(--archive-color);
	margin: 0 auto;
	position: relative;
}
.archive_carousel__head{
	height: 45px;
	width: 472px;
	font-size: 0;
	background: var(--archive-color);
	margin: auto;
	padding: 0 16px 0 26px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.archive_carousel__inner .archive_carousel__head{
	position: absolute;
	top: -28px;
	left: 0;
	right: 0;
}
.archive_carousel__inner .archive_carousel__head::after{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -8px;
	border: 8px solid transparent;
	border-top: 16px solid var(--archive-color);
}
.archive_carousel__bottom{
	margin-bottom: 20px;
	display: flex;
	justify-content: center;
	gap: 27px;
}
.archive_carousel__link{
	line-height: 0;
}
.archive_carousel{
	margin: 48px 8px 11px;
	display: flex;
}
.archive_carousel .splide__track::before{
	content: '';
	height: 92px;
	width: 67px;
	background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.archive_carousel .splide__track::after{
	content: '';
	height: 92px;
	width: 67px;
	background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}
.archive_carousel .splide__arrow{
	height: 67px;
	width: 67px;
	background-color: transparent;
	background-repeat: no-repeat;
	border: none;
	margin: auto 0;
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 2;
	cursor: pointer;
}
.archive_carousel .splide__arrow svg{
	display: none;
}
.archive_carousel .splide__arrow--prev{
	background-image: url(../image/footer_archive_left.png);
	left: 0;
}
.archive_carousel .splide__arrow--next{
	background-image: url(../image/footer_archive_right.png);
	right: 0;
}
.archive_carousel__item:hover{
	opacity: 0.8;
}
.splide__slide img{
	border-radius: 8px;
}
@media only screen and (max-width:600px){
	.archive_carousel__wrap{
		padding: 24px 0 16px;
	}
	.archive_carousel--local{
		padding: 16px 0;
	}
	.archive_carousel__inner{
		width: 90%;
	}
	.archive_carousel__head{
		height: auto;
		width: 60%;
		padding: 4px 8px;
	}
	.archive_carousel__inner .archive_carousel__head{
		top: -8px;
	}
	.archive_carousel__inner .archive_carousel__head::after{
		margin-left: -5px;
    border-width: 5px;
    border-top-width: 10px;
	}
	.archive_carousel__head img{
		width: 80%;
	}
	.archive_carousel__head a{
		width: calc(20% - 8px);
		margin-left: 8px;
	}
	.archive_carousel__head a img{
		width: 100%;
	}
	.archive_carousel__bottom{
		flex-direction: column;
		align-items: center;
		gap: 16px;
	}
	.archive_carousel{
		margin: 24px 4px 16px;
	}
	.archive_carousel .splide__track:is(::before, ::after){
		height: 92px;
		width: 67px;
	}
	.archive_carousel .splide__arrow{
		height: 30px;
		width: 30px;
		background-size: 30px auto;
	}
	.splide__slide img{
		width: 100%;
		border-radius: 3px;
	}
}



/*------------------------------------------------------*/
/* content */
/*------------------------------------------------------*/
.prof__wrap{
	width: 605px;
	margin: 43px auto;
	display: flex;
	flex-wrap: wrap;
}
.prof__title{
	width: 100%;
	font-size: 14px;
	line-height: 1;
	margin-bottom: 8px;
}
.color--pro .prof__title{color: var(--pro-color);}
.color--home .prof__title{color: var(--home-color);}
.color--school .prof__title{color: var(--school-color);}
.prof__thumb{
	width: 139px;
	flex-shrink: 1;
}.prof__thumb img{
	width: 100%;
}
.prof__media{
	width: calc(100% - 156px);
	margin-left: 16px;
}
.prof__name{
	font-size: 21px;
	white-space: nowrap;
}
.prof__name span{
	font-size: 11px;
	vertical-align: middle;
	padding-left: 20px;
}
.prof__text{
	font-size: 12px;
}
@media only screen and (max-width:600px){
	.prof__wrap{
		width: calc(100% - 16px);
	}
	.prof__title{
		font-size: 16px;
	}
	.prof__thumb{
		width: 100px;
	}
	.prof__media{
		width: calc(100% - 116px);
	}
	.prof__name{
		font-size: 16px;
		line-height: 1.3;
		white-space: normal;
		margin-bottom: 8px;
	}
	.prof__name span{
		display: block;
		padding: 0;
	}
}

.recipe__wrap{
	width: 716px;
	margin: 43px auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 26px;
}
.recipe__item{
	width: 345px;
	border-radius: 13px;
	background-image: url(../image/border_top_left.png),url(../image/border_top_right.png),url(../image/border_bottom_left.png),url(../image/border_bottom_right.png);
	background-repeat: no-repeat;
	background-position: top 12px left 12px, top 12px right 12px, bottom 12px left 12px, bottom 12px right 12px;
	padding: 0 0 30px;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.color--pro .recipe__item{background-color: var(--pro-sub-color);}
.color--home .recipe__item{background-color: var(--home-sub-color);}
.color--school .recipe__item{background-color: var(--school-sub-color);}
.recipe__title{
	font-size: 23px;
	font-weight: normal;
	text-align: center;
	line-height: 1.3;
}
.recipe__tag{
	position: absolute;
	top: 10px;
	left: 11px;
}
.recipe__thumb{
	width: 273px;
	margin: -14px auto 0;
	display: block;
}
.recipe__text{
	width: 273px;
	font-size: 13px;
	line-height: 1.6;
	margin: 14px auto 0;
	display: block;
}
.recipe__video{
	width: 315px;
	text-align: center;
	margin: 37px auto 0;
}
.recipe__item .recipe__video:last-child{
	margin-bottom: 30px;
}
.recipe__btn{
	width: 174px;
	margin: 0 auto;
	display: block;
}
.recipe__link{
	text-align: center;
}
.recipe__link a{
	color: #00a0e9;
	font-size: 10px;
	text-decoration: underline;
}
@media only screen and (max-width:600px){
	.recipe__wrap{
		width: 100%;
		margin: 24px 0;
		flex-direction: column;
		gap: 24px;
	}
	.recipe__item{
		width: calc(100% - 24px);
		margin: 0 auto;
		padding: 0 0 16px;
	}
	.recipe__thumb{
		width: calc(100% - 24px);
	}
	.recipe__text{
		width: calc(100% - 24px);
	}
	.recipe__video{
		width: calc(100% - 24px);
		margin-top: 16px;
	}
	.recipe__video iframe{
		height: auto;
		width: 100%;
		aspect-ratio: 16 / 9;
	}
	.recipe__video--short iframe{
		aspect-ratio: 229 / 407;
	}
}



/*------------------------------------------------------*/
/* about */
/*------------------------------------------------------*/
.about__title{
	text-align: center;
	margin: -20px 0 35px;
	position: relative;
}
.about__text{
	text-align: center;
	margin: 0 auto;
}
@media only screen and (max-width:600px){
	.about__title{
		width: 320px;
		margin: -25px auto 16px;
	}
	.about__title img{
		width: 100%;
	}
	.about__text img{
		width: calc(100% - 16px);
	}
}

.archive__wrap{
	background-image: url("../image/back_bottom.png");
	margin: 80px 0 0;
	padding: 36px 0;
}
.archive__title{
	width: 767px;
	font-size: 0;
	text-align: center;
	background: var(--archive-color);
	border-radius: 27px;
	display: block;
	margin: auto;
  padding: 16px;
}
.archive_list{
	width: 767px;
	margin: 28px auto;
	display: flex;
	flex-wrap: wrap;
	gap: 40px 6px;
}
.archive_list__item{
	width: 122px;
}
.archive_list__item a{
	color: var(--font-color);
}
.archive_list__text{
	font-size: 11px;
	text-align: center;
	line-height: 1.3;
	margin-top: 8px;
	display: block;
}
.archive__bottom{
  display: flex;
  justify-content: center;
  gap: 27px;
}
@media only screen and (max-width:600px){
	.archive__wrap{
		padding: 24px 0;
	}
	.archive__title{
		width: calc(100% - 16px);
		padding: 8px;
	}
	.archive__title img{
		width: 100%;
	}
	.archive_list{
		width: calc(100% - 16px);
		gap: 24px 2%;
	}
	.archive_list__item{
		width: 32%;
	}
	.archive_list__item img{
		width: 100%;
	}
	.archive__bottom{
		flex-direction: column;
		align-items: center;
		gap: 16px;
	}
}
