  /* add-2025 */
:root { --header-h: 2rem; --c_thumb: #f8f8f8; }
[id] { scroll-margin-top: var(--header-h); }
h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: 500; line-height: 1; }
body { line-height: 1.5em; }
a:link { color: var(--c_black); }
a:visited { color: var(--c_purple); }
a:hover { color: var(--c_purple); text-decoration: none; }
a:active { color: var(--c_purple); text-decoration: none; }

.l-main__section--featured { margin:0 0 4rem 0; }
.mainArea:before,
.mainArea:after { display: none; }
.entryContent a:link,.entryContent a:visited,.entryContent a:active,
.webContent a:link,.webContent a:visited,.webContent a:active,
.pageBody a:link,.pageBody a:visited,.pageBody a:active,
.customPage a:link,.customPage a:visited,.customPage a:active { color:var(--c_purple); font-weight: 500; }
.entryContent a:hover,
.webContent a:hover,
.pageBody a:hover,
.customPage a:hover { color:var(--c_purple); font-weight: 500; text-decoration: underline; }

#main.container { width:100%; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; margin:0; }
#main.container:after { display:none; }
#main.container img { width:auto; max-width: 100%; }
#main.container #breadcrumb { width: 100%; margin:0 auto 0 0; padding:0; }
#main.container #breadcrumb .breadcrumb { margin:0; padding:0 0 1.5rem 0; border-radius: 0; text-align: right; }
#main.container #visitorcontent { width:100%; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; margin:0; }
#main.container #visitorcontent #content { float: none; }
#main.container #visitorcontent #sidebar { float: none; }

#main.container .page-header { width:100%; display:flex; justify-content: space-between; align-items: center; margin:0 0 3rem 0; padding:0.5em 1.5em; background: var(--c_purple); border:none; color:var(--c_white); }
#main.container .page-header .page-title { font-size: 1.5em; line-height: 1.5; background: none; padding:0; margin:0; border: none; color: var(--c_white); }
#main.container #content { width: 75%; float: none; }
#main.container #content .page-header { width:100%; display:flex; justify-content: space-between; align-items: center; margin:0 0 3rem 0; padding:0.5em 1.5em; background: var(--c_purple); border:none; color:var(--c_white); }
#main.container #content .page-header .page-title { font-size: 1.5em; line-height: 1.5; background: none; padding:0; margin:0; border: none; color: var(--c_white); }
#main.container #content .page-header .rss { position: static; margin:0.5em 0; }
#main.container #content .page-header .rss a { display:inline-flex; align-items: center; color:var(--c_white); background-color: var(--c_purple); padding:0 0.5em; border-radius: 0; text-decoration: none; }
#main.container #content .page-header .rss a i { color: var(--c_white); }
#main.container #content .page-header .rss a:hover,
#main.container #content .page-header .rss a:hover i { opacity: 0.8; }
#main.container #content .entry-header { margin:2em 0; border-bottom:solid 1px var(--c_purple); }
#main.container #content .entry-header .entry-title { font-size: 1.75em; line-height: 1.5em; color: var(--c_purple); background: none; padding:0; margin:0 0 1.5em 0; border: none; }

