/*
Theme Name: SENKEN 1.32
Theme URI: 
Author: SENKEN
Author URI: 
Description: SENKEN WordPress Themes
Version: 1.32
License: 
License URI: 
Tags: white

FontAwesome License: SIL Open Font License - http://scripts.sil.org/OFL
*/


/**
 * Reset
 * ==========================================================================
 */


html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	font-family: inherit;
	vertical-align: baseline;
	background: transparent;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	line-height: 1;
}

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

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

a {
	text-decoration: none;
	cursor: pointer;
	color: inherit;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0.3);
}

a:hover,
a:active {
	outline: 0;
}

a img {
	border: 0;
}

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

ul,
ol {
	list-style: none;
}

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

caption,
th,
td {
	font-weight: normal;
	text-align: left;
	word-break: break-all;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 0 auto;
	padding: 0;
}

label {
	display: inline-block;
	vertical-align: middle;
}

pre {
	max-width: 100%;
	margin-bottom: 12px;
	padding: 10px;
	overflow: auto;
	line-height: 1.2;
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
	font-family: Inconsolata, monospace;
	background-color: rgba(0, 0, 0, 0.1);
	border: 1px solid #eee;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
}

input,
select,
textarea,
button {
	margin: 0;
	padding: 0;
	line-height: inherit;
	letter-spacing: inherit;
	vertical-align: middle;
	font-size: inherit;
	font-family: inherit;
	outline: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

input[type="radio"],
input[type="checkbox"],
input[type="file"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="range"],
input[type="color"],
input[type="button"],
input[type="submit"],
input[type="reset"],
select,
button,
label {
	cursor: pointer;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="number"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="image"],
input[type="button"],
input[type="submit"],
input[type="reset"],
textarea,
select,
button {
	background: none;
	border: none;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

textarea {
	resize: vertical;
}

input::-moz-focus-inner,
button::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}


/**
 * Base
 * ==========================================================================
 */


/**
 * Fonts @font-face
 */

i {
	line-height: 1;
	letter-spacing: 0;
	font-weight: normal;
	font-style: normal;
	font-family: FontAwesome;
}


/**
 * General
 */

html {
	-webkit-text-size-adjust: 100%;
		-ms-text-size-adjust: 100%;
}

body {
	width: 100%;
	min-width: 320px;
	margin: 0 auto;
	overflow-x: hidden;
	word-wrap: break-word;
	line-height: 1.0;
	font-size: 13px;
	font-weight: 500;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

::selection {
	color: #fff;
	background: #555;
}

::-moz-selection {
	color: #fff;
	background: #555;
}

::-webkit-input-placeholder {
	color: #aaa;
}

::-moz-placeholder {
	color: #aaa;
}

:-ms-input-placeholder {
	color: #aaa;
}

:placeholder {
	color: #aaa;
}


/**
 * WordPress
 */

.sticky {
}

.gallery-caption {
}

.bypostauthor {
}

div.fb-page,
div.fb-page iframe[style],
div.fb-page span {
	width: 100% !important;
}

@media screen and (max-width: 600px) {
	html #wpadminbar {
		position: fixed;
	}
}


/**
 * Class
 * ==========================================================================
 */


time {
	line-height: 1.3;
	letter-spacing: 0.02em;
	font-weight: bold;
	color: #999999;
}


/**
 * Plan
 */

.plan {
	padding: 3px;
	background: #fff;
	-webkit-box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.2);
			box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.2);
}

.plan h3 {
	padding: 15px 40px;
	position: relative;
	text-align: center;
	line-height: 1.3;
	letter-spacing: 0.02em;
	font-size: 24px;
	font-weight: bold;
}

.plan h3:before {
	content: "";
	width: 41px;
	height: 36px;
	display: block;
	position: absolute;
	top: calc(50% - 18px);
	left: 15px;
	background: no-repeat center;
	background-size: contain;
}

.plan.trial h3 {
	color: #fff;
	background: #d91c1c;
}

.plan.trial h3:before {
	background-image: url(images/plan_icon-trial.png);
}

.plan.premium h3 {
	color: #fff;
	background: -webkit-linear-gradient(left, #c18f57, #8d6233);
	background: 		linear-gradient(to right, #c18f57, #8d6233);
}

.plan.premium h3:before {
	background-image: url(images/plan_icon-premium.png);
}

.plan.premium h3:after {
	content: "";
	width: 78px;
	height: 78px;
	display: block;
	position: absolute;
	top: -10px;
	right: 5px;
	background: url(images/plan-recommend.png) no-repeat center;
	background-size: cover;
}

.plan h4 {
	width: calc(100% - 60px);
	height: 140px;
	margin: 0 30px;
	padding: 10px 0;
	display: table;
	text-align: center;
	line-height: 1.3;
	letter-spacing: 0.02em;
	font-size: 50px;
	font-weight: bold;
	border-bottom: 1px solid #d5d5d5;
}

.plan h4 span {
	display: table-cell;
    vertical-align: middle;
}

.plan h4 small {
	display: inline-block;
	position: relative;
	top: -0.3em;
	vertical-align: bottom;
	font-size: 24px;
	font-weight: normal;
}

.plan h4 small:first-of-type {
	margin-right: 36px;
}

.plan h4 small:first-of-type:before {
	content: "";
	width: 1px;
	height: 60px;
	display: block;
	position: absolute;
	top: calc(50% - 35px);
	right: -22px;
	background: #222;
    -webkit-transform: rotate(30deg);
    		transform: rotate(30deg);
}

.plan ul {
	padding: 0 30px;
}

.plan li {
	padding: 15px 20px;
	position: relative;
	text-align: center;
	line-height: 1.6;
	letter-spacing: -0.02em;
	font-size: 12px;
	font-weight: bold;
}

.plan li:not(:first-child) {
	border-top: 1px solid #d5d5d5;
}

.plan li:before {
	content: "\f00c";
	position: absolute;
	top: 15px;
	left: 0;
	font-weight: normal;
	font-family: FontAwesome;
}

.plan_recommend {
	margin: auto -3px -3px -3px;
	padding: 25px 10px;
	text-align: center;
	line-height: 1.6;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	background: #000;
}

@media screen and (max-width: 1440px) {
	.plan h3 {
		font-size: 20px;
	}
	
	.plan h4 {
		width: calc(100% - 40px);
		height: 120px;
		margin: 0 20px;
		font-size: 36px;
	}
	
	.plan h4 small {
		font-size: 20px;
	}
	
	.plan ul {
		padding: 0 20px;
	}
	
	.plan_recommend {
		font-size: 16px;
	}
}

@media screen and (max-width: 1024px) {
	.plan h4 {
		height: 100px;
		font-size: 32px;
	}
	
	.plan h4 small {
		font-size: 16px;
	}
	
	.plan h4 small:first-of-type {
		margin-right: 18px;
	}
	
	.plan h4 small:first-of-type:before {
		right: -11px;
	}
	
	.plan h4 small:first-of-type:before {
		height: 30px;
		top: calc(50% - 17px);
	}
	
	.plan li {
		padding: 12px 30px;
		font-size: 11px;
	}
    
    .plan li:before {
        top: 12px;
    }
	
	.plan_recommend {
		font-size: 14px;
	}
}

@media screen and (max-width: 768px) {
	.plan h3 {
		font-size: 16px;
	}
	
	.plan h3:before {
		width: 34px;
		left: 10px;
	}
	
	.plan.premium h3:after {
		width: 60px;
		height: 60px;
		top: -14px;
	}
	
	.plan_recommend {
		padding: 15px 10px;
		font-size: 12px;
	}
}

@media screen and (max-width: 480px) {
	.plan h4 {
		width: calc(100% - 30px);
		margin: 0 15px;
	}
	
	.plan ul {
		padding: 0 15px;
	}
}


/**
 * Button
 */

.general-button {
	min-width: 280px;
	padding: 20px 50px;
	display: inline-block;
	position: relative;
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.02em;
	font-size: 16px;
	font-weight: bold;
	color: #d91c1c;
	background: #fff;
	border: 2px solid #d91c1c;
	border-radius: 4px;
	-webkit-transition: opacity ease 0.3s;
			transition: opacity ease 0.3s;
}

.general-button:hover {
	opacity: 0.8;
}

.general-button:before {
	content: "";
	width: 10px;
	height: 10px;
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: 25px;
	border-top: 2px solid #d91c1c;
	border-right: 2px solid #d91c1c;
	-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
}

.general-button.red {
	color: #fff;
	background: #d91c1c;
}

.general-button.white {
	color: #d91c1c;
	background: #fff;
	border-color: #fff;
}

.general-button.red:before {
	border-color: #fff;
}

@media screen and (max-width: 768px) {
	.general-button {
		font-size: 13px;
	}
	
	.general-button:before {
		width: 8px;
		height: 8px;
		top: calc(50% - 4px);
		right: 20px;
	}
}

@media screen and (max-width: 480px) {
	.general-button {
		min-width: 260px;
		padding: 16px 26px;
	}
}


/**
 * Layout
 * ==========================================================================
 */


/**
 * Frame
 */

#viewport {
	position: relative;
	overflow: hidden;
}

#container {
	width: 100%;
}

.inside {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 100px;
	position: relative;
}

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


/**
 * Header
 */

header {
	position: relative;
	z-index: 10;
	background: #fff;
}

header:after {
	content: "";
	display: block;
	clear: both;
}

header h1 {
	float: left;
	text-align: center;
}

header h1 a {
	padding: 25px 30px;
	display: block;
	-webkit-transition: opacity ease 0.3s;
			transition: opacity ease 0.3s;
}

header h1 a:hover {
	opacity: 0.7;
}

header h1 img {
	height: 30px;
	margin: 0 auto;
	display: block;
}

#header-content {
	float: right;
}

nav {
	margin-right: 40px;
	padding: 20px 0;
	float: left;
}


/**
 * Global_navi
 */

#global_navi li {
	margin: 0 15px;
	float: left;
	line-height: 1.6;
	letter-spacing: 0.02em;
	font-size: 14px;
}

#global_navi li a {
	padding: 9px 0;
	display: block;
	position: relative;
	overflow: hidden;
}

#global_navi li a:before {
	content: "";
	position: absolute;
	bottom: 5px;
	left: 0;
	right: 0;
	border-bottom: 1px solid #d91c1c;
	-webkit-transform: translate3d(-100%, 0, 0);
			transform: translate3d(-100%, 0, 0);
	-webkit-transform-origin: left;
			transform-origin: left;
}

#global_navi li a:hover:before {
    -webkit-animation: move_line 1.2s cubic-bezier(0.3, 1, 0.5, 1) infinite;
    		animation: move_line 1.2s cubic-bezier(0.3, 1, 0.5, 1) infinite;
}

@-webkit-keyframes move_line {
	50% {
		-webkit-transform: translate3d(0, 0, 0);
				transform: translate3d(0, 0, 0);
	}
	
	100% {
		-webkit-transform: translate3d(100%, 0, 0);
				transform: translate3d(100%, 0, 0);
	}
}

@keyframes move_line {
	50% {
		-webkit-transform: translate3d(0, 0, 0);
				transform: translate3d(0, 0, 0);
	}
	
	100% {
		-webkit-transform: translate3d(100%, 0, 0);
				transform: translate3d(100%, 0, 0);
	}
}


/**
 * Sp_menu
 */

#sp_menu {
	display: none;
}

#sp_menu .inner {
	max-width: 500px;
	margin: 0 auto;
	padding: 120px 40px;
}

#sp_global_navi {
	margin-bottom: 50px;
}

#sp_global_navi li {
	line-height: 1.6;
	letter-spacing: 0.02em;
	font-size: 16px;
	border-bottom: 1px solid #fff;
}

#sp_global_navi li:first-child {
	border-top: 1px solid #fff;
}

#sp_global_navi li a {
	padding: 15px 20px;
	display: block;
	position: relative;
}

