@charset "utf-8";

/** Button **/

.c-button {
	margin:auto;
	padding:0;
	position:relative;
	display:inline-block;
	width:auto;
	text-align:center;
}/**
.c-button__icon {}
.c-button__text {}/**/

.c-button > img {
	margin:auto;
	display:block;
	max-width:100%;
	height:auto;
}

.c-button__text > small {
	display:block;
	font-size:80%;
}

.c-button--middle {
	height:100%;
	letter-spacing:-0.4em;
}
.c-button--middle::before,
.c-button--middle::after,
.c-button--middle > * {
	display:inline-block;
	vertical-align:middle;
	letter-spacing:normal;
}
.c-button--middle::before,
.c-button--middle::after {
	width:0;
	height:100%;
	content:"";
}

.c-button--disabled,
.c-button[disabled] { pointer-events:none; }

@media screen and ( max-width:640px ) {}

/** List **/

.c-list {
	margin:auto;
	padding:0;
}/**
.c-list > * {}
.c-list__marker {}/**/

.c-list--std-disc        { list-style-type:disc;    }
.c-list--std-decimal     { list-style-type:decimal; }
.c-list--std-none        { list-style-type:none;    }
.c-list--std-disc    > *,
.c-list--std-decimal > * { margin-left:1.0em; }
.c-list--std-none    > * { margin-left:    0; }

.c-list--reset     { list-style-type:none; }
.c-list--reset > * { margin-left:0; }

[class*="c-list--opt"] {
	margin-left:0;
	display:table;
	list-style-type:none;
}
[class*="c-list--opt"]  > * { display:table-row; }
[class*="c-list--opt"]  > :nth-last-child(n+2)::after { display:block; content:""; }
[class*="c-list--opt-"] > ::before,
.c-list--opt              .c-list__marker { display:table-cell; white-space:nowrap; }
[class*="c-list--opt-"]   .c-list__marker { display:none; }
.c-list--opt-count             { counter-reset    :list-counter; }
.c-list--opt-count  > *        { counter-increment:list-counter; }
.c-list--opt-count  > ::before { content:counter( list-counter )"."; text-align:right; }
.c-list--opt-bullet > ::before { content:"・"; }

.c-list--block,
.c-list--inline {
	margin-left:0;
	display:table;
}
.c-list--inline { letter-spacing:-0.4em; }
.c-list--inline > * {
	display:inline-block;
	vertical-align:top;
	letter-spacing:normal;
}
.c-list--inline[class*="c-list--std-"] > * { display:list-item; float:left; }
.c-list--inline[class*="c-list--opt-"] > ::before,
.c-list--inline.c-list--opt              .c-list__marker { display:inline; }

[class*="c-list--opt-"] > ::before,
.c-list--opt              .c-list__marker { padding-right:0.3em; }

[class*="c-list--std-"]                > :nth-last-child(n+2),
[class*="c-list--opt"]                 > :nth-last-child(n+2)::after { margin-bottom:0.3em; }
.c-list--inline[class*="c-list--std-"] > :nth-last-child(n+2),
.c-list--inline[class*="c-list--opt"]  > :nth-last-child(n+2)::after { margin-bottom:    0; }

.c-list--block  > :nth-last-child(n+2) { margin-bottom:0.3em; }
.c-list--inline > :nth-last-child(n+2) { margin-right :0.8em; }

* + .c-list { margin-top:1.0em; }

@media screen and ( max-width:640px ) {}

/** Table **/

.c-table {
	margin:auto;
	width:100%;
}

.c-table__col-1   { width:  1%; }
.c-table__col-2   { width:  2%; }
.c-table__col-3   { width:  3%; }
.c-table__col-4   { width:  4%; }
.c-table__col-5   { width:  5%; }
.c-table__col-6   { width:  6%; }
.c-table__col-7   { width:  7%; }
.c-table__col-8   { width:  8%; }
.c-table__col-9   { width:  9%; }
.c-table__col-10  { width: 10%; }
.c-table__col-11  { width: 11%; }
.c-table__col-12  { width: 12%; }
.c-table__col-13  { width: 13%; }
.c-table__col-14  { width: 14%; }
.c-table__col-15  { width: 15%; }
.c-table__col-16  { width: 16%; }
.c-table__col-17  { width: 17%; }
.c-table__col-18  { width: 18%; }
.c-table__col-19  { width: 19%; }
.c-table__col-20  { width: 20%; }
.c-table__col-21  { width: 21%; }
.c-table__col-22  { width: 22%; }
.c-table__col-23  { width: 23%; }
.c-table__col-24  { width: 24%; }
.c-table__col-25  { width: 25%; }
.c-table__col-26  { width: 26%; }
.c-table__col-27  { width: 27%; }
.c-table__col-28  { width: 28%; }
.c-table__col-29  { width: 29%; }
.c-table__col-30  { width: 30%; }
.c-table__col-31  { width: 31%; }
.c-table__col-32  { width: 32%; }
.c-table__col-33  { width: 33%; }
.c-table__col-34  { width: 34%; }
.c-table__col-35  { width: 35%; }
.c-table__col-36  { width: 36%; }
.c-table__col-37  { width: 37%; }
.c-table__col-38  { width: 38%; }
.c-table__col-39  { width: 39%; }
.c-table__col-40  { width: 40%; }
.c-table__col-41  { width: 41%; }
.c-table__col-42  { width: 42%; }
.c-table__col-43  { width: 43%; }
.c-table__col-44  { width: 44%; }
.c-table__col-45  { width: 45%; }
.c-table__col-46  { width: 46%; }
.c-table__col-47  { width: 47%; }
.c-table__col-48  { width: 48%; }
.c-table__col-49  { width: 49%; }
.c-table__col-50  { width: 50%; }
.c-table__col-51  { width: 51%; }
.c-table__col-52  { width: 52%; }
.c-table__col-53  { width: 53%; }
.c-table__col-54  { width: 54%; }
.c-table__col-55  { width: 55%; }
.c-table__col-56  { width: 56%; }
.c-table__col-57  { width: 57%; }
.c-table__col-58  { width: 58%; }
.c-table__col-59  { width: 59%; }
.c-table__col-60  { width: 60%; }
.c-table__col-61  { width: 61%; }
.c-table__col-62  { width: 62%; }
.c-table__col-63  { width: 63%; }
.c-table__col-64  { width: 64%; }
.c-table__col-65  { width: 65%; }
.c-table__col-66  { width: 66%; }
.c-table__col-67  { width: 67%; }
.c-table__col-68  { width: 68%; }
.c-table__col-69  { width: 69%; }
.c-table__col-70  { width: 70%; }
.c-table__col-71  { width: 71%; }
.c-table__col-72  { width: 72%; }
.c-table__col-73  { width: 73%; }
.c-table__col-74  { width: 74%; }
.c-table__col-75  { width: 75%; }
.c-table__col-76  { width: 76%; }
.c-table__col-77  { width: 77%; }
.c-table__col-78  { width: 78%; }
.c-table__col-79  { width: 79%; }
.c-table__col-80  { width: 80%; }
.c-table__col-81  { width: 81%; }
.c-table__col-82  { width: 82%; }
.c-table__col-83  { width: 83%; }
.c-table__col-84  { width: 84%; }
.c-table__col-85  { width: 85%; }
.c-table__col-86  { width: 86%; }
.c-table__col-87  { width: 87%; }
.c-table__col-88  { width: 88%; }
.c-table__col-89  { width: 89%; }
.c-table__col-90  { width: 90%; }
.c-table__col-91  { width: 91%; }
.c-table__col-92  { width: 92%; }
.c-table__col-93  { width: 93%; }
.c-table__col-94  { width: 94%; }
.c-table__col-95  { width: 95%; }
.c-table__col-96  { width: 96%; }
.c-table__col-97  { width: 97%; }
.c-table__col-98  { width: 98%; }
.c-table__col-99  { width: 99%; }
.c-table__col-100 { width:100%; }

