/* ******************************************************************
 *	File name		: style.css
 *	Summary			: css base
 * ******************************************************************
 */

.disc{
	margin: 10px 0 10px 20px ;
	list-style: disc;
}
.circle{
	margin: 10px 0 10px 20px ;
	list-style: circle;
}

/* -----------------------------------------------------------------
   about
----------------------------------------------------------------- */

#bdid_about #page_title{
	background:url(../../image/bg/01.jpg) no-repeat center center;
	background-size:cover;

}
@supports (background-image: url('../../image/bg/01.webp')) {
	#bdid_about #page_title {
		background-image: url('../../image/bg/01.webp');
	}
}

/* message */

#message{
	width:100%;
	padding:0px;
}
#message_box{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	flex-wrap:wrap;
	}
	#message_box > figure{
		position:relative;
		width:50%;
		transition-duration:0.5s;
	}
	#message_box > figure img{
		position:absolute;
		top:0px;
		right:0px;
		width:700px;
		max-width:700px;
		height:auto;
		transition-duration:0.5s;
	}
	#message_box > div{
		width:calc(50% - 80px);
		text-align:left;
		transition-duration:0.5s;
	}
	#message_box > div > div{
		width:390px;
		max-width:100%;
		text-align:left;
	}
	#message_box p{
		margin:0 0 30px;
		font-size:1.1rem;
		text-align:justify;
		line-height:1.75;
}

/* --- responsive --- */
@media screen and (max-width:1040px){
	#message{
		width:100%;
		padding:0 20px;
	}
	#message_box{
	}
	#message_box > figure{
		width:100%;
		margin:0 0 30px;
		}
		#message_box > figure img{
			position:relative;
			width:500px;
			max-width:100%;
	}
	#message_box > div{
		width:100%;
		text-align:center;
	}
	#message_box > div > div{
		width:100%;
		max-width:100%;
	}
}
@media screen and (max-width:767px){
	#message_box p{
		font-size:1rem;
	}
}

/* history */

#history ol{
	position:relative;
	width:500px;
	max-width:100%;
	margin:0 auto;
	list-style:none;
	}
	#history ol li{
		position:relative;
		text-align:left;
		padding:0 0 20px 50px;
	}
	#history ol li::before,
	#history ol li::after{
		content:" ";
		position:absolute;
	}
	#history ol li::before{
		top:7px;
		left:0px;
		width:16px;
		height:16px;
		border:1px solid #00ABEB;
		-moz-border-radius:50%;
		-webkit-border-radius:50%;
		border-radius:50%;
	}
	#history ol li::after{
		top:24px;
		left:8px;
		width:1px;
		height:calc(100% - 30px);
		background:#00ABEB;
		}
		#history ol li b{
			display:block;
			margin:0 0 7px;
			font-weight:500 !important;
			font-size:1.4rem;
			color:#00ABEB;
			line-height:1.5;
		}
		#history ol li p{
			font-size:1.0rem;
			line-height:1.5;
}

/* access */

#access{
	width:100%;
	padding:0px;
	background:#F5F9FB;
}
#access_box{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	flex-wrap:wrap;
	}
	#access_box iframe,
	#access_box > div{
		width:47%;
	}

	#access_box h3{
		margin:0 0 20px;
		padding:10px 15px;
		text-align:left;
		background:rgba(255,255,255,1) !important;
	}
	#access_box .access_way{
		margin:0 0 30px;
		text-align:left;
		}
		#access_box .access_way b{
			display:block;
			color:#00ABEB;
	}

/* --- responsive --- */
@media screen and (max-width:767px){
	#access_box iframe,
	#access_box > div{
		width:100%;
	}
	#access_box > div{
		margin:30px 0 0;
	}
}


/* -----------------------------------------------------------------
   well
----------------------------------------------------------------- */

#bdid_well main{
	background-color: #F5F9FB;
	text-align: left;
}
#bdid_well #page_title{
	background:url(../../image/bg/03.jpg) no-repeat center center;
	background-size:cover;
}
@supports (background-image: url('../../image/bg/03.webp')) {
	#bdid_well #page_title {
		background-image: url('../../image/bg/03.webp');
	}
}

#bdid_well h4{
	font-size: 1.4em;
	margin-bottom: 20px;
	font-weight: 400;
	line-height: 1.5;
}

/* lead_well */

