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

body {
	color: #231815;
	margin: 0 auto;
	padding: 0px;
	line-height: 1em;
	font-family: urw-din, sans-serif;
}

#thoughts_bg {
	background-color: #000;
	background-image: url(../image/thoughts/omoi_bg.jpg);
	background-position: center top;
	background-repeat: repeat-y;
	background-size: 100% auto;
}

* {
	list-style: none;
	margin: 0px;
	padding: 0px;
}

img {
	border: none;
	height: auto;
}

html {
	overflow-x: hidden;
}

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	display: inline-table;
}

.clear {
	clear: both;
}

.left {
	float: left;
}

.right {
	float: right;
}

.block {
	overflow: hidden;
}

fit {
	object-fit: cover;
	font-family: "object-fit: cover;";
}

.min {
	font-family: "Noto Serif JP", serif;
}

img {
	line-height: 1em;
	margin: 0px;
	padding: 0px;
	vertical-align: bottom;
}

a,
a img {
	transition: 0.3s;
}

a:hover img {
	opacity: 0.8;
}

a[href^="tel:"],
#awards_tbl td a {
	pointer-events: none;
}

input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0;
}

.sp {
	display: none;
}

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all 0.4s;
	box-sizing: border-box;
	cursor: pointer;
}

.menu-trigger {
	position: fixed;
	width: 50px;
	height: 50px;
	background: #000;
	z-index: 999;
	right: 9px;
	top: 9px;
}

.menu-trigger span {
	position: absolute;
	background: #fff;
	width: 30px;
	height: 2px;
	left: 0;
	right: 0;
	margin: auto;
}

.menu-trigger span:nth-of-type(1) {
	top: 15px;
}

.menu-trigger span:nth-of-type(2) {
	top: 0;
	bottom: 0;
}

.menu-trigger span:nth-of-type(3) {
	bottom: 15px;
}

.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(9px) rotate(-45deg);
	transform: translateY(9px) rotate(-45deg);
}

.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}

.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-9px) rotate(45deg);
	transform: translateY(-9px) rotate(45deg);
}

.g-nav {
	display: none;
	position: fixed;
	top: 0;
	background-color: rgba(255, 255, 255, 0.93);
	width: 100%;
	height: 100%;
}

.g-nav .list {
	padding: 90px 5% 0px;
}

.g-nav .list li {
	border-bottom: 1px dashed #666;
	overflow: hidden;
}

.g-nav .list li a {
	display: block;
	text-align: left;
	overflow: hidden;
	text-decoration: none;
	color: #000;
	font-size: 13px;
	padding: 20px 0% 10px 2%;
}

.g-nav .list li a p.t1 {
	float: left;
	letter-spacing: 0.05em;
	font-size: 14px;
	font-family: "Noto Serif JP", serif;
}

.g-nav .list li a p.t2 {
	float: right;
	font-size: 10px;
	line-height: 10px;
	font-weight: bold;
	letter-spacing: 0.1em;
	color: #999999;
	padding-top: 10px;
}

.menu-trigger {
	display: none;
}

.g-nav .list p a {
	/* background-color: #000; */
	margin-top: 15px;
	color: #fff;
	display: block;
	text-decoration: none;
	font-size: 14px;
	line-height: 50px;
	text-align: center;
	letter-spacing: 0.05rem;
}

.g-nav .list p img {
	width: min(100%,464px);
}

.mb1 {
	margin-bottom: 10px;
}

/*----------------------------contents----------------------------*/

header {
	position: fixed;
	top: 0px;
	width: 94%;
	height: 90px;
	background-color: rgba(0, 0, 0, 0.8);
	z-index: 5;
	overflow: hidden;
	padding: 0px 3%;
}

header h1 {
	padding-top: 29px;
	float: left;
}

#side {
	position: fixed;
	top: 170px;
	left: 40px;
}

#side_sns {
	position: fixed;
	top: 180px;
	right: 0px;
}

#side_sns a {
	display: block;
}

#side_sns a:nth-child(2) {
	margin: 50px 0px;
}

footer {
	background-color: #000;
	padding: 75px 0px 10px;
	color: #fff;
	background-image: url(../image/common/ftr_opa.png);
	background-position: center center;
	background-repeat: no-repeat;
}

#globalfooter {
	width: 1080px;
	margin: 0 auto;
	overflow: hidden;
}

#globalfooter .left p {
	font-size: 13px;
	line-height: 1.6em;
	font-weight: 700;
	padding-top: 20px;
}

#globalfooter .left p span {
	display: block;
	padding-bottom: 7px;
}

#globalfooter .right ul {
	text-align: center;
	padding: 35px 0px 40px;
}

#globalfooter .right ul li {
	display: inline-block;
}

#globalfooter .right ul li:nth-child(2) {
	margin: 0px 60px;
}

#globalfooter .right .privacy a {
	display: block;
	margin-top: 10px;
	text-align: center;
	color: #fff;
	font-size: 10px;
	text-decoration: none;
}

#globalfooter .right .privacy a:hover {
	opacity: 0.8;
}

address {
	font-size: 10px;
	text-align: center;
	font-style: inherit;
	letter-spacing: 0.2em;
	padding-top: 45px;
}

#main,
.main {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
	display: block;
}

