/* --------------------------------------------------
 * LAYOUT
 * -------------------------------------------------- */
@media screen and (max-width: 959px) {
	.is-page-min-height .g-content {
		min-height: 0;
	}
	
	.c-contents {
		width: 100%;
		padding-top: 30px;
	}
	
	.c-contents .u-inner {
		margin: 0 20px;
	}
	
	.c-bgColorGray {
		margin: 0 -20px;
	}
	
	.c-content-title {
		margin-bottom: 20px;
	}
	
	.c-content-title .e-img {
		width: auto;
		height: 32px;
		transform: none;
	}
	
	.c-more-button {
		width: calc(100% + 40px);
		margin: 0 -20px;
	}
	
	.c-more-button .e-link {
		width: 100%;
		display: block;
	}
	
	.u-table {
		width: calc(100% + 40px);
		margin: 0 -20px;
	}
	
	.u-table th,
	.u-table td {
		font-size: 1.2rem;
		padding: 10px 5px;
	}
	
	.u-table .is-head-line th:first-child {
		width: auto;
	}
	
	.u-table td {
		vertical-align: middle;
	}
	
	.l-news-list-item .anc {
		padding: 15px 0;
	}
	
	.l-news-list-item .anc .description {
		font-size: 1.4rem;
		padding: 5px 0 0;
	}
	
	.l-news-more-items .e-link {
		font-size: 1.3rem;
		padding-top: 5px;
		padding-bottom: 5px;
	}
	
	/* CMS */
	.is-ir_news-page .g-container {
		min-height: 0;
	}
	
	.c-tab_list {
		font-size: 1.3rem;
		width: calc(100% / 3 - 2px);
		margin: 1px;
	}
	
	#xj-select-year_s {
		width: 100%;
	}
	
	.c-tab_list .e-box {
		padding: 12px 5px;
	}
	
	
	
	
	.c-ir-menu {
		margin: 0 -5px;
		padding: 20px 0 0;
	}
	
	.c-ir-menu-item {
		padding: 0 5px;
	}
	
	.c-ir-menu-item .e-title {
		font-size: 1.6rem;
		line-height: 1.5;
		margin: 0 0 10px;
		padding: 7px 0 30px;
	}
	
	.c-ir-menu-item .e-title:after {
		top: auto;
		right: auto;
		left: 50%;
		bottom: 10px;
		transform: translateX(-50%);
	}
	
	.c-ir-menu-item .e-text {
		font-size: 1.4rem;
	}
	
	.c-ir-main-menu-items {
		display: block;
	}
	
	.c-ir-main-menu-item {
		width: 100%;
	}
	
	.c-ir-main-menu-item:after {
		width: 100%;
		height: 1px;
		top: auto;
		bottom: 0;
	}
	
	.c-ir-main-menu-item .e-link {
		text-decoration: none;
	}
	
	.c-ir-main-menu-item .e-title {
		text-align: left;
	}
	
	.c-ir-main-menu-item:nth-of-type(2) .e-title,
	.c-ir-main-menu-item:nth-of-type(3) .e-title,
	.c-ir-main-menu-item:nth-of-type(4) .e-title {
		border-top: 1px dotted #a0aab3;
	}
	
	.c-ir-main-menu-item .e-title:before {
		right: 0;
	}
	
	.c-ir-main-menu-item .e-title .e-link {
		font-size: 1.6rem;
		padding: 15px 0;
	}
	
	.c-ir-main-menu-item .e-item .e-link {
		font-size: 1.4rem;
		margin: 0 0 10px;
		padding: 0;
	}
	
	.c-ir-main-menu-item .e-items {
		width: 100%;
		padding: 0;
	}
	
	.c-ir-main-menu-item .e-items:nth-of-type(1) {
		padding: 10px 0 0;
	}
	
	.c-ir-main-menu-item .e-items:nth-of-type(1):after {
		display: none;
	}
	
	.c-ir-main-menu-item .e-items:nth-of-type(2) {
		margin-bottom: 10px;
	}
	
	.c-ir-sub-menu-items {
		letter-spacing: 0;
	}
	
	.c-ir-sub-menu-item {
		width: 100%;
		display: block;
	}
	
	.c-ir-sub-menu-item .e-link {
		min-height: 0;
		padding: 15px 0;
		background: #fff;
	}
	
	.c-ir-sub-menu-item .e-link .e-title {
		font-size: 1.3rem;
		text-align: left;
		padding-left: 15px;
		position: relative;
		top: auto;
		left: auto;
		transform: none;
	}
	
	
	
	
