@charset "UTF-8";
/*
Theme Name: アドプロダクションエムWordPressテーマ
Theme URI: https://addpro-m.co.jp/
Description: WordPress専用テーマです。
Version: 1.0
Author: 株式会社アドプロダクションエム
Author URI: https://addpro-m.co.jp/
*/

/* ==================== リセット ==================== */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, main, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	background: transparent;
	border: 0;
	box-sizing: border-box;
	font-style: normal;
	line-height: 1.7em;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
/* ==================== .clearfix ==================== */
.clearfix, .two, .three, .four, .five, .six, section, footer ul {
	min-height: 1px;
}
.clearfix::after, .two::after, .three::after, .four::after, .five::after, .six::after, section::after, footer ul::after {
	clear: both;
	content: "";
	display: block;
}
/* ==================== 文字 ==================== */
h1, h2, h3, h4, h5, h6 {
	font-family: "Sawarabi Mincho", serif;
	font-weight: bold;
}
h1 {
	font-size: 2.0rem;
}
h2 {
	font-size: 1.8rem;
}
h3 {
	font-size: 1.3rem;
}
h4 {
	font-size: 1.2rem;
}
h5 {
	font-size: 1.1rem;
}
h6 {
	font-size: 1rem;
}
strong {
	font-weight: bold;
}
small {
	font-size: 0.8rem;
}
.text-left {
	text-align: left;
}
.text-right {
	text-align: right;
}
.text-center {
	text-align: center;
}
.text-large {
	font-size: 3.0rem;
}

@media screen and (max-width: 767px) {
.text-large {
	font-size: 2.0rem;
}
}
.text-mincho {
	font-family: "Sawarabi Mincho", serif;
}
.text-eng {
	font-family: 'Oswald', sans-serif !important;
}
.text-border {
	margin-bottom: 30px;
	padding-bottom: 15px;
	position: relative;
}
.text-border::after {
	background: #00A8CA;
	bottom: 0;
	content: '';
	display: block;
	height: 4px;
	left: 0;
	margin: auto;
	position: absolute;
	width: 50px;
}
.text-center.text-border::after {
	right: 0;
}
/* ==================== スマートフォンの表示・非表示 ==================== */
.sp-visible {
	display: none;
}

