@charset "UTF-8";
body {
  line-height: 1.75;
}

.bgColor01 {
  background: #005BAC !important;
}

.bgColor02 {
  background: #404040 !important;
}

#gNavPC,
#mainVisualPC,
.pcOnly {
  display: block !important;
}

img.pcOnly {
  display: inline-block !important;
}

#gNavSP,
#mainVisualSP,
.spOnly,
img.spOnly {
  display: none !important;
}

.spMenuToggle {
  display: none;
}

/*---------------------------------------------
 modalWindow
---------------------------------------------*/
#modalBlock {
  font-family:"Roboto", "Noto Sans JP", sans-serif;
  position: fixed;
  z-index: 5000;
  top: 200px;
  left: 0;
  display: none;
  width: 100%;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
#modalWindow {
  position: relative;
  max-width: 910px;
  width: 88.41%;
  margin: 0 auto;
  padding: 56px 2.5855%;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0px 0px 6px #bbb;
}
#modalWindow .modalClose {
  line-height: 1;
  position: absolute;
  top: 20px;
  right: 18px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
}
#modalWindow .modalLogin {
  overflow: hidden;
  text-align: center;
}
#modalWindow .modalLogin {
  max-width: 974px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
#modalWindow .modalLogin .LoginService {
  padding: 0 3.517%;
  max-width: 326px;
  width: 100%;
  flex: 1 1 0;
  min-width: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
}
#modalWindow .modalLogin .LoginService:first-of-type {
  padding: 0 3.517% 0 0;
  max-width: 324px;
}
#modalWindow .modalLogin .LoginService:last-of-type {
  padding: 0 0 0 3.517%;
  max-width: 324px;
}
#modalWindow .modalLogin .LoginService:not(:last-of-type) {
  border-right: 1px solid #bfbfbf;
}
#modalWindow .modalLogin .LoginService .serviceLabel {
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  padding: 0 20px;
  margin-bottom: 24px;
}
#modalWindow .modalLogin .LoginService .serviceLabel.FX {
  color: #008080;
  border: 1px solid #008080;
}
#modalWindow .modalLogin .LoginService .serviceLabel.CFD {
  color: #005BAC;
  border: 1px solid #005BAC;
}
#modalWindow .modalLogin .LoginService .serviceLabel.OPT {
  color: #FF8400;
  border: 1px solid #FF8400;
}
#modalWindow .modalLogin .LoginService .logo {
  margin-bottom: 24px;
}
#modalWindow .modalLogin .LoginService .logo img {
  width: 100%;
}
#modalWindow .modalLogin .LoginService .btn {
  max-width: 260px;
  width: 100%;
}
#modalWindow .modalInner .bnr {
  text-align: center;
}


/* modal
============================================================== */
/* modal base ========== */
.modal-inner {
  position: relative; 
}
.modalArea, .modalArea02 {
  display: none;
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 100001;
  overflow: hidden;
  padding: 20vh 0 5vh;
}
.modalBg {
  width: 100%;
  height: 100%;
  background: rgba(28, 28, 28, 0.8);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5; 
}
.closeModalArea {
  max-width: 90%;
  width: 94%;
  margin: 0 auto;
  position: absolute;
  top: calc(20vh - 50px);
  right: 50%;
  transform: translateX(50%);
  z-index: 100;
  height: 44px;
}
.closeModal {
  width: 40px;
  height: 40px;
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
}
.closeModal .line01{
  display: block;
  width: 32px;
  height: 4px;
  background: #fff;
  border-radius: 2px;
  transform: rotate(45deg);
  position: absolute;
  top: 20px;
  right: 4px;
}
.closeModal .line02{
  display: block;
  width: 32px;
  height: 4px;
  background: #fff;
  border-radius: 2px;
  transform: rotate(-45deg);
  position: absolute;
  top: 20px;
  right: 4px;
}
.is-open {
  display: block;
}
.modalWrapper {
  position: relative;
  width: 100%;
  max-width: 90%;
  /* height: 50%; */
  padding: 0;
  background-color: #fff;
  border-radius: 16px;
  border: none;
  overflow: hidden;
  margin: 0 auto;
  z-index: 100002; 
}
.modalScroll {
  width: 100%;
  height: 100%;
  padding: 64px 0;
  position: relative;
  background-color: #fff;
  overflow-y: scroll;
  overflow-x: hidden; 
}
.modalScroll.quoScroll {
  padding-top: 2vw;
}
.modalContents {
  padding: 0 5%; 
}

@media screen and (max-width: 800px) {
  .modalScroll {
    padding: 8vw 0;
  }
}

@media screen and (max-width: 640px) {
  .closeModalArea {
    top: calc(20vh - 40px);
    height: 30px;
  }
  .closeModal {
    width: 30px;
    height: 30px;
  }
  .closeModal .line01 {
    width: 24px;
    height: 3px;
    top: 14px;
    right: 2px;
  }
  .closeModal .line02 {
    width: 24px;
    height: 3px;
    top: 14px;
    right: 2px;
  }
  .modalWrapper {
    border-radius: 8px;
  }
  /* .modalScroll {
    padding-top: 10.6666vw;
  } */
  .modalContents {
    padding: 0 4.256%;
  }
}


/* modal Inner (app) =========== */
@media screen and (max-width: 767px) {
  .modal .modalContents .appBox {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }
  .modal .modalContents  .appBox .iconWrap img {
    max-width: 70px;
  }
  .modal .modalContents  .appBox .txtWrap {
    margin-left: 9vw
  }
  .modal .modalContents  .appBox .txtWrap p {
    max-width: 45vw;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
  }
  .modal .modalContents  .appBox .txtWrap  p span {
    width: auto;
  }
  .modal .modalContents  .appBox .txtWrap .btn {
    font-weight: bold;
    margin-bottom: 0;
    padding: 6px 16px;
  }
  .modal .modalContents  .appBox .txtWrap .btn a {
    font-size: 16px;
    color: #fff;
  }
}



/*---------------------------------------------
 wrap
---------------------------------------------*/
#wrap {
  font-family:"Roboto", "Noto Sans JP", sans-serif;
  position: relative;
  height: auto !important;
  height: 100%;
  min-height: 100%;
  width:100%;
  overflow:hidden;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
#wrap input,
#wrap button {
  font-family:"Roboto", "Noto Sans JP", sans-serif;
  -webkit-font-smoothing: antialiased;
}
#header input,
#header button {
   font-family:"Roboto", "Noto Sans JP", sans-serif;
   -webkit-font-smoothing: antialiased;
}
/*---------------------------------------------
 header
---------------------------------------------*/
#headerWrap {
  font-family:"Roboto", "Noto Sans JP", sans-serif;
  font-size: 14px;
  position: relative;
  z-index: 500;
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  border-bottom: 2px solid #005BAC;
}
#headerWrap a {
  text-decoration: none;
  color: #3f6974;
}
#headerWrap a:hover,
#headerWrap a:active {
  opacity: .5;
  filter: alpha(opacity=50);
}
#headerWrap .inner {
  overflow: hidden;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 10px;
}
#headerWrap .inner .logoImg {
  float: left;
  padding: 27px 0 13px;
}
#headerWrap .inner .logoImg a:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}
#headerWrap .inner .headNav {
  float: right;
  width: 370px;
  /*	20160329	*/
  width: 530px;
  /*	/20160329	*/
  width: 525px;
  /*	20161215	*/
  padding: 27px 0 13px;
}
#headerWrap .inner .headNav .searchHeadNav {
  float: left;
  width: 140px;
}
#headerWrap .inner .headNav .searchHeadNav input[type="text"] {
  display: block;
     box-sizing: border-box;
  width: 100%;
  height: 32px;
  font-size: 13px;
  padding: 8px 8px 8px 30px;
  border: none;
  border-bottom: 1px solid #404040;
  border-radius: 0;
  background: url(/common_fx/images/icon_search.png) no-repeat left center;
  -o-box-sizing: border-box;
}
body.search_page .searchBoxWrap label[for="select05"] {
   display: none !important;
}

body.search_page .searchBoxWrap .inner .searchFilterBlock .searchFilterList:nth-of-type(2) {
   display: none !important;
}

body.search_page .searchBoxWrap #select05_li,
body.search_page .searchBoxWrap #select06_li {
   display: none !important;
}
#headerWrap .inner .headNav .userHeadNav {
  float: right;
  width: 170px;
  /*	20160329	*/
  width: 361px;
  /*	/20160329	*/
  width: 374px;
  /*	20161007	*/
  letter-spacing: -.4em;
  text-align: right;
}
#headerWrap .inner .headNav .userHeadNav span {
  display: inline-block;
  margin-left: 10px;
}
#headerWrap .inner .headNav .userHeadNav span:first-child {
  margin-left: 0;
}
#headerWrap .inner .headNav .userHeadNav a {
  font-size: 14px;
  font-weight: bold;
  line-height: 24px;
  display: inline-block;
  width: 100px;
  height: 24px;
  padding: 5px 0;
  text-align: center;
  letter-spacing: 0;
  color: #fff;
}
  /*	20160329	*/
