/*
Theme name: Template
Author: Shinpei Fubasami
Version: 1.0
*/

/*Title
------------------------------------------------------*/
h2.title {
    font-size: 30px;
    font-weight: normal;
    line-height: 36px;
    border-bottom: 1px solid #222222;
    color: #222222;
    position: relative;
    letter-spacing: -1px;
}
h2.title span {
    display: block;
}

h2.title:after {
    content: "";
    display: block;
    height: 1px;
    width: 30%;
    position: absolute;
    bottom: -1px;
}

.feature h2.title:after {
    background: #1aa9e1;
}

.column h2.title:after {
    background: #fdb52a;
}

.hundred h2.title {
    font-size: 64px;
    line-height: 80px;
    text-align: center;
    font-weight: bold;
    border-bottom: none;
}
p.author {
    font-size: 21px;
    line-height: 26px;
}
/*Subtitle
------------------------------------------------------*/
.subtitle,
.interviewer {
    color: #333333;
}

.hundred .subtitle {
    font-size: 46px;
    line-height: 46px;
    text-align: center;
    margin-top: 36px;
    font-weight: normal;
}

main .keyword_tags {
    line-height: 36px;
    padding: 8px 0;
}

/*Author&profile
------------------------------------------------------*/
.author_profile,
.interviewer_profile {
    background-color: #f7f7f9;
    border: 1px solid #e1e1e8;
    border-radius: 4px;
    padding: 18px;
    line-height: 18px;
    font-size: 14px;
    text-align: left;
    margin-top: 18px;
    margin-bottom: 18px;
    position: relative;
}

.author_profile a,
.interviewer_profile a {
    color: #3eb0c0;
}

.author_profile a:hover,
.interviewer_profile a:hover {
    color: #00aff0;
}

.author_profile .row,
.interviewer_profile .row {
    padding: 0 15px;
}

.author_profile h6,
.interviewer_profile h6 {
    color: #808080;
}

.photo_circle {
    width: 150px;
    height: 150px;
    border-radius: 75px;
    overflow: hidden;
    margin: 0 auto;
    transform: scale(0.9, 0.9);
}

.author_profile .accordion,
.interviewer_profile .accordion {
    display: flex;
    align-items: center;
    margin: 0 -18px -18px -18px;
    color: #999999;
    text-align: center;
    padding: 6px;
    cursor: pointer;
}

.author_profile .accordion:before,
.author_profile .accordion:after,
.interviewer_profile .accordion:before,
.interviewer_profile .accordion:after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background: #e1e1e8;
    display: block;
}

.author_profile .accordion:before,
.interviewer_profile .accordion:before {
    margin-right: 0.4em;
}

.author_profile .accordion:after,
.interviewer_profile .accordion:after {
    margin-left: 0.4em;
}

.accordion_hidden {
    display: none;
}

.feature .author_profile.title,
.feature .interviewer_profile.title {
    background: #1aa9e1;
}

.feature .author_profile.title h6,
.feature .interviewer_profile.title h6 {
    color: #ffffff;
}

.hundred .author {
    display: none;
}

.hundred_aside h5 {
    font-size: 18px;
}

.hundred_aside h6 {
    background: #000000;
    color: #ffffff;
    padding: 18px;
    font-size: 18px;
    border-radius: 4px;
}

.hundred_aside .profile,
.hundred_aside .author_profile,
.hundred_aside .interviewer_profile {
    background-color: #c6c4c3;
    border-radius: 4px;
    padding: 18px;
    line-height: 18px;
    font-size: 14px;
    text-align: left;
    margin-top: 18px;
    margin-bottom: 18px;
    position: relative;
}

/*Series name & number
------------------------------------------------------*/

/*posted date &  Interviewed place
------------------------------------------------------*/

/*Interviewer profile
------------------------------------------------------*/

/*Lead text
------------------------------------------------------*/
.leadtxt {
    margin-top: 3em;
    margin-bottom: 1em;
    width: calc(77.778% + 70px);
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
    color: #b8141e;
    font-size: 16px;
    line-height: 24px;
    font-weight: bold;
}

.attendees {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.2;
}

.attendees small {
    font-size: 13px;
    font-weight: normal;
}

/*Index
------------------------------------------------------*/
.index {
    background-color: #f7f7f9;
    border: 1px solid #e1e1e8;
    border-radius: 4px;
    padding: 18px;
    line-height: 18px;
    font-size: 14px;
    text-align: left;
}

.index h6 {
    color: #808080;
}

.index:after {
    border-bottom: 1px solid #222222;
}

.index a {
    display: block;
    color: #3eb0c0;
    text-indent: 1em;
}

.index a:hover {
    color: #00aff0;
}

.index p {
    color: #666666;
    padding-left: 1em;
}

.hundred .index {
    width: calc(77.778% + 70px);
    padding-left: 15px;
    padding-right: 15px;
    margin: 1em auto;
}

