@charset "utf-8";
/*reset*/
/*******************************************************************/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,select,textarea,p,blockquote,th,td { margin: 0; padding: 0;}
address,caption,cite,code,dfn,em,strong,th,var { font-style: normal;}
table { border-collapse: collapse; border-spacing: 0;}
object,embed { vertical-align: top;}
hr,legend { display: none;}
h1,h2,h3,h4,h5,h6 { font-size: 100%;}
img { border: 0; vertical-align: middle;}
li { list-style: none;}
a:link { color: #069; text-decoration: underline;}
a:visited { color: #069; text-decoration: underline;}
a:hover { color: #F12C44; text-decoration: none;}
a:active { color: #069; text-decoration: none;}
strong { color: #069;}
.center { text-align: center;}
.right { text-align: right;}
.clear { clear: both;}
.fr { float: right; padding: 0 0 30px 30px;}
.fl { float: left; padding: 0 30px 30px 0;}
.fr img, .fl img { padding: 4px; border: #CCC solid 1px;}
.attention { color: #F30;}
.mb { margin-bottom: 40px!important;}
.pb5 { padding-bottom: 5px!important;}


/*LAYOUT*/
/*******************************************************************/
body { text-align: center; background: #FFF url(../images/common/back.jpg) 0 0 repeat-x; font: 81.25% "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #000;}
#container { line-height: 1.7; font-size: 100%;}
#header, #main, .in { position: relative; width: 980px; margin: 0 auto; text-align: left;}
#wrap { padding-top: 25px;padding-bottom:25px;background: url(../images/common/bg.jpg) 0 0 repeat-y;background-size:cover;}
#main { margin: 0 auto; 
  background: rgba(255,255,255,0.8);}


/*HEADER*/
/*******************************************************************/
#header { position: relative; height: 118px;}
#header h1 { font-size: 77%; color: #FFF;}
#logo { position: absolute; top: 30px; left: 0;}
#header p { position: absolute; top: 40px; right: 0;}
#header p img { padding-left: 22px;}

#bread { width: 980px; margin: 0 auto; text-align: left; font-size: 85%; font-weight: bold; color: #FFF;}
#bread a { text-decoration: none; color: #FFF;}


/*FOOTER*/
/*******************************************************************/
.pt { clear: both; padding-right: 5px; text-align: right;}
#footer { clear: both; padding-top: 20px; background: #069; font-size: 85%; color: #FFF;}
#footer ul { border-left: #FFF solid 1px;}
#footer li { float: left;}
#footer li a { padding: 0 10px; border-right: #FFF solid 1px; text-decoration: none; color: #FFF;}
#footer li a:hover { color: #FFC;}
#footer address { clear: both; padding: 20px 0; text-align: center;}


/*ASIDE*/
/*******************************************************************/
#aside { float: left; width: 250px;}
#aside p { padding-bottom: 10px; text-align: center;}
#aside ul { margin-bottom: 10px; padding: 4px 4px 0; background: #EFEFEF; border: #CCC solid 1px;}
#aside li { padding-bottom: 4px;}
.insurance { padding: 20px 0;}
.info { margin-bottom: 10px; padding: 10px; border: #CCC solid 1px;}
.info dt, .info dd { padding: 10px 0; border-top: #000 dotted 1px; line-height: 1.4;}
.info dt { font-weight: bold;}


/*CONTENTS*/
/*******************************************************************/
#contents { float: right; width: 930px; min-height: 460px; padding: 25px;}
#contents h3 { margin-bottom: 20px;}
#contents p { padding-bottom: 20px;}
.title { clear: both; margin-bottom: 20px; padding: 10px;background: #069; line-height: 1.2; font-size: 153.9%; color: #FFF; -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; behavior: url(border-radius.htc);}
h3.contract { background-color: #00A3D9;}
h3.accident { background-color: #796BAF;}
.st { clear: both; margin-bottom: 10px!important; border-bottom: #A0D8EF solid 2px; font-size: 138.5%; color: #069;}
.sub { clear: both; margin-bottom: 10px; padding: 5px 10px; background: #EEE; font-size: 108%;}
.large { font-size: 20px; font-weight: bold;}

.button_solid003 a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto 30px;
    max-width: 240px;
    padding: 10px 25px;
font-size: 130%;
    color: #FFF;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    background: #1E90FF;
    filter: drop-shadow(0px 2px 4px #ccc);
    border-radius: 3px;
    border-radius: 50px;
    overflow: hidden;
text-decoration: none;
}
.button_solid003 a:before{
content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: -100%;
    background-image: linear-gradient( 
130deg, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 55%);
    -webkit-transition: 0.5s;
    transition: 0.6s;
}
.button_solid003 a:hover:before {
    left: 100%;
}


.ul, .ol { margin: 0 0 30px 30px;}
.ul li { list-style: disc;}
.ol li { list-style: decimal;}

.ts { width: 100%; margin-bottom: 30px; background: #FFF; border-top: #CCC solid 1px; border-left: #CCC solid 1px;}
.ts th, .ts td { padding: 10px; vertical-align: middle; border-right: #CCC solid 1px; border-bottom: #CCC solid 1px;}
.ts th { width: 150px; background: #EEE;}
.price { margin-bottom: 10px; text-align: center;}
.price th, .price td { padding: 10px 0; font-size: 85%; line-height: 1.3;}
.price th { width: auto; font-weight: normal;}
.price td { font-weight: bold; color: #F60;}
.form th, .form td { padding: 15px;}


/*TOP*/
.back { background: url(../images/top/main_back.jpg) 0 bottom repeat-x;}
.back2 { background: url(../images/top/main_back.jpg) 0 0 repeat-x;}
.topimg { min-width: 980px; height: 250px; background: url(../images/top/main.jpg) center 0 no-repeat;}
.topimg h2 { position: absolute; top: 30px; left: 40px;}
.topcontract { position: absolute; top: 30px; left: 530px; width: 218px;}
.topaccident { position: absolute; top: 30px; right: 0; width: 218px;}
.topcontract p, .topaccident p { position: absolute; top: 110px; left: 15px; width: 190px; line-height: 1.5;}
.topcontract div, .topaccident div { position: absolute; top: 260px; left: 10px; width: 200px; text-align: center;}
.list li { float: left; width: 315px; margin: 0 0 20px 30px;}
.first { margin-left: 0!important;}
.list dt a { display: block; padding: 5px 0 5px 14px; background: url(../images/common/arrow.png) 0 center no-repeat; font-weight: bold;}
.list dd { font-size: 93%; line-height: 1.3;} 
.three li { width: 200px;}
.news { margin-bottom: 30px; font-size: 93%; line-height: 1.4;}
.news dt { float: left; clear: left; width: 90px; padding: 6px 5px 6px 15px; background: url(../images/common/arrow.png) 0 center no-repeat;}
.news dd { padding: 6px 0 6px 115px; border-bottom: #006686 dotted 1px;}


/*PAGE*/
.mainimg { min-width: 980px; height: 150px; background: url(../images/common/main.jpg) center 0 no-repeat;} 
.mainimg h2 { width: 980px; margin: 0 auto; padding: 50px 0 10px; text-align: left; font-size: 36px; letter-spacing: 0.1em; color: #FFF;}
.column li { margin-bottom: 20px; padding: 20px 10px; border: 1px solid #CCC; border-radius: 4px;}
.column li::after { content: ''; display: block; clear: both;}
.column .img { float: left; border-radius: 4px;}
.column dl { float: right; width: 470px;}
.column dt { margin-bottom: 10px; line-height: 1.2; font-size: 20px; font-weight: bold;}
ul.contract dt { color: #00A3D9;}
div.accident { margin-bottom: 20px; padding: 20px 20px 0; border: 1px solid #CCC; border-radius: 4px;}
div.accident .st { border-color: #796BAF; color: #796BAF;}
.greeting { float: right; width: 400px;}
.contact { padding: 40px 250px 40px 10px; background: url(../images/contact/img.jpg) right top no-repeat;}
.inbox { display: inline-block; padding: 1px 5px; border: 1px solid #666;}


/*HACK*/
/*******************************************************************/
/*clear*/
.cf { display: inline-block;}
.cf:after { content: "."; clear: both; display: block; height: 0; visibility: hidden;}
/*Hides from IE-mac\*/
* html .cf {height:1%;}
.cf { display:block;}
/*End hide from IE-mac*/
