@charset "utf-8";

/* ----- 全体 ----- */

body {
	font-size: 1.9rem;
}

.tbl-a.fi-prpduct {
	font-size: 1.6rem;
}

ul#global-nav {
	font-size: 1.6rem;
}

/* ----- PC・モバイル切り替え ----- */

.pc-menu {
	display: block!important;
}

.mobile-menu {
	display: none!important;
}

.pc-content {
	display: block!important;
}

.mobile-content {
	display: none!important;
}

.pc-image {
	display: inline!important;
}

.mobile-image {
	display: none!important;
}

.pc-fitop-image {
	display: inline!important;
}

.mobile-fitop-image {
	display: none!important;
}

/* ----- before・after打消し ----- */

.nav-a.release-before ul>li::before {
	content: none;
}

.nav-a.release-after ul>li::after {
	content: none;
}

.list-a.release-before>li:before {
	content: none;
}

[data-script-enabled=true] .carousel-box.fi-recommended:before {
	content: none;
}

[data-script-enabled=true] .carousel-box.fi-top-contact-a:before {
	content: none;
}

.list-link-a.diff-anchor>li>a::after {
	content: none;
}

.hdg-b.fi-product::before,
.hdg-b.release-before::before {
	content: none;
}

/* ----- 注釈 ----- */

.annotation {
	color: #bb0000;
	font-size: 13px;
}

.annotation-notes {
	font-size: 13px;
	padding-left: 4rem;
	text-indent: -3.5rem;
}

/* ----- ホバーイベント ----- */

.hover-opacity a:hover {
	opacity: .8;
}

/* ----- お問い合わせリンクバナー ----- */

.lyt-btn-a.contact-btn .btn-b {
	min-width: 435px;
}

.lyt-btn-a.contact-btn .btn-b::before {
	content: none;
}

.lyt-btn-a.contact-btn li {
	margin: 25px;
}

.lyt-btn-a.contact-btn a {
	padding: 25px 0;
}

.lyt-btn-a.contact-btn img {
	vertical-align: middle;
	margin-right: 10px;
}

/* ----- mini-announce-point ----- */

.announce-point.mini-announce-point>ul>li {
	width: 260px;
}

.announce-point.mini-announce-point>ul>li img {
	height: 170px;
}

/* ----- ボタン ----- */

.btn-a {
	color: #000!important;
	border: 1px solid #c7c1c1;
	font-size: 15px;
}

.btn-a:hover,
.btn-a:active,
.btn-a:focus {
	background: #e6e3e3;
}

/* ----- 見出し文字 ----- */
.lyt-panel-a .panel-hdg {
	font-weight: normal;
	font-size: 4.3rem;
}

.hdg-b.fi-product {
	color: #25478a;
}

h3.fi-product-caption {
	color: #25478a;
	padding-left: 30px;
	position: relative;
}

h3.fi-product-caption::before {
	position: absolute;
	top: 6px;
	left: 0;
	display: block;
	width: 19px;
	height: calc(100% - 15px);
	background: #25478a;
	content: "";
}

/* ----- アンカーリンク ----- */

.list-link-a.diff-anchor>li>a::before {
	display: block;
	position: absolute;
	content: "";
	top: 64%;
	right: 0;
	width: 10px;
	left: 25px;
	height: 10px;
	border-top: 2px solid #25478a;
	border-right: 2px solid #25478a;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	margin-top: -12px;
	transition: -webkit-transform .2s;
	transition: transform .2s;
}

/* ----- fiトップページ ----- */

.fi-top-feature-a.fi-top-feature-a {
	padding-left: 40px;
}

.lyt-col-feature-a.fi-top-feature-a>.col {
	padding: 0;
}

.lyt-col-feature-a.fi-top-feature-a>.col a .visual img {
	max-width: 100%
}

.fi-top-content:hover {
	opacity: .87;
}

.icon-ctg-a.icon-red {
	background: #a30b1a;
}

.fi-top-img-text01 .main-txt {
	padding-left: 73px;
}

.lyt-col-contact-a.fi-top-contact-a>a {
	max-width: 33%;
}

.lyt-col-contact-a.fi-top-contact-a .contact-content {
	padding: 57% 24px 0;
}

.lyt-col-contact-a.fi-top-contact-a .contact-hdg {
	font-size: 95%;
}

.lyt-col-contact-a.fi-top-contact-a .contact-content>p {
	font-size: 80%;
}

.lyt-col-contact-a.fi-top-contact-a .contact-content {
	padding: 50% 6% 0;
}

.lyt-col-contact-a.fi-top-contact-a .contact-content>p.sub-txt {
	margin-top: 0!important;
}

span.mini {
	display: inline-block;
	padding: 0 14px;
	vertical-align: top;
	background: #00B1F9;
	font-size: 105%;
	margin-right: 14px;
	color: #fff!important;
	line-height: 170% !important;
}

.carousel-box.fi-top-contact-a {
	max-width: 1280px;
}

.carousel-box.fi-top-contact-a ul li {
	width: 255px;
	padding: 0;
}
.carousel-box.fi-top-contact-a ul li:hover {
	opacity: .87;
}

.carousel-box.fi-top-contact-a .carousel-box-inside {
	max-width: 1280px;
}

.fi-top-contact-a .carousel-scl-line-wrap {
	max-width: none;
}

.lyt-help-a.fi-top-help-a .columns>a {
	width: calc(25% - 16px);
	margin: 32px 0 0;
}

.fi-top-img-text02:hover,
.fi-top-img-text03:hover,
.fi-top-img-text04:hover,
.fi-top-img-text05:hover {
	opacity: .87;
}

/* ----- 製品：トップバナー ----- */