#sp_global_navi li a:before {
	content: "";
	width: 12px;
	height: 12px;
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right: 20px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
	-webkit-transition: border-color ease 0.3s;
			transition: border-color ease 0.3s;
}

#sp_menu .general-button {
	max-width: 300px;
	margin: 15px auto;
	display: block;
}

#sp_menu .general-button.contact:after,
#sp_menu .general-button.login:after {
	content: "";
	width: 26px;
	height: 26px;
	display: block;
	position: absolute;
	top: calc(50% - 13px);
	left: 20px;
	background: no-repeat center;
	background-size: contain;
}

#sp_menu .general-button.contact:after {
	background-image: url(images/icon-contact-red.png);
}

#sp_menu .general-button.login:after {
	background-image: url(images/icon-login.png);
}

#sub_navi {
	margin-top: 50px;
}

#sub_navi li {
	margin: 15px auto;
	text-align: center;
	line-height: 1.6;
	font-size: 13px;
}

#sub_navi li a {
	display: inline-block;
}


/**
 * Site_link
 */

#site_link {
	float: left;
}

#site_link a {
	width: 100px;
	height: 80px;
	padding: 15px 10px 0;
	display: block;
	float: left;
	color: #fff;
	-webkit-transition: opacity ease 0.3s;
			transition: opacity ease 0.3s;
}

#site_link a:hover {
	opacity: 0.8;
}

#site_link a:before {
	content: "";
	width: 26px;
	height: 26px;
	margin: 2px auto;
	display: block;
	background: no-repeat center;
	background-size: contain;
}

#site_link p {
	text-align: center;
	line-height: 1.6;
	font-size: 12px;
}

#site_link .contact {
	background: #000000;
}

#site_link .contact:before {
	background-image: url(images/icon-contact.png);
}

#site_link .login {
	background: #d91c1c;
}

#site_link .login:before {
	background-image: url(images/icon-login.png);
}


/**
 * Drawer
 */

#drawer {
	height: 80px;
	padding: 0 15px;
	float: right;
	position: relative;
	z-index: 3;
	color: #d91c1c;
	background: #fff;
	display: none;
}

.menu-open #drawer {
	color: #fff;
	background: #000;
}

#burger {
	width: 40px;
	height: 40px;
	margin: 0 auto;
	position: relative;
}

#burger span {
	height: 4px;
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	background: #d91c1c;
	-webkit-transition: top ease 0.4s, -webkit-transform ease 0.4s;
			transition: top ease 0.4s, 		   transform ease 0.4s;
}

#burger span:nth-child(1) {
	top: calc(24% - 2px);
}

#burger span:nth-child(2) {
	top: calc(50% - 2px);
}

#burger span:nth-child(3) {
	top: calc(76% - 2px);
}

#drawer:hover #burger span:nth-child(1) {
    -webkit-transform: translate3d(0, -2px, 0);
    		transform: translate3d(0, -2px, 0);
}

#drawer:hover #burger span:nth-child(3) {
    -webkit-transform: translate3d(0, 2px, 0);
    		transform: translate3d(0, 2px, 0);
}

.menu-open #burger span {
	background: #fff;
}

.menu-open #burger span:nth-child(1) {
	top: calc(50% - 1px);
	-webkit-transform: rotate(45deg) translate3d(0, 0, 0);
			transform: rotate(45deg) translate3d(0, 0, 0);
}

.menu-open #burger span:nth-child(2) {
	-webkit-transform: scale3d(0, 1, 1);
			transform: scale3d(0, 1, 1);
	-webkit-transition: -webkit-transform ease 0.2s;
			transition: 		transform ease 0.2s;
}

.menu-open #burger span:nth-child(3) {
	top: calc(50% - 1px);
	-webkit-transform: rotate(-45deg) translate3d(0, 0, 0);
			transform: rotate(-45deg) translate3d(0, 0, 0);
}

#drawer p {
	width: 46px;
	text-align: center;
	line-height: 1.3;
	letter-spacing: 0.02em;
	font-size: 13px;
	font-weight: bold;
}

#drawer p.close {
	display: none;
}

.menu-open #drawer p.menu {
	display: none;
}

.menu-open #drawer p.close {
	display: block;
}


/**
 * Content
 */

#content {
	position: relative;
}

#content:after {
	content: "";
	display: block;
	clear: both;
}

#cover {
	padding: 135px 0;
    position: relative;
	color: #fff;
	background: url(images/cover.png) no-repeat center;
	background-size: cover;
}

.case_study #cover {
	background-image: url(images/cover-case_study.png);
}

.about #cover {
	background-image: url(images/cover-about.png);
}

.price #cover {
	background-image: url(images/cover-price.png);
}

#cover h1 {
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.02em;
	font-size: 28px;
	font-weight: bold;
}

#lower_body {
	padding: 30px 0 80px;
	background: #eeeeee;
}

article {
	padding: 80px;
	background: #fff;
}

article .thumbnail {
	margin: -80px -80px 50px -80px;
}

article .thumbnail img {
	margin: 0 auto;
	display: block;
}

.section-title {
	margin-bottom: 30px;
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.02em;
	font-size: 30px;
	font-weight: bold;
}


/**
 * Footer
 */

#login_banner {
	padding: 80px 10px;
	text-align: center;
	background: url(images/login_banner-bg.png) no-repeat center;
	background-size: cover;
}

#login_banner p {
	line-height: 1.6;
	letter-spacing: 0.02em;
	font-size: 40px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	color: #fff;
}

#login_banner .general-button {
	margin-top: 30px;
	font-size: 22px;
}

footer {
	position: relative;
	color: #fff;
	background: #d91c1c;
}

footer h1 {
	float: left;
	text-align: center;
}

footer h1 a {
	padding: 30px 20px;
	display: inline-block;
	background: #fff;
	-webkit-transition: opacity ease 0.3s;
			transition: opacity ease 0.3s;
}

footer h1 a:hover {
	opacity: 0.8;
}

footer h1 img {
	height: 80px;
}

#sns {
	margin-top: 116px;
	margin-left: 20px;
	float: left;
}

#sns a {
	width: 24px;
	height: 24px;
	margin: 0 5px;
	display: inline-block;
	background: no-repeat center;
	background-size: cover;
	-webkit-transition: opacity ease 0.3s;
			transition: opacity ease 0.3s;
}

#sns a:hover {
	opacity: 0.8;
}

#sns .facebook {
	background-image: url(images/sns-facebook.png);
}

#sns .instagram {
	background-image: url(images/sns-instagram.png);
}

#footer-content {
	padding: 50px 0 20px;
	float: right;
}

#footer-content:after {
	content: "";
	display: block;
	clear: both;
}

#footer-content ul {
	width: 50%;
	min-width: 300px;
	padding-right: 20px;
	float: left;
}

#footer-content li {
	line-height: 1.3;
	letter-spacing: 0.02em;
	font-size: 14px;
}

#footer-content li:not(:first-child) {
	margin-top: 10px;
}

#footer-content li a {
	display: inline-block;
}

#footer-content li a:hover {
	text-decoration: underline;
}

footer small {
	padding: 20px 0;
	display: block;
	clear: both;
	line-height: 1.3;
	letter-spacing: 0.02em;
	font-size: 13px;
}


/**
 * Layout - responsive
 */

@media screen and (max-width: 1440px) {
	#login_banner p {
		font-size: 32px;
	}
	
	#login_banner .general-button {
		font-size: 20px;
	}
	
	#footer-content ul {
		min-width: 240px;
	}
}

@media screen and (max-width: 1024px) {
	.inside {
		max-width: 820px;
		padding: 0 50px;
	}
	
	.menu-open {
		overflow-y: hidden;
	}

	nav {
		height: 0;
		margin: 0 auto;
		padding: 0;
		float: none;
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 2;
    	overflow-y: scroll;
		color: #fff;
		background: #000;
		-webkit-transform: translate3d(0, -100%, 0);
				transform: translate3d(0, -100%, 0);
		-webkit-transition: height 0s 0.6s, -webkit-transform cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
				transition: height 0s 0.6s, 		transform cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
	}

	.menu-open nav {
		height: 100%;
		-webkit-transform: translate3d(0, 0, 0);
				transform: translate3d(0, 0, 0);
		-webkit-transition-delay: 0s, 0.1s;
				transition-delay: 0s, 0.1s;
	}
	
	#global_navi {
		display: none;
	}
	
	#sp_menu {
		display: block;
	}

	#drawer {
		display: block;
	}
	
	#cover {
		padding: 100px 0;
	}
	
    article {
        padding: 60px;
    }

    article .thumbnail {
        margin: -60px -60px 50px -60px;
    }
    
	.section-title {
		font-size: 26px;
	}
	
	#footer-content ul {
		min-width: 180px;
	}
	
	#footer-content li {
		font-size: 12px;
	}
}

@media screen and (max-width: 768px) {
	.inside {
		max-width: 600px;
	}
	
	header h1 a {
		padding: 20px 25px;
	}
	
	header h1 img {
		height: 24px;
	}
	
	#site_link a {
		width: 70px;
		height: 64px;
		padding: 0;
		position: relative;
	}
	
	#site_link a:before {
		width: 30px;
		height: 30px;
		margin: 0 auto;
		position: absolute;
		top: calc(50% - 15px);
		left: 0;
		right: 0;
	}
	
	#site_link p {
		display: none;
	}
	
	#drawer {
		height: 64px;
		padding: 0 10px;
	}
	
	#drawer p {
		font-size: 10px;
	}
	
	#burger {
		width: 34px;
		height: 34px;
	}

	#lower_body {
		padding: 30px 0 50px;
	}
	
	article {
		padding: 40px;
	}
	
	article .thumbnail {
		margin: -40px -40px 50px -40px;
	}
	
	#login_banner p {
		font-size: 24px;
	}
	
	#login_banner .general-button {
		font-size: 18px;
	}
	
	footer h1 {
		float: none;
	}
	
	footer h1 img {
		height: 50px;
	}
	
	#sns {
		margin: 30px auto;
		float: none;
		text-align: center;
	}
	
	#sns a {
		width: 30px;
		height: 30px;
		margin: 0 10px;
	}
	
	#footer-content {
		max-width: 360px;
		margin: 0 auto 50px;
		padding: 0;
		float: none;
	}
	
	#footer-content ul {
		min-width: 0;
	}
	
	footer small {
		text-align: center;
		font-size: 10px;
	}
}

@media screen and (max-width: 480px) {
	.inside {
		max-width: 375px;
		padding: 0 20px;
	}
	
	header h1 a {
		padding: 15px;
	}
	
	#sp_menu .inner {
		padding: 120px 30px;
	}
	
	#sp_menu .general-button {
		max-width: 240px;
		min-width: 240px;
	}
	
	#site_link a {
		width: 54px;
		height: 54px;
	}
	
	#site_link a:before {
		width: 26px;
		height: 26px;
		top: calc(50% - 13px);
	}
	
	#drawer {
		height: 54px;
		padding: 0 5px;
	}
	
	#burger {
		width: 30px;
		height: 30px;
	}
	
	#cover {
		padding: 70px 0;
	}
	
	#cover h1 {
		font-size: 22px;
	}
	
	article {
		padding: 20px;
	}
	
	article .thumbnail {
		margin: -20px -20px 30px -20px;
	}
	
	.section-title {
		margin-bottom: 20px;
		font-size: 24px;
	}
	
	#login_banner {
		padding: 40px 10px;
	}
	
	#login_banner p {
		letter-spacing: 0;
		font-size: 20px;
	}
	
	#login_banner .general-button {
		margin-top: 20px;
		font-size: 16px;
	}
	
	footer h1 a {
		padding: 20px 10px;
	}
}

@media screen and (max-width: 350px) {
	header h1 img {
		padding: 2px 0;
	}
}


/**
 * Module
 * ==========================================================================
 */


/**
 * Breadcrumb
 */

#breadcrumb {
	position: absolute;
	top: 20px;
	right: 20px;
	text-align: right;
}

#breadcrumb li {
	display: inline-block;
	line-height: 1.2;
	font-size: 10px;
}

