﻿@charset "UTF-8";


/* ▼768px以上の場合に適用
--------------------------------------------------------------------- */
@media only screen and (min-width: 769px) {}


/* ▼768px以下の場合に適用（iPad portrait以下）
---------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {

	body {
		font-size: 14px;
	}

	.pc {
		display: none;
	}

	.sp {
		display: none;
	}

	.font_b {
		font-size: 180%;
	}

	.header {
		background: url(../img/top_header_back.jpg) left top no-repeat;
		background-size: cover;
	}

	.hm_wrap {
		width: 100%;
	}

	/* フッター*/

	.footer .footer_inner {
		max-width: 960px;
		margin: 0 auto;
	}

	.footer .footer_inner h4 {
		font-size: 20px;
	}

	.footer .footer_inner ul {
		display: block;
	}

	.footer .footer_inner li {
		display: block;
		padding: 24px 0;
		width: 90%;
		margin: 0 auto;
		border-right: none;
		border-bottom: solid 1px #000;
	}

	.footer .footer_inner li:last-child {
		border-bottom: none;
	}

	/*
.footer .footer_inner li a{
	display:block;
	width:90%;
	margin:18px auto 0;
}
*/
	.footer_tel {
		display: block;
		padding-top: 14px;
	}

	.footer_nav {
		padding: 30px 0 0;
		max-width: 960px;
		margin: 0 auto;
	}

	.footer_nav ul {
		display: block;
		overflow: hidden;
	}

	.footer_nav ul li {
		display: block;
		border-right: solid 1px #999;
		padding: 16px;
		color: #000;
		border-right: none;
		text-decoration: none;
		width: 50%;
		float: left;
	}

	.footer_nav ul li a {
		color: #000;
		line-height: 1em;
		display: block;
	}

	.footer_link {
		text-align: center;
		padding-top: 0;
		margin-top: 30px;
	}

	.footer_link a {
		display: block;
		padding: 12px 0;
		line-height: 20px;
		color: #000;
		border-right: none;
		border-top: solid 1px #ccc;
		text-decoration: none;
	}

	.footer_link a.no-border {
		border-bottom: solid 1px #ccc;
	}

	.copy {
		padding: 20px 0 96px;
		font-size: 10px;
	}


	/* メインコンテンツ */
	#contents {
		max-width: 96%;
	}

	.contents_top img {
		width: 120px;
	}

	.section {
		/*padding:20px 0;*/
		padding: 80px 0 20px;
		margin: -64px auto 0;
	}

	.section .left {
		width: 96%;
		float: none;
		margin: 0 auto;
		padding: 0 0 30px 0;
	}

	.section .right {
		width: 96%;
		float: none;
		margin: 0 auto;
		padding: 0 0 30px 0;
	}

	sup {
		font-size: 12px;
	}

	p {
		padding-bottom: 8px;
	}

	h2 {
		font-size: 24px;
		line-height: 1.2;
		margin-bottom: 0.4em;
	}

	h3 {
		font-size: 16px;
		border-bottom: solid 1px #000;
		margin-bottom: 10px;
		line-height: 1.2;
		padding: 0.8em 0.5em 0.6em;
	}

	h3 span {
		font-size: 12px;
		font-weight: normal;
		padding-left: 5px;
	}

	h4 {
		font-size: 16px;
		font-weight: normal;
		line-height: 1.4;
	}

	h5 {
		font-weight: normal;
		font-size: 18px;
	}

	h5 span {
		display: inline;
	}

	.attention {
		padding: 0 0 20px;
		font-size: 12px;
		line-height: 1.4;
	}

	/* ボタン01 */
	.btn01 {
		width: 90%;
		margin: 20px auto 0;
		font-size: 13px;
	}

	/* ボタン02 */
	.btn02 {
		width: 90%;
		margin: 20px auto 0;
		font-size: 13px;
	}

	.btn04 {
		width: 96%;
		margin: 20px auto 0;
		font-size: 13px;
		display: block
	}

	.fade_btn,
	.fade_btn02 {
		width: 90%;
		margin: 20px auto 0;
		font-size: 13px;
	}

	.f_small {
		font-size: 10px;
	}


	/* 特長 */
	.environment01 {
		width: 100%;
	}

	/* お客様の声 */
	.voice_date {
		float: none;
		display: block;
		padding: 0;
	}

	h3 span.voice {
		float: none;
	}

	.voice_img {
		display: block;
		width: 94%;
		float: none;
		margin: 0 auto;
	}

	.voice_text {
		width: 96%;
		float: none;
		margin: 20px auto 0;
	}

	.voice_text dt {
		font-size: 16px;
		padding-bottom: 10px;
		line-height: 1.4;
	}

	/* --------------------------------------------------------
	フローティングバナー
-------------------------------------------------------- */
	/* フローティングバナーのラップ要素 */
	#fixed_right_banner {
		top: auto;
		bottom: 96px;
	}

	/* 画像の共通設定 */
	#fixed_right_banner>* {
		/* 横幅 */
		width: 36px;
	}

	#fixed_right_banner img {
		width: 36px;
	}




	/* PC・スマホでの文字の折り返しを調整 */
	.pc_block {
		display: inline;
	}

	/* PCは非表示,スマホで表示 */
	.pc {
		display: none;
	}

	.sp {
		display: block;
	}

	/* ユーザーの声ナビ */
	.voice_nav {
		max-width: 960px;
		margin: 0 auto;
		overflow: hidden;
		border-bottom: solid 1px #eee;
	}

	.voice_nav li {
		margin: 0;
		width: 100%;
		float: none;
	}

	.voice_nav a {
		border-bottom: none;
	}

	.voice_nav a img {
		width: 30%;
		margin-right: 4%;
	}

	.voice_nav a p span.case_no {
		font-size: 20px;
	}

	.voice_nav a p span.case_link {
		margin-top: 0.5em;
		padding: 2px 1.2em 1px;
		font-size: 11px;
	}

	/* ページトップ に戻る*/
	.pagetop {
		bottom: 40px;
		right: 12px;
	}

	.pagetop img {
		width: 36px;
	}

	/*YouTube*/
	.movie {
		padding: 0 4% 30px;
	}

	.bn_movie {
		width: 100%;
	}

	/* 仕組みのテーブル */
	.table_construction {
		font-size: 12px;
	}

	.table_attention {
		font-size: 10px;
		line-height: 120%;
		display: inline-block;
	}

	.col_3item {
		display: block;
	}

	.col_3item li {
		display: block;
		width: 100%;
		padding: 4%;
	}


	/* お客様の声改修 */
	.buttons {
		padding-top: 40px;
	}

	.buttons h4 {
		margin-bottom: 0;
	}

	.buttons h4 span {
		padding: 0 1rem;
		margin-top: -0.7rem;
	}

	.buttons button {
		padding: 0.3rem 1rem;
		margin: 5px 1px;
		font-size: 0.6rem;
	}

	.voice_list_back {
		padding: 40px 0;
		background: #f5f5f5;
	}

	.voice_list {
		width: 92%;
		max-width: 960px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		gap: 16px 2%;
	}

	.voice_list_box {}

	.voice_list a {
		width: 49%;
	}

	.voice_inner01 {
		width: 92%;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}

	.voice_inner01 .case_num {
		margin-top: -0.7rem;
	}

	.voice_inner01 .case_num span {
		padding: 0.1rem 0.5rem 0;
		font-size: 0.6rem;
	}

	.voice_inner01 .case_name {
		font-size: 0.6rem;
	}

	.voice_inner02 {
		line-height: 1.5;
		font-size: 0.8rem;
	}

	.voice h4 {
		font-size: 130%;
	}

}