@charset "utf-8";
/*---------------------共通ページ---------------------*/
.body .article{ margin-bottom: 0; }
.header-container-in.hlt-top-menu .logo-header img{
  max-width: 196px;
  max-height: 70px !important;
  height: auto;
  vertical-align: middle;
}
.header-container-in.hlt-top-menu .logo-header { max-height: 70px !important; }
a{ transition:0.5s; }
video{ max-width: none !important; }
img {
  width: 100%;
  height: auto;
}
.content{ margin-top: 0 !important; }
.iwe-border img, .iwe-border amp-img{ border: none !important; }
.date-tags{ display: none;}
ul{
  margin-bottom: 0 !important;
  padding: 0;
}
li{ list-style-type: none; }
li p br{ display: none; }
.article ul li, .article ol li{
  margin: 0 !important;
  padding: 0 !important;
}
ol, ul{ padding-left: 0 !important; }
.article h2{ margin: 0; }
.article-header{ display: none }
.main {
  max-width: auto;
  width: 100%;
  margin: 0 auto !important;
  padding: 0 !important;
  background: #ffffff;
  border: none !important;
  border-radius: 0;
  position: static;
}
.main .article{
  padding: 0;
}
.imgEz{
  max-width: 550px;
  margin: 0 auto;
}
.entry-content>*, .mce-content-body>*, .article p, .demo .entry-content p, .article dl, .article ul, .article ol, .article blockquote, .article pre, .article table, .article .toc, .body .article, .body .column-wrap, .body .new-entry-cards, .body .popular-entry-cards, .body
{
  margin-bottom: 0 !important;
}
.header-container-in{
  max-width: 1500px !important;
  margin: 0 auto;
}
.entry-content{
  margin: 0 !important;
 background-color: #ffffff;
}
.wrap {
    width: 100% !important;
    margin: 0 auto;
}
/*---------------------ナビゲーション---------------------*/