#headerWrap .inner .headNav .userHeadNav a.app {
	border-color: #404040!important;
    border-width: 4px!important;
    color: #404040;
	width:77px;
	line-height:16px;
	height:16px;
	font-size:13px;
}
  /*	20161007	*/
#headerWrap .inner .headNav .userHeadNav a.inquiry {
	border-color: #404040!important;
    border-width: 4px!important;
    color: #404040;
	width:90px;
	line-height:16px;
	height:16px;
	font-size:13px;
}
  /*	/20160329	*/

#headerWrap.campaignHeader {
  background: #404040;
}
#headerWrap.campaignHeader .inner .logoImg {
  padding: 27px 0 15px;
}
#headerWrap.campaignHeader .inner .headNav .camHeadNav {
  text-align: right;
}
#headerWrap.campaignHeader .inner .headNav .camHeadNav a {
  font-weight: bold;
  color: #fff;
}
#headerWrap.campaignHeader .inner .headNav .camHeadNav span {
  margin-left: 30px;
}



/*---------------------------------------------
 gNav
---------------------------------------------*/
html:has(#gNavPC) {
  scroll-padding-top: 90px;
}
#gNavPC {
  font-family:"Roboto", "Noto Sans JP", sans-serif;
  position: relative;
  z-index: 150;
  width: 100%;
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
#gNavPC .gNavSteady {
  border-bottom: 1px solid #bfbfbf;
}
#gNavPC .gNav {
  max-width: 1200px;
  margin: 0 auto;
  pointer-events: none;
}
#gNavPC .gNav a:hover {
  text-decoration: none;
  opacity: 1;
  filter: alpha(opacity=100);
}
#gNavPC .gNav ul.parentList {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1px;
  pointer-events: auto;
  width: 100%;
  position: relative;
}
#gNavPC .gNav ul.parentList:after {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: url(/common_fx/images/bg_menu_solid.gif) no-repeat right center;
  position: absolute;
  top: 0;
  right: -2px;
}
#gNavPC .gNav ul.parentList > li {
  /* position: relative; */
  display: table-cell;
  height: 48px;
  vertical-align: middle;
  width: calc(100%/8);
}
#gNavPC .gNav ul.parentList > li .btn {
  font-family:"Roboto", "Noto Sans JP", sans-serif;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  position: relative;
  z-index: 125;
  /* display: table-cell; */
  width: 100%;
  height: 48px;
  color: #404040;
  background: #fff url(/common_fx/images/bg_menu_solid.gif) no-repeat left center;
  background-size: 1px auto;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  transition: .3s all;
  text-align: center;
  line-height: 1.2;
}
#gNavPC .gNav ul.parentList > li .btn:hover,
#gNavPC .gNav ul.parentList > li .btn.on {
  color: #005BAC;
}
#gNavPC .gNav ul.parentList > li .btn .disIb {
  display: inline-block;
}
#gNavPC .gNav ul.parentList > li.cur .btn {
  color: #005BAC;
}
#gNavPC .gNav ul.parentList > li .btn:before{
  content: "";
  position: absolute;
  z-index: 100;
  top: auto;
  bottom: 1px;
  left: 0;
  right: 0;
  margin: 0 auto;
  display: block;
  width: 0%;
  height: 2px;
  background: #005BAC;
  transition: .3s all;
}
#gNavPC .gNav ul.parentList > li.cur .btn:before,
#gNavPC .gNav ul.parentList > li .btn:hover:before,
#gNavPC .gNav ul.parentList > li .btn.on:before {
  width: 70%;
}
#gNavPC .gNav ul.parentList > li.cur ul.childList {
  opacity: 1 !important;
  visibility: visible;
}

#gNavPC .gNav ul.parentList > li ul.childList {
  box-sizing: border-box;
  position: absolute;
  z-index: 120;
  top: 48px;
  left: 0;
  width: max-content;
  /* min-width: calc(100% - 60px); */
  width: 1200px;
  padding: 40px 52px;
  border-top: 1px solid #bfbfbf;
  background: #fff;
  opacity: 0 !important;
  /* opacity: 1 !important; */
  visibility: hidden;
  box-shadow: 0px 5px 12px rgb(0 0 0 / 30%);
  transition: .3s all;
  display: flex;
  gap: 56px;
  font-size: 16px;
}
#gNavPC .gNav ul.parentList > li:nth-child(2) ul.childList {
  gap: 36px;
}

/* #gNavPC .gNav ul.parentList > li:nth-child(1),
#gNavPC .gNav ul.parentList > li:nth-child(2),
#gNavPC .gNav ul.parentList > li:nth-child(3),
#gNavPC .gNav ul.parentList > li:nth-child(4),
#gNavPC .gNav ul.parentList > li:nth-child(5),
#gNavPC .gNav ul.parentList > li:nth-child(6),
#gNavPC .gNav ul.parentList > li:nth-child(7),
#gNavPC .gNav ul.parentList > li:nth-child(8){
  display: none !important;
} */
#gNavPC .gNav ul.parentList > li ul.childList .col2wrap {
  margin-top: 20px;
  margin-left: 16px;
}
#gNavPC .gNav ul.parentList > li ul.childList .col2wrap ul {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 32px;
}
#gNavPC .gNav ul.parentList > li:nth-child(2) ul.childList .col2wrap ul {
  gap: 16px 12px;
}
#gNavPC .gNav ul.parentList > li ul.childList .col2wrap ul li {
  width: calc(50% - 16px);
}
#gNavPC .gNav ul.parentList > li:nth-child(1) ul.childList .col2wrap ul li {
  width: calc(40% - 16px);
}
#gNavPC .gNav ul.parentList > li:nth-child(3) ul.childList .col2wrap ul li {
  width: calc(40% - 16px);
}
#gNavPC .gNav ul.parentList > li:nth-child(1) ul.childList .col2wrap ul li:nth-child(2n + 1) {
  width: calc(60% - 16px);
}
#gNavPC .gNav ul.parentList > li:nth-child(3) ul.childList .col2wrap ul li:nth-child(2n + 1) {
  width: calc(60% - 16px);
}
#gNavPC .gNav ul.parentList > li:nth-child(2) ul.childList .col2wrap ul li {
  width: calc(50% - 8px);
}
#gNavPC .gNav ul.parentList > li:nth-child(1) ul.childList > li.navServiceArea {
  width: 46%;
}
#gNavPC .gNav ul.parentList > li:nth-child(2) ul.childList > li.navServiceArea {
  width: 50%;
}
#gNavPC .gNav ul.parentList > li:nth-child(3) ul.childList > li.navServiceArea {
  width: 50%;
}
#gNavPC .gNav ul.parentList > li ul.childList .nestLink a,
#gNavPC .gNav ul.parentList > li ul.childList .col2wrap a {
  font-weight: normal;
  line-height: 1.25;
}
#gNavPC .gNav ul.parentList > li ul.childList .nestLink a {
  margin-top: 20px;
  margin-left: 16px;
}
#gNavPC .gNav ul.parentList > li > ul.childList .linkContainer li:not(:last-child) {
  margin-bottom: 20px;
}
#gNavPC .gNav ul.parentList > li > ul.childList .col2wrap li:not(:last-child) {
  margin-bottom: 0;
}

