@charset "utf-8";



/*全端末（PC・タブレット・スマホ）共通設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*全体の設定
---------------------------------------------------------------------------*/
body {
	margin: 0px;
	padding: 0px;
	color: #333;
	/*全体の文字色*/
	font-family: "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka;
	/*フォント種類*/
	font-size: 18px;
	/*文字サイズ*/
	line-height: 2;
	/*行間*/
	background: #fff;
	/*背景色*/
	-webkit-text-size-adjust: none;
}

h1,
h2,
h3,
h4,
h5,
p,
ul,
ol,
li,
dl,
dt,
dd,
form,
figure,
form {
	margin: 0px;
	padding: 0px;
	font-size: 100%;
	font-weight: normal;
}

textarea,
select,
input[type="text"],
input[type="checkbox"],
input[type="radio"],
input[type="button"],
input[type="submit"] {
	font-size: 100%;
}

h1,
h2,
h3,
h4,
#menubar {
	font-family: "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro";
}

ul {
	list-style-type: none;
}

ol {
	padding-left: 40px;
	padding-bottom: 15px;
}

img {
	border: none;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

table {
	border-collapse: collapse;
	font-size: 100%;
	border-spacing: 0;
}

iframe {
	width: 100%;
}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #333;
	/*リンクテキストの色*/
	transition: 0.5s;
	/*マウスオン時の移り変わるまでの時間設定。0.5秒。*/
	text-decoration: none;
}

a:hover {
	color: #0066cc;
	/*マウスオン時の文字色*/
	text-decoration: none;
	/*マウスオン時に下線を消す設定。残したいならこの１行削除。*/
	font-weight: bold;
}

/*inner共通
---------------------------------------------------------------------------*/
.inner {
	max-width: 1200px;
	/*サイトの最大幅　※下の方の「画面幅1200px以上の設定」にも関連するので変更の際は注意して下さい。*/
	margin: 0 auto;
}

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	border-top: 4px solid #0066cc;
	/*上の線の幅、線種、色*/
	background: linear-gradient(#cce6f6, #fff 40%);
	/*背景グラデーション*/
}

header .inner {
	position: relative;
	height: 140px;
	/*ヘッダーの高さ*/
}

/*ロゴ画像*/
header #logo img {
	width: 350px;
	/*画像幅*/
	position: absolute;
	left: 3%;
	/*ヘッダーに対して左から3%の場所に配置*/
	top: 38px;
	/*ヘッダーに対して上から38pxの場所に配置*/
}

/*ヘッダー内メニュー（ボタン）
---------------------------------------------------------------------------*/
/*メニューブロック全体*/
#headermenu {
	position: absolute;
	right: 3%;
	/*header のinnerに対して右から3%の場所に配置*/
	bottom: 5px;
	/*header のinnerに対して下から15pxの場所に配置*/
}

/*メニュー１個あたり*/
#headermenu li {
	float: left;
	/*左に回り込み*/
	margin-left: 10px;
	/*左側にスペースを空ける*/
	margin-top: 5px;
}

#headermenu li a {
	text-decoration: none;
	display: inline-block;
	background: #ff8a00;
	/*背景色（古いブラウザ用）*/
	background: linear-gradient(#ffa600, #ff8a00);
	/*グラデーション*/
	color: #fff;
	/*文字色*/
	padding: 0px 15px;
	/*上下、左右へのボックス内の余白*/
	border-radius: 5px;
	/*角丸のサイズ*/
	border: 1px solid #ff8a00;
	/*枠線の幅、線種、色*/
}

/*マウスオン時*/
#headermenu li a:hover {
	color: #ff8a00;
	/*文字色*/
	background: #fff;
	/*背景色*/
}

/*右側の電話番号ブロック*/
#tel {
	float: right;
	/*右に回り込み*/
	padding-top: 15px;
	/*上に空ける余白。上下のバランスをここで調整します。*/
	padding-right: 3%;
	/*右に空ける余白。*/
	font-size: 12px;
	/*文字サイズ*/
	text-align: center;
	/*内容をセンタリング*/
	line-height: 1.5;
	/*行間を少し狭く。基本は上の「body」のline-heightです。*/
	letter-spacing: 0.1em;
	/*文字間隔を少しだけ広く*/
}

/*電話番号の行への追加指定*/
#tel span {
	font-size: 20px;
	/*文字サイズを大きく*/
	color: #0066cc;
	/*文字色*/
}

#tel span a {
	color: #0066cc;
	/*文字色*/
}

/*メインメニュー
---------------------------------------------------------------------------*/
/*メニューブロック*/
#menubar {
	clear: both;
	overflow: hidden;
	border-top: 1px solid #dcdcdc;
	/*上の線の幅、線種、色*/
	border-bottom: 1px solid #dcdcdc;
	/*下の線の幅、線種、色*/
	font-size: 18px;
	/*文字サイズ*/
}

/*メニュー１個あたりの設定*/
#menubar li {
	float: left;
	/*左に回り込み*/
	width: 20%;
	/*メニュー幅（100÷5個=20%）※下の方の「画面幅1200px以上の設定」にも関連するので変更の際は注意して下さい。*/
}

#menubar li a {
	display: block;
	text-decoration: none;
	text-align: center;
	/*内容をセンタリング*/
	padding: 15px 0;
	/*上下、左右へのボックス内の余白*/
	border-right: 1px solid #dcdcdc;
	/*右の線の幅、線種、色*/
}

/*１つ目のメニューへの追加設定*/
#menubar li:first-child a {
	border-left: 1px solid #dcdcdc;
	/*左の線の幅、線種、色*/
}

/*マウスオン時と、現在表示中(current)メニューの設定*/
#menubar li a:hover,
#menubar li.current a {
	background: #0066cc;
	/*背景色*/
	color: #fff;
	/*文字色*/
}

/*スマホ用メニューを表示させない*/
#menubar-s {
	display: none;
}

/*３本バーアイコンを表示させない*/
#menubar_hdr {
	display: none;
}

/*ドロップダウンメニュー用
----------------------------------------------------------------------------------------------------------------------------------*/
/*メニューブロック*/
#menubar ul.ddmenu {
	position: absolute;
	visibility: hidden;
	z-index: 10;
	margin-top: 1px;
	width: 20%;
	/*幅。上の「#menubar li」と合わせる。*/
}

/*メニュー１個あたりの設定*/
#menubar ul.ddmenu li {
	float: none;
	width: 100%;
}

#menubar ul.ddmenu li a {
	width: 100%;
	border: none;
	background: #4c4c4c;
	/*背景色（古いブラウザ用）*/
	background: rgba(0, 0, 0, 0.7);
	/*背景グラデーション。0,0,0は黒の事で0.7は透明度70%の事。*/
	color: #fff;
	/*文字色*/
	padding: 6px 0;
	/*上下、左右へのボックス内の余白*/
	border-bottom: 1px solid #fff;
	/*下の線の幅、線種、色*/
}