#main.container #content h1 { font-size: 1.4em; line-height: 1.5em; color:var(--c_purple); border:none; padding:0.25em 0; margin:2em 0 0.5em 0; }
#main.container #content h2 { font-size: 1.2em; line-height: 1.5em; background-color: var(--c_purple); color:var(--c_white); border:none; padding:0.5em 1.5rem; margin:2em 0 1.25em 0; }
#main.container #content h2 a { color:var(--c_white); }
#main.container #content h3 { font-size: 1.2em; line-height: 1.5em; background-color: var(--c_gray); border-radius: 0; border:none; padding:0.5em 1em; margin: 2em 0 1.25em 0; }
#main.container #content h4 { font-size: 1.2em; line-height: 1.5em; border-left:solid var(--w_line) var(--c_purple); padding: 0.35em 1em; margin: 2em 0 1em 0; }
#main.container #content h5 { font-size: 1.2em; line-height: 1.5em; padding:0 0 1em 0; border-bottom:solid 1px var(--c_purple); margin: 2em 0 1em 0; }
#main.container #content h6 { font-size: 1.1em; line-height: 1.5em; padding:0; margin: 2em 0 0.5em 0; }
#main.container #content h1:first-child,
#main.container #content h2:first-child,
#main.container #content h3:first-child,
#main.container #content h4:first-child,
#main.container #content h5:first-child,
#main.container #content h6:first-child { margin-top:0; }
#main.container #content ul,
#main.container #content ol { margin:1em 0 1em 1em; }
#main.container #content ul li,
#main.container #content ol li { font-size: 1em; line-height: 1.5em; margin:0.5em 0; }
#main.container #content p { font-size: 1.05em; line-height: 1.8em; }
#main.container #content ul,
#main.container #content .webContent ul,
#main.container #content .pageBody ul,
#main.container #content .customPage ul { list-style:circle; list-style-position: outside; margin-left: 1em; }
#main.container #content .webContent ol,
#main.container #content .entryContent ol,
#main.container #content .pageBody ol,
#main.container #content .customPage ol { list-style:decimal; list-style-position: outside; margin-left: 1.5em; }
#main.container #content .THKthumbnails { margin:0; list-style: none; }
#main.container #content .catArea .THKthumbnail { padding:0; }
#main.container #content .btn { margin:0; padding:0; border:none; background: none; text-shadow: none; box-shadow: none; color:var(--c_purple); }
#main.container #content .btn i { display:none; }
#main.container #content .archiveLink { margin:1em 0; padding:0; }
#main.container #content .archiveLink a { border:none; background: none; margin:0; padding:0; text-shadow: none; box-shadow: none; color:var(--c_purple); }
#main.container #content .archiveLink a span { display:none; }
#main.container #content .span3 { width:33.333%; padding-right:2em; }
#main.container #content a:hover { text-decoration: underline; }
#main.container #content .newsbox .tab-pane ul li { margin: 0 0 0.5em 0; padding: 0.15em 0 0.5em 0; border-bottom:solid 1px var(--c_gray); }
#main.container #content .newsbox .tab-pane ul li .entry { line-height: 1.5; }

#main.container #content .pager { margin:2em 0; }
#main.container #content .pager li a { display: inline-flex; align-items: center; padding:0.5em 1em; border: none; border-radius: 0; background-color: var(--c_gray); color:var(--c_purple); }
#main.container #content .pager li a .fa-solid.fa-angle-left { margin:0 0.5em 0 0 !important; }
#main.container #content .pager li a .fa-solid.fa-angle-right { margin:0 0 0 0.5em !important; }
#main.container #content .pager li a:hover,
#main.container #content .pager li a:hover .fa-solid { text-decoration: none; background-color: var(--c_purple); color:var(--c_white); }

#main.container #content #loadMoreBtn { font-family: var(--f_base); font-weight: 500; line-height: 1.5; letter-spacing: 0.1em; display: block; width: 100%; padding:0.75em 2em; border: none; border-radius: 0; background-color: var(--c_gray); color:var(--c_purple); font-size: 1em; cursor: pointer; }
#main.container #content #loadMoreBtn:hover { background-color: var(--c_purple); color:var(--c_white); }

