* {
    box-sizing: content-box;
}




	.voice-sec{
  padding: 50px 0;
}

.voice-inner{
  width: min(980px, 100%);
  margin: 0 auto;
  width: 90%;
}

.voice-title{
  font-size: 28px;
  margin: 0 0 10px;
  letter-spacing: .04em;
}

.voice-lead{
  margin: 0 0 30px;
  line-height: 1.8;
  opacity: .9;
}

.voice-list{
  display: grid;
  gap: 24px;
}

/* 左右交互 */
.voice-item{
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 20px;
  align-items: flex-start;
}

.voice-item.is-right{
  grid-template-columns: 1fr 110px;
}

.voice-item.is-right .voice-avatar{ order: 2; }
.voice-item.is-right .voice-bubble{ order: 1; }

/* アイコン */
.voice-avatar{
  text-align: center;
}

.voice-icon{
  width: 80px;
  height: auto;
  display: block;
  margin: 0 auto 8px;
}

.voice-meta{
  font-size: 14px;
  font-weight: 700;
}

/* 吹き出し */
.voice-bubble{
  position: relative;
  background: #fbf0c9;
  border: 2px solid #111;
  border-radius: 16px;
  padding: 18px 20px;
  line-height: 1.85;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}

.voice-bubble p{
	margin: 0;
	text-align: left;
}





/* スマホ：崩れない */
@media (max-width: 640px){
  .voice-item{
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 14px;
  }

  .voice-item.is-right{
    grid-template-columns: 1fr 80px;
  }

  .voice-icon{
    width: 64px;
  }
}


/*============================
共通
============================*/

body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align: center;
    overflow-x: hidden;
}

main {
    width: 980px;
    margin: 0 auto;
}

div.service,
div.step,
div.partner,
div.form {
    margin-top: 85px;
    margin-bottom: 80px;
}

h1 {
    font-size: 28px;
    line-height: 150%;
    color: #fff;
}

h2 {
    font-size: 28px;
    padding: 10px;
    margin: 25px 0px 0px 0px;
}

h3 {
    font-size: 26px;
    line-height: 160%;
    margin: 35px 0 28px 0;
    padding-left: 14px;
}

p {
    font-size: 17px;
    margin: 15px 0 26px 0;
    line-height: 180%;
    letter-spacing: 3px;
}

a {
    text-decoration: none;
    color: #000;
    display: block;
}

a:hover {
    opacity: 0.7;
}

div.border,
div.border_1,
.border_2 {
    width: 5%;
    height: 3px;
    margin: 0 auto;
    border-radius: 2px;
    margin-bottom: 18px;
}

p.syunan {
    font-weight: bold;
    text-align: center;
    font-size: 24px;
}

div.net,
div.organization {
    padding: 25px 500%;
    height: auto;
}

div.border {
    background: #f8b336;
}

/*******************************
ヘッダー
********************************/

header {
    margin: 0 auto;
    width: 980px;
}

div#container {
    margin: 10px 0 10px 0;
}

img.ha_lfo {
    vertical-align: middle;
}

/*-----------------------------
アコーディオンナビ
-------------------------------*/

nav ul {
    display: inline-block;
    width: 100%;
}

nav ul.menu li {
    width: 9%;
    display: inline-block;
}

nav ul.menu li a {
    font-size: 13px;
}

#menuList,
#image-bloc,
div.net,
div.organization,
div.next {
    position: relative;
    z-index: 10;
    margin: 0 -100%;
    padding: 0 100%;
}

/*スマホ用ロゴ*/

.ha_sp {
    display: none;
}

#menuList ul li:hover > a {
    color: #9a9a9a;
}

#menu {
    display: none;
    z-index: 9;
}

#dropmenu {
    display: block;
}

#dropmenu {
    list-style-type: none;
    height: 40px;
    margin: 15px auto 15px;
    padding: 0;
    display: block;
}

#dropmenu li {
    position: relative;
    width: 9%;
    display: inline-block;
    margin: 0;
    padding: 0;
    text-align: center;
    font-size: 14px;
}

#dropmenu li a {
    display: block;
    margin: 0;
    color: #000;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
}

/*ドロップダウンメニューの位置調整*/

#dropmenu li ul {
    list-style: none;
    position: absolute;
    left: 0%;
    right: 0;
    top: 100%;
    background: #fff;
    height: 0;
}

#dropmenu li ul li {
    overflow: hidden;
    width: 100%;
    height: 0;
    color: #000;
    vertical-align: middle;
    -moz-transition: 0s;
    -webkit-transition: 0s;
    -o-transition: 0s;
    -ms-transition: 0s;
    transition: 0s;
}

#dropmenu li ul li a {
    font-size: 12px;
    padding: 0 2px;
}

#dropmenu li:hover > a {
    color: #ddd;
    text-align: center;
}

#dropmenu li:hover ul li {
    overflow: visible;
    height: 25px;
    padding: 10px 2px 0px;
    border-bottom: 1px solid #eee;
    background: #fff;
    display: block;
    vertical-align: middle;
    z-index: 99;
    /*要素の上にかぶせる*/
    text-align: center;
    margin: 0 auto;
}



.card-container {
    display: grid; /* カードの横並び */
    grid-template-columns: repeat(auto-fit, minmax(342px, 1fr)); /* gridの設定 */
    gap: 20px 30px; /* カード同士の隙間 縦方向 横方向 */
    margin: 109px auto 0;
    text-align: start; /* カード内の中央寄せ解除 */
}
 
.card-item {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
    padding: 16px 16px 35px;
    background-color: #f8f8f8;
}
 
.card-img {
    width: 100%;
    height: auto; 
    vertical-align: bottom; /* 画像の下の余白を埋める */
}
 