.c-table--border {
	border-collapse:collapse;
	border-spacing:0;
	background-color:#FFF;
}
.c-table--border th,
.c-table--border td {
	padding:0.6em;
	border:1px solid #666;
	color:#333;
}

* + .c-table { margin-top:1.0em; }

@media screen and ( max-width:640px ) {
	.c-table\@sp--stack,
	.c-table\@sp--stack col,
	.c-table\@sp--stack thead,
	.c-table\@sp--stack tbody,
	.c-table\@sp--stack tfoot,
	.c-table\@sp--stack tr,
	.c-table\@sp--stack th,
	.c-table\@sp--stack td {
		display:block;
		width:100%;
	}
	
	.c-table\@sp--fixed {
		width:auto;
		table-layout:fixed;
		white-space:nowrap;
	}
}

/** Figure **/

.c-figure {
	margin:auto;
	position:relative;
}

.c-figure > img,
.c-figure__image {
	margin:auto;
	display:block;
	max-width:100%;
	height:auto;
}

.c-figure__caption {
	margin:auto;
	line-height:1.0;
	font-size:95%;
}
.c-figure__caption:first-child { margin-bottom:0.5em; }
.c-figure__caption:last-child  { margin-top   :0.5em; }

* + .c-figure { margin-top:1.0em; }

@media screen and ( max-width:640px ) {}

/** Media **/

.c-media {
	margin:auto;
	position:relative;
}

.c-media::before,
.c-media::after { display:table; content:""; }
.c-media::after { clear:both; }

.c-media__aside          { float:left;  }
.c-media__aside--reverse { float:right; }

.c-media__body           { overflow:hidden;  }
.c-media__body--fulfill  { overflow:visible; }

.c-media__body {
	word-wrap:break-word;/**
	word-break:break-all;/**/
}

.c-media img {
	margin:auto;
	display:block;
	max-width:100%;
	height:auto;
}

.c-media > * > :first-child { margin-top   :0; }
.c-media > * > :last-child  { margin-bottom:0; }

.c-media__aside .c-figure {
	display:table;
	max-width:100%;
	width:100px;
}
.c-media__aside .c-figure > img,
.c-media__aside .c-figure__image { max-width:none; }

.c-media__aside--assign .c-figure { width:auto; }
.c-media__aside--assign .c-figure > img,
.c-media__aside--assign .c-figure__image { max-width:100%; }

.c-media--gap-small  .c-media__aside          { margin-left:    0; margin-right:0.5em; }
.c-media--gap-small  .c-media__aside--reverse { margin-left:0.5em; margin-right:    0; }
.c-media--gap-medium .c-media__aside          { margin-left:    0; margin-right:1.0em; }
.c-media--gap-medium .c-media__aside--reverse { margin-left:1.0em; margin-right:    0; }
.c-media--gap-large  .c-media__aside          { margin-left:    0; margin-right:2.0em; }
.c-media--gap-large  .c-media__aside--reverse { margin-left:2.0em; margin-right:    0; }

.c-media--gap-small.c-media--stack  .c-media__body { margin-top:0.5em; }
.c-media--gap-medium.c-media--stack .c-media__body { margin-top:1.0em; }
.c-media--gap-large.c-media--stack  .c-media__body { margin-top:2.0em; }

.c-media--stack .c-media__aside {
	margin-left :auto;
	margin-right:auto;
	float:none;
}
.c-media--stack .c-media__aside .c-figure { width:auto; }
.c-media--stack .c-media__aside .c-figure > img,
.c-media--stack .c-media__aside .c-figure__image { max-width:100%; }

* + .c-media { margin-top:1.0em; }

@media screen and ( max-width:640px ) {
	.c-media__aside\@sp--assign .c-figure { width:auto; }
	.c-media__aside\@sp--assign .c-figure > img,
	.c-media__aside\@sp--assign .c-figure__image { max-width:100%; }
	
	.c-media\@sp--stack .c-media__aside {
		margin-left :auto;
		margin-right:auto;
		float:none;
	}
	.c-media\@sp--stack .c-media__aside .c-figure { width:auto; }
	.c-media\@sp--stack .c-media__aside .c-figure > img,
	.c-media\@sp--stack .c-media__aside .c-figure__image { max-width:100%; }
}
@media all and (min-width:0\0) and (min-resolution:+72dpi) {
	.c-media__aside--assign[class*="u-width-"] .c-figure__image { width:100%; }
}
@media all and (min-width:0\0) and (min-resolution:+72dpi), screen and (max-width:640px) {
	.c-media__aside\@sp--assign[class*="u-width@sp-"] .c-figure__image { width:100%; }
} /* [IE9-11] */