/*main contents
------------------------------------------------------*/
hr {
    margin: 18px 0;
}

article {
    width: calc(77.778% + 70px);
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
}

main.bazaar article {
    width: 100%;
    padding: 0;
    margin: 0;
}

.wp-block-embed-youtube {
    background: #000000;
    text-align: center;
}

.wp-block-embed-youtube {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin-bottom: 50px;
}

.wp-block-embed-youtube iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

article a {
    color: #3eb0c0;
}

article a:hover {
    color: #00aff0;
}
.is-style-indent_plus1 {
    padding-left: 1em;
}
.is-style-indent_plus2 {
    padding-left: 2em;
}
.is-style-border_plus {
    padding: 1em;
    margin: 1em 0;
    background: #f7f7f7;
    border: dashed 2px #959595;
}
.is-style-border_plus p {
    margin-bottom: 0;
}
/*段落-大*/
article h3,
.paragraph_title {
    margin-top: 36px;
    font-size: 21px;
    line-height: 36px;
    font-weight: bold;
    border-bottom: solid 2px #3cacb9;
    margin-bottom: 18px;
    color: #3cacb9;
}

article h3:before,
.paragraph_title:before {
    content: "■";
}

.is-style-paragraph_title {
    margin-bottom: 18px;
    color: #3cacb9;
    margin-top: 36px;
    font-size: 21px;
    line-height: 36px;
    font-weight: bold;
}
/*
.taiwan .is-style-paragraph_title {
    color: #0190dc;
}
*/
/*段落-中*/
.pharagraph_circle,
.is-style-pharagraph_circle {
    font-size: 16px;
    line-height: 24px;
    color: #555555;
    margin-top: 18px;
    font-weight: bold;
    display: list-item;
    list-style: disc inside;
}

/*段落-小*/
article h4,
.pharagraph_separator,
.is-style-pharagraph_separator {
    font-size: 16px;
    line-height: 24px;
    color: #555555;
    margin-top: 18px;
    font-weight: bold;
}

/*小見出し（青）*/
.is-style-pharagraph_blue {
    font-size: 16px;
    line-height: 24px;
    color: #3cacb9;
    margin-top: 18px;
    font-weight: bold;
}

article p,
article pre,
article table {
    font-size: 16px;
    line-height: 1.5em;
    color: #333333;
    margin-bottom: 24px;
    word-break: break-all;
    line-break: normal;
    white-space: -moz-pre-wrap;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    white-space: pre-wrap;
}

article ul,
article li {
    font-size: 16px;
    line-height: 24px;
    color: #333333;
    list-style: none;
}

article li li {
    padding-left: 2em;
    text-indent: -1em;
}

article li li li {
    padding-left: 1em;
}

article .serif {
    font-family: HGS明朝E, YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", 游明朝,
        "Yu Mincho", serif;
}

article figure img,
article img {
    max-width: 100%;
    height: auto;
}

article figure figcaption,
article figcaption,
article .wp-block-image figcaption {
    margin-bottom: 18px;
    text-align: left;
}

article sup.footnote_plugin_tooltip_text {
    color: #77bdc5;
    margin-left: 0.25em;
    margin-right: 0.25em;
    top: -0.2em !important;
}

td.footnote_plugin_link {
    position: relative;
    color: #77bdc5;
}
article sup {
    font-size: 75%;
    vertical-align: top;
    position: relative;
    top: -0.1em;
}

article sub {
    font-size: 75%;
    vertical-align: bottom;
    position: relative;
    bottom: -0.2em;
}
/*会員登録
------------------------------------------------------*/
#btn_apply {
    position: relative;
    height: 54px;
    margin: 18px 0;
}

#btn_apply p {
    position: absolute;
    top: 100px;
    left: 0;
    width: 100%;
    transition: all 0.8s ease;
    opacity: 0;
}

#btn_apply.btn_fixed p {
    top: 0px;
    opacity: 1;
}

#btn_apply p {
    border-radius: 12px;
    padding: 5px;
    background: #1aa9e1;
}

#btn_apply p a {
    display: block;
    width: 100%;
    padding: 18px 0;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
    color: #ffffff;
    border: 1px solid #ffffff;
    border-radius: 8px;
    background-image: url(../images/common/btn_pattern.gif), url(../images/common/btn_pattern.gif);
    background-repeat: no-repeat, no-repeat;
    background-position: left center, right center;
}

/*sns
------------------------------------------------------*/
.sns_bottom {
    margin-bottom: 36px;
}

.btn_sns .row {
    margin: 0;
}

.btn_sns li a {
    display: block;
    text-align: center;
}

.sns_top {
    height: 36px;
    margin-bottom: 18px;
}

.sns_top li {
    border-radius: 18px;
    transition: all 0.4s ease;
}

.sns_bottom li {
    border-radius: 27px;
    transition: all 0.4s ease;
}