.card-tit {
    margin-top: 20px;
    color: #6F7579;
    font-size: 20px;
    line-height: 1.2;
	padding-left:0;
}

.card-body{
	margin-top: 10px;
    display: block;
}
 
.card-item p {
    margin-top: 20px;
    color: #6F7579;
    font-size: 0.9rem;
    line-height: 1.5;
} 
    
    @media only screen and (max-width: 979px){
.card-item {
    width: auto;
    max-width: 450px;
    margin: 0 auto;
    padding: 10px;
    background-color: #f8f8f8;
}
        
.card-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(342px, 1fr));
    gap: 20px 30px;
    margin: 50px auto 0;
    text-align: start;
}
    
    
    }



/*******************************
        スライダー
********************************/

.bg-slider {
    max-width: 100vw;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat center top;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: -1;
    height: 500px;
}

/*********************************
上に戻るボタン
**********************************/

#return-top {
    bottom: 10px;
    color: #fff;
    outline: 0;
    position: fixed;
    right: 7%;
    text-align: center;
    width: 30px;
    height: 30px;
    border: 5px solid;
    border-color: #565656 #565656 transparent transparent;
    transform: rotate(-45deg);
    z-index: 10;
}

/*******************************
        トップページ内の ボタン
********************************/

div.kuwasiku {
    padding: 5px;
    margin: 0 auto;
}

a.button {
    padding: 8px 30px;
}

a.button {
    text-decoration: none;
    letter-spacing: 3px;
    width: 150px;
    padding: 8px;
    border: solid 1px #000;
    border-color: #fff;
    margin: 15px auto;
}

a.button:hover {
    background: #fac25b;
    border-style: none;
    color: #fff;
    margin: 15px auto;
    width: 150px;
    padding: 8px;
    border: solid 1px #fac25b;
    opacity: 10;
}

div.organization p,
.organization h2,
.organization a.button {
    color: #fff;
    text-shadow: 2px 2px 6px #000
}

div.company p,
.company h2,
.company a.button {
    color: #fff;
    text-shadow: 1px 1px 4px #000
}

/****************************
トップお問い合わせ
*****************************/

ul.toiawase li.orange {
    background: #fac25b;
}

ul.toiawase li.mosgreen {
    background: #08bfb8;
}

ul.toiawase li.orange:hover,
ul.toiawase li.mosgreen:hover {
    background: #1466a2;
}

/****************************
div.next トップの帯
*****************************/

div.next {
    padding-top: 10px;
    padding-bottom: 10px;
    background: #f8b336;
    text-align: center;
}

div.next p {
    line-height: 160%;
    color: #fff;
    padding-bottom: 20px;
}

.border_1 {
    background: #fff;
}

/***************************
ニュース
****************************/

.topics {
    border-radius: 8px;
    border: solid 1px #ccc;
    box-shadow: 2px 2px 4px #ccc;
    width: 80%;
    margin: 0 auto;
    padding: 5px;
}

/***************************
div.service トップ/保険のタイプリンク
****************************/

div.section {
    width: 30%;
}

.section1 img {
    width: 90%;
    margin: 0 auto;
}

div.section1 {
    background: #fff;
    padding: 17px;
}

div.section1 p#type {
    font-size: 36px;
    margin: 0;
}

div.section1 p#type a {
    color: #bbb;
}

ul.net_e li.baner {
    box-shadow: 1px 1px 3px #eee;
}

ul.net_e li.baner p {
    margin: 0;
}

/*****************************
div.step トップ/流れ
******************************/

div.step img {
    width: 90%;
    margin: 0 auto;
    margin-top: -6px;
}

/******************************
div.organization トップ/組織
*******************************/

div.organization {
    background-image: url(../img/back001.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: inherit;
    position: relative;
    width: 100%;
    z-index: 10;
    margin: 0 -100%;
    padding: 0 100%;
    padding-bottom: 45px;
    padding-top: 1px;
}

/******************************
div.form トップ/問い合わせ
*******************************/

div.form .section2 ul li {
    width: 30%;
    display: inline-block;
    margin: 20px 24px;
}

div.form .toiawase li {
    width: 100px;
    height: auto;
}

ul.toiawase li.orange,
li.mosgreen {
    padding: 5px;
    position: relative;
    display: inline-block;
    text-decoration: none;
    font-weight: bold;
    width: 150px;
    padding: 22px 11px;
    border-radius: 20px;
}

ul.toiawase li.orange a,
li.mosgreen a {
    color: #fff;
}

div.form .button_form {
    border-radius: 8px;
    border: solid 1px #000;
    background: #eee;
}

/********************************
div.net トップ ネットでお問い合わせ
*********************************/

div.net {
    background: #f2f2f2;
    margin-top: 0;
    margin-bottom: -10;
    padding-top: 1px;
}

div.net ul.net_e li {
    display: inline-block;
    margin-top: 20px;
}

div.net ul.net_e li p {
    margin: 0;
}

ul.hoken li {
    width: 23%;
    display: inline-block;
    margin: 20px 0 20px 0;
    padding: 0 5px;
    box-shadow: 1px 1px 3px #eee;
}

ul.net_e li img {
    width: 90%;
}

/*******************************
div.company トップ/パートナー企業
********************************/

div.company {
    background-image: url(../img/back001a.jpg);
    background-repeat: no-repeat;
    position: relative;
    z-index: 10;
    margin: 0 -100%;
    padding: 0 100%;
    height: auto;
    background-position: center;
    padding-bottom: 45px;
    padding-top: 25px;
}

div ul.hoken ul li {
    width: 40%;
    display: inline-block;
}

div ul.hoken li img {
    margin: 10px 15px 0 0;
    width: 90%;
}

/*------------------------
        サポート体制
--------------------------*/

div.kyoudho {
    display: inline-block;
    width: 40%;
    margin: 0 30px;
    text-align: left;
}

/*-------------------------
勧誘方針
--------------------------*/

span#black {
    font-weight: bold;
}

