@charset "shift-jis";
/* --------------------------------------------------------------------
	Financial Academy

	Style Info: cart setting

-------------------------------------------------------------------- */
*{ box-sizing: border-box;}
#tab5_left,
.style1607_inyo li{ box-sizing: content-box;}
body{
    counter-reset: ed 0;
    overflow-x: hidden;
}

.tac { text-align: center;}
.tar { text-align: right;}
.txt_orange { color: #ea5413;}
.txt_red { color: #ff0000;}
.txt_blue { color: #2c4198;}
.txt_lblue { color: #0091d7;}
.mb50 { margin-bottom: 50px;}
.mb60 { margin-bottom: 60px;}
.mb70 { margin-bottom: 70px;}
.ml10 { margin-left: 10px;}
.ml20 { margin-left: 20px;}
.ml35 { margin-left: 35px;}

.pc{ display: inherit;}
.sp{ display: none !important;}

.br_pc::before{
    content: "\A" ;
    white-space: pre ;
}
a:link,
a:visited,
a:active,
a:hover{ color: #00a1e6;}
a:hover{ text-decoration: underline;}

#contents { padding: 0 0 5px 0;}

section h2{
    font-size: 2rem;
    letter-spacing: .15em;
    font-weight: normal;
    line-height: 1.7;
    text-align: center;
    position: relative;
}

section h2.box{
    max-width: calc(100% - 60px);
    margin: 0 auto 70px;
}
section h2.box span{
    border-top: 2px solid #1c236d;
    display: inline-block;
    border-bottom: 2px solid #1c236d;
    padding: 20px;
    position: relative;
}
section h2.box span:before,
section h2.box span:after{
    content: "";
    width: 2px;
    height: 85%;
    background: #1c236d;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}
section h2.box span:before{ left: -25px;}
section h2.box span:after{ right: -25px;}

section h2.border{
    border-top: 2px solid #1c236d;
    border-bottom: 2px solid #1c236d;
    padding: 10px;
    margin-bottom: 50px;
}

section h3{
    text-align: center;
    font-size: 23px;
}
section h3.line{
/*    position: relative;*/
    margin-top: 1em;
    margin-bottom: 50px;
    color: #1c236d;
    border-top: 1px solid;
}
section h3.line span{
    background: #fff;
    padding: 0 .5em;
    margin-top: -1em;
    max-width: 85%;
    display: inline-block;
}
.bg-beige h3.line span{ background: #f3f3f2;}
/*section h3.line::before,
section h3.line::after{
    content: "";
    width: 25%;
    border-top: 1px solid #1c236d;
    position: absolute;
    top: 50%;
}
section h3.line::before{ left: 0;}
section h3.line::after{ right: 0;}*/
h3 .sub{
    display: block;
    font-size: .7em;
    font-weight: bold;
    padding-top: 30px;
}

p.ttl_eng{
    font-family: 'Josefin Slab', serif;
    color: #1c236d;
    font-weight: bold;
    font-size: 28px;
    text-align: center;
}

.bg-beige { background-color: #f3f3f2;}
.bg-blue { background-color: #e8e9f0;}
.bg-orange{ background: #e8e9f0;}

.lead{
    font-size: 20px;
    text-align: center;
}
.lead .color{
    font-size: 1.35em;
    color: #3193d5;
}
.caution{ font-size: .8em;}
.text_l{ font-size: 18px;}

img.per{ width: 86px;}
img.per02{ width: 133px;}
img.plus{ width: 112px;}
img.number{ width: 1.55em;}
img.no01{ width: 1.1em;}
img.per,
img.per02,
img.plus,
img.number,
img.no01{
    vertical-align: baseline;
    padding: 0 5px;
}


section .inner{
    width: 96%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 90px 0;
}

.btn01{ text-align: center;}
.btn01 a{
    background: #e60012 url(/images/common/arrow02.svg) 96% center/18px no-repeat;
    color: #fff;
    padding: 10px 60px;
    font-size: 27px;
    width: 55%;
    max-width: 540px;
    display: block;
    margin: 60px auto 0;
    font-weight: normal;
    border-radius: 2.8px;
    box-shadow: 0 1.5px 0 #782332;
    letter-spacing: .175em;
}
.btn01 a.off{
    pointer-events: none;
    background: #ccc;
    box-shadow: 0 1.5px 0 #777;
}


.btn01 a:hover{
    text-decoration: none;
    opacity: .7;
}
.btn02{
    text-align: center;
    width: 100%;
    margin-top: 35px;
}
.btn02 a{
    display: inline-block;
    text-align: center;
/*    background: url(/images/common/arrow03.svg) 97% center/15px no-repeat;*/
/*    width: 100%;
    max-width: 410px;*/
    color: #595757;
    border: 1px solid #595757;
    border-radius: 5px;
    font-size: 18px;
    padding: 0 30px;
    position: relative;
    letter-spacing: .1em;
}
.btn02 a::before{
    content: '';
    padding: 7px;
    background: url(/images/common/arrow03.svg) center center/contain no-repeat;
    position: absolute;
    right: 10px;
    top: 10px;
    transform: rotate(-90deg);
}
.btn02.soon a{ pointer-events: none;}
.btn02.soon a::after{
    content: 'Coming Soon';
    font-family: 'Josefin Slab', serif;
    letter-spacing: .05em;
    width: 100%;
    height: 100%;
    background: #595757;
    color: #fff;
    position: absolute;
    left: 0;
    top: 0;
}
.btn02:not(.soon):hover{
    cursor: pointer;
    opacity: .7;
}
.btn03{ text-align: center;}
.btn03 a{
    background: #e60012 url(/images/common/arrow02.svg) 96% center/18px no-repeat;
    color: #E5E5E5;
    padding: 10px 60px;
    font-size: 27px;
    width: 55%;
    max-width: 540px;
    display: block;
    margin: 60px auto 0;
    font-weight: normal;
    border-radius: 2.8px;
    box-shadow: 0 1.5px 0 #782332;
    letter-spacing: .175em;
}

#breadcrumbs{
    float: left;
    margin: 20px 0;
}
#mv {
    text-align: center;
    position: relative;
    margin: 0 auto;
/*    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;*/
    background: #1c236d;
/*    max-height: 480px;*/
}
/*#mv > div,
#mv > img{
    width: 50%;
    object-fit: cover;
}*/
#mv .title{
/*    background: #1c236d;*/
    color: #fff;
    padding: 25px 10px;
/*    text-align: left;
    align-self: stretch;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    width: 50%;
    max-width: 500px;
    margin: 0 0 0 auto;*/
}
#mv h1 {
    font-family: Georgia,Ÿà–¾’©,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS–¾’©E,ƒƒCƒŠƒI,Meiryo,serif;
    font-size: 5em;
    font-weight: normal;
    line-height: 1;
    padding-top: .3em;
/*    margin-bottom: .3em;*/
    text-align: center;
}
#mv h1 .icn_manabi{
    vertical-align: -.3em;
    width: 2.8em;
}
#mv .lead{
    font-size: 20px;
    margin-bottom: 0;
    background: #fff;
    border-radius: 5px;
    color: #1c236d;
    padding: 0 1em;
    display: inline-block;
}
#mv p,
#mv .catch .lead{
    font-size: 20px;
    margin-bottom: 20px;
    letter-spacing: .15em;
}
#mv .lead{ font-weight: normal;}
#mv .title {
    width: 100%;
/*    height: 350px;*/
    overflow: hidden;
}
#mv .title video{ width: 100%;}
#mv .date img{ width: 270px;}

#mv .sub{
    position: absolute;
    background: rgba(0, 0, 0, .25);
    width: 100%;
    bottom: 20%;
}
#mv .sub p{
    color: #fff;
    line-height: 5;
    margin-bottom: 0;
    font-size: 2em;
}