#gNavPC .gNav ul.parentList > li ul.childList li a {
  display: block;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  color: #404040;
  transition: .3s all;
  line-height: 1.4375;
}
#gNavPC .gNav ul.parentList > li ul.childList li a.blank span:after {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  background: url(/common_fx/images/icon_target_blank.png) no-repeat center center;
  background-size: 10px 10px;
  position: relative;
  top:0;
  right: -7px;
}
#gNavPC .gNav ul.parentList > li ul.childList li a:hover {
  color: #005BAC;
}
#gNavPC .gNav ul.parentList > li ul.childList li a:hover.blank span:after {
  background: url(/common_fx/images/icon_target_blank_rd.png) no-repeat center center;
  background-size: cover;
  color: #005BAC;
}
@media screen and (min-width: 768px) and  (max-width: 1199px) {
  #gNavPC .gNav ul.parentList > li .btn {
    font-size: 14px;
  }
  #gNavPC .gNav ul.parentList > li ul.childList {
    font-size: 14px;
  }
  #gNavPC .gNav ul.parentList > li ul.childList li a {
    font-size: 14px;
  }
  #gNavPC .gNav ul.parentList > li ul.childList {
    width: 100%;
    padding: 40px 25px;
    gap: 4.666666666666667vw;
  }
  #gNavPC .gNavFloating.navFixed ul.parentList > li ul.childList {
    width: calc(100% + 202px);
  }
  #gNavPC .gNav ul.parentList > li ul.childList .nestLink a,
  #gNavPC .gNav ul.parentList > li ul.childList .col2wrap a {
    line-height: 1.25;
  }
}
@media screen and (min-width: 768px) and  (max-width: 1000px) {
  #gNavPC .gNav ul.parentList > li ul.childList {
    width: 100%;
    padding: 40px 20px;
    gap: 25px;
    font-size: 15px;
  }
  #gNavPC .gNav ul.parentList > li ul.childList ul li:not(:last-child) {
    margin-bottom: 12px;
  }
  #gNavPC .gNav ul.parentList > li ul.childList .nestLink a,
  #gNavPC .gNav ul.parentList > li ul.childList .col2wrap a {
    line-height: 1.25;
    font-size: 14px;
  }
  #gNavPC .gNav ul.parentList > li ul.childList .nestLink a {
    margin-left: 0;
    margin-top: 12px;
  }
  #gNavPC .gNav ul.parentList > li ul.childList .col2wrap {
    gap: 20px;
    margin-left: 0;
  }
}
/*---------------------------------------------
 main
---------------------------------------------*/
#mainVisualPC {
  position: static;
  z-index: 100;
  overflow: hidden;
  height: 480px;
  background: no-repeat url(/images/mainvisual/bg_mainvisual.jpg) center center;
}
#mainVisualPC.navOpen {
  position: relative;
}
#mainVisualPC ul li {
  position: relative;
  top: 0;
  left: 0;
  float: left;
}
#mainVisualPC ul li .repeatL {
  position: absolute;
  height: 480px;
  background: url(/images/mainvisual/bg_mainvisual_solid.png) repeat-x;
}
#mainVisualPC ul li .repeatR {
  position: absolute;
  height: 480px;
  background: url(/images/mainvisual/bg_mainvisual_solid.png) repeat-x;
}
#mainVisualPC ul li.sl-other {
  z-index: 10;
  cursor: pointer;
}
#mainVisualPC ul li.sl-cur {
  z-index: 1000;
  cursor: default;
}
#mainVisualPC ul li .imgWrap {
  position: relative;
  width: 970px;
}
#mainVisualPC .liquidBg .liquidL {
  position: absolute;
  right: 50%;
  left: 70px;
  height: 480px;
  margin-right: 485px;
  background: #f00;
  background: url(/images/mainvisual/bg_mainvisual_solid.png) repeat-x;
}
#mainVisualPC .liquidBg .liquidR {
  position: absolute;
  right: 70px;
  left: 50%;
  height: 480px;
  margin-left: 485px;
  background: #ff0;
  background: url(/images/mainvisual/bg_mainvisual_solid.png) repeat-x;
}

#mainVisualPC ul li .imgWrap.pcSlideCurrent {
  height: 480px;
  padding-top: 0;
  text-align: center;
  background: url(/images/mainvisual/bg_mainvisual_first.png) no-repeat;
}
#mainVisualPC ul li .imgWrap.pcSlideCurrent .slideTitleMain {
  padding-top: 140px;
}
#mainVisualPC ul li .imgWrap.pcSlideCurrent .slideTitle {
  font-size: 14px;
  font-weight: bold;
  margin-top: 20px;
}
#mainVisualPC ul li .imgWrap.pcSlideCurrent .slideTitleSub {
  font-weight: bold;
  margin-top: 30px;
}
#mainVisualPC ul li .imgWrap.pcSlideCurrent .slideLink {
  font-size: 28px;
  font-weight: bold;
}
#mainVisualPC ul li .imgWrap.pcSlideCurrent .slideLink a {
  text-decoration: underline;
}
#mainVisualPC ul li .imgWrap {
  width: 878px;
  min-width: 760px;
  height: 480px;
}
#mainVisualPC ul li .imgWrap img {
  height: auto;
}
#mainVisualPC ul li .imgWrap a img {
  min-width: 760px;
}
#mainVisualPC ul li .imgWrap a:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}
#mainVisualPC .pcTab li .imgWrap {
  padding-top: 33px;
}
#mainVisualPC .pcTab li .imgWrap img {
  max-width: 100%;
}
#mainVisualPC .pcTab .repeatL,
#mainVisualPC .pcTab .repeatR {
  background-position: 0px 36px;
  background-size: auto 408px;
}
#mainVisualPC .pcTab .imgWrap.pcSlideCurrent {
  background-position: 0 33px;
  background-size: 760px auto;
}
.pcSlideClick {
  position: absolute;
  z-index: 2000;
  width: 50px;
  height: 450px;
  cursor: pointer;
  background: url(/images/mainvisual/transparent.gif) repeat;
}
.pcSlideClick.pcSlideNext {
  right: 0;
}
.slideIndicator {
  position: absolute;
  z-index: 115;
  top: 480px;
  left: 50%;
}
.slideIndicator.navOpen {
  z-index: 105;
}
.slideIndicatorIcon {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  cursor: pointer;
  vertical-align: middle;
  border: 3px solid transparent;
  border-radius: 7px;
  background-color: #404040;
  background-clip: padding-box;
}
.slideIndicatorIcon.current {
  border: 3px solid #005BAC;
  border-color: #005BAC;
  background-color: transparent;
}
.slideIndicatorNum {
  display: none;
}

/*---------------------------------------------
 contents
---------------------------------------------*/
#contents {
  padding: 0 0 0;
  background: #fff;
}
.top_index #contents {
  padding: 10px 0 0;
}
.page_popup #contents {
  padding: 0 0 0;
}
#contents .container .containerInner {
  max-width: 890px;
  margin: 0 auto;
  padding-right: 30px;
  padding-left: 30px;
}