/*マウスオン時*/
#menubar ul.ddmenu li a:hover {
	background: #0066cc;
	/*背景色*/
}

/*パンくずリスト(2020/10追加)
---------------------------------------------------------------------------*/
.breadcrumb {
	display: flex;
	font-size: 14px;
	letter-spacing: 0.1em;
	align-items: center;
	margin: -25px 0 20px;
}

.breadcrumb li {
	position: relative;
}

.breadcrumb li::after {
	content: '>';
	color: #707070;
	position: absolute;
	top: 50%;
	transform: translateY(-52%);
	right: -19px;
}

.breadcrumb li:last-child::after {
	display: none;
}

.breadcrumb li:not(:last-child) {
	margin-right: 30px;
}

.breadcrumb li a {
	color: #0066CB;
	display: block;
	padding-top: 1.5px;
}

.breadcrumb li:first-of-type a {
	padding-top: 3px;
}

.breadcrumb li a:hover {
	transition: 0.3s;
	text-decoration: underline;
}

.breadcrumb .current {
	color: #525252;
}


/*コンテンツ
---------------------------------------------------------------------------*/
.contents {
	clear: both;
	overflow: hidden;
	padding: 50px 0px;
	/*上下、左右へのボックス内の余白*/
}

/*h2タグの設定*/
.contents h2 {
	clear: both;
	margin: 40px 0;
	/*見出しの下にとるスペース*/
	padding: 10px 20px;
	/*上下、左右への余白*/
	border: 1px solid #dcdcdc;
	/*枠線の幅、線種、色*/
	font-size: 150%;
	/*文字サイズ。上の「body」で設定しているサイズに対しての指定。*/
	background: #0066cc;
	/*背景色（古いブラウザ用）*/
	letter-spacing: 0.1em;
	/*文字間隔を少し広くとる設定*/
	color: #fff;
	/*文字色*/
	text-align: center;
}

/*h2タグの左側のアクセント*/
.contents h2::first-letter {
	border-left: 5px solid #0066cc;
	/*左の線の幅、線種、色*/
	padding-left: 20px;
	/*線とテキストとの距離*/
}

/*h3タグの設定*/
.contents h3 {
	clear: both;
	margin-bottom: 30px;
	/*見出しの下にとるスペース*/
	padding: 0px 20px;
	/*上下、左右への余白*/
	font-size: 140%;
	/*文字サイズ。上の「body」で設定しているサイズに対しての指定。*/
	font-weight: bold;
	letter-spacing: 0.1em;
	/*文字間隔を少し広くとる設定*/
	color: #0066cc;
	/*文字色*/
	text-align: center;
}

/*h3タグの左側のアクセント*/
.contents h3::first-letter {
	padding-left: 20px;
	/*線とテキストとの距離*/
}

/*h4タグの設定*/
.contents h4 {
	font-size: 130%;
	/*文字サイズ。上の「body」で設定しているサイズに対しての指定。*/
	padding: 10px 20px;
	/*上下、左右への余白*/
	border-bottom: 1px solid #ccc;
	/*下線の幅、線種、色*/
	margin-bottom: 30px;
	/*見出しの下にとるスペース*/
	text-align: center;
}

/*段落タグ設定*/
.contents p {
	padding: 0px 20px 40px;
	/*上、左右、下への余白*/
}

/*段落タグが続く場合に余白が空きすぎないようにする*/
.contents p+p {
	margin-top: -20px;
}

/*h2とh3とh4タグの直後の段落タグ設定*/
.contents h2+p,
.contents h3+p,
.contents h4+p {
	margin-top: -10px;
}

.column {
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
	margin-right: 40px;
	margin-bottom: 40px;
	margin-left: 40px;
	background: #d1e1e8;
}

.column-img {
	width: 40%;
}

.column-img img {
	width: 100%;
}

.column-texts {
	box-sizing: border-box;
	padding-top: 40px;
	padding-right: 30px;
	padding-bottom: 40px;
	padding-left: 30px;
	width: 60%;
}

.column-texts-title {
	margin: 0;
	font-size: 30px;
}

.column-texts-p {
	margin-left: 0;
	padding-top: 20px;
	font-size: 18px;
	line-height: 1.4;
}



.column2 {
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
	margin-right: 40px;
	margin-bottom: 40px;
	margin-left: 40px;
	background: #d1e8d1;
}

.column2-img {
	width: 40%;
}

.column2-img img {
	width: 100%;
}

.column2-texts {
	box-sizing: border-box;
	padding-top: 40px;
	padding-right: 30px;
	padding-bottom: 40px;
	padding-left: 30px;
	width: 60%;
}

.column2-texts-title {
	margin: 0;
	font-size: 30px;
}

.column2-texts-p {
	margin: 0;
	padding-top: 20px;
	font-size: 18px;
	line-height: 1.4;
}



.column3 {
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
	margin-right: 40px;
	margin-bottom: 40px;
	margin-left: 40px;
	background: #e8e1d1;
}

.column3-img {
	width: 40%;
}

.column3-img img {
	width: 100%;
}

.column3-texts {
	box-sizing: border-box;
	padding-top: 40px;
	padding-right: 30px;
	padding-bottom: 40px;
	padding-left: 30px;
	width: 60%;
}

.column3-texts-title {
	margin: 0;
	font-size: 30px;
}

.column3-texts-p {
	margin: 0;
	padding-top: 20px;
	font-size: 18px;
	line-height: 1.4;
}



/*listブロック
---------------------------------------------------------------------------*/
/*listブロック設定*/
.list {
	overflow: hidden;
	position: relative;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3) inset;
	/*ボックスの影。右へ、下へ、ぼかす範囲。0,0,0は黒の事で0.3は透明度30%の事。insetは内側に向かう影。*/
	margin: 0 2% 30px;
	/*上、左右、下へのボックスの外に空けるスペース*/
	background: #fff;
	/*背景色*/
	transition: 0.5s;
	/*マウスオン時の移り変わるまでの時間設定。0.5秒。*/
	padding: 4%;
	/*ボックス内の余白*/
}

/*list2ブロック設定*/
.list2 {
	overflow: hidden;
	position: relative;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3) inset;
	/*ボックスの影。右へ、下へ、ぼかす範囲。0,0,0は黒の事で0.3は透明度30%の事。insetは内側に向かう影。*/
	margin: 0 2% 30px;
	/*上、左右、下へのボックスの外に空けるスペース*/
	background: #fff;
	/*背景色*/
	transition: 0.5s;
	/*マウスオン時の移り変わるまでの時間設定。0.5秒。*/
	padding-bottom: 3%;
	/*ボックス内の余白*/
}

