@charset "UTF-8";

@media screen and (max-width: 767px) {

	/***バス広告の種類一覧***/
	/*list_media*/
	.list_media {
		margin: 0 3%;
		margin-bottom: 50px;
	}

	.list_media li {
		margin-bottom: 20px;
	}

	.list_media li a {
		display: block;
		border: 4px solid #f0f0f0;
		border-radius: 10px;
		background: #fff;
		padding: 15px 5%;
	}

	.list_media_txt {
		margin-bottom: 15px;
	}

	.list_media_txt h3 {
		display: flex;
		align-items: center;
		font-size: 18px;
		line-height: 28px;
		font-weight: bold;
		margin-bottom: 5px;
	}

	.list_media_txt h3 i {
		margin-right: 5px;
		font-size: 14px;
		padding-top: 2px;
	}

	.i_yellow .list_media_txt h3 i {
		color: #FFBB00;
	}

	.i_blue .list_media_txt h3 i {
		color: #2296DE;
	}

	.i_red .list_media_txt h3 i {
		color: #EB6457;
	}

	.list_media_txt p {
		display: block;
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		height: 44px;
	}

	.list_media li a img {
		display: block;
		width: 100%;
		height: 170px;
		object-fit: cover;
		font-family: 'object-fit: cover';
		object-position: center;
	}

	/*other*/
	.media_other h2 {
		display: block;
		text-align: center;
		height: 50px;
		margin-bottom: 20px;
	}

	.media_other h2 img {
		height: 50px;
	}

	.media_other ul {
		margin: 0 3%;
	}

	.media_other li {
		margin-bottom: 20px;
	}

	.media_other li a {
		display: block;
		border: 4px solid #f0f0f0;
		border-radius: 10px;
		padding: 15px 5%;
	}

	.media_other li a h3 {
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0 auto;
		padding-bottom: 3px;
		margin-bottom: 10px;
		font-size: 16px;
		line-height: 25px;
	}

	.media_other li a h3 i {
		margin-right: 5px;
		font-size: 12px;
	}

	.media_other li a h3.flag_yellow,
	.media_other li a h3.flag_blue {
		width: 120px;
	}

	.media_other li a h3.flag_red {
		width: 114px;
	}

	.media_other li a img {
		margin: 0 auto;
		display: block;
		margin-bottom: 10px;
	}

	.media_other li a p {
		display: block;
		margin-bottom: 15px;
	}

	.media_other li a span {
		display: flex;
		align-items: center;
		justify-content: space-between;
		line-height: 50px;
		padding: 0 8%;
		background: #f0f0f0;
		border-radius: 5px;
		transition: all 0.3s;
		font-weight: bold;
	}

	.media_other_i_yellow i {
		color: #FFBB00;
	}

	.media_other_i_blue i {
		color: #2296DE;
	}

	.media_other_i_red i {
		color: #EB6457;
	}


	/***バス広告の種類詳細***/
	.detail_media {
		margin-bottom: 0;
	}

	.detail_media_wrap {
		margin: 0 3%;
	}

	.media_mainimg {
		padding-bottom: 15px;
	}

	.media_introduction {
		display: block;
		margin-bottom: 20px;
	}

	.media_overview {
		background: #f5f5f5;
		border-radius: 10px;
		padding: 20px 5%;
		margin-bottom: 35px;
	}

	.media_overview section:first-child {
		margin-bottom: 25px;
	}

	.media_overview section h3,
	.media_case h3 {
		padding-bottom: 3px;
		padding-left: 10px;
		margin-bottom: 10px;
		font-size: 14px;
	}

	.media_overview section h3 i,
	.media_case h3 i {
		margin-right: 5px;
	}

	.media_overview section p,
	.media_overview section table,
	.media_overview section span {
		margin-left: 10px;
	}

	.media_overview section table {
		margin-bottom: 5px;
	}

	.media_overview section table tr {
		display: flex;
		align-items: flex-start;
	}

	.media_overview section table th {
		width: 85px;
		font-weight: bold;
		text-align: left;
		padding: 5px 0;
		flex-shrink: 0;
	}

	.media_overview section table td {
		border-left: 1px solid #ccc;
		padding: 5px 0;
		padding-left: 30px;
	}

	.media_overview section span {
		font-size: 12px;
	}

	/*media_link_column*/
	.media_link_column a {
		display: flex;
		align-items: center;
		color: #111;
		border: 1px solid #ccc;
		border-radius: 8px;
		line-height: 23px;
		padding: 10px 15px;
		margin-bottom: 20px;
	}

	.media_link_column a i {
		color: #2296de;
		margin-right: 7px;
	}

	/*media_link_bnr*/
	.media_link_bnr a {
		display: block;
		margin-bottom: 35px;
	}

	/*case*/
	.media_case {
		margin-bottom: 50px;
	}

	.media_case h3 {
		margin-bottom: 15px;
		font-size: 16px;
		line-height: 27px;
	}

	.media_case li {
		margin-bottom: 15px;
	}

	.media_case li a {
		display: block;
		border: 4px solid #f0f0f0;
		border-radius: 10px;
		padding: 15px 5%;
	}

	.media_case li a img {
		width: 100%;
		height: 150px;
		object-fit: cover;
		font-family: 'object-fit: cover';
		object-position: center;
	}

	.media_case li a h4 {
		padding-top: 8px;
		margin-bottom: 10px;
		font-size: 14px;
		line-height: 22px;
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
	}

	.top_case_box_tag {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		height: 26px;
		white-space: nowrap;
		overflow: hidden;
	}

	.top_case_box_tag span {
		font-size: 12px;
		line-height: 26px;
		background: #D6EFFF;
		border-radius: 15px;
		padding: 0 10px;
		display: block;
		margin-right: 5px;
		margin-bottom: 5px;
	}

	.media_case_link {
		width: 80%;
		height: 50px;
		margin: 0 auto;
		padding-top: 15px;
	}

	.media_case_link a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0 30px;
		line-height: 50px;
		background: #FFBB00;
		font-weight: bold;
		border-radius: 5px;
	}

	.conts_back {
		border-top: 1px solid #ccc;
		padding-top: 10px;
		padding-left: 10px;
		margin-bottom: 80px;
	}

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

	.conts_back a i {
		color: #2296DE;
		margin-right: 10px;
	}

	/*announce sample*/
	.media_announce_sample {
		margin-bottom: 35px;
	}

	.media_announce_sample li {
		width: 100%;
		margin-bottom: 30px;
	}

	.media_announce_sample li h3 {
		margin-bottom: 10px;
		text-align: center;
	}

	.media_announce_sample li audio {
		width: 100%;
	}

	.media_announce_sample_txt {
		position: relative;
		display: inline-block;
		padding: 12px 6%;
		color: #111;
		font-size: 14px;
		line-height: 22px;
		background: #D6EFFF;
		border-radius: 10px;
		margin-top: 15px;
	}

	.media_announce_sample_txt:before {
		content: "";
		position: absolute;
		top: -30px;
		left: 50%;
		margin-left: -15px;
		border: 15px solid transparent;
		border-bottom: 15px solid #D6EFFF;
	}





	/***お問い合わせ***/
	.inquiry_wrap {
		margin: 0 3%;
		background: #fff;
		border: 4px solid #f0f0f0;
		border-radius: 10px;
		padding: 20px 5%;
		box-sizing: border-box;
		margin-bottom: 40px;
	}

	.inquiry_intro {
		padding-bottom: 25px;
		border-bottom: 1px solid #ccc;
		margin-bottom: 35px;
	}

	.inquiry_intro p {
		margin-bottom: 15px;
	}

	.inquiry_intro span {
		font-size: 13px;
		line-height: 22px;
		color: #888;
	}

	/***form***/
	.inquiry_table table,
	.inquiry_table tbody {
		width: 100%;
	}

	.inquiry_table tr {
		padding-bottom: 20px;
	}

	.inquiry_table th p {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-bottom: 5px;
		font-weight: bold;
	}

	.inquiry_table th .required {
		width: 55px;
		text-align: center;
		line-height: 30px;
		background: #cc2515;
		color: #fff;
		border-radius: 15px;
		font-weight: normal;
	}

	.inquiry_table td {
		width: 100%;
	}

	.inquiry_table td input[type="text"],
	.inquiry_table td input[type="email"],
	.inquiry_table td input[type="tel"],
	.inquiry_table td textarea {
		width: 100%;
		border: 1px solid #ccc;
		background: #f5f5f5;
		font-size: 16px;
		line-height: 27px;
		border-radius: 5px;
		padding: 8px 3%;
		box-sizing: border-box;
		font-family: "Noto Sans JP", "MS PGothic", sans-serif;
	}

	.inquiry_table td input[type="text"]:focus-visible,
	.inquiry_table td input[type="email"]:focus-visible,
	.inquiry_table td input[type="tel"]:focus-visible,
	.inquiry_table td textarea:focus-visible {
		outline: none;
		border: 1px solid #2296DE;
		background: #fff;
	}

	.inquiry_table td span.wpcf7-checkbox {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
	}

	.inquiry_table td span.wpcf7-checkbox>span {
		margin: 0 40px 0 0;
		padding: 7px 0;
		height: 25px;
	}

	.inquiry_table td label {
		display: flex;
		align-items: center;
	}

	.inquiry_table td input[type="checkbox"] {
		border: 1px solid #ccc;
		border-radius: 5px;
		width: 25px;
		height: 25px;
		background: #f5f5f5;
		margin: 0 7px 0 0;
		appearance: inherit;
		/*チェックボックスのcssをなくす*/
		position: relative;
	}

	.inquiry_table td input[type="checkbox"]:checked::after {
		content: "";
		position: absolute;
		display: block;
		box-sizing: border-box;
		width: 18px;
		height: 9px;
		margin-top: -7px;
		top: 50%;
		left: 3px;
		transform: rotate(-45deg);
		border-bottom: 3px solid;
		border-left: 3px solid;
		border-color: #2296DE;
	}

	/***inquiry_privacy/recaptcha***/
	.inquiry_privacy,
	.inquiry_recaptcha {
		padding-bottom: 25px;
	}

	.inquiry_recaptcha p {
		font-size: 13px;
		line-height: 22px;
		color: #888;
	}

	.inquiry_privacy a,
	.inquiry_recaptcha a {
		color: #009CE6;
		text-decoration: underline;
	}

	/***inquiry_btn***/
	/*送信ボタン用リセットcss*/
	input[type="submit"] {
		-webkit-appearance: none;
		border-radius: 0;
	}

	.inquiry_btn {
		width: 85%;
		height: 65px;
		margin: 20px auto 50px;
		position: relative;
		border-radius: 5px;
	}

	.inquiry_btn i {
		margin-right: 10px;
		color: #FFF;
		position: absolute;
		top: 24px;
		right: 25%;
		z-index: 10;
		font-size: 18px;
	}

	.inquiry_btn input[type="submit"] {
		width: 100%;
		height: 65px;
		background: #cc2515;
		color: #FFF;
		border-radius: 5px;
		font-weight: bold;
		border: none;
		padding: 0;
		padding-right: 10%;
		font-family: "Noto Sans JP", "MS PGothic", sans-serif;
		font-size: 18px;
		line-height: 27px;
	}

	.wpcf7-spinner {
		margin: 0 auto !important;
		display: block !important;
	}

	/***response***/
	.wpcf7-response-output {
		margin: 0 5% !important;
		text-align: left;
		color: #ff0000;
		border: 2px solid #ff0000 !important;
	}

	.wpcf7-not-valid-tip {
		color: #ff0000 !important;
		font-size: 14px !important;
	}

	.wpcf7-response-output:empty,
	.screen-reader-response {
		visibility: hidden;
		width: 0;
		height: 0;
		border: none;
		padding: 0;
		margin: 0;
	}

	/*thanks*/
	.inquiry_thanks h3 {
		margin-bottom: 10px;
	}

	.inquiry_thanks p {
		display: block;
		margin-bottom: 20px;
	}

	.inquiry_thanks a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 120px;
		border-radius: 25px;
		line-height: 41px;
		background: #2296DE;
		color: #fff;
		margin: 0 auto;
	}

	/***privacy***/
	.privacy_wrap p {
		margin-bottom: 5px;
		font-size: 14px;
	}

	.privacy_wrap h3 {
		margin-bottom: 10px;
	}

}