/*
Theme Name:     wordpress-child
Description:    
Author:         wordpress
Template:       wordpress

(optional values you can add: Theme URI, Author URI, Version, License, License URI, Tags, Text Domain)
*/


/* ------------------------- 
*	全体
---------------------------- */

html {
	overflow:auto;
	overflow-x: hidden;
}


/* ------------------------- 
*	メイン
---------------------------- */

body {
	margin:0;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 1.2em;
	background: #fff;
	line-height: 190%;
	word-wrap:break-word;
	overflow-wrap:break-word;
	overflow-x: hidden;
}

body:not(.home) .wrapper {
	margin: auto; 
	max-width: 1000px;
	padding: 0 5px 60px 5px;
}


/* Pタグ
---------------------------- */

p {
	margin:0;
	padding: 15px 0;
	font-size:1.18em;
	color: #111;
	line-height: 190%;
}

/* Pリンク
---------------------------- */

p a{
	color:#111 !important;
	text-decoration: underline;
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}

p a:visited {
	color:#111 !important;
	text-decoration: underline;
}

p a:hover{
	color:#111 !important;
	text-decoration: underline;
}

p a:active {
	color:#111 !important;
	text-decoration: underline;
} 

p a:active, a:focus {
	outline: 0;
	text-decoration: underline;
}


/* ------------------------- 
*	header
---------------------------- */

.header-inner {
  max-width: 960px;
  margin: -5px auto;
  padding: 5px 20px;       /* 上下の余白を減らす */
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.home .logo {
	display:none;
}

.logo {			
	float: left;
	margin: 0;
	padding: 0 0 20px;
}

.logo_info{
	font-size:80% !important;
}

.logo img {
	height: 55px;                /* ロゴの高さを統一 */
	width: auto;
	display: block;
}

@media only screen and (max-width: 768px) {
	.logo_subpage {			
		margin: 0 auto !important;
	}
}

.home .contact {
	display:none;
}

.contact {
	display:flex;
	margin: 40px -60px 40px 0;
	width:400px;
	flex-direction: column;   /* 縦に並べる */
	align-items: flex-start;  /* 左寄せに変更 */
}


.free-line {
	margin: 0;             /* 上下余白ゼロ */
	padding: 0;
}

.free-box {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}


.free-box img {
	height: 40px;  /* フリーダイヤルマークの高さ */
	width: auto;
}


.number {
	font-size: 2.3em;      /* 電話番号を大きく */
	font-weight: bold;
	color: #009900;

}



/* -------------------------
*	menu
---------------------------- */	

.home #nav, #nav {
	margin: 0 auto;
	padding: 5px;
	z-index: 9999;
	text-align: left;
	border-top: double 1px #fff;
	border-bottom: double 1px #fff;
	background: #0A4E27;
}

/*ボタン下*/
.home #nav {
	margin: 0 auto;
}

.nav-inner {
	width: 960px;
	margin: auto;
}

#nav ul {
	list-style: none;
	margin: auto;
}

.main-navigation {
	clear: both;
	margin: 0 auto;
	position: relative;
}


ul.nav-menu,
div.nav-menu > ul {
	margin: 0;
	padding: 0;
}

.nav-menu li {
	display: inline-block;
	position: relative;
	margin: 0;
}

.nav-menu li a {
	display: block;
	padding: 5px 10px;
	font-size: 14px;
	color: #fff;		/*マウスをのせていないボタンの色*/
	text-decoration: none;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
}

.nav-menu li:hover > a,
.nav-menu li a:hover {
	color: #111;
	background: #fff;	/*マウスをのせた時*/
	text-decoration: none;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
}

.nav-menu .sub-menu,
.nav-menu .children {
	background: #666;
	display: none;
	padding: 0;
	position: absolute;
	z-index: 99999;
}

.nav-menu .sub-menu ul,
.nav-menu .children ul {
	border-left: 0;
	left: 100%;
	top: 0;
}

ul.nav-menu ul a,
.nav-menu ul ul a {
	margin: 0;
	width: 200px;
}

ul.nav-menu ul a:hover,
.nav-menu ul ul a:hover {
	background: #facfcd;
}

ul.nav-menu li:hover > ul,
.nav-menu ul li:hover > ul {
	display: block;
	background: #777;
}

.nav-menu .current_page_item > a,
.nav-menu .current_page_ancestor > a,
.nav-menu .current-menu-item > a,
.nav-menu .current-menu-ancestor > a,
.nav-menu .current-post-ancestor > a {
	color: #111;
	background: #fff;	/*デフォルトボタン*/
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
}


/*グローバルメニュー固定*/
.fixed {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 1000;
}


/* -------------------------
*	sticky(HOMEのみ)
---------------------------- */

.sticky {
	width: 100%;
	margin:0;
	padding:0;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.sticky-title {
	margin:0;
	padding:10px 0 0;
	background: #0A4E27;
	outline : 1px solid #fff;
	outline-offset : -5px;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5);
	overflow: hidden;
}

.w_title{
	margin:0 auto;
	padding: 5px 10px 20px;
	max-width: 1180px;
	overflow: hidden;
}

.w_title_sp{
	margin:0 auto;
	padding: 0 10px;
	max-width: 1180px;
	overflow: hidden;
}

.sticky-one {
	background: #fff;
	margin-top:0;
}

.sticky-two {
	background: #ffeaca;
}

.sticky-three {
	background: #f9f7ee;
}

.sticky-four {
	background: #111;
}

.sticky-five {
	background: #fff;
}

.pc_w1600, .pc_w1180, .pc_w1000{
	margin:30px auto;
	padding: 10px 10px 10px;
	max-width: 1600px;
	overflow: hidden;
}

.pc_w1180{
	max-width: 1180px;
}

.pc_w1000{
	max-width: 1000px;
}


/* スライダー　slider
---------------------------- */

.content {
  width: 320px;
  height: 300px;
}
.content:nth-child(1) {
  background: #fff;
}
.content:nth-child(2) {
  background: #fff;
}
.content:nth-child(3) {
  background: #fff;
}
.content:nth-child(4) {
  background: #fff;
}
/* スライドレールの枠 */
.wrap {
  overflow: hidden;
  display: flex;
  align-items: center;
  height: 340px;
  margin-bottom: 10px;
}
/* content4つをまとめたスライドブロック */
.slideshow {
  display: flex;
  -webkit-animation: loop-slide 60s infinite linear 1s both;
  animation: loop-slide 60s infinite linear 1s both;
}
@-webkit-keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}


/* 画像横並び
---------------------------- */

[class^="img-flex-"] {
	margin-bottom: 20px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}


/* パンくず
---------------------------- */

.pankuzu_arrow{
    display:inline-block;
    width: 0;
    height: 0;
    color: #0073e6;
    border-style: solid;
    border-width: 6px 0 6px 10.4px;
    border-color: transparent transparent transparent #69A4DB;
}

.breadcrumbs > span{
    margin-right:12px;
}

