@charset "utf-8";

/*カラー設定
---------------------------------------------------------------------------
コーポレートカラー
1f2b64
31 43 100

ボックス枠
7bb689

---------------------------------------------------------------------------*/


/*リセットCSS（sanitize.css）の読み込み
---------------------------------------------------------------------------*/
@import 'sanitize.css';

/*Font Awesomeの読み込み
---------------------------------------------------------------------------*/
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css");

/*Google Fontsの読み込み
---------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=BIZ+UDPGothic&display=swap');

/*テンプレート専用cssファイルの読み込み
---------------------------------------------------------------------------*/
/*@import url("animation.css");*/
/*@import url("inview.css");*/





/*全体の設定
---------------------------------------------------------------------------*/
html,body {
	margin: 0;padding: 0;
	height: 100%;
	font-size: 13px;	/*基準となるフォントサイズ。下の方にある「画面幅900px以上」で基準を大きなサイズに再設定しています。*/
}

body {
	font-family: 'BIZ UDPGothic', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	/*フォント種類*/
	-webkit-text-size-adjust: none;
	background: #fff;	/*背景色*/
	color: #555;		/*全体の文字色*/
	line-height: 2;		/*行間*/
	overflow-x: hidden;
}

/*リセット*/
figure {margin: 0;}
dd {margin: 0;}
nav {margin: 0;padding: 0;}

/*table全般の設定*/
table {border-collapse:collapse;}

/*画像全般の設定*/
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}

/*videoタグ*/
video {max-width: 100%;}

/*iframeタグ*/
iframe {width: 100%;}

/*ul,olタグ*/
ul, ol {margin-bottom: 30px;}


/*リンクテキスト全般の設定
---------------------------------------------------------------------------*/
a {
	color: #57524b;	/*文字色*/
	transition: 0.3s;
}

a:hover {
	opacity: 0.8;	/*マウスオン時に80%の透明度にする*/
}


/*sectionタグと、詳細ページの共通設定
---------------------------------------------------------------------------*/
section,
main > article {
	margin: 0 auto;
	max-width: 1200px;	/*最大幅。これ以上広がらない。*/
	padding: 2% 3.8%;		/*ボックス内の余白*/
}


/*containerブロック
---------------------------------------------------------------------------*/
#container {
	height: 100%;
	display: flex;					/*flexボックスを使う指定*/
	flex-direction: column;			/*子要素を縦並びにする*/
	justify-content: space-between;	/*並びかたの種類の指定*/
}


/*header（ロゴなどが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	display: flex;				/*flexボックスを使う指定*/
	align-items: center;		/*垂直揃えの指定。上下中央に配置されるように。*/
/*	justify-content: flex-end;*/	/*並びかたの種類の指定*/
	justify-content: flex-start;	/*並びかたの種類の指定*/
	background: #1f2b64;			/*背景色*/
	color: #fff;				/*文字色*/
	position: relative; z-index: 1;
}

/*ヘッダーのリンクテキストの文字色*/
header a {
	color: #fff;
}

/*ロゴ画像*/
header #logo img {display: block;}
header #logo {
	margin: 0;
	background: #1f2b64;/*背景色*/
	width: 210px;		/*ロゴの幅*/
	height: 100px;
	padding: 33px 20px 32px 20px;	/*ロゴ内の余白。ロゴ画像と背景グラデーションの余白です。*/
}


/*検索・ログイン・新規登録
---------------------------------------------------------------------------*/
#header-r {
	display: flex;				/*flexボックスを使う指定*/
	margin-left: auto;
	margin-right: 50px;
}

/*検索画像*/
#header-r img.serch {display: block;}
#header-r .serch {
	margin: 0;
	background: #1f2b64;/*背景色*/
	width: 51px;		/*ロゴの幅*/
	height: 100px;
	padding: 32px 7px 31px 7px;	/*ロゴ内の余白。ロゴ画像と背景グラデーションの余白です。*/
}

/*ログイン*/
#header-r .login {
	padding: 35px 15px;	/*上下、左右への余白*/
}

#menubar .login a {
	display: block;
	text-decoration: none;
	text-align: center;		/*テキストを中央に*/
}

/*新規登録*/
#header-r .add {
	display: none;
}

.login .selectbox-002 {
    display: inline-flex;
    align-items: center;
    position: relative;
}

.login .selectbox-002::after {
    position: absolute;
    right: 15px;
    width: 10px;
    height: 7px;
    background-color: #ffffff;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
    pointer-events: none;
}

.login .selectbox-002 select {
    appearance: none;
    min-width: 230px;
    height: 2.8em;
    padding: .4em calc(.8em + 30px) .4em .8em;
    border: 1px solid #1f2b64;
    border-radius: 25px;
    background-color: #fff;
    color: #ffffff;
    font-size: 1em;
    cursor: pointer;
}


/*menubarブロック初期設定
---------------------------------------------------------------------------*/
#menubar ul {list-style: none;margin: 0;padding: 0;}

/*メニューを非表示にしておく*/
#menubar {display: none;}

/*開閉用のスタイル*/
#menubar.db {display: block;}
#menubar.dn {display: none;}

/*メニュー１個あたりの設定*/
#menubar a {
	display: block;
	text-decoration: none;
	text-align: center;		/*テキストを中央に*/
/*	letter-spacing: 0.1em;*/	/*文字間隔を少しだけ広くする指定*/
}


/*小さな端末時にアイコン類だけ横並びにする
---------------------------------------------------------------------------*/
.s #menubar.db li.inline,
.s #menubar.db li.inline a {
	display: inline-block;
}


/*小さな端末用の開閉ブロック設定
---------------------------------------------------------------------------*/
/*メニューブロック設定*/
.s #menubar.db {
	position: fixed;overflow: auto;z-index: 100;
	left: 0px;top: 0px;
	width: 100%;
	height: 100%;
	padding: 70px 0;	/*上下、左右へのブロック内の余白*/
	background: rgba(0,0,0,0.9);		/*背景色。0,0,0は黒の事で0.9は色が90%出た状態の事。*/
	color: #fff;						/*文字色*/
	animation: animation1 0.2s both;	/*animation.cssの、animation1を実行する。0.2sは0.2秒の事。*/
	text-align: center;
}

/*メニュー１個あたりの設定*/
.s #menubar.db a {
	color: #fff;	/*文字色*/
	padding: 20px;	/*メニュー内の余白*/
}


/*ドロップダウンメニュー
---------------------------------------------------------------------------*/
/*ドロップダウンを非表示にしておく*/
#menubar .ddmenu_parent ul {
	display: none;
}

/*ドロップダウンメニューを持つ親に矢印アイコンをつける設定*/
a.ddmenu::before {
	font-family: "Font Awesome 5 Free";	/*Font Awesomeを使う指定*/
	content: "\f103";		/*使いたいアイコン名をここで指定。Font Awesomeに記載されています。詳しくは当テンプレートのマニュアルを読んで下さい。*/
	font-weight: bold;		/*この手の設定がないとアイコンが出ない場合があります*/
	margin-right: 0.5em;	/*アイコンとテキストとの間に空けるスペース*/
}

/*ドロップダウンを持つ親のマウスオン時にリンク用のカーソルでなくデフォルトの矢印を出す*/
a.ddmenu {
	cursor: default;
}

/*ドロップダウンメニュー１個あたりの設定*/
.ddmenu_parent ul a {
	background: rgba(0,0,0,0.8);	/*背景色。0,0,0は黒の事で0.8は色が80%出た状態の事。*/
}


/*３本バー（ハンバーガー）アイコン設定
---------------------------------------------------------------------------*/
/*開閉用のスタイル*/
#menubar_hdr.db {display: flex;}
#menubar_hdr.dn {display: none;}

/*３本バーを囲むブロック*/
#menubar_hdr {
	position: fixed;z-index: 101;
	cursor: pointer;
	right: 3%;			/*左からの配置場所指定*/
	top: 0px;			/*上からの配置場所指定*/
	padding: 16px 14px;	/*上下、左右への余白*/
	width: 52px;		/*幅（３本バーが出ている場合の幅になります）*/
	height: 52px;		/*高さ*/
	display: flex;					/*flexボックスを使う指定*/
	flex-direction: column;			/*子要素（３本バー）を縦並びにする*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	order: 0;						/*表示させる順番。「#menubar_hdr」「#logo」「#header-icon」それぞれに指定しており、数字の「小さな順」に左から並びます。*/
	background: rgba(0,0,0,0.5);	/*背景色*/
}

/*バー１本あたりの設定*/
#menubar_hdr span {
	display: block;
	transition: 0.3s;	/*アニメーションにかける時間。0.3秒。*/
	border-top: 2px solid #fff;	/*線の幅、線種、色*/
}

/*×印が出ている状態の設定。※１本目および２本目のバーの共通設定。*/
#menubar_hdr.ham span:nth-of-type(1),
#menubar_hdr.ham span:nth-of-type(3) {
	transform-origin: center center;	/*変形の起点。センターに。*/
	width: 26px;						/*バーの幅*/
}

/*×印が出ている状態の設定。※１本目のバー。*/
#menubar_hdr.ham span:nth-of-type(1){
	transform: rotate(45deg) translate(6px, 7px);	/*回転45°と、X軸Y軸への移動距離の指定*/
}

/*×印が出ている状態の設定。※３本目のバー。*/
#menubar_hdr.ham span:nth-of-type(3){
	transform: rotate(-45deg) translate(6px, -7px);	/*回転-45°と、X軸Y軸への移動距離の指定*/
}

/*×印が出ている状態の設定。※２本目のバー。*/
#menubar_hdr.ham span:nth-of-type(2){
	display: none;	/*２本目は使わないので非表示にする*/
}


/*mainブロック設定
---------------------------------------------------------------------------*/
/*mainブロックの設定*/
main {	
	flex: 1;
}

/*mainブロック内のh2タグ*/
main h2 {
	margin-bottom: 30px;	/*下に空けるスペース*/
	position: relative;		/*アニメーションに必要な設定*/
	letter-spacing: 0.1em;	/*文字間隔を少しだけ広くとる設定*/
	text-align: center;
	color: #1f2b64;
}

/*mainブロック内のh3タグ*/
main h3 {
	margin-bottom: 20px;	/*下に空けるスペース*/
}