.hero-area-c.top-bunner {
	min-height: 520px;
}

.hero-area-c.top-bunner .content {
	max-width: 1920px;
}

.hero-area-c.top-bunner .content-inner {
	margin-left: 15%;
}

.hero-area-c.top-bunner .visual {
	min-height: 520px;
}

.top-bunner .content .top-bunner-left .main-txt {
	margin-top: 1.5vw;
}

.top-bunner .content .top-bunner-left .main-txt h1 {
	font-size: 65%;
	font-weight: normal;
}

.top-bunner .content .top-bunner-left .sub-txt p {
	font-size: 145%;
	margin-top: 3vw;
	font-weight: normal;
	line-height: 1.6;
}

.top-bunner .content .top-bunner-left .btn-area {
	margin-top: 2%;
}

.top-bunner .content .top-bunner-left .btn-area ul {
	justify-content: center;
}

.lyt-btn-b.fi-top>li {
	margin-left: -165px;
	padding-left: 0;
}

.lyt-btn-b.fi-top .btn-a {
	z-index: 10;
	background: transparent;
	border: 1px solid #fff;
	color: #fff!important;
	width: 200%;
	padding-left: 35px;
	font-size: calc(13vw*100/1280);
}

.lyt-btn-b.fi-top .btn-a:hover {
	opacity: 0.5;
}

.lyt-btn-b.fi-top .btn-a::before {
	right: auto;
	border-color: #fff;
}

.top-bunner .price {
	float: right;
	padding-top: 20%;
	color: #fff;
	margin-right: 17%;
}

.top-bunner .price p{
	font-size: 80%;
}

.top-bunner .price .number {
	font-size: 165%;
}

.top-bunner .price .yen {
	font-size: 80%;
}

.top-bunner .price .price-mini {
	font-size: 90%;
}

.top-bunner .price .number-mini {
	font-size: 145%;
}

/* ----- 製品：fi-body ----- */

.lyt-item-a>.item.fi-body-top {
	padding-top: 40px;
}

.lyt-item-a>.item .fi-body-middle {
	padding: 50px 0;
}

.list-a[class*=diff-col]>li.fi-body {
	padding-left: 10px;
	padding-top: 6%;
	text-align: center;
}

.fi-body .fi-body-middle {
	padding: 50px 0;
}

/* ----- ルビ ----- */

.width-ruby,
.depth-ruby,
.height-ruby,
.weight-ruby {
	position: relative;
}

.width-ruby::before {
	content: "幅";
	position: absolute;
	top: -1.5em;
	left: 0;
	right: 0.8em;
	margin: auto;
	font-size: 0.4em;
}

.depth-ruby::before {
	content: "奥行";
	position: absolute;
	top: -1.5em;
	left: 0;
	right: 0.8em;
	margin: auto;
	font-size: 0.4em;
}

.height-ruby::before {
	content: "高さ";
	position: absolute;
	top: -1.5em;
	left: 0;
	right: 0.6em;
	margin: auto;
	font-size: 0.4em;
}

.weight-ruby::before {
	content: "重さ";
	position: absolute;
	top: -1.5em;
	left: 0.5em;
	right: 0;
	margin: auto;
	font-size: 0.4em;
}

/* ----- おすすめ製品 ----- */

.carousel-box.fi-recommended ul {
	margin: 0 auto;
}

.carousel-box.fi-recommended ul li .text {
	font-size: 1.6rem;
}

/* ----- 特長 ----- */

.list-a.fi-feature>li:before {
	width: 10px;
	height: 10px;
	background: #25478a;
	top: .55em;
}

.lyt-item-a.fi-feature>.img img {
	max-width: 400px;
}

/* ----- 製品 ----- */
.fi .supplement {
	float: right;
	font-weight: normal;
	color: #a30b1a;
	border: 1px solid #a30b1a;
	padding: 8px 30px;
	font-size: 2.4rem;
}

.hover:hover {
	opacity: 0.8;
}

.list-square li {
	padding-left: 27px;
	text-indent: -27px;
}

.list-square li:before {
	content: "■";
	font-size: 120%;
	color: #25478a;
	margin-right: 10px;
}

.lyt-btn-a.contact-btn.fi-product-btn li .btn-a {
	padding: 25px 30px;
}

.lyt-btn-a.contact-btn.fi-product-btn li .btn-a:hover {
	opacity: 0.8;
}

.lyt-btn-a.contact-btn.fi-product-btn .sub-text {
	font-size: 14px;
}

.fi-top-flex {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	max-width: 1280px;
	margin: auto;
}

.fi-top-flex .top-main {
	width: 60%;
	color: #fff;
	margin-left: 7%;
}

.fi-top-flex .top-main .top-sub-title {
	line-height: 1.3;
	font-size: 26px;
	font-weight: normal;
}

.fi-top-flex .top-main h1 {
	font-size: 29px;
	margin-top: 5px!important;
	font-weight: normal;
	line-height: 1.6;
}

.fi-top-flex .top-main .top-price {
	font-size: 28px;
	display: inline-block;
	position: relative;
	border-bottom: 3px solid #9d9c95;
}

.fi-top-flex .top-main .top-price::before {
	display: block;
	position: absolute;
	content: "";
	left: 0;
	bottom: -3px;
	width: 18.75%;
	height: 3px;
	background: #a30b1a;
	min-width: 72px;
}

.fi-top-flex .lyt-btn-b.fi-top .btn-a {
	width: 250px;
	font-size: 16px;
}

.fi-top-flex .top-sub {
	width: 40%;
}

