@charset "UTF-8";

/* reset */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}
body {line-height:1;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}
nav ul{list-style:none;}
blockquote, q{quotes:none;}
blockquote:before, blockquote:after,q:before, q:after { content:'';content:none;}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}
ins{background-color:#ff9;color:#000;text-decoration:none;}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}
del{text-decoration: line-through;}
abbr[title], dfn[title]{border-bottom:1px dotted;cursor:help;}
table{border-collapse:collapse;border-spacing:0;}
hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}
input, select{vertical-align:middle;}


/*--------------------------------------
	基本スタイル
--------------------------------------*/
html {
	font-size: 62.5%;
}

body {
	height: 100%;
	color: #333;
	line-height: 1.6;
	min-width: 1070px;
	font-size: 1.4rem;
	letter-spacing: 0.02rem;
	margin: 0;
	
	-webkit-font-smoothing: antialiased;
	-webkit-moz-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

body, textarea, input, pre {
	font-family: 'Kosugi Maru', sans-serif;
	font-weight: 400;
	font-display: swap;
}

*, *::before, *::after {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
}

a { text-decoration: none; }

ul { margin: 0; padding: 0; }

p {
	margin: 0;
	padding: 0;
	font-size: 1.4rem;
	line-height: 1.4;
}

sup {
	vertical-align: super;
	font-size: small;
}

li {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
}

.nblur {
	-webkit-backface-visibility: hidden;
}

h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; }

/*---------------------------
　debug
---------------------------*/
.debug {
}

.debug .disp {
	position: fixed;
	font-size: .8rem;
	width: 200px;
	height: 100px;
	background: #eee;
	bottom: 50px;
	
	z-index: 10000;
}


/*---------------------------
　トップページへのリンク
---------------------------*/
.topLink {
	position: fixed;
	width: 50px;
	height: 50px;
	background: rgba( 33, 33, 33, .6 );
	bottom: 20px;
	right: -50px;
	border-radius: 5px;
	cursor: pointer;
	z-index: 98;
}

.topLink span {
	display: block;
	position: absolute;
	font-size: 2.6rem;
	color: #fff;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	text-align: center;
}

.animeTopLink1 {
	animation: animeTopLink1 .6s forwards;
}

.animeTopLink2 {
	animation: animeTopLink2 .6s forwards;
}


@keyframes animeTopLink1 {
	0% {
		opacity: 0;
		transform: translateX(0);
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
	}
	
	100% {
		opacity: 1;
		transform: translateX(-70px);
		-webkit-transform: translateX(-70px);
		-moz-transform: translateX(-70px);
		-ms-transform: translateX(-70px);
	}
	
}


@keyframes animeTopLink2 {
	0% {
		opacity: 1;
		transform: translateX(-70px);
		-webkit-transform: translateX(-70px);
		-moz-transform: translateX(-70px);
		-ms-transform: translateX(-70px);
	}
	
	100% {
		opacity: 0;
		transform: translateX(0);
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
	}
	
}




/*---------------------------
　アイコン設定
---------------------------*/

/* 疑似要素設定 */
.iconfas *::before,
.iconfas *::after,
.iconfas_b *::before,
.iconfas_f *::after {
	font-family: "Font Awesome 5 Free";
}


