﻿@charset "UTF-8";
 
@import url('https://use.fontawesome.com/releases/v6.1.1/css/all.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap');

/* all */
* {
margin: 0;
padding: 0;
word-break: normal;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}


BODY{
margin:0;
padding:0;
background:#FFF;
color:#000;
font-size: 100.0%;	/* 16pxベース */
line-height:1.6;
letter-spacing:1px;
text-align: center;
font-family:'Noto Serif JP', "メイリオ", Meiryo, sans-serif;
-webkit-text-size-adjust: 100%;	/* iPhone版Safari対策 */
}



* html body {	 /* for IE6 */ 
font-size: 100.0%;	/* 16pxベース */
}
*:first-child+html body { /* for IE7 */
font-size: 100.0%;	/* 16pxベース */
}



/*------ フォントサイズ ------
font-size:62.5%;	10px
font-size:75.0%;	12px
font-size:87.5%;	14px
font-size:100.0%;	16px
font-size:112.5%;	18px
font-size:125.0%;	20px
font-size:137.5%;	22px
font-size:150.0%;	24px
font-size:162.5%;	26px
font-size:175.0%;	28px
font-size:187.5%;	30px
font-size:200.0%;	32px
font-size:212.5%;	34px
font-size:225.0%;	36px
font-size:237.5%;	38px
font-size:250.0%;	40px
-----------------------------*/


IMG{
max-width: 100%;
image-rendering: -webkit-optimize-contrast;
}
IMG,
A IMG{
border:none;
}

P{
margin-top:1.8em;
margin-bottom:1.8em;
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
}

/*--------------------------------------------------------------------
  「レスポンシブ」固有
--------------------------------------------------------------------*/
.pc,
.pc_tablet{
display:inline-block;
}
.block_narrow_pc,
.tablet_sp,
.tablet,
.sp{
display:none;
}
.block_pc{	/* PCの時だけ改行する */
display:block;
}
@media only screen and (min-width:768px) and (max-width:1200px) {	/* 幅の狭いPC用 */
	.block_narrow_pc{	/* 幅の狭いPCの時だけ改行する */
	display:block;
	}
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	IMG{
	width:auto;
	height:auto;
	max-width: 100%;
	}
	.block_tablet_sp{	/* タブレット・スマホの時だけ改行する */
	display:block;
	}
	.block_narrow_pc{
	display:none;
	}
	.block_pc{	/* PCの時だけ改行する */
	display:inline-block;
	}
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	.pc,
	.sp{
	display:none !important;
	}
	.tablet_sp,
	.pc_tablet,
	.tablet{
	display:inline-block !important;
	}
	.block_tablet{	/* タブレット・スマホ横の時だけ改行する */
	display:block;
	}
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	*{
	word-break: break-all;
	}
	.pc_tablet,
	.pc,
	.tablet{
	display:none !important;
	}
	.tablet_sp,
	.sp{
	display:inline-block !important;
	}
	.block_sp{	/* スマホ縦の時だけ改行する */
	display:block;
	}
	.linehalf.block_sp{
	line-height:0.5;
	}
}



.pc_none{
display:none;
}



/*--------------------------------------------------------------------
  「スマホ（横）」「タブレット」固有の設定
--------------------------------------------------------------------*/
@media only screen and (min-width:541px) and (max-width:768px) {
	.pc_none{
	display:inherit;
	}
	.tablet_none{
	display:none;
	}
}


/*--------------------------------------------------------------------
  「スマホ（縦）」固有の設定
--------------------------------------------------------------------*/
@media only screen and (max-width:540px) {
	.pc_none{
	display:inherit;
	}
	.sp_none{
	display:none;
	}
}




/*--------------------------------------------------------------------
リンクテキスト
---------------------------------------------------------------------*/
A{
color:#333;
transition: color 0.3s ease, background 0.5s ease, border-color 0.5s ease, opacity 0.5s ease;
-webkit-transition: color 0.3s ease, background 0.5s ease, border-color 0.5s ease, opacity 0.5s ease;
-moz-transition: color 0.3s ease, background 0.5s ease, border-color 0.5s ease, opacity 0.5s ease;
-o-transition: color 0.3s ease, background 0.5s ease, border-color 0.5s ease, opacity 0.5s ease;
text-decoration:none;
}
.content A:not([class]){
text-decoration:underline;
color:#000;
}
A:VISITED{
color:#666;
}
A:HOVER{
color:#00C;
text-decoration:none;
}


/*------ 外部リンクアイコン ------*/
.content A[href^="http"]::after {
margin-left:0.25em;
content: "\f35d";
font-family: "Font Awesome 6 Free";
font-weight : 900;
text-decoration:none;
display:inline-block;
}
.content A[href*="monec.jp"]::after {	/* 自社リンクは除外 */
content:"";
}


/*--------------------------------------------------------------------
見出し 
---------------------------------------------------------------------*/
H1,H2,H3,H4,H5,H6{
margin:0;
padding:0;
font-size:100.0%;	/* 16px */
border:none;
background:none;
font-weight:normal;
line-height:1.3;
}


/*------------------------------------------------
H2
------------------------------------------------*/
#content_header{
background-size: cover;
-moz-background-size:cover;
-webkit-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
}

/*------ 各コンテンツのヘッダー画像設定 ------*/
#guide #content_header{
background-position:center 30%;
background-image:url(img/h2bg_money.jpg);
}
#lease #content_header{
background-position:center;
background-image:url(img/bg_car.jpg);
}
#flow #content_header{
background-position:center;
background-image:url(img/h2bg_pc.jpg);
}
#information #content_header,
#works #content_header{
background-position:center 70%;
background-image:url(img/road.jpg);
}
#faq #content_header{
background-position:center;
background-image:url(img/h2bg_calc.jpg);
}
#aboutus #content_header{
background-position:center 70%;
background-image:url(img/h2bg_building.jpg);
}
#policy #content_header{
background-position:center 70%;
background-image:url(img/sea.jpg);
}


H2{
margin:0 auto;
}

#content_header H2{
margin:0 auto;
padding:3.0em 2% 2.0em 2%;
font-size:225.0%;	/* 36px */
letter-spacing:0.1em;
color:#FFF;
background:rgba(0,0,51,0.6);	/* #003 */
}



/*------ コンテンツメニュー ------*/
#contentmenu{
margin:0 auto;
padding:0.5em 2% 1.5em 2%;
background:rgba(0,0,0,0.6);
width:100%;
}


#contentmenu.type_table{
display:table;
table-layout: fixed;	/*  LIを均等に分割 */
}

#contentmenu LI{
margin:0 auto;
padding:0;
*zoom: 1;  				/* IE7対策 */
vertical-align:middle;
background:url(img/spacer.gif) no-repeat;
}
#contentmenu.type_table LI{
display:table-cell;
}
#contentmenu.type_inline LI{
display:inline-block;
*display: inline;		/* IE7対策 */
}

#contentmenu A{
padding:1em;
color:#FFF;
border:1px solid #FFF;
text-decoration:none;
background:rgba(0,0,0,0.0);
display:block;
}
#contentmenu.type_table A{
margin:1em;
}
#contentmenu.type_inline A{
margin:0.5em;
}

#contentmenu A:hover{
background:rgba(0,0,0,0.6);
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#content_header H2{
	padding:3.0em 2% 2.0em 2%;
	letter-spacing:1px;
	font-size:187.5%;	/* 30px */
	}
	#contentmenu{
	display:block;
	}
	#content_header{
	background-size:cover;
	-webkit-background-size:cover;
	-moz-background-size:cover;
	-o-background-size:cover;
	-ms-background-size:cover;
	}

}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#contentmenu.type_table LI,
	#contentmenu.type_inline LI{
	display:inline-block;
	*display: inline;		/* IE7対策 */
	width:48%;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#contentmenu.type_table LI,
	#contentmenu.type_inline LI{
	display:block;
	}
}
@media only screen and (max-width:320px) {	/* スマホS縦用 */
	BODY:not(#home) H2{
	font-size:9.0vw;
	}
}


/*------------------------------------------------
   H3
------------------------------------------------*/
H3{
padding:0.5em 0;
font-size:187.5%;	/* 30px */
letter-spacing:2px;
}
/*------ 他要素隣接時 ------*/
*+H3,
H3~H3{
margin-top:3em;
}
H3+H4{
margin-top:1em;
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	H3{
	font-size:175.0%;	/* 28px */
	}
	H3 .tt{
	-ms-writing-mode: lr-tb;	/* 縦書き解除 */
	writing-mode: horizontal-tb;	/* 縦書き解除 */
	}
}
@media only screen and (max-width:320px) {	/* スマホS縦用 */
	H3{
	font-size:8.0vw;
	}
}



/*------------------------------------------------
   H4
------------------------------------------------*/
/*------ H4基本設定 ------*/
#privacypolicy DT,
H4{
margin-bottom:1.0em;
padding:0.5em 0;
font-size:125.0%;	/* 20px */
clear:both;
}
H4.icon SPAN[class^="fa"]{
margin-bottom:0.2em;
}
H4.line{
margin-right:auto;
margin-left:auto;
display:table;
text-align:center;
}
H4.line::before{
margin:-0.2em 0 0 0;
transform :rotate(45deg);
}
H4.line::after{
margin:-0.2em 0 0 0;
transform :rotate(-45deg);
}


/*------ 他要素隣接時 ------*/
*+H4,
H4~H4{
margin-top:3em;
}
ARTICLE H4+P{
margin-top:-0.5em;
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#privacypolicy DT,
	H4{
	font-size:137.5%;	/* 22px */
	}
	H4.icon SPAN[class^="fa"]{
	margin-right:auto;
	margin-bottom:0.2em;
	display:block;
	}
	H4.line{
	font-size:112.5%;	/* 18px */
	}

}
@media only screen and (max-width:320px) {	/* スマホS縦用 */
	#privacypolicy DT,
	H4{
	font-size:7.0vw;
	}

}


/*------------------------------------------------
   H5
------------------------------------------------*/
/*------ H5基本設定 ------*/
ARTICLE H5{
margin:auto auto 0.8em auto;
padding:0.3em;
display:table;
font-weight:normal;
font-size:112.5%;	/* 18px */
}
ARTICLE H5.line{
padding:0;
border-bottom:none;
}

/*------ 他要素隣接時 ------*/
ARTICLE H4+H5{
margin-top:0.5em;
}
ARTICLE H5+*{
margin-top:0.5em;
}

ARTICLE *+H5{
margin-top:3.0em;	/* 各要素と隣接時には上余白を多めに */
}


/*------------------------------------------------
   H6
------------------------------------------------*/
/*------ H6基本設定 ------*/
H6{
margin:1.8em auto 0.2em auto;
padding:0;
font-weight:normal;
font-size:100.0%;	/* 16px */
}

/*------ 他要素隣接時 ------*/
H5+H6{
margin-top:0.5em;
}
H6+P,
H6+UL,
H6+OL,
H6+DL{
margin-top:0.5em;
}
*+H6{
margin-top:2.5em;	/* 各要素と隣接時には上余白を多めに */
}




/*--------------------------------------------------------------------
  画像レイアウト枠
--------------------------------------------------------------------*/
/*------ 1枚・複数共通 ------*/
.photo,
.photos{
text-align:center;
}
.photo IMG,
.photos IMG{
margin:0 auto;
padding:5px 0;
}

