@charset "UTF-8";

/*--------------------------------------------------------------------
=== [レスポンシブ] ====================================
 -------------------------------------------------------------------*/


.pcHide {
display: none;
}

.spHide {
display: block;
}

@media (max-width: 1000px){
	
.pcHide {
display: block;
}

.spHide {
display: none;
}
	
main > .inner {
  margin-top: 16px;
  padding: 0 16px;
}


/*--------------------------------------------------------------------
=== [header] ====================================
 -------------------------------------------------------------------*/
header {
  min-height: 65px;
  padding: 0 80px 0 0;
}	
.headerLogo {
  height: 48px;
	margin: 4px 0 0 8px;
}	
	
header .reportTtl {
    width: 160px;
    margin: 0 auto;
    text-align: center;
}
header .reportTtl a {
	font-size: 10px;
	text-align: center;
}
header .reportTtl a em {
	font-size: 14px;
}
	
.hamburger-menu {
  width: 56px;
  height: 65px;
  position: absolute;
  border: none;
  background: transparent;
  appearance: none;
  padding: 0;
  cursor: pointer;
	top: 0;
	right: 0;
}
.hamburger-menu__bar {
  display: inline-block;
  width: 20px;
  height: 2px;
  background: #fff;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: .5s;
}
.hamburger-menu__bar:first-child {
  top: 26px;
}
.hamburger-menu__bar:nth-child(2) {
  top: 31px;
}
.hamburger-menu__bar:last-child {
  top: 36px;
}
.hamburger-menu--open .hamburger-menu__bar {
  top: 50%;
}
.hamburger-menu--open .hamburger-menu__bar:first-child {
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.hamburger-menu--open .hamburger-menu__bar:last-child {
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
.hamburger-menu--open .hamburger-menu__bar:nth-child(2) {
  display: none;
}
header nav {
  display: none;
  background: #005bac;
  position: absolute;
  top: 65px;
left: 0;
 width: 100%;
  z-index: 9999;
}
	
header nav ul {
  display: block;	
}
header nav ul li {
  border-bottom: solid 1px #fff;
}
header nav ul li:first-child {
  border-top: solid 1px #fff;
}
header nav ul li a {
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  display: block;
  padding: 24px 0;
  transition: .5s;
}
header nav li.is-current a {
	border-bottom: none;
}
	
header nav a {
	margin: 0 11vw;
}
	



/*--------------------------------------------------------------------
=== [TOP] ====================================
 -------------------------------------------------------------------*/
.toppage main > .inner {
  margin: 0;
  padding: 0;
}

#seo_top_ceo {
	display: flex;
  flex-direction: column-reverse;
	margin: 0 auto;
}
#seo_top_ceo figure {
	width: auto;
  text-align: center;
}
#seo_top_ceo .txtArea {
	width: auto;
	padding:  12px 16px 16px;
	background: linear-gradient(to bottom, #00AFDD, rgba(0,175,221,0.75));
}
#seo_top_ceo .secTitle {
	font-size: 19px;
	margin-bottom: 10px;
}
#seo_top_ceo .leadTxt {
	font-size: 14px;
	margin-bottom: 10px;
}
#seo_top_ceo .txtArea .name {
	font-size: 15px;
  margin-bottom: 15px;
}
#seo_top_ceo .txtArea .name span {
  margin-top: 3px;
	font-size: 12px;
}
#seo_top_ceo .txtArea .moreBtn a {
	font-size: 13px;
	border-width: 1px;
	width: 115px;
	line-height: 30px;
}

#sec_top_cfo {
	display: flex;
  flex-direction: column-reverse;
	margin: 0 auto;
}
#sec_top_cfo figure {
	width: auto;
  text-align: center;
}
#sec_top_cfo .txtArea {
	width: auto;
	padding:  12px 16px 16px;
	background:#fff;
}
#sec_top_cfo .secTitle {
	font-size: 19px;
	margin-bottom: 10px;
}
#sec_top_cfo .leadTxt {
	font-size: 14px;
	margin-bottom: 10px;
}
#sec_top_cfo .txtArea .name {
	font-size: 15px;
  margin-bottom: 5px;
}
#sec_top_cfo .txtArea .name span {
	font-size: 12px;
  margin-top: 3px;
}
#sec_top_cfo .txtArea .moreBtn a {
	font-size: 13px;
	border-width: 1px;
	width: 115px;
	line-height: 30px;
}