/*mainブロックのh3タグの冒頭の装飾設定*/
main h3::before {
	display: inline-block;
	content: "■";			/*この記号を表示させる*/
	transform: scale(0.5);	/*実寸の50%に縮小する指定*/
	padding-right: 10px;	/*記号とテキストとの間にとる余白*/
	margin-left: -0.4em;	/*少しだけ左側に移動する*/
}

main h4.boxh4 {
	display: inline-block;
	border: 3px #7bb689 solid;
	padding: 0 1em;
}

/*mainブロックのpタグ*/
main p {
	margin: 0 20px 30px;	/*上、左右、下へ空けるスペース*/
}


main p .aboutus {
	margin: 30px 20px 30px;	/*上、左右、下へ空けるスペース*/
}

/*フッター設定
---------------------------------------------------------------------------*/
footer small {font-size: 100%;}

footer {
	font-size: 0.7rem;		/*文字サイズ*/
	text-align: center;		/*内容をセンタリング*/
	padding: 20px;			/*ボックス内の余白*/
	background: #111;		/*背景色*/
	color: #fff;			/*文字色*/
}

/*リンクテキスト*/
footer a {text-decoration: none;color: #fff;}

/*著作部分*/
footer .pr {display: block;}


/*フッターメニュー
---------------------------------------------------------------------------*/
/*メニューブロック全体*/
#footermenu {
	margin: 0;padding: 0;
	margin-bottom: 15px;	/*下に空けるスペース*/
}

/*メニュー１個あたり*/
#footermenu li {
	display: inline-block;	/*横並びにする*/
	padding: 0 10px;		/*上下、左右への余白*/
	font-size: 1.2em;
}


/*スライドショー（slickを使用）
---------------------------------------------------------------------------*/
#mainimg {
	clear: both;
	position: relative;
}

/*サービス登録ボタン*/
#mainimg #btn_add {
	position: absolute;
/*	left: 45%;*/		/*メイン画像に対して左から10%の場所に配置*/
	left: 40%;		/*メイン画像に対して左から10%の場所に配置*/
	bottom: 10%;	/*メイン画像に対して下から20%の場所に配置*/
/*	width: 23%;*/	/*画像幅*/
	background: #fff;	 /*背景色*/
	color: #000;
	border-radius: 3px;		/*角丸のサイズ。ほんの少しだけ角が丸くなります。*/
/*	padding: 12px 20px;*/	/*上下、左右への余白。*/
	padding: 5px 10px;	/*上下、左右への余白。*/
}

#mainimg #btn_add a,
#mainimg #btn_add input {
	text-decoration: none;
	border: none;
	color: #000;			/*文字色*/
	border-radius: 3px;		/*角丸のサイズ。ほんの少しだけ角が丸くなります。*/
	font-size: 1rem;		/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
	background: #fff;	/*背景色*/
	letter-spacing: 0.1em;	/*文字間隔を少し広くする指定*/
}

/*ボタンのマウスオン時*/
#mainimg #btn_add:hover{
	opacity: 0.8;	/*透明度80%にする*/
}


/*パンくず
---------------------------------------------------------------------------*/
#breadcrumb {
	border-bottom: 1px dotted #aaa;
}

.breadcrumb {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin-bottom: 1em;
}

.breadcrumb li:not(:last-of-type)::after {
	content: "＞";
	margin: 0 .6em; /* 記号の左右の余白 */
	color: #777; /* 記号の色 */
}


/*「お知らせ」ブロック
---------------------------------------------------------------------------*/
/*お知らせブロック*/
#new {
	margin: 0;
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	padding: 0 20px;	/*上下、左右へのボックス内の余白*/
	background: #fff;
	margin-bottom: 30px;
}

/*日付(dt)、記事(dd)共通設定*/
#new dt,
#new dd {
	padding: 5px 0;		/*上下、左右へのボックス内の余白*/
}

/*日付(dt)設定*/
#new dt {
	width: 8em;	/*幅。8文字(em)分。※下の「900px以上」の端末用の設定に再設定があります。*/
}

/*日付の横のマーク（共通設定）*/
#new dt span {
	display: none;	/*小さな端末では非表示にしておく。*/
}

/*記事(dd)設定*/
#new dd {
	width: calc(100% - 8em);	/*「8em」は上の「#new dt」のwidthの値です。※下の「900px以上」の端末用の設定に再設定があります。*/
}


/*「footerlist」ブロック
---------------------------------------------------------------------------*/
/*footerlistブロック*/
.flist {
	margin: 0;
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	padding: 0 20px;	/*上下、左右へのボックス内の余白*/
	background: #fff;
	margin-bottom: 30px;
}

/*日付(dt)、記事(dd)共通設定*/
.flist dt,
.flist dd {
	padding: 5px 0;		/*上下、左右へのボックス内の余白*/
}

/*日付(dt)設定*/
.flist dt {
	width: 5em;	/*幅。8文字(em)分。※下の「900px以上」の端末用の設定に再設定があります。*/
}

.flist .ftitle {
	border: 2px #7bb689 solid;
	padding: 0 1em;
}


/*記事(dd)設定*/
.flist dd {
	width: calc(100% - 5em);	/*「8em」は上の「#new dt」のwidthの値です。※下の「900px以上」の端末用の設定に再設定があります。*/
/*	padding-left: 10px;*/		/*上下、左右へのボックス内の余白*/
/*	width: 10em;*/	/*「8em」は上の「#flist dt」のwidthの値です。※下の「900px以上」の端末用の設定に再設定があります。*/
}

/*footerlistブロック*/
.fitem {
	margin: 0;
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	padding: 0;	/*上下、左右へのボックス内の余白*/
	background: #fff;
}

/*日付(dt)、記事(dd)共通設定*/
.fitem dt,
.fitem dd {
	padding: 0;		/*上下、左右へのボックス内の余白*/
}

/*日付(dt)設定*/
.fitem dt {
	border: 2px #7bb689 solid;
	padding: 0 1em;
	width: 5em;	/*幅。8文字(em)分。※下の「900px以上」の端末用の設定に再設定があります。*/
	margin-top: 0;
	margin-bottom: 0;
}

/*記事(dd)設定*/
.fitem dd {
	width: auto;
	padding-left: 10px;		/*上下、左右へのボックス内の余白*/
/*	width: 10em;*/	/*「8em」は上の「#fitem dt」のwidthの値です。※下の「900px以上」の端末用の設定に再設定があります。*/
}


/*stepboxブロック 4列
---------------------------------------------------------------------------*/
.stepbox4 {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	padding: 0px;			/*ボックス内の余白*/
	margin-bottom: 30px;	/*ボックス同士の上下間に空けるスペース*/
	background: #fff;		/*背景色*/
	color: #000;			/*文字色*/
/*	position: relative;*/
}

.stepbox4-item {
	width: 100%;
	margin: 20px 0;
}

.stepbox4-item table {
	width: 100%;
/*	border: 1px #1f2b64 solid;*/
	border: 1px #7bb689 solid;
}

.stepbox4-item td.img {
	width: 150px;
	background: #1f2b64;
	text-align: center;
	vertical-align: middle;
}

.stepbox4-item th {
	padding: 10px;
	background: #1f2b64;
	text-align: center;
	color: #fff;
}
.stepbox4-item td.text {
	padding: 10px;
	background: #fff;
	text-align: center;
	border: 1px #7bb689 solid;
	line-height: 4em;
}


/*boxブロック 2列
---------------------------------------------------------------------------*/
.box2 {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	padding: 0px;			/*ボックス内の余白*/
	margin-bottom: 30px;	/*ボックス同士の上下間に空けるスペース*/
	background: #fff;		/*背景色*/
	color: #000;			/*文字色*/
/*	position: relative;*/
}

.box2-item {
	width: 100%;
	margin: 20px 0;
}

.box2-item table {
	width: 100%;
/*	border: 1px #1f2b64 solid;*/
	border: 1px #7bb689 solid;
}

.box2-item td.img {
	width: 150px;
	background: #1f2b64;
	text-align: center;
	vertical-align: middle;
}

.box2-item td.text {
	padding: 10px;
	background: #fff;
	text-align: left;
}


/*boxブロック 3列
---------------------------------------------------------------------------*/
.box3 {
	margin-bottom: 30px;	/*ボックス同士の上下間に空けるスペース*/
	padding: 20px;			/*ボックス内の余白*/
	background: #fff;		/*背景色*/
	color: #999;			/*文字色*/
	position: relative;
/*	border: 1px #1f2b64 solid;*/
	border: 1px #7bb689 solid;
	border-radius: 10px;		/*角丸のサイズ。ほんの少しだけ角が丸くなります。*/
}

/*ボックス内のh4タグ*/
.box3 h4 {
	margin: 0;
	color: #666;	/*文字色*/
	text-align: center;
}
.box3 h4 a {
	color: #666;	/*リンクテキストの文字色*/
}

/*ボックス内のpタグ*/
.box3 p {
	margin: 0;
	font-size: 0.8em;	/*文字サイズを80%に*/
	text-align: center;
}

/*list内でのbtn*/
.box3 .btn {
	margin-top: 1em;	/*ボタンの上に１文字分のスペースを空ける*/
}
.box3 .btn a {
	display: block;
}


/*boxブロック 4列
---------------------------------------------------------------------------*/
.box4 {
	display: block;
	margin-bottom: 30px;	/*ボックス同士の上下間に空けるスペース*/
	padding: 15px;			/*ボックス内の余白*/
	background: #fff;		/*背景色*/
	color: #999;			/*文字色*/
	position: relative;
/*	border: 3px #1f2b64 solid;*/
	border: 3px #7bb689 solid;
	border-radius: 30px;		/*角丸のサイズ。丸くなります。*/
	font-weight: bold;
}

/*ボックス内のh4タグ*/
.box4 h4 {
	margin: 0;
	color: #666;	/*文字色*/
	text-align: center;
}
.box4 h4 a {
	color: #666;	/*リンクテキストの文字色*/
	text-decoration: none;
}

/*ボックス内のpタグ*/
.box4 p {
	margin: 0;
	font-size: 1em;	/*文字サイズを80%に*/
	text-align: center;
	text-decoration: none;
}

.box4 p a {
	text-decoration: none;
}