#breadcrumb li:not(:first-child):before {
	content: "\f105";
	margin: 0 7px;
	position: relative;
	top: -1px;
	line-height: 0;
	font-family: FontAwesome;
}

@media screen and (max-width: 480px) {
	#breadcrumb li {
		font-size: 9px;
	}
}


/**
 * Paging
 */

#paging {
	margin-top: 20px;
	text-align: center;
}

#paging li {
	margin: 0 1px 4px;
	display: inline-block;
	line-height: 1;
	font-size: 16px;
}

#paging a {
    display: block;
	color: #d91c1c;
	background: #fff;
	border: 2px solid #d91c1c;
	border-radius: 4px;
	-webkit-transition: opacity ease 0.3s;
			transition: opacity ease 0.3s;
}

#paging a:hover {
	opacity: 0.6;
}

#paging .page-numbers:not(.dots) {
	padding: 10px 15px;
}
	
#paging li i {
	line-height: 0;
}

#paging .current {
    display: block;
	color: #fff;
	background: #d91c1c;
	border: 2px solid #d91c1c;
	border-radius: 4px;
}

#paging .prev {
	margin-right: 10px;
}

#paging .next {
	margin-left: 10px;
}

#paging .dots {
	vertical-align: sub;
}

@media screen and (max-width: 768px) {
	#paging li {
		font-size: 11px;
	}
	
	#paging .page-numbers:not(.dots) {
		padding: 7px 10px;
	}

	#paging .prev {
		margin-right: 7px;
	}

	#paging .next {
		margin-left: 7px;
	}
}


/**
 * Posts content
 * ==========================================================================
 */


/**
 * Noposts
 */

.noposts {
	margin: 50px auto;
}

.noposts-title {
	text-align: center;
	line-height: 1.3;
	font-size: 24px;
	font-weight: bold;
	color: #999;
}

@media screen and (max-width: 768px) {
    .noposts-title {
        font-size: 20px;
    }
}


/**
 * Post parts
 */

.post-thumbnail {
	position: relative;
	z-index: 2;
	background: no-repeat center;
	background-size: cover;
	-webkit-transition: opacity ease 0.3s;
			transition: opacity ease 0.3s;
}

a:hover .post-thumbnail {
	opacity: 0.8;
}

.post-thumbnail .new {
	padding: 14px 10px;
	display: block;
	position: absolute;
	left: 0;
	line-height: 1.3;
	letter-spacing: 0.05em;
	font-size: 12px;
	font-weight: bold;
	color: #fff;
	background: #d91c1c;
}

.post-content {
	position: relative;
	background: #fff;
}

.post_detail {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

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

.post_detail time {
	display: block;
	float: left;
	font-size: 12px;
}

.post_detail .link_arrow {
	width: 50px;
	height: 50px;
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	border-top: 1px solid #d91c1c;
	-webkit-transition: background ease 0.3s;
			transition: background ease 0.3s;
}

a:hover .post_detail .link_arrow {
	background: #d91c1c;
}

.post_detail .link_arrow:before {
	content: "";
	width: 12px;
	height: 12px;
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	left: calc(50% - 9px);
	border-top: 2px solid #d91c1c;
	border-right: 2px solid #d91c1c;
	-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
	-webkit-transition: border-color ease 0.3s;
			transition: border-color ease 0.3s;
}

a:hover .post_detail .link_arrow:before {
	border-color: #fff;
}

@media screen and (max-width: 1024px) {
	.post-thumbnail .new {
		padding: 10px;
		font-size: 11px;
	}
	
	.post_detail time {
		font-size: 11px;
	}
	
	.post_detail .link_arrow {
		width: 34px;
		height: 34px;
	}
	
	.post_detail .link_arrow:before {
		width: 8px;
		height: 8px;
		top: calc(50% - 4px);
		left: calc(50% - 6px);
	}
}

@media screen and (max-width: 480px) {
	.post-thumbnail .new {
		padding: 8px 5px;
		font-size: 9px;
	}
	
	.post_detail time {
		font-size: 10px;
	}
}


/**
 * Post_large
 */

.post_large a {
	display: block;
}

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

.post_large .post-thumbnail {
	width: 50%;
	height: 320px;
	float: left;
}

.post_large .post-thumbnail .new {
	top: 0;
}

.post_large .post-content {
	padding: 35px 30px 90px;
}

.post_large .post-thumbnail + .post-content {
	min-height: 320px;
	width: 50%;
	float: left;
}

.post_large h2 {
	line-height: 1.3;
	font-size: 20px;
	font-weight: bold;
}

.post_large .excerpt {
	margin-top: 20px;
	line-height: 1.6;
	font-size: 14px;
}

.post_large .post_detail time {
	padding: 20px 30px;
}

@media screen and (max-width: 1440px) {
	.post_large h2 {
		font-size: 18px;
	}
	
	.post_large .excerpt {
		font-size: 12px;
	}
}

@media screen and (max-width: 1024px) {
	.post_large .post-thumbnail {
		height: 260px;
	}
	
	.post_large .post-content {
		padding: 20px 25px 60px;
	}
	
	.post_large .post-thumbnail + .post-content {
		min-height: 260px;
	}
	
	.post_large h2 {
		font-size: 16px;
	}
	
	.post_large .excerpt {
		font-size: 11px;
	}

	.post_large .post_detail time {
		padding: 15px 20px;
	}
}

@media screen and (max-width: 768px) {
	.post_large .post-thumbnail {
		width: auto;
		height: 220px;
		float: none;
	}
	
	.post_large .post-content {
		padding: 20px 20px 60px;
	}
	
	.post_large .post-thumbnail + .post-content {
		width: auto;
		min-height: 0;
		margin-left: auto;
		float: none;
	}
	
	.post_large h2 {
		font-size: 14px;
	}
	
	.post_large .excerpt {
		margin-top: 10px;
	}
}

@media screen and (max-width: 480px) {
	.post_large .post-thumbnail {
		height: 180px;
	}
	
	.post_large .excerpt {
		font-size: 10px;
	}
}


/**
 * Post_card
 */

.post_card a {
	display: block;
}

.post_card .post-thumbnail {
	height: 215px;
}

.post_card .post-thumbnail .new {
	bottom: -22px;
}

.post_card .post-content {
	padding: 35px 20px 90px;
}

.post_card h2 {
	line-height: 1.3;
	font-size: 16px;
}

.post_card .post_detail time {
	padding: 20px;
}

@media screen and (max-width: 1440px) {
	.post_card h2 {
		font-size: 14px;
	}
}

@media screen and (max-width: 1024px) {
	.post_card .post-thumbnail {
		height: 130px;
	}
	
	.post_card .post-thumbnail .new {
		bottom: -18px;
	}

	.post_card .post-content {
		padding: 35px 20px 60px;
	}
	
	.post_card .post_detail time {
		padding: 15px 20px;
	}
}

@media screen and (max-width: 768px) {
	.post_card h2 {
		font-size: 12px;
	}
}

@media screen and (max-width: 480px) {
	.post_card .post-thumbnail {
		height: 100px;
	}
	
	.post_card .post-thumbnail .new {
		bottom: -16px;
	}
	
	.post_card .post-content {
		padding: 25px 15px 50px;
	}
	
	.post_card .post_detail time {
		padding: 10px 15px;
	}
}


/**
 * Archive_header
 */

#archive_header {
	padding: 20px 0;
	color: #fff;
	background: #d91c1c;
}

#archive_header p {
	padding: 30px 0;
	text-align: center;
	line-height: 1.6;
	font-size: 22px;
	font-weight: bold;
}

#archive_header ul {
	text-align: center;
	font-size: 0;
}

#archive_header li {
	padding-right: 1px;
	display: inline-block;
	position: relative;
	line-height: 1.3;
	font-size: 14px;
}

#archive_header li:before,
#archive_header li:first-child:after {
	content: "";
	width: 1px;
	display: block;
	position: absolute;
	top: 10px;
	bottom: 10px;
	background: #5c2d2d;
}

#archive_header li:before {
	right: 0;
}

#archive_header li:first-child {
	padding-left: 1px;
}

#archive_header li:first-child:after {
	left: 0;
}

#archive_header li a {
	padding: 10px 12px;
	display: block;
}

#post_number {
	margin-bottom: 30px;
	text-align: center;
	line-height: 1.3;
	letter-spacing: 0.02em;
	font-size: 14px;
}

@media screen and (max-width: 1440px) {
	#archive_header p {
		padding: 20px 0;
	}
}

@media screen and (max-width: 1024px) {
	#archive_header {
		padding: 15px 0;
	}
	
	#archive_header p {
		padding: 10px 0;
	}
}

@media screen and (max-width: 768px) {
	#archive_header p {
		font-size: 16px;
	}
	
	#archive_header li {
		font-size: 11px;
	}
	
	#archive_header li a {
		padding: 5px 8px;
	}

	#archive_header li:before,
	#archive_header li:first-child:after {
		top: 5px;
		bottom: 5px;
	}
}

@media screen and (max-width: 480px) {
	#archive_header {
		padding: 10px 0;
	}
	
	#archive_header p {
		padding: 5px 0;
	}
	
	#post_number {
		margin-bottom: 20px;
		font-size: 12px;
	}
}


/**
 * Posts-archive
 */

#post-archive {
	width: calc(100% + 30px);
	position: relative;
	left: -15px;
}

#post-archive:after {
	content: "";
	display: block;
	clear: both;
}

#post-archive li {
	margin-bottom: 30px;
}

#post-archive li a {
	margin: 0 15px;
}

#post-archive .post_card {
	width: 33.3%;
	float: left;
}

@media screen and (max-width: 1024px) {
	#post-archive {
		width: calc(100% + 20px);
		left: -10px;
	}

	#post-archive li {
		margin-bottom: 20px;
	}
	
	#post-archive li a {
		margin: 0 10px;
	}
}

@media screen and (max-width: 768px) {
	#post-archive {
		width: calc(100% + 10px);
		left: -5px;
	}
	
	#post-archive li {
		margin-bottom: 10px;
	}
	
	#post-archive li a {
		margin: 0 5px;
	}

	#post-archive .post_card {
		width: 50%;
	}
}


/**
 * Case_study-archive
 */

#case_study-archive li {
	margin-bottom: 30px;
}

#case_study-archive li .company_name {
	margin-bottom: 15px;
	line-height: 1.3;
	font-size: 16px;
}

#case_study-archive li h2 {
	line-height: 1.6;
	font-size: 24px;
}

@media screen and (max-width: 1440px) {
	#case_study-archive li h2 {
		font-size: 20px;
	}
}

@media screen and (max-width: 1024px) {
	#case_study-archive li h2 {
		font-size: 18px;
	}
}

@media screen and (max-width: 768px) {
	#case_study-archive li .company_name {
		font-size: 13px;
	}
	
	#case_study-archive li h2 {
		font-size: 16px;
	}
}

@media screen and (max-width: 480px) {
	#case_study-archive {
		width: calc(100% + 10px);
		position: relative;
		left: -5px;
	}
	
	#case_study-archive:after {
		content: "";
		display: block;
		clear: both;
	}
	
	#case_study-archive li {
		width: 50%;
		margin-bottom: 10px;
		float: left;
	}
	
	#case_study-archive li a {
		margin: 0 5px;
	}
	
	#case_study-archive li .post-thumbnail {
		height: 100px;
	}
	
	#case_study-archive li .post-thumbnail .new {
		top: auto;
		bottom: -16px;
	}
	
	#case_study-archive li .post-content {
		padding: 25px 15px 50px;
	}
	
	#case_study-archive li h2 {
		line-height: 1.3;
		font-size: 12px;
	}
	
	#case_study-archive li .company_name {
		margin-bottom: 5px;
		font-size: 11px;
	}
	
	#case_study-archive li .post_detail time {
		padding: 10px 15px;
	}
}


/**
 * Posts-single
 */