/*---------------------------------------------
 footer
---------------------------------------------*/
#footer .footNavWrap {
  margin-top: 0;
}
.footNavWrap {
  font-family:"Roboto", "Noto Sans JP", sans-serif;
  margin-top: 100px;
  background: #005BAC;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
.footNavWrap a {
  text-decoration: none;
  color: #3f6974;
}
.footNavWrap a:hover,
.footNavWrap a:active {
  opacity: .5;
  filter: alpha(opacity=50);
}
.footNavWrap .footNav {
  position: relative;
  max-width: 980px;
  margin: 0 auto;
  padding: 0 30px;
}
.footNavWrap .footNav:after {
  font-size: 0;
  display: block;
  visibility: hidden;
  clear: both;
  height: 0;
  content: " ";
}
.footNavWrap .footNav .pageTop {
  position: absolute;
  top: -50px;
  right: 25px;
}
.footNavWrap .footNav .pageTop a {
  font-size: 16px;
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding: 10px;
  color: #005BAC;
}
.pageTop a {
    padding: 10px 30px;
}
.pageTop a {
    font-size: 14px;
    font-weight: bold;
    position: relative;
    display: inline-block;
    padding: 10px;
    color: #005BAC;
}
.footNavWrap .footNav .pageTop a:hover {
  text-decoration: none;
}
.page_popup .footNavWrap .footNav .pageTop a {
  padding: 10px 30px;
}
.footNavWrap .footNav .topicPath {
  float: left;
}
.footNavWrap .footNav .topicPath ul {
  overflow: hidden;
}
.footNavWrap .footNav .topicPath ul li {
  float: left;
}
.footNavWrap .footNav .topicPath ul li a {
  font-size: 14px;
  font-weight: bold;
  position: relative;
  display: block;
  min-height: 21px;
  padding: 12px;
  padding-right: 5px;
  padding-left: 20px;
}
.footNavWrap .footNav .topicPath ul li:first-child a {
  padding-left: 0;
  top: 2px;
}
.footNavWrap .footNav .topicPath ul li:nth-of-type(n+2) a::after{
  position: absolute;
  top: 1.3em;
  left: 0;
  transform: rotate(45deg);
  display: inline-block;
  width: 8px;
  height: 8px;
  border: solid #fff;
  border-width: 2px 2px 0 0;
  content: "";
}
.footNavWrap .footNav .topicPath ul li a:hover {
  text-decoration: none;
}
.footNavWrap .footNav .topicPath ul li a img {
  margin-right: 5px;
  vertical-align: top;
}
.footNavWrap .footNav a {
  color: #fff;
}
#footerWrap {
  font-family:"Roboto", "Noto Sans JP", sans-serif;
  font-size: 14px;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
#footerWrap a {
  text-decoration: none;
  color: #3f6974;
}
#footerWrap a:hover,
#footerWrap a:active {
  opacity: .5;
  filter: alpha(opacity=50);
}
#footerWrap .footInner {
  max-width: 1200px;
  margin: 0 auto;
}
#footerWrap .footInfoWrap {
  font-size: 12px;
  background: #e6e6e6;
}
#footerWrap .footInfoWrap .footInner {
  padding-right: 30px;
  padding-left: 30px;
}
.page_popup #footerWrap .footInfoWrap .footInner {
  padding: 30px;
}
#footerWrap .footInfoWrap .footInner .footBtnWrap {
  padding: 42px 0 0;
}
#footerWrap .footInfoWrap .footInner .footBtnWrap ul {
  overflow: hidden;
}
#footerWrap .footInfoWrap .footInner .footBtnWrap ul li {
  float: left;
  width: 27.83%;
  margin-right: 2.24%;
}
#footerWrap .footInfoWrap .footInner .footBtnWrap ul li:first-child {
  width: 36.7%;
  margin-right: 5.4%;
}
#footerWrap .footInfoWrap .footInner .footBtnWrap ul li:last-child {
  margin-right: 0;
}
#footerWrap .footInfoWrap .footInner .footBtnWrap ul li a {
  font-size: 16px;
  font-weight: bold;
  line-height: 20px;
  display: block;
  height: 20px;
  padding: 23px 20px;
  text-align: center;
  color: #fff;
}
#footerWrap .footInfoWrap .footInner .footBtnWrap ul li a .ttl {
  font-size: 24px;
  margin-left: 10px;
  letter-spacing: .15em;
}
#footerWrap .footInfoWrap .footInner .footBtnWrap ul li a img {
  margin-top: -2px;
  margin-right: 20px;
  vertical-align: middle;
}
#footerWrap .footInfoWrap .footInner .footAdInfo {
  padding-top: 42px;
  padding-bottom: 30px;
}
.page_popup #footerWrap .footInfoWrap .footInner .footAdInfo {
  padding: 0;
}
#footerWrap .footInfoWrap .footInner .footAdInfo .ttl {
  font-weight: bold;
  margin-bottom: 8px;
}
.page_popup #footerWrap .footInfoWrap .footInner .footAdInfo .txt {
  font-size: 10px;
}
#footerWrap .footInfoWrap .footInner .footAdInfo dt a {
  font-size: 12px;
  display: inline-block;
  white-space: wrap;
  word-break: break-all;
  color: #3f3f3f;
}
#footerWrap .footInfoWrap .footInner .footAdInfo dt a.i_target {
  padding-left: 17px;
  background: url(/common_fx/images/icon_popup.png) left .3em no-repeat;
  background-position: 0% 50%;
  background-size: 10px 10px;
}
/* ----------------------
2025/1/31 footer upddate 
---------------------- */
#footerWrap .footLinkCategory {
  overflow: hidden;
  background: #f2f2f2;
}
.footLinkaccordionWrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0;
  margin: 24px auto;
}
.footLinkaccordionInner {
  width: 100%;
  font-size: 12px;
  line-height: 1.38;
  text-align: left;
  margin: 24px auto 0;
}
.footLinkaccordionList {
  display: flex;
  justify-content: center;
  gap: 0px 66px;
}
/* tab */
@media screen and (min-width: 768px) and (max-width: 1170px) {
  .footLinkaccordionWrap > :nth-child(4) .footLinkaccordionList {
    gap: 0px 3.3333333333333335vw;
    padding: 0 24px;
  }
  .footLinkaccordionWrap > :nth-child(4) .footLinkaccordionList ul {
    width: calc(100% - (48px + 3.3333333333333335vw));
  }
}
.footLinkaccordionInner ul {
}
.footLinkaccordionInner ul a {
  color: #3f3f3f;
}
#footerWrap .footLinkaccordionInner ul li + li {
  margin-top: 8px;
}
#footerWrap .footLinkaccordionInner ul li a {
  color: #3f3f3f;
}
.footLinkaccordionWrap > :nth-child(1) { order: 1; }
.footLinkaccordionWrap > :nth-child(2) { order: 5; }
.footLinkaccordionWrap > :nth-child(3) { order: 2; }
.footLinkaccordionWrap > :nth-child(4) { order: 6; }
.footLinkaccordionWrap > :nth-child(5) { order: 3; }
.footLinkaccordionWrap > :nth-child(6) { order: 7; }
.footLinkaccordionWrap > :nth-child(7) { order: 4; }
.footLinkaccordionWrap > :nth-child(8) { order: 8; }
.footLinkaccordionTtl {
  cursor: pointer;
  display: block;
  color: #404040;
  font-weight: bold;
  font-size: 14px;
  line-height: 1.18;
  padding: 8px 56px;
  border-left: solid 1px #404040;
  border-right: solid 1px #404040;
  position: relative;
}
/* tab */
@media screen and (min-width: 768px) and (max-width: 1100px) {
  .footLinkaccordionTtl {
    padding: 8px 2.5vw;
  }
}
.footLinkaccordionInner + .footLinkaccordionTtl {
  border-left: none;
  border-right: solid 1px #404040;
}
.footLinkaccordionTtl::before,
.footLinkaccordionTtl::after {
  display: block;
  content: "";
  margin: auto;
}
.footLinkaccordionTtl.active {
  color: #005bac;
  opacity: 1;
  filter: alpha(opacity = 100);
}
.footLinkaccordionTtl.active::before {
  position: absolute;
  background-color: #005bac;
  bottom: -2px;
  left: 0;
  right: 0;
  width: calc(100% - 65px);
  height: 2px;
}

/* hover */
@media screen and (min-width: 768px) {
  .footLinkaccordionTtl:hover {
    color: #005bac;
    opacity: 1;
    filter: alpha(opacity = 100);
  }
  .footLinkaccordionTtl:hover::before {
    position: absolute;
    background-color: #005bac;
    bottom: -2px;
    left: 0;
    right: 0;
    width: calc(100% - 65px);
    height: 2px;
  }
  .footLinkaccordionTtl:hover::after {
    background-color: #005bac;
  }
}

.footLinkaccordionTtl.active::after,
.footLinkaccordionTtl::after {
  display: inline-block;
  width: 10px;
  height: 6px;
  background-color: #404040;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
  margin-left: 8px;
  margin-bottom: 2px;
}
.footLinkaccordionTtl.active::after {
  background-color: #005bac;
  clip-path: polygon(0 100%, 50% 0, 100% 100%);

}
.footLinkaccordionInner li a[target="_blank"] {
  padding-right: 20px;
  background: url(/common_fx/images/icon_target_blank.png) right .3em center no-repeat;
  background-size: 10px 10px;
}
.footLinkaccordionInner li a[target="_blank"].popupLink {
  padding-right: 20px;
  background: url(/common_fx/images/icon_popup.png) right .3em center no-repeat;
  background-size: 10px 10px;
}
.footSns {
  display: flex;
  justify-content: center;
  gap: 30px;
  padding-bottom: 24px;
}

/* ----------------------
2025/3/6 group Security footer
---------------------- */
#footerWrap .copyright {
  text-align: center;
}
#footerWrap .footAdInfo .copyright {
  text-align: left;
}

#footerWrap .footDescription {
  font-size: 10px;
  padding: 20px 16px;
  background: #f2f2f2;
  text-align: center;
}
#footerWrap .DescTxt {
  word-break: keep-all;
}
#footerWrap .DescTxt ~ .copyright {
  margin-top: 8px;
}

/* override gmoGroupSecurity */
.footerSecurityGroup .gmoGroupSecurity_box {
  max-width: 1200px;
}

/* footer-security */
.footerSecurity {
  box-sizing: border-box;
  display: block;
  margin: 0;
  padding: 0 0 40px;
}
.footerSecurity *,
.footerSecurity *::before,
.footerSecurity *::after {
  box-sizing: inherit;
}

.footerSecurityHeader {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  max-width: 1200px;
  min-height: 58px;
  margin: 0 auto;
  padding: 17px 10px;
}

.footerSecurityHeader > .logo {
  width: 159px;
  height: 22px;
  margin: 0;
  padding: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-image: url(/common_fx/images/logo_header.svg);
  white-space: nowrap;
  text-indent: 200%;
  overflow: hidden;
}
.footerSecurityHeader > .logo > a {
  display: block;
  width: 100%;
  height: 100%;
}

.footerSecurityHeader > ul {
  display: flex;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0 0 0 20px;
}
.footerSecurityHeader > ul > li {
  margin: 0;
  padding: 0;
}
.footerSecurityHeader > ul > li > a {
  position: relative;
  display: block;
  width: 20px;
  height: 20px;
  background: #4d4d4d;
  -webkit-mask-size: 20px 20px;
  mask-size: 20px 20px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  mask-position: center center;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 200%;
}

.footerSecurityHeader > ul > li > [href*="x.com"] {
  --footer-svg-icon-twitter: url('data:image/svg+xml;charset=utf8,%3Csvg%20enable-background%3D%22new%200%200%2064%2065.4%22%20height%3D%2265.4%22%20viewBox%3D%220%200%2064%2065.4%22%20width%3D%2264%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m38%2027.6%2024-27.6h-5.6l-20.8%2024-16.6-24h-19l25%2036.4-25%2029h5.6l21.8-25.4%2017.4%2025.4h19.2zm-7.6%209-2.6-3.6-20.2-28.8h8.6l16.2%2023.2%202.6%203.6%2021.2%2030.2h-8.6z%22%2F%3E%3C%2Fsvg%3E');
  -webkit-mask-image: var(--footer-svg-icon-twitter);
  mask-image: var(--footer-svg-icon-twitter);
}
.footerSecurityHeader > ul > li > [href*="youtube"] {
  --footer-svg-icon-youtube: url('data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Cpath%20d%3D%22M22.995%209.448a8.495%208.495%200%200%200-.91-4.127%202.918%202.918%200%200%200-1.718-1%2078.31%2078.31%200%200%200-8.365-.31%2078.4%2078.4%200%200%200-8.335.3c-.548.1-1.055.357-1.459.74-.9.83-1%202.249-1.1%203.448a48.26%2048.26%200%200%200%200%206.476c.03.675.13%201.345.3%201.998.121.505.365.972.71%201.36.407.403.926.674%201.49.78%202.154.265%204.325.375%206.495.329%203.498.05%206.566%200%2010.194-.28a2.878%202.878%200%200%200%201.529-.78c.28-.28.488-.622.61-.999.357-1.096.532-2.244.519-3.398.04-.56.04-3.937.04-4.537zM9.743%2014.585V8.399l5.917%203.108c-1.66.92-3.848%201.959-5.917%203.078z%22%20fill%3D%22%23000000%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E');
  -webkit-mask-image: var(--footer-svg-icon-youtube);
  mask-image: var(--footer-svg-icon-youtube);
}

