@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/
 * {
  box-sizing: border-box;
}

html {
    font-size: 62.5%;
}
body {
    font-size: 1.6em;
    color:#333;
    font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    line-height:1.5;
    background:#fff;
}
.inner {
    position:relative;
    width:1200px;
    margin:0 auto;
    padding: 0.5em 0;
}
.inner h1 img {
    width: 18%;
}
header a {
}
header a:hover {
}
nav {
    width:100%;
    background: #5a5959;
    font-size: 1.3rem;
}
nav:after {
   content:'';
   display:block;
   clear:both;
}


.button {
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
  text-decoration: none;
}

#contents {
    width:100%;
    background:#fff;
}

.contents--second {
    padding: 0 calc(30% - 300px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
    width: 100%;
    }

#main {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    width: calc(100% - 260px);
    font-size: 13px;
    font-size: 1.3rem;
}

#sub {
    -webkit-flex-basis: 220px;
    -ms-flex-preferred-size: 220px;
    flex-basis: 220px;
    -webkit-box-ordinal-group: 1;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    margin-left: 40px;
}

footer {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column;
    -ms-flex-flow: column;
    flex-flow: column;
    border-top: 1px solid #ccc;
}

a {
    color:#b60005;
    text-decoration:none;
}

a:hover {
    opacity: 0.8;
}

address, em {
  font-style: normal;
}

h2 {
    margin-bottom: 20px;
    padding:10px 0;
    font-size:2.1rem;
    color:#333;
    font-weight: bold;
}

h3 {
    margin-bottom: 0.25em;
    padding: 2px 5px;
    color: #333;
    font-size: 20px;
    font-size: 2.0rem;
    border-bottom: 1px solid #b60005;
}

h4 {
    margin-bottom:0.25em;
    font-size:1.5rem;
    color:#710000;
    border-bottom:3px solid #710000;
}

h5 {
    position:relative;
    margin-bottom:0.25em;
    padding-left:10px;
    color:#710000;
    font-size:1.4rem;
    font-weight:bold;
}
h5:before {
    content:"";
    margin-top:-7px;
    position:absolute;
    top:50%;
    left:0;
    width:5px;
    height:14px;
    background:#8c0e0e;
}

h6 {
    margin-bottom:0.25em;
    color:#382400;
    font-size:14px;
    font-weight:bold;
}

p {
    font-size: 1.3rem;
}

img {
    vertical-align:bottom;
    max-width: 100%;
}
strong {
    font-weight: bold;
    font-size: 1.6rem;
}

em {
    font-weight:bold;
}

pre {
    margin:1em 0;
    padding:1em;
}

blockquote {
    margin-bottom:1em;
    padding:1em;
    border:1px dotted #ddd;
    border-left:5px solid #ddd;

}

ul,ol,dl {
    margin:0 0 1em 0;
    list-style: none;
}
ul li {
    list-style: none;
}
ol li {
    list-style: none;
}

table {
    width:100%;
    margin-bottom:1em;
    border-collapse:collapse;
    background:#fff;
}

.red {
  color: #b60005;
}

.u-mt0 {
    margin-top:0 !important;
}

.u-mr0 {
    margin-right:0 !important;
}

.u-mb0 {
    margin-bottom:0 !important;
}

.u-ml0 {
    margin-left:0 !important;
}

.u-pt0 {
    padding-top:0 !important;
}

.u-pr0 {
    padding-right:0 !important;
}

.u-pb0 {
    padding-bottom:0 !important;
}

.u-pl0 {
    padding-left:0 !important;
}

.u-mt5 {
    margin-top:5px !important;
}

.u-mr5 {
    margin-right:5px !important;
}

.u-mb5 {
    margin-bottom:5px !important;
}

.u-ml5 {
    margin-left:5px !important;
}

.u-pt5 {
    padding-top:5px !important;
}

.u-pr5 {
    padding-right:5px !important;
}

.u-pb5 {
    padding-bottom:5px !important;
}

.u-pl5 {
    padding-left:5px !important;
}

.u-mt10 {
    margin-top:10px !important;
}

.u-mr10 {
    margin-right:10px !important;
}

.u-mb10 {
    margin-bottom:10px !important;
}

.u-ml10 {
    margin-left:10px !important;
}

.u-pt10 {
    padding-top:10px !important;
}

.u-pr10 {
    padding-right:10px !important;
}

.u-pb10 {
    padding-bottom:10px !important;
}

.u-pl10 {
    padding-left:10px !important;
}

.u-mt15 {
    margin-top:15px !important;
}

.u-mr15 {
    margin-right:15px !important;
}

.u-mb15 {
    margin-bottom:15px !important;
}

.u-ml15 {
    margin-left:15px !important;
}

.u-pt15 {
    padding-top:15px !important;
}

.u-pr15 {
    padding-right:15px !important;
}

.u-pb15 {
    padding-bottom:15px !important;
}

.u-pl15 {
    padding-left:15px !important;
}

.u-mt20 {
    margin-top:20px !important;
}

.u-mr20 {
    margin-right:20px !important;
}

.u-mb20 {
    margin-bottom:20px !important;
}

.u-ml20 {
    margin-left:20px !important;
}

.u-pt20 {
    padding-top:20px !important;
}

.u-pr20 {
    padding-right:20px !important;
}

.u-pb20 {
    padding-bottom:20px !important;
}

.u-pl20 {
    padding-left:20px !important;
}

.u-mt25 {
    margin-top:25px !important;
}

.u-mr25 {
    margin-right:25px !important;
}

.u-mb25 {
    margin-bottom:25px !important;
}

.u-ml25 {
    margin-left:25px !important;
}

.u-pt25 {
    padding-top:25px !important;
}

.u-pr25 {
    padding-right:25px !important;
}

.u-pb25 {
    padding-bottom:25px !important;
}

.u-pl25 {
    padding-left:25px !important;
}

.u-mt30 {
    margin-top:30px !important;
}

.u-mr30 {
    margin-right:30px !important;
}

.u-mb30 {
    margin-bottom:30px !important;
}

.u-ml30 {
    margin-left:30px !important;
}

.u-pt30 {
    padding-top:30px !important;
}

.u-pr30 {
    padding-right:30px !important;
}

.u-pb30 {
    padding-bottom:30px !important;
}

.u-pl30 {
    padding-left:30px !important;
}

.u-mt35 {
    margin-top:35px !important;
}

.u-mr35 {
    margin-right:35px !important;
}

.u-mb35 {
    margin-bottom:35px !important;
}

.u-ml35 {
    margin-left:35px !important;
}

.u-pt35 {
    padding-top:35px !important;
}

.u-pr35 {
    padding-right:35px !important;
}

.u-pb35 {
    padding-bottom:35px !important;
}

.u-pl35 {
    padding-left:35px !important;
}

.u-mt40 {
    margin-top:40px !important;
}

.u-mr40 {
    margin-right:40px !important;
}