/*list内でのbtn*/
.box4 .btn {
	margin-top: 1em;	/*ボタンの上に１文字分のスペースを空ける*/
}
.box4 .btn a {
	display: block;
}

.box4 a {
	display: block;
}


/*listNewブロック NEW
---------------------------------------------------------------------------*/
.listNew {
	margin-bottom: 30px;	/*ボックス同士の上下間に空けるスペース*/
	padding: 20px;			/*ボックス内の余白*/
	background: #fff;		/*背景色*/
	color: #999;			/*文字色*/
	box-shadow: 5px 5px 20px rgba(0,0,0,0.1);	/*ボックスの影。右へ、下へ、ぼかし幅、0,0,0は黒の事で0.1は色が10%出た状態。*/
	position: relative;
	border-radius: 3px;		/*角丸のサイズ。ほんの少しだけ角が丸くなります。*/
	border: 1px #7bb689 solid;
}

/*ボックス内のh4タグ*/
.listNew h4 {
	margin: 0;
	color: #666;	/*文字色*/
	text-align: center;
}
.listNew h4 a {
	color: #666;	/*リンクテキストの文字色*/
}

/*ボックス内のpタグ*/
.listNew p {
	margin: 0;
	font-size: 0.8em;	/*文字サイズを80%に*/
	text-align: center;
}

/*ボックス内のpタグ*/
.listNew a {
	text-decoration: none;
}

/*listNew内のNEWマーク*/
.listNew .new {
	font-size: 0.6em;		/*文字サイズ*/
	background: #1f2b64;	/*背景色*/
	color: #fff;			/*文字色*/
	width: 50px;			/*幅*/
	line-height: 50px;		/*高さ*/
	text-align: center;		/*テキストをセンタリング*/
	position: absolute;
	left: 40px;			/*listNewブロックに対して左からの配置場所の指定*/
	top: 0px;				/*listNewブロックに対して上からの配置場所の指定*/
}

/*listNew内でのbtn*/
.listNew .btn {
	margin-top: 1em;	/*ボタンの上に１文字分のスペースを空ける*/
}
.listNew .btn a {
	display: block;
}

/*listNew内のハートマーク*/
.listNew .heart {
	font-size: 0.6em;		/*文字サイズ*/
/*	background: #1f2b64;*/	/*背景色*/
	color: #fff;			/*文字色*/
	width: 50px;			/*幅*/
	line-height: 50px;		/*高さ*/
	text-align: center;		/*テキストをセンタリング*/
	position: absolute;
	right: 10px;				/*listNewブロックに対して右からの配置場所の指定*/
	bottom: 0px;			/*listNewブロックに対して下からの配置場所の指定*/
}


/*listNewボックス内の情報詳細欄（tableっぽく見える所）
---------------------------------------------------------------------------*/
/*ボックス全体*/
dl.line {
	margin: 0;
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	font-size: 0.7em;	/*文字サイズを70%に。*/
	border-top: 1px solid #ccc;	/*上の線の幅、線種、色*/
}

/*左右のボックス*/
dl.line dt, dl.line dd {
	border-bottom: 1px solid #ccc;	/*下線の幅、線種、色*/
	padding: 0 5px;					/*上下、左右へのボックス内の余白*/
}

/*左のボックス*/
dl.line dt {
	width: 8em;				/*幅。8文字(em)分。*/
	background: #f0f0f0;	/*背景色*/
}
/*右のボックス*/
dl.line dd {
	width: calc(100% - 8em);	/*「8em」は上の「dl.line dt」のwidthの値です。*/
}

/*box2ブロック内でのline設定*/
.box2 dl.line dt:nth-of-type(1), .box2 dl.line dd:nth-of-type(1),
.box2 dl.line dt:nth-of-type(2), .box2 dl.line dd:nth-of-type(2) {
	border-top: none;
}


/*contentsブロック設定（mainlist、sub、sideを囲むブロック）
---------------------------------------------------------------------------*/
#contents {
	margin: 0 3%;		/*外側に空けるスペース*/
}

#contents h2 {
	display: block;	/*flexボックスを使う指定*/
}


/*mainlistブロック設定
---------------------------------------------------------------------------*/
#mainlist {
	order: 0;		/*表示させる順番。mainlist、sub、sideそれぞれに指定しており、数字の「小さな順」に上から並びます。*/
	margin-bottom: 40px;
}

/*mainlistブロック内のh3タグ*/
#mainlist h3 {
/*	position: relative;*/
/*	font-size: 1.1rem;*/		/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
/*	font-weight: normal;*/	/*文字の太さを標準に*/
/*	background: #f7f7f7;*/	/*背景色*/
/*	border: 1px solid #e5e5e5;*/	/*枠線の幅、線種、色*/
/*	padding: 5px 20px;*/		/*h3タグ内の余白。上下、左右の順。*/
/*	margin: 0 0 20px;*/		/*h3タグの外側にとるスペース。上、左右、下の順。*/
}

/*mainlistブロックのpタグ*/
#mainlist p {
/*	margin: 0 20px 30px;*/	/*上、左右、下へ空けるスペース*/
}

/*mainlistブロックのaタグ*/
#mainlist a {
	text-decoration: none;		/*文字飾り無し(下線を消す)*/
}


/*エラー表示
---------------------------------------------------------------------------*/
#Error {
	color: red;
	font-size: 16px;
	line-height: 1.2;
}
.error {
	color: red;
	font-size: 12px;
	line-height: 1.0;
	padding-top: 2px;
}


/*一覧件数 一覧行数
---------------------------------------------------------------------------*/
.flex_bothends {
	width: 100%;
	margin: auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	line-height: 2;	/*高さ*/
}
.flex_bothends_l, .flex_bothends_r {
	width: 40%;
/*	height: 200px;*/
	margin-bottom: 1px;
}
.flex_bothends_l {
	padding-left: 0;
	text-align: left;		/*文字を左寄せ*/
}
.flex_bothends_r {
	padding-right: 0;
	text-align: right;		/*文字を左寄せ*/
}

#mainlist .flex_bothends_l {
	line-height: 1.5;	/*高さ*/
}

/*表示順 selectbox
---------------------------------------------------------------------------*/
.selectbox-003 {
	display: inline-flex;
	align-items: center;
	position: relative;
}

.selectbox-003::after {
	position: absolute;
	right: 15px;
	width: 10px;
	height: 7px;
	background-color: #535353;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	content: '';
	pointer-events: none;
}

.selectbox-003 select {
	appearance: none;
	min-width: 150px;
	height: 2.8em;
	padding: .4em calc(.8em + 30px) .4em .8em;
	border: 1px solid #cccccc;
	border-radius: 3px;
	background-color: #e0e0e0;
	color: #333333;
	font-size: 1em;
	cursor: pointer;
}


/*sideブロック設定
---------------------------------------------------------------------------*/
#side {
	order: 1;		/*表示させる順番。mainlist、sub、sideそれぞれに指定しており、数字の「小さな順」に上から並びます。*/
}

/*１カラムおよび２カラム利用時にsideブロックを非表示にする*/
.c2 #side,.c1 #side {
	display: none;
}


/*side
---------------------------------------------------------------------------*/
#side {
	font-size: 0.9rem;	/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
	text-align: center;
}

#side .find {
	color: #fff;
	border-radius: 7px;
	background-color: #1f2b64;
	text-align: center;
	padding-bottom: 2em;
}

/*side内のh2タグ*/
#side h2 {
	margin: 0;
	font-size: 1.2em;		/*文字サイズを少しだけ大きめに*/
	font-weight: normal;	/*文字の太さを標準に*/
	margin-bottom: 10px;	/*下に空けるスペース*/
}
#side h2::before {
	content: "";
	border-left: 3px solid #002ade;	/*左側の線の幅、線種、色*/
	padding-right: 10px;			/*線とテキストの間に空ける余白*/
}


#side .title {
    padding: 1.5em 0 0.5em;
}

#side .button-002 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90%;
    margin:0 auto;
    padding: .5em .2em;
    border: none;
    border-radius: 5px;
    background-color: #ffffff;
    color: #000;
    font-weight: 600;
    font-size: 1em;
}

#side .button-002:hover {
    background-color: #efefef;
}


#side .textbox-001 {
    width: 90%;
    padding: .5em .1em;
    border: 1px solid #969da3;
    border-radius: 5px;
    color: #333;
    font-size: 1em;
    line-height: 1.5;
}

#side .textbox-001::placeholder {
    color: #999;
}

/*side 上限・下限プルダウン
---------------------------------------------------------------------------*/
#side .limitselect {
	display: flex;
	justify-content: space-between;
	width: 90%;
    margin:0 auto;
}

#side .selectbox-001 {
	display: inline-flex;
	align-items: center;
	position: relative;
}

#side .selectbox-001 select {
	width: 100%;
	height: 2.8em;
	padding: .4em calc(.4em + 20px) .4em .6em;
	border: 1px solid #cccccc;
	border-radius: 5px;
	background-color: #ffffff;
	color: #333333;
	font-size: 1em;
	cursor: pointer;
}


/* 案件詳細 アコーディオンメニュー */
#side .ac-find:last-child {
	margin-bottom: 60px; /* 最後の要素の下にだけ余白 */
}
#side .ac-find input.dmy {
	display: none;
}
#side .ac-find label {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90%;
    margin:0 auto;
    padding: .5em .2em;
	border: none;
	border-radius: 5px;
	background-color: #ffffff;
	color: #000; /* 文字色 */
	font-weight: 600;
    font-size: 1em;

/*	text-align: center;*/ /* 文字を中央に */
/*	cursor: pointer;*/
/*	position: relative;*/
/*	display: block;*/
/*	margin-bottom: 7px;*/
}

#side .ac-find label:after {
	content:"";
	display:block;
	width:8px;
	height:8px;
	border-top: #fff 2px solid;
	border-right: #fff 2px solid;
	-webkit-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
	position:absolute;
	right: 30px;
	top: 0;
	bottom: 15%;
	margin: auto;
}
#side .ac-find input:checked ~ label::after {
	content:"";
	display:block;
	width:8px;
	height:8px;
	border-top: #fff 2px solid;
	border-right: #fff 2px solid;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	position:absolute;
	right: 30px;
	top: 7%;
	bottom: 0;
	margin: auto;
}
#side .ac-find div {
	height: 0;
	overflow: hidden;
	opacity: 0;
	transition: 0.3s; /* 開閉スピード */
}
#side .ac-find input:checked ~ div {
	height: auto;
	opacity: 1;
	padding: 0px; /* 中身の枠内の余白 */
	border-radius: 5px;