#sec_top_outside {
	padding: 25px 16px;
}
#sec_top_outside ul li figure img {
	aspect-ratio: 5 / 8;
}
#sec_top_outside .inner .secTitle {
	font-size: 19px;
	margin-bottom: 15px;
}
#sec_top_outside .inner .leadTxt{
	font-size: 14px;
	margin-bottom: 20px;
}
#sec_top_outside .inner .name{
	font-size: 15px;
	font-weight: bold;
  margin-top: 10px;
	padding: 0 5px;
  line-height: 1.1;
  font-feature-settings: "palt";
}
#sec_top_outside .inner .name span{
	font-size: 12px;
	margin-top: 5px;
}
#sec_top_outside .moreBtn {
	padding: 25px 0 0;
}
#sec_top_outside .moreBtn a {
	font-size: 13px;
	border-width: 1px;
	width: 115px;
	line-height: 30px;
}
/*--------------------------------------------------------------------
=== [contents] ====================================
 -------------------------------------------------------------------*/
#sec_ceo, #sec_cfo {
    display: flex;
	flex-direction: column-reverse;
	margin: 0 auto;
	color: #005bac;
	margin-bottom: 40px;
}	
#sec_ceo .txtArea, #sec_cfo .txtArea {
    position: inherit;
    width: 100%;
    padding: 0;
	background-color: #fff;
}
#sec_ceo .txtArea {
    background: #fff;
	color: #005bac;
}
#sec_ceo .txtArea .pageTitle,
#sec_cfo .txtArea .pageTitle {
	font-size: 24px;
	margin-bottom: 10px;
	margin-top: 4.44vw;
	line-height: 1.5;
  font-feature-settings: "palt";
}

#sec_ceo .txtArea .leadTxt,#sec_cfo .txtArea .leadTxt {
	font-size: 18px;
	margin-bottom: 4.44vw;
	line-height: 1.5;
  font-feature-settings: "palt";
}
	
#sec_ceo .txtArea .wrap, #sec_cfo .txtArea .wrap {
justify-content: space-between;
}	

#sec_ceo .txtArea .name,#sec_cfo .txtArea .name {
	font-size: 18px;
	flex-shrink: 0;
}
  
#sec_ceo .txtArea .name span,#sec_cfo .txtArea .name span {
	font-size: 12px;
}	
	
#sec_ceo .txtArea .moreBtn a, #sec_cfo .txtArea .moreBtn a {
    border: 2px solid #005bac;
    width: 160px;
    line-height: 30px;
    margin-left: 0;
}	
	

#sec_outside {
	margin:0 auto 13.33vw auto;
	background-color: #ecf0f3;
	text-align: center;
	color: #005bac;
	padding: 6.66vw 0 6.66vw 0;
}
#sec_outside ul li figure img {
	aspect-ratio: 5 / 8;
}
#sec_outside .inner .pageTitle {
	font-size:24px;
	margin-bottom: 20px;
}
#sec_outside .inner .leadTxt{
	font-size: 18px;
	margin-bottom: 20px;
}
#sec_outside .inner .name{
	font-size: 15px;
	font-weight: bold;
  margin-top: 10px;
	padding: 0 5px;
  line-height: 1.1;
  font-feature-settings: "palt";
}
#sec_outside .inner .name span{
	font-size: 12px;
	margin-top: 5px;
}

#sec_outside .moreBtn a {
	border: 2px solid #005bac;
    width: 160px;
    line-height: 30px;
	margin: 4.44vw auto 0;
}	
	
#sec_index {
  margin-bottom: 100px;
}
#sec_index .inner .upr {
  display: block;
  justify-content: space-between;
  align-items: center;
}

#sec_index .inner {
    padding: 30px 16px 16px;
}	
#sec_index .inner .upr h2 {
	margin-bottom: 15px;
}
#sec_index .inner .upr h2 em {
	font-size: 24px;
}
#sec_index .inner .upr ul a {
	font-size: 14px;
}
#sec_index .inner .upr ul li:first-child {
    margin-bottom: 10px;
}
#sec_index .inner .upr ul a.ico-dl:after {
  width: 16px;
  height: 16px;
  vertical-align: bottom;
}
#sec_index .inner .upr ul a.ico-blank:after {
    width: 14px;
    height: 13px;
}
#sec_index .inner .upr figure {
  width: 100%;