.sns_top li a {
    width: 36px;
    height: 36px;
}

.sns_bottom li a {
    width: 54px;
    height: 54px;
}

.btn_sns li:nth-child(1) {
    background-color: #4267b2;
}

.btn_sns li:nth-child(2) {
    background-color: #000000;
}

.btn_sns li:nth-child(3) {
    background-color: #00a5de;
}

.btn_sns li:nth-child(4) {
    background-color: #3bd42e;
}

/*.btn_sns li:nth-child(5) {
	background-color: #dd4d40;
}*/

.btn_sns li:nth-child(5) {
    background-color: #ef4056;
}

.btn_sns li:nth-child(6) {
    background-color: #222222;
}

.btn_sns.sns_top li:nth-child(1) a {
    background: url(../images/common/top_fb.png) no-repeat center center;
}

.btn_sns.sns_top li:nth-child(2) a {
    background: url(../images/common/top_tw.png) no-repeat center center;
}

.btn_sns.sns_top li:nth-child(3) a {
    background: url(../images/common/top_b.png) no-repeat center center;
}

.btn_sns.sns_top li:nth-child(4) a {
    background: url(../images/common/top_ln.png) no-repeat center center;
}

/*.btn_sns.sns_top li:nth-child(5) a {
	background: url(../images/common/top_gp.png) no-repeat center center;
}*/

.btn_sns.sns_top li:nth-child(5) a {
    background: url(../images/common/top_pkt.png) no-repeat center center;
}

.btn_sns.sns_top li:nth-child(6) a {
    background: url(../images/common/top_ml.png) no-repeat center center;
}

.btn_sns.sns_bottom li:nth-child(1) a,
#side_sns li:nth-child(1) a {
    background: url(../images/common/bottom_fb.png) no-repeat center center;
}

.btn_sns.sns_bottom li:nth-child(2) a,
#side_sns li:nth-child(2) a {
    background: url(../images/common/bottom_tw.png) no-repeat center center;
}

.btn_sns.sns_bottom li:nth-child(3) a,
#side_sns li:nth-child(3) a {
    background: url(../images/common/bottom_b.png) no-repeat center center;
}

.btn_sns.sns_bottom li:nth-child(4) a,
#side_sns li:nth-child(4) a {
    background: url(../images/common/bottom_ln.png) no-repeat center center;
}

/*.btn_sns.sns_bottom li:nth-child(5) a,
#side_sns li:nth-child(5) a {
	background: url(../images/common/bottom_gp.png) no-repeat center center;
}*/

.btn_sns.sns_bottom li:nth-child(5) a,
#side_sns li:nth-child(5) a {
    background: url(../images/common/bottom_pckt.png) no-repeat center center;
}

.btn_sns.sns_bottom li:nth-child(6) a,
#side_sns li:nth-child(6) a {
    background: url(../images/common/bottom_ml.png) no-repeat center center;
}

.btn_sns li:hover {
    -webkit-animation: stripes_move 6s infinite linear;
    -moz-animation: stripes_move 6s infinite linear;
    -o-animation: stripes_move 6s infinite linear;
    animation: stripes_move 6s infinite linear;
    background-image: url(../images/common/hover_stripes.png);
    box-shadow: 0 5px 5px #cccccc;
}

@keyframes stripes_move {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 119px 0;
    }
}

#side_sns {
    position: fixed;
    left: -36px;
    top: 200px;
    background: #ffffff;
    border-top: 1px solid #808080;
    border-right: 1px solid #808080;
    border-bottom: 1px solid #808080;
    border-radius: 0 8px 8px 0;
    overflow: hidden;
    opacity: 0;
    transition: all 0.4s ease;
}

#side_sns ul li {
    margin-bottom: 1px;
    width: 50px;
    height: 50px;
}

#side_sns ul li a {
    width: 50px;
    height: 50px;
}

#side_sns li:last-child {
    margin-bottom: 0;
}

#side_sns.side_fixed {
    left: 0;
    opacity: 1;
}

/*page
------------------------------------------------------*/
.page_separator {
    background: #faf5e6;
    padding: 18px;
    text-align: center;
    margin-bottom: 18px;
}

.page_separator .numbers {
    display: inline-block;
    font-size: 18px;
    width: 36px;
    height: 36px;
    line-height: 36px;
    margin: 0 2px;
    border-radius: 4px;
}

.page_separator a .numbers {
    background-color: #ffffff;
}

/*用語解説
-------------------------------------------------------*/
#technical {
    display: none;
    margin: 18px 0;
    background: #faf5e6;
    padding: 15px;
    line-height: 24px;
}

#technical > h6 {
    color: #963;
    font-size: 18px;
    margin-bottom: 18px;
}

.footnote_container_prepare span,
#technical > div > h6 {
    border-left: 5px solid #963;
    border-bottom: 1px solid #963;
    padding-left: 5px;
}