/*	background: #1f2b64;*/ /* 中身の背景色 */
	background: #fff; /* 中身の背景色 */
    color: #000;
}
#side .ac-find-inside {
    width: 90%;
    margin:0 auto;
    padding: .5em .2em;
	display:block;

	color: #333; /* 中身の文字色 */
/*	font-size: 17px;*/ /* 中身の文字サイズ */
	line-height: 2; /* 行間 */
}
#side .ac-find-inside label {
    justify-content: left;
	text-align: left;
	font-weight: normal;
    font-size: 0.8em;
}


/*一覧ブロック（listおよびlist2共通設定）
---------------------------------------------------------------------------*/
/*listおよびlist2ボックス内のpタグ*/
.list p,
.list2 p {
	margin: 0;
	font-size: 0.7em;	/*文字サイズを70%に。*/
}


/*一覧ブロック（list2。横長タイプ。）
---------------------------------------------------------------------------*/
.itemlist {
	position: relative;
}
/*list2ボックス。１個あたりのボックスの指定です。*/
.list2 {
/*	display: flex;*/	/*flexボックスを使う指定*/
	display: block;	/*flexボックスを使う指定*/
	padding: 25px 0;	/*上下、左右へのボックス内の余白*/
	margin-bottom: 30px;
	border: 1px solid #ccc;		/*上の線の幅、線種、色*/
	border-radius: 7px;
	width: 100%;
}

/*最後のlist2ブロック*/
.list2:nth-last-of-type(1) {
	border-bottom: 1px solid #ccc;	/*下の線の幅、線種、色*/
	margin-bottom: 20px;			/*下に空けるスペース*/
}

/*ボックス内のfigure画像*/
.list2 figure {
	width: 100%;			/*画像の幅*/
	padding: 0 20px;	/*画像の左右側に空けるスペース*/
}

/*ボックス内のfigure画像*/
.list2 figure img {
	width: 100%;			/*画像の幅*/
}

/*ボックス内のdiv*/
.list2 div.text {
	flex: 1;
	padding: 0 20px;	/*左右側に空けるスペース*/
}

/*ボックス内のh3タグ*/
.list2 h3 {
	content:none;
	margin: 0;				/*デフォルトマージンを一旦リセット*/
/*	margin-bottom: 10px;*/	/*下に少し余白を作る*/
}

.list2 h3::before {
	content: "";			/*この記号を表示させる*/
}

/*ボックス内のh4タグ*/
.list2 h4 {
	margin: 0;				/*デフォルトマージンを一旦リセット*/
/*	margin-bottom: 10px;*/	/*下に少し余白を作る*/
}

.list2 .date {
	font-size: 0.7em;	/*文字サイズを70%に。*/
}

/*mainlist内のハートマーク*/
.itemlist .heart {
	font-size: 0.6em;		/*文字サイズ*/
/*	background: #1f2b64;*/	/*背景色*/
	color: #fff;			/*文字色*/
	width: 50px;			/*幅*/
	line-height: 50px;		/*高さ*/
	text-align: center;		/*テキストをセンタリング*/
	position: absolute;
	right: 10px;				/*listNewブロックに対して右からの配置場所の指定*/
	top: 10px;			/*listNewブロックに対して下からの配置場所の指定*/
}


/*list2内で使っているtableっぽく見える所。
---------------------------------------------------------------------------*/
/*ボックス全体*/
dl.line {
	margin: 0;
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	font-size: 0.7em;	/*文字サイズを70%に。*/
	border-top: 1px solid #ccc;	/*上の線の幅、線種、色*/
}

/*左右のボックス*/
dl.line dt, dl.line dd {
	border-bottom: 1px solid #ccc;	/*下線の幅、線種、色*/
	padding: 0 5px;					/*上下、左右へのボックス内の余白*/
}

/*左のボックス*/
dl.line dt {
	width: 8em;				/*幅。8文字(em)分。*/
	background: #f0f0f0;	/*背景色*/
}
/*右のボックス*/
dl.line dd {
	width: calc(100% - 8em);	/*「8em」は上の「dl.line dt」のwidthの値です。*/
}

/*list2ブロック内でのline設定*/
.list2 dl.line dt:nth-of-type(1), .list2 dl.line dd:nth-of-type(1),
.list2 dl.line dt:nth-of-type(2), .list2 dl.line dd:nth-of-type(2) {
	border-top: none;
}


/*list2内で使っているtableっぽく見える所。
---------------------------------------------------------------------------*/
/*ボックス全体*/
.list2 dl.item {
	margin: 0;
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	font-size: 1em;	/*文字サイズを70%に。*/
/*	border-top: 1px solid #ccc;*/	/*上の線の幅、線種、色*/
	border-top: none;
}

/*左右のボックス*/
.list2 dl.item dt, dl.item dd {
/*	border-bottom: 1px solid #ccc;*/	/*下線の幅、線種、色*/
	padding: 0 5px;					/*上下、左右へのボックス内の余白*/
}

/*左のボックス*/
.list2 dl.item dt {
/*	width: 8em;*/				/*幅。8文字(em)分。*/
/*	background: #f0f0f0;*/	/*背景色*/
}
/*右のボックス*/
.list2 dl.item dd {
/*	width: calc(100% - 8em);*/	/*「8em」は上の「dl.item dt」のwidthの値です。*/
}

/*list2ブロック内でのitem設定*/
.list2 dl.item dt:nth-of-type(1), .list2 dl.item dd:nth-of-type(1),
.list2 dl.item dt:nth-of-type(2), .list2 dl.item dd:nth-of-type(2) {
	border-top: none;
}


/*listおよびlist2で使用しているアイコン
---------------------------------------------------------------------------*/
/*アイコンの共通設定*/
.icon {
	display: inline-block;
	line-height: 1;
	padding: 3px 8px;	/*上下、左右へのアイコン内の余白*/
	background: #999;	/*背景色。iconクラスだけ適用した場合に出る色です。*/
	color: #fff;		/*文字色*/
	font-size: 0.7em;	/*文字サイズを70%に。*/
	margin: 1px;
}

/*枠線だけが入ったデザイン*/
.waku {
	background: #fff;		/*背景色*/
	color: #666;			/*文字色*/
	border: 1px solid #666;	/*枠線の幅、線種、色*/
}

/*NEWアイコン*/
.newicon {
	background: #e82600;	/*背景色*/
}

/*UPアイコン*/
.upicon {
	background: #0078e8;	/*背景色*/
}

/*option1アイコン*/
.option1 {
	background: #e80068;	/*背景色*/
}

/*option2アイコン*/
.option2 {
	background: #5ab600;	/*背景色*/
}

/*option3アイコン*/
.option3 {
	background: #ccc;		/*背景色*/
}


/*FAQ
---------------------------------------------------------------------------*/
/*FAQボックス全体*/
.faq {
	padding: 0 5px;	/*上下、左右へのボックス内の余白*/
}

/*質問*/
.faq dt {
	border-radius: 3px;		/*枠を角丸にする指定*/
	margin-bottom: 20px;	/*下に空けるスペース*/
	background: linear-gradient(#fff, #f7f7f7);	/*背景グラデーション*/
	text-indent: -2em;				/*テキストのインデント。質問が複数行になった際に、テキストの冒頭を揃える為に設定しています。*/
	padding: 5px 1em 5px 3em;		/*ボックス内の余白。ここを変更する場合、上のtext-indentも調整します。*/
	border: 1px solid #e4e2d7;		/*枠線の幅、線種、色*/
}

/*アイコン（Font Awesome）*/
.faq dt::before {
	font-family: "Font Awesome 5 Free";	/*Font Awesomeを使う指定*/
	content: "\f059";		/*使いたいアイコン名をここで指定。Font Awesomeに記載されています。詳しくは当テンプレートのマニュアルを読んで下さい。*/
	color: #001478;			/*アイコンの色*/
	padding-right: 1em;		/*アイコンとテキストの間の余白*/
}

/*回答*/
.faq dd {
	padding: 5px 1em 30px 3em;		/*ボックス内の余白**/
}

/*opencloseを適用した要素のカーソル*/
.openclose {
	cursor: pointer;	/*カーソルの形状。リンクと同じスタイルにしてクリックできると認識してもらう。*/
}

.faq dt span {text-indent: 0;}


/*案件詳細 item
---------------------------------------------------------------------------*/
.itemdetail {
	position: relative;
	text-align: center;
}

/*itemdetail内のハートマーク*/
.itemdetail .heart {
	font-size: 0.6em;		/*文字サイズ*/
/*	background: #1f2b64;*/	/*背景色*/
	color: #fff;			/*文字色*/
	width: 50px;			/*幅*/
	line-height: 50px;		/*高さ*/
	text-align: center;		/*テキストをセンタリング*/
	position: absolute;
	right: 50px;				/*listNewブロックに対して右からの配置場所の指定*/
	top: 50px;			/*listNewブロックに対して下からの配置場所の指定*/
}

/*ボックス全体*/
#item {
	margin: 0;
	text-align: center;
}

/*ボックス内のfigure画像*/
#item figure {
	width: 100%;		/*画像の幅*/
	padding: 0 20px;	/*画像の左右側に空けるスペース*/
	border-radius: 10%;	/*円形にする*/
	margin-bottom: 20px;
}

#item figure img {
	border-radius: 10px;	/*円形にする*/
}

#item table.ta {
	width: 100%;
}

.itemdate {
	font-size: 0.7em;	/*文字サイズを70%に。*/
}


/* 案件詳細 アコーディオンメニュー */
#item .ac-menu:last-child {
	margin-bottom: 60px; /* 最後の要素の下にだけ余白 */
}
#item .ac-menu input {
	display: none;
}
#item .ac-menu label {
	color: #fff; /* 文字色 */
	font-weight: 600;
	text-align: center; /* 文字を中央に */
	border-radius: 25px;
	background-color: #1f2b64;
	padding: 1em 2em;
	cursor: pointer;
	position: relative;
	display: block;
	margin-bottom: 7px;
}