/*------ 1枚 ------*/
.photo IMG{
display:block;
}
/*------ 複数 ------*/
.photos IMG{
display:inline-block !important;
vertical-align:middle;
}
.photos IMG:nth-child(n+2){	/* 2個目以降 */
margin-left:10px;
}


@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	.photos BR{
	display:none;
	}
	.photos IMG:nth-child(n+2){	/* 2個目以降 */
	margin-left:10px !important;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.photos IMG:nth-child(n+2){	/* 2個目以降 */
	margin-left:auto;
	display:block;
	}
}


/*------------------------------------------------
  キャプション付き
------------------------------------------------*/
.caption{
text-align:center;
}
.caption IMG{
margin:auto auto 5px auto;
display:block;
}





/*--------------------------------------------------------------------
左寄せ・右寄せ
---------------------------------------------------------------------*/
.text_alignleft{
text-align:left;
}
.text_aligncenter{
text-align:center;
}
.text_alignright{
text-align:right;
}


/*------------------------------------------------
画像の左寄せ・右寄せ
------------------------------------------------*/
.content .aligncenter{
display: block;
margin-left: auto;
margin-right: auto;
}
.content .alignright{
float:right;
margin-left:25px;
}
.content .alignleft{
float:left;
margin-right:25px;
}
.clear{
clear:both;
}
.alignleft+P,
.alignright+P{
margin-top:0;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.content .alignleft,
	.content .alignright{
	margin-right:auto;
	margin-left:auto;
	display:block;
	float:none;
	}
}


/*--------------------------------------------------------------------
  フォントサイズ・色
---------------------------------------------------------------------*/

/*------------------------------------------------
   文字サイズ
------------------------------------------------*/
.extrasmall{
font-size:75.0%;	/* 12px */
}
.small{
font-size:87.5%;	/* 14px */
}
.large{
font-size:125.0%;	/* 20px */
}
.extralarge{
font-size:162.5%;	/* 26px */
}

.normal{
font-weight:normal;
}
STRONG{
font-weight:700;
}

SUP,SUB{
font-size:62.5%;	/* 10px */
}


/*------------------------------------------------
   縦書き
------------------------------------------------*/
.tt{
writing-mode: vertical-rl;	/* 縦書き */
-ms-writing-mode: tb-rl;	/* 縦書き */
-webkit-writing-mode: vertical-rl;	/* ios縦書き */
text-orientation: upright;	/* 数字も縦書き */
text-align:left;
}


/*------------------------------------------------
   強調下線
------------------------------------------------*/
.borderbottom{
border-bottom:1px solid #000;
}
STRONG .borderbottom,
STRONG.borderbottom{
border-bottom:2px solid #000;
}

.double{
border-bottom:4px double #F90;
}

.underline{
display:inline;
background: -prefix-linear-gradient(	/* Webkit系 */
bottom,
rgba(255,153,0,0.5),
rgba(255,153,0,0.5) 34%,
rgba(255,153,0,0) 35%),
url(img/spacer.gif);
background: linear-gradient(	/* オレンジ 12.1、IE 10、Fx 16 以降 */
to top,
rgba(255,153,0,0.5),
rgba(255,153,0,0.5) 34%,
rgba(255,153,0,0) 35%),
url(img/spacer.gif);
}

/*------------------------------------------------
   前後の線
------------------------------------------------*/
.line::before,
.line::after{
margin:-0.2em 10px 0 10px;
content:"";
display:inline-block;
width:50px;
height:1px;
vertical-align:middle;
border-bottom-style:solid;
border-bottom-width:1px;
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.line::before,
	.line::after{
	width:20px;
	}
}

/*------------------------------------------------
   文字色
------------------------------------------------*/
.white{
color:#FFF;
}
.gray{
color:#999;
}

.darkred{
color:#C00;
}
.red{
color:#F03;
}
.blue{
color:#069;
}
.navy{
color:#039;
}
.green{
color:#690;
color:#093;
}
.orange{
color:#F08200;	/* 暗いオレンジ */
}



/*--------------------------------------------------------------------
  リストスタイル
---------------------------------------------------------------------*/
UL{
padding:0;
list-style:none;
}
LI{
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
}

ARTICLE UL{
margin:1.2em 0;
}
ARTICLE UL>LI{
margin-top:0.7em;
margin-bottom:0.7em;
line-height:1.4;
}
ARTICLE UL LI UL LI{
margin-top:0.35em;
margin-bottom:0.35em;
}


/*------------------------------------------------
  ネスト時
------------------------------------------------*/
LI UL,
DD UL,
TD UL{
margin-top:0;
margin-bottom:0.3em;
}

/*------------------------------------------------
  箇条書きリスト
------------------------------------------------*/
UL.list>LI:not([class]),
UL>LI.list{
padding-left:1.3em;
text-indent:-1.3em;
}
UL.list>LI *,
UL>LI.list *{
text-indent:0;
}


LI.list::before,
.list>LI:not([class])::before{
margin:-0.2em 0.4em auto 0.4em;
display:inline-block;
content:"";
border:1px solid #039;
background:#039;
border-radius:50%;
-webkit-border-radius:50%;
-moz-border-radius:50%;
width:5px;
height:5px;
vertical-align:middle;
}



/*------------------------------------------------
  横並びリスト
------------------------------------------------*/
UL.inline{
display:block;
letter-spacing:-1em;	/* 横並びの隙間対策 */
}
UL.inline.table{
display:table;
}
UL.inline>LI{
padding-left:0.6em;
padding-right:0.6em;
display:inline-block;
*display: inline;		/* IE7対策 */
*zoom: 1;  				/* IE7対策 */
vertical-align:middle;
letter-spacing:1px;	/* 横並びの隙間対策 letter-spacing 復活 */
}



UL.inline LI .extralarge{
vertical-align:top;
line-height:1em;
}
UL.inline.nolist LI{
padding-left:0;
}



/*------------------------------------------------
  番号付きリスト
------------------------------------------------*/
OL{
margin:1.2em 0;
padding:0;
}
/*------------------------------------------------
  ネスト時
------------------------------------------------*/
LI OL,
DD OL,
TD OL{
margin-top:0;
margin-bottom:0;
}

OL>LI{
margin-top:1.0em;
margin-bottom:1.0em;
margin-left:2.0em;
line-height:1.3;
list-style-type : decimal;
}
OL>LI OL LI{
margin-top:0.5em;
margin-bottom:0.5em;
}


/*------ 両側に()カッコ ------*/
OL.kakko>LI{
margin-left:0;
padding-left:2.0em;
text-indent: -1.7em;
list-style-type:none;
list-style-position:inside;
counter-increment: cnt;
}
OL.kakko>LI:before{
display: marker;
content: "(" counter(cnt) ") ";
}
OL.kakko>LI OL>LI{
text-indent: -1.2em;
}



/*------------------------------------------------
  説明付きリスト
------------------------------------------------*/
DL{
margin:1.2em 0;
padding:0;
}

H5+DL,	/* H5のすぐ下の時は上余白を少な目に */
LI>DL{	/* ネストする時は上余白を少な目に */
margin-top:0.5em;
}
DT{
margin:0;
padding:0;
}
DD{
margin:0 0 0 1.2em;
padding:0;
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	DD{
	margin:0 0 0 0.2em;
	}
}

DT+DT,
DD+DT{	/* 2番目以降のタイトル行だけ上余白を設ける */
margin-top:1.5em;
}
LI>DL DT+DT,
LI>DL DD+DT{	/* ネストする時は上余白を少な目に */
margin-top:1em;
}



/*------------------------------------------------
  注釈 ※ リスト
------------------------------------------------*/
UL.kome>LI,
LI.kome{
padding-left:1.3em;
text-indent:-1.2em;
line-height:1.3;
}
UL.kome>LI::before,
LI.kome::before{
margin-right:0.1em;
display:inline-block;
content:"※";
color:#F30;
text-indent:0;
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.kome LI{
	text-align:left;
	}
}


/*------------------------------------------------
  PDF・Word・Excel・PowerPoint・ZIP・Imageリスト
------------------------------------------------*/
/*------ 共通 ------*/
UL.pdf>LI,
UL.word>LI,
UL.excel>LI,
UL.powerpoint>LI,
UL.zip>LI,
UL.image>LI,
LI.pdf,
LI.word,
LI.excel,
LI.powerpoint,
LI.zip,
LI.image{
padding-top:0.3em;
padding-left:40px;
background-repeat:no-repeat;
background-position:0 0;
list-style:none;
min-height:32px;
}

/*------ PDFリスト ------*/
UL.pdf>LI,
LI.pdf{
background-image:url(img/pdf.png);
}

/*------ Wordリスト ------*/
UL.word>LI,
LI.word{
background-image:url(img/word.png);
}

/*------ Excelリスト ------*/
UL.excel>LI,
LI.excel{
background-image:url(img/excel.png);
}

/*------ PowerPointリスト ------*/
UL.powerpoint>LI,
LI.powerpoint{
background-image:url(img/pp.png);
}

/*------ Imageリスト ------*/
UL.image>LI,
LI.image{
background-image:url(img/image.png);
}
/*------ ZIPリスト ------*/
UL.zip>LI,
LI.zip{
background-image:url(img/zip.png);
}

/*------ PDFリスト（小） ------*/
A.pdf_s,
UL.pdf_s>LI,
LI.pdf_s{
padding-left:20px;
list-style:none;
background-image:url(img/pdf.png);
background-repeat:no-repeat;
background-position:0 0.2em;
background-size:16px 16px;
-webkit-background-size:16px 16px;
-moz-background-size:16px 16px;
-o-background-size:16px 16px;
-ms-background-size:16px 16px;
}
A.pdf_s{
display:inline-block;
}


/*--------------------------------------------------------------------
  表
---------------------------------------------------------------------*/
TABLE{
margin-top:25px;
margin-bottom:25px;
font-size:100%;
}

TH{
text-align:center;
font-weight:normal;
font-size:100%;
}
TD{
font-size:100%;
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
}
TH>*,
TD>*{
margin-top:0;
margin-bottom:0;
}
TH>*~*,
TD>*~*{
margin-top:5px;
}