h2#inner_ttl,
h2.inner_ttl {
	text-align: center;
	font-size: 80px;
	line-height: 80px;
	padding-top: 155px;
	font-weight: 900;
	position: relative;
}

h2.inner_ttl_bottom {
	padding-top: 10px !important;
}

h2.thoughts_h2 {
	color: #fff !important;
}

h2.thoughts_h2 #line1 {
	background-color: #4d4d4d !important;
}

p.white {
	color: #fff !important;
}

h2#inner_ttl #line1,
h2.inner_ttl #line1 {
	width: 905px;
	height: 36px;
	background-color: #e6e6e6;
	display: block;
	position: absolute;
	bottom: 0px;
	left: 0px;
	z-index: -1;
}

h2.inner_ttl #line2 {
	width: 750px;
	height: 36px;
	background-color: #e6e6e6;
	display: block;
	position: absolute;
	bottom: 0px;
	left: 0px;
	z-index: -1;
}

h2#inner_ttl #line3,
h2.inner_ttl #line3 {
	width: 100%;
	height: 36px;
	background-color: #e6e6e6;
	display: block;
	position: absolute;
	bottom: 0px;
	left: 0px;
	z-index: -1;
}

p#inner_subttl {
	font-weight: 700;
	padding-top: 30px;
	padding-bottom: 75px;
	font-size: 20px;
	line-height: 1.6em;
	text-align: center;
}

p#inner_subttl_bottom {
	font-weight: 700;
	padding-top: 30px;
	padding-bottom: 15px;
	font-size: 20px;
	line-height: 1.6em;
	text-align: center;
}

p#inner_subtxt {
	text-align: center;
	padding-bottom: 90px;
	line-height: 1.4em;
	font-family: "Noto Serif JP", serif;
}

/* EFO Styling */

/* Title */

form.inner-efo-default-theme legend {
	display: none;
}

/* Necessary Icon */

form.inner-efo-default-theme .required-icon {
	margin-left: 0px;
	color: #c40000;
	font-size: 14px;
	vertical-align: top;
	background-color: transparent;
	position: relative;
}

form.inner-efo-default-theme .required-icon::before {
	content: "［";
	position: relative;
	bottom: 3px;
}

form.inner-efo-default-theme .required-icon::after {
	content: "］";
	position: relative;
	bottom: 3px;
}

/* Border, Outer wrapper padding (ends in form code) */

form.inner-efo-default-theme .js-efo-inner-qzlbjyjarp {
	border: none;
	padding: 0 0 150px 0;
	margin: 0 auto;
	max-width: 655px;
	width: 90vw;
}

/* Margins */

/* margin-bottom-xs is the most used margin class, but there are many */

form.inner-efo-default-theme .margin-bottom-xs,
form.inner-efo-default-theme .field {
	margin: 0;
	padding: 20px 0;
	border-bottom: 1px solid #000;
}

/* Font sizes for most titles */

form.inner-efo-default-theme .font-size-m {
	font-size: 18px;
	font-weight: normal;
}

/* Inline-Block Layout Per Entry */

form.inner-efo-default-theme .ttl-item {
	display: inline-block;
	width: 31%;
}

form.inner-efo-default-theme .bl-item {
	display: inline-block;
	width: 68%;
}

form.inner-efo-default-theme .efofm3 input {
	max-width: 150px;
}

form.inner-efo-default-theme .control input,
form.inner-efo-default-theme .bl-item input {
	width: 100%;
	height: 30px;
	background-color: #f5f6f6;
	border-radius: 5px;
	padding-left: 10px;
	box-sizing: border-box;
	border: none;
}

form.inner-efo-default-theme .efofm7 > div {
	display: block;
	width: 100%;
}

form.inner-efo-default-theme .efofm7 label {
	font-weight: 800;
}

form.inner-efo-default-theme .efofm7 textarea {
	background-color: #f5f6f6;
	border-radius: 5px;
	padding-left: 10px;
	box-sizing: border-box;
	border: none;
}

form.inner-efo-default-theme input:not(:disabled):hover,
.inner-efo-default-theme textarea:not(:disabled):hover,
form.inner-efo-default-theme input:not(:disabled):focus,
.inner-efo-default-theme textarea:not(:disabled):focus {
	color: inherit;
	background: #f5f6f6;
	-webkit-box-shadow: none;
	box-shadow: none;
}

form.inner-efo-default-theme input:not(:disabled):focus,
.inner-efo-default-theme textarea:not(:disabled):focus {
	border: 2px solid #000;
}

/* Submit Button */

form.inner-efo-default-theme.js-efo-elements .button-primary {
	border-color: #000;
	background-color: #000;
	font-weight: normal;
}

form.inner-efo-default-theme .button-primary.button-border {
	color: #fff;
	border-color: #000;
	background-color: #000;
	font-weight: normal;
}

form.inner-efo-default-theme .button-primary.button-border:hover {
	color: #fff;
	border-color: #000;
	background-color: #000;
	font-weight: normal;
}

@media screen and (max-width: 640px) {
	form.inner-efo-default-theme .ttl-item,
	form.inner-efo-default-theme .bl-item {
		display: block;
		width: 100%;
	}
	form.inner-efo-default-theme .ttl-item {
		padding-bottom: 10px;
	}
	form.inner-efo-default-theme .font-size-m {
		font-size: 14px;
	}
	form.inner-efo-default-theme .required-icon::before,
	form.inner-efo-default-theme .required-icon::after {
		bottom: 0px;
	}
}

