/*
Theme Name: Cocoon Child
Theme URI: https://wp-cocoon.com/
Template: cocoon-master
Author: わいひら
Author URI: https://nelog.jp/
Description: SEO・高速化・モバイルファースト最適化済みの無料テーマ。
Tags: two-columns,left-sidebar,right-sidebar
Version: 2.6.7.1697689166
Updated: 2023-10-19 13:19:26

*/

@charset "utf-8";

/* =======================================

	CommonElements

======================================= */
body {
	font-family: "Noto Sans JP", sans-serif;
}

.grecaptcha-badge {
	visibility: hidden;
}

.bold {
	font-weight: bold !important;
}

.date-tags,
.entry-title,
.logo-footer,
.logo-header,
.tagline,
.admin-panel {
	display: none;
}

.main {
	font-family: "Noto Sans JP", sans-serif;
}

img {
	vertical-align: top;
}

.content,
.content-in,
.main,
.entry-content,
.article,
section {
	padding: 0 !important;
	margin: 0 !important;
	border: 0;
	position: relative;
}

.content-in {
	width: 100%;
}

video {
	max-width: none;
	object-fit: cover;
}

.mb0 {
	margin-bottom: 0;
}

.center {
	text-align: center;
}
a:hover {
	opacity: 0.5;
}
/*切り替えスイッチ*/
.sp_on {
	display: none;
}

.md_on {
	display: none;
}

@media screen and (max-width: 450px) {
	.sp_on {
		display: block;
	}

	.pc_on {
		display: none;
	}
}

/*トップ*/
.box {
	position: relative;
	width: 100%;
	height: 100vh !important;
}

.box1 {
	overflow: hidden;
}

.top_image {
	position: relative;
    width: 100%;
    height: 100vh !important;
    margin: 0 0 0 38px;
}
.top_image img {
	width:100%;
	height: 100%;
	object-fit: cover;
}
.fieldWrap {
	width: auto;
	position: fixed;
	top: 0;
	left: 20px;
	z-index: 999;
	height: 100vh;
	text-align: center;
	font-size: 0.8rem;
	padding: 10px;
	background: #000;
	color: #fff;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.copyright {
	width: auto;
	background: #000;
	color: #fff;
	padding: 0;
	margin: 0;
	position: fixed;
	height: 100vh;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	z-index: 999;
	font-size: 12px;
	text-align: center;
	-webkit-text-orientation: sideways;
	text-orientation: sideways;
}

.logo {
	position: fixed;
	top: 0px;
	left: 85px;
	z-index: 999;
	width: 250px;
	filter: drop-shadow(0px 0px 16px rgba(250, 250, 250, 0.9));
}

.video-box {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.flex {
	display: flex;
	justify-content: center;
	align-items: center;
}

.video_kifu {
	max-width: 100% !important;
	padding-left: 80px;
	height: 100%;
	object-fit: cover;
}

.kifu_p {
	position: absolute;
	bottom: 10px;
	left: 50%;
	transform: translate(-50%, 0);
}

.video {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	height: 100vh;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

@media screen and (min-width: 1200px) {
	#souzoku .video {
		top: 50%;
	}
}

.shiryou {
	position: fixed;
	bottom: -20px;
	right: 20px;
	z-index: 999;
	width: 200px;
}

.text_test {
	width: 80%;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	font-size: clamp(2rem, 5vw, 5rem);
	margin: 0 !important;
	padding: 0;
	color: #fff;
	letter-spacing: 0.3em;
}

#jigyo-syoukei {
	background: url(/wp-content/uploads/2023/10/top02.jpg) center/cover no-repeat;
}

#izou-kifu {
	background: #F5E9DE;
}

.center_box {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 9999;
}

.center_box h2 {
	background: transparent !important;
	font-size: clamp(2rem, 4vw, 5rem);
	margin: 0 !important;
	padding: 0;
	color: #000;
}

.center_box p {
	color: #000;
	margin: 20px 0;
}