/* .linkStyle */
#main.container #content ul.linkStyleA,
#main.container #content ul.linkStyleB,
#main.container #content ul.linkStyleD,
#main.container #content ul.linkStyleE,
#main.container #content ul.linkStyleF,
#main.container #content ul.linkStyleI,
#main.container #content ul.linkStyleJ,
#main.container #content ul.linkStyleK,
#main.container #content ul.pdfLinkStyleA { list-style: none; padding: 0; margin: 2em 0; }
#main.container #content ul.linkStyleI { margin: 1em 0; }
#main.container #content ul.linkStyleA > li,
#main.container #content ul.linkStyleD > li,
#main.container #content ul.linkStyleE > li,
#main.container #content ul.linkStyleF > li,
#main.container #content ul.linkStyleI > li,
#main.container #content ul.linkStyleJ > li { background-image: url(/assets/img/svgs/arrow.svg); background-repeat: no-repeat; background-size: 1em; padding: 0 0 0 1.75em; margin: 0 0 0.5em 0; }
#main.container #content ul.linkStyleG > li,
#main.container #content ul.linkStyleH > li,
#main.container #content ul.linkStyleK > li { background-image: none; padding: 0 0 0 0; margin: 0 0 0.5em 0; }
#main.container #content ul.linkStyleA > li,
#main.container #content ul.linkStyleE > li,
#main.container #content ul.linkStyleF > li,
#main.container #content ul.linkStyleI > li,
#main.container #content ul.linkStyleJ > li { background-position: left 0.25em; }
#main.container #content ul.linkStyleG > li,
#main.container #content ul.linkStyleH > li { background-position: -2000px 0.25em; }
#main.container #content ul.linkStyleA > li ul,
#main.container #content ul.linkStyleE > li ul,
#main.container #content ul.linkStyleF > li ul,
#main.container #content ul.linkStyleI > li ul,
#main.container #content ul.linkStyleJ > li ul { padding: 0; margin:0.5em 0 1.5em 0; }
#main.container #content ul.linkStyleB > li { display: inline; padding-right: 7px; }
#main.container #content ul.linkStyleD { background-color: #f5f5f5; border: solid 1px #ccc; border-radius: 6px; padding: 1em 1.5em; }
#main.container #content ul.linkStyleD::before,
#main.container #content ul.linkStyleD::after { content: ""; display: table; line-height: 0; }
#main.container #content ul.linkStyleD::after { clear: both; }
#main.container #content ul.linkStyleD > li { display: block; float: left; background-image: none; width: 28%; padding:0; margin: 0.25em 0; }

#main.container #content ul.linkStyleD > li.end { margin-right: 0; }
#main.container #content ul.linkStyleE > li a,
#main.container #content ul.linkStyleH > li a { font-weight: bold; }
#main.container #content ul.linkStyleF { background-color: #f5f5f5; border: solid 1px #ccc; border-radius: 6px; padding: 1em 1.5em; }
#main.container #content ul.linkStyleF::before,
#main.container #content ul.linkStyleF::after { content: ""; display: table; line-height: 0; }
#main.container #content ul.linkStyleF::after { clear: both; }
#main.container #content ul.linkStyleF > li { display: block; float: left; width: 28%; margin: 0.25em 0; }
#main.container #content ul.linkStyleF > li.end { margin-right: 0; }
#main.container #content ul.linkStyleA > li span,
#main.container #content ul.linkStyleE > li span,
#main.container #content ul.linkStyleJ > li span { font-size: 0.85em; }
#main.container #content ul.pdfLinkStyleA > li a { background-image: url(/japanese/assets/img/icon_pdf.gif); background-repeat: no-repeat; background-position: right top; padding-right: 20px; }

#main.container #content ul.ulStyleA,
#main.container #content ul.ulStyleB,
#main.container #content ul.ulStyleC,
#main.container #content ul.ulStyleD,
#main.container #content ul.ulStyleE,
#main.container #content ul.ulStyleF  { list-style: none; padding: 0; margin:2em 0; }
#main.container #content ul.ulStyleA ul,
#main.container #content ul.ulStyleB ul,
#main.container #content ul.ulStyleC ul,
#main.container #content ul.ulStyleD ul,
#main.container #content ul.ulStyleE ul,
#main.container #content ul.ulStyleF ul { list-style: none; padding: 0; margin:1em 0; }
#main.container #content ul.ulStyleA li,
#main.container #content ul.ulStyleB li,
#main.container #content ul.ulStyleC li,
#main.container #content ul.ulStyleD li,
#main.container #content ul.ulStyleE li,
#main.container #content ul.ulStyleF li { background-image: url(/assets/img/svgs/arrow.svg); background-repeat: no-repeat; background-position: left 0.25em; background-size: 1em; padding: 0 0 0 1.75em; margin: 0 0 0.5em 0; }

