@charset "utf-8";
/* CSS Document */

@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 400;
  src:url(../font/NotoSansCJKjp-Regular.otf) format('opentype'),
    url(../font/NotoSansCJKjp-Regular.ttf)  format('truetype'),
    url(../font/NotoSansCJKjp-Regular.woff) format('woff');
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: bold;
  font-weight: 700;
  src:url(../font/NotoSansCJKjp-Bold.otf) format('opentype'),
    url(../font/NotoSansCJKjp-Bold.ttf)  format('truetype'),
    url(../font/NotoSansCJKjp-Bold.woff) format('woff');
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-weight: 500;
  src:url("../font/NotoSansCJKjp-Medium.otf") format('opentype'),
    url("../font/NotoSansCJKjp-Medium.ttf")  format('truetype'),
    url("../font/NotoSansCJKjp-Medium.woff") format('woff');
}
@font-face {
  font-family: 'Noto Serif JP';
  font-style: bold;
  font-weight: 700;
  src:url("../font/NotoSerifJP-Bold.otf") format('opentype'),
    url(../font/NotoSerifJP-Bold.ttf)  format('truetype'),
    url(../font/NotoSerifJP-Bold.woff) format('woff');
}

body{
  font-family: YakuHanJP, 'Noto Sans Japanese', YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  line-height: 1.5;/*android用*/
  -webkit-text-size-adjust: 100%;
  color: #212121;
}
body.open{
  height: 100%;
  overflow: hidden;
}
a{
  text-decoration: none;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
}

.pta_wrap{
  max-width: 1064px;
  margin: auto;
}
input{
  font-family: YakuHanJP, 'Noto Sans Japanese', YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  -webkit-tap-highlight-color:rgba(0,0,0,0);
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
  border-radius: 0;
}
select{appearance: none;}
select::-ms-expand{display: none;}
input[type="number"]{
  -moz-appearance:textfield;
  appearance:textfield;
}
button,
select,
textarea{
  font-family: YakuHanJP, "Noto Sans Japanese", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-size: 1rem;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
}
a:focus,
input:focus,
button:focus,
textarea:focus,
select:focus{
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  outline: 0;
}


.zoomanim{animation: fadezoom 20s linear forwards;}
@keyframes fadezoom{
  0%{transform: scale(1);}
  100%{transform: scale(1.2);}
}