@media screen and (max-width: 767px) {
.sp-hidden {
	display: none;
}
.sp-visible {
	display: block;
}
br.sp-visible {
	display: inline;
}
}
/* ==================== 画像 ==================== */
img {
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
img.alignleft {
	float: left;
	margin-bottom: 30px;
	margin-right: 30px;
}
img.alignright {
	float: right;
	margin-bottom: 30px;
	margin-left: 30px;
}
img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (max-width: 767px) {
img.alignleft, img.alignright {
	display: block;
	float: none;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 15px;
}
}
figure img {
	margin-bottom: 5px;
}
figcaption {
	font-size: 0.8rem;
}
.wp-block-image {
	margin-left: auto!important;
	margin-right: auto!important;
}
/* ==================== リンク ==================== */
a {
	color: #00A8CA;
	text-decoration: underline;
}
a:hover {
	opacity: .65;
	transition: .8s;
}
/* ==================== リスト ==================== */
ol, ul {
	list-style-position: inside;
}
.two, .three, .four, .five, .six {
	margin-bottom: 0; /* reset */
}
.two > *, .three > *, .four > *, .five > *, .six > * {
	float: left;
	margin-bottom: 30px;
}
.space > * {
	margin-right: 4%;
}
/* ==================== .two ==================== */
.two > * {
	width: 50%;
}
.two > *:nth-child(odd) {
	clear: both;
}
.two.space > * {
	width: 48%;
}
.two.space > *:nth-child(even) {
	margin-right: 0; /* reset */
}

@media screen and (max-width: 767px) {
.two > *, .two.space > * {
	clear: both;
	float: none; /* reset */
	width: 100%;
}
}
/* ==================== .three ==================== */
.three > * {
	width: 33.3333%;
}
.three > *:nth-child(3n+1) {
	clear: both;
}
.three.space > * {
	width: 30.6666%
}
.three.space > *:nth-child(3n) {
	margin-right: 0; /* reset */
}

@media screen and (max-width: 767px) {
.three > *, .three.space > * {
	clear: both;
	float: none; /* reset */
	width: 100%;
}
}
/* ==================== .four ==================== */
.four > * {
	width: 25%;
}
.four > *:nth-child(4n+1) {
	clear: both;
}
.four.space > * {
	width: 22%;
}
.four.space > *:nth-child(4n) {
	margin-right: 0; /* reset */
}

@media screen and (max-width: 767px) {
.four > * {
	width: 50%;
}
.four.space > * {
	width: 48%;
}
.four > *:nth-child(odd) {
	clear: both;
}
.four.space > *:nth-child(even) {
	margin-right: 0; /* reset */
}
}
/* ==================== .five ==================== */
.five > * {
	width: 20%;
}
.five > *:nth-child(5n+1) {
	clear: both;
}
.five.space > * {
	margin-right: 3%;
	width: calc(88%/5);
}
.five.space > *:nth-child(5n) {
	margin-right: 0; /* reset */
}

@media screen and (max-width: 767px) {
.five > * {
	width: 50%;
}
.five.space > * {
	margin-right: 4%;
	width: 48%;
}
.five > *:nth-child(odd) {
	clear: both;
}
.five > *:nth-child(5n+1) {
	clear: none; /* reset */
}
.five.space > *:nth-child(even) {
	margin-right: 0; /* reset */
}
.five.space > *:nth-child(5n) {
	margin-right: 4%; /* reset */
}
.five.space > *:nth-child(10n) {
	margin-right: 0; /* reset */
}
}
/* ==================== .six ==================== */
.six > * {
	width: 16.6666%
}
.six > *:nth-child(6n+1) {
	clear: both;
}
.six.space > * {
	margin-right: 2%;
	width: 15%;
}
.six.space > *:nth-child(6n) {
	margin-right: 0; /* reset */
}

@media screen and (max-width: 767px) {
.six > * {
	width: 33.3333%;
}
.six > *:nth-child(3n+1) {
	clear: both;
}
.six.space > * {
	width: 32%;
}
.six.space > *:nth-child(3n) {
	margin-right: 0; /* reset */
}
}
/* ==================== dl ==================== */
main dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	font-size: 0.9rem;
}
main dt, main dd {
	border-bottom: 1px solid #ddd;
	margin-bottom: 10px;
	padding-bottom: 10px;
}
main dt {
	font-weight: bold;
	margin-right: 5%;
	width: 20%;
}
main dt h3 {
	font-size: 1.1rem;
}
main dd {
	width: 75%;
}

