@charset "utf-8";

/* CSS Document */

@font-face {
	font-family: CONDENSEicon;
	src: url("CONDENSEicon.eot");
}

@font-face {
	font-family: 'CONDENSEicon';
	src: url('CONDENSEicon.woff') format('woff'), url('CONDENSEicon.otf') format('opentype');
}

.footer_bottom span {
	font-family: CONDENSEicon;
}

/*------------------------

背景

------------------------*/

body {
	border-top: 5px solid #FF9933;
}

.wrap {
	width: 96%;
	max-width: 414px;
	height: auto;
	min-height: 100%;
	margin: auto;
	padding: 0;
}

@media only screen and (min-width: 1024px) {

.wrap {
	width: 980px;
	max-width: none;
}

.wrap-880 {
	width: 880px;
	height: auto;
	min-height: 100%;
	margin: auto;
	padding: 0;
}

.pc-wrap-60 {
	width: 60%;
	height: auto;
	min-height: 100%;
	margin: auto;
	padding: 0;
}

.pc-wrap-30 {
	width: 30%;
	height: auto;
	min-height: 100%;
	margin: auto;
	padding: 0;
}
}

.units-row {
	margin-bottom: 7px;
}

.contents {
	margin-bottom: 14px;
}

@media only screen and (min-width: 1024px) {

.pc-wrap {
	width: 880px;
	max-width: none;
	height: auto;
	min-height: 100%;
	margin: 1.65em auto;
	padding: 23px;
	background-color: #F7F7F8;
	border: 1px solid #E7E7E7;
}

.profile-form .pc-wrap {
	margin: 0 auto 1.65em;
}
}

/*------------------------

ヘッダー

------------------------*/

header .logo {
	width:153px;
	height: 51px;
	padding:5px 0 0;
}

header .logo img {
	height: 41px;
}

@media only screen and (min-width: 1024px) {

header .logo {
	width:271px;
	height: 90px;
	padding:8px 0 0;
}

header .logo img {
	height:73px;
}
}

header .navbar-left,
header .navbar-right {
	width: 50%;
}

@media only screen and (min-width: 1024px) {

header .navbar-left {
	width: 70%;
}

header .navbar-right {
	width: 30%;
}
}

header .navbar li {
	margin-right: 0;
}

/*------------------------

PC用フッター

------------------------*/

/*------------------------

フッター下

------------------------*/

.footer_bottom {
	width: 100%;
	margin: 0;
	padding: 0 0 45px;
	border-top: 5px solid #FF9933;
	background: url(../img/back_bar_header.jpg) repeat;
}

.box_footer_bottom {
	width: 980px;
	margin: 0 auto;
	padding: 0;
	color: #FFF;
}

.box_footer_bottom_left {
	margin: 0;
	padding: 10px 0 0;
	float: left;
	font-size: 93%;
}

.box_footer_bottom_left a {
	color: #FFF;
}

.box_footer_bottom_left li {
	float: left;
	padding: 5px 5px 0 0;
}

.box_footer_bottom_right {
	margin: 0;
	padding: 0;
	float: right;
}

.box_footer_bottom_right a {
	margin: 0;
	padding: 3px 10px 5px;
	float: right;
	display: block;
	background: #FF9933;
	color: #FFF;
	font-weight: bold;
	font-size: 85%;
}

@media screen and (min-width: 1280px) {

.box_footer_bottom_right a:hover {
	background: #E7C874;
	text-decoration: none;
}
}

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

.box_footer_bottom {
	width: 300px;
}

.box_footer_bottom_left {
	padding: 5px 0 0;
}

.box_footer_bottom_left ul {
	width: 150px;
}
}

/*------------------------

フォーム（デフォルト）

------------------------*/

input,
button,
textarea,
select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

input[type='text'],
input[type='password'],
input[type='email'],
input[type='url'],
input[type='phone'],
input[type='tel'],
input[type='number'],
input[type='datetime'],
input[type='date'],
input[type='month'],
input[type='color'],
input[type='time'],
input[type='search'],
input[type='datetime-local'] {
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: .7em 0.5em;
}