#lead_well{
	position: relative;
	}
	#lead_well::after{
		content: "";
		position: absolute;
		right: -100px;
		top: -100px;
		aspect-ratio: 544 / 788;
		/* display: inline-block; */
		width: clamp(200px, 40vw, 544px);
		/* width: min(70vw, 544px); */
		/* width: 544px; */
		/* height: min(80vh, 788px);  */
		/* height: 788px; */
		background: url(../../image/page/tohoku_map.png) no-repeat right top/contain;
		z-index: -1;
	}
	@supports (background-image: url('../../image/page/tohoku_map.webp')) {
		#lead_well::after {
			background-image: url('../../image/page/tohoku_map.webp');
		}
	}
	#lead_well > div{
		width: 430px;
	}
	#lead_well p{
		margin-bottom: 60px;
	}

/* feature */

#tozawa_pork{
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	width: 900px;
	max-width: 100%;
    margin: 0 auto;
	-webkit-box-orient: vertical;
	-webkit-box-direction: row;
	flex-direction: row;
	gap: 5%;
	margin-bottom: 60px;
	}
	#tozawa_pork .img-trim figure{
		right: 0;
		left: auto;
	}
	#tozawa_txt{
		width: 50%;
	}
	#tozawa_txt > p{
		margin-bottom: 40px;
	}
	#tozawa_pork ul{
		display: flex;
		-webkit-box-pack:justify;
		-ms-flex-pack:justify;
		justify-content: space-between;
		gap: 16px;
	}
	#tozawa_pork ul li{
		width: 240px;
		font-size: 14px;
	}
	#tozawa_pork ul li figure{
		width: 100%;
		aspect-ratio: 4 / 3;
		margin-bottom: 8px;
	}
	#tozawa_pork ul li p{
		line-height: 1.4em;
		font-weight: 400;
	}

.tozawa_furusato{
	border: 1px solid #1E1E1E;
	border-radius: 10px;
	padding: 40px 60px;
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	}
	.tozawa_furusato figure{
		width: 300px;
	}
	.tozawa_furusato div{
		text-align: left;
		margin-left: 60px;
	}
	.tozawa_furusato p:first-child{
		margin-bottom: 30px;
		font-size: .87rem;
	}

/* process */
#process{
	/* position: relative; */
	/* width: 100%; */
	/* background-color: #fff; */
}
#process ul{
	/* display: flex; */
	/* -webkit-box-pack:justify; */
	/* -ms-flex-pack:justify; */
	/* justify-content: space-between; */
	/* gap: 10px; */
}
#process ul li{
	/* flex-basis: 240px; */
	/* margin: 0 auto; */
	/* flex: 0 0 320px; */
}
#process ul li figure{
	width: 100%;
	aspect-ratio: 16 / 9;
	margin-bottom: 16px;
	position: relative;
	z-index: 1;
	text-align: center;
	/* margin: 0 auto 10px; */
	clip-path :polygon(25% 0, 100% 0, 75% 100%, 0% 100%);
}
#process h4{
	color: var(--primary-color);
	margin-bottom: 10px;
}
#process ul li div{
	width: 240px;
}

/* 共通 */
.section {
	width: 100%;
	/* padding: 100px 0; */

	height: 100vh;
	overflow: hidden;
	position: relative;
}
.container {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
  /* height: 100%; */
}

/* 横スクロールセクション */
.side-scroll {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 0;

	background-color: #fff;
}
.side-scroll-list-wrapper {
  position: relative;
  width: 100%;
  height: 700px;
  margin-bottom: 0;
}
.side-scroll-list {
	position: absolute;
	display: flex;
	/* top: 60px; */
	left: 0;
	gap: 0 10px;

	/* width: max-content; */
}

.side-scroll-item {
	align-items: center;
	justify-content: center;
	width: 320px;
	/* height: 700px; */
}

.side-scroll-item + .side-scroll-item {
	/* margin-left: 20px; */
}

/* farm */

#farm{
	padding-top: 90px;
	}
	#farm::before{
		content: '';
		width: 1px;
		height: 100px;
		background-color: #1E1E1E;
		position: absolute;
		left: 50%;
		top: -50px;
	}
	#farm::after{
		content: "";
		position: absolute;
		right: 20px;
		top: 90px;
		aspect-ratio: 221 / 280;
		width: 220px;
		background:url(../../image/page/tozawa_map.png) no-repeat right center/contain;
	}
	#farm p{
		margin-bottom: 40px;
	}