/*-------------------------
       経営方針/反社会方針
--------------------------*/

div.keiei p {
    margin-top: 28px;
}

div.keiei h4,
div.syakai h4,
div.syakai p {
    text-align: left;
}

div.keiei {
    margin-bottom: 40px;
}

div.keiei p {
    text-align: left;
    font-size: 18px;
}

div.syakai {
    margin-top: 65px;
}

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


.kpi-wrap{
  width: 100%;
  max-width: 1100px;
  margin: 24px auto;
  padding: 0 12px;
}


.kpi-scroll {
    overflow-x: inherit;
    -webkit-overflow-scrolling: touch;
}



/* --- 重要：テーマ側の「テーブルをブロック化」を強制解除 --- */
.kpi-table,
.kpi-table thead,
.kpi-table tbody,
.kpi-table tr{
  display: table !important;
  width: 100% !important;
}
.kpi-table thead{ display: table-header-group !important; }
.kpi-table tbody{ display: table-row-group !important; }
.kpi-table tr{ display: table-row !important; }
.kpi-table th,
.kpi-table td{
  display: table-cell !important;
  float: none !important;
  width: auto !important;
}

/* --- デザイン --- */
.kpi-table{
  border-collapse: collapse;
  min-width: 760px;          /* スマホは横スクロールで保持 */
  border: 2px solid #000;
  table-layout: fixed;
  font-family: system-ui, -apple-system, "Hiragino Kaku Gothic ProN",
    "Noto Sans JP", "Yu Gothic", "Meiryo", sans-serif;
}

.kpi-table th,
.kpi-table td{
  border: 2px solid #000;
  text-align: center;
  vertical-align: middle;
  padding: 14px 10px;
  font-size: 16px;
  line-height: 1.2;
  white-space: nowrap;
}

.kpi-table thead th{
  background: #f2b100;
  font-weight: 800;
}

.kpi-table tbody td{
  background: #fbf0c9;
  font-weight: 600;
}

._sp{
	display:none;
	
}

@media (max-width: 640px){
  .kpi-table th,
  .kpi-table td{
    font-size: 14px;
    padding: 12px 8px;
  }
	
.kpi-scroll{
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
	
	.scloll_txt{
		padding-left:10px;
		text-align: left;
	}
	
	._sp{
		display:block;
	}
}









/*-------------------------
       個人情報
--------------------------*/

.kojin {
    text-align: left;
}

.kojin p {
    margin-top: 20px;
}

/*-------------------------
      保険の基礎知識
--------------------------*/

.description1 p {
    text-align: left;
}

.description1 img,
.description1 p {
    display: inline-block;
    padding: 3px;
    vertical-align: top;
}

span.shikaku-span {
    font-size: 50px;
    vertical-align: sub;
}

p#matome {
    font-size: 28px;
    color: #51cc23;
    font-weight: 700;
    letter-spacing: 2px;
}

div.seimei {
    width: 100%;
    vertical-align: top;
    text-align: left;
    padding: 13px;
    margin-top: 30px;
}

div.seimei img {
    width: 45%;
    display: inline-block;
}

div.left {
    width: 45%;
    display: inline-block;
    vertical-align: top;
}

div.hoken {
    margin-top: 80px;
}

h4 {
    font-size: 22px;
    margin-top: 25px;
    letter-spacing: 2px;
    line-height: 150%;
}

h5 {
    font-size: 17px;
    font-weight: bold;
    margin-bottom: 16px;
}

div.sankaku h2,
div.hoken h2,
div.hoken h3,
div.hoken h4 {
    margin: 40px 0 25px 0;
    text-align: left;
}

img.sankaku {
    width: 100%;
}

.tishiki_img {
    height: auto;
}

span.blue {
    color: #f85a7e;
    font-size: 17px;
}

.tigai {
    width: 45%;
    display: inline-block;
    vertical-align: top;
    padding: 7px;
    margin: 0 4px;
    border-radius: 8px;
    border: solid 1px #000;
}

section.p_tishiki {
    width: 45%;
    display: inline-block;
    line-height: 180%;
}

section.p_tishiki p {
    margin: 0;
}

.description p {
    text-align: left;
    margin: 30px 0 15px;
}

.link_tishiki {
    display: inline-block;
    text-decoration-line: underline;
}

/*----------------------
    保険のタイプ
-------------------------*/

div.border_2 {
    background: #ff6a47;
}

div.syurui {
    margin-top: 30px;
}

div.ho_1 {
    display: inline-block;
    width: 43%;
    vertical-align: top;
    margin: 0 30px;
}

div.ho_1 img {
    width: 30px;
    height: 30px;
    margin-right: 20px;
}

div.ho_1 img.big {
    width: 50%;
    height: auto;
}

div.ho_1 h4 {
    font-size: 20px;
    letter-spacing: 3px;
    margin-bottom: 20px;
}

div.ho_1 p {
    text-align: left;
    line-height: 150%;
    letter-spacing: 2px;
    padding-bottom: 20px;
}

div.ho_1 p.center {
    text-align: center;
}

div#hjn,
div#kin,
div#sonota {
    margin-top: 90px;
}

div.text {
    margin-bottom: 50px;
}

.syurui_left {
    text-align: left;
}

.syurui_left h4 {
    text-align: center;
}

/*---------------------
    代表メッセージ
-----------------------*/

div.mes .message_img {
    width: 100%;
}

p#name {
    text-align: right;
}

div.mes p {
    margin: 20px 6px;
    text-align: left;
    line-height: 175%;
}

span.bold {
    font-weight: 600;
    color: #000;
}

p#right {
    text-align: right;
    margin-bottom: 10px;
}

