*{
	padding:0;
	margin:0;
	box-sizing:border-box;
	font-family: Verdana, Arial,"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "游ゴシック Medium", Meiryo, "メイリオ", Osaka, "MS P Gothic", "ＭＳ Ｐゴシック", sans-serif;
	color:#444;
    font-size:17px;
}

body {
    background: #fff;
}

a,
a i {
    color: #355fdf;
}
a:hover,
a:hover i{
    color: #35b7df;
}
a img:hover{
    opacity:0.6;
}
.attention{
	color:#FF3333;
}
.attentionb{
	font-weight:bold;
	color:#FF3333;
}
.pconly {
	display:inline;
}
.mobileonly {
	display:none;
}
.kakko {
    margin-left:-0.5em;
}
.kakkotoji {
    margin-right:-0.5em;
}
.marker {
    background:linear-gradient(transparent 60%, #f0ffb0 60%);
}

.btn{
    display:block;
    text-decoration: none;
    text-align:center;
    border-radius: 3px;
}
.btn:hover{
    opacity:0.6;
    color:#fff;
}
.btn:hover i{
    color:#fff;
}
.btn-aqua {
    background: #5185a8;
    background: linear-gradient(180deg, #518fa8 0%, #47677d 100%);
    color:#fff;
}
.btn-lime {
    background: #7c9b41;
    background: linear-gradient(180deg, #7c9b41 0%, #556a33 100%);
    color:#fff;
}
.btn-mint {
    background: #51a8a4;
    background: linear-gradient(180deg, #51a8a4 0%, #477d79 100%);
    color:#fff;
}
.btn-aqua i,
.btn-lime i,
.btn-mint i {
    color:#fff;
}
.btn-s {
    padding:5px;
    width:150px;
}
.btn-m {
    padding:5px;
    width:200px;
}
.btn-l {
    padding:10px;
    width:300px;
    font-size:18px;
}

/*----------------------------
* header
*----------------------------*/
header {
    width:100%;
    background:#fff;
}
header .header-in {
    margin:0 auto;
    width:1020px;
}
header a{
    text-decoration:none;
}
header a:hover{
    opacity:0.6;
}
header img{
    float:left;
    width:100px;
    margin:85px 10px 0 0;
}
header .onamae{
    float:left;
}
header h1{
    display: block;
    padding:0 20px 5px 0;
    font-size:42px;
    line-height:47px;
    font-weight:bold;
    color:#142853;
    text-decoration: none;
}
header h1 span{
    display:inline-block;
    color:#142853;
    font-size:28px;
    line-height:30px;
    margin-left: 5px;
}
header h2 {
    padding-left:5px;
    margin-bottom:20px;
    font-size:16px;
    font-weight:normal;
    color:#142853;
}
header .navi{
    float: right;
    margin-right: 10px;
}
header .navi-item{
    margin: 15px 5px;
    float: left;
    text-align:center;
    border-bottom:3px solid #425491;
}
header .navi-item:hover{
    opacity:0.6;
}
header .navi-item a,
header .navi-item a i {
    color: #425491;
    text-decoration:none;
    font-size:16px;
}
header .menu-btn{
    display: none;
}
header .menu {
    clear: both;
    width: 100%;
    background: #1864bb;
    overflow:auto;
}
header .menu-in {
    margin:0 auto;
    width: 1020px;
    background: #1864bb;
}
header .menu-in a.menu-item {
    width: 16.6%;
    height: 50px;
    float: left;
    background: #1864bb;
    background: linear-gradient(180deg, #1864bb 0%, #142853 100%);
    border-bottom:3px solid #142853;
    border-left: 1px solid #fff;
    padding:10px 0;
    text-align:center;
    font-size: 18px;
    color:#fff;
    text-decoration: none;
}
header .menu-in a.menu-item i {
    color:#fff;
}
header .menu-in a.menu-item:last-child {
    border-right: 1px solid #fff;
}
header .menu-in a.menu-item:hover {
    background: #0797cf;
}
header .menu-in a.actv {
    background: #0797cf;
    background: linear-gradient(180deg, #0797cf 0%, #1864bb 100%);
}


/*----------------------------
* main
*----------------------------*/
.main {
    clear: both;
	width:100%;
}
.main .topimage{
    background:url(https://j-pocus.com/images/topimage.png);
    background-size:cover;
    height:auto;
    overflow:auto;
}
.main .topimage-in{
	margin:0 auto;
	width:1020px;
    padding:30px 20px;
    font-size:14px;
    color: #142853;
    display:flex;
}
.main .topimage h3{
    font-size:24px;
    color: #222;
}
.main .topimage h3 i{
    color: #c00;
}
.main .topimage-in .explan{
    width:650px;
    margin-right:20px;
}
.main .topimage-in .pickup {
    width:300px;
    height:140px;
    overflow: hidden;
    position: relative;
    margin:40px 0 20px auto;
}
.main .topimage-in .pickup_img {
    z-index:1;
    opacity: 0;
    position: absolute;
    width:300px;
    height:140px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    left: 0;
    top:0;
    -webkit-animation: anime 18s 0s infinite;
    animation: anime 18s 0s infinite;
}
.main .topimage-in .pickup_img:nth-of-type(2) {
    -webkit-animation-delay: 6s;
    animation-delay: 6s;
}
.main .topimage-in .pickup_img:nth-of-type(3) {
    -webkit-animation-delay: 12s;
    animation-delay: 12s;
}
@keyframes anime {
    0% {opacity:0;z-index:1;}
    10% {opacity:1;z-index:10;}
    30% {opacity:1;z-index:10;}
    40% {opacity:0;z-index:1;}
    100% {opacity:0;z-index:1;}
}
.main .title {
    background: #f0f7ff;
	width:100%;
	margin:15px 0;
}
.main .title .title-in {
	margin:0 auto;
	width:1020px;
	padding:5px;
}
.main .title h2 {
    font-size: 30px;
    padding-left: 15px;
    font-weight: normal;
    color: #105888;
}

/*----------------------------
* contents 
*----------------------------*/
.contents {
	padding:20px;
	width:100%;
}
.contents-in {
	padding:20px 20px 70px 20px;
	margin:0 auto;
	width:1020px;
}
.contents h3 {
    margin-bottom:30px;
    font-size: 28px;
    font-weight: bold;
    color:#142853;
    border-left:5px solid #1887bb;
    padding-left:10px;
}
.contents h3 span {
    font-size: 15px;
    color:#142853;
}
.contents h4 {
    margin-top:20px;
    font-size: 18px;
    font-weight: bold;
}
.contents .whatsnew dl {
    margin:0;
    border-bottom: 1px dashed #ccc;
}
.contents .whatsnew dl.pinning {
    background:#eefeff;
}
.contents .whatsnew dl dt {
    color:#142853;
    display:table-cell;
    padding:10px;
}
.contents .whatsnew dl dd {
    display:table-cell;
    padding:10px;
}
.contents .banner img {
	margin:0 20px 10px 0;
}
.contents .about ol{
    margin-bottom:20px;
}
.contents .about li{
    margin:5px 23px;
    line-height:22px;
}
.contents .about .img_l{
    margin-right: 20px;
    float: left;
    font-size:12px;
}
.contents .about .img_r{
    margin-left: 20px;
    float: right;
    font-size:12px;
}

.contents .about table {
    border-collapse: collapse;
    margin-bottom:20px;
}
.contents .about table th{
    font-weight: normal;
    text-align: left;
    min-width:115px;
    padding:5px 10px;
    vertical-align: middle;
    border: 1px solid #ddd;
    background:#f1f1f1;
    /*
    border-top: 1px dashed #ccc;
    border-bottom: 1px dashed #ccc;*/
}
.contents .about table td{
    padding:5px 10px;
    min-width:115px;
    vertical-align: middle;
    border: 1px solid #ddd;
    /*
    border-top: 1px dashed #ccc;
    border-bottom: 1px dashed #ccc;*/
}
.contents .request ul{
    margin-bottom:20px;
}
.contents .request li{
    margin:5px 23px;
    line-height:22px;
}
.contents .request table {border-collapse:collapse;}
.contents .request table th{
    padding:5px 8px;
    vertical-align: middle;
    border: 1px solid #ccc;
    background:#ebeff3;
    min-width: 90px;
    font-size:13px;
    text-align:left;
    font-weight:normal;
}
.contents .request table td{
    padding:8px 15px;
    vertical-align: middle;
    border: 1px solid #ccc;
    font-size:14px;
}
.contents .request table td span{
    font-size:12px;
}
.contents .congress h4 {
    margin: 30px 0 20px 0;
    padding:0 10px;
    background:#f0f7ff;
    color: #425491;
}
.contents .congress p {
    margin-left: 10px;
    word-break: break-all;
}
.contents .congress ul{
    margin-left: 10px;
    margin-bottom:20px;
}
.contents .congress li{
    margin:5px 0 5px 23px;
    line-height:22px;
}
.contents .congress ul.kome {
    margin:0;
    padding:0;
}
.contents .congress ul.kome li {
    list-style:none;
    margin:5px 0;
    padding-left: 1.3em;
    text-indent: -1.3em;
}
.contents .congress ul.kome li:before {
  content: "※ ";
}
.contents .congress table{
    border-collapse: collapse;
    margin: 20px 0 40px 0;
    width:800px;
}
.contents .congress table th,
.contents .congress table td {
	border:1px dashed #ccc;
    border-left:none;
    border-right:none;
    padding:10px;
    word-break: break-all;
}
.contents .congress table th{
    font-weight: normal;
    color: #425491;
    width: 170px;
}
.contents .mokuji{
    border:1px solid #ccc;
    width:fit-content;
    padding:10px;
}
.contents .mokuji h3{
    border:none;
    margin:0 5px;
    padding:0;
    font-size:22px;
    color:#333;
    font-weight:normal;
}
.contents .mokuji ul{
    list-style-type:none;
}
.contents .mokuji li{
    margin:5px;
    line-height:22px;
    padding:5px 0;
    border-bottom:1px dashed #ccc;
}
.contents .mokuji li:last-child{
    border-bottom:none;
}
.contents .mokuji span{
    font-size:13px;
}
#pagetotop {position:fixed;bottom:40px;right:0;display:block;padding:3px 13px 13px;background:#0070C0;z-index:99;border-radius:5px 0 0 5px;text-align:center;}
#pagetotop {display:block;text-decoration:none;font-size:11px;color:#fff;line-height:.9;}
#pagetotop i {font-size:30px;line-height:.9;color:#fff;}
@media only screen and (max-width: 520px){#pagetotop {bottom:15px;}}
.contents .special *{
    box-sizing:content-box;
}
.contents .special h2{
    display: block;
    padding:5px 0;
    margin-bottom:30px;
    border-bottom:3px dashed #333;
}
.contents .special h2 span {
    display:inline-block;
    background:#333;
    color: #fff;
    font-size:26px;
    border-radius:5px;
    padding:0 10px;
}
.contents .special h3.maintitle {
    position:relative;
    border:none;
    margin:0;
    padding:0;
    font-size:30px;
    color:#333;
}
.contents .special .subtitle {
    font-size:22px;
    color:#333;
}
.contents .special .dateplace {
    margin:15px 0;
}
.contents .special .dateplace span {
    display:inline-block;
    color: #fff;
    background: #333;
    padding: 0 5px;
    margin:5px 5px 0 0;
    border-radius:3px;
}
.contents .special .mainimage {
    display:flex;
    justify-content:space-between;
    margin-bottom:20px;
}
.contents .special .mainimage img {
    margin-left:20px;
    min-width:200px;
    height: auto;
    border-radius:5px;
}
.contents .special .speaker {
    display:flex;
    margin-bottom:15px;
}
.contents .special .speaker img {
    margin-right:10px;
    border-radius:5px;
    max-height:150px;
    width: auto;
}
.contents .special .speaker p {
    font-size:15px;
}
.contents .special section {
    border-top: 3px dashed #ccc;
    margin:40px 0;
    padding:20px 0;
}
.contents .special section h3 {
    border:none;
    margin:60px 0 20px 0;
    padding:5px 0;
    font-size:22px;
    line-height:1.3;
    color:#333;
    border-bottom:3px dashed #ccc;
    clear: both;
}
.contents .special section .pic{
    padding:30px;
    margin:30px 15px;
    border:5px solid #eee;
    border-radius:8px;
    overflow:auto;
}
.contents .special section .pic img{
    margin-left:25px;
    float:right;
}
.contents .special section .comment.dr_kameda,
.contents .special section .comment.dr_hata,
.contents .special section .comment.dr_mizuma,
.contents .special section .comment.dr_minagawa,
.contents .special section .comment.dr_miyatake
 {
    display:flex;
    padding:15px;
}
.contents .special section .comment span {
    display: inline-block;
    min-width:70px;
    height:70px;
    border-radius:50%;
    position: relative;
}
.contents .special section .comment.dr_kameda span {
    background: url(../images/spe1/dr_kameda_s.jpg);
    border:3px solid #abcfc6;
}
.contents .special section .comment.dr_hata span {
    background: url(../images/spe1/dr_hata_s.jpg);
    border:3px solid #d1ddae;
}
.contents .special section .comment.dr_mizuma span {
    background: url(../images/spe1/dr_mizuma_s.jpg);
    border:3px solid #b9d0df;
}
.contents .special section .comment.dr_minagawa span {
    background: url(../images/spe2/dr_minagawa_s.jpg);
    border:3px solid #f5ccf1;
}
.contents .special section .comment.dr_miyatake span {
    background: url(../images/spe2/dr_miyatake_s.jpg);
    border:3px solid #c2c9ee;
}
.contents .special section .comment span::before {
    content: "";
    position: absolute;
    top: 60%;
    left: 66px;
    margin-top: -15px;
    border: 8px solid transparent;
}
.contents .special section .comment.dr_kameda span::before{
    border-right: 15px solid #edf8f5;
}
.contents .special section .comment.dr_hata span::before{
    border-right: 15px solid #f7faed;
}
.contents .special section .comment.dr_mizuma span::before{
    border-right: 15px solid #ecf4fa;
}
.contents .special section .comment.dr_minagawa span::before{
    border-right: 15px solid #f8edf7;
}
.contents .special section .comment.dr_miyatake span::before{
    border-right: 15px solid #edeffa;
}
.contents .special section .comment span::after {
    position: absolute;
    left:23px;
    bottom: -20px;
    font-size: 12px; 
    color: #333; 
}
.contents .special section .comment.dr_kameda span::after{
    content: "亀田";
}
.contents .special section .comment.dr_hata span::after{
    content: "畠";
    left:30px;
}
.contents .special section .comment.dr_mizuma span::after{
    content: "水間";
}
.contents .special section .comment.dr_minagawa span::after{
    content: "皆川";
}
.contents .special section .comment.dr_miyatake span::after{
    content: "宮武";
}
.contents .special section .comment p {
    padding:10px;
    border-radius:10px;
    width:100%;
    margin-left:15px;
}
.contents .special section .comment.dr_kameda p{
    background:#edf8f5;
}
.contents .special section .comment.dr_hata p{
    background:#f7faed;
}
.contents .special section .comment.dr_mizuma p {
    background:#ecf4fa;
}
.contents .special section .comment.dr_minagawa p {
    background:#f8edf7;
}
.contents .special section .comment.dr_miyatake p{
    background:#edeffa;
}

/*----------------------------
* footer
*----------------------------*/
footer {
    width: 100%;
    background: #0e3d72;
    margin-top:30px;
}
footer .footer-in {
    margin: 0 auto;
    width: 1020px;
    padding:20px;
}
footer h3 {
    font-size:24px;
    font-weight: normal;
    color:#fff;
}
footer p {
    font-size: 13px;
    color:#fff;
}
footer a {
    color:#fff;
}
footer .copyright {
    margin: 10px 0;
    font-size: 13px;
    color:#fff;
    text-align: right;
}

/*----------------------------
* 0px-1019px
*----------------------------*/
@media only screen and (max-width: 1019px){

    .pconly {
        display:none;
    }
    .mobileonly {
        display:inline;
    }
    header .header-in {
        width:100%;
    }
    header img{
        margin:30px 10px 0 20px;
    }
    header .menu-in {
        width:100%;
    }
    .main .topimage-in{
        width: 100%;
        padding:15px 25px;
    }
    .main .topimage-in .explan{
        flex: 1; /* 左側の要素の幅を可変にする */
    }
    .main .title .title-in {
        width: 100%;
    }
    .contents-in {
        width: 100%;
        padding:20px 5px 70px 5px;
    }
    .contents .congress table{
        width:100%;
    }
    footer .footer-in {
        width: 100%;
    }

}

/*----------------------------
* 0px-784px
*----------------------------*/
@media only screen and (max-width: 784px){
    
    header {
        padding:0 23px;
    }
    header h1 {
        padding:10px 0 5px 0px;
        font-size:26px;
        line-height:30px;
        width:100%;
    }
    header h1 span{
        font-size:26px;
        line-height:30px;
        margin-left:0;
    }
    header h1 img{
        float:none;
    }
    header h2 {
        font-size:14px;
        padding-left:0;
    }
    header .navi{
        display: none;
    }
    header .menu-btn{
        position: fixed;
        top: 20px;
        right: 20px;
        z-index:2;
        width: 40px;
        height: 40px;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #333;
    }
    header .menu-btn span,
    header .menu-btn span:before,
    header .menu-btn span:after {
        content: '';
        display: block;
        height: 3px;
        width: 25px;
        border-radius: 3px;
        background-color: #ffffff;
        position: absolute;
        transition: all .3s;
    }
    header .menu-btn span:before {
        bottom: 8px;
        transition: all .3s;
    }
    header .menu-btn span:after {
        top: 8px;
        transition: all .3s;
    }
    .side-open .menu-btn span {
        background-color: rgba(255, 255, 255, 0);
    }
    .side-open .menu-btn span::before {
        bottom: 0;
        transform: rotate(45deg);
        transition: all .3s;
    }
    .side-open .menu-btn span::after {
        top: 0;
        transform: rotate(-45deg);
        transition: all .3s;
    }
    header .menu {
        position: fixed;
        top: 0;
        right: 0;
        z-index:1;
        width: 100vw;
        height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        background: #555;
        /* アニメーション前のメニューの状態 */
        pointer-events: none;
        opacity: 0;
        transition: opacity .3s linear;
    }
    .side-open header .menu{
        /* アニメーション後のメニューの状態 */
        pointer-events: auto;
        opacity: 1;
    }
    header .menu-in{
        background:none;
    }
    header .menu-in a.menu-item {
        width: 100%;
        height: auto;
        padding: .5em 1em;
        text-align: center;
        color: #fff;
        background:none;
        border:none;
        box-sizing: border-box;
    }
    .main .topimage-in{
        display:block;
    }
    .main .topimage-in .explan{
        width:100%;
    }
    .main .topimage-in .pickup {
        margin:20px 0;
    }
    .main .topimage h3{
        font-size:20px;
    }
    .contents .about .img_r{
        margin:0 0 10px 0;
        float:none;
    }
    .contents .about .img_r img{
        width: 100%;
    }
    .contents .congress table th{
        width: 80px;
    }
    .contents .special section .pic{
        margin:30px 0;
        padding:20px;
    }
    .contents .special section .pic img{
        width:300px;
        margin-bottom:10px;
    }
    .contents .special section .comment.dr_kameda,
    .contents .special section .comment.dr_hata,
    .contents .special section .comment.dr_mizuma,
    .contents .special section .comment.dr_minagawa,
    .contents .special section .comment.dr_miyatake
     {
        padding:15px 0;
    }
    footer h3 {
        font-size:20px;
        line-height:26px;
        margin-bottom:10px;
    }
    
}

/*----------------------------
* 0px-650px
*----------------------------*/
@media only screen and (max-width: 650px){
    .contents .special .mainimage {
        display:block;
        margin-bottom:40px;
        width: 100%;
    }
    .contents .special .mainimage img {
        width:300px;
        margin:0 auto;
        display:block;
    }
    .contents .special .speaker {
        display:block;
        margin-bottom:15px;
    }
    .contents .special section .comment.dr_kameda,
    .contents .special section .comment.dr_hata,
    .contents .special section .comment.dr_mizuma,
    .contents .special section .comment.dr_minagawa,
    .contents .special section .comment.dr_miyatake
    {
        display: block;
    }
    .contents .special section .comment span {
        display: block;
        float:left;
        margin-right:10px;
        margin-bottom:10px;
    }
    .contents .special section .comment span::before {
        display: none;
    }
    .contents .special section .comment p {
        margin-left:0;
        border-radius:40px 10px 10px 10px;
        width:auto;
        min-height:75px;
    }
    .contents .special section .pic img {
        float:none;
        margin:0 auto 10px;
        display: block;
    }
}

/*----------------------------
* 0px-400px
*----------------------------*/
@media only screen and (max-width: 400px){
    .contents .special .mainimage img {
        width:100%;
    }
    .contents .special section .pic img{
        width:100%;
    }
}

/*----------------------------
* 0px-350px
*----------------------------*/
@media only screen and (max-width: 350px){
    .contents img{
        width: 100%;
    }
}




