@charset "utf-8";

#tipbox {
	position: absolute;
}
#tipbox .inner {
	position: relative;
	color: white;
	background: #4d4d4d;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-shadow: 0 1px 4px rgba(0,0,0,0.2);
	-moz-box-shadow: 0 1px 4px rgba(0,0,0,0.2);
	-ms-box-shadow: 0 1px 4px rgba(0,0,0,0.2);
	box-shadow: 0 1px 4px rgba(0,0,0,0.2);
}
#tipbox .inner:after {
	display: block;
	content: "";
	position: absolute;
	right: 14px;
	bottom: -14px;
	width: 0;
	height: 0;
	border: 10px solid transparent;
	border-top: 10px solid #4d4d4d;
	z-index: 1;
}

/* pc
----------------------------------------------- */

@media print, screen and (min-width:741px) {

	.tipbox {
		margin: 170px 0 0 36px;
		padding: 0 0 30px;
		width: 400px;
	}
	.tipbox .inner {
		padding: 10px 15px;
		width: 370px;
		color: white;
		font-size: 0.9em;
		line-height: 1.5em;
	}

	/* outline
	----------------------------------------------- */

	#price .outline {
		background: #f5f3f0;
	}
	#price .outline .inner {
		margin: auto;
		padding: 65px 0;
		max-width: 1250px;
	}
	#price .outline .plans {
		margin: 0 25px;
		background: url(/price/images/icon_plus@2x.png) no-repeat center center;
		-webkit-background-size: 44px;
		-moz-background-size: 44px;
		-ms-background-size: 44px;
		background-size: 44px;
	}
	#price .outline .basic {
		float: left;
		width: 50%;
	}
	#price .outline .option {
		float: left;
		width: 50%;
	}
	#price .outline .base {
		padding: 35px 0 25px;
	}
	#price .outline figure {
		height: 75px;
		text-align: center;
	}
	#price .outline h1 {
		margin: 0 24px;
		min-height: 66px;
		color: white;
		font-size: 2.15em;
		font-weight: 500;
		text-align: center;
	}
	#price .outline h1 em {
		font-size: 1.3em;
		vertical-align: baseline;
	}
	#price .outline ul {
		margin: 0 24px;
	}
	#price .outline li {
		margin: 6px 0 0;
		font-size: 1.25em;
		font-weight: bold;
		text-align: center;
		background: white;
		display: table;
		width: 100%;
	}
	#price .outline .basic h1 {
		line-height: 1.25em;
	}
	#price .outline .option h1 {
		line-height: 1.5em;
	}
	#price .outline .basic .base {
		margin: 0 9% 0 0;
		color: #78282a;
		background: #8f2f32;
	}
	#price .outline .option .base {
		margin: 0 0 0 9%;
		padding: 35px 0 26px;
		color: #a27d1d;
		background: #c8b175;
	}
	#price .outline .basic li {
		height: 64px;
		line-height: 27px;
	}
	#price .outline .option li {
		height: 87px;
    line-height: 27px;
	}
	#price .outline li span {
	    display: table-cell;
	    width: 100%;
	    vertical-align: middle;
	}

	#price .outline .signup {
		margin: 48px auto 0;
	}
	#price .outline .signup a {
		margin: auto;
		width: 400px;
		height: 64px;
		font-size: 1.25em;
		line-height: 65px;
	}

	/* detail
	----------------------------------------------- */

	#price .detail {
		padding: 100px 0 120px;
		margin: auto;
		max-width: 1250px;
	}
	#price .detail .inner {
		margin: 0 25px;
	}
	#price .detail h1 {
		font-size: 2.5em;
		text-align: center;
		line-height: 1.65em;
	}

	#price .detail .plan {
		position: relative;
		margin: 50px 0 0;
		border-top: 2px solid black;
		background: #f5f5f5;
	}

	#price .detail .header {
		position: absolute;
		top: 0;
		left: 0;
		padding: 70px 0 0;
		width: 29.55%;
		text-align: center;
	}
	#price .detail h2 {
		margin: 20px 0 0;
		font-size: 1.65em;
		font-weight: 500;
	}

	#price .detail .tables {
		margin: 0 0 0 29.55%;
		background: white;
	}
	#price .detail table {
		width: 100%;
	}
	#price .detail table:nth-child(2) {
		border-top: 1px solid #e0e0e0;
	}
	#price .detail th,
	#price .detail td {
		position: relative;
		padding: 2.1% 4.5% 2.2%;
		font-size: 1.15em;
		text-align: left;
		line-height: 1.25em;
		border-bottom: 1px solid #e0e0e0;
	}
	#price .detail th {
		padding: 2.1% 55px 2.2% 4.5%;
	}
	#price .detail th .caution {
		font-size: 0.75em;
	}
	#price .detail td {
		padding: 2.1% 1% 2.2%;
		width: 23.8%;
		font-size: 1em;
		text-align: center;
		border-left: 2px solid #e0e0e0;
	}

	#price .detail .basic {
		border-color: #78282a;
		background: #f5f0f0;
	}
	#price .detail .basic .header {
		color: #78282a;
	}
	#price .detail .option {
		border-color: #c8b175;
		background: #f5f1e6;
	}
	#price .detail .option .header {
		color: #a27d1d;
	}

	#price .detail .attention {
		margin: 20px 0 0;
		text-align: right;
	}
	#price .detail .attention p {
		color: #808080;
		font-size: 0.85em;
		line-height: 1.25em;
	}

	#price .detail .tips {
		display: block;
		position: absolute;
		top: 50%;
		right: 24px;
		margin: -12px 0 0;
		width: 24px;
		height: 24px;
		background: url(/price/images/icon_guide.png) no-repeat;
		cursor: pointer;
		-webkit-background-size: 48px 24px;
		-moz-background-size: 48px 24px;
		-ms-background-size: 48px 24px;
		background-size: 48px 24px;
	}
	#price .detail .tips:hover,
	#price .detail .tips.on {
		background-position: -24px 0;
	}

	/* support
	----------------------------------------------- */

	#price .support {
		margin: auto;
		padding: 0 0 120px;
		max-width: 1010px;
	}
	#price .support .inner {
		margin: 0 25px;
	}
	#price .support h1 {
		font-size: 1.75em;
		text-align: center;
	}
	#price .support .leadcopy {
		margin: 25px 0 0;
		color: #4d4d4d;
		font-size: 1.15em;
		text-align: center;
		line-height: 1.5em;
	}

	#price .support .menus {
		margin: 45px 0 0;
	}
	#price .support .menus li {
		float: left;
		width: 33.33%;
	}
	#price .support .menus li a {
		display: block;
		color: #333333;
		border-right: 1px solid #e0e0e0;
	}
	#price .support .menus li:last-child a {
		border-right: 0;
	}
	#price .support .menus li a:hover {
		text-decoration: none;
	}
	#price .support .menus li span {
		display: block;
	}
	#price .support .menus figure {
		height: 120px;
		text-align: center;
		-webkit-transition: all 0.25s ease-out;
		-moz-transition: all 0.25s ease-out;
		-ms-transition: all 0.25s ease-out;
		transition: all 0.25s ease-out;
	}
	#price .support .menus li a:hover figure {
		-webkit-transform: translateY(-5px);
		-moz-transform: translateY(-5px);
		-ms-transform: translateY(-5px);
		transform: translateY(-5px);
	}
	#price .support .menus .label {
		font-size: 1.4em;
		font-weight: 500;
		text-align: center;
	}
	#price .support .menus .summary {
		margin: 20px 30px 0;
		color: #4d4d4d;
		line-height: 1.85em;
	}
	#price .support .menus .link {
		margin: 20px 0 0;
		color: #4970bf;
		font-size: 1em;
		text-align: center;
	}
	#price .support .menus li a:hover .link {
		text-decoration: underline;
	}

}

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

	/* outline
	----------------------------------------------- */

	#price .outline h1 {
		padding: 0 0 15px;
		min-height: auto;
		font-size: 1.5em;
	}
	#price .outline .basic li,
	#price .outline .option li {
		padding: 5px 0px;
		height: auto;
		line-height: 1.5em;
	}
	.tipbox {
	    margin: 68px 0 0 36px;
	}
}