#post-single aside {
	width: 270px;
	float: right;
	position: relative;
	overflow: hidden;
	z-index: 2;
	background: #fff;
	border-top: 4px solid #d91c1c;
}

#post-single aside section {
	padding: 20px;
}

#post-single aside section:not(:first-child) {
	border-top: 1px solid #eeeeee;
}

#post-single aside time {
	padding-right: 10px;
	display: inline-block;
	font-size: 12px;
	border-right: 1px solid #999999;
}

#category {
	display: inline;
	font-size: 0;
}

#category a {
	padding: 3px 4px;
	display: inline-block;
	line-height: 1.3;
	font-size: 12px;
    font-weight: bold;
    color: #999999;
}

#category a:hover {
	text-decoration: underline;
}

#tag_list {
	margin-top: 15px;
	font-size: 0;
}

#tag_list li {
	margin-bottom: 4px;
	margin-right: 4px;
	display: inline-block;
	vertical-align: top;
	line-height: 1.3;
	font-size: 12px;
}

#tag_list li a {
	padding: 4px 15px;
	display: inline-block;
	color: #333333;
	background: #e1e1e1;
	border-radius: 20px;
}

#author_label {
	margin-bottom: 10px;
	line-height: 1.3;
	font-size: 12px;
    font-weight: bold;
    color: #999999;
}

#author_image {
	width: 50px;
	margin-right: 10px;
	display: inline-block;
	vertical-align: middle;
}

#author_name {
	display: inline-block;
	vertical-align: middle;
	line-height: 1.3;
	font-size: 14px;
    font-weight: bold;
}

#author_description {
	margin-top: 10px;
	clear: both;
	line-height: 1.6;
	font-size: 13px;
}

#post-single main {
    width: 100%;
    margin-right: -270px;
    padding-right: 280px;
    float: left;
}

#post-single article {
	padding: 40px;
	position: relative;
}

#post-single .thumbnail {
	margin: -40px -40px 40px -40px;
}

#single-title {
	margin-bottom: 30px;
	line-height: 1.6;
	letter-spacing: 0.02em;
	font-size: 24px;
	font-weight: bold;
}

#back_to_archive {
	margin-top: 30px;
	text-align: center;
}

#back_to_archive .general-button {
	min-width: 190px;
	padding: 15px 25px 15px 40px;
}

#back_to_archive .general-button:before {
	left: 20px;
	right: auto;
    -webkit-transform: rotate(-135deg);
    		transform: rotate(-135deg);
}

@media screen and (max-width: 1024px) {
	#post-single aside section {
		padding: 20px 30px;
	}
	
	#post-single aside {
		width: auto;
		margin-bottom: 30px;
		float: none;
	}
	
	#post-single main {
		margin-right: auto;
		padding-right: 0;
		float: none;
	}
}

@media screen and (max-width: 768px) {
	#post-single article {
		padding: 30px;
	}
	
	#post-single .thumbnail {
		margin: -30px -30px 30px -30px;
	}
	
	#single-title {
		font-size: 20px;
	}
	
	#back_to_archive .general-button {
		min-width: 160px;
		padding: 12px 20px 12px 30px;
	}
	
	#back_to_archive .general-button:before {
		left: 15px;
	}
}

@media screen and (max-width: 480px) {
	#post-single aside section {
		padding: 15px 20px;
	}
	
	#tag_list li {
		font-size: 11px;
	}
	
	#author_description {
		font-size: 12px;
	}
	
	#post-single article {
		padding: 20px;
	}
	
	#post-single .thumbnail {
		margin: -20px -20px 30px -20px;
	}
	
	#single-title {
		font-size: 18px;
	}
	
	#back_to_archive .general-button {
		min-width: 140px;
		padding: 10px 20px 10px 30px;
		font-size: 12px;
	}
}


/**
 * Front
 * ==========================================================================
 */


.front header {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	color: #fff;
	background: transparent;
}

.front header h1 .sp {
	display: none;
}

@media screen and (max-width: 1024px) {
	.front header {
		background: #fff;
		position: relative;
	}
	
	.front header h1 .pc {
		display: none;
	}
	
	.front header h1 .sp {
		display: block;
	}
}


/**
 * Mainview
 */

#mainview {
	padding: 200px 0 80px;
	background: url(images/mainview.png) no-repeat center;
	background-size: cover;
}

#mainview h1 {
	margin-bottom: 40px;
}

#mainview h1 img {
	height: 200px;
	margin: 0 auto;
	display: block;
}

#mainview p {
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.02em;
	font-size: 28px;
	color: #fff;
}

#mainview_link {
	margin-top: 60px;
	text-align: center;
}

#mainview_link .general-button {
	min-width: 300px;
	margin: 0 10px;
	-webkit-box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
			box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
}

@media screen and (max-width: 1440px) {
	#mainview h1 img {
		height: 170px;
	}
}

@media screen and (max-width: 1024px) {
	#mainview {
		padding: 120px 0 60px;
	}
	
	#mainview h1 img {
		height: 150px;
	}
	
	#mainview p {
		font-size: 23px;
	}
}

@media screen and (max-width: 768px) {
	#mainview h1 img {
		height: 130px;
	}
	
	#mainview_link {
		max-width: 300px;
		margin: 20px auto 0;
	}
	
	#mainview_link .general-button {
		min-width: 260px;
		margin-top: 15px;
	}
}

@media screen and (max-width: 480px) {
	#mainview {
		padding: 80px 0 60px;
	}
	
	#mainview h1 {
		margin-bottom: 20px;
	}
	
	#mainview h1 img {
		height: 110px;
	}
	
	#mainview p {
		font-size: 20px;
	}
	
	#mainview_link {
		margin-top: 10px;
	}
	
	#mainview_link .general-button {
		min-width: 220px;
	}
}

@media screen and (max-width: 350px) {
	#mainview p {
		font-size: 18px;
	}
}


/**
 * Front-content
 */

#front-content section {
	position: relative;
}

#front-content .discover {
	text-align: center;
}

@media screen and (max-width: 768px) {
	#front-content .discover .general-button {
		min-width: 220px;
	}
}


/**
 * Lead_points
 */

#lead_points {
	padding: 60px 0 100px;
	color: #fff;
	background: #000;
}

#lead_points ul:after {
	content: "";
	display: block;
	clear: both;
}

#lead_points li {
	width: 33.3%;
	padding: 0 20px;
	float: left;
}

#lead_points li img {
	width: 83px;
	margin: 0 auto 25px;
	display: block;
}

#lead_points li h1 {
	margin-bottom: 20px;
	text-align: center;
	line-height: 1.3;
	font-size: 20px;
	font-weight: bold;
}

#lead_points li p {
	line-height: 1.8;
	font-size: 14px;
}

@media screen and (max-width: 1440px) {
	#lead_points li h1 {
		font-size: 18px;
	}
}

@media screen and (max-width: 1024px) {
	#lead_points li {
		padding: 0 10px;
	}
	
	#lead_points li h1 {
		font-size: 16px;
	}
}

@media screen and (max-width: 768px) {
	#lead_points {
		padding: 40px 0 80px;
	}
	
	#lead_points li {
		width: auto;
		padding: 0;
		float: none;
	}
	
	#lead_points li:not(:first-child) {
		margin-top: 30px;
	}
	
	#lead_points li:after {
		content: "";
		display: block;
		clear: both;
	}
	
	#lead_points li img {
		width: 60px;
		margin: 0 auto;
		float: left;
	}
	
	#lead_points li h1 {
		margin-bottom: 10px;
		margin-left: 100px;
		text-align: left;
	}
	
	#lead_points li p {
		margin-left: 100px;
		font-size: 12px;
	}
}

@media screen and (max-width: 480px) {
	#lead_points li img {
		width: 40px;
	}
	
	#lead_points li h1 {
		margin-left: 55px;
	}
	
	#lead_points li p {
		margin-left: 55px;
		font-size: 11px;
	}
}


/**
 * For_about
 */

#for_about {
	padding: 100px 0;
}

#for_about #pc_image {
	width: 870px;
	margin: -150px auto 30px;
	padding: 0 100px;
	display: block;
}

#for_about h1 {
	margin-bottom: 30px;
	text-align: center;
	line-height: 1.6;
    letter-spacing: -0.05em;
	font-size: 40px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

#for_about h1 br {
	display: none;
}

#for_about ul {
	max-width: 780px;
	margin: 0 auto 20px;
}

#for_about li {
	padding: 15px 70px;
	position: relative;
	text-align: center;
	line-height: 1.6;
	font-size: 20px;
	background: #eeeeee;
}

#for_about li:not(:first-child) {
	margin-top: 5px;
}

#for_about li img {
	height: 50px;
	display: block;
	position: absolute;
	top: 3px;
	left: 10px;
}

#for_about p {
	margin-bottom: 20px;
	line-height: 1.6;
	font-size: 24px;
	font-weight: bold;
	color: #d91c1c;
}

@media screen and (max-width: 1440px) {
	#for_about h1 {
		font-size: 32px;
	}
	
	#for_about li {
		padding: 15px 50px;
		font-size: 18px;
	}
	
	#for_about li img {
		height: 40px;
	}
}

@media screen and (max-width: 768px) {
	#for_about {
		padding: 100px 0 50px;
	}
	
	#for_about #pc_image {
		padding: 0 50px;
	}
	
	#for_about h1 {
		margin-bottom: 20px;
		font-size: 28px;
	}
	
	#for_about li {
		padding: 15px 40px;
		font-size: 14px;
	}
	
	#for_about li img {
		height: 30px;
	}
	
	#for_about p {
		font-size: 20px;
	}
}

@media screen and (max-width: 480px) {
	#for_about #pc_image {
		padding: 0 10px;
	}

	#for_about h1 br {
		display: block;
	}
	
	#for_about ul {
		width: calc(100% + 40px);
		max-width: none;
		position: relative;
		left: -20px;
	}
	
	#for_about p {
		font-size: 16px;
	}
}


/**
 * Front_function
 */

#front_function {
	padding-top: 80px;
	color: #fff;
	background: #d91c1c;
}

#functions {
	width: 55%;
	float: left;
}

#for_plan {
	width: 45%;
	padding: 30px 30px 60px;
	float: right;
	color: #222;
	background: #fff;
}

#functions ul {
	padding: 20px;
}

#functions ul:after {
	content: "";
	display: block;
	clear: both;
}

#functions li {
	width: 33.3%;
	padding: 0 10px 30px;
	float: left;
}

#functions li:nth-child(3n+1) {
	clear: both;
}

#functions li img {
	width: 100px;
	margin: 0 auto;
	display: block;
}

#functions li p {
	width: 100%;
	min-height: 70px;
	margin: 0 auto;
	display: table;
	text-align: center;
	line-height: 1.3;
	font-size: 14px;
	font-weight: bold;
}

#functions li span {
	display: table-cell;
	vertical-align: middle;
}

#other_function {
	text-align: center;
	line-height: 1.6;
	font-size: 20px;
}

#other_function span {
	padding-bottom: 10px;
	display: inline-block;
	border-bottom: 1px solid #fff;
}

#for_plan h2 {
	margin-bottom: 25px;
	text-align: center;
	line-height: 1.3;
	font-size: 20px;
	font-weight: bold;
}

#for_plan .plan {
	margin-bottom: 20px;
}

#for_plan .discover {
	margin-top: 30px;
}

@media screen and (max-width: 1440px) {
	#functions li p {
		max-width: 120px;
		min-height: 60px;
		font-size: 12px;
	}
}

@media screen and (max-width: 1024px) {
	#functions {
		width: auto;
		margin-bottom: 50px;
		float: none;
	}
	
	#for_plan {
		width: auto;
		max-width: 500px;
		margin: 0 auto;
		padding-bottom: 30px;
		float: none;
	}
	
	#functions ul {
		max-width: 500px;
		margin: 0 auto 30px;
		padding: 0;
	}
	
	#functions li {
		padding-bottom: 10px;
	}
	
	#functions li img {
		width: 80px;
	}
	
	#functions li p {
		min-height: 50px;
		font-size: 11px;
	}
}