.u-mb40 {
    margin-bottom:40px !important;
}

.u-ml40 {
    margin-left:40px !important;
}

.u-pt40 {
    padding-top:40px !important;
}

.u-pr40 {
    padding-right:40px !important;
}

.u-pb40 {
    padding-bottom:40px !important;
}

.u-pl40 {
    padding-left:40px !important;
}

.u-mt45 {
    margin-top:45px !important;
}

.u-mr45 {
    margin-right:45px !important;
}

.u-mb45 {
    margin-bottom:45px !important;
}

.u-ml45 {
    margin-left:45px !important;
}

.u-pt45 {
    padding-top:45px !important;
}

.u-pr45 {
    padding-right:45px !important;
}

.u-pb45 {
    padding-bottom:45px !important;
}

.u-pl45 {
    padding-left:45px !important;
}

.u-mt50 {
    margin-top:50px !important;
}

.u-mr50 {
    margin-right:50px !important;
}

.u-mb50 {
    margin-bottom:50px !important;
}

.u-ml50 {
    margin-left:50px !important;
}

.u-pt50 {
    padding-top:50px !important;
}

.u-pr50 {
    padding-right:50px !important;
}

.u-pb50 {
    padding-bottom:50px !important;
}

.u-pl50 {
    padding-left:50px !important;
}

.u-mt55 {
    margin-top:55px !important;
}

.u-mr55 {
    margin-right:55px !important;
}

.u-mb55 {
    margin-bottom:55px !important;
}

.u-ml55 {
    margin-left:55px !important;
}

.u-pt55 {
    padding-top:55px !important;
}

.u-pr55 {
    padding-right:55px !important;
}

.u-pb55 {
    padding-bottom:55px !important;
}

.u-pl55 {
    padding-left:55px !important;
}

.u-mt60 {
    margin-top:60px !important;
}

.u-mr60 {
    margin-right:60px !important;
}

.u-mb60 {
    margin-bottom:60px !important;
}

.u-ml60 {
    margin-left:60px !important;
}

.u-pt60 {
    padding-top:60px !important;
}

.u-pr60 {
    padding-right:60px !important;
}

.u-pb60 {
    padding-bottom:60px !important;
}

.u-pl60 {
    padding-left:60px !important;
}

.u-mt65 {
    margin-top:65px !important;
}

.u-mr65 {
    margin-right:65px !important;
}

.u-mb65 {
    margin-bottom:65px !important;
}

.u-ml65 {
    margin-left:65px !important;
}

.u-pt65 {
    padding-top:65px !important;
}

.u-pr65 {
    padding-right:65px !important;
}

.u-pb65 {
    padding-bottom:65px !important;
}

.u-pl65 {
    padding-left:65px !important;
}

.u-mt70 {
    margin-top:70px !important;
}

.u-mr70 {
    margin-right:70px !important;
}

.u-mb70 {
    margin-bottom:70px !important;
}

.u-ml70 {
    margin-left:70px !important;
}

.u-pt70 {
    padding-top:70px !important;
}

.u-pr70 {
    padding-right:70px !important;
}

.u-pb70 {
    padding-bottom:70px !important;
}

.u-pl70 {
    padding-left:70px !important;
}

/*================================================
 *  ヘッダー
 ================================================*/
header {
    border-bottom: 1px solid #eee;
}

.summary {
    position: absolute;
    top: 0;
    right: 10px;
    margin: 0;
    padding-top: 1em;
    color: #999;
}

/*================================================
 *  グローバルナビゲーション
 ================================================*/
@media print, screen and (min-width:768px) {
    nav {
        opacity: 0.8;
        border-top: 1px solid #fff;
        z-index:3;
        padding: 0px calc(30% - 300px);
    }
    nav ul {
        margin:0;
        padding:0;
    }
    nav li {
        position:relative;
        width:21%;
        float:left;
        margin:0;
        padding:0;
        text-align:center;
        list-style:none;
    }
    nav li:first-child {
        width:16%;
    }
    nav li:before {
        content:"";
        margin-top:-7px;
        position:absolute;
        top:50%;
        left:0;
        width:1px;
        height:14px;
        background:#fff;
    }
    nav li:last-child:after {
        content:"";
        margin-top:-7px;
        position:absolute;
        top:50%;
        right:0;
        width:1px;
        height:14px;
        background:#fff;
    }
    nav li:last-child li {
        left:-50%;
    }
    nav li a {
        display:block;
        padding:10px 0;
        color:#fff;
        font-weight:bold;
        text-decoration:none;
    }
    nav li ul {
        display:block !important;
        position:absolute;
        top:100%;
        left:0;
        margin:0;
        padding:0;
        border-radius:0 0 3px 3px;
        z-index:3;
    }
    nav li ul li {
        overflow:hidden;
        width:150%;
        height:0;
        -moz-transition:.2s;
        -webkit-transition:.2s;
        -o-transition:.2s;
        -ms-transition:.2s;
        transition:.2s;
    }
    nav li li:first-child {
        width:150%;
    }
    nav li ul li a {
        padding:10px 15px;
        background:#7c0c0c;
        text-align:left;
        font-weight:normal;
    }
    nav li:hover > a {
        opacity: 0.8;
        color:#fff;
    }
    nav li:hover > a:hover {
    }

    .gnav {
        display:block !important;
    }

    #spMenu {
        display:none;
    }

    .showNav {
        background:#7c0c0c !important;
    }

    .showSub {
        overflow:visible;
        min-height:42px;
        border-bottom:2px solid #8c0e0e;
    }
    .showSub:last-child {
        border-bottom:0;
    }
    .showSub:last-child a {
        border-radius:0 0 3px 3px;
    }

    .fixed {
        position:fixed;
        top:0;
        left:0;
    }
}

/*================================================
 *  トピックパス（パンくずリスト）
 ================================================*/