/** Panel **/

.c-panel {
	margin:auto;
	position:relative;
}

.c-panel__head,
.c-panel__foot,
.c-panel__body {
	margin:auto;
	position:relative;
}
.c-panel__head { padding:0.3em 0 0.2em; }
.c-panel__foot { padding:0.3em 0; }/**
.c-panel__body {}/**/

.c-panel img {
	margin:auto;
	display:block;
	max-width:100%;
	height:auto;
}

.c-panel > :first-child { margin-top   :0; }
.c-panel > :last-child  { margin-bottom:0; }

.c-panel--border {
	padding:1.0em;
	border-radius:5px;
	border:1px solid #999;
	background-color:#FFF;
	overflow:hidden;
}
.c-panel--fill {
	padding:1.0em;
	border-radius:5px;
	background-color:#EEE;
	overflow:hidden;
}

.c-panel__head--border {
	padding-left :1.0em;
	padding-right:1.0em;
	border-radius:1.0em;
	border:1px solid #999;
	background-color:#FFF;
	color:#999;
}
.c-panel__head--fill {
	padding-left :1.0em;
	padding-right:1.0em;
	background-color:#999;
	color:#FFF;
}

.c-panel--border > .c-panel__body,             .c-panel--fill > .c-panel__body       { padding:1.0em; }
.c-panel--border > .c-panel__body,             .c-panel--fill > .c-panel__body,
.c-panel--border > .c-panel__head--fill,       .c-panel--fill > .c-panel__head--fill,
.c-panel--border > .c-panel__foot--fill,       .c-panel--fill > .c-panel__foot--fill { margin-left  :-1.0em; margin-right :-1.0em; }
.c-panel--border > .c-panel__body:first-child, .c-panel--fill > .c-panel__body:first-child,
.c-panel--border > .c-panel__head--fill,       .c-panel--fill > .c-panel__head--fill { margin-top   :-1.0em; }
.c-panel--border > .c-panel__body:last-child,  .c-panel--fill > .c-panel__body:last-child,
.c-panel--border > .c-panel__foot--fill,       .c-panel--fill > .c-panel__foot--fill { margin-bottom:-1.0em; }

* + .c-panel { margin-top:1.0em; }

@media screen and ( max-width:640px ) {}

/** Container **/

.c-container {
	margin:auto;
	position:relative;
}

* + .c-container { margin-top:1.0em; }

@media screen and ( max-width:640px ) {
	.c-container\@sp--scrollX {
		padding-bottom:10px;
		overflow-x:auto;
		overflow-y:hidden;
	}
	.c-container\@sp--scrollX[data-container-scroll] > .c-container__scrollMask {
		margin-bottom:-10px;
		padding-bottom:10px;
		position:relative;
		display:block;
		width:100%;
		overflow-x:auto;
		overflow-y:hidden;
	}
	.c-container\@sp--scrollX[data-container-scroll] > .c-container__scrollEdge {
		position:absolute;
		bottom:10px;
		z-index:1;
		display:block;
		max-width:40px;
		width:10%;
		height:100%;
		pointer-events:none;
	}
	.c-container\@sp--scrollX[data-container-scroll] > .c-container__scrollEdge--left {
		background-image:linear-gradient( to left, rgba( 255, 255, 255, 0.0 ), rgba( 255, 255, 255, 1.0 ) );
		left:0;
	}
	.c-container\@sp--scrollX[data-container-scroll] > .c-container__scrollEdge--right {
		background-image:linear-gradient( to right, rgba( 255, 255, 255, 0.0 ), rgba( 255, 255, 255, 1.0 ) );
		right:0;
	}
	.c-container\@sp--scrollX[data-container-scroll*="shadow"] > .c-container__scrollEdge--left {
		background-image:linear-gradient( to left, rgba( 0, 0, 0, 0.0 ), rgba( 0, 0, 0, 0.2 ) );
	}
	.c-container\@sp--scrollX[data-container-scroll*="shadow"] > .c-container__scrollEdge--right {
		background-image:linear-gradient( to right, rgba( 0, 0, 0, 0.0 ), rgba( 0, 0, 0, 0.2 ) );
	}
}

/** Grid **/

.c-grid {
	margin:auto;
	padding:0;
	letter-spacing:-0.4em;
	list-style-type:none;
}

.c-grid > * {
	display:inline-block;
	vertical-align:top;
	letter-spacing:normal;
}

.c-grid img {
	margin:auto;
	display:block;
	max-width:100%;
	height:auto;
}

.c-grid > * > :first-child { margin-top   :0; }
.c-grid > * > :last-child  { margin-bottom:0; }

.c-grid--left       { text-align:left;   }
.c-grid--right      { text-align:right;  }
.c-grid--center     { text-align:center; }
.c-grid--left   > *,
.c-grid--right  > *,
.c-grid--center > * { text-align:left;   }

.c-grid--top    > * { vertical-align:top;    }
.c-grid--bottom > * { vertical-align:bottom; }
.c-grid--middle > * { vertical-align:middle; }

.c-grid--width-1of1  > * { width:calc( 100% /  1 ); }
.c-grid--width-1of2  > * { width:calc( 100% /  2 ); }
.c-grid--width-1of3  > * { width:calc( 100% /  3 ); }
.c-grid--width-1of4  > * { width:calc( 100% /  4 ); }
.c-grid--width-1of5  > * { width:calc( 100% /  5 ); }
.c-grid--width-1of6  > * { width:calc( 100% /  6 ); }
.c-grid--width-1of7  > * { width:calc( 100% /  7 ); }
.c-grid--width-1of8  > * { width:calc( 100% /  8 ); }
.c-grid--width-1of9  > * { width:calc( 100% /  9 ); }
.c-grid--width-1of10 > * { width:calc( 100% / 10 ); }

