﻿@media (min-width: 641px){
    #contents_inner a:hover {
        opacity: .7;
        transition: opacity .15s ease;
    }
}
@media (min-width: 751px){
    #yodogawa{
        margin-bottom: 100px;
    }
    #page_teaser #yodogawa .desc p {
        font-size: 16px;
    }
}
#top, #index_list ,#talk_wrap, .talk_nav{
    max-width: 700px;
    margin: 0 auto;
}
#top{
    padding-top: 4.33333333vw;
}
#top img{
    width: 72.33333333vw;
}
#page_teaser #yodogawa{
    font-family: 'Gothic Medium BBB JIS2004', sans-serif !important;
}
.popupBtn{
    color: #ce4124;
    cursor: pointer;
}
.popupBtn:hover{
    opacity: .7;
    transition: opacity .15s ease;
}
.popup {
  position: fixed;
  z-index: -1;
  opacity: 0;
  background: rgba(0, 0, 0, 0.6);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition-property: opacity;
  transition-duration: .1s;
}
.popup.active {
  z-index: 10000;
  opacity: 1;
}
.popup .box {
  background: #fff;
  width: 1000px;
  padding: 90px 0;
  box-sizing: border-box;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  text-align: left;
  z-index: 2;
  max-height: 90vh;
  overflow: scroll;
  text-align: center;
}
.popup .box .text01 {
  font-size: 25px;
  margin-bottom: 40px;
}
.popup .box .text02 {
  font-size: 20px;
  line-height: 1.9;
}
.popup .box > .close {
    width: 95px;
    position: absolute;
    cursor: pointer;
    top: 0;
    right: 0;
}
.popup .box > .close:hover {
    opacity: .7;
    transition: opacity .15s ease;
}
.popup > .close {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}


#index_list{
    padding: 3.6666666667vw 0 11.3333333333vw 0;
}
#index_list li{
    position:relative;
    padding: 0 0 70px 140px;
    display: flex;
    align-items: center;
}
#index_list li.off{
    opacity: .7;
}
#index_list li.off a{
    pointer-events: none;
}
#index_list li a{
    font-size: 25px;
	line-height: 1.18em;
}
#index_list li a span:first-of-type{
    font-size: 18px;
}
#index_list li a span:last-of-type{
    font-size: 13px;
}

#index_list li:before{
    position:absolute;
	left:0;
	content:"";
	display:inline-block;
	width: 110px;
	height: 70px;
	background:url(../images/ico_pre.svg) no-repeat;
	background-size:contain;
}
#index_list li:nth-of-type(2):before{
	background:url(../images/ico_seq.svg) no-repeat;
	background-size:contain;
}

#talk_wrap {
    padding-top: 4.33333333vw;
}
#talk_wrap h2{
    position:relative;
    padding: 0 0 70px 140px;
    font-size: 27px;
    line-height: 2em;
}
#talk_wrap h2 span{
    font-size: 18px;
}
#talk_wrap h2:before{
    position:absolute;
    top: -.35em;
	left:0;
	content:"";
	display:inline-block;
	width: 110px;
	height: 70px;
	background:url(../images/ico_pre.svg) no-repeat;
	background-size:contain;
}
#talk_wrap h2.num2:before{
	background:url(../images/ico_seq.svg) no-repeat;
	background-size:contain;
}
#talk_wrap p{
    max-width: 420px;
    margin: 0 auto 2em;
    font-size: 16px;
    letter-spacing: .04em;
    line-height: 1.56;
}
#talk_body .pic {
    max-width: 700px;
    margin: 0 auto 40px auto;
    text-align: center;
}
#talk_body .pic img{
    width: 100%;
}
.pic_wrap {
    display: inline-block;
}
#talk_body .pic .caption {
    margin: 5px 0 0 0;
    display: block;
    font-size: 13px;
    line-height: 1.6em;
    text-align: right;
}
#talk_wrap .talk_end {
    padding-top: 3em;
    padding-bottom: 4em;
    margin: 0;
    text-align: center;
}
#talk_wrap .talk_end p{
    font-size: 13px;
}
.talk_nav ul {
    padding-bottom: 140px;
    display: flex;
    justify-content: space-between;
}
#talk_wrap .conv dl {
    max-width: 540px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 3em;
    font-size: 16px;
    letter-spacing: .04em;
    line-height: 1.56;
}
#talk_wrap .conv dl dt {
    width: 20%;
    font-weight: bold;
}
#talk_wrap .conv dl dt.red {
    color: #ce4124;
}
#talk_wrap .conv dl dd {
    width: 80%;
}
.talk_nav .disabled {
    visibility: hidden;
}
@media (min-width: 751px) and (max-width: 1500px){
    #top img {
        width: 85vw;
    }
    #top, #index_list, #talk_wrap, .talk_nav {
        max-width: 620px;
        white-space: nowrap;
    }
    #index_list li a{
        font-size: 20px;
    }
    #index_list li a span:first-of-type{
        font-size: 16px;
    }
}
@media screen and (max-width: 750px){
    #top {
        padding-top: 12.33333333vw;
    }
    #top img{
        width: 100vw;
    }
    #page_teaser #yodogawa{
        margin-bottom: 12.333333vw;
    }
    #page_teaser #yodogawa .desc p {
        font-size: 16px;
    }
    #page_teaser #yodogawa .desc{
        padding-bottom: 2em;
    }
    .popup .box {
        width: 100%;
        margin: 0 auto;
        max-width: 400px;
        padding: 50px 0 40px;
    }
    .popup .box .text01 {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .popup .box .text02 {
        font-size: 14px;
    }
    .popup .box .text02 p {
        margin-bottom: 1em;
    }
    .popup .box > .close {
        width: 30px;
    }
    .popup .box > .close img{
        width: 100%;
    }
    #index_list , .talk_nav{
        width: auto;
        padding: 0 5.3333333333vw;
    }
    #index_list li {
        padding: 0 0 35px 0;
        display: block;
    }
    #index_list li:before{
        position: relative;
        width: 71px;
        height: 41px;
    }
    #index_list li a{
        display: block;
        font-size: 18px;
        letter-spacing: .09em;
        padding-top: 5px;
    }
    #index_list li a span:first-of-type{
        font-size: 14px;
    }
    #index_list li a span:last-of-type{
        font-size: 12px;
    }
    #talk_wrap h2 {
        font-size: 18px;
        letter-spacing: .08em;
        padding: 12px 5.3333333333vw 45px;
    }
    #talk_wrap h2:before{
        position: relative;
        display: block;
        width: 71px;
        height: 41px;
        top: 0;
        margin-bottom: 8px;
    }
    #talk_wrap h2 span {
        font-size: 14px;
    }
    #talk_body .pic{
        margin: 0 auto 20px auto;
        padding-top: 0;
    }
    #talk_body .pic .caption {
        margin: 0;
        font-size: 12px;
        line-height: 1.6em;
        text-align: left;
        text-indent: -1em;
        margin-left: 1em;
    }
    #talk_wrap .talk_end {
        padding-top: 1em;
        padding-bottom: 1em;
    }
    #talk_wrap .talk_end p{
        font-size: 12px;
        margin: 0 auto 1em;
    }
    #talk_wrap .conv dl{
        display: block;
        padding: 0 5.3333333333vw;
        margin-bottom: 2em;
    }
    #talk_wrap .conv dl dt,#talk_wrap .conv dl dd{
        width: 100%;
    }
    .talk_nav img{
        height: 80px;
    }
    .talk_nav ul{
        padding-bottom: 40px;
    }
}