label,
select {
	cursor: pointer;
}

input[type='submit'],
input[type='reset'],
input[type='button'] {
	font-family: Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.form {
	width: 100%;
	margin-bottom: 0;
	background-color: #fff;
}

.form .label {
	float: right;
}

.form th,
.form td {
	padding: 1em;
	border: 1px solid #e5e5e5;
	text-align: left;
}

.form th {
	width: 200px;
	background-color: #f7f7f7;
}

.form th.red {
	background-color: #ffe1e4;
	color: #000;
}

.form td.red {
	background-color: #fff4f5;
}

@media (max-width: 767px) {

.form th,
.form td {
	width: 100%;
	margin-top: -1px;
	display: block;
}

.form td input[type='text'] {
	width: 100%;
}

.form td input.sp-50 {
	width: 40%;
}

.form td input[type='text'].width-20 {
	width: 40%;
}
}

.form ul,
.form li {
	margin-bottom: 0;
}

.btn-area {
	margin: 0 auto;
	text-align: center;
}

.btn-area .btn {
	width: 100%;
	margin-bottom: 1em;
	display: block;
}

.tools-alert-black {
	padding: 1.65em
}

.tools-alert-black p {
	margin-bottom: 0;
}

.tools-alert-black i {
	color: #de2c3b;
}

.policy-box {
	text-align: center;
	position: relative;
	padding: 1.6em;
	border-radius: 5px;
	margin-bottom: 1.65em;
	background-color: #fff;
	border: 1px solid #e5e5e5;
}

@media screen and (min-width: 1280px) {

.policy-box a:hover {
	text-decoration: none;
}
}

/*------------
radio・checkbox
------------*/

input:focus {
	outline: 0;
}

input[type="checkbox"] {
	position: relative;
	-webkit-appearance: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 18px;
	height: 18px;
	content: "";
	background-color: #FFFFFF;
	border: 1px solid #999999;
	-webkit-box-shadow: inset 4px 4px 10px rgba(0,0,0,0.2);
	box-shadow: inset 4px 4px 10px rgba(0,0,0,0.2);
	vertical-align: middle;
	cursor: pointer;
	top: -2px;
	margin-right: .2em;
}

input[type="checkbox"]:checked:after {
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	content: "";
	width: 10px;
	height: 10px;
	background: #FF9933;
}

input[type="radio"] {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 18px;
	height: 18px;
	content: "";
	background-color: #FFFFFF;
	border: 1px solid #999999;
	-webkit-border-radius: 24px;
	border-radius: 24px;
	-webkit-box-shadow: inset 4px 4px 10px rgba(0,0,0,0.2);
	box-shadow: inset 4px 4px 10px rgba(0,0,0,0.2);
	vertical-align: middle;
	cursor: pointer;
	top: -2px;
	margin-right: .2em;
}

input[type="radio"]:checked:after {
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	content: "";
	width: 10px;
	height: 10px;
	background: #FF9933;
	-webkit-border-radius: 12px;
	border-radius: 12px;
}

/*------------------------

フォーム（カスタマイズ）

------------------------*/

.form i {
	color: #ff0707;
}

.not-input {
	background-color: #faf4d1;
	border-bottom: 1px solid #cccdcf;
	padding: 7px;
	margin-bottom: 0;
	max-width: 414px;
	margin: auto;
}

.input-entered {
	background-color: #fff;
	border-bottom: 1px solid #cccdcf;
	padding: 7px;
	margin-bottom: 0;
	max-width: 414px;
	margin: auto;
}

.input-entered-q {
	background-color: #fff;
}

.form p.question-text {
	display: block;
	margin: 16px 0 6px;
}

.form p.question-text span {
	background-color: #333333;
	padding: 1px 5px 0;
	margin-right: 10px;
	color: #ffffff;
}

.form p.question-text .label.label-red {
	display: block;
}

@media only screen and (min-width: 1024px) {

.not-input,
.input-entered {
	width: 100%;
	max-width: none;
}

.not-input {
	padding: 13px 5px 13px 13px;
	margin-top: -1px;
	border: 1px solid #F7CBCB;
	background-color: #ffe6e6;
}

.input-entered {
	padding: 13px 5px 13px 13px;
	margin-top: -1px;
	border: 1px solid #F7CBCB;
	background-color: #fff;
}

.confirm .input-entered {
	border: 1px solid #E7E7E7;
}

.form p.question-text .label.label-red {
	display: inline-block;
	margin-right: 9%;
}

.form .question-box {
	margin-left: 13%;
}

.entry-form-confirm .form .question-box {
	margin-left: 0;
}
}

.form .header {
	font-size: 1.2rem;
	font-weight: 700;
	padding-top: 14px;
	letter-spacing: -.1em;
}

#question-blocks .header {
	background-color: #faf4d1;
}