margin-top: 30px;
}
#sec_index .inner .btm h3 {
    font-size: 14px;
    margin-bottom: 20px;
}
#sec_index .inner .btm h3:after {
    width: 80%;
    left: 20%;
}	
	
#sec_index .inner .btm ul {
    display: block;
}
	
#sec_index .inner .btm ul li {
  width: auto !important;
  padding-right: 0;
}	
	
#sec_index .inner .btm ul dl dt a {
    font-size: 14px;
}
#sec_index .inner .btm ul dl {
    margin-bottom: 20px;
}
#sec_index .inner .btm ul dl dt, #sec_index .inner .btm ul dl dd {
    margin-bottom: 10px;
}
#sec_index .inner .btm ul dl dd {
	margin-left: 30px;
	display: none;
}
#sec_index .inner .btm .open {
  position: relative;
  padding-right: 15px;
}

#sec_index .inner .btm .open::before,
#sec_index .inner .btm .open::after {
  content: "";
  position: absolute;
  bottom: 0;
  top: 0;
  right: 0;
	margin: auto;
  width: 2px;
  height: 10px;
  border-radius: 9999px;
  background-color: #005bac;
  transform-origin: 50% calc(100%);
}

#sec_index .inner .btm .open::before {
  transform: rotate(45deg);
}

#sec_index .inner .btm .open::after {
  transform: rotate(-45deg);
}
	
#sec_index .inner .btm .open.menuOpen::before,
#sec_index .inner .btm .open.menuOpen::after {
  transform-origin: 50% 0;
}


/*--------------------------------------------------------------------
=== [footer] ====================================
 -------------------------------------------------------------------*/
footer .upr {
    flex-direction: column;
    padding-bottom: 30px;
border-bottom: 1px solid #fff;
}	
	
	
footer .inner {
    padding: 48px 16px 40px;
}
footer .logo {
    width: 140px;
    margin-right: 160px;
	margin-bottom: 30px;
}	
footer .name {
    width: 300px;
}	
	
footer .btm {
    display: block;
}
footer .btm ul {
    display: block;
    width: auto;
}
footer .btm ul li {
  width: auto;
  padding-right: 0;
	margin-bottom: 16px;
}
	
footer .btm .copy {
	font-size: 10px;
	text-align: center;
	margin-top: 40px;
}

#btmNav nav {
    margin: 0 auto;
    padding: 5.2vw 16px;
    font-size: 14px;
    text-align: left;
}
#btmNav nav ul {
    display: block;
    margin-bottom: 0;
}
	
#btmNav nav ul li {
	margin: 0;
	margin-bottom: 15px;
}
	
#btmNav nav ul li a:after {
    width: 16px;
    height: 16px;
}
	
#btmNav nav .pdfLink a:after {
    width: 18px;
    height: 17px;
    vertical-align: -2px;
    margin-left: 10px;
}
#pageTop a {
  bottom: 0;
  position: fixed;
  right: 10px;
	width: 48px;
}



/*--------------------------------------------------------------------
=== [interviewer] ====================================
 -------------------------------------------------------------------*/
.interviewer {
    display: block;
    margin-bottom: 50px;
}	
.interviewer figure {
  position: relative;
}
.interviewer figcaption {
  position: absolute;
  top: 25%;
  right: 4vw;
  display: block;
	font-size: clamp(2.5vw, 0.8rem, 7vw);
	font-weight: 600;
  line-height: 1.4;
  text-align: right;
}
.interviewer figcaption span {
	font-size: clamp(2vw, 0.6rem, 5vw);
	font-weight: 500;
	display: block;
}

.interviewer img {
  width: 100%;
  max-width: inherit;
}
	
.interviewer .txt {
    padding: 25px 16px;
    font-size: 14px;
}
.interviewer .txt p {
    margin-bottom: 0;
}
.interviewer .txt .name {
    display: none;
}
	
.interviewColumnR{
	display: block;
}
.interviewColumnR figure {
	width: 100%;
	margin:0 0 40px 0 !important;
  text-align: center;
}
.interviewColumnR .interviewTxt {
	margin-bottom: 40px;
}
.interviewColumnL{
	display: block;
}
.interviewColumnL figure {
	width: 100%;
	margin:0 0 40px 0 !important;
  text-align: center;
}
.interviewColumnL .interviewTxt {
	margin-bottom: 40px;
}

article .txtUnit .profile {
	padding: 20px;
}


}