#form {
	width: 655px;
	margin: 0 auto;
	padding-bottom: 150px;
}

#form h4 {
	padding-bottom: 20px;
	line-height: 1.4em;
}

.formTable {
	border-bottom: 1px solid #000;
	width: 100%;
}

#submit .back {
	margin-bottom: 10px;
	background-color: #fff;
	color: #231815;
	border: 2px solid #231815;
}

p.error_messe {
	padding-bottom: 5px;
}

.formTable th {
	font-size: 18px;
	text-align: left;
	font-weight: 700;
	padding: 20px 0px;
	width: 200px;
	font-weight: 400;
	box-sizing: border-box;
	border-bottom: 1px solid #000;
}

.formTable th span {
	margin-left: 10px;
	color: #c40000;
	font-size: 14px;
	vertical-align: top;
}

.formTable td {
	padding: 20px 0px;
	border-bottom: 1px solid #000;
}

.formTable td input {
	width: 100%;
	height: 30px;
	background-color: #f5f6f6;
	border-radius: 5px;
	padding-left: 10px;
	box-sizing: border-box;
	border: none;
}

.formTable td input#post {
	width: 150px;
	margin-left: 5px;
}

.formTable tr:last-child th,
.formTable tr:last-child td {
	border: none;
}

/*.formTable tr:last-child th{
	padding-bottom: 0px;
}

.formTable tr:last-child td{
	padding-top: 10px;
	padding-bottom: 15px;
}*/

p.textarea_ttl {
	padding-top: 20px;
	font-size: 18px;
	text-align: left;
	font-weight: 700;
	box-sizing: border-box;
}

.textarea_txt {
	border-bottom: 1px solid #000;
	padding-bottom: 15px;
	padding-top: 10px;
}

.textarea_txt textarea {
	width: 100%;
	height: 190px;
	background-color: #f5f6f6;
	border-radius: 5px;
	padding-top: 10px;
	padding-left: 10px;
	box-sizing: border-box;
	border: none;
}

#submit {
	text-align: center;
	padding-top: 45px;
}

#submit input {
	background-color: #333333;
	font-size: 16px;
	border: none;
	line-height: 54px;
	display: block;
	width: 100%;
	color: #fff;
}

#company_tbl {
	margin: 0 auto 125px;
}

#company_tbl th {
	border-bottom: 1px solid #4d4d4d;
	padding: 10px 0px 8px;
	text-align: left;
	font-size: 14px;
	font-weight: 400;
	vertical-align: top;
	width: 150px;
	letter-spacing: 0.1em;
}

#company_tbl th span {
	width: 115px;
	display: block;
	line-height: 30px;
	background-color: #cccccc;
	padding-left: 13px;
	box-sizing: border-box;
}

#company_tbl td {
	border-bottom: 1px solid #4d4d4d;
	padding: 10px 0px 8px;
	line-height: 1.6em;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.1em;
}

a#award_history {
	width: 653px;
	margin: 0 auto 110px;
	display: block;
	text-align: center;
	border: 1px solid #000;
	color: #333333;
	text-decoration: none;
	line-height: 53px;
}

a:hover#award_history {
	background-color: #000;
	color: #fff;
}

p#shop_ttl {
	font-size: 50px;
	line-height: 50px;
	font-weight: bold;
	font-family: "Noto Serif JP", serif;
	width: 905px;
	margin: 0 auto;
	padding-top: 35px;
}

#shop_detail {
	padding: 35px 0px 90px;
	width: 770px;
	overflow: hidden;
	margin: 0 auto;
}

#shop_detail #pic {
	float: left;
}

#shop_detail #detail {
	float: right;
	width: 350px;
	text-align: left;
}

#shop_detail #detail p#ttl {
	font-size: 15px;
	padding: 20px 0px 5px;
	border-bottom: 1px solid #000;
}

#shop_detail #detail p.ttls {
	padding-top: 13px;
	padding-bottom: 5px;
	font-weight: bold;
	font-size: 14px;
}

#shop_detail #detail table {
	padding-left: 5px;
}

#shop_detail #detail table th {
	font-size: 13px;
	font-weight: 400;
	width: 115px;
	text-align: left;
}

#shop_detail #detail table td {
	font-size: 13px;
}

#shop_detail #detail table#hldy {
	padding-top: 10px;
}

#awards_tbl {
	margin: 0 auto;
	padding-bottom: 150px;
}

#awards_tbl th {
	vertical-align: top;
	font-weight: 900;
	font-size: 50px;
	line-height: 50px;
	padding-bottom: 30px;
	width: 165px;
	text-align: left;
}

#awards_tbl td {
	padding-bottom: 30px;
	vertical-align: top;
	line-height: 2.6em;
	border-right: 1px solid #808080;
}

#awards_tbl td a {
	color: #000;
	text-decoration: none;
}

#awards_tbl tr:first-child td {
	padding-top: 10px;
	padding-bottom: 15px;
	line-height: 1em;
}

#awards_tbl td:nth-child(2) {
	font-size: 12px;
	width: 225px;
}

#awards_tbl td:nth-child(3) {
	font-size: 12px;
	width: 150px;
	text-align: center;
}