/*list3小売店ブロック*/
.list3 {
	overflow: hidden;
	position: relative;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3) inset;
	/*ボックスの影。右へ、下へ、ぼかす範囲。0,0,0は黒の事で0.3は透明度30%の事。insetは内側に向かう影。*/
	margin: 0 2% 10px;
	/*上、左右、下へのボックスの外に空けるスペース*/
	background: #fff;
	/*背景色*/
	transition: 0.5s;
	/*マウスオン時の移り変わるまでの時間設定。0.5秒。*/
	padding-bottom: 3%;
	/*ボックス内の余白*/
}

.list a {
	overflow: hidden;
	text-decoration: none;
	display: block;
}

/*h4タグ設定*/
.list h4 {
	padding: 0;
	border: none;
	font-size: 200%;
	/*文字サイズ*/
	color: #0066cc;
	/*文字色*/
	line-height: 1.2em;
	height: 1em;
	overflow: hidden;
	/*１行を超えた部分は非表示になる*/
	margin-bottom: 0.5em;
}

/*段落タグ設定*/
.list p {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.8;
	overflow: hidden;
}

/*段落タグ設定*/
.list2 p {
	margin: 0 !important;
	padding: 20px 2vw 0 !important;
	line-height: 1.8;
	overflow: hidden;
}

/*figure画像の設定*/
.list figure img {
	margin: 0 0 4% 0;
	/*上、右、下、左への画像の外側にとるスペース*/
}

/*figure画像の右側回り込みの設定*/
.list figure img.fr {
	width: 20%;
	/*画像幅*/
	float: right;
	/*右に回り込み*/
	margin: 0 0 0 4%;
	/*上、右、下、左への画像の外側にとるスペース*/
}

/*figure画像の左側回り込みの設定*/
.list figure img.fl {
	width: 20%;
	/*画像幅*/
	float: left;
	/*左に回り込み*/
	margin: 0 4% 0 0;
	/*上、右、下、左への画像の外側にとるスペース*/
}

/*右下の「→」マーク設定*/
.list a::before {
	content: ">";
	/*このテキストを表示させる。変更しても構いませんが機種依存文字は化ける場合があるので使わない。*/
	font-size: 20px;
	/*文字サイズ*/
	text-align: center;
	border-radius: 50%;
	/*円形にする*/
	background: #b2b2b2;
	/*背景色（古いブラウザ用）*/
	background: rgba(0, 0, 0, 0.3);
	/*背景色。0,0,0は黒の事で0.3は透明度30%の事。*/
	color: #fff;
	/*文字色*/
	position: absolute;
	right: 20px;
	/*右から20pxの場所に配置*/
	bottom: 20px;
	/*下から20pxの場所に配置*/
	width: 30px;
	/*幅*/
	line-height: 30px;
	/*高さ*/
	transition: 1s;
	/*マウスオン時の移り変わるまでの時間設定。1秒。*/
}

/*右下の「→」マークのマウスオン時*/
.list a:hover::before {
	background: #0066cc;
	/*背景色*/
	box-shadow: 0px 0px 0px 10px #0066cc;
	/*ボックスの影の指定ですが、円がそのまま大きくなるような動作になります。右へ、下へ、ぼかす範囲、距離。最後は色。*/
}

/*2カラム利用時--------------------------------------------*/
.c2 .list {
	float: left;
	/*左に回り込み*/
	padding: 3%;
	/*ボックス内の余白の上書き*/
	width: 40%;
	/*幅*/
	text-align: center;
	/*内容をセンタリング*/
}

.c2 .list2 {
	float: left;
	/*左に回り込み*/
	width: 45%;
	/*幅*/
	text-align: center;
	/*内容をセンタリング*/
}

/*h4タグ*/
.c2 .list h4 {
	font-size: 130%;
}

/*p段落タグ*/
.c2 .list p {
	height: 5.4em;
	/*上の「.list p」の「1.8」×「表示させたい行数」を設定。5.4だと3行分になる。*/
}

/*3カラム利用時--------------------------------------------*/
.c3 .list {
	float: left;
	/*左に回り込み*/
	padding: 2%;
	/*ボックス内の余白の上書き*/
	width: 25.3%;
	/*幅*/
	text-align: center;
	/*内容をセンタリング*/
}

/*h4タグ*/
.c3 .list h4 {
	font-size: 110%;
}

/*p段落タグ*/
.c3 .list p {
	font-size: 85%;
	height: 7.2em;
	/*上の「.list p」の「1.8」×「表示させたい行数」を設定。7.2だと4行分になる。*/
}

/*右下の「→」マークを少し小さく設定しなおす*/
.c3 .list a::before {
	width: 25px;
	line-height: 25px;
	font-size: 12px;
}



/* トップページ (2020/10追加)
---------------------------------------------------------*/

/* service 共通 */

.service {
	padding: 160px 0;
}

.service:first-of-type {
	padding: 80px 0 160px;
}


.service:last-of-type {
	padding: 160px 0 80px;
}


.contents .service-ttl {
	font-size: 40px;
	font-weight: bold;
	background: none;
	border: none;
	color: #525252;
	padding: 0;
	text-align: center;
}

.contents .service-ttl::first-letter {
	border: none;
}

.contents .service-lead {
	color: #525252;
	font-size: 18px;
}

.contents .service-ttl::first-letter {
	padding-left: 0 !important;
}

.contents .service-lead::first-letter {
	padding-left: 0 !important;
}

.service-btn {
	color: #fff;
	font-size: 17px;
	letter-spacing: 0.1em;
	width: 317px;
	height: 70px;
	line-height: 70px;
	display: block;
	margin: 0 auto;
	text-align: center;
	background-color: #00A0E8;
	border: 2px solid #00A0E8;
}

.service-btn:hover {
	color: #00A0E8;
	background-color: #fff;
	transition: 0.4s;
}

/* /.service 共通 */


/* service1 */

.service-ttl1 {
	font-size: 22px;
}

.service-lead1 {
	text-align: center;
}

.service-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.service-btn1 {
	margin-top: 20px;
}

/* /.service1 */


/* service2 */

.contents .service-ttl2 {
	font-size: 22px;
}

.service-img2 {
	width: 550px;
	height: 300px;
	margin: 0 auto 30px;
}

.service2-txt {
	text-align: center;
	font-size: 16px;
}

.service-btn2 {
	color: #fff;
	background-color: #00A0E8;
	border: 2px solid #00A0E8;
	width: 430px;
}

.service-btn2:hover {
	color: #00A0E8;
	background-color: #fff;
	border-color: #00A0E8;
}

/* /.service2 */


/* service3 */

.serviceWrap3 {
	display: flex;
}

.serviceWrap3 .left {
	width: 40%;
}

.service-img3 {
	width: 100%;
	height: auto;
	margin: 40px auto 0px;
}

.serviceWrap3-child {
	display: flex;
	justify-content: space-around;
}

.serviceWrap3 .right {
	width: 60%;
	padding-top: 0px;
	margin-left: 30px;
	/* background-color: #eee; */
}