@media screen and (max-width: 768px) {
	#front_function {
		padding-top: 50px;
	}
	
	#other_function span {
		padding-bottom: 7px;
	}
	
	#for_plan {
		padding: 25px 20px 30px;
	}
	
	#for_plan h2 {
		margin-bottom: 20px;
		font-size: 16px;
	}
}

@media screen and (max-width: 480px) {
	#functions ul {
		margin-bottom: 15px;
	}
	
	#functions li {
		padding: 0 5px 10px;
	}
	
	#functions li p {
		font-size: 9px;
	}
}


/**
 * Type_diagnosis-banner
 */

#type_diagnosis-banner {
	padding: 80px;
}

#type_diagnosis-box {
	padding: 0 80px 100px;
	background: #75d8e7;
}

#type_diagnosis-title {
	position: relative;
	top: -25px;
}

#type_diagnosis-title img {
	width: 466px;
	margin: 0 auto 15px;
	display: block;
}

#type_diagnosis-title p {
	text-align: center;
	line-height: 1.6;
	font-size: 22px;
	font-weight: bold;
}

#type_diagnosis-box ul {
	max-width: 1400px;
	margin: 0 auto;
}

#type_diagnosis-box ul:after {
	content: "";
	display: block;
	clear: both;
}

#type_diagnosis-box li {
	width: 25%;
	float: left;
}

#type_diagnosis-box li img {
	margin: 0 auto;
	display: block;
}

#type_diagnosis-box li p {
	padding: 0 10px;
	text-align: center;
	line-height: 1.3;
	font-size: 18px;
	font-weight: bold;
}

#type_diagnosis-start {
	max-width: 840px;
	margin: 50px auto 0;
	padding: 12px 20px;
	display: block;
	position: relative;
	background: #fff32c;
	border: 8px solid #36b7d1;
	-webkit-transition: opacity ease 0.3s;
			transition: opacity ease 0.3s;
}

#type_diagnosis-start:hover {
	opacity: 0.8;
}

#type_diagnosis-start img {
	width: 182px;
	display: block;
	margin: 0 auto;
}

#type_diagnosis-start:after {
	content: "";
	width: 39px;
	height: 48px;
	display: block;
	position: absolute;
	top: calc(50% - 24px);
	right: 25px;
	background: url(images/top/type_diagnosis-start-arrow.png) no-repeat center;
	background-size: contain;
}

#type_diagnosis-start .start_label {
	position: absolute;
	top: -15px;
	left: 10px;
	text-align: center;
}

#type_diagnosis-start .start_label:before,
#type_diagnosis-start .start_label:after {
	content: "";
	width: 84px;
	height: 100px;
	margin: 0 5px;
	display: inline-block;
	background: no-repeat center;
	background-size: contain;
}

#type_diagnosis-start .start_label:before {
	background-image: url(images/top/type_diagnosis-start-label-1.png);
}

#type_diagnosis-start .start_label:after {
	background-image: url(images/top/type_diagnosis-start-label-2.png);
}

@media screen and (max-width: 1440px) {
	#type_diagnosis-box {
		padding: 0 40px 60px;
	}
	
	#type_diagnosis-box ul {
		max-width: 1000px;
	}
	
	#type_diagnosis-box li p {
		font-size: 14px;
	}
}

@media screen and (max-width: 1024px) {
	#type_diagnosis-banner {
		padding: 40px;
	}
	
	#type_diagnosis-box {
		padding: 0 20px 40px;
	}
	
	#type_diagnosis-title {
		top: -20px;
	}
	
	#type_diagnosis-title img {
		width: 380px;
	}
	
	#type_diagnosis-box ul {
		max-width: 700px;
	}
	
	#type_diagnosis-box li p {
		font-size: 12px;
	}
	
	#type_diagnosis-start {
		max-width: 560px;
		margin-top: 40px;
	}
	
	#type_diagnosis-start img {
		width: 130px;
	}
	
	#type_diagnosis-start .start_label {
		top: -20px;
	}
	
	#type_diagnosis-start:after {
		width: 30px;
	}
	
	#type_diagnosis-start .start_label:before,
	#type_diagnosis-start .start_label:after {
		width: 62px;
	}
}

@media screen and (max-width: 768px) {
	#type_diagnosis-banner {
		padding: 30px;
	}
	
	#type_diagnosis-title p {
		font-size: 18px;
	}
	
	#type_diagnosis-box ul {
		max-width: 380px;
	}
	
	#type_diagnosis-box li {
		width: 50%;
		margin-bottom: 10px;
	}
	
	#type_diagnosis-box li:nth-child(2n+1) {
		clear: both;
	}
	
	#type_diagnosis-start {
		max-width: 260px;
		padding: 65px 20px;
	}
	
	#type_diagnosis-start:after {
		width: 26px;
		height: 40px;
		margin: 0 auto;
		top: auto;
		bottom: 10px;
		left: 0;
		right: 0;
		-webkit-transform: rotate(90deg);
				transform: rotate(90deg);
	}
	
	#type_diagnosis-start .start_label {
		margin: 0 auto;
		top: -40px;
		left: 0;
		right: 0;
	}
}

@media screen and (max-width: 480px) {
	#type_diagnosis-box {
		padding: 0 10px 25px;
	}
	
	#type_diagnosis-title {
		top: -15px;
	}
	
	#type_diagnosis-title img {
		width: 320px;
		padding: 0 10px;
	}
	
	#type_diagnosis-title p {
		letter-spacing: -0.05em;
		font-size: 15px;
	}
	
	#type_diagnosis-box li p {
		font-size: 11px;
	}
	
	#type_diagnosis-start {
		margin-top: 30px;
		padding: 55px 10px;
	}
	
	#type_diagnosis-start:after {
		width: 22px;
		height: 30px;
	}
	
	#type_diagnosis-start .start_label:before,
	#type_diagnosis-start .start_label:after {
		width: 56px;
	}
}


/**
 * Front_topics
 */

#front_topics {
	padding: 80px 0 100px;
	background: #eeeeee;
}

#topics_slider {
	width: calc(100% + 30px);
	position: relative;
	left: -15px;
}

#topics_slider ul {
    -webkit-transition: -webkit-transform cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
    		transition: 		transform cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
}

#topics_slider ul:after {
	content: "";
	display: block;
	clear: both;
}

#topics_slider .post_card {
	width: 33.3%;
	float: left;
}

#topics_slider .post_card a {
	margin: 0 15px;
}

#controller {
	width: 100vw;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
    -webkit-transform: translateX(-50%);
    		transform: translateX(-50%);
}

#controller button {
	width: 80px;
	height: 80px;
	position: absolute;
	top: -40px;
	background: #d91c1c;
    border: 2px solid #d91c1c;
    -webkit-transition: background ease 0.3s;
    		transition: background ease 0.3s;
}

#controller button:hover {
	background: #fff;
}

#controller button:before {
	content: "";
    width: 26px;
    height: 26px;
    display: block;
    position: absolute;
    top: calc(50% - 13px);
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transition: border-color ease 0.3s;
    		transition: border-color ease 0.3s;
}

#controller button:hover:before {
    border-top-color: #d91c1c;
    border-right-color: #d91c1c;
}

#controller .prev {
	left: 0;
}

#controller .next {
	right: 0;
}

#controller .prev:before {
    left: calc(50% - 6px);
    -webkit-transform: rotate(-135deg);
    		transform: rotate(-135deg);
}

#controller .next:before {
    right: calc(50% - 6px);
    -webkit-transform: rotate(45deg);
    		transform: rotate(45deg);
}

#front_topics .discover {
	margin-top: 40px;
}

@media screen and (max-width: 1024px) {
	#topics_slider {
		width: calc(100% + 20px);
		left: -10px;
	}

	#topics_slider .post_card a {
		margin: 0 10px;
	}
	
	#controller button {
		width: 60px;
		height: 60px;
		top: -30px;
	}
	
	#controller button:before {
		width: 20px;
		height: 20px;
		top: calc(50% - 10px);
	}

	#controller .prev:before {
		left: calc(50% - 5px);
	}

	#controller .next:before {
		right: calc(50% - 5px);
	}
}

@media screen and (max-width: 768px) {
	#front_topics {
		padding: 50px 0;
	}

	#topics_slider {
		width: calc(100% + 10px);
		max-width: none;
		left: auto;
	}

	#topics_slider .post_card a {
		margin: 0 5px;
	}
	
	#topics_slider {
		max-width: 300px;
		margin: 0 auto;
	}
	
	#topics_slider .post_card {
		width: 100%;
	}
	
	#topics_slider .post_card .post-thumbnail {
		height: 180px;
	}
}

@media screen and (max-width: 480px) {
	#topics_slider {
		max-width: 260px;
	}
	
	#topics_slider .post_card .post-thumbnail {
		height: 160px;
	}
	
	#topics_slider .post_card h2 {
		font-size: 14px;
	}
	
	#controller button {
		width: 50px;
		height: 50px;
		top: -25px;
	}
	
	#controller button:before {
		width: 14px;
		height: 14px;
		top: calc(50% - 7px);
	}

	#controller .prev:before {
		left: calc(50% - 4px);
	}

	#controller .next:before {
		right: calc(50% - 4px);
	}
}


/**
 * Logos
 */

#logos {
	padding: 50px 0 100px;
}

#logos-title {
	padding-top: 10px;
	margin: 0 auto 30px;
}

#logos-title img {
	width: 733px;
	margin: 0 auto;
	display: block;
}

#logos-title .sp {
	display: none;
}

#logos ul {
	text-align: center;
	font-size: 0;
}

#logos li {
	width: calc(20% - 16px);
	margin: 8px;
	height: 100px;
	display: inline-block;
    background: #fff;
	border: 1px solid #d7d7d7;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
    		box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
}

#logos li:nth-child(5n+1) {
	clear: both;
}

#logos .discover {
	margin-top: 40px;
}

@media screen and (max-width: 1440px) {
	#logos-title {
		max-width: 640px;
	}
}

@media screen and (max-width: 1024px) {
	#logos-title {
		max-width: 520px;
	}
	
	#logos li {
		width: calc(25% - 16px);
	}
	
	#logos li:nth-child(5n+1) {
		clear: none;
	}
	
	#logos li:nth-child(4n+1) {
		clear: both;
	}
}

@media screen and (max-width: 768px) {
	#logos {
		padding: 50px 0;
	}

	#logos-title {
		max-width: 440px;
	}
	
	#logos-title .pc {
		display: none;
	}

	#logos-title .sp {
		display: block;
	}
	
	#logos li {
		width: calc(33.3% - 10px);
		height: 90px;
		margin: 5px;
		-webkit-box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.1);
				box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.1);
	}
	
	#logos li:nth-child(4n+1) {
		clear: none;
	}
	
	#logos li:nth-child(3n+1) {
		clear: both;
	}
}

@media screen and (max-width: 480px) {
	#logos-title {
		margin-bottom: 20px;
		padding-top: 0;
	}
	
	#logos ul {
		width: calc(100% + 20px);
		position: relative;
		left: -10px;
	}
	
	#logos li {
		height: 70px;
	}
}


/**
 * Front_case_study
 */

#front_case_study {
	padding: 80px 0 100px;
	background: #eeeeee;
}

#front_case_study li:not(:first-child) {
	margin-top: 20px;
}

#front_case_study li a {
	display: block;
}

#front_case_study li a:after {
	content: "";
	display: block;
	clear: both;
}

#front_case_study li .post-thumbnail {
	width: 50%;
	height: 320px;
	background: no-repeat center;
	background-size: cover;
}

#front_case_study li .post-content {
	min-height: 320px;
	margin-top: 30px;
	padding: 40px;
	background: #fff;
}

#front_case_study li .post-thumbnail + .post-content {
	width: 50%;
}

#front_case_study li h2 {
	margin-bottom: 30px;
	line-height: 1.3;
	font-size: 20px;
	font-weight: bold;
}