/*---------------------------
　汎用アニメーション
---------------------------*/
/* beat */
@keyframes animeBeat {
	0% { filter: drop-shadow( 0 0 0 #000 ); }
	100% { filter: drop-shadow( 0 0 12px transparent ); }
}

/* fade in */
@keyframes animeDefFadeIn {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

/*---------------------------
	ボタン
---------------------------*/
.pressButton {
	outline: none;
	box-shadow: 2px 2px  #666;
	background: -webkit-linear-gradient( top, #eee 0%, #bbb 100% );
	background: -moz-linear-gradient( top, #eee 0%, #bbb 100% );
	background: -ms-linear-gradient( top, #eee 0%, #bbb 100% );

}

/* 押された時 */
.pressButton:active {
	box-shadow: 0 0 0 transparent;
	transform: translate( 2px, 2px );
	-webkit-transform: translate( 2px, 2px );
	-moz-transform: translate( 2px, 2px );
	-ms-transform: translate( 2px, 2px );
}



/*---------------------------
　マージン
---------------------------*/
.mb10 { margin-bottom: 10px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb50 { margin-bottom: 50px; }
.mb80 { margin-bottom: 80px; }

/*---------------------------
　画像の比率設定
---------------------------*/

/* 4:3 */
[class*="img-ratio"] {
	position: relative;
	display: block;
	width: 100%;
}

[class*="img-ratio"] img {
	position: absolute;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
}

[class*="img-ratio"]::before {
	content: "";
	display: block;
}

/* 4:3 */
.img-ratio01::before { padding-top: 75%; }

/* 16:9 */
.img-ratio02::before { padding-top: 56.25%; }


/*----------------------------
	コメントボックス
----------------------------*/
[class*="commentBox"] p {
	font-size: 1.6rem;
}

[class*="commentBox"] .mb {
	margin-bottom: 16px;
}

/* 自動マージン */
[class*="commentBox"].automb p:not(:last-child) {
	margin-bottom: 15px;
}

/*----------------------------
	サブコメントボックス
----------------------------*/
.subComment {
	border: 1px #aaa dotted;
	padding: 10px 20px;
	background: #fffbe3;
	
	border-radius: 5px;
}


/*---------------------------
　中央
---------------------------*/
.posMid {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

/*---------------------------
　その他
---------------------------*/
/* 表示,非表示 */
.chide { visibility: hidden; }
.cshow { visibility: visible; }


/* font */
.fset00 {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}

.fset01 {
	font-family: "游ゴシック", "Yu Gothic", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
}

.fset02 {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


.fset03 {
	font-family: '小塚ゴシック Pro L', 'Kozuka Gothic Pro Light', sans-serif;
}

.fsetGoogle01 {
	font-family: 'Kosugi Maru', sans-serif;
	transform: rotate(0.001deg);


}

.fsetGoogle02 {
	font-family: 'M PLUS Rounded 1c', sans-serif;
}

/* color */

/* 赤系 */
.sr00 { color: #f22; }

/* 青系 */
.sb00 { color: #00c; }

/* オレンジ系 */
.so00 { color: #ff9500; }

.tshadow01 {
	text-shadow: 1px 1px 1px #000 ;
}


/* 改行 */
.pcbr { display: block; }

/* サイト個別デフォルト */

/*---------------------------
	ヘッダー
---------------------------*/
header {
}

/* navi用 */
header .nWrap {
	height: 62px;
}

header .headerWrap {
}

header .fixedNavi {
	position: fixed;
	width: 100%;
	top: 0;
	z-index: 10;
}

/*---------------------------
	タイトル 
---------------------------*/
.title {
	width: 1070px;
	margin: 0 auto;
	padding: 5px 10px;
}

.tbox {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
}

/* ロゴ */
.title .logo {
	width: 420px;
	
}

.title .logo img {
	width: 100%;
	height: auto;
}


/* 電話番号とか */
.title .box {
	width: 260px;
}


/* 電話番号 */
.title .telbox {
	margin-bottom: 5px;
}

.title .telbox p:first-child {
	color: #EF8344;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
}

.title .telbox p:last-child {
	white-space: nowrap;
	font-size: 2.8rem;
	font-weight: bold;
}

/* アイコン */
.title .telbox p:last-child:before {
	content: "\f2a0";
	font-size: 2.8rem;
	font-weight: bold;
	margin-right: 12px;
}



/*---------------------------
　navi
---------------------------*/
#navi {
	background: #3684c9;
	background: -webkit-linear-gradient( top, #3684c9 0, #3684c9 50%, #2d6da6 100% );
	background: -moz-linear-gradient( top, #3684c9 0, #3684c9 50%, #2d6da6 100% );
	background: -ms-linear-gradient( top, #3684c9 0, #3684c9 50%, #2d6da6 100% );
	min-width: 1070px;
}

#navi .spOnly,
#navi .spNaviLogo {
	display: none;
}


#navi .menu {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	width: 1070px;
	padding: 0 10px;
	margin: 0 auto;
}



#navi .menu a {
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	text-align: center;
	padding: 10px 0;
}

#navi .menu a:hover {
	color: #333;
	background: #c7c7c7;
	background: -webkit-linear-gradient( top, #c7c7c7 0%, #fff 30%, #fff 70%, #c7c7c7 100% );
	background: -moz-linear-gradient( top, #c7c7c7 0%, #fff 30%, #fff 70%, #c7c7c7 100% );
	background: -ms-linear-gradient( top, #c7c7c7 0%, #fff 30%, #fff 70%, #c7c7c7 100% );
}

#navi .menu a:hover p:first-child {
	color: #333;
}

#navi .menu a:hover p:last-child {
	color: #a67c12;
}


/* 上部 */
#navi .menu p:first-child {
	text-align: center;
	font-size: 1.85rem;
	text-shadow: 1px 1px 2px #333;
	line-height: 1.4;
}

/* 下部 */
#navi .menu p:last-child {
	font-size: 1.25rem;
	color: #ffee80;
	
}


#navi .menu li {
	position: relative;
	width: 100%;
}

#navi .menu .home {
	flex: 0 0 70px;
}

/* ホームアイコン */
#navi .menu .home .fa-home {
	font-size: 2.0rem;
	padding: 2px 0;
	text-shadow: 1px 1px 2px #333;
}

#navi .menu .home::before,
#navi .menu li::after {
	position: absolute;
	content: "";
	width: 1px;
	height: 80%;
	background: #fff;
	background: -webkit-linear-gradient( top, transparent 0, #fff 40%, #fff 60%, transparent 100% );
	background: -moz-linear-gradient( top, transparent 0, #fff 40%, #fff 60%, transparent 100% );
	background: -ms-linear-gradient( top, transparent 0, #fff 40%, #fff 60%, transparent 100% );
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

#navi .menu .home::before {
	left: 0;
}

#navi .menu li::after {
	right: 0;
}



/*---------------------------
　スマートフォンメニュー
---------------------------*/
#naviSp {
	display: none;
}

/*---------------------------
　breadcrumb
---------------------------*/
#breadcrumbList {
	width: 100%;
	background: #fff;
	margin: 20px 0;
}

/* 表示範囲 */
#breadcrumbList ul {
	position: relative;
	width: 1050px;
	margin: 0 auto;
	
	display: flex;
	display: -webkit-flex;
	
	overflow: hidden;
}

/* 各階層 */
#breadcrumbList ul li {
	position: relative;
	max-width: 300px;
	background: #3293b8;
	margin-right: 14px;
	left: 5px;
}
/* 2目以降 */
#breadcrumbList ul li:not(:nth-child(1)) {
	padding-left: 10px;
}

#breadcrumbList ul li::before,
#breadcrumbList ul li::after {
	position: absolute;
	content: "";
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

/* 階層枠の後方 */
#breadcrumbList ul li:not(:first-child):before {
	border-top: 18px transparent solid;
	border-left: 14px #fff solid;
	border-bottom: 18px transparent solid;
	left: -1px;

}

/* 階層枠の前方 */
#breadcrumbList ul li::after {
	border-top: 18px transparent solid;
	border-left: 15px #3293b8 solid;
	border-bottom: 18px transparent solid;
	right: -14px;
	z-index: 1;
}