.footerSecuritySeals {
  list-style: none;
  display: flex;
  gap: 10px;
  justify-content: center;
  margin: 0;
  padding: 40px 0 0;
}
.footerSecuritySeals > li {
  width: 100px;
  margin: 0;
  padding: 0;
}
.footerSecuritySeals > li img {
  vertical-align: top;
}

@media screen and (max-width: 767px) {
  .footerSecurity {
    padding-right: 16px;
    padding-left: 16px;
  }
  .footerSecurityHeader {
    flex-wrap: wrap;
    justify-content: center;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .footerSecurityHeader > ul {
    justify-content: center;
    width: 100%;
    padding: 20px 0 0;
  }
}

/*---------------------------------------------
page_popup
---------------------------------------------*/
.page_popup #headerWrap {
  padding: 20px;
  border-bottom: 2px solid #005BAC;
}
.page_popup #headerWrap .inner .logoImg {
  float: left;
  padding: 7px 0;
}
.page_popup #headerWrap .inner .closePop a {
  float: right;
  padding: 12px;
  background: #005BAC;
}
.page_popup #headerWrap .inner .closePop a img {
  width: 22px;
  height: auto;
}
.page_popup .section .containerInner {
  padding: 0;
}

/*===========================================
 SP
===========================================*/
@media screen and (max-width: 767px) {
  html {
    overflow: auto;
    height: 100%;
  }
  body {
    line-height: 1.5;
  }
  body:before {
    display: none;
    content: "smartphone";
  }
  body a {
    opacity: 1;
    filter: alpha(opacity=100);
  }

  #gNavPC,
  #mainVisualPC,
  .pcOnly,
  img.pcOnly {
    display: none !important;
  }

  html:has(#gNavSP) {
    scroll-padding-top: 60px;
  }
  
  #gNavSP,
  #mainVisualSP,
  .spOnly {
    display: block !important;
  }

  img.spOnly {
    display: inline-block !important;
  }

  .toggleIn {
    display: none !important;
  }

  .toggleOut {
    display: block !important;
  }

  body.onNav {
    overflow: hidden;
    height: 100%;
  }
  body.onNav .toggleIn {
    display: block !important;
  }
  body.onNav .toggleOut {
    display: none !important;
  }

  .slideIndicator {
    display: none !important;
  }

  /*---------------------------------------------
   header
  ---------------------------------------------*/
  #headerWrap a {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  #headerWrap .inner {
    position: relative;
    padding: 0;
  }
  #headerWrap .inner .logoImg {
    float: none;
    height: 22.5px;
    /* padding: 8px 8px 8px 50px;
    text-align: center; */
  }
  #headerWrap .inner .logoImg img {
    width: auto;
    height: 100%;
  }
  #headerWrap .inner .spMenuToggle {
    position: absolute;
    z-index: 900;
    top: 0;
    right: 0;
    width: 44px;
    height: 44px;
    background: url(/common_fx/images/sp_icon_menu_btn_bl.png) center no-repeat #fff;
    background-size: 24px;
  }
  #headerWrap .inner .spMenuToggle.cur {
    background: url(/common_fx/images/sp_icon_menu_close_bl.png) center no-repeat #fff;
    background-size: 24px;
  }
  #headerWrap .inner .headNav {
    position: absolute;
    position: fixed;
    z-index: 100;
    top: 0;
    right: -120%;
    display: block;
    float: none;
    overflow: auto;
    width: 100%;
    padding: 0;
    pointer-events: auto;
    background: #fff;
    transition: all .3s;
  }
  body.onNav #headerWrap .inner .headNav {
    right: 0;
  }
  #headerWrap .inner .headNav .searchHeadNav {
    float: none;
    width: auto;
    padding: 10px 62px 0 15px;
  }
  #headerWrap .inner .headNav .userHeadNav {
    float: none;
    width: auto;
    padding: 44px 16px 0;
  }
  #headerWrap .inner .headNav .userHeadNav .spLoginBtn {
    overflow: hidden;
  }
  #headerWrap .inner .headNav .userHeadNav .spLoginBtn span {
    display: block;
  }
  #headerWrap .inner .headNav .userHeadNav span {
       box-sizing: border-box;
    width: 50%;
    margin: 0;
    vertical-align: middle;
    -o-box-sizing: border-box;
  }
  #headerWrap .inner .headNav .userHeadNav span.kouzaBtn {
    display: block;
    width: 100%;
    padding-right: 0 !important;
  }
  #headerWrap .inner .headNav .userHeadNav span.kouzaBtn a {
    font-size: 18px;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn {
    display: block;
    width: 100%;
    padding-right: 0 !important;
    margin: 10px 0 16px;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn a {
    font-size: 18px;
  }

  /*	アプリアコーディオン	*/
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordion a:hover {
    opacity: 1;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordion > ul > li > a.active:after {
    content: "▲";
    font-size: 14px;
    font-weight: bold;
    min-width: 2em;
    text-align: center;
    line-height: 1;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordion > ul > li > a:after, .accordion > ul > li > a.active:after {
    top: 38%;
    color: #fff;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordionInner {
    background-color: #ffffff;
    padding: 40px 30px;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordionInner .appBox {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordionInner .appBox .iconWrap img {
    max-width: 70px;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordionInner .appBox .txtWrap {
    margin-left: 9vw
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordionInner .appBox .txtWrap p {
    max-width: 45vw;
    font-size: 16px;
    font-weight: bold;
    color: #404040;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordionInner .appBox .txtWrap  p span {
    width: auto;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordionInner .appBox .txtWrap .btn {
    font-weight: bold;
    color: #fff;
    margin-bottom: 0;
  }
  #headerWrap .inner .headNav .userHeadNav span.AppBtn .accordionInner .appBox .txtWrap .btn a {
    font-size: 16px;
    padding: 6px 16px;
  }

  /*	20160329	*/
  #headerWrap .inner .headNav .userHeadNav span.appBtn {
    float: left;
    padding-right: 4px;
    padding-left: 0;
  }
  #headerWrap .inner .headNav .userHeadNav span.inquiryBtn {
    float: right;
    padding-right: 0;
    padding-left: 4px;
  }
  #headerWrap .inner .headNav .userHeadNav span.gaikaBtn {
	  clear:both;
	  width:100%;
    padding-right: 0;
    padding-left: 0;
	margin-bottom:8px;
  }
  #headerWrap .inner .headNav .userHeadNav span.appBtn a.bgColor07{
	  border-color:#404040;
	  border-width:4px!important;
	  color:#404040 ;
	  line-height:16px;
	  height:16px;
  }
  #headerWrap .inner .headNav .userHeadNav span.optBtn {
	  clear:both;
	  width:100%;
    padding-right: 0;
    padding-left: 0;
	margin-bottom: 8px;
  }
  #headerWrap .inner .headNav .userHeadNav span.fundBtn {
	  clear:both;
	  width:100%;
    padding-right: 0;
    padding-left: 0;
	margin-bottom: 32px;
  }
  #headerWrap .inner .headNav .userHeadNav span.inquiryBtn a.bgColor07{
	  border-color:#404040;
	  border-width:4px!important;
	  color:#404040 ;
	  line-height:16px;
	  height:16px;
  }
  #headerWrap .inner .headNav .userHeadNav p{
	text-align:center;
    letter-spacing: 0;
	margin-bottom:8px;
	font-size: 14px;
    font-weight: bold;
    line-height: 24px;
  }
  /*	/20160329	*/
  #headerWrap .inner .headNav .userHeadNav a {
    display: block;
    width: auto;
    height: 24px;
    padding: 11px 0;
  }
  #gNavSP .gNav {
    padding: 0 16px 20px;
  }

  #gNavSP .gNav .parentList {
    border-bottom: 1px solid #bfbfbf;
  }
  #gNavSP .gNav .parentList .accWrap {

  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .btn,
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li a {
    font-size: 16px;
    display: block;
    padding: 16px 32px 16px 16px;
    text-align: center;
    opacity: 1;
    color: #404040;
    background: #fff;
    filter: alpha(opacity=100);
    text-align: left;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .btn.spOnly {
    border-top: none;
    padding: 0;
    padding: 10px 0;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .childList {
    padding: 0 0 6px 32px;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .childList > li.spOnly a {
    padding-top: 8px;
    padding-bottom: 10px;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .childList .accContents {
    padding-left: 16px;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .linkContainer.col2wrap ul {
    display: flex;
    flex-wrap: wrap;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .linkContainer.col2wrap ul li {
    width: 100%;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .linkContainer li a {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  /* #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .linkContainer li:first-child {
    padding-top: 8px;
    padding-bottom: 10px;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .linkContainer li:not(:first-child) {
    padding-top: 10px;
    padding-bottom: 10px;
  } */
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .childList > li a {
    padding-left: 0;
    line-height: 1.4375;
    font-weight: bold;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .childList li ul li.nestLink a {
    padding-top: 8px;
    padding-bottom: 10px;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .childList li ul li.nestLink a + a {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li a.blank span:after {
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    background: url(/common_fx/images/icon_target_blank.png) no-repeat center center;
    background-size: 10px 10px;
    position: relative;
    top: 0;
    right: -7px;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .btn {
    font-size: 16px;
    font-weight: bold;
    border-top: 1px solid #bfbfbf;
    background: #fff;
    transition: .1s all;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .btn.accToggle {
    position: relative;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .btn.accToggle::before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 10px;
    height: 6px;
    background: #404040;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 20px;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
  }

  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .childList .accContents,
  #headerWrap .inner .headNav #gNavSP .gNav .parentList > li .childList {
    display: none;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList .cur > .btn {
    color: #005BAC;
  }
  #headerWrap .inner .headNav #gNavSP .gNav .parentList .cur > .btn.accToggle::before {
    background: #005bac;
    clip-path: polygon(0 100%, 50% 0, 100% 100%);
  }
  #headerWrap.campaignHeader {
    background: #404040;
  }
  #headerWrap.campaignHeader .inner .logoImg {
    height: 22px;
    padding-top: 11px;
    padding-bottom: 11px;
    padding-left: 44px;
  }
  #headerWrap.campaignHeader .inner .headNav {
    top: 44px;
    background: #404040;
  }
  #headerWrap.campaignHeader .inner .headNav .camHeadNav {
    float: none;
    text-align: center;
  }
  #headerWrap.campaignHeader .inner .headNav .camHeadNav a {
    font-size: 14px;
    display: block;
    padding: 12px;
    border-top: 2px solid #000;
  }
  #headerWrap.campaignHeader .inner .headNav .camHeadNav a:hover {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  #headerWrap.campaignHeader .inner .headNav .camHeadNav span {
    display: block;
    width: 100%;
    margin: 0;
  }
  #headerWrap.campaignHeader .inner .spMenuToggle {
    border-right: 1px solid #e5e5e5;
    background-color: #404040;
  }
  #headerWrap.campaignHeader .inner .spMenuToggle.cur {
    border-right: none;
  }

/*---------------------------------------------
　ヘッダー固定配置
---------------------------------------------*/
  #headerWrap {
    position:fixed;
    width:100%;
    top:0;
    border-bottom: 1px solid #c8c8c8;
  }
  #headerWrap .inner .logoImg {
    padding: 11px;
    text-align: left;
  }
  .spKouzaBtn {
    position:fixed;
    top: 0;
    right: 105px;
    margin-top: 5px;
    z-index:999;
  }
  .spKouzaBtn a {
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    display: inline-block;
    padding: 10px 0;
    text-align: center;
    letter-spacing: 0;
    color: #fff !important;
    width: 100px;
    height: 34px;
    background: #DC1C26;
    box-sizing:border-box;
  }
  .onNav .spKouzaBtn {
    display:none !important;
  }
  .spAppBtn {
    position:fixed;
    top: 0;
    right: 42px;
    margin-top: 5px;
    z-index:999;
  }
  .spAppBtn a {
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    display: inline-block;
    padding: 10px 0;
    text-align: center;
    letter-spacing: 0;
    color: #fff !important;
    width: 58px;
    height: 34px;
    background: #404040;
    box-sizing:border-box;
  }
  .onNav .spAppBtn {
    display:none !important;
  }
  body {
    padding-top:44px;
  }

  /*---------------------------------------------
    footer
  ---------------------------------------------*/
  .footNavWrap {
    margin-top: 100px;
  }
  .footNavWrap .footNav .pageTop {
    right: 10px;
  }
  .footNavWrap .footNav {
    padding: 0 15px;
  }
  .footNavWrap .footNav .topicPath ul li a {
    font-size: 12px;
    padding: 10px;
    padding-right: 8px;
    padding-left: 18px;
  }
  .footNavWrap .footNav .topicPath ul li:first-child a{
    top: -1px;
  }
  .footNavWrap .footNav .topicPath ul li:nth-of-type(n+2) a::after{
    top: 1.2em;
    left: 0;
    width: 6px;
    height: 6px;
  }
  #footerWrap a {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  .page_popup #footerWrap .footInfoWrap {
    padding: 0;
  }

  /* ----------------------
  2025/1/31 footer upddate 
  ---------------------- */
  #footerWrap .footLinkCategory {
  }
  .footLinkaccordionWrap {
    display: block;
    padding: 0;
    border-bottom: solid 1px #bfbfbf;
  }
  .footLinkaccordionInner {
    width: calc(100% - 48px);
    font-size: 14px;
    line-height: 1;
    margin: 0 24px;
  }
  .footLinkaccordionList {
    display: flex;
    justify-content: center;
    gap: 0px 80px;
    display: block;
  }
  .footLinkaccordionInner ul {
    display: block;
    width: 100%;
  }
  #footerWrap .footLinkaccordionInner .footLinkaccordionList {
    margin-top: 8px;
  }
  #footerWrap .footLinkaccordionInner ul li {
    line-height: 1.5;
    margin-bottom: 12px;
  }
  #footerWrap .footLinkaccordionInner ul:last-child li {
    margin-bottom: 16px;
  }
  #footerWrap .footLinkaccordionInner ul li + li {
    padding-top: 0;
  }
  .footLinkaccordionWrap > :nth-child(1) { order: 1; }
  .footLinkaccordionWrap > :nth-child(2) { order: 2; }
  .footLinkaccordionWrap > :nth-child(3) { order: 3; }
  .footLinkaccordionWrap > :nth-child(4) { order: 4; }
  .footLinkaccordionWrap > :nth-child(5) { order: 5; }
  .footLinkaccordionWrap > :nth-child(6) { order: 6; }
  .footLinkaccordionWrap > :nth-child(7) { order: 7; }
  .footLinkaccordionWrap > :nth-child(8) { order: 8; }
  .footLinkaccordionTtl {
    font-size: 14px;
    line-height: 20px;
    padding: 12px 34px 12px 16px;
    border-left: none;
    border-right: none;
    border-top: solid 1px #bfbfbf;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
  }
  .footLinkaccordionInner + .footLinkaccordionTtl {
    border-left: none;
    border-right: none;
    border-top: solid 1px #bfbfbf;
  }
  .footLinkaccordionTtl::before,
  .footLinkaccordionTtl::after {
    display: block;
    content: "";
    margin: auto;
  }
  .footLinkaccordionTtl.active {
    color:  #005bac;
  }
  .footLinkaccordionTtl.active::before {
    display: none;
  }
  .footLinkaccordionTtl.active::after,
  .footLinkaccordionTtl::after {
    position: absolute;
    right: 16px;
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: #404040;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
  }
  .footLinkaccordionTtl.active::after {
    background-color: #005bac;
    clip-path: polygon(0 100%, 50% 0, 100% 100%);
  }
  .footSns {
    padding: 16px 0;
  }


  #footerWrap .footInfoWrap .footInner {
    padding: 16px;
  }
  .page_popup #footerWrap .footInfoWrap .footInner {
    padding: 10px;
  }
  #footerWrap .footInfoWrap .footInner .footBtnWrap {
    padding: 0;
  }
  #footerWrap .footInfoWrap .footInner .footBtnWrap ul li {
    float: none;
    width: auto;
    margin-right: 0;
    margin-bottom: 16px;
    text-align: center;
  }
  #footerWrap .footInfoWrap .footInner .footBtnWrap ul li:first-child {
    float: none;
    width: auto;
    margin-right: 0;
  }
  #footerWrap .footInfoWrap .footInner .footBtnWrap ul li a {
    padding: 15px;
  }
  #footerWrap .footInfoWrap .footInner .footBtnWrap ul li a img {
    margin-right: 20px;
  }
  #footerWrap .footInfoWrap .footInner .footBtnWrap ul li a .ttl {
    margin-left: 20px;
  }
  #footerWrap .footInfoWrap .footInner .footAdInfo {
    margin-top: 6px;
    padding: 0;
  }
  #footerWrap .footInfoWrap .footInner .footAdInfo:first-child {
    margin: 0;
    margin-top: 0;
  }
  #footerWrap .footInfoWrap .footInner .footAdInfo .accWrap .ttl {
    font-size: 12px;
    margin-bottom: 0;
    padding: 0;
    background: url(/common_fx/images/sp_icon_foot_arrow_b.png) right center no-repeat;
    background-size: 21px 8px;
  }
  #footerWrap .footInfoWrap .footInner .footAdInfo .accWrap .txt {
    display: none;
    padding: 10px 0;
  }
  #footerWrap .footInfoWrap .footInner .footAdInfo .accWrap.cur .ttl {
    background: url(/common_fx/images/sp_icon_foot_arrow_t.png) right center no-repeat;
    background-size: 21px 8px;
  }
  #footerWrap .footInfoWrap .footInner .footAdInfo .accWrap.cur .txt {
    display: block;
  }
  #footerWrap .footLinkWrap .footInner {
    padding: 10px 0 0;
    background: #f2f2f2;
  }
  #footerWrap .footLinkWrap .footInner ul {
    margin-bottom: 10px;
    padding: 0 15px;
  }

  /*---------------------------------------------
   main
  ---------------------------------------------*/
  #mainVisualSP .flex-viewport {
    overflow: visible !important;
  }
  #mainVisualSP .slides {
    overflow: hidden;
  }
  #mainVisualSP .mainVisual {
    min-height: 260px;
    padding-top: 30px;
    text-align: center;
    background: url(/images/mainvisual/sp_bg_mainvisual.jpg) no-repeat center bottom;
  }
  #mainVisualSP .mainVisual .slideTitleMain {
    height: 110px;
    background: url(/images/mainvisual/sp_bg_mainvisual_first.png) no-repeat center top;
  }
  #mainVisualSP .mainVisual .slideTitleMain img {
    width: 203px;
    height: auto;
    padding-top: 12px;
  }
  #mainVisualSP .mainVisual .slideTitle {
    font-weight: bold;
    margin-top: 24px;
  }
  #mainVisualSP .mainVisual .slideTitleSub {
    font-size: 11px;
    font-weight: bold;
    margin-top: 40px;
  }
  #mainVisualSP .mainVisual .slideLink {
    font-size: 21px;
    font-weight: bold;
    text-decoration: underline;
  }
  #mainVisualSP .mainBnrWrap {
    overflow: hidden;
  }
  .top_index #mainVisualSP .mainBnrWrap {
    background: #e6e6e6;
  }
  #mainVisualSP .mainBnr {
    width: 50%;
    margin: 0 auto;
    padding: 10px 0;
  }
  #mainVisualSP .mainBnr .slides li img {
    width: 100%;
    height: auto;
  }

  #contents {
    padding: 0 0 0;
  }
  .top_index #contents {
    padding: 0 0;
  }

  .page_popup #headerWrap {
    padding: 0;
    border-bottom: none;
  }
  .page_popup #headerWrap .inner {
    position: relative;
  }
  .page_popup #headerWrap .inner .logoImg {
    float: none;
    padding: 8px 8px 8px 55px;
  }
  .page_popup #headerWrap .closePop {
    position: absolute;
    top: 0;
    left: 0;
  }
  .page_popup #contents {
    padding: 30px 0 0;
  }
  .page_popup #contents .hd_01 {
    font-size: 20px;
    text-align: center;
  }
  .page_popup #contents .hd_02 {
    font-size: 16px;
    margin-top: 40px;
  }
  .page_popup #contents .hd_wrap .hd_02 {
    font-size: 16px;
    margin-top: 0;
    margin-bottom: 20px;
  }
  .page_popup #contents a {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  .page_popup #contents .section .containerInner {
    padding: 0 16px;
  }
  .ZoomLoope a{
	  display:block;
  }
  .ZoomLoopeIn{
	  background-image: url(/common_fx/images/icon_zoom.png);
	  background-position:center;
	  background-repeat:no-repeat;
	  background-size:60px;
	  width:100%;
	  height:100%;
	  display:block;
	  position:absolute;
	  left:0px;
	  top:0px;
  }
}

