@charset "utf-8";
/* デスクトップレイアウト : 769 px ～最大 1232 px。モバイルレイアウトとタブレットレイアウトからスタイルを継承。 */

@keyframes scroll {
0% {
transform: scale(1, 0);
transform-origin: 0 0;
}
50% {
transform: scale(1, 1);
transform-origin: 0 0;
}
51% {
transform: scale(1, 1);
transform-origin: 0 100%;
}
100% {
transform: scale(1, 0);
transform-origin: 0 100%;
}
}

.errors{
color: #D1060A;
}

@media print, screen and (min-width: 768px) {

/*トップ
---------------------------------------------*/
#ir {
position: relative;
padding: 150px 0 0;
}
#ir .news {
margin-bottom: 60px;
}
#ir .news h3 {
font-size: 2.6rem;
text-align: center;
color: #086DB0;
margin: 0 0 40px;
}

#ir .news_list {
display: flex;
overflow: hidden;
flex-wrap: wrap;
align-items: stretch;
margin-bottom: 20px;
}
#ir .news_list dt {
width: 18em;
}
#ir .news_list dt .date {
font-weight: bold;
width: 7em;
display: inline-block;
}
#ir .news_list dt .label {
display: inline-block;
min-width: 9em;
}
#ir .news_list dt .label .tab_c01 {
color: #fff;
background-color: #1670AB;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#ir .news_list dt .label .tab_c02 {
color: #fff;
background-color: #61A5D3;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#ir .news_list dt .label .tab_c03 {
color: #121212;
background-color: #D5D5D5;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#ir .news_list dt .label .tab_c04 {
color: #fff;
background-color: #909090;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#ir .news_list dd {
width: calc(100% - 18em);
margin: 0 0 20px;
}
#ir .news_list dd a {
color: #000;
}
#ir .news_list dd a:hover {
color: #086DB0;
text-decoration: underline;
}
#ir .news_list dd span {
width: 16px;
display: inline-block;
}
#ir .news_list dd span img {
width: 100%;
height: auto;
}

#ir .news .btn {
text-align: center;
}
#ir .news .btn a {
position: relative;
display: inline-block;
background: #086DB0;
font-weight: 700;
color: #FFF;
padding: 5px 100px 7px 30px;
border-radius: 25rem;
transition: all 0.3s;
}
#ir .news .btn a:hover {
opacity: 0.8;
transition: all 0.3s;
}
#ir .news .btn a::before {
content: '';
position: absolute;
top: 40%;
right: 25px;
width: 0.6em;
height: 0.6em;
border: 0.2em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(45deg);
}
#ir .message {
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 20px;
margin-bottom: 20px;
overflow: hidden;
}
#ir .message a {
display: flex;
flex-wrap: wrap;
align-items: center;
transition: all 0.3s;
}
#ir .message a:hover {
opacity: 0.8;
transition: all 0.3s;
}
#ir .message .img {
position: relative;
width: 50%;
}
#ir .message .img span {
position: absolute;
right: 15px;
bottom: 15px;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 34px;
height: 34px;
background: #fff;
border-radius: 50%;
box-sizing: content-box;
}
#ir .message .img span::before {
content: '';
width: 0.6em;
height: 0.6em;
border: 0.1em solid #086DB0;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}
#ir .message .txtbox {
width: 50%;
padding: 30px;
box-sizing: border-box;
}
#ir .message .txtbox h4 {
font-size: 2.2rem;
color: #086DB0;
margin: 0 0 15px;
}
#ir .message .txtbox p {
font-weight: 700;
}
#ir .sitemap_wrap {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 20px;
}
#ir .sitemap_wrap .sitemap_box {
width: 24%;
padding: 20px 20px;
box-sizing: border-box;
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 10px;
}
#ir .sitemap_wrap .sitemap_box h3 {
font-size: 18px;
font-weight: 700;
margin-bottom: 10px;
padding-bottom: 10px;
box-sizing: border-box;
border-bottom: 1px solid #086DB0;
color: #086DB0;
}
#ir .sitemap_wrap .sitemap_box h3 a {
color: #086DB0;
transition: .3s;
}
#ir .sitemap_wrap .sitemap_box h3 a:hover {
opacity: .7;
}
#ir .sitemap_wrap .sitemap_box ul {
margin: 0;
padding: 0;
}
#ir .sitemap_wrap .sitemap_box ul li {
margin-bottom: 5px;
}
#ir .sitemap_wrap .sitemap_box ul li a {
position: relative;
display: block;
padding-left: 12px;
box-sizing: border-box;
}
#ir .sitemap_wrap .sitemap_box ul li a::before {
content: '';
width: 7px;
height:7px;
border: 0;
border-top: solid 1px #086DB0;
border-right: solid 1px #086DB0;
transform: rotate(45deg);
position: absolute;
top: 11px;
left: -4px;
margin: auto;
}
#ir .sitemap_wrap .sitemap_box ul li a:hover {
color: #086DB0;
text-decoration: underline;
}
#ir .calendar {
width: 420px;
margin: 0 auto 50px;
}
#ir .calendar a {
display: flex;
align-items: center;
padding: 25px 30px;
background: #F3F5F5;
border-radius: 10px;
font-weight: 700;
}
#ir .calendar a:hover {
color: #086DB0;
text-decoration: underline;
}
#ir .calendar a span {
display: inline-block;
width: 40px;
margin-right: 15px;
}
#ir .individual {
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 20px;
margin-bottom: 20px;
overflow: hidden;
}
#ir .individual a {
display: flex;
flex-wrap: wrap;
align-items: center;
flex-direction: row-reverse;
transition: all 0.3s;
}
#ir .individual a:hover {
opacity: 0.8;
transition: all 0.3s;
}
#ir .individual .img {
width: 50%;
}
#ir .individual .txtbox {
position: relative;
width: 50%;
padding: 30px;
box-sizing: border-box;
}
#ir .individual .txtbox h4 {
font-size: 2.2rem;
color: #086DB0;
margin: 0 0 15px;
}
#ir .individual .txtbox p {
font-weight: 700;
}
#ir .individual .txtbox span {
position: absolute;
right: 15px;
bottom: 15px;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 34px;
height: 34px;
background: #086DB0;
border-radius: 50%;
box-sizing: content-box;
}
#ir .individual .txtbox span::before {
content: '';
width: 0.6em;
height: 0.6em;
border: 0.1em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}
#ir .box_wrap {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#ir .box_wrap a {
width: 49%;
display: flex;
align-items: center;
padding: 25px 30px;
box-sizing: border-box;
background: #F3F5F5;
border-radius: 10px;
font-weight: 700;
}
#ir .box_wrap a:hover {
color: #086DB0;
text-decoration: underline;
}
#ir .box_wrap a .icon {
display: inline-block;
width: 40px;
margin-right: 15px;
}
#ir .box_wrap a .icon2 {
display: inline-block;
width: 36px;
margin-right: 15px;
}



/*IR ニュース
---------------------------------------------*/
#news {
position: relative;
padding: 150px 0 0;
}
#news .tab_panel .form_select {
position: relative;
margin: 15px 0;
padding: 10px 80px 9px 20px;
line-height: 1;
cursor: pointer;
border: 1px solid #086DB0;
border-radius: 25px;
background-color: #fff;
background-image: url("../images/ir/news/icon_selectform.png");
background-repeat: no-repeat;
background-position: right center;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
color: #086DB0;
font-weight: bold;
}
#news .tab_panel .news_list {
display: flex;
overflow: hidden;
flex-wrap: wrap;
align-items: stretch;
}
#news .tab_panel .news_list dt {
width: 18em;
}
#news .tab_panel .news_list dt .date {
font-weight: bold;
width: 7em;
display: inline-block;
}
#news .tab_panel .news_list dt .label {
display: inline-block;
min-width: 9em;
}
#news .tab_panel .news_list dt .label .tab_c01 {
color: #fff;
background-color: #1670AB;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#news .tab_panel .news_list dt .label .tab_c02 {
color: #fff;
background-color: #61A5D3;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#news .tab_panel .news_list dt .label .tab_c03 {
color: #121212;
background-color: #D5D5D5;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#news .tab_panel .news_list dt .label .tab_c04 {
color: #fff;
background-color: #909090;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#news .tab_panel .news_list dd {
width: calc(100% - 18em);
margin: 0 0 20px;
}
#news .tab_panel .news_list dd a {
color: #000;
}
#news .tab_panel .news_list dd a:hover {
color: #086DB0;
text-decoration: underline;
}
#news .tab_panel .news_list dd span {
width: 16px;
display: inline-block;
}
#news .tab_panel .news_list dd span img {
width: 100%;
height: auto;
}

/*トップメッセージ
---------------------------------------------*/
#message {
position: relative;
padding: 150px 0 0;
}
#message h3 {
font-size: 2.6rem;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 60px;
}
#message .hed_box {
display: flex;
flex-wrap: wrap;
flex-direction: row-reverse;
justify-content: space-between;
margin: 0 0 60px;
}
#message .hed_box .img {
width: 45%;
border-radius: 20px;
overflow: hidden;
}
#message .hed_box .txt_box {
width: 50%;
}
#message .hed_box .txt_box h4 {
font-size: 24px;
line-height: 2;
margin: 0 0 40px;
}
#message .hed_box .txt_box .name {
font-size: 18px;
font-weight: bold;
text-align: right;
}
#message .hed_box .txt_box .name span {
font-size: 24px;
margin-left: 15px;
}
#message .txt {
margin: 0 0 40px;
}
#message .txt:last-child {
margin-bottom: 0;
}
#message .txt a {
text-decoration: underline;
transition: .5s;
}
#message .txt a:hover {
text-decoration: none;
color: #086DB0;
}



/*中期経営計画
---------------------------------------------*/
#plan {
position: relative;
padding: 150px 0 0;
}
#plan h3 {
font-size: 2.6rem;
line-height: 1;
color: #086DB0;
margin: 0 0 30px;
}
#plan .policy {
margin-bottom: 80px;
}
#plan .policy h4 {
font-size: 2.2rem;
font-weight: 700;
line-height: 1;
margin: 0 0 30px;
}
#plan .strategy {
margin-bottom: 80px;
}
#plan .strategy ul li.flex_wrap {
display: flex;
align-items: center;
margin-bottom: 20px;
}
#plan .strategy ul li.flex_wrap:last-child {
margin-bottom: 0;
}
#plan .strategy ul li.flex_wrap p {
width: 200px;
font-weight: 700;
text-align: center;
padding: 30px 20px;
margin-right: 20px;
background: #D6EFF7;
border-radius: 5px;
}
#plan .strategy ul li.flex_wrap ul.list li {
margin-left: 15px;
}
#plan .strategy ul li.flex_wrap ul.list li::marker {
content: '⚫︎';
color: #086DB0;
}
#plan .value {
margin-bottom: 80px;
}
#plan .value table {
width: 100%;
border-top: 1px solid #D5D5D5;
border-right: 1px solid #D5D5D5;
margin-bottom: 80px;
font-size: 1.4rem;
table-layout: fixed;
}
#plan .value caption { text-align: right; font-size: 1rem; }

#plan .value table th {
width: 18%;
background: #086DB0;
text-align: center;
line-height: 1.3;
color: #FFF;
padding: 10px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
}
#plan .value table th:first-child { width: 14%; }
#plan .value table th:nth-child(5) { width: 19%; }
#plan .value table th:last-child { width: 11%; }
#plan .value table td {
padding: 10px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
vertical-align: middle;
line-height: 1.4;
text-align: right;
}
#plan .value table td.left {
text-align: left;
}
#plan .value table tr:last-of-type td {
font-weight: 700;
background: #F3FDFF;
}
#plan .value table tr:last-of-type td:first-child {
background: #D6EFF7;
}
#plan .value .flex_wrap {
display: flex;
flex-wrap: wrap;
flex-direction: row-reverse;
justify-content: space-between;
align-items: center;
}
#plan .value .flex_wrap .img {
width: 45%;
box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
}
#plan .value .flex_wrap .txtbox {
width: 51%;
}
#plan .value .flex_wrap .txtbox h4 a {
position: relative;
display: block;
font-size: 2.2rem;
font-weight: 700;
line-height: 1;
color: #086DB0;
padding-bottom: 10px;
margin-bottom: 10px;
border-bottom: 1px solid;
}
#plan .value .flex_wrap .txtbox h4 span {
position: absolute;
right: 0;
bottom: 10px;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
background: #086DB0;
border-radius: 50%;
box-sizing: content-box;
}
#plan .value .flex_wrap .txtbox h4 span::before {
content: '';
width: 0.3em;
height: 0.3em;
border: 0.1em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}
#plan .link h5 {
position: relative;
font-size: 17px;
font-weight: bold;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#plan .link h5::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#plan .link ul {
margin-left: 20px;
}
#plan .link ul li {
margin: 0 0 5px;
}
#plan .link ul li:last-child {
margin: 0;
}
#plan .link ul li a {
color: #086DB0;
transition: .5s;
}

#plan .link ul li a:hover {
text-decoration: underline;
}

#plan .link ul li a img { width: 16px; margin-left: 5px; }



/*コーポレート・ガバナンス
---------------------------------------------*/
#governance {
position: relative;
padding: 150px 0 0;
}
#governance h3 {
font-size: 2.6rem;
line-height: 1;
color: #086DB0;
margin: 0 0 30px;
}

#governance p.data{ font-size: 1.1rem; margin-bottom: 10px; text-align: right; }

#governance .concept {
margin-bottom: 80px;
}
#governance .concept p a {
position: relative;
display: inline-block;
color: #086DB0;
font-weight: 700;
line-height: 1.2;
border-bottom: 1px solid;
}
#governance .concept p .icon {
display: inline-block;
width: 16px;
margin-left: 5px;
}

#governance .structure {
margin-bottom: 80px;
}
#governance .structure .flex_wrap {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}
#governance .structure dl {
width: 40%;
display: flex;
flex-wrap: wrap;
}
#governance .structure dl dt {
width: 120px;
background: #D6EFF7;
padding: 10px;
box-sizing: border-box;
margin-bottom: 5px;
}
#governance .structure dl dd {
width: calc(100% - 120px);
background: #F3F5F5;
padding: 10px;
box-sizing: border-box;
text-align: right;
margin-bottom: 5px;
}
#governance .structure ul.graph {
width: 57%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#governance .structure ul.graph li {
width: 33%;
position: relative;
text-align: center;
}
#governance .structure ul.graph li span {
position: absolute;
top: 60px;
right: 0;
left: 0;
color: #086DB0;
font-size: 2rem;
font-weight: 700;
line-height: 1;
}
#governance .structure ul.graph li:nth-child(3) span {
top: 50px;
}
#governance .structure ul.graph li span strong {
font-size: 3.5rem;
}
#governance .structure ul.graph li h5 {
color: #086DB0;
font-size: 1.7rem;
font-weight: 700;
line-height: 1.4;
}
#governance .structure ul.graph li p {
font-size: 1.2rem;
letter-spacing: 0;
}
#governance .structure ul.graph li .circle {
transform: rotate(-90deg);
}
#governance .structure ul.graph li .circle circle {
fill: none;
stroke-width: 7;
}
#governance .structure ul.graph li:nth-child(3) .circle {
background: #D6EFF7;
border-radius: 25rem;
margin: 6px;
}
/* 1本目 40% */
#governance .structure ul.graph li .circle .seg1 {
stroke: #086DB0;
stroke-dasharray: 40 60;
stroke-dashoffset: 0;
}
/* 2本目 60% */
#governance .structure ul.graph li .circle .seg2 {
stroke: #D6EFF7;
stroke-dasharray: 60 40;
stroke-dashoffset: -40;
}
/* 1本目 90% */
#governance .structure ul.graph li:nth-child(2) .circle .seg1 {
stroke: #D6EFF7;
stroke-dasharray: 90 10;
stroke-dashoffset: 0;
}
/* 2本目 10% */
#governance .structure ul.graph li:nth-child(2) .circle .seg2 {
stroke: #086DB0;
stroke-dasharray: 10 90;
stroke-dashoffset: -90;
}
/* 1本目 100% */
#governance .structure ul.graph li:nth-child(3) .circle .seg1 {
stroke: #D6EFF7;
stroke-dasharray: 100 0;
stroke-dashoffset: 0;
}
#governance .chart_box {
margin-top: 60px;
}
#governance .chart_box h5 {
font-size: 1.8rem;
font-weight: bold;
line-height: 0;
}
#governance .chart_box p {
font-size: 1.1rem;
margin-bottom: 10px;
text-align: right;
}
#governance .chart_box .img {
padding: 50px;
box-sizing: border-box;
background: linear-gradient(281.4deg, rgba(201, 218, 255, 0.2) 22.31%, rgba(89, 189, 255, 0.2) 81.59%);
background-blend-mode: multiply;
border-radius: 10px;
margin: 0 0 0;
}
#governance .link h5 {
position: relative;
font-size: 17px;
font-weight: bold;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#governance .link h5::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#governance .link ul {
margin-left: 20px;
}
#governance .link ul li {
margin: 0 0 5px;
}
#governance .link ul li:last-child {
margin: 0;
}
#governance .link ul li a {
color: #086DB0;
transition: .5s;
}

#governance .link ul li a:hover {
text-decoration: underline;
}