.c-grid--gap-small      { margin-left :calc( -1.0em / 2 ); margin-right :calc( -1.0em / 2 ); }
.c-grid--gap-small  > * { padding-left:calc(  1.0em / 2 ); padding-right:calc(  1.0em / 2 ); }
.c-grid--gap-medium     { margin-left :calc( -2.0em / 2 ); margin-right :calc( -2.0em / 2 ); }
.c-grid--gap-medium > * { padding-left:calc(  2.0em / 2 ); padding-right:calc(  2.0em / 2 ); }
.c-grid--gap-large      { margin-left :calc( -3.0em / 2 ); margin-right :calc( -3.0em / 2 ); }
.c-grid--gap-large  > * { padding-left:calc(  3.0em / 2 ); padding-right:calc(  3.0em / 2 ); }
.c-grid--gap-xsmall     { margin-left :calc( -0.5em / 2 ); margin-right :calc( -0.5em / 2 ); }
.c-grid--gap-xsmall > * { padding-left:calc(  0.5em / 2 ); padding-right:calc(  0.5em / 2 ); }
.c-grid--gap-xlarge     { margin-left :calc( -4.5em / 2 ); margin-right :calc( -4.5em / 2 ); }
.c-grid--gap-xlarge > * { padding-left:calc(  4.5em / 2 ); padding-right:calc(  4.5em / 2 ); }

.c-grid--gap-small.c-grid--width-1of1   > :nth-child(n+2),
.c-grid--gap-small.c-grid--width-1of2   > :nth-child(n+3),
.c-grid--gap-small.c-grid--width-1of3   > :nth-child(n+4),
.c-grid--gap-small.c-grid--width-1of4   > :nth-child(n+5),
.c-grid--gap-small.c-grid--width-1of5   > :nth-child(n+6),
.c-grid--gap-small.c-grid--width-1of6   > :nth-child(n+7),
.c-grid--gap-small.c-grid--width-1of7   > :nth-child(n+8),
.c-grid--gap-small.c-grid--width-1of8   > :nth-child(n+9),
.c-grid--gap-small.c-grid--width-1of9   > :nth-child(n+10),
.c-grid--gap-small.c-grid--width-1of10  > :nth-child(n+11) { margin-top:1.0em; }
.c-grid--gap-medium.c-grid--width-1of1  > :nth-child(n+2),
.c-grid--gap-medium.c-grid--width-1of2  > :nth-child(n+3),
.c-grid--gap-medium.c-grid--width-1of3  > :nth-child(n+4),
.c-grid--gap-medium.c-grid--width-1of4  > :nth-child(n+5),
.c-grid--gap-medium.c-grid--width-1of5  > :nth-child(n+6),
.c-grid--gap-medium.c-grid--width-1of6  > :nth-child(n+7),
.c-grid--gap-medium.c-grid--width-1of7  > :nth-child(n+8),
.c-grid--gap-medium.c-grid--width-1of8  > :nth-child(n+9),
.c-grid--gap-medium.c-grid--width-1of9  > :nth-child(n+10),
.c-grid--gap-medium.c-grid--width-1of10 > :nth-child(n+11) { margin-top:2.0em; }
.c-grid--gap-large.c-grid--width-1of1   > :nth-child(n+2),
.c-grid--gap-large.c-grid--width-1of2   > :nth-child(n+3),
.c-grid--gap-large.c-grid--width-1of3   > :nth-child(n+4),
.c-grid--gap-large.c-grid--width-1of4   > :nth-child(n+5),
.c-grid--gap-large.c-grid--width-1of5   > :nth-child(n+6),
.c-grid--gap-large.c-grid--width-1of6   > :nth-child(n+7),
.c-grid--gap-large.c-grid--width-1of7   > :nth-child(n+8),
.c-grid--gap-large.c-grid--width-1of8   > :nth-child(n+9),
.c-grid--gap-large.c-grid--width-1of9   > :nth-child(n+10),
.c-grid--gap-large.c-grid--width-1of10  > :nth-child(n+11) { margin-top:3.0em; }
.c-grid--gap-xsmall.c-grid--width-1of1  > :nth-child(n+2),
.c-grid--gap-xsmall.c-grid--width-1of2  > :nth-child(n+3),
.c-grid--gap-xsmall.c-grid--width-1of3  > :nth-child(n+4),
.c-grid--gap-xsmall.c-grid--width-1of4  > :nth-child(n+5),
.c-grid--gap-xsmall.c-grid--width-1of5  > :nth-child(n+6),
.c-grid--gap-xsmall.c-grid--width-1of6  > :nth-child(n+7),
.c-grid--gap-xsmall.c-grid--width-1of7  > :nth-child(n+8),
.c-grid--gap-xsmall.c-grid--width-1of8  > :nth-child(n+9),
.c-grid--gap-xsmall.c-grid--width-1of9  > :nth-child(n+10),
.c-grid--gap-xsmall.c-grid--width-1of10 > :nth-child(n+11) { margin-top:0.5em; }
.c-grid--gap-xlarge.c-grid--width-1of1  > :nth-child(n+2),
.c-grid--gap-xlarge.c-grid--width-1of2  > :nth-child(n+3),
.c-grid--gap-xlarge.c-grid--width-1of3  > :nth-child(n+4),
.c-grid--gap-xlarge.c-grid--width-1of4  > :nth-child(n+5),
.c-grid--gap-xlarge.c-grid--width-1of5  > :nth-child(n+6),
.c-grid--gap-xlarge.c-grid--width-1of6  > :nth-child(n+7),
.c-grid--gap-xlarge.c-grid--width-1of7  > :nth-child(n+8),
.c-grid--gap-xlarge.c-grid--width-1of8  > :nth-child(n+9),
.c-grid--gap-xlarge.c-grid--width-1of9  > :nth-child(n+10),
.c-grid--gap-xlarge.c-grid--width-1of10 > :nth-child(n+11) { margin-top:4.5em; }

.c-grid + .c-grid--gap-small  { margin-top:1.0em; }
.c-grid + .c-grid--gap-medium { margin-top:2.0em; }
.c-grid + .c-grid--gap-large  { margin-top:3.0em; }
.c-grid + .c-grid--gap-xsmall { margin-top:0.5em; }
.c-grid + .c-grid--gap-xlarge { margin-top:4.5em; }

* + .c-grid { margin-top:1.0em; }