/* リンク */
#breadcrumbList ul li a {
	display: block;

	letter-spacing: .05rem;
	font-size: 1.6rem;
	color: #fff;
	text-shadow: 1px 1px 2px #333;
	line-height: 30px;
	
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 文字 */
#breadcrumbList ul li a span {
	padding: 0 10px;
}

/* アイコンがある場合 */
#breadcrumbList ul li span i {
	margin-right: 5px;
}

/* メッセージ */
#breadcrumbList ul li .msg {
	display: none;
}




/*---------------------------
　共通パーツ
---------------------------*/

/* メールフォームボタン */
.mailBtn {
	position: relative;
	display: block;
	font-size: 1.75rem;
	background: #3684c9;
	background: -webkit-linear-gradient( top, #3684c9 0, #3684c9 50%, #2d6da6 51%, #2d6da6 100% );
	background: -moz-linear-gradient( top, #3684c9 0, #3684c9 50%, #2d6da6 51%, #2d6da6 100% );
	background: -ms-linear-gradient( top, #3684c9 0, #3684c9 50%, #2d6da6 51%, #2d6da6 100% );
	text-align: center;
	color: #fff;
	padding: 4px 0;
	padding-left: 20px;
	border-radius: 5px;
	text-shadow: 1px 1px 2px #333;
}

/* メールアイコン */
.mailBtn::before {
	position: absolute;
	content: "\f0e0";
	font-weight: bold;
	font-size: 2.0rem;
	top: 50%;
	left: 16px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

/* hover */
.mailBtn:hover {
	background: #666;
}


/*---------------------------
　content
---------------------------*/
#contents {
	margin: 10px 0;
	width: 100%;
}


.contentHeader {
*	position: relative;
*	background: #0681e8;
*	background: -webkit-linear-gradient( left, #025fad 0, #0681e8 10%, #0681e8 90%, #025fad 100% );
*	background: -moz-linear-gradient( left, #025fad 0, #0681e8 10%, #0681e8 90%, #025fad 100% );
*	background: -ms-linear-gradient( left, #025fad 0, #0681e8 10%, #0681e8 90%, #025fad 100% );
*	padding: 18px 0;
*	overflow: hidden;
*	z-index: 0;
}


/* グループ枠 */
.contentGroup {
	width: 720px;
	padding-bottom: 50px;
	margin: 0 auto;
}


.contentGroup:not(:last-of-type) {
	margin-bottom: 30px;
}


.contentGroup .wrap {
	height: auto;
	padding: 20px 30px;
}


/* 各種コンテンツ */
[id^="content-"] {
	width: 100%;
	
	/* ページ内移動の調整 */
	margin-top: -50px;
	padding-top: 50px;
	
	margin-bottom: 50px;
}


#contentBox {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	width: 1050px;
	padding: 0 10px;
	margin: 0 auto;

}

/*---------------------------
　main
---------------------------*/
#main {
	order: 1;
	width: 720px;
}

#main .first {
	margin-bottom: 50px;
}

/*---------------------------
　side
---------------------------*/
#side {
	width: 280px;
}

/* 各セクション共通 */
/*
[class^="side-"]:not(:last-of-type) {
*/
[class^="side-"] {
	margin-bottom: 30px;
}


#side .swrap {
	padding: 0 4px;
}




/* 代表プロフ */
.side-profile .ceoImg {
	margin-bottom: 10px;
}

.side-profile .ceoImg img {
	border-radius: 5px;
}



/* お問い合わせ */
.side-inquiry {
}

.side-inquiry .commentBox {
	margin-bottom: 30px;
}


.side-inquiry .inqBox {
	position: relative;
}

/* 女性画像 */
.side-inquiry .inqBox::before {
	position: absolute;
	content: "";
	width: 70px;
	height: 90px;
	
	background: url( "../img/side_inquiry01.png" ) no-repeat;
	background-size: 70px;
	left: 0;
	bottom: 0;
}

.side-inquiry .inqBox .box {
	position: relative;
	margin-left: 86px;
}

/* 電話番号 */
.side-inquiry .tel {
	font-weight: bold;
	font-size: 2.0rem;
	padding: 3px 0;
	border-bottom: 1px #aaa dotted;
	padding-left: 24px;
}

.side-inquiry .tel::before {
	content: "\f2a0";
	font-size: 2.2rem;
	font-weight: bold;
	left: 0;
}

/* メール */
.side-inquiry .mail {
	position: relative;
	color: #00f;
	font-size: 1.6rem;
	padding: 3px 0;
	letter-spacing: -.05rem;
}

.side-inquiry .mail::before {
	content: "\f0e0";
	font-size: 1.6rem;
	font-weight: bold;
}

/* 連絡方法 - 基本 */
.side-inquiry .inqBox .tel,
.side-inquiry .inqBox .mail {
	position: relative;
	display: block;
	padding-left: 24px;
	border-bottom: 1px #aaa dotted;
}


/* 連絡方法 - アイコン */
.side-inquiry .inqBox p:before,
.side-inquiry .inqBox a:before {
	position: absolute;
	left: 0;
}



/* 会社概要 */
.side-company {
}

.side-company li {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	margin-bottom: 5px;
	border-bottom: 1px #ccc dotted;
}


/* 見出し */
.side-company li > p:first-child {
	width: 56px;
	padding: 10px 0;
	background: #ddd;
	text-align: center;
	margin-right: 10px;
}

.side-company a {
	color: #00f;
}



/* 対応地域 */
.side-area {
}

.side-area .commentBox {
	margin-bottom: 10px;
}

.side-area .commentBox p {
	font-size: 1.4rem;
}


.side-area ul {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	margin-left: 10px;
	margin-bottom: 16px;
}

.side-area li {
	font-size: 1.2rem;
	min-width: 50px;
	max-width: 100px;
	margin-right: 8px;
}

/* 支払い方法 */
.side-payment {
}

/* 支払い方法リスト */
.side-payment .paymentList {
}

.side-payment .paymentList > li {
	border-bottom: 1px #ccc dotted;
	padding: 5px 0;
}

.side-payment .paymentList .pt {
	position: relative;
	font-size: 1.6rem;
	padding-left: 16px;
}

.side-payment .paymentList .pt::before {
	position: absolute;
	content: "";
	width: 10px;
	height: 10px;
	border: 2px #f542ad solid;
	border-radius: 8px;

	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

/* 対応ブランド */
.side-payment .paymentList h4 {
	text-align: center;
	margin-bottom: 5px;
	color: #3293B8;
	margin: 0 5%;
}

.side-payment .paymentList .creditType {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	margin: 0 5%;
	
}

.side-payment .paymentList .creditType li {
	width: 30%;
	height: auto;
}


/*---------------------------
　footer
---------------------------*/
footer {
	min-width: 1070px;
	margin-top: 60px;
	position: relative;
	background: #444;
	background: -webkit-linear-gradient( top, #555 0, #222 100% );
	background: -moz-linear-gradient( top, #555 0, #222 100% );
	background: -ms-linear-gradient( top, #555 0, #222 100% );
}

footer::before {
	position: absolute;
	content: "";
	background: url( "../img/footer_top01.png" ) repeat-x;
	width: 100%;
	height: 58px;
	top: -57px;
	z-index: 1;
}


/* フッターメイン */
#infoFooter {
	width: 1070px;
	padding: 20px 10px;
	margin: 0 auto;
}


#infoFooter .info {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
}

#infoFooter .logo {
	width: 300px;
	margin-bottom: 20px;
}


#infoFooter h4 {
	color: #fff;
	font-size: 1.4rem;
	margin-bottom: 2px;
*	padding: 3px 10px;
}

/* 会社概要 */
#infoFooter .footer-company {
	width: 430px
}