#mv2 .inner{ padding: 45px 0;}
#mv2 p{
    font-size: 20px;
    line-height: 2.3;
    color: #1c236d;
    text-align: center;
}
#mv2 p > a{
    color: #1c236d;
    text-decoration: underline;
}

/*#message h2::after{
    content: "";
    display: block;
    border-bottom: 3px solid #1c236d;
    width: 115px;
    margin: 20px auto 85px;
}*/
#message .catch .lead{
    font-size: 20px;
    margin-bottom: 20px;
    letter-spacing: .15em;
}
#message .catch{
    padding: 0;
    background: #e8e9f0;
    width: 100%;
    color: inherit;
    text-align: center;
}
#message p{
    background: #fff;
    padding: 80px 70px;
    text-align: center;
    font-size: 17px;
    line-height: 2.3;
}
#message p .bold{
    font-weight: bold;
    font-size: 1.3em;}

.news{
    position: relative;
    font-size: 16px;
/*    background: #1c236d;
    padding: 30px;
    color: #fff;*/
    text-align: left;
    line-height: 1.7;
    margin-bottom: 20px;}

.news a,
.news a:link,
.news a:visited,
.news a:active{
    color: #000;
    text-decoration: none;
    margin-left: 110px;
    display: block;
}
.news a:hover{
    text-decoration:underline;
}