/*事業概要
---------------------------------------------*/
#business {
position: relative;
padding: 150px 0 0;
}
#business .ttl_c {
font-size: 2.6rem;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}
#business .red_txt {
text-align: center;
margin: 0 0 60px;
}
#business .hed_btn {
position: relative;
width: 1000px;
margin: 0 auto 80px;
border-radius: 1.2rem;
background: #FFF;
box-shadow: 0 0 15px rgba(0, 0, 0, .1);
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#business .hed_btn::before {
content: "";
position: absolute;
top: 16px;
left: 50%;
width: 1px;
height: 50px;
background: #D5D5D5;
}
#business .hed_btn li {
width: 50%;
text-align: center;
}
#business .hed_btn li a {
display: block;
padding: 20px;
box-sizing: border-box;
font-weight: bold;
font-size: 16px;
line-height: 1;
}
#business .hed_btn li a span {
display: block;
width: 12px;
margin: 10px auto 0;
}
#business .hed_btn li a:hover {
color: #086DB0;
}
#business .ttl_c {
font-size: 26px;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 60px;
}
#business .ttl_c2 {
font-size: 20px;
line-height: 1;
text-align: center;
margin: 0 0 60px;
}
#business .list {
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 100px;
}
#business .list li {
width: calc(33.333% - 1px);
border-right: 1px solid #D5D5D5;
border-bottom: 1px solid #D5D5D5;
padding: 50px 20px;
box-sizing: border-box;
}
#business .list li:nth-child(3n) {
border-right: none;
}
#business .list li:nth-child(4), #business .list li:nth-child(5), #business .list li:nth-child(6) {
border-bottom: none;
}
#business .list li .illust {
text-align: center;
margin: 0 auto 30px;
}
#business .list li .illust img {
width: auto;
height: 95px;
}
#business .list li .sub_ttl {
font-weight: bold;
font-size: 15px;
line-height: 1;
text-align: center;
margin-bottom: 20px;
}
#business .list li .sub_txt {
font-size: 58px;
font-weight: bold;
font-family: "Inter", "Noto Sans JP", sans-serif;
line-height: 1;
color: #086DB0;
text-align: center;
}
#business .list li .sub_txt span {
font-size: 32px;
}
#business .list li .sub_txt2 {
font-size: 12px;
font-weight: bold;
text-align: center;
line-height: 1;
margin-top: 20px;
}
#business .list2 {
width: 100%;
}
#business .list2 li {
width: 100%;
margin-bottom: 80px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#business .list2 li:last-child {
margin-bottom: 0;
}
#business .list2 li h4 {
width: 100%;
display: flex;
align-items: center;
font-size: 22px;
line-height: 1;
margin: 0 0 20px;
}
#business .list2 li h4 span {
margin-right: 15px;
}
#business .list2 li h4 span img {
width: auto;
height: 40px;
}
#business .list2 li .img {
width: 32.5%;
}
#business .list2 li .txt_box {
width: 63%;
display: flex;
flex-direction: column;
justify-content: space-between;
height: 200px;
}
#business .list2 li .txt_box .txt {
font-size: 15px;
margin-bottom: 20px;
}
#business .list2 li .txt_box .gr_box {
width: 100%;
position: relative;
}
#business .list2 li .txt_box .gr_box h5 {
font-size: 15px;
font-weight: bold;
line-height: 1;
margin-bottom: 5px;
}
#business .list2 li .txt_box .gr_box .gr_list {
position: relative;
}
#business .list2 li .txt_box .gr_box .gr_list li {
display: inline-block;
margin: 0 5px 5px 0;
color: #FFF;
font-size: 13px;
font-weight: bold;
line-height: 1;
padding: 5px 10px;
border-radius: 50rem;
background: #909090;
width: auto;
}



/*ディスクロージャーポリシー
---------------------------------------------*/
#disclosure {
position: relative;
padding: 150px 0 0;
}
#disclosure h3 {
font-size: 2.6rem;
line-height: 1;
color: #086DB0;
margin: 0 0 30px;
}
#disclosure .policy {
margin-bottom: 80px;
}
#disclosure .policy li {
margin-bottom: 40px;
}
#disclosure .policy li:last-child {
margin-bottom: 0;
}
#disclosure .policy li h4 {
font-size: 18px;
line-height: 1;
font-weight: bold;
color: #086DB0;
margin: 0 0 10px;
}
#disclosure .policy li h4 span {
font-size: 48px;
font-weight: 200;
margin-right: 5px;
}
#disclosure .disclaimer p {
margin-bottom: 20px;
letter-spacing: 0px;
}
#disclosure .disclaimer p:last-child {
margin-bottom: 0;
}



/*財務諸表
---------------------------------------------*/
#finance {
position: relative;
padding: 150px 0 0;
}

#finance .btn_download{
border:2px solid #086DB0;
border-radius: 1rem;
margin: 0 0 70px;
}

#finance .btn_download a{
display:flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
padding: 15px;
box-sizing: border-box;
color: #086DB0;
transition: .5s;
filter:drop-shadow(0px 0px 15px rgba(0, 0, 0, 0.1));
}

#finance .btn_download a:hover{
background: #086DB0;
color: #FFF;
}

#finance .btn_download a .txt{
width: calc(100% - 120px);
font-weight: bold;
line-height: 1;
font-size: 15px;
}

#finance .btn_download a .data_icon{
width: 120px;
display:flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

#finance .btn_download a .data_icon .data{
text-align: right;
font-weight: bold;
}

#finance .btn_download a .data_icon .icon{
width: 18px;
transition: .5s;
}

#finance .btn_download a:hover .icon{
filter: brightness(0) invert(1);
}

#finance .block{
position: relative;
margin: 0 0 80px;
}

#finance .block:last-child{
margin-bottom: 0;
}

#finance .ttl2 {
font-size: 26px;
text-align: center;
line-height: 1;
color: #086DB0;
margin: 0 0 40px;
}

#finance .ttl2 span {
display: block;
font-size: 15px;
margin-top: 10px;
}

#finance .s_txt2{
text-align: right;
font-size: 12px;
margin-bottom: 5px;
}

#finance .table01{
width: 100%;
border-top: 1px solid #D5D5D5;
border-right: 1px solid #D5D5D5;
font-size: 15px;
line-height: 1;
}

#finance .table01 th{
border-left: 1px solid #D5D5D5;
border-bottom: 1px solid #D5D5D5;
background: #086DB0;
padding: 10px;
box-sizing: border-box;
color: #FFF;
position: relative;
}

#finance .table01 th.s_txt{
font-size: 13px;
}

#finance .table01 td{
border-left: 1px solid #D5D5D5;
border-bottom: 1px solid #D5D5D5;
padding: 10px;
box-sizing: border-box;
position: relative;
text-align: right;
vertical-align: middle;
}

#finance .table01 td.txt_left{
text-align: left;
line-height: 1.4;
}

#finance .table01 td.txt_bb{
color: #086DB0;
font-weight: bold;
}

#finance .figure_img{
position: relative;
padding-top: 20px;
box-sizing: border-box;
}


#finance .figure_img .data{
position: absolute;
top: 0;
right: 0;
font-size: 9px;
}


#finance .figure_img .data2{
position: absolute;
top: 0;
left: 0;
font-size: 9px;
}

#finance .link h5 {
position: relative;
font-size: 17px;
font-weight: bold;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#finance .link h5::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#finance .link ul {
margin-left: 20px;
}
#finance .link ul li {
margin: 0 0 5px;
}
#finance .link ul li:last-child {
margin: 0;
}
#finance .link ul li a {
color: #086DB0;
transition: .5s;
}

#finance .link ul li a:hover {
text-decoration: underline;
}



/*財務・業績ハイライト
---------------------------------------------*/
#finance .box {
position: relative;
background: #fff;
box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.1);
padding: 40px;
}
#finance .box .data2 { position: absolute; top: 10px; left: 10px; font-size: 9px; }
#finance .box ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#finance .box ul li { width: 47%; margin-bottom: 30px; }
#finance .box ul li:nth-child(3),
#finance .box ul li:nth-child(4) { margin-bottom: 0; }
#finance .box ul li h4 { font-weight: 700; text-align: center; margin-bottom: 10px; }

#finance ul.flex_wrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
#finance ul.flex_wrap li {
position: relative;
width: 32%;
padding: 20px;
box-sizing: border-box;
box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.1);
}
#finance ul.flex_wrap li .data2 { position: absolute; top: 25px; left: 10px; font-size: 9px; }
#finance ul.flex_wrap li h4 { font-weight: 700; text-align: center; margin-bottom: 10px; }



/*IRライブラリ
---------------------------------------------*/
#library {
position: relative;
padding: 150px 0 0;
}
#library .ttl2 {
font-size: 26px;
text-align: center;
color: #086DB0;
margin: 0 0 40px;
}
#library .sub_ttl_box {
margin: 0 0 25px;
}
#library .sub_ttl_box .data {
text-align: right;
font-size: 12px;
}
#library .alink_list {
margin: 0 0 30px;
}
#library .alink_list li {
border-bottom: 1px solid #086DB0;
}
#library .alink_list li:first-child {
border-top: 1px solid #086DB0;
}
#library .alink_list li a {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
transition: .5s;
padding: 10px;
box-sizing: border-box;
font-size: 15px;
color: #086DB0;
}
#library .alink_list li a .txt {
width: calc(100% - 25px);
}
#library .alink_list li a .icon {
width: 20px;
}
#library .alink_list li a:hover {
background: #086DB0;
}
#library .alink_list li a:hover .txt {
color: #FFF;
}
#library .alink_list li a:hover .icon {
filter: brightness(0) invert(1);
}
#library .btn_download {
border: 2px solid #086DB0;
border-radius: 1rem;
margin: 0 0 70px;
}
#library .btn_download a {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
padding: 15px;
box-sizing: border-box;
color: #086DB0;
transition: .5s;
}
#library .btn_download a:hover {
background: #086DB0;
color: #FFF;
}
#library .btn_download a .txt {
width: calc(100% - 100px);
font-weight: bold;
line-height: 1;
font-size: 15px;
}
#library .btn_download a .data_icon {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}
#library .btn_download a .data_icon .data {
text-align: right;
font-weight: bold;
margin-right: 15px;
}
#library .btn_download a .data_icon .icon {
width: 18px;
transition: .5s;
}
#library .btn_download a:hover .icon {
filter: brightness(0) invert(1);
}
#library .library_ct_btn_list {
margin:0;
}
#library .ct_btn_list {
display: flex;
flex-wrap: wrap;
margin: 0;
}
#library .ct_btn_list li {
width: 31.33%;
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 10px;
margin-right: 2%;
margin-bottom: 2%;
}
#library .ct_btn_list li:nth-child(3n) {
margin-right: 0;
}
#library .ct_btn_list li a {
position: relative;
display: flex;
align-items: center;
padding: 0 25px;
box-sizing: border-box;
background: #FFF;
border-radius: 10px;
font-weight: bold;
transition: .5s;
line-height: 1.4;
height: 80px;
}
#library .ct_btn_list li a span {
position: absolute;
top: 32%;
right: 5%;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
margin: 0 0 4px 10px;
background: #086DB0;
border-radius: 50%;
box-sizing: content-box;
}
#library .ct_btn_list li a span::before {
content: '';
width: 0.4em;
height: 0.4em;
border: 0.1em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}
#library .ct_btn_list li a:hover {
background: #086DB0;
color: #FFF;
}
#library .ct_btn_list li a:hover span {
position: absolute;
top: 32%;
right: 5%;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
margin: 0 0 4px 10px;
background: #FFF;
border-radius: 50%;
box-sizing: content-box;
}
#library .ct_btn_list li a:hover span::before {
content: '';
width: 0.4em;
height: 0.4em;
border: 0.1em solid #086DB0;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}
#library .s_ttl {
font-size: 18px;
line-height: 1;
margin: 0 0 20px;
}
#library .txt2 {
margin: 0 0 10px;
}
#library .txt2 a {
color: #086DB0;
text-decoration: underline;
}
#library .txt2 a:hover {
text-decoration: none;
}
#library .ate_list {}
#library .ate_list li {
position: relative;
font-size: 12px;
line-height: 1;
margin-bottom: 10px;
padding-left: 15px;
}
#library .ate_list li a {
color: #086DB0;
text-decoration: underline;
}
#library .ate_list li a:hover {
text-decoration: none;
}
#library .ate_list li:last-child {
margin-bottom: 0;
}
#library .ate_list li::before {
content: "※";
position: absolute;
top: 0;
left: 0;
font-size: 12px;
line-height: 1;
}
#library .c_ttl {
font-weight: bold;
font-size: 18px;
line-height: 1;
margin: 0 0 20px;
}



/*決算短信
---------------------------------------------*/
/* アコーディオンリスト全体を囲うタグ */
#library .accordion_wrapper {
margin: 0 0 80px;
}
/* 個々のアコーディオンリストを囲うタグ */
#library .accordion {
width: 100%;
margin: 0 auto;
border-top: 1px solid #086DB0;
}
#library .accordion:last-child {
border-bottom: none;
}
#library .accordion:last-child {
border-bottom: 1px solid #086DB0;
}
/* アコーディオンのタイトル・内容共通 */
#library .accordion_header, #library .accordion_content {
display: flex;
align-items: center;
padding: 15px 20px;
width: 100%;
box-sizing: border-box;
}
/* アコーディオンのタイトル */
#library .accordion_header {
cursor: pointer;
background-color: #FFF;
color: #086DB0;
position: relative;
font-size: 18px;
font-weight: bold;
}
#library .accordion_header:last-child {
border-bottom: 1px solid #086DB0;
}
/* アコーディオンの内容 */
#library .accordion_content {
display: none;
}
/* タイトル横のプラスマーク縦線 */
#library .accordion_header::before {
position: absolute;
content: '';
top: 50%;
right: 25px;
width: 20px;
height: 2px;
background-color: #086DB0;
transform: rotate(90deg);
transition: all .3s ease-in-out;
}
/* タイトル横のプラスマーク横線 */
#library .accordion_header::after {
position: absolute;
content: '';
top: 50%;
right: 25px;
width: 20px;
height: 2px;
background-color: #086DB0;
transition: all .3s ease-in-out;
}
/* アコーディオンが開いたとき縦線の変化 */
#library .accordion_header.open::before {
transform: rotate(180deg);
}
/* アコーディオンが開いたとき横線の変化 */
#library .accordion_header.open::after {
opacity: 0;
}
#library .accordion_header.open {
border-bottom: 1px solid #086DB0;
}
#library .accordion_content .link_list {
width: 90%;
margin: 0 auto;
}
#library .accordion_content .link_list li {
border-bottom: 1px solid #D5D5D5;
padding: 15px 0;
box-sizing: border-box;
}
#library .accordion_content .link_list li:last-child {
border-bottom: none;
}
#library .accordion_content .group {
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
font-size: 15px;
border-bottom: 1px solid #D5D5D5;
padding: 20px 0;
box-sizing: border-box;
}
#library .accordion_content .group:last-child {
border-bottom: none;
}
#library .accordion_content .group dt {
font-weight: bold;
width: 140px;
}
#library .accordion_content .group dd {
width: calc(100% - 140px);
font-weight: normal;
}
#library .accordion_content .group dd a {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}
#library .accordion_content .group dd a .txt {
color: #086DB0;
}
#library .accordion_content .group dd .txt {}
#library .accordion_content .group dd .icon {
width: 16px;
}
#library .accordion_content .group dd .icon img {
width: 100%;
height: auto;
}
#library .accordion_content .txt a {
color: #086DB0;
}



/*中期経営計画・ガバナンス資料
---------------------------------------------*/
#library .management-data_hed {
position: relative;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 60px;
}
#library .management-data_hed .img {
width: 320px;
}
#library .management-data_hed .img img {
width: 100%;
height: auto;
box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
}
#library .management-data_hed .txt_box {
position: relative;
width: calc(100% - 400px);
}
#library .link_ttl {
position: relative;
font-weight: bold;
font-size: 22px;
line-height: 1;
margin: 0 0 30px;
padding-left: 18px;
box-sizing: border-box;
color: #086DB0;
}
#library .link_ttl:before {
content: "";
width: 8px;
height: 8px;
border: 0;
border-top: solid 2px #086DB0;
border-right: solid 2px #086DB0;
transform: rotate(45deg);
position: absolute;
top: 7px;
left: 0;
margin: auto;
}

#library .link_ttl a{
color: #086DB0;
transition: .75s;
}
#library .link_ttl a:hover{
opacity: .5;
}


#library .management-data_hed .txt_box .backnumber_ttl {
position: relative;
font-size: 17px;
font-weight: bold;
line-height: 1;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#library .management-data_hed .txt_box .backnumber_ttl::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#library .link_list {
margin: 0 0 0 17px;
padding: 0;
}
#library .link_list li {
margin: 0 0 5px;
}
#library .link_list li a {
color: #086DB0;
transition: .5s;
}
#library .link_list li a:hover {
opacity: .75;
}
#library .link_list li a img {
width: 16px;
margin-left: 5px;
}
#library .management-data_middle {
position: relative;
margin: 0 0 60px;
}