#front_case_study li p {
	line-height: 2;
	font-size: 14px;
}

#front_case_study li:nth-child(odd) .post-thumbnail {
	float: left;
}

#front_case_study li:nth-child(odd) .post-thumbnail + .post-content {
	float: right;
}

#front_case_study li:nth-child(even) .post-thumbnail {
	float: right;
}

#front_case_study li:nth-child(even) .post-thumbnail + .post-content {
	float: left;
}

@media screen and (max-width: 1440px) {
	#front_case_study li .post-thumbnail {
		height: 280px;
	}
	
	#front_case_study li .post-content {
		min-height: 280px;
	}
	
	#front_case_study li h2 {
		font-size: 18px;
	}
	
	#front_case_study li p {
		font-size: 13px;
	}
}

@media screen and (max-width: 1024px) {
	#front_case_study li .post-thumbnail {
		height: 220px;
	}
	
	#front_case_study li .post-content {
		min-height: 220px;
		padding: 30px;
	}
	
	#front_case_study li h2 {
		margin-bottom: 15px;
		font-size: 16px;
	}
	
	#front_case_study li p {
		font-size: 10px;
	}
}

@media screen and (max-width: 768px) {
	#front_case_study {
		padding: 50px 0;
	}
	
	#front_case_study li .post-thumbnail {
		width: auto;
	}
	
	#front_case_study li .post-content {
		min-height: 0;
		margin-top: 0;
	}
	
	#front_case_study li .post-thumbnail + .post-content {
		width: auto;
	}
	
	#front_case_study li:nth-child(odd) .post-thumbnail,
	#front_case_study li:nth-child(odd) .post-thumbnail + .post-content,
	#front_case_study li:nth-child(even) .post-thumbnail,
	#front_case_study li:nth-child(even) .post-thumbnail + .post-content {
		float: none;
	}
}

@media screen and (max-width: 480px) {
	#front_case_study li .post-thumbnail {
		height: 160px;
	}
	
	#front_case_study li .post-content {
		padding: 20px;
	}
}


/**
 * About
 * ==========================================================================
 */


/**
 * About common
 */

#about-content section {
	position: relative;
}


/**
 * About_first
 */

#about_first {
	padding: 80px 0;
}

#about_first:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 2;
	pointer-events: none;
    box-shadow: 0px -30px 80px rgba(0,0,0,0.2) inset;
}

#about_first h1 {
	margin-bottom: 30px;
	text-align: center;
	line-height: 1.5;
    letter-spacing: 0.02em;
	font-size: 28px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	color: #d91c1c;
}

#about_first h1 br {
	display: none;
}

#about_first p {
	margin-bottom: 40px;
	text-align: center;
	line-height: 1.6;
	font-size: 18px;
}

#about_first-content {
	max-width: 900px;
	margin: 0 auto;
}

#about_first-content:after {
	content: "";
	display: block;
	clear: both;
}

#about_first-image {
	width: 50%;
	padding-right: 70px;
	float: left;
}

#about_first-image img {
	display: block;
	float: left;
}

#about_functions {
	width: 50%;
	padding-top: 50px;
	float: right;
}

#about_functions h2 {
	margin-bottom: 15px;
	text-align: center;
	line-height: 1.3;
	letter-spacing: 0.05em;
	font-size: 16px;
	font-weight: bold;
	color: #d91c1c;
}

#about_functions li {
	margin-top: 15px;
    padding: 12px 60px;
    position: relative;
    text-align: center;
    line-height: 1.6;
    letter-spacing: -0.02em;
    font-size: 16px;
    font-weight: bold;
	color: #fff;
    background: -webkit-radial-gradient(#cb985f, #a5733a);
    background: 		radial-gradient(#cb985f, #a5733a);
	border-radius: 30px;
	-webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
			box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
}

#about_functions li:before {
    content: "\f00c";
    position: absolute;
    top: 12px;
    left: 40px;
    font-weight: normal;
    font-family: FontAwesome;
	color: #d91c1c;
}

@media screen and (max-width: 1024px) {
	#about_first h1 br {
		display: block;
	}
	
	#about_first-image {
		padding-right: 50px;
	}
	
	#about_functions {
		padding-top: 20px;
	}
	
	#about_functions li {
		padding: 12px 40px;
	}
	
	#about_functions li:before {
		left: 20px;
	}
}

@media screen and (max-width: 768px) {
	#about_first {
		padding: 50px 0;
	}
	
	#about_first h1 {
		margin-bottom: 20px;
		font-size: 24px;
	}
	
	#about_first p {
		margin-bottom: 20px;
		font-size: 14px;
	}
	
	#about_first-content {
		max-width: 400px;
	}
	
	#about_first-image {
		width: auto;
		padding-right: 0;
		float: none;
	}
	
	#about_first-image img {
		width: 280px;
		margin: 0 auto;
		display: block;
		float: none;
	}
	
	#about_functions {
		width: auto;
		padding-top: 30px;
		float: none;
	}
	
	#about_functions li {
		font-size: 13px;
	}
}

@media screen and (max-width: 480px) {
	#about_first {
		padding: 30px 0 50px;
	}
	
	#about_first h1 {
		font-size: 22px;
	}
	
	#about_first p {
		margin-bottom: 10px;
		font-size: 13px;
	}
	
	#about_first-image img {
		width: 240px;
	}
}


/**
 * All_functions
 */

#all_functions {
	padding: 80px 0;
	background: #d91c1c;
}

#all_functions ul {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 20px;
}

#all_functions ul:after {
	content: "";
	display: block;
	clear: both;
}

#all_functions li {
	width: calc(14.28% - 2px);
	margin: 1px;
	padding: 20px 10px 40px;
	float: left;
	position: relative;
	background: #fff;
}

#all_functions li:nth-child(7n+1) {
	clear: both;
}

#all_functions li:before {
	content: "";
	width: 30px;
	height: 30px;
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	float: right;
	color: #fff;
	background: #000;
}

#all_functions li:after {
	content: "";
	width: 8px;
	height: 8px;
	display: block;
	position: absolute;
	bottom: 10px;
	right: 13px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
}

#all_functions li img {
    width: 80px;
    margin: 0 auto;
    display: block;
}

#all_functions li h2 {
	width: 100%;
	min-height: 70px;
	margin: 0 auto;
	display: table;
	text-align: center;
	line-height: 1.3;
	letter-spacing: -0.05em;
	font-size: 14px;
	font-weight: bold;
	color: #d91c1c;
}

#all_functions li span {
	display: table-cell;
	vertical-align: middle;
}

#all_functions li p {
	text-align: center;
	line-height: 1.3;
	font-size: 11px;
}

@media screen and (max-width: 1440px) {
	#all_functions li h2 {
		max-width: 145px;
		min-height: 60px;
		font-size: 12px;
	}
}

@media screen and (max-width: 1024px) {
	#all_functions ul {
		max-width: 800px;
	}
	
	#all_functions li {
		width: calc(20% - 2px);
	}

	#all_functions li:nth-child(7n+1) {
		clear: none;
	}

	#all_functions li:nth-child(5n+1) {
		clear: both;
	}
}

@media screen and (max-width: 768px) {
	#all_functions {
		padding: 50px 0;
	}
	
	#all_functions ul {
		max-width: 500px;
	}
	
	#all_functions li {
		width: calc(33.3% - 2px);
		padding: 15px 10px 30px;
	}

	#all_functions li:nth-child(5n+1) {
		clear: none;
	}

	#all_functions li:nth-child(3n+1) {
		clear: both;
	}
	
	#all_functions li:before {
		width: 24px;
		height: 24px;
	}
	
	#all_functions li:after {
		width: 6px;
		height: 6px;
		bottom: 9px;
		right: 10px;
	}
	
	#all_functions li img {
		width: 60px;
	}
}

@media screen and (max-width: 480px) {
	#all_functions ul {
		max-width: 360px;
	}
	
	#all_functions li {
		width: calc(50% - 2px);
	}

	#all_functions li:nth-child(3n+1) {
		clear: none;
	}

	#all_functions li:nth-child(2n+1) {
		clear: both;
	}
	
	#all_functions li p {
		font-size: 9px;
	}
}


/**
 * Function_detail
 */

#function_detail {
	padding-top: 80px;
}

#function_detail .detail_block {
	padding: 60px 0;
}

#function_detail .detail_block:first-child {
	padding-top: 0;
}

#function_detail ul {
	position: relative;
	z-index: 2;
}

#function_detail li {
	padding-top: 10px;
	position: relative;
}

#function_detail li:before {
	content: "";
	position: absolute;
	top: 80px;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: -1;
}

#function_detail li:after {
	content: "";
	display: block;
	clear: both;
}

#function_detail li:not(:first-child) {
	margin-top: 50px;
}

#function_detail li .function_detail-image {
	width: 560px;
	margin: 0 auto;
	display: block;
	-webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
			box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}

#function_detail li:nth-child(odd) .function_detail-image {
	float: left;
}

#function_detail li:nth-child(even) .function_detail-image {
	float: right;
}

#function_detail li .block-content {
	min-height: 400px;
	padding: 0 40px 60px;
	position: relative;
}

#function_detail li:nth-child(odd) .block-content {
	margin-left: 560px;
}

#function_detail li:nth-child(even) .block-content {
	margin-right: 560px;
}

#function_detail li .function_icon {
	width: 100px;
	margin-bottom: 50px;
	padding: 10px 0;
	display: block;
}

#function_detail li h2 {
	margin-bottom: 20px;
	line-height: 1.3;
	font-size: 24px;
	font-weight: bold;
	color: #d91c1c;
}

#function_detail li p {
	line-height: 1.8;
	font-size: 13px;
}

#function_detail .detail_block.white li:before {
	background: #eeeeee;
}

#function_detail .detail_block.white li .function_icon {
	background: #d91c1c;
}

#function_detail .detail_block.pink {
	background: #f1e4e4;
}

#function_detail .detail_block.pink li:before {
	background: #fff;
}

#function_detail .detail_block.pink li .function_icon {
	background: #000;
}

@media screen and (max-width: 1440px) {
	#function_detail li .function_detail-image {
		width: 480px;
	}

	#function_detail li:nth-child(odd) .block-content {
		margin-left: 480px;
	}

	#function_detail li:nth-child(even) .block-content {
		margin-right: 480px;
	}
}

@media screen and (max-width: 1024px) {
	#function_detail li:nth-child(odd) .function_detail-image,
	#function_detail li:nth-child(even) .function_detail-image {
		float: left;
	}
	
	#function_detail li .block-content {
		min-height: 0;
		padding: 40px;
		clear: both;
	}
	
	#function_detail li:nth-child(odd) .block-content {
		margin-left: auto;
	}

	#function_detail li:nth-child(even) .block-content {
		margin-right: auto;
	}
	
	#function_detail li .function_icon {
		width: 80px;
		margin-bottom: 0;
		padding: 7px 0;
		float: left;
	}
	
	#function_detail li h2 {
		margin-bottom: 10px;
		margin-left: 100px;
	}
	
	#function_detail li h2 br {
		display: none;
	}
	
	#function_detail li p {
		margin-left: 100px;
	}
}

@media screen and (max-width: 768px) {
	#function_detail {
		padding-top: 50px;
	}
	
	#function_detail .detail_block {
		padding: 30px 0;
	}
	
	#function_detail li:not(:first-child) {
		margin-top: 20px;
	}
	
	#function_detail li:before {
		right: -50px;
	}
	
	#function_detail li .block-content {
		margin-right: -50px;
		padding: 30px;
	}
	
	#function_detail li .function_detail-image {
		width: calc(100% - 40px);
		margin-left: 0;
	}
	
	#function_detail li .function_icon {
		width: 60px;
		padding: 5px 0;
	}

	#function_detail li h2 {
		margin-left: 80px;
		font-size: 18px;
	}
	
	#function_detail li p {
		margin-left: 80px;
		font-size: 11px;
	}
}