@media screen and (max-width: 767px) {
main dl {
	display: block; /* reset */
}
main dt, main dd {
	width: 100%; /* reset */
}
main dt {
	border-bottom: 0; /* reset */
	margin-bottom: 0; /* reset */
	padding-bottom: 0; /* reset */
}
}
/* ==================== body ==================== */
body {
	background: #333;
	background: -moz-linear-gradient(left, #000 0%, #333 100%);
	background: -webkit-linear-gradient(left, #000 0%, #333 100%);
	background: linear-gradient(to right, #000 0%, #333 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000', endColorstr='#333', GradientType=1 );
	color: #555;
	font-family: 'Noto Sans JP', sans-serif;
	font-feature-settings: 'palt' 1;
	-webkit-font-feature-settings: 'palt' 1;
	font-size: 16px;
	font-weight: normal;
	position: relative;
}

@media screen and (max-width: 767px) {
body {
	font-size: 14px;
}
}
/* ==================== ヘッダー ==================== */
html header {
	background: #333;
	background: -moz-linear-gradient(left, #000 0%, #333 100%);
	background: -webkit-linear-gradient(left, #000 0%, #333 100%);
	background: linear-gradient(to right, #000 0%, #333 100%);
 filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000', endColorstr='#333', GradientType=1 );
	position: relative;
	width: 100%;
}
header > div {
	margin: 0 auto;
	max-width: 1080px;
	position: relative;
	width: 88%;
}
header > div h1 {
	font-size: medium;
	padding-top: 30px;
}

@media screen and (max-width: 1024px) {
header > div h1 {
    padding-bottom: 15px;
    padding-left: 15px;
    padding-top: 15px;
}
}
header > div .jag {
	font-size: small;
	position: absolute;
	right: 0;
	top: 5px;
}

@media screen and (max-width: 767px) {
header > div .jag {
	margin-left: 15px;
	padding-bottom: 20px;
	position: static;
}
}
header > div .jag a {
	color: #999;
	text-decoration: none;
}
header > div .jag a:hover {
	color: #FFF;
}
header > div h1 img {
	width: 218px;
}
header > div nav ul {
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	list-style: none;
	width: 100%;
}
header > div nav ul li {
	font-size: 0.9rem;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
}
header > div nav ul li a {
	border-bottom: 4px solid rgba(0,168,202,0);
	border-top: 4px solid rgba(0,0,0,0);
	color: #FFF;
	display: block;
	padding: 1.0em;
	text-decoration: none;
	width: 100%;
}
header > div nav ul li a:hover {
	border-bottom: 4px solid rgba(0,168,202,1.0);
	opacity: 1.0;
}

@media screen and (max-width: 1024px) {
header > div {
	width: 100%; /* reset */
}
header > div nav {
	height: auto; /* reset */
	position: fixed;
	top: -500px;
	transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-webkit-transition: .5s ease-in-out;
	width: 100%;
	z-index: 2;
}
header > div nav ul {
	display: block;
}
header > div nav ul li {
	background-color: rgba(255,255,255,0.95);
	border-bottom: 1px solid #F3F3F3;
	width: auto; /* reset */
}
header > div nav ul li:nth-child(even) {
	background-color: rgba(245,245,245,0.95);
}
header > div nav ul li a {
	border-bottom: none; /* reset */
	border-top: none; /* reset */
	color: #333;
	padding: 1.0em 0;
}
header > div nav ul li a:hover {
	border-bottom: none; /* reset */
	opacity: 1; /* reset */
}
}
/* ==================== main ==================== */
main {
	background-color: #FFF;
}
main > section {
	border-bottom: 1px solid #EEE;
	margin: 0 auto;
	max-width: 100%; /* reset */
	padding: 60px 0 30px;
	width: 100%; /* reset */
}
main > section:nth-of-type(even) {
	background-color: #FBFBFB;
}
main > *, main > section > *, .elementor-page main > *{
	margin: 0 auto 30px;
	max-width: 88%;
	width: 1080px;
}
main > section h1, main > section h2, main > section h3, main > section h4, main > section h5, main > section h6 {
	margin-bottom: 15px; /* reset */
}
main p {
	margin-bottom: 30px;
}
/* ==================== パンくずリスト ==================== */
#breadcrumbs {
	background-color: #A86;
	margin-bottom: 0; /* reset */
	max-width: 100%; /* reset */
	padding: 0.5em 0;
	width: 100%; /* reset */
}
#breadcrumbs p {
	color: #FFF;
	font-size: 0.8rem;
	margin: 0 auto;
	max-width: 88%;
	width: 1080px;
}
#breadcrumbs a {
	color: #FFF;
}
/* ==================== フッター ==================== */
html footer {
	background: #333;
	background: -moz-linear-gradient(left, #000 0%, #333 100%);
	background: -webkit-linear-gradient(left, #000 0%, #333 100%);
	background: linear-gradient(to right, #000 0%, #333 100%);
	color: #fff;
	font-size: 0.8rem;
	padding: 60px 0;
}
footer > div {
	margin: 0 auto;
	max-width: 1080px;
	position: relative;
	width: 88%;
}
footer h1 {
	font-size: medium;
	margin-bottom: 20px;
}
footer h1 img {
	width: 250px;
}
footer a {
	color: inherit; /* reset */
	text-decoration: none; /* reset */
}
footer nav ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    list-style: none;
}
@media screen and (max-width: 767px) {
footer {
	text-align: center;
}
footer nav {
	margin-top: 40px;
}
}
/* ==================== スクロール ==================== */
#totop {
	bottom: 20px;
	margin: 0;
	position: absolute;
	right: 20px;
	width: 50px;
}
/* ==================== ボタン ==================== */
.button {
	background-color: rgba(0,0,0,0.5);
	border: 1px solid #FFF;
	color: #FFF;
	display: inline-block;
	font-weight: bold;
	padding: 0.5em 1.0em;
	text-align: center;
	text-decoration: none;
}
.button::after {
	content: ' →';
}

/* ==================== .heroimage ==================== */
@media screen and (max-width: 767px) {
.heroimage {
	margin-top: -60px !important;
	max-width: 100% !important;
	width: 100% !important;
}
}
/* ==================== category.php ==================== */
.category .day{
	margin-bottom: 0;
}
.category main > section > * {
	width: 720px;
}
.category .wp-post-image {
	width: 180px;
}
.category .wp-pagenavi {
	margin-top: 30px;
	width: 720px;
}
/* ==================== 投稿ページ ==================== */
.single main > section > * {
	width: 720px;
}
#post_link {
	margin: 0 auto;
	padding: 30px 0;
	width: 720px;
}
#post_link ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	list-style: none;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#post_link ul li {
	font-size: 0.9rem;
}
/* ==================== 工場見学ツアー ==================== */

/* 小文字 */
.notes {
	font-size: 0.85rem;
	line-height: 1.6em;
}
.notes * {
	margin-bottom: 0;
}
.notes ul {
	text-indent: 1.5em;
}
/* スライドボタン */
.btn_slide {
	border-bottom: 5px double #00A8CA;
	color: #00A8CA;
	font-weight: bold;
	padding-bottom: 5px;
	text-align: center;
	transition: .8s ease-in-out;
	width: 240px;
}
.btn_slide::before {
	content: "▼ ";
}
.btn_slide::after {
	content: "を開く";
}
.btn_slide + * {
	display: none;
}
.btn_slide.active {
	width: 1080px;
}
.btn_slide.active::before {
	content: "▲ ";
}
.btn_slide.active::after {
	content: "を閉じる";
}
.btn_slide.active + * {
	display: block;
}
/*以下セクションごとの設定*/

/* スケジュール */
#schedule ol {
	list-style: none;
}
#schedule ol li h3 {
	background-color: #000;
	color: #fff;
	padding: 0.75rem 1rem;
}
#schedule .total {
	border: 5px double #000;
	padding: 15px 0;
	text-align: center;
}
#schedule .total strong {
	font-size: 1.2rem;
}
/* オプション */
#option h3 {
	margin-top: 40px;
}
#option h4 {
	background-color: #000;
	color: #fff;
	padding: 0.75rem 1rem;
}
/*ディティール*/
.page-id-20 #detail {
}
.page-id-20 #detail dl {
	width: 720px;
}
/*申し込みボタン*/
.page-id-20 .tocontact {
	background-color: #000;
	border: 5px #fff double;
	line-height: 1.2em;
	margin-bottom: 0;
	padding: 20px;
	position: fixed;
	bottom: 375px;
	right: -5px;
	text-align: center;
	width: 70px;
	z-index: 1;
}
.page-id-20 .tocontact a::after {
	content: "→";
}
.page-id-20 .tocontact a {
	color: #fff;
	text-decoration: none;
}