/* mobile
----------------------------------------------- */

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

	.tipbox {
		margin: 43px 0 0 36px;
		padding: 0 0 30px;
		width: 240px;
	}
	.tipbox .inner {
		padding: 10px 15px;
		width: 210px;
		color: white;
		font-size: 0.85em;
		line-height: 1.5em;
	}
	.tipbox .inner:after {
		display: block;
		content: "";
		position: absolute;
		right: 14px;
		bottom: -20px;
		width: 0;
		height: 0;
		border: 14px solid transparent;
		border-top: 14px solid #4d4d4d;
		z-index: 1;
	}

	/* outline
	----------------------------------------------- */

	#price .outline {
		background: #f5f3f0;
	}
	#price .outline .inner {
		padding: 30px 0 60px;
		margin: 0 20px;
	}
	#price .outline .plans {
		background: url(/price/images/icon_plus@2x.png) no-repeat center 54%;
		-webkit-background-size: 32px;
		-moz-background-size: 32px;
		-ms-background-size: 32px;
		background-size: 32px;
	}

	#price .outline .base {
		padding: 20px;
	}
	#price .outline figure {
		text-align: center;
	}
	#price .outline figure img {
		width: auto;
		height: 39px;
	}
	#price .outline h1 {
		margin: 10px 0 0;
		color: white;
		font-size: 1.4em;
		font-weight: 500;
		text-align: center;
		line-height: 1.25em;
	}
	#price .outline h1 em {
		font-size: 1.3em;
		vertical-align: baseline;
	}
	#price .outline ul {
		padding: 10px 0 0;
	}
	#price .outline li {
		margin: 6px 0 0;
		padding: 15px 15px;
		font-size: 0.95em;
		font-weight: bold;
		text-align: center;
		line-height: 1.25em;
		background: white;
	}

	#price .outline .option {
		margin: 73px 0 -45px;
	}
	#price .outline .basic .base {
		color: #78282a;
		background: #8f2f32;
	}
	#price .outline .option .base {
		color: #a27d1d;
		background: #c8b175;
	}

	#price .outline .signup {
		margin: 84px 25px 0;
	}
	#price .outline .signup a {
		margin: auto;
		max-width: 270px;
		height: 52px;
		font-size: 1.15em;
		line-height: 53px;
	}

	/* detail
	----------------------------------------------- */

	#price .detail {
		padding: 57px 0 70px;
		overflow: hidden;
	}
	#price .detail .inner {
		margin: 0 20px;
	}
	#price .detail h1 {
		font-size: 1.5em;
		text-align: center;
		line-height: 1.65em;
	}
	#price .detail .plan {
		margin: 25px 0 0;
		border-top: 2px solid black;
		background: #f5f5f5;
	}

	#price .detail .header {
		padding: 20px 0 25px;
		text-align: center;
	}
	#price .detail .header figure img {
		width: auto;
		height: 37px;
	}
	#price .detail h2 {
		margin: 10px 0 0;
		font-size: 1.25em;
		font-weight: 500;
	}

	#price .detail .tables {
		background: white;
	}
	#price .detail table {
		width: 100%;
	}
	#price .detail tr {
		display: block;
		position: relative;
		padding: 16px 45px 16px 7px;
		border-bottom: 1px solid #e0e0e0;
	}
	#price .detail th,
	#price .detail td {
		display: block;
		font-size: 0.9em;
		text-align: left;
		line-height: 1.5em;
	}
	#price .detail th .caution {
		display: block;
		font-size: 0.9em;
	}
	#price .detail td {
		font-size: 0.85em;
	}

	#price .detail .option {
		margin: 55px 0 0;
	}
	#price .detail .basic {
		border-color: #78282a;
		background: #f5f0f0;
	}
	#price .detail .basic .header {
		color: #78282a;
	}
	#price .detail .option {
		border-color: #c8b175;
		background: #f5f1e6;
	}
	#price .detail .option .header {
		color: #a27d1d;
	}

	#price .detail .attention {
		margin: 15px 0 0;
		text-align: right;
	}
	#price .detail .attention p {
		color: #808080;
		font-size: 0.75em;
		line-height: 1.25em;
	}

	#price .detail .tips {
		display: block;
		position: absolute;
		top: 50%;
		right: 8px;
		margin: -12px 0 0;
		width: 24px;
		height: 24px;
		background: url(/price/images/icon_guide.png) no-repeat;
		cursor: pointer;
		-webkit-background-size: 48px 24px;
		-moz-background-size: 48px 24px;
		-ms-background-size: 48px 24px;
		background-size: 48px 24px;
	}
	#price .detail .tips.on {
		background-position: -24px 0;
	}

	/* support
	----------------------------------------------- */

	#price .support {
		padding: 0 0 70px;
	}
	#price .support .inner {
		margin: 0 25px;
	}
	#price .support h1 {
		font-size: 1.5em;
		text-align: center;
	}
	#price .support .leadcopy {
		margin: 12px 40px 0;
		color: #4d4d4d;
		font-size: 0.95em;
		text-align: center;
		line-height: 1.5em;
	}

	#price .support .menus {
		margin: 20px 0 0;
		border-bottom: 1px solid #e0e0e0;
	}
	#price .support .menus li {
		border-top: 1px solid #e0e0e0;
	}
	#price .support .menus li a {
		display: block;
		position: relative;
		color: #333333;
		padding: 20px 0 15px;
	}
	#price .support .menus li a:after {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		right: 8px;
		margin: -6px 0 0;
		width: 7px;
		height: 12px;
		background: url(/assets/images/common/icon_arrow02.png) no-repeat;
		-webkit-background-size: 7px 12px;
		-moz-background-size: 7px 12px;
		-ms-background-size: 7px 12px;
		background-size: 7px 12px;
	}
	#price .support .menus li span {
		display: block;
	}
	#price .support .menus figure {
		position: absolute;
		top: 20px;
		left: 0;
		width: 65px;
		text-align: center;
	}

	#price .support .menus figure img {
		width: 31px;
		height: auto;
	}
	#price .support .menus li:first-child figure img {
		width: 40px;
		height: auto;
	}

	#price .support .menus .label {
		margin: 0 48px 0 65px;
		font-size: 1em;
		font-weight: 500;
	}
	#price .support .menus .summary {
		margin: 8px 48px 0 65px;
		color: #4d4d4d;
		font-size: 0.7em;
		line-height: 1.65em;
	}
	#price .support .menus .link {
		display: none;
	}

}
