@charset "UTF-8";
 body {
   /* font-family: "メイリオ", Meiryo, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro W3", "ＭＳ Ｐゴシック", sans-serif; */
   color: #fff;
   position:relative;
   margin: 0;
   text-align: center;
   position:relative;
   font-family: source-han-sans-japanese, sans-serif;
   font-style: normal;
   font-weight: 200;
   }

a {
    outline: none;
    color: #fff;
    word-wrap:break-word;

}

p {
    margin: 0;
    padding: 0;
}

h1 {
  font-family: toppan-bunkyu-midashi-go-std, sans-serif;
  font-style: normal;
  font-weight: 900;}

.center{
    text-align:center;
}
/*radiko*/
.radiko {
    font-size: 12px;
    height: 24px;
    width: 230px;
    margin: 0;
    padding: 0;
    font-weight: bold;
    background-image: url(/images/radiko_icon.gif);
    background-repeat: no-repeat;
    padding-left: 100px;
    background-position: left;
    line-height: 2;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
    margin-top: 5px;
    /* background-color: #f4f4ff; */
    /* padding-top:5px; */
}
.radiko a:link {
    color: #00a7e9;
    text-decoration: none;
    /* color: #ff0000; */
}
.radiko a:visited {
    color: #00a7e9;
    text-decoration: none;
}
.radiko a:hover {
    text-decoration: underline;
}
.radiko a:active {
    text-decoration: none;
}
.radiko_narrow {
    display: none;
}
.radiko_sp {display: none;}
/*clearfix*/

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    display: inline-table;
}
/* Hides from IE-mac \*/

* html .clearfix {
    height: 1%;
}
.clearfix {
    display: block;
}

#global_header {
  display: block;
}

#nav_sp {
  display: none;
}

#global_footer {
  display: block;
}

.foot_c {
  position: relative;
  width: 100%;
}

.footer_sp {
  display: none;
}

* {zoom:1;}
.radikolink::after{ content: ""; display: block; clear: both;}
.bigbox::after{ content: ""; display: block; clear: both;}


/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

.back {

margin: 0 ;
padding: 0 ;
font-size: 15px ;
line-height: 1.618 ;
background-repeat: no-repeat;
width: 100%;
}

.back p {

  font-family: source-han-sans-japanese, sans-serif;
  font-style: normal;
  font-weight: 400;
}

.back::before {
content:"";
display:block;
position:fixed;
top:0;
left:0;
z-index:-1;
width:100%;
height:100vh;
/* background-color: #efefef; */
/* background-repeat:no-repeat;
background-position:50% 100%;
background-image:url(../images/back.jpg);
background-size:cover; */
}

.wrapper h1 {
  font-size: clamp( 18px, calc( 12px + 1.2vw ), 24px );
  color: #000;
  margin-bottom: 1rem;
  position: relative;
  margin-left: 1.5rem;
    /* line-height: 1.4; */
}

.wrapper h1:before {
  content: '';
    display: block;
    position: absolute;
    top: .5em;
    left: -1em;
    width: 14px;
    height: 5px;
    border-left: 4px solid #122dae;
    border-bottom: 4px solid #122dae;
    transform: rotate(-45deg);
      }

      .back a {
        color: #fff;
        text-decoration: none;
      }

.main {
  /* max-width: 100%;
  width: 100%; */
  background-color: #d2d2d2;
  font-feature-settings: "palt";
  padding: 0rem 0rem 1rem 0rem;
  }

.header {
  display: block !important;
  max-width: 1300px;
  width: 100%;
  height: auto;
  margin: 0 auto;
  text-align: center;
  position: relative;
}

.top {
  position: relative;
  background-color: #122dae;
}

.top h1 {
  font-size: clamp( 20px, calc( 8px + 2.4vw ), 32px );
  padding: 2rem 0.5rem;
  margin: 0;
}

.top img {
  max-width: 1280px;
  width: 100%;
}
/* -----------------------------------プロフィール部分----------------------------------- */

.link {
  display: flex;
}

.link p {
  font-size: clamp( 16px, calc( 8px + 1.6vw ), 24px );
}


.tateiwa_block {
  width: 50%;
  background-color: #122dae;
}


.uk_block {
  width: 50%;
  background-color: #122dae;
}

.name {
font-size: clamp( 30px, calc( 4px + 5.2vw ), 56px );
font-weight: bold;
}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  /* color: #212529; */
  border-radius: 0.5rem;
}

a.btn-flat {
  overflow: hidden;
  padding: 1.5rem 1rem 1.5rem 2.3rem;
  color: #fff;
  border-radius: 0;
  background: #0a115f;
  width: 100%;
}

a.btn-flat span {
  position: relative;
}

a.btn-flat:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-96%);
  transform: translateX(-96%);
  background: #1f5eff;
}

a.btn-flat:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}


/* -----------------------------------メール部分----------------------------------- */

.mail_margin {
    margin: 2rem auto;
    width: 100%;
    max-width: 1000px;
    border-radius: 100%;
}