#item .ac-menu label:after {
	content:"";
	display:block;
	width:8px;
	height:8px;
	border-top: #fff 2px solid;
	border-right: #fff 2px solid;
	-webkit-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
	position:absolute;
	right: 30px;
	top: 0;
	bottom: 15%;
	margin: auto;
}
#item .ac-menu input:checked ~ label::after {
	content:"";
	display:block;
	width:8px;
	height:8px;
	border-top: #fff 2px solid;
	border-right: #fff 2px solid;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	position:absolute;
	right: 30px;
	top: 7%;
	bottom: 0;
	margin: auto;
}
#item .ac-menu div {
	height: 0;
	overflow: hidden;
	opacity: 0;
	transition: 0.3s; /* 開閉スピード */
}
#item .ac-menu input:checked ~ div {
	height: auto;
	opacity: 1;
	padding: 20px; /* 中身の枠内の余白 */
	background: #FAFAFA; /* 中身の背景色 */
}
#item .ac-menu-inside {
	color: #333; /* 中身の文字色 */
/*	font-size: 17px;*/ /* 中身の文字サイズ */
	line-height: 2; /* 行間 */
}


/* 案件詳細 テーブル 2列 TOPページ
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.taItem caption {
	font-weight: bold;		/*太字に*/
	padding: 10px 5px;		/*上下、左右へのボックス内の余白。基本的に数行下の「.taItem th, .taItem td」のpaddingと揃えておけばOKです。*/
	background: #eee;		/*背景色*/
	margin-bottom: 15px;	/*下に空けるスペース*/
}

/*ta2テーブルブロック設定*/
.taItem {
	border-top: 2px solid #ccc;	/*テーブルの一番上の線。幅、線種、色*/
	width: 100%;
	margin: 0 auto 30px;		/*最後の「30px」がテーブルの下に空けるスペースです*/
}

/*tr（１行分）タグ設定*/
.taItem tr {
	border-bottom: 1px solid #ccc;	/*テーブルの下線。幅、線種、色*/
}

.taItem tr:nth-child(2n) th,
.taItem tr:nth-child(2n) td, {
	background-color: #fff;
}

.taItem tr:nth-child(2n+1) th,
.taItem tr:nth-child(2n+1) td {
	background-color: #f2f2f2;
}

/*th、tdの共通設定*/
.taItem th, .taItem td {
	padding: 10px 5px;		/*上下、左右へのボックス内の余白*。基本的に数行上の「.taItem caption」のpaddingと揃えておけばOKです。*/
	word-break: break-all;	/*英語などのテキストを改行で自動的に折り返す設定。これがないと、テーブルを突き抜けて表示される場合があります。*/
	border: 1px solid #ccc;	/*テーブルの下線。幅、線種、色*/
	color: #000;
}

/*thのみの設定*/
.taItem th {
	width: 30%;			/*幅*/
	text-align: center;	/*左よせにする*/
}

/*tdのみの設定*/
.taItem td {
	text-align: left;	/*左よせにする*/
}


/*タブ
---------------------------------------------------------------------------*/
#tab {
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	text-align: center;
	border: 1px solid #7bb689;
	max-width: 600px;
}

/*タブ制御
---------------------------------------------------------------------------*/
#tab .tab_container {
/*	padding-bottom: 1em;*/
	background-color: #fff;
/*	border:1px solid #7bb689;*/
	margin: 0 auto;
}

#tab .tab_item {
	width: calc(100%/3);    /*100%/4を100%/3に変更*/
	padding:15px 0;
/*	border-bottom: 3px solid #37beb0 ;*/
	border-bottom: 1px solid #7bb689;
	border-left: 1px solid #7bb689;
	background-color: #fff;
	text-align: center;
	color: #1f2b64 ;
	display: block;
	float: left;
	text-align: center;
	font-weight: bold;
	transition: all 0.2s ease;
}

#tab .tab_container .topitem {
	border-left: none;
}


#tab .tab_item:hover {
	opacity: 0.75;
}

#tab input[name="tab_item"] {
	display: none;
}

#tab .tab_content {
	display: none;
	padding: 1em 1em 0;
	clear: both;
	overflow: hidden;
}

#tab #tab1:checked ~ #tab1_content,
#tab #tab2:checked ~ #tab2_content,
#tab #tab3:checked ~ #tab3_content {  /*, #tab4:checked ~ #tab4_contentを削除*/
	display: block;
}

#tab .tab_container input:checked + .tab_item {
	background-color: #1f2b64 ;
	color: #fff;
}

#tab .c-txtsp {
	margin-bottom: 1em;
}

#tab .btn {
	margin-bottom: 1em;
}

#tab .rem {
	font-size: 0.7em;
}

#tab .tab_common {
	background-color: #fff;
}

#tab .tab_common_content {
	padding: 0 1em 1em;
	clear: both;
	overflow: hidden;
	text-align: center;
}

#tab .taAdd {
	margin: 0 auto;
}

#tab .taAdd th, .taAdd td {
	padding: 0.5em 10px;		/*上下、左右へのボックス内の余白*/
	text-align: left;
}

#tab .taAdd th {
	vertical-align: top;
}


#tab .button-001 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 150px;
	margin:0 auto;
	padding: .6em 2em;
	border: 1px solid #1f2b64;
	border-radius: 5px;
	background-color: #1f2b64;
	color: #fff;
	font-size: 1em;
}

#tab .button-001::after {
	transform: rotate(45deg);
	width: 5px;
	height: 5px;
	margin-left: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	content: '';
}


#add {
	margin-top: 30px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	text-align: center;
	max-width: 600px;
}
#add .add_finish {
	background-color: #fff;
}

#add .add_finish_content {
	padding: 0 1em 1em;
	clear: both;
	overflow: hidden;
	text-align: center;
}

/*ログイン
---------------------------------------------------------------------------*/
#login {
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	text-align: center;
/*	border: 1px solid #7bb689;*/
	max-width: 600px;
}

#login .btn {
	margin-bottom: 1em;
}

#login .rem {
	font-size: 0.7em;
}

#login .login_common {
	background-color: #fff;
	border: 1px solid #7bb689;
}

#login .login_common_content {
	padding: 1em 1em;
	clear: both;
	overflow: hidden;
	text-align: center;
}

#login .taLogin {
	margin: 0 auto;
}

#login .taLogin th, .taAdd td {
	padding: 0.5em 10px;		/*上下、左右へのボックス内の余白*/
	text-align: left;
}

#login input[type="text"], 
#login input[type="password"]{
	width: 94%;
	height: 33px;
	padding: 0 10px 0 10px;
	margin: 0 auto;
	color: #000;
	border: 1px solid #bec2c4;
	font-size: 16px;
}

.input-wrap {
	position: relative;
}

.toggle-pass {
	position:absolute;
	top:50%;
	right: 15px;
	transform: translateY(-50%);
}

#login .button-001 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 150px;
	margin:0 auto;
	padding: .6em 2em;
	border: 1px solid #1f2b64;
	border-radius: 5px;
	background-color: #1f2b64;
	color: #fff;
	font-size: 1em;
}

#login .button-001::after {
	transform: rotate(45deg);
	width: 5px;
	height: 5px;
	margin-left: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	content: '';
}

/*buttonの設定
---------------------------------------------------------------------------*/
#message .button-001 {
/*	display: flex;*/
/*	justify-content: center;*/
/*	align-items: center;*/
	width: 150px;
	margin:0 auto;
	padding: .6em 2em;
	border: 1px solid #1f2b64;
	border-radius: 5px;
	background-color: #1f2b64;
	color: #fff;
	font-size: 1em;
}

#message .button-001::after {
	transform: rotate(45deg);
	width: 5px;
	height: 5px;
	margin-left: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	content: '';
}

/*メッセージ領域
---------------------------------------------------------------------------*/
.message {
	width: 80%;
	margin: 0 auto;
}


/*btnの設定
---------------------------------------------------------------------------*/
p.btn {margin: 0;}

/*ボタンを囲むブロック*/
.btn {
	text-align: center;	/*内容をセンタリング*/
}

/*ボタン*/
.btn a,
.btn input {
	width: 100%;
	display: inline-block;text-decoration: none;border: none;
	font-size: 1em;
	letter-spacing: 0.1em;	/*文字間隔を少し広くする指定*/
	color: #1f2b64;			/*文字色*/
	transition: 0.3s;		/*hoverまでにかける時間。0.3秒。*/
	padding: 0em 2em;		/*余白*/
	margin: 0 auto 0;	/*ボタンの外側に空けるスペース。上、左右、下への順番。*/
	border: 3px #7bb689 solid;
}

/*ボタンのマウスオン時*/
.btn a:hover,
.btn input:hover {
	cursor: pointer;		/*inputタグを使う場合に「手」のマークになるように。リンクと同じ表示になるようにという事です。*/
	opacity: 0.8;			/*冒頭のリンクテキストのhoverと合わせました*/
	transform: scale(1.02);	/*実寸の102%に拡大*/
}

/*listNewブロック内のボタン*/
.listNew .btn a {
	margin: 0;
}


/*btn3の設定
---------------------------------------------------------------------------*/
p.btn3 {margin: 0;}

/*ボタンを囲むブロック*/
.btn3 {
	text-align: center;	/*内容をセンタリング*/
}

/*ボタン*/
.btn3 a,
.btn3 input {
	display: inline-block;text-decoration: none;border: none;
	font-size: 1em;
	letter-spacing: 0.1em;	/*文字間隔を少し広くする指定*/
	background: #fff;
	color: #1f2b64;			/*文字色*/
	transition: 0.3s;		/*hoverまでにかける時間。0.3秒。*/
	padding: 1em 2em;		/*余白*/
	margin: 0 auto 30px;	/*ボタンの外側に空けるスペース。上、左右、下への順番。*/
	border: 3px #7bb689 solid;
	border-radius: 5px;
}

/*ボタンのマウスオン時*/
.btn3 a:hover,
.btn3 input:hover {
	cursor: pointer;		/*inputタグを使う場合に「手」のマークになるように。リンクと同じ表示になるようにという事です。*/
	opacity: 0.8;			/*冒頭のリンクテキストのhoverと合わせました*/
	transform: scale(1.02);	/*実寸の102%に拡大*/
}

/*listNewブロック内のボタン*/
.listNew .btn3 a {
	margin: 0;
}