/*株式情報
---------------------------------------------*/
#stock {
position: relative;
padding: 150px 0 0;
}
#stock .hed_btn {
position: relative;
width: 1000px;
margin: 0 auto 80px;
border-radius: 1.2rem;
background: #FFF;
box-shadow: 0 0 15px rgba(0, 0, 0, .1);
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#stock .hed_btn li {
position: relative;
width: 20%;
text-align: center;
}
#stock .hed_btn li::before {
content: "";
position: absolute;
top: 16px;
right: 0;
width: 1px;
height: 50px;
background: #D5D5D5;
}
#stock .hed_btn li:last-child::before {
content: none;
}
#stock .hed_btn li a {
display: block;
padding: 20px;
box-sizing: border-box;
font-weight: bold;
font-size: 16px;
line-height: 1;
}
#stock .hed_btn li a span {
display: block;
width: 12px;
margin: 10px auto 0;
}
#stock .hed_btn li a:hover {
color: #086DB0;
}
#stock .ttl_c {
font-size: 26px;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 60px;
}
#stock .block {
position: relative;
margin: 0 0 100px;
}
#stock .block:last-child {
margin-bottom: 0;
}
#stock .gm_list {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0;
}
#stock .gm_list .gm_list_box {
position: relative;
width: 46%;
margin-bottom: 4%;
}
#stock .backnumber_ttl {
position: relative;
font-size: 17px;
font-weight: bold;
line-height: 1;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#stock .backnumber_ttl::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#stock .backnumber_ttl span {
display: inline-block;
padding: 2px 6px;
box-sizing: border-box;
border-radius: .4rem;
background: #858585;
font-size: .89rem;
line-height: 1;
color: #FFF;
margin-left: 5px;
}
#stock .backnumber_ttl a {
color: #086DB0;
text-decoration: underline;
}
#stock .backnumber_ttl a img {
width: 16px;
margin-left: 5px;
}
#stock .link_list {
margin: 0 0 0 17px;
padding: 0;
}
#stock .link_list li {
margin: 0 0 5px;
}
#stock .link_list li a {
color: #086DB0;
transition: .5s;
}
#stock .link_list li a:hover {
opacity: .75;
}
#stock .link_list li a img {
width: 16px;
margin-left: 5px;
}
#stock .btn {
text-align: center;
}
#stock .btn button {
position: relative;
display: inline-block;
background: #086DB0;
font-size: 1.8rem;
font-weight: 700;
color: #FFF;
padding: 10px 100px 10px 30px;
border-radius: 25rem;
transition: all 0.3s;
border: none;
}
#stock .btn button:hover {
opacity: 0.8;
transition: all 0.3s;
}
#stock .btn button::before {
content: '';
position: absolute;
top: 40%;
right: 25px;
width: 0.6em;
height: 0.6em;
border: 0.2em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(45deg);
}
#stock .table01 {
width: 100%;
margin: 0 0 30px;
border-top: 1px solid #D5D5D5;
border-right: 1px solid #D5D5D5;
font-size: 14px;
}
#stock .table01 th {
width: 220px;
padding: 10px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
background: #D6EFF7;
font-weight: normal;
vertical-align: middle;
}
#stock .table01 td {
padding: 10px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
vertical-align: middle;
}
#stock .c_box {
border: 1px solid #086DB0;
padding: 10px;
box-sizing: border-box;
font-size: 12px;
}
#stock .c_ttl {
font-size: 18px;
line-height: 1;
font-weight: bold;
color: #086DB0;
margin: 0 0 20px;
}
#stock .c_ttl2 {
font-size: 18px;
line-height: 1;
font-weight: bold;
margin: 0 0 20px;
}
#stock .c_ttl span, #stock .c_ttl2 span {
font-size: 15px;
}
#stock .dec_list {
list-style-type: decimal;
margin-left: 20px;
margin-bottom: 20px;
}
#stock .box {
position: relative;
margin: 0 0 60px;
}
#stock .box:last-child {
margin-bottom: 0;
}
#stock .table02 {
width: 100%;
margin: 0 0 20px;
border-top: 1px solid #D5D5D5;
border-right: 1px solid #D5D5D5;
font-size: 14px;
}
#stock .table02 th {
padding: 10px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
background: #086DB0;
font-weight: bold;
color: #FFF;
vertical-align: middle;
}
#stock .table02 td {
padding: 10px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
vertical-align: middle;
}
#stock .table02 td.t_center {
text-align: center;
}
#stock .s_dl {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
font-size: 11px;
margin: 0 0 60px;
}
#stock .s_dl dt {
width: 30px;
white-space: nowrap;
}
#stock .s_dl dd {
width: calc(100% - 30px);
}
#stock .list_2 {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#stock .list_2 li {
width: 46%;
}
#stock .list_2 li .img {
margin: 0 0 20px;
}
#stock .list_2 li .s_txt {
font-size: 10px;
}
#stock .txt3 {
margin: 0 0 30px;
}
#stock .txt3 span {
color: #D1060A;
}

#stock .txt3 .icon{
width: 14px;
display: inline-block;
margin-left: 3px;
}

#stock .txt3 a {
color: #086DB0;
text-decoration: underline;
}
#stock .list_2c {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#stock .list_2c .box {
width: 48%;
border: 1px solid #086DB0;
padding: 25px;
box-sizing: border-box;
margin: 0;
}
#stock .list_2c .box h5 {
text-align: center;
font-size: 16px;
}
#stock .list_2c .box .img {
margin: 0 auto 20px;
}
#stock .list_2c .box .txt {
font-size: 12px;
margin: 0 0 20px;
}
#stock .list_2c .sub_list {
font-size: 12px;
list-style-type: disc;
margin-left: 10px;
}
#stock .list_2c .sub_list a {
text-decoration: underline;
color: #086DB0;
}
#stock .list_2c .sub_list a img {
width: 12px;
margin: 0 5px;
}
#stock .ttl4 {
margin: 0 0 10px;
font-size: 1.5rem;
}
#stock .ttl4 a {
color: #086DB0;
text-decoration: underline;
}
#stock .ttl4 .icon {
width: 14px;
display: inline-block;
}
#stock .stock_dl {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
font-size: 12px;
line-height: 1.6;
}
#stock .stock_dl dt {
width: 160px;
padding: 35px 15px;
box-sizing: border-box;
background: #F3F5F5;
text-align: center;
}
#stock .stock_dl dd {
width: calc(100% - 160px);
padding: 15px;
box-sizing: border-box;
}



/*個人投資家のみなさまへ
---------------------------------------------*/
#individual { position: relative; }

#individual .bg_grad_b01{
position: absolute;
top: 120px;
right: -100px;
width: 1000px;
height: 1000px;
border-radius: 50%;
background: linear-gradient(218.29deg, rgba(255, 255, 255, 0.25) 4.64%, rgba(194, 247, 255, 0.25) 22.96%, rgba(118, 200, 255, 0.5) 95.36%);
filter: blur(40px);
transform: rotate(165.73deg);
z-index: -2;
}

#individual .block01{
position: relative;
overflow: hidden;
min-width: 1280px;
margin: 0 auto 80px;
display: flex;
flex-wrap: wrap;
justify-content: flex-end;
flex-direction: row-reverse;
}

#individual .block01 .txt_box{
width:1200px;
position: absolute;
top: 180px;
left: 50%;
margin-left: -600px;
}

#individual .block01 .txt_box .bg_ttl{
font-size: 80px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
}

#individual .block01 .txt_box .ttl01{
font-size: 18px;
font-weight: bold;
line-height: 1;
margin-top: -30px;
margin-bottom: 50px;
}

#individual .block01 .txt_box .red_txt{
font-size: 34px;
font-weight: bold;
line-height: 1.6;
margin: 0 0 35px;
}

#individual .block01 .txt_box .txt{
margin-bottom: 50px;
}

/* スクロールダウンの位置 */
#individual .txt_box .scroll {
position: relative;
writing-mode:vertical-rl;
font-size: 13px;
line-height: 1;
}
/* 線のアニメーション部分 */
#individual .txt_box .scroll::before {
animation: scroll 2s infinite;
background-color: #086DB0;
top:58px;
content: "";
height: 70px;
left: -8px;
right: 0;
margin: auto;
position: absolute;
width: 1px;
}

#individual .red_txt span{
margin-left: -15px;
}

#individual .img{
position: relative;
width: 54%;
margin: 40px 0 0 auto;
z-index: -1;
}

#individual .img img{
width: 100%;
height: auto;
}

#individual .block01_02{
position: relative;
overflow: hidden;
width: 1000px;
margin: 50px auto 80px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#individual .blocblock01_02k02 .txt_box02{
width: 48%;
}

#individual .block01_02 .txt_box02 .bg_ttl{
font-size: 80px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
}

#individual .block01_02 .txt_box02 .red_txt{
position: relative;
font-size: 18px;
font-weight: bold;
line-height: 1;
margin-top: -30px;
margin-bottom: 70px;
}

#individual .block01_02 .txt_box02 .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 0;
width: 70px;
height: 2px;
background: #086DB0;
}

#individual .block01_02 .txt_box02 .red_txt2{
font-size: 22px;
font-weight: bold;
line-height: 1.6;
margin:0 0 25px;
}

#individual .block01_02 .txt_box02 .txt{
margin-bottom: 25px;
}

#individual .block01_02 .txt_box02 .btn {
text-align: left;
}

#individual .block01_02 .txt_box02 .btn a {
position: relative;
display: inline-block;
background: #086DB0;
font-weight: 700;
color: #FFF;
padding: 5px 100px 7px 30px;
border-radius: 25rem;
transition: all 0.3s;
}

#individual .block01_02 .txt_box02 .btn a:hover {
opacity: 0.8;
transition: all 0.3s;
}

#individual .block01_02 .txt_box02 .btn a::before {
content: '';
position: absolute;
top: 40%;
right: 25px;
width: 0.6em;
height: 0.6em;
border: 0.2em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(45deg);
}


#individual .block01_02 .img02{
position: relative;
width: 50%;
}

#individual .block02{
position: relative;
overflow: hidden;
width: 100%;
height: 100%;
background: linear-gradient(270deg, rgba(155, 242, 255, 0.1) 0%, rgba(74, 184, 235, 0.1) 100%);
background-blend-mode: multiply;
padding: 75px 0;
box-sizing: border-box;
}

#individual .block02 .bg_grad_b02{
position: absolute;
width:1000px;
height:1000px;
left: -255px;
bottom:-200px;
border-radius: 50%;
background: linear-gradient(218.29deg, rgba(255, 255, 255, 0.4) 4.64%, rgba(194, 247, 255, 0.4) 36.92%, rgba(118, 200, 255, 0.8) 62.21%);
filter: blur(40px);
}

#individual .block02 .block_inner{
position: relative;
width: 1000px;
margin: 0 auto;
}

#individual .block02 .block_inner .shinkibus_logo{
position: absolute;
top: -50px;
right:-100px;
width: 265px;
}

#individual .block02 .block_inner .bg_ttl{
font-size: 80px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
}

#individual .block02 .block_inner .red_txt{
position: relative;
font-size: 18px;
font-weight: bold;
line-height: 1;
margin-top: -30px;
margin-bottom: 90px;
}

#individual .block02 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 0;
width: 70px;
height: 2px;
background: #086DB0;
}

#individual .block02 .block_inner .graf_list{
position: relative;
z-index: 5;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 80px;
}

#individual .block02 .block_inner .graf_list li{
width: 46%;
}

#individual .block02 .block_inner .graf_list li .sub_ttl{
background: #FFF;
font-size: 18px;
line-height: 1;
padding: 10px;
width: 100%;
border-radius: 50rem;
text-align: center;
margin: 0 0 30px;
}


#individual .block02 .block_inner .list{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#individual .block02 .block_inner .list li{
width:calc(33.333% - 1px);
border-right:1px solid #D5D5D5;
border-bottom:1px solid #D5D5D5;
padding:50px 5px;
box-sizing: border-box;
}

#individual .block02 .block_inner .list li:nth-child(3n){
border-right: none;
}

#individual .block02 .block_inner .list li:nth-child(4),
#individual .block02 .block_inner .list li:nth-child(5),
#individual .block02 .block_inner .list li:nth-child(6){
border-bottom: none;
}

#individual .block02 .block_inner .list li .illust{
text-align: center;
margin: 0 auto 30px;
}

#individual .block02 .block_inner .list li .illust img{
width: auto;
height:95px;
}

#individual .block02 .block_inner .list li .sub_ttl{
font-weight: bold;
font-size: 15px;
line-height: 1;
text-align: center;
margin-bottom: 20px;
}

#individual .block02 .block_inner .list li .sub_txt{
font-size: 58px;
font-weight: bold;
font-family: "Inter","Noto Sans JP", sans-serif;
line-height: 1;
color: #086DB0;
text-align: center;
}

#individual .block02 .block_inner .list li .sub_txt span{
font-size: 32px;
}

#individual .block02 .block_inner .list li .sub_txt2{
font-size: 12px;
font-weight: bold;
text-align: center;
line-height: 1;
margin-top: 20px;
}

#individual .block03{
position: relative;
overflow: hidden;
width: 100%;
padding: 75px 0;
box-sizing: border-box;
}

#individual .block03 .bg_grad_b03{
position: absolute;
width:1000px;
height:1000px;
right:-300px;
bottom:-200px;
border-radius: 50%;
background: linear-gradient(218.29deg, rgba(255, 255, 255, 0.25) 4.64%, rgba(194, 247, 255, 0.25) 22.96%, rgba(118, 200, 255, 0.5) 95.36%);
filter: blur(40px);
transform: rotate(-94.31deg);
}

#individual .block03 .block_inner{
position: relative;
width: 1000px;
margin: 0 auto;
}

#individual .block03 .block_inner .bg_ttl{
font-size: 80px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
}

#individual .block03 .block_inner .red_txt{
position: relative;
font-size: 18px;
font-weight: bold;
line-height: 1;
margin-top: -30px;
margin-bottom: 70px;
}

#individual .block03 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 0;
width: 70px;
height: 2px;
background: #086DB0;
}

#individual .block03 .block_inner .txt{
margin: 0 0 65px;
}

#individual .block03 .block_inner .b_list{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#individual .block03 .block_inner .b_list li{
position: relative;
width: 31%;
margin-bottom: 3.5%;
background: #FFF;
padding: 20px;
box-sizing: border-box;
box-shadow: 0px 0px 15px #D5D5D5;
border-radius:0 20px 20px 20px;
}

#individual .block03 .block_inner .b_list li .c_bg1{
position: absolute;
left:0;
top: 0;
border-top: 17.5px solid #557EC0;
border-right: 17.5px solid transparent;
border-bottom: 17.5px solid transparent;
border-left: 17.5px solid #557EC0;
}

#individual .block03 .block_inner .b_list li .c_bg2{
position: absolute;
left:0;
top: 0;
border-top: 17.5px solid #0093D4;
border-right: 17.5px solid transparent;
border-bottom: 17.5px solid transparent;
border-left: 17.5px solid #0093D4;
}

#individual .block03 .block_inner .b_list li .c_bg3{
position: absolute;
left:0;
top: 0;
border-top: 17.5px solid #9166A9;
border-right: 17.5px solid transparent;
border-bottom: 17.5px solid transparent;
border-left: 17.5px solid #9166A9;
}

#individual .block03 .block_inner .b_list li .c_bg4{
position: absolute;
left:0;
top: 0;
border-top: 17.5px solid #F39939;
border-right: 17.5px solid transparent;
border-bottom: 17.5px solid transparent;
border-left: 17.5px solid #F39939;
}

#individual .block03 .block_inner .b_list li .c_bg5{
position: absolute;
left:0;
top: 0;
border-top: 17.5px solid #00A95F;
border-right: 17.5px solid transparent;
border-bottom: 17.5px solid transparent;
border-left: 17.5px solid #00A95F;
}

#individual .block03 .block_inner .b_list li .c_bg6{
position: absolute;
left:0;
top: 0;
border-top: 17.5px solid #EA5464;
border-right: 17.5px solid transparent;
border-bottom: 17.5px solid transparent;
border-left: 17.5px solid #EA5464;
}

#individual .block03 .block_inner .b_list li h3{
font-size: 18px;
font-weight: bold;
line-height: 1;
text-align: center;
display: flex;
align-items: center;
justify-content: center;
margin: 0 0 20px;
}

#individual .block03 .block_inner .b_list li h3 .icon{
width: 45px;
margin: 0 8px 0 0;
}

#individual .block03 .block_inner .b_list li h3 .ss_txt{
font-size: 12px;
}

#individual .block03 .block_inner .b_list li .b_img{
position: relative;
}

#individual .block03 .block_inner .btn {
text-align: center;
}

#individual .block03 .block_inner .btn a {
position: relative;
display: inline-block;
background: #086DB0;
font-weight: 700;
color: #FFF;
padding: 5px 100px 7px 30px;
border-radius: 25rem;
transition: all 0.3s;
}

#individual .block03 .block_inner .btn a:hover {
opacity: 0.8;
transition: all 0.3s;
}

#individual .block03 .block_inner .btn a::before {
content: '';
position: absolute;
top: 40%;
right: 25px;
width: 0.6em;
height: 0.6em;
border: 0.2em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(45deg);
}


#individual .block04{
position: relative;
padding: 100px 0;
box-sizing: border-box;
overflow: hidden;
background: url("../images/ir/individual/bg_2023.png") bottom center no-repeat;
background-size: 100% auto;
}

#individual .block04::before{
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(270deg, rgba(155, 242, 255, 0.1) 0%, rgba(74, 184, 235, 0.1) 100%);
background-blend-mode: multiply;
z-index: -1;
}

#individual .block04 .block_inner{
width: 1000px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
}