.breadcrumb {
    padding: 20px calc(30% - 300px) 20px;
}
.breadcrumb__lists {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    font-size: 1.2rem;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.breadcrumb__list {
    padding: 2px 0;
    list-style: none;
}

.breadcrumb__link {
  color: #b60005;
}

@media (max-width: 768px) {
    .breadcrumb__list {
        margin-bottom:5px;
        line-height:1.2;
    }
}

.breadcrumb__list:after {
  content: '>';
  padding: 0 10px;
}

.breadcrumb__list:after {
  content: '>';
  padding: 0 10px;
}

.breadcrumb__list:last-child::after {
    display:none;
}
/*================================================
 *  サブコンテンツ
 ================================================*/
.submenu {
    border-top: 1px solid #ddd;
}

.submenu li {
    margin:0;
    padding:0;
    list-style:none;
}
.submenu li a {
    display: block;
    padding:20px 2px 20px 16px;
    color:#333;
    border-bottom:1px solid #ddd;
    text-decoration:none;
    position: relative;
    vertical-align: middle;
    line-height: 1;
    font-size: 1.3rem;
}
.submenu li a:first-child::before {

}
.submenu li a:before {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    width: 4px;
    height: 4px;
    margin-top: -4px;
    border-top: 2px solid #b60005;
    border-right: 2px solid #b60005;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.submenu li a:hover {
    background:#eee;
}

.submenu li a:hover::before {
    right:2px;
}
.submenu li.list2{

}
.submenu li.list2 a {
    font-size: 1.4rem;
    padding: 15px 2px 15px 16px;
}

.submenu li.list2 a .side-column__mame {
    padding-left: 20px;
}

.bnr li {
    margin:0 0 10px 0;
    padding:0;
    list-style:none;
}
.bnr li a:hover {
    opacity:0.8;
    filter:alpha(opacity=80);
    -ms-filter:"alpha( opacity=80 )";
}
.bnr img {
    width:100%;
}

/*================================================
 *  フッター
 ================================================*/
footer {
    clear:both;
}

.footmenu {
    width:100%;
    padding:20px 0;
    overflow:hidden;
}
.footmenu ul {
    position:relative;
    float:left;
    left:50%;
    margin:0;
    padding:0;
}
.footmenu li {
    position:relative;
    left:-50%;
    float:left;
    list-style:none;
    margin:0;
    padding:0 15px;
    font-size:12px;
    text-align:center;
}
.footmenu li:before {
  content: "";
  margin-top: -7px;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 14px;
  background: #333;
}

.footmenu li:last-child:after {
  content: "";
  margin-top: -7px;
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 14px;
  background: #333;
}
.footmenu a {
    color:#333;
    text-decoration:none;
}
.footmenu a:hover {
    color:#333;
    text-decoration:underline;
}
.login_copyright {
    clear: both;
    padding: 15px 0;
    font-size: 11px;
    text-align: center;
    color: #333;
}
.copyright {
    clear:both;
    padding:15px 0;
    font-size:11px;
    text-align:center;
    color:#333;
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
    position:fixed;
    bottom:15px;
    right:15px;
}
.totop a {
    display:block;
    text-decoration:none;
}
.totop img {
    background:#710000;
}
.totop img:hover {
    background:#900000;
}

/*================================================
 *  クラス
 ================================================*/
.section-block {
    margin-bottom: 50px;
 }
.text-centerd {
  text-align: center;
}

.contact-text {
  margin-bottom: 30px;
  line-height: 1.8;
}
.list {
    padding:0 0 0 0.5em;
}
.col_two_one {
    overflow:hidden;
}

.col_two_one ul {
    overflow:hidden;
    margin:2% -2% 0 0;
}
.col_two_one li {
    list-style:none;
    float:left;
    width:48%;
    margin:0 2% 2% 0;
}
.col_two_one li:nth-child(2n+1) {
    clear:both;
}
.col_two_one li img {
    width:100%;
    margin-bottom:2.5%;
}
.bottom_area {
    margin-bottom: 50px;
    text-align: center;
}

/*================================================
 *  ブロック要素
 ================================================*/
article.contents-section {
    margin-bottom: 50px;
}
.flex-box {
    display: flex;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
}
.flex-box2 {
    display: flex;
    margin-bottom: 20px;
    border-bottom: 2px solid #ddd;
}
/*================================================
 *  ipad向けデザイン
 ================================================*/
 @media screen and (max-width:768px) {
    #sub {
        display:none;
        width:100%;
    }
    #main {
        width: 100%;
    }
    .inner h1 {
        padding-left: 10px;
    }
    .dejima__date {
        flex-basis: 15%;
    }
    .footmenu li {
        padding: 0 10px;
    }
}

/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:767px) {
    body {
        margin-top: 0 !important;
    }
    .lock {
        overflow:hidden;
    }
    .view-pc {
        display: none;
    }
    .inner h1 {
        padding-left: 10px;
    }
    .inner h1 img {
      width: 40%;
    }
    .summary {
        position:relative;
        top:auto;
        right:auto;
        margin-left:15px;
    }
    nav ul {
        margin:0;
        padding:0;
        }
    nav .inner > ul {
        z-index:2;
        overflow:auto;
        position:fixed;
        top:53px;
        right:0;
        width:100%;
        height:88%;
        height:-webkit-calc(100% - 53px);
        height:calc(100% - 53px);
    }
    nav li {
        position:relative;
        width:100%;
        float:none;
        margin:0;
        text-align:left;
        list-style:none;
        border-bottom:1px solid #8c0e0e;
        background:#9b0f0f;
    }
    nav li:first-child {
        border-top:0;
    }
    nav li:last-child {
        border-bottom:0;
    }
    nav li a {
        display:block;
        padding:10px 30px;
        color:#fff;
        text-decoration:none;
        background:#9b0f0f;
    }
    nav li a:hover {
        color:#fff;
        background:#710000;
    }
    nav ul ul {
        display:none;
        position:relative;
    }
    nav li li a {
        box-sizing:border-box;
        width:100%;
        padding:10px 30px 10px 50px;
        text-align:left;
    }
    .subnav > a:before {
        display:block;
        content:"";
        position:absolute;
        -webkit-transform:rotate(45deg);
        transform:rotate(45deg);
        top:20px;
        right:30px;
        width:10px;
        height:10px;
        margin-top:-5px;
        background:#f1f1f1;
    }
    .subnav > a:after {
        display:block;
        content:"";
        position:absolute;
        -webkit-transform:rotate(45deg);
        transform:rotate(45deg);
        top:20px;
        right:30px;
        width:10px;
        height:10px;
        margin-top:-10px;
        background:#9b0f0f;
    }
    .subnav a:hover:after {
      background:#710000;
    }

    .active > a:before {
        margin-top:0;
    }
    .active > a:after {
        margin-top:5px;
    }
    .gnav {
        display:none;
    }
    #spMenu {
        display:block;
        z-index:2;
        position:fixed;
        top:10px;
        right:10px;
    }
    #spMenu:hover {
        cursor:pointer;
    }
    #navBtn {
        display:inline-block;
        position:relative;
        width:30px;
        height:30px;
        border-radius:5%;
        background:#710000;
    }
    #navBtnIcon {
        display:block;
        position:absolute;
        top:50%;
        left:50%;
        width:14px;
        height:2px;
        margin:-1px 0 0 -7px;
        background:#f1f1f1;
        transition:.2s;
    }
    #navBtnIcon:before,
    #navBtnIcon:after {
        display:block;
        content:'';
        position:absolute;
        top:50%;
        left:0;
        width:14px;
        height:2px;
        background:#f1f1f1;
        transition:0.3s;
    }
    #navBtnIcon:before {
        margin-top:-6px;
    }
    #navBtnIcon:after {
        margin-top:4px;
    }
    #navBtn .close {
        background:transparent;
    }
    #navBtn .close:before,
    #navBtn .close:after {
        margin-top:0;
    }
    #navBtn .close:before {
        transform:rotate(-45deg);
        -webkit-transform:rotate(-45deg);
    }
    #navBtn .close:after {
        transform:rotate(-135deg);
        -webkit-transform:rotate(-135deg);
    }
    .col_two_one ul {
        margin-right:0;
    }
    .col_two_one li {
        width:100%;
    }
    .col_two_one li:nth-child(2n+1) {
        clear:both;
    }
    .info__list {
        padding-left: 10px;
    }
    .info__date {
        width: 25%;
    }
    .info__label {
        width: 13%;
    }
    .info__text {
        width: 60%;
    }
    .footmenu ul {
        padding: 0 10px;
    }
    .footmenu li {
        padding-bottom: 10px;
    }
}
/*================================================
 *  メインビジュアル
 ================================================*/