.navi-in > ul li {
  display: block;
  max-width: 250px;
  width: 100%;
  height: 90px !important;
  line-height: 90px !important;
}
.navi-in > ul li:nth-child(1){ width: 8% !important; }
.navi-in > ul li:nth-child(2){ width: 10% !important; }
.navi-in > ul li:nth-child(3){ width: 10% !important; }
.navi-in > ul li:nth-child(4){ width: 22% !important; }
.navi-in > ul li:nth-child(5){ width: 26% !important; }
.navi-in > ul li:nth-child(6){ width: 13% !important; }
.navi-in > ul li a{
  color: #0068E3 !important;
  font-weight: bold;
}
.navi-in > ul li a:hover {
  background-color: #ffffff !important;
  color: #FD5B90 !important;
  transition: all 0.3s ease-in-out;
  color: var(--cocoon-text-color);
}
.navi-footer-in a{ color: #ffffff !important; }
.navi-footer-in a:hover{
  background: transparent !important;
  color: #ffffff !important;
}

/*---------------------ファーストビュー---------------------*/
.entry-categories{ display: none; }
.pager-post-navi{ display: none; }
.breadcrumb{ display: none; }
.entry-content{ margin-bottom: 0 !important; }
.wrapContents{
  background-image: repeating-linear-gradient(132deg, rgba(248,216,227,1), rgba(248,216,227,1) 32px, transparent 0px, transparent 60px) !important;
  background-size: 160px 270px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.wrapContents .bgFirstView{
  position: relative;
  z-index: 3;
}
.bgFirstView .bgMain01{
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 4;
 background: url('https://toyama-yukyo.com/ty_content/uploads/2023/08/bgMain01-4.webp');
 background-position: top center;
 background-repeat: no-repeat;
 background-size: 100% auto;
 -webkit-animation: bgMain01 0.5s ;
         animation: bgMain01 0.5s ;
}
.bgFirstView .bgMain02{
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 5;
 background: url('https://toyama-yukyo.com/ty_content/uploads/2023/08/bgMain02-4.webp');
 background-position: top center;
 background-repeat: no-repeat;
 background-size: 100% auto;
 -webkit-animation: bgMain02 1.0s linear 0.5s both;
 	        animation: bgMain02 1.0s linear 0.5s both;
}
.bgFirstView .bgChara01{
  position: absolute;
  z-index: 6;
  top: 2vw;
  right: 17vw;
  width: 30vw;
  -webkit-animation: bgChara01 1.2s ease-in-out 2s both;
  	        animation: bgChara01 1.2s ease-in-out 2s both;
}
.bgFirstView .btnDl{
  max-width: 300px;
  position: absolute;
  z-index: 8;
  top: 50vw;
  right: 16vw;
  width: 30vw;
  transform: translate3d(0, 0, 0); /* ハードウェアアクセラレーションを活用 */
  will-change: transform; /* アニメーションするプロパティを指定 */
}
.bgFirstView .btnDl{
  animation-name: btnDl;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 1.5s;
  transform: translate3d(0, 0, 0); /* ハードウェアアクセラレーションを活用 */
  will-change: transform; /* アニメーションするプロパティを指定 */
}
@keyframes btnDl {
    0% {
        transform: translate(0px, 0px);
    }
    100%{
        transform: translate(0px, -30px);
    }
}
@-webkit-keyframes btnDl {
    0% {
        transform: translate(0px, 0px);
    }
    100%{
        transform: translate(0px, -30px);
    }
}
.wrapContents  .titFirstView{
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
  z-index: 5;
}
.wrapContents  .txtFirstView{
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
  z-index: 6;
}
.txtFirstView .titLogo{
  mix-blend-mode: multiply;
  width: 80vw;
  max-width: 960px;
  padding-bottom: 4px;
  position: relative;
  top: 2vw;
  left: 0;
  -webkit-animation: titLogo 1.5s cubic-bezier(0.175, 0.885, 0.320, 1.275) 0.1s both;
	        animation: titLogo 1.5s cubic-bezier(0.175, 0.885, 0.320, 1.275) 0.1s both;
}
.txtFirstView .titBox{
  position: relative;
}
.txtFirstView .bgChara02{
  width: 100%;
  margin: 0 auto;
  max-width: 80vw;
  padding-bottom: 4px;
  position: absolute;
  top: 6vw;
  left: 0;
  z-index: 5;
  -webkit-animation: bgChara01 1.2s ease-in-out 3s both;
            animation: bgChara01 1.2s ease-in-out 3s both;
}
.wrapContents .bgArea{
  background-color: #ffffff;
  max-width: 960px;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 2;
}
.wrapContents .txtFirstView{ margin-bottom: 60px; }
.wrapContents .txtFirstView .titBox .areaInner{
  padding-top: 80%;
  position: relative;
  z-index: 7
}

/*---------------------キャラ画像---------------------*/
.areaProfaile{
  width: 100%;
  max-width: 960px;
  display:flex;
  justify-content:space-between;
  font-family: Hiragino Maru Gothic ProN;
  color: #FD5B90;
  background-color: #ffffff;
  padding: 20px 20px 60px;
}
.areaProfaile .boxProfile01{
  width: 50%;
  padding: 20px 20px 60px;
}
.areaProfaile .boxProfile02{
  width: 50%;
  padding: 10px;
}
.areaProfaile .titProfile{
  display: block;
  width: 100%;
  max-width: 180px;
  margin-bottom: 10px !important;
}
.areaProfaile .nameProfile{
  display: block;
  width: 100%;
  max-width: 320px;
  margin-bottom: 10px !important;
}
.areaProfaile .txtProfile{
  display: block;
  margin-bottom: 10px !important;
  padding: 10px;
  font-weight: bold;
  font-size: 1em;
  }
.areaProfaile .boxProfile .tbProfile{
  background: none !important;
  font-size: 1em;
  font-weight: bold;
}
.areaProfaile .boxProfile .tbProfile th,
.areaProfaile .boxProfile .tbProfile td{
  border: none !important;
  background: none !important;
}
.areaProfaile .boxProfile .tbProfile td{
  padding-left: 30px;
  font-weight: bold;
}
.areaProfaile .boxProfile .tbProfile th span{
  color: #ffffff !important;
  background-color: #FD5B90;
  border-radius: 50px;
  padding: 8px 20px;
}
.areaProfaile .boxProfile .tbProfile tr{
  display: block;
  margin-bottom: 6px;
}
.areaProfaile .boxProfile .tbProfile tr:nth-of-type(2n+1){
  background: none !important;
}
/*---------------------SNSボタン---------------------*/
.snsBtn .snsBtnInner{
  display: flex;
  justify-content: space-between;
  max-width: 960px;
  margin: 60px auto;
  padding: 0 30px;
  overflow: visible;
}
.snsBtn .snsBtnInner .xlBtn{
  display: flex;
  flex-direction: column;
justify-content:flex-end;
  padding: 0 10px;
}
.snsBtn .snsBtnInner .xlBtn{
  position: relative;
  z-index: 1;
}
.snsBtn .snsBtnInner .xlBtn .titSns{
  display: block;
  width: 100%;
  max-width: 100px;
  margin-left: 40px;
  margin-bottom: 10px !important;
}
.snsBtn .snsBtnInner .xlBtn .txtSns{
  display: block;
  margin-left: 30px;
  margin-bottom: 10px !important;
  padding: 10px;
  font-weight: bold;
  font-size: 1em;
  color: #FD5B90;
}
.snsBtn .snsBtnInner .xlBtn .bgSns{
  width: 80%;
  position: absolute;
  top: -6vw;
  right: 0;
  left: 5vw;
  z-index: -1;
  opacity: 0.2;
  filter: blur(0.5px);
}
.snsBtn .snsBtnInner .xlBtn .bgSns::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  box-shadow: inset 0 0 50px 50px #FFF;
}
.snsBtn .snsBtnInner .btnSns{
  background-color: rgba(255, 255, 255, 1);
  margin: 0 30px;
}
.snsBtn .snsBtnInner .btnSnsX { margin-bottom : 20px; }
.snsBtn .snsBtnInner a{
  display: block;
  width: 100%;
  max-width: 480px;
  background: #ffffff;
}
.snsBtn .snsBtnInner a:hover{ opacity: 0.4; }

/*---------------------関連団体バナー---------------------*/
.kanrenBnr .kanrenBnrInner{
  padding: 30px
}

.kanrenBnr .kanrenBnrInner .kanrenList{
  display:flex;
  justify-content:space-between;
}
.kanrenBnr .kanrenBnrInner .kanrenList li{
  display:flex;
  flex-direction: column;
  justify-content: space-around;
  width: 100%;
  max-width: 200px;
}
.kanrenBnr .kanrenBnrInner .kanrenList li{ margin-right: 20px !important; }
.kanrenBnr .kanrenBnrInner .kanrenList li:last-child{ margin-right: 0 !important; }
.kanrenBnr .kanrenBnrInner .kanrenList li a{ display: block; }
.kanrenBnr .kanrenBnrInner .kanrenList li a:hover{ opacity: 0.4; }

/*---------------------フッター---------------------*/
.footer{
  position: relative;
  z-index: 1;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background-color : #FD5B90 !important;
}
.footer .footer-in .footer-widgets .widget_text a,
.footer .footer-in .footer-widgets .widget_text .textwidget{
color: #ffffff;
}
.footer .footer-in{
width: 100%;
font-weight: bold;
}
.footer .footer-in .footer-widgets{
	max-width: 980px;
	margin: 0 auto;
	padding: 0;
}
.footer .footer-in .footer-widgets .widget_text h3{
	color: #585858;
	font-size: 30px;
}
.footer-bottom{
  margin-top: 0 !important;
  padding: 8px;
  position: relative;
  font-size: 14px;
}
.copyright{
  margin: 0;
  padding: 20px 10px !important;
  color: #ffffff;
}

/*---------------------プライバシーポリシー---------------------*/
.privacy-policy{ background-color: #ffffff !important; }
.privacy-policy .entry-content{
  max-width: 960px;
  margin: 0 auto !important;
}
.privacy-policy .article-header{ display: block !important; }
.privacy-policy .entry-title{
  max-width: 960px;
  margin: 30px auto 0;
  padding: 0 10px;
}
.privacy{ padding: 60px 0; }
.privacy h2{ padding: 20px 10px !important; }
.privacy p{ padding:0 10px 40px; }

/*---------------------お問い合わせ---------------------*/
.mw_wp_form p{ padding-bottom: 20px; }
.page-id-80{ background-color: #ffffff !important; }
#post-80 .article-header{ display: block !important; }
#post-80 .entry-title{
  max-width: 960px;
  margin: 30px auto;
  padding: 0 10px;
}
#contact{
  max-width: 960px;
  margin: 0 auto;
  padding: 0 10px;
}
#contact .conformBtn{
  display: block;
  max-width: 300px;
  margin: 20px auto !important;
  background-color: #FD5B90;
  color: #ffffff;
  border: none !important;
  text-align: center;
}