#footnote_references_container {
    margin-bottom: 18px;
}

.footnote_plugin_text {
    color: #555555;
}

/*元記事を読む
-------------------------------------------------------*/
a.original {
    background: url(../images/common/icon_rightning.png) no-repeat left center;
    color: #aaaaaa;
    padding-left: 18px;
}

/*おすすめ
-------------------------------------------------------*/
.all_post > .row {
    display: flex;
    flex-wrap: wrap;
}

@media only screen and (max-width: 768px) {
    .sns_top {
        margin-top: 18px;
    }

    .photo_circle {
        margin: 0 auto 0 0;
        display: inline-block;
    }

    .txt_profile {
        width: calc(100% - 160px);
        display: inline-block;
        vertical-align: top;
    }
}

@media only screen and (max-width: 575px) {
    h2.title {
        font-size: 24px;
        line-height: 28px;
    }

    h2.title span {
        display: inline;
    }

    .all_post .col-xs-6.aa_box > a > div > div {
        padding-left: 0;
    }

    .photo_circle {
        margin: 0 auto;
        display: block;
    }

    .txt_profile {
        width: 100%;
        display: block;
    }
}

/*一覧ページ
-------------------------------------------------------*/
.category_title {
    font-size: 16px;
    line-height: 18px;
    padding-bottom: 18px;
}

.features .category_title {
    color: #2ea0cd;
}

.columns .category_title {
    color: #e8ae3f;
}

.review .category_title {
    color: #7ab25c;
}

.news .category_title {
    color: #a74ad8;
}

.ribon_new {
    width: 52px;
    height: 52px;
    background: url(../images/common/ribon_new.png) no-repeat center center;
    position: absolute;
    top: -19px;
    right: 10px;
    left: auto;
    text-indent: -9999px;
    overflow: hidden;
}

.wrapper {
    position: relative;
    line-height: 18px;
    margin-bottom: 18px;
}

.wrapper time {
    position: absolute;
    top: -22px;
    right: 5px;
    color: #aaaaaa;
    background: url(../images/common/icon_calendar_gray.png) no-repeat left center;
    padding-left: 18px;
}

.wrapper .img-thumbnail {
    position: absolute;
    top: 10px;
    left: 0;
    height: 108px;
}

.review .wrapper .img-thumbnail {
    height: 152px;
}

.wrapper .inner {
    padding: 2px 0 18px 120px;
    min-height: 131px;
}

.review .wrapper .inner {
    min-height: 180px;
}

.wrapper:hover .inner {
    background: #f8f8f8;
}

.wrapper h3 {
    color: #222222;
    font-size: 16px;
    line-height: 18px;
    font-weight: 600;
    padding-top: 9px;
    padding-bottom: 9px;
}

.wrapper .inner p.sub_title,
.wrapper .inner p.author {
    color: #333333;
}

.wrapper .inner p {
    color: #aaaaaa;
    font-size: 12px;
    line-height: 18px;
}

.wrapper.cat00 {
    border-top: 2px solid #555555;
}

.features .wrapper,
.wrapper.cat02 {
    border-top: 2px solid #1aa9e1;
}

.works .wrapper,
.wrapper.cat03 {
    border-top: 2px solid #ed3837;
}

.columns .wrapper,
.wrapper.cat04 {
    border-top: 2px solid #fdb52a;
}

.review .wrapper,
.wrapper.cat05,
.wrapper.cat05-1 {
    border-top: 2px solid #77bd51;
    /*min-height:234px;*/
}

.wrapper.zaiya {
    border-top: 2px solid #da9827;
}

.review.reviewall .wrapper {
    min-height: 206px;
}

.search .wrapper.cat05,
.search .wrapper.cat05-1 {
    min-height: inherit;
}

.news .wrapper,
.wrapper.cat06,
.wrapper.cat06-1,
.wrapper.cat06-2,
.wrapper.cat06-3 {
    border-top: 2px solid #ad39ea;
}

.wrapper.cat09 {
    border-top: 2px solid #f0831e;
}

.wrapper.cat10 {
    border-top: 2px solid #e96187;
}

.wrapper.cat11,
.wrapper.fountain {
    border-top: 2px solid #223462;
}

.wrapper.cat00 h3 {
    border-bottom: 1px solid #555555;
}

.features .wrapper h3,
.wrapper.cat02 h3 {
    border-bottom: 1px solid #1aa9e1;
}

.works .wrapper h3,
.wrapper.cat03 h3 {
    border-bottom: 2px solid #ed3837;
}

.columns .wrapper h3,
.wrapper.cat04 h3 {
    border-bottom: 1px solid #fdb52a;
}

.review .wrapper h3,
.wrapper.cat05 h3,
.wrapper.cat05-1 h3 {
    border-bottom: 2px solid #77bd51;
}