.category-visual {
    width: 100%;
    height: 200px;
    position: relative;
    text-align: center;
    color: #fff;
    font-size: 50px;
    font-size: 5.0rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    flex-direction: column;
}

.category-visual--top {
  background: #7f7f7f url(/pps/images/main_visual_home.png) no-repeat 50% 0;
}
.category-visual--title {
    font-size: 5.0rem;
}
@media screen and (max-width: 760px) {
    .category-visual--title {
        font-size: 2.3rem;
    }
    .category-visual--top .typ-section-main {
        padding: 10px;
    }

}
/*================================================
 *  タブレット向けデザイン
 ================================================*/
/* スクロールバーを考慮して20px大きいサイズで切り替え */
@media screen and (max-width:979px) {
    .inner {
        width:100%;
    }
    #contents {
        box-sizing:border-box;
        width:100%;
        padding:0 10px;
    }
    footer {
        width:100%;
    }
}
/*================================================
 *  ログイン画面
 ================================================*/
/* Form Layout */
.form-wrapper {
    margin: 3em auto;
    padding: 1em;
    max-width: 400px;
    border: 1px solid #cccccc;
}

.form-wrapper h2 {
    text-align: center;
    padding: 2em 0 0.5em;
}

.form-wrapper form {
    padding: 0 1.5em;
}

.form-item {
    margin-bottom: 0.75em;
    width: 100%;
}

.form-item input {
    background: #ffffff;
    border: 1px solid #e9e9e9;
    color: #666;
    font-family: 'Open Sans', sans-serif;
    font-size: 1.6rem;
    height: 50px;
    transition: border-color 0.3s;
    width: 96%;
    padding-left: 10px;
}

.form-item input:focus {
  border-bottom: 2px solid #c0c0c0;
  outline: none;
}
.btn {
    color: #fff;
    height: 60px;
    line-height: 1.5;
    background: #b60005;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 40px;
}
.btn.green {
    background: #499332;
}

.btn.oreng {
    background: #ec9f18;
}
.btn.navy {
background: #000022;
}

.btn:hover {
    opacity: 0.8;
}

.btn > span {
  position: relative;
  display: inline-block;
  padding-right: 6px;
}

.btn > span:before {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  right: -10px;
  width: 0;
  height: 0;
  margin-top: -6px;
  border: 4px solid transparent;
  border-left: 4px solid #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.btn a {
  display: block;
  padding: 20px 0px;
  color: #fff;
  font-size: 1.4rem
}

.button-panel {
  margin: 2em 0 0;
  width: 100%;
}

.button-panel .button {
  background: #c60005;
  border: none;
  color: #fff;
  cursor: pointer;
  height: 50px;
  font-family: 'Open Sans', sans-serif;
  font-size: 2.0rem;
  letter-spacing: 0.05em;
  text-align: center;
  text-transform: uppercase;
  transition: background 0.3s ease-in-out;
  width: 100%;
}

.form-footer {
  font-size: 1.3rem;
  padding-top: 0.5em;
  text-align: center;
}

.form-footer a {
  color: #8c8c8c;
  text-decoration: none;
  transition: border-color 0.3s;
}

.form-footer a:hover {
  border-bottom: 1px dotted #8c8c8c;
}
/*================================================
 *  タイトルデザイン
 ================================================*/
 .titleGroup {
    position: relative;
 }
#news span {
    font-size: 1.3rem;
    vertical-align: middle;
    padding-left: 20px;
}
.more {
    font-size: 1.2rem;
    position: relative;
    display: inline-block;
    padding: 0 0 0 14px;
    color: #b60005;
    vertical-align: middle;
    text-decoration: none;
    margin-top: 3px;
    float: right;
    font-weight: normal;
}
.more2 {
    position: relative;
    font-size: 1.3rem;
    padding: 0 0 0 14px;
    color: #b60005;
    vertical-align: middle;
    text-decoration: none;
    margin-top: 3px;
    font-weight: normal;
}
.more:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.more2:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.arrow::before{
    left: 3px;
    width: 5px;
    height: 5px;
    top: -3px;
    border-top: 1px solid #b60005;
    border-right: 1px solid #b60005;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.link2::after {
    display:inline-block;
    content:'';
    width:0;
    height:0;
    margin-top:6px;
    margin-left:10px;
    border:5px solid transparent;
    border-left:6px solid #c01920;
    transition:all 0.2s linear;
    vertical-align:top;
}
h2.main_title {
    font-size: 3.0rem;
    text-align: center;
    border-bottom: 4px solid #b60005;
    padding: 0;
    display: block;
    margin-bottom: 50px;
    line-height: 1.3;
}
h2.main_title2 {
    font-size: 3.0rem;
    text-align: center;
    border-bottom: 4px solid #b60005;
    padding: 0;
    display: block;
    margin-bottom: 10px;
    line-height: 1.3;
}

/*================================================
 *  top_デジマクリップ
 ================================================*/
.dejima__date {
    flex-basis: 15%;
    order: 1;
    margin-right: 20px;
    color: #333;
}

.dejima_detail {
    flex-basis: 85%;
    order: 2;
    padding-bottom: 20px;
}

.dejima__title {
    font-size: 1.6rem;
    margin-bottom: 10px;
    line-height: 1.3em;
}

.dejima__lead {
    font-size: 1.3rem;
    line-height: 1.6em;
    color: #333;
}
.dejima__lead a {
    color: #333;
}
.dejima__lead .continu {
    color: #b60005;
}

.dejima__list {
    padding-left: 20px;
}
.dejima_clip {
    padding-top: 20px;
    border-top: 1px solid #eee;
 padding-top: 20px;
}

/*================================================
 *  製品紹介
 ================================================*/
 .promotion__date {
    flex-basis:30%;
    order: 1;
    margin-right: 20px;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
}

.promotion__detail {
    flex-basis: 70%;
    order: 2;
}

.promotion__title {
    font-size: 1.8rem;
    margin-bottom: 10px;
    line-height: 1.3em;
    font-weight: bold;
}

.promotion__title span {
    font-weight: normal;
    font-size: 1.4rem;
}

.promotion__lead {
    font-size: 1.4rem;
    line-height: 1.6em;
    color: #333;
}

