@charset "UTF-8";

/* layout
**************************************************************************************************************************/
body { background: #fff; }
body.has-bg .bg { background:url(../img/type-a/bg.jpg) no-repeat 50% 0; background-size: cover; min-height: calc(100vh - 81px); }
body.nobg { }


/* common
**************************************************************************************************************************/
.tosp { text-align: center; background: #fff; padding: 20px 0; }
.header {text-align: center;padding: 0px 0 60px 0;}
.header .logo { padding: 11px 0 11px 0; }
.has-headerbg .header .logo { background: #fff; }
.header .logo img { height: 55px; width: auto;}
.contents { padding: 0 11px; }
.contents > .inner { padding: 0 0 60px 0; max-width: 800px; margin: 0 auto; }
.dflt-sns { display: table; width: 100%; margin-bottom: 20px; }
.dflt-sns .block,
.dflt-sns .sep{display: table-cell;vertical-align: top;}
.dflt-sns .sep { width: 10px;}
.dflt-sns .block:nth-of-type(1) {/* width: 460px; */padding-left: 30px;padding-right: 30px;}
.dflt-sns .block:nth-of-type(2) { width: 330px; }
.block { margin-bottom: 20px;}
.block:last-of-type { margin-bottom: 0;}
.block > .inner {/* max-width: 380px; */margin: 0 auto;}
.block > .inner.wide { max-width: none; }



/* news */
.news { }
.news ul { }
.news li {/*font-size: 12px;*/padding: 15px;line-height: 1.5;border-bottom: 1px solid #ccc;}
.news li:last-of-type { border-bottom: 0; margin-bottom: -15px;}
.news small { color: #999; font-size: 10px; display: block; float: left; margin-right: 43px; margin-top: 3px;}
.news li span { overflow: hidden; display: block;; }


/* block */
.block { background:rgba(255,255,255,1); box-shadow: 0 4px 8px 0 rgba(0,0,0,0.20); padding: 30px 40px; }
.is-transparent .block { background:rgba(255,255,255,0.8); }

/* headline */
.hl01 { text-align: center; color: #222222; font-size: 14px; font-weight: bold; position: relative; margin-bottom: 15px; }
.hl01::before { content: ''; display: block; width: 75px; height: 1px; background: #DEDEDE; position: absolute; position:absolute; top:50%; left: 0; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); z-index: 1;  }
.hl01::after { content: ''; display: block; width: 75px; height: 1px; background: #DEDEDE; position: absolute; position:absolute; top:50%; right: 0; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); z-index: 1;  }
.hl01 span { background: #fff; display: inline-block; padding: 0 5px; position: relative; z-index: 2;}
.is-transparent .hl01 span { background: none; }
.hl02 { font-size: 35px; font-weight: bold; border-bottom: 2px solid #005BAB; padding-bottom: 7px; line-height: 1; }
.hl02 span { display: inline-block; background:url(../img/common/blt01.png) 0 50% no-repeat; padding-left: 18px; }




/* varie */
body.nobg .header .logo { border-bottom: 1px solid #dfdfdf; }
body.nobg .footer { border-top: 1px solid #dfdfdf; }
body.nobg .msg { box-shadow: none; }
body.nobg .block {border: 2px solid #005BAB;box-shadow: none;}
body.nobg .block.nobd { border: 0; padding: 0; margin-bottom: 40px; margin-top: 40px; }
body.nobg .block.has-bg { background: #F5F6FA; padding: 13px; }

/* reset,preset
**************************************************************************************************/

body { line-height:1; margin:0; }
h1, h2, h3, h4, h5, h6{ margin: 0; font-weight: lighter;}
p { line-height:1.5; margin: 0; }
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section
{	display:block; }
hr { display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0; }
ul { list-style:none; margin:0; padding:0; }
li { margin:0; padding:0; }
input, select { vertical-align:middle; }
img { vertical-align:middle; }
:placeholder-shown
::-webkit-input-placeholder,
:-ms-input-placeholder { color: #D2D2D2;}



/* fontsize,color
**************************************************************************************************/
body { font:100% sans-serif; /* -webkit-text-size-adjust: 100%; */ }
select,input,button,textarea { font:99% helvetica,arial,clean,sans-serif }
table { font-size:inherit;font:100% }
pre,code,kbd,samp,tt { font-family:monospace;*font-size:108%;line-height:100% }
.serif { font-family: serif; }
.sanserif { font-family:'DIN',,sans-serif; }


.title-border_bottomheavy {
    margin: 20px;
    color: #005baa;
    font-weight: bold;
    border-bottom: 6px solid #005baa;
    margin-bottom: 20px;
}