/*---------------------お問い合わせ(確認)---------------------*/
.page-id-82{ background-color: #ffffff !important; }
#post-82{ padding: 10px; }
#post-82 .article-header{ display: block !important; }
#post-82 .entry-title{
  max-width: 960px;
  margin: 30px auto;
}
.wrapConfirm{
  max-width: 960px;
  margin: 0 auto;
}
.wrapConfirm .conformBtn{
  display: block;
  max-width: 300px;
  margin: 20px auto !important;
  background-color: #FD5B90;
  color: #ffffff;
  border: none !important;
  text-align: center;
}
.wrapConfirm .btnReturn{
  display: block;
  max-width: 300px;
  margin: 20px auto !important;
  background-color: #333333;
  color: #ffffff;
  border: none !important;
  text-align: center;
}
.txtConfirmation{ margin-bottom: 30px; }

/*---------------------お問い合わせ(送信)---------------------*/

.page-id-84{ background-color: #ffffff !important; }
#post-84{ padding: 10px; }
#post-84 .article-header{ display: block !important; }
#post-84 .entry-title{
  max-width: 960px;
  margin: 30px auto;
}
.wrapSend{
  max-width: 960px;
  margin: 0 auto;
}
.wrapSend .btnSend{
  display: block;
  max-width: 300px;
  margin: 0 auto 60px !important;
  padding: 20px 0;
  background-color: #FD5B90;
  color: #ffffff;
  border: none !important;
  text-align: center;
}