.promotion__list {
    display: flex;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
    padding-left: 20px;
    padding-bottom:20px;
}
.promotion__clip {
    padding-top: 20px;
    border-top: 1px solid #eee;
 padding-top: 20px;
}
 .salesMaterials__date {
    flex-basis:20%;
    order: 1;
    margin-right: 20px;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
}

.salesMaterials__detail {
    flex-basis: 70%;
    order: 2;
}
.download_area {
    flex-basis: 20%;
    order: 3;
}
.salesMaterials__title {
    font-size: 1.8rem;
    margin-bottom: 10px;
    line-height: 1.3em;
    font-weight: bold;
}

.salesMaterials__title span {
    font-weight: normal;
    font-size: 1.4rem;
}

.salesMaterials__lead {
    font-size: 1.4rem;
    line-height: 1.6em;
    color: #333;
}

.salesMaterials__list {
    display: flex;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
    padding-left: 20px;
    padding-bottom:20px;
}

.salesMaterials__clip {
    padding-top: 20px;
    border-top: 1px solid #eee;
 padding-top: 20px;
}
.promotion__date {
    flex-basis:30%;
    order: 1;
    margin-right: 20px;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
}
.promotion__detail {
    flex-basis: 70%;
    order: 2;
}

.promotion__title {
    font-size: 1.8rem;
    margin-bottom: 10px;
    line-height: 1.3em;
    font-weight: bold;
}

.promotion__title span {
    font-weight: normal;
    font-size: 1.4rem;
}

.promotion__lead {
    font-size: 1.4rem;
    line-height: 1.6em;
    color: #333;
}

.promotion__list {
    padding-left: 20px;
    padding-bottom:20px;
}
.promotion__clip {
    padding-top: 20px;
    border-top: 1px solid #eee;
    padding-top: 20px;
    margin-top: 0;
}
 .salesMaterials__date {
    flex-basis:20%;
    order: 1;
    margin-right: 20px;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
}

.salesMaterials__detail {
    flex-basis: 70%;
    order: 2;
}
.download_area {
    flex-basis: 20%;
    order: 3;
}
.salesMaterials__title {
    font-size: 1.8rem;
    margin-bottom: 10px;
    line-height: 1.3em;
    font-weight: bold;
}

.salesMaterials__title span {
    font-weight: normal;
    font-size: 1.4rem;
}

.salesMaterials__lead {
    font-size: 1.4rem;
    line-height: 1.6em;
    color: #333;
}
.salesMaterials__clip {
    padding-top: 20px;
    border-top: 1px solid #eee;
 padding-top: 20px;
}

.download_area {
    width: 100%;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
}

.download_area a {
    padding: 10px;
    border: 1px solid;
    display: table-cell;
    vertical-align: middle;
    width: 80%;
}

.link--same {
    padding-right: 26px;
    position: relative;
    background: url(/pps/images/ico_same.png) no-repeat 95% 50%;
}
@media (max-width: 768px) {
    .promotion__list {
        display: block;
        padding: 10px;
    }
    .promotion__date {
        width:100%;
        margin-bottom: 20px;
    }
    .promotion__date img {
        width: 100%;
    }
    .more {
        float: none;
        font-size: 20px;
    }
    .promotion__detail .arrow::before {
        left: -3px;
        width: 10px;
        height: 10px;
    }

}

/*================================================
 *  eBook
 ================================================*/
.eBook__date {
    flex-basis:20%;
    order: 1;
    margin-right: 20px;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
}

.eBook__detail {
    flex-basis: 65%;
    order: 2;
    margin-left: 5px;
    padding-left: 5px;
}

.eBook__browse {
    flex-basis: 20%;
    order: 3;
    justify-content: center;
    align-items: center;
    display: flex;
}

.eBook__browse a {
    padding: 10px;
    border: 1px solid;
    display: table-cell;
    vertical-align: middle;
    width: 80%;
}

.eBook__download {
    flex-basis: 10%;
    order: 4;
    justify-content: center;
    align-items: center;
    display: flex;
}

.eBook__download a {
    padding: 10px;
    border: 1px solid;
    display: table-cell;
    vertical-align: middle;
    width: 80%;
    }

.eBook__title {
    font-size: 1.8rem;
    margin-bottom: 10px;
    line-height: 1.3em;
    font-weight: bold;
}

.eBook__title span {
    font-weight: normal;
    font-size: 1.4rem;
}

.eBook__lead {
    font-size: 1.4rem;
    line-height: 1.6em;
    color: #333;
}

.eBook__list {
    padding-left: 20px;
    padding-bottom:20px;
    display: flex;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
}
.eBook__clip {
    padding-top: 20px;
    border-top: 1px solid #eee;
}

.link--browse {
    padding-right: 26px;
    position: relative;
    background: url(/pps/images/eBook_icon.png) no-repeat 95% 50%;
}

.link--download {
    padding-right: 26px;
    position: relative;
    background: url(/pps/images/download_pdf.png) no-repeat 95% 50%;
}
@media (max-width: 768px) {
    .eBook__list {
        display: block;
        padding: 10px;
    }
    .eBook__date {
        display: block;
        width: 100%;
        margin: 10px auto;
    }
    .eBook__date img {
          width: 100%;
    }
    .eBook__detail {
        margin-left: 0px;
        padding-left: 0px;
    }
    .salesMaterials__list {
        display: block;
        padding: 10px;
    }
    .salesMaterials__date {
        display: block;
        width: 100%;
        margin: 10px auto;
    }
    .salesMaterials__date img {
        width: 100%;
    }
    .salesMaterials__title{
         text-align: center;
    }
}
/*================================================
 *  デモページ
 ================================================*/
.lightGraylineBox {
  font-size: 16px;
  font-size: 1.6rem;
  color: #333;
  border: 10px solid #f4f4f4;
  padding: 32px 26px;
  margin: 20px 0;
}

.cont_btn {
  width: 40%;
  margin: 0 auto;
}
.demo_lead li {
    list-style-type: disc;
    margin-left: 2.5em;
    margin-bottom: 2rem;
}
.demo_pass {
    display: flex;
    justify-content: center;
    align-items: center;
}
.demo_pass h2 {
    margin: 0;
    text-align: left;
    width: 230px;
    font-size: 1.8rem;
}
.demo_pass li {
    width: 20%;
    text-align: center;
    font-size: 2.0rem;
}
.btn_area {
    display: flex;
}
/*================================================
 *  リリースノート
 ================================================*/