#individual .block04 .block_inner .txtbox { width: 45%; }

#individual .block04 .block_inner .shinkibus_logo {
position: absolute;
top: 80px;
left: 50px;
width: 210px;
}

#individual .block04 .block_inner .red_txt{
position: relative;
font-size: 2.8rem;
font-weight: bold;
margin-bottom: 40px;
padding-left: 20px;
color: #086DB0;
}
#individual .block04 .block_inner .red_txt::before{
content: "";
position: absolute;
top: 0;
left: 0;
width: 3px;
height: 100%;
background: #086DB0;
}

#individual .block04 .block_inner .red_txt2 {
font-size: 22px;
font-weight: bold;
line-height: 1.6;
margin: 0 0 25px;
}

#individual .block04 .block_img { width: 53%; }
#individual .block04 .block_img img { width: 115%; }


#individual .block05{
position: relative;
overflow: hidden;
width: 100%;
padding: 75px 0;
box-sizing: border-box;
}

#individual .block05 .bg_grad_b04{
position: absolute;
width: 1000px;
height: 1000px;
left: -255px;
bottom: -200px;
border-radius: 50%;
background: linear-gradient(218.29deg, rgba(255, 255, 255, 0.4) 4.64%, rgba(194, 247, 255, 0.4) 36.92%, rgba(118, 200, 255, 0.8) 62.21%);
filter: blur(40px);
}

#individual .block05 .block_inner{
position: relative;
width: 1000px;
margin: 0 auto;
}

#individual .block05 .block_inner .bg_ttl{
font-size: 80px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
}

#individual .block05 .block_inner .red_txt{
position: relative;
font-size: 18px;
font-weight: bold;
line-height: 1;
margin-top: -30px;
margin-bottom: 70px;
}

#individual .block05 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 0;
width: 70px;
height: 2px;
background: #086DB0;
}

#individual .block05 .block_inner .red_txt2 {
font-size: 22px;
font-weight: bold;
line-height: 1.6;
margin: 0 0 25px;
}

#individual .block05 .block_inner .txt{
margin: 0;
}

#individual .block05 .flow_img{
width: 1100px;
margin: 0 auto;
position: relative;
}

#individual .block05 .flow_box{
position: relative;
width: 1000px;
margin: 0 auto;
background: #F5FBFF;
border: 2px solid #086DB0;
border-radius: 20px;
padding:35px 30px;
box-sizing: border-box;
}

#individual .block05 .flow_box::before{
content: "";
position: absolute;
top: -76px;
left: 42.7%;
width: 2px;
height: 76px;
background: #086DB0;
}

#individual .block05 .flow_box::after{
content: "";
position: absolute;
top: -76px;
left: 42.4%;
width: 8px;
height: 8px;
border-radius: 50%;
background: #086DB0;
}

#individual .block05 .flow_box .tit_box{
position: absolute;
top: -14px;
left: 30px;
display: inline-block;
background: #086DB0;
font-size: 15px;
font-weight: 500;
line-height: 1;
padding: 5px 15px;
box-sizing: border-box;
border-radius: 50rem;
color: #FFF;
}

#individual .block05 .flow_box .strategy_list{
position: relative;
}

#individual .block05 .flow_box .strategy_list li{
margin-bottom: 30px;
}

#individual .block05 .flow_box .strategy_list li dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

#individual .block05 .flow_box .strategy_list li dl dt{
width: 240px;
height: 100%;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
box-sizing: border-box;
font-weight: bold;
font-size: 18px;
line-height: 1.4;
color: #086DB0;
align-items: center;
}

#individual .block05 .flow_box .strategy_list li dl dt .icon{
width:40px;
margin-right: 15px;
}

#individual .block05 .flow_box .strategy_list li dl dd{
width: calc(100% - 240px);
border-left: 1px solid #086DB0;
padding-left: 20px;
box-sizing: border-box;
}

#individual .block05 .flow_box .strategy_list li dl dd ol{
list-style-type: disc;
margin-left: 20px;
font-size: 15px;
line-height: 1.4;
}

#individual .block05 .flow_box .strategy_list li dl dd ol li{
margin-bottom: 5px;
}

#individual .block05 .flow_box .strategy_list li:last-child{
margin-bottom:0;
}

#individual .block05 .flow_box .strategy_list li dl dd ol li:last-child{
margin-bottom:0;
}

#individual .block06{
position: relative;
overflow: hidden;
background: #F2FCFE;
width: 100%;
padding: 75px 0;
box-sizing: border-box;
}

#individual .block06 .block_inner{
position: relative;
width: 1000px;
margin: 0 auto;
}

#individual .block06 .block_inner .bg_ttl{
font-size: 80px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
}

#individual .block06 .block_inner .red_txt{
position: relative;
font-size: 18px;
font-weight: bold;
line-height: 1;
margin-top: -30px;
margin-bottom: 90px;
}
#individual .block06 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 0;
width: 70px;
height: 2px;
background: #086DB0;
}

#individual .block06 .block_inner .list_2c {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#individual .block06 .block_inner .list_2c .box {
width: 47%;
padding: 35px;
box-sizing: border-box;
margin: 0;
background: #FFFFFF;
box-shadow: 0px 0px 15px #D5D5D5;
border-radius: 20px;
}

#individual .block06 .block_inner .list_2c .box h5 {
text-align: center;
font-size: 18px;
line-height: 1;
background: #086DB0;
color: #FFF;
text-align: center;
padding: 5px;
border-radius: 50rem;
}

#individual .block06 .block_inner .list_2c .box .img {
width: 100%;
margin: 0 auto 20px;
z-index: 5;
}

#individual .block06 .block_inner .list_2c .box .txt {
font-size: 15px;
margin: 0 0 20px;
}

#individual .block06 .block_inner .list_2c .box .sub_list {
font-size: 15px;
list-style-type: disc;
margin-left: 10px;
}

#individual .block06 .block_inner .list_2c .box .sub_list a {
color: #086DB0;
}

#individual .block06 .block_inner .list_2c .box .sub_list a img {
width: 16px;
margin: 0 5px;
}

#individual .backnumber_ttl {
position: relative;
font-size: 17px;
font-weight: bold;
line-height: 1;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}

#individual .backnumber_ttl::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#individual .backnumber_ttl a {
color: #086DB0;
}

#individual .backnumber_ttl a img {
width: 16px;
margin-left: 5px;
}

#individual .link_list {
margin: 0 0 0 17px;
padding: 0;
}

#individual .link_list li {
margin: 0 0 5px;
}

#individual .link_list li a {
color: #086DB0;
transition: .5s;
}

#individual .link_list li a:hover {
opacity: .75;
}

#individual .link_list li a img {
width: 16px;
margin-left: 5px;
}

#individual .block07{
position: relative;
overflow: hidden;
width: 100%;
padding: 75px 0;
box-sizing: border-box;
}

#individual .block07 .block_inner{
position: relative;
width: 1000px;
margin: 0 auto;
}

#individual .block07 .block_inner .bg_ttl{
font-size: 80px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
}

#individual .block07 .block_inner .red_txt{
position: relative;
font-size: 18px;
font-weight: bold;
line-height: 1;
margin-top: -30px;
margin-bottom: 90px;
}
#individual .block07 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 0;
width: 70px;
height: 2px;
background: #086DB0;
}

#individual .block07 .ct_btn_list {
display: flex;
flex-wrap: wrap;
margin: 0;
}
#individual .block07 .ct_btn_list li {
width: 31.33%;
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 10px;
margin-right: 2%;
margin-bottom: 2%;
}

#individual .block07 .ct_btn_list li:nth-child(3n) {
margin-right: 0;
}

#individual .block07 .ct_btn_list li a {
position: relative;
display: flex;
align-items: center;
padding: 0 25px;
box-sizing: border-box;
background: #FFF;
border-radius: 10px;
font-weight: bold;
transition: .5s;
line-height: 1.4;
height: 80px;
}

#individual .block07 .ct_btn_list li a span {
position: absolute;
top: 32%;
right: 5%;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
margin: 0 0 4px 10px;
background: #086DB0;
border-radius: 50%;
box-sizing: content-box;
}

#individual .block07 .ct_btn_list li a span::before {
content: '';
width: 0.4em;
height: 0.4em;
border: 0.1em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}

#individual .block07 .ct_btn_list li a:hover {
background: #086DB0;
color: #FFF;
}

#individual .block07 .ct_btn_list li a:hover span {
position: absolute;
top: 32%;
right: 5%;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
margin: 0 0 4px 10px;
background: #FFF;
border-radius: 50%;
box-sizing: content-box;
}

#individual .block07 .ct_btn_list li a:hover span::before {
content: '';
width: 0.4em;
height: 0.4em;
border: 0.1em solid #086DB0;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}



/*IRカレンダー
---------------------------------------------*/
#calendar {
position: relative;
padding: 150px 0 0;
}
#calendar h3 {
font-size: 26px;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 60px;
}
#calendar .schedule {
margin-bottom: 100px;
}
#calendar .schedule:nth-child(2) {
margin-bottom: 0;
}
#calendar .schedule p {
font-weight: 700;
text-align: center;
}
#calendar .schedule .table01 {
width: 100%;
margin: 0 0 50px;
}
#calendar .schedule .table01 tr {
border-top: 1px solid #086DB0;
}
#calendar .schedule .table01 tr:last-child {
border-bottom: 1px solid #086DB0;
}
#calendar .schedule .table01 th {
width: 15%;
padding: 12px;
box-sizing: border-box;
font-size: 1.8rem;
font-weight: 700;
vertical-align: top;
color: #086DB0;
}
#calendar .schedule .table01 td {
font-size: 1.8rem;
padding: 12px;
box-sizing: border-box;
}



/*IRに関するお問い合わせ
---------------------------------------------*/
#contact { position: relative; padding: 150px 0 100px; }

#contact .read {  }
#contact .read a { color: #086DB0; border-bottom: 1px solid; }

#contact .flex_wrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
#contact .flex_wrap .box {
width: 48%;
background: #fff;
padding: 40px;
box-sizing: border-box;
border-radius: 50px;
text-align: center;
}
#contact .flex_wrap .box h3 {
font-size: 26px;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 40px;
}
#contact .flex_wrap .box .btn {
display: inline-block;
background: #086DB0;
border-radius: 10px;
color: #FFF;
font-size: 1.8rem;
font-weight: 700;
padding: 10px 50px;
text-align: center;
text-decoration: none;
transition: 0.5s;
}
#contact .flex_wrap .box .btn:hover { opacity: .75; }

#contact .flex_wrap .box h4 {
display: flex;
align-items: center;
justify-content: center;
font-size: 4rem;
line-height: 1;
margin-bottom: 20px;
}
#contact .flex_wrap .box h4 span { margin-right: 8px; }
#contact .flex_wrap .box h4 a { margin-bottom: 8px; }
#contact .flex_wrap .box p { font-weight: 700; }


#form { position: relative; padding: 150px 0 0; display: inline-block; }

#form p { text-align: center; }
#form p span { display: block; color: #D1060A; font-weight: 700; }

#form form { margin-top: 50px; }
#form .com_table { width:100%; margin: 0 auto 30px; }
#form .com_table th {
position: relative;
width: 25%;
font-size: 1.7rem;
text-align: left;
vertical-align: top;
padding-bottom: 20px;
}
#form .com_table th::before {
content: '●';
color: #086DB0;
}
#form .com_table td { padding-bottom: 20px; }
#form .com_table td p { text-align: left; }
#form .com_table td p span { font-size: 1.2rem; color: #000; }
#form .errors{
color: #D1060A;
font-size: 1.2rem;
font-weight: 700;
}

#form input[type="text"],
#form input[type="date"],
#form textarea {
padding: 8px;
border: 1px solid #086DB0;
width: 100%;
box-sizing: border-box;
}

#form .btn_flex { display: flex; justify-content: center; }

#form button[type="submit"],
#form input[type="submit"] {
width: 200px;
margin: 0 10px;
background:  #086DB0;
border:  #086DB0 1px solid;
border-radius: 10px;
color: #FFF;
font-weight: 700;
padding: 15px 50px;
cursor: pointer;
transition: 0.5s;
}

#form button[type="submit"]:hover,
#form input[type="submit"]:hover { opacity: .75; }

#form .submit:hover {
background: #fff;
border: #086DB0 1px solid;
color: #086DB0;
}

#form .btn_back {
width: 200px;
margin: 0 10px;
background:  #fff;
border:  #086DB0 1px solid;
border-radius: 10px;
color: #086DB0;
font-weight: 700;
padding: 15px 50px;
cursor: pointer;
transition: 0.5s;
}
#form .btn_back:hover { opacity: .75; }


#form h3 {
font-size: 2.6rem;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}

#form .btn_top a{
width: 200px;
margin: 30px auto 0;
background:  #086DB0;
border:  #086DB0 1px solid;
border-radius: 25rem;
color: #FFF;
font-weight: 700;
padding: 5px 10px;
cursor: pointer;
transition: 0.5s;
display: inline-block;
box-sizing: border-box;
}
#form .btn_top a:hover { opacity: .75; }

#form .mark {
width: 60px;
position: absolute;
bottom: 20px;
right: -80px;
}



/*IRに関するよくあるご質問
---------------------------------------------*/
#faq {
position: relative;
padding: 150px 0 0;
}
#faq h3 {
font-size: 26px;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 60px;
}
#faq .box {
border-bottom: 1px solid #086DB0;
padding-bottom: 60px;
margin-bottom: 80px;
}
#faq .box:last-child {
border-bottom: none;
padding-bottom: 0;
margin-bottom: 0;
}
#faq dl {
padding: 30px;
border-radius: 10px;
box-sizing: border-box;
margin-bottom: 40px;
box-shadow: 0px 0px 15px rgba(8, 109, 176, 0.3);
}
#faq dl:last-child {
margin-bottom: 0;
}
#faq dl dt {
position: relative;
font-size: 1.8rem;
font-weight: 700;
color: #086DB0;
padding: 0 60px 0 50px;
}
#faq dl dt::before {
content: 'Q.';
font-size: 3.5rem;
color: #086DB0;
position: absolute;
left: 0;
line-height: 0.6;
}
#faq dl dt span {
display: inline-flex;
position: absolute;
top: 0px;
right: 10px;
}
#faq dl dt span::before {
content: '';
width: 20px;
height: 20px;
border: 2px solid #086DB0;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(135deg);
}
#faq dl dt.open span {
top: auto;
bottom: 0;
}
#faq dl dt.open span::before {
transform: rotate(-45deg);
}
#faq dl dd {
display: none;
position: relative;
margin-top: 20px;
padding: 20px 0 0 50px;
border-top: 1px solid #086DB0;
}
#faq dl dd::before {
content: 'A.';
font-size: 3.5rem;
color: #6BA7D0;
position: absolute;
left: 0;
line-height: 0.6;
}
#faq dl dd a {
color: #086DB0;
border-bottom: 1px solid;
}
#faq dl dd img { width: 16px; margin-left: 5px; }



/*電子公告
---------------------------------------------*/
#epn {
position: relative;
padding: 150px 0 0;
}
#epn .epn_list {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#epn .epn_list .epn_list_box {
width: 48%;
margin-bottom: 4%;
}
#epn .epn_list .epn_list_box .s_ttl {
position: relative;
font-size: 17px;
font-weight: bold;
line-height: 1;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#epn .epn_list .epn_list_box .s_ttl::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#epn .epn_list .epn_list_box .link_list {
margin: 0 0 0 17px;
padding: 0;
}
#epn .epn_list .epn_list_box .link_list li {
margin: 0 0 5px;
}
#epn .epn_list .epn_list_box .link_list li a {
color: #086DB0;
transition: .5s;
}
#epn .epn_list .epn_list_box .link_list li a:hover {
opacity: .75;
}
#epn .epn_list .epn_list_box .link_list li a img {
width: 16px;
margin-left: 5px;
}