#awards_tbl td:nth-child(4) {
	font-size: 12px;
	width: 130px;
	text-align: center;
}

#awards_tbl td:last-child {
	font-size: 12px;
	width: 165px;
	text-align: center;
}

#two_cont {
	overflow: hidden;
	padding: 0px 20px 90px;
}

#two_cont #illust {
	float: left;
	padding-top: 25px;
}

#two_cont #txt {
	float: right;
	width: 520px;
}

#two_cont #txt h3 {
	font-size: 30px;
	line-height: 1.4em;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.05em;
}

#two_cont #txt p {
	font-size: 14px;
	line-height: 1.6em;
	padding-top: 25px;
}

#producer_pic {
	width: 85%;
	margin-left: 15%;
}

#producer_pic img {
	width: 100%;
	height: auto;
}

p.desc_ttl {
	font-size: 25px;
	line-height: 25px;
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	padding: 30px 100px 20px;
}

p.desc_txt {
	color: #4d4d4d;
	font-size: 14px;
	line-height: 1.8em;
	padding: 0px 105px 0px;
}

.producer_tbl1 {
	padding: 45px 0px 0px;
}

.producer_tbl1 tr:first-child th,
.producer_tbl1 tr:first-child td {
	padding-bottom: 30px;
}

.producer_tbl2 {
	padding: 45px 130px 0px;
}

.producer_tbl3 {
	padding: 45px 0px 150px;
}

.method_tbl3 {
	padding: 65px 0px;
}

.producer_tbl1 th {
	width: 183px;
	display: inline-block;
	vertical-align: top;
}

.producer_tbl1 td {
	width: 287px;
	display: inline-block;
	padding: 0px 15px 0px 15px;
	color: #4d4d4d;
	font-size: 14px;
	line-height: 1.6em;
	vertical-align: top;
}

.producer_tbl2 th {
	width: 211px;
	display: inline-block;
	vertical-align: top;
}

.producer_tbl2 td {
	width: 500px;
	display: inline-block;
	padding: 20px 0px 0px 20px;
	color: #4d4d4d;
	font-size: 14px;
	line-height: 1.6em;
	vertical-align: top;
}

.producer_tbl3 th {
	width: 211px;
	display: inline-block;
	vertical-align: top;
}

.producer_tbl3 td {
	width: 244px;
	display: inline-block;
	padding: 0px 30px 0px 15px;
	color: #4d4d4d;
	font-size: 14px;
	line-height: 1.6em;
	vertical-align: top;
}

.producer_tbl1 td span,
.producer_tbl2 td span,
.producer_tbl3 td span {
	font-size: 17px;
	letter-spacing: 0.05em;
	padding-bottom: 15px;
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	display: block;
}

#group_box {
	overflow: hidden;
	padding-top: 45px;
}

#group_box #illust {
	float: left;
	padding-top: 30px;
	padding-left: 60px;
}

#group_box table {
	float: right;
}

#group_box table th {
	border-bottom: 1px solid #4d4d4d;
	padding-bottom: 15px;
}

#group_box table th:first-child {
	text-align: left;
	font-size: 14px;
	color: #4d4d4d;
	font-weight: 400;
	letter-spacing: 0.05em;
}

#group_box table th:nth-child(3) {
	text-align: left;
	font-size: 14px;
	color: #4d4d4d;
	font-weight: 400;
	letter-spacing: 0.05em;
}

#group_box table th:last-child {
	text-align: right;
	font-size: 14px;
	color: #4d4d4d;
	font-weight: 400;
	letter-spacing: 0.05em;
}

#group_box table tr td:first-child {
	text-align: left;
	font-size: 14px;
	color: #4d4d4d;
	font-weight: 400;
	line-height: 1.6em;
	vertical-align: top;
	border-bottom: 1px dashed #4d4d4d;
	padding: 10px 0px;
	letter-spacing: 0.05em;
}

#group_box table tr td:nth-child(2) {
	text-align: left;
	font-size: 14px;
	color: #4d4d4d;
	font-weight: 400;
	line-height: 1.6em;
	vertical-align: top;
	border-bottom: 1px dashed #4d4d4d;
	padding: 10px 0px;
	letter-spacing: 0.05em;
}

#group_box table tr td:nth-child(3) {
	text-align: left;
	font-size: 14px;
	color: #4d4d4d;
	font-weight: 400;
	line-height: 1.6em;
	vertical-align: top;
	border-bottom: 1px dashed #4d4d4d;
	padding: 10px 0px;
	letter-spacing: 0.05em;
}

#group_box table tr td:last-child {
	text-align: right;
	font-size: 14px;
	color: #4d4d4d;
	font-weight: 400;
	line-height: 1.6em;
	vertical-align: top;
	border-bottom: 1px dashed #4d4d4d;
	padding: 10px 0px;
	letter-spacing: 0.05em;
}

#group_box table tr td:last-child span {
	font-size: 20px;
}

#group_box table tr:last-child td {
	border: none;
}

.rltv {
	position: relative;
}

.rltv #dsn1 {
	position: absolute;
	bottom: 1245px;
	left: 0px;
	width: 100%;
	z-index: -2;
}

.rltv #dsn2 {
	position: absolute;
	bottom: 0px;
	right: 0px;
	z-index: -2;
}