/* 20210928GMOグループヘッダー対応 */
#gaikaexbody,
#corporatebody,
#optbody,
#fundbody{
  overflow:hidden;
}

/*===========================================
 IE
===========================================*/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {

#gNavPC .gNav ul.parentList > li:nth-child(7) ul.childList{
  min-width: calc(100% - 62px);
}

}


/*===========================================
  2022.10 gNav fixed
===========================================*/

/* gNavPC ====================*/
/* btnList */
#gNavPC .btnList {
  display: none;
  flex-wrap: nowrap;
  justify-content: flex-end;
  align-items: center;
}
#gNavPC .btnList li {
  margin-left: 10px;
}
#gNavPC .btnList li a {
  display: block;
  padding: 5px 12px;
  border: 1px solid #fff;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  text-decoration: none;
  white-space: nowrap;
}

#gNavPC .gNavFloating{
  position: fixed;
  top: 29px;
  right: 0;
  left: 0;
  margin: 0 auto;
  background: #fff;
  border-bottom: 2px solid #005BAC;
  transform: translateY(-100%);
  transition: .3s all;
  opacity: 0;
  visibility: hidden;
  z-index: 121;
}

/* navFixed */
#gNavPC .gNavFloating.navFixed {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}
#gNavPC .gNavFloating.navFixed .gNav {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-content: center;
}
#gNavPC .gNavFloating.navFixed .gNav ul.parentList {
  width: calc(100% - 202px);
  width: 1200px;
}
#gNavPC .gNavFloating.navFixed .gNav ul.parentList > li {
  height: 42px;
}
#gNavPC .gNavFloating.navFixed .gNav ul.parentList > li .btn {
  height: 42px;
}
#gNavPC .gNavFloating.navFixed .gNav ul.parentList > li.cur .btn,
#gNavPC .gNavFloating.navFixed .gNav ul.parentList > li .btn:hover,
#gNavPC .gNavFloating.navFixed .gNav ul.parentList > li .btn.on {
  color: #005BAC;
}
#gNavPC .navFixed .gNav ul.parentList > li .btn:before {
  content: none;
}
#gNavPC .navFixed .gNav ul.parentList > li ul.childList {
  top: 42px;
  border-top: 2px solid #005BAC;
}
#gNavPC .gNavFloating.navFixed .btnList {
  display: flex;
  pointer-events: auto;
}
#gNavPC .gNavFloating.navFixed .btnList a:hover {
  opacity: .5;
}