@media screen and (max-width: 767px) {
.page-id-20 .tocontact {
	font-size: 0.8rem;
	padding: 15px;
	bottom: 85px;
	width: 50px;
}
}
/* ==================== 採用情報 ==================== */

/*共通パーツ*/
body[class*="entries"] .date {
	font-size: 0.8rem;
	margin-bottom: 10px;
}
body[class*="entries"] .entry-style {
	background-color: #00A8CA;
	border-radius: 5px;
	color: #fff;
	display: inline-block;
	line-height: 1em;
	margin-right: 10px;
	padding: 0.25rem 0.5rem;
}
/*アーカイブ*/
.post-type-archive-entries article {
	border-bottom: 1px solid #ccc;
}
.post-type-archive-entries h2 a {
	text-decoration: none;
}
.post-type-archive-entries h2 {
	margin-bottom: 10px;
}
/*記事*/
.single-entries h2 {
	margin-bottom: 50px;
}
.single-entries dt h3 {
	font-size: 1.1rem;
}
/*ポストリンク*/
.single-entries #post_link ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	list-style: none; /* reset */
}
/*エントリー*/
.single-entries section:nth-of-type(2) .two {
	list-style: none; /* reset */
}
.single-entries section:nth-of-type(2) .two h3 {
	margin-bottom: 20px;
}
/* ==================== フォーム ==================== */