/*------------------------------------------------
  罫線を表示するタイプの表
------------------------------------------------*/
TABLE.data_table{
border-collapse:collapse;
border-bottom:1px solid #666;
line-height:1.2;
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	TABLE.data_table,
	TABLE.color_table{
	width:100%;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	TABLE.data_table,
	TABLE.color_table{
	width:100%;
	}
}

TABLE.data_table CAPTION{
text-align:right;
}
THEAD{
border-top:1px solid #666;
}
.data_table TH{
padding:0.5em 10px;
text-align:center;
background:#FFF;
}
.data_table TD{
padding:10px;
border-top:1px solid #DCDCDC;
background:#FFF;
}
.data_table TBODY TR:first-child TD{
border-color:#666;
}



/*------------------------------------------------
  スマホ表示時にセルをスライドさせるタイプの表
------------------------------------------------*/
TABLE.float_table{
}

@media only screen and (min-width:541px) and (max-width:768px) {
	TABLE.float_table{
	width:100%;
	}
}
.float_table TH{
}
.float_table TD{
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	TABLE.float_table{
	border-top:none;
	border-right:none;
	}
	.float_table TH,
	.float_table TD{
	padding-right:3%;
	padding-left:3%;
	float:left;
	width:94%;
	}
	.float_table TH{
	border-top:1px solid #999;
	border-right:1px solid #999;
	border-bottom:1px solid #999;
	border-left:none;
	}
	.float_table TD{
	border-top:none;
	border-right:1px solid #999;
	border-bottom:none;
	border-left:none;
	}
	.data_table.float_table TR:nth-child(odd),	/* 奇数行に着色 */
	.color_table.float_table TR:nth-child(odd){	/* 奇数行に着色 */
	background:none;
	}
	.color_table.float_table TH,
	.color_table.float_table TD{
	border:none;
	}
}


/*------------------------------------------------
  スマホ表示時にセルをスライドさせるタイプの表(WIDE)
------------------------------------------------*/

.float_table_wide SPAN.t_label{
display:none;
}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.data_table.float_table_wide{
	border-top:none;
	border-right:none;
	border-left:none;
	}

	.float_table_wide THEAD{
	display:none;
	}
	.float_table_wide TBODY TD{
	padding:0 10px 10px 10px;
	display:block;
	border-top:none;
	border-bottom:none;
	}
	.float_table_wide TH SPAN.t_label{
	margin-right:1em;
	display:inline-block;
	font-size:87.5%;
	}
	.float_table_wide TD SPAN.t_label{
	margin:0 -10px 10px -10px;
	padding:5px 10px;
	display:block;
	border-top:1px solid #999;
	background:#DCDCDC;
	}
	.float_table_wide TD~TD SPAN.t_label{
	border-top:none;
	}
}




/*------------------------------------------------
  テーブルレイアウト
------------------------------------------------*/
DIV.island,
TABLE.island,
UL.island,
OL.island,
DL.island{
margin-right:auto !important;	/* インデントリセット */
margin-left:auto !important;	/* インデントリセット */
display: table;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	DIV.island,
	TABLE.island,
	UL.island,
	OL.island,
	DL.island{
	margin-right:0 !important;
	margin-left:0 !important;
	}
}







/*--------------------------------------------------------------------
  「トップページ」固有の設定
---------------------------------------------------------------------*/
/*------------------------------------------------
  トップページ スライド欄
------------------------------------------------*/

/*-----------------------------------------------
  トップページ「PR欄」共通
------------------------------------------------*/
.top_pr{
width:100%;
}
.top_pr>*{
margin-right:auto;
margin-left:auto;
}
.top_pr H3{
padding:0;
font-size:300.0%;	/* 48px */
line-height:1.1;
}
.top_pr H3 .small{
font-size:66.7%;	/* 32px */
}
.top_pr H3 .extrasmall{
font-size:58.3%;	/* 28px */
}

.top_pr H4{
border-bottom:none;
}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.top_pr.lv1{
	padding:4em 0;
	}
	.top_pr P{
	text-align:left;
	}
	.top_pr P BR{
	display:none;
	}
	.top_pr H3{
	font-size:175.0%;	/* 28px */
	font-size:28px;	/* 16px */
	}
	.top_pr H3 .extrasmall{
	font-size:57.14%;	/* 16px */
	}


}


/*-----------------------------------------------
  トップページ「PR欄」メインタイトル
------------------------------------------------*/
#mainvisual{
background:#FFF url(img/sea.jpg) no-repeat center;
/* background-attachment:fixed; */

background-size:cover;
-webkit-background-size:cover;
-moz-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
height:600px;
width:100%;
position:relative;

animation-name: scrolling;
animation-duration: 10s;
animation-timing-function: linear;
/* animation-iteration-count: infinite;*/
}
@keyframes scrolling {	/* 海画像 水平線が下から上へ */
	0% {
	background-position: center top;
	}
	100% {
	background-position: center center;
	}
}

#mainvisual H2{
padding:3.0em 0;
position:absolute;
transform : translate(0, -50%);
top:50%;
left:2%;
font-size:300.0%;	/* 48px */
color:#FFF;
text-shadow: 0.05em 0.05em 0.1em rgba(0,0,0,0.3);
width:96%;
}

#mainvisual .text{
padding:1.0em 0;
display:block;
font-size:50.0%;	/* 24px */
line-height:2.0;
}
#mainvisual .inline{
white-space: nowrap;
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#mainvisual{
	height:auto;
	position:static;
	}
	#mainvisual H2{
	position:static;
	transform : translate(0, 0);
	}

}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#mainvisual H2{
	font-size:225.0%;	/* 36px */
	}

}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#mainvisual H2{
	font-size:7.5vw;
	}
	#mainvisual .text{
	font-size:60.0%;
	line-height:1.5;
	}

}

@media only screen and (max-width:360px) {	/* スマホS縦用 */
	#mainvisual H2{
	font-size:7vw;
	}

}



/*-----------------------------------------------
  トップページ「PR欄」資金調達でのお悩み
------------------------------------------------*/
#top_guide .check_list{
padding:3.0em 1.0em;
}
#top_guide .check_list LI{
line-height:1.2;
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#top_guide>DIV{
	margin-top:2.0em;
	}

	#top_guide .check_list{
	padding:0.5em 1.0em;
	font-size:112.5%;	/* 18px */
	}
}
/*-----------------------------------------------
  トップページ「PR欄」資金調達のプロにお任せ
------------------------------------------------*/
#top_merit.photobg{
padding-bottom:0;
background-image:url(img/bg_map.jpg);
z-index:1;
}
#top_merit.photobg::before{	/* オレンジフィルター */
content:"";
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
background:rgba(246,222,199,0.8);
z-index:2;
}
#top_merit.photobg::after{	/* 白 */
content:"";
position:absolute;
left:0;
bottom:0;
width:100%;
height:30%;
background:#FFF;
z-index:3;
}
#top_merit.photobg *{
position:relative;
z-index:4;
}

#top_merit .content{
padding:4.0em 2.0em;
}
#top_merit01 H3{
margin:0 auto 1.5em auto;
}
#top_merit ARTICLE RT{	/* ルビ */
font-size:29.2%;	/* 14px */
}
/*------ メリット01～03 ------*/
#pr_list{
font-size:175.0%;	/* 28px */
width:100%;
}
@media only screen and (min-width:769px) and (max-width:900px) {	/* 狭いPC用 */
	#pr_list{
	font-size:162.5%;	/* 26px */
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#pr_list01{
	width:100%;
	}
	#pr_list02,
	#pr_list03{
	margin:2.0em auto auto auto;
	}
}

#pr_list DIV{	/* 月桂冠 */
margin-bottom:0.5em;
padding-bottom:1.0em;
background-image:url(img/laurel_bg.png);
background-repeat:no-repeat;
background-position:center bottom;
background-size: contain;
-moz-background-size:contain;
-webkit-background-size:contain;
-o-background-size:contain;
-ms-background-size:contain;
}
#lease #pr_list DIV{
background-image:url(img/ribbon_bg.png);
background-position:center;
padding-bottom:1.5em;
}
#pr_list DIV>SPAN{
margin:auto;
display:table;
}
#pr_list SPAN.small{	/* お悩み解決 */
letter-spacing:0;
font-size:50.0%;	/* 14px */
text-align:center;
}
#pr_list SPAN.extralarge{	/* 01～03 */
color:#039;
font-size:214.3%;	/* 60px */
}

/*------ 誰に相談していますか？ ------*/
#top_merit02{
}
#top_merit02 H4{
font-size:175.0%;	/* 28px */
}

/*------ 2つのボタン ------*/
#top_merit_navi{
table-layout:fixed;
border-collapse: separate;
border-spacing:1.0em 1.0em;	/* 前の数字：横方向　後ろの数字 縦方向 */
width:100%;
max-width:980px;
}
#top_merit_navi>LI{
display:table-cell;
}
#top_merit_navi .link_large{
width:100%;
}
#top_merit_navi .extrasmall{
display:block;
}

@media only screen and (min-width:651px) and (max-width:768px) {	/* スマホ横用※ */
	#top_merit_navi{
	border-spacing:0 1.0em;	/* 前の数字：横方向　後ろの数字 縦方向 */
	}
	#top_merit_navi .link_large{
	width:98%;
	}
}
@media only screen and (max-width:650px) {	/* スマホ縦用※ */
	#top_merit_navi{
	border-spacing:0 0;
	}
	#top_merit_navi>LI{
	display:block;
	}
	#top_merit_navi .link_large.arrow{
	padding-right:0.2em;
	padding-left:0.2em;
	}
	#top_merit_navi .link_large.arrow::after{
	top:2.2em;
	right:-0.5em;
	}

}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#top_merit .content{
	padding:2.0em 1.0em;
	}
	#top_merit ARTICLE RT,	/* ルビ */
	#pr_list SPAN.small{
	font-size:57.14%;	/* 16px */
	}
	#lease #pr_list P.small{
	font-size:64.3%;	/* 18px */
	text-align: justify;
	}

	#top_merit01 HEADER P .inline{
	display:inline;
	}

	#top_merit02 H4{
	font-size:6vw;	/* 22px */
	}
}
@media only screen and (max-width:320px) {	/* スマホS縦用 */
	#top_merit_navi .link_large.arrow{
	font-size:7vw;	/* 22px */
	}
}

/*-----------------------------------------------
  トップページ「PR欄」リースバック
------------------------------------------------*/
#top_leaseback H3{
}
#top_leaseback H3::after{
margin:50px auto 30px auto;
content:"";
display:block;
width:100%;
height:200px;
background-image:url(img/leaseback_image_s.png);
background-position:center;
background-repeat:no-repeat;
background-size: contain;
-moz-background-size:contain;
-webkit-background-size:contain;
-o-background-size:contain;
-ms-background-size:contain;
}


#top_leaseback H4{
font-size:175.0%;	/* 28px */
}
#top_leaseback H4 .extrasmall{	/* 必要に迫られてでなく */
margin:0 auto 0.5em auto;
display:block;
line-height:1.8;
}
/*------ 3つの選択肢 ------*/
OL#top_leaseback_list.autonumbering{
margin-bottom:2.0em;
}
OL#top_leaseback_list.autonumbering>LI{
margin:2px 0;
padding:0.8em 1.0em 0.5em 4.0em;
line-height:1.5;
text-align:left;
}
OL#top_leaseback_list.autonumbering>LI::before{
top:0.6em;
right:auto;
left:1.0em;
}
#top_leaseback_list01,
#top_leaseback_list03{
background:#F5F5F5;
}
#top_leaseback_list02{
background:#FC9;
}
#top_leaseback_list01::before,
#top_leaseback_list03::before{
background:#999;
}
#top_leaseback_list .extrasmall{
margin-top:0.5em;
line-height:1.2;
display:block;
}


/*------ 3つの選択肢 解説------*/
[id^="top_leaseback_choice0"]{
margin-right:auto;
margin-bottom:3.5em;
margin-left:auto;
padding-bottom:0.5em;
display:table;
text-align:left;
}
#top_leaseback_choice01{	/* 黒板風 */
padding:2.5em 0.5em 1.5em 0.5em;
border-width:2px 2px 10px 2px;
border-style:solid;
border-color:#DEB887;	/* BurlyWood（黒板フチ） */
background:#2F4F4F;	/* DarkSlateGray（黒板） */
}
#top_leaseback_choice01 .darkred{
color:#FFB6C1;
}
#top_leaseback_choice01 .green{
color:#90EE90;
color:#9F9;
}
#top_leaseback_choice0101 .borderbottom,
#top_leaseback_choice0103 .borderbottom{
border-color:#FFF;
}
#top_leaseback_choice0102 .borderbottom{
border-color:#FF3;
}
#top_leaseback_choice0101 .number,
#top_leaseback_choice0103 .number{
background:#FFF;
color:#030;
}
#top_leaseback_choice0102 .number{
background:#FF3;
color:#030;
}