.entry-form-confirm #question-blocks .header {
	background-color: #fff;
}

@media only screen and (max-width: 1023px) {
	#question-blocks .header {
	max-width: 414px;
	width: 100%;
	margin: auto;
	padding-left:7px;
	padding-right: 7px;
}	
}

@media only screen and (min-width: 1024px) {

.form .header {
	letter-spacing: 0;
	font-size: 1.3rem;
}

#question-blocks .header {
	background-color: transparent;
}

.form .header br.both {
	display: block;
}

.entry-form-confirm #question-blocks .header {
	padding-top: 10px;
	background-color: transparent;
}

}

.form .header span {
	font-weight: normal;
}

.form .header02 {
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: -.1em;
}

@media only screen and (min-width: 1024px) {

.form .header02 {
	letter-spacing: 0;
}
}

.form.confirm .detail {
	padding-top: 14px;
	padding-bottom: 14px;
}

.form .sub-header {
	font-size: 1.2rem;
	padding-top: 1em;
	letter-spacing: -.1em;
	padding-left: 3em;
}

@media only screen and (min-width: 1024px) {

.form .sub-header {
	letter-spacing: 0;
}
}

.form .sub-header02 {
	font-size: 1.2rem;
	padding-top: 1em;
	letter-spacing: 0;
	padding-left: 1.65em;
}

.form .sub-header03 {
	font-size: 1.2rem;
	letter-spacing: 0;
	padding-left: 1.65em;
}

.form .header.line02,
.form .sub-header.line02 {
	padding-top: .5em;
}

@media only screen and (min-width: 1024px) {

.form .header.line02,
.form .sub-header.line02 {
	padding-top: 1em;
}
}

.form .label-area {
	padding-top: 1em;
}

.form .label.label-red {
	padding: .2em;
	color: #ffffff;
	font-size: 1.1rem;
	font-weight: 400;
	border-radius: 2px;
	background-color: #e51700;
	float: left;
}

.form select[multiple],
.form select[multiple="multiple"],
.form textarea,
.form input[type="text"],
.form input[type="password"],
.form input[type="email"],
.form input[type="url"],
.form input[type="phone"],
.form input[type="tel"],
.form input[type="number"],
.form input[type="datetime"],
.form input[type="date"],
.form input[type="month"],
.form input[type="color"],
.form input[type="time"],
.form input[type="search"],
.form input[type="datetime-local"] {
	border-width: 1px;
	border-color: rgb(204, 205, 207);
	border-style: solid;
	border-radius: 3px;
	background-color: rgb(255, 255, 255);
	box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.35);
}

.form select[multiple].require,
.form select[multiple="multiple"].require,
.form textarea.require,
#question-blocks .not-input textarea,
.form input[type="text"].require,
.form input[type="password"].require,
.form input[type="email"].require,
.form input[type="url"].require,
.form input[type="phone"].require,
.form input[type="tel"].require,
.form input[type="number"].require,
.form input[type="datetime"].require,
.form input[type="date"].require,
.form input[type="month"].require,
.form input[type="color"].require,
.form input[type="time"].require,
.form input[type="search"].require,
.form input[type="datetime-local"].require {
	border-width: 1px;
	border-color: rgb(253, 174, 214);
	border-style: solid;
	border-radius: 3px;
	background-color: rgb(253, 238, 246);
	box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.35);
}