@media screen and (max-width: 1000px) {
  #gNavPC .gNavFloating.navFixed .gNav {
    padding: 0 10px;
  }
}

@media screen and (max-width: 768px) {
  #gNavPC .gNavFloating.navFixed {
    top: 0;
  }
}

/* gNavSP ====================*/
#gNavSP .btnList {
  display: none;
}


/*===========================================
 2022.11 new itemList title
===========================================*/
.itemList_ttl{
	position: relative;
	padding-left: 25px;
}
.itemList_ttl:before {
  content: '';
  position: absolute;
  left: 0;
  top: 5px;
  height: 13px;
  width: 0px;
  border-left: 8px solid #f03;
  border-right: 8px solid #f03;
  border-bottom: 5px solid transparent;
}

@media screen and (max-width: 767px){
  #contents .hd_wrap .hd_03.itemList_ttl {
    text-align: left;
  }
  .itemList_ttl:before {
  top: 3px;
  }
}

/*===========================================
 2024.12 character bnr
===========================================*/

.tabOnly {
  display: none;
}
#gNavPC .gNavFloating.navFixed .tabOnly {
  display: inline-block;
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
  .tabOnly {
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  #gNavSP .g_app .spOnly {
    display: inline-block !important;
  }
}

/*===========================================
 22025.12 SNS share
===========================================*/
.snsHeadNav {
  box-sizing: border-box;
  display: flex;
  align-items: end;
  justify-content: end;
  gap: 8px;
  width: 100%;
  height: 0;
  margin: 0;
  padding: 0 230px 0 16px;
}
.snsHeadNav > li {
  display: contents;
}
.snsHeadNav li > a {
  display: block;
  width: 34px;
  height: 34px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 200%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url(/common_fx/images/icon_sns_x_follow.svg);
}
@media screen and (max-width: 767px) {
  .snsHeadNav li > a {
    position: absolute;
    top: 8px;
    left: 16px;
    width: 30px;
    height: 30px;
  }
}