.news span.nt{
/*    position: absolute;
    top: -20px;
    left: 30px;*/
    padding: 0 10px;
/*    background-color: #fff;
    text-decoration:none;*/
    border-radius: 5px;
    color: #1c236d;
    border: 1px solid;
    float: left;
    clear: both;
    margin-right: 10px;
    width: 100px;
    text-align: center;
    display: block;
}

ol.education{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 70px;
}
ol.education li{
    width: 21%;
    border-top: 1px solid #1c236d;
    padding-top: 50px;
    position: relative;
}
ol.education li::before{
    content: counter(ed);
    counter-increment: ed 1;
    font-family: 'Josefin Slab', serif;
    color: #1c236d;
    font-weight: bold;
    font-size: 24px;
    border-bottom: 1px solid;
    padding: 0 .5em;
    background: #fff;
    position: absolute;
    top: -.65em;
    left: calc(50% - .5em);
    line-height: 1.3;
}
ol.education li figure{
/*    width: 68%;*/
    height: 165px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
ol.education li figcaption{
    width: 100%;
    text-align: center;
    align-self: flex-start;
    font-family: 'Josefin Slab', serif;
    color: #1c236d;
    font-weight: bold;
    font-size: 23px;
    line-height: 1.3;
}
ol.education li figure img{
    width: 60%;
    vertical-align: middle;
    align-self: flex-end
}
ol.education li p{
    margin-top: 40px;
    font-size: 1.2em;
}

.kaikaku_number{
    background: #1c236d;
    width: 148px;
    height: 148px;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 21px;
    color: #fff;
    line-height: 1.8;
}
.kaikaku_number .border{
    width: 128px;
    height: 128px;
    border: 1px solid #fff;
    display: block;
    border-radius: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    justify-content: center;
}
.kaikaku_number .border .bg{ background: #1c236d;}
.kaikaku_number .border .num{
    font-family: 'Josefin Slab', serif;
/*    font-size: 1.6em;*/
/*    padding: 0 .1em;*/
    white-space: nowrap;
}

.program_list{
    display: flex;
    flex-wrap: wrap;
}
.program{
    width: 32%;
    margin-left: 2%;
    margin-bottom: 2em;
}
.program:nth-child(3n-2){ margin-left: 0;}
.program > a{ display: block;/*color: #1c236d;*/}
.program > a:hover,
.program > a:hover *{ opacity: .7;}
.program > a:hover h3{ text-decoration: underline;}


.program .tags{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.program .tags .target{
    font-family: 'Josefin Slab', 'ƒqƒ‰ƒMƒmŠpƒS Pro W3','Hiragino Kaku Gothic Pro','‚l‚r ‚oƒSƒVƒbƒN','MS P Gothic',sans-serif;
    color: #1c236d;
    font-weight: bold;
    font-size: 26px;
    line-height: 1.3;
}
.program .tags .target.jp{
    font-size: 18px;
    font-weight: normal;
    line-height: 1.9;
}
.program .tags .status{
    width: 5.5em;
    border-radius: 5px;
    color: #fff;
    text-align: center;
    line-height: 2;
}
.program .tags .status.open{ background: #1c236d;}
.program .tags .status.soon{ background: #babdd3;}
.program .tags .status.close{ background: #ccc;}

.program img{
    width: 100%;
    height: 230px;
    object-fit: cover;
}
.program .text{
    position: relative;
    background: #1c236d;
    color: #fff;
    padding: 10px;
}
/*.program .text::after{
    content: "";
    padding: 74px;
    position: absolute;
    top: 148px;
    left: 0;
}
.program.kids .text::after{ background: url(/event/190606/img/img_ed01.svg) center 20px/85% no-repeat;}
.program.women .text::after{ background: url(/event/190606/img/img_ed02.svg) center 8px/85% no-repeat;}
.program.business .text::after{ background: url(/event/190606/img/img_ed03.svg) center top/85% no-repeat;}
.program.everyone .text::after{ background: url(/event/190606/img/img_ed04.svg) center top/85% no-repeat;}
.program .kaikaku_number{
    position: absolute;
    left: 0;
    top: 0;
}*/
/*.program .target{ margin-top: 25px;}*/
.program .target li{
    display: inline-block;
    width: 10em;
    text-align: center;
    background: #d2d3e2;
    border-radius: 5px;
    color: #1c236d;
    margin-right: 15px;
    font-size: 18px;
}

.place{ margin-bottom: .5em;}
.place li{
    display: inline-block;
    width: 5em;
    text-align: center;
    border-radius: 1em;
    margin-right: 5px;
/*    font-size: 18px;*/
    background: #fff;
    border: 1px solid;
}
.place li.kanto{
    border-color: #882F8E;
    color: #882F8E;
}
.place li.kansai{
    border-color: #0093D8;
    color: #0093D8;
}
.place li.all{
    border-color: #D7093B;
    color: #D7093B;
}
.place li.hokkaido{
    border-color: #06AF7A;
    color: #06AF7A;
}
.place li.tohoku{
    border-color: #EA5420;
    color: #EA5420;
}
.place li.hokuriku{
    border-color: #F3981F;
    color: #F3981F;
}
.place li.chubu{
    border-color: #EA609E;
    color: #EA609E;
}
.place li.chugoku{
    border-color: #28B528;
    color: #28B528;
}
.place li.shikoku{
    border-color: #8B6DD1;
    color: #8B6DD1;
}
.place li.kyusyu{
    border-color: #008CBA;
    color: #008CBA;
}
.place li.okinawa{
    border-color: #C4C40E;
    color: #C4C40E;
}

.program h3{
/*    text-align: left;*/
    font-size: 17px;
    line-height: 1.5;
    margin-bottom: 0;
}
.program .text .comment{
/*    margin-left: -148px;*/
    font-size: 16px;
}

.program.soon .text{ background: #babdd3;}
.program.soon .place li{
    color: #babdd3;
    width: auto;
    padding: 0 10px;
}

.program_list + .matome{ background: #fff;}
.program_list + .matome p{
    font-size: 30px;
    font-weight: bold;
    color: #1c236d;
}

.detail div[id^="no"]{
    position: relative;
    margin-top: 150px;
    padding: 120px 70px 90px;
}
.detail .list .kaikaku_number{
    position: absolute;
    top: -74px;
    left: 40%;
/*    right: 0;
    margin: auto;*/
}
.detail .list.kids .kaikaku_number::after{
    content: "";
    padding: 63px;
    background: url(/event/190606/img/img_ed01.svg) center center/100% no-repeat;
    position: absolute;
    top: 0;
    right: -150px;
}
.detail .list.women .kaikaku_number::after{
    content: "";
    padding: 63px;
    background: url(/event/190606/img/img_ed02.svg) center center/100% no-repeat;
    position: absolute;
    top: 0;
    right: -150px;
}
.detail .list.business .kaikaku_number::after{
    content: "";
    padding: 63px;
    background: url(/event/190606/img/img_ed03.svg) center center/100% no-repeat;
    position: absolute;
    top: 0;
    right: -150px;
}
.detail .list.everyone .kaikaku_number::after{
    content: "";
    padding: 63px;
    background: url(/event/190606/img/img_ed04.svg) center center/100% no-repeat;
    position: absolute;
    top: 0;
    right: -150px;
}
.detail .list h3{
    color: #1c236d;
    margin-bottom: 30px;
    font-size: 27px;
}
.detail .list .lead{
    font-size: 1.2em;
    line-height: 2.3;
    margin-bottom: 70px;
    text-align: left;
}
.detail .list .img{
    max-width: 100%;
    margin-bottom: 30px;
}
.detail .list .img_box{
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 140px);
    margin-left: -70px;
    align-items: flex-start;
    margin-bottom: 50px;
}
.detail .list .img_box > img{ width: 25%;}
.detail .list .pickup{
    border-top: 2px solid #1c236d;
    padding-top: 1em;
    border-bottom: 2px solid #1c236d;
    padding-bottom: 1em;
    font-size: 1.2em;
    max-width: 700px;
    margin: 0 auto 50px;
    text-align: center;
}
.detail .place{
    text-align: center;
    margin-bottom: 25px;
}

.table01{
    border-top: 1px solid #1c236d;
    border-left: 1px solid #1c236d;
    font-size: 16px;
    text-align: left;
    width: 100%;
/*    table-layout: fixed;*/
}
.table01 th,
.table01 td{
    padding: 15px 5px 15px 15px;
    border-right: 1px solid #1c236d;
    border-bottom: 1px solid #1c236d;
}
.table01 th{
    min-width: 14.5%;
    color: #1c236d;
    background: #e8e9f0;
    vertical-align: top;
    font-weight: normal;
    white-space: nowrap;
}
.table01 td{ width: 85.5%;}
.table01 td .txt_s{
    font-size: 85%;
    display: block;
}

.table01 + h3.line{ margin-top: 90px;}

.matome{
    margin-top: 50px;
    padding: 45px;
}
.matome p{
    font-size: 1.2em;
    text-align: center;
}

.video-message{ margin-bottom: 60px;}
.video-message img{ width: 100%;}
.youtube {
    max-width: 950px;
    margin: 0 auto;
    width: 100%;
    position:relative;
    padding-top:56.25%;
}
.youtube iframe {
    position:absolute;
    top:0;
    right:0;
    width:100%;
    height:100%;
}

.hosoku{
    font-size: 13px;
    margin-top: 1em;
}

.point{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 80px;
}
.point > li{
    width: 20.8%;
    border: 1.5px solid #1c236d;
    font-size: 1.1em;
    padding: 10px 5px;
    margin: 20px 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    height: 10em;
}

a.btn_report{
    text-align: center;
    display: block;
    max-width: 300px;
    margin: 0 auto 50px;
    background: #1c236d url(/images/common/arrow02.svg) 96% center/15px no-repeat;
    color: #fff;
    border-radius: 5px;
    font-size: 1.3em;
    padding: 10px;
}
a.btn_report.soon{
    background: #ccc;
    pointer-events: none;
}


/* ƒ^ƒuƒŒƒbƒgˆÈ‰º */
@media screen and (max-width: 1024px) {
    #head2{ height: 85px !important;}

    #container{
        margin-top: 80px;
        overflow: hidden;
        width: 100%;
    }
    .lead{ font-size: 20px;}
    
    #mv{ letter-spacing: 0;}
/*    #mv > div { padding: 20px 10px;}*/
    #mv h1 {
/*        margin: 0 0 15px;*/
        font-size: 2.5em;
    }
    #mv p,
    #mv .lead{ font-size: 16px;}
/*    #mv .title h1{ top: 20%;}*/
    #mv ul.type li{
        font-size: 16px;
        margin-right: 10px;
    }
    
    .btn01{ max-width: 100%;}
    .btn01 a{ width: 80%;}
    
    .youtube{ max-width: 100%;}
    
/*    .program{ justify-content: center;}
    .program .text { width: 100%;}
    .program > img {
        width: 50%;
        margin-top: 1.5em;
    }*/
}

@media screen and (max-width: 799px) {
    .fancybox-content{ height: 35% !important;}
}

/* ƒXƒ}ƒz */
@media screen and (max-width: 599px) {

    #breadcrumbs{ display: none;}

    .pc{ display: none !important;}
    .sp{ display: inherit !important;}

    .br_pc::before{ content: none;}
    .br_sp::before{
        content: "\A" ;
        white-space: pre ;
    }

    .snsBtn { margin: 0}
    #breadcrumbs{ display: none;}

    .text_l{ font-size: 1.15em;}

    img.per{ width: 65px;}
    img.plus{ width: 80px;}
    img.per02{ width: 100px;}
    img.number{ width: 2.5em;}
    img.no01{  width: 1.8em;}

    section .inner{ padding: 40px 0;}
    section h2 {
        font-size: 19px;
        letter-spacing: 0;
    }
/*    #message h2::after {
        width: 80px;
        margin: 15px auto 25px;
    }*/
    section h3{ font-size: 1.2rem}
    .lead{
        font-size: 12px;
        text-align: left;
    }
    .btn01 a{
        font-size: 16px;
        padding: 10px 5px;
        background: #e60012 url(/images/common/arrow02.svg) 97% center/12px no-repeat;
        letter-spacing: .1em;
        margin: 30px auto 0;
        width: 100%;
    }
    .btn02{ font-size: 13px;}
    .btn02::before{ left: 5px;}

    #mv {
        display: block;
        height: auto;
    }
/*    #mv > div,
    #mv > img{ width: 100%;}
    #mv .title{
        height: auto;
        position: absolute;
        top: 0;
        display: block;
        z-index: -1;
    }*/

    #mv p{
        font-size: 3.5vw;
        margin-bottom: 0;
        text-align: center;
        letter-spacing: 0;
    }
    #mv .lead{ letter-spacing: 0.1em;}
    #mv .date img{ width: 75%;}
    #mv .sub{
        bottom: 0;
        transform: translateY(-15vh);
    }
    #mv .sub p {
        line-height: 1.2;
        font-size: 1.4em;
        padding: 10px 0;
    }

    #mv2 p{ font-size: 16px;}
    
    #message p{
        padding: 25px;
        text-align: left;
        font-size: 14px;
        line-height: 2;
    }

    .table01 th,
    .table01 td{
        display: block;
        width: 100%;
    }
    .table01 th{
        padding: 5px 10px;
        text-align: center;
    }
    .table01 td{ font-size: 14px;}

    section h3.line{
        margin-bottom: 20px;
        font-size: 15px;
    }
    section h3.line::before,
    section h3.line::after{ content: none;}

    section h2.box span{ padding: 20px 0;}
    
    ol.education{ margin-top: 30px;}
    ol.education li{
        width: 45%;
        margin-bottom: 30px;
    }
    ol.education li figure{ height: 25vh;}
    ol.education li p{
        margin-top: 12px;
        font-size: 14px;
        line-height: 2;
    }
    
    .matome{
        margin-top: 0;
        padding: 20px;
    }
    .matome p{
        font-size: 14px;
        line-height: 2;
    }

    .program{
        width: 48%;
        margin-left: 4%;
    }
    .program:nth-child(3n-2){ margin-left: 4%;}
    .program:nth-child(2n-1){ margin-left: 0;}