.breadcrumbs-inner {
	width: 1000px; /* テキストの最大幅 1カラム940px 2カラム1040px */
	margin: auto;
	padding:5px;
}



/* パンくずリスト内のリンクのスタイル */
.breadcrumbs a {
    text-decoration: none;
    color: #0073e6;
}

.breadcrumbs a:hover {
    text-decoration: underline;
}

.breadcrumbs a {
    text-decoration: none;
    color: #0073e6;
}

.breadcrumbs a:hover {
    text-decoration: underline;
}


/* -------------------------
*	ページタイトル
---------------------------- */

.pagetitle {
	display:none;
}


/* -----------------------------
	h 見出し タイトル
----------------------------- */

h1.standard01{
	clear:both;
    position: relative;
    margin: 60px 0 20px;
    padding: 0.5em 0.5em 0.5em 2.0em;
	color:#111;
	font-size:1.25em;
    font-weight: bold;
    border-bottom: 2px solid #111;
}

h2 {
	clear:both;
    margin: 30px 0 0;
	padding: 0;
	color:#111;
	font-size:1.25em;
	font-weight:bold;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
}

h2.fade{
	font-size:120%;
    font-weight: normal !important;
	letter-spacing:.1em;
	line-height:1.5em;
}

h2.standard01{
	position: relative;
	margin:40px 0 30px;
	padding: 20px 20px 20px 38px;
	font-size:1.25em;
	border: 1px solid #0A4E27;
	border-top: 4px solid #0A4E27;
	background: linear-gradient(#ffffff 0%, #EFEFEF 100%);
	box-shadow: 0 -1px 0 rgba(255, 255, 255, 1) inset;
}

h2.standard01::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 10px;
	margin-top: -10px;
	width: 18px;
	height: 18px;
	border: 4px solid #0A4E27;
	border-radius: 100%;
	box-sizing:border-box;
}

h3 {
	clear:both;
 	margin: 30px 0;
	padding: 0;
	color:#111;
	font-size:1.25em;
	font-weight:bold;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
}

h3 a:link, a:visited, a:hover, a:active {
        text-decoration:none;
}

h3.standard01 {
	margin:40px 0 20px;
	padding: 0.25em 0.5em;
	background: transparent;
	border-left: double 20px #0A4E27;
}

h3.standard02 {
	margin:40px 0 20px;
	padding: 0.25em 0.5em;
	background: transparent;
}

h3.standard03 {
	margin:40px 0 20px;
	padding: 0.25em 0.5em;
	background: transparent;
	border-left: double 20px #fff;
}

h3.standard04 {
	margin:40px 0 20px;
	padding: 0.25em 0.5em;
	background: transparent;
	border-left: solid 7px #0A4E27;
}

h3.standard05{
	position: relative;
	margin:30px 0;
	padding: 0.5em 0.5em;
	background: #fff;
	border-left: solid 2em #3A7442;
}

h3.standard05:before {
	font-family: "Font Awesome 5 Free";
	content: "\f303";
	position: absolute;
	padding: 0 0 40px;
	color: white;
	font-weight: 900;
	font-size:1.25em;
	left: -1.35em;
	top: 50%;
	-webkit-transform: translateY(-30%);
	transform: translateY(-20%);
}



h4 {
 	margin: 30px 0 0;
	padding: 0;
	border: 0;
	outline: 0;
	color:#f36;
	font-size:1.4em;
	font-weight:bold;
	vertical-align: baseline;
	background: transparent;
}

h5 {
	margin: 30px 0 0;
	font-size:19px;
	line-height: 1.4em;
}


h6 {
	margin: 30px 0 0;
	font-size:18px;
	line-height: 1.4em;
}


/* -----------------------------
　　　table　テーブル
----------------------------- */

.content table, table {
	max-width: 100%;
	border:1px solid #ccc;
	margin: 5px 0 10px;
	text-align: left;
	width: 100%;
	border-collapse: collapse;
	border-spacing: 2px;
	font-size: 80%;
	line-height: 141.7%;
	table-layout:fixed;
	empty-cells: show;
}

.content table th, table th {
	width: 30%;
	border:1px solid #ccc;
	vertical-align: middle;
	text-align:center;
}

.content table td, table td {
	padding: 20px 0px;
	border:1px solid #ccc;
	vertical-align: middle;
}

@media only screen and (max-width: 767px) {
	.content table th, table th {
		width:38%;
	}
}


/* -----------------------------
　table　枠線あり
----------------------------- */

table.entry-content{
	margin:30px 0 20px 0;
}

table.entry-content th, table.entry-content td {
	padding:0 10px;
	line-height:300%;
	border: 1px solid #a7d05f;
	vertical-align: middle;
	background:#fff;
}

table.entry-content th {
	background:#eee;
}

table.table.entry-content td {
	text-align:left;
}


/* -----------------------------
　table　スマホスクロール
----------------------------- */

.tbl-r07, .tbl-r08 {
	width:100%;
	margin: 0 0 50px;
	padding:10px 20px;
	font-size:1.2em;
	border-bottom: solid 1px #ccc;
}

.tbl-r07 th, .tbl-r08 th {
	padding:10px 20px;
	text-align:center !important;
	font-size:1em;
	border-bottom: solid 1px #ccc;
	background-color:#e0e0e0;
}

.tbl-r07 td, .tbl-r08 td {
	padding:10px 20px;
	text-align:right !important;
	font-size:0.9em;
	border-bottom: solid 1px #ccc;
}

@media only screen and (max-width: 768px) {
	.scroll {
		overflow-x: auto;
	}

	.tbl-r07, .tbl-r08 {
		min-width: 640px;
		margin: 0 10px 50px;
		padding:10px 20px;
		font-size:90%;
		border-bottom: solid 1px #ccc;
	}

	.tbl-r07 th, .tbl-r08 th {
		padding:10px 20px;
		text-align:center !important;
		font-size:90%;
		border-bottom: solid 1px #ccc;
	}

	.tbl-r07 td, .tbl-r08 td {
		padding:10px 20px;
		text-align:right !important;
		font-size:90%;
		border-bottom: solid 1px #ccc;
	}
}

/* -----------------------------
	チェック幅
----------------------------- */

.wpcf7-list-item-label{
	margin:0 20px 0 0;
	line-height:2em;
}

span.wpcf7-list-item {
	display: block!important;
}


/* -----------------------------
　　　フォーム
----------------------------- */

input[type="text"], 
input[type="password"],
input[type="email"],
input[type="url"],
input[type="phone"],
input[type="tel"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="color"],
input[type="time"],
input[type="search"],
input[type="datetime-local"] {
	font-size: 0.95em;
    border:1px solid #ccc;
	box-shadow: none;
	padding: 0.3em 0.35em;
	line-height: 1.65em;
	border-radius: 0;
	outline: none;
	background: #ffc;
}