/*下部サイトマップ
---------------------------------------------*/
#ir_sitemap {
position: relative;
z-index: 1;
background: #FFF;
padding: 70px 0;
box-sizing: border-box;
box-shadow: 0px 0px 15px rgba(33, 96, 125, 0.14);
}
#ir_sitemap .sitemap_wrap {
width: 860px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#ir_sitemap .sitemap_wrap .sitemap_box {
width: calc(25% - 1px);
border-right: 1px solid #D5D5D5;
padding: 0 25px;
box-sizing: border-box;
}
#ir_sitemap .sitemap_wrap .sitemap_box:last-child {
border-right: none;
}
#ir_sitemap .sitemap_wrap .sitemap_box h3 {
font-size: 18px;
line-height: 1;
padding-bottom: 10px;
box-sizing: border-box;
border-bottom: 1px solid #086DB0;
margin-bottom: 10px;
color: #086DB0;
}
#ir_sitemap .sitemap_wrap .sitemap_box h3 a {
color: #086DB0;
transition: .3s;
}
#ir_sitemap .sitemap_wrap .sitemap_box h3 a:hover {
opacity: .7;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul {
margin: 0;
padding: 0;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul li {
font-size: 14px;
line-height: 1.4;
margin-bottom: 10px;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul li a {
position: relative;
display: block;
padding-left: 12px;
box-sizing: border-box;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul li a::before {
content: '';
width: 5px;
height: 5px;
border: 0;
border-top: solid 1px #086DB0;
border-right: solid 1px #086DB0;
transform: rotate(45deg);
position: absolute;
top: 7px;
left: 0;
margin: auto;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul li a:hover {
color: #086DB0;
text-decoration: underline;
}


}




/* モバイルレイアウト : 480 px およびそれ以下. */
/*sp*/
@media only screen and (max-width: 767px) {

/*トップ
---------------------------------------------*/
#ir { position: relative; padding: 80px 0 0; }

#ir .news { margin-bottom: 40px; }
#ir .news h3 {
font-size: 2.2rem;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}
#ir .news_list { overflow: hidden; flex-wrap: wrap; align-items: stretch; }
#ir .news_list dt { display: flex; align-items: center; }
#ir .news_list dt .date { font-weight: 700; margin-right: 5px; }
#ir .news_list dt .label { display: inline-block; min-width: 80px; }
#ir .news_list dt .label .tab_c01 {
color: #fff;
background-color: #001489;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#ir .news_list dt .label .tab_c02 {
color: #fff;
background-color: #61A5D3;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#ir .news_list dt .label .tab_c03 {
color: #000;
background-color: #D5D5D5;
display: block;
margin: 0;
padding: 5px 10px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#ir .news_list dt .label .tab_c04 {
color: #fff;
background-color: #909090;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#ir .news_list dd { margin: 5px 0 20px; }
#ir .news_list dd a { color: #000; }
#ir .news_list dd a:hover { color: #086DB0; text-decoration: underline; }
#ir .news_list dd span { width: 16px; display: inline-block; }
#ir .news_list dd span img { width: 100%; height: auto; }
#ir .news .btn { text-align: center; }
#ir .news .btn a {
position: relative;
display: inline-block;
background: #086DB0;
font-weight: 700;
color: #FFF;
padding: 10px 90px 10px 20px;
border-radius: 25rem;
transition: all 0.3s;
}
#ir .news .btn a:hover { opacity: 0.8; transition: all 0.3s; }
#ir .news .btn a::before {
content: '';
position: absolute;
top: 40%;
right: 25px;
width: 0.6em;
height: 0.6em;
border: 0.2em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(45deg);
}


#ir .message {
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 20px;
margin-bottom: 30px;
overflow: hidden;
}
#ir .message a { transition: all 0.3s; }
#ir .message a:hover { opacity: 0.8; transition: all 0.3s; }
#ir .message .img { position: relative; }
#ir .message .img span {
position: absolute;
right: 12px;
bottom: 12px;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
background: #fff;
border-radius: 50%;
box-sizing: content-box;
}
#ir .message .img span::before {
content: '';
width: 0.6em;
height: 0.6em;
border: 0.1em solid #086DB0;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}
#ir .message .txtbox { padding: 20px; box-sizing: border-box; }
#ir .message .txtbox h4 { font-size: 2rem; color: #086DB0; margin: 0 0 10px; }
#ir .message .txtbox p { font-weight: 700; }


#ir .sitemap_wrap { width: 100%; margin: 0 auto 20px; }
#ir .sitemap_wrap .sitemap_box {
padding: 20px 20px;
box-sizing: border-box;
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 10px;
margin-bottom: 15px;
}
#ir .sitemap_wrap .sitemap_box:last-child { margin-bottom: 0; }
#ir .sitemap_wrap .sitemap_box h3 {
font-size: 1.8rem;
line-height: 1;
padding-bottom: 10px;
box-sizing: border-box;
border-bottom: 1px solid #086DB0;
margin-bottom: 10px;
color: #086DB0;
}
#ir .sitemap_wrap .sitemap_box h3 a { color: #086DB0; transition: .3s; }
#ir .sitemap_wrap .sitemap_box h3 a:hover { opacity: .7; }
#ir .sitemap_wrap .sitemap_box ul { margin: 0; padding: 0; }
#ir .sitemap_wrap .sitemap_box ul li { line-height: 1.4; margin-bottom: 10px; }
#ir .sitemap_wrap .sitemap_box ul li:last-child { margin-bottom: 0; }
#ir .sitemap_wrap .sitemap_box ul li a {
position: relative;
display: block;
padding-left: 12px;
box-sizing: border-box;
}
#ir .sitemap_wrap .sitemap_box ul li a::before {
content: '';
width: 5px;
height: 5px;
border: 0;
border-top: solid 1px #086DB0;
border-right: solid 1px #086DB0;
transform: rotate(45deg);
position: absolute;
top: 9px;
left: 0;
margin: auto;
}
#ir .sitemap_wrap .sitemap_box ul li a:hover { color: #086DB0; text-decoration: underline; }


#ir .calendar { margin: 30px auto; }
#ir .calendar a {
display: flex;
align-items: center;
padding: 20px;
background: #F3F5F5;
border-radius: 10px;
font-weight: 700;
}
#ir .calendar a:hover { color: #086DB0; text-decoration: underline; }
#ir .calendar a span { display: inline-block; width: 40px; margin-right: 15px; }


#ir .individual {
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 20px;
margin-bottom: 30px;
overflow: hidden;
}
#ir .individual a { position: relative; display: block; transition: all 0.3s; }
#ir .individual a:hover { opacity: 0.8; transition: all 0.3s; }
#ir .individual .img { position: relative; }
#ir .individual .img::before {
content: '';
background: #D5D5D5;
width: 95%;
height: 1px;
position: absolute;
top: 0;
right: 0;
left: 0;
margin: auto;
}
#ir .individual .txtbox { padding: 20px; box-sizing: border-box; }
#ir .individual .txtbox h4 { font-size: 2rem; color: #086DB0; margin: 0 0 10px; }
#ir .individual .txtbox p { font-weight: 700; }
#ir .individual .txtbox span {
position: absolute;
right: 15px;
bottom: 15px;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 34px;
height: 34px;
background: #086DB0;
border-radius: 50%;
box-sizing: content-box;
}
#ir .individual .txtbox span::before {
content: '';
width: 0.6em;
height: 0.6em;
border: 0.1em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}


#ir .box_wrap {  }
#ir .box_wrap a {
display: flex;
align-items: center;
padding: 20px;
background: #F3F5F5;
border-radius: 10px;
font-weight: 700;
margin-bottom: 20px;
}
#ir .box_wrap a:last-child { margin-bottom: 0; }
#ir .box_wrap a:hover { color: #086DB0; text-decoration: underline; }
#ir .box_wrap a .icon { display: inline-block; width: 40px; margin-right: 15px; }
#ir .box_wrap a .icon2 { display: inline-block; width: 36px; margin-right: 15px; }



/*IR ニュース
---------------------------------------------*/
#news { position: relative; padding: 80px 0 0; }
#news .tab_panel .form_select {
position: relative;
margin: 20px 0;
padding: 10px 50px 10px 20px;
line-height: 1;
cursor: pointer;
border: 1px solid #086DB0;
border-radius: 25px;
background-color: #fff;
background-image: url("../images/ir/news/icon_selectform.png");
background-repeat: no-repeat;
background-position: right center;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
color: #086DB0;
font-weight: bold;
}
#news .tab_panel .news_list { overflow: hidden; flex-wrap: wrap; align-items: stretch; }
#news .tab_panel .news_list dt { display: flex; align-items: center; }
#news .tab_panel .news_list dt .date { font-weight: 700; margin-right: 5px; }
#news .tab_panel .news_list dt .label { display: inline-block; min-width: 80px; }
#news .tab_panel .news_list dt .label .tab_c01 {
color: #fff;
background-color: #001489;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#news .tab_panel .news_list dt .label .tab_c02 {
color: #fff;
background-color: #61A5D3;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#news .tab_panel .news_list dt .label .tab_c03 {
color: #000;
background-color: #D5D5D5;
display: block;
margin: 0;
padding: 5px 10px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#news .tab_panel .news_list dt .label .tab_c04 {
color: #fff;
background-color: #909090;
display: block;
margin: 0;
padding: 5px 20px;
font-size: 12px;
font-weight: bold;
line-height: 1;
text-align: center;
border-radius: .4rem;
}
#news .tab_panel .news_list dd { margin: 5px 0 20px; }
#news .tab_panel .news_list dd a { color: #000; }
#news .tab_panel .news_list dd a:hover { color: #086DB0; text-decoration: underline; }
#news .tab_panel .news_list dd span { width: 16px; display: inline-block; margin-left: 5px; }
#news .tab_panel .news_list dd span img { width: 100%; height: auto; }


/*トップメッセージ
---------------------------------------------*/
#message { position: relative; padding: 80px 0 0; }

#message h3 {
font-size: 2.2rem;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}

#message .hed_box { margin: 0 0 20px; }
#message .hed_box .img { margin-bottom: 20px; }
#message .hed_box .img img {
height: 180px;
object-fit: cover;
object-position: top;
border-radius: 20px;
}
#message .hed_box .txt_box {  }
#message .hed_box .txt_box h4 { font-size: 2rem; margin: 0 0 20px; }
#message .hed_box .txt_box .name { font-weight: bold; text-align: right; }
#message .hed_box .txt_box .name span { font-size: 1.8rem; margin-left: 15px; }
#message .txt { font-weight: 400; margin: 0 0 30px; line-height: 2; }
#message .txt:last-child { margin-bottom: 0; }
#message .txt a { text-decoration: underline; transition: .5s; }
#message .txt a:hover { text-decoration: none; color: #086DB0; }



/*中期経営計画
---------------------------------------------*/
#plan { position: relative; padding: 80px 0 0; }

#plan h3 { font-size: 2.2rem; color: #086DB0; margin: 0 0 20px; }

#plan .policy { margin-bottom: 40px; }
#plan .policy h4 { font-size: 2rem; font-weight: 700; margin: 0 0 20px; }

#plan .strategy { margin-bottom: 40px; }
#plan .strategy ul li.flex_wrap { margin-bottom: 15px; }
#plan .strategy ul li.flex_wrap:last-child { margin-bottom: 0; }
#plan .strategy ul li.flex_wrap p {
font-weight: 700;
text-align: center;
padding: 10px 20px;
background: #D6EFF7;
border-radius: 5px;
}
#plan .strategy ul li.flex_wrap ul.list li { margin-left: 15px; }
#plan .strategy ul li.flex_wrap ul.list li::marker { content: '⚫︎'; color: #086DB0; }

#plan .value { margin-bottom: 40px; }
#plan .value table {
width: 100%;
border-top: 1px solid #D5D5D5;
border-right: 1px solid #D5D5D5;
margin-bottom: 40px;
font-size: 1.4rem;
table-layout: fixed;
}
#plan .value caption { text-align: right; font-size: 1rem; }

#plan .value table th {
width: 50%;
background: #086DB0;
line-height: 1.3;
color: #FFF;
padding: 8px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
text-align: left;
}
#plan .value table td {
padding: 8px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
vertical-align: middle;
line-height: 1.4;
text-align: right;
}
#plan .value table td.left { text-align: center; }
#plan .value table tr td:last-of-type { font-weight: 700; background: #F3FDFF; }
#plan .value table tr:first-of-type td:last-of-type { background: #D6EFF7; }

#plan .value .flex_wrap {  }
#plan .value .flex_wrap .img { box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15); }
#plan .value .flex_wrap .txtbox { margin-bottom: 10px; }
#plan .value .flex_wrap .txtbox h4 a {
position: relative;
display: flex;
align-items: center;
justify-content: space-between;
font-size: 2rem;
font-weight: 700;
color: #086DB0;
padding-bottom: 10px;
margin-bottom: 10px;
border-bottom: 1px solid;
}
#plan .value .flex_wrap .txtbox h4 span {
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
background: #086DB0;
border-radius: 50%;
box-sizing: content-box;
}
#plan .value .flex_wrap .txtbox h4 span::before {
content: '';
width: 0.4em;
height: 0.4em;
border: 0.1em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}
#plan .link h5 {
position: relative;
font-size: 17px;
font-weight: bold;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#plan .link h5::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#plan .link ul { margin-left: 20px; }
#plan .link ul li { margin: 0 0 5px; }
#plan .link ul li:last-child { margin: 0; }
#plan .link ul li a { color: #086DB0; transition: .5s; }
#plan .link ul li a:hover { text-decoration: underline; }
#plan .link ul li a img { width: 16px; margin-left: 5px; }



/*コーポレート・ガバナンス
---------------------------------------------*/
#governance { position: relative; padding: 80px 0 0; }

#governance h3 {
font-size: 2.2rem;
color: #086DB0;
margin: 0 0 30px;
}

#governance p.data{ font-size: 1.1rem; margin-bottom: 10px; text-align: right; }

#governance .concept { margin-bottom: 60px; }

#governance .concept p a {
position: relative;
color: #086DB0;
font-weight: 700;
line-height: 1.8;
border-bottom: 1px solid;
}

#governance .concept p .icon {
display: inline-block;
width: 16px;
margin-left: 5px;
}

#governance .structure { margin-bottom: 60px; }
#governance .structure .flex_wrap {  }
#governance .structure dl { display: flex; flex-wrap: wrap; }
#governance .structure dl dt {
width: 100px;
font-size: 1.3rem;
background: #D6EFF7;
padding: 10px;
box-sizing: border-box;
margin-bottom: 5px;
}
#governance .structure dl dd {
width: calc(100% - 100px);
font-size: 1.3rem;
background: #F3F5F5;
padding: 10px;
box-sizing: border-box;
text-align: right;
margin-bottom: 5px;
}

#governance .structure ul.graph { margin-top: 20px; }
#governance .structure ul.graph li {
position: relative;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
}
#governance .structure ul.graph li span {
position: absolute;
color: #086DB0;
font-size: 2rem;
font-weight: 700;
line-height: 1;
width: 47%;
text-align: center;
}
#governance .structure ul.graph li span strong { font-size: 3.5rem; }
#governance .structure ul.graph li .txt { width: 48%; }
#governance .structure ul.graph li h5 {
color: #086DB0;
font-size: 1.8rem;
font-weight: 700;
}
#governance .structure ul.graph li p { font-size: 1.2rem; margin-top: 5px; }
#governance .structure ul.graph li .circle { transform: rotate(-90deg); width: 47%; }
#governance .structure ul.graph li .circle circle { fill: none; stroke-width: 7; }
#governance .structure ul.graph li:nth-child(3) .circle { background: #D6EFF7; border-radius: 25rem; }
/* 1本目 40% */
#governance .structure ul.graph li .circle .seg1 {
stroke: #086DB0;
stroke-dasharray: 40 60;
stroke-dashoffset: 0;
}
/* 2本目 60% */
#governance .structure ul.graph li .circle .seg2 {
stroke: #D6EFF7;
stroke-dasharray: 60 40;
stroke-dashoffset: -40;
}
/* 1本目 90% */
#governance .structure ul.graph li:nth-child(2) .circle .seg1 {
stroke: #D6EFF7;
stroke-dasharray: 90 10;
stroke-dashoffset: 0;
}
/* 2本目 10% */
#governance .structure ul.graph li:nth-child(2) .circle .seg2 {
stroke: #086DB0;
stroke-dasharray: 10 90;
stroke-dashoffset: -90;
}
/* 1本目 100% */
#governance .structure ul.graph li:nth-child(3) .circle .seg1 {
stroke: #D6EFF7;
stroke-dasharray: 100 0;
stroke-dashoffset: 0;
}

#governance .chart_box { margin-top: 40px; }
#governance .chart_box h5 { font-size: 1.5rem; font-weight: bold; text-align: center; }
#governance .chart_box p { font-size: 1.1rem; margin-bottom: 10px; text-align: right; }
#governance .chart_box .img {
padding: 10px;
box-sizing: border-box;
background: linear-gradient(281.4deg, rgba(201, 218, 255, 0.2) 22.31%, rgba(89, 189, 255, 0.2) 81.59%);
background-blend-mode: multiply;
border-radius: 10px;
margin: 0 0 0;
}


#governance .link h5 {
position: relative;
font-size: 1.6rem;
font-weight: bold;
margin: 0 0 5px;
padding-left: 18px;
box-sizing: border-box;
}
#governance .link h5::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#governance .link ul { margin-left: 20px; }
#governance .link ul li { margin: 0 0 5px; }
#governance .link ul li:last-child { margin: 0; }
#governance .link ul li a { color: #086DB0; transition: .5s; }
#governance .link ul li a:hover { text-decoration: underline; }



/*事業概要
---------------------------------------------*/
#business { position: relative; padding: 80px 0 0; }
#business .ttl_c {
font-size: 2.2rem;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}

#business .hed_btn {
position: relative;
margin: 0 auto 40px;
padding: 10px 20px;
border-radius: 1.2rem;
background: #FFF;
box-shadow: 0 0 15px rgba(0, 0, 0, .1);
}
#business .hed_btn li { border-bottom: 1px solid #D5D5D5; }
#business .hed_btn li:last-child { border-bottom: none; }
#business .hed_btn li a {
display: flex;
padding: 15px;
box-sizing: border-box;
font-weight: bold;
line-height: 1;
}
#business .hed_btn li a span {
display: block;
width: 12px;
margin-right: 10px;
}
#business .hed_btn li a:hover {
color: #086DB0;
}
#business .ttl_c {
font-size: 2.2rem;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}
#business .ttl_c2 {
font-size: 20px;
line-height: 1;
text-align: center;
margin: 0 0 30px;
}
#business .list {
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 40px;
}
#business .list li {
width: 50%;
border-right: 1px solid #D5D5D5;
border-bottom: 1px solid #D5D5D5;
padding: 15px;
box-sizing: border-box;
}
#business .list li:nth-child(2n) {
border-right: none;
}
#business .list li:nth-child(5), #business .list li:nth-child(6) {
border-bottom: none;
}
#business .list li .illust {
text-align: center;
margin: 0 auto 15px;
}
#business .list li .illust img {
width: auto;
height: 60px;
}
#business .list li .sub_ttl {
font-weight: bold;
font-size: 15px;
line-height: 1;
text-align: center;
margin-bottom: 15px;
}
#business .list li .sub_txt {
font-size: 3.5rem;
font-weight: bold;
font-family: "Inter", "Noto Sans JP", sans-serif;
line-height: 0.7;
color: #086DB0;
text-align: center;
}
#business .list li .sub_txt span {
font-size: 1.5rem;
}
#business .list li .sub_txt2 {
font-size: 0.9rem;
font-weight: bold;
text-align: center;
line-height: 1;
margin-top: 15px;
}