.center_box.layer {
	content: "";
	background: rgba(255, 255, 255, 0.6);
	padding: 10px 20px;
	border-radius: 5px;
}

.breadcrumb {
	padding: 0 0 10px 6%;
	margin: 0 10px 0 0;
}

.wpcf7-form {
	margin: 0 auto;
	padding: 20px 0;
	width: 80%;
	max-width: 800px;
}

.campany_detail {
	padding: 80px 0 80px 60px;
	width: 80%;
	margin: auto;
}

.campany_detail .txt {
	width: 150px;
}

.campany_detail tr a {
	max-width: 200px;
	display: inline-block;
	margin: 10px;
}

.campany_detail tr a img {
	width: 100%;
	max-width: 120px;
}

.soudancenter {
	max-width: 300px !important;
}

/*==================================================
背景色が伸びて出現
===================================*/
/*全共通*/
.bgextend {
	animation-name: bgextendAnimeBase;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	position: relative;
	overflow: hidden;
	/*　はみ出た色要素を隠す　*/
	opacity: 0;
}

@keyframes bgextendAnimeBase {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

/*中の要素*/
.bgappear {
	animation-name: bgextendAnimeSecond;
	animation-duration: 1s;
	animation-delay: 0.4s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes bgextendAnimeSecond {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}


/*上から下*/
.bgUDextend::before {
	animation-name: bgUDextendAnime;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #fff;
	/*伸びる背景色の設定*/
}

@keyframes bgUDextendAnime {
	0% {
		transform-origin: top;
		transform: scaleY(0);
	}

	50% {
		transform-origin: top;
		transform: scaleY(1);
	}

	50.001% {
		transform-origin: bottom;
	}

	100% {
		transform-origin: bottom;
		transform: scaleY(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgUDextendTrigger {
	opacity: 0;
}

/*ハンバーガーメニュー*/
nav.NavMenu {
	position: fixed;
	z-index: 99999999;
	top: 0;
	right: 0;
	background: #e8e9eb;
	color: #000;
	width: 500px;
	height: 100%;
	margin-left: 60px;
	transform: translateX(100%);
	transition: all 0.6s;
}

nav.NavMenu ul {
	list-style: none;
	padding: 80px 20px 0;
	margin: 0;
	width: 100%;
	height: 100%;
}

nav.NavMenu ul li {
	font-size: 1.1em;
	list-style-type: none;
	padding: 0;
	width: 100%;
	border-bottom: 1px dotted #000;
}

nav.NavMenu ul li:last-child {
	padding-bottom: 0;
	border-bottom: none;
	/*最後のメニュー項目のみ下線を消す*/
}

nav.NavMenu ul li a {
	display: flex;
	/* 追加 */
	align-items: center;
	/* 追加 */
	text-decoration: none;
	color: #000;
	font-size: 18px;
	font-weight: bold;
	transition: all 0.3s;
	position: relative;
	margin: 10px auto;
}

/*トグルボタンが押されたときに付与するクラス*/
nav.NavMenu.active {
	transform: translateX(0%);
}

/*トグルボタンのスタイルを指定*/
.Toggle {
	display: block;
	position: fixed;
	/* bodyに対しての絶対位置指定 */
	right: 13px;
	top: 12px;
	width: 52px;
	height: 52px;
	cursor: pointer;
	z-index: 99999999999;
	background: #E50012;
}

.Toggle span {
	display: block;
	position: absolute;
	width: 30px;
	border-bottom: solid 3px #fff;
	-webkit-transition: .35s ease-in-out;
	/*変化の速度を指定*/
	-moz-transition: .35s ease-in-out;
	/*変化の速度を指定*/
	transition: .35s ease-in-out;
	/*変化の速度を指定*/
	left: 11px;
}

.Toggle span:nth-child(1) {
	top: 15px;
}

.Toggle span:nth-child(2) {
	top: 24px;
}

.Toggle span:nth-child(3) {
	top: 33px;
}

/* 最初のspanをマイナス45度に */
.Toggle.active span:nth-child(1) {
	top: 24px;
	left: 11px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
	top: 24px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.NavMenu .menu-box .logo {
	width: 500px;
	margin-right: auto;
	margin-left: auto;
}

.NavMenu .menu-box .arrow {
	width: 26px;
	margin-left: 60px;
}

.main_menu li a img {
	width: 80%;
}

.minikofu {
	width: 220px !important;
}

.minikofu2 {
	width: 120px !important;
}

.logo_area {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
a.btn-flat {
  overflow: hidden;
  padding: 1.5rem 6rem;
  color: #fff;
  border-radius: 0;
  background: #000;
}
a.btn-flat:hover {
	opacity: 1 !important;
}
a.btn-flat span {
  position: relative;
}

a.btn-flat:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-96%);
  transform: translateX(-96%);
  background: #e50012;
}

a.btn-flat:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
	opacity: 1 !important;
}
/*-----------------プライバシーポリシー--------------------*/
.gray {
	text-decoration: none;
	color: #666;
}

.sub_tit {
	font-size: 18px !important;
	border: 0 !important;
	border-left: 4px solid #c30000 !important;
	padding: 7px 20px !important;
}

.p_tit {
	background: transparent !important;
	text-align: center;
	font-size: 16px !important;
	color: #666 !important;
}

.post-239 {
	max-width: 900px;
	margin: 0 auto !important;
	padding: 0 3% !important;
}

/*-----------------太陽光事業--------------------*/
.lp_top_mov {
	width: 100%;
	position: relative;
	margin: 0;
}

.lp_top_mov video {
	width: 100%;
	vertical-align: top;
}

.lp_top_logo {
	width: 30%;
	max-width: 250px;
	position: absolute;
	top: 10px;
	left: 10px;
}

.lp_tiyo_content01 {
	background: #111111;
	padding: 30px 0 20px;
	margin: 0;
	position: relative;
	color: #fff;
}

.lp_tiyo_content01:after {
	content: "";
	background: url(https://ltdesign.jp/wp-content/uploads/2025/01/arrow_b.png) center / cover no-repeat;
	display: block;
	width: 150px;
	height: 100px;
	position: absolute;
	bottom: -80px;
	left: 50%;
	z-index: 2;
	transform: translate(-50%, 0);
}

.lp_tiyo_content01 figure {
	margin: 30px auto;
	width: 40%;
	max-width: 500px;
	min-width: 250px;
}

.lp_tiyo_content01 h1 {
	text-align: center;
}

.lp_content01_flex {
	display: flex;
	justify-content: center;
	max-width: 1200px;
	margin: 100px auto;
	padding: 20px;
}

.lp_content01_flex_l,
.lp_content01_flex_r {
	width: 50%;
	position: relative;
}

.lp_content01_flex_l {
	padding: 20px;
}

.lp_content01_flex_l h2 {
	background: transparent !important;
	padding-left: 100px;
	position: relative;
}

.lp_content01_flex_l h2:before {
	content: "";
	background: url(https://ltdesign.jp/wp-content/uploads/2025/01/sdgs_mark.png);
	width: 80px;
	height: 80px;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0%, -50%);
}

.lp_content01_flex_r figure {
	width: 80%;
	position: relative;
}

.sdgs_lp_content01 {
	width: 27% !important;
	max-width: 150px !important;
	min-width: 80px !important;
	position: absolute !important;
	top: -30px;
	left: 15px;
}

.lp_content01_btm_tit {
	background: transparent !important;
	text-align: center;
	color: #fff;
}

.lp_tiyo_content02 {
	background: url(https://ltdesign.jp/wp-content/uploads/2025/01/bg-texture-pc.png) center/cover no-repeat;
	position: relative;
	color: #fff;
	margin: 0;
}

.lp_content02_flex {
	display: flex;
	justify-content: center;
	max-width: 1200px;
	margin: 0 auto;
	padding: 150px 20px 80px;
}

.lp_content02_flex_r h2 {
	background: transparent !important;
	color: #fff;
}

.lp_content02_flex_r p {
	color: #fff;
}

.lp_content02_flex_l,
.lp_content02_flex_r {
	width: 45%;
	position: relative;
	padding: 20px;
}

.content02_under {
	max-width: 800px;
	margin: 0 auto;
	padding-bottom: 80px;
}

.content02_under h3,
.content02_under h4 {
	border: 0 !important;
	text-align: center;
}

.content02_under h3 {
	font-size: 40px;
	margin: 0 0 30px;
}

.content02_under h4 {
	font-size: 30px;
}

.lp_tiyo_content03 {
	position: relative;
	padding: 30px 0;
}

.lp_content03_flex {
	display: flex;
	justify-content: center;
	max-width: 1200px;
	margin: 0 auto;
}

.lp_content03_flex_l {
	width: 40%;
	padding: 30px;
}

.lp_content03_flex_r {
	width: 60%;
	padding: 20px;
	margin: 20px 0 0 0;
}

.lp_content03_flex_l h2 {
	background: transparent !important;
	font-size: clamp(30px, 5vw, 60px);
	color: #383837;
	margin: 0 0 20px;
	padding: 0 20px;
}

.lp_content03_flex_l h3 {
	border: 0 !important;
	line-height: 2;
	font-size: clamp(16px, 2vw, 30px);
}

.g_cheme {
	margin: 0 auto;
	max-width: 1200px;
}

.g_cheme p {
	max-width: 800px;
	margin: 0 0 0 auto;
}

.g_cheme_under {
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 900px;
	margin: 80px auto;
}

.g_cheme_under_text {
	width: 50%;
	text-align: center;
}

.g_cheme_under_text h2 {
	background: transparent !important;
	margin: 0 0 10px;
	font-size: 32px !important;
}

.g_cheme_under_graph {
	width: 50%;
}

.content03_red_arrow {
	width: 45%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.car_port_sys {
	max-width: 900px;
	margin: 50px auto;
}

.car_port_sys h2,
.car_port_sys h3 {
	text-align: center;
}

.car_port_sys h2 {
	background: url(https://ltdesign.jp/wp-content/uploads/2025/01/title_bg.png) center/cover no-repeat;
	color: #fff !important;
}

.car_port_sys h3 {
	border: 0 !important;
	font-size: 26px;
}

.car_port_sys p {
	margin: 50px auto;
}

.car_port_sys_under {
	display: flex;
	justify-content: center;
	max-width: 900px;
	margin: 0 auto;
}

.car_port_sys_under_l {
	width: 50%;
	padding: 20px;
}

.car_port_sys_under_r {
	width: 50%;
	padding: 20px 0 20px 20px;
}

.car_port_sys_under_r h2 {
	background: transparent !important;
	margin: 0 0 10px;
	padding: 25px 0;
}

.content04 {
	background: #b80608;
	color: #fff;
	margin: 0;
}

.content04_inner_top,
.content04_inner_under {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: -3px 0 0 0;
}

.content04_inner_top_l,
.content04_inner_top_r,
.content04_inner_under_l,
.content04_inner_under_r {
	width: 50%;
	position: relative;
}

.content04_inner_top_r {
	width: 56% !important;
}

.content04_inner_top_l {
	padding: 0 30px 0 50px;
	margin: 50px 0 0 0;
}

.content04_inner_top_l h2 {
	background: transparent !important;
	padding: 0;
	line-height: 1.5;
	font-size: clamp(16px, 2vw, 34px) !important;
}

.content04_inner_top_l p,
.content04_inner_under_l p {
	font-size: clamp(12px, 1.5vw, 20px) !important;
}

.content04_inner_under_l {
	padding: 0 30px 0 50px;
}

.contact05 {
	background: #111111;
	padding: 50px 0;
}

.contact05_inner {
	max-width: 900px;
	margin: auto;
	padding: 10px;
}

.contact05 .mw_wp_form {
	padding: 50px 0 50px 0 !important;
}

.taiyo-form h2 {
	background: url(https://ltdesign.jp/wp-content/uploads/2025/01/title_bg.png) center/cover no-repeat;
	color: #fff !important;
	text-align: center;
}

.taiyo-form table tr:nth-of-type(2n+1),
.taiyo-form table th {
	background: transparent !important;
}

.taiyo-form th {
	width: 220px;
	font-size: 13px;
	font-weight: 400;
	text-align: left;
	background: #fff;
	color: #fff;
}

.taiyo-form p {
	color: #fff;
}

.from_reception .taiyo-form p {
	color: #000 !important;
}

.page-id-248 .breadcrumb {
	background: #111;
	color: #fff;
	margin: 0;
}

/*--------------フォーム-------------*/
.page-id-31 .footer-in {
	padding-left: 50px;
}

.mw_wp_form {
	max-width: 900px;
	padding: 50px 0 50px 11%;
	margin: 0 auto;
}

table tr:nth-of-type(2n+1) {
	background-color: #fff !important;
}

.contact_form {
	margin: 80px auto;
}

.contact_title {
	padding: 0.5em !important;
	color: #010101 !important;
	background: #eaf3ff !important;
	border-bottom: solid 3px #516ab6 !important;
}

.form-hissu,
.form-nini {
	display: block;
	text-align: center;
	color: #FFF;
	width: 30px;
	font-size: 11px;
	margin: auto;
}

.form-hissu {
	background: #FF0000;
}

.form-nini {
	background: #99CCFF;
}

.form-btn {
	text-align: center;
}

.form-btn-font-o {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	font-size: 16px;
	display: inline-block;
	text-align: center;
	border: 1px solid #000;
	border-radius: 15px;
	margin: 0 auto;
	width: 270px;
	height: 60px;
	background: none;
	color: #000;
}

.form-btn-font-o:hover {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	background: #e50012;
	color: #FFF;
}

.form-btn-font-g {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	font-size: 16px;
	display: inline-block;
	text-align: center;
	border: 1px solid #000;
	border-radius: 15px;
	margin: 0 auto;
	width: 270px;
	height: 60px;
	background: none;
}

.form-btn-font-g:hover {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	background: #e50012;
	color: #FFF;
}

.mwform-radio-field {
	display: block;
	margin: 10px 0;
}

.form-bikou {
	width: 100%;
}

.form-btn {
	margin-bottom: 15px;
}

.cont-form table {
	margin: 20px 0;
	width: 100%;
	border-spacing: 0 10px;
}

.cont-form th,
.cont-form td {
	padding: 15px 1% 10px 1%;
}

.cont-form th {
	width: 170px;
	font-size: 13px;
	font-weight: normal;
	text-align: left;
	background: #fff;
}

.cont-form table input,
select,
textarea {
	border-radius: 0;
	background: #FFF;
	border: solid 1px #333333;
	padding: 9px 14px 9px 14px;
	box-sizing: border-box;
	width: 100%;
}

.contact-form p {
	margin: 0;
}

.form_l {
	height: 200px;
}

.cont-form table input[type=radio] {
	width: auto;
}

.cont-form table input[type=checkbox] {
	width: auto;
}

.cont-form table input[type=file] {
	width: auto;
}

.cont-form table select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.cont-form table select::-ms-expand {
	display: none;
}

.hissu_table {
	text-align: center;
	width: 6%;
	padding: 5px 0 5px 1% !important;
}

.cont-form table select {
	background: #FFF url(img/arrow.svg) 98% center no-repeat;
}


.ui-datepicker .ui-datepicker-title select {
	padding: 0 !important;
}

.contact_caution {
	margin: auto;
	width: 860px;
	padding: 25px 65px;
	font-size: 13px;
	background: #F7F7F7;
}

.contact_tel,
.contact_info_text {
	vertical-align: middle;
}

.cont_questionnaire {
	margin: 0;
}

.cont_questionnaire th {
	width: 120px;
	background: none;
	vertical-align: top;
}

.mwform-checkbox-field label {
	display: inline-block;
}

.mw_wp_form .horizontal-item+.horizontal-item {
	margin-left: 0 !important;
}

/*--------------------------フッター--------------------------*/
.footer {
	margin: 0;
	background: #ccc;
	color: #000;
}

.article-footer {
	display: none;
}

.footer-center {
	display: none;
}

.footer-left,
.footer-right {
	display: 50%;
	position: relative;
}

.footer-widgets {
	justify-content: space-around;
}

.footer_main {
	position: relative;
	z-index: 2;
}

.footer_main figure {
	max-width: 300px;
}

.footer_info {
	padding-left: 25px;
}

.footer_info h2 {
	letter-spacing: 10px;
	margin-bottom: 5px;
	font-size: 26px;
}

.footer_menu ul {
	list-style: square;
}

.footer_menu ul li {
	margin: 10px;
}

.footer_menu ul li a {
	color: #000;
	text-decoration: none;
}

.footer_menu ul li a:hover {
	opacity: 0.8;
}

.footer-bottom {
	margin-top: 0;
	padding: 8px;
	position: relative;
	font-size: 14px;
	text-align: center;
}

/*レスポンシブ*/
@media screen and (max-width: 900px) {
	.breadcrumb {
		padding: 0 0 10px 8%;
	}

	.shiryou {
		width: 120px;
	}

	.lp_content01_flex {
		flex-direction: column;
		margin: 100px auto 50px;
	}

	.lp_content01_flex_l,
	.lp_content01_flex_r {
		width: 100%;
	}

	.lp_content01_flex_r figure {
		width: 100%;
		max-width: 100%;
	}

	.lp_content01_flex_r figure img {
		width: 100%;
	}

	.lp_content02_flex {
		flex-direction: column;
	}

	.lp_content02_flex_l,
	.lp_content02_flex_r {
		width: 100%;
	}

	.content02_under {
		width: 90%;
	}

	.g_cheme p {
		max-width: 600px;
		margin: 30px auto;
		padding: 20px;
	}

	.car_port_sys {
		width: 90%;
	}

	.car_port_sys_under {
		flex-direction: column;
		width: 90%;
	}

	.car_port_sys_under_l,
	.car_port_sys_under_r {
		width: 100%;
	}

	.content04_inner_top,
	.content04_inner_under {
		flex-direction: column;
	}

	.content04_inner_top_l,
	.content04_inner_top_r,
	.content04_inner_under_l,
	.content04_inner_under_r {
		width: 90%;
	}

	.content04_inner_top_l {
		padding: 4%;
		margin: 50px 0 0 0;
	}

	.content04_inner_under_l {
		padding: 4%;
	}

	.content04_inner_top_l h2 {
		font-size: clamp(16px, 4vw, 34px) !important;
	}

	.content04_inner_top_l p,
	.content04_inner_under_l p {
		font-size: clamp(14px, 3vw, 20px) !important;
	}

	.md_off {
		display: none;
	}

	.md_on {
		display: block;
	}

	.content04_inner_top_r {
		width: 90% !important;
		margin-bottom: 50px;
	}

	.content04_inner_under_r {
		margin-bottom: 80px;
	}

	.content04_inner_under_r figure img {
		width: 100%;
	}

	.mw_wp_form {
		width: 90%;
	}
}

@media screen and (max-width: 650px) {
	.lp_content03_flex {
		flex-direction: column;
	}

	.lp_content03_flex_r,
	.lp_content03_flex_l {
		width: 100%;
	}

	.lp_content03_flex_l h2 {
		font-size: clamp(40px, 6vw, 60px);
		padding: 0 10px;
	}

	.lp_content03_flex_l h3 {
		font-size: clamp(20px, 3vw, 30px);
	}

	.g_cheme_under {
		flex-direction: column-reverse;
	}

	.g_cheme_under_graph,
	.g_cheme_under_text {
		width: 80%;
	}

	.campany_detail {
		padding: 80px 0 80px 20px;
	}
}


@media screen and (max-width: 450px) {
	.fieldWrap h1 {
		display: none;
	}

	#box1 .video {
		top: 43%;
	}

	.logo {
		width: 200px;
		top: 0;
		left: 5px;
	}

	.shiryou {
		width: 100%;
		bottom: 0;
		right: 0;
		background: #E50012;
		z-index: 999;
	}

	.text_test {
		font-size: 2.3rem;
	}

	.fieldWrap {
		font-size: 10px;
	}

	nav.NavMenu {
		width: 80%;
	}

	.wpcf7-form {
		padding: 15px 0 0;
	}

	.breadcrumb {
		padding: 0 0 50px 10px;
	}

	.center_box {
		width: 300px;
	}

	.campany_detail {
		padding: 55px 0 20px;
		width: 98%;
		position: unset;
		transform: translate(0, 0);
		font-size: 0.9rem;
	}

	.campany_detail .txt {
		width: 60px;
	}

	.campany_detail h2 {
		margin-bottom: 5px;
	}

	.video_kifu {
		padding-left: 0 !important;
	}

	#izou-kifu .center_box.layer {
		padding: 10px;
	}

	#izou-kifu .center_box p {
		margin: 10px !important;
	}

	.Toggle {
		top: 5px;
		right: 12px;
	}

	.sp_copy {
		font-size: 0.8rem;
		text-align: center;
		background: #000;
		color: #fff;
		padding: 5px;
	}

	.minikofu {
		width: 120px !important;
	}

	.minikofu2 {
		width: 70px !important;
	}

	.mw_wp_form {
		max-width: 900px;
		padding: 5px;
		margin: 0 auto;
	}

	.cont-form {
		width: 100%;
	}

	.contact_caution {
		width: 100%;
		padding: 25px;
	}

	.contact_info_text {
		margin-top: 10px;
		display: block;
	}

	.cont-form th,
	.cont-form td {
		display: block;
		padding: 5px 2%;
		text-align: left;
		border: none;
	}

	.cont-form th {
		margin-right: 5px;
	}

	.cont-form td {
		padding-top: 10px;
		margin-bottom: 20px;
	}

	.mw_wp_form_preview .cont-form td {
		padding-top: 5px;
	}

	.contact-form p {
		float: none;
		display: inline-block;
	}

	.contact_item {
		display: inline !important;
	}

	.hissu_table {
		display: inline !important;
		text-indent: 0 !important;
		border: none !important;
	}

	.form-hissu,
	.form-nini {
		display: inline-block;
		margin-bottom: 5px;
	}

	.lp_tiyo_content01:after {
		width: 80px;
		height: 55px;
		bottom: -50px;
	}

	.content02_under h3 {
		font-size: 24px;
	}

	.content02_under h4 {
		font-size: 26px;
	}

	.footer_info h2 {
		font-size: 20px;
	}

	.page-id-31 .footer-in {
		padding-left: 0;
	}

	.campany_detail {
		padding-left: 0;
	}
	
	.center_box.layer {
		width: 90%;
	}
	
	.lp_content01_flex_l,.lp_content02_flex_l, .lp_content02_flex_r,.car_port_sys_under_r,.content04_inner_top_l,.content04_inner_under_l {
		padding: 10px;
	}
	
	.content04_inner_top_l p, .content04_inner_under_l p {
		font-size: 16px !important;
	}
	
	.content04_inner_top_l h2 {
        font-size: 20px !important;
    }
	
	.lp_content02_flex {
		padding: 80px 20px 50px;
	}
	
	.top_image {
		margin: 0;
	}
}

@media screen and (max-width: 375px) {
	.logo {
		width: 150px;
	}

	.campany_detail {
		font-size: 0.8rem;
	}
}