@charset "utf-8";
.moushikomi_m{
	text-align:center;
	text-decoration:none;
	font-size:120%;
}
        /* カスタムスタイル */
        .flow-container {
            max-width: 900px;
            margin-top: 40px;
            margin-bottom: 60px;
        }

        /* --- 貸付フローチャート用スタイル --- */
        
        /* ステップ全体を囲む枠 */
        .step-box {
            border: 2px solid #8bc34a; /* テーマカラーの緑色 */
            border-radius: 8px; /* 角丸 */
            padding: 20px 10px; /* 内側の余白 */
            background-color: #fff;
            margin-left: 0;
            margin-right: 0;
            box-shadow: 0 2px 5px rgba(0,0,0,0.03); /* うっすら影 */
        }

        /* ステップのラベル（緑のボックス） */
        .step-label {
            background-color: #8bc34a; /* 画像に近い緑色 */
            color: white;
            font-weight: bold;
            font-size: 1.1rem;
            padding: 10px;
            text-align: center;
            border-radius: 4px;
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 50px;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1);
            width: 100%; /* 親カラム幅に合わせる */
            position: relative;
            z-index: 1; /* 線より上に表示 */
        }

        /* コンテンツ部分 */
        .step-content {
            padding: 10px 0 10px 20px;
            font-size: 0.95rem;
            line-height: 1.6;
        }

        /* 矢印エリア */
        .arrow-row {
            padding: 10px 0;
            color: #9e9e9e;
        }

        /* PC画面（768px以上）での調整：横並びレイアウト */
        @media (min-width: 768px) {
            .step-content {
                border-left: 3px solid #f0f0f0; /* 左に線を引いて流れを強調 */
            }
        }
        
        /* スマホ画面（767px以下）での調整：縦並びレイアウト */
        @media (max-width: 767px) {
            .flow-container {
                margin-top: 20px;
                margin-bottom: 20px;
            }
            
            /* タイトルとコンテンツの親カラムの左右余白を統一して幅を揃える */
            .row > .col-md-3, 
            .row > .col-md-9 {
                padding-left: 5px;
                padding-right: 5px;
            }
            
            /* 枠がついたのでコンテナ自体の余白調整 */
            .step-box {
                padding: 15px 5px;
            }

            .arrow-row {
                padding: 5px 0;
            }
            
            .step-label {
                margin-bottom: 10px; /* ラベルの下に余白 */
            }
            .step-content {
                padding-left: 5px; /* 左パディングを減らす */
                padding-right: 5px; /* 右パディングも合わせる */
                padding-bottom: 0; /* 下余白は枠のpaddingに任せる */
                border-bottom: none; /* 点線などを削除してスッキリさせる */
            }
            h2 {
                font-size: 1.4rem;
            }
        }

        /* 注釈のスタイル */
        .note {
            font-size: 0.85rem;
            color: #666;
            margin-top: 2px;
            display: block;
        }

        /* リスト装飾 */
        ul.custom-list {
            list-style: none;
            padding-left: 0;
            margin-top: 10px;
        }
        ul.custom-list li {
            margin-bottom: 6px;
            padding-left: 0.5rem; /* インデント調整 */
            position: relative;
        }
        
        /* 対象者ボックス */
        .target-box {
            background-color: #f8f9fa;
            border: 1px solid #e9ecef;
            border-radius: 5px;
            padding: 15px;
            margin: 10px 0;
            position: relative;
        }

        /* PCでの対象者ボックスの調整（Flexboxで横並び・幅調整） */
        @media (min-width: 768px) {
            .target-box {
                display: flex; /* 横並びにする */
                align-items: center; /* 垂直方向中央揃え */
                width: fit-content; /* 中身の幅に合わせる */
                padding-right: 20px; /* 右側に少し余白 */
            }
        }

        /* カッコ書きの「の方」 */
        .target-suffix {
            font-weight: bold;
        }
        
        /* PC画面用スタイル */
        @media (min-width: 768px) {
            .target-suffix {
                margin-left: 15px; /* 左側のリストとの間隔 */
                white-space: nowrap; /* 折り返し禁止 */
            }
        }

        /* 数字バッジ */
        .num-badge {
            display: inline-block;
            background-color: #009999; /* 薄い赤/ピンク */
            color: white;
            width: 22px;
            height: 22px;
            line-height: 22px;
            text-align: center;
            border-radius: 4px;
            font-size: 0.8rem;
            margin-right: 8px;
            font-weight: bold;
            flex-shrink: 0; /* スマホで潰れないように */
        }
        
        .list-item-row {
            display: flex;
            align-items: flex-start; /* 複数行になったときに上揃え */
            margin-bottom: 5px;
        }

        /* ボックス内の最後の行の下マージンを消す */
        .list-item-row:last-of-type {
            margin-bottom: 0;
        }

        /* 最後のステップの強調 */
        .step-final .step-label {
            background-color: #7cb342;
        }


        /* --- リンクボタンリスト用スタイル --- */
        .link-list-section {
            margin-top: 30px;
        }

        /* WordPress対策：自動挿入される空のpタグなどを無効化 */
        .link-list-section p:empty {
            display: none;
        }

        .custom-link-btn {
            display: flex; /* 横並び */
            flex-wrap: nowrap; /* ★重要：折り返しを禁止してレイアウト崩れを防ぐ */
            align-items: stretch; /* 高さを揃える（緑色部分を上下いっぱいに） */
            background-color: #fff;
            border: 1px solid #ccc;
            text-decoration: none !important; /* 強制的に下線を消す */
            color: #333;
            margin-bottom: 15px;
            transition: all 0.3s ease;
            position: relative;
            overflow: hidden;
            min-height: 70px; /* 最小の高さ */
            
            /* ★重要：HTML内の改行コードやスペースによる隙間（テキストノード）を無効化 */
            font-size: 0; 
        }
        
        /* WordPress等の自動整形(br/p)対策を強化 */
        .custom-link-btn br, 
        .custom-link-btn p {
            display: none !important;
        }

        /* ホバー時の全体スタイル */
        .custom-link-btn:hover {
            color: #333;
            border-color: #00897b;
            box-shadow: 0 4px 12px rgba(0,0,0,0.1);
        }

        /* 親要素でfont-size:0にしたため、子要素でサイズを再設定 */
        /* divからspanに変更したためセレクタも変更 */
        .custom-link-btn > span {
            font-size: 1rem;
            margin: 0; /* 余計なマージンを排除 */
            display: flex; /* spanでもflexアイテムとして正しく振る舞わせる */
        }

        /* 左側の番号エリア */
        .btn-num {
            background-color: #009999; /* 青緑色（Teal） */
            color: #fff;
            width: 60px; /* 幅固定 */
            
            align-items: center;
            justify-content: center;
            font-size: 1.6rem !important; /* 強制適用 */
            font-weight: bold;
            flex-shrink: 0; /* 縮小させない */
            height: auto; /* 親のstretchに従う */
        }
        .btn-num0 {
            background-color: #f8b500; /* 青緑色（Teal） */
            color: #fff;
            width: 60px; /* 幅固定 */
            
            align-items: center;
            justify-content: center;
            font-size: 1.6rem !important; /* 強制適用 */
            font-weight: bold;
            flex-shrink: 0; /* 縮小させない */
            height: auto; /* 親のstretchに従う */
        }
        /* 中央のテキストエリア */
        .btn-text {
            flex-grow: 1; /* 残りの幅を埋める */
            padding: 15px 20px;
            align-items: center; /* 垂直中央 */
            font-weight: bold;
            font-size: 1.05rem !important;
            line-height: 1.4;
            flex-wrap: wrap; /* テキストと注釈が折り返せるようにする */
        }

        /* 右側の矢印エリア */
        .btn-arrow {
            width: 50px;
            align-items: center;
            justify-content: center;
            color: #00897b;
            font-size: 1.5rem !important;
            flex-shrink: 0;
            transition: transform 0.3s cubic-bezier(0.215, 0.610, 0.355, 1.000);
        }

        /* ホバー時の矢印アニメーション：右へスライド */
        .custom-link-btn:hover .btn-arrow {
            transform: translateX(8px);
        }
    
        /* 注釈テキスト（様式等ボタン用） */
        .small-note {
            font-size: 0.8rem;
            font-weight: normal;
            margin-left: 15px;
            color: #666;
        }

        /* グレー背景のタイプ（様式等） */
        .custom-link-btn.type-gray {
            background-color: #f0f0f0;
            border-color: #ddd;
        }
        .custom-link-btn.type-gray:hover {
            border-color: #bbb;
        }
        .custom-link-btn.type-gray .btn-text {
            padding-left: 20px;
        }

        /* スマホ対応 */
        @media (max-width: 576px) {
            .btn-num {
                width: 50px;
                font-size: 1.3rem !important;
            }
            .btn-text {
                padding: 10px 10px 10px 15px;
                font-size: 0.95rem !important;
            }
            .btn-arrow {
                width: 30px;
                font-size: 1.2rem !important;
            }
            .small-note {
                margin-left: 0;
                margin-top: 5px;
                width: 100%; /* スマホでは改行させる */
                font-size: 0.8rem;
                line-height: 1.3;
            }
        }