/*-------------------
    店舗・会社情報
--------------------*/

div.shop_1 {
    text-align: left;
    vertical-align: top;
    margin: 70px 0 10px;
}

table {
    width: 80%;
    margin: 0 auto;
}

div.tizu {
    height: auto;
}

.jy {
    font-weight: bold;
}

td {
    border-top: dotted 1px #888;
    padding: 8px;
    line-height: 160%;
    font-size: 17px;
}

/*------------------------
    よくある質問
-------------------------*/

img.img_qa {
    width: 15%;
    display: inline-block;
    margin-right: 20px;
    vertical-align: top;
}

div section.right {
    display: inline-block;
    width: 60%;
    text-align: left;
    margin: 20px 0 20px 20px;
}

/*--------------------
     取扱保険
--------------------*/

ul.net_hoken li {
    width: 28%;
    display: inline-block;
}

div.box_1 {
    margin: 40px 0;
}

a.telp {
    font-size: 22px;
    font-weight: bold;
    margin-top: 10px;
}

.align-top {
    vertical-align: top;
}

ul.net_e li {
    width: 41%;
    display: inline-block;
    margin: 5px 7px 20px 0px;
    padding: 0 5px;
}



/*----------------------
パートナー企業
------------------------*/

table.partner_more {
    text-align: left;
    margin: 35px 0;
    padding-left: 8px;
    width: 69%;
    display: inline-block;
}

table.partner_more tr td {
    border-top: none;
}

table.partner_more td:nth-child(2) {
    width: 500px;
}

table.partner_more tr:first-child {
    background: #ddd;
    font-weight: bold;
}

table.partner_more tr td:first-child {
    width: 85px;
}

div.partner img {
    width: 28%;
    display: inline-block;
    text-align: left;
    vertical-align: top;
    margin-top: 38px;
    padding-right: 15px;
}

/*------------------------
    footer
-------------------------*/

footer {
    padding-bottom: 20px;
    background: #4e4e4e;
    z-index: 999;
    margin: 0 -100%;
    padding: 0px 100%;
    clear: both;
}

footer small {
    color: #fff;
}

footer p,
footer ul li a {
    font-size: 14px;
    padding-bottom: 10px;
    text-align: center;
}

div.live {
    margin-top: 13px;
    padding-bottom: 15px;
}

footer a,
div.tenpo p,
p#kabu {
    color: #fff;
}

p#kabu {
    width: 100%;
    font-size: 21px;
    margin-left: 12px;
    margin-bottom: 10px;
    padding-top: 15px;
    text-align: center;
}

footer ul {
    width: 100%;
    display: inline-block;
}

footer ul li {
    margin-top: 5px;
    text-align: left;
    width: 18%;
    display: inline-block;
}

footer div.live .tenpo p {
    margin: 3px 0 2px 0;
}

div.tenpo {
    text-align: left;
    display: inline-block;
    margin: 8px;
    width: 35%;
    vertical-align: top;
}

footer div.live {
    display: block;
    width: 980px;
    margin: 0 auto;
}

/*=======================
ワードプレス お知らせ
=========================*/

div#contents {
    width: 980px;
    margin: 10px auto;
}

div#main {
    width: 70%;
    display: inline-block;
}

.post {
    line-height: 200%;
    text-align: left;
}

h2.title {
    padding: 0;
}

/*サイドバー*/

div#side {
    width: 27%;
    display: inline-block;
    vertical-align: top;
    padding-left: 15px;
}

.widget-container h3 {
    border-bottom: dotted 2px #eee;
    font-size: 21px;
}

/*問い合わせ*/

h1.title {
    display: none;
}

.form_wp {
    width: 980px;
    margin: 0 auto;
}

#formArea {
    margin: 0 0 50px;
}

#formArea .fBlock {
    padding: 15px 20px;
    margin: 0 0 30px;
    background: #eee;
}

#formArea .fBlock .h {
    font-weight: bold;
}

.bottom{
	margin-bottom: 20px!important;
}

#formArea table.fm {
    width: 100%;
    color: #000;
}

tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
}

#formArea table.fm tr {
    border-top: 1px solid #999;
    vertical-align: top;
}

#formArea table.fm th {
    width: 25%;
    padding: 30px 0;
    font-weight: bold;
	vertical-align:middle;
}

span.iconHissu {
    display: inline-block;
    background: #ee0d52;
    color: #fff;
    font-size: 13px;
    line-height: 100%;
    padding: 2px 3px;
    margin: 0 4px 0 0;
    border-radius: 1px;
}

input[type="text"],
input[type="tel"],
textarea {
    padding: 5px 1%;
    border: none;
    border-radius: 3px;
    line-height: 1.3;
}

input[type="text"],
input[type="tel"] {
    height: 30px;
    width: 50%;
    border: solid 1px #ddd;
    background: #eee;
}

input#sard_side {
    height: 20px;
    width: 100%;
    margin-bottom: 8px;
}

input#searchsubmit_botton {
    padding: 1px;
    font-size: 15px;
    vertical-align: bottom;
    width: 25%;
    -webkit-appearance: none;
    border-radius: 0;

}

li.widget-container h3 {
    text-align: left;
    margin: 35px 0 7px 0;
    padding-left: 14px;
}

li.widget-container li a {
    text-align: left;
}


li.widget-container {
    margin-bottom: 30px;
}

p.sarch {
    text-align: left;
    font-size: 19px;
    margin-bottom: 3px;
}

label {
    display: block;
    margin:20px 0px 5px 0;
}

.person{
	font-weight: bold;
    margin-bottom: 10px;
    margin-top: 20px;
    background-color: #fdc868;
    padding: 12px;
    width: 84%;
}

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

#formArea table.fm th span.iconHissu {
    margin: 0 0 0 4px;
}