.rltv #dsn3 {
	position: absolute;
	bottom: 810px;
	left: 0px;
	z-index: -2;
}

.rltv #dsn4 {
	position: absolute;
	bottom: -180px;
	right: 0px;
	z-index: -2;
}

.rltv #dsn5 {
	position: absolute;
	top: 100px;
	left: 0px;
	z-index: -2;
}

p#fodder_ttl {
	text-align: center;
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 20px;
	padding-top: 25px;
}

p#fodder_txt {
	font-size: 16px;
	line-height: 1.6em;
	padding: 30px 0px 45px;
	text-align: center;
	font-family: "Noto Serif JP", serif;
}

h3#ama_ttl {
	text-align: center;
	font-size: 40px;
	line-height: 1.4em;
}

p#ama_txt {
	text-align: center;
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 20px;
	padding-top: 20px;
	padding-bottom: 75px;
}

p#ama_detail {
	width: 460px;
	margin: 0 auto;
	font-size: 18px;
	line-height: 2.2em;
	padding-bottom: 75px;
	font-weight: bold;
}

.method_bx {
	overflow: hidden;
	padding-bottom: 55px;
}

.method_bx04 {
	padding-bottom: 0px;
}

.method_bx01 .pic,
.method_bx03 .pic {
	float: left;
	padding-left: 75px;
}

.method_bx02 .pic {
	float: right;
}

.method_bx04 .pic {
	float: right;
	padding-right: 75px;
}

.method_bx01 .box,
.method_bx03 .box {
	float: right;
	width: 472px;
	margin-right: 65px;
}

.method_bx02 .box,
.method_bx04 .box {
	float: left;
	width: 472px;
	margin-left: 65px;
}

.method_bx h3 {
	font-size: 30px;
	line-height: 1.4em;
	padding-bottom: 20px;
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	letter-spacing: 0.05em;
	padding-top: 5px;
}

.method_bx p {
	font-size: 14px;
	line-height: 1.6em;
}

#feeding_bg {
	width: 90%;
	height: 402px;
	background-position: right center;
	margin-left: 10%;
	background-image: url(../image/method_of_raising/feeding_bg.jpg);
	background-size: cover;
}

#feeding_bg div {
	text-align: left;
	padding: 65px 0px 0px 50px;
}

#mainimg {
	position: relative;
	overflow: hidden;
	height: 100vh;
}

#mainv {
	height: 100vh;
	background-image: url(../image/top/mainimg.jpg);
	background-size: cover;
	background-position: center center;
	transition: 0.3s;
	animation-name: scales;
	animation-duration: 3s;
	overflow: hidden;
}

@keyframes scales {
	0% {
		transform: scale(1.3, 1.3);
	}
	100% {
		transform: scale(1, 1);
	}
}

#trophy {
	position: absolute;
	top: 0px;
	left: 8%;
}

#mainimg h2 {
	position: absolute;
	width: 1000px;
	height: 420px;
	margin: auto;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	padding-top: 2%;
}

#mainimg #scroll {
	position: absolute;
	width: 30px;
	height: 50px;
	margin: auto;
	left: 0px;
	right: 0px;
	bottom: 3%;
}

#top_producer {
	padding: 85px 0px 55px;
	background-color: #f2f2f2;
	text-align: center;
}

#top_producer h3 {
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 30px;
	line-height: 30px;
	letter-spacing: 0.05em;
}

#top_producer h3 span {
	font-size: 10px;
	line-height: 10px;
	display: block;
	color: #808080;
	padding-top: 15px;
	font-family: urw-din, sans-serif;
}

p#top_producer_txt {
	font-size: 14px;
	padding: 20px 0px 50px;
	font-family: "Noto Serif JP", serif;
}

#top_producer ul li {
	width: 252px;
	display: inline-block;
	margin: 0px 20px 30px;
	vertical-align: top;
}

#top_producer ul li h4 {
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 20px;
	line-height: 20px;
	letter-spacing: 0.05em;
	padding-top: 20px;
}

#top_producer ul li h4 span {
	font-size: 10px;
	line-height: 10px;
	display: block;
	color: #808080;
	padding-top: 10px;
	font-family: urw-din, sans-serif;
}

#top_producer ul li p {
	font-size: 14px;
	line-height: 1.4em;
	padding-top: 20px;
	text-align: left;
	font-family: "Noto Serif JP", serif;
}

#top_producer a {
	display: block;
	margin-top: 50px;
}

#thought_box {
	overflow: hidden;
	background-color: #333333;
	margin-bottom: 115px;
	position: relative;
	/*background-image: url(../image/top/thought_img.jpg);
	background-size: 60% 100%;
	background-position: right top;
	background-repeat: no-repeat;*/
}

#thought_box #cont {
	float: left;
	width: 40%;
	padding: 30px 6%;
	box-sizing: border-box;
	color: #fff;
}

#thought_box #cont h3 {
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 34px;
	line-height: 34px;
	letter-spacing: 0.05em;
	padding-top: 20px;
}

#thought_box #cont h3 span {
	font-size: 10px;
	line-height: 10px;
	display: block;
	color: #808080;
	padding-top: 10px;
	font-family: urw-din, sans-serif;
}

#thought_box #cont p {
	font-size: 14px;
	line-height: 1.8em;
	padding-top: 20px;
	text-align: left;
	font-family: "Noto Serif JP", serif;
	padding-bottom: 45px;
}