/*btn2の設定
---------------------------------------------------------------------------*/
/*ボタンを囲むブロック*/
.btn2 {
	text-align: center;	/*内容をセンタリング*/
}

/*ボタン*/
.btn2 a,
.btn2 input {
	display: inline-block;text-decoration: none;border: none;
	color: #000;			/*文字色*/
	border-radius: 3px;		/*角丸のサイズ。ほんの少しだけ角が丸くなります。*/
	margin-top: 10px;
	padding: 12px 20px;	/*上下、左右への余白。*/
	font-size: 1rem;		/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
	background: #fff;	/*背景色*/
	letter-spacing: 0.1em;	/*文字間隔を少し広くする指定*/
}

/*subおよびsideで使う場合のボタン*/
#sub .btn2 a,
#sub .btn2 input,
#side .btn2 a,
#side .btn2 input {
	padding: 5px;	/*余白。*/
	font-size: 1em;	/*文字サイズ*/
}

/*ボタンのマウスオン時*/
.btn2 a:hover,
.btn2 input:hover {
	cursor: pointer;
	filter: brightness(0.9);/*少しだけ明るくする*/
	color: #000;			/*文字色*/
}

/*listNew、box2内で使う場合のボタン*/
.listNew .btn2 a,
.box2 .btn2 a {
	display: block;		/*幅一杯にとる*/
	margin-top: 20px;	/*ボタンの上に空けるスペース*/
}

/*subおよびsideのlistNewおよびbox2で使う場合のボタン*/
#sub .listNew .btn2 a,
#sub .box2 .btn2 a,
#side .listNew .btn2 a,
#side .box2 .btn2 a {
	margin-top: 10px;
}


/*テーブル
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
	font-weight: bold;		/*太字に*/
	padding: 10px 5px;		/*上下、左右へのボックス内の余白。基本的に数行下の「.ta1 th, .ta1 td」のpaddingと揃えておけばOKです。*/
	background: #eee;		/*背景色*/
	margin-bottom: 15px;	/*下に空けるスペース*/
}

/*ta1テーブルブロック設定*/
.ta1 {
	border-top: 1px solid #ccc;	/*テーブルの一番上の線。幅、線種、色*/
	width: 100%;
	margin: 0 auto 30px;		/*最後の「30px」がテーブルの下に空けるスペースです*/
}

/*tr（１行分）タグ設定*/
.ta1 tr {
	border-bottom: 1px solid #ccc;	/*テーブルの下線。幅、線種、色*/
}

/*th（左側）、td（右側）の共通設定*/
.ta1 th, .ta1 td {
	padding: 10px 5px;		/*上下、左右へのボックス内の余白*。基本的に数行上の「.ta1 caption」のpaddingと揃えておけばOKです。*/
	word-break: break-all;	/*英語などのテキストを改行で自動的に折り返す設定。これがないと、テーブルを突き抜けて表示される場合があります。*/
	border: 1px solid #ccc;	/*テーブルの下線。幅、線種、色*/
}

/*th（左側）のみの設定*/
.ta1 th {
	width: 30%;			/*幅*/
	text-align: center;	/*左よせにする*/
	background: #eee;
}


/*テーブル 2列 TOPページ
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta2 caption {
	font-weight: bold;		/*太字に*/
	padding: 10px 5px;		/*上下、左右へのボックス内の余白。基本的に数行下の「.ta2 th, .ta2 td」のpaddingと揃えておけばOKです。*/
	background: #eee;		/*背景色*/
	margin-bottom: 15px;	/*下に空けるスペース*/
}

/*ta2テーブルブロック設定*/
.ta2 {
	border-top: 2px solid #ccc;	/*テーブルの一番上の線。幅、線種、色*/
	width: 100%;
	margin: 0 auto 30px;		/*最後の「30px」がテーブルの下に空けるスペースです*/
}

/*tr（１行分）タグ設定*/
.ta2 tr {
	border-bottom: 1px solid #ccc;	/*テーブルの下線。幅、線種、色*/
}

.ta2 tr:nth-child(2n) td {
	background-color: #fff;
}

.ta2 tr:nth-child(2n+1) td {
	background-color: #f2f2f2;
}

/*th、tdの共通設定*/
.ta2 th, .ta2 td {
	padding: 10px 5px;		/*上下、左右へのボックス内の余白*。基本的に数行上の「.ta2 caption」のpaddingと揃えておけばOKです。*/
	word-break: break-all;	/*英語などのテキストを改行で自動的に折り返す設定。これがないと、テーブルを突き抜けて表示される場合があります。*/
	border: 1px solid #ccc;	/*テーブルの下線。幅、線種、色*/
}

/*thのみの設定*/
.ta2 th {
	width: 50%;			/*幅*/
	text-align: center;	/*左よせにする*/
	background: #1f2b64;		/*背景色*/
	color: #fff;
}

/*tdのみの設定*/
.ta2 td {
	width: 50%;			/*幅*/
	text-align: center;	/*左よせにする*/
	color: #1f2b64;
}


/*テーブル 3列 TOPページ
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta3 caption {
	font-weight: bold;		/*太字に*/
	padding: 10px 5px;		/*上下、左右へのボックス内の余白。基本的に数行下の「.ta3 th, .ta3 td」のpaddingと揃えておけばOKです。*/
	background: #eee;		/*背景色*/
	margin-bottom: 15px;	/*下に空けるスペース*/
}

/*ta3テーブルブロック設定*/
.ta3 {
	border: 2px solid #ccc;	/*テーブルの一番上の線。幅、線種、色*/
	width: 100%;
	margin: 0 auto 30px;		/*最後の「30px」がテーブルの下に空けるスペースです*/
}

/*tr（１行分）タグ設定*/
.ta3 tr {
	border-bottom: 1px solid #ccc;	/*テーブルの下線。幅、線種、色*/
}

/*th、tdの共通設定*/
.ta3 th, .ta3 td {
	padding: 10px 5px;		/*上下、左右へのボックス内の余白*。基本的に数行上の「.ta3 caption」のpaddingと揃えておけばOKです。*/
	word-break: break-all;	/*英語などのテキストを改行で自動的に折り返す設定。これがないと、テーブルを突き抜けて表示される場合があります。*/
	border: 1px solid #ccc;	/*テーブルの下線。幅、線種、色*/
	color: #1f2b64;
}

/*thのみの設定*/
.ta3 th {
	width: 30%;			/*幅*/
	text-align: left;	/*左よせにする*/
	background: #fff;		/*背景色*/
}

/*tdのみの設定*/
.ta3 td {
	background: #f8f8f8;		/*背景色*/
}

.ta3 td.paid {
	background: #fffbc4;		/*背景色*/
}


/*背景色パターン
---------------------------------------------------------------------------*/
.bg1 {
	background: url(../images/img_bg1.jpg);
	background-repeat: no-repeat;
	background-position: center 150px;
	background-size: cover;
}

.bg2 {
	background: url(../images/img_bg2.png);
	background-repeat: repeat;
	background-position: top left;
}

.bg3 {
	background: url(../images/img_bg3.jpg);
	background-position: center;
	background-size: cover;
}

.bg4 {
	background-color: #e9f3f9;
	border-top: 1px dotted #aaa;
}

.bg5 {
	background-color: #e9f3f9;
}

.bg6 {
	background-color: #e6ffe9;
	background-repeat: repeat;
}


/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
.pagetop-show {display: block;}

/*ボタンの設定*/
.pagetop a {
	display: block;text-decoration: none;text-align: center;z-index: 99;
	position: fixed;	/*スクロールに追従しない(固定で表示)為の設定*/
	right: 20px;		/*右からの配置場所指定*/
	bottom: 20px;		/*下からの配置場所指定*/
	color: #fff;		/*文字色*/
	font-size: 1.5em;	/*文字サイズ*/
	background: rgba(0,0,0,0.2);	/*背景色。0,0,0は黒の事で0.2は色が20%出た状態。*/
	width: 60px;		/*幅*/
	line-height: 60px;	/*高さ*/
	border-radius: 50%;	/*円形にする*/
}