#infoFooter .footer-company ul {
}

#infoFooter .footer-company li {
	display: flex;
	display: -webkit-flex;
	border-bottom: 1px #ccc dotted;
	margin-bottom: 12px;
	padding-bottom: 5px;
}

#infoFooter .footer-company li p {
	color: #fff;
	font-size: 1.4rem;
	text-shadow: 1px 1px 2px #000;
}

#infoFooter .footer-company li > p:first-child {
	width: 70px;
	flex: 0 0 70px;
	color: #fff;
	font-size: 1.4rem;
	margin-right: 10px;
}



/* フッターbox */
#infoFooter .footerBox {
	width: 580px;

}

/* お問い合わせエリア */
#infoFooter .footer-inquiry {
	margin-bottom: 30px;
}

/* 見出し */
#infoFooter .footer-inquiry h4 {
	position: relative;
	font-size: 2.4rem;
	font-weight: normal;
	margin-bottom: 20px;
	padding: 2px 0;
	padding-left: 70px;
	
}

#infoFooter .footer-inquiry h4::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background: #fff;
	background: -webkit-linear-gradient( left, transparent 0, #fff 20%, #fff 80%, transparent 100% );
	background: -moz-linear-gradient( left, transparent 0, #fff 20%, #fff 80%, transparent 100% );
	background: -ms-linear-gradient( left, transparent 0, #fff 20%, #fff 80%, transparent 100% );
	left: 0;
	bottom: 0;
}

/* アイコン */
#infoFooter .footer-inquiry h4::before {
	position: absolute;
	content: "";
	background: url( "../img/icon_header01.png" ) no-repeat;
	width: 60px;
	height: 66px;
	background-size: cover;
	left: -20px;
	bottom: 0;
}


#infoFooter .footer-inquiry .box {
	display: flex;
	display: -webkit-felx;
	justify-content: space-between;
}