/* financial ==================================================================================================== */
	.c-financial-graph-items {
		display: block;
	}
	
	.c-financial-graph-item {
		width: 100%;
		height: auto !important;
		margin: 0 0 20px;
	}
	
	.c-financial-graph-item.is-large-item {
		padding-bottom: 0;
	}
	
	.c-financial-graph-item .e-title {
		height: auto !important;
	}
	
	.c-financial-graph-item .e-image {
		padding: 0 10px;
	}
	
	.is-category-financial.is-performance .c-financial-graph-item {
		width: calc(100% - 40px);
		margin: 0 20px 20px;
		padding-bottom: 0;
	}
	
	.is-category-financial.is-performance .c-financial-graph-item.is-table-large {
		padding-bottom: 0;
	}
	
	.c-financial-graph-item .u-table {
		margin-top: 20px;
		position: relative;
		bottom: auto;
		left: auto;
	}
	
	.c-financial-graph-item .e-note-items {
		position: relative;
	}
	
	.c-financial-graph-item.is-table-large {
		padding-bottom: 0;
	}
	
	.c-financial-graph-item.is-table-large:first-child .u-table {
		transform: none;
	}
	
	
	
	
/* library ==================================================================================================== */
	.is-category-library .c-section {
		margin-bottom: 60px;
	}
	
	.is-category-library .c-section .u-inner {
		margin-right: 0;
		margin-left: 0;
	}
	
	.is-category-library .c-section .u-inner .c-more-button {
		padding-right: 20px;
		padding-left: 20px;
	}
	
	.c-library-list-title {
		font-size: 1.7rem;
	}
	
	.c-library-list-item {
		font-size: 1.4rem;
		display: block;
	}
	
	.c-library-list-item:before {
		display: block;
	}
	
	.is-category-library.is-result .g-content {
		min-height: 0;
	}
	
	
	
	
/* calendar ==================================================================================================== */
	.is-category-calendar .c-section .u-inner {
		margin-right: 0;
		margin-left: 0;
	}
	
	.is-category-calendar .c-calendar .u-table.u-hide-media {
		display: none;
	}
	
	.is-category-calendar .c-calendar .u-table.u-show-media {
		width: 100%;
		margin: 0 0 20px;
		display: table !important;
	}
	
	.is-category-calendar .c-calendar .u-table .is-head-line:first-of-type th {
		width: calc(100% / 3);
	}
	
	.is-category-calendar .c-calendar .e-event {
		font-size: 1rem;
		left: 1.25em;
	}
	
	
	
	
/* ir index menu ==================================================================================================== */
	.c-ir-index-menu-items {
		min-height: 0;
	}
	
	.c-ir-index-menu-item {
		width: calc(100% / 2);
		margin: 0 0 15px;
		padding: 0 7.5px;
	}
	
	.c-ir-index-menu-item .e-link {
	}
	
	.c-ir-index-menu-item .e-link:after {
		top: auto;
		right: auto;
		bottom: 10px;
		left: 50%;
		transform: translate(-50%,0);
	}
	
	.c-ir-index-menu-item .e-name {
		font-size: 1.5rem;
		text-align: center;
		margin: -15px 0 0;
		padding: 0;
	}
	
	
	
	.is-investor.is-category-philosophy .g-content,
	.is-investor.is-category-stock .g-content.u-inner,
	.is-investor.is-category-notice .g-content.u-inner {
		min-height: 0;
	}
	
	
	
	