/* commitment */

.img-trim {
	position: relative;
	width: 50%;
}
.img-trim  figure {
	position: absolute;
	top: 0;
	/* width: 50vw; */
	width: 700px;
	left: 0;
}

#commitment{
	width: 100%;
	}
	#commitment h3{
		width: 900px;
		max-width: 100%;
		margin: 0 auto 20px;
		display: block;
	}
	#commit_lead{
		display: flex;
		-webkit-box-align: start;
		align-items: flex-start;
		width: 900px;
		max-width: 100%;
		margin: 0 auto;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		flex-direction: row-reverse;
		gap: 5%;
	}
	#commit_txt{
		width: 50%;
		margin-bottom: 100px;
	}

#commit_box{
	display: flex;
	display: -webkit-flex;
	-webkit-box-pack:justify
	-ms-flex-pack:justify;
	justify-content: space-between;
	align-items: flex-start;
	}
	#commit_box ul{
		width: 360px;
		margin-right: 60px;
	}
	#commit_box ul li{
		margin-bottom: 20px;
	}
	#commit_list{
		background-color: #fff;
		padding: 40px;
	}
	#commit_list li{
		margin-bottom: 30px;
	}
	#commit_list h5{
		color: var(--primary-color);
		font-weight: 500;
		line-height: 1.5;
		margin-bottom: 8px;
	}

/* --- responsive --- */

@media screen and (max-width:1040px){
	#lead_well::after {
		right: 0;
	}
}
@media screen and (max-width:640px){
	#lead_well::after {
		top:-60px;
	}
}

@media screen and (max-width:767px){
	#tozawa_pork, #commit_lead, #commit_box, #commitment h3 ,#lead_well > div, .tozawa_furusato {
		width: 100%;
		max-width: 100%;
		display: block;
	}
	.img-trim figure{
		width: 100%;
	}
	#commit_box ul {
		width: 100%;
	}
	.tozawa_furusato div{
		margin-top: 20px;
		margin-left: 0;
	}
	#commit_list {
		padding: 30px;
	}
	.tozawa_furusato figure{
		width: 50vw;
		margin: 0 auto;
	}
}
@media screen and (max-width:640px){
	#bdid_well h4 {
		font-size: 1.3em;
	}
	.img-trim figure {
		position: relative;
		margin-bottom: 20px;
	}
	.img-trim, #tozawa_txt {
		width: 100%;
	}
	#commit_txt {
		width: 100%;
		margin-bottom: 40px;
	}
	.tozawa_furusato {
		padding: 30px 40px;
	}
}


/* -----------------------------------------------------------------
   social
----------------------------------------------------------------- */

#bdid_social #page_title{
	background:url(../../image/bg/04.jpg) no-repeat center center;
	background-size:cover;
}
@supports (background-image: url('../../image/bg/04.webp')) {
	#bdid_social #page_title {
		background-image: url('../../image/bg/04.webp');
	}
}

#bdid_social #page_title::after{
	content: "";
	position: absolute;
	inset: 0; /* top:0 right:0 bottom:0 left:0 の省略 */
	background: rgba(0, 0, 0, 0.1); /* 濃さは0〜1で調整 */
	pointer-events: none; /* クリック透過（任意） */
	z-index: 3;
}

#bdid_social p{
	text-align: left;
}

ul.thumbnail{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	flex-wrap:wrap;
	list-style:none;
	margin:40px auto 0px;
	padding:0;
	width:100%;
	max-width:1200px;
	}
	ul.thumbnail li{
		width:calc(50% - 15px);
		margin:20px 0;
	}
	ul.thumbnail li img{
		width:100%;
		height:auto;
	}

/* symbol */