.contents .service-ttl3 {
	font-size: 22px;
	text-align: left;
}

.service3-txt {
	font-size: 16px;
}

.service-btn3 {
	width: 330px;
	margin: 0px 0 0 20px;
}

/* /.service3 */



/* service4 */

.serviceWrap4 {
	display: flex;
}

.serviceWrap4 .left {
	width: 50%;
}

.contents .service-ttl4,
.contents .service-lead4 {
	text-align: left;
	width: 670px;
	margin-left: 80px;
}

.contents .service-lead4 {
	margin-top: 50px;
	padding-left: 0;
}


.serviceWrap4 .right {
	width: 50%;
}

.service-img4 {
	width: 380px;
	height: 280px;
}

.service-img4:first-of-type {
	margin-bottom: 30px;
	margin-left: 170px;
}

.service-btn4 {
	width: 380px;
	margin: 350px 0 0 80px;
}

/* /.service4 */


/* /.service5 */

.serviceWrap5 {
	display: flex;
}

.service-img5 {
	width: 50%;
	height: auto;
}

.serviceWrap5 .right {
	width: 50%;
	padding-top: 60px;
	height: 615px;
	box-sizing: border-box;
}

.contents .service-ttl5 {
	color: #fff;
	font-size: 24px;
	text-align: left;
	letter-spacing: 0.01em;
}

.service5-txt {
	color: #fff;
	font-size: 16px;
	margin-left: 20px;
}


.service-btn5 {
	color: #00A0E8;
	background-color: #fff;
	border: 2px solid #00A0E8;
	margin: 40px 0 0 40px;
	width: auto;
	display: inline-block;
	padding: 0 1em;
}

.service-btn5-2 {
	color: #00A0E8;
	background-color: #fff;
	border: 2px solid #00A0E8;
	margin: 100px 0 0 40px;
}

.service-btn5:hover {
	color: #fff;
	background-color: #00A0E8;
	border-color: #00A0E8;
}


.service-btn5-2:hover {
	color: #fff;
	background-color: #00A0E8;
	border: 2px solid #fff;
	margin: 100px 0 0 40px;
}

/* service5 */



/* 問い合わせページ (2020/10追加)
---------------------------------------------------------*/
.contact-cont {
	margin: 0px 0 50px;
	display: flex;
	justify-content: center;
}

.contact-btn1,
.contact-btn2 {
	width: 330px;
	border: 2px solid #0066cc;
	box-sizing: border-box;
	border-radius: 10px;
	background-color: #fff;
}

.contact-btn1:hover,
.contact-btn2:hover {
	transition: 0.4s ease;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
	opacity: 0.95;
}

.contact-btn1 {
	margin-right: 45px;
}

.contact-btn2 {
	border: 2px solid #cc6600;
}

.contents .contact-ttl {
	text-align: center;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.01;
	background-color: #0066cc;
	padding: 12px 2px;
	margin-bottom: 0;
	border-radius: 4px 4px 0 0;
}

.contents .contact-ttl::first-letter {
	padding-left: 0;
}

.contents .contact-txt {
	color: #333;
	font-size: 14px;
	padding: 10px 20px 20px;
}

.contents .contact-txt li {
	padding: 5px 3px;
}



/*mainコンテンツ
---------------------------------------------------------------------------*/
.main {
	float: left;
	/*左に回り込み*/
	width: 72%;
	/*幅*/
	overflow: hidden;
}

/*subコンテンツ
---------------------------------------------------------------------------*/
/*subブロック*/
.sub {
	float: right;
	/*右に回り込み*/
	width: 24%;
	/*幅*/
}

/*subコンテンツ内のh2タグ設定*/
.sub h2 {
	background: none;
	border: none;
	box-shadow: none;
	padding: 0;
	letter-spacing: normal;
	font-size: 120%;
	/*文字サイズ*/
	margin-bottom: 20px;
}

/*subコンテンツのh2タグの１文字目への設定*/
.sub h2::first-letter {
	padding-left: 15px;
}

/*段落タグ設定*/
.sub p {
	padding-bottom: 10px;
	/*上、左右、下への余白*/
}


/*サブコンテンツ内のメニュー
---------------------------------------------------------------------------*/
/*メニュー全体の設定*/
.sub ul.submenu {
	margin-bottom: 20px;
	/*メニューブロックの下に空けるスペース*/
	border-top: solid 1px #dcdcdc;
	/*上の線の線種、幅、色*/
}

/*メニュー１個ごとの設定*/
.sub ul.submenu li {
	background: #fff;
	/*背景色*/
	border-bottom: solid 1px #dcdcdc;
	/*下の線の線種、幅、色*/
}

.sub ul.submenu li a {
	text-decoration: none;
	display: block;
	padding: 5px 10px;
	/*メニュー内の余白。上下、左右への設定。*/
}

/*サブコンテンツ内のbox1
---------------------------------------------------------------------------*/
.sub .box1 {
	padding: 15px;
	/*ボックス内の余白*/
	margin-bottom: 20px;
	/*ボックスの下に空けるスペース*/
	background: rgba(0, 0, 0, 0.02);
	/*背景色。rgbaは色設定で0,0,0は黒。0.02は透明度2%の事。*/
	border: solid 1px #dcdcdc;
	/*線の線種、幅、色*/
	box-shadow: 0px 0px 1px 21x #fff inset;
	/*ボックスの影。内側に白のラインを入れる。*/
}

/*box1内のメニューの設定*/
.sub .box1 ul.submenu {
	margin-bottom: 0px;
}

/*フッター設定
---------------------------------------------------------------------------*/
footer {
	clear: both;
	font-size: 90%;
	/*文字サイズ*/
	background: #0066cc;
	/*背景色*/
	color: #fff;
	/*文字色*/
}

footer a {
	text-decoration: none;
	color: #fff;
	/*文字色*/
}

footer .pr {
	display: block;
	font-size: 80%;
}

/*フッターメニュー
---------------------------------------------------------------------------*/
/*ボックス全体*/
#footermenu {
	overflow: hidden;
	padding: 20px;
	font-size: 90%;
	/*文字サイズ*/
	background: url(../images/icon_logo.bmp) no-repeat right center;
	background-size: 10% auto;
	/*右側に表示させているロゴマーク*/
}

/*１行分の設定*/
#footermenu ul {
	float: left;
	/*左に回り込み*/
	width: 20%;
	/*幅。今回は５列作ったのでここの幅18%と下のpadding(合計の2%)でトータル20%になるよう設定。列に応じて調整して下さい。*/
	padding-right: 1%;
	padding-left: 1%;
}

#footermenu a {
	color: rgba(255, 255, 255, 0.7);
}

#footermenu a:hover {
	color: #fff;
}

/*コピーライト
---------------------------------------------------------------------------*/
#copyright {
	clear: both;
	text-align: center;
	background: #333;
	/*背景色*/
}