.lightGrayBox {
    display: flex;
    font-size: 1.5rem;
    color: #333;
    background-color: #f4f4f4;
    padding: 32px 26px;
    margin-bottom: 20px;
}
.left_titbox {
    width: 25%;
}
.right_titbox {
    width: 75%;
}
.link:after {
  display: inline-block;
  position: relative;
  content: '';
  top: -2px;
  margin-left: 7px;
    width: 4px;
  height: 4px;
  margin-top: -4px;
  border-top: 2px solid #b60005;
  border-right: 2px solid #b60005;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.link3:after {
  display: inline-block;
  position: relative;
  content: '';
  top: -2px;
  margin-left: 7px;
    width: 4px;
  height: 4px;
  margin-top: -4px;
  border-top: 2px solid #b60005;
  border-right: 2px solid #b60005;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.list--disc > li {
  line-height: 1.8;
  margin-left: 1em;
  margin-bottom: 10px;
  text-indent: -1em;
  font-size: 1.3rem;
}
.list--disc > li:before {
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #666;
  display: inline-block;
  margin-right: 8px;
  vertical-align: middle;
}
.list--disc .sub-list > li {
  margin-left: 1em;
  margin-top: 3px;
  text-indent: -1em;
  font-size: 1.3rem;
}
.list--disc .sub-list > li:before {
  content: '';
  width: 2px;
  height: 2px;
  border-radius: 50%;
  background-color: #999;
  display: inline-block;
  margin-right: 8px;
  vertical-align: middle;
}

.list--disc .sub-sub-list > li {
    margin-left:2.0em;
    margin-top:10px;
    text-indent:-0.7em;
}

.list--disc .sub-sub-list > li:before {
    content:'';
    width:3px;
    height:3px;
    border-radius:50%;
    background-color:#666;
    display:inline-block;
    margin-right:8px;
    vertical-align:middle;
}
h2.lightGrayBox__title {
    font-size: 3.0rem;
    text-align: center;
    margin: 0;
    padding: 0;
}
h2.lightGrayBox__title span {
    display: block;
    font-size: 1.2rem;
}
.ver_list_title {
    font-size: 1.8rem;
    text-align: center;
    background: #888888;
    color: #fff;
    padding: 8px 0;
   margin-top: 40px;
}
.ver_list {
    display: flex;
    margin: 10px;
}
.ver_list_link {
    position: relative;
    color: inherit;
    width: 30%;
    font-size: 2.0rem;
}
.tit-heading02 {
    color: #b60005;
    font-size: 2rem;
    margin-bottom: 20px;
    border-left: 4px solid #b60005;
    border-bottom: 0;
    line-height: 1.6;
    padding: 0 15px;
}
.tit-heading03 {
    margin-bottom: 20px;
}

@media (max-width: 768px) {
    .lightGrayBox__title {
        margin-right:0;
        font-size:1.6rem;
        line-height:1.4;
    }
}


/*================================================
 *  手続き書類
 ================================================*/
 .proceduralDoc__list {
    display: flex;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
    padding-left: 20px;
    padding-bottom:20px;
 }

 .proceduralDoc__title {
    flex-basis:40%;
    order: 1;
    margin-right: 20px;
    color: #333;
    font-size: 1.6rem;
    margin-bottom: 10px;
    line-height: 1.3em;
    font-weight: bold;
    display: flex;
    align-items: center;
}
 .proceduralDoc__title2 {
    flex-basis:26%;
    order: 1;
    margin-right: 20px;
    color: #333;
    font-size: 1.6rem;
    margin-bottom: 10px;
    line-height: 1.3em;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding-right: 5px;
}
 .proceduralDoc__title3 {
    flex-basis:30%;
    order: 1;
    margin-right: 20px;
    color: #333;
    font-size: 1.6rem;
    margin-bottom: 10px;
    line-height: 1.3em;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding-right: 5px;
}
.proceduralDoc__detail {
    flex-basis: 50%;
    order: 2;
    display: flex;
    align-items: center;
    padding-left: 10px;
}

.proceduralDoc__lead {
    font-size: 1.4rem;
    line-height: 1.6em;
    color: #333;
}

.proceduralDoc__clip {
    padding-top: 20px;
    margin-bottom: 40px;
    border-top: 1px solid #eee;
}

.button--square {
  color: #c60005;
  width: 340px;
  height: 60px;
  line-height: 56px;
  border: 2px solid #c60005;
  text-align: center;
}

.button--square > span {
  position: relative;
  display: inline-block;
  padding-right: 25px;
}