#symbol{
	margin-bottom: 0;
	}
	#symbol div.contents{
		padding-bottom: 0;
	}
	#symbol div.contents > div{
		display:-webkit-flex;
		display:flex;
		position: relative;
		border-bottom: 1px solid #E0E0E0;
		padding-bottom: 60px;
	}
	#symbol div.contents > div > p{
		flex-grow: 1; /*--幅を指定--*/
		margin-right: 6em;
		position: relative; /*--positionを追加--*/
	}
	#symbol div.contents > div > p::after{
		position: absolute; /*--positionを追加--*/
		top: 0;
		left: 100%;
		margin: 0 3rem;
		content: "";
		width: 1px; /*--縦線の太さ(幅)--*/
		height: 100%;
		background-color: #E0E0E0; /*--縦線の色--*/
	}
	#symbol div.contents > div > div{
		/* width: 285px; */
	}
	#symbol div.contents > div > div figure{
		margin:0 auto 40px;
		width: 240px;
	}
	#symbol div.contents > div > div p{
		width: 300px;
		text-align: center;
		font-size: 14px;
		font-weight: 400;
		letter-spacing: .1em;
	}

/* yuruchara */

#yuruchara{
	width: 100%;
	padding: 20px 0 90px;
}
.p-pd-list__item + .p-pd-list__item {
	margin-top: 60px;
}
.p-pd-list_img {
    position: relative;
    margin: 0 auto;
    padding-bottom: 92.30769%;
    width: 92.30769%;
    text-align: left;
}
.p-pd-list_num {
    position: absolute;
    top: -2px;
    left: -6px;
    z-index: 1;
    letter-spacing: .08em;
    font-weight: 600;
    font-style: normal;
    font-size: 30px;
    font-size: 1.875rem;
    font-family: "Fira Sans Extra Condensed", "inter" , sans-serif;
    line-height: 1;
}
.p-pd-list_ttl-en {
    position: absolute;
    top: 35px;
    left: -7px;
    z-index: 1;
    display: inline-block;
    letter-spacing: .2em;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    font-size: .875rem;
    font-family: "Fira Sans Extra Condensed", "inter" , sans-serif;
    line-height: 1;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.p-pd-list_img > picture > img {
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 50%;
	background-color: #fff;

}
.p-pd-list_ttl {
    margin-top: 34px;
    color: var(--primary-color);
    text-align: center;
    font-weight: 500;
    font-style: normal;
    font-size: 1.375rem;
    font-family: "Noto Serif JP", serif;
    line-height: 1;
}
.p-pd-list_text {
    margin-top: 20px;
    text-align: center;
    font-weight: 300;
    font-style: normal;
    font-size: 16px;
    font-size: 1rem;
    font-family: "Noto Serif JP", serif;
    line-height: 2;
}
.chara-index_bg{
	position: relative;
	padding: 100px 8.59375% 100px;
}
.chara-index_bg::before{
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	width: 80%;
	height: 100%;
	content: "";
	--DOTS_COLOR: #E0E0E0;
	--DOTS_SIZE: 8px;
	--DOTS_POSITION: 20%;
	background-image:
	radial-gradient(var(--DOTS_COLOR) var(--DOTS_POSITION), transparent var(--DOTS_POSITION)),
	radial-gradient(var(--DOTS_COLOR) var(--DOTS_POSITION), transparent var(--DOTS_POSITION));
	background-size: var(--DOTS_SIZE) var(--DOTS_SIZE);
	background-position: 0 0, calc(var(--DOTS_SIZE) / 2) calc(var(--DOTS_SIZE) / 2);
}

@media screen and (min-width: 769px) {
    .p-pd-list {
        display: flex;
        margin-bottom: -100px;
        flex-wrap: wrap;
    }
	.p-pd-list__item {
        margin-right: 4.71698%;
        margin-bottom: 102px;
        width: 30.18868%;
    }
	.p-pd-list__item + .p-pd-list__item {
        margin-top: 0px;
    }
	.p-pd-list__item:nth-child(3n) {
        margin-right: 0;
    }
	.p-pd-list_img {
		position: relative;
		margin: 0 auto;
		padding-bottom: 92.30769%;
		width: 92.30769%;
		text-align: left;
	}
	.p-pd-list_num {
        top: -5px;
        left: -5px;
        font-size: 40px;
        font-size: 2.5rem;
        line-height: 1;
    }
	.p-pd-list_ttl-en {
        top: 45px;
        font-size: 16px;
        font-size: 1rem;
        line-height: 1;
    }
	.p-pd-list_ttl {
        margin-top: 37px;
        transition: .3s;
    }
	.p-pd-list_text {
        margin-top: 16px;
        transition: .3s;
    }
}

/* meat_corp */

#meat_corp{
	width:100%;
	padding: 0 0 90px;
}
#meat_corp .section_title{
	margin-top: 60px
}
#meat_corp h3{
	width: 900px;
	max-width: 100%;
	margin: 0 auto 80px;
}