.form .input-entered select[multiple].require,
.form .input-entered select[multiple="multiple"].require,
.form .input-entered textarea.require,
#question-blocks .input-entered textarea,
.form .input-entered input[type="text"].require,
.form .input-entered input[type="password"].require,
.form .input-entered input[type="email"].require,
.form .input-entered input[type="url"].require,
.form .input-entered input[type="phone"].require,
.form .input-entered input[type="tel"].require,
.form .input-entered input[type="number"].require,
.form .input-entered input[type="datetime"].require,
.form .input-entered input[type="date"].require,
.form .input-entered input[type="month"].require,
.form .input-entered input[type="color"].require,
.form .input-entered input[type="time"].require,
.form .input-entered input[type="search"].require,
.form .input-entered input[type="datetime-local"].require {
	border-width: 1px;
	border-color: rgb(204, 205, 207);
	border-style: solid;
	border-radius: 3px;
	background-color: rgb(255, 255, 255);
	box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.35);
}

@media only screen and (min-width: 1024px) {

.form select[multiple].require,
.form select[multiple="multiple"].require,
.form textarea.require,
#question-blocks .not-input textarea,
.form input[type="text"].require,
.form input[type="password"].require,
.form input[type="email"].require,
.form input[type="url"].require,
.form input[type="phone"].require,
.form input[type="tel"].require,
.form input[type="number"].require,
.form input[type="datetime"].require,
.form input[type="date"].require,
.form input[type="month"].require,
.form input[type="color"].require,
.form input[type="time"].require,
.form input[type="search"].require,
.form input[type="datetime-local"].require {
	border-width: 0;
	border-radius: 3px;
	background-color: #fff;
	box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.35);
}
}

.form select[multiple].error,
.form select[multiple="multiple"].error,
.form textarea.error,
.form input[type="text"].error,
.form input[type="password"].error,
.form input[type="email"].error,
.form input[type="url"].error,
.form input[type="phone"].error,
.form input[type="tel"].error,
.form input[type="number"].error,
.form input[type="datetime"].error,
.form input[type="date"].error,
.form input[type="month"].error,
.form input[type="color"].error,
.form input[type="time"].error,
.form input[type="search"].error,
.form input[type="datetime-local"].error,
#question-blocks textarea.error {
	background-color: #fbf7b9;
	border: 2px solid #ff4e00;
}

.select {
	vertical-align: middle;
	padding: 0;
	color: #555;
	border: 1px solid #aaa;
	text-shadow: none;
	border-width: 1px;
	border-color: rgb(253, 174, 214);
	border-style: solid;
	border-radius: 3px;
	background-color: rgb(253, 238, 246);
	box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.35);
}

#addressbox .select.error {
	margin-top: 20px;
}

#schoolbox .select,
#yearbox .select,
#question-blocks .select {
	position: relative;
}

.select-wrap.error select,
.select.error select {
	background-color: #fbf7b9;
	border: 2px solid #ff4e00;
	box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.35);
}

.input-entered .select {
	border-width: 1px;
	border-color: rgb(204, 205, 207);
	border-style: solid;
	border-radius: 3px;
	background-color: rgb(255, 255, 255);
	box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.35);
}

@media only screen and (min-width: 1024px) {

.select {
	border-width: 0;
	border-radius: 3px;
	background-color: #fff;
	box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.35);
}
}

.select:before {
	position: absolute;
	top: 0.5em;
	right: 0.5em;
}