/*-----------素材ダウンロード(パスワードページ)------------*/
.ppw-ppf-field-container label{
  display: block;
  padding-bottom: 10px;
}

/*---------------------素材ダウンロード---------------------*/
.page-id-124{ background-color: #ffffff !important; }

#post-124 .article-header{
  display: block !important;
  padding: 0 10px;
}
#post-124 .entry-title{
  max-width: 960px;
  margin: 30px auto;
}
#post-124 .entry-content{ margin-bottom: 100px !important; }
.page-id-124 .post-password-required,
.wrapDownload{
  max-width: 960px;
  margin: 0 auto 60px;
  padding: 0 10px;
}
.wrapDownload h2{
  margin: 30px auto;
}
.wrapDownload h3{
  margin-top: 1.62em;
}
.sdm_download{
  width: 100%;
  text-align: center;
  line-height: 140%;
  padding: 5px !important;
}
.wrapDownload .boxLineup .listLineup{
  display:flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  overflow: hidden;
  max-width: 960px;
}
.wrapDownload .boxLineup .listLineup li{
  width: 32%;
  margin:0 2% 2% 0 !important;
}
.wrapDownload .boxLineup .listLineup li:nth-child(3n){
  margin-right: 0 !important;
}
.wrapDownload .boxLineup .listLineup li figure{
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  border: 1px solid #bdbdbd;
  box-sizing: border-box;
  padding: 10px;
}

.wrapDownload .boxLineup .listLineup li figure figcaption{
  width: 100%;
  text-align: center;
  padding: 10px 0 0;
  font-size: 0.8em;
  font-weight: bold;
}