#business .list2 { width: 100%; }
#business .list2 li { width: 100%; margin-bottom: 40px; }
#business .list2 li:last-child { margin-bottom: 0; }
#business .list2 li h4 {
width: 100%;
display: flex;
align-items: center;
font-size: 1.8rem;
line-height: 1;
margin: 0 0 20px;
}
#business .list2 li h4 span {
margin-right: 10px;
}
#business .list2 li h4 span img {
width: auto;
height: 40px;
}
#business .list2 li .img { margin: 0 0 20px; }
#business .list2 li .img img { height: 200px; object-fit: cover; border-radius: 20px; }
#business .list2 li .txt_box {
display: flex;
flex-direction: column;
justify-content: space-between;
}
#business .list2 li .txt_box .txt {
font-size: 15px;
margin-bottom: 20px;
}
#business .list2 li .txt_box .gr_box {
width: 100%;
position: relative;
}
#business .list2 li .txt_box .gr_box h5 {
font-size: 16px;
font-weight: bold;
line-height: 1;
margin-bottom: 10px;
}
#business .list2 li .txt_box .gr_box .gr_list {
position: relative;
}
#business .list2 li .txt_box .gr_box .gr_list li {
display: inline-block;
margin: 0 5px 5px 0;
color: #FFF;
font-size: 13px;
font-weight: bold;
line-height: 1;
padding: 5px 10px;
border-radius: 50rem;
background: #909090;
width: auto;
}



/*ディスクロージャーポリシー
---------------------------------------------*/
#disclosure { position: relative; padding: 80px 0 0; }

#disclosure h2 { font-size: 2.2rem; }
#disclosure h3 {
font-size: 2rem;
color: #086DB0;
margin: 0 0 20px;
}
#disclosure .policy { margin-bottom: 40px; }
#disclosure .policy li { margin-bottom: 30px; }
#disclosure .policy li:last-child { margin-bottom: 0; }
#disclosure .policy li h4 {
font-size: 18px;
font-weight: bold;
color: #086DB0;
margin: 0 0 10px;
display: flex;
align-items: baseline;
}
#disclosure .policy li h4 span { font-size: 3.2rem; font-weight: 200; margin-right: 5px; }

#disclosure .disclaimer p { margin-bottom: 20px; letter-spacing: 0px; }
#disclosure .disclaimer p:last-child { margin-bottom: 0; }



/*財務諸表
---------------------------------------------*/
#finance { position: relative; padding: 80px 0 0; }

#finance .btn_download {
border: 1px solid #086DB0;
border-radius: 10px;
margin: 0 0 30px;
}

#finance .btn_download a{
display:flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
padding: 15px;
box-sizing: border-box;
color: #086DB0;
transition: .5s;
filter:drop-shadow(0px 0px 15px rgba(0, 0, 0, 0.1));
}
#finance .btn_download a:hover { background: #086DB0; color: #FFF; border-radius: 8px; }

#finance .btn_download a .txt{
width: calc(100% - 120px);
font-weight: bold;
line-height: 1;
font-size: 15px;
}

#finance .btn_download a .data_icon{
display:flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

#finance .btn_download a .data_icon .data{
text-align: right;
font-size: 1.2rem;
font-weight: bold;
margin-right: 8px;
}
#finance .btn_download a .data_icon .icon { width: 18px; transition: .5s; }
#finance .btn_download a:hover .icon{ filter: brightness(0) invert(1); }

#finance .block { position: relative; margin: 0 0 40px; }
#finance .block:last-child { margin-bottom: 0; }

#finance .ttl2 {
font-size: 2.2rem;
text-align: center;
color: #086DB0;
margin: 0 0 20px;
}
#finance .ttl2 span { display: block; font-size: 15px; }

#finance .s_txt2{
text-align: right;
font-size: 10px;
margin-bottom: 5px;
}

#finance .table-scroll{ overflow-x: scroll; scrollbar-width: thin; }
#finance .table01{
width: 560px;
border-top: 1px solid #D5D5D5;
border-right: 1px solid #D5D5D5;
font-size: 14px;
}

#finance .table01 th{
border-left: 1px solid #D5D5D5;
border-bottom: 1px solid #D5D5D5;
background: #086DB0;
padding: 2px;
box-sizing: border-box;
color: #FFF;
position: relative;
}

#finance .table01 th.s_txt{
font-size: 13px;
}

#finance .table01 td{
border-left: 1px solid #D5D5D5;
border-bottom: 1px solid #D5D5D5;
padding: 8px;
box-sizing: border-box;
position: relative;
text-align: right;
vertical-align: middle;
}

#finance .table01 td.txt_left{
text-align: left;
line-height: 1.4;
}

#finance .table01 td.txt_bb{
color: #086DB0;
font-weight: bold;
}

#finance .figure_img{
position: relative;
padding-top: 20px;
box-sizing: border-box;
}


#finance .figure_img .data{
position: absolute;
top: 0;
right: 0;
font-size: 9px;
}

#finance .figure_img .data2{
position: absolute;
top: 0;
left: 0;
font-size: 9px;
}

#finance .link h5 {
position: relative;
font-size: 1.6rem;
font-weight: bold;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#finance .link h5::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#finance .link ul { margin-left: 20px; }
#finance .link ul li { margin: 0 0 5px; list-style: square; color: #086DB0; }
#finance .link ul li:last-child { margin: 0; }
#finance .link ul li a { color: #086DB0; transition: .5s; }
#finance .link ul li a:hover { text-decoration: underline; }



/*財務・業績ハイライト
---------------------------------------------*/
#finance .box {
position: relative;
background: #fff;
box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.1);
padding: 40px 20px 30px;
}
#finance .box .data2 { position: absolute; top: 10px; left: 10px; font-size: 9px; }
#finance .box ul {  }
#finance .box ul li { margin-bottom: 30px; }
#finance .box ul li:last-child { margin-bottom: 0; }
#finance .box ul li h4 { font-weight: 700; text-align: center; margin-bottom: 10px; }

#finance ul.flex_wrap {  }
#finance ul.flex_wrap li {
position: relative;
padding: 20px;
box-sizing: border-box;
box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.1);
margin-bottom: 20px;
}
#finance .box ul li:last-child { margin-bottom: 0; }
#finance ul.flex_wrap li .data2 { position: absolute; top: 25px; left: 10px; font-size: 9px; }
#finance ul.flex_wrap li h4 { font-weight: 700; text-align: center; margin-bottom: 10px; }



/*IRライブラリ
---------------------------------------------*/
#library { position: relative; padding: 80px 0 0; }
#library .ttl2 {
font-size: 2.2rem;
text-align: center;
color: #086DB0;
margin: 0 0 20px;
}
#library .sub_ttl_box { margin: 0 0 15px; }
#library .sub_ttl_box h4 { font-size: 18px; margin-bottom: 5px; }
#library .sub_ttl_box .data { text-align: right; font-size: 12px; }

#library .alink_list { margin: 0 0 20px; }
#library .alink_list li { border-bottom: 1px solid #086DB0; }
#library .alink_list li:first-child { border-top: 1px solid #086DB0; }
#library .alink_list li a {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
transition: .5s;
padding: 10px;
box-sizing: border-box;
color: #086DB0;
}
#library .alink_list li a .txt { width: calc(100% - 30px); }
#library .alink_list li a .icon { width: 15px; }
#library .alink_list li a:hover { background: #086DB0; }
#library .alink_list li a:hover .txt { color: #FFF; }
#library .alink_list li a:hover .icon { filter: brightness(0) invert(1); }

#library .btn_download {
border: 1px solid #086DB0;
border-radius: 10px;
margin: 0 0 40px;
}
#library .btn_download a {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
padding: 15px;
box-sizing: border-box;
color: #086DB0;
transition: .5s;
}
#library .btn_download a:hover { background: #086DB0; color: #FFF; border-radius: 8px; }
#library .btn_download a .txt { font-weight: bold; line-height: 1; }
#library .btn_download a .data_icon {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}
#library .btn_download a .data_icon .data { font-size: 1.2rem; text-align: right; font-weight: bold; margin-right: 8px; }
#library .btn_download a .data_icon .icon { width: 18px; transition: .5s; }
#library .btn_download a:hover .icon { filter: brightness(0) invert(1); }

#library .library_ct_btn_list { margin: 0; }
#library .ct_btn_list { margin: 0; }
#library .ct_btn_list li {
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 10px;
margin-bottom: 10px;
}
#library .ct_btn_list li:nth-child(3n) { margin-right: 0; }
#library .ct_btn_list li a {
position: relative;
display: flex;
align-items: center;
padding: 20px 15px;
box-sizing: border-box;
background: #FFF;
border-radius: 10px;
font-weight: bold;
transition: .5s;
line-height: 1.4;
}
#library .ct_btn_list li a span {
position: absolute;
top: 32%;
right: 5%;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
margin: 0 0 4px 10px;
background: #086DB0;
border-radius: 50%;
box-sizing: content-box;
}
#library .ct_btn_list li a span::before {
content: '';
width: 0.4em;
height: 0.4em;
border: 0.1em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}
#library .ct_btn_list li a:hover { background: #086DB0; color: #FFF; }
#library .ct_btn_list li a:hover span {
position: absolute;
top: 32%;
right: 5%;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
margin: 0 0 4px 10px;
background: #FFF;
border-radius: 50%;
box-sizing: content-box;
}
#library .ct_btn_list li a:hover span::before {
content: '';
width: 0.4em;
height: 0.4em;
border: 0.1em solid #086DB0;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}
#library .s_ttl {
font-size: 18px;
line-height: 1;
margin: 0 0 20px;
}
#library .txt2 {
margin: 0 0 10px;
}
#library .txt2 a {
color: #086DB0;
text-decoration: underline;
}
#library .txt2 a:hover {
text-decoration: none;
}
#library .ate_list {}
#library .ate_list li {
position: relative;
font-size: 12px;
line-height: 1;
margin-bottom: 10px;
padding-left: 15px;
}
#library .ate_list li a {
color: #086DB0;
text-decoration: underline;
}
#library .ate_list li a:hover {
text-decoration: none;
}
#library .ate_list li:last-child {
margin-bottom: 0;
}
#library .ate_list li::before {
content: "※";
position: absolute;
top: 0;
left: 0;
font-size: 12px;
line-height: 1;
}
#library .c_ttl {
font-weight: bold;
font-size: 18px;
line-height: 1;
margin: 0 0 20px;
}



/*決算短信
---------------------------------------------*/
/* アコーディオンリスト全体を囲うタグ */
#library .accordion_wrapper { margin: 0 0 40px; }
/* 個々のアコーディオンリストを囲うタグ */
#library .accordion { width: 100%; margin: 0 auto; border-top: 1px solid #086DB0; }
#library .accordion:last-child { border-bottom: none; }
#library .accordion:last-child { border-bottom: 1px solid #086DB0; }
/* アコーディオンのタイトル・内容共通 */
#library .accordion_header, #library .accordion_content {
display: flex;
align-items: center;
width: 100%;
box-sizing: border-box;
}
/* アコーディオンのタイトル */
#library .accordion_header {
padding: 15px 0;
cursor: pointer;
background-color: #FFF;
color: #086DB0;
position: relative;
font-weight: bold;
}
#library .accordion_header:last-child { border-bottom: 1px solid #086DB0; }
/* アコーディオンの内容 */
#library .accordion_content { display: none; }
/* タイトル横のプラスマーク縦線 */
#library .accordion_header::before {
position: absolute;
content: '';
top: 50%;
right: 0px;
width: 20px;
height: 2px;
background-color: #086DB0;
transform: rotate(90deg);
transition: all .3s ease-in-out;
}
/* タイトル横のプラスマーク横線 */
#library .accordion_header::after {
position: absolute;
content: '';
top: 50%;
right: 0px;
width: 20px;
height: 2px;
background-color: #086DB0;
transition: all .3s ease-in-out;
}
/* アコーディオンが開いたとき縦線の変化 */
#library .accordion_header.open::before { transform: rotate(180deg); }
/* アコーディオンが開いたとき横線の変化 */
#library .accordion_header.open::after { opacity: 0; }
#library .accordion_header.open { border-bottom: 1px solid #086DB0; }

#library .accordion_content .link_list { width: 100%; margin: 0 auto; }
#library .accordion_content .link_list li {
border-bottom: 1px solid #D5D5D5;
padding: 15px 0;
box-sizing: border-box;
}
#library .accordion_content .link_list li:last-child { border-bottom: none; }


#library .accordion_content .group {
margin: 0 auto;
border-bottom: 1px solid #D5D5D5;
padding: 15px 0;
box-sizing: border-box;
}
#library .accordion_content .group:last-child { border-bottom: none; }
#library .accordion_content .group dt { font-weight: bold; }
#library .accordion_content .group dd { font-weight: normal; }
#library .accordion_content .group dd a { display: flex; }
#library .accordion_content .group dd a .txt { color: #086DB0; }
#library .accordion_content .group dd .txt {  }
#library .accordion_content .group dd .icon { width: 16px; margin-left: 5px; }
#library .accordion_content .group dd .icon img { width: 100%; height: auto; }
#library .accordion_content .txt a { color: #086DB0; padding: 15px 0; display: block; }



/*中期経営計画・ガバナンス資料
---------------------------------------------*/
#library .management-data_hed { position: relative; margin: 0 0 40px; }
#library .management-data_hed .img {  }
#library .management-data_hed .img img {
width: 100%;
height: auto;
box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
}
#library .management-data_hed .txt_box { position: relative; }

#library .link_ttl {
position: relative;
font-weight: bold;
font-size: 22px;
line-height: 1;
margin: 0 0 30px;
padding-left: 18px;
box-sizing: border-box;
color: #086DB0;
}
#library .link_ttl:before {
content: "";
width: 8px;
height: 8px;
border: 0;
border-top: solid 2px #086DB0;
border-right: solid 2px #086DB0;
transform: rotate(45deg);
position: absolute;
top: 7px;
left: 0;
margin: auto;
}

#library .link_ttl a{
color: #086DB0;
transition: .75s;
}
#library .link_ttl a:hover{
opacity: .5;
}

#library .management-data_hed .txt_box .backnumber_ttl {
position: relative;
font-weight: bold;
line-height: 1;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#library .management-data_hed .txt_box .backnumber_ttl::before {
content: "■";
position: absolute;
top: 2px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#library .link_list { margin: 0 0 20px 17px; padding: 0; }
#library .link_list li {margin: 0 0 5px; color: #086DB0; }
#library .link_list li a { color: #086DB0; transition: .5s; }
#library .link_list li a:hover { opacity: .75; }
#library .link_list li a img { display: none; }
#library .management-data_middle { position: relative; margin: 0 0 60px; }



/*株式情報
---------------------------------------------*/
#stock { position: relative; padding: 80px 0 0; }

#stock .hed_btn {
position: relative;
margin: 0 auto 40px;
padding: 10px 20px;
border-radius: 1.2rem;
background: #FFF;
box-shadow: 0 0 15px rgba(0, 0, 0, .1);
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#stock .hed_btn li { position: relative; width: 50%; }
#stock .hed_btn li::before {
content: "";
position: absolute;
top: 12px;
right: 0;
width: 1px;
height: 60%;
background: #D5D5D5;
}
#stock .hed_btn li:nth-child(2n)::before { content: none; }
#stock .hed_btn li a {
display: block;
padding: 10px 0 10px 30px;
box-sizing: border-box;
font-weight: bold;
border-bottom: 1px solid #D5D5D5;
}
#stock .hed_btn li:last-child a { border-bottom: none; }
#stock .hed_btn li a span {
position: absolute;
top: 18%;
left: 10px;
width: 12px;
}
#stock .hed_btn li a:hover { color: #086DB0; }

#stock .ttl_c {
font-size: 2.2rem;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}

#stock .block { position: relative; margin: 0 0 60px; }
#stock .block:last-child { margin-bottom: 0; }

#stock .gm_list {  }
#stock .gm_list .gm_list_box { position: relative; margin-bottom: 30px; }
#stock .backnumber_ttl {
position: relative;
font-size: 1.6rem;
font-weight: bold;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#stock .backnumber_ttl::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#stock .backnumber_ttl span {
display: inline-block;
padding: 2px 6px;
box-sizing: border-box;
border-radius: .4rem;
background: #858585;
font-size: .89rem;
line-height: 1;
color: #FFF;
margin-left: 5px;
}
#stock .backnumber_ttl a { color: #086DB0; text-decoration: underline; }
#stock .backnumber_ttl a img { width: 16px; margin-left: 5px; }