/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/*ブロック全体の設定*/
#news dl {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 20px;
	margin-bottom: 20px;
}

/*日付設定*/
#news dt {
	float: left;
	width: 9em;
	/*幅*/
	color: #0066cc;
	/*文字色*/
	letter-spacing: 0.1em;
}

/*記事設定*/
#news dd {
	padding-left: 9em;
	border-bottom: 1px solid #dcdcdc;
	/*下線の幅、線種、色*/
}

/*テーブル
---------------------------------------------------------------------------*/
/*ta1,ta2共通設定*/
.ta1,
.ta2 {
	width: 96%;
	margin: 0 2% 30px;
}

.ta1,
.ta1 td,
.ta1 th,
.ta2,
.ta2 td,
.ta2 th {
	border: 1px solid #999;
	/*テーブルの枠線の幅、線種、色*/
	line-height: 2;
	padding: 20px;
	/*ボックス内の余白*/
	word-break: break-all;
}

/*テーブル１行目に入った見出し部分*/
.ta1 th.tamidashi,
.ta2 th.tamidashi {
	width: auto;
	text-align: left;
	/*左よせ*/
	background: #cce6f6;
	/*背景色*/
	font-weight: bold;
}

/*ta1の左側ボックス*/
.ta1 th {
	width: 40%;
	/*幅*/
	text-align: center;
	/*センタリング*/
	background: #f0f0f0;
	/*背景色*/
	font-weight: normal;
}

/*ta1の左側ボックスに画像を入れた場合の設定*/
.ta1 th img {
	width: 80%;
}

/*ta2の左側ボックス*/
.ta2 th {
	background: #0066cc;
	/*背景色*/
	color: #fff;
}

/*ta2の右側ボックス*/
.ta2 td {
	text-align: center;
	/*センタリング*/
	line-height: 200%;
}

/*料金ページの追加設定（CMS用）*/
.ta1.price td {
	text-align: right;
}

.ta1.price tr.total th {
	background: #b7e0ee;
	font-size: 150%;
}

.ta1.price tr.total td {
	background: #deeff4;
	font-weight: bold;
	font-size: 150%;
}


.ta3 {
	width: 100%;
	border-collapse: collapse;
}

.ta3 th {
	width: 25%;
	/*幅*/
	text-align: center;
	/*センタリング*/
	background: #f0f0f0;
	/*背景色*/
	font-weight: bold;
	border: 1px solid #ccc;
}

.ta3 td {
	padding: 6px;
	border: 1px solid #ccc;
}

.ta3 td .td35 {
	width: 35%;
}


/*ボタン(btn)の設定
---------------------------------------------------------------------------*/
input[type="submit"].btn,
input[type="button"].btn {
	padding: 15px;
	/*ボタン内の余白*/
	margin-bottom: 30px;
	border: 1px solid #ccc;
	/*枠線の幅、線種、色*/
	border-radius: 3px;
	/*角丸のサイズ*/
	background: linear-gradient(#fff, #eee);
	/*グラデーション*/
}

/*マウスオン時の設定*/
input[type="submit"].btn:hover,
input[type="button"].btn:hover {
	border: 1px solid #999;
	/*枠線の幅、線種、色*/
	background: #fff;
	/*背景色*/
	position: relative;
	top: 1px;
	left: 1px;
	/*マウスオン時に上から1px、左から1px場所を移動する*/
}

/*PAGE TOP設定
---------------------------------------------------------------------------*/
#pagetop {
	clear: both;
	padding-top: 40px;
	position: fixed;
	bottom: 180px;
	right: 50px;
	opacity: 0.8;
	width: 60px;
}

#pagetop a {
	text-decoration: none;
	text-align: center;
	display: block;
	float: right;
	color: #fff;
	/*文字色*/
	font-size: 20px;
	/*文字サイズ*/
	background: #0066cc;
	/*背景色*/
	width: 60px;
	/*幅*/
	line-height: 60px;
	/*高さ*/
	margin-bottom: 20px;
	display: none;
}

/*マウスオン時*/
#pagetop a:hover {
	background: #333;
	/*背景色*/
}



/*一覧ページのボックス内のアイコン
---------------------------------------------------------------------------*/
/*option1,option2共通*/
span.option1,
span.option2 {
	text-align: center;
	display: block;
	font-size: 10px;
	/*文字サイズ*/
	width: 100px;
	/*幅*/
	position: absolute;
	right: 0px;
	/*ボックスに対して右から0pxの場所に配置*/
	top: 0px;
	/*ボックスに対して上から0pxの場所に配置*/
	transform: rotate(45deg) translate(32px, -9px);
	/**/
	color: #fff;
	/*文字色*/
	background: #666;
	/*背景色*/
}

/*option1への追加設定*/
span.option1 {
	color: #fff;
	/*文字色*/
	background: #f00;
	/*背景色*/
}

/*h2タグ内で使った場合のoption1とoption2*/
h2 span.option1,
h2 span.option2 {
	text-shadow: none;
	width: auto;
	padding: 2px 5px;
	position: static;
	transform: none;
	display: inline-block;
	font-size: 15px;
	margin-left: 10px;
}

/*トップページのNEWアイコン
---------------------------------------------------------------------------*/
.newicon {
	background: #f00;
	/*背景色*/
	color: #fff;
	/*文字色*/
	font-size: 70%;
	/*文字サイズ*/
	line-height: 1.5;
	padding: 2px 5px;
	border-radius: 2px;
	margin: 0px 5px;
	vertical-align: text-top;
}

/*bg1
---------------------------------------------------------------------------*/
.bg1 {
	background: #f4f2ea url(../images/bg1.png);
	/*背景色、背景画像の読み込み*/
}


.bg2 {
	background: #d7ecf8;
	/*背景色、背景画像の読み込み*/
}