/* ir hyo ==================================================================================================== */
	.c-ir-table .e-caption {
		font-size: 1.7rem;
	}
	
	.c-ir-table .title {
		font-size: 1.6rem;
		width: 100% !important;
		padding: 10px 0 0;
		display: block;
		border-top: 1px solid #646e78;
	}
	
	.c-ir-table .description {
		font-size: 1.3rem;
		padding: 5px 0 30px;
		display: block;
		border: 0;
	}
	
	.c-ir-table-parent:first-child {
		border: 0;
	}
	
	
	
	
/* guide ==================================================================================================== */
	.is-guide-page .c-section_headline {
		margin-bottom: 17.5px;
	}
	
	.c-guide-title-hi {
		margin: 0 0 25px;
	}
	
	.c-guide-title-mid {
		font-size: 2.4rem;
		line-height: 1.35;
		margin: 0 0 10px;
	}
	
	.c-guide-read-text {
		font-size: 1.4rem;
		line-height: 1.5;
	}
	
	.c-guide-link .e-link {
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 10px 20px 10px 0;
	}
	
	
	
	
	
	
	.c-section.c-guide-menu {
		margin-bottom: 40px;
	}
	
	.is-guide-page .c-bgColorGray {
		padding: 40px 20px 20px;
	}
	
	.is-guide-page .c-bgColorGray:last-of-type {
		margin: 0 -20px;
	}
	
	.c-guide-menu-items {
		display: block;
	}
	
	.c-guide-menu-item {
		width: 100%;
		display: block;
	}
	
	.c-guide-menu-item .e-link {
		text-align: left;
		padding: 20px 0 20px 60px;
	}
	
	.c-guide-menu-item .e-link:before {
		text-align: center;
		width: 60px;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-42.5%);
	}
	
	.c-guide-menu-item .e-link:after {
		left: auto;
		right: 15px;
		transform: translate(0,-50%);
	}
	
	.c-guide-menu-item .e-title {
		font-size: 1.6rem;
	}
	
	.c-guide-menu-item .e-title:before {
		font-size: 1.3rem;
		line-height: 1;
	}
	
	.c-guide-title-hi:before {
		font-size: 6rem;
	}
	
	.c-guide-title-hi .e-title {
		font-size: 1.8rem;
		padding: 0 0 12.5px;
	}
	
	.c-guide-title-hi .e-title:before {
		font-size: 1.4rem;
		margin: 0 0 5px;
	}
	
	.c-section.is-company {
		margin-bottom: 10px;
	}
	
	.c-company-chart {
		padding: 20px 0 0;
	}
	
	.c-company-chart .e-image {
		width: 100%;
		margin: 0 0 20px;
		display: block;
	}
	
	.c-company-chart-items {
		width: 100%;
		display: block;
	}
	
	.c-company-chart-item {
		line-height: 1.45;
		margin: 0 0 20px;
		padding: 0 0 0 80px;
		position: relative;
	}
	
	.c-company-chart-item .e-icon {
		width: 70px;
		height: 70px;
		border-radius: 50%;
		background: #414696;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
	}
	
	.c-company-chart-item .e-icon .e-icon-name {
		color: #fff;
		font-size: 1.4rem;
		font-weight: 700;
		font-style: normal;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	
	.c-company-chart-item .e-title {
		letter-spacing: -.05em;
		margin: 0 0 7.5px;
	}
	
	.c-company-chart-item .e-link {
		text-align: left;
		max-width: 100%;
		padding-left: 10px;
	}
	
	
	
	
	.c-strength-corner {
		padding: 30px 0 0;
	}
	
	.c-strength-corner-inner {
		padding: 0 0 30px !important;
	}
	
	.c-strength-corner .e-image {
		text-align: center;
		max-width: none;
		position: relative;
		top: auto;
		right: auto;
	}
	
	.c-strength-corner .e-image .e-img {
		max-width: 77.5%;
	}
	
	.c-strength-corner .e-title {
		font-size: 2rem;
		line-height: 1.35;
	}
	
	.c-strength-corner .e-text {
		line-height: 1.75;
		margin: 0 0 10px;
	}
	
	
	
	
	.c-strategy-corner .e-title {
		font-size: 2rem;
		line-height: 1.35;
	}
	
	.c-strategy-corner.is-legaland .e-inner {
		display: block;
	}
	
	.c-strategy-corner.is-legaland .e-inner .e-photo {
		width: 100%;
		margin: 0 0 20px;
		padding: 0;
		display: block;
	}
	
	.c-strategy-corner.is-legaland .e-inner .e-image {
		width: 100%;
		padding: 0;
		display: block;
	}
	
	.c-strategy-corner.is-legaland .e-flow {
		margin: 0 0 30px;
		display: block;
	}
	
	.c-strategy-corner.is-legaland .e-flow .e-image {
		width: 100%;
		margin: 0 0 20px;
		padding: 0;
		display: block;
	}
	
	.c-strategy-corner.is-legaland .e-flow .e-image:nth-child(even) {
		padding: 0;
	}
	
	.c-strategy-corner.is-legaland .e-text {
		letter-spacing: 0;
		margin-bottom: 25px;
	}
	
	
	
	
	.c-strategy-corner.is-stock .e-inner {
		margin: 0 0 20px;
		padding: 0;
	}
	
	.c-strategy-corner.is-stock .e-inner-title {
		font-size: 1.6rem;
	}
	
	.c-strategy-corner.is-stock .e-image {
		text-align: center;
		max-width: none;
		margin: 0 0 10px;
		display: block;
		position: relative;
		top: auto;
		right: auto;
	}
	
	.c-strategy-corner.is-stock .e-image .e-img {
		max-width: 77.5%;
	}
	
	.c-strategy-corner.is-stock .e-item {
		font-size: 1.4rem;
	}
	
	.c-strategy-corner.is-partner .e-text {
		font-size: 1.4rem;
	}
	
	
	
	
	/* 経営方針 */
	.c-strategy-point-item {
		font-size: 1.4rem;
	}
	
	.c-strategy-photo-item {
		width: calc(100% / 2);
	}
	
	
	
	.c-future-inner {
		padding: 15px 10px;
	}
	
	.c-future-title {
		margin: 0 0 15px;
	}
	
	.c-future-inner .e-image {
		margin: 0;
	}
	
	.c-future-stage-wrap {
		display: block;
	}
	
	.c-future-stage-item {
		width: 100%;
		padding: 15px 0 0;
		display: block;
	}
	
	.c-future-stage-item .e-item {
		line-height: 1.35;
	}
	
	.c-section.is-future {
		margin: 0;
	}
	
	.c-section.is-future .c-guide-link .e-link {
		margin: 0 0 20px;
	}
	
	
	
	
/* news ==================================================================================================== */
	.c-ir_news-menu-item {
		width: calc(100% / 3 - 2px);
		margin: 1px;
	}
	
	
	
	
/* faq ==================================================================================================== */
	.c-faq-item .e-title {
		min-height: 70px;
		background-position: left 15px top 50%;
		background-size: 26px auto;
	}
	
	.c-faq-item .e-title:after {
		right: 10px;
	}
	
	.c-faq-item .e-title .e-name {
		font-size: 1.3rem;
		padding: 0 40px 0 55px;
	}
	
	.c-faq-item-inner {
		background-position: left 15px top 15px;
		background-size: 26px auto;
	}
	
	.c-faq-item-inner-child {
		padding: 25px 15px 25px 55px;
	}
	
	.c-faq-item-inner .e-text {
		font-size: 1.3rem;
	}
	
	
	
	
	.is-message-page .is-main .u-inner {
		margin: 0;
		display: block;
	}
	
	.is-message-page .is-main .e-image {
		width: 100%;
		display: block;
	}
	
	.is-message-page .is-main .c-letter_body {
		line-height: 1.5;
		width: 100%;
		padding: 20px 0 0;
		display: block;
	}
	
	
	
	
	.is-inquiry-page .is-g-side_nav {
		min-height: 0;
		padding-bottom: 0;
	}
	
	.is-inquiry-page .g-container {
		min-height: 0;
	}
	
	
	
	
} /* END RESPONSIVE 767px */




@media screen and (max-width: 374px) {
	.is-message-page .is-main .c-letter_body {
		font-size: 1.8rem;
	}
	
	
	
	.c-company-chart-item .e-title {
		font-size: 1.2rem;
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
} /* END RESPONSIVE 374px */