#thought_box #pic {
	position: absolute;
	top: 0px;
	right: 0px;
	width: 60%;
	height: 100%;
	overflow: hidden;
}

#thought_box #pic img {
	object-fit: cover;
	font-family: "object-fit: cover;";
	width: 100% !important;
	height: 100% !important;
}

#thought_box #pic img,
#tktyo_box #pic img,
.tst_bx .pic img {
	width: 100%;
	height: auto;
}

#tktyo_box {
	position: relative;
	overflow: hidden;
}

#tktyo_box #pic {
	width: 60%;
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: -1;
}

#tktyo_box #cont {
	width: 45%;
	float: right;
	background-color: #fff;
	margin-top: 55px;
	padding: 55px 0px 0px 45px;
	box-sizing: border-box;
}

#tktyo_box #cont h3 {
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 28px;
	line-height: 28px;
	letter-spacing: 0.05em;
}

#tktyo_box #cont h3 span {
	font-size: 10px;
	line-height: 10px;
	display: block;
	color: #808080;
	padding-top: 10px;
	font-family: urw-din, sans-serif;
}

#tktyo_box #cont p#tktyo_txt {
	font-size: 16px;
	line-height: 1.8em;
	padding-top: 20px;
	text-align: left;
	font-family: "Noto Serif JP", serif;
	padding-bottom: 45px;
}

#tktyo_box #cont ul {
	padding-bottom: 15px;
}

#tktyo_box #cont ul li {
	border-bottom: 1px solid #000;
	padding: 40px 0px 30px;
	width: 85%;
}

#tktyo_box #cont ul li:last-child {
	border-bottom: none;
}

#tktyo_box #cont ul li span {
	font-size: 20px;
	line-height: 20px;
	display: block;
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	letter-spacing: 0.1em;
	padding-bottom: 10px;
}

#tktyo_box #cont ul li p {
	font-size: 14px;
	line-height: 1.6em;
}

h2.inner_ttl_sot {
	padding-top: 100px !important;
}

.tst_bx {
	position: relative;
}

.tst_bx01 {
	margin-bottom: 80px;
}

.tst_bx02 {
	margin-bottom: 115px;
}

.tst_bx01 .pic {
	margin-left: 55%;
	width: 45%;
	position: absolute;
	top: 0px;
}

.tst_bx02 .pic {
	width: 45%;
	position: absolute;
	top: 70px;
}

.tst_bx01 .cont {
	width: 75%;
	min-height: 380px;
	margin-left: 5%;
	margin-right: 20%;
	background-color: #333333;
	margin-top: 70px;
	padding: 7% 30% 7% 7%;
	color: #fff;
	box-sizing: border-box;
}

.tst_bx02 .cont {
	width: 75%;
	min-height: 380px;
	margin-left: 20%;
	margin-right: 5%;
	background-color: #333333;
	padding: 10% 7% 50px 30%;
	color: #fff;
	box-sizing: border-box;
}

.tst_bx h3 {
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 30px;
	line-height: 30px;
	letter-spacing: 0.05em;
}

.tst_bx h3 span {
	font-size: 10px;
	line-height: 10px;
	display: block;
	color: #808080;
	padding-top: 10px;
	font-family: urw-din, sans-serif;
}

.tst_bx p {
	font-size: 14px;
	line-height: 1.8em;
	padding-top: 20px;
	text-align: left;
	font-family: "Noto Serif JP", serif;
}

.tst_bx a {
	margin-left: 60%;
	margin-top: 30px;
	display: block;
}

header ul {
	float: right;
	padding-top: 20px;
}

header ul li {
	display: inline-block;
	padding-left: 20px;
	vertical-align: top;
	padding-top: 7px;
	min-width: 90px;
}

header ul li a {
	display: block;
	transition: 0.2s;
	/* 0.5遘偵〒蛟､繧偵↑繧√ｉ縺九↓螟牙喧縺輔○繧� */
	color: #fff;
	text-decoration: none;
	text-align: center;
}

header ul li a p {
	position: relative;
	/* .en縺ｨ.ja縺ｮ邨ｶ蟇ｾ驟咲ｽｮ縺ｮ蝓ｺ貅� */
}

header ul li a p.t1 {
	text-align: center;
	color: #fff;
	font-size: 15px;
	line-height: 15px;
	font-weight: bold;
}

header ul li a p.t2 {
	padding-top: 10px;
	text-align: center;
	color: #999999;
	font-size: 10px;
	line-height: 15px;
	font-family: "Noto Serif JP", serif;
}

.en,
.ja {
	display: block;
	/* position謖�ｮ壹′縺ゅｋ譎ゅ�辟｡縺上※繧ょ庄 */
	transition: 0.2s;
	/* 0.5遘偵〒蛟､繧偵↑繧√ｉ縺九↓螟牙喧縺輔○繧� */
}

.en {
	opacity: 1;
	/* 譎ｮ谿ｵ縺ｯ闍ｱ隱櫁｡ｨ險倥ｒ陦ｨ遉ｺ */
}

.ja {
	opacity: 0;
	/* 譎ｮ谿ｵ縺ｯ譌･譛ｬ隱櫁｡ｨ險倥ｒ騾乗�縺ｫ */
	display: none;
}