input[type="number"]{
	text-align:center;
	font-size: 0.95em;
    border:1px solid #ccc;
	box-shadow: none;
	padding: 0.3em 0.35em;
	width:50px;
	line-height: 1.65em;
	border-radius: 0;
	outline: none;
	background: #ffc;
}


.wpcf7-checkbox input[type=checkbox] {
	margin-right:10px;
	width:			18px;
	height:			18px;
	-moz-transform:		scale(1.4);
	-webkit-transform:	scale(1.4);
	transform:		scale(1.4);
}

.wpcf7-textarea{
    border:1px solid #ccc !important;
	width:100%;
	font-size: 0.95em;
	box-shadow: none;
	padding: 0.3em 0.35em;
	line-height: 1.65em;
	border-radius: 0;
	outline: none;
	background: #ffc;
}

.wpcf7-select{
	padding:3px;
	border: 1px solid #ddd;
	font-size:0.9em !important;
	background: #ffc;
}


/* -----------------------------
　　　ラジオボタン radio
----------------------------- */

input[type="radio"] {
  position: relative;
  width: 20px;
  height: 20px;
  border: 1px solid #000;
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #000;
  content: '';
}


/* -----------------------------
　　　textbox
----------------------------- */

/*送信ボタン*/
#main .wpcf7-form input[type=submit]{ 
   background-color: #0A4E27;   /* 背景色（オレンジ） */
    color: #fff;              /* 文字色（白） */
    border: none;             /* 枠線なし */
    border-radius: 5px;       /* 角を丸める */
    padding: 15px 30px;       /* 内側余白（上下15px・左右30px） */
    font-size: 1.1em;         /* 文字サイズを少し大きめに */
    cursor: pointer;          /* カーソルをポインタ（手の形）にする */
    transition: background-color 0.3s ease; /* ホバー時の色変化をなめらかに */
    margin-top: 1em;          /* 上に余白をとる */
}

.form-width{ 
    max-width: 90%;
}


/* -------------------------
*  複数フォーム対応・途中入力保存
---------------------------- */

/* 送信ボタン */
.wpcf7 input[type="submit"] {
    background-color: #f90;   /* 背景色（オレンジ） */
    color: #fff;              /* 文字色（白） */
    border: none;             /* 枠線なし */
    border-radius: 5px;       /* 角を丸める */
    padding: 15px 30px;       /* 内側余白（上下15px・左右30px） */
    font-size: 1.1em;         /* 文字サイズを少し大きめに */
    cursor: pointer;          /* カーソルをポインタ（手の形）にする */
    transition: background-color 0.3s ease; /* ホバー時の色変化をなめらかに */
    margin-top: 1em;          /* 上に余白をとる */
}
.wpcf7 input[type="submit"]:hover {
    background-color: #e07b00;  /* ホバー時に少し濃いオレンジに変化 */
}

/* スマホ対応（画面幅600px以下） */
@media screen and (max-width: 600px) {
    .wpcf7 input[type="submit"] {
		margin-right:-5px !important;
    }
    .wpcf7 input[type="submit"] {
        width: 100%;      /* 送信ボタンも幅100% */
    }
}



/* 一時保存ボタン */
.wpcf7 .cf7-save-draft-btn {
    background-color: #28a745;   /* 背景色（グリーン） */
    color: #fff;                 /* 文字色（白） */
    border: none;                /* 枠線なし */
    border-radius: 5px;          /* 角を丸める */
    padding: 15px 30px;          /* 内側余白（上下15px・左右30px） */
    font-size: 1.1em;            /* 文字サイズを送信ボタンと同じに */
    cursor: pointer;             /* カーソルをポインタにする */
    transition: background-color 0.3s ease; /* ホバー時の色変化をなめらかに */
    margin-top: 1em;             /* 上に余白をとる */
    margin-right: 10px;			 /* 送信ボタンとの間に横スペースを入れる */
    display: inline-block;       /* 横並びで配置できるようにする */
}
.wpcf7 .cf7-save-draft-btn:hover {
    background-color: #218838;   /* ホバー時に少し濃いグリーンに変化 */
}
    
/* スマホ対応（画面幅600px以下） */
@media screen and (max-width: 600px) {
    .cf7-save-draft-btn {
        display: block;   /* 横並び解除 */
        width: 100%;      /* 幅100% */
        margin-right: 0;  /* 右マージン解除 */
        margin-bottom: 10px; /* 下に余白 */
		margin-left:5px !important;
    }
    .wpcf7 input[type="submit"] {
        width: 100%;      /* 送信ボタンも幅100% */
    }
}
    


/* pagenavi
---------------------------- */

div.wp-pagenavi{
	margin:50px auto;
}


/* ブログタイトル
---------------------------- */

.blog-title {
	margin:30px 0 20px;
	padding: 0.5em;
	color: #fff;
	font-size:1.2em;
	text-align:left !important;
	background: #a7d05f;
}

.single-contents h2{
	position: relative;
	padding: 0.25em 0.5em;
	background: #f1f8ff;
	font-size:1.2em !important;
	font-weight: normal;
	border-left: solid 2em #a7d05f;
}
 