/*---------------------レスポンシブメディアクエリ---------------------*/
@media screen and (max-width: 1023px){
  .header-container-in {
    max-width: 100% !important;
    margin: 0 auto;
}
  .header-container-in.hlt-top-menu .logo-header {
    max-height: 100% !important;
    padding: 5px 0 !important;
}
  .header-container-in.hlt-top-menu .navi{ overflow: hidden; }
  .header-container-in.hlt-top-menu{ display: block !important; }
  .logo-menu-button img {
    max-width: 220px;
    max-height: 100% !important;
    display: block;
    margin: 0 auto;
    padding: 5px;
}
 .navi-in .menu-pc{
    display:flex !important;
    flex-wrap: wrap;
    justify-content:space-between;
    background: #FD5B90;
  }
 .navi-in .menu-pc li{
    width: 50%;
    background: #FD5B90;
    text-align: center;
    padding: 0;
    margin-right: 10px;
    height: 50px !important;
    line-height: 50px !important;
  }
  .navi-in > ul li a {
    color: #ffffff !important;
    font-weight: bold;
  }
  .navi-in > ul li{ margin-right: 0 !important; }

  .wrapContents .txtFirstView .titBox .areaInner{
    padding-top: 70%;
    position: relative;
    z-index: 7
  }
}/*(max-width: 1023px)終わり*/
@media screen and (max-width: 834px){
  .header-container-in.hlt-top-menu .logo-header img{
    max-width: 300px;
    max-height: 100% !important;
    height: auto;
    vertical-align: middle;
  }
  .navi-in .menu-pc li {
    max-width: 100%;
    width: 50% !important;
    background: #FD5B90;
    text-align: center;
    padding: 0;
    margin-right: 10px;
    height: 50px !important;
    line-height: 50px !important;
  }
.navi-in > ul li:nth-child(1){ width: 50% !important; }
.navi-in > ul li:nth-child(2){ width: 50% !important; }
.navi-in > ul li:nth-child(3){ width: 50% !important; }
.navi-in > ul li:nth-child(4){ width: 50% !important; }
.navi-in > ul li:nth-child(5){ width: 50% !important; }
.navi-in > ul li:nth-child(6){ width: 50% !important; }

  .footer-bottom{ padding: 0 !important; }
  .navi-footer .menu-footer{
    padding: 0;
    margin: 0;
    list-style: none;
    display: block !important;
    flex-wrap: wrap;
    justify-content: flex-end;
    text-align: left !important;
    margin: 0;
  }
  .navi-footer .menu-footer li{
    width: 100% !important;
    border-bottom: 1px solid #ffffff !important;
    margin: 0 !important;
    display: block !important;
    flex: 1 1 auto;
    text-align: left !important;
  }
  .navi-footer .menu-footer li a{
    color: var(--cocoon-text-color);
    text-decoration: none;
    display: block;
    padding: 10px !important;
    font-size: 14px;
    transition: all 0.3s ease-in-out;
  }
  .wrapContents .bgArea{
    background-color: #ffffff;
    max-width: 960px;
    width: 93.8%;
    height: 100%;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 2;
  }
  .wrapContents{
    background-image: repeating-linear-gradient(132deg, rgba(248,216,227,1), rgba(248,216,227,1) 32px, transparent 0px, transparent 60px) !important;
    background-size: 160px 270px;
    position: relative;
    z-index: 1;
    overflow: hidden;
    padding: 0 3.125% 0;
  }
  /*---------------------834キャラ画像---------------------*/
  .areaProfaile{
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    display:block;
    justify-content:space-between;
    font-family: Hiragino Maru Gothic ProN;
    color: #FD5B90;
  }
  .areaProfaile .boxProfile01{
    width: 100%;
  }
  .areaProfaile .boxProfile02{
    width: 100%;
    padding: 3.125%;
  }
  .areaProfaile .txtProfile {
      padding: 0;
      font-weight: bold;
      font-size: 1em;
  }
  .areaProfaile .boxProfile .tbProfile th, .areaProfaile .boxProfile .tbProfile td {
      border: none !important;
      background: none !important;
      font-size: 1em;
  }
  /*---------------------834SNSボタン---------------------*/
  .snsBtn .snsBtnInner{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 960px;
    margin: 0 auto;
    padding: 3.125%;
    overflow: hidden;
  }
  .snsBtn .snsBtnInner .xlBtn{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    margin: 40px auto;
    padding: 0;
  }
  .snsBtn .snsBtnInner a{
    width: 100%;
    max-width: 100%;
    margin: 0;
  }
  .xTimeline{ width: 100%; }
  .xTimeline .twitter-timeline{
    width: 100% !important;
    height: auto;
  }
  .xTimeline .twitter-timeline iframe{
    width: 100% !important;
    height: auto;
  }
  /*---------------------834関連団体バナー---------------------*/
  .kanrenBnr .kanrenBnrInner{
    padding: 30px
  }

  .kanrenBnr .kanrenBnrInner .kanrenList{
    display:flex;
    flex-wrap: wrap;
  }
  .kanrenBnr .kanrenBnrInner .kanrenList li{
    display:flex;
    flex-direction: column;
    justify-content: space-around;
    width: 50%;
    max-width: 320px;
    padding: 3.125% !important;
  }
  .kanrenBnr .kanrenBnrInner .kanrenList li{ margin: 0 0 3.125% 0 !important }
  .kanrenBnr .kanrenBnrInner .kanrenList li:last-child { margin-right: 0 !important; }
  .kanrenBnr .kanrenBnrInner .kanrenList li a{ display: block; }
  .kanrenBnr .kanrenBnrInner .kanrenList li a:hover{ opacity: 0.4; }

}/*(max-width: 834px)終わり*/
@media screen and (max-width: 768px){
  .wrapDownload .boxLineup .listLineup {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    overflow: hidden;
    max-width: 960px;
    width: 100%;
  }
  .wrapDownload .boxLineup .listLineup li{
    width: 49%;
  }
  .wrapDownload .boxLineup .listLineup li:nth-child(3n) { margin: 0 2% 2% 0; }
  .wrapDownload .boxLineup .listLineup li:nth-child(2n) { margin: 0 0 2% 0 !important; }
}/*(max-width: 768px)終わり*/
@media screen and (min-width: 601px){
  .bgCharaPc{ display: block; }
  .bgCharaSp{ display: none; }
}
@media screen and (max-width: 600px){
  .txtFirstView .titBox {
    position: relative;
    z-index: 7;
}
  .bgFirstView .bgChara01 {
    position: absolute;
    z-index: 6;
    top: 2%;
    right: 10%;
    width: 50%;
    -webkit-animation: bgChara01 1.2s ease-in-out 2s both;
    animation: bgChara01 1.2s ease-in-out 2s both;
}
.txtFirstView .bgChara02 {
    width: 100%;
    margin: 0 auto;
    max-width: 100%;
    padding-bottom: 4px;
    position: absolute;
    top: 6vw;
    left: 0;
    -webkit-animation: bgChara01 1.2s ease-in-out 3s both;
    animation: bgChara01 1.2s ease-in-out 3s both;
}
.bgFirstView .btnDl{
  max-width: 300px;
  position: absolute;
  z-index: 8;
  top: 60vw;
  right: 0;
  width: 30vw;
  transform: translate3d(0, 0, 0); /* ハードウェアアクセラレーションを活用 */
  will-change: transform; /* アニメーションするプロパティを指定 */
}
  .bgCharaPc{ display: none; }
  .bgCharaSp{ display: block; }

  .wrapContents .txtFirstView .titBox .areaInner{
    padding-top: 110%;
    position: relative;
    z-index: 7
  }
}/*(max-width: 600px)終わり*/

