@charset "UTF-8";
/* Company style */

/* index
========================================== */
#main .index h1.heading01 + * {
	margin-top: 108px !important;
}
#main .index .flex-wrap figcaption {
	line-height: 1.2;
}
#main .index .second-row {
	margin-top: 166px !important;
}
#main .index .second-row[data-col="3"] > * {
	width: calc((100% - 24.8%) / 3);
	margin-left: 6.2%;
	margin-right: 0;
}
#main .index .second-row figcaption {
	font-size: 2rem;
	font-weight: 500;
	margin-top: 2.2em;
}

@media only screen and (max-width: 768px) {
	#main .index h1.heading01 + * {
		margin-top: 48px !important;
	}
	#main .index .flex-wrap[data-spcol="1"] > .col:nth-of-type(n+2) {
		margin-top: 54px !important;
	}
	#main .index .second-row {
		margin-top: 54px !important;
	}
	#main .index .second-row[data-spcol="2"] > * {
		width: 50%;
		margin-right: 0;
		margin-left: 0;
	}
	#main .index .second-row .col:nth-child(3) {
		margin-right: 0;
	}
	#main .index .second-row .col:nth-child(4) {
		margin-left: 0;
	}
	#main .index .second-row[data-col="3"] > *:nth-child(n+3) {
		margin-top: 50px;
	}
	#main .index .second-row figcaption {
		font-size: 1.4rem;
		margin-top: 1.7em;
	}
}


/* message
========================================== */
#main .message .main-section {
	margin-top: 0 !important;
}
#main .message section h2 {
	font-size: 4.8rem;
	font-weight: 500;
	line-height: 1.5;
	margin-top: 80px;
}
#main .message section .com-name {
	/*margin-top: 35px;
	margin-top: 2em;*/
	margin-top: 36px;
}
#main .message section .txt-president {
	font-size: 2rem;
	font-weight: 500;
	margin-top: 68px;
}
#main .message section p:not([class]) {
	font-size: 1.8rem;
	line-height: 250%;
	margin-top: 60px !important;
}
@media only screen and (min-width: 769px) {
	#main .message section h2 {
		line-height: 1.5;
	}
	#main .message .main-section .flex-wrap .img-col {
		width: calc((100% - 4%) / 2);
	}
	#main .message section .txt-president {
		line-height: 2.2;
	}
	#main .message .main-section .flex-wrap + p {
		margin-top: 80px !important;
	}
}
@media only screen and (max-width: 768px) {
	#main .message section {
		margin-top: 63px;
	}
	#main .message section .flex-wrap {
		margin-top: 48px;
		margin-bottom: 70px;
	}
	#main .message section h2 {
		font-size: 2.6rem;
		margin-top: 1.1em;
	}
	#main .message section h2 + p {
		margin-top: 23px;
		line-height: 1em;
	}
	#main .message section .indent-blc {
		margin-top: 50px;
	}
	#main .message section p {
		font-size: 1.6rem;
		line-height: 2em;
	}
	#main .message section * + p {
		margin-top: 3em;
	}
	#main .message section .txt-strong {
		font-size: 1.58rem;
	}
	#main .message section .com-name {
		margin-top: 25px;
	}
	#main .message section .txt-president {
		/*text-align: right;*/
		padding-top: 26px;
		margin-top: 0;
	}
	#main .message section p:not([class]) {
		/*margin-top: 2.5em;*/
	}
}


/* compliance
========================================== */
#main .compliance .sec02 > section + section {
	margin-top: 30px;
}
#main .compliance .sec02 > section .heading05 {
	font-size: 2.0rem;
}
#main .compliance .sec02 > section h3 + * {
	margin-top: 1.5em !important;
}
@media only screen and (min-width: 769px) {
	#main .compliance .sec01 > div > p + p {
		margin-top: 2em;
	}
	#main .compliance .sec02 > section h3 + * {
		margin-top: 0.7em !important;
	}
}
@media only screen and (max-width: 768px) {
	#main .compliance .sec02 > section .heading05 {
		font-size: 1.8rem;
	}
	#main .compliance .sec02 > section h3 + * {
		margin-top: 0.3em !important;
	}
}



/* statement
========================================== */
#main .statement .sec01 > section .heading05 + p {
	margin-top: 1em !important;
}
#main .statement .flex-wrap {
	/*margin-top: 3em !important;*/
	margin-top: 2.6em !important;
}
#main .statement .flex-wrap[data-col="3"] .col {
	text-align: center;
}
#main .statement .flex-wrap[data-col="3"] .col > .heading06 {
	margin-top: 24px;
}
#main .statement .flex-wrap[data-col="3"] .col > .heading06 + p {
	margin-top: 0.8em !important;
}
#main .statement .sec04 > figure {
	margin-top: 75px;
}
#main .statement .sec04 > p + p  {
	margin-top: 1.7em !important;
}
@media only screen and (max-width: 768px) {
	#main .statement .sec02 > .flex-wrap .col > .heading06,
	#main .statement .sec03 > .flex-wrap .col > .heading06 {
		font-size: 2rem !important;
	}
}