/*header*/
.pta_headtop{padding: 10px 0;}
.pta_headtop .pta_wrap{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.pta_headtop .pta_wrap div:nth-of-type(2n){margin-left: auto;}
.pta_sitename{display: block;}
.pta_sitename a{display: block;}
.pta_sitename img{width: 40px;}
.pta_sitename span{
  vertical-align: middle;
  font-family: "Noto Serif JP";
  font-weight: bold;
  font-size: 26px;
  letter-spacing: 0.05em;
  color: #212121;
}
.pta_headtxt{
  display: inline-block;
  margin-left: 40px;
  vertical-align: middle;
  font-size: 0.75rem;
  color: #707070;
}
.pta_bnft{display: flex;}
.pta_bnft p:first-of-type{margin-right: 16px;}
.pta_bnft p{
  padding: 2px;
  border-radius: 20px;
  background: linear-gradient(90deg, #BAE04D 0%, #BAE04D 19.66%, #FCC11D 79.83%, #FCC11D 100%);
}
.pta_bnft a{
  display: block;
  min-width: 200px;
  height: 36px;
  padding: 5px 16px 0;
  text-align: center;
  font-weight: 500;
  color: #333333;
  border-radius: 18px;
  background-color: #FFFFFF;
}
.pta_jimubtn{
  background-color:#FFFFFF;
  border: 1px solid #076AB6;
  border-radius: 4px;
  margin-left: 20px;
}
.pta_jimubtn_sp{
  width: 60%;
  margin: 0 auto 24px;
  background-color:#FFFFFF;
  border: 1px solid #076AB6;
  border-radius: 4px;
}
.pta_jimubtn a,
.pta_jimubtn_sp a{
  display: flex;
  justify-content: center;
  align-items: center;
  color: #076AB6;
  font-weight: 500;
  padding: 8px 22px;
}
.pta_jimubtn a img,
.pta_jimubtn_sp a img{
  padding-right: 5px;
}
.pta_border{
  height: 4px;
  background: linear-gradient(90deg,#FFC918 0%, #FC563F 100%);
}
.pta_headbottom ul{
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 80px;
}
.pta_headbottom ul li a{
  font-weight: 500;
  font-size: 1.125rem;
  color: #333333;
}


.pta_spnavbtn{
  display: none;
  position: fixed;
  right: 24px;
  top: 21px;
  width: 40px;
}
.pta_spnavbtn div{
  position: relative;
  width: 32px;
  height: 18px;
  margin: auto;
}
.pta_spnavbtn div span{
  position: absolute;
  display: block;
  width: 32px;
  height: 3px;
  left: 0;
  border-radius: 2px;
  background: linear-gradient(#FFC918 0%, #FC563F 100%);
  transition: all 0.3s linear;
}
.pta_spnavbtn div span:nth-of-type(1){top: 0;}
.pta_spnavbtn div span:nth-of-type(2){top: 7px;}
.pta_spnavbtn div span:nth-of-type(3){top: 14px;}
.pta_spnavbtn.active div span:nth-of-type(1){
  top: 7px;
  transform: rotateZ(30deg) rotateY(180deg);
}
.pta_spnavbtn.active div span:nth-of-type(2){opacity: 0;}
.pta_spnavbtn.active div span:nth-of-type(3){
  top: 7px;
  transform: rotateZ(-30deg) rotateY(180deg);
}

.pta_spnavbtn p{
  text-align: center;
  font-size: 0.625rem;
  font-weight: 500;
  color: #333;
}
.pta_spnavbtn p::before{content: "メニュー";}
.pta_spnavbtn.active p::before{content: "閉じる";}

.pta_spgnav{
  position: fixed;
  display: none;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 110px 20px 40px;
  background-color: #FFFFFF;
  overflow-y: scroll;
  visibility: hidden;
  z-index: 0;
  opacity: 0;
  transition: all 0.1s linear;
}
.pta_spgnav.active{
  visibility: visible;
  opacity: 1;
  z-index: 900;
}
.pta_parmenu{margin-bottom: 64px;}
.pta_parmenu>li{
  padding: 20px 0;
  border-top: 1px solid #E9E9E9;
  transform: translateY(20px);
  opacity: 0;
}
.pta_parmenu>li:last-of-type{border-bottom: 1px solid #E9E9E9;}
.pta_spgnav.active .pta_parmenu>li{
  transition: all 0.15s linear;
  transform: translate(0);
  opacity: 1;
}
.pta_spgnav.active .pta_parmenu>li:nth-of-type(2){transition-delay: 0.05s}
.pta_spgnav.active .pta_parmenu>li:nth-of-type(3){transition-delay: 0.1s}
.pta_spgnav.active .pta_parmenu>li:nth-of-type(4){transition-delay: 0.15s}
.pta_spgnav.active .pta_parmenu>li:nth-of-type(5){transition-delay: 0.2s}
.pta_spgnav.active .pta_parmenu>li:nth-of-type(6){transition-delay: 0.25s}
.pta_spgnav.active .pta_parmenu>li:nth-of-type(7){transition-delay: 0.3s}
.pta_parmenu>li.pta_havchl{
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.pta_parmenu>li.pta_havchl p:first-of-type{width: calc(100% - 40px);}
.pta_parmenu>li.pta_havchl p:last-of-type{
  width: 40px;
  height: 40px;
  padding-top: 5px;
  text-align: center;
  background: url("../img/common/icon_acdn_minus.svg") center center no-repeat;
}
.pta_parmenu>li.pta_havchl p:last-of-type.active img{display: none;}
.pta_parmenu>li>a,
.pta_parmenu>li.pta_havchl p a{
  display: block;
  font-size: 1.25rem;
  font-weight: 500;
  color: #212121;
}

/*20240322add*/
.pta_outside{position: relative;}
.pta_outside p{
  position: absolute;
  right: 12px;
  top: calc(50% - 14px);
}


.pta_chlmenu{
  display: none;
  width: 100%;
}
.pta_chlmenu li{
  margin-top: 12px;
  transform: translateY(20px);
  opacity: 0;
}
.pta_chlmenu.active li{
  transition: all 0.15s linear;
  transform: translate(0);
  opacity: 1;
}
.pta_chlmenu.active li:nth-of-type(1){transition-delay: 0.15s}
.pta_chlmenu.active li:nth-of-type(2){transition-delay: 0.2s}
.pta_chlmenu.active li:nth-of-type(3){transition-delay: 0.25s}
.pta_chlmenu.active li:nth-of-type(4){transition-delay: 0.3s}
.pta_chlmenu.active li:nth-of-type(5){transition-delay: 0.35s}
.pta_chlmenu.active li:nth-of-type(6){transition-delay: 0.4s}
.pta_chlmenu.active li:nth-of-type(7){transition-delay: 0.45s}
.pta_chlmenu li a{
  display: block;
  padding: 4px 0;
  font-size: 0.875rem;
  color: #212121;
}
.pta_comprof{
  opacity: 0;
  transform: translateY(20px);
}
.pta_spgnav.active .pta_comprof{
  transition: all 0.15s linear 0.4s;
  transform: translate(0);
  opacity: 1;
}
.pta_comprof dt{margin-bottom: 10px;}
.pta_comprof dd{
  line-height: 2;
  font-size: 0.875rem;
}



/*body*/
.pta_pan{
  padding: 9px 0;
  background-color: #F9F6F3;
}
.pta_pan ol{
  display: flex;
  justify-content: flex-end;
}
.pta_pan li{
  margin-left: 16px;
  font-size: 0.75rem;
  color: #707070;
}
.pta_pan li a{
  font-size: 0.75rem;
  color: #707070;
}


.pta_body{padding: 88px 0 270px;}
.pta_body h1{
  padding: 32px 256px 32px 0;
  font-size: 2.25rem;
  font-weight: 500;
  border-bottom: 1px solid #E1E1E1;
  background: url("../img/common/il_h1bg.svg") right 88px top 0 no-repeat;
}
.pta_bodywrap{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-top: 56px;
}

.pta_mainbody{width: 680px;}
.pta_rightmenu{width: 240px;}


.pta_404{padding: 80px 0;}
.pta_404 h1{
  height: 118px;
  margin-bottom: 40px;
  padding-top: 32px;
  font-size: 2.25rem;
  font-weight: 500;
  border-bottom: 1px solid #E1E1E1;
  background: url("../img/common/il_h1bg.svg") right 88px top 0 no-repeat;
}
.pta_404 p{margin-bottom: 40px;}
.pta_404 a{
  text-decoration: underline;
  color: #076AB6;
}



.pta_ftpan{
  display: none;
  padding: 9px 0;
}
.pta_ftpan ol{
  display: flex;
  flex-wrap: wrap;
}
.pta_ftpan li{
  margin-bottom: 8px;
  margin-right: 12px;
  font-size: 0.75rem;
  color: #212121;
}
.pta_ftpan li a{
  font-size: 0.75rem;
  color: #212121;
  border-bottom: 1px solid #212121;
}
.pta_ftpan li:last-of-type{margin-right: 0;}
.pta_ftpan li:nth-of-type(5){max-width: calc(100% - 156px);}



/*footer*/
.pta_bottombnr{
  position: relative;
  padding: 56px 0;
  background-color: #F5F5F5;
}
.pta_bottombnr ul{
  display: flex;
  justify-content: flex-start
}
.pta_bottombnr ul li{
  padding-right: 32px;
}
.pta_bottombnr ul li a{
  display: block;
  height: 100%;
  text-align: center;
}
.pta_bnril01{
  position: absolute;
  left: calc(50% - 584px);
  top: -85px;
}
.pta_bnril02{
  position: absolute;
  right: calc(50% - 617px);
  top: -85px;
}

.pta_fternavi{
  padding: 118px 0;
  background: url("../img/common/ph_footerbg.jpg") center center no-repeat;
  background-size: cover;
}
.pta_fternavi ul li:nth-last-of-type(n+2){margin-bottom: 24px;}
.pta_fternavi ul li a{
  font-weight: 500;
  color: #FFFFFF;
  text-shadow: 0 0 6px rgba(0,0,0,0.6);
}
.pta_ftcomprof{padding: 12px 0;}
.pta_ftcomprof .pta_wrap{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.pta_ftcomprof dl{
  display: flex;
  align-items: flex-start;
  font-size: 0.75rem;
}
.pta_ftcomprof dl dt{margin-right: 16px;}
.pta_ftcomprof dl dd a{color: #212121;}
.pta_copyright{
  padding: 28px 0;
  text-align: center;
  color: #FFFFFF;
  background-color: #4C4C4C;
}





.pta_gotop{
  position: fixed;
  display: none;
  right: 22px;
  bottom: 35px;
  padding: 4px 12px;
  z-index: 10;
  background-color: rgba(255,255,255,0.65);
}
.pta_gotop a{
  position: relative;
  display: block;
  color: #212121;
  transition: all 0.2s linear;
}
.pta_gotop a span{
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: 8px;
  vertical-align: bottom;
  border-top: 2px solid #212121;
  border-right: 2px solid #212121;
  transition: all 0.2s linear;
  transform: rotate(-45deg);
}






@media screen and (max-width:1280px){
  .pta_bnril01{left: 0;}
  .pta_bnril02{right: 0;}
}
@media screen and (max-width:1000px){
  .pta_headtxt{display: none;}
  .pta_bnft p:first-of-type{margin-right: 8px;}
  .pta_bnft a{min-width: 160px;padding: 5px 8px 0}
  .pta_jimubtn{margin-left: 10px;}
  .pta_jimubtn a{padding: 8px 11px;}
}


@media screen and (min-width:821px){
  .pta_sitename a:hover{opacity: 0.7;}
  .pta_headbottom ul li a:hover{color: #FCC11D;}
  .pta_bnft a:hover{color: #DFB22B;}
  .pta_jimubtn:hover{opacity: 0.7;}

  .pta_pan li a:hover{color: #F46920;}

  .pta_fternavi ul li a:hover{color: #FFE594;}
  .pta_gotop a:hover{color: #DFB22B;}
  .pta_gotop a:hover span{border-color: #DFB22B;}

  .pta_404 a:hover{text-decoration: none;}
  
  .pta_bottombnr ul li a:hover{opacity: 0.7;}
  
}







/*-----------------------------------------*/
/*--------------レスポンシブ-------------*/
/*-----------------------------------------*/
@media screen and (max-width:820px){
  .pta_wrap{padding: 0 16px;}
  .pta_border{display: none;}
  .pta_headbottom{display: none;}
  .pta_spnavbtn{display: block;}
  .pta_spgnav{display: block;}
  .pta_headtop{
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    background-color: #FFFFFF;
    z-index: 1000;
  }
  .pta_bnft{display: none;}
  .pta_jimubtn{display: none;}


  .pta_headtop{
    height: 68px;
    padding: 17px 0 0;
  }
  .pta_headtop .pta_wrap{margin-bottom: 13px;}
  .pta_headtop::after{
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg,#FFC918 0%, #FC563F 100%);
  }
  .pta_sitename span{
    margin-left: 8px;
    font-size: 1.25rem;
  }



  .pta_pan{display: none;}
  .pta_body{padding: 104px 16px;}
  .pta_body h1{
    padding: 46px 94px 20px 0;
    font-size: 1.25rem;
    background-position: right center;
    background-size: 94px 66px;
  }
  .pta_bodywrap{
    flex-wrap: wrap;
    padding-top: 0;
  }
  .pta_rightmenu{
    width: 100%;
    order: 1;
  }
  .pta_bodywrap main{
    width: 100%;
    order: 2;
  }
  .pta_mainbody{width: 100%;}


  .pta_ftpan{display: block;}


  .pta_bnril01,
  .pta_bnril02{display: none;}
  .pta_bottombnr{padding: 56px 0 36px;}
  .pta_bottombnr ul{
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .pta_bottombnr ul li{
    width: 48%;
    margin-bottom: 20px;
    padding-right: 0;
  }
  .pta_bottombnr ul li img{width: 100%;}
}
@media screen and (max-width:420px){
  .pta_spbr{display: block;}

  .pta_fternavi{padding: 32px 0;}
  .pta_ftcomprof{padding: 40px 0;}
  .pta_ftcomprof .pta_wrap{flex-wrap: wrap;}
  .pta_ftcomprof .pta_sitename{
    margin-bottom: 20px;
    margin-left: -8px;
  }
  .pta_ftcomprof dl dt{
    width: 64px;
    margin: 0;
  }
  .pta_ftcomprof dl dd{width: calc(100% - 64px);}
}
@media screen and (max-width:375px){}
@media screen and (max-width:360px){}
@media screen and (max-width:320px){}