.snsFootNav {
  box-sizing: border-box;
  display: flex;
  gap: 16px;
  width: fit-content;
  margin: 24px auto;
  padding: 0 54px 0 0;
}
.snsFootNav dt {
  display: flex;
  align-items: center;
  justify-content: start;
  font-size: 12px;
}
.snsFootNav dd {
  display: contents;
}
.snsFootNav a {
  display: block;
  width: 34px;
  height: 34px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 200%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.snsFootNav [data-sharelink=line] {
  background-image: url(/common_fx/images/icon_sns_line_share.svg);
}
.snsFootNav [data-sharelink=x] {
  background-image: url(/common_fx/images/icon_sns_x_share.svg);
}
.snsFootNav [data-sharelink=facebook] {
  background-image: url(/common_fx/images/icon_sns_facebook_share.svg);
}
.snsFootNav [data-sharelinkcopy] {
  background-image: url(/common_fx/images/icon_sns_link_share.svg);
}

@media screen and (max-width: 767px) {
  .snsFootNav a {
    width: 30px;
    height: 30px;
  }
}

.snsNewsNav {
  box-sizing: border-box;
  display: flex;
  gap: 16px;
  width: fit-content;
  margin: 0 0 16px auto;
  padding: 0;
}
.snsNewsNav li {
  display: contents;
}
.snsNewsNav a {
  display: block;
  width: 24px;
  height: 24px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 200%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.snsNewsNav [data-sharelink=line] {
  background-image: url(/common_fx/images/icon_sns_line_share.svg);
}
.snsNewsNav [data-sharelink=x] {
  background-image: url(/common_fx/images/icon_sns_x_share.svg);
}
.snsNewsNav [data-sharelink=facebook] {
  background-image: url(/common_fx/images/icon_sns_facebook_share.svg);
}
.snsNewsNav [data-sharelinkcopy] {
  background-image: url(/common_fx/images/icon_sns_link_share.svg);
}


/*===========================================
 2026.01 bnrArera
===========================================*/

.top_index .bnrArera .topInner{
  margin: 0 auto;
  padding: 32px 0 0;
  max-width: 1220px;
  overflow: visible;
}
.top_index .bnrArera .topInner .topSlider {
  visibility: hidden;
}
.slick-dotted.slick-slider {
  margin-bottom: 0;
}
.top_index .bnrArera .slick-initialized .slick-slide {
  padding: 0 11px;
  box-sizing: border-box;
}
.top_index .bnrArera .slick-initialized .slick-slide a {
  transition: opacity ease 0.3s;
}
.top_index .bnrArera .slick-dots {
  position: static;
  margin-bottom: -30px;
}
.top_index .bnrArera .slick-prev,
.top_index .bnrArera .slick-next {
  width: 25px;
  height: 25px;
  background: #808080;
  border-radius: 50%;
  z-index: 1;
  margin-top: -21px;
}
.top_index .bnrArera .slick-prev:hover,
.top_index .bnrArera .slick-next:hover {
  opacity: .5;
}
.top_index .bnrArera .slick-prev:before,
.top_index .bnrArera .slick-next:before {
  opacity: 1;
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-top: 3px solid #fff;
  border-left: 3px solid #fff;
  position: relative;
}
.top_index .bnrArera .slick-prev:before{
  transform: rotate(-45deg);
  left: 9px;
}
.top_index .bnrArera .slick-next:before{
  transform: rotate(135deg);
  right: -7px;
}
.top_index .bnrArera .slick-dots li {
  width: 48px;
  height: 48px;
  margin: 0;
}
.top_index .bnrArera .slick-dots li button {
  width: 48px;
  height: 48px;
  padding: 0;
}
.top_index .bnrArera .slick-dots li button:before {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #bfbfbf;
  content: "";
  opacity: 1;
}
.top_index .bnrArera .slick-dots li.slick-active button:before {
  background: #1D476E;
}
@media screen and (max-width: 1040px) {
  .top_index .bnrArera .slick-prev {
    left: 15px;
    opacity: .9;
  }
  .top_index .bnrArera .slick-next {
    right: 15px;
    opacity: .9;
  }
}
@media screen and (max-width: 767px) {
  .top_index .bnrArera .topInner {
    padding: 32px 0 0;
  }
  .top_index .bnrArera .slick-initialized .slick-slide {
    padding: 0 5px;
  }
  .top_index .bnrArera .slick-dots {
    margin-bottom: 0;
  }
}


/*===========================================
 2026.01 CTA btn
===========================================*/
.top_index .cta_lead {
  display: flex;
  align-items: center;
  width: fit-content;
  margin: 30px auto 0;
  color: #1D476E;
}
.top_index .cta_lead::before,
.top_index .cta_lead::after {
  display: block;
  transform: translateY(5px);
  width: 64px;
  height: 1px;
  background: #1D476E;
  content: "";
}
.top_index .cta_lead > p {
  display: block;
  margin: 0 12px;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.025em;
  text-indent: 0.025em;
  text-align: center;
}
.top_index .cta_lead > p > em {
  color: #dc1c26;
  font-style: normal;
}
.top_index .cta_lead > p b {
  display: inline-block;
  transform: translateY(4%);
  font-size: 32px;
  font-weight: normal;
}

@media screen and (max-width: 767px) {
  .top_index .cta_lead {
    margin-top: 14px;
  }
  .top_index .cta_lead::before,
  .top_index .cta_lead::after {
    transform: translateY(2px);
    width: 32px;
  }
  .top_index .cta_lead > p {
    font-size: 14px;
  }
  .top_index .cta_lead > p b {
    font-size: 20px;
  }
}


/*===========================================
 2026.01 cmMv
===========================================*/
.top_index .mvArea img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.top_index .mvLogo > picture {
  position: relative;
  display: block;
  overflow: hidden;
}
.top_index .mvLogo > picture::before {
  background-color: #fff;
  content: "";
  display: block;
  position: absolute;
  top: -100px;
  left: 0;
  width: 30px;
  height: 100%;
  opacity: 0;
  transition: cubic-bezier(0.32, 0, 0.67, 0);
  animation: hero_badge__kiran 0.0s ease 2.4s infinite;
  animation-duration: 10s;
  filter: opacity(0.9);
}
@media screen and (min-width: 768px) {
  .top_index .mvArea .topInner {
    background-position: center center;
    background-size: cover;
    background-image: url(/images/mainvisual/pc_bg_mv_202601@2x.webp);
  }
  .top_index .mvContents {
    position: relative;
    display: block;
    max-width: 1200px;
    margin: 0 auto;
  }
  .top_index .mvHuman {
    width: calc(652 / 1200 * 100%);
    max-width: 652px;
    margin: 0 0 0 auto;
  }
  .top_index .mvLogo {
    display: block;
    margin: 0;
    position: absolute;
    top: calc(80 / 512 * 100%);
    left: 0;
    width: calc(544 / 1200 * 100%);
    max-width: 544px;
    border-radius: clamp(1px, calc(16 / 1200 * 100vw), 16px);
    box-shadow: 0 8px 8px 0 rgba(0,0,0,0.25);
    overflow: hidden;
  }
  .top_index .mvLinkArea {
    position: absolute;
    display: block;
    margin: 0;

    bottom: calc(47 / 512 * 100%);
    left: calc(44/ 1200 * 100%);
    width: calc(450 / 1200 * 100%);
    max-width: 450px;
  }

  .top_index .mvArea .cta_lead {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .top_index .mvContents {
    display: contents;
  }
  .top_index .mvImgArea {
    display: block;
    margin: 0 auto;
    padding-top: calc(16 / 360 * 100%);

    background-position: center center;
    background-size: cover;
    background-image: url(/images/mainvisual/sp_bg_mv_202601@2x.webp);
  }
  .top_index .mvHuman {
    /* width: calc(208 / 360 * 100%); */
    width: calc(292 / 360 * 100%);
    max-width: 652px;
    /* margin: -24px auto 0; */
    margin: 0 auto;
    position: relative;
    z-index: 100;
  }
  .top_index .mvLogo {
    display: block;
    width: calc(280 / 360 * 100%);
    margin: 0 auto;
    border-radius: clamp(1px, calc(10 / 360 * 100vw), 10px);
    box-shadow: 0 4px 4px 0 rgba(0,0,0,0.25);
    overflow: hidden;
  }
  .top_index .mvLogo > picture::before {
    animation-duration: 10s;
    animation-delay: 0.5s;
    z-index: 99;
  }
  .top_index .mvLinkArea {
    padding-top: calc(16 / 360 * 100%);
    padding-inline: calc(32 / 360 * 100%);
  }
}
@media (hover: hover) {
  .top_index .mvLinkArea a {
    transition: filter 0.3s ease;
  }
  .top_index .mvLinkArea a:hover {
    opacity: 1;
    filter: brightness(1.5);
  }
}

/* keyframes ++++++++++++++++ */
@keyframes hero_badge__kiran {
  0% {
    transform: scale(2) rotate(45deg);
    opacity: 0;
  }
  1% {
    transform: scale(20) rotate(45deg);
    opacity: 0.7;
  }
  2% {
    transform: scale(30) rotate(45deg);
    opacity: 0.4;
  }
  4% {
    transform: scale(45) rotate(45deg);
    opacity: 0.2;
  }
  8% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
  50% {
    transform: scale(2) rotate(45deg);
    opacity: 0;
  }
  51% {
    transform: scale(20) rotate(45deg);
    opacity: 0.3;
  }
  52% {
    transform: scale(30) rotate(45deg);
    opacity: 0.1;
  }
  53% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
  54% {
    transform: scale(2) rotate(45deg);
    opacity: 0;
  }
  55% {
    transform: scale(20) rotate(45deg);
    opacity: 0.7;
  }
  57% {
    transform: scale(30) rotate(45deg);
    opacity: 0.3;
  }
  68% {
    transform: scale(45) rotate(45deg);
    opacity: 0.1;
  }
  60% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}