@charset "UTF-8";
@import url("grid.css");

img {
	max-width:100%;
	height: auto;/*高さ自動*/
}
a {
    display:block;
    color: #666;
    text-decoration-line: none;
}
a:hover { 
    color: #999;
}

.LinkInline {/*リンク改行させない*/
  display:inline;
}
/*ヘッダー
-------------------------------------*/
.header {
	display: flex;
    flex-direction: row;
    padding: 2rem 0 0 0;
}
.header-box {
	margin-left: auto;
	margin-top: 8px;
}
.contact-button {
	padding: 1rem;
	border: 2px solid #000;
}
nav ul {
	display: flex;
    flex-direction: row;
    justify-content: space-around;
    list-style: none;
	margin: 1rem 0 0 0;
}
nav li {
	flex: 1 0 auto;
}
nav li a {
    text-decoration: none;
    text-align: center;
    width: 100%;
}
nav a:hover {
    background-color: #f7f7f7;    
}
nav a {
    padding: 0.5rem;
}

@media screen and (min-width: 768px){
/* PC時はMENUボタンを非表示 */
	#open,#close {
		display: none !important;
	}

	#navi {
		display: block !important;
	}
}

@media screen and (max-width: 768px){
	.header {
		flex-direction: column;
		margin-bottom: 10px;
	}
	.header #open,#close  {
		position: absolute;
		top: 20px;
		right: 12px;
	}
	nav ul {
		flex-direction: column;
	}
	.header li {
		padding-top: 0;
	}
	/* スマホ時はMENUボタンを表示 */
	#open,#close  {
		display: block;
		width: 50px;
		border: none;
		position: absolute;
		top: 20px;
		right: 12px;
	}
	/* スマホ時はメニューを非表示 */
	#navi {
		display: none;
	}
}
    
/*メイン画像
-------------------------------------*/
.mainimg img {
    width: 100vw;
}

/*メインコンテンツ
-------------------------------------*/
main {
    margin: 5rem 0 0 0;
}
section {
	margin: 5rem 0;
	padding: 3rem 0;
}
.gray-back {
	background-color: #f4f4f4;
}

.red {
	font-size: 16px;
	color: #F44336;
}
/*キャッチコピー
-------------------------------------*/
.catch {
    text-align: center;
}
.catch h2 {
    padding-bottom: 1rem;
}
.under {
    border-bottom: 0.4rem solid #000;
    padding:0 1rem 1rem 1rem;
}
.center {
	text-align: center;
	margin-bottom: 4rem;
}

/*申し込みの流れ
-------------------------------------*/
.flow.row {
	margin-bottom: 5rem;
}

/*フッター
-------------------------------------*/
footer {
    background-color: #f7f7f7;
    padding: 5rem 0;
}
footer h4 {
    border-bottom: 3px solid #ccc;
}

/*お問い合わせ
-------------------------------------*/
.contact-box {
	border: 1px solid #ccc;
	text-align: center;
	padding: 2rem 0;
}
.contact-box2 {
	border: 0;
	text-align: center;
	padding: 2rem 0;
	display: inline-block;
	margin : 0 auto;
}
.table {
	margin: 4rem 0;
}
.table th {
	width: 250px;
}

/*コピーライト
-------------------------------------*/
.copyright {
    text-align: center;
    padding: 1rem 0;
    background-color: #000;
}
.copyright a {
    color: #fff;
    text-decoration: none;
	display: inline;
}

/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
}
#pagetop a {
    display: block;
    background: #000;
    color: #fff;
    width: 50px;
    padding: 10px 5px;
    text-align: center;
}
#pagetop a:hover {
    background: #666;
}

/* 幅768px以下の表示
-------------------------------------*/
@media screen and (max-width: 768px){
	
	/*ヘッダー
	-------------------------------------*/
	.header-box {
		display: none;
	}	
	/*お問い合わせ
	-------------------------------------*/
	/*.table th {
		width: 100%;
		display: block;
	}	
	.table td {
		display: block;
	}*/

	/*会社概要テーブル
	-------------------------------------*/
	table.kaisha {
	width: 100%;
	}

	table.kaisha th,
	table.kaisha td {
	border: 1px solid #ccc;
	padding: 20px;
	width: 100%;
	}

	table.kaisha th {
	font-weight: bold;
	background-color: #dedede; 
	}
}

/* リストを含むコンテナに適用 */
.list-box {
	margin-top: 2em;        /* 上に余白 */
	margin-bottom: 2em;     /* 下に余白 */
	padding: 1.5em;         /* 内側に余白 */
	border: 1px solid #ddd; /* 薄いグレーの線 */
	border-radius: 8px;     /* 角を丸く */
	background-color: #fcfcfc; /* 非常に明るい背景色 */
	box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* 軽い影で立体感を出す */
}
.list-box ul.items,
.list-box .items {
	list-style-type: disc; /* 黒丸（●）を表示 */
	padding-left: 2em;
	margin-top: 0;
	margin-bottom: 0;
}

/* その他のスタイルは変更なし */
.list-box ul.items li,
.list-box .item {
	margin-bottom: 1rem;
}

/*シンプルなリスト*/
.list-simplebox{
	margin-top: 0.5em;        /* 上に余白 */
	margin-bottom: 1em;     /* 下に余白 */
}

.list-simplebox ul.items,
.list-simplebox .items{
	list-style: none;
	padding-left: 2em;
	margin-top: 0;
	margin-bottom: 0;
}

.list-simplebox ul.items li,
.list-simplebox .item{
	margin-bottom: 1rem;
}

.list-style-disc ul {
	list-style-type: disc;
	padding-left: 2em;
	margin-top: 0;
	margin-bottom: 0;
}

/* .list-style-disc の中の li に適用 */
.list-style-disc li {
	margin-bottom: 0.5rem; /* リストアイテム間の下余白 */
}

.container h4 {
	margin-left: 0;
	border-left: 4px solid #337ab7;
	padding-left: 10px;
	line-height: 1;
	margin-bottom: 0.8em;
	margin-top: 1.5em;
}
.article-list {
	list-style-type: decimal; /* 1, 2, 3... といった数字を表示 */
	margin: 0;
	padding-left: 1.2em;
}

/* リストアイテム li のインデント調整 */
.article-list li {
	padding-left: 1em;
	text-indent: 0em;
	margin-bottom: 0.8em;
}