#top_leaseback_choice01::before{
margin:-1.3em 0 auto 0.5em;
padding:0 0.5em;
content:"解説";
display:table;
background:#F90;
}
#top_leaseback_choice01 LI{
margin:1.0em;
}
.flow:not(.merit)>LI::after,
[id^="top_leaseback_choice0"]::after{	/* ▼ */
content:"";
width:0;
height:0;
position:absolute;
transform : translate(-50%, 0);
bottom:-2.5em;
left:50%;
border-style: solid;
border-color: #F90 transparent transparent transparent;
border-width: 1.5em 1.5em 0 1.5em;
}
.flow>LI:last-child::after{
display:none;
}


#top_leaseback .number{
margin-right:0.25em;
}
#top_leaseback .link_large{
width:100%;
max-width:480px;
}
@media only screen and (max-width:900px) {	/* 狭いPC以下縦用 */
	#top_leaseback.flexbox.part4-6>*:nth-child(1){	/* 縦書きの見出し */
	width:100%;
	}
	#top_leaseback.flexbox.part4-6>*:nth-child(2){
	width : -webkit-calc(100% - 20px) ;
	width : calc(100% - 20px);
	}
	#top_leaseback H3 .tt{
	writing-mode: horizontal-tb;	/* 縦書き解除 */
	-ms-writing-mode: lr-tb;	/* 縦書き解除 */
	-webkit-writing-mode: horizontal-tb;	/* ios縦書き */

	}

}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#top_leaseback H4 .extrasmall{	/* 必要に迫られてでなく */
	font-size:64.3%;	/* 18px */
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#top_leaseback H3::after{
	margin:20px auto;
	}
	#top_leaseback H4{
	font-size:137.5%;	/* 22px */
	}
	OL#top_leaseback_list.autonumbering>LI{
	padding:0.8em 0.2em 0.8em 2.5em;
	}
	OL#top_leaseback_list.autonumbering>LI::before{
	left:0.2em;
	}
	#top_leaseback_choice01 LI{
	margin:1.0em 0;
	}

}

/*-----------------------------------------------
  トップページ「PR欄」「担保融資」と「リースバック」
------------------------------------------------*/
#top_collateral{
margin:auto auto 6.0em auto;
padding:3.0em 1.0em;
background-image:url(img/bg_car.jpg);
background-attachment:fixed;
z-index:2;
}
html.ios #top_collateral{
background-attachment:scroll;
}
#top_collateral::before{	/* 白フィルター */
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(255,255,255,0.8);
z-index:2;
}
#top_collateral H3{
display:table;
}
#top_collateral_q{	/* どう違うの？ */
top:-2.5em;
left:-2.0em;
width:8.0em;
line-height:2.0em;
transform :rotate(-3deg);
color:#FFF;
background:rgba(255,153,0,0.8);	/* #F90 */
font-size:50%;
}
#top_collateral ARTICLE H4+H5{
margin-top:0;
}
#top_collateral>*{
position:relative;
z-index:3;
}
#top_collateral H5 SPAN{
margin-right:0.2em;
background:rgba(255,255,255,0.9);
border-radius:50%;
-webkit-border-radius:50%;
-moz-border-radius:50%;
width:3.0em;
line-height:3.0em;
display:inline-block;
}

#top_collateral_item{
margin-bottom:5.0em;
}
#top_collateral_item>LI P{
text-align:left;
}
#top_collateral .link_large{
max-width:480px;
display:block;
}
#top_collateral .link_large .extrasmall{
display:block;
}
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#top_collateral{
	margin:-3.0em auto 3.0em auto;
	padding:3.0em 0 1.0em 0;
	}
}

@media only screen and (max-width:600px) {	/* スマホ縦用※ */
	#top_collateral H3 SPAN{
	display:block;
	}
	#top_collateral H3 SPAN SPAN{
	margin-top:0.5em;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */

	#top_collateral H3>#top_collateral_q{
	font-size:65%;
	}
	#top_collateral H3>SPAN{
	font-size:100%;
	}
}




/*-----------------------------------------------
  トップページ「PR欄」成功事例
------------------------------------------------*/
#top_works HEADER{
padding:4.0em 1.0em 0.5em 1.0em;
}
#top_works .photobg{
padding-bottom:20.0vh;	/* 背景画像を見せる */
z-index:1;
}
#top_works .photobg>*{
position:relative;
z-index:4;
}
#top_works .photobg::before,
#top_works .photobg::after{
content:"";
display:block;
width:100%;
position:absolute;
}

#top_works .photobg::before{
margin-bottom:-100px;
height:100px;
background:#036;
z-index:3;
}
#top_works .photobg::after{
height : -webkit-calc( 100% - 100px ) ;
height : calc( 100% - 100px );
bottom:0;
z-index:2;
background-image:url(img/road.jpg);
background-repeat:no-repeat;
animation-name: scrolling2;
animation-duration: 5s;
animation-timing-function: linear;
background-position:45% center;
background-size:auto 120%;
}
@keyframes scrolling2 {	/* 道路画像 じわじわ拡大しながら下から上へ */
	0% {
	background-position:45% bottom;
	background-size:auto 100%;
	}
	100% {
	background-position:45% center;
	background-size:auto 120%;
	}
}
#works_list.flexbox{
justify-content: space-between;
}
#top_works #works_list.flexbox{
margin-bottom:5.0em;
}

#works_list LI{
margin-top:15px;
width : -webkit-calc( ( 100% - 15px ) / 2 ) ;
width : calc( ( 100% - 15px ) / 2 );
background:rgba(255,255,255,0.9);
text-align:left;
}

#works_list LI ARTICLE{
padding:0;
}

@media only screen and (min-width:1150px) {	/* 幅の広いPC用 */
	#top_works .photobg{
	padding-bottom:30.0vh;	/* 背景画像を見せる */
	}
	#works_list LI{
	width:24%;
	}
	#top_works .photobg::after{
	background-position:35% center;
	background-size:120% auto;
	}
	@keyframes scrolling2 {	/* 道路画像 じわじわ拡大しながら下から上へ */
		0% {
		background-position:35% bottom;
		background-size:100% auto;
		}
		100% {
		background-position:35% center;
		ackground-size:120% auto;
		}
	}
}


@media only screen and (max-width:600px) {	/* スマホ縦用※ */

	#top_works .photobg::before{
	display:none;
	}
	#top_works .photobg::after{
	height:80vh;
	}
	#works_list LI{
	width:100%;
	}
	#works_list LI P{
	text-align: justify;
	}

}
@media only screen and (max-width:541px) {	/* スマホ縦用 */
	#top_works P .inline{
	display:inline;
	}

}
#top_works H3 .extrasmall{
font-size:50%;	/* 24px */
}
#works_list H4{	/* 業種 */
padding:1.5em;
font-size:100.0%;	/* 16px */
background-repeat:no-repeat;
background-position:right -10px bottom;
}
#top_works #works_list H4{
background-color:#FFF;
}
#works_list H4 .price{	/* 調達金額 */
font-size:187.5%;	/* 30px */
color:#039;
}
#works_list H4 .price .extrasmall{	/* 万円 */
margin:0 0.25em;
font-size:66.7%;	/* 20px */
display:inline-block;
}
#works_list H4+P{
margin-top:0;
}
.type_unsou{
background-image:url(img/bg_unsou.png);
}
.type_shop{
background-image:url(img/bg_shop.png);
}
.type_food{
background-image:url(img/bg_food.png);
}
.type_oroshi{
background-image:url(img/bg_oroshi.png);
}
.type_kenchiku{
background-image:url(img/bg_kenchiku.png);
}
.type_seizou{
background-image:url(img/bg_seizou.png);
}
.type_fudousan{
background-image:url(img/bg_fudousan.png);
}
#works_list LI P{
padding-right:1.5em;
padding-left:1.5em;
}

#top_works .link_large{
max-width:480px;
display:block;
width : -webkit-calc( 100% - 30px ) ;
width : calc( 100% - 30px );
}
#top_works .link_large .extrasmall{
display:block;
}





@media only screen and (max-width:320px) {	/* スマホS縦用 */

}



/*-----------------------------------------------
  トップページお知らせ欄
------------------------------------------------*/
#home #news{
margin:auto;
padding:4.0em 0 3.0em 0;
}
#home #news ARTICLE{
margin:0 auto 1px auto;
padding:0;
text-align:left;
line-height:1.3;
position:relative;
width:100%;
display:table;
z-index:1;
}
#home #news ARTICLE A,
#home #news ARTICLE.nolink{	/* リンクが無いとき */
padding:1.0em 2.0em 0.9em 2.0em;
background:#DCDCDC;
}
#home #news ARTICLE A{
display:block;
color:#000;
z-index:2;
}
#home #news ARTICLE A:hover{
background:#FFF;
color:#039;
}
#home #news .date,
#home #news .contents{
text-align:left;
display:table-cell;
vertical-align:top;
}
#home #news .date{
font-size:87.5%;	/* 14px */
width:8.0em;
}
#home #news .contents{
width : -webkit-calc( 100% - 8.5em ) ;
width : calc( 100% - 8.5em );
}
/*--- NEWアイコン ---*/
#home #news ARTICLE.new::before{
padding:0 0.3em;
line-height:1.8;
content:"NEW";
position:absolute;
top:1.6em;
left:-1.3em;
font-size:62.5%;	/* 10px */
color:#FFF;
background:#F90;
z-index:3;
}
/*--- 一覧ALL ---*/
#home #news DIV>A.link_small{
display:table;
margin:0.5em 0 0 auto;
color:#FFF;
border:none;
background:transparent;
}
.opa:hover{
opacity:0.7;
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#home #news .date,
	#home #news .contents{
	display:block;
	width:100%;
	}
	#home #news .contents{
	padding-top:0.5em;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#home #news ARTICLE A,
	#home #news ARTICLE.nolink{	/* リンクが無いとき */
	padding:1.2em 1.0em;
	}
	#home #news ARTICLE.new::before{
	top:0.2em;
	left:-0.3em;
	}
	#home #news ARTICLE A.arrow::after{
	top:auto;
	bottom:0.2em;
	right:0.2em;
	}

}



/*--------------------------------------------------------------------
  「資金調達について」固有の設定
--------------------------------------------------------------------*/
/*------------------------------------------------
  チェックリスト
------------------------------------------------*/
#guide_consultation .check_list{
padding:1.0em 1.5em 1.0em 1.0em;
width : -webkit-calc(100% - 2.0em);
width : calc(100% - 2.0em);
}
#guide_consultation .check_list::after{
content:"Etc…";
}
.check_list.orangebg LI::before{
color:#F30;
}
#guide_consultation .check_list>LI.photobox{
margin:0 auto;
padding:0;
height:1px;
text-align:center;
}

#guide_consultation .check_list IMG{
margin:1.0em -3.0em 1.0em 1.0em;
width:50%;
float:right;
display:block;
}
#guide_consultation .check_list>LI.photobox+LI{
margin-top:0;
}