.single-contents h2:before{
	font-family: "Font Awesome 5 Free";
	content: "\f303";
	position: absolute;
	padding: 0;
	color: white;
	font-weight: 900;
	left: -1.6em;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.single-contents h3{
	margin:30px 0;
	padding: 0.25em 0.5em;
	font-size:1.2em;
	background: transparent;
	border-left: solid 5px #a7d05f;
}

.single-contents h4 {
	display: inline-block;
	margin:20px 0 50px !important;
	padding: 0.25em 0;
	font-size:1.15em !important;
	border-bottom: solid 2em #a7d05f;
}

.single-contents h5 {
	display: inline-block;
	margin:20px 0 50px !important;
	padding: 0.25em 0;
	font-size:1.10em !important;
}

.single-contents h6 {
	display: inline-block;
	margin:20px 0 50px !important;
	padding: 0.25em 0;
	font-size:1.05em !important;
}


/* HOME新着ブログ　h2
---------------------------- */

.pt-cv-title{
	font-size:18px;
}

.pt-cv-content{
	color:#111;
}


/* ブログ記事
---------------------------- */

.single-contents {
	margin: 0 0 70px;
}

.single-contents p {
	font-size: 1.2em; 
	color: #111;
	line-height: 190%;
	padding: 15px 0;
}

.single-contents p a {
	color:#111;
	text-decoration:none;
	transition: 0.5s;
	text-decoration: underline;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}

.single-contents img{
	padding:30px 0;
}

.single-contents .gazou_haichi{
	text-align:center;
	font-size:70%;
}


/* ブログ最新記事
---------------------------- */

h2.su-post-title a {
	color:#111 !important;
}

h2.su-post-title a:visited {
	color:#111 !important;
}

h2.su-post-title a:hover {
	color:#00f !important;
}

h2.su-post-title a:active {
	color:#111 !important;
}

.su-post-comments-link{		/*コメントなしの文字を削除*/
	display:none;
}


/* 続きを読むボタン
---------------------------- */

.more-link {
	border: 1px #028cd4 solid;
	padding: 12px 24px;
	line-height: 26px;
	box-sizing: border-box;
	clear: both;
	color: #444;
	font-size: 14px;
}

.more-link:hover {
	background: #028cd4;
	color: #fff !important;
	text-decoration: none;
}

@media screen and (max-width: 991px) {
	.more-link {
		display: block;
    	margin: 0 auto 24px;
    	width: 50%;
    	text-align: center;
  }
}

body.color01 .more-link {
	border: 1px #444 solid;
	color: #028cd4;
}

body.color01 .more-link:hover {
	background: #444;
	color: #fff;
}

body.color02 .more-link {
	border: 1px #444 solid;
	color: #028cd4;
}

body.color02 .more-link:hover {
	background: #444;
	color: #fff;
}

body.color03 .more-link {
	border: 1px #444 solid;
	color: #028cd4;
}

body.color03 .more-link:hover {
	background: #444;
	color: #fff;
}

body.color04 .more-link {
	border: 1px #444 solid;
	color: #028cd4;
}

body.color04 .more-link:hover {
	background: #444;
	color: #fff;
}



/* -----------------------------
　サイド side
----------------------------- */

.option{
	text-decoration: none;
}

.grid_second{
	margin:0 auto !important;
}


/* -----------------------------
　カテゴリー、アーカイブページ
----------------------------- */

h2.archive-title a{
	display:block;
	margin:30px 0 20px;
	padding: 0.5em;
	color: #fff;
	font-size:1.05em;
	text-align:left !important;
	background: #a7d05f;
	text-decoration: none;
}

.archive-date {
	margin:10px 0 0;;
	padding:0;
	font-size: 0.9em;
	color: #ccc;
}

.archive-cat {
	padding: 0;
	margin: 0 0 10px;
	max-height: 65px;
	font-size: 0.9em;
	line-height:1em;
	overflow:hidden;
}

.archive-text {
	margin:10px 0 5px;
	font-size: 0.95em;
	line-height: 170%;
	overflow:hidden;
}


/* -------------------------
*	ウィジット
---------------------------- */

/* ウィジェットメニュー全体の文字サイズ */
.widget_nav_menu {
    font-size: 1em !important;
}

/* タイトルのスタイル */
.widget-title,
.sidebox .widget-title {
    position: relative;
    margin: 20px 0 1.5em;
    padding: 0.5em 0.5em 0.5em 0;  /* 左パディングを0にしてアイコンと文字を左揃え */
    font-size: 1.25em !important;
    font-weight: bold;
    border-top: none;
    border-bottom: 1px solid #0A4E27;
}

/* タイトル前の四角アイコン */
.widget-title:before,
.sidebox .widget-title:before {
    content: "";
    display: inline-block;
    width: 20px;                     /* アイコンの幅 */
    height: 20px;                    /* アイコンの高さ */
    margin-right: 8px;               /* アイコンと文字の間隔 */
    background-color: #0A4E27;       /* アイコンの色 */
    border-radius: 0;                /* 四角 */
    position: relative;
    top: 2px;                        /* 文字との縦位置を微調整 */
    transform: none;                  /* 回転なし */
}


.post-date {
	font-size: 89%;
	padding: 0 0 0 10px;
}


.sidebox ul li a{
	margin:0;
	font-size: 1em !important;
}

.sidebox li{
	margin:0;
	padding: 7px 0;
	list-style: none;
	border-bottom:1px dotted #ddd;
}


/* ブログ数
---------------------------- */

.widget ul li, 
.sidebar ul li, 
.widget ul li, 
.wp_rp_content ul li{
	font-size: 90%;
}

.widget_archive{
	font-size: 1em !important;
}


/* -------------------------
*	フッター footer
---------------------------- */	

#footer {
	clear: both;
	margin: 0 auto;
	width: 100%;
	font-size: 95% !important;
	color: #111;
	background: #f9f7ee;
}

.foot-wrap {
	margin: 0 auto;
	max-width: 1000px; /* widthをmax-widthに変更 */
	background: #f9f7ee !important;
	overflow: hidden; /* クリアフィックスを追加 */
}

/*フッターメニューの左、中、右*/
.menu-left,
.menu-center,
.menu-right {
	float: left; /* display: inline-blockからfloatに変更 */
	box-sizing: border-box; /* ボーダーボックスモデルを使用 */
	padding-right: 30px;
	width: 33%;
}

.menu-left {
	padding-top: 30px !important; /* 正の値に変更 */
}

.menu-center,
.menu-right {
	padding-top: 30px !important;
}

/* モバイル用のスタイル */
@media (max-width: 768px) {
	.menu-left,
	.menu-center,
	.menu-right {
		width: 95%; 
    	float: none; 
    	padding: 0 10px;
    	box-sizing: border-box; 
	}
}


#copyright {
	position: relative;
	margin: 0;
	padding: 10px;
	font-size: 15px;
	line-height: 110%;
	color: #fff;
	text-align: center;
	background: #0A4E27 !important;
}

#footer #copyright a {
	color:#fff;
}

#footer #copyright a:visited {
	color:#fff;
}

.footer-blog {
	clear:both;
	font-size:75%;
	text-align: left;
	margin: 0 0 50px;
	font-weight:normal;
	border-bottom:0px dotted #ccc;
}


/* フッターcall to action
---------------------------- */

.footer_fixed{
	position:fixed;
	display:flex;
	width:100%;
	bottom:0;
	left:0;
	z-index:999;
}

.footer_fixed a{
	color: #fff;
	text-decoration: none;
}

.footer_tel{
	width:50%;
	background:#0A4E27;
	text-align:center;
	padding:10px 0;
}

.footer_contact{
	width:50%;
	background:#002f15;
	text-align:center;
	padding:10px 0;
}

@media(min-width:700px){
	.footer_fixed{
		display: none;
	}

	.menu-footer-container.ul li{
		list-style:square;
	}
}


/* フッターメニュー footer menu
---------------------------- */

#footer ul li.menu-item{
	margin-left:20px !important;
	list-style:square !important;
	font-size:99% !important;
}


/* -------------------------
*	box横並び
---------------------------- */

.gazo_item {
	padding: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	background: #fff;
}

figure.gazo-box2, figure.gazo-box3, figure.gazo-box4, figure.gazo-box5, figure.gazo-box6 {
	margin:0;
	float: left;
}

figure.gazo-box2 {
	width: 49.5%;
}

figure.gazo-box3 {
	width: 32.8%;
}
	
figure.gazo-box4 {
	width: 24.0%;
}
	
figure.gazo-box5 {
	width: 18.0%;
}
	
figure.gazo-box6 {
	width: 15.0%;
}