/* お問合せ ◇ ------------------------------*/
.contact_r { width:100%; height:auto; background:#d9eeee; border-radius:20px;}
.con_need {color:red; font-size:80%; margin-left:5px;}
.form-width { width:100%!important; border:0px; padding:10px 10px 10px 15px; margin-bottom:10px; }
.form-width-s { width:90px!important; border:0px; padding:10px 10px 10px 15px; margin-bottom:10px; }

.contact_box {border:1px solid #0080e6; padding:15px; text-align:center; font-weight:600;}
.contact_th { width:28%; font-weight:normal; padding-bottom:20px; }
.contact_td { width:72%; padding-bottom:10px; }


@media screen and (min-width:768px) {
.contact_r{ padding:30px 30px 50px 30px;}
.ijyuapp_th { width:150px; font-weight:normal; padding-bottom:20px;}
.ijyuapp_td { width:; padding-bottom:10px; }}

@media screen and (max-width:767px) {
.contact_r {padding:30px 15px;}
.contact_th { width:100%; display:block; font-weight:normal; padding-bottom:7px;}
.contact_td { width:100%; display:block; padding-top:0px; padding-bottom:10px; }
.ijyuapp_th { width:100%; display:block; font-weight:normal; padding-bottom:7px;}
.ijyuapp_td { width:100%; display:block; padding-top:0px; padding-bottom:10px; }}

.privacy {
  border: 1px solid #B7B7B7;
  padding: 10px 10px 10px 10px;
  margin:20px 0 40px;
  width: 100%;
  height: 200px;
  background-color: #fff;
  font-size: 85%;
  text-align: justify;
  overflow-y: scroll;
  overflow-x: hidden;}

.privacy h3 {font-size:110%; margin:20px 0 30px;}
.privacy h4 {font-size:110%; margin:20px 0 15px;}
.privacy p {margin:10px 0;}

input#form-submit {
	background:#0080e6; padding:15px; color:#fff;
    border-style: none; border-radius:30px;
	width:200px; margin:20px 0; text-align:center;}

input#form-submit0 {
	background:#009ba6;	padding:15px; color:#fff;
    border-style: none;	border-radius:30px;
	width:200px; margin:20px 0; text-align:center;}