#guide_consultation .check_list>LI.photobox::before{
display:none;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#guide_consultation SECTION{
	text-align:left;
	}
	#guide_consultation .check_list{
	padding:1.0em;
	width : 100%;
	}
	#guide_consultation .check_list>LI.photobox{
	padding:0.5em 0;
	height:auto;
	}

	#guide_consultation .check_list IMG{
	margin:0 auto;
	width:100%;
	float:none;
	}
	#guide_consultation .check_list>LI.photobox+LI{
	margin-top:0.8em;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#guide_consultation H3{
	font-size:22px;	/* 18px */
	}
	#guide_consultation H4{
	font-size:112.5%;	/* 18px */
	}
	#guide_consultation .check_list{
	padding:0.5em 0.4em 0.5em 0.5em;
	font-size:112.5%;	/* 18px */	
	}

}
@media only screen and (max-width:320px) {	/* スマホS縦用 */
	#guide_consultation H4{
	font-size:5.5vw;
	}
}


/*------------------------------------------------
  チャート
------------------------------------------------*/
#guide_chart .number{
background:#039;
color:#FFD700;
}
#guide_chart UL.flexbox LI{
text-align:left;
}
/*------ TypeA ------*/
#guide_chart_atype{
margin:auto auto -0.8em auto;
display:table;
z-index:2;
}
#guide_chart_a{
border:1px solid #036;
}
/*------ TypeB～G ------*/
#guide_chart_b{
padding-top:1.5em;
}
#guide_chart_b>LI{
padding:1.0em;
border:1px solid #036;
}

@media only screen and (min-width:591px) and (max-width:768px) {	/* スマホ横用 */
	UL.item.part4#guide_chart_a>LI:nth-child(n+3){	/* 3番目以降 */
	margin-top:0;
	}

}

@media only screen and (min-width:591px) {	/* スマホ縦用以外 */
	.scroll_guide{	/* チャート図の右端はスワイプしてご覧ください。 */
	display:none;
	}
}
@media only screen and (max-width:590px) {	/* スマホ縦用 */
	.scroll{
	overflow-x: scroll;
	}
	.scroll IMG{
	max-width: 720px;	/* 900pxの80% */
	}
	#guide_chart_a{
	padding-bottom:1.5em;
	}
	#guide_chart_a>LI{
	padding:0 1.0em;
	}
}



/*--------------------------------------------------------------------
  「リースによる資金調達」固有の設定
--------------------------------------------------------------------*/
#lease_guide H3 .extrasmall{
margin-top:0.5em;
line-height:1.3;
display:block;
}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#lease_guide H3 .extrasmall{
	font-size:60%;
	}
}



/*--------------------------------------------------------------------
  「実績紹介」固有の設定
--------------------------------------------------------------------*/
#works MAIN ARTICLE:first-of-type .content:first-child{
padding-top:0;
}
#works #works_list.flexbox{
width:100%;
}
#works #works_list H4{
background-color:rgba(153,204,255,0.1);	/* #9CF */
}
#works #works_list.flexbox>LI{
background:rgba(153,204,255,0.05);	/* #9CF */
}

/*--------------------------------------------------------------------
  「ご利用の流れ」固有の設定
--------------------------------------------------------------------*/
.flow.autonumbering{
margin:auto;
padding:0;
max-width:900px;
}
.flow.autonumbering>LI{
margin:0 auto;
padding:1.5em 1.5em 1.5em 6.0em;
width:auto;
position:relative;
display:block;
background:rgba(153,204,255,0.1);	/* #9CF */
text-align:left;
}
.flow.merit.autonumbering>LI{
background:#FFE4C4;	/* Bisque */
}
.flow.autonumbering>LI+LI{
margin-top:3.25em;
}
.flow.merit.autonumbering>LI+LI{
margin-top:1.0em;
}

.flow.autonumbering>LI::before{
margin:0;
padding-top:0.75em;
display: marker;
content: "0"counter(cnt) ;
border-right:1px solid #039;
color:#039;
font-size:200.0%;	/* 32px */
width:2.2em;
text-align:center;
position:absolute;
left:0.2em;
top:0.5em;
bottom:0.5em;
}
.flow.merit.autonumbering>LI::before{
border-right:1px solid #F60;
color:#F60;
}

.flow>LI .title{
margin:0 0 0.5em 0;
display:block;
font-size:125.0%;	/* 20px */
position:relative;
}
.flow.autonumbering>LI .title::before{
font-size:70.0%;	/* 14px */
content:"STEP";
position:absolute;
top:0;
left:-5.3em;
color:#039;
letter-spacing:2px;
}
.flow.merit.autonumbering>LI .title::before{
color:#F60;
content:"メリット";
left:-5.9em;
letter-spacing:0;
}
.flow.autonumbering LI>P{
margin:0 auto;
line-height:1.5;
}

/*------ ▼ は id^="top_leaseback_choice0 と同じ ------*/
@media only screen and (max-width:620px) {	/* スマホ横以下用* */
	.flow.autonumbering LI LI{
	display:table;
	}
}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.flow.autonumbering>LI{
	padding:0.5em 0.5em 0.5em 0.5em;
	}
	.flow.autonumbering>LI::before{
	padding:0 0 0.1em 1.6em;
	margin-bottom:0.3em;
	border-right:none;
	border-bottom:1px solid #039;
	position:static;
	display:block;
	width:auto;
	text-align:left;
	}
	.flow.merit.autonumbering>LI::before{
	padding:0 0 0.1em 2.0em;
	border-right:none;
	border-bottom:1px solid #F90;
	}

	.flow.merit.autonumbering>LI .title::before,
	.flow.autonumbering>LI .title::before{
	top:-2.6em;
	left:0;
	}
}



/*--------------------------------------------------------------------
  「よくある質問」固有の設定
--------------------------------------------------------------------*/
DL.faq{
margin-right:auto;
margin-left:auto;
max-width:900px;
}
DL.faq * {	/* クリック展開するときにカクカクするのを防ぐ */
box-sizing: content-box;
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
}

DL.faq.autonumbering>DT{
padding:0.5em;
line-height:1.3;
}

DL.faq.autonumbering>DT::before{
padding:0.4em 0 0.3em 0;
content: "Q"counter(cnt);
width:2.2em;
line-height:1.5;
font-size:100%;
background:#039;
}
DL.faq.autonumbering>DD{
margin-left:2.5em;
padding:1.5em;
background:rgba(255,153,0,0.2);	/* #F90 */
}

DL.faq.autonumbering>DD>*{
margin-top:0;
margin-bottom:0;
}
DL.faq.autonumbering>DD>*+*{
margin-top:1.5em;
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	DL.faq.autonumbering>DD{
	padding:1.0em;
	}
}
@media only screen and (max-width:590px) {	/* スマホ縦用 */
	DL.faq.autonumbering>DT::before{
	right:auto;
	left:0;
	top:0;
	}
	DL.faq.autonumbering.accordion>DT{
	margin-left:0;
	padding-top:2.5em;
	}
	DL.faq.autonumbering>DD{
	margin-left:0;
	}

}

/*------------------------------------------------
  アコーディオン JavaScriptと併用
------------------------------------------------*/
DL.faq.autonumbering.accordion>DT{
padding-right:2.5em;
cursor:pointer;
transition : border 0.5s;
border-bottom:1px solid #FFF;
}
DL.faq.autonumbering.accordion>DT:hover{
border-color:#999;
}

DL.faq.autonumbering.accordion>DT::after{
position:absolute;
right:0.5em;
font-family: "Font Awesome 6 Free";
font-weight : 900;
content:"\f107";
color:#F90;
}
DL.faq.autonumbering.accordion>DT.open::before{
background:#F90;
transition : background 0.5s;
}
DL.faq.autonumbering.accordion>DT.open::after{
content:"\f106";
color:#333;
}

DL.faq.autonumbering.accordion>DD{
margin-top:0.5em;
margin-bottom:2.0em;
display:none;
}


/*--------------------------------------------------------------------
  「会社概要」固有の設定
--------------------------------------------------------------------*/
/*------------------------------------------------
  アクセスマップ
  Google Map
------------------------------------------------*/
IFRAME#googlemap{
margin:auto;
display:block;
width:100%;
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#access P{
	text-align:left;
	}
	IFRAME#googlemap{
	height:350px;
	}
}



/*--------------------------------------------------------------------
  「個人情報保護方針 プライバシーポリシー」固有の設定
--------------------------------------------------------------------*/
#privacypolicy SECTION.text{
max-width:900px;
}
#privacypolicy H3{
font-size:125.0%;	/* 20px */
}
#privacypolicy H3+*,
#privacypolicy H4+*{
margin-top:0;
}
#privacypolicy H4{
margin-left:0;
display:table;
font-size:112.5%;	/* 18px */
text-align:left;
border-bottom:1px solid #039;
}

/*--------------------------------------------------------------------
  「お知らせ」固有の設定
--------------------------------------------------------------------*/
#information H3+.date{
margin-left:auto;
margin-right:auto;
display:block;
max-width:900px;
color:#039;
}


/*--------------------------------------------------------------------
  「コンテンツ」固有の設定
--------------------------------------------------------------------*/

/*------------------------------------------------
  OLリスト 自動ナンバリング + 丸数字
------------------------------------------------*/
OL.autonumbering{
list-style-position:inside;
}
DL.autonumbering>DT,
OL.autonumbering>LI{
margin-left:2.5em;
padding-top:0.3em;
padding-bottom:0.3em;
padding-left:0.5em;
counter-increment: cnt;
list-style-type:none;
position:relative;
}

DL.autonumbering>DT::before,
OL.autonumbering:not(.flow)>LI::before{
padding:0.2em 0 0.3em 0;
background:#F90;
color:#FFF;
width:1.5em;
line-height:1.0;
text-align:center;
border-radius:50%;
-webkit-border-radius:50%;
-moz-border-radius:50%;
font-size:125.0%;	/* 20px */
letter-spacing:0;
right:100%;
top:0;
display: marker;
content: counter(cnt);
position:absolute;
}


/*-----------------------------------------------
  flexbox レイアウトをレスポンシブで可変
------------------------------------------------*/
FOOTER .flexbox,
MAIN .flexbox{
margin:auto;
display : -webkit-box;     /* old Android */
display : -webkit-flex;    /* Safari etc. */
display : -ms-flexbox;     /* IE10        */
display : flex;
-webkit-flex-wrap: wrap;          /* Safari etc. */
-ms-flex-wrap    : wrap;          /* IE10        */
flex-wrap        : wrap;
align-items: stretch;	/* 子要素の高さを揃える */
justify-content:center;	/* 左右中央揃え（センタリング） */
}
.flexbox.startalign{
align-items: flex-start;	/* 子要素の高さを揃えず上に付ける */
}
.flexbox.center{
align-items: center;	/* 子要素の高さを揃えず天地中央に置く */
}

.flexbox.start{
justify-content:flex-start;	/* 左揃え（初期値） */
}
.flexbox.end{
justify-content:flex-end;	/* 右揃え */
}

/*-----------------------------------------------
  ふわっと表示　じわじわ(with JavaScript)
------------------------------------------------*/
.effect-fade {
opacity : 0;
transition : opacity 1500ms;
}
.effect-move{
opacity : 0;
transform : translate(0, 10vh);
transition : opacity 2500ms, transform 1500ms;
}

.effect-fade.effect-scroll {
opacity : 1;
}
.effect-move.effect-scroll {
opacity : 1;
transform : translate(0, 0);
}



/*------------------------------------------------
  画像を背景に
------------------------------------------------*/
.photobg{
background-repeat:no-repeat;
background-size: cover;
-moz-background-size:cover;
-webkit-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
background-position:center;
}