header ul li a:hover .en {
	/* a縺ｫ繝帙ヰ繝ｼ縺励◆縺ｨ縺崎恭隱櫁｡ｨ險倥�騾乗�縺ｫ */
	opacity: 0;
}

header ul li a:hover .ja {
	/* a縺ｫ繝帙ヰ繝ｼ縺励◆縺ｨ縺肴律譛ｬ隱櫁｡ｨ險倥ｒ陦ｨ遉ｺ */
	opacity: 1;
	margin-top: -15px;
	display: inherit;
}

/* サンクスページ */

/* html.thankspage footer {
	position: absolute;
	width: 100%;
	bottom: 0;
}

@media screen and (max-width: 640px) {
	html.thankspage footer {
		position: static;
	}
} */

p.desc_txt#thanks {
	font-size: 14px;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	font-weight: bold;
	padding-bottom: 2vh;
}

p.desc_txt#thanks:nth-child(4) {
	padding-bottom: 7vh;
}

a#top_back {
	width: 250px;
	margin: 50px auto 0;
	line-height: 50px;
	font-size: 14px;
	color: #fff;
	background-color: #231815;
	display: block;
	text-decoration: none;
}

#side_sns {
	width: 85px;
	height: auto;
	text-align: center;
	position: fixed;
	right: -85px;
}

#side_sns a img {
	width: 100%;
}

.thoughts_odd .pic {
	float: right;
}

.thoughts_even .pic {
	float: left;
}

.thoughts_odd .cont {
	float: left;
}

.thoughts_even .cont {
	float: right;
}

.thoughts_box {
	padding-bottom: 100px;
}

.thoughts_box .cont {
	width: 505px;
	color: #fff;
	font-family: "Noto Serif JP", serif;
}

.thoughts_box .cont h3 {
	font-size: 30px;
	line-height: 1.4em;
	border-bottom: 1px solid #fff;
	padding-bottom: 10px;
	margin-bottom: 10px;
	letter-spacing: 0.05em;
}

.thoughts_box .cont p {
	font-size: 14px;
	line-height: 1.6em;
	letter-spacing: 0.05em;
}

/* プライバシーポリシー */

.privacypolicy {
	padding-bottom: 95px;
}

.privacypolicy .method_bx .inner {
	margin-top: 20px;
	font-size: 14px;
	line-height: 1.6em;
}

.privacypolicy .method_bx .inner h4,
.privacypolicy .method_bx .inner h5 {
	font-family: "Noto Serif JP", serif;
}

.privacypolicy .method_bx .inner h4 {
	margin-bottom: 20px;
	font-size: 18px;
}

.privacypolicy .method_bx .inner h5 {
	font-size: 16px;
	margin-bottom: 5px;
}

.privacypolicy .method_bx .inner > ul {
	margin-left: 1em;
}

.privacypolicy .method_bx .inner:first-of-type > ul li + li {
	margin-top: 5px;
}

.privacypolicy .collect .inner:last-of-type > ul li + li {
	margin-top: 20px;
}

.method_bx {
	overflow: hidden;
	padding-bottom: 55px;
}

@media screen and (max-width: 640px) {
	.privacypolicy .method_bx {
		width: 94%;
		margin: 0 auto;
	}

	.privacypolicy .method_bx .inner > ul {
		margin-left: 0;
	}

	.privacypolicy .method_bx .inner:first-of-type > ul li {
		padding-left: 1em;
		text-indent: -1em;
	}

	.privacypolicy .method_bx .inner:first-of-type > ul li + li {
		margin-top: 8px;
	}

	.privacypolicy .method_bx .inner {
		margin-top: 25px;
	}
}

/* 230407求人バナー */
.pc_none,
.bnr_sp {
	display: none;
}

.fixBtn {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 10;
	width: 45vw;
	max-width: 200px;
	background: #fff;
}

#fixCloseBtn {
	position: absolute;
	top: -15px;
	right: -15px;
	text-transform: none;
	padding: 0;
	z-index: 99999999;
	cursor: pointer;
}

.fixBtn img {
	display: block;
	max-width: 100%;
}

.btn-batu {
	display: block;
	position: relative;
	width: 30px;
	height: 30px;
	border: 2px solid #333; /* 枠の調整 */
	border-radius: 50%; /* 丸みの度合い */
	background: #fff; /* ボタンの背景色 */
}

.btn-batu::before,
.btn-batu::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2px; /* 棒の幅（太さ） */
	height: 15px; /* 棒の高さ */
	background: #333; /* バツ印の色 */
}

.btn-batu::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.btn-batu::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
@media screen and (max-width: 1020px) {
	.th_attempt-box {
		width: 48.666667%;
	}

	.th_attempt-box p {
		height: auto;
		font-size: 16px;
	}

	.th_attempt-box-s {
		letter-spacing: normal;
	}
	.pc_none {
		display: block;
	}
}

@media (max-width: 768px) {
	.bnr_sp {
		display: block;
	}
	.bnr_pc {
		display: none;
	}

	.fixBtn img {
		max-width: 100%;
	}
}

/* 下村牛とはページ */
.about {
	padding-bottom: 150px;
}

.desc_ttl--about {
	text-align: center;
	letter-spacing: 1em;
	text-indent: 1em;
}

.definition {
	width: min(100%, 900px);
	margin: 50px auto 0;
}