.news .wrapper h3,
.wrapper.cat06 h3,
.wrapper.cat06-1 h3,
.wrapper.cat06-2 h3,
.wrapper.cat06-3 h3 {
    border-bottom: 2px solid #ad39ea;
}

.wrapper.cat09 h3 {
    border-bottom: 2px solid #f0831e;
}

.wrapper.cat10 h3 {
    border-bottom: 2px solid #e96187;
}

.wrapper.cat11 h3,
.wrapper.fountain h3 {
    border-bottom: 2px solid #223462;
}

.wrapper.zaiya h3 {
    border-bottom: 1px solid #da9827;
}

.columns a[target="_blank"],
a[target="_blank"].jumpto {
    background: #ffffff;
    padding-right: 0;
}

.columns a[target="_blank"] h3,
a[target="_blank"].jumpto h3 {
    background: url(../images/common/icon_external_link.gif) no-repeat right center;
    color: #3eb0c0;
    padding-right: 18px;
}

/*会話形式
-------------------------------------------------------------*/
.conversation p > span:not(.footnote_tooltip) {
    display: block;
    position: relative;
    padding: 24px 18px;
    border: 1px solid #999999;
    border-radius: 18px;
}
.conversation .footnote_container_prepare > p > span {
    display: inline-block !important;
    padding: 0 !important;
    border: none !important;
}
.conversation p.suspect,
.is-style-suspect {
    padding-left: 84px;
    padding-right: 0;
    background: url(../images/qa/icon_suspect.gif) no-repeat top left;
}

.conversation p.suspect > span:before,
.is-style-suspect > span:before,
.conversation p.okami > span:before,
.is-style-okami > span:before,
.conversation p.woman > span:before,
.is-style-woman > span:before,
.conversation p.police > span:before,
.is-style-police > span:before,
.is-style-barrister2l > span:before {
    content: "";
    border: 10px solid transparent;
    border-right: 15px solid #555555;
    position: absolute;
    right: 100%;
    top: 18px;
}

.conversation p.suspect > span:after,
.is-style-suspect > span:after,
.conversation p.okami > span:after,
.is-style-okami > span:after,
.conversation p.woman > span:after,
.is-style-woman > span:after,
.conversation p.police > span:after,
.is-style-police > span:after,
.is-style-barrister2l > span:after {
    content: "";
    border: 10px solid transparent;
    border-right: 15px solid white;
    position: absolute;
    right: calc(100% - 1px);
    top: 18px;
}

.conversation p.okami,
.is-style-okami {
    padding-left: 84px;
    padding-right: 0;
    background: url(../images/qa/icon_okami.gif) no-repeat top left;
}

.conversation p.barrister,
.is-style-barrister {
    padding-left: 0;
    padding-right: 84px;
    background: url(../images/qa/icon_woman.gif) no-repeat top right;
}

.conversation p.woman,
.is-style-woman {
    padding-left: 84px;
    padding-right: 0;
    background: url(../images/qa/icon_woman2.gif) no-repeat top left;
}

.conversation p.police,
.is-style-police {
    padding-left: 84px;
    padding-right: 0;
    background: url(../images/qa/icon_police.gif) no-repeat top left;
}

.conversation p.barrister2,
.is-style-barrister2 {
    padding-left: 0;
    padding-right: 84px;
    background: url(../images/qa/icon_man.gif) no-repeat top right;
}

.is-style-barrister2l {
    padding-right: 0;
    padding-left: 84px;
    background: url(../images/qa/icon_man.gif) no-repeat top left;
}

.conversation p.barrister > span:before,
.is-style-barrister > span:before,
.conversation p.barrister2 > span:before,
.is-style-barrister2 > span:before {
    content: "";
    border: 10px solid transparent;
    border-left: 15px solid #555555;
    position: absolute;
    left: 100%;
    top: 18px;
}

.conversation p.barrister > span:after,
.is-style-barrister > span:after,
.conversation p.barrister2 > span:after,
.is-style-barrister2 > span:after {
    content: "";
    border: 10px solid transparent;
    border-left: 15px solid white;
    position: absolute;
    left: calc(100% - 1px);
    top: 18px;
}

.lawyer span,
.is-style-lawyer span {
    display: block;
    position: relative;
    padding: 24px 18px;
    border: 1px solid #f0831e;
    border-radius: 18px;
    background: #fff0c6;
}

.lawyer,
.is-style-lawyer {
    padding-left: 84px;
    background: url(../images/wisdom/icon_lawyer.jpg) no-repeat top left;
}

.lawyer span:before,
.is-style-lawyer span:before {
    content: "";
    border: 10px solid transparent;
    border-right: 15px solid #f0831e;
    position: absolute;
    right: 100%;
    top: 36px;
}

.lawyer span:after,
.is-style-lawyer span:after {
    content: "";
    border: 10px solid transparent;
    border-right: 15px solid #fff0c6;
    position: absolute;
    right: calc(100% - 2px);
    top: 36px;
}