.flex-40 {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

.flex-40 .col01 {
	width: 40%;
}

.flex-40 .col02 {
	width: 60%;
}

.hover:hover {
	opacity: 0.8;
}

/* ----- 製品ラインナップ ----- */

.lineup-top {
/*	color: #fff;*/
}

.lineup-top h1.hdg-a {
	border-bottom: 3px solid #000;
	padding-left: 30px;
	padding-right: 30px;
	margin: 0 auto 30px;
}

.lineup-top h1.hdg-a .big {
	font-size: 60px;
}

.lineup-top p {
	font-size: 24px;
	padding-left: 30px;
	padding-right: 30px;
	margin: auto;
	max-width: 1280px;
}

.lyt-col-announce-a.fi-products {
	justify-content: space-between;
}

.lyt-col-announce-a.fi-products:before {
	content: "";
	display:block;
	width: 308px;
	height:0;
	order:1;
}

.lyt-col-announce-a.fi-products:after {
	content: "";
	display:block;
	width: 308px;
	height:0;
}

.lyt-col-announce-a.fi-products .product .price {
	padding: 5px;
}

.lyt-col-announce-a.fi-products .product .price .yen {
	font-weight: bold;
	color: #a30b1a;
}

.lyt-col-announce-a.fi-products .product .price .mini-font {
	font-size: 12px;
}

.lyt-col-announce-a.fi-products .product .text-area {
	border: 1px solid #ccc;
	font-size: 15px;
	margin: 5px 0;
	min-height: 210px;
	display: flex;
	flex-direction: column;
}

.lyt-col-announce-a.fi-products .product .text-area p {
	margin: 5px 10px!important;
}

.lyt-col-announce-a.fi-products .product .text-area .title {
	border-bottom: 1px solid #ccc;
	font-weight: bold;
	font-size: 17px;
}

.lyt-col-announce-a.fi-products .product .text-area .big {
	font-weight: bold;
	font-size: 20px;
}

.lyt-col-announce-a.fi-products .product .text-area .guide {
	margin-top: auto!important;
}

.lyt-col-announce-a.fi-products .product .anc {
	position: relative;
}

.lyt-col-announce-a.fi-products .product .anc .title-top {
	position: absolute;
	top: 0;
	background: rgba(10,10,10,0.5);
	width: 100%;
	color: #fff;
	padding: 5px;
}

.lyt-col-announce-a.fi-products .product .anc .title-top::before {
	display: block;
	position: absolute;
	content: "";
	top: 57%;
	right: 0;
	width: 12px;
	left: 10px;
	height: 12px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	margin-top: -12px;
	transition: -webkit-transform .2s;
	transition: transform .2s;
}

.lyt-col-announce-a.fi-products .product .anc .title-bottom {
	position: absolute;
	bottom: 0;
	background: rgba(10,10,10,0.5);
	width: 100%;
	color: #fff;
	padding: 5px;
	font-size: 23px;
}

section.section-lending {
	padding: 50px 0;
	background-size: 50px;
	width: 100%;
}

section.section-lending .content-area {
	max-width: 1300px;
	padding: 0 10px;
	margin: 0 auto;
	position: relative;
}

section.section-lending .lending {
	margin: 0 auto;
	padding: 30px;
	max-width: 770px;
	border: 3px solid #f8a411;
	border-radius: 5px;
	background: #fff;
	text-align: center;
}

section.section-lending .lending-text {
	line-height: 1.8;
	font-weight: normal;
	margin-bottom: 20px;
}

section.section-lending .lending-btn {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: .1em;
	transition: opacity .4s;
	display: block;
	margin: 0 auto;
	padding: 24px;
	max-width: 540px;
	background: #f8a411;
	box-shadow: 0 0 6px 0 rgba(0,0,0,0.3);
	color: #fff;
	text-decoration: none;
}

section.section-lending .lending-btn:hover {
	opacity: .60;
}

.lyt-col-announce-a.fi-products-col3 {
	justify-content: space-between;
}

.lyt-col-announce-a.fi-products-col3>li.col {
	width: 100%;
	max-width: 400px;
	margin: 16px 0 0 16px;
	flex-basis: calc(33% - 16px);
}

.lyt-col-announce-a.fi-products-col3>li.col>a {
	max-width: none;
}

.lyt-col-announce-a.fi-products-col3:after {
	content: "";
	display: block;
	height: 0;
	order: 1;
	width: 100%;
	max-width: 400px;
	margin: 16px 0 0 16px;
	flex-basis: calc(33% - 16px);
}

.contact-list.fi-flex-box-2 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
}

.contact-list.fi-flex-box-2 .item {
	max-width: 600px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	padding: 50px;
	margin-left: auto;
	margin-right: auto;
	width: 50%;
}

.contact-list.fi-flex-box-2 .item h3 {
	font-size: 2.5rem;
}

.contact-list.fi-flex-box-2 .btn {
	padding: 10px 5px;
	font-size: 25px;
	text-align: center;
	position: relative;
	max-width: 400px;
	color: #fff;
	margin: 0 auto;
	width: 100%;
}

.contact-list.fi-flex-box-2 .btn:hover {
	opacity: 0.8;
}