.c-container {
	/* max-inline-size: var(--c-container-size,min(70.6122vw + 70.2041px,900px)); */
	margin-inline:auto
}

.sub_contents_wrapper {
    width: 80%;
    margin: 2em auto 0;
    padding: 0 1.25rem;
	flex-direction: row-reverse;
	}
	.sub_contents_wrapper {
		width: 83%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		gap: 5%;
	}
	.sub_contents_wrapper._right {
		margin-right: calc(50% - 50vw);
		padding-right: 0;
		align-items: start;
	}
	.sub_contents_wrapper._left {
		margin-left: calc(50% - 50vw);
		padding-left: 0;
		align-items: start;
	}
	.image_wrapper {
		width: 69%;
		margin-bottom: 18px;
	}
	.txt_wrapper {
		width: 40%;
		width: 390px;
	}
	.txt_wrapper p{
		margin:0 0 30px;
		font-size:1.1rem;
		text-align:justify;
		line-height:1.75;
	}


#school_lunch, #bbq, #eat_store{
	width:100%;
	padding:60px 0px 0;
	background-color: #F5F9FB;
}

#bbq .thumbnail li{
	width: calc(33.3333% - 13.3333px);
}

#eat_store dl{
	display: grid;
	grid-template-columns: 240px 1fr; /* 左がdt、右がdd。幅は調整可 */
	/* column-gap: 12px; */
	row-gap: 10px;
	text-align: left;
	margin-top: 30px;
}
#eat_store dl dt,
#eat_store dl dd{
	border-bottom: 1px solid #E1E1E1;
	padding-bottom: 6px;
}
#eat_store dl dt{
	grid-column: 1;
	font-weight: 400;
}
#eat_store dl dd{
	grid-column: 2;
	overflow-wrap: anywhere;
	word-break: break-word;
}


/* --- responsive --- */

@media (max-width: 480px) {
	#eat_store dl {
		grid-template-columns: 1fr;
		row-gap: 0;
	}
	#eat_store dl t, #eat_store dl dd {
		grid-column: 1;
	}
	#eat_store dl dt {
		padding-top: 8px;
		padding-bottom: 0;
		border-bottom: none;
	}
	#bbq .thumbnail li{
		width: calc(50% - 10px);
	}
}

@media screen and (max-width:640px){
	/* #page_head:has(#page_menu) {
		height: 580px;
	} */
	#symbol div.contents > div {
		display: block;
	}
	#symbol div.contents > div > p {
		margin-right: 0;
		margin-bottom: 20px;
	}
	#symbol div.contents > div > p::after {
		display: none;
	}
	#yuruchara .section_title h2,#yuruchara .section_title p{
		margin: 0 20px;
	}
	.sub_contents_wrapper._right {
		display: block;
		width: 100%;
		margin: 0;
		padding: 0;
	}
	.txt_wrapper{
		width: 100%;
	}
	.image_wrapper{
		width: 100%;
	}
}

@media screen and (max-width:1040px){
		#meat_corp{
			padding: 20px;
		}
		#meat_corp h3{
			width: 100%;
			margin-bottom: 60px;
			padding: 20xp 20;
		}
		.sub_contents_wrapper {
			width: 100%;
		}
}
@media screen and (min-width:1440px){
	.sub_contents_wrapper {
		/* width: 76%; */
	}
}


/* -----------------------------------------------------------------
   recruit
----------------------------------------------------------------- */

#bdid_recruit main{
	background-color: #F5F9FB;
}
#bdid_recruit #page_title{
	background:url(../../image/bg/05.jpg) no-repeat center center;
	background-size:cover;
}
@supports (background-image: url('../../image/bg/05.webp')) {
	#bdid_recruit #page_title {
		background-image: url('../../image/bg/05.webp');
	}
}

/* message_to_jog */

#message_to_jog, #interview, #job_offer, #contact{
	text-align: left;
}
.message_wrap h3{
	text-align: center;
}
.message_wrap p{
	position: relative;
	padding: 60px;
	line-height: 175%;
	z-index: 2;
	background-color: #F5F9FB;
}
.message_kv {
    position: relative;
    z-index: 1;
    /* margin-bottom: 66px; */
    /* padding-top: 5.86667%; */
    padding-left: 6.66667%;
	top: -200px;
}

