/*
=====================================================================
*   Kreative v1.0 Base Stylesheet
*   url: styleshout.com
*   09-26-2013
=====================================================================

TOC:
a. Webfonts and Icon fonts
b. Reset
c. Default Styles
   1. Basic
   2. Typography
   3. Links
   4. Images
   5. Buttons
   6. Forms
d. Grid
e. Others
   1. Clearing
   2. Misc

=====================================================================  */

/* ------------------------------------------------------------------ */
/* a. Webfonts and Icon fonts
 ------------------------------------------------------------------ */

@import url("fonts.css");
@import url("font-awesome/css/font-awesome.min.css");

/* ------------------------------------------------------------------
/* b. Reset
      Adapted from:
      Normalize.css - https://github.com/necolas/normalize.css/
      HTML5 Doctor Reset - html5doctor.com/html-5-reset-stylesheet/
/* ------------------------------------------------------------------ */
html{
  scroll-behavior: smooth;
}

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;
}

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

audio,
canvas,
video {
   display: inline-block;
}

audio:not([controls]) {
   display: none;
   height: 0;
}

[hidden] { display: none; }

code, kbd, pre, samp {
   font-family: monospace, serif;
   font-size: 1em;
}

pre {
   white-space: pre;
   white-space: pre-wrap;
   word-wrap: break-word;
}