@media screen and (max-width: 480px) {
	#function_detail li:before {
		right: -20px;
	}
	
	#function_detail li .function_detail-image {
		width: calc(100% - 20px);
	}
	
	#function_detail li .block-content {
		margin-right: -20px;
		padding: 20px 30px;
	}
	
	#function_detail li .function_icon {
		margin-bottom: 20px;
		float: none;
	}

	#function_detail li h2 {
		margin-left: auto;
		font-size: 16px;
	}
	
	#function_detail li p {
		margin-left: auto;
	}
}


/**
 * Price
 * ==========================================================================
 */


/**
 * price_plan
 */

#price_plan {
	margin: 60px auto 0;
}

#price_plan h2 {
	margin-bottom: 40px;
	text-align: center;
	line-height: 1.3;
	font-size: 26px;
	font-weight: bold;
}

#price_plan-box {
	padding: 50px;
	background: #eeeeee;
}

#price_plan-box:after {
	content: "";
	display: block;
	clear: both;
}

#price_plan .plan {
	width: 49%;
	float: left;
}

#price_plan .plan:first-child {
	margin-right: 2%;
}

#price_plan .plan ul {
	margin-bottom: 40px;
}

#price_plan .plan li:last-child {
	border-bottom: 1px solid #d5d5d5;
}

@media screen and (max-width: 1440px) {
	#price_plan h2 {
		font-size: 22px;
	}
}

@media screen and (max-width: 1024px) {
	#price_plan-box {
		width: calc(100% + 100px);
		padding: 40px;
		position: relative;
		left: -50px;
	}
}

@media screen and (max-width: 768px) {
	#price_plan {
		margin: 40px auto 0;
	}
	
	#price_plan h2 {
		font-size: 18px;
	}
	
	#price_plan-box {
		padding-bottom: 60px;
	}
	
	#price_plan .plan {
		width: auto;
		max-width: 360px;
		margin: 0 auto;
		float: none;
	}
	
	#price_plan .plan:first-child {
		margin-bottom: 20px;
		margin-right: auto;
	}
	
	#price_plan .plan ul {
		height: auto !important;
		margin-bottom: 30px;
	}
}

@media screen and (max-width: 480px) {
	#price_plan-box {
		width: calc(100% + 40px);
		padding: 30px 30px 50px;
		left: -20px;
	}
}


/**
 * Corresponding_function
 */

#corresponding_function {
	padding: 100px 0 80px;
}

#corresponding_function h3 {
	margin-bottom: 30px;
	text-align: center;
	line-height: 1.3;
	font-size: 22px;
	font-weight: bold;
}

#corresponding_function table {
	width: 100%;
	line-height: 1.3;
	border-top: 2px solid #000000;
	border-bottom: 2px solid #000000;
}

#corresponding_function thead tr {
	border-bottom: 2px solid #000000;
}

#corresponding_function thead th {
	padding: 25px 10px;
	position: relative;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	border: 1px solid #000000;
}

#corresponding_function thead th:first-child {
	border-left: none;
}

#corresponding_function thead th:last-child {
	border-right: none;
}

#corresponding_function thead th:before {
	content: "";
	width: 38px;
	height: 32px;
	display: block;
	position: absolute;
	top: calc(50% - 16px);
	left: 15px;
	background: no-repeat center;
	background-size: contain;
}

#corresponding_function thead .label {
	background: #eeeeee;
}

#corresponding_function thead .trial,
#corresponding_function thead .premium {
	width: 240px;
	padding-left: 40px;
	color: #fff;
}

#corresponding_function thead .trial {
	background: #d91c1c;
}

#corresponding_function thead .premium {
	background: -webkit-linear-gradient(left, #c18f57, #8d6233);
	background: 		linear-gradient(to right, #c18f57, #8d6233);
}

#corresponding_function thead .trial:before {
	background-image: url(images/plan_icon-trial.png);
}

#corresponding_function thead .premium:before {
	background-image: url(images/plan_icon-premium.png);
}

#corresponding_function thead .trial br {
    display: none;
}

#corresponding_function tbody th {
	padding: 5px 10px;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	background: #000;
	border: 1px solid #fff;
}

#corresponding_function tbody th:first-child {
	border-left: none;
}

#corresponding_function tbody th:after {
    content: "";
    display: block;
    clear: both;
}

#corresponding_function tbody th img {
	width: 60px;
    float: left;
}

#corresponding_function tbody th p {
    margin-left: 70px;
    padding: 15px 0;
}

#corresponding_function tbody td {
	padding: 10px;
	text-align: center;
	vertical-align: middle;
	font-size: 16px;
	border: 1px solid #000000;
}

#corresponding_function tbody td:last-child {
	background: #f4ece3;
	border-right: none;
}

#corresponding_function-text {
	margin-top: 30px;
	line-height: 1.6;
	font-size: 13px;
}

@media screen and (max-width: 1440px) {
    #corresponding_function thead th {
        font-size: 16px;
    }

    #corresponding_function thead .trial,
    #corresponding_function thead .premium {
        width: 220px;
    }
    
    #corresponding_function tbody td {
        font-size: 14px;
    }
}

@media screen and (max-width: 1024px) {
    #corresponding_function thead th {
        padding: 20px;
        font-size: 14px;
    }
    
    #corresponding_function thead th:before {
        width: 30px;
        left: 10px;
    }
    
    #corresponding_function thead .trial,
    #corresponding_function thead .premium {
        width: 180px;
    }
    
    #corresponding_function tbody th {
        font-size: 12px;
    }
    
    #corresponding_function tbody th img {
        width: 50px;
    }
    
    #corresponding_function tbody th p {
        margin-left: 60px;
    }
}

@media screen and (max-width: 768px) {
	#corresponding_function {
		padding: 60px 0 50px;
	}
	
	#corresponding_function h3 {
		font-size: 16px;
	}
    
    #corresponding_function thead th {
        padding: 40px 5px 5px;
    }
    
    #corresponding_function thead th:before {
        margin: 0 auto;
        top: 5px;
        left: 0;
        right: 0;
    }
    
    #corresponding_function thead .label {
        font-size: 0;
    }
    
    #corresponding_function thead .trial,
    #corresponding_function thead .premium {
        width: 100px;
        padding-left: 5px;
    }
    
    #corresponding_function thead .trial br {
        display: block;
    }
    
    #corresponding_function tbody th {
        padding: 10px 7px;
        vertical-align: middle;
    }
    
    #corresponding_function tbody th img {
        display: none;
    }
    
    #corresponding_function tbody th p {
        margin-left: auto;
        padding: 0;
    }
    
    #corresponding_function tbody td {
        padding: 10px 5px;
        font-size: 11px;
    }
}

@media screen and (max-width: 480px) {
	#corresponding_function {
		padding: 50px 0;
	}
    
    #corresponding_function thead th {
        padding: 32px 5px 5px;
        font-size: 12px;
    }
    
    #corresponding_function thead th:before {
        width: 24px;
        height: 26px;
    }
    
    #corresponding_function thead .trial,
    #corresponding_function thead .premium {
        width: 80px;
    }
    
    #corresponding_function tbody th {
        padding: 7px;
    }
    
    #corresponding_function-text {
        font-size: 12px;
    }
}


/**
 * Editor-area
 * ==========================================================================
 */


.editor-area {
	line-height: 2.0;
	letter-spacing: 0.1em;
	font-size: 14px;
	font-feature-settings: "pwid" 1;
}

.editor-area > :first-child {
	margin-top: 0;
}

.editor-area > :last-child {
	margin-bottom: 0;
}

.editor-area > p {
	margin-bottom: 2em;
}

.editor-area h1,
.editor-area h2,
.editor-area h3,
.editor-area h4,
.editor-area h5,
.editor-area h6 {
	margin: 2em auto 1em;
	clear: both;
	line-height: 1.3;
	font-size: 16px;
	font-weight: bold;
}

.editor-area h1 {
	padding-bottom: 15px;
	font-size: 20px;
	border-bottom: 3px solid #d91c1c;
}

.editor-area h2 {
	padding-left: 15px;
	font-size: 18px;
	color: #d91c1c;
	border-left: 3px solid #d91c1c;
}

.editor-area a {
	color: #d91c1c;
}

.editor-area a:hover {
	text-decoration: underline;
}

.editor-area strong {
	font-weight: bold;
}

.editor-area em {
	font-style: italic;
}

.editor-area del {
	text-decoration: line-through;
}

.editor-area ul {
	margin: 50px auto;
}

.editor-area ol {
	margin: 50px auto;
	list-style: decimal;
	list-style-position: inside;
}

.editor-area li {
	line-height: 1.3;
	letter-spacing: 0;
}

.editor-area li:not(:first-child) {
	margin-top: 10px;
}

.editor-area ul li {
	padding-left: 20px;
	position: relative;
}

.editor-area ul li:before {
	content: "■";
	position: absolute;
	top: 0;
	left: 0;
	color: #d91c1c;
}

.editor-area .wp-block-table {
	margin: 0 auto;
}

.editor-area table {
	width: 100%;
	margin: 30px auto;
	text-align: left;
	line-height: 1.5;
	letter-spacing: 0;
	font-size: 12px;
}

.editor-area table th {
	max-width: 200px;
	min-width: 100px;
	padding: 15px 10px;
	text-align: left;
	vertical-align: middle;
	background: #eee;
	border-top: 1px solid #fff;
}

.editor-area table td {
	padding: 15px 10px;
}

.editor-area blockquote,
.editor-area q {
	margin: 50px auto;
	position: relative;
	z-index: 1;
	clear: both;
	font-size: 12px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	background: #eee;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	quotes: none;
}

.editor-area blockquote {
	padding: 35px 25px;
}

.editor-area q {
	padding: 10px 25px;
}

.editor-area blockquote:before,
.editor-area q:before,
.editor-area blockquote:after,
.editor-area q:after {
	content: "";
	width: 30px;
	height: 30px;
	position: absolute;
}

.editor-area blockquote:before,
.editor-area q:before {
	top: 0;
	left: 0;
	border-top: 10px solid #d5d5d5;
	border-left: 10px solid #d5d5d5;
}

.editor-area blockquote:after,
.editor-area q:after {
	bottom: 0;
	right: 0;
	border-bottom: 10px solid #d5d5d5;
	border-right: 10px solid #d5d5d5;
}

.editor-area hr {
	margin: 50px auto;
}

.editor-area iframe {
	width: 100%;
	margin: 50px auto;
	display: block;
}

.editor-area embed,
.editor-area iframe,
.editor-area object,
.editor-area video {
	max-width: 100%;
}

.editor-area img {
	margin: 10px auto;
}

.editor-area .alignright,
.editor-area .alignleft,
.editor-area .aligncenter,
.editor-area .alignnone {
	width: auto !important;
	max-width: 100%;
}

.editor-area .alignright img,
.editor-area .alignleft img,
.editor-area .aligncenter img,
.editor-area .alignnone img,
.editor-area .alignright figcaption,
.editor-area .alignleft figcaption,
.editor-area .aligncenter figcaption,
.editor-area .alignnone figcaption {
	margin: 0 auto;
}

.editor-area .alignright {
	margin: 5px 0 10px 25px;
	float: right;
}

.editor-area .alignleft {
	margin: 5px 25px 10px 0;
	float: left;
}

.editor-area .alignnone {
	margin: 10px auto 25px;
}

.editor-area .aligncenter {
	margin: 10px auto 25px;
	display: block;
}

.editor-area .aligncenter img {
	margin: 10px auto;
	display: block;
}

.editor-area .wp-caption-text {
	margin-bottom: 15px;
	line-height: 1.3;
	letter-spacing: 0;
	font-size: 11px;
}

.editor-area .gallery {
	margin: 50px auto;
	line-height: 1;
	overflow-x: hidden;
}