@media only screen and (min-width: 769px) and (max-width: 959px) {

	figure.gazo-box2, figure.gazo-box3, figure.gazo-box4, figure.gazo-box5, figure.gazo-box6 {
		margin:0;
		float: left;
	}

	figure.gazo-box2 {
		width: 49.5%;
	}

	figure.gazo-box3 {
	width: 32.8%;
	}

	figure.gazo-box4 {
		width: 48.8%;
	}

	figure.gazo-box5 {
		width: 18.0%;
	}

	figure.gazo-box6 {
		width: 24.0%;
	}
}

@media only screen and (min-width: 600px) and (max-width: 768px) {

	figure.gazo-box2, figure.gazo-box3, figure.gazo-box4, figure.gazo-box5, figure.gazo-box6 {
		margin:0;
		float: left;
	}

	figure.gazo-box2 {
		width: 100%;
	}

	figure.gazo-box3 {
		width: 100%;
	}

	figure.gazo-box4 {
		width: 48.8%;
	}

	figure.gazo-box5 {
		width: 18.0%;
	}

	figure.gazo-box6 {
		width: 24.0%;
	}
}

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

	figure.gazo-box2, figure.gazo-box3, figure.gazo-box4, figure.gazo-box5, figure.gazo-box6 {
		margin:0;
		float: left;
	}

	figure.gazo-box2 {
		width: 100%;
	}

	figure.gazo-box3 {
		width: 100%;
	}

	figure.gazo-box4 {
		width: 48.8%;
	}

	figure.gazo-box5 {
		width: 18.0%;
	}

	figure.gazo-box6 {
		width: 24.0%;
	}
}

@media only screen and (min-width: 375px) and (max-width: 479px) {

	figure.gazo-box2, figure.gazo-box3, figure.gazo-box4, figure.gazo-box5, figure.gazo-box6 {
		margin:0;
		float: left;
	}

	figure.gazo-box2 {
		width: 100%;
	}

	figure.gazo-box3 {
		width: 100%;
	}

	figure.gazo-box4 {
		width: 48.8%;
	}

	figure.gazo-box5 {
		width: 18.0%;
	}

	figure.gazo-box6 {
		width: 24.0%;
	}
}

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

	figure.gazo-box2, figure.gazo-box3, figure.gazo-box4, figure.gazo-box5, figure.gazo-box6 {
		margin:0;
		float: left;
	}

	figure.gazo-box2 {
		width: 100%;
	}

	figure.gazo-box3 {
		width: 100%;
	}

	figure.gazo-box4 {
		width: 100%;
	}

	figure.gazo-box5 {
		width: 100%;
	}

	figure.gazo-box6 {
		width: 100%;
	}
}


/* -----------------------------
	main ul li
----------------------------- */

div#main ul.check {
	margin: 30px 0 20px;
	list-style: none;
	padding: 0;
}

div#main ul.check li {
	display: flex;
	align-items: center; /* ← アイコンと文字を縦中央揃え */
	padding-left: 40px; /* ← アイコン分の余白 */
	line-height: 2.4em;
	font-size: 1.2em;
	background: url(../../../images/check01.png) no-repeat left center; /* ← 中央揃え */
	background-size: 28px auto;
}

@media only screen and (max-width: 768px) {
	div#main ul.check li {
		padding-bottom:20px;
		padding-left: 26px;
		line-height: 1.8em;
		font-size: 1em;
		background: url(../../../images/check01.png) left 0px top 9px no-repeat;
		background-size: 23px auto;
	}
}

div#main ol.check {
	margin: 60px 0 30px;
	list-style: none;
	padding: 0;
}

div#main ol.check1 li {
	padding-left: 56px;
	line-height: 1.4em;
	font-size: 1.4em;
	font-weight:bold;
	background: url(../../../images/1.png) left 0px top 9px no-repeat;
	background-size: 40px auto;
}

div#main ol.check2 li {
	margin-top:40px;
	padding-left: 56px;
	line-height: 1.4em;
	font-size: 1.4em;
	font-weight:bold;
	background: url(../../../images/2.png) left 0px top 9px no-repeat;
	background-size: 40px auto;
}

@media only screen and (max-width: 769px) {
	div#main ol.check1 li, div#main ol.check2 li {
		font-size: 1.1em;
	}
}


/* -----------------------------
	main dl dt dd
----------------------------- */

div #main dd {
	margin-left: 1em;
}





/* ------------------------- 
 * 会社概要スタイル
---------------------------- */

/* dl全体の余白とパディングをリセット */
div.company-profile dl {
    margin:0;    /* 上下左右の余白を0にする */
    padding:0;   /* 内側の余白を0にする */
}

/* 各行をflexで横並びにする */
div.company-profile dl div {
    display:flex;                 /* dtとddを横並びにする */
    border-bottom:1px solid #ccc; /* 行ごとに下線を引く */
    background:#fff;              /* 背景色を白に設定 */
}

/* dt（項目名）の設定 */
div.company-profile dl dt {
    flex: 0 0 13em; /* 横幅を13emに固定、縮めたり伸ばしたりしない */
    font-weight:normal; /* 太字にせず標準の文字ウェイト */
}

/* dd（内容）の設定 */
div.company-profile dl dd {
    flex:1; /* dt以外の残り幅を自動で使用 */
}

/* dtとdd共通の設定 */
div.company-profile dl dt,
div.company-profile dl dd {
    padding:12px 20px;   /* 上下12px、左右20pxの内側余白 */
    line-height:1.5;     /* 行間を設定して上下のバランスを均等に */
    margin:0;            /* 外側余白をリセット */
    color:#111;          /* 文字色を濃いグレーに設定 */
}

/* -------------------------
 * スマホ・タブレット用（幅767px以下）
---------------------------- */

@media only screen and (max-width: 767px) { /** 画面幅が767px以下（スマホ・タブレット）でのみ適用 **/

    /* 各行はflexのまま、折り返しで縦並びになる */
    div.company-profile dl div {
        flex-wrap: wrap; /* 1行に収まらないとき、dtとddを次の行に折り返す */
    }

    /* dtとdd共通の調整 */
    div.company-profile dl dt,
    div.company-profile dl dd {
        flex: 1 1 100%;   /* 幅を100%にし、縦に並ぶようにする（スマホで見やすく） */
        box-sizing: border-box; /* paddingやborderを幅の中に含めることで、レイアウト崩れを防ぐ */
    }

    /* dtは少し目立たせる */
    div.company-profile dl dt {
        font-weight: bold; /* 項目名(dt)を太字にして強調 */
    }

    /* ddの余白調整 */
    div.company-profile dl dd {
        padding-top: 5px;   /* 項目名(dt)との間に小さな余白を入れる */
        padding-bottom: 12px; /* 各データの下に余白を入れて読みやすくする */
    }
}


/* -----------------------------
	google-maps
----------------------------- */

.google-maps {
	position: relative;
	margin:40px 0;
	padding-bottom: 75%; 
	height: 0;
	overflow: hidden;
}
.google-maps iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}


/* YouTube embed
---------------------------- */