.footnote_container_prepare p span {
    padding: 20px 0;
    border: none;
}

/*Aboutus
-------------------------------------------------------*/
#biglogo {
    background: #95dae0;
    margin: 18px -70px;
    padding: 36px;
    height: 180px;
    position: relative;
}

#biglogo div {
    animation: sizeScale 0.5s linear 1;
    background-image: url(../images/common/big_logo.svg);
    background-position: center center;
    background-size: cover;
    width: 213px;
    height: 108px;
    transform: scale(1);
}

@keyframes sizeScale {
    0% {
        transform: scale(2);
        opacity: 0.3;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

#biglogo p {
    animation: slideLeft 0.4s linear 1;
    background-image: url(../images/common/logo_100.svg);
    background-position: center center;
    background-size: cover;
    width: 146px;
    height: 110px;
    position: absolute;
    top: 36px;
    right: 36px;
}

@keyframes slideLeft {
    0% {
        right: 750px;
        opacity: 0.1;
    }

    100% {
        right: 36px;
        opacity: 1;
    }
}

/*Sitemap
-------------------------------------------------------*/
.sitemap a {
    color: #333333;
    font-size: 14px;
    line-height: 24px;
}

@media only screen and (max-width: 992px) {
    .hundred h2.title {
        font-size: 60px;
        line-height: 70px;
    }

    .hundred .subtitle {
        font-size: 36px;
        line-height: 40px;
    }
}

@media only screen and (max-width: 767px) {
    #biglogo {
        margin: 18px 0;
    }

    .hundred h2.title {
        font-size: 30px;
        line-height: 35px;
    }

    .hundred .subtitle {
        font-size: 20px;
        line-height: 24px;
    }
}

@media only screen and (max-width: 575px) {
    /*おすすめ
-------------------------------------------------------*/
    .all_post > .row {
        margin-left: 0;
        margin-right: 0;
    }

    #btn_apply p a {
        font-size: 16px;
    }

    #side_sns {
        display: none;
    }

    #biglogo p {
        display: none;
    }
}

/*----------------------------------------------------
    .テーブルのレスポンシブ化！
----------------------------------------------------*/
@media only screen and (max-width: 576px) {
    article table th,
    article table td {
        width: 100%;
        display: block;
        border-top: none;
    }
}

/*Call4 20191008追加
-------------------------------------------------------*/
.call4 {
    margin-top: 2em;
}

.call4 .seriesnum {
    font-size: 2em;
    font-weight: bold;
    margin-bottom: 0.25em;
}

.call4 h3.subtitle {
    margin: 42px auto 0;
    font-size: 36px;
    line-height: 42px;
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho",
        "MS 明朝", serif;
    width: calc(77.778% + 70px);
}

.call4 h2.title {
    width: calc(77.778% + 70px);
    margin: 0 auto 14px;
}

.call4 h2.title,
.call4 h2.title span {
    font-size: 60px;
    line-height: 72px;
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho",
        "MS 明朝", serif;
    border-bottom: none;
}

.call4 .seriestitle {
    font-size: 42px;
    line-height: 56px;
    letter-spacing: -1px;
}

.call4 .seriessubtitle {
    font-size: 30px;
    line-height: 40px;
    margin-bottom: 2.5em;
}

.call4 p.author {
    font-size: 21px;
    line-height: 24px;
    font-weight: bold;
    width: calc(77.778% + 70px);
    margin: 0 auto;
}

.call4 .is-style-paragraph_title {
    margin-top: 42px;
    font-size: 36px;
    font-weight: normal;
    line-height: 42px;
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho",
        "MS 明朝", serif;
    color: #222222;
    border-bottom: none;
}

.call4 .is-style-paragraph_title:before {
    content: none;
}

.call4 .is-style-pharagraph_separator {
    color: #222222;
}

.call4 .wp-block-image {
    max-width: inherit;
    margin-left: calc(-11.111% + 5px);
    margin-right: calc(-11.111% + 5px);
}

.call4_aside h6 {
    margin-bottom: 34px;
}

.call4_aside h5 {
    font-size: 18px;
}

.call4_aside > div {
    padding-top: 32px;
    padding-bottom: 32px;
    margin-top: 14px;
}

.call4_aside .bold_border {
    border-top: 9px solid #222222;
}

@media only screen and (max-width: 575px) {
    .call4 .seriesnum {
        font-size: 1.25em;
    }

    .call4 .seriestitle {
        font-size: 21px;
        line-height: 28px;
    }

    .call4 .seriessubtitle {
        font-size: 16px;
        line-height: 21px;
    }

    .call4 h3.subtitle {
        font-size: 24px;
    }

    .call4 h2.title,
    .call4 h2.title span {
        font-size: 36px;
        line-height: 42px;
    }

    .call4 p.author {
        font-size: 14px;
        line-height: 16px;
    }

    .call4 .is-style-paragraph_title {
        font-size: 24px;
        line-height: 28px;
    }
}