/*4列の横並び　マウスオーバー明るく
---------------------------------------------------------------------------*/
[class^="img-flex-"] {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 20px;

	margin-bottom: 20px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.img-flex-2>img,
.img-flex-2 a {
	width: 49%;
}

.img-flex-3>img,
.img-flex-3 a {
	width: 32%;
}

.img-flex-4>img,
.img-flex-4 a {
	width: 24%;
}




.img_wrap {
	width: 200px;
	height: 60px;
	margin: 0 auto;
	overflow: hidden;
}

.img_wrap img {
	width: 100%;
	cursor: pointer;
	transition-duration: 0.3s;
}

.img_wrap:hover img {
	opacity: 0.6;
	transition-duration: 0.3s;
}


/*その他
---------------------------------------------------------------------------*/
.look {
	background: #eee;
	padding: 5px 10px;
	border-radius: 4px;
}

.mt30 {
	margin-top: 30px;
}

.mt70 {
	margin-top: 70px;
}

.ml10 {
	margin-left: 10px;
}

.mb15,
.mb1em {
	margin-bottom: 15px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.ml30 {
	margin-left: 30%;
}

.ml45 {
	margin-left: 45%;
}

.ml60 {
	margin-left: 60%;
}

.ml70 {
	margin-left: 70%;
}

.pt0 {
	padding-top: 0px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.p0 {
	padding: 0 !important;
}

.clear {
	clear: both;
}

ul.disc {
	padding: 0em 25px 15px;
	list-style: disc;
}

.color1,
.color1 a {
	color: #f00;
}

.b {
	font-weight: bold;
}

.pr {
	font-size: 10px;
}

.mm {
	font-size: 11px;
}

.p80 {
	font-size: 80%;
}

.wl {
	width: 96%;
}

.ws {
	width: 50%;
}

.c {
	text-align: center !important;
}

.r {
	text-align: right !important;
}

.l {
	text-align: left !important;
}

img.fr {
	float: right;
	margin-left: 10px;
	margin-bottom: 10px;
}

img.fl {
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
}

.big1 {
	font-size: 115%;
}

.mini1 {
	font-size: 11px;
	display: inline-block;
	line-height: 1.5;
}

.sh {
	display: none;
}

p.pdf {
	position: relative;
	line-height: 2em;
	text-indent: 2em;
}

p.pdf:before {
	position: absolute;
	left: 20px;
	content: "";
	display: inline-block;
	width: 2em;
	height: 2em;
	background: url(../images/pdf.png) no-repeat;
	background-size: contain;
}

.bg33 {
	border: 1px solid #0066cc;
	background: linear-gradient(#d1ffff, #fff 40%);
}

/*背景グラデーション*/
.bg50 {
	border: 1px solid #b3ccff;
	background: linear-gradient(#cfe1ff, #fff 40%);
}





/*文字に枠*/
.bg-box {
	font-weight: bold;
	color: #6091d3; /*文字色*/
	background: #fff;
	border: solid 3px #6091d3; /*線*/
	border-radius: 10px; /*角の丸み*/
	padding: 5px;
	margin-bottom: 5px;
}



.bgd {
	background: #d1e1e8;
}

.bgb1 {
	background: #def !important;
}

.bgb2 {
	background: #68b3ff !important;
}

.bgb3 {
	background: #00A0E8 !important;
}

.bgo {
	background: #cc6600 !important;
}

.tat {
	color: #3f668c;
	font-weight: bold;
}

.text-white {
	color: #fff !important;
}

.box1 {
	padding: 10px 20px;
	margin: 40px 25px;
	font-weight: bold;
	border: solid 3px #fff;
}

.box1 p {
	margin: 0px 40px;
	padding: 10px;
}

.before img {
	border: solid 10px #f90;
}

.after img {
	border: solid 10px #f90;
	box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.3);
}



img.grow {
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-ms-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

img.grow:hover {
	-webkit-transform: scale(1.5, 1.5);
	-moz-transform: scale(1.5, 1.5);
	-ms-transform: scale(1.5, 1.5);
	-o-transform: scale(1.5, 1.5);
	transform: scale(1.5, 1.5);
}

.frame {
	display: block;
	margin: 0 auto;
	padding: 5px;
	background: #fff;
	border: 1px solid #bfbf5f;
}



/*画面幅1200px以上の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (min-width:1200px) {

	/*inner共通
---------------------------------------------------------------------------*/
	.inner {
		width: 1200px;
		/*サイト幅*/
	}

	/*メインメニューとドロップダウンメニューの設定変更。
上の共通設定で、max-widthを1200pxにしており、メニュー数が５個なので、1200÷5=240pxになります。
---------------------------------------------------------------------------*/
	#menubar li,
	#menubar ul.ddmenu {
		width: 240px;
	}

}



/*画面幅800px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:800px) {

	/*inner共通
---------------------------------------------------------------------------*/
	.inner {
		width: auto;
	}

	/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
	/*ロゴ画像*/
	header #logo img {
		width: 250px;
		/*画像幅*/
	}

	/*右側の電話番号ブロック*/
	#tel {
		float: none;
		padding: 0;
	}

	/*文字サイズ変更ボタン（※文字サイズを「大」にした時の設定はchange.cssで行う）
---------------------------------------------------------------------------*/
	/*ボタンブロック全体*/
	#fsize {
		display: none;
	}

	/*メインメニュー
---------------------------------------------------------------------------*/
	/*アニメーションのフレーム設定。全100コマアニメーションだと思って下さい。透明度(opacity)0%から透明度100%にする指定。*/
	@keyframes menu1 {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	/*スマホ用メニューを非表示から表示に切り替える*/
	#menubar-s {
		display: block;
		overflow: hidden;
		position: absolute;
		border-top: 1px solid #fff;
		width: 100%;
		z-index: 10;
		animation-name: menu1;
		/*上のkeyframesの名前*/
		animation-duration: 0.5S;
		/*アニメーションの実行時間。0.5秒。*/
		animation-fill-mode: both;
		/*アニメーションの完了後、最後のキーフレームを維持する*/
	}

	/*メニュー１個あたりの設定*/
	#menubar-s li a {
		display: block;
		text-decoration: none;
		padding: 15px 5%;
		border-bottom: 1px solid #fff;
		background: #0066cc;
		color: #fff;
		font-size: 150%;
	}

	/*PC用メニューを非表示にする*/
	#menubar {
		display: none;
	}

	/*３本バーアイコン設定
---------------------------------------------------------------------------*/
	/*３本バーブロック*/
	#menubar_hdr {
		display: block;
		position: absolute;
		top: 3%;
		/*上から3%の場所に配置*/
		right: 3%;
		/*右から3%の場所に配置*/
	}

	/*アイコン共通設定*/
	#menubar_hdr.close,
	#menubar_hdr.open {
		width: 50px;
		/*幅*/
		height: 50px;
		/*高さ*/
		border: 1px solid #000;
		/*枠線の幅、線種、色*/
	}

	/*三本バーアイコン*/
	#menubar_hdr.close {
		background: #fff url(../images/icon_menu.png) no-repeat center top/50px;
	}

	/*閉じるアイコン*/
	#menubar_hdr.open {
		background: #fff url(../images/icon_menu.png) no-repeat center bottom/50px;
	}

	/*コンテンツ
---------------------------------------------------------------------------*/
	.contents {
		padding: 3%;
	}

	/*listブロック（※２カラムも３カラムと１列レイアウトと同じように設定しなおす）
---------------------------------------------------------------------------*/
	/*listブロック設定*/
	.list {
		margin: 0 !important;
		padding: 4% !important;
		float: none !important;
		width: auto !important;
		box-shadow: none;
		border-top: 1px solid #ccc;
	}

	.list2 {
		margin: 0 !important;
		float: none !important;
		width: auto !important;
		box-shadow: none;
		border-top: 1px solid #ccc;
		margin-bottom: 20px !important;
	}

	.list:last-of-type {
		border-bottom: 1px solid #ccc;
		margin-bottom: 20px !important;
	}

	/*h4タグ設定*/
	.list h4 {
		font-size: 150% !important;
	}

	/*段落タグ設定*/
	.list p {
		font-size: 100% !important;
		line-height: 1.8 !important;
		height: auto !important;
	}

	/*main,subコンテンツ
---------------------------------------------------------------------------*/
	.main,
	.sub {
		float: none;
		width: auto;
	}

	/*PAGE TOP設定
---------------------------------------------------------------------------*/
	#pagetop {
		margin-right: 3%;
	}

	/*その他
---------------------------------------------------------------------------*/
	body.s-n .sub,
	body.s-n #footermenu,
	.m-n {
		display: none;
	}


	/*スライダーのスタイル
---------------------------------------------------------------------------*/

	#slide {
		width: 100%;
		height: 300px;
		overflow: hidden;
		position: relative;
		margin: 110px auto 0 auto;
	}

	#slideer {
		position: absolute;
		top: 70px;
	}

	#slideer li {
		float: left;
		height: 140px;
		margin-right: 10px;
	}

	#slideer li img {
		height: 100%;
	}



	/*パンくずリスト_sp
/*---------------------------------------------------------*/
	.breadcrumb {
		font-size: 13px;
		margin: 15px 0 20px;
	}

	.breadcrumb li {
		line-height: 1.3;
	}

	.breadcrumb li a {
		line-height: 1.3;
	}


	/*top service section sp版
/*---------------------------------------------------------*/
	/* 追加CSS 2020/10 */

	/* ----------------------- */
	/* トップページ_sp
/* ----------------------- */

	/* service 共通 */

	.service {
		padding: 80px 0;
	}

	.service:first-of-type {
		padding: 60px 0 80px;
	}


	.service:last-of-type {
		padding: 160px 0 80px;
	}


	.contents .service-ttl {
		font-size: 24px;
	}

	.contents .service-lead {
		font-size: 16px;
	}

	.service-btn {
		font-size: 15px;
		letter-spacing: 0;
		width: 300px;
		height: 60px;
		line-height: 60px;
	}

	.service-btn:hover {
		color: #0066cc;
		background-color: #fff;
		transition: 0.4s ease;
	}

	/* /.service 共通 */


	/* service1 */

	.service-btn1 {
		margin-top: 60px;
	}

	/* /.service1 */


	/* service2 */

	.service2 {
		padding-top: 0;
	}

	.contents .service-ttl2 {
		font-size: 20px;
	}

	.service2-txt {
		font-size: 14px;
	}

	.service-img2 {
		width: 100%;
		height: 250px;
	}

	.service-btn2 {
		margin-top: 30px;
		width: 90%;
	}

	/* /.service2 */


	/* service3 */

	.serviceWrap3 {
		flex-direction: column;
	}

	.serviceWrap3 .left {
		width: 100%;
	}

	.service-img3 {
		width: 100%;
		height: 300px;
		margin: 0 auto 20px;
	}

	.serviceWrap3-child {
		justify-content: space-between;
	}

	.serviceWrap3 .right {
		width: 100%;
		padding-top: 30px;
		margin: 0 auto;
	}

	.contents .service-ttl3 {
		font-size: 20px;
		padding-left: 10px;
		margin-top: 0px;
	}

	.service3-txt {
		font-size: 14px;
	}

	.service-btn3 {
		width: 90%;
		margin: 30px 0 0 10px;
	}

	/* /.service3 */



	/* service4 */

	.serviceWrap4 {
		flex-direction: column-reverse;
	}

	.serviceWrap4 .left {
		width: 100%;
		margin-top: 20px;
	}

	.contents .service-ttl4,
	.contents .service-lead4 {
		width: 100%;
		margin-left: 0;
	}

	.contents .service-lead4 {
		margin-top: 20px;
	}

	.serviceWrap4 .right {
		width: 100%;
	}

	.service-img4 {
		width: 100%;
		height: 200px;
	}

	.service-img4:first-of-type {
		margin-bottom: 20px;
		margin-left: 0;
	}

	.service-btn4 {
		width: 90%;
		margin: 50px auto 0;
	}

	/* /.service4 */


	/* /.service5 */

	.serviceWrap5 {
		flex-direction: column;
	}

	.service-img5 {
		width: 100%;
		height: 250px;
	}

	.serviceWrap5 .right {
		width: 100%;
		padding-top: 20px;
		height: 350px;
	}

	.contents .service-ttl5 {
		font-size: 20px;
		padding-left: 20px;
	}

	.contents .service-ttl5::first-letter {
		padding-left: 0px;
	}

	.service5-txt {
		font-size: 14px;
		padding: 0 20px 0 0 !important;
	}

	.service-btn5 {
		width: 90%;
		margin: 25px auto;
		display: block;
		padding: 0;
	}

	.service-btn5-2 {
		width: 90%;
		margin: 50px auto;
	}

	/* service5 */

	/* ----------------------- */
	/* 問い合わせページ_sp
/* ----------------------- */

	.contact-cont {
		margin: 50px 0 50px;
		flex-direction: column;
	}

	.contact-btn1,
	.contact-btn2 {
		width: 100%;
		box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
	}

	.contact-btn1 {
		margin-right: 0;
		margin-bottom: 40px;
	}

	.contents .contact-ttl {
		font-size: 18px;
		padding: 10px 2px;
	}

	.contents .contact-txt {
		font-size: 14px;
		padding: 10px 10px 15px;
	}



}