@media screen and ( max-width:640px ) {
	.c-grid\@sp--left       { text-align:left;   }
	.c-grid\@sp--right      { text-align:right;  }
	.c-grid\@sp--center     { text-align:center; }
	.c-grid\@sp--left   > *,
	.c-grid\@sp--right  > *,
	.c-grid\@sp--center > * { text-align:left;   }
	
	.c-grid\@sp--top    > * { vertical-align:top;    }
	.c-grid\@sp--bottom > * { vertical-align:bottom; }
	.c-grid\@sp--middle > * { vertical-align:middle; }
	
	.c-grid\@sp--width-1of1  > * { width:calc( 100% /  1 ); }
	.c-grid\@sp--width-1of2  > * { width:calc( 100% /  2 ); }
	.c-grid\@sp--width-1of3  > * { width:calc( 100% /  3 ); }
	.c-grid\@sp--width-1of4  > * { width:calc( 100% /  4 ); }
	.c-grid\@sp--width-1of5  > * { width:calc( 100% /  5 ); }
	.c-grid\@sp--width-1of6  > * { width:calc( 100% /  6 ); }
	.c-grid\@sp--width-1of7  > * { width:calc( 100% /  7 ); }
	.c-grid\@sp--width-1of8  > * { width:calc( 100% /  8 ); }
	.c-grid\@sp--width-1of9  > * { width:calc( 100% /  9 ); }
	.c-grid\@sp--width-1of10 > * { width:calc( 100% / 10 ); }
	
	.c-grid\@sp--gap-small      { margin-left :calc( -1.0em / 2 ); margin-right :calc( -1.0em / 2 ); }
	.c-grid\@sp--gap-small  > * { padding-left:calc(  1.0em / 2 ); padding-right:calc(  1.0em / 2 ); }
	.c-grid\@sp--gap-medium     { margin-left :calc( -2.0em / 2 ); margin-right :calc( -2.0em / 2 ); }
	.c-grid\@sp--gap-medium > * { padding-left:calc(  2.0em / 2 ); padding-right:calc(  2.0em / 2 ); }
	.c-grid\@sp--gap-large      { margin-left :calc( -3.0em / 2 ); margin-right :calc( -3.0em / 2 ); }
	.c-grid\@sp--gap-large  > * { padding-left:calc(  3.0em / 2 ); padding-right:calc(  3.0em / 2 ); }
	.c-grid\@sp--gap-xsmall     { margin-left :calc( -0.5em / 2 ); margin-right :calc( -0.5em / 2 ); }
	.c-grid\@sp--gap-xsmall > * { padding-left:calc(  0.5em / 2 ); padding-right:calc(  0.5em / 2 ); }
	.c-grid\@sp--gap-xlarge     { margin-left :calc( -4.5em / 2 ); margin-right :calc( -4.5em / 2 ); }
	.c-grid\@sp--gap-xlarge > * { padding-left:calc(  4.5em / 2 ); padding-right:calc(  4.5em / 2 ); }
	
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of1   > :nth-child(n+2),
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of2   > :nth-child(n+3),
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of3   > :nth-child(n+4),
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of4   > :nth-child(n+5),
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of5   > :nth-child(n+6),
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of6   > :nth-child(n+7),
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of7   > :nth-child(n+8),
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of8   > :nth-child(n+9),
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of9   > :nth-child(n+10),
	.c-grid\@sp--gap-small.c-grid\@sp--width-1of10  > :nth-child(n+11) { margin-top:1.0em; }
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of1  > :nth-child(n+2),
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of2  > :nth-child(n+3),
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of3  > :nth-child(n+4),
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of4  > :nth-child(n+5),
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of5  > :nth-child(n+6),
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of6  > :nth-child(n+7),
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of7  > :nth-child(n+8),
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of8  > :nth-child(n+9),
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of9  > :nth-child(n+10),
	.c-grid\@sp--gap-medium.c-grid\@sp--width-1of10 > :nth-child(n+11) { margin-top:2.0em; }
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of1   > :nth-child(n+2),
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of2   > :nth-child(n+3),
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of3   > :nth-child(n+4),
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of4   > :nth-child(n+5),
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of5   > :nth-child(n+6),
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of6   > :nth-child(n+7),
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of7   > :nth-child(n+8),
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of8   > :nth-child(n+9),
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of9   > :nth-child(n+10),
	.c-grid\@sp--gap-large.c-grid\@sp--width-1of10  > :nth-child(n+11) { margin-top:3.0em; }
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of1  > :nth-child(n+2),
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of2  > :nth-child(n+3),
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of3  > :nth-child(n+4),
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of4  > :nth-child(n+5),
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of5  > :nth-child(n+6),
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of6  > :nth-child(n+7),
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of7  > :nth-child(n+8),
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of8  > :nth-child(n+9),
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of9  > :nth-child(n+10),
	.c-grid\@sp--gap-xsmall.c-grid\@sp--width-1of10 > :nth-child(n+11) { margin-top:0.5em; }
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of1  > :nth-child(n+2),
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of2  > :nth-child(n+3),
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of3  > :nth-child(n+4),
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of4  > :nth-child(n+5),
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of5  > :nth-child(n+6),
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of6  > :nth-child(n+7),
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of7  > :nth-child(n+8),
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of8  > :nth-child(n+9),
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of9  > :nth-child(n+10),
	.c-grid\@sp--gap-xlarge.c-grid\@sp--width-1of10 > :nth-child(n+11) { margin-top:4.5em; }
	
	.c-grid + .c-grid\@sp--gap-small  { margin-top:1.0em; }
	.c-grid + .c-grid\@sp--gap-medium { margin-top:2.0em; }
	.c-grid + .c-grid\@sp--gap-large  { margin-top:3.0em; }
	.c-grid + .c-grid\@sp--gap-xsmall { margin-top:0.5em; }
	.c-grid + .c-grid\@sp--gap-xlarge { margin-top:4.5em; }
}
@media all and (min-width:0\0) and (min-resolution:+72dpi) {
	.c-grid > * { margin-left:-0.1px; }
} /* [IE9-11] */

/** Width **/

.u-width-1of1, .u-width-2of2, .u-width-3of3, .u-width-4of4, .u-width-5of5,
.u-width-6of6, .u-width-7of7, .u-width-8of8, .u-width-9of9, .u-width-10of10 { width:100%; }