/* 電話 */
#infoFooter .footer-inquiry .tel {
	color: #fff93d;
	font-size: 3.2rem;
	text-shadow: 1px 1px 2px #000;
	line-height: 1.1;
}

#infoFooter .footer-inquiry .tel::before {
	content: "\f2a0";
	font-size: 2.8rem;
	font-weight: bold;
	margin-right: 10px;
}

/* メール */
#infoFooter .footer-inquiry .mailBtn {
	width: 260px;
}

/* サイトマップ */
#infoFooter .footer-sitemap {
}

/* 見出し */
#infoFooter .footer-sitemap h4 {
	font-weight: normal;
	text-align: center;
	background: #3074B1;
	background: #3293b8;
	border-radius: 5px;
	text-shadow: 1px 1px 2px #000;
	margin-bottom: 10px;
}

#infoFooter .footer-sitemap .sitemap {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
}

#infoFooter .footer-sitemap .sitemap li {
	width: 185px;
}

#infoFooter .footer-sitemap .sitemap li a {
	position: relative;
	display: block;
	color: #fff;
	font-size: 1.3rem;
	padding: 5px 0;
	padding-left: 12px;
}

/* アイコン */
#infoFooter .footer-sitemap .sitemap li a::before {
	position: absolute;
	content: "\f0da";
	color: #fca31e;
	color: #fca31e;
	font-weight: bold;
	font-size: 1.2rem;
	left: 2px;
}






/* 帯の部分 */
#lastFooter {
	padding: 5px 0;
	background: #3684c9;
}

#lastFooter .wrap {
}

#lastFooter .name {
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	text-shadow: 1px 1px 2px #333;
}

#lastFooter .box {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
}

#lastFooter .box p {
	font-size: 1.5rem;
}


#lastFooter a {
	color: #fff;
}

/* ヘッダースタイル */