.button--square > span:before {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  right: 5px;
  width: 0;
  height: 0;
  margin-top: -4px;
  border: 4px solid transparent;
  border-left: 4px solid #c60005;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
@media (max-width: 768px) {
     .proceduralDoc__list {
        display: block;
        padding: 10px;
     }
     .proceduralDoc__detail {
        margin-bottom: 20px;
     }
    .button--square {
      width: 100%;
      background-color: #fff;
    }
}

/*================================================
 *  デジマクリップ
 ================================================*/
.dejimaClip {
    border-top: 1px solid #eee;
}
.dejimaClip__list {
    padding: 20px;
   border-bottom: 1px dotted #ddd;
}
.dejimaClip__title {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 20px;
    padding-left: 15px;
    border-left: 4px solid #c01920;
    line-height: 1.3;
    }

.clip_name {
    padding-left: 20px;
}

.clip_name a {
    color: #333;
}

.clip_link {
    padding-left: 20px;
}

.clip_link a {
    text-decoration: underline;
    word-wrap: break-word;
}
.dejimaClip_pagelinks {
    width: 100%;
    text-align: center;
    margin: 40px auto 15px;
}

.dejimaClip_pagelinks a {
    color: #b60005;
}
.dejimaClip_pagelinks .WCMselected {
    background-color: #ccc;
}
.dejimaClip_pagelinks .WCMpaged a {
    color: #333;
    margin-right: 10px;
    border: 1px solid #ccc;
    padding: 5px 10px;
}

.dejimaClip_listed {
    margin-bottom: 20px;
    text-align: center;
}

/*===============================================================
    event / seminer styles
===============================================================*/
.event-group {
    position:relative;
    margin-bottom:40px;
}

@media (max-width: 768px) {
    .event-group {
        font-size:1.2rem;
        margin-bottom:0;
    }
    .event-group .tit-heading01 {
        padding-bottom:18px;
        font-size:1.3rem;
    }
}

.event-group__year {
    position:absolute;
    top:-4px;
    right:0;
    display:flex;
    align-items:center;
}

@media (max-width: 768px) {
    .event-group__year {
        font-size:0.7rem;
        position:relative;
        top:0;
        left:0;
        margin-bottom:15px;
    }
}

.event-categoryBox {
    background-color:#f4f4f4;
    margin-top:-25px;
    display:flex;
    padding:18px;
    align-items:center;
}

@media (max-width: 768px) {
    .event-categoryBox {
        flex-flow:column;
        justify-content:flex-start;
        background-color:transparent;
        padding:0;
        margin-top:0;
    }
}

.event-category {
    display:flex;
    align-items:center;
}

@media (max-width: 768px) {
    .event-category {
        width:100%;
        background-color:#f4f4f4;
        padding:18px;
    }
}

.event-category__list {
    margin-right:10px;
}

@media (max-width: 768px) {
    .event-category__list {
        width:32%;
        margin-right:2%;
    }
    .event-category__list:last-child {
        margin-right:0;
    }
}

.event-category__check {
    margin-left:auto;
    border-left:1px solid #ddd;
    padding:8px 10px 8px 30px;
}

.event-category__check input {
    -webkit-appearance:checkbox;
    appearance:checkbox;
    border:1px solid #ddd;
    vertical-align:top;
}

@media (max-width: 768px) {
    .event-category__check {
        width:100%;
        border-left:none;
        padding:18px 0;
        margin:0;
    }
}

@media (max-width: 768px) {
    .event-category__check input {
        appearance:checkbox;
        border:1px solid #ddd;
        vertical-align:top;
        background:#fff;
        box-shadow:none;
        vertical-align:middle;
    }
}

.event-group__selectGroup {
    position:relative;
}

.event-group__view {
    min-width:178px;
    border:1px solid #ddd;
    border-radius:2px;
    margin-left:20px;
    padding:12px 40px 12px 12px;
    position:relative;
}

@media (max-width: 768px) {
    .event-group__view {
        width:35%;
        max-width:40%;
        padding:8px 25px 8px 8px;
        margin-top:3px;
    }
}

.event-group__view:after {
    display:block;
    content:'';
    position:absolute;
    top:18px;
    right:8px;
    width:0;
    height:0;
    margin-top:-3px;
    border:4px solid transparent;
    border-left:5px solid #c01920;
    transform:rotate(90deg);
    transition:all 0.2s linear;
}

@media (max-width: 768px) {
    .event-group__view:after {
        top:13px;
    }
}

.event-group__select {
    display:none;
    border:1px solid #ddd;
    width:178px;
    position:absolute;
    right:0;
    top:38px;
    z-index:100;
}

@media (max-width: 768px) {
    .event-group__select {
        top:30px;
        left:20px;
    }
}

.select__year {
    padding:12px 60px 12px 12px;
    background-color:#fff;
}

.select__year:first-child {
    display:block;
}

.select__year:hover, .select__year.is-active {
    background-color:#f4f4f4;
}

.events {
    display:flex;
    flex-flow:column;
}

.event {
    border-bottom:1px solid #d9d9d9;
    position:relative;
    display:none;
}

.event.is-none {
    padding:60px 0;
    display:block;
    font-size:1.8rem;
}

@media (max-width: 768px) {
    .event.is-none {
        font-size:1.3rem;
        text-align:center;
    }
}

.event.is-none::after {
    display:none;
}

.event__link {
    display: flex;
    padding: 20px 10px;
    color: #333;
    border-bottom: 1px solid #d9d9d9;
    position: relative;
}
.event__link:first-child {
    border-bottom: 1px solid #d9d9d9;
}
.event__l {
color: #333;
}
@media (max-width: 768px) {
    .event__link {
        flex-flow:column;
        padding:20px 10px;
    }
}
.event__link {

}

.seminar__link {
    display: flex;
    padding: 20px 10px;
    color: #333;
    border-bottom: 1px solid #d9d9d9;
    position: relative;
}
.seminar__link:first-child {
    border-bottom: 1px solid #d9d9d9;
}

.seminar__link:hover {
    background-color:#f9f9f9;
}

@media (max-width: 768px) {
    .seminar__link {
        flex-flow:column;
        padding:20px 10px;
    }
}

.seminar__link::after {
    content:'';
    width:20px;
    height:20px;
    border:0;
    border-top:solid 2px #cecece;
    border-right:solid 2px #cecece;
    -ms-transform:rotate(45deg);
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
    position:absolute;
    top:50%;
    right:20px;
    margin-top:-10px;
}
.seminar__title::after {
    display:inline-block;
    content:'';
    width:0;
    height:0;
    margin-top:6px;
    margin-left:10px;
    border:5px solid transparent;
    border-left:6px solid #c01920;
    transition:all 0.2s linear;
    vertical-align:top;
}
h3.h3_txt {
    margin-bottom: 0.25em;
    padding: 2px 5px;
    color: #333;
    font-size: 20px;
    font-size: 2.0rem;
    border: none;
}

.event__date {
    width:200px;
    margin-right:40px;
    font-size: 1.8rem;
    min-width: 200px;
}

.event__date > span {
    font-size:1.6rem;
}

@media (max-width: 768px) {
    .event__date {
        width:100%;
        margin-right:0;
        margin-bottom:20px;
        padding-left:0;
        font-size:1.6rem;
        font-weight:bold;
    }
    .event__date > span {
        font-size:1.2rem;
    }
}

.event__wappen {
    font-size:1.3rem;
    margin-top:15px;
}

@media (max-width: 768px) {
    .event__wappen {
        display:inline-block;
        font-size:1.0rem;
    }
}

.event__wappen .wappen {
    margin-right:10px;
}

.event__wappen .wappen:last-child {
    margin-right:0;
}

.event__content {
    padding-right:40px;
}

@media (max-width: 768px) {
    .event__content {
        font-size:1.1rem;
        line-height:1.3;
    }
}

.event__title {
    font-size: 2.0rem;
    position: relative;
    padding: 0;
    font-weight: normal;
}

@media (max-width: 768px) {
    .event__title {
        font-size:1.3rem;
        line-height:1.3;
    }
}

.event__title.link--same::after, .event__title.external::after {
    display:none;
}

.event__data {
    font-size: 1.5rem;
    line-height: 1.6;
}

.event__data dl {
    overflow: hidden;
    margin-bottom: 0
}

.event__data dt {
    float:left;
}

.event-group__back {
    min-width:130px;
    border:1px solid #ddd;
    border-radius:2px;
    padding:12px 12px 12px 30px;
    display:block;
    position:relative;
    color:inherit;
}

@media (max-width: 768px) {
    .event-group__back {
        padding:8px 8px 8px 30px;
    }
}

.event-group__back:after {
    display:block;
    content:'';
    position:absolute;
    top:12px;
    left:8px;
    width:0;
    height:0;
    margin-top:-3px;
    border:4px solid transparent;
    border-right:5px solid #c01920;
    transition:all 0.2s linear;
}

.event-group__back:hover {
    opacity:0.7;
}

.event-section {
    font-size:1.6rem;
    margin-bottom:50px;
    line-height:1.5;
}

@media (max-width: 768px) {
    .event-section {
        font-size:1.3rem;
    }
}
.lightGrayBox2 {
  font-size: 16px;
  font-size: 1.6rem;
  color: #333;
  border: 10px solid #f4f4f4;
  padding: 32px 26px;
  margin-bottom: 20px;
}
.event__txt {
    font-size: 1.5rem;
    line-height: 1.6;
}
.event__wappen--detail {
    font-size:1.3rem;
    display:inline-block;
    margin-left:20px;
}

.event-detail__header {
    display:flex;
    align-items:center;
    margin-bottom:30px;
}

.event-detail__date {
    font-size:2.6rem;
}

.event-detail__date > span {
    font-size:1.6rem;
}

@media (max-width: 768px) {
    .event-detail__date {
        font-size:1.6rem;
    }
    .event-detail__date > span {
        font-size:1.1rem;
    }
}

.event__title--detail {
    font-size: 3.2rem;
    margin-bottom: 10px;
    font-weight: normal;
    text-align: center;

}

@media (max-width: 768px) {
    .event__title--detail {
        font-size: 2.0rem;
        margin-bottom: 0px;
    }
}

.event__accessMap {
    display:flex;
}

@media (max-width: 768px) {
    .event__accessMap {
        flex-flow:column;
    }
}

.event__map {
    margin-right:45px;
}

@media (max-width: 768px) {
    .event__map {
        margin-right:0;
    }
    .event__map iframe {
        width:100%;
    }
}

.event__maplink {
    margin:40px 0 20px;
}

.event__maplink a {
    display:inline-block;
    margin-right:30px;
}

@media (max-width: 768px) {
    .event__maplink {
        margin:20px 0 10px;
    }
    .event__maplink a {
        margin-bottom:5px;
        line-height:1.5;
    }
}

.event-button {
    margin:40px 0;
    text-align:center;
}

.event-inquiry {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.event-inquiry a {
    color:inherit;
}
.event-inquiry .lightGrayBox__title {
  margin-bottom: 0;
  margin-right: 45px;
  font-size: 2.0rem;
}
@media (max-width: 768px) {
    .event-inquiry {
        flex-flow:column;
    }
}

.event-inquiry > address {
    margin-right:45px;
}

.event-table th, .event-table td {
    padding: 10px;
    border-bottom: 1px solid #eee;
    vertical-align: middle;
    line-height: 1.5;
}

.event-table th {
    border-right: 1px solid #eee;
}

 .event-table thead th {
    width: 180px;
    color: #fff;
    text-align: center;
    background-color: #b60005;
}

.event-table p, .event-table ul {
    margin-bottom: 20px;
}

@media (max-width: 768px) {
    .event-inquiry > address {
        margin-right:0;
        margin-top:10px;
        font-size:1.3rem;
    }
}

.event-table p, .event-table ul {
    margin-bottom:20px;
}

.event__txt {
    font-size: 1.5rem;
    line-height: 1.6;
}
.event__txt2 {
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 10px;
}

.event__access-table {
    font-size: 15px;
    font-size: 1.5rem;
    border-top: 1px solid #eee;
}

.event__access-table th, .event__access-table td {
    padding: 10px;
    border-bottom: 1px solid #eee;
    vertical-align: middle;
    line-height: 1.5;
}

.event__access-table th {
    width: 130px;
    border-bottom: 1px solid #eee;
}

.rubyBox {
    border: 1px solid #b60005;
    padding: 26px;
    margin-top: 20px;
    margin: 20px 50px 0 50px;
    line-height: 1.6;
}

.rubyBox dl {
    line-height: 1.6;
}

.event-inquiry > address {
  margin-right: 45px;
}

.event-section ul {
    font-size: 1.3rem;
}

/*================================================
 *　お申し込みフォーム
 ================================================*/
#main-form {
    width: 100%;
}
.section-block p {
    line-height: 1.3;
    font-size: 1.3rem;
}

.link {
    position: relative;
    color: inherit;
}
.link3 {
    position: relative;
    color: inherit;
}

.contact-text a {
    color: inherit;
}

.link--mail {
  margin-right: 3px;
  padding-right: 18px;
  position: relative;
  color: inherit;
  background: url(/images/common/ico_mail-s.png) no-repeat 100% 50%;
}

.contact-text a {
    color: inherit;
}
.form-group .form-control {
    color: #333;
    font-size: 1.8rem;
}

/*===============================================================
    wappen styles
===============================================================*/
.wappen {
    color:#fff;
    padding:5px 26px;
    text-align:center;
    display:inline-block;
}

@media (max-width: 768px) {
    .wappen {
        padding:5px 12px;
    }
}

.wappen--blue {
    background-color:#3476b8;
}

.wappen--orange {
    background-color:#e67f22;
}

.wappen--red {
    display:inline-block;
    background-color:#ca1d06;
    padding:5px 10px;
}

.wappen--red-line {
    display:inline-block;
    color:#ca1d06;
    border:1px solid #ca1d06;
    padding:5px 10px;
}

.wappen--gray {
    display:inline-block;
    color:#fff;
    background-color:#777;
    padding:5px 10px;
    font-size: 1.3rem;
}

.wappen--news {
    background-color:#1abc9c;
}

.wappen--topics {
    background-color:#c01920;
}

.page__linkarea {
    background-color: #eee;
    padding: 5px;
    display: flex;
    position: relative;
    margin-bottom: 20px;
}

.page__linkarea a {
    width: 33%;
    text-align: center;
    padding: 5px 0;
    font-size: 1.5rem;
}

.page__linkarea a:after {
    display: inline-block;
    content: '';
    width: 0;
    height: 0;
    margin-top: 6px;
    margin-left: 6px;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #b60005;
    transition: all 0.2s linear;
    vertical-align: top;
}
.h3_title {
    margin-bottom: 20px;
}

/*================================================
 *  リスト
 ================================================*/
.info__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 16px;
    border-bottom: 1px solid #eee;
    padding-bottom: 16px;
    padding-left: 20px;
    font-size: 1.3rem;
}