/* interview */

#interview{
	width: 100%;
	background-color: #fff;
	padding:0 0 60px;
	}
	.interview_wrap > div{
		margin-bottom: 80px;
	}

.prof_box{
	display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-wrap: wrap;
	}
	.prof_box figure{
		max-width: 360px;
		margin-right: 40px;
		z-index: 2;
	}
	.prof_box .prof{
		width: 500px;
		position: relative;
	}
	.prof h4{
		font-size: 24px;
		line-height: 1.5;
		font-weight: 400;
		margin-bottom: 60px;
	}
	.prof .name{
		font-size: 24px;
		color: var(--primary-color);
		margin-bottom: 40px;
	}
	.prof .name span.year{
		font-size: 16px;
		margin-left: 10px;
	}
	.prof .job{
		width: 560px;
		font-weight: 400;
		position: relative;
		background-color: #F5F9FB;
		padding: 30px 90px 30px 100px;
		left: -100px;
		z-index: 1;
	}

.interview_faq{
	margin-bottom: 80px;
	}
	.interview_faq dt{
		color: #00ABEB;
		font-size: 24px;
		font-weight: 500;
		line-height: 1.3;
		margin-bottom: 18px;
		position: relative;
		padding-left: 40px;
	}
	.interview_faq dt::before{
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		width: 24px;
		height: 1px;
		background-color: var(--primary-color);
	}
	.interview_faq dd{
		margin-bottom: 60px;
	}

/* job_offer */

#job_offer{
	padding-top:80px;
	}
	#job_offer::before{
		content: '';
		width: 1px;
		height: 100px;
		background-color: #1E1E1E;
		position: absolute;
		left: 50%;
		top: -50px;
	}

/* contact */

#contact .lead_txt {
	font-size: 24px;
	line-height: 32px;
	margin-bottom: 10px;
	font-weight: 500;
}
.notice {
	font-size: 90%;
	color: var(--primary-color);
	margin: 30px 0 30px 0;
}

.required {
    font-size: 12px;
    line-height: 18px;
    font-weight: bold;
    background-color: var(--primary-color);
    color: #fff;
    display: inline-block;
    width: 36px;
    height: 18px;
    text-align: center;
    border-radius: 3px;
    margin-right: 5px;
}
.form-tbl th .required, .form-tbl td .required {
    transform: translateY(-1px);
    margin-left: 10px;
}
.form-tbl {
    border-collapse: collapse;
    border: none;
    border-spacing: 0px;
    width: 100%;
    border-style: solid;
    border-color: #EFEFEF;
    border-width: 1px 0px 0px 0px;
    border-radius: 0px;
	margin-bottom: 82px;
}
.form-tbl th, .form-tbl td {
    display: block;
    text-align: left;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
}
.form-tbl th {
    padding-top: 20px;
    margin-bottom: 20px;
	background: none;
	color: #1E1E1E;
}
.form-tbl th *{
	font-weight:inherit;
}
.form-tbl td {
    padding-bottom: 20px;
    border-style: solid;
    border-color: #EFEFEF;
    border-width: 0px 0px 1px 0px;
    border-radius: 0px;
}
.form-tbl th .subtxt, .form-tbl td .subtxt {
    display: inline-block;
    width: 30px;
    text-align: right;
    margin-right: 10px;
    white-space: nowrap;
    font-size: 14px;
}
.input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #fff;
    border: none;
    padding: 6px 10px;
    margin: 0px;
    font-size: 16px;
    line-height: 28px;
    width: 100%;
    font-family: "Noto Sans JP", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', "Hiragino Sans", 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', Arial, Helvetica, sans-serif;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #EFEFEF;
}
.text01 {
    width: calc((100% - 90px) / 2);
}
.radio-list {
    margin: 0px;
    padding: 0px;
}
.radio-list li {
    line-height: 28px;
    margin-bottom: 10px;
}
.radio-list.inline-list li {
    display: inline-block;
    margin-right: 2em;
}
label {
	position: relative;
	padding-left: 1.4em;
	display: inline-block;
	vertical-align: bottom;
	cursor:pointer;
}
input[type=radio]{
	margin:0 10px 0 0;
}
input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: "Noto Sans JP", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', "Hiragino Sans", 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', Arial, Helvetica, sans-serif;
    background-color: #FFF;
    border: none;
    border-style: solid;
    border-color: #000;
    border-width: 1px;
    border-radius: 0px;
    padding: 5px;
    margin: 0px;
    position: absolute;
    left: 0px;
    top: 8px;
    outline: none;
}
input[type=checkbox]:checked {
	background-color: var(--primary-color);
	outline: none;
	border-color: var(--primary-color);
}
input[type=checkbox].err {
	background-color: #fdf3f4;
}
input[type=checkbox].err:checked {
	background-color: #000;
	outline: none;
}
textarea{
	height:7.5rem;
	resize:none;
}