.u-width-1of2  { width:calc( 100% /  2 * 1 ); }
.u-width-1of3  { width:calc( 100% /  3 * 1 ); }
.u-width-2of3  { width:calc( 100% /  3 * 2 ); }
.u-width-1of4  { width:calc( 100% /  4 * 1 ); }
.u-width-2of4  { width:calc( 100% /  4 * 2 ); }
.u-width-3of4  { width:calc( 100% /  4 * 3 ); }
.u-width-1of5  { width:calc( 100% /  5 * 1 ); }
.u-width-2of5  { width:calc( 100% /  5 * 2 ); }
.u-width-3of5  { width:calc( 100% /  5 * 3 ); }
.u-width-4of5  { width:calc( 100% /  5 * 4 ); }
.u-width-1of6  { width:calc( 100% /  6 * 1 ); }
.u-width-2of6  { width:calc( 100% /  6 * 2 ); }
.u-width-3of6  { width:calc( 100% /  6 * 3 ); }
.u-width-4of6  { width:calc( 100% /  6 * 4 ); }
.u-width-5of6  { width:calc( 100% /  6 * 5 ); }
.u-width-1of7  { width:calc( 100% /  7 * 1 ); }
.u-width-2of7  { width:calc( 100% /  7 * 2 ); }
.u-width-3of7  { width:calc( 100% /  7 * 3 ); }
.u-width-4of7  { width:calc( 100% /  7 * 4 ); }
.u-width-5of7  { width:calc( 100% /  7 * 5 ); }
.u-width-6of7  { width:calc( 100% /  7 * 6 ); }
.u-width-1of8  { width:calc( 100% /  8 * 1 ); }
.u-width-2of8  { width:calc( 100% /  8 * 2 ); }
.u-width-3of8  { width:calc( 100% /  8 * 3 ); }
.u-width-4of8  { width:calc( 100% /  8 * 4 ); }
.u-width-5of8  { width:calc( 100% /  8 * 5 ); }
.u-width-6of8  { width:calc( 100% /  8 * 6 ); }
.u-width-7of8  { width:calc( 100% /  8 * 7 ); }
.u-width-1of9  { width:calc( 100% /  9 * 1 ); }
.u-width-2of9  { width:calc( 100% /  9 * 2 ); }
.u-width-3of9  { width:calc( 100% /  9 * 3 ); }
.u-width-4of9  { width:calc( 100% /  9 * 4 ); }
.u-width-5of9  { width:calc( 100% /  9 * 5 ); }
.u-width-6of9  { width:calc( 100% /  9 * 6 ); }
.u-width-7of9  { width:calc( 100% /  9 * 7 ); }
.u-width-8of9  { width:calc( 100% /  9 * 8 ); }
.u-width-1of10 { width:calc( 100% / 10 * 1 ); }
.u-width-2of10 { width:calc( 100% / 10 * 2 ); }
.u-width-3of10 { width:calc( 100% / 10 * 3 ); }
.u-width-4of10 { width:calc( 100% / 10 * 4 ); }
.u-width-5of10 { width:calc( 100% / 10 * 5 ); }
.u-width-6of10 { width:calc( 100% / 10 * 6 ); }
.u-width-7of10 { width:calc( 100% / 10 * 7 ); }
.u-width-8of10 { width:calc( 100% / 10 * 8 ); }
.u-width-9of10 { width:calc( 100% / 10 * 9 ); }

@media screen and ( max-width:640px ) {
	.u-width\@sp-1of1, .u-width\@sp-2of2, .u-width\@sp-3of3, .u-width\@sp-4of4, .u-width\@sp-5of5,
	.u-width\@sp-6of6, .u-width\@sp-7of7, .u-width\@sp-8of8, .u-width\@sp-9of9, .u-width\@sp-10of10 { width:100%; }
	
	.u-width\@sp-1of2  { width:calc( 100% /  2 * 1 ); }
	.u-width\@sp-1of3  { width:calc( 100% /  3 * 1 ); }
	.u-width\@sp-2of3  { width:calc( 100% /  3 * 2 ); }
	.u-width\@sp-1of4  { width:calc( 100% /  4 * 1 ); }
	.u-width\@sp-2of4  { width:calc( 100% /  4 * 2 ); }
	.u-width\@sp-3of4  { width:calc( 100% /  4 * 3 ); }
	.u-width\@sp-1of5  { width:calc( 100% /  5 * 1 ); }
	.u-width\@sp-2of5  { width:calc( 100% /  5 * 2 ); }
	.u-width\@sp-3of5  { width:calc( 100% /  5 * 3 ); }
	.u-width\@sp-4of5  { width:calc( 100% /  5 * 4 ); }
	.u-width\@sp-1of6  { width:calc( 100% /  6 * 1 ); }
	.u-width\@sp-2of6  { width:calc( 100% /  6 * 2 ); }
	.u-width\@sp-3of6  { width:calc( 100% /  6 * 3 ); }
	.u-width\@sp-4of6  { width:calc( 100% /  6 * 4 ); }
	.u-width\@sp-5of6  { width:calc( 100% /  6 * 5 ); }
	.u-width\@sp-1of7  { width:calc( 100% /  7 * 1 ); }
	.u-width\@sp-2of7  { width:calc( 100% /  7 * 2 ); }
	.u-width\@sp-3of7  { width:calc( 100% /  7 * 3 ); }
	.u-width\@sp-4of7  { width:calc( 100% /  7 * 4 ); }
	.u-width\@sp-5of7  { width:calc( 100% /  7 * 5 ); }
	.u-width\@sp-6of7  { width:calc( 100% /  7 * 6 ); }
	.u-width\@sp-1of8  { width:calc( 100% /  8 * 1 ); }
	.u-width\@sp-2of8  { width:calc( 100% /  8 * 2 ); }
	.u-width\@sp-3of8  { width:calc( 100% /  8 * 3 ); }
	.u-width\@sp-4of8  { width:calc( 100% /  8 * 4 ); }
	.u-width\@sp-5of8  { width:calc( 100% /  8 * 5 ); }
	.u-width\@sp-6of8  { width:calc( 100% /  8 * 6 ); }
	.u-width\@sp-7of8  { width:calc( 100% /  8 * 7 ); }
	.u-width\@sp-1of9  { width:calc( 100% /  9 * 1 ); }
	.u-width\@sp-2of9  { width:calc( 100% /  9 * 2 ); }
	.u-width\@sp-3of9  { width:calc( 100% /  9 * 3 ); }
	.u-width\@sp-4of9  { width:calc( 100% /  9 * 4 ); }
	.u-width\@sp-5of9  { width:calc( 100% /  9 * 5 ); }
	.u-width\@sp-6of9  { width:calc( 100% /  9 * 6 ); }
	.u-width\@sp-7of9  { width:calc( 100% /  9 * 7 ); }
	.u-width\@sp-8of9  { width:calc( 100% /  9 * 8 ); }
	.u-width\@sp-1of10 { width:calc( 100% / 10 * 1 ); }
	.u-width\@sp-2of10 { width:calc( 100% / 10 * 2 ); }
	.u-width\@sp-3of10 { width:calc( 100% / 10 * 3 ); }
	.u-width\@sp-4of10 { width:calc( 100% / 10 * 4 ); }
	.u-width\@sp-5of10 { width:calc( 100% / 10 * 5 ); }
	.u-width\@sp-6of10 { width:calc( 100% / 10 * 6 ); }
	.u-width\@sp-7of10 { width:calc( 100% / 10 * 7 ); }
	.u-width\@sp-8of10 { width:calc( 100% / 10 * 8 ); }
	.u-width\@sp-9of10 { width:calc( 100% / 10 * 9 ); }
}