#main.container #content .fa-solid { font-size: 1.2em; width:1em; text-align: center; margin:0 0.5em; color:var(--c_purple); }
#main.container #content .fa-solid:first-child { margin: 0 0.5em 0 0; }
#main.container #content .fa-solid.fa-up-right-from-square { font-size: 1em; }
#main.container #content .fa-solid.fa-angle-up,
#main.container #content .fa-solid.fa-angle-right,
#main.container #content .fa-solid.fa-angle-left,
#main.container #content .fa-solid.fa-angle-down { font-size: 0.85em; margin:0 1em; }
#main.container #content .fa-solid.fa-angle-up:first-child,
#main.container #content .fa-solid.fa-angle-right:first-child,
#main.container #content .fa-solid.fa-angle-left:first-child,
#main.container #content .fa-solid.fa-angle-down:first-child { font-size: 0.85em; margin:0 1em 0 0; }

#main.container #sidebar { width: 20%; font-size: 1em; float: none; align-self: flex-start; }
#main.container #sidebar .widget { padding:0; background:none; }
#main.container #sidebar .widget .widget-title { font-size: 1.3em; line-height: 1em; padding:0.75em 0; margin:0 0 1.5em 0; border-top:solid var(--w_line) var(--c_purple); border-bottom: solid var(--w_line) var(--c_purple); }
#main.container #sidebar .widget .nav-list { padding:0; margin:0; }
#main.container #sidebar .widget .nav-list ul { padding:0; margin:0; }
#main.container #sidebar .widget .nav-list li { padding:0; margin: 0 0; background: none; }
#main.container #sidebar .widget .nav-list li a { padding: 0.5em; margin:0; color: var(--c_purple); font-size: 1em; line-height: 1.2em; margin:0 0; display: block; }
#main.container #sidebar .widget .nav-list li span { padding: 0.5em; margin:0; color: var(--c_black); font-size: 1em; line-height: 1.2em; margin:0 0; display: block; }
#main.container #sidebar .widget .nav-list li a:hover { background-color: var(--c_purple); color: var(--c_white); text-shadow: none; box-shadow: none; opacity: 1; text-decoration: none; }
#main.container #sidebar .widget .nav-list li.active { margin:0 0; }
#main.container #sidebar .widget .nav-list li.active a { color:var(--c_white); }
#main.container #sidebar .widget .nav-list li .secondary li { margin:0 0 1em 0; font-weight: 500; }
#main.container #sidebar .widget .nav-list li .secondary li a { color: var(--c_purple); display: block; text-decoration: none; }
#main.container #sidebar .widget .nav-list li .secondary li a:hover { color: var(--c_white); text-decoration: none; }
#main.container #sidebar .widget .nav-list li .tertiary { margin:0.5em 0 0.5em 1em; padding:0; border-left:solid 1px var(--c_purple); }
#main.container #sidebar .widget .nav-list li .tertiary li { padding: 0; margin:0 0 0 0.5em; }
#main.container #sidebar .widget .nav-list li .tertiary li a,
#main.container #sidebar .widget .nav-list li .tertiary li span { font-size: 0.85em; padding: 0.35em 0.6em; margin:0; }
#main.container #sidebar .widget .nav-list li .tertiary li.is-current a { background-color: var(--c_gray); }
#main.container #sidebar .widget .nav-list li .tertiary li.is-current a:hover { background-color: var(--c_purple); }
#main.container #sidebar .widget .nav-list li:first-child { padding-top:1em; }
#main.container #sidebar .widget .nav-list li .secondary li .tertiary { margin:0.5em 0 0.5em 0.5em; padding:0; }
#main.container #sidebar .widget .nav-list li .secondary li .tertiary li { padding: 0; margin:0 0 0 0.5em; }