.job-small {
    font-size: 14px;
    line-height: 24px;
}
.privacy-box {
    border-style: solid;
    border-color: #000;
    border-width: 1px;
    border-radius: 0px;
    padding: 25px;
    margin-bottom: 30px;
	line-height: 1.8rem;
}
.privacy-box h4{
	font-size: 20px;
	font-weight: 400;
	line-height: 42px;
	margin-bottom: 10px;
}
.privacy-box p {
	font-size: 18px;
	line-height: 38px;
	font-weight: 300;
}
.agreement {
    text-align: center;
    font-size: 16px;
    line-height: 28px;
}
.form-btn {
    text-align: center;
    margin: 60px -10px 30px;
}
.submitBtn {
    -webkit-appearance: none;
    appearance: none;
    display: inline-block;
    font-size: 20px;
    line-height: 60px;
    font-weight: 400;
    min-width: 300px;
    height: 80px;
    margin: 0px 10px 10px 10px;
    padding: 0px 30px;
    color: #fff;
    background-color: var(--primary-color);
    cursor: pointer;
    text-decoration: none;
    transition: all .2s;
    font-family: "Noto Sans JP", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', "Hiragino Sans", 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', Arial, Helvetica, sans-serif;
    position: relative;
}
.submitBtn:hover {
	background-color: #fff;
	color: var(--primary-color);
	border: 1px solid var(--primary-color);
}
.submitBtn[disabled] {
	opacity: 0.4;
	cursor: default;
}
.submitBtn[disabled]:hover {
	opacity: 0.4;
}

#send_btn_box{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:center;
	flex-wrap:wrap;
	padding:20px;
}
.form_btn {
	display:-webkit-flex;
	display:flex;
	justify-content:center;
	align-items:center;
    font-size: 20px;
    line-height: 60px;
    font-weight: 400;
    min-width: 260px;
    height: 80px;
    margin: 0px 10px 10px 10px;
    padding: 0px 30px;
    color: #fff;
    background-color: var(--primary-color);
    cursor: pointer;
    text-decoration: none;
    transition: all .2s;
    font-family: "Noto Sans JP", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', "Hiragino Sans", 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', Arial, Helvetica, sans-serif;
    position: relative;
}
.form_btn:hover {
	opacity: 0.4;
}
.confirm_table{
	margin-bottom: 80px;
}
.confirm_table td{
    border-color: #eaeaea;
	background-color: #fff ;
	/* background:rgba(0,0,0,0.1); */
}



@media print, screen and (min-width: 1280px) {
	.form-tbl th, .form-tbl td {
        display: table-cell;
        font-size: 20px;
        line-height: 42px;
        border-style: solid;
        border-color: #EFEFEF;
        border-width: 0px 0px 1px 0px;
        border-radius: 0px;
        padding: 24px 0px;
        margin: 0px;
        vertical-align: top;
    }
	.form-tbl th {
        white-space: nowrap;
        padding-right: 2em;
    }
    .required {
        font-size: 14px;
        line-height: 22px;
        width: 48px;
        height: 22px;
    }
	.input {
        padding: 5px 10px;
        font-size: 20px;
        line-height: 35px;
    }
	.job-small {
        font-size: 16px;
        line-height: 28px;
    }
	.privacy-box {
        padding: 60px;
        margin-bottom: 80px;
    }
}

/* --- responsive --- */
@media screen and (max-width:640px){
	.message_wrap p {
		padding: 30px 0px;
	}
	.message_kv {
		top: -100px;
	}
	.prof_box figure {
		max-width: 100%;
		margin: 0 0 20px;
	}
	.prof_box .prof {
		width: 100%;
	}
	.prof .job {
		width: 100%;
		left: 0;
		padding: 20px;
	}
}