/*------ 背景色 ------*/
.whitebg{
background-color:#FFF;
}
.navybg{
background-color:#036;
}
.orangebg{
background-color:#FC9;
}
.lightbluebg{
background:rgba(153,204,255,0.1);	/* #9CF */
}




/*------------------------------------------------
  ギャラリー表示（Magnific-Popup-master）
------------------------------------------------*/
.gallery-popup A{
position:relative;
display:block;
outline:none;
text-decoration:none;
cursor: url(img/magnify_plus.cur), pointer;	/* カーソルを虫眼鏡に */
}
.gallery-popup A:hover{
opacity:0.8;	/* Safari,Opera,Chrome */
filter:alpha(opacity=80); 	/* IE8,IE7 */
-ms-filter:"alpha(opacity=80)";	/* IE8 */
-moz-opacity: 0.8;	/* FireFox */
zoom:1;
}


/* 
====== Zoom effect ======
*/
.mfp-zoom-in {
  /* start state */
  /* animate in */
  /* animate out */
}
.mfp-zoom-in .mfp-with-anim {
  opacity: 0;
  transition: all 0.5s ease-in-out;	/* 初期値0.3 */
  transform: scale(1.0);	/* 初期値0.8 */
}
.mfp-zoom-in.mfp-bg {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.mfp-zoom-in.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: scale(1);
}
.mfp-zoom-in.mfp-ready.mfp-bg {
  opacity: 0.8;
}
.mfp-zoom-in.mfp-removing .mfp-with-anim {
  transform: scale(0.8);
  opacity: 0;
}
.mfp-zoom-in.mfp-removing.mfp-bg {
  opacity: 0;
}


/*------------------------------------------------
  スマホ・タブレットで別画面表示ズーム
------------------------------------------------*/
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	A.zoom,
	.zoom A{
	padding:10px;
	position:relative;
	border:1px solid #CCC;
	display:block;
	outline:none;
	text-decoration:none;
	}
	A.zoom::after,
	.zoom A::after{
	position:absolute;
	bottom:0;
	right:0;
	display:inline-block;
	width:24px;
	line-height:24px;
	font-family: "Font Awesome 6 Free";
	content:"\f00e";
	font-weight:bold;
	font-size:20px;
	}
}

/*------------------------------------------------
  アイテム横並び .flexbox
------------------------------------------------*/
UL.item{
}
UL.item>LI{
margin:1.5em 0 0 1.5em;
padding:0;
text-indent:0;
}
UL.item.margin>LI{
margin:3.0em 0 0 3.0em;
}
UL.item.padding>LI{
padding:1.0em;
}
UL.item>LI::before{
display:none !important;
}
UL.item>LI>*{
margin-bottom:0;
}
UL.item>LI :first-child{
margin-top:0;
}

/*------ 2列 ------*/
UL.item.part2>LI{
width : -webkit-calc( (100% - 1.5em) / 2 );
width : calc( (100% - 1.5em) / 2 );
}
UL.item.part2.margin>LI{
width : -webkit-calc( (100% - 3.0em) / 2 );
width : calc( (100% - 3.0em) / 2 );
}
UL.item.part2>LI:nth-child(odd){	/* 奇数 */
margin-left:0;
}
UL.item.part2>LI:nth-child(1),	/* 1個目 */
UL.item.part2>LI:nth-child(2){	/* 2個目 */
margin-top:0;
}

/*------ 3列 ------*/
UL.item.part3>LI{
width : -webkit-calc( (100% - 3.0em) / 3 );
width : calc( (100% - 3.0em) / 3 );
}
UL.item.part3.margin>LI{
width : -webkit-calc( (100% - 6.0em) / 3 );
width : calc( (100% - 6.0em) / 3 );
}
UL.item.part3>LI:nth-child(3n+1){	/* 1、4、7番目… */
margin-left:0;
}
UL.item.part3>LI:nth-child(1),	/* 1個目 */
UL.item.part3>LI:nth-child(2),	/* 2個目 */
UL.item.part3>LI:nth-child(3){	/* 3個目 */
margin-top:0;
}

/*------ 4列 ------*/
UL.item.part4>LI{
width : -webkit-calc( (100% - 4.5em) / 4 );
width : calc( (100% - 4.5em) / 4 );
}
UL.item.part4>LI:nth-child(4n+1){	/* 1、5、9番目… */
margin-left:0;
}
UL.item.part4>LI:nth-child(n+5){	/* 5個目以降 */
margin-top:0;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	UL.item.part2.margin>LI,
	UL.item.part2>LI{
	margin-left:0;
	width:100%;
	}
	UL.item.part2>LI:nth-child(2){	/* 2分割2個目 */
	margin-top:1.5em;
	}
	UL.item.part2.margin>LI:nth-child(2){	/* 2分割2個目 */
	margin-top:3.0em;
	}
}

@media only screen and (min-width:591px) and (max-width:768px) {	/* スマホ横用 */
	UL.item.part4>LI,
	UL.item.part3>LI{
	width : -webkit-calc( (100% - 1.5em) / 2 );
	width : calc( (100% - 1.5em) / 2 );
	}
	UL.item.part3.margin>LI{
	width : -webkit-calc( (100% - 3.0em) / 2 );
	width : calc( (100% - 3.0em) / 2 );
	}

	UL.item.part4>LI:nth-child(odd),	/* 奇数 */
	UL.item.part3>LI:nth-child(odd){	/* 奇数 */
	margin-left:0;
	}
	UL.item.part4>LI:nth-child(3n+1),	/* 1、4、7番目… */
	UL.item.part3>LI:nth-child(3n+1){	/* 1、4、7番目… */
	margin-left:inherit;
	}
	UL.item.part4>LI:nth-child(3),	/* 3個目 */
	UL.item.part3>LI:nth-child(3){	/* 3個目 */
	margin-top:inherit;
	}
	UL.item.part4>LI:nth-child(n+3),	/* 3番目以降 */
	UL.item.part3>LI:nth-child(n+3){	/* 3番目以降 */
	margin-top:2.0em;
	}
	UL.item.part3.margin>LI:nth-child(n+3){	/* 3番目以降 */
	margin-top:3.0em;
	}
}
@media only screen and (max-width:590px) {	/* スマホ縦用 */
	UL.item.part4>LI,
	UL.item.part3.margin>LI,
	UL.item.part3>LI{
	margin-left:0;
	width:100%;
	}
	UL.item.part3>LI:nth-child(n+2){	/* 3分割3個目 */
	margin-top:1.5em;
	}
	UL.item.part3.margin>LI:nth-child(n+2){	/* 3分割3個目 */
	margin-top:3.0em;
	}
}


/*------------------------------------------------
  左右振り分け 任意の幅
------------------------------------------------*/
.flexbox.part4-6>*:nth-child(1){	/* 縦書きの見出し */
width:40%;
max-width:400px;
}
.flexbox.part4-6>*:nth-child(2){
width : -webkit-calc(60% - 20px) ;
width : calc(60% - 20px);
max-width:800px;
}

.layoutbox{
margin:auto;
}
.layoutbox>*:nth-child(1){
float:left;
}
.layoutbox>*:nth-child(2){
float:right;
}
.layoutbox>LI>P{
line-height:1.8;
}


/*------ 4:6 ------*/
.layoutbox .w40p{
width : -webkit-calc(40% - 25px) ;
width : calc(40% - 25px);
}
.layoutbox .w60p{
width : -webkit-calc(60% - 25px) ;
width : calc(60% - 25px);
}

/*------ 4.5:5.5 ------*/
.layoutbox .w45p{
width : -webkit-calc(45% - 25px) ;
width : calc(45% - 25px);
}
.layoutbox .w55p{
width : -webkit-calc(55% - 25px) ;
width : calc(55% - 25px);
}

/*------ 5:5 ------*/
.layoutbox .w50p{
width : -webkit-calc(50% - 25px) ;
width : calc(50% - 25px);
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.layoutbox>*:nth-child(1),
	.layoutbox>*:nth-child(2){
	float:none;
	width:100%;
	}
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.flexbox.part4-6>*:nth-child(1){	/* 縦書きの見出し */
	width:100%;
	}
	.flexbox.part4-6>*:nth-child(2){
	width : -webkit-calc(100% - 20px) ;
	width : calc(100% - 20px);
	}


}


/*------------------------------------------------
  枠
------------------------------------------------*/
.border{
border:2px solid rgba(153,204,255,0.5);	/* #9CF */
}

.radius{
border-radius:0.5em;
-webkit-border-radius:0.5em;
-moz-border-radius:0.5em;
}

.radius2em{
border-radius:2em;
-webkit-border-radius:2em;
-moz-border-radius:2em;
}
.radius50{
border-radius:50%;
-webkit-border-radius:50%;
-moz-border-radius:50%;
}


@media only screen and (max-width:590px) {	/* スマホ縦用 */
	.border{
	padding:0.5em;
	}

}



/*------------------------------------------------
  電話番号自動リンク(with JavaScript)
------------------------------------------------*/
A.tellink {
pointer-events: none;	/* PCの時はリンクしない */
cursor: default;
text-decoration: none;
display:block;
}
A.tellink.tel {
pointer-events: auto;
}



/*------------------------------------------------
  上部サブメニュー
------------------------------------------------*/


/*------------------------------------------------
  丸数字
------------------------------------------------*/
.number{
display:inline-block;
background:#F90;
color:#FFF;
width:1.5em;
line-height:1.5;
text-align:center;
border-radius:50%;
-webkit-border-radius:50%;
-moz-border-radius:50%;
letter-spacing:0;
}
H4 .number{
margin-right:0.3em;
}
.number.gray{
background:#999;
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	H4 .number{
	margin-left:-2%;
	}

}


/*------------------------------------------------
  ラベル
------------------------------------------------*/
.label{
margin-right:auto;
padding:0 0.5em;
display: inline-block;
width:auto;
text-align:center;
line-height:1.5;
vertical-align:middle;
}
MAIN .label::before,
MAIN .label::after{
margin:-0.5em 0.2em 0 0.2em;
display:inline-block;
content:"-";
vertical-align:middle;
}






/*------------------------------------------------
  2列の表のようなDLリスト
------------------------------------------------*/
.dl_table.flexbox{
margin:auto;
border-bottom:1px solid #DCDCDC;
width:60%;
min-width:600px;
}
.dl_table.flexbox DT,
.dl_table.flexbox DD{
margin:0 !important;
padding:0.5em 1.0em;
border-top:1px solid #DCDCDC;
}
.dl_table.flexbox DT{
width:10em;
background:rgba(153,204,255,0.1);	/* #9CF */
}
.dl_table.flexbox DD{
width : -webkit-calc(100% - 10em) ;
width : calc(100% - 10em);
background:#FFF;
}



@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.dl_table.flexbox{
	width:100%;
	min-width:auto;
	min-width:initial;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.dl_table.flexbox DT{
	padding:0.2em 0.5em;
	width:100%;
	}
	.dl_table.flexbox DD{
	padding:0.5em 0.5em 1.0em 0.5em;
	width:100%;
	border-top:0;
	}


}




/*------------------------------------------------
  レイアウト
------------------------------------------------*/
.inline{
display:inline-block;
}
.block{
margin-right:auto;
margin-left:auto;
display:block;
}
.table{
margin-right:auto;
margin-left:auto;
display:table;
width:auto;
}