.youtube {
	clear:both;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	margin-top: 60px;
	margin-bottom: 20px;
}
.youtube iframe,
.youtube object,
.youtube embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* -------------------------
*	wp-responsive-menu
---------------------------- */	

div.menu_title {
	color:#fff;
}

div.menu_title a{
	color:#fff;
	text-decoration: none ;
}


/* -----------------------------
	改行
----------------------------- */

.hidden {
	display: none;
}

.hidden.pcBlock {
	display: inline;
}

@media screen and (max-width: 640px) {
	.hidden.pcBlock {
		display: none;
	}

	.hidden.spBlock {
		display: inline;
	}
}


/* -------------------------
*   画像改行
---------------------------- */

@media screen and (max-width: 800px) {
	.spbr {
		float:none;
		margin:0 auto;
		max-width: 100%;
	}
}

@media screen and (max-width: 640px) {
	.spbr {
		float:none;
		text-align:center;
	}
}

/*スマホcenter⇒left*/
@media screen and (max-width: 800px) {
	.mobile-left {
		text-align:left;
	}
}


/* -------------------------
*	画像にマウスオーバーしたときに半透明にして暗くする
---------------------------- */

a:hover img{
    opacity:0.70; /* IE以外 */
}


/* -----------------------------
	質問と回答
----------------------------- */

.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	font-family: sans-serif;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.cp_qa {
	margin: 40px 0 2em 10px;
	padding: 1em 1em 0.5em 1em;
	background: #009C5C;
	border-radius:  10px;
}

.cp_qa h4 {
	font-size: 1.25em;
	position: relative;
	margin-right: 1em;
	margin-left: -26px;
	padding: 0.3em;
	color: #fff;
	background-color: #0A4E27;
	box-shadow: 0 1px 1px rgba(0,0,0,0.2);
}

.cp_qa h4::before {
	margin: 0.3em 0.3em 0 1.5em;
	content: '■';
}

.cp_qa h4::after {
	position: absolute;
	bottom: -10px;
	left: 0;
	display: inline-block;
	width: 0;
	height: 0;
	content: '';
	border-width: 0 10px 10px 0;
	border-style: solid;
	border-color: transparent #666 transparent transparent;
}

.cp_qa dl {
	margin: 0;
}

.cp_qa dt {
	margin: 30px 0 20px;
	padding: 0.5em 0.5em 0.5em 2em;
	font-size: 1.1em;
	border-radius: 0.2em;
	background: #fff;
}

.cp_qa dd {
	margin-bottom: 1em;
	margin-left: 0;
	padding: 0.5em 0 1.5em 0;
	font-size:1.1em;
	color:#fff;
}

/* QAアイコン */
.cp_qa dt::before,.cp_qa dd::before{
	font-size: 1.5em;
	color: #f00;
}

.cp_qa dt::before {
	margin: 0.3em 0.3em 0 -1em;
	content: 'A';
}

.cp_qa dd::before {
	margin: 0 0 0 -5em;
	padding: 0.2em 0;
}


@media only screen and (max-width: 374px) {
	.cp_qa dt, cp_qa dd {
		font-size: 0.9em;
	}
}



.faq-container {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.faq-card {
  border: 1px solid #ddd;
  border-radius: 12px;
  padding: 20px;
  background: #f9f9f9;
  transition: transform 0.2s, box-shadow 0.2s;
}

.faq-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.faq-icon {
  font-size: 32px;
  margin-bottom: 10px;
}

.faq-question {
  font-weight: bold;
  margin-bottom: 8px;
}

.faq-answer {
  color: #555;
  line-height: 1.5;
}


/* -----------------------------
	office
----------------------------- */

.office-section {
	margin:50px 0 30px;
	background: #f9f7ee;
	padding: 30px 20px;
	color: #222;
	font-family: "Noto Serif JP", "游明朝", serif;
	line-height: 2;
	letter-spacing: 0.03em;
	border-top: 4px solid #bfa26b;
	border-bottom: 4px solid #bfa26b;
}

/* -----------------------------
	waku 枠　box ボックス
----------------------------- */

.waku1_ccc{
	margin: 20px 0 30px;
	padding: 15px 15px 20px 25px;
	border: solid 1px #ccc;
	overflow: hidden;
}

.waku2{
	background: #f9f9f9;
	border: 2px solid #e0e0e0;
	border-radius: 12px;
	padding: 40px 20px 0;
	margin: 20px 0;
	font-family: "Noto Sans JP", sans-serif;
	color: #333;
}

.waku8{
	margin: 50px 0 30px;
	padding: 20px 0 0 20px;
	border: solid 1px #ccc;
	overflow: hidden;
}






.waku10{						/*otoiawase*/
	margin:0 10px;
	padding:0 5px;
	background-color:#f00;
	font-size:80%;
	color:#fff;
}


/* -------------------------
*   汎用
---------------------------- */

img {
	margin:0;
	padding:0;
	border-style:none;
	-webkit-backface-visibility: hidden;
}

@media only screen and (max-width: 768px) {
	img.size {
		margin:0 auto;
		padding:0;
		border-style:none;
		-webkit-backface-visibility: hidden;
		width:90%;

		
	}
}

.img-rounded {
    border-radius: 10px; /* 角の丸みの大きさ */
}


.clear {
    clear:both;
}

.floatL{
	float:left;
	margin-right: 15px;
}

.floatL img {
	margin:0;
	padding:0;
}

.floatR{
	float:right;
	margin-left: 15px
}

.floatR img {
	margin:0;
	padding:0;
}

.center{
	text-align:center;
}

.right{
	text-align:right;
}

.left{
	text-align:left;
}

.underline {
    text-decoration:underline;
}

strong {
	font-weight:bold;
}

em {
	font-weight:bold;
}

.font-bold {
	font-weight:bold;
}

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

.double_line {
	display: inline-block;
	padding-bottom:1px;
	border-bottom: 5px double #f90;
}

.indent1{
	text-indent: 1em;
}

hr.fef {
	margin:0 auto 20px;
	border: 1px solid #0A4E27;
	width:96%;
}


/* -------------------------
*   mobile　スマホ モバイル
---------------------------- */


/*	スマホ横揺れ防止
---------------------------- */

*{box-sizing:border-box}


/* 電話番号クリック
---------------------------- */

@media(min-width: 768px){
	a[href^="tel:"]{
  	  pointer-events: none;
	}
}

/* headに記述も忘れずに
<!--電話リンクsafariやEdgg無効-->
<meta name="format-detection" content="telephone=no">
*/


/* 1281px～
---------------------------- */

@media only screen and (min-width: 1281px) {

	.m_off2 {
		display: none;
	}

	.sidebar {
		width: 300px;
	}

	.head_mobile {
		display: none;
	}
}

/* 960px～1280px
---------------------------- */

@media only screen and (min-width: 960px) and (max-width: 1280px) {

	.pc_w1600, .pc_w1180, .pc_w1000{
		max-width: 95%;
	}

	.m_off2 {
		display: none;
	}

	.sidebar {
		width: 300px;
	}

	.head_mobile {
		display: none;
	}
}

/* 769px～959px
---------------------------- */

@media only screen and (min-width: 769px) and (max-width: 959px) {

	.pc_w1600, .pc_w1180, .pc_w1000{
		margin:0 auto;
		max-width: 95%;
	}

	.m_off2 {
		display: none;
	}

	.head_mobile {
		display: none;
	}

	.logo{
		width: 300px;
	}
}


/* 600px～768px
---------------------------- */

@media only screen and (min-width: 600px) and (max-width: 768px) {

	.pc_w1600, .pc_w1180, .pc_w1000{
		margin:0 auto;
		max-width: 95%;
		overflow-x: hidden;
	}

	.m_off {
		display: none;
	}


	.home .logo { 
		display:none;
	}

	.logo {
		float: none;
		margin:0 auto;
		width: 300px;
		text-align:center;
	}

	.contact {
		display: none;
	}

	.head_pc {
		display: none;
	}

	#nav {
		display: none;
	}

	.head_mobile {
		max-width: 100%;
	}

	p{
		font-size:99%;
	}

	.column {
		flex: 100%;
	}

	dl.standard01 dd {
		font-size:95%;
	}

	#main ul li, #main ol li{
		font-size:98%;
	}


	h2, h2.standard01, h2.standard02, h2.standard03, h2.standard04, h2.standard05, h2.standard06, h2.standard07, h2.standard08, h2.standard09, h2.standard10, h2.standard11, h2.standard12, h2.standard13, h2.standard14, h2.standard15, h2.standard16, h2.standard17, h2.standard18, h2.standard19, h2.standard20,
    h3, h3.standard01, h3.standard02, h3.standard03, h3.standard04, h3.standard04_green, h3.standard05, h3.standard06, h3.standard07, h3.standard08, h3.standard09, h3.standard10, h3.standard10_1, h3.standard10_2, h3.standard10_3, h3.standard10_4, h3.standard10_5, h3.standard10_6, h3.standard11, h3.standard12, h3.standard12_bluesky, h3.standard13, h3.standard14, h3.standard15 ,h3.yubi, .cp_qa h4,
	h4, h4.standard01, h4.standard02, h4.standard03, h4.standard04, h4.standard05, h4.standard06, h4.standard07, h4.standard08, h4.standard09, h4.standard10, h4.yubi, 
	h5, 
	h6,
	div.standard01, 
	div.standard02, div.standard02_1, div.standard02_2, div.standard02_3, div.standard02_4, div.standard02_5, div.standard02_6, div.standard02_7, div.standard02_8, div.standard02_9, div.standard02_10, 
	div.standard03_1, div.standard03_2, div.standard03_3, div.standard03_4, 
	p.yubi, 
	dl.standard01 dt {
		font-size:99%;
	}

	h3, h3.standard01, h3.standard03, h3.standard07, h4.standard01 {
		font-size:1.2em;
	}

	.waku3 .box-title, .waku4 .box-title, .waku4-2 .box-title, .waku5 .box-title, .waku9 .box-title, .box-title11 {
		font-size:90%;
	}

}