/* about leadership
========================================== */
#main .leadership .person-name {
	font-size: 2.3rem;
	font-weight: 500;
	line-height: 1.2;
	margin-top: 35px;
}
#main .leadership .person-name + p {
	line-height: 1.2;
	margin-top: 24px;
}
#main .leadership .flex-wrap > .col:nth-child(n+4) {
	margin-top: 72px;
}
@media only screen and (max-width: 768px) {
	.leadership .person-name,
	#main .leadership .person-name + p {
		text-align: center;
	}
	#main .leadership .person-name {
		margin-top: 30px;
	}
	#main .leadership .person-name + p {
		margin-top: 15px;
	}
	#main .leadership .flex-wrap > .col:nth-child(n+2) {
		margin-top: 48px;
	}
}

/* person */
#main .leadership.person .person-txt ruby {
	position: relative;
}
#main .leadership.person .person-txt ruby rt {
	font-size: 2.4rem;
	font-weight: 300;
	margin-left: 1.25em;
	display: inline-block;
	position: relative;
	top: -.3em;
}
#main .leadership.person .position-txt {
	font-size: 2.4rem;
	margin-top: 25px !important;
}
#main .leadership.person .person-img {
	margin-top: 80px;
}
#main .leadership.person .career-area {
	margin-top: 160px !important;
}
#main .leadership.person .career-area .career-list {
	border-top: none;
	/*padding-top: 1.5em;*/
}
#main .leadership.person .career-area .career-list li {
	padding: .5em 0;
	border-bottom: none;
}
#main .leadership.person .career-area .career-list li > p:nth-child(1) {
	font-weight: 500;
}
#main .leadership.person .career-area .career-list li > p {
	font-size: 1.6rem;
	color: #000;
}

@media only screen and (min-width: 769px) {
	#main .leadership.person .career-area .career-list li:first-child {
		padding-top: 0;
	}
}
@media only screen and (max-width: 768px) {
	#main .leadership.person .person-txt {
		font-size: 2.4rem;
	}
	#main .leadership.person .person-txt ruby {
		display: block;
	}
	#main .leadership.person .person-txt ruby rt {
		font-size: 1.6rem;
		margin-left: 0;
		top: 0;
	}
	#main .leadership.person .position-txt {
		font-size: 1.8rem;
		margin-top: 15px !important;
	}
	#main .leadership.person .person-img {
		margin-top: 40px;
	}
	#main .leadership.person .career-area {
		margin-top: 128px !important;
	}
	#main .leadership.person .career-area .career-list li {
		display: block !important;
	}
	#main .leadership.person .career-area .career-list li > p {
		width: auto;
	}
	#main .leadership.person .career-area .career-list li > p:nth-of-type(n+2) {
		margin-left: 1.25em;
	}
}

@media only screen and (max-width: 768px) {
	#main .leadership.person .career-area .career-list {
		margin-top: 22px !important;
	}
	#main .leadership.person .career-area .career-list li:first-child {
		padding-top: 0;
	}
}


/* about group
========================================== */
#main .about.group .group-list {
	margin-top: 80px;
}
#main .about.group .group-list li > p:first-child {
	color: #000;
	font-weight: 500;
}
@media only screen and (max-width: 768px) {
	#main .about.group .group-list li {
		display: block !important;
	}
	#main .about.group .group-list li > p {
		width: auto;
	}
	#main .about.group .group-list li > p a {
		text-decoration: underline;
	}
}


/* business
========================================== */
#main .business .sec01 .heading04 + figure {
	margin: 80px 0 !important;
}
#main .business .sec02 .heading04 + figure {
	margin-top: 80px !important;
}
#main .business .sec02 .heading05 + p {
	margin-top: 1.5em !important;
}
/*PC Layout
-------------------*/
@media only screen and (min-width: 1069px) {
	#main .business .sec02 > section + section {
		margin-top: 68px;
	}
}
@media only screen and (max-width: 768px) {
	#main .business .sec02 .heading04 + figure {
		margin-top: 48px !important;
	}
	/*
	#main .business .heading05.underline-black {
		font-size: 2rem;
	}
	*/
}



