@charset "UTF-8";
/*  Usage: Style Reset  Name: reset.css  */
/*---------------------------------------------------------------------
Style Reset
---------------------------------------------------------------------*/
/* -- body -- */
body { font-family: ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif; line-height: 1.5em; font-size: 12px; }

/* -- other tags -- */
* { margin: 0; padding: 0; }

html, body { margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; background: transparent; }

div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

:focus { outline: 0; }

ins { text-decoration: none; }

del { text-decoration: line-through; }

table { border-collapse: collapse; border-spacing: 0; }

article, aside, dialog, figure, footer, header, hgroup, nav, section, small { display: block; }

img { vertical-align: bottom; }

/*---------------------------------------------------------------------
Style Setup
---------------------------------------------------------------------*/
/* -- layout -- */
.f_left { float: left !important; display: inline; }

.f_right { float: right !important; display: inline; }

.t_center { text-align: center !important; }

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

.t_left { text-align: left !important; }

.clear { clear: both !important; }

.mb3 { margin-bottom: 3px !important; }

.mb5 { margin-bottom: 5px !important; }

.mb10 { margin-bottom: 10px !important; }

.mb15 { margin-bottom: 15px !important; }

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

.mb25 { margin-bottom: 25px !important; }

.mb30 { margin-bottom: 30px !important; }

.mb35 { margin-bottom: 35px !important; }

.mb40 { margin-bottom: 40px !important; }

.mt3 { margin-top: 3px !important; }