/*特定記事だけキャプションを右寄せにする
--------------------------------------------------*/
.postid-6793 .wp-block-image figcaption {
    text-align: right;
}

/*metas+ider中に使われるhidden-xsで改行しないようにする
--------------------------------------------------*/
.caption-wrap .caption .hidden-xs {
    display: initial;
}

@media only screen and (max-width: 575px) {
    .caption-wrap .caption .hidden-xs {
        display: none;
    }
}

/*TokyoTS Net
-------------------------------------------------------*/
.mincho,
.tsnet article h3 {
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho",
        "MS 明朝", serif;
}

.tsnet .ts_series,
.itkeiji .it_series {
    font-size: 21px;
    line-height: 1.2em;
    text-align: center;
}
.tsnet .ts_series,
.itkeiji .it_series.s_hakamata {
    margin-bottom: 30px;
}

.itkeiji > figure {
    margin-bottom: 21px;
}

.tsnet .ts_title,
.itkeiji .it_title {
    text-align: center;
    margin: 0 auto;
    font-size: 30px;
    font-weight: normal;
    line-height: 1em;
    margin-bottom: 0.5em;
}

.itkeiji .ts_subtitle {
    font-size: 20px;
    text-align: center;
    line-height: 1em;
    margin-bottom: 1em;
}

@media only screen and (min-width: 768px) {
    .ts_title .br-tsnet {
        display: block;
        font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝",
            "MS PMincho", "MS 明朝", serif;
    }
    .tsnet .ts_title,
    .itkeiji .it_title {
        font-size: 60px;
    }
    .tsnet .ts_series,
    .itkeiji .it_series {
        font-size: 30px;
    }
}

.tsnet .ts_author,
.itkeiji .it_author {
    text-align: center;
    font-size: 24px;
    margin-bottom: 24px;
    line-height: 120%;
}

.tsnet .keyword_tags,
.itkeiji .it_keyword_tags {
    text-align: center;
    margin-left: 0;
    margin-bottom: 24px;
}

.tsnet article h3 {
    font-size: 32px;
    color: #0050ff;
    font-weight: normal;
    border-bottom: none;
}

.tsnet article h3:before {
    content: "";
}

.tsnet article h4 {
    font-size: 21px;
    font-weight: normal;
    color: #0050ff;
    border-bottom: none;
    margin-bottom: 1em;
}

.tsnet article h5 {
    font-size: 18px;
    font-weight: bold;
}
article blockquote {
    background: #f5f5f5;
    padding: 1em;
    margin-bottom: 1em;
    border: 1px solid #dddddd;
}
.tsnet article blockquote {
    border: 1px solid #0050ff;
}

article blockquote p {
    margin-bottom: 0;
}

.tsnet .author_profile {
    background-color: #ffffff;
    border: 1px solid #0050ff;
    border-radius: 0;
    line-height: 1.5em;
}

.tsnet .author_profile h5 {
    font-size: 16px;
    margin-bottom: 1px;
}

.tsnet .author_profile h6 {
    color: #000000;
    font-size: 18px;
    margin-bottom: 0.5em;
}

.tsnet article a,
.tsnet .author_profile a,
.tsnet article sup.footnote_plugin_tooltip_text,
.tsnet td.footnote_plugin_link {
    color: #0050ff;
}

.tsnet article a[target="_blank"],
aside.tsnet a[target="_blank"] {
    background: url(../images/common/icon_external_link-b.gif) no-repeat right center !important;
}

/*keijihoutei
-------------------------------------------------------*/
.keijihoutei .author_profile {
    background-color: #ffffff;
    border: 1px solid #b49829;
    border-radius: 0;
    line-height: 1.5em;
}

.keijihoutei .author_profile h6 {
    color: #000000;
    font-size: 18px;
    margin-bottom: 0.5em;
}

/*keijishihou it light and shadow
-------------------------------------------------------*/
.itkeiji article h3 {
    font-size: 32px;
    color: #172f73;
    font-weight: normal;
    border-bottom: none;
}

.itkeiji article h3:before {
    content: "";
}

.itkeiji .author_profile {
    background-color: #ffffff;
    border: 1px solid #172f73;
    border-radius: 0;
    line-height: 1.5em;
}

.itkeiji .author_profile img {
    max-width: 100% !important;
}

.itkeiji .author_profile h6 {
    color: #000000;
    font-size: 18px;
    margin-bottom: 0.5em;
}

.wakayama article h3 {
    color: #7f674f !important;
}

.wakayama .author_profile {
    border: 1px solid #7f674f !important;
}

.wakayama table thead tr {
    background: #fdbf2e;
    text-align: center;
    font-weight: bold;
}