.contact-list.fi-flex-box-2 a {
	text-decoration: none;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.contact-list.fi-flex-box-2 img {
	vertical-align: middle;
	padding-left: 20px;
}

/* ----- 2020/12/18追加 ----- */

.fi-top-bunner2 {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row-reverse;
}

.fi-top-bunner2 .text {
	width: 385px;
	padding: 0 5px;
}

.fi-top-bunner2 .text h1 {
	text-align: center;
	font-size: 32px;
	color: #003078;
	line-height: 1.3;
}

.fi-top-bunner2 .text h1 .big-text {
	font-size: 60px;
}

.fi-top-bunner2 .text h1 .mini-text {
	font-size: 26px;
}

.fi-top-bunner2 .text hr {
	margin: 10px 30px;
}

.fi-top-bunner2 .img {
	flex: 1;
}

.fi-top-what {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

.fi-top-what .col1 {
	width: 60%;
}

.fi-top-what .col2 {
	width: 40%;
}

.fi-top-what h2 {
	font-size: 3.2rem;
	line-height: 1.4;
	margin: 5px 0 26px;
	padding-bottom: 18px;
	position: relative;
}

.fi-top-what h2:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 15%;
	height: 3px;
	background: #a30b1a;
}

.lyt-col-announce-a.fi-products-col3.after-none::after {
	content: none;
}

.lyt-col-announce-a.fi-products-col4 {
	justify-content: space-between;
}

.lyt-col-announce-a.fi-products-col4>li.col {
	width: 100%;
	max-width: calc(25% - 16px);
	margin: 16px 0 0 16px;
	flex-basis: calc(25% - 16px);
}

.lyt-col-announce-a.fi-products-col4>li.col>a {
	max-width: none;
}

.lyt-col-announce-a.fi-products-col4:before {
	content: "";
	display: block;
	height: 0;
	order: 1;
	width: 100%;
	max-width: 400px;
	margin: 16px 0 0 16px;
	flex-basis: calc(25% - 16px);
}

.lyt-col-announce-a.fi-products-col4:after {
	content: "";
	display: block;
	height: 0;
	order: 1;
	width: 100%;
	max-width: 400px;
	margin: 16px 0 0 16px;
	flex-basis: calc(25% - 16px);
}

.lyt-col-announce-a.fi-products-col4.before-none:before,
.lyt-col-announce-a.fi-products-col4.after-none:after {
	content: none;
}

.lyt-col-announce-a.fi-top-model>li.col {
	border: 1px solid #003078;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	text-align: center;
	background: #F4F5F6;
}

.lyt-col-announce-a.fi-top-model>li.col .title {
	color: #fff;
	background: #003078;
	padding: 6px;
}

.lyt-col-announce-a.fi-top-model>li.col .text {
	font-size: 17px;
	margin-top: 10px!important;
	padding: 0 5px;
}

.lyt-col-announce-a.fi-top-model>li.col .speed {
	margin-bottom: 10px;
}

.fi-top .flex50 {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.fi-top .flex50 .col {
	width: 50%;
}

.fi-top-scene .scene-list>.col {
	position: relative;
	border: 1px solid #00A7B9;
	margin: 10px;
	padding: 10px;
}

.fi-top-scene .scene-list.orange>.col {
	border: 1px solid #ee9e00;
}

.fi-top-scene .scene-list>.col:before {
	content: "→";
	position: absolute;
	bottom: -4px;
	right: 3px;
	font-size: 20px;
	font-weight: bold;
	z-index: 10;
	color: #fff;
}

.fi-top-scene .scene-list>.col:after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 0;
	height: 0;
	border-bottom: 35px solid #00A7B9;
	border-left: 35px solid transparent;
	z-index: 5;
}

.fi-top-scene .scene-list.orange>.col:after {
	border-bottom: 35px solid #ee9e00;
}

.fi-top-scene .scene-list>.col a {
	text-decoration: none;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 15;
}

.fi-top-scene .scene-list>.col h4 {
	font-size: 22px;
	margin-bottom: 10px;
}

.fi-top-scene .scene-list>.col p {
	font-size: 16px;
}

.fi-top-scene .scene-list>.col img {
	border: none;
	max-width: 45px;
	margin: 0;
	float: right;
}

.fi-top-consideration {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.fi-top-consideration .col {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	width: 50%;
	border: 3px solid #003078;
	padding: 10px 15px;
	margin: 16px 0 0 16px;
	background: #EEF2F9;
}

.fi-top-consideration .col:first-of-type {
	margin: 16px 0 0 0;
}

.fi-top-consideration .col h3 {
	color: #003078;
}

.fi-top-consideration .col .box {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	color: #003078;
	margin-bottom: 20px;
}

.fi-top-consideration .col .box li {
	flex: 1;
	border: 1px solid #003078;
	padding: 10px 5px;
	margin: 16px 0 0 16px;
	font-size: 18px;
	text-align: center;
	background: #fff;
	min-height: 72px;
	border-radius: 5px;
}

.fi-top-consideration .col .box li:first-of-type {
	margin: 16px 0 0 0;
}

.fi-top-consideration .col .sub-text {
	text-align: center;
	margin-bottom: 20px;
	font-size: 17px;
}

.fi-top-ather .col {
	text-align: center;
}

.fi-top-ather .lyt-btn-b {
	margin: 0;
	justify-content: center;
}

.fi-top-ather .lyt-btn-b .btn-b {
	color: #000!important;
	background: #fff;
	border: 1px solid #000;
	font-size: 16px;
	font-weight: bold;
}

.fi-top-ather .lyt-btn-b .btn-b::before {
	border-color: #000;
}

.fi-top-ather .lyt-btn-b .btn-b img {
/*	vertical-align: middle; */
	border: none;
	display: inline-block;
	margin: 0;
}

.lyt-help-a.fi-lyt-help-a .columns .column-content {
	position: relative;
	color: #003078;
	font-weight: bold;
	background: #fff;
	margin: 0 10px;
	padding: 10px;
	height: 100%;
}

.lyt-help-a.fi-lyt-help-a .columns .column-content:before {
	content: "→";
	position: absolute;
	bottom: -4px;
	right: 3px;
	font-size: 20px;
	font-weight: bold;
	z-index: 10;
	color: #fff;
}

.lyt-help-a.fi-lyt-help-a .columns .column-content:after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 0;
	height: 0;
	border-bottom: 35px solid #003078;
	border-left: 35px solid transparent;
	z-index: 5;
}

.list-news-a.fi-top-news .news-content {
	padding: 12px 18px;
	font-size: 16px;
}

/*
----------------------------------------
1920px - 
----------------------------------------
*/

@media only screen and (max-width: 1920px) {


	/* ----- 製品：トップバナー ----- */

	.hero-area-c.top-bunner {
		min-height: inherit;
		max-height: 520px;
		height: calc(520vw*100/1920);
	}

	.hero-area-c.top-bunner .visual {
		min-height: inherit;
		height: calc(520vw*100/1920);
	}

}

/*
----------------------------------------
1280px - 
----------------------------------------
*/

@media only screen and (max-width: 1280px) {

	/* ----- fiトップページ ----- */

	.lyt-col-contact-a.fi-top-contact-a .contact-content>p.main-txt {
		font-size: calc(8vw*100/630)!important;
	}

	.lyt-col-contact-a.fi-top-contact-a .contact-content>p.sub-txt {
		font-size: calc(10vw*100/630)!important;
	}

	/* ----- fiトップページ テキスト01 ----- */

	.fi-top-img-text01 .content-inner {
		top: 6vw!important;
		left: 7%!important;
	}

	.fi-top-img-text01 .main-txt {
/*		font-size: calc(37vw*100/1280)!important; */
		padding-left: calc(83vw*100/1280);
		font-size: 27.5px!important;
	}

	.fi-top-img-text01 .sub-txt {
/*		font-size: calc(18vw*100/1280)!important; */
		font-size: 16px!important;
	}

	/* ----- fiトップページ テキスト02 ----- */

	.fi-top-img-text02 .content-inner {
/*		top: 15vw!important; */
		top: 7vw!important;
		left: 7%!important;
	}

	.fi-top-img-text02 .main-txt {
/*		font-size: calc(40vw*100/1280)!important; */
		font-size: 30px!important;
	}

	.fi-top-img-text02 .sub-txt {
/*		font-size: calc(20vw*100/1280)!important; */
		font-size: 16px!important;
	}

	/* ----- fiトップページ テキスト03 ----- */

	.fi-top-img-text03 .content-inner {
		top: 7vw!important;
		left: 64%!important;
	}

	.fi-top-img-text03 .main-txt {
/*		font-size: calc(40vw*100/1280)!important; */
		font-size: 30px!important;
	}

	.fi-top-img-text03 .sub-txt {
/*		font-size: calc(20vw*100/1280)!important; */
		font-size: 16px!important;
	}

	/* ----- fiトップページ テキスト04 ----- */

	.fi-top-img-text04 .content-inner {
/*		top: 15vw!important; */
		top: 7vw!important;
		left: 7%!important;
	}

	.fi-top-img-text04 .main-txt {
/*		font-size: calc(40vw*100/1280)!important; */
		font-size: 30px!important;
	}

	.fi-top-img-text04 .sub-txt {
/*		font-size: calc(20vw*100/1280)!important; */
		font-size: 16px!important;
	}

	/* ----- fiトップページ テキスト05 ----- */

	.fi-top-img-text05 .content-inner {
		top: 7vw!important;
		left: 7%!important;
	}

	.fi-top-img-text05 .main-txt {
		font-size: 30px!important;
	}

	.fi-top-img-text05 .sub-txt {
		font-size: 16px!important;
	}

	/* ----- fiトップページ テキストトップ、02、04 ----- */

	.fi-top-img-text02-view,
	.fi-top-img-text04-view {
		background: none!important;
	}

	.fi-top-bunner .visual.pc:before,
	.fi-top-bunner .visual.pc:after,
	.fi-top-img-text02 .visual.pc:before,
	.fi-top-img-text02 .visual.pc:after,
	.fi-top-img-text04 .visual.pc:after {
		content: none;
	}

	/* ----- 製品：トップバナー ----- */

	.hero-area-c.top-bunner .content-inner {
		margin-left: 8%;
	}

	.top-bunner .content .top-bunner-left .sub-txt p {
		font-size: calc(20vw*100/1280);
	}

	.top-bunner .content .top-bunner-left .btn-area {
		margin-top: calc(20vw*100/1280);
	}

	.top-bunner .price {
		padding-top: 18%;
		margin-right: 8%;
	}

	/* ----- 製品 ----- */
	.fi-top-flex .top-main .top-sub-title {
		font-size: calc(26vw*100/1280);
	}


	.fi-top-flex .top-main h1 {
		font-size: calc(29vw*100/1280);
	}

	.fi-top-flex .lyt-btn-b.fi-top .btn-a {
		width: calc(273vw*100/1280);
		max-width: 250px;
		font-size: calc(16vw*100/1280);
	}

}

/*
----------------------------------------
1000px - 
----------------------------------------
*/

@media only screen and (max-width: 1000px) {

	/* ----- PC・モバイルメニュー切り替え ----- */

	.pc-menu {
		display: none!important;
	}

	.mobile-menu {
		display: block!important;
	}

	.mobile-menu .nav-a {
		display: block;
	}

	.mobile-menu .nav-a ul a {
		padding: 21px 5px;
		font-size: 14px;
	}

	/* ----- アンカーリンク ----- */

	.main-contents .js-nav-fixed+.section .section-inner {
		padding-top: 20px;
	}

	/* ----- 特長 ----- */

	.lyt-item-a.fi-feature>.img img {
		max-width: inherit;
	}

}

/*
----------------------------------------
768px - 
----------------------------------------
*/
@media only screen and (max-width: 768px) {

	.lyt-help-a.fi-top-help-a .columns {
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		margin: 20px auto 0!important;
	}

	.lyt-help-a.fi-top-help-a .columns>a {
		width: 50%;
		margin: 0 0 15px;
		font-size: calc(24vw*100/768);
	}

	/* ----- PC・モバイル切り替え ----- */

	.pc-fitop-image {
		display: none!important;
	}

	.mobile-fitop-image {
		display: inline!important;
	}

	/* ----- fiトップページ バナー ----- */

	.fi-top-bunner .content-inner {
		top: 15vw!important;
		left: 7%!important;
	}

	.fi-top-bunner .main-txt {
/*		font-size: calc(80vw*100/1280)!important; */
		font-size: 4rem!important;
	}

	/* ----- fiトップページ ----- */

	.fi-top-feature-a.fi-top-feature-a {
		padding-left: 0;
	}

	.lyt-col-contact-a.fi-top-contact-a>a {
		max-width: 480px;
	}

	.lyt-col-contact-a.fi-top-contact-a .contact-content {
		padding: 0;
		position: absolute;
		top: 240px;
		color: #fff;
		left: 5%;
	}

	.lyt-col-contact-a.fi-top-contact-a .contact-content>p.main-txt,
	.lyt-col-contact-a.fi-top-contact-a .contact-content>p.sub-txt {
/*		font-size: calc(40vw*100/1280)!important; */
		font-size: 20px!important;
		text-align: left;
	}

	/* ----- fiトップページ テキスト01,02,03,04 ----- */

	.fi-top-img-text01 .content-inner,
	.fi-top-img-text02 .content-inner,
	.fi-top-img-text03 .content-inner,
	.fi-top-img-text04 .content-inner,
	.fi-top-img-text05 .content-inner {
		top: 1vw!important;
		left: 7%!important;
		width: 85%!important;
	}

	.fi-top-img-text01 .main-txt {
		font-size: 27px !important;
		padding-left: calc(185vw*100/1280);
	}

	.fi-top-img-text02 .main-txt,
	.fi-top-img-text03 .main-txt,
	.fi-top-img-text04 .main-txt,
	.fi-top-img-text05 .main-txt {
/*		font-size: calc(65vw*100/1280)!important; */
		font-size: 31px!important;
	}

	.fi-top-img-text01 .sub-txt,
	.fi-top-img-text02 .sub-txt,
	.fi-top-img-text03 .sub-txt,
	.fi-top-img-text04 .sub-txt,
	.fi-top-img-text05 .sub-txt {
/*		font-size: calc(33vw*100/1280)!important; */
		font-size: 20px!important;
	}

	.fi-top-img-text01 .sub-txt {
		padding-top: 23vw;
	}

	/* ----- 製品 ----- */
	.fi .supplement {
		float: none;
		font-size: 1.8rem;
		line-height: 2.4;
	}

	.fi-top-flex {
		flex-direction: column;
	}

	.fi-top-flex .top-main {
		width: auto;
		margin-left: 0;
		padding: 25px 16px 16px;
		height: 100%;
	}

	.fi-top-flex .top-main .top-sub-title {
		font-size: 22px;
	}

	.fi-top-flex .top-main h1 {
		font-size: 33px;
		margin-top: 0px!important;
		line-height: 1.3;
	}

	.fi-top-flex .top-sub {
		width: auto;
		padding: 25px 16px 16px;
		height: 100%;
	}

	.flex-40 {
		flex-direction: column;
	}

	.flex-40 .col01 {
		width: auto;
		height: 100%;
	}

	.flex-40 .col02 {
		width: auto;
		height: 100%;
	}

	.flex-40 .col01.img,
	.flex-40 .col02.img {
		width: 100%;
	}

	.fi-top-flex .lyt-btn-b.fi-top .btn-a {
		border: 1px solid #c7c1c1;
		color: #fff!important;
		width: 300px;
		font-size: 1.7rem;
	}

	.fi-top-flex .lyt-btn-b.fi-top .btn-a::before {
		border-color: #fff;
	}

	.sp-margin-center {
		margin-left: auto!important;
		margin-right: auto!important;
	}

	.lyt-btn-a.contact-btn.fi-product-btn li .btn-a {
		padding: 25px 0;
	}

	.sp-order-1 {
		order: 1;
	}

	.sp-order-2 {
		order: 2;
	}

	.sp-order-3 {
		order: 3;
	}

	.sp-order-4 {
		order: 4;
	}

	.sp-order-5 {
		order: 5;
	}

	.sp-order-6 {
		order: 6;
	}

	/* ----- 製品ラインナップ ----- */

	.sp-float-off {
		float: none!important;
	}

	.lineup-top h1.hdg-a {
		font-size: 30px;
	}

	.lineup-top h1.hdg-a .big {
		font-size: 45px;
	}

	.lineup-top p {
		font-size: 19px;
	}

	.lyt-col-announce-a.fi-products .product .price {
		font-size: 16px;
	}

	.lyt-col-announce-a.fi-products .product .text-area {
		font-size: 13px;
	}

	.lyt-col-announce-a.fi-products .product .text-area p {
		margin: 5px 10px!important;
	}

	.lyt-col-announce-a.fi-products .product .text-area .title {
		font-size: 15px;
	}

	.lyt-col-announce-a.fi-products .product .text-area .big {
		font-size: 17px;
	}

	.lyt-col-announce-a.fi-products .product .anc .title-top {
		font-size: 15px;
		position: relative;
	}

	.lyt-col-announce-a.fi-products .product .anc .title-top::before {
		content: none;
	}

	.lyt-col-announce-a.fi-products .product .anc .title-bottom {
		font-size: 18px;
	}

	.lyt-col-announce-a.fi-products .product .anc img {
		margin-top: 0;
	}

	section.section-lending {
		padding: 15px 0;
	}

	section.section-lending .lending {
		padding: 15px;
	}

	section.section-lending .lending-text {
		margin-bottom: 15px;
		text-align: left;
	}

	section.section-lending .lending-btn {
		font-size: 20px;
		font-size: 2rem;
		font-weight: bold;
		letter-spacing: .1em;
		display: block;
		margin: 0 auto;
		padding: 24px;
		max-width: 540px;
		background: #f8a411;
		box-shadow: 0 0 6px 0 rgba(0,0,0,0.3);
		color: #fff;
	}

	.lyt-col-announce-a.fi-products-col3>li.col {
		flex-basis: calc(50% - 16px);
	}

	.contact-list.fi-flex-box-2 {
		display: block;
	}

	.contact-list.fi-flex-box-2 .item {
		width: auto;
		margin-bottom: 30px;
		padding: 20px 10px;
	}

	.contact-list.fi-flex-box-2 .item:first-of-type {
		margin-bottom: 0;
	}

	.contact-list.fi-flex-box-2 .item h3 {
		font-size: 2.1rem;
	}

	.contact-list.fi-flex-box-2 .btn {
		font-size: 20px;
		padding: 5px;
	}

	.contact-list.fi-flex-box-2 .btn:hover {
		opacity: 0.8;
	}

	.contact-list.fi-flex-box-2 img {
		padding-left: 0;
		max-width: 50px;
	}

	/* ----- 2020/12/18追加 ----- */

	.fi-top-bunner2 {
		display: block;
		background: none!important;
	}

	.fi-top-bunner2 .text {
		width: auto;
		padding: 5px 0;
	}

	.fi-top-bunner2 .text h1 {
		font-size: 28px;
	}

	.fi-top-bunner2 .text h1 .big-text {
		font-size: 50px;
	}

	.fi-top-bunner2 .text h1 .mini-text {
		font-size: 22px;
	}

	.fi-top-bunner2 .text hr {
		margin: 10px;
	}

	.fi-top-bunner2 .img {
		width: auto;
	}

	.fi-top-what {
		display: block;
	}

	.fi-top-what .col1 {
		width: auto;
		padding: 0 16px;
	}

	.fi-top-what .col2 {
		width: auto;
		text-align: center;
	}

	.fi-top-what h2 {
		margin: 40px 0 20px;
		padding-bottom: 16px;
		font-size: 2.4rem;
	}

	.fi-top-what h2:before {
		width: 120px;
	}

	.lyt-col-announce-a.fi-products-col3.fi-top-merit {
		display: block;
		margin: auto;
	}

	.lyt-col-announce-a.fi-products-col3.fi-top-merit>li.col {
		width: auto;
		margin: 16px auto;
	}

	.lyt-col-announce-a.fi-products-col4>li.col {
		max-width: calc(50% - 16px);
		flex-basis: calc(50% - 16px);
	}

	.lyt-col-announce-a.fi-products-col4:before,
	.lyt-col-announce-a.fi-products-col4:after {
		content: none;
	}

	.lyt-col-announce-a.fi-products-col4.fi-top-model>li.col {
		max-width: 400px;
		flex-basis: auto;
		margin: 16px auto;
	}

	.lyt-col-announce-a.fi-products-col4.fi-top-ather {
		display: block;
		margin: auto;
	}

	.lyt-col-announce-a.fi-products-col4.fi-top-ather>li.col {
		width: auto;
		margin: 0 auto 20px;
	}

	.fi-top .flex50 {
		display: block;
	}

	.fi-top .flex50 .col {
		width: auto;
	}

	.fi-top-scene .scene-list>.col h4 {
		font-size: 18px;
		text-align: center;
	}

	.fi-top-scene .scene-list>.col img {
		float: none;
		margin: auto;
	}

	.fi-top-consideration {
		display: block;
	}

	.fi-top-consideration .col {
		width: auto;
		margin: 16px 0 0 0;
	}

	.fi-top-consideration .col .box {
		display: block;
		margin-bottom: 10px;
	}

	.fi-top-consideration .col .box li {
		width: auto;
		margin: 16px auto;
		min-height: auto;
		padding: 5px!important;
		font-size: 16px;
	}

	.fi-top-consideration .col .sub-text {
		font-size: 13px;
	}

	.fi-top-consideration .col h3 {
		font-size: calc(30vw*100/768);
	}

	.fi-top-consideration .col h3 img {
		max-width: 30px;
	}

	.pc-ather-content {
		display: none;
	}

	.lyt-help-a.fi-lyt-help-a .columns .column-content {
		padding: 10px 5px;
	}

	.lyt-help-a.fi-lyt-help-a .columns .column-content img {
		max-width: 50px;
	}

}

/*
----------------------------------------
767px - 
----------------------------------------
*/

@media only screen and (max-width: 767px) {

	/* ----- 全体 ----- */

	.tbl-a.fi-prpduct {
		font-size: 1.3rem;
	}

	/* ----- PC・モバイル切り替え ----- */

	.pc-content {
		display: none!important;
	}

	.mobile-content {
		display: block!important;
	}

	.pc-image {
		display: none!important;
	}

	.mobile-image {
		display: inline!important;
	}

	/* ----- モバイルmargin ----- */

	.mobile-mt0 {
		margin-top: 0!important;
	}


	/* ----- モバイルpadding ----- */

	.mobile-pt0 {
		padding-top: 0!important;
	}

	.mobile-pt40 {
		padding-top: 40px!important;
	}

	.mobile-pl0 {
		padding-left: 0px!important;
	}

	/* ----- モバイル画像最大サイズ ----- */
	.mobile-img-max-size {
		max-width: 70%!important;
	}

	/* ----- 見出し文字 ----- */
	.lyt-panel-a .panel-hdg {
		font-size: 3.5rem;
	}

	/* ----- お問い合わせリンクバナー ----- */

	.lyt-btn-a.contact-btn li {
		margin: 0;
		margin-bottom: 35px;
		margin-left: 15px;
	}

	.lyt-btn-a.contact-btn a {
		padding: 25px 0;
	}

	/* ----- 製品：トップバナー ----- */

	.hero-area-c.top-bunner {
		height: auto;
		max-height: inherit;
		overflow: hidden;
	}

	.hero-area-c.top-bunner .content-inner {
		margin-left: 0;
	}

	.top-bunner .content .top-bunner-left .btn-area {
		margin-top: 6%;
	}

	.top-bunner .content .top-bunner-left .btn-area ul {
		justify-content: center;
	}

	.hero-area-c.top-bunner .visual {
		height: calc(230vw*100/320);
	}

	.top-bunner .price {
		padding-top: 55%;
		margin-right: 0%;
	}

	.hero-area-c.diff-color-a.top-bunner .content-inner {
		background: #FFF;
	}

	.lyt-btn-b.fi-top>li {
		margin-left: -22%;
	}

	.top-bunner .lyt-btn-b.fi-top .btn-a:hover {
		background: #e6e3e3;
		opacity: 1.0;
	}

	.lyt-btn-b.fi-top .btn-a {
		border: 1px solid #c7c1c1;
		color: #000!important;
		width: 200%;
		font-size: 1.7rem;
	}

	.lyt-btn-b.fi-top .btn-a::before {
		right: auto;
		border-color: #000;
	}

	.lyt-btn-b.fi-top .btn-a.green::before {
		border-color: #0E6560;
	}

	/* ----- 製品：fi-body ----- */

	.lyt-item-a>.item.fi-body-top {
		padding-top: 0;
	}

	.lyt-item-a>.item .fi-body-middle {
		padding: 0;
	}

	.list-a[class*=diff-col]>li.fi-body {
		padding-left: 0;
		padding-top: 0;
	}

	.fi-body .fi-body-middle {
		padding: 0;
	}

	/* ----- ルビ ----- */

	.width-ruby::before {
		top: -2em;
		left: 1.8em;
		right: 0;
	}

	.depth-ruby::before {
		top: -2em;
		left: 1em;
		right: 0;
	}

	.height-ruby::before {
		top: -2em;
		left: 0.6em;
		right: 0;
	}

	.weight-ruby::before {
		top: -2em;
		left: 0.5em;
		right: 0;
	}

	/* ----- 環境アイコン ----- */

	.mobile-eco-icon img {
		margin-right: 5px!important;
		max-height: 80px;
	}

	/* ----- 仕様詳細 ----- */

	.tbl-a.fi-specifications tbody th {
		width: 40%;
	}

	/* ----- 特長 ----- */

	body .mobile-feature-fontsize {
		font-size: 1.6rem;
	}

	.lyt-item-a.fi-feature>.img img {
		max-width: 100%;
	}

	.mobile-feature-fontsize h3.fi-product-caption::before {
		width: 14px;
		height: 14px;
	}
}

/*
----------------------------------------
480px - 
----------------------------------------
*/

@media only screen and (max-width: 480px) {

	/* ----- 見出し文字 ----- */
	.lyt-panel-a .panel-hdg {
		font-size: 3.3rem;
	}

	/* ----- お問い合わせリンクバナー ----- */

	.lyt-btn-a.contact-btn .btn-b {
		min-width: inherit;
	}

	/* ----- fiトップページ ----- */

	.lyt-col-contact-a.fi-top-contact-a .contact-content {
		top: 44vw;
	}

	.lyt-col-contact-a.fi-top-contact-a .contact-content>p.main-txt {
		font-size: calc(50vw*100/1280)!important;
	}

	.lyt-col-contact-a.fi-top-contact-a .contact-content>p.sub-txt {
		font-size: calc(52vw*100/1280)!important;
	}

	/* ----- 製品：トップバナー ----- */

	.top-bunner .content .top-bunner-left .btn-area {
		margin-top: 0;
	}

	.top-bunner .content .top-bunner-left .btn-area ul {
		justify-content: center;
	}

	.lyt-btn-b.fi-top > li {
		margin-left: 4%;
	}

	.top-bunner .price {
		padding-top: 52%;
	}

	.top-bunner .price p {
		font-size: 63%;
	}

	.lyt-btn-b.fi-top .btn-a {
		width: 100%;
	}

	/* ----- 製品：content ----- */

	.fi-content .lyt-btn-b>li {
		width: 65%;
		margin-left: 60px!important;
	}

	/* ----- fiトップページ バナー ----- */

	.fi-top-bunner .main-txt {
		font-size: 3rem!important;
	}

	/* ----- fiトップページ テキスト01,02,03,04 ----- */

	.fi-top-img-text01 .main-txt {
		font-size: 18px !important;
	}

	.fi-top-img-text02 .main-txt,
	.fi-top-img-text03 .main-txt,
	.fi-top-img-text04 .main-txt {
		font-size: 22px!important;
	}

	.fi-top-img-text05 .main-txt {
		font-size: 20px!important;
	}

	.fi-top-img-text01 .sub-txt,
	.fi-top-img-text02 .sub-txt,
	.fi-top-img-text03 .sub-txt,
	.fi-top-img-text04 .sub-txt,
	.fi-top-img-text05 .sub-txt {
		font-size: 15px!important;
	}

	/* ----- 2020/12/18追加 ----- */

	.fi-content .lyt-btn-b.fi-lyt-btn-b-v2>li {
		width: auto;
		padding-left: 0;
	}

}