/* about outline
========================================== */
#main .outline .outline-list {
	border-top: 1px solid #DCDCDC;
}
#main .outline .outline-list > li {
	border-bottom: 1px solid #DCDCDC;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	padding-top: 32px;
	padding-bottom: 32px;
}
#main .outline .outline-list > li .item_title {
	font-weight: 500;
	width: 145px;
}
#main .outline .outline-list > li .item_title + div {
	width: calc(100% - 145px);
}
#main .outline .outline-list > li .item_title + div > .heading07 + div {
	margin-top: 1.25em !important;
}
#main .outline .outline-list > li .item_title + div > figure {
	margin-top: 48px !important;
	margin-bottom: 48px !important;
}
#main .outline .outline-list > li .item_title + div .heading07 {
	font-size: 1.8rem;
}
#main .outline .outline-list > li .btn-link {
	margin-bottom: 32px;
}
#main .outline .sios-logo {
	margin: 48px 0 80px !important;
}
#main .outline .sios-logo-description {
	margin-top: 80px;
}
@media only screen and (min-width: 769px) {
	#main .outline .sios-logo-description > p + p {
		margin-top: 2em !important;
	}
	#main .outline .btn-list.flex > .btn-link {
		margin-top: 40px;
	}
}
@media only screen and (max-width: 768px) {
	#main .outline .outline-list > li {
		display: block;
	}
	#main .outline .outline-list > li .item_title {
		width: auto;
	}
	#main .outline .outline-list > li .item_title + div {
		margin-top: 15px;
		width: auto;
	}
	#main .outline .btn-link {
		margin-top: 45px;
		margin-bottom: 0px;
		width: 100%;
	}
	#main .outline .outline-list > li .btn-link {
		margin-bottom: 0px;
	}
	#main .outline .sios-logo {
		width: 250px;
	}
}


/* about info
========================================== */
#main .info .movie-area {
	padding-top: calc(100% * .5625);
	margin-top: 160px;
	position: relative;
}
#main .info .corp-movie {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

@media only screen and (max-width: 768px) {
	#main .info .movie-area {
		margin-top: 128px;
	}
	#main .info .movie-area.js-movie-sp {
		padding-top: 178%;
	}
	#main .info .btn-link {
		width: 100%;
	}
}


/* governance corporate-governance
========================================== */

#main .corporate-governance > section > section .heading05 + .large-l {
	margin-top: 1.25em !important;
}
#main .corporate-governance .sec01 > * + section {
	margin-top: 65px !important;
}
#main .corporate-governance .sec03 > .heading04 + p + p {
	margin-top: 2em;
}
@media only screen and (min-width: 1069px) {
	#main .corporate-governance .sec01 {
		padding-left: 80px;
	}
}
@media only screen and (min-width: 769px) {
	#main .corporate-governance .sec01 .col-wrap > .col:first-child {
		max-width: 877px;
		width: auto;
	}
}
@media only screen and (max-width: 768px) {
	#main .corporate-governance .sec01 > * + section {
		margin-top: 3em !important;
	}
}


/* governance informationsecurity
========================================== */

#main .infomationsecurity .enactment-date {
	text-align: right;
}
#main .infomationsecurity .number-list01 + .enactment-date {
	margin-top: 3em !important;
}
#main .infomationsecurity .number-list01 > li + li {
	margin-top: 0;
}
#main .infomationsecurity .number-list01 > li:before {
	font-weight: 300;
}
/*
#main .infomationsecurity .enactment-date + p {
	margin-top: 3em !important;
}
*/

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

/* about history
========================================== */

#main .history .history-area .history-list li > p {
	font-size: 1.6rem;
}

@media only screen and (max-width: 768px) {
	#main .history .history-area {
		margin-top: 40px !important;
	}
	#main .history .history-list > li {
		display: block;
	}
	#main .history .history-list > li > p {
		width: auto;
	}
	#main .history .history-list > li > p + p {
		margin-top: 15px;
		width: auto !important;
	}
}
.group a, .history a, .info a, .person  a, .outline a, .link-business a, .compliance a, .corporate-governance a, .infomationsecurity a, .message a, .purpose a{
     color: #2179C7;
    text-decoration: underline;
}  
.group a:hover, .history a:hover, .info a:hover, .person  a:hover, .outline a:hover, .link-business a:hover, .compliance a:hover, .corporate-governance a:hover, .infomationsecurity a:hover, .message a:hover, .purpose a:hover{
     color: #2179C7;
    text-decoration: none;
        opacity: 1;
}  
.group .group-list a{
        color: #2179C7 !important;
    text-decoration: underline;
}
.group .group-list a:hover{
    text-decoration: none !important;
}