#formArea table.fm td {
    padding: 30px 0;
	text-align:left;
}

form.wpcf7-form {
    margin: 80px 0;
}

select {
    border: 1px solid #ddd;
    width: 250px;
    height: 40px;
}

.flont-back{
	width: 82%;
    background-color: #ffffff;
    border: 1px #999999 solid;
    padding: 20px;
}

.flont-back p{
	font-size: 16px;
}

.sent .formInner {
    display: none;
}

.screen-reader-response{
	display: none;
}

.wpcf7-mail-sent-ok{
	text-align: center;
    font-weight: bold;
    font-size: 18px;
    background-color: #fdc868;
    width: 70%;
    margin: 0 auto;
    padding: 10px;
}


.checkbox-232{
	margin-top: 20px;
    display: block;
    border-top: 1px solid #949494;
    width: 85%;
    border-bottom: 1px solid #949494;
    color: #6c5f5f;
    padding: 5px;
    font-weight: bold;
}

.checkbox-456{
	margin-top: 20px;
    display: block;
    border-top: 1px solid #949494;
    width: 86.5%;
    border-bottom: 1px solid #949494;
    color: #6c5f5f;
    font-weight: bold;
}

select,
input,
button,
textarea,
button {
    font: 99% arial, helvetica, clean, sans-serif;
    border: solid 1px #ddd;
    background: #eee;
    padding: 6px;
}

.btnWrap {
    text-align: center;
    margin: 40px 0 0;
}

.kuma p {
    text-align: left;
    margin-bottom: 10px;
}

p.syunan {
    text-align: center;
}

textarea.wpcf7-form-control.wpcf7-textarea {
    width: 80%;
    height: 150px;
}

input.wpcf7-form-control.wpcf7-submit {
    width: 20%;
    padding: 4px;
    border-radius: 5px;
    background: #fd5875;
    color: #fff;
    font-size: 20px;
    letter-spacing: 10px;
}

/*********************************************************************************
                                 レスポンシブ
***********************************************************************************/