.back .mail_block {
  background-color: #001561;
  margin: 0rem 0.5rem;
  padding: 1rem;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
  border-radius: 100px;
}

.mail_block:hover {
  background-color: #1f5eff;
}

.mail_block img {
vertical-align: bottom;
margin: 0rem 0.5rem 0.5rem 0rem;
width: 30px;
}

.mail_block .mail_icon {
font-size: 24px;
font-weight: bold;
letter-spacing: 2;
}

/* -----------------------------------番組概要部分----------------------------------- */

.wording {
font-size: clamp( 18px, calc( 12px + 1.2vw ), 24px );
text-align: center;
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
}

.wording p {
padding: 0rem 1rem 1rem 1rem;
font-weight: 400;
}

img.fiction {
    text-align: center;
    margin-bottom: 1rem;
    max-width: 100%;
}

.button {
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
}

.button a {
display: flex;
    justify-content: center;
    align-items: center;
    /* margin: 2rem 0rem 1rem 0rem; */
    padding: 1rem 2rem;
    /* width: 1200px; */
    /* max-width: 1200px; */
    border-radius: 10px;
    color: #f7f7f7;
    font-size: 18px;
    font-weight: 700;
    background-color: #122dae;
    box-shadow: 0 5px 0 #001161;
    transition: 0.3s;
    text-decoration: none;
}
.button a:hover {
    /* border-bottom: solid 2px #999; */
    transform: translateY(3px);
}


/* -----------------------------------2カラム部分----------------------------------- */

.wrapper_color {
  background-color: #d2d2d2;
  /* margin: 1rem 1rem 0rem 1rem; */
  /* border: solid #2327ab 5px; */
}

.wrapper {
  /* background-color: #e4e4e4; */
  /* padding: 4rem 0rem 2.5rem 0rem; */
  width: 100vw;
  max-width: 100%;
  margin: 0 auto;
}

.flex {
  display: flex;
  width: 100vw;
  max-width: 100%;
  background-image: conic-gradient(#d2d2d2 0deg 90deg, #c4c4c4 90deg 180deg, #d2d2d2 180deg 270deg, #c4c4c4 270deg 360deg);
  background-size: 100px 100px;
}

/* -----------------------------------ポッドキャスト部分----------------------------------- */

.pod {
  position: relative;
  /* background-color: #d2d2d2; */
  width: 70%;
  /* border: solid 2px #000; */
}

.pod_title {
  /* border-top: 2px solid #000; */
  border-right: 3px solid #2327ab;
  border-bottom: 3px solid #2327ab;
  /* border-left: 2px solid #000; */
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), #8a9af6 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #8a9af6 calc(100% - 1px));
  background-size: 45px 45px;
  background-repeat: repeat;
  background-position: center center;
  background-color: #d2d2d2;
}

.podleft {
      margin-left: 5rem;
}

.pod_title h2 {
font-size: clamp( 40px, calc( 20px + 4vw ), 60px );
    text-align: left;
    color: #0a115f;
    /* position: relative; */
    margin-left: 6rem;
}

.pod_title h2:before {
    content: '';
    display: block;
    position: absolute;
    top: .5em;
    left: 0.5em;
    width: 55px;
    height: 20px;
    border-left: 10px solid #122dae;
    border-bottom: 10px solid #122dae;
    transform: rotate(-45deg);
}

.pod_block {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  /* background-color: #b1b1b1; */
}

.program {
  position: relative;
  width: 100%;
    max-width: 900px;
    margin: 0 auto;
  padding: 2rem 2rem 2.5rem 2rem;
  text-align: left;
  /* border-bottom: 3px solid #2327ab;
  border-right: 3px solid #2327ab; */
  background-color: #d2d2d2;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
}

.program:last-child {
  border-bottom: none;
}

.program:nth-last-child(2) {
  /* border-bottom: none; */
      margin-bottom: -3px;
}

.program h3 {
  font-size: clamp( 18px, calc( 12px + 1.2vw ), 24px );
  /* margin-bottom: 1rem; */
  color: #2327ab;
}

.program p {
    font-size: 18px;
    color: #0a115f;
    font-weight: 400;
}


.program audio {
  max-width: 100%;
  width: 100%;
  margin-top: 1rem;
}



/* .marker {
  background:linear-gradient(transparent 60%, #ff0 60%);
  font-size: 22px;
  font-weight: bold;
} */


.sound audio {
  max-width: 100%;
  /* margin-bottom: 1rem; */
}

.Item-Content-Flg1 {/*三角形左上*/
  position: absolute;
  top: 0;
  left: 0;
  border-left: 30px solid #2327ab;
  border-bottom: 30px solid transparent;
}

.pod_service {
    position: relative;
    padding: 2rem 2rem 2.5rem 2rem;
    border-bottom: 3px solid #2327ab;
    border-right: 3px solid #2327ab;
    display: flex;
    justify-content: center;
    gap: 2rem;
    background-color: #d2d2d2;
    /* background-color: #2e20a8; */
}

.pod_service img {
width: 100%;
max-width: 400px;
}

.pod_service a {
  transition: all .2s ease-in-out;
}