/*画面幅480px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px) {

	/*全体の設定
---------------------------------------------------------------------------*/
	body {
		font-size: 12px;
		/*文字サイズ*/
	}

	/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
	/*ロゴ画像*/
	header #logo img {
		width: 50%;
		/*画像幅*/
		min-width: 200px;
		top: 20%;
		/*ヘッダーに対して上から20%の場所に配置*/
	}

	/*電話番号の行への追加指定*/
	#tel span {
		font-size: 16px;
	}

	/*コンテンツ
---------------------------------------------------------------------------*/
	.contents h2,
	.contents h3,
	.contents h4 {
		padding: 5px 0px 5px 10px;
		margin-bottom: 20px;
		font-size: 150%;
	}

	/*h2,h3タグの左側のアクセント*/
	.contents h2::first-letter,
	.contents h3::first-letter {
		padding-left: 10px;
		/*線とテキストとの距離*/
	}

	/*段落タグ設定*/
	.contents p {
		padding: 0px 10px 15px;
		/*上、左右、下への余白*/
	}

	/*subコンテンツ
---------------------------------------------------------------------------*/
	/*subコンテンツ内のh2タグ設定*/
	.sub h2 {
		margin-bottom: 10px;
	}

	/*サブコンテンツ内のbox1
---------------------------------------------------------------------------*/
	.sub .box1 {
		padding: 10px;
		/*ボックス内の余白*/
	}

	/*フッターメニュー
---------------------------------------------------------------------------*/
	/*ボックス全体*/
	#footermenu {
		display: none;
	}

	/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
	/*ブロック全体の設定*/
	#new dl {
		padding-left: 10px;
	}

	/*テーブル（ta1）
---------------------------------------------------------------------------*/
	/*ta1設定*/
	.ta1,
	.ta1 td,
	.ta1 th {
		padding: 5px;
		/*ボックス内の余白*/
	}

	/*テーブル１行目に入った見出し部分*/
	.ta1 th.tamidashi {
		font-size: 14px;
		/*文字サイズ*/
	}

	/*ta1の左側ボックス*/
	.ta1 th {
		width: 100px;
	}

	/*その他
---------------------------------------------------------------------------*/
	.ws,
	.wl {
		width: 94%;
	}

	img.fr,
	img.fl {
		float: none;
		margin: 0;
		width: 100%;
	}

	.sh {
		display: block;
	}

	.pc {
		display: none;
	}

}