.relative{
position:relative;
}
.absolute{
position:absolute;
}
.x50y50{
transform : translate(-50%, -50%);
top:50%;
left:50%;
}
.x0y50{
transform : translate(0, -50%);
top:50%;
left:0;
}
.x50y0{
transform : translate(-50%,0);
top:0;
left:50%;
}


/*------------------------------------------------
  準備中表示
------------------------------------------------*/
.content .underconstruction{
margin:30px auto;
padding:150px 0 100px 0;
background-image:url(img/comingsoon.png);
background-position:center 30px;
background-repeat:no-repeat;
text-align:center;
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.content .underconstruction{
	padding:30px 0;
	background-position:center;
	}
}


/*------------------------------------------------
  区切りのスラッシュ / 表示
------------------------------------------------*/
.slash::before{
margin-right:0.5em;
margin-left:0.5em;
display:inline-block;
content:"/";
}
.dot::before{
display:inline-block;
content:"・";
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.slash::before,
	.dot::before{
	display:block;
	content:"";
	}
}

/*------------------------------------------------
  矢印
------------------------------------------------*/
*[class^="link_"].arrow,
.arrow{
padding-right:2.0em;
position:relative;
}
.arrow::after{
content: "";
display: block;
width: 1.0em;
height: 0.4em;
border-width:0 1px 1px 0;
border-style:solid;
transform: skewX(40deg) translate(0,-50%);
position: absolute;
right: 0.75em;
top: 50%;
transition: border-color 0.3s;
}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	*[class^="link_"].arrow{
	padding-right:0.2em;
	padding-left:0.2em;
	}

	*[class^="link_"].arrow::after{
	right:-0.5em;
	}
}

/*------------------------------------------------
   行頭アイコン
------------------------------------------------*/
/*------ 行頭に配置 ------*/
.icon [class^="fa-"]{
margin-right:0.5em;
vertical-align:middle;
line-height:1.0;
}
/*------ 上に配置 ------*/
.icon.block [class^="fa-"]{
margin:0 auto 0.2em auto;
display:block;
}

/*------------------------------------------------
   リンクボタン（共通）
------------------------------------------------*/

*[class^="link_"],
A[class^="link_"]:visited{
color:#FFF;
background:#399B53;	/* ロゴ緑 */
border:1px solid #399B53;	/* ロゴ緑 */
zoom: 1;
outline: none;
text-align:center;
display:inline-block;
}
A[class^="link_"]:hover{
color:#FFF;
background:#039;
border-color:#039;
}

*[class^="link_"].outline,
A[class^="link_"].outline:visited,
A[class^="link_"].outline:hover{
color:inherit;
border-color:inherit;
background:transparent;
}
A[class^="link_"].outline:hover{
opacity:0.6;
}



[class^="link_"].invert{
color:#000;
background:#FFF;
border-color:#000;
}
A[class^="link_"].invert.white{
color:#FFF;
background:url(img/spacer.gif);
border-color:#FFF;
}
A[class^="link_"].invert:hover{
color:#FFF;
background:#039;
border:1px solid #039;
}



[class^="link_"].before::before,
[class^="link_"].after::after{
font-family: "Font Awesome 6 Free";
display:inline-block;
transition: all 0.5s ease;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
content: "\f105";
font-weight : 900;
}
[class^="link_"].after::after{
margin-left:0.5em;
}
[class^="link_"].before::before{
margin-right:0.5em;
}
[class^="link_"].before.mail::before{
content: "\f0e0";
}


/*------------------------------------------------
   リンクボタン（小）
------------------------------------------------*/
.link_small{
padding:0 0.5em;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.link_small{
	padding:0.5em 10px;
	}
}

/*------------------------------------------------
   リンクボタン（大）
------------------------------------------------*/
.link_large{
margin:auto;
padding:0.7em 1.0em;
font-size:125.0%;	/* 20px */
}
.link_large SPAN[class^="fa-"]{
margin:-0.15em 0.5em 0 0;
font-size:120.0%;	/* 24px */
vertical-align:middle;
}



@media only screen and (max-width:768px) {	/*/* スマホ横以下用 */
	.link_large{
	display:block;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	.link_large{
	max-width:600px;
	}
}

/*------------------------------------------------
   チェックリスト
------------------------------------------------*/
.check_list{
text-align:left;
}
.check_list LI{
margin:0.8em auto;
padding-left:2.5em;
text-indent:-1.9em;
}
.check_list LI::before{
margin-right:1.0em;
padding-top:0.2em;
font-family: "Font Awesome 6 Free";
content:"\f00c";
font-weight:bold;
border-radius:0;
-webkit-border-radius:0;
-moz-border-radius:0;
text-indent:0;
color:#F90;
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.check_list LI{
	padding-left:1.3em;
	text-indent:-1.4em;
	}
	.check_list LI::before{
	margin-right:0.5em;
	}

}


/*------------------------------------------------
   強調枠囲み
------------------------------------------------*/
/*------------------------------------------------
  お問い合わせ枠
------------------------------------------------*/
.check{
padding:1.0em 1.5em;
}

DIV.check{
margin-top:1.8em;
margin-bottom:1.8em;
}

DIV.check>*{
margin-top:0;
margin-bottom:0;
}
DIV.check>*~*{
margin-top:15px;
}
.content>.check.island{
margin-right:auto;	/* インデントリセット */
margin-left:auto;	/* インデントリセット */
display: table;
min-width:600px;
}





@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.content>.check,
	.content>.check.island{
	margin-right:0;	/* インデントリセット */
	margin-left:0;	/* インデントリセット */
	min-width:auto;
	min-width:initial;
	display: block;
	width:auto;
	}
}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.check{
	padding:1.0em;
	}
}




/*--------------------------------------------------------------------
  共通レイアウト枠
--------------------------------------------------------------------*/

@media only screen and (min-width:769px) {	/* PC用 */
	MAIN{
	min-height:70vh;
	}
}

BODY:not(#home) MAIN>ARTICLE{
padding:3.0em 0;
}
.lv1{
padding:6em 0;
}
.lv2{
padding:3em 0;
}
.lv3{
padding:1em 0;
}


/*------------------------------------------------
  SECTION
------------------------------------------------*/
.content{
margin-right:auto;
margin-left:auto;
padding-top:0.5em;
padding-bottom:0.5em;
width : -webkit-calc(100% - 30px) ;
width : calc(100% - 30px);
max-width:1150px;
}
.content+.content H4:first-child{
margin-top:2.0em;
}


MAIN ARTICLE:first-of-type .content:first-child{	/* 上にH3見出しが無い時 */
padding-top:2.5em;
}
.content.text{
text-align:left;
}
@media only screen and (min-width:980px) {	/* 幅の広いPC用 */
	#information .content.text>H3,
	.content.text>H4,
	.content.text>UL.list,
	.content.text>UL.kome,
	.content.text>P{
	max-width:900px;
	margin-right:auto;
	margin-left:auto;
	}
	.content.text>P:not(class^="text"){
	text-align: justify;
	text-justify: inter-ideograph;
	max-width:900px;
	}
}

H3+.content>*:first-child{
margin-top:1.0em;
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	ARTICLE{
	padding:3em 0;
	max-width:auto;
	max-width:initial;
	min-width:auto;
	min-width:initial;
	}
	BODY:not(#home) ARTICLE>*{
	max-width:auto;
	max-width:initial;
	min-width:auto;
	min-width:initial;
	}

}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.content.text{
	text-align: left;
	}

}


/*--------------------------------------------------------------------
  ヘッダー
--------------------------------------------------------------------*/
#header{
width:100%;
z-index:10;	/* IE7以下でプルダウンメニューが隠れるための対策 */
}
#header_inner{
float:right;
}

#header A{
display:block;
}

@media only screen and (min-width:769px) {	/* PC用 */
	#header.fixed{	/* ヘッダー上部固定用 */
	position:fixed !important;
	top:0;
	left:0;
	z-index:10000;
	width:100%;
	height:50px;
	background:rgba(255,255,255,0.95);
	}
}



/*------------------------------------------------
  ヘッダーロゴ 
------------------------------------------------*/
#header H1{
display:table;
line-height:1.2;
float:left;
}
#h1_copy{
display:none;
}



#header H1 A{
margin:auto;
background-image:url(img/logo_s.png);
background-size: cover;
-moz-background-size:cover;
-webkit-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
width:150px;
height:50px;
transition: opacity 0.5s ease;
-webkit-transition: opacity 0.5s ease;
-moz-transition: opacity 0.5s ease;
-o-transition: opacity 0.5s ease;
}

#header H1 A:hover{
opacity:0.7;
}
#header H1 A>SPAN{
display:none;
}


@media only screen and (min-width:1101px)  {	 /* PC用 */
	#header:not(.fixed) H1{
	}
	#header:not(.fixed) #h1_copy{
	padding:5px;
	font-size:81.25%;	/* 13px */
	display:block;
	height:30px;
	}
	#header:not(.fixed) H1 A{
	background-image:url(img/logo.png);
	width:240px;
	height:90px;
	}

}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.fixed{	/* ヘッダー上部固定用を解除（現在ヘッダー上部固定を使用中） */
	position:static;
	}
	#header_inner{
	float:none;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#header H1{
	z-index:113;
	position:relative;
	max-width:-webkit-calc( 100% - 65px );
	max-width:calc( 100% - 65px );
	}

}

/*--------------------------------------------------------------------
  プライマリーナビゲーションメニュー(PrimaryMenu)
--------------------------------------------------------------------*/
#primarymenu{
margin:0 50px 0 auto;
display:table;
}

#primarymenu>LI{
display:table-cell;
vertical-align:middle;
}



/*------------------------------------------------
  ヘッダーTEL
------------------------------------------------*/
.navi_tel{
line-height:1;
font-size:100.0%;	/* 16px */
}
.navi_tel A{
margin-right:0.2em;
letter-spacing:3px;
line-height:22px;
font-size:142.9%;	/* 20px */
}
.navi_tel .icon .fa-phone{
margin-right:0.25em;
color:#399B53; /* ロゴ緑 */
font-size:80%;
}

/*------ 受付時間 ------*/
.navi_tel .hours{
margin-left:1.5em;
display:block;
font-size:58.3%;	/* 14px */
letter-spacing:1px;
}
.hours .label{
margin-right:0.5em;
padding:0 0.5em 0 0;
border-right-width:1px;
border-right-style:solid;
}
.hours .inline{
padding:0;
vertical-align:middle;
}

/*------------------------------------------------
  ヘッダーお問い合わせ
------------------------------------------------*/
.navi_mail .link_large{
margin:0 0 0 2.0em;
padding:0 3.0em;
font-size:100%;
width:auto;
line-height:48px;
}
#primarymenu .navi_mail .link_large{
line-height:50px;
border:none;
}