/** Pull **/

[class*="u-pull-"] { position:relative; }

.u-pull-1of1, .u-pull-2of2, .u-pull-3of3, .u-pull-4of4, .u-pull-5of5,
.u-pull-6of6, .u-pull-7of7, .u-pull-8of8, .u-pull-9of9, .u-pull-10of10 { left:-100%; }

.u-pull-1of2  { left:calc( -100% /  2 * 1 ); }
.u-pull-1of3  { left:calc( -100% /  3 * 1 ); }
.u-pull-2of3  { left:calc( -100% /  3 * 2 ); }
.u-pull-1of4  { left:calc( -100% /  4 * 1 ); }
.u-pull-2of4  { left:calc( -100% /  4 * 2 ); }
.u-pull-3of4  { left:calc( -100% /  4 * 3 ); }
.u-pull-1of5  { left:calc( -100% /  5 * 1 ); }
.u-pull-2of5  { left:calc( -100% /  5 * 2 ); }
.u-pull-3of5  { left:calc( -100% /  5 * 3 ); }
.u-pull-4of5  { left:calc( -100% /  5 * 4 ); }
.u-pull-1of6  { left:calc( -100% /  6 * 1 ); }
.u-pull-2of6  { left:calc( -100% /  6 * 2 ); }
.u-pull-3of6  { left:calc( -100% /  6 * 3 ); }
.u-pull-4of6  { left:calc( -100% /  6 * 4 ); }
.u-pull-5of6  { left:calc( -100% /  6 * 5 ); }
.u-pull-1of7  { left:calc( -100% /  7 * 1 ); }
.u-pull-2of7  { left:calc( -100% /  7 * 2 ); }
.u-pull-3of7  { left:calc( -100% /  7 * 3 ); }
.u-pull-4of7  { left:calc( -100% /  7 * 4 ); }
.u-pull-5of7  { left:calc( -100% /  7 * 5 ); }
.u-pull-6of7  { left:calc( -100% /  7 * 6 ); }
.u-pull-1of8  { left:calc( -100% /  8 * 1 ); }
.u-pull-2of8  { left:calc( -100% /  8 * 2 ); }
.u-pull-3of8  { left:calc( -100% /  8 * 3 ); }
.u-pull-4of8  { left:calc( -100% /  8 * 4 ); }
.u-pull-5of8  { left:calc( -100% /  8 * 5 ); }
.u-pull-6of8  { left:calc( -100% /  8 * 6 ); }
.u-pull-7of8  { left:calc( -100% /  8 * 7 ); }
.u-pull-1of9  { left:calc( -100% /  9 * 1 ); }
.u-pull-2of9  { left:calc( -100% /  9 * 2 ); }
.u-pull-3of9  { left:calc( -100% /  9 * 3 ); }
.u-pull-4of9  { left:calc( -100% /  9 * 4 ); }
.u-pull-5of9  { left:calc( -100% /  9 * 5 ); }
.u-pull-6of9  { left:calc( -100% /  9 * 6 ); }
.u-pull-7of9  { left:calc( -100% /  9 * 7 ); }
.u-pull-8of9  { left:calc( -100% /  9 * 8 ); }
.u-pull-1of10 { left:calc( -100% / 10 * 1 ); }
.u-pull-2of10 { left:calc( -100% / 10 * 2 ); }
.u-pull-3of10 { left:calc( -100% / 10 * 3 ); }
.u-pull-4of10 { left:calc( -100% / 10 * 4 ); }
.u-pull-5of10 { left:calc( -100% / 10 * 5 ); }
.u-pull-6of10 { left:calc( -100% / 10 * 6 ); }
.u-pull-7of10 { left:calc( -100% / 10 * 7 ); }
.u-pull-8of10 { left:calc( -100% / 10 * 8 ); }
.u-pull-9of10 { left:calc( -100% / 10 * 9 ); }

.u-pull-none { left:0; }

@media screen and ( max-width:640px ) {
	.c-grid\@sp--width-1of1 > [class*="u-pull-"] { left:0; }
	
	.u-width\@sp-1of1[class*="u-pull-"] { left:0; }
	
	.u-pull\@sp-none { left:0; }
}

/** Push **/

[class*="u-push-"] { position:relative; }

.u-push-1of1, .u-push-2of2, .u-push-3of3, .u-push-4of4, .u-push-5of5,
.u-push-6of6, .u-push-7of7, .u-push-8of8, .u-push-9of9, .u-push-10of10 { left:100%; }