@media only screen and (max-width: 979px) {
    html {
        overflow-x: hidden;
    }

    body {
        width: 100%;
    }

    main {
        width: 100%;
    }

    #menuList,
    #image-bloc,
    div.net,
    div.organization {
        position: relative;
        z-index: 10;
        margin: 0;
        padding: 0;
        clear: both;
    }

    div.service,
    div.step,
    div.partner,
    div.form,
    div.net {
        margin-top: 60px;
        margin-bottom: 0px;
    }

    div.keiei,
    div.syakai,
    div.support_discription,
    div.kojin {
        padding: 3px;
		width:90%;
		margin:0 auto;
    }

    h1 {
        font-size: 24px;
        line-height: 130%;
    }

    h2 {
        font-size: 22px;
    }

    h3 {
        font-size: 18px;
    }

    p {
        font-size: 15px;
        line-height: 160%;
        padding: 1px 0;
    }

    p.syunan {
        font-size: 22px;
        margin-left: 20px;
    }

    div.border,
    div.border_1,
    .border_2 {
        width: 14%;
        margin-top: 8px;
    }
    /* ------------------------------
    ヘッダー
    ------------------------------ */
    header {
        margin: 0;
        width: 100%;
    }

    div#container {
        margin: 10px 0 10px0;
    }

    /*アコーディオンナビ*/
    #menu {
        display: block;
    }

    #dropmenu {
        display: none;
    }

    .ha_sp {
        list-style: none;
        display: block;
        height: 55px;
        margin: 0 auto;
        padding: 3px;
    }

    ul#sp_menu li {
        padding: 10px;
    }

    ul#sp_menu li ul {
        display: none;
    }

    ul#sp_menu li a {
        margin: 0;
    }

    a.sab {
        font-size: 17px;
    }

    ul#sp_menu li ul li {
        width: 100%;
        vertical-align: middle;
        font-size: 17px;
        color: #000;
        padding: 5px 5px;
    }

    ul#sp_menu li ul li:hover > a {
        color: #000;
        text-align: center;
    }

    ul#sp_menu li:hover ul {
        display: block;
    }

    ul#sp_menu li ul li {
        padding: 6px 0 0;
        display: block;
        border: none;
    }

    nav ul li a {
        font-size: 17px;
    }

    nav {
        width: 100%;
    }

    nav ul li {
        width: 90%;
        margin: 0 auto;
    }

    ul#sp_menu {
        position: fixed;
        top: 0;
        right: -100%;
        /*ボタンクリック前*/
        width: 100%;
        /*ボタンクリック後*/
        height: 100%;
        z-index: 99;
        background: #fff;
    }

    ul#sp_menu ul li {
        display: block;
        position: relative;
    }

    ul#sp_menu ul li a {
        color: #000;
        display: block;
        text-decoration: none;
        border-bottom: solid 1px #ccc;
        padding: 15px 0 5px;
        font-size: 15px;
    }

    .slide-menu-button {
        position: fixed;
        top: 0;
        right: 0;
        z-index: 9999;
    }

    .slide-menu-button {
        display: block;
        margin: 10px;
        float: left;
        cursor: pointer;
    }

    .slide-menu-button {
        display: block;
        width: 30px;
        height: auto;
        margin-bottom: 4px;
    }

    a.so {
        width: 45px;
        height: 45px;
        display: block;
        font-size: 14px;
        background: #fff;
        margin-right: 14px;
        margin-top: 10px;
        position: fixed;
    }

    label {
        font-size: 16px;
    }


    label input.sub-btn {
	display: block;
    margin: 0 auto;
}

    input[type="email" i]{
    	 height: 35px;
         width: 100%;
    }

    /*追加css*/
    #sp_menu li ul,
    #sp_menu li input {
        display: none;
    }

    #navin01:checked ~ ul,
    #navin02:checked ~ ul {
        display: block;
    }
    /*ハンバーガーメニュー*/
    .menu1,
    .menu2,
    .menu3 {
        width: 70%;
        height: 2px;
        background: #bbb;
        margin-top: 8.7px;
        margin-left: 7px;
    }
    /*---------------------上に戻るボタン---------------*/
    #return-top {
        /*bottom: 10px;
        outline: 0;
        right: 7%;
        width: 12px;
        height: 12px;
        border: 3px solid;
        border-color: #bbb #bbb transparent transparent;
        */
        display: none;
    }
    /*-------------------------------
    スライダー
    ------------------------------*/
    .bg-slider {
        width: 100%;
        height: 200px;
    }

    /***********トップページ ボタン*********/
    a.button {
        width: 140px;
        margin: 0 auto;
    }

    /******div.next************/
    div.next {
        position: relative;
        z-index: 10;
        margin: 0;
        padding: 0;
    }
    /*けすかも*/
    div.next p {
        padding: 0 4px 20px;
    }

    .border_1 {
        background: #fff;
    }

    /*********ニュース************/
    .topics {
        width: 93%;
    }
    /********div.service********/
    div.section {
        width: 30%;
    }

    .section1 img {
        margin: 4px;
    }

    div.section1 {
        padding: 0px;
        margin: 0px;
    }

    div.line_type {
        width: 88%;
        margin: 0 auto;
    }

    div.section1 p#type {
        font-size: 24px;
    }

    p#type a {
        color: #ccc;
    }

    ul.net_e li.baner {
        margin: 0px 10px 0px 10px;
    }
    /**********div.step*******/
    div.step img {
        margin-top: 0px;
        width: 95%;
        margin: 0 auto;
    }
    /*************div.partner*****/
    div ul.hoken ul li {
        width: 40%;
        display: inline-block;
    }

    div ul.hoken li img {
        margin: 10px 15px 0 0;
        width: 90%;
    }
    /******div.organization*******/
    div.organization {
        margin: 0;
        padding: 0px 0px 15px;
        overflow-x: hidden;
    }

    div.organization p {
        margin-bottom: 15px;
    }
    /*********div.form**********/
    ul.toiawase {
        margin-top: 15px;
    }

    div.form .section2 ul li {
        width: 80%;
        margin-top: 10px;
    }

    div.form .toiawase li {
        width: 100px;
        height: auto;
    }

    ul.toiawase li.orange,
    li.mosgreen {
        padding: 5px;
        position: relative;
        display: inline-block;
        text-decoration: none;
        font-weight: bold;
        width: 150px;
        padding: 22px 11px;
        border-radius: 20px;
    }

    ul.toiawase li.orange a,
    li.mosgreen a {
        color: #fff;
    }

    div.form .button_form {
        border-radius: 8px;
        border: solid 1px #000;
        background: #eee;
    }
    /*********div.net********/
    div.net {
        margin-top: 0;
    }

    div.net h2 {
        margin-top: 0;
        padding-top: 20px;
    }

    div.net ul.net_e li {
        display: inline-block;
        margin: 0 auto;
        padding: 4px 3px;
    }

    ul.net_e li,
    ul.hoken li {
        width: 39%;
        vertical-align: top;
    }

    ul.net_e li img {
        width: 100%;
    }
    /******パートナー企業***********/
    div.company {
        background-image: url(../img/back001a.jpg);
        position: relative;
        z-index: 10;
        margin: 0;
        padding: 4px;
        height: auto;
        max-width: 100%;
        background-position: center;
        background-size: cover;
    }
    /***********サポート**********/
    div.kyoudho {
        display: inline-block;
        width: 90%;
        text-align: left;
        margin: 0 30px;
    }

    div.kyoudho img {
        text-align: center;
    }
    /***********経営方針/反社会方針*************/
    div.keiei p {
        margin-top: 22px;
    }

    div.keiei h4,
    div.syakai h4,
    div.syakai p {
        text-align: left;
    }

    div.keiei {
        margin-top: 20px;
    }

    div.syakai {
        margin-top: 65px;
    }
    /**************個人情報**************/
    .kojin p {
        margin-top: 20px;
    }
    /**************保険の基礎知識****************/
    description img {
        width: 100%;
    }

    .description1 img,
    .description1 p {
        width: 100%;
        padding: 6px;
    }

    section.p_tishiki {
        width: 95%;
    }

    p#matome {
        font-size: 20px;
        letter-spacing: 2px;
    }

    div.seimei {
        width: 100%;
        vertical-align: top;
        text-align: left;
        padding: 13px;
        margin-top: 10px;
    }

    div.seimei img,
    div.left {
        width: 100%;
    }

    div.hoken {
        margin-top: 80px;
    }

    h4 {
        font-size: 20px;
        margin: 10px 0 9px 0;
        letter-spacing: 2px;
        line-height: 150%;
    }

    h5 {
        font-size: 17px;
    }

    img.sankaku,
    .description1 img,
    .description1 p,
    div.seimei img,
    div.left {
        width: 97%;
    }

    span.blue {
        font-size: 15px;
    }

    .tigai {
        width: 90%;
        margin: 7px 4px;
    }
    /*************保険のラインナップ*********/
    div.syurui {
        margin-top: 0px;
        width: 95%;
        margin: 0 auto;
    }

    div.ho_1 {
        width: 95%;
        margin: 0 auto;
    }

    div.ho_1 img.big {
        width: 50%;
        height: auto;
    }

    div.ho_1 h4 {
        font-size: 20px;
    }

    div.ho_1 p {
        letter-spacing: 2px;
    }

    div.syurui hr {
        display: none;
    }

    div#kjn,
    div#hjn {
        padding: 3px;
    }
    /**************代表メッセージ**********/
    div.mes img {
        width: 100%;
    }

    div.keiei p {
        font-size: 110%;
    }

    div.mes {
        padding: 3px;
    }

    div.mes p {
        margin-top: 20px;
        line-height: 175%;
    }

    span.bold {
        font-weight: 600;
        color: #000;
    }
    /**********店舗・会社情報*************/
    div.tizu {
        height: auto;
    }

    td.jy {
        margin-top: 10px;
    }

    td {
        border-bottom: none;
        padding: 8px;
        line-height: 165%;
        display: block;
        margin-top: -5px;
    }
    /**************よくある質問***************/
    img.img_qa {
        width: 100px;
        margin-right: 0px;
    }

    div section.right {
        width: 100%;
        text-align: left;
        margin: 0;
    }

    div.qa {
        margin-top: 10px;
    }

    div.q-a {
        padding: 5px;
    }
    /************取扱保険***************/
    ul.net_hoken li {
        width: 90%;
    }

    div.box_1 {
        margin: 40px 0;
    }

    .description,
    #matome,
    .hoken {
        padding: 3px;
    }

    div.text p,
    div.description p {
        font-size: 15px;
        line-height: 140%;
    }

    #space {
        padding: 4px 0;
    }

    a .telp {
        font-size: 20px;
        padding: 4px;
    }

    a.telp {
        font-size: 5vw;
    }

    p#space {
        margin-bottom: 10%;
    }

    /*----------------------
    パートナー企業
    ------------------------*/
    table.partner_more {
        margin: 10px 0;
        width: 90%;
    }

    table.partner_more tr td {
        display: table-cell;
    }

    table.partner_more td:nth-child(2) {
        width: 65%;
    }

    table.partner_more tr td:first-child {
        width: 30%;
    }

    div.partner img {
        width: 75%;
    }

    /*問い合わせフォーム*/
    form_wp {
        padding: 5px;
        width: 100%;
    }

    form.wpcf7-form {
        margin: 0 auto;
    }

    .kuma p {
        text-align: left;
        padding: 1px 2px;
    }
    /*全体*/
    select {
        width: 240px;
        height: 26px;
    }
    /*チェックボックス*/
    input.wpcf7-form-control.wpcf7-submit {
    border: solid 1px #bbb;
    padding: 8px 20px;
    -webkit-appearance: none;
    width: 35%;
    }

    .checkbox-456{
    width: auto;
    padding: 5px;
}

    div.next h1 {
        position: relative;
        z-index: 10;
        margin: 0;
        padding: 0;
        padding-top: 10px;
        padding-bottom: 10px;
        background: #f8b336;
    }
    .form_wp {
        padding: 5px;
        width: 100%;
    }
    /***********問い合わせフォーム************/
    div#container {
        width: 90%;
        margin: 0 auto;
        overflow: hidden;
    }

    #formArea {
        margin: 0px;
    }

    #formArea .fBlock {
        padding: 15px 20px;
        margin: 0 0 30px;
        background: #eee;
    }

    #formArea .fBlock .h {
        font-weight: bold;
    }

    #formArea table.fm {
        width: 100%;
        color: #000;
    }

    tbody {
        display: table-row-group;
        vertical-align: middle;
        border-color: inherit;
    }

    #formArea table.fm tr {
        border-top: 1px solid #999;
        vertical-align: top;
		text-align: left;
		display: block;
    }

    #formArea table.fm th {
        width: 25%;
        padding-bottom: 0;
        font-weight: bold;
    }

    span.iconHissu {
        font-size: 10px;
        line-height: 100%;
        padding: 2px 3px;
        margin: 0 10px 0 0;

    }

    input[type="text"],
    input[type="tel"],
    textarea {
        width: 100%;
        padding: 5px 1%;
        border: none;
        border-radius: 3px;
        line-height: 1.3;
    }

    input[type="text"],
    input[type="tel"] {
        height: 25px;
        border: solid 1px #eee;
        margin-bottom: 10px;
    }

    #formArea table.fm th span.iconHissu {
        margin: 0 0 0 4px;
    }

    #formArea table.fm td {
        padding: 30px 0;
		border-top:none;
		margin: 0 auto;
    }

    select {
        border: 1px solid #ddd;
    }

    .wpcf7-mail-sent-ok{
    	margin-top: 50px;
    }

    .last-buttom{
    	margin-bottom: 50px;
    }

    select,
    input,
    button,
    textarea,
    button {
        font: 99% arial, helvetica, clean, sans-serif;
        padding: 0;
    }

    .btnWrap {
        text-align: center;
        margin: 40px 0 0;
    }

    .kuma {
        margin-top: 40px;
    }

    .kuma p {
        text-align: left;
    }

    textarea.wpcf7-form-control.wpcf7-textarea {
        border: solid 1px #eee;
        width: 100%;
        height: 140px;
    }

    .person{
    	width: 100%;
    }

    .flont-back p{
    	font-size: 13px;
    }

    .flont-back{
    	width: auto;
    }
    /*************footer************/
    footer {
        padding-bottom: 20px;
        background: #4e4e4e;
        z-index: 999;
        margin: 0;
        padding: 0;
        clear: both;
        text-align: center;
    }

    footer div.live {
        width: 100%;
        padding: 0 3px;
    }

    footer p,
    footer ul li a {
        font-size: 13px;
        margin-bottom: 9px;
        padding-bottom: 0;
        text-align: center;
    }

    footer a,
    div.tenpo p,
    p#kabu {
        color: #fff;
    }

    p#kabu {
        font-size: 15px;
        margin-left: 0px;
        padding-top: 8px;
    }

    footer ul.list {
        margin-bottom: 16px;
        width: 95%;
    }

    footer ul li {
        margin-top: 9px;
        width: 45%;
        display: inline-block;
    }

    footer small {
        color: #fff;
    }

    /*==================
    ワードプレスお知らせ
    ==================*/

    .news-topics{
        display: none!important;
    }


    div#contents {
        width: 100%;
    }

    div#main {
        width: 95%;
        margin: 0 auto;
    }

    /*サイドバー*/
    div#side {
        width: 90%;
        margin: 0 auto;
        padding: 0 7px;
    }

    .widget-container h3 {
        border-bottom: dotted 2px #eee;
        font-size: 19px;
    }
    /*ワードプレス お知らせ ここまで*/
    /*--------------------------
タブレット
-----------------------------*/
    @media only screen and (min-width:1023px) {
        html {
            overflow-x: hidden;
        }

        body {
            width: 100%;
        }
        main {
            margin: 0 auto;
        }

        #menuList,
        #image-bloc,
        div.net,
        div.organization,
        div.next {
            margin: 0;
            padding: 1px 0;
        }

        .section1 img {
            width: 90%;
            margin: 0 auto;
        }
        /**************div.organization**********/
        div.organization {
            margin: 0 -5%;
            padding: 0;
            padding-bottom: 45px;
            padding-top: 1px;
        }
        /*********パートナー企業*************/
        div.company {
            margin: 0 -100%;
            padding: 0 100%;
        }
        /*------------------------
    footer
    -------------------------*/
        footer {
            padding-bottom: 20px;
            background: #4e4e4e;
            z-index: 999;
            margin: 0 -100%;
            padding: 0 100%;
            clear: both;
        }
        /*アコーディオンナビ*/
        nav ul {
            display: inline-block;
            width: 100%;
        }

        nav ul.menu li {
            width: 9%;
            display: inline-block;
        }

        nav ul.menu li a {
            font-size: 13px;
        }

        #menuList,
        #image-bloc,
        div.net,
        div.organization,
        div.next {
            position: relative;
            z-index: 10;
            margin: 0 -100%;
            padding: 1px 100%;
        }

        .ha_sp {
            display: none;
        }
        /*スマホ用ロゴ*/
        #menuList ul li:hover > a {
            color: #9a9a9a;
        }

        #menu {
            display: none;
            z-index: 9;
        }

        #dropmenu {
            display: block;
        }

        #dropmenu {
            list-style-type: none;
            height: 40px;
            margin: 15px auto 15px;
            padding: 0;
            display: block;
        }

        #dropmenu li {
            position: relative;
            width: 9%;
            display: inline-block;
            margin: 0;
            padding: 0;
            text-align: center;
            font-size: 14px;
        }

        #dropmenu li a {
            display: block;
            margin: 0;
            color: #000;
            font-size: 14px;
            line-height: 1;
            text-decoration: none;
        }

        #dropmenu li ul {
            list-style: none;
            position: absolute;
            left: 0%;
            right: 0;
            top: 100%;
            background: #fff;
            height: 0;
        }
        /*ドロップダウンメニューの位置調整*/
        #dropmenu li ul li {
            overflow: hidden;
            width: 100%;
            height: 0;
            color: #000;
            vertical-align: middle;
            -moz-transition: 0s;
            -webkit-transition: 0s;
            -o-transition: 0s;
            -ms-transition: 0s;
            transition: 0s;
        }

        #dropmenu li ul li a {
            font-size: 12px;
            padding: 0 2px;
        }

        #dropmenu li:hover > a {
            color: #ddd;
            text-align: center;
        }

        #dropmenu li:hover ul li {
            overflow: visible;
            height: 25px;
            padding: 10px 2px 0px;
            border-bottom: 1px solid #eee;
            background: #fff;
            display: block;
            vertical-align: middle;
            z-index: 99;
            /*要素の上にかぶせる*/
            text-align: center;
            margin: 0 auto;
        }
        /*---------------------上に戻るボタン---------------*/
        #return-top {
            /*
        bottom: 10px;
        outline: 0;
        right: 7%;
        width: 12px;
        height: 12px;
        border: 3px solid;
        border-color: #bbb #bbb transparent transparent;*/
            display: none;
        }
        /*ワードプレス お知らせ*/
        div#primary {
            width: 980px;
            margin: 0 auto;
        }
    }

    /*=================================
IE対応
===================================*/
    @media all and (-ms-high-contrast: none) {
        div.next h1,
        div.next p,
        div.topics,
        div.service,
        div.step,
        div.organization h2,
        div.organization p,
        div.net h2,
        ul.net_e,
        div.partner,
        div.company h2,
        div.company p,
        div.form,
        div.shop_1,
        div.mes,
        .content-area,
        div#kjn,
        div#hjn,
        div.text,
        div.description,
        div.sankaku,
        div.hoken,
        div.seimei,
        div.q-a,
        div.kuma,
        div.support_discription,
        div.s_2,
        div.keiei,
        siv.syakai,
        div.kojin {
            max-width: 980px;
            margin: 0 auto;
        }

        div.description img {
            width: 80%;
            margin: 0 auto;
        }

        div.kuwasiku {
            padding: 5px;
            margin: 0 auto;
            max-width: 980px;
        }
    }
    
    
    
    
    
    
    
        /*----------------------------
カード
-----------------------------*/
.card-sec {
    padding-top: 60px; /* ページタイトルの上の余白 */
    padding-bottom: 142px; /* カード下の余白*/
}
 
.page-title {
    position: relative;
    color: #333333;
    font-size: 60px;
}
    
    .card-item img{
        width: 100%;
    }
 
.page-title:before { /* page-titleの下線 */
    display: inline-block;
    position: absolute;
    width: 76px;
    height: 5px;
    border-radius: 2px;
    background-color: #3F51B5;
    content: '';
    bottom: -42px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