.pod_service a:hover {
  opacity: .6;
}

/* -----------------------------------ニュース、虚構など----------------------------------- */

.right {
  /* background-color: #b1b1b1; */
  width: 30%;
}

.right img {
  width: 100%;
  max-width: 100%;
  /* border-bottom: solid #2327ab 3px; */
}

.right a::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #3758fa;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    transition: all .3s ease-in-out;
}

.right a:hover::before{
    opacity: .6;
}


.right a {
    /* transition: all .2s ease-in-out; */
        display: block;
    position: relative;
    border-bottom: solid #2327ab 3px;
}

/* .right a:hover {
    opacity: .6;
} */


/* --------------------------------------------------------------------------------------- */
.pc_br {
  display: block;
}

.sp_br {
  display: none;
}

.sp_br_link {
  display: none;
}

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

.sp_br_link {
  display: block;
}

}

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

  #global_footer {
    display: none;
  }
  .footer_sp {
    display: block;
  }

  #nav_sp {
    display: block;
  }

  #headerouter1179{
  -moz-box-shadow:none;
  -webkit-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow:none;
  }

  #sns_part{
    width:100%;
    position:relative;
  }

  #global_header {
    display: none;
  }

  * {zoom:1;}
  .radikolink::after{ content: ""; display: block; clear: both;}
  .bigbox::after{ content: ""; display: block; clear: both;}

.radiko { display: none!important; }

.radiko_sp {
display: block;
width: 100%;
position: relative;
}

.radiko_sp a img {
position: relative;
width: 100%;
height: auto;
}

.radiko_narrow {
  display: block;
  width: 100%;
  position: relative;
}

.radiko_narrow a img {
position: relative;
width: 100%;
height: auto;
}

.link {

    flex-wrap: wrap;
}

}

@media screen and (max-width: 972px) {
/* .ps-br {
  display: none;
} */
}

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

.wrapper {
  display: inline-block;
}

.left {
  padding: 0rem 1rem;
}



.sound h2 {
text-align: center;
}

.sound audio {
display: block;
margin-left: auto;
margin-right: auto;
}

.program img {
width: 100%;
}

.pdf_button {
  max-width: 300px;
  width: 70%;
  margin: 1rem auto 0rem auto;
}

}

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

.tateiwa_block {
  width: 100%;
  border-bottom: solid #1f5eff 2px;
}

.uk_block {
  width: 100%;

}

.flex {
  flex-wrap: wrap;
}

.wrapper_color {
  /* border-bottom: solid #2327ab 2px; */
}

.pod {
    width: 100%;
    border-bottom: 3px solid #2327ab;
}

.pod_block {
    grid-template-columns: repeat(1, 1fr);
}

.pod_title {

    border-right: 0px solid #2327ab;
    border-bottom: 3px solid #2327ab;
}

.pod_service {
    border-bottom: 3px solid #2327ab;
    border-right: 0px solid #2327ab;
    padding: 2rem 1rem 2.5rem 1rem;
    gap: 1rem;
}

.pod_title h2 {

  margin-left: 3.7rem;
}

.pod_title h2:before {
    width: 30px;
    height: 10px;
    border-left: 7px solid #122dae;
    border-bottom: 7px solid #122dae;
    top: .6em;
    left: 0.4em;
}

.program {

    padding: 1rem;
}

.program:nth-last-child(2) {
  /* border-bottom: none; */
      margin-bottom: 0px;
}


.right {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
    padding: 0rem;
    width: 100%;
}

.right a {
    border-right: solid #2327ab 3px;
    margin-right: -2px;
}

.right a:first-child {
  border-bottom: solid #2327ab 3px;
}

.right a:nth-last-child(2) {
  border-right: solid #2327ab 0px;
  margin-left: 2px;
  margin-right: -1px;
}


.right a:last-child {
  border-bottom: solid #2327ab 0px;
}

.pc_br {
  display: none;
}

.sp_br {
  display: block;

}

.sp_br_link {
  display: none;
}

}

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

a.btn-flat {
    padding: 1.5rem 1rem 1.5rem 1.6rem;
}

.top h1 {
  padding: 1rem 0.5rem;

}
}

@media screen and (max-width: 447px) {
  .sp_br {
    display: block;
  }

  .mail_block .mail_icon {
    font-size: 22px;
    }

  /* .wrapper h1 {
    font-size: 24px;
  } */

  .right {
    grid-template-columns: repeat(1, 1fr);
}

    .right a {
        border-right: solid #2327ab 0px;
        margin-right: 0px;
    }

.right a:nth-last-child(2) {
        border-right: solid #2327ab 0px;
        margin-left: 0px;
        margin-right: 0px;
    }

  .left {
    /* margin: 0rem 2rem 4rem 2rem; */
    /* padding: 4rem 0rem 0rem 0rem; */

  }

  .right {
    /* margin: 0rem 0rem 4rem 0rem; */
    /* padding: 0rem 0rem 0rem 0rem; */
  }


}

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

  a.btn-flat {
  text-align: left;
}

  .sp_br_link {
  display: block;
}


}