blockquote, q { quotes: &#8220 &#8220; }

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

ins {
   background-color: #ff9;
   color: #000;
   text-decoration: none;
}

mark {
   background-color: #A7F4F6;
   color: #555;
}

del { text-decoration: line-through; }

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

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


/* ------------------------------------------------------------------ */
/* c. Default Styles
      Adapted from:
      Skeleton CSS Framework - http://www.getskeleton.com/
      Typeplate Typographic Starter Kit - http://typeplate.com/
/* ------------------------------------------------------------------ */

/*  1. Basic  ------------------------------------------------------- */

*,
*:before,
*:after {
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
}

body {
   background: #fff;
	font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
	color: #838C95;
   -webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
	-webkit-text-size-adjust: 100%;
}

/*  2. Typography
       Vertical rhythm with leading derived from 6
--------------------------------------------------------------------- */

h1, h2, h3, h4, h5, h6 {
   color: #231815;
	font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
/* h1 { font-size: 42px; line-height: 48px; margin-bottom: 12px;} */

h1.head01 {
    text-align: center;
    margin-bottom: 35px;
    line-height: initial;
    font-size: initial;
}


h2 { font-size: 30px; line-height: 42px; margin-bottom: 6px; }
h3 { font-size: 24px; line-height: 30px; margin-bottom: 12px; }

h3.ginkgo {
    position: relative;
    color: #69412B;
    font-size: 24px;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    text-align: center;
    margin-bottom: 25px;
    line-height: initial;
}
h3.ginkgo:before {
    position: relative;
    left: 0px;
    content: "";
    display: inline-block;
    width: 50px;
    height: 35px;
    background: url(/images/pc/mark.png) no-repeat;
    background-size: 100%;
    top: 7px;
    margin-right: 10px;
}

h4 { font-size: 21px; line-height: 30px; margin-bottom: 6px; }

h4.head02 {
    text-align: center;
    margin-bottom: 35px;
    line-height: initial;
    font-size: initial;
}

h5 { font-size: 18px; line-height: 30px; }

h5.profile {
    border-bottom: 1px solid #69412B;
    font-weight: bold;
    font-size: 21px;
	text-align: left;
}

/* ルビ */
span.ls {
    padding-left: 45px;
    letter-spacing: 0.6em;
}
span.ls2 {
    padding-left: 22px;
    letter-spacing: 0.6em;
}

rt.r1 {
    letter-spacing: 0.3em;
    text-align: center;
    padding-left: 35px;
}

rt.r2 {
    letter-spacing: 0.3em;
    text-align: center;
    padding-left: 15px;
}

h6 { font-size: 14px; line-height: 30px; }
.subheader { }

h6.acs {
    font-size: 21px;
    font-weight: bold;
    color: #E94709;
}

p {
	font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
	margin: 0 0 24px 0;
	color: #231815;
	text-align: left;
    line-height: 160%;
}
p.ginkgo {
	font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
	margin: 0 0 24px 0;
	color: #231815;
	text-align: left;
    line-height: 160%;
}
p.ginkgo2 {
	font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
	margin: 0 0 24px 0;
	color: #231815;
	text-align: left;
    line-height: 160%;
	padding: 0 25px 0 0;
}

span.yellow {
	background: #FFF462;
}

p.about {
    font-size: 16px;
    color: #231815;
    border-bottom: 1px solid #69412B;
    padding: 0 0 15px 0;
    margin-bottom: 15px;
}

p.about a {
    color: #231815;
}
    
span.ttl {
    font-size: 21px;
    font-weight: bold;
}

p.pre_partner {
    text-align: center;
	margin-bottom: 12px;
}
p.partner {
    text-align: left;
	margin-bottom: 12px;
}
.partner a {
    color: #231815 !important;
    text-decoration: underline;
}
.partner a:hover, a:focus {
    transition: .3s ease-in-out;
    background-color: transparent !important;
    opacity: 0.7;
    text-decoration: none;
}


p.h {
    margin-bottom: 0;
}

p img { margin: 0; }
p.lead { font: 20px/36px opensans-light, sans-serif; }

/* for 'em' and 'strong' tags, font-size and line-height should be same with
the body tag due to rendering problems on some browsers*/
em { font: 15px/30px opensans-italic, sans-serif; }
strong, b { font: 15px/30px opensans-bold, sans-serif; }
small { font-size: 11px; line-height: inherit; }

/*	Blockquotes */
blockquote {
   margin: 30px 0px;
   padding-left: 40px;
   position: relative;
}
blockquote:before {
   content: "\201C";
   opacity: 0.45;
   font-size: 80px;
   line-height: 0px;
   margin: 0;
   font-family: arial, sans-serif;

   position: absolute;
   top:  30px;
	left: 0;
}
blockquote p {
   font-family: georgia, serif;
   font-style: italic;
   padding: 0;
   font-size: 18px;
   line-height: 30px;
}
blockquote cite {
   display: block;
   font-size: 12px;
   font-style: normal;
   line-height: 18px;
}
blockquote cite:before { content: "\2014 \0020"; }
blockquote cite a,
blockquote cite a:visited { color: #8B9798; border: none }

/* ---------------------------------------------------------------------
/*  Pull Quotes Markup
/*
    <aside class="pull-quote">
		<blockquote>
			<p></p>
		</blockquote>
	 </aside>
/*
/* --------------------------------------------------------------------- */
.pull-quote {
   position: relative;
	padding: 18px 30px 18px 0px;
}
.pull-quote:before,
.pull-quote:after {
	height: 1em;
	opacity: 0.45;
	position: absolute;
	font-size: 80px;
   font-family: Arial, Sans-Serif;
}
.pull-quote:before {
	content: "\201C";
	top:  33px;
	left: 0;
}
.pull-quote:after {
	content: '\201D';
	bottom: -33px;
	right: 0;
}
.pull-quote blockquote {
   margin: 0;
}
.pull-quote blockquote:before {
   content: none;
}

/* Abbreviations */
abbr {
   font-family: opensans-bold, sans-serif;
	font-variant: small-caps;
	text-transform: lowercase;
   letter-spacing: .5px;
	color: gray;
}
abbr:hover { cursor: help; }

/* drop cap */
.drop-cap:first-letter {
	float: left;
	margin: 0;
	padding: 14px 6px 0 0;
	font-size: 84px;
	font-family: /* Copperplate */ montserrat-bold, sans-serif;
   line-height: 60px;
	text-indent: 0;
	background: transparent;
	color: inherit;
}

hr { border: solid #E0E0E0; border-width: 1px 0 0; clear: both; margin: 11px 0 30px; height: 0; }


/*  3. Links  ------------------------------------------------------- */

a, a:visited {
text-decoration: none;
outline: 0;
color:#11ABB0;

-webkit-transition:color .3s ease-in-out;
-moz-transition:color .3s ease-in-out;
-o-transition:color .3s ease-in-out;
transition:color .3s ease-in-out;

}

a:hover, a:focus { color:#333; }
p a, p a:visited { line-height: inherit; }


/*  4. List  --------------------------------------------------------- */

ul, ol { margin-bottom: 24px; /* margin-top: 12px; */ }
ul { list-style: none outside; }
ol { list-style: decimal; }
ol, ul.square, ul.circle, ul.disc { margin-left: 30px; }
ul.square { list-style: square outside; }
ul.circle { list-style: circle outside; }
ul.disc { list-style: disc outside; color: #231815; }
ul.disc li {
    text-align: left;
    line-height: 180%;
}
ul ul, ul ol,
ol ol, ol ul { margin: 6px 0 6px 30px; }
ul ul li, ul ol li,
ol ol li, ol ul li { margin-bottom: 6px; }
li { line-height: 18px; /* margin-bottom: 12px; */ }
ul.large li { }
li p { }

/* ---------------------------------------------------------------------
/*  Stats Tab Markup

    <ul class="stats-tabs">
		<li><a href="#">[value]<b>[name]</b></a></li>
	 </ul>

    Extend this object into your markup.
/*
/* --------------------------------------------------------------------- */
.stats-tabs {
   padding: 0;
   margin: 24px 0;
}
.stats-tabs li {
	display: inline-block;
	margin: 0 10px 18px 0;
	padding: 0 10px 0 0;
	border-right: 1px solid #ccc;
}
.stats-tabs li:last-child {
	margin: 0;
	padding: 0;
	border: none;
}
.stats-tabs li a {
	display: inline-block;
	font-size: 24px;
	font-family: montserrat-bold, sans-serif;
   border: none;
   color: #444;
}
.stats-tabs li a:hover {
   color:#11ABB0;
}
.stats-tabs li a b {
	display: block;
	margin: 6px 0 0 0;
	font-size: 13px;
	font-family: opensans-light, sans-serif;
   color: #8B9798;
}

/* definition list */
dl { margin: 12px 0; }
dt { margin: 0; color:#11ABB0; }
dd { margin: 0 0 0 20px; }

/* 診療案内 dlリスト */
dl.shinryo dt {
    float: left;
    color: #613200;
    font-weight: bold;
    line-height: 180%;
}
dl.shinryo dd {
    margin-left: 110px;
    color: #613200;
    font-weight: bold;
	text-align: left;
    line-height: 180%;
}
p.shinryo {
    color: #613200;
    font-weight: bold;
	margin-bottom: 0;
}

/* プロフィール dlリスト */
dl.profile {
    margin: 30px 0;
}
dl.profile dt {
    float: left;
    color: #231815;
    font-weight: bold;
}
dl.profile dd {
    margin-left: 80px;
    color: #231815;
	line-height: 180%;
}
p.profile {
    color: #231815;
	margin-bottom: 0;
}

/* 区切り線 */
p.line {
    text-align: center;
    margin-bottom: 35px;
    line-height: initial;
    font-size: initial;
}

/* Lining Definition Style Markup */
.lining dt,
.lining dd {
	display: inline;
	margin: 0;
}
.lining dt + dt:before,
.lining dd + dt:before {
	content: "\A";
	white-space: pre;
}
.lining dd + dd:before {
	content: ", ";
}
.lining dd:before {
	content: ": ";
	margin-left: -0.2em;
}

/* Dictionary Definition Style Markup */
.dictionary-style dt {
	display: inline;
	counter-reset: definitions;
}
.dictionary-style dt + dt:before {
	content: ", ";
	margin-left: -0.2em;
}
.dictionary-style dd {
	display: block;
	counter-increment: definitions;
}
.dictionary-style dd:before {
	content: counter(definitions, decimal) ". ";
}

/* Pagination */
.pagination {
	margin: 36px auto;
   text-align: center;
}
.pagination ul li {
   display: inline-block;
   margin: 0;
   padding: 0;
}
.pagination .page-numbers {
   font: 15px/18px opensans-bold, sans-serif;
   display: inline-block;
	padding: 6px 10px;
   margin-right: 3px;
   margin-bottom: 6px;
	color: #6E757C;
	background-color: #E6E8EB;

	-webkit-transition: all 200ms ease-in-out;
	-moz-transition: all 200ms ease-in-out;
	-o-transition: all 200ms ease-in-out;
	-ms-transition: all 200ms ease-in-out;
	transition: all 200ms ease-in-out;

   -moz-border-radius: 3px;
   -webkit-border-radius: 3px;
   -khtml-border-radius: 3px;
	border-radius: 3px;
}
.pagination .page-numbers:hover {
   background: #838A91;
   color: #fff;
}
.pagination .current,
.pagination .current:hover {
	background-color: #11ABB0;
   color: #fff;
}
.pagination .inactive,
.pagination .inactive:hover {
   background-color: #E6E8EB;
	color: #A9ADB2;
}
.pagination .prev, .pagination .next {}

/*  5. Images  --------------------------------------------------------- */

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

img.pull-right { margin: 12px 0px 0px 18px; }
img.pull-left { margin: 12px 18px 0px 0px; }

/*  6. Buttons  --------------------------------------------------------- */

.button,
.button:visited,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
   font: 16px/30px montserrat-bold, sans-serif;
   background: #11ABB0;
   display: inline-block;
	text-decoration: none;
   letter-spacing: 0;
   color: #fff;
	padding: 18px 18px;
	margin-bottom: 18px;
   border: none;
   cursor: pointer;
   height: auto;

    -webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	-ms-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;

   -moz-border-radius: 3px;
   -webkit-border-radius: 3px;
   -khtml-border-radius: 3px;
   border-radius: 3px;
}

.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
   background: #3d4145;
   color: #fff;
}

.button:active,
button:active,
input[type="submit"]:active,
input[type="reset"]:active,
input[type="button"]:active {
   background: #3d4145;
   color: #fff;
}

.button.full-width,
button.full-width,
input[type="submit"].full-width,
input[type="reset"].full-width,
input[type="button"].full-width {
	width: 100%;
	padding-left: 0 !important;
	padding-right: 0 !important;
	text-align: center;
}

/* Fix for odd Mozilla border & padding issues */
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}


/*  7. Forms  --------------------------------------------------------- */

form { margin-bottom: 24px; }
fieldset { margin-bottom: 24px; }

input[type="text"],
input[type="password"],
input[type="email"],
textarea,
select {
  	display: block;
   padding: 18px 18px;
   margin: 0 0 24px 0;
   border: 0;
   outline: none;
   vertical-align: middle;
   min-width: 250px;
	max-width: 100%;
   font-size: 15px;
   line-height: 24px;
	color: #738182;
	background: #CFD4D8;
}

/* select { padding: 0;
   width: 220px;
   } */

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
textarea:focus {
   color: #fff;
	background-color: #3d4145;
}

textarea { min-height: 180px; }

label,
legend {
   font: 14px/24px opensans-bold, sans-serif;
	margin: 12px 0;
   color: #3d4145;
   display: block;
}

input[type="checkbox"],
input[type="radio"] {
   font-size: 15px;
   color: #737373;
}

input[type="checkbox"] { display: inline; }

label span,
legend span {
	color: #8B9798;
   font: 14px/24px opensans-regular, sans-serif;
}

/* ------------------------------------------------------------------ */
/* d. Grid

   A simple, lightweight responsive grid.
   columns = 48px, gutter = 36px.
/* ------------------------------------------------------------------ */

/* desktop
--------------------------------------------------------------- */

.row {
   width: 100%;
   max-width: 1000px;
   margin: 0 auto;

   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
}
.narrow .row { max-width: 976px; }
/* fixed width for IE8 */
.ie .row { width: 1008px ; }

.row .row { width: auto; max-width: 100% }

.col {
   position: relative;
   /* padding: 0 18px; */
   float: left;
}

/* row clearing */
.row:before,
.row:after {
    content: " ";
    display: table;
}
.row:after {
    clear: both;
}
/* For IE 6/7 (trigger hasLayout) */
.row { *zoom: 1; }

.row.section-head {
    margin-bottom: 35px;
}
.row.section-head2, .row.section-head3 {
    margin-bottom: 0;
}

/* removed gutters */
.row.collapsed .col,
col.collapsed { padding: 0; }

/* removed nested columns paddings */
.col .col:first-child { padding-left: 0; }
.col .col:last-child { padding-right: 0; }
/* If you'll be using IE8, use class ".last" in nested comlumns.
   ":last-child" is not supported in IE8 */
.ie .row .row .last { padding-right: 0; }

/* column widths */
.row .one-twelfth,     .row .g-1     { width: 8.33333%; }
.row .one-sixth,       .row .g-2     { width: 16.66667%; }
.row .one-fourth,      .row .g-3     { width: 25%; }

.row .one-third,       .row .g-4     { width: 56%; padding: 0 20px; }
.row .one-third2, .row .g-4 {
    width: 68%;
    padding: 25px 25px 5px 25px;
    background-color: #FFFDE5;
    border-radius: 15px;
    margin-right: 30px;
}
.row .one-third3, .row .g-4 {
    width: 68%;
    padding: 0 0 5px 25px;
    margin-right: 30px;
}
.row .one-third4, .row .g-4 {
    width: 60%;
    padding: 0 0 5px 25px;
    margin-right: 30px;
}

.row .one-third5, .row .g-4 {
    width: 56%;
    padding: 15px 0 5px 0;
    margin-right: 40px;
}



.row .five-twelfths,   .row .g-5     { width: 41.66667%; }
.row .half,            .row .g-6     { width: 50%; }
.row .seven-twelfths,  .row .g-7     { width: 58.33333%; }

.row .two-thirds,      .row .g-8     { width: 44%; }
.row .two-thirds2,      .row .g-8     { width: 27%; }
.row .two-thirds3,      .row .g-8     { width: 27%; }
.row .two-thirds4,      .row .g-8     { width: 37%; }
.row .two-thirds5, .row .g-8 {
    width: 40%;
    padding: 15px 18px 0px 0;
    background: url(/images/pc/mark.png) no-repeat;
    background-size: 120px;
    height: 410px;
    background-position: bottom right 25px;
    background-color: rgba(255, 255, 255, 0.7);
    background-blend-mode: lighten;
}

.row .one {
    width: 100%;
    padding: 0 15px 11px 25px;
    background: url(/images/pc/image4.png) no-repeat;
    background-position: bottom right;
}
.row .one2 {
    width: 100%;
    padding: 0 15px 45px 25px;
    max-width: 330px;
    margin: 0 auto;
    text-align: center;
}
.row .one3 {
    width: 100%;
    padding: 7px;
    max-width: 330px;
    margin: 0 auto;
    text-align: center;
}

.row .three-fourths,   .row .g-9     { width: 75%; }
.row .five-sixths,     .row .g-10    { width: 83.33333%; }
.row .eleven-twelfths, .row .g-11    { width: 91.66667%; }
.row .full,            .row .g-12    { width: 100%; }

/* Offsets */
.row .offset-1    { margin-left: 8.33333%; }
.row .offset-2    { margin-left: 16.66667%; }
.row .offset-3    { margin-left: 25%; }
.row .offset-4    { margin-left: 33.33333%; }
.row .offset-5    { margin-left: 41.66667%; }
.row .offset-6    { margin-left: 50%; }
.row .offset-7    { margin-left: 58.33333%; }
.row .offset-8    { margin-left: 66.66667%; }
.row .offset-9    { margin-left: 75%; }
.row .offset-10   { margin-left: 83.33333%; }
.row .offset-11   { margin-left: 91.66667%; }


/* smaller screens
--------------------------------------------------------------- */
@media only screen and (max-width: 800px) {

   /*.col { padding: 0 15px; } */

}

/* mobile wide
--------------------------------------------------------------- */
@media only screen and (max-width: 767px) {

   .row {
	   width: 100%;
	   margin: 0 auto;
      padding: 0;
	}
   .col {
	   width: 100% !important;
	   float: none;
	   margin-left: 0;
	   margin-right: 0;
    }
    /* for nested columns */
   .col .row { width: 100%; }
   .col .row .col { padding: 0; }

   /* Offsets */
   .row .offset-1    { margin-left: 0%; }
   .row .offset-2    { margin-left: 0%; }
   .row .offset-3    { margin-left: 0%; }
   .row .offset-4    { margin-left: 0%; }
   .row .offset-5    { margin-left: 0%; }
   .row .offset-6    { margin-left: 0%; }
   .row .offset-7    { margin-left: 0%; }
   .row .offset-8    { margin-left: 0%; }
   .row .offset-9    { margin-left: 0%; }
   .row .offset-10   { margin-left: 0%; }
   .row .offset-11   { margin-left: 0%; }
}

/* mobile narrow
--------------------------------------------------------------- */
@media only screen and (max-width: 460px) {

   .row { width: 100%; }

}

/* larger screens
--------------------------------------------------------------- */
@media screen and (min-width: 1200px) {

   .wide .row { max-width: 1180px; }
   .wide .col { padding: 0 20px; }

}


/* ------------------------------------------------------------------ */
/* e. Others
/* ------------------------------------------------------------------ */

/*  1. Clearing
    (http://nicolasgallagher.com/micro-clearfix-hack/
--------------------------------------------------------------------- */

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

/* For IE 6/7 (trigger hasLayout) */
.cf { *zoom: 1; }

/*  2. Misc -------------------------------------------------------- */

.remove-bottom { margin-bottom: 0 !important; }
.half-bottom { margin-bottom: 12px !important; }
.add-bottom { margin-bottom: 24px !important; }
.no-border { border: none; }

.align-center { text-align: center; }
.align-left   { text-align: left; }
.align-right  { text-align: right; }
.pull-left    { float: left; }
.pull-right   { float: right; }