.editor-area .gallery .gallery-item {
	float: left;
	margin: 0;
	text-align: center;
	padding: 6px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.editor-area .gallery .gallery-caption,
.editor-area .gallery .gallery-icon {
	margin: 0;
}

.editor-area .gallery .gallery-caption {
	margin-top: 5px;
	text-align: left;
}

.editor-area .gallery-columns-1 .gallery-item {
	width: 100%;
}

.editor-area .gallery-columns-2 .gallery-item {
	width: 50%;
}

.editor-area .gallery-columns-3 .gallery-item {
	width: 33.333%;
}

.editor-area .gallery-columns-4 .gallery-item {
	width: 25%;
}

.editor-area .gallery-columns-5 .gallery-item {
	width: 20%;
}

.editor-area .gallery-columns-6 .gallery-item {
	width: 16.665%;
}

.editor-area .gallery-columns-7 .gallery-item {
	width: 14.285%;
}

.editor-area .gallery-columns-8 .gallery-item {
	width: 12.5%;
}

.editor-area .gallery-columns-9 .gallery-item {
	width: 11.111%;
}

.editor-area .gallery a:hover {
	opacity: 0.8;
}

.editor-area .gallery img {
	max-width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.mce-content-body.editor-area img[data-wp-more] {
	margin: 50px auto;
}

.editor-area .button1,
.editor-area .button2,
.editor-area .button3,
.editor-area .button4 {
	min-width: 280px;
	margin: 20px;
	padding: 20px 50px;
	display: inline-block;
	position: relative;
	text-align: center;
	text-decoration: none;
	line-height: 1.6;
	letter-spacing: 0.02em;
	font-size: 16px;
	font-weight: bold;
	border-radius: 4px;
	-webkit-transition: opacity ease 0.2s;
			transition: opacity ease 0.2s;
}

.editor-area .button1:hover,
.editor-area .button2:hover,
.editor-area .button3:hover,
.editor-area .button4:hover {
	opacity: 0.8;
	text-decoration: none;
}

.editor-area .button1 {
	color: #d91c1c;
	background: #fff;
	border: 2px solid #d91c1c;
}

.editor-area .button2 {
	color: #fff;
	background: #d91c1c;
	border: 2px solid #d91c1c;
}

.editor-area .button3 {
	color: #222;
	background: #fff;
	border: 2px solid #75d8e7;
}

.editor-area .button4 {
	color: #222;
	background: #75d8e7;
	border: 2px solid #75d8e7;
}

@media screen and (max-width: 768px) {
	.editor-area {
		letter-spacing: 0.05em;
		font-size: 12px;
	}
	
	.editor-area h3,
	.editor-area h4,
	.editor-area h5,
	.editor-area h6 {
		font-size: 14px;
	}

	.editor-area ul {
		margin: 30px auto;
	}

	.editor-area ol {
		margin: 30px auto;
	}

	.editor-area blockquote,
	.editor-area q {
		margin: 30px auto;
		font-size: 11px;
	}

	.editor-area hr {
		margin: 30px auto;
	}

	.editor-area iframe {
		margin: 30px auto;
	}

	.editor-area .gallery {
		margin: 30px auto;
	}
	
	.editor-area table {
		font-size: 11px;
	}

	.editor-area .gallery-columns-2 .gallery-item,
	.editor-area .gallery-columns-3 .gallery-item,
	.editor-area .gallery-columns-4 .gallery-item,
	.editor-area .gallery-columns-5 .gallery-item,
	.editor-area .gallery-columns-6 .gallery-item,
	.editor-area .gallery-columns-7 .gallery-item,
	.editor-area .gallery-columns-8 .gallery-item,
	.editor-area .gallery-columns-9 .gallery-item {
		width: 100%;
	}

	.editor-area .button1,
	.editor-area .button2,
	.editor-area .button3,
	.editor-area .button4 {
		max-width: 220px;
		min-width: 0;
		margin: 10px auto;
		padding: 15px 20px;
		display: block;
    	font-size: 12px;
	}
}


/**
 * Type Diagnosis
 * ==========================================================================
 */


#type_diagnosis-content #lower_body {
	text-align: center;
	background: #75d8e7;
}
#type_diagnosis-content #lower_body > h3 {
	font-size: 22px;
	font-weight: bold;
	margin: 37px 0 43px;
}
#type_diagnosis-content #lower_body > p {
	font-size: 16px;
}
#type_diagnosis-content .inside {
	margin-top: 42px;
	max-width: 854px;
}
#type_diagnosis-content article {
	padding-top: 35px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	box-shadow: 0 3px 20px 0 rgba(0,0,0,.3);
}
#type_diagnosis-content article p {
	font-size: 20px;
	line-height: 34px;
	margin: 50px 0 75px;
}
#type_diagnosis-content .q {
	width: 140px;
	height: 110px;
	font-size: 40px;
	line-height: 110px;
	background: #fff32c;
	margin: 0 auto;
}
#type_diagnosis-content article ul li {
	font-size: 18px;
	font-weight: bold;
	line-height: 70px;
	box-shadow: 0 3px 20px 0 rgba(0,0,0,.3);
}
#type_diagnosis-content article ul a {
	display: block;
	position: relative;
}
#type_diagnosis-content article ul a:after {
	top: 0;
	right: 23px;
	bottom: 0;
	content: "";
	width: 9px;
	height: 9px;
	margin: auto 0;
	display: block;
	position: absolute;
	border-top: 2px solid;
	border-right: 2px solid;
	transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}
#type_diagnosis-content article ul li:first-child a {
	color: #fff;
	background: #022971;
}
#type_diagnosis-content article ul li:last-child a {
	color: #022971;
}
#type_diagnosis-content article ul li a:hover {
	color: #fff;
	background-color: #d91c1c;
}
#type_diagnosis-content aside.per {
	font-size: 14px;
	max-width: 500px;
	overflow: hidden;
	padding-top: 35px;
	margin: 50px auto 0;
	position: relative;
}
#type_diagnosis-content aside.per:before,
#type_diagnosis-content aside.per:after {
	top: 0;
	left: 0;
	content: "";
	height: 3px;
	display: block;
	position: absolute;
}
#type_diagnosis-content aside.per:before {
	width: 100%;
	background: #fff;
}
#type_diagnosis-content aside.per:after {
	background: #022971;
}
#type_diagnosis-content aside.per010:after { width: 10%; }
#type_diagnosis-content aside.per020:after { width: 20%; }
#type_diagnosis-content aside.per030:after { width: 30%; }
#type_diagnosis-content aside.per040:after { width: 40%; }
#type_diagnosis-content aside.per050:after { width: 50%; }
#type_diagnosis-content aside.per060:after { width: 60%; }
#type_diagnosis-content aside.per070:after { width: 70%; }
#type_diagnosis-content aside.per080:after { width: 80%; }
#type_diagnosis-content aside.per090:after { width: 90%; }
#type_diagnosis-content aside.per100:after { width: 100%; }
@media screen and (min-width: 769px) {
	#type_diagnosis-content .sp {
		display: none !important;
	}
	#type_diagnosis-content article ul {
		margin: 0 auto;
		max-width: 498px;
	}
	#type_diagnosis-content article ul:after {
		content: "";
		display: block;
		clear: both;
	}
	#type_diagnosis-content article ul li {
		width: 240px;
	}
	#type_diagnosis-content article ul li:first-child {
		float: left;
	}
	#type_diagnosis-content article ul li:last-child {
		float: right;
	}
}
@media screen and (max-width: 768px) {
	#type_diagnosis-content .pc {
		display: none !important;
	}
	#type_diagnosis-content #lower_body > h2 {
		padding: 0 20px;
	}
	#type_diagnosis-content #lower_body > h3,
	#type_diagnosis-content #lower_body > p {
		line-height: 1.5;
	}
	#type_diagnosis-content article ul li + li {
		margin-top: 20px;
	}
}

#type_diagnosis-content #lower_body.type .inside {
	padding: 0;
	max-width: 550px;
}
#type_diagnosis-content #lower_body.type article {
	padding: 0;
	margin-bottom: 65px;
}
#type_diagnosis-content #lower_body.type article figure {
	margin: 0;
}
#type_diagnosis-content #lower_body.type article figure > img {
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}
#type_diagnosis-content #lower_body.type article figcaption img {
	max-width: none;
	margin-left: -500px;
	margin-right: -500px;
	margin-bottom: -65px;
}
#type_diagnosis-content #lower_body.type article figcaption.ribbon {
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	line-height: 50px;
	position: relative;
	margin: -30px -67px -45px;
	filter: drop-shadow(0 0 20px rgba(0,0,0,0.2));
}
#type_diagnosis-content #lower_body.type article figcaption.ribbon:before,
#type_diagnosis-content #lower_body.type article figcaption.ribbon:after {
	top: 20px;
	z-index: 0;
	content: "";
	width: 95px;
	height: 100%;
	display: block;
	position: absolute;
	background: url(images/type_diagnosis/ribbon_end.png) no-repeat;
	background-size: 200% 100%;
}
#type_diagnosis-content #lower_body.type article figcaption.ribbon:before {
	right: 100%;
	margin-right: -30px;
	background-position: left center;
}
#type_diagnosis-content #lower_body.type article figcaption.ribbon:after {
	left: 100%;
	margin-left: -30px;
	background-position: right center;
}
#type_diagnosis-content #lower_body.type article figcaption.ribbon span {
	z-index: 1;
	display: block;
	position: relative;
	padding: 13px 0 12px;
	background: url(images/type_diagnosis/ribbon_bg.png) no-repeat center center;
	background-size: 100% 100%;
}
#type_diagnosis-content #lower_body.type article figcaption.ribbon span:before,
#type_diagnosis-content #lower_body.type article figcaption.ribbon span:after {
	width: 0;
	height: 0;
	content: "";
	display: block;
	position: absolute;
	top: 100%;
	border: solid transparent;
	border-width: 10px 15px;
	border-top-color: #910303;
}
#type_diagnosis-content #lower_body.type article figcaption.ribbon span:before {
	left: 0;
	border-right-color: #910303;
}
#type_diagnosis-content #lower_body.type article figcaption.ribbon span:after {
	right: 0;
	border-left-color: #910303;
}
#type_diagnosis-content #lower_body #mainText {
	font-size: 18px;
	line-height: 34px;
	padding: 35px 0 95px;
}
#type_diagnosis-content #lower_body dl#advice {
	margin: 0 auto;
	max-width: 968px;
	background: #fff32c;
	border: 8px solid #36b7d1;
}
#type_diagnosis-content #lower_body dl#advice img {
	height: 71px;
	margin-top: -23px;
}
#type_diagnosis-content #lower_body dl#advice dd {
	font-size: 16px;
	line-height: 26px;
	padding: 18px 20px 38px;
}
@media screen and (max-width: 768px) {
	#type_diagnosis-content #lower_body.type article {
		margin: 0 20px 50px;
	}
	#type_diagnosis-content #lower_body.type article figcaption {
		margin-top: -14vw;
	}
	#type_diagnosis-content #lower_body.type article figcaption img {
		max-width: 120%;
	}
	#type_diagnosis-content #lower_body.type article figcaption.ribbon {
		margin: -5vw 5px -30px;
	}
	#type_diagnosis-content #lower_body.type article figcaption.ribbon:before,
	#type_diagnosis-content #lower_body.type article figcaption.ribbon:after {
		width: 30px;
	}
	#type_diagnosis-content #lower_body.type article figcaption.ribbon:before {
		margin-right: -15px;
	}
	#type_diagnosis-content #lower_body.type article figcaption.ribbon:after {
		margin-left: -15px;
	}
	#type_diagnosis-content #lower_body.type article figcaption.ribbon span:before,
	#type_diagnosis-content #lower_body.type article figcaption.ribbon span:after {
		border-width: 10px 7.5px;
	}
	#type_diagnosis-content #lower_body #mainText {
		padding: 30px 20px;
		text-align: left;
	}
	#type_diagnosis-content #lower_body p#advice {
		padding: 0 20px;
	}
	#type_diagnosis-content #lower_body dl#advice {
		margin: 0 20px;
	}
	#type_diagnosis-content #lower_body #advice dd {
		text-align: left;
	}
}