div.wpcf7 {
	margin-left: auto !important;
	margin-right: auto !important;
}
.wpcf7 .two > * {
	margin-bottom: 0;
}
.wpcf7 .form_date > * {
	display: inline-block;
	margin-bottom: 20px;
	width: 33%;
}
.wpcf7 .form_date > * > * {
	display: inline-block;
	margin-right: 5%;
	width: 80%;
}
.wpcf7 input, .wpcf7 textarea, .wpcf7 select {
	-webkit-appearance: none;
	background-color: #eee;
	border: 0;
	border-bottom: 1px solid #fff;
	border-radius: 0;
	box-sizing: border-box;
	font-size: 15px;
	font-weight: 300;
	line-height: 1em;
	margin: 0;
	padding: 10px;
	transition: .5s ease;
	vertical-align: text-bottom;
	width: 100%;
}
.wpcf7 textarea {
	resize: vertical;
}
.wpcf7 input:focus, .wpcf7 textarea:focus, .wpcf7 select:focus {
	outline: 0;
	background-color: inherit;
	border-bottom: 1px solid #000;
}
.wpcf7 textarea:focus {
	border: 1px solid #000;
}
.wpcf7 input[type="checkbox"] {
	-webkit-appearance: checkbox;
	background-color: inherit;
	border-bottom: none;
	margin: 3px 0.5ex;
	padding: 0;
	width: auto;
}
.wpcf7 input[type="checkbox"]:focus {
	outline: none;
	border-bottom: none;
}
.wpcf7 input[type="submit"] {
	background-color: #000;
	color: #fff;
	display: block;
	font-size: 1.1rem;
	margin-left: auto;
	margin-right: auto;
	padding: 20px;
	width: 160px;
}
.wpcf7 .form_half {
	width: 48%;
	float: left;
}
.wpcf7 .form_half.mb {
	margin-right: 4%;
}
.wpcf7 .must::after {
	color: #cc0000;
	content: " *";
}
::-webkit-input-placeholder {
color: #ccc;
}
::-moz-placeholder {
color: #ccc;
}
:-ms-input-placeholder {
color: #ccc;
}

@media screen and (max-width: 767px) {
.wpcf7 .form_date > * {
	margin-bottom: 5px;
}
.wpcf7 .form_half {
	width: 100%; /* reset */
	float: none; /* reset */
}
.wpcf7 .form_half.mb {
	margin-right: 0; /* reset */
}
}
.grecaptcha-badge{
	visibility: hidden;
}
.box_movie{
	/* width: 720px; */
}
.box_movie iframe{
	aspect-ratio: 16 / 9;
	height: 100%;
	width: 100%;
}