@charset "utf-8";

.navi a {
	color: #000;
}
	
@media screen and (max-width: 768px) {
	#page_header {
		position: relative;
		width: calc(100% - 32px);
		margin: 0 auto 6.4vw auto;
	}
	#page_header .symbol {
		top: 0;
		left: -15%;
	}
	h1 {
		padding-top: 12vw;
		font-size: 9.6vw;
		margin-bottom: 2.4vw;
	}
	#page_header .title-block .catch {
		font-family: "Helvetica", "Inter", sans-serif;
		font-size: 5.6vw;
		font-weight: 300;
		line-height: 7.2vw;
		margin-bottom: 16vw;
	}
	#page_header .content-body .page-lead {
		font-size: 5.6vw;
		font-weight: 700;
		line-height: 8.4vw;
		margin-bottom: 4vw;
	}
	#page_header .content-body p, #about_concept .content-body p, #about_logo .content p, #about_message .content li p, #about_member .content-body p, #about_contact .content p, #why_action .list-body .description, #why_keys .title-block .title-body .description, #why_keys .content-body .main-text {
		font-size: 4.0vw;
		line-height: 7.6vw;
		text-align: justify;
		padding-bottom: 4.8vw;
	}
	#page_header .content-body p:last-child, #about_concept .content-body p:last-child, #about_logo .content p:last-child, #about_message .content li p:last-child, #about_member .content-body p:last-child, #about_contact .content p:last-child {
		margin-bottom: 0;
	}
	#about_concept {
		position: relative;
		background: url('/img/p_bg_oih.jpg') no-repeat;
		background-size: cover;
		padding: 8.4vw 0;
		color: #fff;
	}
	#about_concept .title-block, #about_activities .title-block, #why_vision .title-block {
		display: flex;
		align-items: center;
		margin: 0 0 8vw 8vw;
	}
	#why_action .title-block {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		margin-bottom: 8vw;
	}
	#about_concept .title-block h3, #about_activities .title-block h3, #why_vision .title-block h3 {
		font-size: 4.4vw;
		line-height: 7.6vw;
		margin-top: -1.2vw;
		text-align: left;
	}
	#about_concept .title-block h3 {
		color: #fff;
	}
	#why_action .title-block h3 {
		width: 45%;
		text-align: left;
	}
	#about_concept .title-block h2, #about_activities .title-block h2, #why_vision .title-block h2, #why_action .title-block h2 {
		margin-right: 2.0vw;
	}
	#about_concept .catch {
		display: none;
	}
	#about_concept .content, #about_logo .content, #about_message .content, #about_member .content {
		width: calc(100% - 32px);
		margin: 0 auto;
	}
	#about_logo {
		position: relative;
		background: url('/img/bg_logo.svg') repeat-y;
		background-size: 140%;
		padding: 8.4vw 0;
	}
	#about_logo .title-block, #about_member .title-block, #why_keys .title-block {
		display: flex;
		flex-direction: column;
		align-items: center;
		margin-top: 9.6vw;
	}
	#why_keys .title-block {
		margin-bottom: 12vw;
	}
	#about_logo .title-block h2, #about_member .title-block h2 {
		order: 1;
	}
	#about_logo .title-block h3, #about_member .title-block h3 {
		order: 2;
		margin: 4vw 0;
	}
	#why_keys .title-block h2 {
		margin-bottom: 8.4vw;
	}
	#why_keys .title-block h3 {
		text-align: left;
		margin-bottom: 6.4vw;
	}
	#about_logo .logo {
		width: 80%;
		margin: 0 auto 6.4vw auto;
	}
	#about_logo .navi, #about_member .navi, #about_contact .navi {
		margin-bottom: 8.4vw;
	}
	#about_message .title-block {
		width: 100%;
		display: flex;
		align-items: center;
		margin-bottom: 6.4vw;
	}
	#about_message .title-block h2 {
		width: 12vw;
		margin-left: 2.4vw;
	}
	#about_message .title-block h3 {
		width: calc(100% - 14vw);
		text-align: right;
	}
	#about_message .title-block h3 .jp, #about_member .title-block h3 .jp, #why_action .title-block h3 .jp, #why_keys .title-block h3 .jp {
		font-size: 4.8vw;
	}
	#about_message .content ul {
		margin-bottom: 9.6vw;
	}
	#about_message .content li {
		display: flex;
		flex-direction: column;
		margin-bottom: 4.8vw;
	}
	#about_message .content li:last-child {
		margin-bottom: 0;
	}
	#about_message .content li .main-image {
		order: 1;
		width: 100%;
		margin-bottom: 4.0vw;
	}
	#about_message .content li .main-image img {
		width: 100%;
	}
	#about_message .content li .cell-body {
		order: 2;
		width: 100%;
	}
	#about_message .content li .ctitle {
		margin-bottom: 4.0vw;
		padding-bottom: 4.0vw;
		border-bottom: 1px solid #000;
	}
	#about_message .content li .ctitle .position {
		font-size: 3.2vw;
		margin-bottom: 1.8vw;
	}
	#about_message .content li .ctitle .name {
		font-size: 6.4vw;
	}
	#about_activities .content-body {
		padding: 6.4vw 16px;
		background-color: #f5f5f5;
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
		margin-bottom: 9.6vw;
	}
	#about_activities .content-body ul {
		font-size: 4.0vw;
	}
	#about_activities .content-body ul li {
		line-height: 7.6vw;
		text-indent: -4.8vw;
		margin: 0 0 4.8vw 4.8vw;
	}
	#about_activities .content-body ul li span {
		color: #f824bd;
		font-weight: 700;
	}
	#about_activities .content-body ul li:last-child {
		margin-bottom: 0;
	}
	#about_activities .content-body ul li.outer-link a {
		width: 100%;
		text-decoration: underline;
		margin-bottom: 4.8vw;
		font-weight: 600;
		color: #000;
	}
	#about_activities .content-body ul li.outer-link a span {
		text-decoration: none;
	}
	#about_activities .content-body ul li.outer-link .text {
		margin-bottom: 1.8vw;
		line-height: 7.2vw;
	}
	#about_activities .content-body ul li.outer-link .icon {
		margin-left: 4.8vw;
		width: 16vw;
	}
	#about_member {
		margin-bottom: 14.4vw;
	}
	#about_member .content h3 {
		font-size: 6.4vw;
		line-height: 10.4vw;
		font-weight: 700;
		text-align: left;
		margin: 2.4vw 0 4.8vw 0;
	}
	#about_member .content .figure {
		margin-bottom: 6.4vw;
	}
	#about_contact .content {
		padding: 6.4vw 16px 0 16px;
		background-color: #f5f5f5;
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
		margin: 0 16px 14.4vw 16px;
	}
	#about_contact .content-wrapper {
		margin-bottom: 6.4vw;
	}
	#about_contact .content-wrapper h3 {
		width: 100%;
		white-space: normal;
		text-align: left;
		font-size: 4.4vw;
		line-height: 7.6vw;
		margin-bottom: 4.8vw;
	}
	#why_vision .catch {
		width: 85vw;
		font-size: 4.4vw;
		line-height: 7.6vw;
		font-weight: 700;
		text-align: center;
		padding: 3.2vw 0;
		margin: 4.8vw auto;
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
	}
	#why_vision .content {
		margin-bottom: 12vw;
	}
	#why_vision .figure {
		width: calc(100% - 32px);
		margin: 0 auto;
	}
	#why_action {
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	#why_action .content > ul > li {
		margin-bottom: 12vw;
		width: calc(100% - 32px);
		margin: 0 auto;
	}
	#why_action .content .list-block {
		margin-bottom: 4.0vw;
	}
	#why_action .content .list-head {
		display: flex;
		align-items: center;
		margin-bottom: 4.0vw;
	}
	#why_action .content .list-head .list-name {
		font-size: 7.2vw;
		font-weight: 700;
		font-family: "Helvetica", "Inter", sans-serif;
	}
	#why_action .content .list-head .list-number {
		z-index: -1;
		font-size: 12vw;
		font-weight: 700;
		font-family: "Helvetica", "Inter", sans-serif;
		color: #f8b42d;
		margin-left: -2.0vw;
	}
	#why_action .content .list-body {
	}
	#why_action .content .list-body .list-title {
		font-size: 4.8vw;
		line-height: 8.0vw;
		font-weight: 700;
		margin-bottom: 4.0vw;
		text-align: left;
	}
	#why_action .list-detail {
		margin-bottom: 8.0vw;
	}
	#why_action .list-detail li {
		display: flex;
		align-items: center;
		height: 22vw;
		font-weight: 700;
		border: 2px solid #000;
		border-radius: 11vw;
		margin-bottom: 3.2vw;
	}
	#why_action .list-detail li:last-child {
		margin-bottom: 0;
	}
	#why_action .list-detail li div {
		width: 100%;
		font-size: 4.0vw;
		line-height: 7.6vw;
		text-align: center;
	}
	#why_action .root-wrapper:first-child {
		margin-bottom: 8vw;
	}
	#why_keys {
		width: calc(100% - 32px);
		margin: 0 auto 24vw auto;
	}
	#why_keys .title-block h2 .sub {
		font-size: 5.6vw;
		margin-top: 6.4vw;
	}
	#why_keys .title-block .title-body {
		text-align: left;
	}
	#why_keys .content li {
		margin-bottom: 16vw;
	}
	#why_keys .content li:last-child {
		margin-bottom: 0;
	}
	#why_keys .content li > .title-icon {
		width: 80%;
		margin: 0 auto;
		margin-bottom: 4.8rem;
	}
	#why_keys .content li > .title-icon img {
		width: 100%;
	}
	#why_keys .content h5 {
		display: inline-block;
		font-size: 4.0vw;
		color: #f8b42d;
		border-bottom: 1px solid #f8b42d;
		margin-bottom: 4.0vw;
		padding-bottom: 0.8vw;
	}
	#why_keys .content h4 {
		font-size: 4.8vw;
		line-height: 8.4vw;
		margin-bottom: 8.4vw;
	}
	#why_keys .content .icons {
		margin-bottom: 4.8vw;
	}
	#why_keys .content .icons img {
		width: 100%;
	}
}
@media screen and (max-width: 400px) {
}
@media screen and (min-width: 769px) {
	#page_header {
		position: relative;
		margin-bottom: 4.8rem;
		width: 100%;
	}
	#page_header .symbol {
		top: 0;
		left: -5%;
	}
	h1 {
		padding-top: 2.4rem;
		font-size: 4.8rem;
		margin-bottom: 0.8rem;
	}
	#page_header .title-block .catch {
		font-family: "Helvetica", "Inter", sans-serif;
		font-size: 1.6rem;
		font-weight: 300;
		line-height: 3.2rem;
	}
	#page_header .content, #about_concept .content {
		display: flex;
		justify-content: flex-end;
	}
	#page_header .content-body, #about_concept .content-body {
		width: 50%;
	}
	#page_header .content-body .page-lead {
		margin-bottom: 4.8rem;
		font-size: 2.0rem;
		line-height: 3.2rem;
		font-weight: 700;
	}
	#page_header .content-body p, #about_concept .content-body p, #about_logo .content p, #about_message .content li p, #about_member .content-body p, #about_contact .content p, #why_action .list-body .description, #why_keys .title-block .title-body .description, #why_keys .content-body .main-text {
		font-size: 1.5rem;
		line-height: 3.0rem;
		text-align: justify;
		margin-bottom: 2.0rem;
	}
	#page_header .content-body p:last-child, #about_concept .content-body p:last-child, #about_logo .content p:last-child, #about_message .content li p:last-child, #about_member .content-body p:last-child, #about_contact .content p:last-child {
		margin-bottom: 0;
	}
	#about_concept {
		width: 100%;
		overflow: hidden;
		position: relative;
		background: url('/ja/resources/img/p_bg_oih.jpg') no-repeat;
		background-size: cover;
		padding: 8.4rem 0;
		color: #fff;
	}
	#why_vision {
		width: 100%;
		overflow: hidden;
		position: relative;
		padding: 8.4rem 0;
	}
	#about_concept .title-block, #why_vision .title-block {
		display: flex;
		align-items: center;
	}
	#about_concept .title-block h3, #why_vision .title-block h3 {
		font-size: 2.0rem;
		line-height: 3.2rem;
		margin-top: -1.2rem;
	}
	#about_concept .title-block h2, #why_vision .title-block h2 {
		margin-right: 2.0rem;
	}
	#about_concept .catch {
		position: relative;
		display: inline-block;
		left: 50%;
		transform: translateX(-50%);
		font-size: 4.0rem;
		margin-bottom: 6.4rem;
	}
	#about_concept .catch .main {
		font-family: "Helvetica", "Inter", sans-serif;
		font-weight: 700;
		margin-bottom: 1.2rem;
	}
	#about_concept .catch .sub {
		font-size: 2.8rem;
		font-weight: 700;
	}
	#about_logo {
		width: 100%;
		overflow: hidden;
		position: relative;
		background: url('/img/bg_logo.svg') no-repeat;
		background-size: 140%;
		padding: 8.4rem 0;
	}
	#about_logo .title-block, #why_action .title-block {
		display: flex;
		align-items: center;
		margin-bottom: 6.4rem;
	}
	#about_logo .title-block h2, #why_action .title-block h2 {
		width: 52%;
		margin-right: 6%;
		transform: rotate(180deg) translateX(-90%);
	}
	#about_logo .title-block h3, #why_action .title-block h3 {
		width: 42%;
	}
	#about_logo .title-block h3 .jp, #about_message .title-block h3 .jp, #about_activities .content h3 .jp, #why_action .title-block h3 .jp, #why_keys .title-block h3 .jp {
		font-size: 2.0rem;
		line-height: 3.2rem;
	}
	#about_logo .logo {
		width: 640px;
		margin: 0 auto 6.4rem auto;
	}
	#about_logo .content p {
		margin-bottom: 6.4rem;
	}
	#about_logo .navi, #about_member .navi, #about_contact .navi, #why_action .navi {
		display: flex;
		justify-content: center;
		margin-bottom: 6.4rem;
	}
	#about_message {
		width: 100%;
		overflow: hidden;
	}
	#about_message .title-block {
		width: 100%;
		display: flex;
		align-items: center;
		margin-bottom: 6.4rem;
	}
	#about_message .title-block h2 {
		width: 5.2rem;
		margin-left: 1.2rem;
	}
	#about_message .title-block h3 {
		width: calc(100% - 6.4rem);
		text-align: right;
	}
	#about_message .content {
		margin-bottom: 6.4rem;
	}
	#about_message .content ul {
		padding: 0 2.4rem;
	}
	#about_message .content li {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		margin-bottom: 6.4rem;
	}
	#about_message .content li:last-child {
		margin-bottom: 0;
	}
	#about_message .content li .main-image {
		width: 40%;
	}
	#about_message .content li .cell-body {
		width: calc(60% - 4.8rem);
	}
	#about_message .content li .main-image img {
		width: 100%;
	}
	#about_message .content li .ctitle {
		margin-bottom: 2.4rem;
		padding-bottom: 2.4rem;
		border-bottom: 1px solid #000;
	}
	#about_message .content li .ctitle .position {
		font-size: 1.2rem;
		margin-bottom: 1.0rem;
	}
	#about_message .content li .ctitle .name {
		font-size: 2.0rem;
	}
	#about_activities {
		width: 100%;
		overflow: hidden;
	}
	#about_activities .root-wrapper {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		margin-bottom: 6.4rem;
	}
	#about_activities .title-block {
		width: 20%;
	}
	#about_activities .content {
		width: 80%;
	}
	#about_activities .content h3 {
		padding: 4.0rem 0;
	}
	#about_activities .content-body {
		padding: 4.8rem;
		background-color: #f5f5f5;
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
	}
	#about_activities .content-body ul {
		font-size: 1.5rem;
		line-height: 3.0rem;
	}
	#about_activities .content-body ul span {
		color: #f8b42d;
		font-weight: 700;
	}
	#about_activities .content-body ul li {
		margin-bottom: 2.0rem;
	}
	#about_activities .content-body ul li:last-child {
		margin-bottom: 0;
	}
	#about_activities .content-body ul li.outer-link a {
		display: flex;
		width: 100%;
		align-items: center;
		justify-content: space-between;
		padding-bottom: 0.6rem;
		margin-bottom: 1.2rem;
		border-bottom: 1px solid #000;
		font-weight: 600;
		color: #000;
	}
	#about_activities .content-body ul li.outer-link .icon {
		width: 9.6%;
	}
	#about_member {
		width: 100%;
		overflow: hidden;
	}
	#about_member .title-block {
		display: flex;
		align-items: center;
		margin-bottom: 4.8rem;
	}
	#about_member .title-block h2 {
		width: 54%;
		transform: rotate(180deg) translateX(-90%);
	}
	#about_member .title-block h3 {
		width: calc(46% - 2.4rem);
		margin-left: 2.4rem;
	}
	#about_member .title-block .jp {
		width: 100%;
		font-size: 2.0rem;
		line-height: 3.2rem;
	}
	#about_member .content {
	}
	#about_member .content h3 {
		width: 50%;
		font-size: 2.8rem;
		line-height: 4.8rem;
		font-weight: 700;
	}
	#about_member .content .content-body {
		display: flex;
		align-items: flex-start;
		margin-bottom: 6.4rem;
	}
	#about_member .content .content-body p {
		width: 50%;
	}
	#about_member .content .figure {
		margin-bottom: 2.4rem;
	}
	#about_contact {
	}
	#about_contact .content {
		padding: 4.8rem 0 0 0;
		background-color: #f5f5f5;
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
		margin-bottom: 8.4rem;
	}
	#about_contact .content-wrapper {
		margin-bottom: 4.8rem;
	}
	#about_contact .content-wrapper h3 {
		text-align: center;
		font-size: 2.0rem;
		line-height: 3.2rem;
		margin-bottom: 4.0rem;
	}
	#why_vision .catch {
		width: 668px;
		font-size: 2.8rem;
		line-height: 4.8rem;
		font-weight: 700;
		text-align: center;
		padding: 2.4rem 0;
		margin: 4.0rem auto;
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
	}
	#why_vision .content {
		margin-bottom: 8.4rem;
	}
	#why_vision .figure {
		width: 668px;
		margin: 0 auto;
	}
	#why_action {
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	#why_action .content ul li {
		margin-bottom: 4.8rem;
	}
	#why_action .content .list-block {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		width: 100%;
		margin-bottom: 2.4rem;
	}
	#why_action .content .list-head {
		width: 45%;
		display: flex;
		align-items: center;
		margin-top: -1.2rem;
	}
	#why_action .content .list-head .list-name {
		font-size: 4.0rem;
		font-weight: 700;
		font-family: "Helvetica", "Inter", sans-serif;
	}
	#why_action .content .list-head .list-number {
		z-index: -1;
		font-size: 9.6rem;
		font-weight: 700;
		font-family: "Helvetica", "Inter", sans-serif;
		color: #f8b42d;
		margin-left: -1.6rem;
	}
	#why_action .content .list-body {
		width: 55%;
	}
	#why_action .content .list-body .list-title {
		font-size: 2.8rem;
		line-height: 4.8rem;
		font-weight: 700;
		margin-bottom: 2.4rem;
	}
	#why_action .list-detail {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	#why_action .list-detail li {
		display: flex;
		align-items: center;
		width: 32%;
		height: 8rem;
		font-weight: 700;
		border: 2px solid #000;
		border-radius: 4.0rem;
	}
	#why_action .list-detail li div {
		width: 100%;
		font-size: 1.5rem;
		line-height: 2.4rem;
		text-align: center;
	}
	#why_keys {
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	#why_keys .symbol {
		top: 0;
		right: -5%;
	}
	#why_keys .title-block {
		display: flex;
		align-items: center;
		margin-bottom: 4.8rem;
	}
	#why_keys .title-block h3 {
		margin-bottom: 3.2rem;
	}
	#why_keys .title-block .title-body {
		width: 70%;
		margin-left: 2.4rem;
	}
	#why_keys .content {
		margin-bottom: 8.4rem;
	}
	#why_keys .content li {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		margin-bottom: 6.4rem;
	}
	#why_keys .content li:last-child {
		margin-bottom: 0;
	}
	#why_keys .content li .title-icon {
		width: 30%;
	}
	#why_keys .content li .title-icon img {
		widtg: 100%;
	}
	#why_keys .content li .content-body {
		width: 65%;
	}
	#why_keys .content h5 {
		display: inline-block;
		font-size: 1.8rem;
		color: #f8b42d;
		border-bottom: 1px solid #f8b42d;
		margin-bottom: 1.2rem;
		padding-bottom: 0.4rem;
	}
	#why_keys .content h4 {
		font-size: 2.0rem;
		line-height: 3.2rem;
		margin-bottom: 3.2rem;
	}
	#why_keys .content .icons {
		margin-bottom: 2.4rem;
	}
	#why_keys .content .icons img {
		width: 100%;
	}
	#why_keys .content .navi {
		display: flex;
		justify-content: flex-end;
	}
}
@media screen and (min-width: 769px) and (max-width: 1199px) {
}
@media screen and (min-width: 1200px) {

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