/*その他
---------------------------------------------------------------------------*/
.clearfix::after {content: "";display: block;clear: both;}
.color-theme, .color-theme a {color: #0e36ff !important;}
.color-check, .color-check a {color: #f00 !important;}
.c {text-align: center !important;}
.r {text-align: right !important;}
.l {text-align: left !important;}
.ws {width: 45%;display: block;}
.wl {width: 95%;display: block;}
.mb30 {margin-bottom: 30px !important;}
.mt30 {margin-top: 30px !important;}
.look {display: inline-block;padding: 0px 10px;background: #666; color: #fff; border-radius: 3px;margin: 5px 0; word-break: break-all;}
.look .color-check {color: #ffcc00 !important;}
.small {font-size: 0.6em;}
.clearboth {display: block;clear: both;}

.mt0 {margin-top: 0px !important;}
.mt5 {margin-top: 5px !important;}
.mt10 {margin-top: 10px !important;}
.mt20 {margin-top: 20px !important;}
.mt30 {margin-top: 30px !important;}
.mt40 {margin-top: 40px !important;}
.mt50 {margin-top: 50px !important;}

.mb0 {margin-bottom: 0px !important;}
.mb5 {margin-bottom: 5px !important;}
.mb10 {margin-bottom: 10px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb40 {margin-bottom: 40px !important;}
.mb50 {margin-bottom: 50px !important;}

.ml0 {margin-left: 0px !important;}
.ml5 {margin-left: 5px !important;}
.ml10 {margin-left: 10px !important;}
.ml20 {margin-left: 20px !important;}
.ml30 {margin-left: 30px !important;}
.ml40 {margin-left: 40px !important;}
.ml50 {margin-left: 50px !important;}

.mr0 {margin-right: 0px !important;}
.mr5 {margin-right: 5px !important;}
.mr10 {margin-right: 10px !important;}
.mr20 {margin-right: 20px !important;}
.mr30 {margin-right: 30px !important;}
.mr40 {margin-right: 40px !important;}
.mr50 {margin-right: 50px !important;}

.pt0 {padding-top: 0px !important;}
.pt5 {padding-top: 5px !important;}
.pt10 {padding-top: 10px !important;}
.pt20 {padding-top: 20px !important;}
.pt30 {padding-top: 30px !important;}
.pt40 {padding-top: 40px !important;}
.pt50 {padding-top: 50px !important;}

.pb0 {padding-bottom: 0px !important;}
.pb5 {padding-bottom: 5px !important;}
.pb10 {padding-bottom: 10px !important;}
.pb20 {padding-bottom: 20px !important;}
.pb30 {padding-bottom: 30px !important;}
.pb40 {padding-bottom: 40px !important;}
.pb50 {padding-bottom: 50px !important;}

.pl0 {padding-left: 0px !important;}
.pr0 {padding-right: 0px !important;}

.black   {color: #000000 !important;}
.gray    {color: #808080 !important;}
.silver  {color: #c0c0c0 !important;}
.white   {color: #ffffff !important;}
.blue    {color: #0000ff !important;}
.navy    {color: #000080 !important;}
.teal    {color: #008080 !important;}
.green   {color: #008000 !important;}
.lime    {color: #00ff00 !important;}
.aqua    {color: #00ffff !important;}
.yellow  {color: #ffff00 !important;}
.red     {color: #ff0000 !important;}
.fuchsia {color: #ff00ff !important;}
.olive   {color: #808000 !important;}
.purple  {color: #800080 !important;}
.maroon  {color: #800000 !important;}

.bg_black   {background: #000000 !important;}
.bg_gray    {background: #808080 !important;}
.bg_silver  {background: #c0c0c0 !important;}
.bg_white   {background: #ffffff !important;}
.bg_blue    {background: #0000ff !important;}
.bg_navy    {background: #000080 !important;}
.bg_teal    {background: #008080 !important;}
.bg_green   {background: #008000 !important;}
.bg_lime    {background: #00ff00 !important;}
.bg_aqua    {background: #00ffff !important;}
.bg_yellow  {background: #ffff00 !important;}
.bg_red     {background: #ff0000 !important;}
.bg_fuchsia {background: #ff00ff !important;}
.bg_olive   {background: #808000 !important;}
.bg_purple  {background: #800080 !important;}
.bg_maroon  {background: #800000 !important;}

.ws10  {width:  10px;}
.ws20  {width:  20px;}
.ws30  {width:  30px;}
.ws40  {width:  40px;}
.ws50  {width:  50px;}
.ws60  {width:  60px;}
.ws70  {width:  70px;}
.ws80  {width:  80px;}
.ws90  {width:  90px;}
.ws100 {width: 100px;}
.ws125 {width: 125px;}
.ws150 {width: 150px;}
.ws175 {width: 175px;}
.ws200 {width: 200px;}

.ws40p {width:  40%;}
.ws45p {width:  45%;}
.ws50p {width:  50%;}

.ws45p5em {width: calc(90% - 5em);}
.ws45p100px {width: calc(90% - 100px);}

.fwn {font-weight: normal;}
.fwb {font-weight: bold;}
.fwl {font-weight: lighter;}


/*---------------------------------------------------------------------------
ここから下は画面幅600px以上の追加指定
---------------------------------------------------------------------------*/
@media screen and (min-width:600px) {


/*サービス登録ボタン*/
#mainimg #btn_add {
	left: 43%;		/*メイン画像に対して左から10%の場所に配置*/
	bottom: 15%;	/*メイン画像に対して下から20%の場所に配置*/
	padding: 12px 20px;	/*上下、左右への余白。*/
}

/*listNewブロック
---------------------------------------------------------------------------*/
/*listNewブロック全体を囲むブロック*/
.listNew-container {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0;
}

/*１個あたりのボックス設定*/
.listNew {
	flex-direction: column;			/*子要素を縦並びにする*/
	width: 47%;		/*幅。３列になります。*/
}

/*ボックス内のfigure画像*/
.listNew figure {
	width: 100%;
	margin-right: 0;
}

/*ボックス内のtextブロック*/
.listNew .text {
	margin-right: 0;
}

/*ボックス内のh4タグ*/
.listNew h4 {
	margin: 10px 0;	/*上下、左右への余白*/
}


/*stepboxブロック 4列
---------------------------------------------------------------------------*/
.stepbox4 {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0 30px;
}

.stepbox4c {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0 30px;
}

.stepbox4-item {
	flex-direction: column;			/*子要素を縦並びにする*/
	width: 30%;
}


/*boxブロック 3列
---------------------------------------------------------------------------*/
/*boxブロック全体を囲むブロック*/
.box3-container {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0;
}

/*１個あたりのボックス設定*/
.box3 {
	flex-direction: column;			/*子要素を縦並びにする*/
	width: 47%;		/*幅。３列になります。*/
}

/*ボックス内のfigure画像*/
.box3 figure {
	width: 100%;
	margin-right: 0;
}

/*ボックス内のtextブロック*/
.box3 .text {
	margin-right: 0;
}

/*ボックス内のh4タグ*/
.box3 h4 {
	margin: 10px 0;	/*上下、左右への余白*/
}


/*boxブロック 4列
---------------------------------------------------------------------------*/
/*boxブロック全体を囲むブロック*/
.box4-container {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0 30px;
}

/*１個あたりのボックス設定*/
.box4 {
	flex-direction: column;			/*子要素を縦並びにする*/
	width: 30%;		/*幅。３列になります。*/
}

.box4-container::after{
  content:"";
  display: block;
  width: 30%;
}

/*ボックス内のfigure画像*/
.box4 figure {
	width: 100%;
	margin-right: 0;
}

/*ボックス内のtextブロック*/
.box4 .text {
	margin-right: 0;
}

/*ボックス内のh4タグ*/
.box4 h4 {
	margin: 10px 0;	/*上下、左右への余白*/
}


/*contentsブロック設定（main、sub、sideを囲むブロック）
---------------------------------------------------------------------------*/
#contents {
	margin: 0 3%;		/*外側に空けるスペース*/
/*	display: flex;*/	/*中身(main、sub、side)を横に並べる*/
}


/*mainlistブロック設定
---------------------------------------------------------------------------*/
#mainlist {
	flex: 1;
	order: 0;		/*表示させる順番。mainlist、sub、sideそれぞれに指定しており、数字の「小さな順」に左から並びます。*/
	margin: 0 20px 0 0;	/*上下、左右へのマージン。両サイドのブロックとの余白になります。*/
}

/*２カラム利用時に右側のマージンをなくす*/
.c2 #mainlist {
	margin-right: 0;
}

/*１カラム利用時にマージンをなくす*/
.c1 #mainlist {
	margin: 0;
}


/*一覧ブロック（list2。横長タイプ。）
---------------------------------------------------------------------------*/
/*list2ボックス。１個あたりのボックスの指定です。*/
.list2 {
	display: flex;	/*flexボックスを使う指定*/
	padding-left: 10px;	/*ボックス内の左側にだけ余白を作る*/
}

/*ボックス内のfigure画像*/
.list2 figure {
	width: 30%;			/*画像の幅*/
}


/*list2内で使っているtableっぽく見える所。
---------------------------------------------------------------------------*/
/*list2ブロック内でのline設定*/
.list2 dl.line dd {
	width: calc(50% - 8em - 10px);	/*大きな端末向けの再設定。２列にしたいので、100%でなく半分の50%から引いています。*/
	margin-right: 10px;				/*２列になった際の間のスペース*/
}

.list2 dl.line {border-top: none;}

.list2 dl.line dt:nth-of-type(1), .list2 dl.line dd:nth-of-type(1),
.list2 dl.line dt:nth-of-type(2), .list2 dl.line dd:nth-of-type(2) {
	border-top: 1px solid #ccc;
}


/*list2内で使っているtableっぽく見える所。
---------------------------------------------------------------------------*/
/*list2ブロック内でのline設定*/
.list2 dl.item dd {
/*	width: calc(50% - 8em - 10px);*/	/*大きな端末向けの再設定。２列にしたいので、100%でなく半分の50%から引いています。*/
	margin-right: 15px;				/*２列になった際の間のスペース*/
}

.list2 dl.item {border-top: none;}

.list2 dl.item dt:nth-of-type(1), .list2 dl.item dd:nth-of-type(1),
.list2 dl.item dt:nth-of-type(2), .list2 dl.item dd:nth-of-type(2) {
/*	border-top: 1px solid #ccc;*/
}


/*itemdetail内のハートマーク*/
.itemdetail .heart {
	right: 100px;				/*listNewブロックに対して右からの配置場所の指定*/
}





/*　※注意！　下の閉じカッコ　}　はこのブロックに必要なので、削除しないで下さい。　*/

}





/*---------------------------------------------------------------------------
ここから下は画面幅900px以上の追加指定
---------------------------------------------------------------------------*/
@media screen and (min-width:900px) {


/*全体の設定
---------------------------------------------------------------------------*/
html, body {
	font-size: 15px;	/*基準となるフォントサイズの上書き*/
}


/*header（ロゴなどが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
/*	position: fixed;*/	/*スクロールしても一緒に移動しない為の設定。画面上に固定表示されます。*/
	width: 100%;
	height: 100px;
}


/*検索・ログイン・新規登録
---------------------------------------------------------------------------*/
#header-r {
	margin-right: 20px;
}

/*新規登録*/
#header-r .add {
	display: inline-block;	/*表示させる*/
}

/*サービス登録ボタン*/
#mainimg #btn_add {
	left: 45%;		/*メイン画像に対して左から10%の場所に配置*/
	bottom: 20%;	/*メイン画像に対して下から20%の場所に配置*/
	padding: 12px 20px;	/*上下、左右への余白。*/
}

/*menubarブロック設定
---------------------------------------------------------------------------*/
/*メニューブロックの設定*/
#menubar {
/*	font-size: 0.85em;*/	/*文字サイズを少し小さくする*/
	font-size: 1em;	/*文字サイズを少し小さくする*/
}
#menubar ul {
	display: flex;	/*flexボックスを使う指定*/
}

/*メニュー１個あたりの設定*/
#menubar a {
	margin: 25px 0;
	padding: 10px 15px;	/*上下、左右への余白*/
	border-left:  1px solid #fff;	/*線の幅、線種、色*/;
}
#menubar a.last {
	border-right:  1px solid #fff;	/*線の幅、線種、色*/;
}


/*ドロップダウンメニュー
---------------------------------------------------------------------------*/
#menubar .ddmenu_parent ul {
	position: absolute;
}


/*３本バー（ハンバーガー）アイコン設定
---------------------------------------------------------------------------*/
/*ハンバーガーメニューを非表示にする*/
#menubar_hdr {display: none;}


/*「お知らせ」ブロック
---------------------------------------------------------------------------*/
/*日付(dt)設定*/
#new dt {
	width: 8em;	/*幅。14文字(em)分。*/
	display: flex;	/*flexボックスを使う指定*/
	justify-content: space-between;	/*日付とアイコンをそれぞれ端に寄せる*/
}

/*日付の横のマーク（共通設定）*/
#new dt span {
	display: inline-block;	/*表示させる*/
	width: 6em;				/*幅。6文字(em)分。*/
	background: #999;		/*背景色*/
	color: #fff;			/*文字色*/
	font-size: 0.8em;		/*文字サイズを80%に。*/
	text-align: center;		/*文字をセンタリング*/
	margin-right: 1em;		/*アイコンの右側に空けるスペース*/
	align-self: flex-start;	/*高さを間延びさせない指定*/
	line-height: 1.8;		/*行間を少し狭く*/
	position: relative;top: 0.4em;	/*上下の配置バランスの微調整*/
}

/*bg1設定。サンプルテンプレートでは「サービス」と書いてあるマーク*/
#new dt span.icon-bg1 {
	background: #001478;	/*背景色*/
}

/*記事(dd)設定*/
#new dd {
	width: calc(100% - 14em);	/*「14em」は上の「#new dt」のwidthの値です。*/
}


/*stepboxブロック 4列
---------------------------------------------------------------------------*/
.stepbox4 {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0 30px;
}

.stepbox4c {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0 30px;
	width: 80%;
}

.stepbox4-item {
	flex-direction: column;			/*子要素を縦並びにする*/
	width: 23%;
}


/*boxブロック 2列
---------------------------------------------------------------------------*/
.box2 {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0 30px;
}

.box2-item {
	flex-direction: column;			/*子要素を縦並びにする*/
	width: 47%;
}


/*boxブロック 3列
---------------------------------------------------------------------------*/
/*boxブロック全体を囲むブロック*/
.box3-container {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0 30px;
}

/*１個あたりのボックス設定*/
.box3 {
	flex-direction: column;			/*子要素を縦並びにする*/
	width: 30%;		/*幅。３列になります。*/
}

/*ボックス内のfigure画像*/
.box3 figure {
	width: 100%;
	margin-right: 0;
}

/*ボックス内のtextブロック*/
.box3 .text {
	margin-right: 0;
}

/*ボックス内のh4タグ*/
.box3 h4 {
	margin: 10px 0;	/*上下、左右への余白*/
}


/*boxブロック 4列
---------------------------------------------------------------------------*/
/*boxブロック全体を囲むブロック*/
.box4-container {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0 30px;
}

/*１個あたりのボックス設定*/
.box4 {
	flex-direction: column;			/*子要素を縦並びにする*/
	width: 23%;		/*幅。３列になります。*/
}

.box4-container::before{
  content:"";
  display: block;
  width:23%;
  order:1;
}

.box4-container::after{
  content:"";
  display: block;
  width:23%;
}

/*ボックス内のfigure画像*/
.box4 figure {
	width: 100%;
	margin-right: 0;
}

/*ボックス内のtextブロック*/
.box4 .text {
	margin-right: 0;
}

/*ボックス内のh4タグ*/
.box4 h4 {
	margin: 10px 0;	/*上下、左右への余白*/
}


/*listNewブロック
---------------------------------------------------------------------------*/
/*listNewブロック全体を囲むブロック*/
.listNew-container {
	display: flex;		/*flexボックスを使う指定*/
	flex-wrap: wrap;	/*折り返す指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	margin: 0 30px;
}

/*１個あたりのボックス設定*/
.listNew {
	flex-direction: column;			/*子要素を縦並びにする*/
	width: 30%;		/*幅。３列になります。*/
}

.listNew-container::after{
  content:"";
  display: block;
  width:30%;
}

/*ボックス内のfigure画像*/
.listNew figure {
	width: 100%;
	margin-right: 0;
}

/*ボックス内のtextブロック*/
.listNew .text {
	margin-right: 0;
}

/*ボックス内のh4タグ*/
.listNew h4 {
	margin: 10px 0;	/*上下、左右への余白*/
}


/*テーブル
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
	padding: 5px 15px;		/*上下、左右へのボックス内の余白*/
}

.ta1 {
	width:80%;
}

/*th（左側）、td（右側）の共通設定*/
.ta1 th, .ta1 td {
	padding: 20px 15px;		/*上下、左右へのボックス内の余白*/
}

/*th（左側）のみの設定*/
.ta1 th {
	text-align: center;
	width: 20%;		/*幅*/
	background: #eee;
}


/*テーブル 2列 TOPページ
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta2 caption {
	padding: 5px 15px;		/*上下、左右へのボックス内の余白*/
}

/*ta2テーブルブロック設定*/
.ta2 {
	width: 50%;		/*幅*/
}

/*th（左側）、td（右側）の共通設定*/
.ta2 th, .ta2 td {
	padding: 20px 15px;		/*上下、左右へのボックス内の余白*/
}

/*th（左側）のみの設定*/
.ta2 th {
	width: 50%;		/*幅*/
}


/*テーブル 3列 TOPページ
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta3 caption {
	padding: 5px 15px;		/*上下、左右へのボックス内の余白*/
}

/*ta3テーブルブロック設定*/
.ta3 {
	width: 70%;		/*幅*/
}

/*th（左側）、td（右側）の共通設定*/
.ta3 th, .ta3 td {
	padding: 20px 15px;		/*上下、左右へのボックス内の余白*/
}

/*th（左側）のみの設定*/
.ta3 th {
	width: 30%;		/*幅*/
}


/*案件詳細 item
---------------------------------------------------------------------------*/
/*ボックス全体*/
#item {
	margin: 0 30px;
	text-align: center;
}

/*itemdetail内のハートマーク*/
.itemdetail .heart {
	right: 150px;				/*listNewブロックに対して右からの配置場所の指定*/
}


/*テーブル 2列 TOPページ
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.taItem caption {
	padding: 5px 15px;		/*上下、左右へのボックス内の余白*/
}

/*ta2テーブルブロック設定*/
.taItem {
	width: 100%;		/*幅*/
}

/*th（左側）、td（右側）の共通設定*/
.taItem th, .taItem td {
	padding: 20px 15px;		/*上下、左右へのボックス内の余白*/
}

/*th（左側）のみの設定*/
.taItem th {
	width: 20%;		/*幅*/
}


/*contentsブロック設定（main、sub、sideを囲むブロック）
---------------------------------------------------------------------------*/
#contents {
	display: flex;	/*中身(main、sub、side)を横に並べる*/
	margin: 0 auto;
	max-width: 1200px;	/*最大幅。これ以上広がらない。*/
	padding: 2% 3.8%;		/*ボックス内の余白*/
}


/*mainlistブロック設定
---------------------------------------------------------------------------*/
#mainlist {
	flex: 1;
	order: 0;		/*表示させる順番。mainlist、sub、sideそれぞれに指定しており、数字の「小さな順」に左から並びます。*/
	margin: 0 20px 0 0;	/*上下、左右へのマージン。両サイドのブロックとの余白になります。*/
}

/*２カラム利用時に右側のマージンをなくす*/
.c2 #mainlist {
	margin-right: 0;
}

/*１カラム利用時にマージンをなくす*/
.c1 #mainlist {
	margin: 0;
}


/*sideブロック設定
---------------------------------------------------------------------------*/
#side {
	width: 230px;
	order: 1;		/*表示させる順番。mainlist、sub、sideそれぞれに指定しており、数字の「小さな順」に左から並びます。*/
/*	margin-top: 100px;*/
}


/*side 上限・下限プルダウン
---------------------------------------------------------------------------*/
#side .selectbox-001 {
	display: inline-flex;
	align-items: center;
	position: relative;
}

#side .selectbox-001 select {
	width: 84px;
	height: 2.8em;
	padding: .4em calc(.4em + 20px) .4em .6em;
	border: 1px solid #cccccc;
	border-radius: 5px;
	background-color: #ffffff;
	color: #333333;
	font-size: 1em;
	cursor: pointer;
}


/*一覧ブロック（list2。横長タイプ。）
---------------------------------------------------------------------------*/
/*list2ボックス。１個あたりのボックスの指定です。*/
.list2 {
	display: flex;	/*flexボックスを使う指定*/
	padding-left: 10px;	/*ボックス内の左側にだけ余白を作る*/
}

/*ボックス内のfigure画像*/
.list2 figure {
	width: 30%;			/*画像の幅*/
}


/*list2内で使っているtableっぽく見える所。
---------------------------------------------------------------------------*/
/*list2ブロック内でのline設定*/
.list2 dl.line dd {
	width: calc(50% - 8em - 10px);	/*大きな端末向けの再設定。２列にしたいので、100%でなく半分の50%から引いています。*/
	margin-right: 10px;				/*２列になった際の間のスペース*/
}

.list2 dl.line {border-top: none;}

.list2 dl.line dt:nth-of-type(1), .list2 dl.line dd:nth-of-type(1),
.list2 dl.line dt:nth-of-type(2), .list2 dl.line dd:nth-of-type(2) {
	border-top: 1px solid #ccc;
}


/*list2内で使っているtableっぽく見える所。
---------------------------------------------------------------------------*/
/*list2ブロック内でのline設定*/
.list2 dl.item dd {
/*	width: calc(50% - 8em - 10px);*/	/*大きな端末向けの再設定。２列にしたいので、100%でなく半分の50%から引いています。*/
	margin-right: 15px;				/*２列になった際の間のスペース*/
}

.list2 dl.item {border-top: none;}

.list2 dl.item dt:nth-of-type(1), .list2 dl.item dd:nth-of-type(1),
.list2 dl.item dt:nth-of-type(2), .list2 dl.item dd:nth-of-type(2) {
/*	border-top: 1px solid #ccc;*/
}


/*その他
---------------------------------------------------------------------------*/
.ws {width: 48%;display: inline;}


/*　※注意！　下の閉じカッコ　}　はこのブロックに必要なので、削除しないで下さい。　*/

}