.definition-dd {
	font-size: 25px;
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
}

.definition-dt {
	margin-top: 20px;
	line-height: 1.6em;
}

.definition-item + .definition-item {
	margin-top: 50px;
}

.definition-notice {
	margin-top: 80px;
	line-height: 1.6em;
}

.certification {
	text-align: center;
	border: solid 1px #000;
	width: min(100%, 570px);
	margin: 80px auto 0;
}

.image-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-flow: row wrap;
	margin-top: 50px;
}

.image-item {
	flex: 0 0 47%;
}

.certification-img,
.image-item-img {
	width: 100%;
}

.rltv .about #dsn2 {
	bottom: 810px;
}

.rltv .about #dsn3 {
	position: absolute;
	bottom: 280px;
	right: 0;
	left: auto;
	z-index: -2;
}

@media (max-width: 767px) {
	.about {
		padding-bottom: 100px;
	}
	.about-contents {
		margin-left: 3%;
		margin-right: 3%;
	}
	.definition {
		margin: 30px auto 0;
	}
	.definition-dd {
		font-size: 18px;
	}
	.definition-notice {
		margin-top: 50px;
	}
	.image-item {
		flex: 0 0 100%;
	}
	.image-item-img--02 {
		margin-top: 50px;
	}
}

/* 250219mvv追加 */
.mvv {
	padding: 40px 0 175px;
}
.mvv-inner {
	width: min(100%, 1000px);
	margin: auto;
}
.mvv-item {
	text-align: center;
}
.mvv-ttl {
	position: relative;
	font-size: 40px;
}
.mvv-ttl::after {
	content: attr(title);
	position: absolute;
	top: 48px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 20px;
	font-family: "Noto Serif JP", serif;
}
.mvv-body {
	margin-top: 73px;
	font-size: 30px;
	font-family: "Noto Serif JP", serif;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
.mvv-body.--vc {
	font-size: 24px;
	letter-spacing: 0;
}
.mvv-item + .mvv-item {
	margin-top: 115px;
}
.mvv-value-list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 10px;
	grid-row-gap: 10px;
	margin-top: 90px;
}
.mvv-value-item {
	padding: 30px 0 25px;
	background: #f6f6f6;
}
.mvv-value-ttl,
.mvv-value-body {
	font-family: "Noto Serif JP", serif;
}
.mvv-value-ttl {
	position: relative;
	font-size: 18px;
	letter-spacing: 1em;
	text-indent: 1em;
}
.mvv-value-ttl::after {
	position: absolute;
	top: 30px;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	width: 30px;
	height: 1px;
	background: #000;
}
.mvv-value-body {
	margin-top: 30px;
	font-size: 14px;
	line-height: 1.5;
}
@media (max-width: 767px) {
	.view_pconly {
		display: none;
	}
	.mvv-ttl::after {
		font-size: 16px;
	}	
	.mvv-value-list {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(4, 1fr);
	}
	.mvv-body {
		margin-top: 73px;
		font-size: 24px;
	}
	.mvv-body.--vc {
		font-size: 18px;
	}
}

.hbspt-form{
 padding:0 5% 150px;
}

/* 250725_トップお知らせ */

.top_information {
    margin: 85px auto 55px;
    text-align: center;
	max-width: 1000px;
}

.top_information h3 {
	font-family: "Noto Serif JP", serif;
    font-weight: bold;
    font-size: 30px;
    line-height: 30px;
    letter-spacing: 0.05em;
	margin-bottom: 60px;
}
.top_information h3 span {
    font-size: 10px;
    line-height: 10px;
    display: block;
    color: #808080;
    padding-top: 15px;
    font-family: urw-din, sans-serif;
}

.info_archive li {
	border-bottom: 1px dashed #4d4d4d;
}
.info_archive li a {
	display: block;
	padding: 20px 0 19px;
	text-decoration: none;
	font-size: 14px;
	color: #231815;
	transition: 0.7s;
	line-height: 1.6;
	text-align: left;
}
.post-date {
	font-size: 16px;
	margin-right: 15px;
	font-weight: bold;
}
.info_archive li a:hover {
	background: #e6e6e6;
	padding-left: 15px;
}

.top_information .info_btn {
	display: block;
    margin-top: 50px;
}

@media only screen and (max-width: 999px) {
	.info_archive {
		width: 94%;
		margin:  0 3%;
	}
}
@media only screen and (max-width: 767px) {
	.top_information {
    	margin-top: 75px;
	}
	.top_information h3 {
		font-size: 24px;
        line-height: 24px;
		margin-bottom: 40px;
	}
	.info_archive li a {
		font-size: 13px ;
		padding: 12px 0 11px;
	}
	.post-date {		
		display: block;
		font-size: 14px;
		margin-bottom: 2px;
	}
	.top_information .info_btn {
		margin-left: auto;
        margin-right: auto;
        width: 250px;
		margin-top: 30px;
	}
	.top_information .info_btn img {
		width: 100%;
	}
}

header .pc_none {
	display: none;
}
#globalfooter .right .privacy {
    margin-top: 10px;
	text-align: center;
}
#globalfooter .right .privacy a {
	display: inline-block;
    margin-top: 0;
}

@media only screen and (max-width: 767px) {
	header .pc_none {
		display: block;
	}
}