/* style 01 */
.headStyle01 {
	position: relative;
	color: #fff;
	font-size: 2.6rem;
	letter-spacing: .4rem;
	margin-bottom: 40px;
	background: -webkit-linear-gradient( left, transparent 0, #36A1C9 14%, #36A1C9 100% );
	background: -webkit-linear-gradient( left, transparent 0, #3293b8 14%, #3293b8 100% );
	text-shadow: 1px 1px 2px #333;
	padding: 8px 0;
	padding-left: 100px;
	
	border-radius: 5px;
}

/* アイコン基本 */
.headStyle01::before {
	position: absolute;
	content: "";
	width: 60px;
	height: 70px;
	left: 0;
	bottom: 0;
	z-index: 1;
}

/* アイコン01 */
.headStyle01.icon01::before {
	background: url( "../img/icon_header02.png" ) no-repeat;
	background-size: cover;
}

/* アイコン02 */
.headStyle01.icon02::before {
	background: url( "../img/icon_header03.png" ) no-repeat;
	background-size: cover;
}

/* アイコン03 */
.headStyle01.icon03::before {
	width: 85px;
	height: 78px;
	background: url( "../img/icon_header04.png" ) no-repeat;
	background-size: cover;
	left: -12px;
}

/* アイコン04 */
.headStyle01.icon04::before {
	background: url( "../img/icon_header01.png" ) no-repeat;
	background-size: cover;
}

/* アイコン05 */
.headStyle01.icon05::before {
	background: url( "../img/icon_header05.png" ) no-repeat;
	background-size: cover;
	width: 62px;
	height: 74px;
}

/* アイコン06 */
.headStyle01.icon06::before {
	background: url( "../img/icon_header06.png" ) no-repeat;
	background-size: cover;
	width: 50px;
	height: 82px;
}

/* アイコン06 */
.headStyle01.icon07::before {
	background: url( "../img/icon_header07.png" ) no-repeat;
	background-size: cover;
*	width: 50px;
*	height: 82px;
}


/* faq アイコン01 */
.headStyle01.iconFaq01::before {
	background: url( "../img/icon_faq01.png" ) no-repeat;
	background-size: cover;
	width: 100px;
	height: 74px;
	left: -10px;

}




.headStyle01::after {
	position: absolute;
	content: "";
	width: 99%;
	height: 84%;
	border-top: 1px #fff dashed;
	border-bottom: 1px #fff dashed;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}



/* style 02 */
.headStyle02 {
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	background: #3684c9;
	background: -webkit-linear-gradient( left, #277896 0, #3293b8 20%, #3293b8 80%, #277896 100% );
	background: -moz-linear-gradient( left, #277896 0, #3293b8 20%, #3293b8 80%, #277896 100% );
	background: -ms-linear-gradient( left, #277896 0, #3293b8 20%, #3293b8 80%, #277896 100% );
	font-weight: normal;
	padding: 4px 10px;
	border-radius: 5px;
	margin-bottom: 10px;
	
	text-shadow: 1px 1px 2px #333;
	
}


/* style 02 */
.headStyle03 {
	position: relative;
	font-size: 2.0rem;
	margin-bottom: 20px;
	line-height: 1.3;
	border-top: 1px #aaa solid;
	border-bottom: 1px #aaa solid;
	padding: 10px 0;
	padding-left: 80px;
}

/* アイコン基本 */
.headStyle03::before {
	position: absolute;
	content: "";
	width: 72px;
	height: 70px;
	bottom: 0;
	z-index: 1;
}

/* アイコン01 */
.headStyle03.icon01::before {
	background: url( "../img/icon_faq02.png" ) no-repeat;
	background-size: cover;
	left: -10px;
}
/* サムネイル */
.thumb {
	cursor: pointer;
}

.zimage {
	display: none;
	position: fixed;
	background: rgba( 50,50,50,.8);
	
	opacity: 0;
	
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	
	z-index: 102;
}

/* 描画エリア */
.zimage .zwrap {
	position: fixed;
	width: 100%;
	height: 100%;
}


/* 拡大画像box */
.zimage .img {
	position: absolute;
}

/* 画像 */
.zimage .img img {
	opacity: 0;
}

/* 拡大画像boxのアニメーション */
.thumbAnime {
	animation: animethumb .6s forwards;
}

@keyframes animethumb {
	0% {
		transform: translate( 0, 0 );
		-webkit-transform: translate( 0, 0 );
		-moz-transform: translate( 0, 0 );
		-ms-transform: translate( 0, 0 );
	}
	
	100% {
		top: 50%;
		left: 50%;
		transform: translate( -50%, -50% );
		-webkit-transform: translate( -50%, -50% );
		-moz-transform: translate( -50%, -50% );
		-ms-transform: translate( -50%, -50% );
	}
	
}

.thumbAnimeImg {
	animation: animethumbImg .6s forwards;
}

@keyframes animethumbImg {
	0% {
	}
	
	100% {
		width: 100%;
		height: 100%;
	}
}



/*---------------------------
	押し込んだ表現
---------------------------*/
.pressButton {
	outline: none;
	box-shadow: 2px 2px  #333;
	background: -webkit-linear-gradient( top, #eee 0%, #bbb 100% );
	background: -moz-linear-gradient( top, #eee 0%, #bbb 100% );
	background: -ms-linear-gradient( top, #eee 0%, #bbb 100% );

}

/* 押された時 */
.pressButton:active {
	box-shadow: 0 0 0 transparent;
	transform: translate( 2px, 2px );
	-webkit-transform: translate( 2px, 2px );
	-moz-transform: translate( 2px, 2px );
	-ms-transform: translate( 2px, 2px );
}


/*---------------------------
　汎用アニメーション
---------------------------*/
/* beat */
@keyframes animeBeat {
	0% { filter: drop-shadow( 0 0 0 #000 ); }
	100% { filter: drop-shadow( 0 0 12px transparent ); }
}

/* fade in */
@keyframes animeDefFadeIn {
	0% { opacity: 0; }
	100% { opacity: 1; }
}


/* 上から下へ移動 */
.effectMove01 {
	position: relative;
	animation: animeEffectMove01 1.6s forwards;
}

.effectInit01 {
	opacity: 0;
}

@keyframes animeEffectMove01 {
	0% {
		opacity: 0;
		transform: translateY( -20px );
		-webkit-transform: translateY( -20px );
		-moz-transform: translateY( -20px );
		-ms-transform: translateY( -20px );
	}

	100% {
		opacity: 1;
		transform: translateY( 0 );
		-webkit-transform: translateY( 0 );
		-moz-transform: translateY( 0 );
		-ms-transform: translateY( 0 );
	}
}


/*---------------------------
　縁取り
---------------------------*/
/*
	text-shadow: #ffffff 2px 0px,
				 #ffffff -2px 0px,
				 #ffffff 0px -2px,
				 #ffffff 0px 2px,
				 #ffffff 2px 2px,
				 #ffffff -2px 2px,
				 #ffffff 2px -2px,
				 #ffffff -2px -2px,
				 #ffffff 1px 2px,
				 #ffffff -1px 2px,
				 #ffffff 1px -2px,
				 #ffffff -1px -2px,
				 #ffffff 2px 1px,
				 #ffffff -2px 1px,
				 #ffffff 2px -1px,
				 #ffffff -2px -1px;
*/
/*================================================
	お問い合わせフォーム
================================================*/

/*----------------------------
	progress
----------------------------*/

/* 進捗 */
[id^="content-inquiry"] .progress {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	margin-bottom: 20px;
	overflow: hidden;
}

/* 各進捗項目 */
[id^="content-inquiry"] .progress p {
	position: relative;
	width: 230px;
	padding: 10px 0; 
	font-size: 2.0rem;
	color: #333;
	background: #e8eaed;
	text-align: center;
	line-height: 1;
}

/* 共通 */
[id^="content-inquiry"] .progress p:not(:first-child):before,
[id^="content-inquiry"] .progress p:not(:last-child):after,
[id^="content-inquiry"] .progress .now:before,
[id^="content-inquiry"] .progress .now:after {
	position: absolute;
	content: "";
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}


/* 後ろの部分 */
[id^="content-inquiry"] .progress p:not(:first-child):before {
	border-top: 24px transparent solid;
	border-left: 16px #fff solid;
	border-bottom: 24px transparent solid;
	left: -1px;
}

/* 前の部分 */
[id^="content-inquiry"] .progress p:not(:last-child):after {
	border-top: 24px transparent solid;
	border-left: 15px #e8eaed solid;
	border-bottom: 24px transparent solid;
	right: -13px;
}


/* 進捗(現在) */
[id^="content-inquiry"] .progress p.now {
	color: #fff;
	text-shadow: 1px 1px #666;
	background: #f9a909;
}

/* 前の部分 (現在) */
[id^="content-inquiry"] .progress p.now::after {
	border-left: 15px #f9a909 solid;
}


/* beat box */
@keyframes animeBeat {
	0% { filter: drop-shadow( 0 0 0 #000 ); }
	100% { filter: drop-shadow( 0 0 12px transparent ); }
}


/*----------------------------
	共通
----------------------------*/
[id^="content-inquiry"] .first {
	margin-bottom: 30px;
}

[id^="content-inquiry"] .form {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

[id^="content-inquiry"] .form > li {
	margin-bottom: 30px;
}

/* 項目名 */
[id^="content-inquiry"] .form > li:nth-child(2n-1) {
	position: relative;
	display: flex;
	display: -webkit-flex;
	align-items: center;
	
	width: 230px;
	text-shadow: 1px 1px 1px #333;
	border-radius: 5px;
	padding-left: 10px;
}


[id^="content-inquiry"] .form > li:nth-child(2n-1) p {
	font-size: 1.8rem;
}

/* 入力フォーム */
[id^="content-inquiry"] .form > li:nth-child(2n) {
	width: 470px;
}



[id^="content-inquiry"] .submitBox {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
}

[id^="content-inquiry"] .submitBox .button {
	width: 320px;
	padding: 16px 0;
	font-size: 2.0rem;
	border-radius: 5px;
	border: none;
	margin: 0 auto;
}


/*================================================
	お問い合わせフォーム - 作成
================================================*/
#content-inquiry01 {
}



/* 項目名 */
#content-inquiry01 .form > li:nth-child(2n-1) {
	color: #fff;
	background: #3293B8;
}

#content-inquiry01 .form > li:nth-child(2n-1) p {
	font-size: 1.8rem;
}


/* 必須 */
#content-inquiry01 .required::before {
	position: absolute;
	content: "必須";
	right: 10px;
	color: #fff;
	font-size: 1.4rem;
	background: #f33;
	padding: 1px 8px;
	
	border-radius: 5px;
	text-shadow: 1px 1px 1px #000;
}


/* text */
#content-inquiry01 .form input[type="text"],
#content-inquiry01 .form input[type="email"],
#content-inquiry01 .form input[type="tel"],
#content-inquiry01 .form select {
	width: 260px;
	font-size: 1.8rem;
	border-radius: 5px;
	border: 1px #aaa solid;
	outline: none;
	padding: 8px 10px;
}

#content-inquiry01 .form select {
	width: auto;
	font-size: 1.6rem;
}


#content-inquiry01 .form input[type="email"] {
	width: 400px;
}


#content-inquiry01 .form textarea {
	width: 100%;
	height: 22rem;
	padding: 5px;
}


/* 種別 */
#content-inquiry01 .typeButton {
	display: flex;
	display: -webkit-flex;
}

#content-inquiry01 .typeButton label {
	display: block;
	width: 140px;
	font-size: 1.6rem;
	text-align: center;
	padding: 5px 0;
	border: 1px #aaa solid;
	border-radius: 5px;
}

#content-inquiry01 .typeButton .now {
	color: #fff;
	background: #fc951e;
	text-shadow: 1px 1px 1px #333;
}


#content-inquiry01 .typeButton label:first-child {
	margin-right: 20px;
}


#content-inquiry01 .typeButton input[type="radio"] {
	display: none;
}



/* メール */
#content-inquiry01 ol li:not(:last-child) {
	margin-bottom: 16px;
}