.info__date {
    width: 13%;
    margin-right: 10px;
}

.info__label {
    font-size: 1.0rem;
    display: inline-block;
    text-align: center;
    width: 65px;
    height: 25px;
    padding-top: 3px;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: 10px;
    line-height: 3rem;
}

.label__news {
  border: 1px solid #b60005;
  color: #b60005;
}

.label__topics {
    border: 1px solid #32b16c;
    color: #32b16c;
}

.label__event {
    border: 1px solid #3476b8;
    color: #3476b8;
}

.label__seminar {
    border: 1px solid #f5820b;
    color: #f5820b;
}

.info__text {
    margin: 0;
    line-height: 1.3;
    width: 70%;
}
.info__link {
    color: inherit;
}
.txt_area {
    margin-left: 20px;
    border-bottom: 1px solid #b60005;
    margin-bottom: 30px;
}
.lead_tit {
    margin-bottom: 50px;
    line-height: 1.6;
}
.lead_tit2 {
    line-height: 1.6;
    margin-left: 30px;
    padding-bottom: 10px;
}
.right {
    text-align: right;
    display: block;
}
.ad_list {
    border-top: 1px solid #eee;
    padding-top: 16px;
}
.ad_area {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #eee;
}
.ad_txt {
    position: relative;
    padding-left: 16px;
}
.ad_txt:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 3px;
    margin: auto;
    content: "";
    vertical-align: middle;
    display: block;
    position: absolute;
    width: 5px;
    height: 5px;
    top: -3px;
    border-top: 1px solid #b60005;
    border-right: 1px solid #b60005;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.ad_txt:hover:before {
    left: 5px;
    transition:all 0.2s linear;
}

.ad_area {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #eee;
}