/* 480px～599px
---------------------------- */

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

	.pc_w1600, .pc_w1180, .pc_w1000{
		margin:0 auto;
		max-width: 95%;
		overflow-x: hidden;
	}

	.m_off {
		display: none;
	}

	.home .logo { 
		display:none;
	}

	.logo {
		float: none;
		margin:0 auto;
		width: 300px;
		text-align:center;
	}

	.contact {
		display: none;
	}
	
	.head_pc {
		display: none;
	}

	#nav {
		display: none;
	}

	.head_mobile {
		max-width: 100%;
	}

	h2.top01 {
		margin:-40px 0 0;
	}

	p{
		font-size:99%;
	}

	.column {
		flex: 100%;
	}

	dl.standard01 dd {
		font-size:95%;
	}

	#main ul li, #main ol li{
		font-size:98%;
	}

	h2, h2.standard01, h2.standard02, h2.standard03, h2.standard04, h2.standard05, h2.standard06, h2.standard07, h2.standard08, h2.standard09, h2.standard10, h2.standard11, h2.standard12, h2.standard13, h2.standard14, h2.standard15, h2.standard16, h2.standard17, h2.standard18, h2.standard19, h2.standard20,
    h3, h3.standard01, h3.standard02, h3.standard03, h3.standard04, h3.standard04_green, h3.standard05, h3.standard06, h3.standard07, h3.standard08, h3.standard09, h3.standard10, h3.standard10_1, h3.standard10_2, h3.standard10_3, h3.standard10_4, h3.standard10_5, h3.standard10_6, h3.standard11, h3.standard12, h3.standard12_bluesky, h3.standard13, h3.standard14, h3.standard15 ,h3.yubi, .cp_qa h4,
	h4, h4.standard01, h4.standard02, h4.standard03, h4.standard04, h4.standard05, h4.standard06, h4.standard07, h4.standard08, h4.standard09, h4.standard10, h4.yubi, 
	h5, 
	h6,
	div.standard01, 
	div.standard02, div.standard02_1, div.standard02_2, div.standard02_3, div.standard02_4, div.standard02_5, div.standard02_6, div.standard02_7, div.standard02_8, div.standard02_9, div.standard02_10, 
	div.standard03_1, div.standard03_2, div.standard03_3, div.standard03_4, 
	p.yubi, 
	dl.standard01 dt {
		font-size:99%;
	}

	h3,standard01, h3.standard03, h3.standard07, h4.standard01 {
		font-size:1.2em;
	}

	.waku3 .box-title, .waku4 .box-title, .waku4-2 .box-title, .waku5 .box-title, .waku9 .box-title, .box-title11 {
		font-size:90%;
	}
}


/* 375px～479px
---------------------------- */