/* 追加CSS 2021.03.07
---------------------------------------------------------------------------*/
.glass-contents {
	padding: 0 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.grass-imgFlex {
	display: flex;
}

.glass-contents h3 {
	text-align: left;
}

.glass-contents h3::first-letter {
	padding-left: 0;
}

#new dd a:hover {
	text-decoration: underline;
}

/* ------  news ------*/

.news {
	min-height: 600px;
	padding: 0 20px;
}

p.news__date {
	font-size: 16px;
	padding: 10px 0 5px 3px;
}


h3.news__ttl {
	color: #000;
	font-weight: 500;
	font-size: 28px;
	line-height: 1.5;
	background-color: transparent;
	border: none;
	text-align: left;
	margin: 0;
	padding: 0 0 10px;
	border-bottom: 1px solid #0066CB;
}

.contents h3.news__ttl::first-letter {
	border-left: none;
	padding-left: 0;
}

.news__contents {
	margin-top: 20px;
	max-width: 1200px;
	padding: 0 30px;
	box-sizing: border-box;
}

.news__contents p {
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 0.1em;
	margin: 0;
	padding: 0 0 40px;
}

header #logo img {
	width: 290px;
}


@media screen and (max-width:800px) {

	header #logo img {
		width: 215px;
		top: 63px;
		left: 1.5%;
	}

}

@media screen and (max-width:480px) {

	.glass-column {
		flex-direction: column;
		justify-content: center;
	}

	.glass-column .column-img {
		order: -1;
		width: 100%;
	}

	.glass-column .glass-contents {
		width: 100%;
		padding: 10px;
	}


	.grass-imgFlex {
		display: block;
	}

	header #logo img {
		top: 61%;
	}


	.news {
		padding: 0 10px;
	}

	p.news__date {
		font-size: 14px;
	}


	h2.news__ttl {
		font-size: 20px;
	}

	.news__contents {
		padding: 0 10px;
	}


	.news__contents p {
		font-size: 14px;
		padding: 0 0 30px;
	}
}

/* 修正追加分 */
header {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 999;
	box-shadow: 0px 10px 10px 0px rgb(0 0 0 / 8%);
}

#menubar {
	position: fixed;
	top: 144px;
	left: 0;
	z-index: 999;
	width: 100%;
	background-color: #fff;
	overflow: unset;
}

#menubar-s {
	position: fixed;
	top: 124px;
	left: 0;
	z-index: 999;
	width: 100%;
	background-color: #fff;
	overflow-y: scroll;
}

#menubar-s .ddmenu {
	visibility: visible !important;
	display: none;
}

#menubar-s .ddmenu li a {
	padding-left: 30px;
}

#menubar-s li a {
	padding: 4px 15px;
	line-height: 1.5;
}

#menubar_hdr {
	position: fixed;
	z-index: 9999;
}

.contents {
	padding-top: 225px;
}

@media screen and (max-width:800px) {

	.contents {
		padding-top: 165px;
	}

	header #logo img {
		top: 80px;
	}



}

@media screen and (max-width:480px) {

	.contents {
		padding-top: 120px;
	}

	header #logo img {
		width: 140px;
		min-width: 120px;
		top: unset;
		bottom: 2px;
	}

	#tel {
		text-align: left;
	}

	#headermenu li a {
		padding: 0px 5px;
	}

	#pagetop {
		bottom: 30px;
		right: 15px;
	}
}



/* 追加CSS 2021.03.25以降
---------------------------------------------------------------------------*/
.justify-content-center {
	justify-content: center;
}

.glass-column .column-img.after {
	margin-right: 0;
}


.glass-column .column-img-wrap {
	width: 55%;
}

.column-texts.glass-contents2 {
	width: 45%;
}

.contents .column-texts-subtTitle {
	color: #0066CB;
	font-size: 14px;
	padding: 0 20px;
	margin: 0;
}

/* .contact-cont-child {
	display: block;
} */

.contact-btn2 {
	border: none;
	display: block;
}

.contact-btn2:first-child {
	margin-bottom: 40px;
}

.contact-btn2 .contact-ttl {
	border-radius: 10px;
}



@media screen and (max-width:800px) {

	.glass-column .column-img-wrap,
	.column-texts.glass-contents {
		width: 100%;
	}

	.glass-column .column-img.after {
		margin-right: 50px;
	}

	#menubar-s {
		top: 144px;
	}

}


#tel span {
	font-size: 16px;
}

#tel {
	font-size: 11px;
}

#headermenu {
	font-size: 15px;
	bottom: 25px;
}

#menubar {
	top: 124px;
	font-size: 16px;
}

#menubar li a {
	padding: 6px 0;
	font-size: 14px;
}

@media screen and (max-width: 800px) {
	#menubar-s li a {
		font-size: 13px;
	}

}


@media screen and (max-width:480px) {

	header .inner {
		height: 100px;
	}

	#tel span {
		font-size: 12px;
	}

	#tel {
		padding: 5px 10px;
	}

	#headermenu {
		font-size: 12px;
		bottom: 6px;
	}

	#menubar_hdr {
		top: 10px;
	}

	#menubar-s {
		top: 104px;
	}

}

/* 追加CSS 2023.01.18 */
#tel{
	float: none;
	width: 240px;
	padding-top: 10px;
	padding-right: 20px;
}

#co2{
	padding-top: 3px;
}

#co2 img{
	width: 82px;
}

header .inner{
	display: flex;
	justify-content: space-between;
}

.header_info{
	display: flex;
}

@media screen and (max-width: 800px){
	header .inner{
		justify-content: center;
	}
	#co2 img{
		width: 72px;
	}
}

@media screen and (max-width: 480px){
	#co2 img{
		width: 60px;
	}
	#tel{
		font-size: 10px;
	}
}