	/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
    font-style:normal;
    font-weight:normal
}



@font-face {
    font-family: 'webfont';
    src: 
    url('/font/ZenKakuGothicNew-Black.ttf')  format('ttf'),
    url('/font/ZenKakuGothicNew-Light.ttf')  format('ttf'),
    url('/font/ZenKakuGothicNew-Medium.ttf')  format('ttf'),
    url('/font/ZenKakuGothicNew-Regular.ttf')  format('ttf'),
    url('/font/ZenKakuGothicNew-Bold.ttf')  format('ttf');
}

h1,h2,h3,h4,p,li,a {
    font-family: 'webfont', sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #3c3c3c;
  }
  
img {
	width: 100%;
	vertical-align:top;
}

body {
    padding-bottom: 100px;
}

a {
    color: #0062b0;
    transition: .2s;
}
a:hover {
    opacity: .7;
    transition: .2s;
}



/* ----- KV ----- */
.kv {
    text-align: center;
}
.kv p {
    font-size: 1.2rem;
    background-color: #0062b0;
    padding: 2% 5% 5%;
    color: #fff;
}
.triangle {
    max-width: 200px;
}




/* ----- 生命共済ラインナップ ----- */
.lineup {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
    text-align: center;
}
.lineup_title_img {
    max-width: 600px;
}
.lineup_title {
    position: relative;
    padding: 0.5em 0.7em;
    background: #0062b0;
    color: #fff;
    font-weight: bold;
}
.lineup_title:after {
    position: absolute;
    content: '';
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    border: 100px solid transparent;
    border-top: 30px solid #0062b0;
    width: 0;
    height: 0;
}
.lineup_title h2 {
    color: #fff;
    text-align: center;
    font-size: 2.4rem;
    margin: 0; 
    padding: 2%;
}
.lineup_wrap {
    background-color: #d3eaf8;
}
.kojin {
    max-width: 550px;
}
.kojin img {
    width: 90%;
    max-width: 550px;
}




/* ----- 特約コース ----- */
.tokuyaku {
    border-bottom: 8px solid #0062b0;
}
.tokuyaku_title_img {
    width: 90%;
    max-width: 800px;
    margin: 0 auto;
}
.kome {
    font-size: 1.8rem;
    font-weight: 600;
    color: #0062b0;
    margin: 20px auto;
}




/* ----- 共済金支払い事例 ----- */
.ex {
    width: 100%;
    margin: 20px auto 0;
    text-align: center;
}
.ex_title_img {
    max-width: 600px;
} 
.bg_wrap {
    background-color: #fff5d7;
}




/* ----- シミュレーションボタン ----- */
.simulation {
    width: 90%;
    max-width: 600px;
    margin: 5% auto;
}




/* ----- サービス ----- */
.service {
    background-color: #e6e6e5;
    text-align: center;
    padding-bottom: 4%;
}
.service_title_img {
    max-width: 600px;
    margin-top: 2%;
}
.service .sv_flex img {
    width: 90%;
    height: auto;
    max-width: 400px;
    margin: 10px;
}
.service .bg_wrap {
    width: 90%;
    max-width: 920px;
    background-color: #fff;
    padding: 5% 2%;
    margin: 0 auto;
    border-radius: 20px;
    box-shadow: 5px 5px 10px rgb(198, 198, 198);
}
.sv_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}



/* ----- 青ボタン3つ ----- */
.blue {
    width: 90%;
    max-width: 1000px;
    margin: 10% auto;
}
.blue_flex a {
    text-align: center;
}
.blue_flex img {
    width: 90%;
    height: auto;
    max-width: 300px;
    margin: 10px auto;
}
.blue_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}



/* ----- お問い合わせ ----- */
.contact {
    width: 90%;
    text-align: center;
    margin: 5% auto;
}
.contact h3 {
    display: inline-block;
    font-size: 1.6rem;
    border-bottom: 4px solid #0062b0;
    margin-bottom: 20px;
}
.tel {
    font-size: 1.3rem;
    margin: 10px auto;
    color: #3c3c3c;
    text-decoration-line: none;
}
.tel span {
    font-size: 1.6rem;
}
.tel .huru {
    font-size: 1rem;
}


/*---------------
ページのトップに戻るボタン
---------------*/
h2{
    text-align: center;
    margin-bottom: 30px;
  }
  #page_top{
      width: 50px;
      position: fixed;
      right: 0;
      bottom: 8.5%;
      background: #0062b0;
      z-index: 999;
  }
  #page_top a{
      position: relative;
      display: block;
      width: 50px;
      text-decoration: none;
    padding: 25px;
    height: 0;
    background-color: #0062b0;
}
#page_top a::before {
    content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translate(-50%,-25%) rotate(-45deg);
}
  




/* ----- フローティングバナー ----- */
.flo {
    background-color: #2da0dc;
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 999;
}
.flo_flex {
    display: flex;
    justify-content: center;
}
.flo_flex a {
    max-width: 250px;
    margin: 1%;
}



/*---------------------
	PCとスマホの切り替え
-----------------------*/
.pc_view {}

.sp_view {
    display: none;
}



@media screen and (max-height: 630px) {
    .sarani.sp_view,.kojin.sp_view {
        margin: 0 auto;
    }
    .blue {
        max-width: 600px;
        text-align: center;
    }
    
}

@media screen and (max-width:520px){
    .kv p {
        font-size: 1rem;
        padding-bottom: 30px;
    }
    .triangle {
        max-width: 120px;
    }
    .kome {
        font-size: 1.0rem;
        margin: 10px;
    }
    .lineup_title h2 {
        font-size: 1.6rem;
    }
    .sarani {
        width: 90%;
        max-width: 300px;
        margin: 0 auto;
    }
    .simulation {
        text-align: center;
        margin: 40px auto;
    }
    .simulation img {
        max-width: 90%;
    }
    .service_title_img {
        max-width: 350px;
        margin: 20px auto 0;
    }
    .sv_flex a {
        max-width: 300px;
    }

    .blue_flex {
        text-align: center;
        max-width: 270px;
        margin: 0 auto;
    }
    .blue_flex img {
        width: 100%;
    }
    .kojin {
        width: 85%;
        margin: 0 auto 20px;
    }

    .contact {
        margin-bottom: 50px;
    }
    .contact h3 {
        font-size: 1.3rem;
    }
    .contact p {
        font-size: .8rem;
    }
    .tel {
        font-size: 1.0rem;
    }
    .tel span {
        font-size: 1.2rem;
    }

    .flo_flex a {
        margin: 2% 1%;
    }
    .flo_flex {
        padding: 0 10px;
    }

/*---------------------
	PCとスマホの切り替え
-----------------------*/

    .pc_view {
        display: none;
    }
    .sp_view {
        display: block;
    }
}