.u-push-1of2  { left:calc( 100% /  2 * 1 ); }
.u-push-1of3  { left:calc( 100% /  3 * 1 ); }
.u-push-2of3  { left:calc( 100% /  3 * 2 ); }
.u-push-1of4  { left:calc( 100% /  4 * 1 ); }
.u-push-2of4  { left:calc( 100% /  4 * 2 ); }
.u-push-3of4  { left:calc( 100% /  4 * 3 ); }
.u-push-1of5  { left:calc( 100% /  5 * 1 ); }
.u-push-2of5  { left:calc( 100% /  5 * 2 ); }
.u-push-3of5  { left:calc( 100% /  5 * 3 ); }
.u-push-4of5  { left:calc( 100% /  5 * 4 ); }
.u-push-1of6  { left:calc( 100% /  6 * 1 ); }
.u-push-2of6  { left:calc( 100% /  6 * 2 ); }
.u-push-3of6  { left:calc( 100% /  6 * 3 ); }
.u-push-4of6  { left:calc( 100% /  6 * 4 ); }
.u-push-5of6  { left:calc( 100% /  6 * 5 ); }
.u-push-1of7  { left:calc( 100% /  7 * 1 ); }
.u-push-2of7  { left:calc( 100% /  7 * 2 ); }
.u-push-3of7  { left:calc( 100% /  7 * 3 ); }
.u-push-4of7  { left:calc( 100% /  7 * 4 ); }
.u-push-5of7  { left:calc( 100% /  7 * 5 ); }
.u-push-6of7  { left:calc( 100% /  7 * 6 ); }
.u-push-1of8  { left:calc( 100% /  8 * 1 ); }
.u-push-2of8  { left:calc( 100% /  8 * 2 ); }
.u-push-3of8  { left:calc( 100% /  8 * 3 ); }
.u-push-4of8  { left:calc( 100% /  8 * 4 ); }
.u-push-5of8  { left:calc( 100% /  8 * 5 ); }
.u-push-6of8  { left:calc( 100% /  8 * 6 ); }
.u-push-7of8  { left:calc( 100% /  8 * 7 ); }
.u-push-1of9  { left:calc( 100% /  9 * 1 ); }
.u-push-2of9  { left:calc( 100% /  9 * 2 ); }
.u-push-3of9  { left:calc( 100% /  9 * 3 ); }
.u-push-4of9  { left:calc( 100% /  9 * 4 ); }
.u-push-5of9  { left:calc( 100% /  9 * 5 ); }
.u-push-6of9  { left:calc( 100% /  9 * 6 ); }
.u-push-7of9  { left:calc( 100% /  9 * 7 ); }
.u-push-8of9  { left:calc( 100% /  9 * 8 ); }
.u-push-1of10 { left:calc( 100% / 10 * 1 ); }
.u-push-2of10 { left:calc( 100% / 10 * 2 ); }
.u-push-3of10 { left:calc( 100% / 10 * 3 ); }
.u-push-4of10 { left:calc( 100% / 10 * 4 ); }
.u-push-5of10 { left:calc( 100% / 10 * 5 ); }
.u-push-6of10 { left:calc( 100% / 10 * 6 ); }
.u-push-7of10 { left:calc( 100% / 10 * 7 ); }
.u-push-8of10 { left:calc( 100% / 10 * 8 ); }
.u-push-9of10 { left:calc( 100% / 10 * 9 ); }

.u-push-none { left:0; }

@media screen and ( max-width:640px ) {
	.c-grid\@sp--width-1of1 > [class*="u-push-"] { left:0; }
	
	.u-width\@sp-1of1[class*="u-push-"] { left:0; }
	
	.u-push\@sp-none { left:0; }
}

/** Align **/

[class*="u-align-"] { display:table; }

.u-align-left   { margin-left:   0; margin-right:auto; }
.u-align-right  { margin-left:auto; margin-right:   0; }
.u-align-center { margin-left:auto; margin-right:auto; }

@media screen and ( max-width:640px ) {
	[class*="u-align\@sp-"] { display:table; }
	
	.u-align\@sp-left   { margin-left:   0; margin-right:auto; }
	.u-align\@sp-right  { margin-left:auto; margin-right:   0; }
	.u-align\@sp-center { margin-left:auto; margin-right:auto; }
}

/** Text **/

.u-text-inline     { letter-spacing:-0.4em; }
.u-text-inline > * {
	display:inline-block;
	vertical-align:inherit;
	letter-spacing:normal;
}

.u-text-top      { vertical-align:top;      }
.u-text-bottom   { vertical-align:bottom;   }
.u-text-middle   { vertical-align:middle;   }
.u-text-baseline { vertical-align:baseline; }

.u-text-left     { text-align:left;    }
.u-text-right    { text-align:right;   }
.u-text-center   { text-align:center;  }
.u-text-justify  { text-align:justify; }

.u-text-normal   { font-weight:normal; }
.u-text-bold     { font-weight:bold;   }

.u-text-small    { font-size: 80%; }
.u-text-medium   { font-size:100%; }
.u-text-large    { font-size:120%; }
.u-text-xsmall   { font-size: 70%; }
.u-text-xlarge   { font-size:130%; }

@media screen and ( max-width:640px ) {
	.u-text\@sp-inline     { letter-spacing:-0.4em; }
	.u-text\@sp-inline > * {
		display:inline-block;
		vertical-align:inherit;
		letter-spacing:normal;
	}
	
	.u-text\@sp-top      { vertical-align:top;      }
	.u-text\@sp-bottom   { vertical-align:bottom;   }
	.u-text\@sp-middle   { vertical-align:middle;   }
	.u-text\@sp-baseline { vertical-align:baseline; }
	
	.u-text\@sp-left     { text-align:left;   }
	.u-text\@sp-right    { text-align:right;  }
	.u-text\@sp-center   { text-align:center; }
	.u-text\@sp-justify  { text-align:justify; }
	
	.u-text\@sp-normal   { font-weight:normal; }
	.u-text\@sp-bold     { font-weight:bold;   }
	
	.u-text\@sp-small    { font-size: 80%; }
	.u-text\@sp-medium   { font-size:100%; }
	.u-text\@sp-large    { font-size:120%; }
	.u-text\@sp-xsmall   { font-size: 70%; }
	.u-text\@sp-xlarge   { font-size:130%; }
}

/** Display **/

.u-display-none { display:none !important; }

@media all and ( min-width:641px ) { .u-display\@pc-none { display:none !important; } }
@media all and ( max-width:640px ) { .u-display\@sp-none { display:none !important; } }