@media screen and (max-width: 480px){
  .slideInner { padding: 0 20px !important; }
  .areaProfaile .boxProfile01{
    width: 100%;
    padding: 20px 0;
  }
  .areaProfaile .boxProfile02{ padding: 20px 0 !important; }
  .areaProfaile {
    width: 100%;
    max-width: 960px;
    display: flex;
    flex-direction: column;
    font-family: Hiragino Maru Gothic ProN;
    color: #FD5B90;
    background-color: #ffffff;
    padding: 20px;
}
  .wrapDownload .boxLineup .listLineup {
    display: flex;
    flex-direction:column;
    justify-content: flex-start;
    overflow: hidden;
    max-width: 960px;
  }
  .wrapDownload .boxLineup .listLineup li{
    width: 100%;
  }
  .wrapDownload .boxLineup .listLineup li:nth-child(3n) { margin: 0 0 2% 0; }
  .wrapDownload .boxLineup .listLineup li:nth-child(2n) { margin: 0 0 2% 0 !important; }

  .snsBtn .snsBtnInner {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 960px;
    margin: 0 auto;
    padding: 0 20px;
    overflow: hidden;
}
.snsBtn .snsBtnInner .btnSns{
  background-color: rgba(255, 255, 255, 1);
  margin: 10px 0;
}
  /*---------------------480関連団体バナー---------------------*/
  .kanrenBnr .kanrenBnrInner{
    padding: 20px
  }
  .kanrenBnr .kanrenBnrInner .kanrenList{
    display:flex;
    flex-direction:column;
  }
  .kanrenBnr .kanrenBnrInner .kanrenList li{
    display:flex;
    flex-direction: column;
    justify-content: space-around;
    width: 100%;
    max-width: 100%;
    padding: 0 !important;
  }
  .kanrenBnr .kanrenBnrInner .kanrenList li{ margin: 0 0 3.125% 0 !important }

}/*(max-width: 480px)終わり*/
@media screen and (max-width: 400px){
  .navi-in > ul li a {
      color: #ffffff !important;
      font-weight: bold;
      font-size: 0.9em;
  }
  .navi-in > ul li:nth-child(5) a {
      color: #ffffff !important;
      font-weight: bold;
      font-size: 0.8em;
      letter-spacing: -0.5
    }
}/*(max-width: 400px)終わり*/