#stock .link_list { margin: 0 0 0 17px; padding: 0; }
#stock .link_list li { margin: 0 0 5px; }
#stock .link_list li a { color: #086DB0; transition: .5s; }
#stock .link_list li a:hover { opacity: .75; }
#stock .link_list li a img { width: 16px; margin-left: 5px; }

#stock .btn { text-align: center; }
#stock .btn button {
position: relative;
display: inline-block;
background: #086DB0;
font-size: 1.8rem;
font-weight: 700;
color: #FFF;
padding: 10px 80px 10px 30px;
border-radius: 25rem;
transition: all 0.3s;
border: none;
}
#stock .btn button:hover { opacity: 0.8; transition: all 0.3s; }
#stock .btn button::before {
content: '';
position: absolute;
top: 40%;
right: 25px;
width: 0.6em;
height: 0.6em;
border: 0.2em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(45deg);
}

#stock .table01 {
width: 100%;
margin: 0 0 20px;
font-size: 1.3rem;
}
#stock .table01 th {
display: block;
padding: 5px;
box-sizing: border-box;
background: #D6EFF7;
font-weight: 700;
}
#stock .table01 td {
display: block;
padding: 5px 10px 15px;
box-sizing: border-box;
vertical-align: middle;
}
#stock .table01 tr:last-child td { padding: 5px 10px 0; }
#stock .c_box {
border: 1px solid #086DB0;
padding: 10px;
box-sizing: border-box;
font-size: 12px;
}

#stock .c_ttl {
font-size: 18px;
font-weight: bold;
color: #086DB0;
margin: 0 0 10px;
}
#stock .c_ttl2 {
font-size: 18px;
font-weight: bold;
margin: 0 0 20px;
}
#stock .c_ttl span,
#stock .c_ttl2 span { font-size: 12px; display: block; }

#stock .dec_list {
list-style-type: decimal;
margin-left: 20px;
margin-bottom: 20px;
}
#stock .box { position: relative; margin: 0 0 60px; }
#stock .box:last-child { margin-bottom: 0; }

#stock .table_scroll { overflow-y: hidden; }
#stock .table02 {
width: 100%;
border-top: 1px solid #D5D5D5;
border-right: 1px solid #D5D5D5;
font-size: 14px;
}
#stock .table_scroll .table02 { width: 860px; }
#stock .table02 th {
padding: 10px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
background: #086DB0;
font-weight: bold;
color: #FFF;
vertical-align: middle;
}
#stock .table02 td {
padding: 10px;
box-sizing: border-box;
border-bottom: 1px solid #D5D5D5;
border-left: 1px solid #D5D5D5;
vertical-align: middle;
}
#stock .table02 td.t_center { text-align: center; }

#stock .s_dl {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
font-size: 11px;
margin: 0 0 30px;
}
#stock .s_dl dt { width: 30px; white-space: nowrap; }
#stock .s_dl dd { width: calc(100% - 30px); }

#stock .list_2 {  }
#stock .list_2 li { margin-bottom: 30px; }
#stock .list_2 li:last-child { margin-bottom: 0; }
#stock .list_2 li .img { margin: 0 0 15px; }
#stock .list_2 li .s_txt { font-size: 1.1rem; text-align: right; }

#stock .txt3 { margin: 0 0 30px; }
#stock .txt3 span { color: #D1060A; }
#stock .txt3 a { color: #086DB0; text-decoration: underline; }
#stock .txt3 .icon{
width: 14px;
display: inline-block;
margin-left: 3px;
}

#stock .list_2c {  }
#stock .list_2c .box {
border: 1px solid #086DB0;
padding: 20px 10px;
box-sizing: border-box;
margin-bottom: 20px;
}
#stock .list_2c .box:last-child { margin-bottom: 0; }
#stock .list_2c .box h5 { text-align: center; font-size: 1.8rem; }
#stock .list_2c .box .img { margin: 0 auto 20px; }
#stock .list_2c .box .txt { font-size: 12px; margin: 0 0 20px; }
#stock .list_2c .sub_list {
font-size: 12px;
list-style-type: disc;
margin-left: 10px;
}
#stock .list_2c .sub_list a {
text-decoration: underline;
color: #086DB0;
}
#stock .list_2c .sub_list a img {
width: 12px;
margin: 0 5px;
}
#stock .ttl4 {
margin: 0 0 10px;
font-size: 1.5rem;
}
#stock .ttl4 a {
color: #086DB0;
text-decoration: underline;
}
#stock .ttl4 .icon {
width: 14px;
display: inline-block;
}
#stock .stock_dl { font-size: 12px; }
#stock .stock_dl dt {
width: fit-content;
padding: 3px 10px;
box-sizing: border-box;
margin-bottom: 5px;
background: #F3F5F5;
}
#stock .stock_dl dd {  }



/*IRカレンダー
---------------------------------------------*/
#calendar { position: relative; padding: 80px 0 0; }

#calendar h3 {
font-size: 2.2rem;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}

#calendar .schedule { margin-bottom: 60px; }
#calendar .schedule:nth-child(2) { margin-bottom: 0; }
#calendar .schedule p { font-weight: 700; }

#calendar .schedule .table01 { width: 100%; margin: 0 0 20px; }
#calendar .schedule .table01 tr { border-top: 1px solid #086DB0; }
#calendar .schedule .table01 tr:last-child { border-bottom: 1px solid #086DB0; }
#calendar .schedule .table01 th {
width: 65px;
padding: 5px;
box-sizing: border-box;
font-size: 1.8rem;
font-weight: 700;
vertical-align: middle;
color: #086DB0;
text-align: right;
}
#calendar .schedule .table01 td {
font-size: 1.6rem;
padding: 5px;
box-sizing: border-box;
}



/*IRに関するお問い合わせ
---------------------------------------------*/
#contact { position: relative; padding: 80px 0 50px; }

#contact .read {  }
#contact .read a { color: #086DB0; border-bottom: 1px solid; }

#contact .flex_wrap {  }
#contact .flex_wrap .box {
background: #fff;
padding: 40px;
box-sizing: border-box;
border-radius: 40px;
text-align: center;
margin-bottom: 30px;
}
#contact .flex_wrap .box:last-child { margin-bottom: 0; }
#contact .flex_wrap .box h3 {
font-size: 22px;
text-align: center;
color: #086DB0;
margin: 0 0 20px;
}
#contact .flex_wrap .box .btn {
display: inline-block;
background: #086DB0;
border-radius: 10px;
color: #FFF;
font-size: 1.6rem;
font-weight: 700;
padding: 10px 50px;
text-align: center;
text-decoration: none;
transition: 0.5s;
}
#contact .flex_wrap .box .btn:hover { opacity: .75; }

#contact .flex_wrap .box h4 {
display: flex;
align-items: center;
justify-content: center;
font-size: 3rem;
line-height: 1;
margin-bottom: 20px;
}
#contact .flex_wrap .box h4 span { margin-right: 8px; }
#contact .flex_wrap .box h4 span svg { width: 25px; }
#contact .flex_wrap .box h4 a { margin-bottom: 5px; }
#contact .flex_wrap .box p { font-weight: 700; }


#form { position: relative; padding: 80px 0 0; }

#form p { text-align: center; }
#form p span { display: block; color: #D1060A; font-weight: 700; }

#form form { margin-top: 30px; }
#form .com_table { width: 100%; margin: 0 auto 20px; }
#form .com_table th {
position: relative;
display: block;
font-size: 1.6rem;
text-align: left;
vertical-align: top;
padding-bottom: 5px;
}
#form .com_table th::before {
content: '●';
color: #086DB0;
}
#form .com_table td { padding-bottom: 10px; display: block; }
#form .com_table td p { text-align: left; }
#form .com_table td p span { font-size: 1.2rem; color: #000; }
#form .errors{
color: #D1060A;
font-size: 1.2rem;
font-weight: 700;
}

#form input[type="text"],
#form input[type="date"],
#form textarea {
padding: 5px;
border: 1px solid #086DB0;
width: 100%;
box-sizing: border-box;
}

#form button[type="submit"],
#form input[type="submit"] {
width: 200px;
margin: 0 5px;
background:  #086DB0;
border:  #086DB0 1px solid;
border-radius: 10px;
color: #FFF;
font-weight: 700;
padding: 15px 10px;
cursor: pointer;
transition: 0.5s;
}

#form button[type="submit"]:hover,
#form input[type="submit"]:hover { opacity: .75; }

#form .submit:hover {
background: #fff;
border: #086DB0 1px solid;
color: #086DB0;
}

#form .btn_flex { display: flex; justify-content: center; }
#form .btn_flex button[type="submit"],
#form .btn_flex input[type="submit"] { width: 150px; }

#form .btn_back {
width: 150px;
margin: 0 5px;
background:  #fff;
border:  #086DB0 1px solid;
border-radius: 10px;
color: #086DB0;
font-weight: 700;
padding: 15px 10px;
cursor: pointer;
transition: 0.5s;
}
#form .btn_back:hover { opacity: .75; }


#form h3 {
font-size: 2.6rem;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}

#form .btn_top a{
width: 200px;
margin: 30px auto 0;
background:  #086DB0;
border:  #086DB0 1px solid;
border-radius: 25rem;
color: #FFF;
font-weight: 700;
padding: 5px 10px;
cursor: pointer;
transition: 0.5s;
display: inline-block;
box-sizing: border-box;
}
#form .btn_top a:hover { opacity: .75; }

#form .mark {
width: 60px;
margin: 0 0 0 auto;
}



/*IRに関するよくあるご質問
---------------------------------------------*/
#faq {
position: relative;
padding: 80px 0 0;
}
#faq h3 {
font-size: 2.2rem;
line-height: 1;
text-align: center;
color: #086DB0;
margin: 0 0 30px;
}
#faq .box {
border-bottom: 1px solid #086DB0;
padding-bottom: 60px;
margin-bottom: 40px;
}
#faq .box:last-child {
border-bottom: none;
padding-bottom: 0;
margin-bottom: 0;
}
#faq dl {
padding: 15px;
border-radius: 10px;
box-sizing: border-box;
margin-bottom: 25px;
box-shadow: 0px 0px 8px rgba(8, 109, 176, 0.3);
}
#faq dl:last-child {
margin-bottom: 0;
}
#faq dl dt {
position: relative;
font-size: 1.8rem;
font-weight: 700;
line-height: 1.4;
color: #086DB0;
padding: 0 35px 0 40px;
}
#faq dl dt::before {
content: 'Q.';
font-size: 3.5rem;
color: #086DB0;
position: absolute;
left: 0;
line-height: 0.6;
}
#faq dl dt span {
display: inline-flex;
position: absolute;
top: 40%;
right: 10px;
}
#faq dl dt span::before {
content: '';
width: 10px;
height: 10px;
border: 2px solid #086DB0;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(135deg);
}
#faq dl dt.open span {
top: 50%;
bottom: 0;
}
#faq dl dt.open span::before {
transform: rotate(-45deg);
}
#faq dl dd {
display: none;
position: relative;
margin-top: 20px;
padding: 20px 0 0 40px;
border-top: 1px solid #086DB0;
}
#faq dl dd::before {
content: 'A.';
font-size: 3.5rem;
color: #6BA7D0;
position: absolute;
left: 0;
line-height: 0.6;
}
#faq dl dd a {
color: #086DB0;
border-bottom: 1px solid;
}

#faq dl dd img { width: 16px; margin-left: 5px; }



/*電子公告
---------------------------------------------*/
#epn {
position: relative;
padding: 80px 0 0;
}
#epn .epn_list {
}
#epn .epn_list .epn_list_box {
width: 100%;
margin-bottom: 20px;
}

#epn .epn_list .epn_list_box:last-child{
margin-bottom:0;
}

#epn .epn_list .epn_list_box .s_ttl {
position: relative;
font-size: 1.6rem;
font-weight: bold;
line-height: 1.4;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}
#epn .epn_list .epn_list_box .s_ttl::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#epn .epn_list .epn_list_box .link_list {
margin: 0 0 0 17px;
padding: 0;
color: #086DB0;
}
#epn .epn_list .epn_list_box .link_list li {
margin: 0;
}
#epn .epn_list .epn_list_box .link_list li a {
color: #086DB0;
transition: .5s;
}
#epn .epn_list .epn_list_box .link_list li a:hover {
opacity: .75;
}
#epn .epn_list .epn_list_box .link_list li a img {
width: 12px;
margin-left: 5px;
}



/*下部サイトマップ
---------------------------------------------*/
#ir_sitemap {
position: relative;
z-index: 1;
background: #FFF;
padding: 35px 0;
box-sizing: border-box;
box-shadow: 0px 0px 15px rgba(33, 96, 125, 0.14);
}
#ir_sitemap .sitemap_wrap {
width: 100%;
margin: 0 auto;
}
#ir_sitemap .sitemap_wrap .sitemap_box {
width: 100%;
padding: 0 20px 20px;
box-sizing: border-box;
}
#ir_sitemap .sitemap_wrap .sitemap_box:last-child {
border-right: none;
padding-bottom: 0;
}
#ir_sitemap .sitemap_wrap .sitemap_box h3 {
font-size: 1.8rem;
line-height: 1;
padding-bottom: 10px;
box-sizing: border-box;
border-bottom: 1px solid #086DB0;
margin-bottom: 10px;
color: #086DB0;
}
#ir_sitemap .sitemap_wrap .sitemap_box h3 a {
color: #086DB0;
transition: .3s;
}
#ir_sitemap .sitemap_wrap .sitemap_box h3 a:hover {
opacity: .7;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul {
margin: 0;
padding: 0;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul li {
font-size: 14px;
line-height: 1.4;
margin-bottom: 10px;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul li a {
position: relative;
display: block;
padding-left: 12px;
box-sizing: border-box;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul li a::before {
content: '';
width: 5px;
height: 5px;
border: 0;
border-top: solid 1px #086DB0;
border-right: solid 1px #086DB0;
transform: rotate(45deg);
position: absolute;
top: 7px;
left: 0;
margin: auto;
}
#ir_sitemap .sitemap_wrap .sitemap_box ul li a:hover {
color: #086DB0;
text-decoration: underline;
}


/*個人投資家のみなさまへ
---------------------------------------------*/
#individual {
position: relative;
padding: 80px 0 0;
box-sizing: border-box;
}

#individual .bg_grad_b01{
position: absolute;
top: 330px;
left:50%;
width:360px;
height:360px;
border-radius: 50%;
background: linear-gradient(218.29deg, rgba(255, 255, 255, 0.25) 4.64%, rgba(194, 247, 255, 0.25) 22.96%, rgba(118, 200, 255, 0.5) 95.36%);
filter: blur(40px);
z-index: -2;
margin-left: -160px;
}

#individual .block01{
position: relative;
overflow: hidden;
margin: 0 auto;
}

#individual .block01 .txt_box{
width: 90%;
position:relative;
margin: 0 auto;

}

#individual .block01 .txt_box .bg_ttl{
font-size: 32px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
text-align: center;
margin: 0 0 10px;
}

#individual .block01 .txt_box .ttl01{
font-size: 12px;
font-weight: bold;
line-height: 1;
margin-bottom: 35px;
text-align: center;
}

#individual .block01 .txt_box .red_txt{
font-size: 18px;
font-weight: bold;
line-height: 1.6;
margin: 0 0 20px;
text-align: center;
}

#individual .block01 .txt_box .txt{
margin-bottom: 30px;
}

/* スクロールダウンの位置 */
#individual .txt_box .scroll {
position: relative;
writing-mode:vertical-rl;
font-size: 13px;
line-height: 1;
}
/* 線のアニメーション部分 */
#individual .txt_box .scroll::before {
animation: scroll 2s infinite;
background-color: #086DB0;
top:58px;
content: "";
height: 70px;
left: -8px;
right: 0;
margin: auto;
position: absolute;
width: 1px;
}

#individual .red_txt span{
margin-left: -15px;
}

#individual .img{
position: relative;
width: 90%;
margin:0 auto;
}

#individual .img img{
width: 100%;
height: auto;
}

#individual .block01_02{
position: relative;
overflow: hidden;
width: 90%;
margin: 50px auto 80px;
}

#individual .blocblock01_02k02 .txt_box02{
width: 100%;
}

#individual .block01_02 .txt_box02 .bg_ttl{
font-size: 32px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
text-align: center;
margin: 0 0 10px;
}

#individual .block01_02 .txt_box02 .red_txt{
font-size: 12px;
font-weight: bold;
line-height: 1;
margin-bottom: 35px;
text-align: center;
}

#individual .block01_02 .txt_box02 .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 0;
width: 70px;
height: 2px;
background: #086DB0;
}

#individual .block01_02 .txt_box02 .red_txt2{
font-size: 20px;
font-weight: bold;
line-height: 1.6;
margin:0 0 25px;
text-align: center;
}

#individual .block01_02 .txt_box02 .txt{
margin-bottom: 25px;
}

#individual .block01_02 .txt_box02 .btn {
text-align: center;
}

#individual .block01_02 .txt_box02 .btn a {
position: relative;
display: inline-block;
background: #086DB0;
font-weight: 700;
color: #FFF;
padding: 5px 100px 7px 30px;
border-radius: 25rem;
transition: all 0.3s;
}

#individual .block01_02 .txt_box02 .btn a:hover {
opacity: 0.8;
transition: all 0.3s;
}