@media screen and (max-width: 600px) {
  #main.container { flex-direction: column; }
  #main.container #breadcrumb { width: 100%; }
  #main.container .page-header { width:100%; margin:0 0 2rem 0; padding:0.5em 1.5em; }
  #main.container .page-header .page-title { font-size: 1.3em; }
  #main.container #content { width: 100%; }
  #main.container #content .span3 { width:100%; padding-right:0; }
  #main.container #content ul li { font-size: 1.1em; border-bottom:0;}
  #main.container #content h1 { font-size: 1.5em; }
  #main.container #content h2 { font-size: 1.3em; }
  #main.container #content h3 { font-size: 1.3em; }
  #main.container #content h4 { font-size: 1.3em; }
  #main.container #content h5 { font-size: 1.3em; }
  #main.container #content h6 { font-size: 1.25em; }
  #main.container #content p { font-size: 1.25em; line-height: 1.8em; margin:1.5em 0; }
  #main.container #sidebar { width: 100%; font-size: 1.2em; }
}

/* newsbox */
#main.container #content .newsbox ul.nav-tabs { display:flex; margin:0; border:none; margin:0 0 2em 0; }
#main.container #content .newsbox ul.nav-tabs li,
#main.container #content .newsbox ul.nav-tabs li { flex:1; margin:0; border-left: solid 1px var(--c_white); }
#main.container #content .newsbox ul.nav-tabs li.news_all { background:none; }
#main.container #content .newsbox ul.nav-tabs li a { line-height: 1.2; background-color: var(--c_gray); height:65px; margin:0; padding:1rem .5rem; box-sizing:border-box; }
#main.container #content .newsbox ul.nav-tabs li.cr, #main.container #content .newsbox ul.nav-tabs li.is-current { background:var(--c_purple); }
#main.container #content .newsbox ul.nav-tabs li.cr a, #main.container #content .newsbox ul.nav-tabs li.is-current a { margin-top:5px; height:60px; background:var(--c_white); }
#main.container #content .newsbox ul.nav-tabs li a:hover { text-decoration: none; color:var(--c_white); background-color: var(--c_purple); }

#main.container #content .newsbox .tab-pane ul,
#main.container #content .newsbox .tab-pane ul { margin:0; }
#main.container #content .newsbox .tab-pane ul li { width:100%; }
#main.container #content .tabbable ul.nav-tabs,
#main.container #content .tabbable ul.nav-tabs { list-style: none; display:flex; margin:0 0 2rem; }
#main.container #content .tabbable ul.nav-tabs li,
#main.container #content .tabbable ul.nav-tabs li { flex:1; text-align:center; margin:0 0 -1px; }
#main.container #content .tabbable ul.nav-tabs li a { line-height:2.0rem; text-decoration: none; border-radius: 0; }
#main.container #content .tabbable ul.nav-tabs li a:hover { color:var(--c_white); background-color: var(--c_purple); }
#main.container #content .lowerNewsbox .nav-tabs li.news_all { border:0; /*border-bottom: 2px solid #fff;*/ }
#main.container #content .lowerNewsbox .nav-tabs li.cr a { color:var(--c_purple); }

.nav-tabs { border-bottom: 1px solid var(--c_purple); margin:0 0 2em 0; }
.nav-tabs>.active>a,.nav-tabs>.active>a:hover { color: var(--c_purple); border: 1px solid var(--c_purple); border-bottom-color: transparent; border-radius: 0; }
.nav-tabs>li>a, .nav-pills>li>a { margin-right:0; }
.nav-tabs>li>a:hover { border:solid 1px var(--c_purple); }