.mt5 { margin-top: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mt15 { margin-top: 15px !important; }

.mt20 { margin-top: 20px !important; }

.mt25 { margin-top: 25px !important; }

.mt30 { margin-top: 30px !important; }

.mt35 { margin-top: 35px !important; }

.mt40 { margin-top: 40px !important; }

.mt50 { margin-top: 50px !important; }

.mt60 { margin-top: 60px !important; }

.mt70 { margin-top: 70px !important; }

.mt80 { margin-top: 80px !important; }

.mt90 { margin-top: 90px !important; }

.mt100 { margin-top: 100px !important; }

.mt110 { margin-top: 110px !important; }

.mt120 { margin-top: 120px !important; }

.mt130 { margin-top: 130px !important; }

.mt140 { margin-top: 140px !important; }

.mt150 { margin-top: 150px !important; }

.mt160 { margin-top: 160px !important; }

.mt170 { margin-top: 170px !important; }

.mt180 { margin-top: 180px !important; }

.mt190 { margin-top: 190px !important; }

.mt200 { margin-top: 200px !important; }

.mt210 { margin-top: 210px !important; }

.mt220 { margin-top: 220px !important; }

.mt230 { margin-top: 230px !important; }

.mt240 { margin-top: 240px !important; }

.mt250 { margin-top: 250px !important; }

.mt260 { margin-top: 260px !important; }

.mt270 { margin-top: 270px !important; }

.mr3 { margin-right: 3px !important; }

.mr5 { margin-right: 5px !important; }

.mr10 { margin-right: 10px !important; }

.mr15 { margin-right: 15px !important; }

.mr20 { margin-right: 20px !important; }

.mr25 { margin-right: 25px !important; }

.mr30 { margin-right: 30px !important; }

.mr35 { margin-right: 35px !important; }

.mr40 { margin-right: 40px !important; }

.ml3 { margin-left: 3px !important; }

.ml5 { margin-left: 5px !important; }

.ml10 { margin-left: 10px !important; }

.ml15 { margin-left: 15px !important; }

.ml20 { margin-left: 20px !important; }

.ml25 { margin-left: 25px !important; }

.ml30 { margin-left: 30px !important; }

.ml35 { margin-left: 35px !important; }

.ml40 { margin-left: 40px !important; }

.pb3 { padding-bottom: 3px !important; }

.pb5 { padding-bottom: 5px !important; }

.pb10 { padding-bottom: 10px !important; }

.pb15 { padding-bottom: 15px !important; }

.pb20 { padding-bottom: 20px !important; }

.pb25 { padding-bottom: 25px !important; }

.pb30 { padding-bottom: 30px !important; }

.pb35 { padding-bottom: 35px !important; }

.pb40 { padding-bottom: 40px !important; }

.pt3 { padding-top: 3px !important; }

.pt5 { padding-top: 5px !important; }

.pt10 { padding-top: 10px !important; }

.pt15 { padding-top: 15px !important; }

.pt20 { padding-top: 20px !important; }

.pt25 { padding-top: 25px !important; }

.pt30 { padding-top: 30px !important; }

.pt35 { padding-top: 35px !important; }

.pt40 { padding-top: 40px !important; }

.pl3 { padding-left: 3px !important; }

.pl5 { padding-left: 5px !important; }

.pl10 { padding-left: 10px !important; }

.pl15 { padding-left: 15px !important; }

.pl20 { padding-left: 20px !important; }

.pl25 { padding-left: 25px !important; }

.pl30 { padding-left: 30px !important; }

.pl35 { padding-left: 35px !important; }

.pl40 { padding-left: 40px !important; }

.pr3 { padding-right: 3px !important; }

.pr5 { padding-right: 5px !important; }

.pr10 { padding-right: 10px !important; }

.pr15 { padding-right: 15px !important; }

.pr20 { padding-right: 20px !important; }

.pr25 { padding-right: 25px !important; }

.pr30 { padding-right: 30px !important; }

.pr35 { padding-right: 35px !important; }

.pr40 { padding-right: 40px !important; }

/* -- link -- */
a { -webkit-tap-highlight-color: rgba(0, 194, 236, 0.4); text-decoration: none; }

/* -- image -- */
/* img:not([width]) {zoom:.5;}
.def img:not([width]) {zoom:1;} */
/* Start of "Micro clearfix" */
.cf { zoom: 1; }

.cf:before, .cf:after { content: ""; display: table; }

.cf:after { clear: both; }

/* End of "Micro clearfix" */
/*  Usage:  settings  */
/*---------------------------------------------------------------------
settings
---------------------------------------------------------------------*/
body { font-family: adobe-jenson-pro, sans-serif; font-size: 15px; font-weight: 100; color: #000000; }

/*  Usage:  Header layout  */
/*---------------------------------------------------------------------
Header layout
---------------------------------------------------------------------*/
header { height: 73px; width: 100%; background-color: #2AB8C7; color: #ffffff; font-family: Helvetica, Arial, "Lucida Grande", sans-serif; font-size: 16px; }
header a { transition: all 0.3s; }
header a:hover { opacity: 0.5; }
header a { color: #ffffff; }
header ul { width: 960px; margin: 0 auto; text-align: center; }
header ul li { margin-top: 23px; display: inline-block; font-weight: 100; }
header ul li.top { float: left; }
header ul li.techo { width: 271px; margin-left: 135px; margin-top: 27px; background: url(../../material/images/header/techo_logo.png) no-repeat; overflow: hidden; text-indent: 100%; white-space: nowrap; }
header ul li.techo a { display: block; }
header ul li.techo a:hover { opacity: 1; }
header ul li.about { float: right; }
header ul li.about a { display: inline-flex; line-height: 22px; padding-left: 32px; background: url(../../material/images/header/icon_about.png) no-repeat; }

/*  Usage:  Footer layout  */
/*---------------------------------------------------------------------
Footer layout
---------------------------------------------------------------------*/
footer { width: 960px; margin: 0 auto; }
footer a { transition: all 0.3s; }
footer a:hover { opacity: 0.5; }
footer .box { border-bottom: solid 1px #e5e5e5; margin-bottom: 10px; }
footer .box .snss { text-align: center; font-size: 14px; font-family: Helvetica, Arial, "Lucida Grande", sans-serif; color: #2AB8C7; font-weight: bold; }
footer .box .snss ul { margin: 10px 0 20px; }
footer .box .snss ul li { display: inline-block; margin: 0 5px; }
footer .box .snss ul li a { overflow: hidden; text-indent: 100%; white-space: nowrap; width: 42px; height: 42px; display: block; }
footer .box .snss ul li.facebook a { background: url(../../material/images/footer/sns1.png) no-repeat; }
footer .box .snss ul li.twitter a { background: url(../../material/images/footer/sns2.png) no-repeat; }
footer .box .snss ul li.mail a { background: url(../../material/images/footer/sns3.png) no-repeat; }
footer .box .snss ul li.line { display: none; }
footer .box .snss .logo a { display: block; width: 234px; height: 14px; margin: 0 auto; overflow: hidden; text-indent: 100%; white-space: nowrap; background: url(../../material/images/footer/techo_logo_blue.png) no-repeat; }
footer .box p.contact { font-family: Helvetica, Arial, "Lucida Grande", sans-serif; font-size: 14px; margin-bottom: 15px; font-weight: 400; }
footer .box p.contact a { color: #2AB8C7; }
footer .box p.contact a span { padding-left: 23px; background: url(../../material/images/footer/icon_mail.png) no-repeat left 1px; }
footer #footer { margin-bottom: 30px; }
footer #footer a { width: 196px; height: 16px; display: inline-block; overflow: hidden; text-indent: 100%; white-space: nowrap; background: url(../../material/images/footer/hobonichi_logo.png) no-repeat; }
footer #footer p { float: right; font-family: Helvetica, Arial, "Lucida Grande", sans-serif; font-size: 10px; color: #2AB8C7; padding-right: 10px; }

/* 
*  Usage:  Today layout  Name:   today.css  */
/*---------------------------------------------------------------------
Top layout
---------------------------------------------------------------------*/
#container_today #load { width: 100%; height: 100%; position: fixed; top: 0; left: 0; z-index: 999999999; background-color: #fff; }
#container_today #main_contents { width: 960px; padding: 0 32px; margin: 0 auto; }
#container_today #main_contents a { transition: all 0.3s; }
#container_today #main_contents a:hover { opacity: 0.5; }
#container_today #main_contents #contents { position: relative; width: 822px; background-image: url(../../material/images/today/p_frame_top.png), url(../../material/images/today/p_frame_bottom.png), url(../../material/images/today/p_frame_middle.png); background-position: top center, bottom center, top center; background-repeat: no-repeat, no-repeat, repeat-y; background-size: 822px 35px, 822px 35px, 822px 20px; margin: 75px auto 25px; padding-bottom: 50px; }
#container_today #main_contents #contents #fuki { position: absolute; top: -25px; right: 180px; background: url(../../material/images/today/fuki.png) no-repeat; display: block; width: 105px; height: 95px; overflow: hidden; text-indent: 100%; white-space: nowrap; }
#container_today #main_contents #contents h2 { height: 80px; text-align: center; font-size: 30px; font-weight: 600; letter-spacing: 1px; padding-top: 35px; line-height: 40px; vertical-align: middle; width: 822px; display: table-cell; }
#container_today #main_contents #contents #icon { text-align: center; margin-top: 25px; }
#container_today #main_contents #contents #share { text-align: center; font-size: 19px; font-weight: 700; letter-spacing: 1px; line-height: 28px; position: absolute; right: 155px; top: 330px; }
#container_today #main_contents #contents #share a { -webkit-border-radius: 20px; -moz-border-radius: 20px; border-radius: 20px; margin: 0 auto 30px; border: solid 1px #2AB8C7; height: 30px; width: 104px; display: block; color: #2AB8C7; background-color: #fff; }
#container_today #main_contents #contents #back a, #container_today #main_contents #contents #next a { position: absolute; top: 270px; margin-top: -42px; display: block; width: 84px; height: 84px; overflow: hidden; text-indent: 100%; white-space: nowrap; }
#container_today #main_contents #contents #back a { left: -30px; background: url(../../material/images/today/back_btn.png) no-repeat; }
#container_today #main_contents #contents #next a { right: -30px; background: url(../../material/images/today/next_btn.png) no-repeat; }
#container_today #main_contents #contents .hide { visibility: hidden; }
#container_today #main_contents #contents .txt { width: 510px; line-height: 25px; font-size: 16; margin: 35px auto 0; position: relative; word-wrap: break-word; text-overflow: ellipsis; -webkit-line-clamp: 5; -webkit-box-orient: vertical; }
#container_today #main_contents #contents .date { text-align: right; font-size: 14px; margin: 35px auto 0; width: 510px; }
#container_today #main_contents .top { text-align: center; font-size: 15px; font-weight: 700; letter-spacing: 1px; line-height: 23px; }
#container_today #main_contents .top a { -webkit-border-radius: 20px; -moz-border-radius: 20px; border-radius: 20px; margin: 0 auto 30px; border: solid 1px #2AB8C7; height: 24px; width: 84px; display: block; color: #2AB8C7; background-color: #fff; }
#container_today #pagetop_sp { display: none; }
