@charset "UTF-8";
/*============================== Reset ==============================*/
@import url(https://fonts.googleapis.com/earlyaccess/roundedmplus1c.css);
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; -webkit-box-sizing: border-box; box-sizing: border-box; }

body { line-height: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

nav ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; text-decoration: none; }

/* change colours to suit your needs */
ins { background-color: #ff9; color: #000; text-decoration: none; }

/* change colours to suit your needs */
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

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

input, select { vertical-align: middle; }

.clearfix:after { content: ""; clear: both; display: block; }

img { max-width: 100%; height: auto; display: block; }

/*============================== Mixin ==============================*/
/* mixinの使い方 p { @include site-width; background: #CCC; } */
/*============================== Setting ==============================*/
/* 必要に応じて上下を変更 */
body { font-family: 'Rounded Mplus 1c', sans-serif; font-size: 100%; color: #333; }

.mincho { font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; }

.container { margin: auto; }

@media (max-width: 575px) { .container { width: 100%; padding: 0 1rem; } }

@media (min-width: 576px) { .container { max-width: 544px; } }

@media (min-width: 768px) { .container { max-width: 736px; } }

@media (min-width: 992px) { .container { max-width: 960px; } }

@media (min-width: 1232px) { .container { max-width: 1200px; } }

/*============================== Home ==============================*/
header { padding: 1.5rem 0; }

header .sub-title { text-align: center; margin-bottom: .75rem; line-height: 1.5; }

header h1 { width: 240px; margin: auto; }

.home-h2 { text-align: center; font-size: 1.75rem; margin-bottom: 1.75rem; }

.news-area { padding: 4.5rem 0; }

.news-list { border-top: dotted 1px #ccc; max-width: 768px; margin: auto; list-style-type: none; }

.news-list li { border-bottom: dotted 1px #ccc; line-height: 1.7; padding: .75rem .5rem; }

.news-list li span { margin-left: 1rem; display: inline-block; }

.service-area { background: #f4f4f4; padding: 4.5rem 0; }

.service-box h3 { width: 224px; margin: 1rem auto 1.5rem; }

.service-box .text h4 { font-size: 1.25rem; line-height: 1.5; margin-bottom: .5rem; }

.service-box .text p { line-height: 1.7; text-align: justify; }

.service-box .btn { width: 280px; margin: 1.25rem auto 0; }

.service-box .btn a { display: block; background: #ddd; text-align: center; padding: .75rem; }

.service-box._web .text { margin-top: 1.5rem; }

.info-area { padding: 4.5rem 0; }

.info-area table { max-width: 768px; margin: auto; width: 100%; line-height: 1.5; }

.info-area table tr th { border: solid 1px #ccc; padding: 1rem; width: 200px; }

.info-area table tr td { border: solid 1px #ccc; padding: 1rem; }

.info-area table tr td ul { margin-left: 1.25rem; }

.hatalabo dt { font-size: 1.125rem; font-weight: 700; margin-bottom: .5rem; }

.hatalabo dd address { font-style: normal; }

.hatalabo dd ._tel { margin-bottom: .75rem; }

footer { border-top: solid 1px #ccc; padding: 1rem; }

.copyright { font-size: .875rem; text-align: center; }

@media (max-width: 991px) { .service-box:nth-child(n+2) { margin-top: 3rem; } }

@media (max-width: 575px) { header .sub-title { font-size: .875rem; }
  header h1 { width: 184px; }
  .info-area table tr th { border: none; display: block; width: 100%; background: #f4f4f4; text-align: left; }
  .info-area table tr td { border: none; display: block; width: 100%; } }

@media (min-width: 768px) { .hatalabo dd .sp-br { display: none; } }

@media (min-width: 992px) { .service-wrap { display: -moz-flex; display: -ms-flex; display: -o-flex; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  .service-wrap .service-box { width: 48%; } }