.wakayama table tr {
    border-bottom: 1px solid #fff;
    font-size: 14px;
}

.wakayama table td,
.wakayama table th {
    padding: 5px;
}

.wakayama table tbody td {
    vertical-align: middle;
}

.wakayama table tbody tr:nth-child(even) {
    background: #ffe49d;
}

.wakayama table tbody tr:nth-child(odd) {
    background: #fff1ce;
}

.wakayama table td:not(:last-child),
.wakayama table th:not(:last-child) {
    border-right: 1px solid #fff;
}
.has_pdf {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    margin: 30px 0 10px;
}
.has_pdf .sns_top {
    margin-bottom: 0;
}
.has_pdf a {
    transition: all 0.4s ease;
}
.has_pdf a:hover {
    opacity: 0.6;
}
.has_pdf .not-member {
    opacity: 0.5;
    filter: grayscale(90%);
    transition: all 0.4s ease;
}
.has_pdf .not-member:hover {
    filter: grayscale(50%);
}
@media only screen and (max-width: 768px) {
    .has_pdf {
        display: block;
    }
    .has_pdf .pdf {
        margin-top: 18px;
        text-align: center;
    }
}
/*コラムと新判例ウォッチを分離した際のタブ
-------------------------------------------------------*/
.mobile_tab {
    display: none;
    margin-bottom: 1em;
}

.mobile_tab span,
.mobile_tab a {
    display: inline-block;
    width: 50%;
    text-align: center;
    font-size: 1.25em;
    padding: 0.7em 0;
    border-radius: 1em 1em 0 0;
}

.mobile_tab a {
    background: #a59370;
    color: #ccc;
}

.mobile_tab span {
    background: #fdb52a;
    color: #fff;
}

@media only screen and (max-width: 768px) {
    .mobile_tab {
        display: block;
    }
}

/*20230704追加　波線アンダーライン
-------------------------------------------------*/
.line-wavy {
    text-decoration: underline; /*テキストにアンダーラインを加える*/
    text-decoration-style: wavy; /*アンダーラインの形を波線にする*/
    text-decoration-color: #d0111a; /*アンダーラインの色を赤にする*/
}

/*20230705追加　winney
-------------------------------------------------*/
.lead-winny {
    background: #d0111a;
    color: #ffffff;
    padding: 1em 5em;
}
.winny article h3 {
    color: #d0111a;
    border: none;
}
@media only screen and (max-width: 768px) {
    .lead-winny {
        padding: 1em;
    }
    .hundred .index {
        width: auto;
    }
}

/*20241120追加　カテゴリーが 'hakamata_innocence'サブタイトルを大きく
-------------------------------------------------*/
p.hakamata {
    font-size: 40px;
    text-align: center;
    margin-bottom: 50px;
}
@media only screen and (max-width: 768px) {
    p.hakamata {
        font-size: 20px;
        margin-bottom: 30px;
    }
}

/*20241213 footnotesのプラグインが使えなくなってしまったので自作
--------------------------------------------------*/
.footnote_container_prepare > p {
    line-height: 1.3 !important;
    margin-top: 1em !important;
    margin-bottom: 0.25em !important;
    padding: 0 !important;
    font-weight: normal !important;
    overflow: hidden !important;
    border-bottom: 1px solid #aaaaaa !important;
    display: flex;
    gap: 5px;
    font-size: 1.3em !important;
    -webkit-margin-before: 0.83em !important;
    -webkit-margin-after: 0.83em !important;
    -webkit-margin-start: 0px !important;
    -webkit-margin-end: 0px !important;
    text-align: left !important;
    vertical-align: middle;
}
.footnote_container_prepare > p > span {
    font-size: 1.25em !important;
    padding-bottom: 0 !important;
}
.footnote_plugin_link a {
    display: block;
    width: 24px;
    text-align: center;
}
#footnote_reference_container_collapse_button {
    display: inline-block;
    text-align: center;
    cursor: pointer;
    width: 12px;
}
.footnote-reference-container td {
    min-width: 24px;
}
/*裁判員のはらの中　lay_judge
--------------------------------------------------*/
.lay_judge .it_series {
    margin-bottom: 15px;
}
.lay_judge .it_title {
    margin-bottom: 15px !important;
}
.lay_judge .ts_subtitle {
    text-align: center;
    font-size: 30px;
    margin-bottom: 30px;
}
.lj-item {
    display: flex;
    justify-content: center;
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 1em;
    border: 1px dashed #555555;
    padding: 0.5em;
}

.lay_judge article h3,
.lay_judge .paragraph_title,
.lay_judge .is-style-paragraph_title {
    border-bottom: none !important;
}

/* ニュースレター台湾刑事法の動き
-------------------------------------------*/
main.taiwans-criminal-law p.it_series{
    margin-bottom:15px;
}
main.taiwans-criminal-law p.hakamata{
    font-size: 30px;
    margin-bottom: 30px;
}