@media only screen and (min-width:1101px)  {	 /* PC用 */
	#header:not(.fixed) #primarymenu{
	margin:10px 10px 0 auto;
	}
	#header:not(.fixed) .navi_tel A{
	font-size:150.0%;	/* 24px */
	}
	.navi_mail .link_large{
	}
}
@media only screen and (min-width:769px) and (max-width:900px) {	/* 狭いPC用 */
	#primarymenu{
	overflow:hidden;
	}
	#primarymenu .navi_tel,
	#primarymenu .navi_mail{
	height:50px;
	}
	
	#primarymenu .navi_mail .link_large{
	margin:0 0 0 1.0em;
	padding:0 0.5em;
	height:50px;
	}
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#primarymenu{
	margin:0;
	padding:10px;
	width:100%;
	background:#036;
	}
	#primarymenu .navi_tel *{
	color:#FFF;
	border-color:#FFF;
	}

	.navi_mail .link_large{
	margin:0;
	padding:0 0.5em;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#primarymenu{
	height:70px;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#primarymenu{
	height:120px;	/* フッターに固定するので非表示に */
	display:none;
	}
	#primarymenu LI{
	display:block;
	}
	.navi_tel A{
	margin-right:0;
	line-height:30px;
	}
	.navi_tel .hours .inline{
	line-height:30px;
	}


}

/*------------------------------------------------
  Homeボタン 廃止
------------------------------------------------*/

/*--------------------------------------------------------------------
  グローバルナビゲーションメニュー(menubar)
--------------------------------------------------------------------*/
#global_navi{
height:50px;
z-index:100;
width:100%;
height:1px;
text-align:left;
position:absolute;
top:0;
right:0;
display:block !important;	/* PCでの非表示から表示へ */
}


/*------------------------------------------------
  全体 
------------------------------------------------*/
#global_navi LI{
position: relative;
}


#global_navi > SPAN{
display:block;
padding:0;
position:absolute;
top:0;
right:0;
width: 50px;
height: 50px;
text-align: left;
text-indent: -9999px;
background-repeat:no-repeat;
background-image:url(img/sp_nav.png);
background-position:-50px 0;
cursor:pointer;
z-index:111;
background-color:#369;
}
#global_navi > SPAN#global_navi_close{
background-position:-100px 0px;
}


UL#globalmenu{
margin:0 auto;
padding:0.2em 0 0.5em 0;
display: none;
position: absolute;
top:50px;  /* Primaryの高さで変動 */
right:0;
background:rgba(0,51,102,0.97);	/* #036 */

z-index:110;	/* IE7以下でプルダウンメニューが隠れるための対策 */
width:100%;
text-align:center;
}
#header.fixed #global_navi UL#globalmenu.open,
#global_navi UL#globalmenu.open{
display: block;
}
#global_navi > SPAN.open{
background-position:-100px 0px;
}


UL#globalmenu>LI{
display:inline-block;
}
UL#globalmenu>LI>A{
padding:1.2em 0.8em;
color:#FFF;
position:relative;
}

UL#globalmenu>LI>A::after{
content: "";
position:absolute;
transform : translate(-50%, 0);
bottom:0;
left:50%;
width:0;
height:1px;
background:#FFF;
transition: all 0.5s ease;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
}
UL#globalmenu>LI.active A::after,
UL#globalmenu>LI A:hover::after{
width:100%;
}

@media only screen and (min-width:1101px) {	/* ワイドPC用＆スクロール無し */
	#header:not(.fixed) #global_navi > SPAN{
	display: none;
	}
	#header:not(.fixed) #global_navi{
	margin-top:20px;
	height:auto;
	width:auto;
	position:static;
	}


	/*------------------------------------------------
	  PCメインメニュー第一階層
	------------------------------------------------*/
	#header:not(.fixed) UL#globalmenu{
	margin-bottom:1px;
	padding:0;
	max-width:900px;
	display:table;
	position: static;
	background:none;
	}
	#header.fixed UL#globalmenu{
	display:none;
	}
	#header:not(.fixed) UL#globalmenu>LI{
	display:table-cell;
	vertical-align:top;
	}

	#header:not(.fixed) UL#globalmenu>LI>A{
	padding:0.5em 0.8em;
	color:#000;
	}
	#header:not(.fixed) UL#globalmenu>LI>A::after{
	background:#06C;
	}


}

@media only screen and (max-width:768px) {	/* スマホ横以下用  */
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	UL#globalmenu{
	top:120px;	/* Primaryの高さで変動70px+50px */
	}

}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	UL#globalmenu{
	width:100%;
/* 	top:180px;	Primaryの高さで変動130px+50px */

	}
}



/*------------------------------------------------
  コンテンツメニュー
------------------------------------------------*/
/*------ コンテンツメニュー ------*/
.contentmenu.inline{
margin:0 auto;
padding:0.5em 0;
text-align:center;
background:#FFF;
line-height:1.2;
font-size:87.5%;	/* 14px */
}

@media only screen and (min-width:1150px) {/* ワイドPC用 */
	.contentmenu.inline{
	padding:0.5em -webkit-calc( (102% - 1200px) / 2 );
	padding:0.5em calc( (102% - 1200px) / 2 );
	}

}


.contentmenu.inline LI{
margin:0.3em;
padding:0;
}
.contentmenu.inline A{
padding:0.8em 1.0em;
color:#FFF;
display:block;
border:1px solid transparent;
border-radius:2em;
-webkit-border-radius:2em;
-moz-border-radius:2em;
background:#666;
}
.contentmenu.inline .active A,
.contentmenu.inline A:hover{
background:#039;

}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.contentmenu.inline{
	font-size:100.0%;	/* 16px */
	}
}


/*--------------------------------------------------------------------
  パンくず・アンカー
--------------------------------------------------------------------*/
#pkl{
padding:0.5em 0;
background:rgba(0,51,102,0.8);	/* #036 */
font-size:87.5%;	/* 14px */
color:#CCC;
}
#pkl A,
#pkl A:visited{
padding:0.5em 0.25em;
display:block;
color:#FFF;
}
#pkl A:hover{
color:#999;
}


#pkl>UL{
margin:auto;
display:block;
width : -webkit-calc(100% - 25px) ;
width : calc(100% - 25px);
max-width:1150px;
text-align:left;
}
#pkl>UL LI{
display:inline-block;
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#pkl>UL{
	width : -webkit-calc(100% - 10px) ;
	width : calc(100% - 10px);
	}
	#pkl>UL LI{
	margin:0.2em;
	}
	#pkl A,
	#pkl A:visited{
	padding:0.5em;
	}
}

/*------------------------------------------------
  アンカー 
------------------------------------------------*/
#pt{
margin:0;
z-index:100;
position: fixed;
bottom:8px;
right:12px;
width: 40px;
height: 40px;
}
#pt A{
margin:0 auto;
display: block;
width: 40px;
height: 40px;
background:url(img/pt.png) 0 0 no-repeat;
zoom: 1;
text-indent: -9999px;
outline: none;
font-size: 1px;
overflow: hidden;
}
#pt A:hover{
background:url(img/pt_hover.png) 0 0 no-repeat;
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#pt A{
	display:none;
	}
}

/*--------------------------------------------------------------------
  フッター
--------------------------------------------------------------------*/
#footer{
margin:0 auto;
background:#FFF;
}
BODY:not(#home) #footer{
margin-top:2.0em;
}
#footer_inner{
margin:0 auto;
padding:3.0em 1.0em 2.0em 1.0em;
}
#footer_inner.white A:hover{
opacity:0.7;	/* Safari,Opera,Chrome */
}



/*------------------------------------------------
  名称・お問い合わせ・TEL 
------------------------------------------------*/
/*------ H5 ------*/
#footer H5{
margin:0 auto;
font-size:112.5%;	/* 18px */
letter-spacing:0.1em;
display:table;
}

#footer H5 A{
display:table;
}





/*------------------------------------------------
  住所
------------------------------------------------*/
/*------ フッターお問い合わせ ------*/
#footer_contact{
padding:10px;
background:rgba(0,51,102,0.8);
}
#footer_navi{
margin:0 auto;
display:table;
}
#footer_navi A{
color:#FFF;
}

#footer_navi>LI{
display:table-cell;
vertical-align:middle;
}
#footer_navi .navi_tel{
font-size:112.5%;	/* 18px */
}
#footer_navi .navi_tel A{
line-height:1.8;
}
#footer_navi .link_large{
padding-top:1.5em;
position:relative;
font-size:150.0%;	/* 24px */
}
#footer_navi .link_large .extrasmall{
position:absolute;
top:0;
left:0;
width:100%;
}

/*------ フッター 連絡先欄 ------*/
#footer_info{
margin:1.0em auto;
padding:0;
display:table;
}
#footer_info LI{
margin:0.5em 0.25em 0 0.25em;
display:inline-block;
}
#footer_form .link_large{
display:block;
max-width:15em;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#footer_info{
	display:block;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#footer_navi .navi_mail .link_large{
	margin-left:1em;
	}
	#footer_navi .link_large{
	font-size:125.0%;	/* 20px */
	}
}



@media only screen and (max-width:540px) {	/* スマホ縦用 */
    BODY{
    margin-bottom:80px;
    }
	BODY:not(#home) #footer{
	margin-top:0;
	border-top:1px solid #CCC;
	}

	#footer_contact{
	padding:0;
	position:fixed;
	bottom:0;
	left:0;
	z-index:5;
	width:100%;
	}
	#footer_navi{
	width:100%;
	display:table;
	table-layout:fixed;
	}
	#footer_navi LI{
	position:relative;
	display:table-cell;
	}
	#footer_navi LI *{
	line-height:1.5;
	}
	#footer_navi LI A{
	padding:5px 0 !important;
	font-size:87.5% !important;	/* 14px */
	}
	#footer_navi .navi_tel A{
	display:block;
	background:#DCDCDC;
	color:#000;
	height:69px;
	}
	#footer_navi .icon .fa-solid{
	margin:0 auto;
	font-size:24px;
	display:block;
	}
	#footer_navi .navi_tel .hours{
	margin:0;
	font-size:87.5%;	/* 14px */
	}
	#footer_navi .navi_tel .hours .label{
	display:none;
	}
	#footer_navi .navi_tel .hours .inline{
	margin:0;
	padding:0;
	display:block;
	}
	#footer_navi .navi_mail .link_large{
a	font-size:87.5%;	/* 14px */
	}
	#footer_navi .navi_mail .extrasmall{
	display:none;
	}
}
@media only screen and (max-width:320px) {	/* スマホS縦用 */
	#footer_navi .navi_tel .hours,
	#footer_navi .navi_mail .link_large{
	font-size:4.5vw;
	}

}

/*------ FooterMenu ------*/
#footermenu{
margin:1.0em auto 0 auto;
}
#footermenu *{
vertical-align:middle;
}
#footermenu LI{
padding:0.5em;
display:inline-block;
}
#footermenu LI A{
display:block;
}
#footermenu [class^="fa"] {
font-size:137.5%;	/* 22px */
}



/*------------------------------------------------
  著作権
------------------------------------------------*/
#copyright{
margin:0 auto;
padding:1.8em 0;
font-size:68.75%;	/* 11px */
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#copyright{
	margin:0 auto;
	padding:0 3% 50px 3%;	/* #pt表示分 */
	width : 94%;
	}
}


/*--------------------------------------------------------------------
  clearfix
--------------------------------------------------------------------*/
/*------ 親要素にまとめて回り込み解除 ------*/
#header::after{
    content: ""; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}


/* Win版IE7とMac版IE5対策 */
#header{
display: inline-table;
min-height:1%;  /* for IE 7*/
}


/* Win版IE5および6対策 */
/* Hides from IE-mac \*/
* html #header{
height: 1%;
}
#header{
display: block;
}
/* End hide from IE-mac */



/*------ 個別に回り込み解除（clearfix） ------*/
.clearfix::after {
    content: ""; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

.clearfix {
	display: inline-table;
}

/* Hides from IE-mac \*/
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/* End hide from IE-mac */