/* 住所 */
#content-inquiry01 .postBox {
	display: flex;
	display: -webkit-flex;
}

/* 住所の見出し(横並び) */
#content-inquiry01 .fbox {
	display: flex;
	display: -webkit-flex;
}

#content-inquiry01 .fbox:not(:last-of-type) {
	margin-bottom: 5px;
}

/* 住所の見出し */
#content-inquiry01 .head {
	position: relative;
	flex: 0 0 80px;
	background: #ccc;
	margin-right: 10px;
	border-radius: 5px;
}

#content-inquiry01 .head span {
	position: absolute;
	display: block;
	text-align: center;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

/* 郵便番号 */
#content-inquiry01 .postBox input[name="in-post1"] {
	width: 50px;
}

#content-inquiry01 .postBox input[name="in-post2"] {
	width: 60px;

}
/* 郵便番号のバー */
#content-inquiry01 .postBox .bar {
	position: relative;
	width: 20px;
}

#content-inquiry01 .postBox .bar span {
	position: absolute;
	display: block;
	font-size: 1.4rem;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
}


/* 都道府県 */
#content-inquiry01 .form .address1 select {
	font-size: 1.4rem;
	padding: 8px 5px;
}


/* 住所 */
#content-inquiry01 .form .address2 input {
	width: 100%;
	font-size: 1.4rem;
	padding: 10px 10px;
}