.select select {
	cursor: pointer;
	padding: 11px 0.6em;
	padding-right: 2em;
	font-size: 1.3rem;
	width: 100%;
	height: 41px;
	border: none;
	background: transparent;
	background-image: none;
	text-indent: 0.01px;
	text-overflow: '';
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.select select:focus {
	outline: none;
}

.select:before {
	margin-top: .5em;
	font-family: 'FontAwesome';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#addressbox .select.error:before {
	margin-top: 2em;
}

.icon--down:before,
.select:before {
	content: "\f0d7";
}

@media only screen and (min-width: 1024px) {

.select select {
	-webkit-appearance: menulist;
	-moz-appearance: menulist;
	appearance: menulist;
}

.select select {
	width: 100%;
}

.icon--down:before,
.select:before {
	display: none;
}
}

.form .small-text {
	color: #4d4c4c;
	font-size: .9rem;
	letter-spacing: -.1em;
	margin-bottom: 0;
	line-height: 1.5;
}

@media only screen and (min-width: 1024px) {

.form .small-text {
	letter-spacing: 0;
}
}

.radio-list {
	margin-left: .5em;
}

.entry-form-confirm .radio-list {
	margin-left: 0;
}

.radio-list li {
	padding-top: .8em;
	padding-bottom: .8em;
}

.zip-mark {
	padding-top: 11px;
}

.zip-info {
	padding-top: 7px;
	padding-left: .5em;
}

.thanks p.text-centered {
	padding: 1em 0;
}

@media only screen and (min-width: 1024px) {

.form .btn-area button {
	width: 294px;
}

.form .btn-area button:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
}

@media screen and (min-width: 1280px) {

input:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
}

/*------------------------

応募フォーム・プロフィール入力

------------------------*/


.entry-form header .navbar,
.profile-form header .navbar {
	margin-bottom: 0;
}

.entry-form header .navbar.navbar-right li,
.profile-form header .navbar.navbar-right li {
	display: block;
	text-align: center;
	width: 100%;
	margin-left: 0;
	border-top: 3px solid #e7e7e7;
	border-bottom: 3px solid #e7e7e7;
	margin-top: .7em;
}

@media only screen and (min-width: 1024px) {

.entry-form header .navbar.navbar-right li,
.profile-form header .navbar.navbar-right li {
	padding: 1.3em 0;
}
}

.entry-form header .number,
.profile-form header .number {
	font-weight: 700;
	color: #000000;
	font-size: 1rem;
	display: block;
	text-align: center;
}

.entry-form header .number em,
.profile-form header .number em {
	font-weight: 700;
	color: #FF9933;
	font-size: 1.6rem;
	margin: 0 .2em;
}

@media only screen and (min-width: 1024px) {

.entry-form header .number,
.profile-form header .number {
	font-size: 1.6rem;
}

.entry-form header .number em,
.profile-form header .number em {
	font-size: 2.5rem;
}
}

/*------------------------

ボタン

------------------------*/

.btn-pink,
input[type="submit"].btn-pink {
	position: relative;
	display: inline-block;
	padding: .7em 4em;
	background-color: #FF9933;
	border: 1px solid #FF9933;
	color: #fff;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	font-weight: 700;
	background-image: url(../img/arrow_menu_on.gif);
	background-repeat: no-repeat;
	background-position: right center;
}

@media screen and (min-width: 1280px) {

.btn-pink,
input[type="submit"].btn-pink {
	font-size: 1.6rem;
}

.btn-pink:hover,
input[type="submit"].btn-pink:hover {
	background-color: #fff;
	color: #FF9933;
	border: 1px solid #FF9933;
	cursor: pointer;
	background-image: url(../img/arrow_menu.gif);
	background-repeat: no-repeat;
	background-position: right center;
}
}

input[type="submit"].btn-pink.btn-big {
	border-radius: 3px;
	border-width: 1px;
	border-color: #FF9933;
	border-style: solid;
	background-image: url(../img/btn-arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
	color: #ffffff;
	font-weight: 700;
	text-shadow: 0px 2px 2px rgba(153, 21, 89, 0.2);
}

/*------------------------

リスト

------------------------*/

.list-flat {
	margin-bottom: 0;
}

.list-flat li {
	margin-bottom: 1em;
}

.list-flat li:last-child {
	margin-bottom: 0;
}

.list-left li {
	margin-right: 1em;
	float: left;
}

.list-left li:last-child {
	margin-right: 0;
}

.link {
	margin: 0;
}

.link li {
	list-style: none;
	line-height: 1.35;
}

.link li a {
	margin-left: 1em;
	display: block;
	text-decoration: none;
	text-indent: -1em;
}

.link li a:before {
	margin-right: .5em;
	content: '\f0da';
	color: #e60013;
	font: normal normal normal 14px/1 FontAwesome;
}

@media only screen and (max-width: 767px) {

.link li {
	margin-bottom: 1.65em;
	float: none;
}

.link li a {
	display: block;
}
}

.list-center {
	display: inline-block;
}

.list-before li {
	padding-left: 1em;
	display: block;
}

.list-before li:before {
	width: 1em;
	margin-left: -1em;
	padding: .5em 0;
	display: block;
	float: left;
	content: '';
	color: #007f2d;
	font-family: 'FontAwesome';
	text-align: center;
}

.list-before li.second:before {
	width: 1em;
	margin-left: 0;
	padding: .5em 0;
	display: block;
	float: left;
	content: '';
	color: #007f2d;
	font-family: 'FontAwesome';
	text-align: center;
}

.list-after li {
	padding-right: 15px;
	position: relative;
}

.list-after li:after {
	margin-top: -12px;
	position: absolute;
	top: 50%;
	right: 10px;
	content: '';
	color: #007f2d;
	font-family: 'FontAwesome';
}

.list-centered {
	text-align: center;
}

.list-centered ul {
	display: inline-block;
}

/*------------------------

画像

------------------------*/

@media screen and (min-width: 1280px) {

a:hover img {
	opacity: .6;
	filter: alpha(opacity=60);
	-moz-opacity: .6;
}
}

img.left {
	margin-right: 1em;
}

img.right {
	margin-left: 1em;
}

@media only screen and (max-width: 1023px) {

img {
	max-width: 100%;
}
}

/*------------------------

レイアウト

------------------------*/

.v-bottom {
	position: absolute !important;
	right: 0;
	bottom: 0;
}

.v-center {
	width: 100%;
	display: table;
}

.v-center p,
.v-center > div,
.v-center img {
	padding: 0 .5em;
	display: table-cell;
	vertical-align: middle;
}

@media only screen and (max-width: 1024px) {

.v-center img {
	min-width: 150px;
	margin: 0;
	padding: 0 10px;
}
}

@media only screen and (max-width: 767px) {

.v-center p,
 .v-center div {
	width: 100%;
	margin: 0 0 1.6em;
	padding: 0;
	display: block;
	text-align: left;
}

.v-center img {
	margin: 0 0 1.6em;
	padding: 0;
	display: block;
}
}

img {
	vertical-align: bottom;
}

.img-centered img {
	margin: 0 auto;
	display: block;
}

.btn-centered {
	text-align: center;
}

/*------------------------

Typography

------------------------*/

a {
	color: #FF9933;
	text-decoration: none;
}

i {
	margin: 0 .5em;
	color: #009944;
}

em,
i {
	font-style: normal;
}

.red {
	color: #c3000f;
}

/*------------------------

フォントサイズ

------------------------*/

html {
	font-size: 62.5%;
}

body {
	font-family: Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.3rem;
	line-height: 1.4;
}

@media only screen and (min-width: 1024px) {

body {
	font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	font-size: 1.4rem;
}
}

.font06 {
	font-size: .6rem;
}

.font07 {
	font-size: .7rem;
}

.font08 {
	font-size: .8rem;
}

.font09 {
	font-size: .9rem;
}

.font10 {
	font-size: 1.0rem;
}

.font11 {
	font-size: 1.1rem;
}

.font12 {
	font-size: 1.2rem;
}

.font13 {
	font-size: 1.3rem;
}

.font14 {
	font-size: 1.4rem;
}

.font15 {
	font-size: 1.5rem;
}

.font16 {
	font-size: 1.6rem;
}

.font17 {
	font-size: 1.7rem;
}

.font18 {
	font-size: 1.8rem;
}

.font19 {
	font-size: 1.9rem;
}

.font20 {
	font-size: 2.0rem;
}

.font21 {
	font-size: 2.1rem;
}

.font22 {
	font-size: 2.2rem;
}

.font23 {
	font-size: 2.3rem;
}

.font24 {
	font-size: 2.4rem;
}

.font25 {
	font-size: 2.5rem;
}

.font26 {
	font-size: 2.6rem;
}

.font27 {
	font-size: 2.7rem;
}

.font28 {
	font-size: 2.8rem;
}

.font29 {
	font-size: 2.9rem;
}

.font30 {
	font-size: 3.0rem;
}

.font31 {
	font-size: 3.1rem;
}

.font32 {
	font-size: 3.2rem;
}

/*------------------------

余白

------------------------*/

.mt-05 {
	margin-top: -5px;
}

.mt05 {
	margin-top: 5px;
}

.mt07 {
	margin-top: 7px;
}

.mt10 {
	margin-top: 10px;
}

.mt20 {
	margin-top: 20px;
}

.mt30 {
	margin-top: 30px;
}

.mt50 {
	margin-top: 50px;
}

.mt70 {
	margin-top: 70px;
}

.mt100 {
	margin-top: 100px;
}

.mt_20 {
	margin-top: -20px;
}

.mtb05 {
	margin-top: 5px;
	margin-bottom: 5px;
}

.mtb10 {
	margin-top: 10px;
	margin-bottom: 10px;
}

.mtb15 {
	margin-top: 15px;
	margin-bottom: 15px;
}

.mtb20 {
	margin-top: 20px;
	margin-bottom: 20px;
}

.mtb30 {
	margin-top: 30px;
	margin-bottom: 30px;
}

.mb05 {
	margin-bottom: 5px;
}

.mb10 {
	margin-bottom: 10px;
}

.mb20 {
	margin-bottom: 20px;
}

.mb30 {
	margin-bottom: 30px;
}

.ml05 {
	margin-left: 5px;
}

.ml10 {
	margin-left: 10px;
}

.ml20 {
	margin-left: 20px;
}

.ml30 {
	margin-left: 30px;
}

.mr05 {
	margin-right: 5px;
}

.mr10 {
	margin-right: 10px;
}

.pt05 {
	padding-top: 5px;
}

.pt07 {
	padding-top: 7px;
}

.pt10 {
	padding-top: 10px;
}

.pt15 {
	padding-top: 15px;
}

.pt20 {
	padding-top: 20px;
}

.pt25 {
	padding-top: 25px;
}

.pt30 {
	padding-top: 30px;
}

.pt35 {
	padding-top: 35px;
}

.pt40 {
	padding-top: 40px;
}

/*------------------------

表示・非表示

------------------------*/

.hidden {
	display: none;
	visibility: hidden;
}

.visible-phone {
	display: none !important;
}

.visible-tablet {
	display: none !important;
}

.hidden-desktop {
	display: none !important;
}

.visible-desktop {
	display: inline-block !important;
}

@media (min-width: 768px) and (max-width: 979px) {

.hidden-desktop {
	display: inherit !important;
}

.visible-desktop {
	display: none !important;
}

.visible-tablet {
	display: inherit !important;
}

.hidden-tablet {
	display: none !important;
}
}

@media (max-width: 767px) {

.hidden-desktop {
	display: inherit !important;
}

.visible-desktop {
	display: none !important;
}

.visible-phone {
	display: inherit !important;
}

.hidden-phone {
	display: none !important;
}
}

/*------------------------

改行

------------------------*/

br.pc-only {
	display: none;
}

@media only screen and (min-width: 1024px) {

br {
	display: none;
}

br.pc-only {
	display: block;
}
}

/*------------------------

clearfix

------------------------*/

.clearfix:before,
.clearfix:after {
	height: 0;
	display: block;
	overflow: hidden;
	content: '.';
}

.clearfix:after {
	clear: both;
}