@media screen and (max-width: 320px){

}/*(max-width: 320px)終わり*/

/*---------------------トップに戻る---------------------*/
.go-to-top {
  position: fixed;
  display: none;
  right: 0 !important;
  bottom: 20px !important;
  z-index: 99999;
}
.go-to-top-button{
  background-color: #ffffff;
  color: #333;
  text-decoration: none;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 150px !important;
  height: 150px !important;
  cursor: pointer;
  text-align: center;
  line-height: 1;
  border-radius: 50%;
}
.go-to-top-button .fa{
  font-size: 3em;
}
.fa-chevron-up:before {
  content: "\f077";
  font-size: 2.5em;
  line-height: 50%;
}

/*---------------------404エラー---------------------*/
.error404 .main{
  text-align: center;
  color: #ffffff;
}
.error404 .not-found{
  display: block;
  max-width: 960px;
  margin: 0 auto;
}
.error404 .sidebar{ display: none; }
.error404 .main p{
  margin-bottom: 0;
}

/* ==================================================
   素材ダウンロード・タブ
================================================== */

.dl-tabs {
  width: 100%;
  margin: 30px 0;
  box-sizing: border-box;
}

/*
 * WordPressが自動生成した可能性がある
 * pタグ・brタグの影響を除去
 */
.dl-tabs > p:has(.dl-tabs__radio) {
  display: contents;
}

.dl-tabs > p:has(.dl-tabs__radio) br,
.dl-tabs__nav br {
  display: none !important;
}

.dl-tabs__nav > p {
  display: contents;
}

/* ラジオボタンを視覚的に隠す */
.dl-tabs__radio {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* タブボタンを2列で横並び */
.dl-tabs__nav {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

/* タブボタン */
.dl-tabs__button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-width: 0;
  min-height: 54px;
  margin: 0 !important;
  padding: 12px 20px;
  border: 1px solid #d5d5d5;
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  background-color: #f3f3f3;
  color: #222;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  box-sizing: border-box;
  cursor: pointer;
  user-select: none;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.dl-tabs__button:hover {
  background-color: #e7e7e7;
}

/* タブ内容の外枠 */
.dl-tabs__panels {
  width: 100%;
  margin: 0 !important;
  padding: 0;
  border: 1px solid #d5d5d5;
  background-color: #fff;
  box-sizing: border-box;
}

/* 初期状態では両方の内容を非表示 */
.dl-tabs__panel {
  display: none !important;
  width: 100%;
  margin: 0;
  padding: 24px;
  box-sizing: border-box;
}

.dl-tabs__panel > :first-child {
  margin-top: 0;
}

.dl-tabs__panel > :last-child {
  margin-bottom: 0;
}

/* ==================================================
   ポスター選択時
================================================== */

.dl-tabs:has(#dl-tab-poster-01:checked)
  .dl-tabs__button[for="dl-tab-poster-01"] {
  background-color: #333 !important;
  color: #fff !important;
}

.dl-tabs:has(#dl-tab-poster-01:checked)
  .dl-tabs__panel--poster {
  display: block !important;
}

/* ==================================================
   キャラクター選択時
================================================== */

.dl-tabs:has(#dl-tab-character-01:checked)
  .dl-tabs__button[for="dl-tab-character-01"] {
  background-color: #333 !important;
  color: #fff !important;
}

.dl-tabs:has(#dl-tab-character-01:checked)
  .dl-tabs__panel--character {
  display: block !important;
}

/* キーボード操作時 */
.dl-tabs:has(#dl-tab-poster-01:focus-visible)
  .dl-tabs__button[for="dl-tab-poster-01"],
.dl-tabs:has(#dl-tab-character-01:focus-visible)
  .dl-tabs__button[for="dl-tab-character-01"] {
  outline: 3px solid #4d90fe;
  outline-offset: 2px;
}

/* スマートフォン */
@media screen and (max-width: 600px) {
  .dl-tabs__button {
    min-height: 48px;
    padding: 10px 8px;
    font-size: 14px;
  }

  .dl-tabs__panel {
    padding: 18px 15px;
  }
}