/*----------------------------
	error
----------------------------*/

/* エラーbox */
#content-inquiry01 .formError {
	background: #fffef2;
	border: 1px #fc3f3f dotted;
	padding: 10px;
	margin-bottom: 30px;
	color: #f00;
}

/* 各行 */
.errorList li {
	display: flex;
	display: -webkit-flex;
}


/* エラー見出し */
#content-inquiry01 .errorList li:first-child {
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.4;
	background: #fc3f3f;
	padding: 5px 15px;
	margin-bottom: 10px;
}


/* エラー文字 */
#content-inquiry01 .errorList li p {
	font-size: 1.4rem;
	line-height: 1.4;
	padding: 5px;
}



/* エラーが起きてるフォーム名 */
#content-inquiry01 .errorList li p:first-child {
	position: relative;
	width: 240px;
	margin-right: 20px;
	padding-left: 16px;
}



/* 矢印 */
#content-inquiry01 .errorList li p:first-child:before {
	position: absolute;
	content: "";
	border-left: 4px #f00 solid;
	border-top: 4px transparent solid;
	border-bottom: 4px transparent solid;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

#content-inquiry01 .errorList li p:last-child {
	position: relative;
}


#content-inquiry01 .errorBox {
	display: none;
}



/*================================================
	お問い合わせフォーム - 確認
================================================*/
#content-inquiry02 {
}

/* 項目名 */
#content-inquiry02 .form > li:nth-child(2n-1) {
	color: #fff;
	background: #3293B8;
	min-height: 50px;
}

#content-inquiry02 .form .cbox {
	display: flex;
	display: -webkit-flex;
	align-items: center;
}

#content-inquiry02 .form > li:nth-child(2n) {
	border-bottom: 1px #ccc solid;
}


#content-inquiry02 .form > li:nth-child(2n) p {
	font-size: 1.8rem;
}

#content-inquiry02 .form > li:nth-child(2n) pre {
	font-size: 1.6rem;
	line-height: 1.4;
	
}


/*================================================
	お問い合わせフォーム - 完了
================================================*/
#content-inquiry03 {
}

#content-inquiry03 .commentBox {
    background: #fdffdd;
    border: 1px #aaa dotted;
    padding: 20px;
    margin-bottom: 50px;
}


#content-inquiry03 .commentBox h3 {
    width: 180px;
    text-align: center;
    color: #fff;
    background: #ee2222;
    border-radius: 8px;
    margin-bottom: 10px;
}

#content-inquiry03 .commentBox p {
	font-size: 1.6rem;
}


#content-inquiry03 .submitBox .button {
	color: #fff;
	background: #3292B8;
	background: -webkit-linear-gradient( top, #3292B8 0, #20627d 100% );
	padding: 10px 0;
	text-align: center;
}