@media only screen and (min-width: 375px) and (max-width: 479px) {

	.pc_w1600, .pc_w1180, .pc_w1000{
		margin:0 auto;
		max-width: 95%;
		overflow-x: hidden;
	}

	.m_off {
		display: none;
	}

	.home .logo { 
		display:none;
	}

	.logo {
		float: none;
		margin:0 auto;
		width: 300px;
		text-align:center;
	}

	.contact {
		display: none;
	}
	
	.head_pc {
		display: none;
	}

	#nav {
		display: none;
	}

	.head_mobile {
		max-width: 100%;
	}

	h2.top01 {
		margin-right:40px;
		margin:-40px 0 0;
	}

	p{
		font-size:98%;
	}

	.column {
		flex: 100%;
	}

	dl.standard01 dd {
		font-size:95%;
	}

	#main ul li, #main ol li{
		font-size:98%;
	}

	h2, h2.standard01, h2.standard02, h2.standard03, h2.standard04, h2.standard05, h2.standard06, h2.standard07, h2.standard08, h2.standard09, h2.standard10, h2.standard11, h2.standard12, h2.standard13, h2.standard14, h2.standard15, h2.standard16, h2.standard17, h2.standard18, h2.standard19, h2.standard20,
    h3, h3.standard01, h3.standard02, h3.standard03, h3.standard04, h3.standard04_green, h3.standard05, h3.standard06, h3.standard07, h3.standard08, h3.standard09, h3.standard10, h3.standard10_1, h3.standard10_2, h3.standard10_3, h3.standard10_4, h3.standard10_5, h3.standard10_6, h3.standard11, h3.standard12, h3.standard12_bluesky, h3.standard13, h3.standard14, h3.standard15 ,h3.yubi, .cp_qa h4,
	h4, h4.standard01, h4.standard02, h4.standard03, h4.standard04, h4.standard05, h4.standard06, h4.standard07, h4.standard08, h4.standard09, h4.standard10, h4.yubi, 
	h5, 
	h6,
	div.standard01, 
	div.standard02, div.standard02_1, div.standard02_2, div.standard02_3, div.standard02_4, div.standard02_5, div.standard02_6, div.standard02_7, div.standard02_8, div.standard02_9, div.standard02_10, 
	div.standard03_1, div.standard03_2, div.standard03_3, div.standard03_4, 
	p.yubi, 
	dl.standard01 dt {
		font-size:99%;
	}

	h3,standard01, h3.standard03, h3.standard07, h4.standard01 {
		font-size:1.15em;
	}

	.waku3 .box-title, .waku4 .box-title, .waku4-2 .box-title, .waku5 .box-title, .waku9 .box-title, .box-title11 {
		font-size:90%;
	}
}


/* ～374px
---------------------------- */

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

	.pc_w1600, .pc_w1180, .pc_w1000{
		margin:0 auto;
		max-width: 95%;
		overflow-x: hidden;
	}

	.m_off {
		display: none;
	}

	.home .logo { 
		display:none;
	}

	.logo {
		float: none;
		margin:0 auto;
		width:90% !important;
		text-align:center;
	}

	.contact {
		display: none;
	}
	
	.head_pc {
		display: none;
	}

	.head_mobile {
		max-width: 100%;
	}

	#nav {
		display: none;
	}

	#header h1, #header .logo {
		float: none;
		margin-bottom: 0px;
	}

	table.entry-content{
		font-size:60%;
	}

	table.similar-text img {
		width: 100px;
	}

	table.similar-text th {
		width: 100px;
	}

	.pagedate {
		margin: 40px 0 0;
	}

	.pager {
		margin: 80px 0;
	}

	.mobile-display-none {
		display: none;
	}

	.single-contents br {
		display: none;
	}

	.page-contents {
		margin: 0 0 50px;
	}

	p{
		font-size:98%;
	}

	.column {
		flex: 100%;
	}

	dl.standard01 dd {
		font-size:95%;
	}

	#main ul li, #main ol li{
		font-size:95%;
	}


	h2, h2.standard01, h2.standard02, h2.standard03, h2.standard04, h2.standard05, h2.standard06, h2.standard07, h2.standard08, h2.standard09, h2.standard10, h2.standard11, h2.standard12, h2.standard13, h2.standard14, h2.standard15, h2.standard16, h2.standard17, h2.standard18, h2.standard19, h2.standard20,
    h3, h3.standard01, h3.standard02, h3.standard03, h3.standard04, h3.standard04_green, h3.standard05, h3.standard06, h3.standard07, h3.standard08, h3.standard09, h3.standard10, h3.standard10_1, h3.standard10_2, h3.standard10_3, h3.standard10_4, h3.standard10_5, h3.standard10_6, h3.standard11, h3.standard12, h3.standard12_bluesky, h3.standard13, h3.standard14, h3.standard15 ,h3.yubi, .cp_qa h4,
	h4, h4.standard01, h4.standard02, h4.standard03, h4.standard04, h4.standard05, h4.standard06, h4.standard07, h4.standard08, h4.standard09, h4.standard10, h4.yubi, 
	h5, 
	h6,
	div.standard01, 
	div.standard02, div.standard02_1, div.standard02_2, div.standard02_3, div.standard02_4, div.standard02_5, div.standard02_6, div.standard02_7, div.standard02_8, div.standard02_9, div.standard02_10, 
	div.standard03_1, div.standard03_2, div.standard03_3, div.standard03_4, 
	p.yubi, 
	dl.standard01 dt {
		font-size:99%;
	}

	h3,standard01, h3.standard03, h3.standard07, h4.standard01 {
		font-size:1.1em;
	}

	.waku3 .box-title, .waku4 .box-title, .waku4-2 .box-title, .waku5 .box-title, .waku9 .box-title, .box-title11 {
		font-size:90%;
	}
}


/* -----------------------------
	文字装飾
----------------------------- */

.yellow_underline{
	background: linear-gradient(transparent 50%, yellow 50%);
}

.skyblue_underline{
	background: linear-gradient(transparent 50%, skyblue 50%);
}

.orange_underline{
	background: linear-gradient(transparent 50%, orange 50%);
}


/* -----------------------------
	文字サイズ
----------------------------- */

.font-130 {
	font-size:130%;
	letter-spacing:.1em;
	line-height:1.5em;
}

.font-120 {
	font-size:120%;
	letter-spacing:.1em;
	line-height:1.5em;
}

.font-110 {
	font-size:110%;
	line-height:2em;
}

.font-100 {
	font-size:100%;
	line-height:.1em;
}

.font-98 {
	font-size:98%;
}

.font-97 {
	font-size:97%;
}

.font-95 {
	font-size:95%;
}

.font-90 {
	font-size:90%;
}

.font-85 {
	font-size:85%;
}

.font-80 {
	font-size:80%;
	line-height:1.5em;
}

.font-75 {
	font-size:75%;
	line-height:1.5em;
}

.font-70 {
	font-size:70%;
	line-height:1.5em;
}

.font-60 {
	font-size:60%;
}


/* -----------------------------
	文字色
----------------------------- */

.color-000 {
	color:#000;
}

.color-333 {
	color:333;
}

.color-666 {
	color:#666;
}

.color-999 {
	color:#999;
}

.color-fff {
	color:#fff;
}

.color-f00 {
	color:#f00;
}

.color-00f {
	color:#00f;
}

.color-ff0 {
	color:#ff0;
}

.color-f5ab18 {
	color:#0A4E27;
}




/* ------------------------- 
*	フローティングバナー
---------------------------- */

@media only screen and (min-width: 1920px) {

	.fixed_btn1 { 
		position: fixed;
		bottom: 510px;
		right: 0;
		padding: 6px 0;
		z-index:99999;
	}

	.fixed_btn_tel { 
		position: fixed;
		bottom: 350px;
		right: 0;
		padding: 6px 0;
		z-index:99999;
	}
}

.page-id-4053 .fixed_btn1, .page-id-4055 .fixed_btn1
{
   display:none;
}


@media only screen and (max-width: 1919px) {
	.fixed_btn, .fixed_btn_tel { 
   		display:none;
	}
}