#news .tab-pane ul li { width:100%; display:flex; align-items: flex-start; }
#news .tab-pane ul li .date { width: 10%; float: none; font-size: 1em; min-width: 100px; }
#news .tab-pane ul li .cat { width: 16%; float: none; font-size: 0.75em; line-height: 1.4em; margin: 0 0 0 0; background-color: var(--c_purple); min-width: 170px; }
#news .tab-pane ul li .entry { width: calc( 100% - 100px ); font-size: 1em; padding:0 0 0 1em; }

#event .tab-pane ul li .cat, #eventarc .tab-pane ul li .cat { font-size: 0.75em; line-height: 1.4em; min-width:7em; }

@media (max-width: 600px){
.newsbox ul.nav-tabs, .tabbable ul.nav-tabs{flex-wrap:wrap;}
.newsbox ul.nav-tabs li{flex-basis:33.33%;}
.tabbable ul.nav-tabs li{flex-basis:16.67%;}
#news .tab-pane ul li { flex-wrap: wrap; justify-content: space-between; }
#news .tab-pane ul li .date { width: 50%; float: none; font-size: 1em; }
#news .tab-pane ul li .cat { width: 40%; float: none; font-size: 0.75em; margin: 0.25em 0 0 0; }
#news .tab-pane ul li .entry { width:100%; font-size: 1em; padding:0.5em 0 0 0; }
#main.container #content .tabbable ul.nav-tabs li a { line-height:1.4em; padding: 0.5em 0.25em; }
#main.container #content .newsbox ul.nav-tabs li a { font-size: 0.75em;  }
}

/*202510追記_ここから*/
#main.container #content .webContent ul.tree { list-style-type: none; }
#main.container #content .webContent ul.tree ul { list-style: none; }
.withCaption_wrap { margin-top: 30px !important; display: flex; flex-wrap: wrap; justify-content: space-between; }
.withCaption_wrap .withCaption { width: 49%; margin-right: 0; margin-left: 0; float: none; }
.withCaption:nth-type(2n+1) { margin-left: 0; }

@media screen and (max-width: 600px) {
    .withCaption { width: 100%; margin-left: 0; }
    .withCaption_wrap .withCaption { width: 100%!important; }
}

div.accessBoxSetUnder { width: 70%; }
div.accessBoxSetUnderSide { width: 30%; }

@media screen and (max-width: 600px) {
div.accessBoxSetUnder { width: 100%; padding-right: 0; }
div.accessBoxSetUnderSide { width: 100%; }
}

.f_wrap { display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 3rem; }
.f_wrap .box { width: 48%; margin-bottom: 2rem; }
#main.container .f_wrap .box img { width: 100%; height: auto; }
.imgArchiveBox { height: auto; aspect-ratio: 6 / 4; }

/* l-news--featured */
.l-news--movie.l-news { display:flex; gap:0 2.5rem; padding:0; margin:0; }
.l-news--movie.l-news.splide__list { flex-wrap: nowrap; gap: 0; }
.l-news--movie .l-news__item { max-width:calc((100% - (2 * 2.5rem)) / 4); display:flex; flex-direction: column; justify-content: space-between; }
.l-news--movie .l-news__thumb { width:100%; aspect-ratio: 1.91 / 1; }
#main.container .l-news--movie .l-news__thumb img, #main.container .l-news--movie .l-news__thumb iframe { object-fit: cover; width:100%; height:auto; aspect-ratio: 1.91 / 1; }
#main.container #content .l-news--movie .l-news__title { font-size: 1.15em; line-height: 1.5; margin:0.75em 0 0.75em 0; }
.l-main__section--movie .splide__arrow { top: 34%;}

/*202510追記_ここまで*/

.span2 { width: 190px; }