#individual .block01_02 .txt_box02 .btn a::before {
content: '';
position: absolute;
top: 40%;
right: 25px;
width: 0.6em;
height: 0.6em;
border: 0.2em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(45deg);
}


#individual .block01_02 .img02{
position: relative;
width: 100%;
margin: 0 0 30px;
}

#individual .block02{
position: relative;
overflow: hidden;
width: 100%;
height: 100%;
background: linear-gradient(270deg, rgba(155, 242, 255, 0.1) 0%, rgba(74, 184, 235, 0.1) 100%);
background-blend-mode: multiply;
padding: 35px 0;
box-sizing: border-box;
}

#individual .block02 .bg_grad_b02{
position: absolute;
width:700px;
height:700px;
left: -300px;
bottom:-300px;
border-radius: 50%;
background: linear-gradient(218.29deg, rgba(255, 255, 255, 0.4) 4.64%, rgba(194, 247, 255, 0.4) 36.92%, rgba(118, 200, 255, 0.8) 62.21%);
filter: blur(40px);
}

#individual .block02 .block_inner{
position: relative;
width: 90%;
margin: 0 auto;
}

#individual .block02 .block_inner .shinkibus_logo{
position: absolute;
top: 50px;
right: -10px;
width: 120px;
}

#individual .block02 .block_inner .bg_ttl{
font-size: 32px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
z-index: -1;
opacity: .1;
text-align: center;
margin: 0 0 10px;
}

#individual .block02 .block_inner .red_txt{
position: relative;
font-size: 12px;
font-weight: bold;
line-height: 1;
margin-bottom: 90px;
text-align: center;
}

#individual .block02 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 50%;
width: 2px;
height: 30px;
background: #086DB0;
margin-left: 1px;
}

#individual .block02 .block_inner .graf_list{
position: relative;
z-index: 5;
margin: 0 0 40px;
}

#individual .block02 .block_inner .graf_list li{
width: 100%;
margin: 0 0 40px;
}

#individual .block02 .block_inner .graf_list li:last-child{
margin-bottom: 0;
}

#individual .block02 .block_inner .graf_list li .sub_ttl{
background: #FFF;
font-size: 15px;
line-height: 1;
padding: 10px;
width: 100%;
box-sizing: border-box;
border-radius: 50rem;
text-align: center;
margin: 0 0 30px;
}


#individual .block02 .block_inner .list{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#individual .block02 .block_inner .list li{
width:calc(50% - 1px);
border-right:1px solid #D5D5D5;
border-bottom:1px solid #D5D5D5;
padding:20px 5px;
box-sizing: border-box;
}

#individual .block02 .block_inner .list li:nth-child(2n){
border-right: none;
}

#individual .block02 .block_inner .list li:nth-child(5),
#individual .block02 .block_inner .list li:nth-child(6){
border-bottom: none;
}

#individual .block02 .block_inner .list li .illust{
text-align: center;
margin: 0 auto 30px;
}

#individual .block02 .block_inner .list li .illust img{
width: auto;
height:65px;
}

#individual .block02 .block_inner .list li .sub_ttl{
font-weight: bold;
font-size: 16px;
line-height: 1;
text-align: center;
margin-bottom: 10px;
}

#individual .block02 .block_inner .list li .sub_txt{
font-size: 34px;
font-weight: bold;
font-family: "Inter","Noto Sans JP", sans-serif;
line-height: 1;
color: #086DB0;
text-align: center;
}

#individual .block02 .block_inner .list li .sub_txt span{
font-size: 15px;
}

#individual .block02 .block_inner .list li .sub_txt2{
font-size: 10px;
font-weight: bold;
text-align: center;
margin-top: 10px;
}

#individual .block03{
position: relative;
overflow: hidden;
width: 100%;
padding: 40px 0;
box-sizing: border-box;
}

#individual .block03 .bg_grad_b03{
position: absolute;
width:700px;
height:700px;
right:-300px;
bottom:-200px;
border-radius: 50%;
background: linear-gradient(218.29deg, rgba(255, 255, 255, 0.25) 4.64%, rgba(194, 247, 255, 0.25) 22.96%, rgba(118, 200, 255, 0.5) 95.36%);
filter: blur(40px);
}

#individual .block03 .block_inner{
position: relative;
width: 90%;
margin: 0 auto;
}

#individual .block03 .block_inner .bg_ttl{
font-size: 32px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
opacity:.1;
text-align:center;
margin: 0 0 10px;
}

#individual .block03 .block_inner .red_txt{
position: relative;
font-size: 12px;
font-weight: bold;
line-height: 1;
margin-top: 10px;
margin-bottom: 70px;
text-align: center;
}

#individual .block03 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 50%;
width: 2px;
height: 30px;
background: #086DB0;
margin-left: 1px;
}

#individual .block03 .block_inner .txt{
margin: 0 0 65px;
}

#individual .block03 .block_inner .b_list{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 20px;
}

#individual .block03 .block_inner .b_list li{
position: relative;
width: 48%;
margin-bottom: 3.5%;
background: #FFF;
padding: 10px;
box-sizing: border-box;
box-shadow: 0px 0px 15px #D5D5D5;
border-radius:0 10px 10px 10px;
}

#individual .block03 .block_inner .b_list li .c_bg1{
position: absolute;
left:0;
top: 0;
border-top: 8px solid #557EC0;
border-right: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 8px solid #557EC0;
}

#individual .block03 .block_inner .b_list li .c_bg2{
position: absolute;
left:0;
top: 0;
border-top: 8px solid #0093D4;
border-right: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 8px solid #0093D4;
}

#individual .block03 .block_inner .b_list li .c_bg3{
position: absolute;
left:0;
top: 0;
border-top: 8px solid #9166A9;
border-right: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 8px solid #9166A9;
}

#individual .block03 .block_inner .b_list li .c_bg4{
position: absolute;
left:0;
top: 0;
border-top: 8px solid #F39939;
border-right: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 8px solid #F39939;
}

#individual .block03 .block_inner .b_list li .c_bg5{
position: absolute;
left:0;
top: 0;
border-top: 8px solid #00A95F;
border-right: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 8px solid #00A95F;
}

#individual .block03 .block_inner .b_list li .c_bg6{
position: absolute;
left:0;
top: 0;
border-top: 8px solid #EA5464;
border-right: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 8px solid #EA5464;
}

#individual .block03 .block_inner .b_list li h3{
font-size: 13px;
font-weight: bold;
margin: 0 0 10px;
position: relative;
padding-left: 30px;
}

#individual .block03 .block_inner .b_list li h3 .icon{
width: 24px;
margin: 0 4px 0 0;
display: inline-block;
position: absolute;
left: 0;
}

#individual .block03 .block_inner .b_list li h3 .ss_txt{
font-size: 12px;
}

#individual .block03 .block_inner .b_list li .b_img{
position: relative;
}

#individual .block03 .block_inner .btn {
text-align: center;
}

#individual .block03 .block_inner .btn a {
position: relative;
display: inline-block;
background: #086DB0;
font-weight: 700;
color: #FFF;
padding: 5px 100px 7px 30px;
border-radius: 25rem;
transition: all 0.3s;
}

#individual .block03 .block_inner .btn a:hover {
opacity: 0.8;
transition: all 0.3s;
}

#individual .block03 .block_inner .btn a::before {
content: '';
position: absolute;
top: 40%;
right: 25px;
width: 0.6em;
height: 0.6em;
border: 0.2em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: rotate(45deg);
}


#individual .block04{
position: relative;
padding: 40px 0;
box-sizing: border-box;
overflow: hidden;
background: url("../images/ir/individual/bg_2023.png") bottom center no-repeat;
background-size: 100% auto;
}

#individual .block04::before{
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(270deg, rgba(155, 242, 255, 0.1) 0%, rgba(74, 184, 235, 0.1) 100%);
background-blend-mode: multiply;
z-index: -1;
}

#individual .block04 .block_inner{
width: 90%;
margin: 0 auto;
}

#individual .block04 .block_inner .txtbox {
width:100%;
margin: 0 0 20px;
}

#individual .block04 .block_inner .shinkibus_logo {
position: absolute;
top: 80px;
left: 50px;
width: 210px;
}


#individual .block04 .block_inner .red_txt{
position: relative;
font-size: 2rem;
font-weight: bold;
margin-bottom: 30px;
color: #086DB0;
text-align: center;
padding-bottom: 10px;
box-sizing: border-box;
}
#individual .block04 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: 0;
left: 0%;
width: 100%;
height: 2px;
background: #086DB0;
}

#individual .block04 .block_inner .red_txt2 {
font-size: 20px;
font-weight: bold;
line-height: 1.6;
margin: 0 0 25px;
text-align: center;
}

#individual .block04 .block_img { width: 100%; }
#individual .block04 .block_img img { width: 100%; }


#individual .block05{
position: relative;
overflow: hidden;
width: 100%;
padding: 40px 0;
box-sizing: border-box;
}

#individual .block05 .bg_grad_b04{
position: absolute;
width: 1000px;
height: 1000px;
left: -255px;
bottom: -200px;
border-radius: 50%;
background: linear-gradient(218.29deg, rgba(255, 255, 255, 0.4) 4.64%, rgba(194, 247, 255, 0.4) 36.92%, rgba(118, 200, 255, 0.8) 62.21%);
filter: blur(40px);
}

#individual .block05 .block_inner{
position: relative;
width: 90%;
margin: 0 auto;
}

#individual .block05 .block_inner .bg_ttl{
font-size: 32px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
opacity: .1;
text-align: center;
margin: 0 0 10px;
}

#individual .block05 .block_inner .red_txt{
position: relative;
font-size: 12px;
font-weight: bold;
line-height: 1;
margin-top: 10px;
margin-bottom: 70px;
text-align: center;
}

#individual .block05 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 50%;
width: 2px;
height: 30px;
background: #086DB0;
margin-left: 1px;
}

#individual .block05 .block_inner .red_txt2 {
font-size: 20px;
font-weight: bold;
line-height: 1.6;
margin: 0 0 25px;
text-align: center;
}

#individual .block05 .block_inner .txt{
margin: 0;
}

#individual .block05 .flow_img{
width: 100%;
margin: 0 auto 20px;
position: relative;
}

#individual .block05 .flow_box{
position: relative;
width: 90%;
margin: 0 auto;
background: #F5FBFF;
border: 2px solid #086DB0;
border-radius: 10px;
padding:20px 10px;
box-sizing: border-box;
}

#individual .block05 .flow_box .tit_box{
position: relative;
width: 80%;
display:block;
background: #086DB0;
font-size: 18px;
font-weight: bold;
line-height: 1;
padding: 10px 15px;
box-sizing: border-box;
border-radius: 50rem;
color: #FFF;
text-align: center;
margin: -45px auto 10px;
}

#individual .block05 .flow_box .tit_box span{
font-size: 15px;
margin-bottom: 5px;
}

#individual .block05 .flow_box .strategy_list{
position: relative;
}

#individual .block05 .flow_box .strategy_list li{
margin-bottom: 30px;
}

#individual .block05 .flow_box .strategy_list li dl{
}

#individual .block05 .flow_box .strategy_list li dl dt{
width: 100%;
height: 100%;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
box-sizing: border-box;
font-weight: bold;
font-size: 15px;
line-height: 1.4;
color: #086DB0;
align-items: center;
margin: 0 0 15px;
}

#individual .block05 .flow_box .strategy_list li dl dt .icon{
width:34px;
margin-right: 10px;
}

#individual .block05 .flow_box .strategy_list li dl dd{
width: 100%;
border-bottom: 1px solid #086DB0;
box-sizing: border-box;
padding-bottom: 25px;
}

#individual .block05 .flow_box .strategy_list li:last-child dl dd{
border-bottom: none;
padding-bottom: 0;
}

#individual .block05 .flow_box .strategy_list li dl dd ol{
list-style-type: disc;
margin-left: 20px;
font-size: 15px;
line-height: 1.4;
}

#individual .block05 .flow_box .strategy_list li dl dd ol li{
margin-bottom: 5px;
}

#individual .block05 .flow_box .strategy_list li:last-child{
margin-bottom:0;
}

#individual .block05 .flow_box .strategy_list li dl dd ol li:last-child{
margin-bottom:0;
}

#individual .block06{
position: relative;
overflow: hidden;
background: #F2FCFE;
width: 100%;
padding: 40px 0;
box-sizing: border-box;
}

#individual .block06 .block_inner{
position: relative;
width: 90%;
margin: 0 auto;
}

#individual .block06 .block_inner .bg_ttl{
font-size: 32px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
opacity: .1;
text-align: center;
margin: 0 0 10px;
}

#individual .block06 .block_inner .red_txt{
position: relative;
font-size: 12px;
font-weight: bold;
line-height: 1;
margin-top: 10px;
margin-bottom: 70px;
text-align: center;
}

#individual .block06 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 50%;
width: 2px;
height: 30px;
background: #086DB0;
margin-left: 1px;
}

#individual .block06 .block_inner .list_2c {

}

#individual .block06 .block_inner .list_2c .box {
width: 100%;
padding: 15px;
box-sizing: border-box;
margin: 0 0 30px;
background: #FFFFFF;
box-shadow: 0px 0px 15px #D5D5D5;
border-radius: 10px;
}
#individual .block06 .block_inner .list_2c .box:last-child {
margin: 0;
}

#individual .block06 .block_inner .list_2c .box h5 {
font-size: 15px;
line-height: 1;
background: #086DB0;
color: #FFF;
text-align: center;
padding: 10px;
border-radius: 50rem;
}

#individual .block06 .block_inner .list_2c .box .img {
width: 100%;
margin: 0 auto 20px;
z-index: 5;
}

#individual .block06 .block_inner .list_2c .box .txt {
font-size: 15px;
margin: 0 0 20px;
}

#individual .block06 .block_inner .list_2c .box .sub_list {
font-size: 15px;
list-style-type: disc;
margin-left: 10px;
}

#individual .block06 .block_inner .list_2c .box .sub_list a {
color: #086DB0;
}

#individual .block06 .block_inner .list_2c .box .sub_list a img {
width: 16px;
margin: 0 5px;
}

#individual .backnumber_ttl {
position: relative;
font-size: 16px;
font-weight: bold;
line-height: 1;
margin: 0 0 10px;
padding-left: 18px;
box-sizing: border-box;
}

#individual .backnumber_ttl::before {
content: "■";
position: absolute;
top: 3px;
left: 0;
font-size: 14px;
color: #086DB0;
}
#individual .backnumber_ttl a {
color: #086DB0;
}

#individual .backnumber_ttl a img {
width: 16px;
margin-left: 5px;
}

#individual .link_list {
margin: 0 0 0 17px;
padding: 0;
}

#individual .link_list li {
margin: 0 0 5px;
}

#individual .link_list li a {
color: #086DB0;
transition: .5s;
}

#individual .link_list li a:hover {
opacity: .75;
}

#individual .link_list li a img {
width: 16px;
margin-left: 5px;
}

#individual .block07{
position: relative;
overflow: hidden;
width: 100%;
padding: 40px 0;
box-sizing: border-box;
}

#individual .block07 .block_inner{
position: relative;
width: 90%;
margin: 0 auto;
}

#individual .block07 .block_inner .bg_ttl{
font-size: 32px;
font-weight: bold;
line-height: 1;
color: #14A6F4;
opacity: .1;
text-align: center;
margin: 0 0 10px;
}

#individual .block07 .block_inner .red_txt{
position: relative;
font-size: 12px;
font-weight: bold;
line-height: 1;
margin-top: 10px;
margin-bottom: 70px;
text-align: center;
}
#individual .block07 .block_inner .red_txt::before{
content: "";
position: absolute;
bottom: -50px;
left: 50%;
width: 2px;
height: 30px;
background: #086DB0;
margin-left: 1px;
}

#individual .block07 .ct_btn_list {
margin: 0;
}
#individual .block07 .ct_btn_list li {
width: 100%;
box-shadow: 0px 0px 10px rgba(33, 96, 125, 0.14);
border-radius: 10px;
margin-bottom: 15px;
}

#individual .block07 .ct_btn_list li:nth-child(3n) {
margin-right: 0;
}

#individual .block07 .ct_btn_list li a {
position: relative;
display: flex;
align-items: center;
padding: 0 25px;
box-sizing: border-box;
background: #FFF;
border-radius: 10px;
font-weight: bold;
transition: .5s;
line-height: 1.4;
height: 60px;
}

#individual .block07 .ct_btn_list li a span {
position: absolute;
top: 32%;
right: 5%;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
margin: 0 0 4px 10px;
background: #086DB0;
border-radius: 50%;
box-sizing: content-box;
}

#individual .block07 .ct_btn_list li a span::before {
content: '';
width: 0.4em;
height: 0.4em;
border: 0.1em solid #fff;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}

#individual .block07 .ct_btn_list li a:hover {
background: #086DB0;
color: #FFF;
}

#individual .block07 .ct_btn_list li a:hover span {
position: absolute;
top: 32%;
right: 5%;
display: inline-flex;
align-items: center;
justify-content: center;
vertical-align: middle;
width: 25px;
height: 25px;
margin: 0 0 4px 10px;
background: #FFF;
border-radius: 50%;
box-sizing: content-box;
}

#individual .block07 .ct_btn_list li a:hover span::before {
content: '';
width: 0.4em;
height: 0.4em;
border: 0.1em solid #086DB0;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateX(-20%) rotate(45deg);
}




}