/*    .program .text::after {
        padding: 64px;
        top: -90px;
        left: 25vw;
    }*/
    .program .text{ padding: 10px 5px;}
    .program h3{ font-size: 13px;}
    .program .text .comment{ margin-left: 0;}
/*    .program h3{ margin-bottom: 20px;}*/
    .program .kaikaku_number{
/*        position: static;*/
        margin: 0 auto;/* 1em;*/
        top: -235px;
        left: 0;
        right: 0;
    }
    .program .target{ text-align: center;}
    .program .target li{
        min-width: 48%;
        margin-right: 0;
        margin-bottom: 2%;
    }
    .program .target li:nth-child(even){ margin-right: 0;}
    .program img{ height: 125px;}
    
    .program .tags .target{ font-size: 15px;}
    .program .tags .target.jp{ font-size: 10px;}
    .program .tags .status{
        line-height: 1.6;
        font-size: 10px;
    }
    
    .program + .matome{ margin-top: 30px;}
    .program + .matome p { font-size: 18px;}
    
    .detail div[id^="no"]{
        padding: 180px 20px 20px;
        margin-top: 100px;
    }
    .detail .list .kaikaku_number{ left: 30vw;}
    .detail .list.kids .kaikaku_number::after,
    .detail .list.women .kaikaku_number::after,
    .detail .list.business .kaikaku_number::after,
    .detail .list.everyone .kaikaku_number::after{
        padding: 55px;
        right: auto;
        top: 140px;
    }
    .detail .list h3{ font-size: 17px;}
    .detail .list .img_box{
        width: calc(100% + 40px);
        margin-left: -20px;
    }
    .detail .list .img_box > img{ width: 50%;}
    .detail .list .lead{
        font-size: 14px;
        line-height: 2;
    }
    
    .place li{
        font-size: 10px;
        width: 4em;
    }
    
    .news{ font-size: 13px;}
    .news span.nt{ width: 80px;}
    .news a,
    .news a:link,
    .news a:visited,
    .news a:active{ margin-left: 90px;}

    .point > li {
        width: 47.5%;
        font-size: 1em;
        margin: 10px 0;
    }
}

@media screen and (max-width: 320px){
    .program .tags .target { font-size: 15px;}
}