/* selection on purple background 20260512追記*/
#main.container .page-header ::selection,
#main.container #content h2 ::selection,
#news .tab-pane ul li .cat ::selection,
#main.container #visitorcontent #content h2::selection,
#news .tab-pane ul li .cat::selection{ background: var(--c_white); color: var(--c_purple); }
#main.container .page-header ::-moz-selection,
#main.container #content h2 ::-moz-selection,
#news .tab-pane ul li .cat ::-moz-selection,
#main.container #visitorcontent #content h2::-moz-selection,
#news .tab-pane ul li .cat::-moz-selection{ background: var(--c_white); color: var(--c_purple); }
.nav-tabs>li>a { padding-left: 11px; padding-right: 11px; }


/*button_box for 報道機関の方へ 20260721追記*/
/*========ボタンスタイル_ここから======*/
.arrowA {
    margin-bottom: 0;
}

.arrowA li {
    margin-bottom: 0;
    font-size: 0.9rem;
}

.basic .arrowA + p {
    font-size: 0.8rem;
}

#main.container #content ul.button_box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-left: 0;
    padding-left: 0;
    list-style-type: none;
    margin-left: 0;
}

#main.container #content ul.button_box li {
    width: 48%;
}

/* aタグのリセットCSS（不要な場合、セレクタごと削除してください） */
.button_box a {
    text-decoration: none;
}

/* buttonタグのリセットCSS（不要な場合、セレクタごと削除してください） */
/*button {
    padding: 0;
    font-family: inherit;
    appearance: none;
    cursor: pointer;
    background-color: transparent;
    border: none;
}*/

/* ボタンのスタイル */



.pageBody a.buttonIconText02:link {
    display: flex;
    gap: 8px;
    align-items: center;
    /*max-width: 334px;*/
    height: 64px;
    padding: 8px;
    font-family: sans-serif;
    font-size: 16px;
    color: #fff;
    text-align: center;
    overflow-wrap: anywhere;
    background-color: #3E1485;
    border-radius: 8px;
    /* (buttonの高さ / 2) の値 */
    /*border: 2px solid #4099aa;*/
}

.pageBody a.buttonIconText02:visited {
	color: #fff;
	text-decoration: none;
}

.buttonIconText02__reverse {
    flex-direction: row-reverse;
    padding: 8px 8px 8px 64px;
}

.buttonIconText02_icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 48px;
    aspect-ratio: 1;
    overflow: hidden;
}

.buttonIconText02_text {
    flex-shrink: 1;
    width: 100%;
padding-left: 48px;
}

@media (any-hover: hover) {
    .pageBody a.buttonIconText02 {
        transition: background-color 0.2s;
    }

    .pageBody a.buttonIconText02_icon {
        transition: transform 0.2s;
    }

#main.container #content .pageBody a.buttonIconText02:hover {
        background-color: #fff;
        text-decoration: none;
        border: 2px solid #3E1485;
		color: #3E1485;
    }

    .pageBody a.buttonIconText02:hover .buttonIconText02_icon {
        transform: translateX(4px);
    }

    .pageBody a.buttonIconText02:hover .buttonIconText02_icon__left {
        transform: translateX(-4px);
    }
}

/* 左矢印アイコンのスタイル */
.iconArrowLeft {
    rotate: 180deg;
}



.intro {
    position: relative;
    padding: 0.6rem 2rem calc(1rem + -6px);
    background: #e5f4f7;
}

.intro:before {
    position: absolute;
    top: -6px;
    left: -6px;
    width: 100%;
    height: 90%;
    content: '';
    border: 1px solid #000;
}

.intro.obon {
    background: #f7e5e5;
}

.intro.obon span {
    font-weight: bold;
}

@media screen and (max-width: 600px) {
    .button_box li {
        width: 100%;
        margin-bottom: 1rem;
    }

    .buttonIconText02 {
        max-width: 100%;
    }

#main.container #content ul.button_box li {
    width: 100%;
}
}

/*======ボタンスタイル_ここまで========*/