/* 修正CSS 2021*/
.link_kakomi{border:1px solid #000;text-align:center;padding:8px;}
.yt{position:relative;width:100%;padding-top:56.25%;}
.yt iframe{position:absolute;top:0;right:0;width:100%;height:100%;}
.text_top_m{font-weight:bold;margin-bottom:15px;}
.table4_top{width:100%;border:1px solid #000;background-color:#eee;}
.table4_top01{text-align:center;width:8%;padding:5px 8px;}
.table4_top02{width:38%;padding:5px 8px;border-left:1px solid #000;}
.table4_top03{width:38%;padding:5px 8px;border-left:1px solid #000;}
.table4_top04{text-align:center;width:16%;padding:5px 8px;border-left:1px solid #000;}

.table4_in{width:100%;border:1px solid #000;margin-top:-1px;}
.table4_in01{text-align:center;width:8%;padding:5px 8px;border-bottom:1px solid #000;}
.table4_in02{width:38%;padding:5px 8px;border-left:1px solid #000;border-bottom:1px solid #000;}
.table4_in03{width:38%;padding:5px 8px;border-left:1px solid #000;border-bottom:1px solid #000;}
.table4_in04{text-align:center;width:16%;padding:5px 8px;border-left:1px solid #000;border-bottom:1px solid #000;}
@media screen and (max-width: 767px) {
.sp-None{display:none;}
.table4_in{width:100%;border:0px solid #000;margin-top:0px;}
.table4_in01{background-color:#eee;display:block;text-align:center;width:100%;padding:5px 8px;border-bottom:1px solid #000;border-top:1px solid #000;border-left:1px solid #000;border-right:1px solid #000;}
.table4_in02{display:block;text-align:center;width:100%;padding:5px 8px;border-left:0px solid #000;border-bottom:1px solid #000;border-left:1px solid #000;border-right:1px solid #000;}
.table4_in03{display:block;text-align:center;width:100%;padding:5px 8px;border-left:0px solid #000;border-bottom:1px solid #000;border-left:1px solid #000;border-right:1px solid #000;}
.table4_in04{display:block;text-align:center;width:100%;padding:5px 8px;border-left:0px solid #000;border-bottom:1px solid #000;margin-bottom:20px;border-left:1px solid #000;border-right:1px solid #000;}
}
.yoyaku{
border: solid 1px #aaa;
width:100%;
padding:5px;
margin-bottom:30px;
}
.yoyaku01{
text-align:center;
font-size:140%;
font-weight:bold;
}
.yoyaku02{
text-align:center;
font-size:100%;
}
.jikan{
border: solid 1px #ccc;
width:100%;
padding:5px;
text-align:center;
font-size:100%;
margin-top:10px;
}
.jikan02{
text-align:center;
font-size:100%;
}
.yoyaku_bottan{
	margin-top:15px;
	background: #009999;
	width:100%;
	text-align:center;
	padding:10px 0;
	font-size:110%;
	font-weight:bold;
	color:#fff!important;
	text-decoration: none!important;
}
.yoyaku_bottan a{
	color:#fff!important;
	text-decoration: none!important;
}
.yoyaku_bottan a:visited{
	color:#fff;
	text-decoration: none;
}
.yoyaku_bottan_1{
	margin-top:15px;
	margin-bottom:15px;
	background: #009999;
	width:100%;
	text-align:center;
	padding:10px 0;
	font-size:110%;
	font-weight:bold;
	color:#fff!important;
	text-decoration: none!important;
}
.yoyaku_bottan_1 a{
	color:#fff!important;
	text-decoration: none!important;
}
.yoyaku_bottan_1 a:visited{
	color:#fff;
	text-decoration: none;
}
.yoyaku_bottan_2{
	margin-bottom:15px;
	background: #009999;
	width:100%;
	text-align:center;
	padding:10px 0;
	font-size:110%;
	font-weight:bold;
	color:#fff!important;
	text-decoration: none!important;
}
.yoyaku_bottan_2 a{
	color:#fff!important;
	text-decoration: none!important;
}
.yoyaku_bottan_2 a:visited{
	color:#fff;
	text-decoration: none;
}
.yoyaku_bottan01{
	margin-top:15px;
	background: #666;
	width:100%;
	text-align:center;
	padding:10px 0;
	font-size:110%;
	font-weight:bold;
	color:#fff!important;
	text-decoration: none!important;
}
.yoyaku_bottan01 a{
	color:#fff!important;
	text-decoration: none!important;
}
.yoyaku_bottan01 a:visited{
	color:#fff;
	text-decoration: none;
}
.link-color a:link {color:#292729; text-decoration: underline;} /*未訪問のリンクの色*/
.link-color a:visited {color:#292729; text-decoration: underline;} /*訪問済みのリンクの色*/
.link-color a:hover {color:#999999; text-decoration: none;} /*カーソルが乗っているリンクの色*/
.link-color a:active {color:#999999; text-decoration: none;} /*クリック中のリンクの色*/
.link-color a:focus, *:focus { outline-style:none; }


.row-main h3{
	color:#292729;
	margin-top:60px;
	margin-bottom: 50px;
	letter-spacing:0.05em;
	position: relative;}

.row-main h3:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #009999;
	bottom:-15px;
	width: 10%;}


@media screen and (min-width: 768px) {
/* 表示領域が768px以上の場合に適用するスタイル */	
.row-main h2{
	color:#009999;
	margin: 0 0 50px 0;
	letter-spacing:0.05em;
	position: relative;}

.row-main h2:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #009999;
	bottom:-15px;
	width: 10%;}
}

@media screen and (max-width: 767px) {
/* 表示領域が767px以下の場合に適用するスタイル */
.row-main h2{
	font-size:150%;
	color:#009999;
	margin: 0 0 50px 0;
	letter-spacing:0.05em;
	position: relative;}

.row-main h2:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #009999;
	bottom:-15px;
	width: 10%;}
}


/*---サイトご利用にあたって---*/

.termsofuse img{max-width:170px;}

.termsofuse {
	margin-top:50px;
	border-collapse: collapse;
	border-top: 1px solid #dbe1e8; 
	width: 100%;}
 
.termsofuse th,
.termsofuse td {
	border-right: 1px solid #dbe1e8;  
	border-bottom: 1px solid #dbe1e8; 
	text-align:center;
	padding: 10px 12px;}

.termsofuse th {
	width:70%;
	border-left:2px solid #009999;
	background: #eee;
	text-align: left;}
 
@media only screen and (max-width: 800px) {
	
.termsofuse tr,
.termsofuse th,
.termsofuse td {
	text-align:center;
    display: block;
    width: auto;}
  
.termsofuse tr:first-child {
    border-top: 1px solid #dbe1e8;}

table.termsofuse{
	border-top: 2px solid #009999;}
	
.termsofuse th,
.termsofuse td {
	border-left: 1px solid #dbe1e8;  
    border-top: none;}
}


table.termsofuse_b {
	margin-top:50px;
	border-collapse: collapse;
	border-top: 1px solid #dbe1e8; 
	width: 100%;
	table-layout: fixed;}
 
.termsofuse_b th,
.termsofuse_b td {
	border-right: 1px solid #dbe1e8;  
	border-bottom: 1px solid #dbe1e8; 
	text-align:center;
	padding: 10px 12px;}

.termsofuse_b th {
	border-left:2px solid #009999;
	background: #eee;
	text-align: left;}
 
@media only screen and (max-width: 800px) {
	
.termsofuse_b tr,
.termsofuse_b th,
.termsofuse_b td {
	text-align:center;
    display: block;
    width: auto;}
  
.termsofuse_b tr:first-child {
    border-top: 1px solid #dbe1e8;}

table.termsofuse_b{
	border-top: 2px solid #009999;}
	
.termsofuse_b th,
.termsofuse_b td {
	border-left: 1px solid #dbe1e8;  
    border-top: none;}
}




/*---リンク集---*/

h4.linklist{margin-top:50px;}
.linklist_box{margin-top:50px;}
.linklist img{max-width:170px;}

table.linklist {
	margin-top:50px;
	border-collapse: collapse;
	border-top: 1px solid #dbe1e8; 
	width: 100%;}
 
.linklist th,
.linklist td {
	border-right: 1px solid #dbe1e8;  
	border-bottom: 1px solid #dbe1e8; 
	text-align:center;
	padding: 10px 12px;}

.linklist th {
	border-left:2px solid #009999;
	background: #eee;
	text-align: left;}
 
@media only screen and (max-width: 800px) {
	
.linklist tr,
.linklist th,
.linklist td {
	text-align:center;
    display: block;
    width: auto;}
  
.linklist tr:first-child {
    border-top: 1px solid #dbe1e8;}

table.linklist{
	border-top: 2px solid #009999;}
	
.linklist th,
.linklist td {
	border-left: 1px solid #dbe1e8;  
    border-top: none;}
}



/*---研修お申し込み---*/
.appform-width-15 { width: 15%; margin:4px 1px 4px 0; padding:4px 5px;}
.appform-width { width: 100%; margin:4px 1px; padding:4px 5px;}
.appform-width-half { width: 49%; margin:4px 1px 4px 0; padding:4px 5px;}
.appform-width-half-right { width: 49%; margin:4px 0 4px 1px; padding:4px 5px; float:right;}
.acce{margin-left:-15px;}
.application_top{
	color:#ff0033;
	text-align:center;
	border:1px solid #ff0033;
	padding:5px;
}
.application {
	border-top: 1px solid #dbe1e8; 
	width: 100%;}
.application th.individual{background-color: #009999; color:#fff;} 
.application th,
.application td {
	border-right: 1px solid #dbe1e8;  
	border-bottom: 1px solid #dbe1e8;  
	padding: 10px 12px;}

.application th {
	width:35%;
	border-left:2px solid #009999;
	background: #eee;
	text-align: left;
	padding: 10px 20px;}

.application td {
	text-align: left;
	padding-left:10px;
}
 
@media only screen and (max-width: 800px) {
.application {
	border-collapse: collapse;
	border-top: 1px solid #dbe1e8; 
	width: 100%;}
	
.application tr,
.application th,
.application td {
	text-align:center;
    display: block;
    width: auto;}
  
.application tr:first-child {
    border-top: 1px solid #dbe1e8;}

.application{
	border-top: 2px solid #009999;}
	
.application th,
.application td {
	border-left: 1px solid #dbe1e8;  
    border-top: none;}
}


/*---まごころ銀行---*/

.magocoro {
	border-collapse: collapse;
	border-top: 1px solid #dbe1e8; 
	width: 100%;}
 
.magocoro th,
.magocoro td {
	border-right: 1px solid #dbe1e8;  
	border-bottom: 1px solid #dbe1e8;  
	padding: 10px 12px;}

.magocoro th {
	width:25%;
	border-left:2px solid #009999;
	background: #eee;
	text-align: left;
	padding: 10px 20px;}
 
@media only screen and (max-width: 800px) {
	
.magocoro tr,
.magocoro th,
.magocoro td {
	text-align:center;
    display: block;
    width: auto;}
  
.magocoro tr:first-child {
    border-top: 1px solid #dbe1e8;}

.magocoro{
	border-top: 2px solid #009999;}
	
.magocoro th,
.magocoro td {
	border-left: 1px solid #dbe1e8;  
    border-top: none;}
}

/*---団体紹介---*/

.dantai_linkicon{margin-left:5px; vertical-align:middle; margin-top:-4px;}

.dantai {
	border-collapse: collapse;
	border-top: 1px solid #dbe1e8; 
	width: 100%;}
 
.dantai th,
.dantai td {
	border-right: 1px solid #dbe1e8;  
	border-bottom: 1px solid #dbe1e8;  
	padding: 10px 12px;}

.dantai th {
	border-left:2px solid #009999;
	background: #eee;
	text-align: left;}
 
@media only screen and (max-width: 800px) {
	
.dantai tr,
.dantai th,
.dantai td {
	text-align:center;
    display: block;
    width: auto;}
  
.dantai tr:first-child {
    border-top: 1px solid #dbe1e8;}

.dantai{
	border-top: 2px solid #009999;}
	
.dantai th,
.dantai td {
	border-left: 1px solid #dbe1e8;  
    border-top: none;}
}


/*---部署一覧---*/

h4.department_division{
	margin-top:10px;
	font-weight:normal;
	font-size:125%;}

.department {
	table-layout: fixed;
	border-collapse: collapse;
	border-top: 1px solid #dbe1e8; 
	width: 100%;}
 
.department th,
.department td {
	border-right: 1px solid #dbe1e8;  
	border-bottom: 1px solid #dbe1e8;  
	padding: 8px;}
 
.department th.deep {
	border-left:2px solid #009999;
	text-align:center;
	background: #6c757d;
	color:#fff;}

.department th {
	background: #eee;
	text-align: left;}
 
@media only screen and (max-width: 800px) {
	
.department th.deep {
	border-left: none;
	border-top:2px solid #009999;}
	
.department th.deep,
.department tr,
.department th,
.department td {
	text-align:center;
    display: block;
    width: auto;}
  
.department tr:first-child {
    border-top: 1px solid #dbe1e8;}

.department{
	border-top: none;}
	
.department th,
.department td {
	border-left: 1px solid #dbe1e8;  
    border-top: none;}
}

.department_contact{
	border:1px solid #dbe1e8;
	margin:90px auto 70px;
	padding:50px 0;
	text-align:center;}


/*---コンタクト---*/

.wpcf7c-elm-step2{
	text-align:center;
	font-weight:bold;
	padding-top:30px;
	color:#e55450;}
.form-width100 { width: 100%; margin:4px 1px; padding:4px 5px;}
.form-width { width: 100%; margin:4px 1px; padding:4px 5px;}
.form-width-half { width: 49%; margin:4px 1px 4px 0; padding:4px 5px;}
.form-width-half-right { width: 49%; margin:4px 0 4px 1px; padding:4px 5px; float:right;}
.form-pt {  top: 5px;
  position: relative;}
.form-width150 { width: 150px; margin:4px 1px; padding:4px 5px;}
.form-width100 { width: 100px; margin:4px 1px 4px 0; padding:4px 5px;text-align:center;border:#ccc solid 1px;border-radius:3px;}
.form-width70 { width: 70px; margin:4px 1px 4px 0; padding:4px 5px;text-align:center;border:#ccc solid 1px;border-radius:3px;}
.form-width60 { width: 60px; margin:4px 1px 4px 0; padding:4px 5px;text-align:center;border:#ccc solid 1px;border-radius:3px;}
.form-width50 { width: 50px; margin:4px 1px 4px 0; padding:4px 5px;text-align:center;border:#ccc solid 1px;border-radius:3px;}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea {
	background-color: #fff;
	color: #333;
	border: 1px solid #ddd;
	font-size: 100%;
	padding: 0.5em;
	border-radius: 4px;
	box-shadow: 1px 1px 3px rgba(0,0,0,.1) inset;
}


.wpcf7 input[type="button"] {
	width:100%;
	padding: 15px;
	font-size:120%;
	margin-top:30px;
	background: #e55450; 
	color: #fff;
	border-radius: 10px;
	border: none;}

.wpcf7 input[type="button"]:hover {
	background: #c54744;
	transform: translate3d(0px, 3px, 1px);
	color: #fff;}


.wpcf7 input[type="submit"] {
	width:100%;
	padding: 15px;
	font-size:120%;
	margin-top:20px;
	background: #009999; 
	color: #fff;
	border-radius: 10px;
	border: none;}

.wpcf7 input[type="submit"]:hover {
	background: #007878;
	transform: translate3d(0px, 3px, 1px);
	color: #fff;}

.contact_caution{
	font-size:90%;
	margin:20px 0 40px -25px;
	line-height: 180%;}

.contact_caution li {
list-style-position: outside;
}
.contact_caution01{
	font-size:100%;
	margin:20px 0 40px -25px;
	line-height: 180%;}

.contact_caution01 li {
list-style-position: outside;
}


/*---アクセス---*/

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

.access_traffic p.name{
	font-weight:bold;
	margin-bottom:20px;}

.access_traffic table{
	border-collapse: collapse;
	border:1px solid #ccc;
	margin-top:30px;
	width:100%;}

.access_traffic th {
	width:25%;
	font-weight:normal;
	background: #eee;
	padding:12px 0 9px 0;
	border-top: solid 1px #ccc;
	text-align:center;}

.access_traffic td{
	padding:12px 10px 9px 10px;
	border-top: solid 1px #ccc;
	text-align: justify;}

@media only screen and (max-width:480px){
.access_traffic table {
	border-top:0px;}
	
.access_traffic th, .access_traffic td {
	width: 100%; 
	display: block;}
	
}

h3.access-h3{
	color:#292729;
	margin-top:60px;
	margin-bottom: 30px;
	letter-spacing:0.05em;
	position: relative;}

h3.access-h3:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #009999;
	bottom:-15px;
	width: 10%;}

.access_traffic{}

.access_traffic h5{
	margin-top:20px;
	padding-top:20px;
	border-top:1px solid #ccc;}


/*---リンク集---*/

.link_list {
	border-collapse: collapse;
	border-top: 1px solid #dbe1e8; 
	width: 100%;}
 
.link_list th,
.link_list td {
	border-right: 1px solid #dbe1e8;  
	border-bottom: 1px solid #dbe1e8;  
	padding: 5px 10px;}
 
.link_list th.deep {
	border-left:2px solid #009999;
	text-align:center;
	background: #6c757d;
	color:#fff;
	width: 25%;}

.link_list th {
	background: #eee;
	text-align: center;}
 
@media only screen and (max-width: 800px) {
	
.link_list th.deep {
	border-left: none;
	border-top:2px solid #009999;}
	
.link_list th.deep,
.link_list tr,
.link_list th,
.link_list td {
	text-align:center;
    display: block;
    width: auto;}
  
.link_list tr:first-child {
    border-top: 1px solid #dbe1e8;}

.link_list{
	border-top: none;}
	
.link_list th,
.link_list td {
	border-left: 1px solid #dbe1e8;  
    border-top: none;}
}


/*---------------------------------------------
 　サイドバー
  ---------------------------------------------*/

@media screen and (max-width: 991px) {
/* 表示領域が991px以下の場合に適用するスタイル */
 .row-main_side{margin-top:30px;}
}

h5.pic_side_h5{
	font-size:100%;}

.pic_side_box1{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/side_icon1.png) no-repeat left 50% #e5f5f4;
	margin:0 0 10px;
	padding:15px 20px 5px 75px;
	min-height:80px;
	display: flex;
	align-items: center;}

.pic_side_box2{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/side_icon2.png) no-repeat left 50% #e5f5f4;
	margin:0 0 10px;
	padding:15px 20px 5px 75px;
	min-height:80px;
	display: flex;
	align-items: center;}

.pic_side_box3{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/side_icon3.png) no-repeat left 50% #e5f5f4;
	margin:0 0 10px;
	padding:15px 20px 5px 75px;
	min-height:80px;
	display: flex;
	align-items: center;}

.pic_side_box4{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/side_icon4.png) no-repeat left 50% #e5f5f4;
	margin:0 0 10px;
	padding:15px 20px 5px 75px;
	min-height:80px;
	display: flex;
	align-items: center;}

.pic_side_box5{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/side_icon5.png) no-repeat left 50% #e5f5f4;
	margin:0 0 10px;
	padding:15px 20px 5px 75px;
	min-height:80px;
	display: flex;
	align-items: center;}

.pic_side_box6{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/side_icon6.png) no-repeat left 50% #e5f5f4;
	margin:0 0 10px;
	padding:15px 20px 5px 75px;
	min-height:80px;
	display: flex;
	align-items: center;}

.pic_side_box7{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/side_icon7.png) no-repeat left 50% #e5f5f4;
	margin:0 0 10px;
	padding:15px 20px 5px 75px;
	min-height:80px;
	display: flex;
	align-items: center;}

.pic_side_box8{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/side_icon8.png) no-repeat left 50% #e5f5f4;
	margin:0 0 10px;
	padding:15px 20px 5px 75px;
	min-height:80px;
	display: flex;
	align-items: center;}

/*---------------------------------------------
 　ピックアップ扉ページ
  ---------------------------------------------*/

.pic_list_h5nomal{
	font-size:85%;}

.pic_list_box{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom #e5f5f4;
	margin:0 0 20px;
	padding:20px 20px 10px 100px;
	min-height:85px;
	display: flex;
	align-items: center;}

.pic_list_box1{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/pick_icon1.png) no-repeat left 50% #e5f5f4;
	margin:0 0 20px;
	padding:20px 20px 10px 100px;
	min-height:85px;
	display: flex;
	align-items: center;}

.pic_list_box2{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/pick_icon2.png) no-repeat left 50% #e5f5f4;
	margin:0 0 20px;
	padding:20px 20px 10px 100px;
	min-height:85px;
	display: flex;
	align-items: center;}

.pic_list_box3{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/pick_icon3.png) no-repeat left 50% #e5f5f4;
	margin:0 0 20px;
	padding:20px 20px 10px 100px;
	min-height:85px;
	display: flex;
	align-items: center;}

.pic_list_box4{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/pick_icon4.png) no-repeat left 50% #e5f5f4;
	margin:0 0 20px;
	padding:20px 20px 10px 100px;
	min-height:85px;
	display: flex;
	align-items: center;}

.pic_list_box5{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/pick_icon5.png) no-repeat left 50% #e5f5f4;
	margin:0 0 20px;
	padding:20px 20px 10px 100px;
	min-height:85px;
	display: flex;
	align-items: center;}

.pic_list_box6{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/pick_icon6.png) no-repeat left 50% #e5f5f4;
	margin:0 0 20px;
	padding:20px 20px 10px 100px;
	min-height:85px;
	display: flex;
	align-items: center;}

.pic_list_box7{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/pick_icon7.png) no-repeat left 50% #e5f5f4;
	margin:0 0 20px;
	padding:20px 20px 10px 100px;
	min-height:85px;
	display: flex;
	align-items: center;}

.pic_list_box8{
	background:url(../images/page/pick/pick_arrow.png) no-repeat right bottom, url(../images/page/pick/pick_icon8.png) no-repeat left 50% #e5f5f4;
	margin:0 0 20px;
	padding:20px 20px 10px 100px;
	min-height:85px;
	display: flex;
	align-items: center;}



/*---------------------------------------------
 　オレンジヘッダーライン
  ---------------------------------------------*/

.page_hd_line{
	background:url(../images/page/hd_line_illust.png) no-repeat right bottom, url(../images/page/hd_line_nami.png) repeat-x center top #fabf13;
	width:100%;
	height:130px;}


h1.post_hd_title{
	font-size:189%;
	margin: 0 0 30px 1px;
	position: relative;}

h1.post_hd_title:after{
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 1px #000;
	bottom:-10px;
	width: 10%;}

.post-content{
	margin: 40px 0 110px 0;}

.post-content img{margin:20px 0;}
.post-content img.alignleft { display: block; margin: 15px 20px 15px 0; float:left;}/* 配置位置 左 */
.post-content img.aligncenter { display: block; margin: 15px auto; }/* 配置位置 中央 */
.post-content img.alignright { display: block; margin: 15px 0 15px 20px; float:right;}/* 配置位置 右 */

.icon_folder{vertical-align:middle; margin:-5px 0 0 0;}
.icon_clock{vertical-align:middle; margin:-5px 0 0 10px;}
.icon_clock_newslist{vertical-align:middle; margin:-5px 0 0 0;}


/*---アーカイブ---*/

h2.archive_post_title{
	font-size:189%;
	margin: 0 0 30px 1px;
	position: relative;}

h2.archive_post_title:after{
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 1px #000;
	bottom:-10px;
	width: 10%;}


/*---------------------------------------------
 　一覧
  ---------------------------------------------*/

h2.post_hd_title{
	margin:0 0 5px 0;
	font-size:125%;}

/*---------------------------------------------
 　検索フォーム
  ---------------------------------------------*/

@media screen and (min-width: 768px) {
/* 表示領域が768px以上の場合に適用するスタイル */	
#column01_search{
	min-height: 500px;
	margin: 90px auto 60px;
	max-width: 1100px;
	padding: 0 15px 50px;
	text-align: justify;
	text-justify: inter-ideograph;}
}

@media screen and (max-width: 767px) {
/* 表示領域が767px以下の場合に適用するスタイル */
#column01_search{
	min-height: 500px;
	margin: 30px auto 60px;
	max-width: 1100px;
	padding: 0 15px 50px;
	text-align: justify;
	text-justify: inter-ideograph;}
}


/*---------------------------------------------
 　ブログサイドバー
  ---------------------------------------------*/

#post-sidebar h2.first{
	font-size:130%;
	margin: 0 0 40px 1px;
	position: relative;}

#post-sidebar h2.first:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 1px #ccc;
	bottom:-22px;
	width: 30%;}

#post-sidebar h2{
	font-size:130%;
	margin: 40px 0 40px 1px;
	position: relative;}

#post-sidebar h2:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 1px #ccc;
	bottom:-22px;
	width: 30%;}

#post-sidebar ul{
	font-size:90%;
	margin-top:47px;
	list-style:none;
	border-top:1px solid #f2f2f2;}

#post-sidebar li{
	border-bottom:1px solid #f2f2f2;
	line-height: 250%;}

/*---ブログカレンダー---*/

#sidebar .widget_calendar {
    margin-bottom: 40px;}

table#wp-calendar {
	width:100%;
	font-size:90%;
	font-weight:300;
	border-collapse:separate;
	border-spacing:3px;
	margin:0 0 0 -2px;}

table#wp-calendar caption {
	display:none;}

table#wp-calendar #today {
    color:#506c82;
    border-color:#506c82;}

table#wp-calendar .pad {
    background: #ddd;
    border:0;}

table#wp-calendar th,
table#wp-calendar td {
    vertical-align: middle;
    text-align: center;}

table#wp-calendar td {
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	-ms-border-radius:2px;
	-o-border-radius:2px;
	border-radius:2px;
    border: 1px solid #ccc;
    background-color: #fff;
	padding: 2px 0 1px;}

table#wp-calendar th {
    font-weight:400;
    color:#888;
    text-align:center;
    padding-bottom:3px;}

table#wp-calendar a {
    color:#888;
    font-weight:400;
    position:relative;
    text-transform:uppercase;}

.training_kubunbox{
	margin-top:20px;
	margin-bottom:20px;
	vertical-align:middle;}

.training_kubunbox img {
	margin-top:-2px;
	margin-right:5px;
	margin-left:5px;
	vertical-align:middle;}

table.town_tableorange {width:100%; border:1px solid #ccc; margin-bottom:20px;}
table.town_tableorange th {border:1px solid #ccc; padding:8px; background-color: #fabf13; text-align: center;}
table.town_tableorange td {border:1px solid #ccc; padding:8px;}

table.tableglay {width:100%; border:1px solid #ccc; margin-bottom:20px;}
table.tableglay th {border:1px solid #ccc; padding:8px; background-color: #ccc;}
table.tableglay td {border:1px solid #ccc; padding:8px;}

.volunteer_sasaeai_bg{background-color:#e95551;}
.volunteer_sasaeai_linkbox {color:#fff; padding:20px;}
.volunteer_sasaeai_linkbox :hover{color:#353535;}

ul.service_list {}
ul.service_list li{list-style: outside; margin-left:15px; padding:5px 0;}

/*---愛媛県高齢者相談センター---*/

.support_soudancenter_box1{
	background:url(../images/page/other/support_title_bottomline.gif) bottom repeat-x #009999; width:100%;
	font-size:140%; text-align:center; color:#fff; font-weight:bold; padding:20px 0 30px; margin-bottom:25px;}

.support_soudancenter_box2{
	background:url(../images/page/other/support_title_bottomline.gif) bottom repeat-x #e95551;
	width:100%;
	font-size:140%; text-align:center; color:#fff; font-weight:bold; margin-top:40px;}

.support_soudancenter_text{padding:20px 0 25px;}

.support_soudancenter_image{
	min-height:200px;
	background:url(../images/page/other/support_happy.jpg) no-repeat right;
	background-size: cover;}

.support_soudancenter_list li {list-style-position:outside; margin-left:15px; padding:10px 0; border-bottom:1px dotted #ccc; font-weight:bold; color:#e95551;}

table.support_soudancenter {width:100%; border:1px solid #ccc; margin-bottom:20px;}
table.support_soudancenter th {border:1px solid #ccc; padding:8px 15px; background-color: #eaeaea; font-size:115%;}
table.support_soudancenter td {border:1px solid #ccc; padding:8px; text-align:center;}

/*---愛媛県福祉サービス運営適正化委員会---*/

.service_tekisei_image{
	min-height:200px;
	background:url(../images/page/other/service_tekisei.jpg) no-repeat right;
	background-size: cover;}

.service_tekisei{color:#009999; font-weight:bold;}
.service_tekisei ol{padding-left:0;}
.service_tekisei li{ list-style-position:outside; margin-left:17px; padding:4px 0; }

.service_tekisei2 li {list-style-position:outside; margin-left:17px; padding:10px 0; border-bottom:1px dotted #ccc; }


/*---第三者評価---*/

.third-party {
	border-collapse: collapse;
	border-top: 1px solid #dbe1e8; 
	width: 100%;}
 
.third-party th,
.third-party td {
	border-right: 1px solid #dbe1e8;  
	border-bottom: 1px solid #dbe1e8;  
	padding: 10px 12px;}

.third-party th {
	width:30%;
	border-left:2px solid #009999;
	background: #eee;
	text-align: left;
	padding: 10px 20px;}
 
td.third-party_0  {
	border-right:0;}

.third-party ol  {
    position: relative;
    margin:0;
    padding:0}

.third-party ol li  {
    list-style: none;
    list-style-position:outside;
    margin:0;
    padding-left:1.25em;
    padding-top:10px;}

.third-party ol li span {
    position: absolute;
    left:0;
    margin:0}



@media only screen and (max-width: 800px) {
	
.third-party tr,
.third-party th,
.third-party td {
	text-align:center;
    display: block;
    width: auto;}
  
.third-party tr:first-child {
    border-top: 1px solid #dbe1e8;}

.third-party{
	border-top: 2px solid #009999;}
	
.third-party th,
.third-party td {
	border-left: 1px solid #dbe1e8;  
    border-top: none;}

td.third-party_0  {
	border-right:0;
	border-left:0;}
}